:root{
    --purple:#7c3aed;
    --purple-light:#a78bfa;
    --purple-pale:#ede9fe;
    --bg-dark:#0b0714;
    --bg-dark2:#170c30;
    --ink:#1c1730;
    --muted:#6b7280;
    --border:#e7e2f5;
}

*{box-sizing:border-box;}

body{
    margin:0;
    font-family:'Inter', system-ui, -apple-system, Segoe UI, Arial, sans-serif;
    background:#fff;
    color:var(--ink);
    line-height:1.65;
}

a{color:var(--purple);}

/* ---------- HEADER ---------- */
.legal-nav{
    background:linear-gradient(160deg, var(--bg-dark) 0%, var(--bg-dark2) 100%);
    padding:18px 24px;
}

.legal-nav-inner{
    max-width:760px;
    margin:0 auto;
    display:flex;
    align-items:center;
    justify-content:space-between;
}

.legal-logo{
    display:flex;
    align-items:center;
    gap:10px;
    font-weight:800;
    color:#fff;
    text-decoration:none;
}

.legal-logo .logo-icon{
    width:36px;height:36px;
    border-radius:10px;
    overflow:hidden;
    display:flex;align-items:center;justify-content:center;
    flex-shrink:0;
}

.legal-logo .logo-icon img{width:100%;height:100%;object-fit:cover;display:block;}

.legal-back{color:#cbc6dd;font-size:.85rem;text-decoration:none;}
.legal-back:hover{color:#fff;}

/* ---------- CONTENT ---------- */
.legal-wrap{
    max-width:760px;
    margin:0 auto;
    padding:48px 24px 80px;
}

.legal-wrap h1{
    font-size:2rem;
    font-weight:800;
    margin:0 0 6px;
}

.legal-updated{
    color:var(--muted);
    font-size:.88rem;
    margin:0 0 32px;
}

.legal-notice{
    background:var(--purple-pale);
    color:#4c1d95;
    border-radius:12px;
    padding:14px 18px;
    font-size:.88rem;
    margin:0 0 36px;
}

.legal-wrap h2{
    font-size:1.25rem;
    font-weight:800;
    margin:40px 0 12px;
    padding-top:4px;
    border-top:1px solid var(--border);
    padding-top:20px;
}

.legal-wrap h2:first-of-type{border-top:none;padding-top:0;margin-top:0;}

.legal-wrap p{
    color:#3c3653;
    margin:0 0 14px;
    font-size:.96rem;
}

.legal-wrap ul{
    margin:0 0 14px;
    padding-left:22px;
    color:#3c3653;
    font-size:.96rem;
}

.legal-wrap li{margin-bottom:6px;}
.legal-wrap strong{color:var(--ink);}

/* ---------- FOOTER ---------- */
.legal-footer{
    background:var(--bg-dark);
    color:#a9a3c4;
    padding:28px 24px;
    text-align:center;
    font-size:.82rem;
}

.legal-footer a{color:#c9b8ff;}

@media (max-width:640px){
    .legal-wrap{padding:32px 18px 56px;}
    .legal-wrap h1{font-size:1.6rem;}
}
