*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
:root{
  --cream:#F7F4EE;--cream2:#EFEBE3;--cream3:#E5E0D5;
  --ink:#1A1814;--ink2:#3D3A35;--ink3:#7A7570;
  --gold:#C8A84B;--gold2:#E8C46A;--gold-bg:rgba(200,168,75,.10);
  --green:#2D7D4A;--green-bg:rgba(45,125,74,.10);
  --red:#C0392B;--red-bg:rgba(192,57,43,.08);
  --orange:#D4713A;
  --border:rgba(26,24,20,.08);--border2:rgba(26,24,20,.14);
  --shadow:0 2px 16px rgba(26,24,20,.08);
  --r:16px;--r-sm:10px;--r-lg:20px;
}
html,body{min-height:100vh;}
body{font-family:'Plus Jakarta Sans',sans-serif;background:var(--cream2);color:var(--ink);-webkit-font-smoothing:antialiased;}
h1,h2,h3,.heading{font-family:'Bebas Neue',sans-serif;letter-spacing:1px;}
a{color:var(--gold);text-decoration:none;}

/* ── LAYOUT ─────────────────────── */
.page{min-height:100vh;display:flex;flex-direction:column;background:var(--cream2);}
.container{max-width:700px;margin:0 auto;padding:0 1rem;width:100%;}
.pad{padding:1.25rem;}

/* ── NAV ─────────────────────────── */
.nav{background:rgba(247,244,238,.94);backdrop-filter:blur(20px);
  padding:.85rem 1.5rem;display:flex;align-items:center;justify-content:space-between;
  border-bottom:1px solid var(--border);position:sticky;top:0;z-index:100;}
.nav-logo{font-family:'Bebas Neue',sans-serif;font-size:1.3rem;letter-spacing:2px;color:var(--ink);}
.nav-logo span{color:var(--gold);}
.nav-sub{font-size:10px;color:var(--ink3);letter-spacing:.5px;}
.nav-actions{display:flex;gap:7px;align-items:center;}

/* ── BUTTONS ─────────────────────── */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;
  padding:.6rem 1.1rem;border-radius:50px;border:none;cursor:pointer;
  font-size:.82rem;font-weight:600;transition:all .15s;font-family:'Plus Jakarta Sans',sans-serif;
  letter-spacing:.2px;}
