/* Shared styles for legal / policy pages */
:root {
  --bg: #0d0d0d;
  --surface: #161616;
  --surface2: #1e1e1e;
  --border: #2c2c2c;
  --accent: #f0a500;
  --accent-dim: rgba(240,165,0,0.12);
  --text: #e8e8e8;
  --muted: #9a9a9a;
  --muted2: #6a6a6a;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html,body{max-width:100vw;overflow-x:hidden;}
html{font-size:15px;-webkit-text-size-adjust:100%;}
img,svg,video{max-width:100%;height:auto;}
main.legal-main p,main.legal-main li,main.legal-main strong,
.contact-grid strong{overflow-wrap:anywhere;word-break:break-word;}
body{
  background:var(--bg);color:var(--text);
  font-family:'DM Mono',ui-monospace,Menlo,monospace;
  min-height:100dvh;display:flex;flex-direction:column;line-height:1.7;
}
a{color:var(--accent);text-decoration:none;}
a:hover{text-decoration:underline;}

header.legal-header{
  background:var(--surface);border-bottom:1px solid var(--border);
  padding:14px 22px;display:flex;align-items:center;gap:14px;flex-wrap:wrap;
}
.legal-header .logo{
  font-family:'Syne',sans-serif;font-weight:800;font-size:20px;
  letter-spacing:-0.5px;color:var(--text);
}
.legal-header .logo em{color:var(--accent);font-style:normal;}
.legal-header nav{margin-left:auto;display:flex;gap:14px;flex-wrap:wrap;font-size:13px;}
.legal-header nav a{color:var(--muted);}
.legal-header nav a:hover{color:var(--accent);text-decoration:none;}
.legal-header nav a.active{color:var(--accent);}

main.legal-main{
  max-width:820px;margin:0 auto;padding:36px 22px 56px;
  flex:1;width:100%;
}
main.legal-main h1{
  font-family:'Syne',sans-serif;font-weight:800;font-size:32px;
  margin-bottom:8px;color:var(--text);letter-spacing:-0.5px;
}
main.legal-main .meta{color:var(--muted2);font-size:12px;margin-bottom:28px;}
main.legal-main h2{
  font-family:'Syne',sans-serif;font-weight:700;font-size:20px;
  margin:28px 0 10px;color:var(--accent);
}
main.legal-main h3{
  font-weight:700;font-size:15px;margin:20px 0 6px;color:var(--text);
}
main.legal-main p,main.legal-main li{
  color:var(--text);font-size:14px;margin-bottom:10px;
}
main.legal-main ul,main.legal-main ol{padding-left:22px;margin-bottom:10px;}
main.legal-main li{margin-bottom:6px;}
main.legal-main strong{color:#fff;}
main.legal-main code{
  background:var(--surface2);border:1px solid var(--border);
  padding:1px 6px;border-radius:4px;font-size:13px;
}
main.legal-main .callout{
  background:var(--accent-dim);border:1px solid rgba(240,165,0,0.28);
  border-radius:8px;padding:14px 16px;margin:18px 0;font-size:13px;color:var(--muted);
}
main.legal-main .callout strong{color:var(--accent);}
.contact-grid{
  display:grid;grid-template-columns:auto 1fr;gap:8px 16px;
  background:var(--surface);border:1px solid var(--border);
  border-radius:10px;padding:18px 20px;margin:16px 0;
}
.contact-grid span{color:var(--muted);font-size:13px;}
.contact-grid strong{color:var(--text);font-size:14px;word-break:break-all;}

footer.legal-footer{
  margin-top:auto;border-top:1px solid var(--border);
  background:var(--surface);padding:22px;text-align:center;
  color:var(--muted2);font-size:12px;line-height:2;
}
footer.legal-footer .links{margin-bottom:6px;}
footer.legal-footer .links a{color:var(--muted);margin:0 8px;}
footer.legal-footer .links a:hover{color:var(--accent);}

@media (max-width:640px){
  main.legal-main{padding:24px 18px 44px;}
  main.legal-main h1{font-size:26px;}
  main.legal-main h2{font-size:18px;}
  .legal-header{padding:12px 14px;gap:10px;}
  .legal-header .logo{font-size:17px;}
  .legal-header nav{width:100%;margin-left:0;gap:8px;font-size:12px;}
  .contact-grid{grid-template-columns:1fr;padding:14px 16px;}
  .contact-grid span{margin-top:4px;}
}

@media (max-width:420px){
  html{font-size:14px;}
  main.legal-main{padding:18px 14px 36px;}
  main.legal-main h1{font-size:22px;}
  main.legal-main h2{font-size:16px;margin:20px 0 6px;}
  main.legal-main p,main.legal-main li{font-size:13px;}
  .legal-header{padding:10px 12px;}
  .legal-header .logo{font-size:16px;}
  .legal-header nav{gap:6px;font-size:11px;}
  .legal-header nav a{padding:2px 4px;}
  footer.legal-footer{padding:16px 12px;font-size:11px;}
  footer.legal-footer .links a{margin:0 4px;}
}

@media (max-width:340px){
  main.legal-main h1{font-size:20px;}
  main.legal-main h2{font-size:15px;}
  .legal-header nav{font-size:10.5px;gap:4px;}
}

/* ─────────────────────────────────────────────────────────
   Navigation: Features dropdown + mobile hamburger
   ─────────────────────────────────────────────────────── */
.legal-header{position:relative;}
.nav-toggle{
  display:none;background:transparent;border:1px solid var(--border);
  color:var(--text);font-size:18px;line-height:1;padding:6px 10px;
  border-radius:6px;cursor:pointer;margin-left:auto;
}
.nav-toggle:hover{border-color:var(--accent);color:var(--accent);}

.has-dropdown{position:relative;display:inline-flex;align-items:center;}
.nav-dd-btn{
  background:transparent;border:0;color:var(--muted);
  font:inherit;font-size:13px;cursor:pointer;
  padding:0;display:inline-flex;align-items:center;gap:4px;
}
.nav-dd-btn:hover,.nav-dd-btn[aria-expanded="true"]{color:var(--accent);}
.nav-dd-btn .caret{
  font-size:10px;transition:transform .2s;display:inline-block;
}
.nav-dd-btn[aria-expanded="true"] .caret{transform:rotate(180deg);}

.dropdown-panel{
  position:absolute;top:calc(100% + 10px);left:50%;transform:translateX(-50%);
  background:var(--surface2);border:1px solid var(--border);
  border-radius:10px;padding:8px;min-width:220px;
  box-shadow:0 12px 36px rgba(0,0,0,.55);
  display:none;flex-direction:column;gap:2px;z-index:50;
}
.dropdown-panel::before{
  content:"";position:absolute;top:-6px;left:50%;transform:translateX(-50%) rotate(45deg);
  width:10px;height:10px;background:var(--surface2);
  border-left:1px solid var(--border);border-top:1px solid var(--border);
}
.has-dropdown.open .dropdown-panel{display:flex;}
.dropdown-panel a,.dropdown-panel .dd-item{
  color:var(--text);padding:9px 12px;border-radius:6px;
  font-size:13px;display:flex;align-items:center;gap:10px;
  text-decoration:none;line-height:1.3;
}
.dropdown-panel a:hover{background:var(--accent-dim);color:var(--accent);text-decoration:none;}
.dropdown-panel .dd-item.soon{cursor:default;opacity:.6;}
.dropdown-panel a .dd-icon,.dropdown-panel .dd-item .dd-icon{
  width:28px;height:28px;border-radius:6px;background:var(--accent-dim);
  color:var(--accent);display:inline-flex;align-items:center;justify-content:center;
  font-size:14px;flex-shrink:0;
}
.dropdown-panel a .dd-meta,.dropdown-panel .dd-item .dd-meta{
  display:flex;flex-direction:column;gap:1px;flex:1;min-width:0;
}
.dropdown-panel a .dd-meta small,.dropdown-panel .dd-item .dd-meta small{
  color:var(--muted2);font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.dropdown-panel .dd-tag{
  font-family:'DM Mono',ui-monospace,monospace;font-size:9.5px;letter-spacing:0.1em;
  text-transform:uppercase;padding:2px 6px;border-radius:999px;border:1px solid;
  flex-shrink:0;
}
.dropdown-panel .dd-tag.live{color:#4ade80;border-color:rgba(74,222,128,0.35);background:rgba(74,222,128,0.08);}
.dropdown-panel .dd-tag.soon{color:var(--muted);border-color:var(--border);background:var(--bg);}

/* Mobile / narrow widths: collapse nav into hamburger */
@media (max-width:760px){
  .nav-toggle{display:inline-flex;}
  .legal-header nav{
    display:none;flex-direction:column;align-items:stretch;gap:2px;
    width:100%;margin:10px -22px -14px;padding:8px 22px 14px;
    background:var(--surface);border-top:1px solid var(--border);
    font-size:14px;
  }
  .legal-header nav.open{display:flex;}
  .legal-header nav > a,.legal-header nav .has-dropdown > .nav-dd-btn{
    padding:10px 6px;border-radius:6px;
  }
  .legal-header nav > a:hover{background:var(--accent-glow,rgba(240,165,0,.06));}
  .has-dropdown{display:flex;flex-direction:column;align-items:stretch;}
  .has-dropdown .nav-dd-btn{justify-content:space-between;font-size:14px;color:var(--muted);}
  .dropdown-panel{
    position:static;transform:none;margin:4px 0 6px 12px;min-width:0;
    box-shadow:none;background:transparent;border:1px dashed var(--border);
  }
  .dropdown-panel::before{display:none;}
}
@media (max-width:420px){
  .legal-header nav{margin:10px -14px -10px;padding:8px 14px 10px;font-size:13px;}
  .nav-toggle{padding:5px 8px;font-size:16px;}
}
