:root{
  --bg:#0A0A0A; --bg2:#0E0E0E; --card:#121212; --card2:#171717; --line:rgba(255,255,255,.07); --line2:rgba(255,255,255,.12);
  --txt:#fff; --mut:rgba(255,255,255,.6); --mut2:rgba(255,255,255,.4);
  --azul:#0A8BC2; --azul2:#0A9DDD; --azulbg:rgba(10,139,194,.12); --verde:#25D366; --verde2:#1ebe5d;
  --amar:#F5B83D; --verm:#EF5350; --roxo:#9B7BFF; --prata:#A8B5C0;
  --r:18px;
}
*{box-sizing:border-box;margin:0;padding:0}
[hidden]{display:none!important}
html,body{background:var(--bg);color:var(--txt);font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased}
body{min-height:100vh;overflow-x:hidden}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer;border:0;background:none}
.disp{font-family:Anton,Impact,sans-serif;letter-spacing:.02em;text-transform:uppercase;font-weight:400}
.wrap{max-width:1100px;margin:0 auto;padding:0 16px}
.mut{color:var(--mut)} .mut2{color:var(--mut2)}
.kick{display:inline-flex;align-items:center;gap:8px;color:var(--azul);font-size:11px;letter-spacing:.22em;text-transform:uppercase;font-weight:700}
.kick:before{content:"";width:28px;height:1px;background:var(--azul)}

/* topo */
.top{position:sticky;top:0;z-index:40;background:rgba(10,10,10,.82);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}
.top .wrap{height:64px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.marca{display:flex;align-items:center;gap:10px;min-width:0}
.marca img{width:42px;height:42px;object-fit:contain;filter:drop-shadow(0 0 10px rgba(10,139,194,.5))}
.marca b{display:block;font-family:Anton,Impact,sans-serif;font-weight:400;font-size:18px;letter-spacing:.08em;line-height:1}
.marca small{display:block;font-size:10px;letter-spacing:.22em;color:var(--prata);font-weight:600;text-transform:uppercase;margin-top:3px}
.demo{background:var(--amar);color:#000;font-size:12px;font-weight:700;text-align:center;padding:6px 12px}

/* botoes */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:44px;padding:0 20px;border-radius:999px;font-weight:700;font-size:13px;letter-spacing:.04em;text-transform:uppercase;transition:background .15s,transform .15s,opacity .15s;white-space:nowrap}
.btn:active{transform:scale(.98)}
.btn[disabled]{opacity:.45;cursor:not-allowed}
.btn-azul{background:var(--azul);color:#fff;box-shadow:0 0 26px rgba(10,139,194,.35)} .btn-azul:hover{background:var(--azul2)}
.btn-verde{background:var(--verde);color:#fff} .btn-verde:hover{background:var(--verde2)}
.btn-linha{border:1px solid var(--line2);background:rgba(255,255,255,.03)} .btn-linha:hover{background:rgba(255,255,255,.08)}
.btn-perigo{border:1px solid rgba(239,83,80,.4);color:#ff8a87} .btn-perigo:hover{background:rgba(239,83,80,.12)}
.btn-sm{height:34px;padding:0 13px;font-size:11px}
.btn-bloco{width:100%}

/* cartoes e formularios */
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r)}
.campo{display:flex;flex-direction:column;gap:6px}
.campo label{font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--mut)}
.inp{width:100%;height:46px;border-radius:12px;background:var(--bg);border:1px solid var(--line2);padding:0 14px;font-size:15px;outline:none;transition:border .15s,box-shadow .15s}
textarea.inp{height:auto;padding:12px 14px;resize:vertical;min-height:80px}
.inp:focus{border-color:var(--azul);box-shadow:0 0 0 3px rgba(10,139,194,.18)}
select.inp{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--mut) 50%),linear-gradient(135deg,var(--mut) 50%,transparent 50%);background-position:calc(100% - 18px) 20px,calc(100% - 13px) 20px;background-size:5px 5px;background-repeat:no-repeat;padding-right:34px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media (max-width:560px){.grid2{grid-template-columns:1fr}}

/* chips de status */
.chip{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 10px;border-radius:999px;font-size:10.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap}
.chip:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
.st-livre{color:var(--verde);background:rgba(37,211,102,.1)}
.st-pendente{color:var(--amar);background:rgba(245,184,61,.12)}
.st-confirmada{color:var(--azul2);background:var(--azulbg)}
.st-paga{color:var(--verde);background:rgba(37,211,102,.12)}
.st-cancelada{color:var(--verm);background:rgba(239,83,80,.12)}
.st-mensalista{color:var(--roxo);background:rgba(155,123,255,.13)}
.st-treino{color:var(--prata);background:rgba(168,181,192,.12)}
.st-bloqueio{color:#ff8a87;background:rgba(239,83,80,.1)}

/* modal e aviso */
.fundo{position:fixed;inset:0;z-index:80;background:rgba(0,0,0,.78);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:none;align-items:center;justify-content:center;padding:16px}
.fundo.on{display:flex}
.modal{width:100%;max-width:460px;max-height:92vh;overflow:auto;background:var(--card);border:1px solid rgba(10,139,194,.28);border-radius:24px;padding:24px;box-shadow:0 0 70px rgba(10,139,194,.2)}
.modal h3{font-family:Anton,Impact,sans-serif;font-weight:400;font-size:26px;text-transform:uppercase;letter-spacing:.03em;line-height:1.05}
.toast{position:fixed;left:50%;bottom:22px;transform:translateX(-50%) translateY(30px);opacity:0;z-index:99;background:#1c1c1c;border:1px solid var(--line2);padding:12px 18px;border-radius:14px;font-size:14px;font-weight:600;transition:all .25s;max-width:calc(100% - 32px);pointer-events:none}
.toast.on{opacity:1;transform:translateX(-50%) translateY(0)}
.toast.erro{border-color:rgba(239,83,80,.5);color:#ffb4b2}

.rod{border-top:1px solid var(--line);margin-top:56px;padding:22px 0;font-size:12px;color:var(--mut2)}
.rod .wrap{display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between}
.rod a:hover{color:var(--azul)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
@keyframes pisca{0%,100%{opacity:.45}50%{opacity:.9}}
.esq{background:var(--card2);border-radius:14px;animation:pisca 1.2s ease-in-out infinite}
