/* Shared styles for legal/info pages — kept in sync with index.html's design tokens */
:root{
  --bg: #0b0b0f;
  --bg-2: #111116;
  --surface: #17171f;
  --surface-2: #1e1e28;
  --border: #2a2a36;
  --text: #f4f4f6;
  --text-dim: #a3a3b2;
  --text-faint: #6b6b7c;
  --violet: #7c5cff;
  --violet-2: #a78bfa;
  --coral: #ff6b6b;
  --mint: #4ade80;
  --gold: #fbbf24;
  --radius: 20px;
}
*{box-sizing:border-box; margin:0; padding:0;}
html{scroll-behavior:smooth;}
body{
  background:var(--bg);
  color:var(--text);
  font-family:'Inter', system-ui, -apple-system, sans-serif;
  line-height:1.5;
}
a{color:var(--violet-2); text-decoration:none;}
a:hover{text-decoration:underline;}
img{max-width:100%;}
.wrap{max-width:820px; margin:0 auto; padding:0 24px;}

header{
  position:sticky; top:0; z-index:50;
  backdrop-filter:blur(14px);
  background:rgba(11,11,15,0.72);
  border-bottom:1px solid var(--border);
}
nav{
  display:flex; align-items:center; justify-content:space-between;
  padding:16px 24px;
  max-width:1180px; margin:0 auto;
}
.logo{
  display:flex; align-items:center; gap:10px;
  font-weight:800; font-size:20px; letter-spacing:-0.02em;
  color:var(--text);
}
.logo:hover{text-decoration:none;}
.logo-mark{width:34px; height:34px; display:block;}
.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  padding:10px 20px; border-radius:999px;
  font-weight:600; font-size:14px;
  border:1px solid var(--border);
  background:transparent; color:var(--text);
}
.btn:hover{background:var(--surface); text-decoration:none;}

main{padding:64px 24px 100px;}
.legal h1{
  font-size:clamp(30px, 5vw, 44px); font-weight:800; letter-spacing:-0.02em;
  margin-bottom:10px;
}
.legal .updated{color:var(--text-faint); font-size:13.5px; margin-bottom:44px;}
.legal h2{font-size:20px; font-weight:700; margin:36px 0 12px; letter-spacing:-0.01em;}
.legal p{color:var(--text-dim); font-size:15px; line-height:1.7; margin-bottom:14px;}
.legal ul{color:var(--text-dim); font-size:15px; line-height:1.7; margin:0 0 14px 22px;}
.legal li{margin-bottom:6px;}
.legal strong{color:var(--text); font-weight:600;}
.legal a{color:var(--violet-2);}
.note{
  background:var(--surface); border:1px solid var(--border); border-radius:14px;
  padding:16px 20px; font-size:13.5px; color:var(--text-dim); margin-bottom:36px;
}

footer{
  border-top:1px solid var(--border);
  padding:48px 24px 32px;
}
.footer-wrap{
  max-width:1180px; margin:0 auto;
  display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:20px;
}
.footer-links{display:flex; gap:24px; flex-wrap:wrap; font-size:14px; color:var(--text-dim);}
.footer-links a{color:var(--text-dim);}
.footer-links a:hover{color:var(--text);}
.footer-copy{color:var(--text-faint); font-size:13px;}

@media (max-width:640px){
  .footer-wrap{flex-direction:column; align-items:flex-start;}
}
