:root{
  --bg-1:#141820;
  --bg-2:#1b202a;
  --bg-3:#232a35;
  --bg-4:#2d3644;
  --hairline:#3a4453;
  --ink:#f2f0ea;
  --ink-dim:#b6bec9;
  --ink-faint:#7d8794;
  --green:#9fd63a;
  --green-pale:#c8ea7c;
  --gold:#c9a227;
  --font-head:'Yrsa',serif;
  --font-body:'Livvic',sans-serif;
}
*{box-sizing:border-box;}
body{
  margin:0;font-family:var(--font-body);background:var(--bg-1);color:var(--ink);line-height:1.7;
}
a{color:var(--green);}
.legal-header{
  position:sticky;top:0;background:rgba(20,24,32,.92);backdrop-filter:blur(8px);
  border-bottom:1px solid var(--hairline);padding:16px 24px;z-index:20;
}
.legal-header .inner{max-width:880px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;}
.legal-logo{display:flex;align-items:center;gap:10px;font-family:var(--font-head);font-weight:700;font-size:1.1rem;color:var(--ink);text-decoration:none;}
.legal-logo svg{width:30px;height:30px;}
.legal-back{font-size:.86rem;color:var(--ink-dim);text-decoration:none;}
.legal-back:hover{color:var(--green);}
.legal-wrap{max-width:880px;margin:0 auto;padding:56px 24px 100px;}
.legal-wrap h1{font-family:var(--font-head);font-size:2.2rem;margin-bottom:6px;}
.legal-updated{color:var(--ink-faint);font-size:.86rem;margin-bottom:44px;}
.legal-wrap h2{font-family:var(--font-head);font-size:1.35rem;margin-top:44px;margin-bottom:14px;color:var(--green-pale);border-top:1px solid var(--hairline);padding-top:32px;}
.legal-wrap h2:first-of-type{border-top:none;padding-top:0;}
.legal-wrap p, .legal-wrap li{color:var(--ink-dim);font-size:.98rem;}
.legal-wrap ul{padding-left:22px;}
.legal-wrap li{margin-bottom:8px;}
.legal-wrap strong{color:var(--ink);}
table{width:100%;border-collapse:collapse;margin:18px 0;font-size:.92rem;}
th,td{text-align:left;padding:11px 14px;border:1px solid var(--hairline);vertical-align:top;}
th{background:var(--bg-3);color:var(--green-pale);font-family:var(--font-body);font-weight:600;}
td{color:var(--ink-dim);background:var(--bg-2);}
.legal-box{background:var(--bg-3);border:1px solid var(--hairline);border-radius:12px;padding:20px 24px;margin:20px 0;}
.legal-footer{border-top:1px solid var(--hairline);padding:36px 24px;text-align:center;font-size:.8rem;color:var(--ink-faint);}
.legal-footer a{margin:0 8px;}
