:root{--bg:#03101d;--surface:#0b2034;--surface2:#102a43;--line:rgba(139,174,211,.18);--text:#f8fbff;--muted:#9fb0c6;--yellow:#ffb713;--green:#55d5ac;--danger:#ff7585}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;font-family:Montserrat,sans-serif;color:var(--text);background:radial-gradient(circle at 15% 10%,rgba(38,99,142,.22),transparent 36%),linear-gradient(145deg,#020a13,#06182a 55%,#03101d);line-height:1.7}.legal-orb{position:fixed;border-radius:50%;filter:blur(90px);pointer-events:none;opacity:.22}.legal-orb--one{width:330px;height:330px;background:#1d84b5;top:20%;left:-160px}.legal-orb--two{width:280px;height:280px;background:#f7ae14;right:-150px;bottom:12%}.legal-topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:32px;min-height:82px;padding:14px max(24px,calc((100vw - 1280px)/2));background:rgba(2,12,22,.84);border-bottom:1px solid var(--line);backdrop-filter:blur(22px)}.legal-brand img{display:block;width:128px;max-height:52px;object-fit:contain}.legal-topbar nav{display:flex;align-items:center;gap:8px;margin-left:auto}.legal-topbar nav a,.legal-login{color:var(--muted);text-decoration:none;font-size:13px;font-weight:700;padding:10px 14px;border-radius:10px}.legal-topbar nav a:hover,.legal-topbar nav a.active{color:#fff;background:rgba(255,255,255,.06)}.legal-login{color:#071522;background:var(--yellow)}.legal-shell{position:relative;z-index:1;width:min(1280px,calc(100% - 40px));margin:0 auto;padding:72px 0}.legal-hero{max-width:900px;margin-bottom:44px}.legal-hero.compact{margin-bottom:30px}.legal-kicker{display:inline-flex;align-items:center;gap:9px;color:#aec7e2;text-transform:uppercase;letter-spacing:.95px;font-size:11px;font-weight:800}.legal-kicker i{color:var(--yellow)}.legal-hero h1{margin:12px 0 10px;font-size:clamp(36px,6vw,72px);line-height:1.04;letter-spacing:-2.5px}.legal-hero p{max-width:750px;margin:0;color:var(--muted);font-size:17px}.legal-meta{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.legal-meta span{display:inline-flex;align-items:center;gap:8px;padding:9px 12px;border:1px solid var(--line);border-radius:999px;color:#bfd0e2;background:rgba(255,255,255,.03);font-size:11px;font-weight:700}.legal-grid{display:grid;grid-template-columns:260px minmax(0,1fr);gap:28px;align-items:start}.legal-index{position:sticky;top:110px;display:grid;gap:7px;padding:20px;background:rgba(9,28,45,.84);border:1px solid var(--line);border-radius:18px;box-shadow:0 24px 60px rgba(0,0,0,.22)}.legal-index strong{margin-bottom:8px;font-size:12px;text-transform:uppercase;letter-spacing:.7px}.legal-index a{color:var(--muted);text-decoration:none;font-size:12px;padding:7px 9px;border-radius:8px}.legal-index a:hover{color:#fff;background:rgba(255,183,19,.09)}.legal-document{display:grid;gap:18px}.legal-document section{position:relative;padding:30px 32px;background:linear-gradient(145deg,rgba(14,39,62,.96),rgba(7,25,42,.96));border:1px solid var(--line);border-radius:22px;box-shadow:0 22px 60px rgba(0,0,0,.18)}.legal-document section>span{position:absolute;top:24px;right:26px;color:rgba(255,183,19,.22);font-size:36px;font-weight:800}.legal-document h2{margin:0 45px 12px 0;font-size:22px}.legal-document p,.legal-document li{color:#bac8d8;font-size:14px}.legal-document p:last-child{margin-bottom:0}.legal-document a,.legal-form-card a,.legal-status-card a{color:var(--yellow)}.legal-deletion-layout{display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:start}.legal-deletion-info,.legal-form-card,.legal-status-card{padding:30px;background:linear-gradient(145deg,rgba(14,39,62,.97),rgba(7,25,42,.97));border:1px solid var(--line);border-radius:24px;box-shadow:0 28px 70px rgba(0,0,0,.26)}.legal-deletion-info{display:grid;gap:15px}.legal-step{display:flex;gap:15px;padding:18px;border:1px solid var(--line);border-radius:15px;background:rgba(255,255,255,.025)}.legal-step b{display:grid;place-items:center;flex:0 0 36px;height:36px;border-radius:10px;color:#071522;background:var(--yellow)}.legal-step strong{font-size:14px}.legal-step p{margin:4px 0 0;color:var(--muted);font-size:12px}.legal-note{display:flex;align-items:flex-start;gap:12px;padding:15px;border:1px solid rgba(85,213,172,.18);border-radius:13px;color:#93e2ca;background:rgba(85,213,172,.07)}.legal-note p{margin:0;font-size:12px}.legal-form-card form{display:grid;gap:18px}.legal-form-card label>span{display:block;margin-bottom:7px;color:#cbd7e4;font-size:12px;font-weight:700}.legal-form-card label>div{display:flex;align-items:center;gap:10px;padding:0 14px;background:#061727;border:1px solid var(--line);border-radius:12px}.legal-form-card input,.legal-form-card textarea{width:100%;color:#fff;background:transparent;border:0;outline:0;font:inherit;font-size:13px}.legal-form-card input{height:50px}.legal-form-card textarea{padding:13px;background:#061727;border:1px solid var(--line);border-radius:12px;resize:vertical}.legal-check{display:flex!important;align-items:flex-start;gap:10px}.legal-check input{position:absolute;opacity:0;width:1px}.legal-check>span{display:grid!important;place-items:center;flex:0 0 23px;height:23px;margin:0!important;border:1px solid var(--line);border-radius:7px}.legal-check>span i{opacity:0;font-size:11px}.legal-check input:checked+span{color:#071522;background:var(--yellow)}.legal-check input:checked+span i{opacity:1}.legal-check p{margin:1px 0;color:var(--muted);font-size:12px}.legal-form-card button{height:52px;border:0;border-radius:13px;color:#071522;background:linear-gradient(135deg,#ffc637,#ffad00);font-weight:800;cursor:pointer}.legal-form-card>small{display:block;margin-top:16px;color:var(--muted);font-size:11px}.legal-alert{display:flex;gap:11px;margin-bottom:18px;padding:14px;border-radius:12px;font-size:12px}.legal-alert div{display:grid}.legal-alert.error{color:#ffb5be;background:rgba(255,117,133,.08);border:1px solid rgba(255,117,133,.2)}.legal-alert.success{color:#91e9cd;background:rgba(85,213,172,.08);border:1px solid rgba(85,213,172,.2)}.legal-status-card{max-width:880px;margin:auto}.legal-status-head{display:flex;align-items:center;gap:18px}.legal-status-head>span{display:grid;place-items:center;width:60px;height:60px;border-radius:17px;color:#071522;background:var(--yellow);font-size:22px}.legal-status-head small{color:var(--muted);text-transform:uppercase;font-size:9px;font-weight:800}.legal-status-head h2{margin:2px 0;font-size:27px}.legal-status-head p{margin:0;color:var(--muted);font-size:12px}.legal-status-timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:30px 0}.legal-status-timeline div{display:grid;place-items:center;gap:8px;padding:15px;color:#6f8298;border:1px solid var(--line);border-radius:13px;font-size:10px;font-weight:700}.legal-status-timeline i{font-size:16px}.legal-status-timeline .done{color:#8ae4c8;background:rgba(85,213,172,.07);border-color:rgba(85,213,172,.22)}.legal-status-help{margin:24px 0 0;color:var(--muted);font-size:12px}.legal-footer{position:relative;z-index:1;display:flex;justify-content:space-between;gap:20px;width:min(1280px,calc(100% - 40px));margin:0 auto;padding:25px 0 45px;color:#7e91a8;font-size:11px;border-top:1px solid var(--line)}.legal-footer div{display:flex;flex-wrap:wrap;gap:18px}.legal-footer a{color:#9fb0c6;text-decoration:none}@media(max-width:820px){.legal-topbar{padding:12px 18px}.legal-topbar nav{display:none}.legal-login{margin-left:auto}.legal-shell{width:min(100% - 24px,720px);padding:42px 0}.legal-grid,.legal-deletion-layout{grid-template-columns:1fr}.legal-index{position:static;grid-template-columns:repeat(2,1fr)}.legal-hero h1{letter-spacing:-1.3px}.legal-document section,.legal-deletion-info,.legal-form-card,.legal-status-card{padding:23px 20px}.legal-status-timeline{grid-template-columns:repeat(2,1fr)}.legal-footer{width:calc(100% - 28px);flex-direction:column}}@media(max-width:480px){.legal-brand img{width:105px}.legal-login{font-size:0}.legal-login i{font-size:15px}.legal-index{grid-template-columns:1fr}.legal-hero p{font-size:14px}.legal-document h2{font-size:19px}.legal-status-timeline{grid-template-columns:1fr 1fr}}

/* Van-Tagem | iOS Safari/Chrome: evita zoom automatico ao focar campos.
   O iOS amplia controles cuja fonte computada e menor que 16px.
   Mantemos o pinch-to-zoom do usuario intacto por acessibilidade. */
@supports (-webkit-touch-callout: none) {
    @media (hover: none) and (pointer: coarse) {
        input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]):not([type="file"]):not([type="button"]):not([type="submit"]):not([type="reset"]),
        select,
        textarea,
        [contenteditable="true"] {
            font-size: 16px !important;
            -webkit-text-size-adjust: 100%;
            touch-action: manipulation;
        }
    }
}

