*{box-sizing:border-box}
html,body{margin:0;height:100%;width:100%;overflow:hidden;overscroll-behavior:none;background:#080b11;color:#e9eef7;
  font-family:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  user-select:none;-webkit-user-select:none}
#game{position:absolute;inset:0;display:block;width:100%;height:100%}
#ui{position:absolute;inset:0;pointer-events:none;--me:#3b82f6;--them:#ef4444}
.hud{position:absolute;background:rgba(11,15,23,.80);border:1px solid rgba(255,255,255,.10);
  border-radius:14px;backdrop-filter:blur(6px);box-shadow:0 6px 24px rgba(0,0,0,.4)}
#hudTop{top:10px;left:50%;transform:translateX(-50%);display:flex;gap:16px;align-items:center;
  padding:8px 16px;font-size:13px;pointer-events:none}
.badge{display:flex;align-items:center;gap:8px}
.tag{display:inline-flex;align-items:center;justify-content:center;min-width:30px;height:22px;
  padding:0 7px;border-radius:6px;font-weight:800;font-size:13px;color:#fff;background:var(--me)}
#badgeName{opacity:.8;font-weight:600}
.round{font-weight:700;letter-spacing:.3px;opacity:.92;white-space:nowrap}
.votes{width:250px}
.vlabels{display:flex;justify-content:space-between;font-weight:800;font-size:12px;margin-bottom:3px}
#vMe{color:var(--me)}#vThem{color:var(--them)}
.vbar{height:10px;border-radius:6px;overflow:hidden;display:flex;background:#1b2331}
#vMeBar{background:var(--me);transition:width .25s}
#vThemBar{background:var(--them)}
.vsub{text-align:center;font-size:10px;opacity:.5;margin-top:3px;letter-spacing:.6px;text-transform:uppercase}
.clock{font-variant-numeric:tabular-nums;font-weight:800;font-size:18px;min-width:64px;text-align:center}
.clock.warn{color:#fca5a5}
#hudBottom{bottom:14px;left:14px;padding:10px 14px;display:flex;flex-direction:column;gap:8px;font-size:12px}
.funds{display:flex;align-items:center;gap:8px}
.fbar{width:150px;height:9px;border-radius:5px;background:#1b2331;overflow:hidden}
#fundBar{height:100%;width:0;background:linear-gradient(90deg,#f59e0b,#fbbf24)}
#fundTxt{font-variant-numeric:tabular-nums;opacity:.85;min-width:62px}
.flags .fme{color:var(--me);font-weight:800}.flags .fthem{color:var(--them);font-weight:800}
#hint{opacity:.72}
#mini{position:absolute;right:14px;bottom:14px;width:176px;height:176px;border-radius:12px;
  border:1px solid rgba(255,255,255,.12);background:rgba(8,11,17,.72);box-shadow:0 6px 24px rgba(0,0,0,.4)}
#muteBtn{position:absolute;top:12px;right:14px;pointer-events:auto;background:rgba(11,15,23,.8);
  color:#e9eef7;border:1px solid rgba(255,255,255,.14);border-radius:10px;padding:6px 11px;font-size:12px;cursor:pointer}
#capWrap{position:absolute;left:50%;bottom:118px;transform:translateX(-50%);width:220px;display:none;text-align:center}
#capWrap.on{display:block}
#capLabel{font-size:12px;margin-bottom:4px;text-shadow:0 1px 3px #000}
.capBar{height:10px;border-radius:6px;background:#1b2331;overflow:hidden;border:1px solid rgba(255,255,255,.15)}
#capBar{height:100%;width:0;background:#22c55e}
#hudTop,#hudBottom,#mini,#capWrap,#muteBtn{display:none}
body.playing #hudTop,body.playing #hudBottom,body.playing #mini{display:flex}
body.playing #muteBtn{display:block}

#screens{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  background:radial-gradient(ellipse at center,rgba(6,9,15,.62),rgba(5,7,11,.93));pointer-events:auto;z-index:5}
#screens.hidden{display:none}
.panel{width:min(900px,95vw);max-height:95vh;overflow:auto;background:linear-gradient(180deg,rgba(18,23,33,.97),rgba(12,16,24,.97));
  border:1px solid rgba(255,255,255,.12);border-radius:20px;padding:24px 28px;box-shadow:0 24px 70px rgba(0,0,0,.6)}
h1{margin:0 0 6px;font-size:36px;letter-spacing:1px;text-align:center;
  background:linear-gradient(90deg,#60a5fa,#f87171);-webkit-background-clip:text;background-clip:text;color:transparent}
h2{margin:0 0 8px;font-size:23px;text-align:center}
.sub{text-align:center;opacity:.78;margin:6px auto 18px;max-width:680px;line-height:1.5;font-size:14px}
.parties{display:flex;gap:16px;justify-content:center;margin:10px 0 18px}
.pcard{flex:1;max-width:250px;background:#0d121b;border:2px solid rgba(255,255,255,.10);border-radius:16px;
  padding:14px;cursor:pointer;transition:.15s;color:#e9eef7}
.pcard:hover{transform:translateY(-3px);border-color:var(--c)}
.pcard.sel{border-color:var(--c);box-shadow:0 0 0 3px color-mix(in srgb,var(--c) 35%,transparent)}
.pcard svg{width:100%;display:block;border-radius:8px}
.pname{text-align:center;font-weight:700;margin-top:10px}
.pnum{text-align:center;font-weight:900;font-size:26px;color:var(--c);margin-top:2px}
.row{display:flex;gap:10px;align-items:center;justify-content:center;margin:6px 0 18px}
.lbl{opacity:.7;font-size:13px}
.tgl{background:#141a25;border:1px solid rgba(255,255,255,.12);color:#e9eef7;border-radius:10px;
  padding:8px 16px;font-size:13px;cursor:pointer;font-weight:600}
.tgl.on{background:#2563eb;border-color:#2563eb}
.primary{display:block;margin:0 auto;background:linear-gradient(90deg,#2563eb,#dc2626);color:#fff;border:0;
  border-radius:12px;padding:14px 40px;font-size:16px;font-weight:800;cursor:pointer;letter-spacing:.4px}
.primary:hover{filter:brightness(1.1)}
.ghost{background:#141a25;border:1px solid rgba(255,255,255,.16);color:#e9eef7;border-radius:12px;
  padding:12px 26px;font-size:14px;font-weight:700;cursor:pointer}
.ghost:hover{background:#1b2231}
.tip{text-align:center;opacity:.6;font-size:12px;margin:16px 0 0;line-height:1.55}
.chips{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin:14px 0 4px}
.chip{background:#141a25;border:1px solid rgba(255,255,255,.12);border-radius:20px;padding:6px 14px;font-size:12.5px}
.chip b{color:#fbbf24}

table.vtable{width:100%;border-collapse:collapse;margin:12px 0;font-size:13px}
table.vtable th,table.vtable td{padding:6px 9px;text-align:left;border-bottom:1px solid rgba(255,255,255,.08)}
table.vtable th{opacity:.65;font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.5px}
table.vtable td.num{text-align:right;font-variant-numeric:tabular-nums}
.bigbar{height:26px;border-radius:8px;overflow:hidden;display:flex;background:#1b2331;margin:10px 0 4px;font-size:12px;font-weight:800}
.bigbar>div{display:flex;align-items:center;justify-content:center;color:#fff}
.resVerdict{text-align:center;font-size:22px;font-weight:800;margin:6px 0 2px}
.win{color:#34d399}.lose{color:#f87171}

.treeScroll{overflow:auto;margin:4px -6px 0;padding-bottom:6px}
.treestage{position:relative;width:1040px;height:600px;transform-origin:top left}
.tnode{position:absolute;transform:translate(-50%,-50%);width:50px;height:50px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:900;
  border:3px solid #33405a;background:#111827;color:#7e8ba6;cursor:pointer;transition:.12s;z-index:2}
.tnode .cap{position:absolute;top:52px;left:50%;transform:translateX(-50%);font-size:9.5px;width:98px;
  text-align:center;color:#a9b8cf;font-weight:700;line-height:1.12}
.tnode .cb{position:absolute;top:-7px;right:-7px;min-width:18px;height:18px;border-radius:9px;
  background:#fbbf24;color:#2a1c00;font-size:10.5px;font-weight:900;display:flex;align-items:center;
  justify-content:center;border:2px solid #0b0f18;padding:0 3px}
.tnode.root{width:62px;height:62px;border-color:#e9eef7;color:#e9eef7;background:#1b2434;
  cursor:default;font-size:11px;letter-spacing:.5px}
.tnode.hidden{width:30px;height:30px;background:#0c1018;border-color:#1a2330;color:#2c3648;
  font-size:12px;cursor:default;opacity:.55;animation:none;box-shadow:none}
.tnode.hidden .cap{display:none}
.tnode.seen{border-color:#3f4d66;color:#93a3bd;cursor:default}
.tnode.avail{animation:tpulse 1.9s ease-in-out infinite}
.tnode.avail:hover{transform:translate(-50%,-50%) scale(1.09)}
@keyframes tpulse{0%,100%{box-shadow:0 0 8px rgba(251,191,36,.22)}50%{box-shadow:0 0 22px rgba(251,191,36,.6)}}
.tnode.owned{color:#fff;border-color:#fff;
  background:radial-gradient(circle at 34% 28%,color-mix(in srgb,var(--bc) 62%,#ffffff),var(--bc));
  box-shadow:0 0 16px color-mix(in srgb,var(--bc) 55%,transparent)}
.tnode.b-garra{--bc:#dc2626}.tnode.b-garra.avail{border-color:#f87171;color:#f87171}
.tnode.b-rodas{--bc:#16a34a}.tnode.b-rodas.avail{border-color:#4ade80;color:#4ade80}
.tnode.b-robos{--bc:#0891b2}.tnode.b-robos.avail{border-color:#22d3ee;color:#22d3ee}
.tnode.b-equipe{--bc:#ca8a04}.tnode.b-equipe.avail{border-color:#facc15;color:#facc15}
.tnode.b-campanha{--bc:#9333ea}.tnode.b-campanha.avail{border-color:#c084fc;color:#c084fc}
.blabel{position:absolute;transform:translate(-50%,-50%);font-weight:800;font-size:13px;letter-spacing:.6px;
  text-transform:uppercase;pointer-events:none;text-shadow:0 2px 6px #000}
.ttbox{position:fixed;background:#0b0f18;border:1px solid rgba(255,255,255,.16);border-radius:10px;
  padding:9px 11px;font-size:12px;max-width:240px;pointer-events:none;z-index:9999;
  box-shadow:0 12px 34px rgba(0,0,0,.6);display:none;transform:translate(-50%,-100%)}
.ttbox b{display:block;margin-bottom:3px}
.ttbox .cost{color:#fbbf24;font-weight:700}
.ttbox .req{opacity:.7;margin-top:3px}
.treefoot{display:flex;justify-content:center;gap:14px;margin-top:14px;align-items:center;flex-wrap:wrap}
.legend{display:flex;gap:14px;justify-content:center;font-size:12px;margin-top:10px;opacity:.85;flex-wrap:wrap}
.dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:5px;vertical-align:-1px}

#chaosBanner{position:absolute;top:74px;left:50%;transform:translateX(-50%);padding:8px 16px;border-radius:12px;
  background:rgba(30,12,38,.88);border:1px solid rgba(255,120,80,.55);color:#ffd7c2;font-weight:700;font-size:13px;
  pointer-events:none;opacity:0;transition:opacity .25s;max-width:84vw;text-align:center;z-index:6;
  box-shadow:0 8px 26px rgba(0,0,0,.5)}
#chaosBanner.on{opacity:1}
body.fog #mini,body.fog #hudTop .votes{visibility:hidden}

.briefPanel{max-width:720px}
.briefGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(158px,1fr));gap:10px;margin:18px 0 4px}
.bcard{background:#141a25;border:1px solid rgba(255,255,255,.10);border-radius:12px;padding:12px 10px;text-align:center}
.bcard .bl{display:block;font-size:10.5px;opacity:.55;text-transform:uppercase;letter-spacing:.6px;margin-bottom:4px}
.bcard b{font-size:18px;color:#fbbf24}
.statsline{margin-top:18px;text-align:center;font-size:12.5px;opacity:.82}
.statsline b{color:#fbbf24}
.footRow{display:flex;justify-content:center;gap:14px;margin-top:20px;align-items:center;flex-wrap:wrap}
.footRow .primary{margin:0}

.tnode.b-defesa{--bc:#64748b}.tnode.b-defesa.avail{border-color:#94a3b8;color:#94a3b8;box-shadow:0 0 16px rgba(148,163,184,.4)}
.tnode.b-midia{--bc:#db2777}.tnode.b-midia.avail{border-color:#f472b6;color:#f472b6;box-shadow:0 0 16px rgba(244,114,182,.4)}
.treeHead{display:flex;align-items:center;justify-content:center;position:relative}
.ptsBadge{position:absolute;right:2px;top:-4px;background:#1d2536;border:1px solid #fbbf24;border-radius:12px;
  padding:6px 14px;text-align:center;min-width:66px;box-shadow:0 6px 18px rgba(0,0,0,.4)}
.ptsBadge b{display:block;font-size:24px;color:#fbbf24;line-height:1;font-variant-numeric:tabular-nums}
.ptsBadge span{font-size:10px;opacity:.7;text-transform:uppercase;letter-spacing:.5px}

/* ===== idle clicker panel ===== */
#clicker{position:absolute;top:0;right:0;width:380px;height:100%;display:none;flex-direction:column;
  background:linear-gradient(180deg,rgba(12,16,24,.96),rgba(9,12,18,.98));border-left:1px solid rgba(255,255,255,.10);
  z-index:7;font-size:13px;color:#e9eef7;pointer-events:auto}
body.idle #clicker{display:flex}
.ck-head{display:flex;align-items:flex-end;justify-content:space-between;padding:14px 16px 8px}
.ck-votes b{font-size:30px;font-variant-numeric:tabular-nums;display:block;line-height:1;color:#fff}
.ck-votes span{font-size:11px;opacity:.6;text-transform:uppercase;letter-spacing:.6px}
.ck-rate{font-size:14px;color:#7dd3fc;font-weight:800;font-variant-numeric:tabular-nums}
.ck-elec{padding:0 16px 10px}
.ck-elab{display:flex;justify-content:space-between;font-size:11px;opacity:.8;margin-bottom:4px}
.ck-ebar{height:8px;border-radius:5px;background:#1b2331;overflow:hidden}
#ckEbar{height:100%;width:0;background:linear-gradient(90deg,#f59e0b,#fbbf24)}
#ckClick{margin:4px 16px 10px;padding:15px;border:0;border-radius:14px;cursor:pointer;font-weight:900;font-size:17px;letter-spacing:.5px;
  color:#fff;background:linear-gradient(90deg,#2563eb,#dc2626);display:flex;flex-direction:column;gap:3px;align-items:center}
#ckClick small{font-weight:600;font-size:11px;opacity:.92}
#ckClick:active{filter:brightness(1.15)}
#ckClick.buff{box-shadow:0 0 26px #fde047;outline:2px solid #fde047}
.ck-banner{padding:0 16px;font-size:12px;color:#fdba74;font-weight:700;opacity:0;min-height:0;transition:opacity .2s;text-align:center}
.ck-banner.on{opacity:1;min-height:18px}
.ck-tabs{display:flex;gap:6px;padding:4px 16px 8px}
.ck-tabs button{flex:1;background:#141a25;border:1px solid rgba(255,255,255,.1);color:#cdd6e5;border-radius:9px;padding:7px;font-weight:700;font-size:12px;cursor:pointer}
.ck-tabs button.on{background:#2563eb;border-color:#2563eb;color:#fff}
#ckList{flex:1;overflow-y:auto;padding:0 10px 10px}
.ck-row{display:flex;align-items:center;gap:10px;width:100%;text-align:left;background:#121826;border:1px solid rgba(255,255,255,.08);
  border-radius:11px;padding:9px 10px;margin-bottom:7px;cursor:pointer;color:#e9eef7}
.ck-row:hover{border-color:#3b82f6}
.ck-row.off{opacity:.5;filter:grayscale(.4)}
.ck-ic{width:30px;height:30px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-weight:900;color:#fff;flex:0 0 30px}
.ck-ic.up{background:#16a34a}.ck-ic.proj{background:#9333ea}
.ck-info{flex:1;min-width:0;display:flex;flex-direction:column}
.ck-info b{font-size:13px}.ck-info small{opacity:.6;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ck-own{font-weight:800;font-size:16px;min-width:34px;text-align:right;color:#93c5fd}
.ck-cost{font-weight:800;color:#fbbf24;min-width:64px;text-align:right;font-variant-numeric:tabular-nums}
.ck-empty{opacity:.5;text-align:center;padding:20px;font-size:12px}
.ck-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 16px;border-top:1px solid rgba(255,255,255,.1)}
#ckMand{font-size:11px;opacity:.75}
#ckReb{background:#7c2d12;border:1px solid #f97316;color:#ffd7c2;border-radius:9px;padding:8px 12px;font-weight:800;cursor:pointer}
#ckReb:hover{background:#9a3412}
@media (max-width:820px){#clicker{width:100%;height:54%;top:auto;bottom:0;border-left:0;border-top:1px solid rgba(255,255,255,.12)}}

/* ===== pause ===== */
#ckPause{margin-left:10px;background:#141a25;border:1px solid rgba(255,255,255,.15);color:#e9eef7;border-radius:9px;width:34px;height:30px;cursor:pointer;font-size:12px;font-weight:900}
#ckPause:hover{border-color:#3b82f6}
.ck-head{align-items:center}
#pauseOv{position:absolute;inset:0 380px 0 0;z-index:6;display:none;flex-direction:column;align-items:center;justify-content:center;gap:6px;
  background:rgba(6,9,14,.55);backdrop-filter:blur(2px);color:#fff;pointer-events:none}
#pauseOv b{font-size:44px;letter-spacing:6px}
#pauseOv span{opacity:.75;font-size:13px}
body.paused #pauseOv{display:flex}

/* ===== manchetes ===== */
#news{position:absolute;top:18px;left:calc((100% - 380px) / 2);width:min(460px,calc(100% - 412px));z-index:8;
  transform:translate(-50%,calc(-100% - 60px)) rotate(-2deg);transition:transform .45s cubic-bezier(.2,1.4,.4,1);
  background:#f4ecd8;color:#1c1917;border-radius:4px;padding:12px 16px 14px;box-shadow:0 14px 40px rgba(0,0,0,.55);
  font-family:Georgia,"Times New Roman",serif;pointer-events:auto}
#news.on{transform:translate(-50%,0) rotate(-1.5deg)}
.np-top{display:flex;justify-content:space-between;font-size:11px;text-transform:uppercase;letter-spacing:1px;
  border-bottom:3px double #1c1917;padding-bottom:5px;margin-bottom:8px;padding-right:22px}
.np-top span:first-child{font-weight:900;font-size:14px;letter-spacing:.5px;text-transform:none;font-style:italic}
#news h2{margin:0 0 8px;font-size:21px;line-height:1.15;font-weight:900}
.np-fx{font-family:ui-sans-serif,system-ui,sans-serif;font-weight:800;font-size:13px;padding:4px 8px;border-radius:4px;display:inline-block}
#news.good .np-fx{background:#16a34a;color:#fff}
#news.bad .np-fx{background:#dc2626;color:#fff}
#news.scandal .np-fx{background:#1c1917;color:#fde047}
#news.scandal{outline:3px solid #dc2626}
.np-act{display:flex;gap:8px;margin-top:10px}
.np-act button{flex:1;padding:8px;border-radius:6px;border:2px solid #1c1917;background:#fff;font-weight:800;cursor:pointer;font-family:ui-sans-serif,system-ui,sans-serif}
.np-act button:hover{background:#1c1917;color:#fff}
.np-x{position:absolute;top:6px;right:8px;background:none;border:0;font-size:20px;cursor:pointer;color:#1c1917;line-height:1}
@media (max-width:820px){
  #pauseOv{inset:0 0 54% 0}
  #news{left:50%;width:calc(100% - 32px)}
}

/* ===== pesquisa / vice / fake news ===== */
.ck-poll{padding:0 16px 8px}
.ck-pbar{height:8px;border-radius:5px;background:#dc2626;overflow:hidden}
#ckPollBar{height:100%;width:50%;background:#2563eb;transition:width .4s}
#ckPollTxt b.me{color:#93c5fd}#ckPollTxt b.them{color:#fca5a5}#ckPollTxt i{opacity:.6;font-style:normal;margin-left:4px}
.ck-vice{padding:0 16px 6px;font-size:11px;opacity:.75;line-height:1.35}
.ck-vice b{color:#fde68a}
#ckFake{margin:-2px 16px 8px;padding:7px 10px;border-radius:10px;border:1px dashed #f97316;background:#1c1208;color:#fdba74;font-weight:800;font-size:12px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:8px}
#ckFake small{font-weight:600;opacity:.8;font-size:10px}
#ckFake:disabled{opacity:.45;cursor:default}
#ckFake:not(:disabled):hover{background:#2a1a0a}
.ck-tabs{gap:4px}
.ck-tabs button{padding:7px 2px;font-size:11px}
.ck-ic.prom{background:#ea580c}
.ck-row.done{opacity:.7;cursor:default;border-color:rgba(234,88,12,.35)}
.ck-row.done:hover{border-color:rgba(234,88,12,.35)}
.ck-note{font-size:11px;opacity:.65;margin:2px 6px 9px;line-height:1.4}

/* ===== jornal (recortes) ===== */
.ck-jhead{font-size:12px;margin:2px 4px 8px;opacity:.85}
.ck-jhead b{font-size:18px;color:#fde68a;margin-right:2px}
.ck-badges{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:10px}
.ck-badge{background:#121826;border:1px solid rgba(255,255,255,.08);border-radius:9px;padding:7px 8px;font-weight:800;font-size:12px;opacity:.45;display:flex;flex-direction:column}
.ck-badge small{font-weight:600;font-size:10px;opacity:.7}
.ck-badge.on{opacity:1;border-color:#eab308;background:#1f1a08;color:#fde68a}
.ck-clip{background:#f4ecd8;color:#1c1917;font-family:Georgia,"Times New Roman",serif;font-weight:700;font-size:12.5px;line-height:1.3;
  padding:8px 10px;border-radius:3px;margin-bottom:6px;border-left:5px solid #16a34a}
.ck-clip.bad{border-left-color:#dc2626}

/* ===== debate na TV ===== */
#debate{position:absolute;left:calc((100% - 380px) / 2);top:50%;width:min(520px,calc(100% - 412px));z-index:9;
  transform:translate(-50%,-50%) scale(.85);opacity:0;pointer-events:none;transition:transform .3s,opacity .3s}
#debate.on{transform:translate(-50%,-50%) scale(1);opacity:1;pointer-events:auto}
.db-tv{background:#0b1220;border:6px solid #1f2937;border-radius:14px;box-shadow:0 20px 60px rgba(0,0,0,.6),inset 0 0 40px rgba(37,99,235,.15);padding:14px 16px 12px;color:#e9eef7}
.db-top{display:flex;justify-content:space-between;font-size:11px;text-transform:uppercase;letter-spacing:1px;opacity:.85;margin-bottom:8px}
.db-live{color:#ef4444;font-weight:900;animation:blink 1s steps(2) infinite}
@keyframes blink{50%{opacity:.3}}
.db-q{font-size:19px;font-weight:900;line-height:1.2;margin-bottom:12px}
.db-opts{display:flex;flex-direction:column;gap:7px}
.db-opts button{text-align:left;padding:10px 12px;border-radius:9px;border:1px solid rgba(255,255,255,.15);background:#141c2e;color:#fff;font-weight:700;font-size:13.5px;cursor:pointer}
.db-opts button:not(:disabled):hover{border-color:#3b82f6;background:#1a2540}
.db-opts button.best{background:#14532d;border-color:#22c55e}
.db-opts button.worst{background:#450a0a;border-color:#ef4444}
.db-opts button.meh{opacity:.6}
.db-opts button.picked{outline:2px solid #fde047}
.db-time{height:5px;border-radius:3px;background:#1f2937;margin:11px 0 8px;overflow:hidden}
#dbBar{height:100%;width:100%;background:linear-gradient(90deg,#ef4444,#f59e0b)}
.db-res{font-size:12.5px;opacity:.8;min-height:17px;font-weight:700}
.db-res.good{color:#86efac;opacity:1}.db-res.bad{color:#fca5a5;opacity:1}

/* ===== fim de jogo ===== */
#ending{position:absolute;inset:0;z-index:20;display:none;align-items:center;justify-content:center;background:rgba(4,7,12,.72);backdrop-filter:blur(3px);padding:16px}
#ending.on{display:flex}
.end-card{position:relative;max-width:520px;width:100%;background:linear-gradient(160deg,#0f1b3d,#0b1220);border:2px solid #eab308;border-radius:18px;padding:26px 24px 20px;color:#e9eef7;text-align:center;box-shadow:0 30px 80px rgba(0,0,0,.6)}
.end-sash{width:64px;height:64px;margin:-58px auto 8px;border-radius:50%;background:#2563eb;border:4px solid #eab308;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:24px}
.end-card h1{margin:0 0 6px;font-size:30px;color:#fde68a;letter-spacing:.5px}
.end-card p{margin:0 0 16px;opacity:.8;font-size:14px}
.end-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:18px}
.end-stats div{background:rgba(255,255,255,.05);border-radius:10px;padding:8px}
.end-stats small{display:block;font-size:10px;opacity:.6;text-transform:uppercase;letter-spacing:.6px}
.end-stats b{font-size:16px}
.end-act{display:flex;gap:8px}
.end-act button{flex:1;padding:11px;border-radius:10px;font-weight:800;cursor:pointer;border:0}
#endGo{background:#2563eb;color:#fff}
#endReb{background:#7c2d12;color:#ffd7c2;border:1px solid #f97316}

@media (max-width:820px){
  #debate{left:50%;top:24%;width:calc(100% - 32px)}
}

/* ===== maquete ===== */
body.idle #game{touch-action:none;cursor:grab}
#mapHint{position:absolute;left:14px;bottom:12px;z-index:5;font-size:11px;color:rgba(226,232,240,.55);pointer-events:none;display:none}
body.idle #mapHint{display:block}
#evChip{position:absolute;left:14px;top:14px;z-index:6;display:none;flex-direction:column;gap:2px;max-width:260px;
  background:rgba(12,16,24,.9);border:1px solid #eab308;border-radius:12px;padding:8px 12px;color:#e9eef7;font-size:11px}
#evChip.on{display:flex}
#evChip b{font-size:14px;color:#fde68a}
#evChip span{opacity:.8}
#evChip i{font-style:normal;font-weight:800;color:#fde047}

/* bairro card */
#bcard{position:absolute;left:14px;bottom:34px;z-index:8;width:min(320px,calc(100% - 412px));display:none;
  background:rgba(12,16,24,.96);border:1px solid rgba(255,255,255,.14);border-radius:14px;padding:14px 16px;color:#e9eef7;font-size:12px;box-shadow:0 16px 40px rgba(0,0,0,.5)}
#bcard.on{display:block}
#bcard.att{border-color:#ef4444;box-shadow:0 0 0 2px rgba(239,68,68,.25),0 16px 40px rgba(0,0,0,.5)}
#bcard h3{margin:0 0 4px;font-size:17px}
#bcard p{margin:0 0 10px;opacity:.7;line-height:1.35}
.bc-x{position:absolute;top:8px;right:10px;background:none;border:0;color:#e9eef7;font-size:20px;cursor:pointer;line-height:1}
.bc-bar{position:relative;height:10px;border-radius:6px;background:#dc2626;overflow:hidden;margin-bottom:6px}
.bc-bar div{height:100%;background:#2563eb}
.bc-bar i{position:absolute;left:60%;top:0;bottom:0;width:2px;background:#fde047}
.bc-row{display:flex;justify-content:space-between;gap:8px;margin-bottom:4px;opacity:.9}
.bc-gens{opacity:.65;margin:6px 0 10px;line-height:1.35}
.bc-att{color:#fca5a5;font-weight:800;margin-bottom:8px}
.bc-go{width:100%;padding:10px;border-radius:10px;border:0;cursor:pointer;font-weight:900;font-size:14px;color:#fff;background:linear-gradient(90deg,#2563eb,#1d4ed8);display:flex;flex-direction:column;align-items:center;gap:2px}
#bcard.att .bc-go{background:linear-gradient(90deg,#dc2626,#991b1b)}
.bc-go small{font-weight:600;font-size:11px;opacity:.85}
.bc-go:disabled{opacity:.45;cursor:default}

/* apuracao */
#apur{position:absolute;left:calc((100% - 380px) / 2);top:50%;transform:translate(-50%,-50%);width:min(440px,calc(100% - 412px));z-index:12;display:none}
#apur.on{display:block}
.ap-card{background:#0b1220;border:2px solid #334155;border-radius:16px;padding:16px 18px;color:#e9eef7;box-shadow:0 24px 70px rgba(0,0,0,.65)}
.ap-top{display:flex;justify-content:space-between;font-size:11px;text-transform:uppercase;letter-spacing:.8px;opacity:.8;margin-bottom:8px}
.ap-score{display:flex;justify-content:space-between;font-size:24px;font-weight:900;margin-bottom:6px}
.ap-score .me,.ap-row .me{color:#93c5fd}.ap-score .them,.ap-row .them{color:#fca5a5}
.ap-bar{position:relative;height:14px;border-radius:8px;background:#dc2626;overflow:hidden;margin-bottom:10px}
.ap-bar div{height:100%;background:#2563eb;transition:width .5s}
.ap-bar i{position:absolute;left:50%;top:-2px;bottom:-2px;width:2px;background:#fff}
.ap-list{display:grid;grid-template-columns:1fr 1fr;gap:4px 14px;font-size:12.5px;min-height:20px}
.ap-row{display:flex;justify-content:space-between;animation:apIn .3s}
@keyframes apIn{from{opacity:0;transform:translateY(4px)}}
.ap-verdict{margin-top:12px;text-align:center;font-size:22px;font-weight:900;padding:8px;border-radius:10px}
.ap-verdict.win{background:#1e3a8a;color:#fde68a}
.ap-verdict.lose{background:#450a0a;color:#fecaca}
.ap-act{display:flex;justify-content:space-between;align-items:center;margin-top:12px;font-size:12px}
.ap-act button{padding:8px 14px;border-radius:9px;border:1px solid rgba(255,255,255,.2);background:#1e293b;color:#fff;font-weight:800;cursor:pointer}
.ap-act label{opacity:.75;display:flex;align-items:center;gap:5px;cursor:pointer}

/* compartilhar */
#share{position:absolute;inset:0;z-index:25;display:none;align-items:center;justify-content:center;background:rgba(4,7,12,.75);padding:16px}
#share.on{display:flex}
.sh-card{position:relative;background:#0b1220;border:1px solid rgba(255,255,255,.15);border-radius:16px;padding:16px;width:min(420px,100%);color:#e9eef7}
.sh-card img{width:100%;border-radius:10px;display:block}
.sh-card p{font-size:12px;opacity:.75;margin:10px 0}
.sh-act{display:flex;gap:6px}
.sh-act button{flex:1;padding:10px 6px;border-radius:9px;border:0;font-weight:800;cursor:pointer;background:#1e293b;color:#fff;font-size:12px}
.sh-act button:first-child{background:#16a34a}
.sh-msg{font-size:12px;color:#86efac;margin-top:8px;min-height:15px}
#ckShareBtn,#endShare{background:#14532d;border:1px solid #22c55e;color:#dcfce7;border-radius:9px;padding:8px 10px;font-weight:800;cursor:pointer}
#endShare{flex:1;padding:11px;border-radius:10px}
.ck-foot{gap:6px}
@media (max-width:820px){
  #bcard{width:calc(100% - 28px);bottom:56%}
  #apur{left:50%;top:24%;width:calc(100% - 32px)}
  #mapHint{bottom:calc(54% + 6px)}
}

/* escalas, legado, carreira */
.ck-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}
.ck-ic.lg{background:linear-gradient(135deg,#ca8a04,#fde047);color:#422006}
.ck-row.locked{opacity:.45;cursor:default;border-style:dashed}
.ck-row.locked:hover{border-color:rgba(255,255,255,.08)}
.ck-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;margin-bottom:10px}
.ck-stat{background:#121826;border:1px solid rgba(255,255,255,.08);border-radius:9px;padding:7px 9px;font-size:12px;color:#94a3b8}
.ck-stat b{display:block;color:#e9eef7;font-size:14px}
.ck-achs{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:6px}
.ck-ach{background:#121826;border:1px solid rgba(255,255,255,.06);border-radius:9px;padding:7px 8px;font-size:11px;color:#64748b;opacity:.6}
.ck-ach b{display:block;font-size:12px}
.ck-ach.on{opacity:1;color:#cbd5e1;border-color:rgba(253,224,71,.4);background:linear-gradient(180deg,rgba(253,224,71,.08),#121826)}
.ck-ach.on b{color:#fde047}
.end-act{flex-wrap:wrap}
.end-act button{min-width:120px}

/* celular: painel rola inteiro, abas e rodapé grudados */
@media (max-width:820px){
  #clicker{overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
  #clicker>*{flex-shrink:0}
  #ckList{flex:none;overflow:visible;padding:0 10px 10px}
  .ck-head{padding:8px 12px 4px}
  .ck-votes b{font-size:24px}
  .ck-elec,.ck-poll{padding:0 12px 6px}
  .ck-vice{padding:0 12px 4px}
  #ckClick{margin:4px 12px 8px;padding:12px;font-size:16px}
  #ckFake{margin:0 12px 6px}
  .ck-tabs{display:flex;overflow-x:auto;scrollbar-width:none;position:sticky;top:0;z-index:2;background:#0c1018;padding:6px 12px 8px}
  .ck-tabs::-webkit-scrollbar{display:none}
  .ck-tabs button{flex:0 0 auto;padding:8px 12px;font-size:12px}
  .ck-row{padding:10px;min-height:48px}
  .ck-foot{position:sticky;bottom:0;margin-top:auto;background:#0b0f17;padding:8px 12px;padding-bottom:max(8px,env(safe-area-inset-bottom))}
  .ck-foot button{padding:8px 10px;font-size:12px}
  #ckMand{font-size:10px}
  #mapHint{font-size:10px;right:14px}
  #evChip{max-width:calc(100% - 28px)}
  .end-card{max-height:calc(100vh - 32px);overflow-y:auto}
  .end-act button{min-width:0;flex:1 1 30%;padding:10px 6px;font-size:12px}
  .sh-card{max-height:calc(100vh - 32px);overflow-y:auto}
  .sh-act button{font-size:11px}
}

/* jornal completo */
#news{width:min(520px,calc(100% - 412px));max-height:calc(100% - 36px);overflow-y:auto}
.np-mast{display:flex;align-items:baseline;justify-content:space-between;gap:8px;border-bottom:3px double #1c1917;padding:0 22px 4px 0;margin-bottom:4px}
.np-mast b{font-size:26px;font-weight:900;letter-spacing:-.3px;text-align:center;flex:1;line-height:1.05}
.np-mast span{font-size:10px;font-style:italic;opacity:.75;white-space:nowrap}
#news .np-top{border-bottom:1px solid #1c1917;padding:0 0 4px;margin-bottom:8px;font-size:10px}
#news .np-top span:first-child{font-weight:700;font-size:10px;font-style:normal;text-transform:uppercase;letter-spacing:1px}
#news h2{font-size:23px}
.np-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;border-top:2px solid #1c1917;margin-top:12px;padding-top:8px;font-size:12.5px;font-weight:700;line-height:1.25}
.np-cols div+div{border-left:1px solid rgba(28,25,23,.35);padding-left:10px}
.np-cols i{display:block;font-style:normal;font-family:ui-sans-serif,system-ui,sans-serif;font-size:9.5px;font-weight:900;color:#b91c1c;letter-spacing:.8px;margin-bottom:3px}
.np-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;border-top:1px solid #1c1917;margin-top:8px;padding-top:6px;font-size:11px;font-style:italic}
.np-foot button{flex:0 0 auto;font-family:ui-sans-serif,system-ui,sans-serif;font-style:normal;font-weight:800;font-size:11px;padding:6px 10px;border-radius:6px;border:2px solid #1c1917;background:#1c1917;color:#f4ecd8;cursor:pointer}
.np-foot button:hover{background:#fff;color:#1c1917}
.ck-clip{cursor:pointer}
.ck-clip:hover{filter:brightness(1.06);outline:2px solid #fde68a}
.ck-jshare{width:calc(100% - 8px);margin:0 4px 4px;padding:9px;border-radius:9px;border:1px solid #fde68a;background:#1c1917;color:#fde68a;font-weight:800;cursor:pointer}
.ck-jtip{margin:0 4px 8px;font-size:11px;opacity:.55}
@media (max-width:820px){
  #news{width:calc(100% - 20px);max-height:66%;padding:10px 12px 12px;top:10px}
  .np-cols div:nth-child(3){display:none}
  .np-mast b{font-size:20px}
  #news h2{font-size:18px}
  .np-cols{grid-template-columns:1fr;gap:6px}
  .np-cols div+div{border-left:0;padding-left:0;border-top:1px dashed rgba(28,25,23,.35);padding-top:6px}
}

/* ===== feed (rede social da campanha) ===== */
#feed{position:absolute;left:0;top:0;width:320px;height:100%;z-index:7;display:none;flex-direction:column;background:#000;color:#f5f5f5;
  border-right:1px solid #262626;font:13px/1.35 -apple-system,"Segoe UI",Roboto,Arial,sans-serif}
body.idle.feeddock #feed{display:flex}
#feedBtn{position:absolute;left:14px;bottom:34px;z-index:6;display:none;width:44px;height:44px;border-radius:50%;border:0;cursor:pointer;font-size:20px;
  background:radial-gradient(circle at 30% 107%,#fdf497 0%,#fd5949 45%,#d6249f 60%,#285AEB 90%);box-shadow:0 6px 18px rgba(0,0,0,.45)}
body.idle:not(.feeddock) #feedBtn{display:block}
.fd-head{flex:0 0 auto;background:#000;border-bottom:1px solid #262626;padding:10px 12px 8px;z-index:2}
.fd-top{display:flex;align-items:center;gap:8px}
.fd-top b{font-size:15px;flex:1}
.fd-live{font-size:10px;font-weight:800;color:#fff;background:#e11d48;border-radius:4px;padding:2px 6px;animation:fdPulse 1.6s infinite}
@keyframes fdPulse{50%{opacity:.6}}
#fdHide{background:none;border:0;color:#a3a3a3;font-size:16px;cursor:pointer;padding:2px 4px}
.fd-donbtn{width:100%;margin-top:8px;padding:9px;border:0;border-radius:9px;cursor:pointer;font-weight:800;color:#fff;
  background:linear-gradient(90deg,#f58529,#dd2a7b,#8134af)}
.fd-don{display:none;margin-top:8px;gap:6px;flex-direction:column}
#feed.don .fd-don{display:flex}
.fd-don input,.fd-don textarea{font:inherit;color:#fff;background:#121212;border:1px solid #333;border-radius:8px;padding:8px}
.fd-don textarea{min-height:54px;resize:none}
.fd-amts{display:flex;gap:4px}
.fd-amts button{flex:1;padding:6px 0;border-radius:7px;border:1px solid var(--c);background:transparent;color:#fff;font-weight:800;font-size:11px;cursor:pointer}
.fd-amts button.on{background:var(--c)}
#fdSend{padding:9px;border:0;border-radius:8px;background:#0095f6;color:#fff;font-weight:800;cursor:pointer}
.fd-out{font-size:11px;color:#a3a3a3;min-height:14px}
.fd-pins{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;margin-top:8px}
.fd-pins::-webkit-scrollbar{display:none}
.fd-pin{flex:0 0 auto;max-width:240px;border-radius:14px;padding:4px 10px;font-size:11px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fd-pin b{margin-right:4px}
.fd-empty{font-size:11px;color:#737373}
.fd-list{flex:1;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#333 transparent}
.fp{border-bottom:1px solid #262626;padding-bottom:8px;animation:fpIn .4s}
@keyframes fpIn{from{opacity:0;transform:translateY(10px)}}
.fp header{display:flex;align-items:center;gap:8px;padding:8px 10px}
.fp header i{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-style:normal;font-weight:900;color:#fff;
  box-shadow:0 0 0 2px #000,0 0 0 3.5px #d6249f;flex:0 0 30px}
.fp header div{flex:1;min-width:0;display:flex;flex-direction:column}
.fp header b{font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fp header small{font-size:10.5px;color:#a3a3a3}
.fp-ok{display:inline-flex;align-items:center;justify-content:center;width:13px;height:13px;border-radius:50%;background:#0095f6;color:#fff;font-size:8px;vertical-align:1px}
.fp-dots{color:#a3a3a3;font-weight:900;background:none;border:0;cursor:pointer;font-size:16px;padding:4px 6px}
.fp img{display:block;width:100%;aspect-ratio:1;object-fit:cover;background:linear-gradient(110deg,#262626 30%,#3f3f46 50%,#262626 70%) 0 0/250% 100%;animation:fpwait 1.2s linear infinite}
.fp img.ok{animation:none;background:none}
@keyframes fpwait{to{background-position:-250% 0}}
.fp-sc{margin:0 10px;border-radius:10px;padding:10px 12px;color:#fff;font-size:13px;font-weight:600}
.fp-sc b{display:block;font-size:11px;opacity:.9;margin-bottom:3px}
.fp-act{display:flex;gap:14px;padding:6px 10px 2px;font-size:20px}
.fp-act button{background:none;border:0;color:#f5f5f5;font-size:22px;cursor:pointer;padding:0;line-height:1}
.fp-act button.on{color:#ff3040}
.fp-likes{padding:0 10px;font-size:12.5px}
.fp-cap,.fp-cmts div{padding:2px 10px;font-size:12.5px;word-wrap:break-word}
.fp-cmts div{color:#d4d4d4}
.fp-cmts div{animation:fpIn .3s}
.fp-time{padding:3px 10px 0;font-size:10px;color:#737373;text-transform:uppercase}
.fp.sc{background:#0a0a0a}
/* map overlays shift right when the feed is docked */
@media (min-width:821px){
  body.feeddock{--fl:320px}
  #pauseOv{left:var(--fl,0px)}
  #news{left:calc(var(--fl,0px) + (100% - 380px - var(--fl,0px)) / 2);width:min(520px,calc(100% - 412px - var(--fl,0px)))}
  #debate{left:calc(var(--fl,0px) + (100% - 380px - var(--fl,0px)) / 2);width:min(520px,calc(100% - 412px - var(--fl,0px)))}
  #apur{left:calc(var(--fl,0px) + (100% - 380px - var(--fl,0px)) / 2);width:min(440px,calc(100% - 412px - var(--fl,0px)))}
  #bcard{left:calc(var(--fl,0px) + 14px);width:min(320px,calc(100% - 412px - var(--fl,0px)))}
  #mapHint,#evChip{left:calc(var(--fl,0px) + 14px)}
}
/* small screens: the feed opens as an overlay */
@media (max-width:1100px){
  body.idle.feedopen #feed{display:flex;position:fixed;inset:0 auto 0 0;width:min(380px,100%);z-index:30;box-shadow:12px 0 40px rgba(0,0,0,.6)}
}
@media (max-width:820px){
  #feedBtn{left:auto;right:12px;top:12px;bottom:auto;width:40px;height:40px;font-size:18px}
  body.idle.feedopen #feed{width:100%}
}
.fd-pix{display:flex;flex-direction:column;gap:6px;align-items:stretch;background:#121212;border:1px solid #333;border-radius:10px;padding:10px;color:#e5e5e5;font-size:12px}
.fd-pix img{width:160px;height:160px;align-self:center;background:#fff;border-radius:6px}
.fd-pix input{font:11px monospace;color:#fff;background:#000;border:1px solid #333;border-radius:6px;padding:6px}
.fd-pix button{padding:7px;border:0;border-radius:7px;background:#16a34a;color:#fff;font-weight:800;cursor:pointer}
.fd-pix small{color:#a3a3a3}
#fdSend:disabled{opacity:.5}

/* som e configurações */
.ck-btns{display:flex;gap:6px}
#ckPause{margin-left:0}
#ckMute,#ckCfg{background:#141a25;border:1px solid rgba(255,255,255,.15);color:#e9eef7;border-radius:9px;width:34px;height:30px;cursor:pointer;font-size:14px;line-height:1}
#ckCfg{font-size:19px}
#ckMute:hover,#ckCfg:hover{border-color:#3b82f6}
body.nofeed #feed,body.nofeed #feedBtn{display:none!important}
#cfg{position:absolute;inset:0;z-index:26;display:none;align-items:center;justify-content:center;background:rgba(4,7,12,.7);padding:16px}
#cfg.on{display:flex}
.cf-card{position:relative;width:min(400px,100%);background:#0b1220;border:1px solid rgba(255,255,255,.15);border-radius:16px;padding:18px;color:#e9eef7;display:flex;flex-direction:column;gap:10px}
.cf-card h3{margin:0 0 4px;font-size:18px}
.cf-row{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#121826;border:1px solid rgba(255,255,255,.08);border-radius:11px;padding:10px 12px;cursor:pointer}
.cf-row span{display:flex;flex-direction:column}
.cf-row b{font-size:13.5px}.cf-row small{font-size:11px;opacity:.6}
.cf-row input[type=checkbox]{position:absolute;opacity:0;pointer-events:none}
.cf-row i{flex:0 0 40px;height:22px;border-radius:11px;background:#334155;position:relative;transition:background .2s}
.cf-row i::after{content:'';position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;transition:left .2s}
.cf-row input:checked+i{background:#2563eb}
.cf-row input:checked+i::after{left:21px}
.cf-row input[type=range]{width:130px;accent-color:#2563eb}
.cf-reset{margin-top:4px;padding:10px;border-radius:10px;border:1px solid #7f1d1d;background:#1c0a0a;color:#fca5a5;font-weight:800;cursor:pointer}
.cf-reset:hover{background:#2a0e0e}
.sh-card img{max-height:62vh;object-fit:contain;background:#000}
.fp-act button[data-f="share"]{font-size:21px}
#share{z-index:40}
/* perfil do candidato */
#perfil{position:fixed;inset:0;z-index:45;display:none;align-items:center;justify-content:center;background:rgba(0,0,0,.6);padding:16px}
#perfil.on{display:flex}
.pf-card{background:#fff;color:#1a1a1a;border-radius:16px;padding:20px;width:min(420px,100%);max-height:92vh;overflow:auto;display:flex;flex-direction:column;gap:8px;box-shadow:0 20px 60px rgba(0,0,0,.4)}
.pf-card h3{margin:0;font-size:22px}
.pf-card p{margin:0 0 4px;font-size:13px;color:#555}
.pf-card label{font-weight:800;font-size:13px;display:flex;flex-direction:column;gap:4px}
.pf-card input{font:inherit;font-weight:600;padding:9px 10px;border:2px solid #ddd;border-radius:9px}
.pf-row{display:flex;gap:6px}.pf-row input{flex:1}
.pf-row button{border:0;background:#eef2ff;border-radius:9px;font-size:18px;cursor:pointer;padding:0 12px}
.pf-faces{display:grid;grid-template-columns:repeat(10,1fr);gap:4px}
.pf-faces button{font-size:22px;aspect-ratio:1;border:2px solid transparent;border-radius:9px;background:#f3f4f6;cursor:pointer;padding:0}
.pf-faces button.on{border-color:#2563eb;background:#dbeafe}
.pf-go{margin-top:8px;border:0;border-radius:11px;padding:12px;font-size:16px;font-weight:900;color:#fff;background:#2563eb;cursor:pointer}
@media (max-width:480px){.pf-faces{grid-template-columns:repeat(5,1fr)}}
.cf-btn{width:100%;margin:6px 0;padding:10px;border:0;border-radius:9px;background:#eef2ff;color:#1e3a8a;font-weight:800;cursor:pointer}
.cf-hint{margin:6px 0;padding:9px 10px;border-radius:9px;background:#0f172a;border:1px dashed #334155;color:#cbd5e1;font-size:12px;line-height:1.4}
/* postar no feed */
.fd-follow{font-size:11px;color:#9ca3af;margin-top:6px}
.fd-btnrow{display:flex;gap:6px}.fd-btnrow .fd-donbtn{flex:1.6}
.fd-postbtn{flex:1;margin-top:8px;padding:9px;border:0;border-radius:9px;cursor:pointer;font-weight:800;color:#fff;background:linear-gradient(45deg,#f09433,#dc2743,#bc1888)}
.fd-post{display:none;margin-top:8px;flex-direction:column;gap:5px}
#feed.post .fd-post{display:flex}
.fd-plabel{font-size:11px;font-weight:800;color:#9ca3af;text-transform:uppercase;display:flex;align-items:center;gap:6px}
.fd-plabel button{background:none;border:0;cursor:pointer;font-size:14px}
.fd-bairros{display:flex;flex-wrap:wrap;gap:4px}
.fd-bairros button{font-size:11px;padding:4px 7px;border-radius:99px;border:1px solid #333;background:#121212;color:#ddd;cursor:pointer}
.fd-bairros button.on{background:#2563eb;border-color:#2563eb;color:#fff}
.fd-cap{text-align:left;font-size:12px;padding:7px 9px;border-radius:8px;border:1px solid #333;background:#121212;color:#ddd;cursor:pointer}
.fd-cap.on{border-color:#dc2743;background:#2a0d16;color:#fff}
#fdPublish{padding:9px;border:0;border-radius:9px;font-weight:900;color:#fff;background:#dc2743;cursor:pointer}
#fdPublish:disabled{background:#444;cursor:default}
/* tutorial */
#tutRing{position:fixed;z-index:60;pointer-events:none;border:3px solid #fde047;border-radius:12px;box-shadow:0 0 0 4px rgba(253,224,71,.25),0 0 22px rgba(253,224,71,.6);display:none;animation:tutPulse 1.2s ease-in-out infinite;transition:left .15s,top .15s,width .15s,height .15s}
#tutRing.on{display:block}
@keyframes tutPulse{50%{box-shadow:0 0 0 8px rgba(253,224,71,.12),0 0 30px rgba(253,224,71,.8)}}
#tut{position:fixed;z-index:61;display:none;background:#0f172a;color:#f1f5f9;border:2px solid #fde047;border-radius:14px;padding:12px 14px;font:14px/1.4 system-ui,sans-serif;box-shadow:0 10px 30px rgba(0,0,0,.5);box-sizing:border-box}
#tut.on{display:block}
#tut p{margin:4px 0 10px}
#tut b{color:#fde047}
#tut .tt-step{font-size:11px;font-weight:700;color:#94a3b8;letter-spacing:.05em}
#tut .tt-btns{display:flex;gap:8px;justify-content:flex-end}
#tut button{font:inherit;font-size:13px;border:0;border-radius:8px;padding:6px 10px;cursor:pointer;background:#334155;color:#cbd5e1}
#tut .tt-ok{background:#fde047;color:#111;font-weight:800}
.cf-tut{display:block;width:100%;margin:10px 0 0;padding:9px;border-radius:10px;border:1px solid #3b82f6;background:transparent;color:#93c5fd;font:inherit;font-weight:700;cursor:pointer}
/* ranking entre jogadores */
.rk{margin-top:12px;padding-top:10px;border-top:1px solid rgba(255,255,255,.12)}
.rk h4{margin:0 0 8px;font-size:14px}
.rk-tabs{display:flex;gap:4px;margin-bottom:8px;flex-wrap:wrap}
.rk-tabs button{flex:1;min-width:0;padding:6px 4px;font-size:11px;border-radius:8px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.06);color:inherit;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rk-tabs button.on{background:#2563eb;border-color:#2563eb;color:#fff}
.rk-row{display:flex;align-items:center;gap:8px;padding:5px 6px;border-radius:8px;font-size:12px}
.rk-row:nth-child(odd){background:rgba(255,255,255,.04)}
.rk-row.me{background:rgba(37,99,235,.3);outline:1px solid #3b82f6}
.rk-pos{width:28px;font-weight:800;opacity:.8}
.rk-face{font-size:18px;line-height:1}
.rk-nome{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rk-row b{font-size:12px;text-align:right}
.rk-gap{text-align:center;opacity:.5;line-height:1}
/* patrocínio: chuva de santinhos */
#sponsorFx{position:fixed;inset:0;pointer-events:none;z-index:25;overflow:hidden;display:none}
#sponsorFx.on,#sponsorFx:has(.sp-drop){display:block}
.sp-chip{position:absolute;top:10px;left:50%;transform:translateX(-50%);background:linear-gradient(90deg,#f59e0b,#ef4444);color:#fff;font:800 13px sans-serif;padding:7px 14px;border-radius:999px;box-shadow:0 4px 14px rgba(0,0,0,.35);white-space:nowrap;max-width:92vw;overflow:hidden;text-overflow:ellipsis;display:none}
#sponsorFx.on .sp-chip{display:block}
.sp-drop{position:absolute;top:-40px;width:22px;height:30px;background:#fff;border:2px solid #2563eb;border-radius:3px;color:#2563eb;font:900 11px/26px sans-serif;text-align:center;box-shadow:0 2px 4px rgba(0,0,0,.25);animation:spFall 4s linear forwards}
@keyframes spFall{to{transform:translateY(calc(100vh + 80px)) rotate(var(--r,180deg))}}
@media (prefers-reduced-motion:reduce){.sp-drop{display:none}}
/* buy amount bar */
.ck-buybar{display:flex;gap:4px;padding:0 16px 8px;align-items:center}
.ck-buybar button{flex:1;padding:6px 0;border-radius:8px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.05);color:#cbd5e1;font-weight:800;font-size:12px;cursor:pointer}
.ck-buybar button.on{background:#2563eb;border-color:#2563eb;color:#fff}
.ck-buybar input{width:62px;padding:6px;border-radius:8px;border:1px solid rgba(255,255,255,.14);background:rgba(0,0,0,.3);color:#fff;font:inherit;font-size:12px;font-weight:800}
.ck-buybar input.on{border-color:#2563eb;box-shadow:0 0 0 1px #2563eb}
.ck-cost em{font-style:normal;font-size:10px;color:#93c5fd;margin-right:2px}
/* anúncio com recompensa */
.ck-ad{margin:6px 16px 0;padding:9px;border-radius:11px;border:1px solid #16a34a;background:linear-gradient(90deg,rgba(22,163,74,.25),rgba(22,163,74,.1));color:#bbf7d0;font-weight:800;font-size:13px;cursor:pointer}
.ck-ad b{color:#fde047}
.ck-ad:disabled{opacity:.55;cursor:default}
#adFake{position:fixed;inset:0;z-index:80;background:rgba(0,0,0,.92);display:flex;align-items:center;justify-content:center;color:#fff;font:800 22px system-ui}
#adFake div{display:flex;flex-direction:column;align-items:center;gap:12px}
#adFake b{font-size:54px;color:#fde047}
/* ideologia: árvore de habilidades */
.ck-refund{width:100%;margin:4px 0 10px;padding:12px;border:0;border-radius:12px;font-weight:900;font-size:15px;color:#fff;cursor:pointer;
  background:linear-gradient(90deg,#7c3aed,#db2777,#f59e0b);box-shadow:0 0 18px rgba(219,39,119,.45);animation:trGlow 2.4s ease-in-out infinite}
@keyframes trGlow{50%{box-shadow:0 0 30px rgba(245,158,11,.6)}}
.tr-tree{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.tr-col{display:flex;flex-direction:column;align-items:stretch}
.tr-col h4{margin:0 0 6px;text-align:center;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:#a78bfa}
.tr-node{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 4px 6px;border-radius:12px;border:2px solid #334155;
  background:#0f172a;color:#cbd5e1;cursor:pointer;text-align:center;min-height:118px}
.tr-node i{font-style:normal;font-size:22px}
.tr-node b{font-size:11px;line-height:1.15}
.tr-node small{font-size:9.5px;line-height:1.2;color:#94a3b8}
.tr-node em{font-style:normal;font-size:9px;font-weight:800;color:#4ade80}
.tr-node span{margin-top:auto;font-size:11px;font-weight:900;color:#fde047}
.tr-node.can{border-color:#a78bfa;box-shadow:0 0 12px rgba(167,139,250,.45)}
.tr-node.own{border-color:#22c55e;background:linear-gradient(#0f2a1c,#0f172a)}
.tr-node.own span{color:#4ade80}
.tr-node.lock{opacity:.4}
.tr-link{width:2px;height:10px;margin:0 auto;background:#475569}
.tr-link-f{height:14px}
.tr-final{display:flex;justify-content:center;margin-bottom:10px}
.tr-node.fim{width:min(260px,100%);min-height:0;border-color:#f59e0b;background:radial-gradient(circle at 50% 0,#3b0764,#0f172a)}
@media (max-width:480px){.tr-node{min-height:132px;padding:6px 2px}.tr-node b{font-size:10px}.tr-node small{font-size:8.5px}}
