/* not. microsoft — site styles (v0.2)
   Brand: mostly white, one accent. Corporate-clean, quietly cheeky. */

/* Brand tokens (subset) */
:root{
  --nm-paper: #FFFFFF;
  --nm-ink: #0B0F19;
  --nm-muted: #6B7280;
  --nm-surface: #F5F7FA;
  --nm-line: #E5E7EB;

  --nm-accent: #5B5BFF;
  --nm-accent-hover: #4A4AF5;
  --nm-accent-soft: #EAEAFC;

  --nm-success: #00C2A8;
  --nm-error: #FF4D6D;

  --nm-font-sans: "Sora", "Space Grotesk", "Montserrat", system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, "Apple Color Emoji","Segoe UI Emoji";
  --nm-font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;

  --nm-radius-sm: 10px;
  --nm-radius-md: 14px;
  --nm-radius-lg: 18px;

  --nm-shadow-sm: 0 1px 2px rgba(11, 15, 25, 0.06), 0 1px 1px rgba(11, 15, 25, 0.04);
  --nm-shadow-md: 0 10px 30px rgba(11, 15, 25, 0.10);

  --nm-nav-h: 56px;

  /* Legacy aliases used by app.css (keep stable) */
  --bg: var(--nm-surface);
  --panel: var(--nm-paper);
  --panel2: var(--nm-surface);
  --text: var(--nm-ink);
  --muted: var(--nm-muted);
  --border: var(--nm-line);
  --shadow: var(--nm-shadow-md);
  --radius: var(--nm-radius-lg);
  --accent: var(--nm-accent);
  --accent2: var(--nm-success);
  --danger: var(--nm-error);
}

*{box-sizing:border-box}
html,body{height:100%}

body{
  margin:0;
  font-family: var(--nm-font-sans);
  color: var(--nm-ink);
  background: var(--nm-surface);
}

a{color:var(--nm-accent);text-decoration:none}
a:hover{color:var(--nm-accent-hover)}
strong{font-weight:700}

/* Layout */
.nm-container{width:min(1120px, calc(100% - 32px)); margin:0 auto}
.nm-container--wide{width:min(1400px, calc(100% - 32px)); margin:0 auto}

/* Top nav */
.nm-nav{
  position:sticky;
  top:0;
  z-index:50;
  background: rgba(255,255,255,0.88);
  backdrop-filter: blur(10px);
  border-bottom:1px solid var(--nm-line);
}

.nm-nav-inner{
  height: var(--nm-nav-h);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
}

.nm-brand{
  display:flex;
  align-items:center;
  gap:10px;
  font-weight:700;
  letter-spacing:-0.02em;
  color: var(--nm-ink);
}
.nm-brand:hover{color:var(--nm-ink)}
.nm-logo{
  width:22px;
  height:22px;
  display:block;
}
.nm-brand-dot{color:var(--nm-accent); font-weight:900}
.nm-badge{
  font-size:12px;
  padding:4px 10px;
  border-radius:999px;
  border:1px solid var(--nm-line);
  background: var(--nm-accent-soft);
  color: #2b2be0;
  white-space:nowrap;
}

.nm-nav-links{display:flex;gap:8px;flex-wrap:wrap;align-items:center}

.nm-pill{
  font-size:13px;
  padding:7px 12px;
  border-radius:999px;
  border:1px solid var(--nm-line);
  background: rgba(255,255,255,0.8);
  color: var(--nm-ink);
  transition: background .16s ease, border-color .16s ease, color .16s ease, transform .16s ease;
}
.nm-pill:hover{transform: translateY(-1px)}
.nm-pill.active, .nm-pill[aria-current="page"]{
  background: var(--nm-accent-soft);
  border-color: rgba(91,91,255,0.35);
  color: #2b2be0;
}

/* Home hero + cards */
.nm-hero{padding:28px 0 14px}
.nm-hero h1{font-size:44px;line-height:1.05;margin:10px 0 8px;letter-spacing:-0.03em}
.nm-hero p{margin:0;color:var(--nm-muted);max-width:72ch;line-height:1.6}

.nm-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}
@media (max-width: 860px){.nm-grid{grid-template-columns:1fr}}

.nm-card{
  padding:16px;
  border-radius:var(--nm-radius-lg);
  background:var(--nm-paper);
  border:1px solid var(--nm-line);
  box-shadow:var(--nm-shadow-md);
}
.nm-card h2{margin:0 0 6px;font-size:18px;letter-spacing:-0.01em}
.nm-card p{margin:0 0 10px;color:var(--nm-muted);line-height:1.45}
.nm-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}

.nm-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:10px 14px;
  border-radius:12px;
  border:1px solid var(--nm-line);
  background: var(--nm-paper);
  font-weight:800;
  letter-spacing:-0.01em;
  transition: transform .16s ease, filter .16s ease, background .16s ease;
}
.nm-btn.primary{
  border-color: rgba(91,91,255,0.35);
  background: var(--nm-accent);
  color:#fff;
  box-shadow: 0 10px 24px rgba(91,91,255,0.20);
}
.nm-btn:hover{transform:translateY(-1px); filter: brightness(0.99)}

/* Sections */
.nm-section{
  margin:20px 0 0;
  padding:16px;
  border-radius:var(--nm-radius-lg);
  background:var(--nm-paper);
  border:1px solid var(--nm-line);
  box-shadow:var(--nm-shadow-md);
}
.nm-section h2{margin:0 0 10px;font-size:18px;letter-spacing:-0.01em}
.nm-section p{margin:0;color:var(--nm-muted);line-height:1.6}
.nm-section ul{margin:10px 0 0 20px;color:var(--nm-muted);line-height:1.6}

/* FAQ / details */
.nm-faq details{border-top:1px dashed var(--nm-line);padding:10px 0}
.nm-faq details:first-of-type{border-top:none}
.nm-faq summary{cursor:pointer;font-weight:800}
.nm-faq p{margin:8px 0 0;color:var(--nm-muted);line-height:1.55}

.nm-details details{border:1px dashed var(--nm-line);border-radius:12px;padding:10px 12px;background: rgba(245,247,250,0.7)}
.nm-details summary{cursor:pointer;font-weight:900}
.nm-details .nm-details-body{margin-top:10px;color:var(--nm-muted);line-height:1.6}

/* Footer */
.nm-footer{
  margin-top:34px;
  padding:22px 0;
  border-top:1px solid var(--nm-line);
  background: rgba(255,255,255,0.55);
}
.nm-footer-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.nm-muted{color:var(--nm-muted)}

/* ========= Fullscreen app pages ========= */
/* App pages: nav only + app fills remaining viewport */
body.nm-app-page{
  height: 100vh;
  overflow: hidden;
  display:flex;
  flex-direction:column;
}
body.nm-app-page main{
  flex:1;
  min-height:0;
  width:100%;
}
body.nm-app-page #nm-app{
  height:100%;
  display:flex;
  min-height:0;
}

/* Make the app area feel like a product (not a landing page card) */
body.nm-app-page{
  background: var(--nm-surface);
}
