:root{
  --ink:#0a1c3d; --muted:#65676b; --paper:#f0f2f5; --surface:#fff; --line:#ced0d4;
  /* Azul de rede social (decisão do dono, 27/09/2026). Identidade própria: sem logotipo de terceiros. */
  --fb:#1877f2; --fb-dark:#166fe5; --fb-deep:#0b2b66; --fb-soft:#e7f0fe;
  --go:#31a24c; --go-soft:#e7f6ea; --warn:#9a6212; --warn-soft:#fbf0dc; --bad:#d13c3c; --bad-soft:#fbe5e2;
  --focus:#1877f2; --r:12px;
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}
*{box-sizing:border-box}
html,body{margin:0;background:var(--paper);color:var(--ink);font-size:16px;line-height:1.5}
a{color:var(--ink)}
:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
h1{font-size:1.75rem;line-height:1.2;margin:0 0 .5rem;font-weight:700;letter-spacing:-.01em}
h2{font-size:1.2rem;margin:1.75rem 0 .75rem;font-weight:700}
h3{font-size:1rem;margin:0 0 .25rem}
p{margin:.25rem 0 .75rem;max-width:70ch}
.muted{color:var(--muted)} .small{font-size:.875rem}
.shell{display:grid;grid-template-columns:232px 1fr;min-height:100vh}
.side{background:linear-gradient(180deg,var(--fb) 0%,var(--fb-deep) 100%);color:#fff;padding:1.25rem 1rem;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;gap:.25rem}
.brand{font-weight:800;font-size:1.05rem;line-height:1.15;margin:0 .5rem 1.25rem}
.brand small{display:block;font-weight:500;opacity:.6;font-size:.75rem;margin-top:.2rem}
.side a{color:#e3ecfb;text-decoration:none;padding:.6rem .75rem;border-radius:8px;font-weight:600}
.side a:hover{background:rgba(255,255,255,.14);color:#fff}
.side a.on{background:#fff;color:var(--fb)}
.side .grow{flex:1}
main{padding:2rem clamp(1rem,4vw,3rem) 6rem;max-width:1100px;width:100%}
.tabbar{display:none}
@media (max-width:820px){
  .shell{grid-template-columns:1fr}
  .side{display:none}
  .tabbar{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;bottom:0;left:0;right:0;background:var(--fb);padding:.35rem .25rem calc(.35rem + env(safe-area-inset-bottom));z-index:20}
  .tabbar a{color:#dbe7fb;text-decoration:none;text-align:center;font-size:.78rem;font-weight:600;padding:.5rem 0;border-radius:8px}
  .tabbar a.on{background:#fff;color:var(--fb)}
  main{padding:1.25rem 1rem 6.5rem}
  h1{font-size:1.45rem}
}
.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:1.25rem;box-shadow:0 1px 2px rgba(0,0,0,.08)}
.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}
.choice{display:flex;flex-direction:column;gap:.5rem;padding:1.5rem;border:2px solid var(--fb);border-radius:14px;background:var(--surface);text-decoration:none}
.choice strong{font-size:1.3rem;color:var(--fb)}
.choice:hover{background:var(--fb);color:#fff}
.choice:hover strong{color:#fff}
.choice:hover .muted{color:#cfd5e0}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.75rem;margin:1rem 0}
.stat{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:.8rem 1rem}
.stat b{display:block;font-size:1.5rem;line-height:1.1}
.stat span{color:var(--muted);font-size:.85rem}
.alerts{display:flex;flex-direction:column;gap:.5rem;margin:1rem 0}
.alert{border-left:4px solid var(--warn);background:var(--warn-soft);padding:.7rem 1rem;border-radius:0 8px 8px 0;display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}
.alert.bad{border-color:var(--bad);background:var(--bad-soft)}
.alert.ok{border-color:var(--go);background:var(--go-soft)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:44px;padding:.55rem 1.1rem;border-radius:8px;border:2px solid var(--fb);background:var(--fb);color:#fff;font:inherit;font-weight:700;cursor:pointer;text-decoration:none;white-space:nowrap}
.btn:hover{background:var(--fb-dark);border-color:var(--fb-dark)}
.btn.ghost{background:transparent;color:var(--fb)}
.btn.ghost:hover{background:var(--fb-soft)}
.btn.go{background:var(--go);border-color:var(--go)}
.btn.bad{background:transparent;border-color:var(--bad);color:var(--bad)}
.btn.sm{min-height:36px;padding:.3rem .75rem;font-size:.9rem}
.btn[disabled]{opacity:.45;cursor:not-allowed}
.row{display:flex;gap:.6rem;flex-wrap:wrap;align-items:center}
label{display:block;font-weight:600;margin:.9rem 0 .3rem}
input[type=text],input[type=email],input[type=password],input[type=number],input[type=url],input[type=datetime-local],select,textarea{width:100%;font:inherit;padding:.6rem .75rem;border:1.5px solid #c5cbd6;border-radius:8px;background:#fff;color:var(--ink)}
textarea{min-height:130px;resize:vertical}
.hint{color:var(--muted);font-size:.85rem;margin-top:.25rem}
.seg{display:flex;flex-wrap:wrap;gap:.5rem}
.seg label{margin:0;font-weight:600;border:1.5px solid #c5cbd6;border-radius:8px;padding:.5rem .9rem;cursor:pointer;background:#fff}
.seg input{position:absolute;opacity:0;pointer-events:none}
.seg input:checked+span{color:var(--go)}
.seg label:has(input:checked){border-color:var(--go);background:var(--go-soft)}
.seg label:has(input:focus-visible){outline:3px solid var(--focus)}
table{width:100%;border-collapse:collapse;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
th,td{text-align:left;padding:.6rem .75rem;border-bottom:1px solid var(--line);vertical-align:top}
th{font-size:.85rem;color:var(--muted);font-weight:600;background:#fafbfc}
.tablewrap{overflow-x:auto}
.tag{display:inline-block;padding:.1rem .55rem;border-radius:99px;font-size:.8rem;font-weight:700;background:#eceff4}
.tag.participo,.tag.publicado,.tag.ativa,.tag.processado{background:var(--go-soft);color:var(--go)}
.tag.aguardando,.tag.precisa_revalidar,.tag.carencia,.tag.pendente,.tag.ignorado,.tag.cancelada{background:var(--warn-soft);color:var(--warn)}
.tag.nao_consegui,.tag.suspensa,.tag.reembolsada,.tag.disputa,.tag.erro,.tag.recusado,.tag.saiu,.tag.nao_permite,.tag.nao_reconhecido,.tag.revisao_manual{background:var(--bad-soft);color:var(--bad)}
.progress{position:relative;height:26px;background:#dfe3e8;border-radius:99px;overflow:hidden;margin:.6rem 0}
.progress i{display:block;height:100%;background:linear-gradient(90deg,var(--fb) 0%,#4b9bff 100%);transition:width .4s ease}
.progress b{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:800;color:var(--ink);font-variant-numeric:tabular-nums;text-shadow:0 1px 2px rgba(255,255,255,.7)}
.runbar{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:1rem 1.25rem;box-shadow:0 1px 2px rgba(0,0,0,.08)}
.runbar .top{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;flex-wrap:wrap}
.runbar .big{font-size:1.5rem;font-weight:800;line-height:1.1}
.runbar .counts{display:flex;gap:.9rem;flex-wrap:wrap;font-size:.85rem;color:var(--muted);margin-top:.15rem}
.runbar .counts b{font-weight:800;color:var(--ink)}
.runbar .now{margin:.5rem 0 0;font-size:.9rem}
.runbar .now b{color:var(--fb)}
.steps{display:flex;gap:.4rem;flex-wrap:wrap;margin:.25rem 0 1.25rem;padding:0;list-style:none;counter-reset:s}
.steps li{counter-increment:s;font-size:.85rem;color:var(--muted);padding:.25rem .6rem;border-radius:99px;background:#e9edf2}
.steps li::before{content:counter(s) ". "}
.steps li.on{background:var(--fb);color:#fff}
.flash{padding:.8rem 1rem;border-radius:8px;margin-bottom:1rem;background:var(--go-soft);color:#0b5a3e;font-weight:600}
.flash.err{background:var(--bad-soft);color:var(--bad)}
.preview{border:1px solid var(--line);border-radius:12px;background:#fff;max-width:520px;overflow:hidden}
.preview .ph{padding:.75rem 1rem;font-weight:700;border-bottom:1px solid var(--line)}
.preview .pt{padding:1rem;white-space:pre-wrap}
.preview img,.preview video{display:block;width:100%;max-height:420px;object-fit:contain;background:#eef1f5}
.medias{display:flex;gap:.6rem;flex-wrap:wrap}
.medias figure{margin:0;width:130px;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#fff;font-size:.78rem}
.medias img,.medias video{width:100%;height:90px;object-fit:cover;display:block;background:#eef1f5}
.medias figcaption{padding:.3rem .4rem;display:flex;justify-content:space-between;gap:.25rem;align-items:center}
/* Fila assistida: o elemento central do produto */
.runner{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:1.25rem;align-items:start}
@media (max-width:820px){.runner{grid-template-columns:1fr}}
.clock{background:linear-gradient(180deg,var(--fb) 0%,var(--fb-deep) 100%);color:#fff;border-radius:16px;padding:1.25rem;text-align:center}
.clock .num{font-size:3.4rem;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:-.02em;line-height:1}
.clock .lbl{opacity:.75;font-size:.9rem;margin-top:.35rem}
.clock.ready{background:var(--go)}
.clock.ready .num{font-size:2.2rem;overflow-wrap:anywhere}
.groupname{font-size:1.35rem;font-weight:800;margin:.1rem 0 .5rem}
.textbox{white-space:pre-wrap;background:#fafbfc;border:1px solid var(--line);border-radius:8px;padding:.9rem;max-height:260px;overflow:auto}
.confirm{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;margin-top:1rem}
@media (max-width:520px){.confirm{grid-template-columns:1fr}}
.warnbox{border:2px solid var(--warn);background:var(--warn-soft);border-radius:10px;padding:.8rem 1rem;margin:.75rem 0}
.auth{max-width:420px;margin:8vh auto;padding:0 1rem}
.auth .brand{color:var(--ink);margin:0 0 1.5rem}
.kv{display:grid;grid-template-columns:max-content 1fr;gap:.35rem 1rem}
.kv dt{color:var(--muted)} .kv dd{margin:0;font-weight:600}
.saved{font-size:.85rem;color:var(--muted)}
details summary{cursor:pointer;font-weight:700;margin:.75rem 0}
.foot{margin-top:3rem;font-size:.8rem;color:var(--muted);max-width:70ch}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
/* ajustes após revisão visual */
.stat b{font-size:1.35rem;overflow-wrap:anywhere}
.choice .btn{margin-top:auto}
.btn[aria-disabled=true]{opacity:.45;cursor:not-allowed}
.tag{white-space:nowrap}
@media (max-width:820px){
  .runner>div:last-child{order:-1}
  .clock{padding:.8rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;text-align:left}
  .clock .num{font-size:2.3rem}
  .clock .lbl{margin:0;max-width:10rem}
}
/* Ritmo Intenso: alerta laranja (V2.2 seção 7) */
.warnbox.orange,.alert.orange{border-color:#d9690b;background:#fff1e3}

/* ---- Estado da conexão com o Facebook (pedido do dono, 27/09/2026) ---- */
.fbstate{display:flex;align-items:center;gap:.55rem;margin:.75rem .25rem 1rem;padding:.55rem .7rem;border-radius:10px;background:rgba(255,255,255,.14);font-size:.82rem;font-weight:600;line-height:1.25}
.fbstate .dot{width:10px;height:10px;border-radius:50%;flex:0 0 10px;background:#ff8a8a;box-shadow:0 0 0 3px rgba(255,138,138,.25)}
.fbstate.on .dot{background:#42d17a;box-shadow:0 0 0 3px rgba(66,209,122,.25);animation:pulso 2s ease-in-out infinite}
.fbstate small{display:block;font-weight:500;opacity:.8;font-size:.74rem}
.fbstate a{color:#fff;text-decoration:underline;padding:0;font-weight:700}
@keyframes pulso{0%,100%{opacity:1}50%{opacity:.45}}
.conectado{display:flex;align-items:center;gap:.75rem;border:2px solid var(--go);background:var(--go-soft);border-radius:12px;padding:1rem;margin:1rem 0}
.conectado .dot{width:14px;height:14px;border-radius:50%;background:var(--go);flex:0 0 14px;animation:pulso 2s ease-in-out infinite}
.conectado.off{border-color:var(--bad);background:var(--bad-soft)}
.conectado.off .dot{background:var(--bad);animation:none}
.conectado strong{display:block;font-size:1.05rem}

/* ---- Rodapé: aviso de não afiliação (Registro, seção 6 — aprovado em 27/09/2026) ---- */
.legal{margin-top:2.5rem;padding-top:1rem;border-top:1px solid var(--line);font-size:.78rem;color:var(--muted);max-width:70ch}
.alert.orange{border-left-color:#d9690b;color:#7a3a05;font-weight:600}
.alert.orange.fixed{position:sticky;top:0;z-index:15}
.seg label.orange:has(input:checked){border-color:#d9690b;background:#fff1e3}
.seg label.orange:has(input:checked) span{color:#7a3a05}

.confirm[data-wrap] .btn{white-space:normal;line-height:1.2;text-align:center}