.btn:disabled{opacity:.5;cursor:not-allowed;}
.btn-ink{background:var(--ink);color:var(--cream);}
.btn-ink:hover:not(:disabled){background:#2d2a26;}
.btn-gold{background:var(--gold);color:#fff;font-weight:700;}
.btn-gold:hover:not(:disabled){background:var(--gold2);}
.btn-outline{background:transparent;border:1.5px solid var(--border2);color:var(--ink2);}
.btn-outline:hover:not(:disabled){background:var(--cream2);}
.btn-green{background:var(--green);color:#fff;}
.btn-red{background:var(--red-bg);color:var(--red);border:1px solid rgba(192,57,43,.2);}
.btn-sm{padding:.4rem .85rem;font-size:.76rem;}
.btn-lg{padding:.8rem 1.75rem;font-size:.9rem;}
.btn-full{width:100%;}
.btn-google{background:#fff;color:#333;border:1.5px solid var(--border2);gap:.6rem;
  padding:.75rem 1.25rem;border-radius:.75rem;box-shadow:0 1px 4px rgba(0,0,0,.06);}

/* ── CARDS ─────────────────────────── */
.card{background:var(--cream);border:1px solid var(--border2);border-radius:var(--r);padding:1.1rem;}
.card-sm{background:var(--cream);border:1px solid var(--border);border-radius:var(--r-sm);padding:.85rem;}
.card-gold{background:var(--gold-bg);border-color:rgba(200,168,75,.3);}
.card-green{background:var(--green-bg);border-color:rgba(45,125,74,.25);}
.card-red{background:var(--red-bg);border-color:rgba(192,57,43,.18);}

/* ── FORMS ─────────────────────────── */
.inp{width:100%;background:var(--cream2);border:1.5px solid var(--border);
  border-radius:var(--r-sm);padding:.6rem .9rem;font-size:.88rem;color:var(--ink);
  font-family:'Plus Jakarta Sans',sans-serif;outline:none;transition:border-color .2s;}
.inp:focus{border-color:var(--gold);}
.inp::placeholder{color:var(--ink3);}
.inp-disabled{opacity:.5;background:var(--cream3);}
.inp-score{width:52px;height:52px;text-align:center;font-family:'Bebas Neue',sans-serif;
  font-size:1.5rem;padding:0;border-radius:.75rem;}
.inp-score-active{border-color:var(--gold)!important;background:var(--gold-bg)!important;color:var(--gold)!important;}
.inp-score::placeholder{color:var(--cream3);}
.form-group{margin-bottom:.85rem;}
.form-group label{display:block;font-size:.78rem;font-weight:600;color:var(--ink3);margin-bottom:.3rem;text-transform:uppercase;letter-spacing:.5px;}

/* ── ALERTS ─────────────────────────── */
.alert{padding:.65rem 1rem;border-radius:var(--r-sm);font-size:.82rem;margin-bottom:.85rem;line-height:1.5;}
.alert-error{background:var(--red-bg);border:1px solid rgba(192,57,43,.2);color:var(--red);}
.alert-success{background:var(--green-bg);border:1px solid rgba(45,125,74,.2);color:var(--green);}
.alert-info{background:var(--gold-bg);border:1px solid rgba(200,168,75,.25);color:var(--ink2);}
.alert-warn{background:rgba(212,113,58,.08);border:1px solid rgba(212,113,58,.2);color:var(--orange);}

/* ── CHIPS ─────────────────────────── */
.chip{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .6rem;border-radius:50px;font-size:.72rem;font-weight:700;}
.chip-g{background:var(--green-bg);color:var(--green);border:1px solid rgba(45,125,74,.2);}
.chip-r{background:var(--red-bg);color:var(--red);border:1px solid rgba(192,57,43,.18);}
.chip-o{background:rgba(212,113,58,.08);color:var(--orange);border:1px solid rgba(212,113,58,.2);}
.chip-gold{background:var(--gold-bg);color:var(--gold);border:1px solid rgba(200,168,75,.3);}
.chip-ink{background:rgba(26,24,20,.06);color:var(--ink2);border:1px solid var(--border2);}

/* ── TOGGLE ─────────────────────────── */
.tog{width:44px;height:26px;border-radius:13px;position:relative;cursor:pointer;flex-shrink:0;transition:background .2s;border:none;}
.tog-on{background:var(--green);}
.tog-off{background:var(--cream3);border:1px solid var(--border2);}
.tok{width:22px;height:22px;border-radius:50%;background:#fff;position:absolute;top:2px;
  box-shadow:0 1px 3px rgba(0,0,0,.2);transition:all .2s;}
.tog-on .tok{right:2px;left:auto;}
.tog-off .tok{left:2px;right:auto;}

/* ── PROGRESS ─────────────────────── */
.prog-bar{height:3px;background:var(--cream3);}
.prog-fill{height:100%;background:var(--gold2);transition:width .4s;}
.prog-bar-lg{height:6px;background:var(--cream3);border-radius:3px;}
.prog-fill-lg{height:100%;background:linear-gradient(90deg,var(--gold),var(--gold2));border-radius:3px;transition:width .4s;}

/* ── HERO ─────────────────────────── */
.hero{position:relative;overflow:hidden;min-height:420px;
  background:linear-gradient(160deg,#0d1117 0%,#1a1f2e 40%,#0f1923 100%);}
.hero-bg{position:absolute;inset:0;background:url('/bg.jpg') center/cover no-repeat;
  filter:blur(4px) brightness(.28) saturate(.7);transform:scale(1.05);}
.hero-content{position:relative;z-index:2;padding:2.5rem 1.5rem;
  display:flex;flex-direction:column;align-items:center;text-align:center;}
.banner-box{width:100%;max-width:440px;border-radius:var(--r);overflow:hidden;
  margin-bottom:1.25rem;box-shadow:0 16px 48px rgba(0,0,0,.45);}
.banner-inner{background:linear-gradient(160deg,#0d0d14,#1a1a2a);padding:1.4rem 2rem;text-align:center;}
.banner-title{font-family:'Bebas Neue',sans-serif;font-size:2.8rem;letter-spacing:4px;line-height:1;}
.banner-w{color:#fff;text-shadow:2px 2px 0 rgba(0,0,0,.5);}
.banner-y{color:#F6C90E;text-shadow:2px 2px 0 rgba(180,140,0,.5);}
.banner-flags{font-size:1.3rem;letter-spacing:6px;margin-top:6px;}
.banner-sub{font-size:9px;color:rgba(255,255,255,.35);letter-spacing:3px;margin-top:4px;text-transform:uppercase;}
.hero-date{color:rgba(255,255,255,.55);font-size:12px;margin-bottom:1rem;letter-spacing:.3px;}
.countdown{display:flex;gap:10px;margin-bottom:1.5rem;}
.cd{background:rgba(247,244,238,.1);border:1px solid rgba(247,244,238,.15);
  border-radius:.75rem;padding:.75rem 1rem;text-align:center;min-width:60px;backdrop-filter:blur(10px);}
.cd-n{font-family:'Bebas Neue',sans-serif;font-size:1.9rem;color:#F6C90E;line-height:1;}
.cd-l{font-size:9px;color:rgba(255,255,255,.4);text-transform:uppercase;letter-spacing:1px;margin-top:2px;}
.hero-ctas{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;}

/* ── MODAL ─────────────────────────── */
.modal-overlay{position:fixed;inset:0;background:rgba(26,24,20,.55);
  backdrop-filter:blur(8px);z-index:200;display:flex;align-items:center;
  justify-content:center;padding:1rem;}
.modal-box{background:var(--cream);border:1px solid var(--border2);
  border-radius:var(--r-lg);box-shadow:0 24px 64px rgba(26,24,20,.2);
  width:100%;max-width:520px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;}
.modal-head{padding:1rem 1.25rem;border-bottom:1px solid var(--border);
  display:flex;align-items:center;justify-content:space-between;flex-shrink:0;}
.modal-title{font-family:'Bebas Neue',sans-serif;font-size:1.1rem;letter-spacing:1.5px;color:var(--ink);}
.modal-body{padding:1.25rem;overflow-y:auto;flex:1;}
.modal-foot{padding:1rem 1.25rem;border-top:1px solid var(--border);
  display:flex;align-items:center;justify-content:space-between;gap:.75rem;
  background:var(--cream2);flex-shrink:0;}

/* ── GUIDE STEPS ─────────────────── */
.step-item{display:flex;gap:.85rem;padding:.85rem 0;border-bottom:1px solid var(--border);}
.step-item:last-child{border-bottom:none;}
.step-num{width:36px;height:36px;border-radius:50%;background:var(--ink);color:var(--cream);
  display:flex;align-items:center;justify-content:center;
  font-family:'Bebas Neue',sans-serif;font-size:1rem;flex-shrink:0;}
.step-num-gold{background:var(--gold);}
.step-body{flex:1;padding-top:2px;}
.step-title{font-size:12px;font-weight:700;color:var(--ink);margin-bottom:2px;}
.step-desc{font-size:11px;color:var(--ink3);line-height:1.65;}
.pts-table{width:100%;border-collapse:collapse;margin-top:.5rem;font-size:11px;}
.pts-table th{text-align:left;padding:4px 7px;background:var(--cream2);
  color:var(--ink3);font-weight:700;text-transform:uppercase;font-size:9px;letter-spacing:.5px;}
.pts-table td{padding:4px 7px;border-bottom:1px solid var(--border);color:var(--ink2);}
.pts-table td:last-child{text-align:right;font-weight:700;color:var(--gold);}

/* ── AVATAR SELECTOR ─────────────── */
.av-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem;}
.av-card{background:var(--cream);border:1.5px solid var(--border);border-radius:var(--r);
  padding:.85rem .6rem;text-align:center;cursor:pointer;transition:all .15s;}
.av-card:hover{border-color:var(--border2);}
.av-card-active{border-color:var(--gold)!important;background:var(--gold-bg)!important;}
.av-card-add{border-style:dashed;cursor:pointer;}
.av-circle{width:52px;height:52px;border-radius:50%;margin:0 auto .5rem;
  display:flex;align-items:center;justify-content:center;font-weight:700;
  color:#fff;position:relative;font-size:13px;}
.av-status-dot{position:absolute;bottom:-1px;right:-1px;width:14px;height:14px;
  border-radius:50%;border:2px solid var(--cream);font-size:7px;
  display:flex;align-items:center;justify-content:center;}
.av-nick{font-size:11px;font-weight:700;color:var(--ink);}
.av-pts{font-size:10px;color:var(--ink3);margin-top:1px;}
.av-add-icon{width:52px;height:52px;border-radius:50%;background:var(--cream2);
  border:2px dashed var(--border2);margin:0 auto .5rem;
  display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:var(--ink3);}

/* ── DASHBOARD ─────────────────────── */
.dash-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem;margin-bottom:1rem;}
.stat-card{background:var(--cream);border:1px solid var(--border);border-radius:var(--r);padding:.85rem;text-align:center;}
.stat-n{font-family:'Bebas Neue',sans-serif;font-size:1.9rem;color:var(--ink);line-height:1;}
.stat-n-gold{color:var(--gold);}
.stat-l{font-size:9px;color:var(--ink3);text-transform:uppercase;letter-spacing:.5px;margin-top:2px;}
.action-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;}
.action-card{background:var(--cream);border:1.5px solid var(--border);border-radius:16px;padding:1.25rem 1rem;cursor:pointer;transition:all .2s;display:flex;flex-direction:column;align-items:flex-start;gap:.3rem;position:relative;overflow:hidden;}
.action-card::after{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(200,168,75,.06),transparent);opacity:0;transition:opacity .2s;}
.action-card:hover{border-color:rgba(200,168,75,.5);transform:translateY(-3px);box-shadow:0 8px 24px rgba(26,24,20,.1);}
.action-card:hover::after{opacity:1;}
.action-card:active{transform:translateY(-1px);}
.action-card-dark{background:var(--ink);border-color:var(--ink);}
.action-card-dark:hover{border-color:var(--gold);box-shadow:0 8px 24px rgba(26,24,20,.25);}
.ac-icon{width:44px;height:44px;border-radius:12px;background:rgba(200,168,75,.1);border:1px solid rgba(200,168,75,.2);display:flex;align-items:center;justify-content:center;margin-bottom:.5rem;flex-shrink:0;}
.ac-icon svg{width:22px;height:22px;}
.action-card-dark .ac-icon{background:rgba(200,168,75,.15);border-color:rgba(200,168,75,.3);}
.ac-label{font-size:14px;font-weight:700;color:var(--ink);line-height:1.2;}
.ac-label-w{color:var(--cream);}
.ac-desc{font-size:11px;color:var(--ink3);margin-top:3px;line-height:1.4;}
.ac-desc-w{color:rgba(247,244,238,.55);}
.ac-badge{display:inline-flex;align-items:center;gap:4px;background:rgba(200,168,75,.12);border:1px solid rgba(200,168,75,.25);border-radius:20px;padding:2px 8px;font-size:9px;font-weight:700;color:var(--gold);margin-top:4px;text-transform:uppercase;letter-spacing:.4px;}

/* ── PELÉ CHAT ─────────────────────── */
.chat-topbar{background:var(--cream);border-bottom:1px solid var(--border);
  padding:.8rem 1.25rem;display:flex;align-items:center;gap:.75rem;}
.pele-av{width:42px;height:42px;border-radius:50%;
  background:linear-gradient(135deg,#1A5C38,#2E8B57);
  display:flex;align-items:center;justify-content:center;font-size:1.2rem;
  flex-shrink:0;border:2px solid rgba(26,92,56,.2);position:relative;}
.pele-dot{width:10px;height:10px;background:#34C759;border:2px solid var(--cream);
  border-radius:50%;position:absolute;bottom:0;right:0;}
.pele-name{font-weight:800;font-size:13px;color:var(--ink);}
.pele-sub{font-size:10px;color:var(--green);font-weight:600;}
.chat-body{padding:1rem 1.25rem;display:flex;flex-direction:column;gap:.85rem;}
.row-ai{display:flex;gap:.6rem;align-items:flex-end;max-width:90%;}
.row-user{display:flex;gap:.6rem;align-items:flex-end;flex-direction:row-reverse;align-self:flex-end;max-width:80%;}
.pm{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#1A5C38,#2E8B57);
  overflow:hidden;flex-shrink:0;border:2px solid rgba(200,168,75,.25);}
.bbl{padding:.65rem .9rem;border-radius:16px;font-size:12px;line-height:1.6;}
.bbl-ai{background:var(--cream);border:1px solid var(--border2);border-bottom-left-radius:4px;color:var(--ink2);}
.bbl-user{background:var(--ink);color:var(--cream);border-bottom-right-radius:4px;}
.bbl-gold{background:var(--gold-bg);border:1.5px solid rgba(200,168,75,.3);border-bottom-left-radius:4px;color:var(--ink);}
.bbl-ok{background:var(--green-bg);border:1.5px solid rgba(45,125,74,.25);border-bottom-left-radius:4px;color:var(--green);}
.bbl-wide{max-width:100%;width:100%;}

/* Stats grid in chat */
.stats-card{background:var(--cream);border:1.5px solid var(--border2);border-radius:var(--r);overflow:hidden;}
.sc-head{background:var(--ink);padding:.7rem 1rem;display:flex;align-items:center;justify-content:space-between;}
.sc-phase{font-size:9px;color:rgba(247,244,238,.5);text-transform:uppercase;letter-spacing:1px;}
.sc-num{font-family:'Bebas Neue',sans-serif;font-size:.9rem;color:var(--gold);}
.sc-body{padding:.85rem 1rem;}
.sc-teams{display:flex;align-items:center;gap:.6rem;margin-bottom:.75rem;}
.sct{flex:1;text-align:center;}
.sct-flag{font-size:1.8rem;display:block;margin-bottom:3px;}
.sct-name{font-size:11px;font-weight:700;color:var(--ink);}
.sct-rank{font-size:9px;color:var(--ink3);margin-top:1px;}
.sct-vs{font-family:'Bebas Neue',sans-serif;font-size:1.3rem;color:var(--cream3);}
.sc-meta{font-size:10px;color:var(--ink3);text-align:center;margin-bottom:.75rem;
  padding-bottom:.75rem;border-bottom:1px solid var(--border);}
.sr{display:flex;justify-content:space-between;padding:3px 7px;border-radius:5px;font-size:11px;}
.sr:nth-child(odd){background:var(--cream2);}
.sr-k{color:var(--ink3);}
.sr-v{color:var(--ink);font-weight:600;}
.sr-vg{color:var(--gold);font-weight:700;}
.pele-rec{background:var(--gold-bg);border:1px solid rgba(200,168,75,.25);
  border-radius:.6rem;padding:.55rem .75rem;font-size:11px;color:var(--ink2);line-height:1.5;margin-top:.6rem;}
.rec-lbl{font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:1px;color:var(--gold);margin-bottom:3px;}

/* Score input */
.score-input-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin:.6rem 0;}
.si-team{flex:1;text-align:center;font-size:11px;font-weight:700;color:var(--ink);}
.si-inputs{display:flex;align-items:center;gap:.5rem;}
.si-dash{font-family:'Bebas Neue',sans-serif;font-size:1.1rem;color:var(--cream3);}

/* Confirm card */
.confirm-card{background:var(--cream);border:1.5px solid var(--border2);border-radius:var(--r);overflow:hidden;}
.cc-head{background:var(--ink);padding:.7rem 1rem;display:flex;align-items:center;justify-content:space-between;}
.cc-label{font-size:9px;color:rgba(247,244,238,.5);text-transform:uppercase;letter-spacing:1px;}
.cc-deadline{font-size:10px;color:var(--gold);font-weight:700;}
.cc-body{padding:.85rem 1rem;}
.cc-teams{display:flex;align-items:center;justify-content:space-between;gap:.6rem;margin-bottom:.75rem;}
.cct{text-align:center;flex:1;}
.cct-flag{font-size:1.7rem;display:block;margin-bottom:3px;}
.cct-name{font-size:11px;font-weight:700;color:var(--ink);}
.cc-score{display:flex;align-items:center;gap:.5rem;}
.cc-sc{width:48px;height:48px;border-radius:.75rem;display:flex;align-items:center;justify-content:center;font-family:'Bebas Neue',sans-serif;font-size:1.4rem;}
.cc-sc-a{background:var(--cream2);border:1.5px solid var(--border2);color:var(--ink);}
.cc-sc-b{background:var(--green-bg);border:1.5px solid rgba(45,125,74,.3);color:var(--green);}
.cc-agree{font-size:10px;color:var(--ink3);margin-bottom:.6rem;padding:5px 7px;background:var(--green-bg);border-radius:6px;}

/* Extra points */
.extra-block{background:var(--cream2);border:1px solid var(--border);border-radius:var(--r);padding:.85rem;}
.extra-hdr{display:flex;align-items:center;justify-content:space-between;margin-bottom:.65rem;}
.extra-title-c{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:1.5px;color:var(--ink2);}
.extra-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.45rem;margin-bottom:.6rem;}
.ef{background:var(--cream);border:1px solid var(--border);border-radius:.6rem;padding:.5rem .6rem;}
.ef-icon{font-size:.9rem;}
.ef-label{font-size:9px;color:var(--ink3);margin:2px 0 3px;line-height:1.3;}
.ef-inp{width:100%;background:transparent;border:none;font-size:12px;font-weight:700;color:var(--ink);font-family:'Plus Jakarta Sans',sans-serif;outline:none;}
.ef-full{grid-column:span 3;}
.ef-inp-txt{font-size:11px;font-weight:600;}

/* Group selector */
.group-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.45rem;}
.grp-btn{background:var(--cream);border:1.5px solid var(--border);border-radius:.6rem;padding:.6rem .3rem;text-align:center;cursor:pointer;transition:all .15s;}
.grp-btn:hover{border-color:var(--border2);}
.grp-btn-on{background:var(--ink);border-color:var(--ink);}
.grp-btn-done{background:var(--green-bg);border-color:rgba(45,125,74,.3);}
.grp-lbl{font-family:'Bebas Neue',sans-serif;font-size:1rem;color:var(--ink);}
.grp-lbl-w{color:var(--cream);}
.grp-lbl-g{color:var(--green);}
.grp-flags{font-size:.72rem;margin-top:2px;line-height:1.3;}
.grp-count{font-size:9px;color:var(--ink3);margin-top:1px;}

/* Quick replies */
.qr-row{display:flex;gap:.45rem;flex-wrap:wrap;padding:.5rem 1.25rem;}
.qr{padding:.5rem .9rem;background:var(--cream);border:1.5px solid var(--border2);
  border-radius:50px;font-size:11px;font-weight:600;color:var(--ink2);cursor:pointer;white-space:nowrap;}
.qr-gold{border-color:rgba(200,168,75,.5);color:var(--gold);background:var(--gold-bg);}
.qr-green{border-color:rgba(45,125,74,.3);color:var(--green);background:var(--green-bg);}

/* Chat nav bar */
.chat-nav{display:flex;gap:.6rem;padding:.75rem 1.25rem;
  border-top:1px solid var(--border);background:var(--cream);}
.chat-inp{flex:1;background:var(--cream2);border:1.5px solid var(--border);
  border-radius:50px;padding:.6rem 1rem;font-size:12px;color:var(--ink);
  font-family:'Plus Jakarta Sans',sans-serif;outline:none;}
.chat-inp:focus{border-color:var(--gold);}
.send-btn{width:38px;height:38px;background:var(--ink);border:none;border-radius:50%;
  display:flex;align-items:center;justify-content:center;font-size:.95rem;cursor:pointer;flex-shrink:0;}

/* Tablero */
.phase-header{font-family:'Bebas Neue',sans-serif;font-size:1.2rem;
  color:var(--ink);margin:1.25rem 0 .6rem;padding-bottom:.25rem;
  border-bottom:1px solid var(--border);letter-spacing:1px;}
.match-row{background:var(--cream);border:1px solid var(--border);
  border-radius:var(--r-sm);padding:.75rem .85rem;margin-bottom:.45rem;}
.match-row-done{background:var(--green-bg);border-color:rgba(45,125,74,.2);}
.match-row-locked{background:var(--red-bg);border-color:rgba(192,57,43,.15);opacity:.8;}
.match-teams{display:flex;align-items:center;gap:.5rem;font-size:12px;font-weight:600;color:var(--ink);}
.match-score{font-family:'Bebas Neue',sans-serif;font-size:1rem;margin:0 .5rem;}
.match-meta{font-size:10px;color:var(--ink3);margin-top:3px;}
.match-pred{font-size:11px;color:var(--ink3);margin-top:.4rem;display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;}
.pts-badge{padding:2px 7px;border-radius:50px;font-size:9px;font-weight:700;}
.pts-exact{background:var(--green-bg);color:var(--green);}
.pts-win{background:rgba(29,78,216,.08);color:#1d4ed8;}
.pts-miss{background:rgba(26,24,20,.05);color:var(--ink3);}
.pts-extra{background:var(--gold-bg);color:var(--gold);}

/* Ranking */
.podium{display:flex;align-items:flex-end;justify-content:center;gap:.6rem;margin-bottom:1.25rem;height:180px;}
.pod-col{display:flex;flex-direction:column;align-items:center;flex:1;}
.pod-face{margin-bottom:3px;}
.pod-av{border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;color:#fff;margin-bottom:5px;}
.pod-bar{width:100%;border-radius:.75rem .75rem 0 0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:6px 4px;}
.pod-nick{font-size:10px;font-weight:700;color:var(--ink);text-align:center;line-height:1.2;}
.pod-pts{font-family:'Bebas Neue',sans-serif;color:var(--gold);}
.rank-list{background:var(--cream);border:1px solid var(--border);border-radius:var(--r);overflow:hidden;}
.rank-row{display:flex;align-items:center;gap:.65rem;padding:.65rem .85rem;border-bottom:1px solid var(--border);}
.rank-row:last-child{border-bottom:none;}
.rk-pos{font-size:12px;font-weight:700;color:var(--ink3);width:22px;text-align:center;}
.rk-face{font-size:1.2rem;flex-shrink:0;}
.rk-av{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#fff;flex-shrink:0;}
.rk-name{flex:1;}
.rk-nick{font-size:12px;font-weight:600;color:var(--ink);}
.rk-sub{font-size:9px;color:var(--ink3);}
.rk-pts{font-family:'Bebas Neue',sans-serif;font-size:1.1rem;color:var(--ink);text-align:right;}
.rk-trend{font-size:10px;font-weight:700;text-align:right;}
.trend-up{color:var(--green);}
.trend-dn{color:var(--red);}

/* Admin */
.admin-tabs{display:flex;gap:.45rem;flex-wrap:wrap;margin-bottom:1rem;}
.at{padding:.5rem .9rem;border-radius:50px;font-size:11px;font-weight:600;
  border:1.5px solid var(--border2);background:transparent;color:var(--ink3);cursor:pointer;}
.at-on{background:var(--ink);color:var(--cream);border-color:var(--ink);}
.user-row{background:var(--cream);border:1px solid var(--border);border-radius:var(--r-sm);
  padding:.75rem .85rem;margin-bottom:.5rem;display:flex;align-items:center;gap:.65rem;flex-wrap:wrap;}
.ua-av{width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#fff;flex-shrink:0;}
.ua-info{flex:1;min-width:120px;}
.ua-name{font-size:13px;font-weight:700;color:var(--ink);}
.ua-email{font-size:10px;color:var(--ink3);}
.ua-avatars{display:flex;gap:.3rem;flex-wrap:wrap;margin-top:3px;}
.phase-lock-row{display:flex;align-items:center;gap:.65rem;padding:.75rem 0;border-bottom:1px solid var(--border);}
.phase-lock-row:last-child{border-bottom:none;}
.pl-info{flex:1;}
.pl-name{font-size:13px;font-weight:700;color:var(--ink);}
.pl-meta{font-size:10px;color:var(--ink3);margin-top:1px;}

/* Special predictions */
.spec-row{display:flex;align-items:center;gap:.75rem;padding:.75rem 0;border-bottom:1px solid var(--border);}
.spec-row:last-child{border-bottom:none;}
.spec-icon{font-size:1.4rem;width:30px;text-align:center;flex-shrink:0;}
.spec-info{flex:1;}
.spec-label{font-size:12px;font-weight:700;color:var(--ink);}
.spec-sub{font-size:10px;color:var(--ink3);}
.spec-pts{font-family:'Bebas Neue',sans-serif;font-size:1.2rem;color:var(--gold);}

/* Phase bar */
.phase-bar{background:var(--cream2);border-bottom:1px solid var(--border);
  padding:5px 1.25rem;display:flex;gap:.4rem;overflow-x:auto;}
.ph{padding:3px .75rem;border-radius:50px;font-size:10px;font-weight:600;
  border:1.5px solid var(--border2);color:var(--ink3);white-space:nowrap;flex-shrink:0;}
.ph-on{background:var(--ink);color:var(--cream);border-color:var(--ink);}
.ph-done{background:var(--green-bg);color:var(--green);border-color:rgba(45,125,74,.3);}

/* Misc */
.divider{height:1px;background:var(--border);margin:.85rem 0;}
.text-gold{color:var(--gold);}
.text-green{color:var(--green);}
.text-red{color:var(--red);}
.text-muted{color:var(--ink3);}
.text-sm{font-size:.82rem;}
.text-xs{font-size:.72rem;}
.text-center{text-align:center;}
.font-bold{font-weight:700;}
.mt1{margin-top:.5rem;}.mt2{margin-top:1rem;}.mt3{margin-top:1.5rem;}
.mb1{margin-bottom:.5rem;}.mb2{margin-bottom:1rem;}
.flex{display:flex;}.flex-col{flex-direction:column;}
.items-center{align-items:center;}.justify-between{justify-content:space-between;}
.gap1{gap:.5rem;}.gap2{gap:1rem;}
.loading{display:flex;align-items:center;justify-content:center;padding:3rem;font-size:2rem;}
.autosave{display:flex;align-items:center;gap:.3rem;font-size:9px;color:var(--green);font-weight:600;}
.dot-g{width:5px;height:5px;border-radius:50%;background:var(--green);}

/* Check rows */
.check-row{display:flex;align-items:flex-start;gap:.5rem;font-size:12px;color:var(--ink3);line-height:1.5;margin:.5rem 0;}
.chk{width:16px;height:16px;border-radius:4px;border:1.5px solid var(--border2);background:var(--cream2);flex-shrink:0;margin-top:1px;cursor:pointer;}
.chk-on{background:var(--gold);border-color:var(--gold);display:flex;align-items:center;justify-content:center;color:#fff;font-size:10px;}

/* Prize cards */
.prize-row{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin-bottom:1rem;}
.prize-card{border:1px solid var(--border);border-radius:var(--r);padding:.85rem;text-align:center;}
.p-card-g{background:var(--gold-bg);border-color:rgba(200,168,75,.3);}
.p-card-n{background:var(--cream);}
.p-icon{font-size:1.3rem;margin-bottom:3px;}
.p-label{font-size:9px;text-transform:uppercase;letter-spacing:1px;color:var(--ink3);margin-bottom:3px;}
.p-amt{font-family:'Bebas Neue',sans-serif;font-size:1.7rem;color:var(--gold);line-height:1;}
.p-pct{font-size:9px;color:var(--ink3);}

/* G-icon (Google) */
.g-dot{width:16px;height:16px;border-radius:50%;
  background:conic-gradient(#4285F4 90deg,#EA4335 90deg 180deg,#FBBC05 180deg 270deg,#34A853 270deg);flex-shrink:0;}

/* ── MOBILE ─────────────────────── */
.btn-row{display:flex;gap:6px;}

@media(max-width:600px){
  /* Nav */
  .nav{padding:.6rem .85rem;}
  .nav-logo{font-size:1rem;letter-spacing:1px;}
  .nav-sub{display:none;}
  .nav-actions{gap:4px;}
  .nav-actions .btn{padding:.32rem .6rem;font-size:.72rem;}
  /* Hide text labels on very small nav buttons — keep icons */
  .nav-actions .btn-outline{padding:.32rem .55rem;}

  /* Dashboard */
  .dash-stats{grid-template-columns:repeat(3,1fr);gap:.4rem;}
  .stat-card{padding:.6rem .4rem;}
  .stat-n{font-size:1.5rem;}
  .action-card{padding:1rem .85rem;border-radius:14px;}
  .ac-icon{width:38px;height:38px;border-radius:10px;}
  .ac-icon svg{width:19px;height:19px;}
  .ac-label{font-size:12px;}
  .ac-desc{font-size:10px;}

  /* Score inputs */
  .inp-score{width:44px;height:44px;font-size:1.25rem;}

  /* Match card buttons — stack vertically */
  .btn-row{flex-direction:column;}

  /* Chat */
  .chat-topbar{padding:.6rem .85rem;}
  .pele-av{width:36px;height:36px;}

  /* Modal */
  .modal-box{max-height:95vh;}
  .modal-body{padding:1rem;}

  /* Cards */
  .card{padding:.85rem;}
}

@media(max-width:480px){
  .av-grid{grid-template-columns:repeat(2,1fr);}
  .extra-grid{grid-template-columns:1fr 1fr;}
  .ef-full{grid-column:span 2;}
  .group-grid{grid-template-columns:repeat(3,1fr);}
  .dash-stats{grid-template-columns:repeat(3,1fr);}
}

/* Pelé IA animation keyframes */
@keyframes pele-scan{0%{transform:translateX(-100%)}100%{transform:translateX(100%)}}
@keyframes pele-pulse{0%,100%{box-shadow:0 0 0 0 rgba(246,201,14,.3)}50%{box-shadow:0 0 0 6px rgba(246,201,14,0)}}
@keyframes pele-blink{0%,100%{opacity:1}50%{opacity:.2}}

/* Bounce animation */
@keyframes bounce{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
[class*="bounce"]{animation:bounce .9s infinite}
.bounce-1{animation-delay:.15s!important}
.bounce-2{animation-delay:.3s!important}