/* ========================================================================== */
/* Van-Tagem | Legal alinhado ao padrão global                                */
/* ========================================================================== */
.legal-login,
.legal-form-card button[type="submit"] {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    box-shadow: 0 10px 28px rgba(255, 176, 0, .14);
    transition: transform 180ms ease, box-shadow 180ms ease, filter 180ms ease;
}
.legal-login::after,
.legal-form-card button[type="submit"]::after {
    content: "";
    position: absolute;
    top: -70%;
    left: -42%;
    z-index: -1;
    width: 30%;
    height: 240%;
    background: rgba(255, 255, 255, .34);
    transform: rotate(18deg) translateX(-260%);
    transition: transform 460ms cubic-bezier(.22,1,.36,1);
    pointer-events: none;
}
.legal-login:hover,
.legal-form-card button[type="submit"]:hover {
    transform: translateY(-2px);
    box-shadow: 0 14px 34px rgba(255, 176, 0, .22);
    filter: saturate(1.04);
}
.legal-login:hover::after,
.legal-form-card button[type="submit"]:hover::after {
    transform: rotate(18deg) translateX(650%);
}
.legal-login:active,
.legal-form-card button[type="submit"]:active { transform: translateY(0) scale(.985); }
.legal-topbar nav a { transition: color 160ms ease, background 160ms ease, transform 160ms ease; }
.legal-topbar nav a:hover { transform: translateY(-1px); }
.legal-standard-footer { position: relative; z-index: 2; margin-top: 24px; }

@media (prefers-reduced-motion: reduce) {
    .legal-login,
    .legal-login::after,
    .legal-form-card button[type="submit"],
    .legal-form-card button[type="submit"]::after,
    .legal-topbar nav a { transition: none !important; }
}

/* VANTAGEM UI | legibilidade das páginas legais */
.legal-status-head small,
.legal-form-card > small,
.legal-footer { font-size: 11.5px !important; }
.legal-status-timeline div,
.legal-step p,
.legal-note p,
.legal-check p,
.legal-form-card label > span { font-size: 12px !important; line-height: 1.55 !important; }

