/* ═══════════════════════════════════════════════════════
   components.css — Reusable UI: buttons, cards, forms,
   badges, toasts, and all screen-specific styles
═══════════════════════════════════════════════════════ */

/* HOME */
.home-heading{padding:4px 20px 16px}
.home-greeting{font-size:32px;font-weight:800;color:var(--text);line-height:1.1;margin-bottom:2px}
.home-explore{font-size:16px;font-weight:400;color:#e8f0fe;letter-spacing:-.027em}
.season-row{display:flex;align-items:center;gap:7px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--text3);margin-bottom:8px}
.season-dot{width:6px;height:6px;border-radius:50%;background:var(--green);animation:pulse 2s infinite;flex-shrink:0}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.4}}
.home-title{font-size:22px;font-weight:800;letter-spacing:-.02em;color:var(--text);line-height:1.15}
.home-title span{color:var(--green)}
.sec-ttl-lg{font-size:20px!important;font-weight:800!important}

/* DATE CHIPS */
.date-section{padding:0 20px 18px}
.date-scroll{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.date-scroll::-webkit-scrollbar{display:none}
.date-chip{flex-shrink:0;display:flex;flex-direction:column;align-items:center;gap:1px;padding:10px 14px;border-radius:12px;background:rgba(255,255,255,.04);border:1px solid var(--border);cursor:pointer;transition:all .2s}
.date-chip.active{background:var(--green2);border-color:rgba(167,238,67,.35)}
.date-chip.next-month{background:rgba(255,255,255,.025)}
.day-num{font-size:16px;font-weight:800;color:var(--text2)}
.date-chip.active .day-num{color:var(--green)}
.day-name{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text3)}
.date-chip.active .day-name{color:rgba(167,238,67,.7)}
.match-dot{width:5px;height:5px;border-radius:50%;background:var(--green);margin-top:3px}

/* GAME CARD */
.games-sec{padding:0 20px}
.no-match-msg{text-align:center;padding:18px 0 6px;color:var(--text3);font-size:13px;font-weight:600}
.home-fallback-label{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:var(--green);margin:14px 0 10px}
.game-card{background:var(--bg2);border:1px solid var(--border);border-radius:14px;padding:14px;margin-bottom:10px;cursor:pointer;transition:border-color .2s}
.game-card:active{border-color:rgba(167,238,67,.3)}
.game-card.featured{background:rgba(37,211,102,.07);border-color:var(--green)}
.game-card-top{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:10px;gap:10px}
.game-name{font-size:16px;font-weight:800;color:var(--text);margin-bottom:4px}
.game-card-top>div:first-child{min-width:0}
.game-tags{display:flex;align-items:center;gap:6px;flex-wrap:nowrap;white-space:nowrap;min-width:0}
.game-tipo{flex:0 0 auto;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--green);background:var(--green2);padding:3px 8px;border-radius:6px}
.teams-published-badge{flex:0 0 auto;display:inline-flex;align-items:center;padding:3px 6px;border-radius:6px;background:rgba(167,238,67,.12);color:#a7ee43;font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;line-height:1.25;white-space:nowrap}
.card-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}
.share-btn{width:34px;height:34px;border-radius:8px;border:1px solid var(--border);background:rgba(255,255,255,.06);display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text2);transition:background .2s}
.share-btn:active{background:rgba(255,255,255,.14)}
.join-pill{background:var(--green);color:var(--bg);border:none;border-radius:8px;padding:8px 16px;font-family:'Plus Jakarta Sans',sans-serif;font-size:12px;font-weight:800;cursor:pointer;flex-shrink:0}
.game-meta{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:10px}
.meta-item{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--text2);font-weight:500}
.spots-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:5px}
.spots-lbl{font-size:10px;color:var(--text3);font-weight:600}
.spots-num{font-size:11px;font-weight:800;color:var(--text2)}
.spots-num b{color:var(--green)}
.mini-bar{height:4px;background:rgba(255,255,255,.07);border-radius:2px;overflow:hidden}
.mini-bar-fill{height:100%;background:var(--green);border-radius:2px;transition:width .5s}
.game-price{font-size:14px;font-weight:800;color:var(--text);margin-top:10px}
.game-price span{color:var(--text3);font-weight:500;font-size:11px}

/* RESULTADO HOME CARD */
.resultado-sec{padding:20px 20px 0}
.resultado-card{background:var(--bg2);border:1px solid var(--border);border-radius:14px;overflow:hidden;cursor:pointer}
.res-field{background:linear-gradient(135deg,#1a3a22 0%,#1e4a2a 60%,#163320 100%);padding:16px 16px 14px;position:relative}
.res-match-lbl{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:rgba(255,255,255,.45);margin-bottom:8px}
.res-score-row{display:flex;align-items:center;justify-content:center;gap:16px}
.res-team{text-align:center}
.res-team-name{font-size:11px;font-weight:700;color:rgba(255,255,255,.55);margin-bottom:2px}
.res-score{font-size:34px;font-weight:800;color:#fff;line-height:1}
.res-score.win{color:var(--green)}
.res-vs{font-size:16px;font-weight:800;color:rgba(255,255,255,.2)}
.res-date-chip{position:absolute;top:12px;right:12px;background:rgba(0,0,0,.3);border-radius:6px;font-size:10px;font-weight:700;color:rgba(255,255,255,.55);padding:3px 8px}
.res-bottom{padding:11px 14px;display:flex;align-items:center;justify-content:space-between}
.res-mvp{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--text2);font-weight:600}
.mvp-icon{width:16px;height:16px;object-fit:contain;display:inline-block;vertical-align:-3px;filter:drop-shadow(0 0 6px rgba(251,191,36,.32))}
.mvp-badge{display:inline-flex;align-items:center;gap:4px;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;background:rgba(255,193,7,.12);color:#ffc107;padding:2px 7px;border-radius:5px}
.mvp-badge .mvp-icon{width:13px;height:13px;vertical-align:0}
.res-link{font-size:10px;color:var(--text3);font-weight:600}

/* GOLEADORES */
.goles-sec{padding:20px 20px 0}
.scorer-row{display:flex;align-items:center;padding:14px 0;border-bottom:1px solid var(--border);gap:12px}
.scorer-row:last-child{border-bottom:none}
.srank{width:22px;height:22px;border-radius:50%;background:rgba(255,255,255,.07);display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:800;color:var(--text3);flex-shrink:0}
.srank.gold{background:rgba(255,193,7,.15);color:#ffc107}
.srank.goat{background:none;border-radius:0;width:auto;font-size:7px;letter-spacing:.05em;color:#ffc107}
.savatar{width:32px;height:32px;border-radius:50%;background:var(--bg3);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;color:var(--text2);flex-shrink:0;overflow:hidden;border:1px solid rgba(255,255,255,.08)}
.savatar img{width:100%;height:100%;object-fit:cover;display:block}
.sinfo{flex:1}
.sname{font-size:13px;font-weight:700;color:var(--text)}
.steam{font-size:10px;color:var(--text3);margin-top:1px}
.sgoals .num{font-size:20px;font-weight:800;color:var(--green);line-height:1}
.sgoals .lbl{font-size:10px;color:var(--text3);text-transform:uppercase;letter-spacing:.06em}

/* WA BANNER */
.wa-banner{margin:20px 20px 0;background:rgba(37,211,102,.07);border:1px solid rgba(37,211,102,.15);border-radius:14px;padding:14px 16px;display:flex;align-items:center;justify-content:space-between;cursor:pointer;text-decoration:none}
.wa-banner-l{display:flex;align-items:center;gap:10px}
.wa-ttl{font-size:13px;font-weight:700;color:var(--text2)}
.wa-sub{font-size:11px;color:var(--text3);margin-top:2px}

/* INSCRIBIRSE */
.ins-header-card{background:var(--bg2);border-radius:0 0 16px 16px;padding-bottom:20px}
.ins-topbar{display:flex;align-items:center;justify-content:space-between;padding:16px 20px}
.ins-share-btn{background:none;border:none;color:rgba(255,255,255,.5);cursor:pointer;padding:4px;display:flex;align-items:center}
.reg-status-pill{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:20px;margin:0 20px 10px;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.reg-status-pill.reg-status-ok{background:rgba(148,163,184,.08);border:1px solid rgba(148,163,184,.25);color:#94a3b8}
.reg-status-pill.reg-status-full{background:rgba(239,68,68,.2);border:1px solid #ef4444;color:#ef4444}
.reg-status-dot{width:6px;height:6px;border-radius:3px;flex-shrink:0;background:currentColor}
.ins-name{font-size:20px;font-weight:800;color:var(--green);padding:0 20px;margin-bottom:10px}
.ins-chips{display:flex;flex-wrap:wrap;gap:5px;padding:0 20px;margin-bottom:16px}
.ins-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06);border-radius:20px;font-size:11px;font-weight:500;color:rgba(255,255,255,.6)}
.ins-cap-wrap{padding:0 20px}
.ins-spots-card{background:rgba(255,255,255,.04);border:1px solid rgba(167,238,67,.29);border-radius:12px;padding:14px 16px}
.ins-srow{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.ins-slbl{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:rgba(255,255,255,.45)}
.ins-scnt{font-size:12px;font-weight:700;color:var(--green)}
.ins-sbar{height:4px;background:rgba(255,255,255,.08);border-radius:10px;overflow:hidden}
.ins-sfill{height:100%;background:var(--green);border-radius:10px;transition:width .5s}
.reg-spot-cols{display:flex;gap:10px;padding:16px 20px 0}
.reg-spot-col{flex:1;background:rgba(255,255,255,.06);border-radius:10px;padding:13px}
.reg-spot-hdr{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:10px}
.reg-spot-lbl{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:rgba(255,255,255,.4)}
.reg-spot-cnt{font-size:13px;font-weight:800;color:var(--green)}
.plist-card{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06);border-radius:12px;margin:12px 20px 0;overflow:hidden}
.plist-lbl{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--text3);padding:12px 14px 10px}
.plist-card .plist-lbl{border-bottom:1px solid rgba(255,255,255,.04)}
.plist{}
.pitem{display:flex;align-items:center;padding:10px 14px;border-bottom:1px solid rgba(255,255,255,.04)}
.pitem.profile-clickable{cursor:pointer}
.pitem.profile-clickable:active{background:rgba(255,255,255,.04)}
.pitem:last-child{border-bottom:none}
.pnum{width:26px;height:26px;border-radius:7px;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;margin-right:12px;flex-shrink:0;background:rgba(167,238,67,.12);color:var(--green)}
.pnum.empty{background:rgba(255,255,255,.05);color:var(--text3)}
.pavatar{width:28px;height:28px;border-radius:50%;margin-right:12px;flex-shrink:0;overflow:hidden;background:rgba(167,238,67,.12);border:1px solid rgba(255,255,255,.12);display:flex;align-items:center;justify-content:center;color:#fff;font-size:10px;font-weight:900}
.pavatar img{width:100%;height:100%;object-fit:cover;display:block}
.pavatar.empty{background:rgba(167,238,67,.12);color:#a7ee43}
.pname{font-size:13px;font-weight:600;color:rgba(255,255,255,.85);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pname.muted{color:rgba(255,255,255,.25);font-weight:500}
.ptimestamp{font-size:10px;color:rgba(255,255,255,.20);margin-top:1px}
.pmeta{font-size:10px;color:var(--text3);margin-top:2px;flex-shrink:0}
.pbadge{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;padding:3px 8px;border-radius:6px;flex-shrink:0}
.pbadge.ok{background:rgba(167,238,67,.12);color:var(--green)}
.pbadge.pend{background:rgba(251,191,36,.12);color:#fbbf24}
.reg-banca-sub{font-size:11px;font-weight:600;color:rgba(255,255,255,.35);padding:8px 20px 0;text-align:center}
.banca-section{margin:12px 20px 0}
.banca-hdr{display:flex;align-items:center;gap:8px;margin-bottom:10px}
.banca-ttl{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:rgba(255,255,255,.45)}
.banca-cnt-badge{font-size:10px;font-weight:800;background:rgba(255,255,255,.08);color:rgba(255,255,255,.5);padding:2px 8px;border-radius:20px}
.banca-info{font-size:11px;color:rgba(255,255,255,.35);line-height:1.55;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06);border-radius:10px;padding:12px 14px;margin-bottom:10px}
.banca-section .plist{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06);border-radius:12px;overflow:hidden}

.published-teams-section{padding:12px 20px 0}
.teams-confirmed-pill{width:max-content;max-width:100%;margin:0 auto 12px;padding:3px 8px;border-radius:6px;background:rgba(167,238,67,.12);color:#a7ee43;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;white-space:nowrap}
.published-teams-stack{display:grid;gap:10px}
.published-team-card,.published-bench-card{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06);border-radius:12px;overflow:hidden}
.published-team-card.team-verde{background:rgba(167,238,67,.035);border-color:rgba(167,238,67,.16)}
.published-team-head,.published-bench-head{display:flex;align-items:center;gap:8px;padding:12px 14px;border-bottom:1px solid rgba(255,255,255,.04)}
.published-team-head-count{margin-left:auto;color:rgba(255,255,255,.36);font-size:10px;font-weight:800;font-variant-numeric:tabular-nums}
.published-team-title,.published-bench-title{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:rgba(255,255,255,.5)}
.published-team-card.team-verde .published-team-title{color:#a7ee43}
.published-team-list,.published-bench-list{display:grid;gap:6px;padding:8px}
.published-player-row,.published-bench-row{width:100%;display:flex;align-items:center;gap:10px;min-width:0;border:1px solid rgba(255,255,255,.06);border-radius:10px;background:rgba(255,255,255,.04);padding:9px 10px;color:inherit;font-family:inherit;text-align:left;cursor:pointer}
.published-team-card.team-verde .published-player-row{background:rgba(167,238,67,.045);border-color:rgba(167,238,67,.16)}
.published-player-row:active,.published-bench-row:active{background:rgba(167,238,67,.08);border-color:rgba(167,238,67,.2)}
.published-player-num,.published-player-avatar{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.1);color:#fff;font-size:11px;font-weight:900;overflow:hidden}
.published-player-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.team-verde .published-player-num,.team-verde .published-player-avatar.empty{background:#a7ee43;border-color:#a7ee43;color:#0a1a10}
.published-player-main,.published-bench-main{flex:1;min-width:0}
.published-player-name,.published-bench-name{display:block;color:#fff;font-size:13px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.published-player-meta{display:block;margin-top:2px;color:rgba(255,255,255,.36);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.published-player-go{color:rgba(255,255,255,.22);font-size:18px;font-weight:300;line-height:1}
.published-team-empty{padding:14px 10px;text-align:center;color:rgba(255,255,255,.28);font-size:11px;font-weight:700}
.published-bench-index,.published-bench-avatar{width:28px;height:28px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.published-bench-index{border-radius:7px;background:rgba(167,238,67,.12);color:#a7ee43;font-size:11px;font-weight:900}
.published-bench-avatar{border-radius:50%;overflow:hidden;background:rgba(167,238,67,.12);border:1px solid rgba(255,255,255,.12)}
.published-bench-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.published-bench-avatar.empty{color:#a7ee43;font-size:10px;font-weight:900}
.published-bench-username{display:block;margin-top:2px;color:rgba(255,255,255,.24);font-size:10px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* FORM */
.form-wrap{padding:16px 20px 0}
.form-sec-ttl{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--text3);margin-bottom:12px}
.req-pos-title{margin-top:4px}
.pos-toggle{display:flex;gap:10px;margin-bottom:16px}
.pos-btn{flex:1;padding:14px 10px 12px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:10px;color:rgba(255,255,255,.4);font-family:'Plus Jakarta Sans',sans-serif;cursor:pointer;transition:all .2s;text-align:center}
.pos-btn .pos-icon{display:flex;justify-content:center;margin-bottom:6px;min-height:24px}
.pos-btn .pos-name{display:block;font-size:12px;font-weight:700}
.pos-btn.sel{background:rgba(167,238,67,.1);border-color:rgba(167,238,67,.4);color:#A7EE43}
.fgroup{margin-bottom:14px}
.flabel{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text3);margin-bottom:8px;display:block}
.finput{width:100%;padding:13px 14px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:10px;color:#fff;font-family:'Plus Jakarta Sans',sans-serif;font-size:14px;font-weight:600;outline:none;transition:border-color .2s}
.finput:focus{border-color:rgba(167,238,67,.35)}
.finput::placeholder{color:rgba(255,255,255,.25);font-weight:500}
.pay-check{display:flex;align-items:flex-start;gap:12px;padding:14px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);border-radius:10px;cursor:pointer;transition:all .2s;margin-bottom:18px}
.pay-check.on{border-color:rgba(167,238,67,.25);background:rgba(167,238,67,.04)}
.cbox{width:22px;height:22px;border:2px solid rgba(255,255,255,.2);border-radius:6px;flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:all .2s;margin-top:1px}
.cbox.on{background:#A7EE43;border-color:#A7EE43}
.cbox.on::after{content:'';width:6px;height:10px;border:2px solid #142029;border-top:none;border-left:none;transform:rotate(45deg) translateY(-1px)}
.ctext{font-size:13px;font-weight:600;color:rgba(255,255,255,.75);line-height:1.4}
.sub-btn{width:100%;padding:15px;background:#A7EE43;color:#142029;border:none;border-radius:14px;font-family:'Plus Jakarta Sans',sans-serif;font-size:14px;font-weight:800;cursor:pointer;transition:transform .1s;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 4px 12px rgba(167,238,67,.2)}
.sub-btn:active{transform:scale(.98)}
.sub-btn:disabled{opacity:.45;cursor:default;box-shadow:none}
.sub-btn-price{background:rgba(20,32,41,.18);padding:2px 8px;border-radius:6px;font-size:12px;font-weight:800;letter-spacing:-.01em}
.reg-err{font-size:12px;color:#ef4444;font-weight:600;margin-bottom:10px;display:none}
.reserve-card{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:14px;margin-top:2px}
.reserve-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px}
.reserve-title{font-size:15px;font-weight:800;color:var(--text);margin-bottom:4px}
.reserve-sub{font-size:12px;font-weight:600;color:rgba(255,255,255,.45);line-height:1.4}
.reserve-price{font-size:15px;font-weight:900;color:var(--green);white-space:nowrap;letter-spacing:-.02em}

/* ── Por Equipos registration ── */
.req-teams-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:16px 20px}
.req-team-card{background:rgba(255,255,255,.04);border-radius:16px;overflow:hidden;display:flex;flex-direction:column;align-items:center;cursor:pointer;transition:border-color .2s;padding-bottom:14px}
.req-team-card.req-verde{border:1px solid rgba(167,238,67,.2)}
.req-team-card.req-blanco{border:1px solid rgba(255,255,255,.07)}
.req-team-card.selected.req-verde{border-color:rgba(167,238,67,.6);box-shadow:0 0 0 2px rgba(167,238,67,.12)}
.req-team-card.selected.req-blanco{border-color:rgba(255,255,255,.3);box-shadow:0 0 0 2px rgba(255,255,255,.06)}
.req-team-hdr{width:100%;display:flex;align-items:center;justify-content:space-between;padding:12px 14px 16px;margin-bottom:0}
.req-team-hdr--verde{background:rgba(167,238,67,.08);border-bottom:1px solid rgba(167,238,67,.2)}
.req-team-hdr--blanco{background:rgba(255,255,255,.04);border-bottom:1px solid rgba(255,255,255,.07)}
.req-team-hdr-left{display:flex;align-items:center;gap:6px}
.req-team-dot{width:8px;height:8px;border-radius:4px;flex-shrink:0}
.req-dot-verde{background:#a7ee43}
.req-dot-blanco{background:#fff;border:1px solid rgba(255,255,255,.3)}
.req-team-name{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:1.1px}
.req-name-verde{color:#a7ee43}
.req-name-blanco{color:#fff}
.req-team-cupos{font-size:9px;font-weight:700;color:rgba(255,255,255,.45);background:rgba(255,255,255,.08);border-radius:8px;padding:3px 7px}
.req-team-list{width:100%;padding:8px 0 16px}
.req-player-row{display:flex;align-items:center;gap:8px;padding:6px 14px}
.req-player-row.profile-clickable{cursor:pointer}
.req-player-row.profile-clickable:active{background:rgba(255,255,255,.04)}
.req-player-row.req-empty{opacity:.3}
.req-player-num{font-size:9px;font-weight:700;color:rgba(255,255,255,.2);width:14px;flex-shrink:0}
.req-player-avatar{width:24px;height:24px;border-radius:50%;overflow:hidden;flex-shrink:0;background:rgba(167,238,67,.12);border:1px solid rgba(255,255,255,.12);display:flex;align-items:center;justify-content:center;color:#a7ee43;font-size:9px;font-weight:900}
.req-player-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.req-player-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}
.req-player-name{font-size:11px;font-weight:600;color:rgba(255,255,255,.85);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.req-player-username{font-size:9px;font-weight:600;color:rgba(255,255,255,.32);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.req-por-badge{font-size:8px;font-weight:800;color:#ff9f43;background:rgba(255,159,67,.12);border:1px solid rgba(255,159,67,.3);border-radius:5px;padding:2px 6px;flex-shrink:0;letter-spacing:.4px}
.req-empty-line{flex:1;height:1px;background:rgba(255,255,255,.12);border-radius:1px}
.req-join-btn{border:none;border-radius:10px;font-family:'Plus Jakarta Sans',sans-serif;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.55px;padding:10px 0;width:80%;cursor:pointer;transition:opacity .15s}
.req-join-verde{background:#a7ee43;color:#142029}
.req-join-blanco{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.15);color:#fff}
.req-join-btn:active{opacity:.8}
.req-confirm-btn{width:100%;padding:15px;background:#A7EE43;color:#142029;border:none;border-radius:14px;font-family:'Plus Jakarta Sans',sans-serif;font-size:14px;font-weight:800;cursor:pointer;box-shadow:0 4px 24px rgba(167,238,67,.2);transition:transform .1s;display:flex;align-items:center;justify-content:center;gap:8px}
.req-confirm-btn:active{transform:scale(.98)}
.req-confirm-btn:disabled{opacity:.5;cursor:default}

/* CONFIRMED */
.conf-wrap{display:flex;flex-direction:column;align-items:center;padding:52px 28px 40px;text-align:center}
.conf-icon{width:80px;height:80px;background:var(--green2);border:2px solid rgba(167,238,67,.3);border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:20px}
.conf-ttl{font-size:26px;font-weight:800;letter-spacing:-.02em;margin-bottom:8px;color:var(--text)}
.conf-ttl span{color:var(--green)}
.conf-sub{font-size:14px;color:var(--text2);line-height:1.55;margin-bottom:28px}
.conf-card{width:100%;background:var(--bg2);border:1px solid var(--border);border-radius:14px;padding:16px;margin-bottom:14px;text-align:left}
.ccard-ttl{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text3);margin-bottom:10px}
.crow{display:flex;justify-content:space-between;align-items:center;padding:7px 0;border-bottom:1px solid var(--border);font-size:13px}
.crow:last-child{border-bottom:none}
.crow .k{color:var(--text3)}
.crow .v{color:var(--text);font-weight:700}
.conf-receipt{background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.025))}
.receipt-row{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:8px 0;border-bottom:1px solid var(--border);font-size:13px}
.receipt-row span{color:var(--text2);font-weight:650}
.receipt-row small{color:var(--text3);font-size:10px;font-weight:800;margin-left:3px}
.receipt-row strong{color:var(--text);font-size:13px;font-weight:850;white-space:nowrap}
.receipt-credit span,.receipt-credit strong{color:var(--green)}
.receipt-total{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:12px;padding-top:12px;border-top:1px solid rgba(167,238,67,.22)}
.receipt-total span{color:var(--text);font-size:13px;font-weight:850}
.receipt-total strong{color:var(--green);font-size:20px;font-weight:900;white-space:nowrap}
.sinpe-box{width:100%;background:rgba(167,238,67,.05);border:1px solid rgba(167,238,67,.18);border-radius:14px;padding:16px;margin-bottom:22px}
/* ONVO Pay modal */
.onvo-overlay{position:fixed;inset:0;z-index:9000;background:rgba(0,0,0,.72);display:flex;flex-direction:column;justify-content:flex-end}
.onvo-sheet{background:#fff;border-radius:22px 22px 0 0;padding:20px 16px 32px;max-height:90vh;overflow-y:auto}
.onvo-sheet-hdr{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.onvo-sheet-title{font-size:16px;font-weight:800;color:#111}
.onvo-close-btn{background:rgba(0,0,0,.07);border:none;color:#555;font-size:16px;width:30px;height:30px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center}
.credit-exit-overlay{position:fixed;inset:0;z-index:9400;background:rgba(4,10,14,.76);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;align-items:flex-end;justify-content:center;padding:16px 14px calc(16px + env(safe-area-inset-bottom))}
.credit-exit-sheet{width:100%;max-width:430px;background:linear-gradient(180deg,#1e303b 0%,#14242d 100%);border:1px solid rgba(255,255,255,.1);border-radius:26px 26px 20px 20px;padding:10px 18px 18px;box-shadow:0 -20px 70px rgba(0,0,0,.48)}
.credit-exit-handle{width:42px;height:4px;border-radius:20px;background:rgba(255,255,255,.16);margin:0 auto 18px}
.credit-exit-kicker{font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.13em;color:var(--green);margin-bottom:8px}
.credit-exit-title{font-size:23px;font-weight:900;letter-spacing:-.04em;color:var(--text);margin:0 0 8px}
.credit-exit-sub{font-size:13px;font-weight:600;line-height:1.5;color:rgba(255,255,255,.55);margin:0 0 16px}
.credit-exit-card{position:relative;min-height:118px;background:linear-gradient(135deg,rgba(19,61,51,.95),rgba(16,53,45,.86));border:1px solid rgba(167,238,67,.24);border-radius:18px;display:flex;align-items:center;justify-content:center;margin-bottom:14px;overflow:hidden}
.credit-exit-badge{position:absolute;top:12px;right:12px;padding:6px 10px;border-radius:999px;background:rgba(167,238,67,.13);border:1px solid rgba(167,238,67,.18);color:var(--green);font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.1em}
.credit-exit-amount{font-size:42px;font-weight:900;color:#fff;letter-spacing:-.06em}
.credit-exit-actions{display:flex;gap:10px;flex-wrap:wrap}
.credit-exit-primary,.credit-exit-secondary{flex:1 1 100%;border:none;border-radius:15px;padding:14px;font-family:'Plus Jakarta Sans',sans-serif;font-size:14px;font-weight:900;cursor:pointer}
.credit-exit-primary{background:var(--green);color:var(--bg);box-shadow:0 10px 26px rgba(167,238,67,.2)}
.credit-exit-primary:disabled{opacity:.62;cursor:default}
.credit-exit-secondary{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.09);color:var(--text2)}
.sinpe-ttl{font-size:13px;font-weight:800;color:var(--green);margin-bottom:12px}
.sinpe-step{display:flex;gap:10px;align-items:flex-start;font-size:12px;color:var(--text2);line-height:1.45;margin-bottom:10px}
.sinpe-step:last-child{margin-bottom:0}
.snnum{width:18px;height:18px;background:var(--green2);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:800;color:var(--green);flex-shrink:0;margin-top:1px}
.sinpe-step strong{color:var(--text);font-weight:700}
.back-home-btn{width:100%;padding:14px;background:var(--green);color:var(--bg);border:none;border-radius:10px;font-family:'Plus Jakarta Sans',sans-serif;font-size:15px;font-weight:800;cursor:pointer}

/* REPORTES */
.page-hdr{padding:16px 20px 12px;border-bottom:1px solid var(--border)}
.page-ttl{font-size:20px;font-weight:800;color:var(--text);margin-bottom:3px}
.page-sub{font-size:12px;color:var(--text3)}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:16px 20px 0}
.sbox{background:var(--bg2);border:1px solid var(--border);border-radius:10px;padding:12px 8px;text-align:center}
.sbox .val{font-size:20px;font-weight:800;color:var(--profile-accent,var(--green));line-height:1;margin-bottom:3px}
.sbox .lbl{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text3)}
.historial-sec{padding:16px 20px 0}
.hist-item{background:var(--bg2);border:1px solid var(--border);border-radius:14px;padding:14px;margin-bottom:10px;cursor:pointer;transition:border-color .2s}
.hist-item:active{border-color:rgba(167,238,67,.3)}
.hist-badge{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--green);background:var(--green2);padding:2px 8px;border-radius:5px;display:inline-block;margin-bottom:8px}
.hist-date{font-size:11px;color:var(--text3);font-weight:600;margin-bottom:10px}
.hist-score-row{display:flex;align-items:center;gap:12px;margin-bottom:10px}
.hist-tname{font-size:10px;font-weight:700;color:var(--text3);margin-bottom:2px}
.hist-score{font-size:26px;font-weight:800;color:var(--text);line-height:1}
.hist-score.win{color:var(--green)}
.hist-dash{font-size:14px;font-weight:800;color:var(--text4)}
.hist-bot{display:flex;align-items:center;justify-content:space-between}
.hist-ver{font-size:10px;color:var(--text3);font-weight:600}

/* RESULTADO FULL */
.rf-field{background:linear-gradient(135deg,#1a3a22 0%,#1e4a2a 60%,#163320 100%);padding:20px 20px 16px;border-bottom:1px solid rgba(255,255,255,.06)}
.rf-lbl{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:rgba(255,255,255,.4);margin-bottom:12px;text-align:center}
.rf-score-row{display:flex;align-items:center;justify-content:center;gap:20px;margin-bottom:12px}
.rf-team{text-align:center}
.rf-tname{font-size:11px;font-weight:700;color:rgba(255,255,255,.5);margin-bottom:4px}
.rf-tscore{font-size:48px;font-weight:800;color:#fff;line-height:1}
.rf-tscore.win{color:var(--green)}
.rf-dash{font-size:24px;font-weight:800;color:rgba(255,255,255,.15);margin-top:16px}
.rf-meta{text-align:center;font-size:11px;color:rgba(255,255,255,.35);font-weight:600}
.rf-sec{padding:16px 20px;border-bottom:1px solid var(--border)}
.rf-sec-ttl{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--text3);margin-bottom:10px}
.rf-tlbl{font-size:12px;font-weight:800;color:var(--text);margin-bottom:8px;display:flex;align-items:center;gap:7px}
.rf-tbadge{font-size:10px;font-weight:800;padding:2px 7px;border-radius:5px}
.rf-tbadge.color{background:rgba(167,238,67,.15);color:var(--green)}
.rf-tbadge.blanco{background:rgba(255,255,255,.08);color:var(--text2)}
.rf-prow{display:flex;align-items:center;padding:7px 0;border-bottom:1px solid rgba(255,255,255,.04);gap:10px}
.rf-prow:last-child{border-bottom:none}
.por-tag{font-size:10px;font-weight:800;text-transform:uppercase;background:rgba(255,255,255,.07);color:var(--text3);padding:2px 6px;border-radius:4px;flex-shrink:0}
.rf-pname{flex:1;font-size:13px;font-weight:600;color:var(--text)}
.rf-pgoles{font-size:11px;font-weight:800;color:var(--green)}
.rf-pgoles.none{color:transparent}
.goal-chips{display:flex;flex-wrap:wrap;gap:6px}
.gc{display:flex;align-items:center;gap:5px;padding:5px 10px;border-radius:20px;font-size:11px;font-weight:700}
.gc.color{background:rgba(167,238,67,.12);color:var(--green);border:1px solid rgba(167,238,67,.2)}
.gc.blanco{background:rgba(255,255,255,.06);color:var(--text2);border:1px solid rgba(255,255,255,.1)}
.rf-mvp-sec{padding:16px 20px 30px}
.rf-mvp-card{background:rgba(255,193,7,.06);border:1px solid rgba(255,193,7,.18);border-radius:12px;padding:14px;display:flex;align-items:center;gap:12px}
.rf-mvp-av{width:40px;height:40px;border-radius:50%;background:rgba(255,193,7,.12);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:800;color:#ffc107;flex-shrink:0}
.rf-mvp-name{font-size:14px;font-weight:800;color:var(--text);margin-bottom:2px}
.rf-mvp-sub{font-size:11px;color:rgba(255,193,7,.7);font-weight:600}

/* REPORTES DETALLADO */
.reportes-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.reportes-head .page-ttl{margin-bottom:0}
.reportes-filter-group{display:flex;align-items:center;gap:8px;flex:0 0 auto}
.period-select-inner.format-select-inner,.period-select-inner.report-period-select-inner{flex:0 0 108px;width:108px;min-width:108px;height:32px;padding-left:12px;padding-right:8px}
.format-select-inner .period-select,.report-period-select-inner .period-select{font-size:12px;padding-right:18px}
.format-select-inner .period-select-chevron,.report-period-select-inner .period-select-chevron{right:8px}
.sec-divider{display:flex;align-items:center;gap:10px;padding:16px 20px 8px}
.sec-div-lbl{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.14em;color:var(--text3);white-space:nowrap}
.sec-div-line{flex:1;height:1px;background:var(--border)}
.report-table-divider{gap:8px}
.report-table-filter{position:relative;display:flex;align-items:center;flex:0 0 auto;width:116px;height:28px;border:1px solid rgba(167,238,67,.24);border-radius:999px;background:linear-gradient(180deg,rgba(167,238,67,.12),rgba(167,238,67,.05));box-shadow:inset 0 1px 0 rgba(255,255,255,.05)}
.report-table-filter::before{content:'';width:5px;height:5px;margin-left:10px;border-radius:50%;background:var(--green);box-shadow:0 0 10px rgba(167,238,67,.42);flex:0 0 auto}
.report-table-select{flex:1;min-width:0;height:100%;appearance:none;-webkit-appearance:none;border:0;background:transparent;color:var(--text);font-family:'Plus Jakarta Sans',sans-serif;font-size:11px;font-weight:800;letter-spacing:0;padding:0 25px 0 8px;cursor:pointer}
.report-table-select:focus{outline:none}
.report-table-chevron{position:absolute;right:9px;color:var(--green);pointer-events:none}
.stats-strip{display:flex;margin:24px 20px 4px;background:rgba(255,255,255,.03);border:1px solid var(--border);border-radius:12px;overflow:hidden}
.sstrip-item{flex:1;padding:12px 6px;text-align:center;border-right:1px solid var(--border)}
.sstrip-item:last-child{border-right:none}
.sstrip-num{font-size:18px;font-weight:800;color:var(--green);line-height:1}
.sstrip-lbl{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text3);margin-top:3px}

/* global table */
.gt{margin:0 20px 4px;background:rgba(255,255,255,.03);border:1px solid var(--border);border-radius:10px;overflow:hidden}
.gt-cols{display:grid;grid-template-columns:18px 1fr 22px 26px 26px 26px;padding:6px 12px 4px;border-bottom:1px solid rgba(255,255,255,.05)}
.gt-metric .gt-cols,.gt-metric .gt-row{grid-template-columns:18px minmax(84px,1fr) 24px 34px 44px 46px;column-gap:4px}
.gt-metric.is-rating .gt-cols,.gt-metric.is-rating .gt-row{grid-template-columns:18px minmax(96px,1fr) 26px 52px;column-gap:4px}
.gt-cols span{font-size:10px;font-weight:700;color:var(--text3);text-transform:uppercase;letter-spacing:.08em;text-align:center;white-space:nowrap}
.gt-cols span:nth-child(2){text-align:left}
.gt-row{display:grid;grid-template-columns:18px 1fr 22px 26px 26px 26px;padding:5px 12px;align-items:center;border-bottom:1px solid rgba(255,255,255,.03)}
.gt-row:last-child{border-bottom:none}
.gt-row.hi{background:rgba(167,238,67,.06);border-left:2px solid var(--green)}
.gt-rk{font-size:10px;font-weight:700;color:var(--text4)}
.gt-rk.top{color:var(--green)}
.gt-nm{font-size:10px;font-weight:600;color:var(--text2)}
.gt-nm .sub{font-size:10px;color:var(--text3);margin-left:3px}
.gt-v{font-size:10px;font-weight:600;text-align:center;color:var(--text3)}
.gt-v.g{color:var(--green);font-weight:700}
.gt-v.r{color:rgba(255,90,90,.8);font-weight:700}
.gt-v.d{color:var(--text4)}
.gt-actions{display:flex;justify-content:flex-end;padding:8px 10px 10px;border-top:1px solid rgba(255,255,255,.04)}
.gt-more-btn{border:none;border-radius:999px;background:rgba(167,238,67,.1);color:var(--green);font-family:'Plus Jakarta Sans',sans-serif;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;padding:7px 11px;cursor:pointer}
.gt-more-btn:active{background:rgba(167,238,67,.18)}

/* rating podium */
.rating-podium-sec{padding:0 20px 2px;overflow:hidden}
.rating-podium{height:144px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:end;justify-content:center;gap:6px}
.rating-podium.count-1{grid-template-columns:minmax(72px,92px)}
.rating-podium.count-2{grid-template-columns:repeat(2,minmax(72px,92px))}
.rating-podium.count-3{grid-template-columns:repeat(3,minmax(72px,92px))}
.rating-podium.count-4{grid-template-columns:repeat(4,minmax(64px,88px))}
.rating-slot{min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-end}
.rating-person{text-align:center;margin-bottom:5px;max-width:100%}
.rating-avatar{width:32px;height:32px;border-radius:50%;overflow:hidden;background:var(--bg3);display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:800;color:#fff;margin:0 auto 4px;border:1.5px solid rgba(255,255,255,.16)}
.rating-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.rating-name{font-size:9px;font-weight:800;color:#fff;line-height:1.1;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.rating-step{width:100%;border-radius:10px 10px 0 0;border:1px solid rgba(255,255,255,.08);border-bottom:none;background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.035));display:flex;flex-direction:column;align-items:center;justify-content:center;padding:8px 3px}
.rating-slot.r1 .rating-step{height:74px;background:linear-gradient(180deg,rgba(167,238,67,.25),rgba(167,238,67,.1));border-color:rgba(167,238,67,.34)}
.rating-slot.r1.goat .rating-step{background:linear-gradient(180deg,rgba(255,193,7,.28),rgba(255,193,7,.1));border-color:rgba(255,193,7,.4)}
.rating-slot.r1.goat .rating-avatar{border-color:#ffc107}
.rating-slot.r2 .rating-step{height:58px}
.rating-slot.r3 .rating-step{height:46px}
.rating-slot.r4 .rating-step{height:34px}
.rating-slot.r5 .rating-step{height:28px}
.rating-slot.r1 .rating-avatar{width:38px;height:38px;border-color:var(--green)}
.rating-rank{font-size:8px;font-weight:900;color:rgba(255,255,255,.38);letter-spacing:.08em}
.rating-score{font-size:16px;font-weight:900;color:var(--green);line-height:1.05}
.rating-games{font-size:8px;font-weight:700;color:rgba(255,255,255,.38);text-align:center;line-height:1.1}

/* podium */
.podium-sec{padding:8px 20px 4px}
.podium{display:flex;align-items:flex-end;justify-content:center;gap:6px;height:132px}
.podium-slot{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end}
.podium-info{text-align:center;margin-bottom:6px}
.podium-avatar{width:30px;height:30px;border-radius:50%;overflow:hidden;background:var(--bg3);display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;color:#fff;margin:0 auto 4px;border:1.5px solid rgba(255,255,255,.15)}
.podium-avatar.big{width:36px;height:36px;font-size:12px;border-color:var(--green)}
.podium-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.podium-player{font-size:10px;font-weight:700;color:#fff}
.podium-stat{font-size:11px;font-weight:800;color:var(--green);display:block;margin-top:1px}
.podium-bar{width:100%;border-radius:6px 6px 0 0;display:flex;align-items:center;justify-content:center}
.podium-bar.p1{height:56px;background:rgba(167,238,67,.18);border:1px solid rgba(167,238,67,.3);border-bottom:none}
.podium-bar.p2{height:38px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);border-bottom:none}
.podium-bar.p3{height:26px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);border-bottom:none}
.podium-pos{font-size:10px;font-weight:800;color:rgba(255,255,255,.4)}
.podium-pos.top{color:var(--green)}

/* assists */
.alist{margin:0 20px;display:flex;flex-direction:column;gap:5px}
.arow{display:flex;align-items:center;gap:8px;padding:7px 12px;background:rgba(255,255,255,.03);border:1px solid var(--border);border-radius:8px}
.ark{font-size:10px;font-weight:800;width:16px;text-align:center;color:var(--text4)}
.ark.gold{color:var(--green)}
.ark.silver{color:rgba(255,255,255,.5)}
.ark.bronze{color:rgba(200,150,80,.7)}
.anm{flex:1;font-size:10px;font-weight:600;color:var(--text2)}
.abar-wrap{width:80px;height:4px;background:rgba(255,255,255,.06);border-radius:2px;overflow:hidden}
.abar-fill{height:100%;background:var(--green);border-radius:2px}
.aval{font-size:11px;font-weight:800;color:var(--green);width:22px;text-align:right}

/* mvp list */
.mvp-list{margin:0 20px;display:flex;flex-direction:column;gap:5px}
.mvp-row{display:flex;align-items:center;gap:10px;padding:8px 12px;background:rgba(167,238,67,.05);border:1px solid rgba(167,238,67,.1);border-radius:8px}
.mvp-ico{font-size:16px}.mvp-ico img{width:18px;height:18px;object-fit:contain;display:block}
.mvp-info{flex:1}
.mvp-mejenga{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--text3)}
.mvp-player{font-size:11px;font-weight:800;color:#fff;margin-top:1px}
.mvp-meta{text-align:right}
.mvp-date{font-size:10px;color:var(--text3)}
.mvp-score{font-size:10px;font-weight:700;color:var(--green)}

/* rendimiento */
.rend-tbl{margin:0 20px;background:rgba(255,255,255,.03);border:1px solid var(--border);border-radius:10px;overflow:hidden}
.rend-cols{display:grid;grid-template-columns:1fr 28px 28px 28px 60px;padding:6px 12px 4px;border-bottom:1px solid rgba(255,255,255,.05)}
.rend-cols span{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text3);text-align:center}
.rend-cols span:first-child{text-align:left}
.rend-row{display:grid;grid-template-columns:1fr 28px 28px 28px 60px;padding:5px 12px;align-items:center;border-bottom:1px solid rgba(255,255,255,.03)}
.rend-row:last-child{border-bottom:none}
.rend-nm{font-size:10px;font-weight:600;color:var(--text2)}
.rend-v{font-size:10px;font-weight:600;text-align:center;color:var(--text3)}
.rend-v.win{color:var(--green);font-weight:700}
.rend-v.loss{color:rgba(255,90,90,.7)}
.rend-bar-wrap{display:flex;align-items:center;gap:4px;padding-left:4px}
.rend-bar-bg{flex:1;height:4px;background:rgba(255,255,255,.06);border-radius:2px;overflow:hidden}
.rend-bar-fill{height:100%;border-radius:2px}
.rend-pct{font-size:10px;font-weight:700;color:var(--text3);width:26px;text-align:right}

/* porteros */
.kt{margin:0 20px;background:rgba(255,255,255,.03);border:1px solid var(--border);border-radius:10px;overflow:hidden}
.kt-cols{display:grid;grid-template-columns:1fr 24px 34px 26px 42px;padding:6px 12px 4px;border-bottom:1px solid rgba(255,255,255,.05)}
.kt-cols span{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text3);text-align:center}
.kt-cols span:first-child{text-align:left}
.kt-row{display:grid;grid-template-columns:1fr 24px 34px 26px 42px;padding:6px 12px;align-items:center;border-bottom:1px solid rgba(255,255,255,.03)}
.kt-row:last-child{border-bottom:none}
.kt-nm{font-size:10px;font-weight:600;color:var(--text2)}
.kt-nm .pos-tag{font-size:10px;color:var(--text3);margin-left:3px}
.kt-v{font-size:10px;font-weight:600;text-align:center;color:var(--text3)}
.kt-v.g{color:var(--green);font-weight:700}
.kt-v.r{color:rgba(255,90,90,.7)}
.kt-pts{font-size:11px;font-weight:800;text-align:center}
.kt-pts.pos{color:var(--green)}
.kt-pts.neg{color:rgba(255,90,90,.75)}
.kt-note{padding:5px 12px 6px;font-size:10px;color:var(--text3);border-top:1px solid rgba(255,255,255,.04)}

/* jugador del mes */
.jdm{margin:8px 20px 8px;border-radius:14px;overflow:hidden;border:1px solid rgba(167,238,67,.25);background:linear-gradient(135deg,rgba(167,238,67,.12) 0%,rgba(167,238,67,.03) 60%,transparent 100%)}
.jdm-inner{padding:20px 20px 18px;text-align:center}
.jdm-lbl{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.2em;color:var(--green);margin-bottom:6px}
.jdm-name{font-size:22px;font-weight:800;color:#fff;letter-spacing:-.02em}
.jdm-stats{display:flex;justify-content:center;gap:16px;margin-top:12px}
.jdm-stat{text-align:center}
.jdm-stat-num{font-size:18px;font-weight:800;color:var(--green);line-height:1}
.jdm-stat-lbl{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text3);margin-top:2px}
.jdm-div{width:1px;height:32px;background:var(--border);align-self:center}
.jdm-chips{display:flex;justify-content:center;gap:5px;margin-top:10px;flex-wrap:wrap}
.jdm-chip{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:3px 10px;border-radius:10px}
.jdm-chip.g{background:var(--green2);border:1px solid rgba(167,238,67,.25);color:var(--green)}
.jdm-chip.w{background:rgba(255,255,255,.06);border:1px solid var(--border);color:var(--text2)}

/* HUB INSCRIBIRSE */
.hub-header{padding:20px 20px 8px}
.hub-title{font-size:22px;font-weight:800;margin-bottom:4px}
.hub-subtitle{font-size:12px;color:var(--text3);font-weight:500}
.hub-section-label{padding:16px 20px 10px;font-size:10px;font-weight:800;letter-spacing:.1em;color:var(--text3);text-transform:uppercase}
.hub-list{padding:0 20px}
.game-badge{display:inline-flex;align-items:center;gap:5px;background:var(--green2);border:1px solid rgba(167,238,67,.3);color:var(--green);font-size:10px;font-weight:800;padding:3px 8px;border-radius:10px;margin-bottom:8px;text-transform:uppercase;letter-spacing:.06em}
.badge-dot{width:5px;height:5px;background:var(--green);border-radius:50%;animation:pulse 1.5s infinite;flex-shrink:0}
.crear-card{margin:20px 20px 8px;padding:20px;background:linear-gradient(135deg,rgba(167,238,67,.08) 0%,rgba(167,238,67,.02) 100%);border:1px solid rgba(167,238,67,.18);border-radius:16px}
.crear-card-eyebrow{font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--green);margin-bottom:8px}
.crear-card-title{font-size:16px;font-weight:800;margin-bottom:6px}
.crear-card-sub{font-size:12px;color:var(--text2);line-height:1.55;margin-bottom:18px}
.crear-cta-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:14px;background:var(--green);color:#142029;font-family:'Plus Jakarta Sans',sans-serif;font-size:13px;font-weight:800;border:none;border-radius:12px;cursor:pointer;transition:opacity .15s}
.crear-cta-btn:active{opacity:.85}

/* MAS / COMMUNITY LINKS */
.mas-btn{display:flex;align-items:center;justify-content:space-between;padding:14px;background:var(--bg2);border:1px solid var(--border);border-radius:12px;margin-bottom:8px;cursor:pointer;transition:border-color .2s;text-decoration:none}
.mas-btn:active{border-color:rgba(167,238,67,.3)}
.mas-btn-l{display:flex;align-items:center;gap:12px}
.mas-icon{width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.mas-icon.g{background:var(--green2)}
.mas-icon.wa{background:rgba(37,211,102,.1)}
.mas-btn-ttl{font-size:13px;font-weight:700;color:var(--text)}
.mas-btn-sub{font-size:11px;color:var(--text3);margin-top:1px}

/* AUTH & PROFILE */
.auth-wrap{padding:40px 24px 24px;display:flex;flex-direction:column;align-items:center;text-align:center}
.auth-logo{margin-bottom:24px}
.onboarding-logo-frame{position:relative;width:210px;height:210px;display:flex;align-items:center;justify-content:center;margin:0 auto;border-radius:50%}
.onboarding-logo-frame:before{content:"";position:absolute;inset:-26px;border-radius:50%;background:radial-gradient(circle,rgba(167,238,67,.24) 0%,rgba(167,238,67,.1) 34%,rgba(167,238,67,0) 68%);filter:blur(2px);z-index:-1;pointer-events:none}
.onboarding-logo-frame.success{width:220px;height:220px;margin-bottom:24px}
.onboarding-logo-img{width:260px!important;height:260px!important;object-fit:contain;display:block;filter:drop-shadow(0 0 18px rgba(167,238,67,.24))}
.onboarding-logo-frame.success .onboarding-logo-img{width:278px!important;height:278px!important}
.auth-title{font-size:22px;font-weight:800;color:var(--text);letter-spacing:-.02em;margin-bottom:6px}
.auth-subtitle{font-size:13px;color:var(--text3);margin-bottom:28px;line-height:1.5}
.auth-form{width:100%;text-align:left}
.auth-form .fgroup{margin-bottom:12px}
.auth-btn{width:100%;padding:14px;background:var(--green);color:var(--bg);border:none;border-radius:10px;font-family:'Plus Jakarta Sans',sans-serif;font-size:14px;font-weight:800;cursor:pointer;transition:transform .1s}
.auth-btn:active{transform:scale(.98)}
.auth-btn:disabled{opacity:.5;cursor:default}
.auth-divider{display:flex;align-items:center;gap:12px;margin:20px 0;width:100%}
.auth-divider-line{flex:1;height:1px;background:var(--border)}
.auth-divider-text{font-size:11px;font-weight:700;color:var(--text3);text-transform:uppercase;letter-spacing:.1em}
.auth-btn-outline{width:100%;padding:13px;background:transparent;border:1px solid var(--border);border-radius:10px;font-family:'Plus Jakarta Sans',sans-serif;font-size:13px;font-weight:700;color:var(--text2);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:8px;transition:border-color .2s}
.auth-btn-outline:active{border-color:rgba(167,238,67,.3)}
.auth-btn-outline svg{flex-shrink:0}
.auth-link{font-size:13px;color:var(--text3);margin-top:20px;text-align:center;padding:0 24px;width:100%;box-sizing:border-box}
.auth-link a{color:var(--green);font-weight:700;cursor:pointer;text-decoration:none}
.auth-err{font-size:12px;color:#ef4444;font-weight:600;margin-bottom:10px;display:none;text-align:center}
.auth-ok{font-size:12px;color:var(--green);font-weight:700;margin-bottom:10px;display:none;text-align:center}
.forgot-link{font-size:12px;color:var(--text3);text-align:center;margin-top:14px}
.forgot-link a{color:var(--green);font-weight:800;text-decoration:none;cursor:pointer}
.reset-box{margin-top:14px;padding:14px;background:rgba(255,255,255,.035);border:1px solid var(--border);border-radius:14px}
.reset-title{font-size:13px;font-weight:900;color:var(--text);margin-bottom:4px}
.reset-copy{font-size:11px;color:var(--text3);line-height:1.5;margin-bottom:12px}
.auth-err.reset,.auth-ok.reset{text-align:left;margin-bottom:10px}
.reset-actions{display:flex;gap:8px;margin-top:10px}
.reset-primary,.reset-secondary{flex:1;padding:12px;border-radius:10px;border:1px solid var(--border);font-family:'Plus Jakarta Sans',sans-serif;font-size:12px;font-weight:900;cursor:pointer}
.reset-primary{background:var(--green);border-color:var(--green);color:#10140d}
.reset-secondary{background:rgba(255,255,255,.04);color:var(--text2)}
.reset-primary:disabled{opacity:.55;cursor:not-allowed}

/* Profile */
#perfilLoggedIn{--profile-accent:var(--green)}
#perfilLoggedIn.profile-keeper-mode{--profile-accent:var(--green);--profile-keeper-bg:#123d31;--profile-keeper-card:#12372f;--profile-keeper-line:#59f08a}
#screen-perfil.profile-keeper-screen{--cona-header-bg:#123d31}
.perfil-top-card{background:var(--bg2)}
#perfilLoggedIn.profile-keeper-mode .perfil-top-card{background:var(--profile-keeper-bg)}
.profile-wrap{padding:28px 20px 20px}
.profile-header{display:flex;flex-direction:column;align-items:center;text-align:center;margin-bottom:24px}
.avatar-upload-wrap{position:relative;display:inline-block;cursor:pointer;margin-bottom:12px}
.avatar-upload-wrap .profile-avatar{margin-bottom:0;transition:opacity .15s}
.avatar-camera-badge{position:absolute;bottom:0;right:0;width:22px;height:22px;border-radius:50%;background:var(--green);display:flex;align-items:center;justify-content:center;color:#142029;border:2px solid var(--bg2)}
#perfilLoggedIn.profile-keeper-mode .avatar-camera-badge{border-color:var(--profile-keeper-bg)}
.profile-avatar{width:72px;height:72px;border-radius:50%;background:var(--green2);border:2px solid rgba(167,238,67,.3);display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:800;color:var(--green);margin-bottom:12px;overflow:hidden;position:relative}
.profile-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}

/* Multi-step Register */
.reg-dots{display:flex;justify-content:center;gap:6px;padding:10px 0 4px}
.reg-dot{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.15);transition:all .3s ease}
.reg-dot.done{background:rgba(167,238,67,.45)}
.reg-dot.active{width:22px;border-radius:4px;background:var(--green)}
.reg-step{width:100%}
.reg-strength{display:flex;gap:4px;margin:8px 0 16px}
.reg-sbar{flex:1;height:4px;border-radius:2px;background:rgba(255,255,255,.1);transition:background .3s}
.reg-sbar.s1{background:#ef4444}
.reg-sbar.s2{background:#f97316}
.reg-sbar.s3{background:#eab308}
.reg-sbar.s4{background:var(--green)}
.reg-skip-link{font-size:12px;color:var(--text3);cursor:pointer;text-decoration:none}
.reg-skip-link:hover{color:var(--text2)}
.reg-success-wrap{display:flex;flex-direction:column;align-items:center;text-align:center;padding:60px 24px 32px;flex:1}

/* Setup Profile */
.setup-wrap{padding:40px 24px 24px;display:flex;flex-direction:column;align-items:center;text-align:center}
.setup-avatar-picker{width:96px;height:96px;border-radius:50%;background:var(--green2);border:2px dashed rgba(167,238,67,.35);display:flex;align-items:center;justify-content:center;cursor:pointer;margin-bottom:8px;overflow:hidden;position:relative;transition:border-color .2s}
.setup-avatar-picker:active{border-color:var(--green)}
.setup-avatar-picker img{width:100%;height:100%;object-fit:cover;border-radius:50%}
.setup-avatar-hint{font-size:11px;color:var(--text3);margin-bottom:24px}
.avatar-crop-overlay{position:fixed;inset:0;z-index:9500;background:rgba(4,10,14,.82);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;align-items:flex-end;justify-content:center;padding:18px 14px calc(18px + env(safe-area-inset-bottom))}
.avatar-crop-sheet{width:100%;max-width:430px;background:linear-gradient(180deg,#203544 0%,#172832 100%);border:1px solid rgba(255,255,255,.1);border-radius:24px 24px 20px 20px;padding:10px 18px 18px;box-shadow:0 -18px 60px rgba(0,0,0,.42)}
.avatar-crop-handle{width:42px;height:4px;border-radius:10px;background:rgba(255,255,255,.18);margin:0 auto 16px}
.avatar-crop-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px}
.avatar-crop-title{font-size:18px;font-weight:900;color:var(--text);letter-spacing:-.02em;margin-bottom:4px}
.avatar-crop-sub{font-size:12px;font-weight:600;color:rgba(255,255,255,.48);line-height:1.4}
.avatar-crop-close{width:34px;height:34px;border-radius:50%;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.06);color:var(--text2);font-size:16px;cursor:pointer}
.avatar-crop-stage{width:min(270px,74vw);height:min(270px,74vw);position:relative;margin:0 auto 18px;overflow:hidden;border-radius:22px;background:#0c151b;touch-action:none}
.avatar-crop-stage img{position:absolute;left:50%;top:50%;max-width:none;user-select:none;-webkit-user-drag:none;will-change:transform,width,height}
.avatar-crop-ring{position:absolute;inset:0;border-radius:50%;border:2px solid var(--green);box-shadow:0 0 0 999px rgba(0,0,0,.38),0 0 0 8px rgba(167,238,67,.08) inset;pointer-events:none}
.avatar-crop-controls{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.avatar-zoom-btn{width:38px;height:38px;border-radius:13px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.06);color:var(--text);font-size:20px;font-weight:800;cursor:pointer}
.avatar-zoom-range{flex:1;accent-color:var(--green)}
.avatar-crop-actions{display:flex;gap:10px}
.avatar-crop-secondary,.avatar-crop-primary{flex:1;border:none;border-radius:14px;padding:14px;font-family:'Plus Jakarta Sans',sans-serif;font-size:14px;font-weight:800;cursor:pointer}
.avatar-crop-secondary{background:rgba(255,255,255,.07);color:var(--text2);border:1px solid rgba(255,255,255,.08)}
.avatar-crop-primary{background:var(--green);color:var(--bg);box-shadow:0 8px 24px rgba(167,238,67,.2)}
.profile-name{font-size:20px;font-weight:800;color:var(--text);margin-bottom:4px}
.profile-email{font-size:12px;color:var(--text3);font-weight:400}
.profile-role-wrap{width:104px;flex:0 0 104px;margin:0}
.profile-role-badge{margin-top:12px;display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:0 12px;border-radius:999px;background:rgba(167,238,67,.12);border:1px solid rgba(167,238,67,.22);color:var(--profile-accent);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.1em}
.profile-stats-grid{grid-template-columns:repeat(4,1fr)}
#perfilLoggedIn.profile-keeper-mode .profile-stats-grid{grid-template-columns:repeat(3,1fr)}
#perfilLoggedIn.profile-keeper-mode .profile-stats-grid .sbox{background:rgba(18,61,49,.72);border-color:var(--green)}
#perfilLoggedIn.profile-keeper-mode .profile-stats-grid .sbox .val{color:var(--green)}
.profile-section{margin-bottom:20px}
.profile-section-title{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--text3);margin-bottom:10px}
.profile-hist-item{background:var(--bg2);border:1px solid var(--border);border-radius:12px;padding:14px 15px;margin-bottom:6px;display:flex;align-items:center;justify-content:space-between;cursor:pointer;transition:border-color .2s}
.profile-hist-item:active{border-color:rgba(167,238,67,.3)}
.profile-hist-item.mvp{border-color:rgba(255,193,7,.4);background:rgba(255,193,7,.06)}
.profile-hist-stats{display:flex;align-items:center;gap:5px;flex-wrap:wrap;font-size:10px;color:var(--text2)}
.profile-mvp-stat{display:inline-flex;align-items:center;gap:4px;color:#ffc107;font-weight:800}
.profile-mvp-stat .mvp-icon{width:14px;height:14px}
.profile-hist-left{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}
.profile-hist-name{font-size:13px;font-weight:700;color:var(--text);display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.profile-hist-meta{display:flex;gap:14px;flex-wrap:wrap}
.profile-hist-date{font-size:11px;color:rgba(255,255,255,.35)}
.profile-hist-score{font-size:14px;font-weight:800;color:var(--green)}
.profile-hist-actions{display:flex;justify-content:flex-start;margin-top:8px}
.profile-view-all-btn{border:none;background:transparent;color:var(--green);padding:2px 0;font-family:'Plus Jakarta Sans',sans-serif;font-size:11px;font-weight:800;cursor:pointer}
.profile-view-all-btn:active{opacity:.75}
.cona-credits-section{margin-top:18px}
.cona-credits-card{position:relative;min-height:126px;background:linear-gradient(135deg,rgba(19,61,51,.92),rgba(16,53,45,.86));border:1px solid rgba(167,238,67,.24);border-radius:16px;display:flex;align-items:center;justify-content:center;overflow:hidden;box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
.cona-credits-card:before{content:"";position:absolute;inset:-35% 45% auto -18%;height:130px;background:radial-gradient(circle,rgba(167,238,67,.14),transparent 66%);transform:rotate(-14deg)}
.cona-credit-badge{position:absolute;top:13px;right:13px;display:flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:rgba(148,163,166,.58);color:rgba(255,255,255,.72);font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.11em}
.cona-credit-badge span{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.35)}
.cona-credit-badge.has-balance{background:rgba(167,238,67,.14);color:var(--green);border:1px solid rgba(167,238,67,.18)}
.cona-credit-badge.has-balance span{background:var(--green)}
.cona-credit-amount{position:relative;font-size:44px;font-weight:900;color:#fff;letter-spacing:-.06em;line-height:1}
.cona-credit-note{font-size:9px;font-weight:600;letter-spacing:.08em;line-height:1.45;color:rgba(255,255,255,.38);margin-top:10px}
.saved-cards-section{margin-top:18px}
.saved-cards-list{display:flex;flex-direction:column;gap:10px}
.saved-cards-empty{padding:18px 16px;background:rgba(255,255,255,.02);border:1px dashed rgba(167,238,67,.18);border-radius:14px;color:rgba(255,255,255,.45);font-size:11px;font-weight:600;letter-spacing:.02em;line-height:1.55;text-align:center}
.saved-card-item{display:flex;align-items:center;gap:12px;padding:14px;background:linear-gradient(135deg,rgba(255,255,255,.04),rgba(255,255,255,.015));border:1px solid rgba(255,255,255,.07);border-radius:14px}
.saved-card-item.is-default{border-color:rgba(167,238,67,.32);background:linear-gradient(135deg,rgba(19,61,51,.42),rgba(16,53,45,.28))}
.saved-card-brand{flex-shrink:0;width:38px;height:26px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.06);border-radius:6px;font-size:9px;font-weight:900;letter-spacing:.05em;text-transform:uppercase;color:rgba(255,255,255,.78)}
.saved-card-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}
.saved-card-num{font-size:13px;font-weight:800;color:#fff;letter-spacing:.04em;font-variant-numeric:tabular-nums}
.saved-card-meta{display:flex;align-items:center;gap:8px}
.saved-card-default-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:999px;background:rgba(167,238,67,.14);border:1px solid rgba(167,238,67,.22);color:var(--green);font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.1em}
.saved-card-actions{display:flex;align-items:center;gap:6px}
.saved-card-action-btn{border:none;background:transparent;color:var(--text3);padding:6px 8px;font-family:'Plus Jakarta Sans',sans-serif;font-size:11px;font-weight:700;cursor:pointer;border-radius:8px;transition:background .15s,color .15s}
.saved-card-action-btn:hover{background:rgba(255,255,255,.05);color:var(--text)}
.saved-card-action-btn.is-danger{color:rgba(239,68,68,.75)}
.saved-card-action-btn.is-danger:hover{background:rgba(239,68,68,.08);color:rgb(239,68,68)}
.add-card-btn{width:100%;margin-top:12px;padding:13px;background:rgba(167,238,67,.08);border:1px dashed rgba(167,238,67,.32);border-radius:12px;font-family:'Plus Jakarta Sans',sans-serif;font-size:13px;font-weight:800;color:var(--green);cursor:pointer;letter-spacing:.02em;transition:background .15s,border-color .15s}
.add-card-btn:hover{background:rgba(167,238,67,.14);border-color:rgba(167,238,67,.5)}
.add-card-btn:active{opacity:.8}
.add-card-btn[disabled]{opacity:.5;cursor:not-allowed}
.logout-btn{width:100%;padding:13px;background:rgba(239,68,68,.08);border:1px solid rgba(239,68,68,.2);border-radius:10px;font-family:'Plus Jakarta Sans',sans-serif;font-size:13px;font-weight:700;color:rgba(239,68,68,.8);cursor:pointer;margin-top:8px;transition:background .2s}
.logout-btn:active{background:rgba(239,68,68,.15)}
.perf-card{background:rgba(37,211,102,.07);border:.6px solid rgba(167,238,67,.29);border-radius:16px;padding:19px 25px}
#perfilLoggedIn.profile-keeper-mode .perf-card{background:linear-gradient(180deg,rgba(37,211,102,.13),rgba(18,55,47,.98));border-color:rgba(167,238,67,.5)}
.profile-trend-card{padding:12px 25px;overflow:hidden}
.profile-stats-card{padding:12px 0;overflow:hidden}
#perfilLoggedIn.profile-keeper-mode .profile-stats-card{background:rgba(37,211,102,.07);border:.5px solid rgba(167,238,67,.3);padding:12px 24px}
.profile-trend{width:100%}
.profile-trend-head{height:32px;display:flex;align-items:center;gap:6px;margin-bottom:10px}
.profile-trend-value{font-size:24px;line-height:32px;font-weight:600;color:#fff;font-variant-numeric:tabular-nums}
.profile-trend-delta{display:inline-flex;align-items:center;gap:2px;background:rgba(5,193,104,.2);border:.6px solid rgba(5,193,104,.2);border-radius:2px;padding:2px 4px;color:var(--profile-accent,var(--green));font-size:10px;line-height:14px;font-weight:600}
.profile-trend-delta.negative{background:rgba(239,68,68,.14);border-color:rgba(239,68,68,.2);color:#ef4444}
.profile-trend-caption{color:var(--text3);font-size:8px;line-height:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;max-width:88px}
.profile-trend-svg{width:100%;display:block;overflow:visible}
.profile-trend-grid{stroke:rgba(255,255,255,.12);stroke-width:1}
.profile-trend-grid-v{stroke-dasharray:5 5;stroke-opacity:.22}
.profile-trend-line{fill:none;stroke:var(--profile-accent,var(--green));stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.profile-trend-y{fill:#e8f0fe;font-size:8px;font-weight:500}
.profile-trend-month{fill:var(--profile-accent,var(--green));font-size:8px;font-weight:500}
.profile-radar-v2{display:flex;align-items:center;width:100%;height:400px;overflow:visible}
.profile-radar-v2-svg{display:block;width:390px;max-width:none;height:400px;margin-left:calc((100% - 390px)/2);flex:0 0 390px}
.profile-radar-v2-ring{fill:transparent;stroke:rgba(226,232,240,.25);stroke-width:1}
.profile-radar-v2-axis{stroke:rgba(226,232,240,.22);stroke-width:1}
.profile-radar-v2-area{fill:url(#profileRadarV2Fill);stroke:var(--profile-accent,var(--green));stroke-width:2;stroke-linejoin:round}
.profile-radar-v2-dot{fill:var(--profile-accent,var(--green));stroke:#123d31;stroke-width:2}
.profile-radar-v2-label{fill:#e2e8f0;font-size:12px;font-weight:500}
.profile-radar-v2-sub{fill:#e8f0fe;font-size:9px;font-weight:400}
#perfilLoggedIn.profile-keeper-mode .profile-radar-v2-ring{stroke:rgba(255,255,255,.46);stroke-width:1.1}
#perfilLoggedIn.profile-keeper-mode .profile-radar-v2-axis{stroke:rgba(255,255,255,.34);stroke-width:1}
#perfilLoggedIn.profile-keeper-mode .profile-radar-v2-area{stroke:var(--profile-keeper-line);stroke-width:2.4}
#perfilLoggedIn.profile-keeper-mode .profile-radar-v2-dot{fill:var(--profile-keeper-line);stroke:#123d31;stroke-width:2}
#perfilLoggedIn.profile-keeper-mode .profile-radar-v2-label{fill:#fff;font-size:12px;font-weight:600}
#perfilLoggedIn.profile-keeper-mode .profile-radar-v2-sub{fill:#fff;font-size:9px;font-weight:400}
.profile-radar{display:flex;flex-direction:column}
.profile-radar-svg{width:100%;display:block;overflow:visible}
.profile-radar-ring{fill:rgba(255,255,255,.025);stroke:rgba(255,255,255,.08);stroke-width:.8}
.profile-radar-ring-max{fill:rgba(255,255,255,.02);stroke:rgba(255,255,255,.28);stroke-width:1.35}
.profile-radar-axis{stroke-width:.8;stroke-opacity:.18}
.profile-radar-area{stroke-linejoin:round;stroke-linecap:round}
.profile-radar-sector{opacity:.1}
.profile-radar-segment{stroke-width:2.45;stroke-linecap:round;stroke-opacity:.95}
.profile-radar-dot{stroke:#102019;stroke-width:1.5}
.profile-radar-label{font-size:8.5px;font-weight:800;letter-spacing:.02em}
.profile-radar-max{font-size:8px;font-weight:900;fill:rgba(255,255,255,.42)}
.profile-radar-legend{display:flex;justify-content:center;align-items:center;gap:12px;margin-top:2px;min-height:18px}
.profile-radar-legend-item{display:inline-flex;align-items:center;gap:6px;max-width:118px;color:var(--text2);font-size:10px;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.profile-radar-legend-item i{width:8px;height:8px;border-radius:999px;box-shadow:0 0 0 2px rgba(255,255,255,.08);flex:0 0 auto}

/* Month toggle */
.period-select-inner{position:relative;display:inline-flex;align-items:center;background:var(--bg2);border:1px solid var(--border);border-radius:10px;padding:0 10px 0 14px;height:36px;min-width:140px}
.period-select{appearance:none;-webkit-appearance:none;background:transparent;border:none;outline:none;font-family:'Plus Jakarta Sans',sans-serif;font-size:13px;font-weight:800;color:var(--text);cursor:pointer;padding-right:20px;width:100%}
.period-select option{background:#1a1a1a;color:#fff}
.period-select-chevron{pointer-events:none;position:absolute;right:10px;flex-shrink:0}

/* Admin */
.admin-field-lbl{display:block;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text3);margin:14px 0 5px}
.admin-field-input{width:100%;padding:10px 12px;background:var(--bg2);border:1px solid var(--border);border-radius:8px;color:var(--text);font-family:'Plus Jakarta Sans',sans-serif;font-size:13px;font-weight:600;box-sizing:border-box}
.admin-field-input:focus{outline:none;border-color:rgba(167,238,67,.4)}
.admin-field-followup{display:none;margin-top:8px}
.admin-format-toggle{display:flex;gap:4px;background:var(--bg2);border-radius:10px;padding:3px;border:1px solid var(--border)}
.admin-fmt-btn{flex:1;padding:8px 0;border-radius:8px;border:none;background:transparent;color:var(--text3);font-family:'Plus Jakarta Sans',sans-serif;font-size:12px;font-weight:700;cursor:pointer;transition:all .2s}
.admin-fmt-btn.active{background:var(--green);color:#0a0a0a}
.profile-action-bar{display:flex;align-items:center;justify-content:space-between;padding:16px 20px}
.public-profile-back{display:inline-flex;align-items:center;gap:6px;border:none;background:rgba(255,255,255,.06);color:var(--text2);border:1px solid rgba(255,255,255,.08);border-radius:999px;padding:8px 12px;font-family:'Plus Jakarta Sans',sans-serif;font-size:12px;font-weight:800;cursor:pointer}
.profile-action-spacer{flex:1;min-width:0}
.public-profile-mode .profile-private-action,
.public-profile-mode .profile-private-section,
.public-profile-mode .avatar-camera-badge{display:none!important}
.public-profile-mode .avatar-upload-wrap{cursor:default;pointer-events:none}
.profile-clickable{cursor:pointer}
.profile-clickable:active{opacity:.78}
.admin-btn{width:36px;height:36px;border-radius:18px;background:rgba(167,238,67,.08);border:1px solid rgba(167,238,67,.2);display:flex;align-items:center;justify-content:center;cursor:pointer}
.admin-hdr{padding:16px 20px 12px;display:flex;align-items:center;gap:10px}
.admin-ttl{font-size:17px;font-weight:800;color:var(--text)}
.admin-list{padding:0 20px}
.admin-card{background:var(--bg2);border:1px solid var(--border);border-radius:12px;padding:14px;margin-bottom:10px;cursor:pointer;transition:background .2s}
.admin-card:active{background:rgba(255,255,255,.04)}
.admin-card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}
.admin-card-lbl{font-size:14px;font-weight:800;color:var(--text)}
.admin-card-date{font-size:11px;color:var(--text3)}
.admin-card-score{font-size:12px;color:var(--text2);margin-bottom:4px}
.admin-card-status{font-size:10px;font-weight:700;padding:2px 8px;border-radius:6px;display:inline-block}
.admin-card-status.saved{background:rgba(167,238,67,.1);color:var(--green)}
.admin-card-status.pending{background:rgba(251,191,36,.1);color:#fbbf24}
.admin-edit-hdr{padding:16px 20px 0}
.admin-edit-info{padding:8px 20px 12px;font-size:12px;color:var(--text3)}
.admin-score-sec{padding:0 20px 16px}
.admin-score-row{display:flex;align-items:center;gap:10px;justify-content:center;margin-bottom:8px}
.admin-score-team{font-size:13px;font-weight:700;color:var(--text);text-align:center;min-width:60px}
.admin-score-input{width:50px;text-align:center;font-size:20px;font-weight:800;padding:8px;background:var(--bg2);border:1px solid var(--border);border-radius:8px;color:var(--text);font-family:inherit}
.admin-score-dash{font-size:20px;color:var(--text3);font-weight:300}
.admin-mvp-sec{padding:0 20px 12px}
.admin-mvp-sel{width:100%;padding:10px 12px;background:var(--bg2);border:1px solid var(--border);border-radius:8px;color:var(--text);font-family:inherit;font-size:13px;appearance:none;-webkit-appearance:none}
.admin-team-sec{padding:0 20px 16px}
.admin-team-lbl{font-size:13px;font-weight:800;color:var(--text);margin-bottom:8px;padding:6px 0;border-bottom:1px solid var(--border)}
.admin-player-row{display:flex;align-items:center;gap:8px;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.03)}
.admin-player-name{flex:1;font-size:12px;font-weight:600;color:var(--text2);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.admin-stat-input{width:42px;text-align:center;font-size:13px;font-weight:700;padding:6px 4px;background:var(--bg2);border:1px solid var(--border);border-radius:6px;color:var(--text);font-family:inherit}
.admin-stat-lbl{font-size:10px;color:var(--text3);text-align:center;font-weight:700;text-transform:uppercase;letter-spacing:.05em;width:42px}
.admin-save-btn{display:block;width:calc(100% - 40px);margin:12px 20px 20px;padding:14px;background:var(--green);border:none;border-radius:10px;font-family:inherit;font-size:14px;font-weight:800;color:#111;cursor:pointer;transition:opacity .2s}
.admin-save-btn:disabled{opacity:.5}
.admin-save-msg{text-align:center;padding:8px 20px;font-size:12px;font-weight:700;color:var(--green)}

/* Settings gear button */
.settings-gear{width:36px;height:36px;border-radius:18px;background:rgba(255,255,255,.06);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s}
.settings-gear:active{background:rgba(255,255,255,.12)}
.inbox-btn{position:relative;width:36px;height:36px;border-radius:18px;background:rgba(255,255,255,.06);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s}
.inbox-btn:active{background:rgba(255,255,255,.12)}
.inbox-badge{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:#ef4444;color:#fff;font-size:11px;font-weight:800;line-height:18px;text-align:center;display:none;align-items:center;justify-content:center;box-shadow:0 0 0 2px var(--bg);pointer-events:none}
.inbox-msg{background:var(--bg2);border:1px solid var(--border);border-radius:12px;padding:14px;margin-bottom:10px}
.inbox-msg-title{font-size:14px;font-weight:800;color:var(--text);margin-bottom:4px}
.inbox-msg-body{font-size:12px;color:var(--text2);line-height:1.5;margin-bottom:8px}
.inbox-msg-image{display:block;width:100%;max-height:220px;object-fit:cover;border-radius:10px;margin:8px 0 10px;border:1px solid var(--border);background:rgba(255,255,255,.04)}
.inbox-msg-date{font-size:10px;color:var(--text3)}
.inbox-empty{text-align:center;padding:40px 20px;color:var(--text3);font-size:13px}

/* Settings page */
.settings-hdr{display:flex;align-items:center;gap:10px;padding:16px 20px 12px;border-bottom:1px solid var(--border)}
.settings-ttl{font-size:18px;font-weight:800;color:var(--text)}
.settings-section{padding:16px 20px 0}
.settings-section-lbl{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--text3);margin-bottom:10px}
.settings-row{display:flex;align-items:center;justify-content:space-between;padding:14px;background:var(--bg2);border:1px solid var(--border);border-radius:12px;margin-bottom:8px}
.settings-row-left{display:flex;align-items:center;gap:12px}
.settings-row-icon{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.settings-row-icon.green{background:var(--green2)}
.settings-row-icon.blue{background:rgba(59,130,246,.12)}
.settings-row-icon.purple{background:rgba(168,85,247,.12)}
.settings-row-info{display:flex;flex-direction:column;gap:1px}
.settings-row-title{font-size:13px;font-weight:700;color:var(--text)}
.settings-row-sub{font-size:11px;color:var(--text3)}

/* Factor Cona info screen */
.fc-table{width:100%;border-collapse:collapse;margin:10px 0;font-size:12px}
.fc-table th{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text3);padding:7px 10px;border-bottom:1px solid var(--border);text-align:left}
.fc-table th:last-child{text-align:right}
.fc-table td{padding:7px 10px;border-bottom:1px solid rgba(255,255,255,.04);color:var(--text2)}
.fc-table td.pos{color:var(--green);font-weight:700;text-align:right;white-space:nowrap}
.fc-table td.neg{color:#f87171;font-weight:700;text-align:right;white-space:nowrap}
.fc-table td.neu{color:var(--text3);font-weight:700;text-align:right;white-space:nowrap}
.fc-formula{background:rgba(255,255,255,.04);border:1px solid var(--border);border-radius:8px;padding:10px 12px;margin:8px 0;font-family:monospace;font-size:11px;color:var(--text2);line-height:1.5;overflow-x:auto}
.fc-callout{background:rgba(167,238,67,.05);border:1px solid rgba(167,238,67,.15);border-radius:10px;padding:12px 14px;margin:8px 0;font-size:12px;color:var(--text2);line-height:1.6}
.fc-callout strong{color:var(--green)}
.fc-list{margin:8px 0 0 4px;padding-left:14px;display:flex;flex-direction:column;gap:5px}
.fc-list li{font-size:12px;color:var(--text2);line-height:1.55}
.fc-list li strong{color:var(--text)}
.fc-norm-item{background:rgba(255,255,255,.03);border:1px solid var(--border);border-radius:10px;padding:12px 14px}
.fc-norm-lbl{font-size:11px;font-weight:800;color:var(--green);margin-bottom:6px;letter-spacing:.02em}
.fc-scale{display:flex;flex-direction:column;gap:8px;margin:10px 0}
.fc-scale-item{display:flex;align-items:center;gap:12px;padding:10px 12px;background:rgba(255,255,255,.03);border:1px solid var(--border);border-radius:10px}
.fc-scale-badge{font-size:10px;font-weight:800;min-width:68px;text-align:center;padding:4px 8px;border-radius:6px;flex-shrink:0}
.fc-scale-desc{font-size:12px;color:var(--text2);line-height:1.4}
.fc-feedback-btn{display:inline-block;padding:11px 22px;background:var(--green);color:#0a1810;font-size:13px;font-weight:800;border-radius:10px;text-decoration:none;letter-spacing:.01em}
.fc-entry-btn{display:flex;align-items:center;justify-content:center;padding:9px 20px;background:rgba(167,238,67,.06);border:1px solid rgba(167,238,67,.25);border-radius:10px;font-size:11px;font-weight:700;color:rgba(167,238,67,.6);cursor:pointer;width:100%;font-family:inherit;text-align:center;transition:color .15s,border-color .15s,background .15s;letter-spacing:.04em;text-transform:uppercase}
.fc-entry-btn:active{background:rgba(167,238,67,.1);color:var(--green);border-color:rgba(167,238,67,.4)}

/* Terms */
.terms-section{margin-bottom:24px}
.terms-ttl{font-size:13px;font-weight:800;color:var(--text);margin-bottom:6px}
.terms-body{font-size:12px;color:var(--text2);line-height:1.65}
.terms-subttl{font-size:12px;font-weight:800;color:var(--text);margin:12px 0 5px}
.terms-list{margin:8px 0 10px;padding-left:18px;display:flex;flex-direction:column;gap:6px}
.terms-list li{font-size:12px;color:var(--text2);line-height:1.55}
.terms-table-wrap{width:100%;overflow-x:auto;margin:10px 0 12px;border:1px solid var(--border);border-radius:10px;background:rgba(255,255,255,.025)}
.terms-table{width:100%;min-width:620px;border-collapse:collapse;font-size:11px}
.terms-table th{padding:9px 10px;text-align:left;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.06em;color:var(--text3);border-bottom:1px solid var(--border);background:rgba(255,255,255,.035)}
.terms-table td{padding:10px;border-bottom:1px solid rgba(255,255,255,.045);color:var(--text2);line-height:1.45;vertical-align:top}
.terms-table tr:last-child td{border-bottom:none}
.terms-table td:first-child{font-weight:800;color:var(--text);white-space:nowrap}
.terms-check{display:flex;align-items:flex-start;gap:10px;padding:13px 14px;background:rgba(255,255,255,.035);border:1px solid var(--border);border-radius:12px;color:var(--text2);font-size:12px;line-height:1.45;font-weight:650;cursor:pointer}
.terms-check input{appearance:none;width:18px;height:18px;margin:0;flex:0 0 18px;border:1px solid rgba(167,238,67,.5);border-radius:5px;background:rgba(255,255,255,.04);display:grid;place-items:center;cursor:pointer}
.terms-check input:checked{background:var(--green);border-color:var(--green)}
.terms-check input:checked:after{content:"";width:8px;height:5px;border-left:2px solid #111;border-bottom:2px solid #111;transform:rotate(-45deg);margin-top:-2px}
.terms-check span{padding-top:1px}
.terms-check a{color:var(--green);font-weight:800;text-decoration:none;cursor:pointer}
.terms-stack{display:flex;flex-direction:column;gap:12px;margin:8px 0 18px}
.onboarding-terms-overlay{position:fixed;inset:0;z-index:9600;background:rgba(5,8,12,.74);backdrop-filter:blur(12px);display:flex;align-items:flex-end;justify-content:center;padding:16px}
.onboarding-terms-sheet{width:100%;max-width:430px;max-height:min(82dvh,720px);background:linear-gradient(180deg,#151c24 0%,#10161d 100%);border:1px solid rgba(255,255,255,.1);border-radius:24px;box-shadow:0 -18px 60px rgba(0,0,0,.42);display:flex;flex-direction:column;overflow:hidden}
.onboarding-terms-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 18px 12px;border-bottom:1px solid var(--border)}
.onboarding-terms-kicker{font-size:10px;font-weight:900;color:var(--green);letter-spacing:.16em;text-transform:uppercase;margin-bottom:4px}
.onboarding-terms-title{font-size:18px;font-weight:900;color:var(--text);letter-spacing:-.02em}
.onboarding-terms-close{width:34px;height:34px;border-radius:50%;border:1px solid var(--border);background:rgba(255,255,255,.06);color:var(--text2);font:inherit;font-weight:900;cursor:pointer}
.onboarding-terms-scroll{padding:18px;overflow:auto;-webkit-overflow-scrolling:touch}
.onboarding-terms-btn{margin:0 18px 18px;padding:14px;border:none;border-radius:14px;background:var(--green);color:#10140d;font:inherit;font-size:14px;font-weight:900;cursor:pointer}

/* Toggle switch */
.toggle{width:44px;height:24px;border-radius:12px;background:rgba(255,255,255,.12);border:none;cursor:pointer;position:relative;transition:background .2s;flex-shrink:0;padding:0}
.toggle.on{background:var(--green)}
.toggle-knob{width:18px;height:18px;border-radius:50%;background:#fff;position:absolute;top:3px;left:3px;transition:transform .2s;box-shadow:0 1px 3px rgba(0,0,0,.3)}
.toggle.on .toggle-knob{transform:translateX(20px)}

/* Username change */
.settings-username-form{margin-top:8px;display:none}
.settings-username-form.open{display:block}
.settings-cooldown{font-size:10px;color:rgba(239,68,68,.7);font-weight:600;margin-top:4px}

/* Profile role segmented toggle */
.role-toggle{display:flex;gap:6px;background:rgba(255,255,255,.04);border:1px solid var(--border);border-radius:10px;padding:4px}
.role-toggle-opt{flex:1;background:transparent;border:none;color:var(--text3);font-family:inherit;font-size:12px;font-weight:800;padding:9px 8px;border-radius:7px;cursor:pointer;transition:background .15s,color .15s;letter-spacing:.02em;white-space:nowrap}
.role-toggle-opt.on{background:var(--profile-accent,var(--green));color:#0a1810}
.profile-role-wrap{min-height:38px;display:flex;align-items:center}
.profile-role-toggle{height:26px;gap:0;padding:3px;border:0;border-radius:999px;background:rgba(11,38,28,.35)}
.profile-role-toggle .role-toggle-opt{height:20px;padding:0 10px;border-radius:999px;font-size:8px;line-height:20px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:#fff}
.profile-role-toggle .role-toggle-opt.on{background:var(--green);color:#12311f}

/* ── Splash Screen ── */
#splash{position:fixed;inset:0;background:var(--bg);display:flex;align-items:center;justify-content:center;z-index:12000;transition:opacity .3s ease}
#splash.splash-out{opacity:0;pointer-events:none}
.splash-glow{position:absolute;border-radius:50%;pointer-events:none}
.splash-glow--tr{width:350px;height:350px;top:-100px;right:-100px;background:radial-gradient(circle,rgba(167,238,67,.055) 0%,rgba(167,238,67,0) 70%)}
.splash-glow--bl{width:280px;height:280px;bottom:-80px;left:-80px;background:radial-gradient(circle,rgba(20,99,253,.055) 0%,rgba(20,99,253,0) 70%)}
.splash-center{position:relative;display:flex;align-items:center;justify-content:center}
.splash-logo-glow{position:absolute;width:280px;height:280px;border-radius:50%;background:radial-gradient(ellipse,rgba(167,238,67,.28) 0%,rgba(167,238,67,0) 70%);animation:splash-glow-pulse .7s ease-out forwards}
@keyframes splash-glow-pulse{0%{transform:scale(.4);opacity:0}60%{transform:scale(1.15);opacity:1}100%{transform:scale(1);opacity:1}}
.splash-logo{position:relative;z-index:1;width:180px;height:180px;object-fit:contain;filter:drop-shadow(0 0 28px rgba(167,238,67,.4));animation:splash-logo-in .5s ease-out forwards}
@keyframes splash-logo-in{0%{transform:scale(.7);opacity:0}100%{transform:scale(1);opacity:1}}

/* Landing (logged out perfil) — Figma Onboarding 1 */
.pfl-landing{position:relative;min-height:calc(100dvh - 90px);display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;background:var(--bg)}
.pfl-glow{position:absolute;border-radius:50%;pointer-events:none}
.pfl-glow--tr{width:350px;height:350px;top:-100px;right:-100px;background:radial-gradient(circle,rgba(167,238,67,.055) 0%,rgba(167,238,67,0) 70%)}
.pfl-glow--bl{width:280px;height:280px;bottom:-80px;left:-80px;background:radial-gradient(circle,rgba(20,99,253,.055) 0%,rgba(20,99,253,0) 70%)}
.pfl-center{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;padding:48px 32px 40px;width:100%;max-width:420px;gap:0}
.pfl-logo-glow{position:absolute;top:-20px;left:50%;transform:translateX(-50%);width:320px;height:200px;background:radial-gradient(ellipse,rgba(167,238,67,.22) 0%,rgba(167,238,67,0) 70%);pointer-events:none}
.pfl-logo{position:relative;z-index:1;margin-bottom:32px;flex-shrink:1;min-height:0;display:flex;align-items:center;justify-content:center}
.pfl-logo img{width:auto;max-width:120px;height:auto;max-height:min(120px,18vh);object-fit:contain;filter:drop-shadow(0 0 28px rgba(167,238,67,.35))}
.pfl-logo .onboarding-logo-frame{display:flex;align-items:center;justify-content:center}
.pfl-logo .onboarding-logo-img{margin:0 auto}
.pfl-title{font-size:30px;font-weight:800;color:#fff;letter-spacing:-.6px;line-height:1.2;margin-bottom:12px;flex-shrink:0}
.pfl-title span{color:var(--green)}
.pfl-sub{font-size:15px;font-weight:500;color:rgba(255,255,255,.45);line-height:1.6;margin-bottom:36px;flex-shrink:0}
.pfl-cta-btn{width:100%;padding:17px;background:var(--green);color:#142029;border:none;border-radius:8px;font-family:'Plus Jakarta Sans',sans-serif;font-size:15px;font-weight:800;cursor:pointer;letter-spacing:-.1px;transition:opacity .15s;flex-shrink:0}
.pfl-cta-btn:active{opacity:.85}
.pfl-login-link{margin-top:24px;text-align:center;font-size:13px;font-weight:600;color:rgba(255,255,255,.35);flex-shrink:0}
.pfl-login-link span{color:var(--green);text-decoration:underline;cursor:pointer;font-weight:700}
.community-sec{width:100%;margin-top:12px}

/* Motion polish */
@keyframes cona-rise{from{opacity:0;transform:translate3d(0,12px,0) scale(.985)}to{opacity:1;transform:translate3d(0,0,0) scale(1)}}
@keyframes cona-soft-pop{0%{transform:scale(.96)}70%{transform:scale(1.025)}100%{transform:scale(1)}}
@keyframes cona-fade-up{from{opacity:0;transform:translate3d(0,18px,0)}to{opacity:1;transform:translate3d(0,0,0)}}
@keyframes cona-sheet-up{from{opacity:0;transform:translate3d(0,18px,0)}to{opacity:1;transform:translate3d(0,0,0)}}

.game-card,
.resultado-card,
.hist-item,
.wa-banner,
.conf-card,
.reserve-card,
.crear-card,
.jdm,
.fc-norm-item,
.fc-scale-item,
.settings-row,
.inbox-msg-card,
.req-team-card,
.plist-card,
.banca-info,
.credit-exit-card,
.org-setup-card,
.org-grid-player,
.org-grid-circle,
.org-action-tile,
.org-bench-row,
.org-ib-btn{
    transition:transform var(--motion-med) var(--motion-ease),border-color var(--motion-med) var(--motion-ease),background-color var(--motion-med) var(--motion-ease),box-shadow var(--motion-med) var(--motion-ease),opacity var(--motion-med) var(--motion-ease);
}

.share-btn,
.join-pill,
.sub-btn,
.req-confirm-btn,
.req-join-btn,
.pos-btn,
.pay-check,
.terms-check,
.toggle,
.pfl-cta-btn,
.fc-entry-btn,
.fc-feedback-btn,
.gt-more-btn,
.credit-exit-primary,
.credit-exit-secondary,
.onboarding-terms-btn,
.role-toggle-opt,
.back-btn{
    transition:transform var(--motion-fast) var(--motion-ease),background-color var(--motion-med) var(--motion-ease),border-color var(--motion-med) var(--motion-ease),color var(--motion-med) var(--motion-ease),opacity var(--motion-med) var(--motion-ease),box-shadow var(--motion-med) var(--motion-ease);
}

@media (hover:hover){
    .game-card:hover,
    .resultado-card:hover,
    .hist-item:hover,
    .wa-banner:hover,
    .crear-card:hover,
    .settings-row:hover,
    .inbox-msg-card:hover,
    .req-team-card:hover,
    .org-setup-card:hover{
        transform:translateY(-2px);
        border-color:rgba(167,238,67,.24);
        box-shadow:0 12px 28px rgba(0,0,0,.16);
    }
    .share-btn:hover,
    .join-pill:hover,
    .sub-btn:hover:not(:disabled),
    .req-confirm-btn:hover:not(:disabled),
    .req-join-btn:hover,
    .pos-btn:hover,
    .pay-check:hover,
    .fc-entry-btn:hover,
    .fc-feedback-btn:hover,
    .gt-more-btn:hover,
    .credit-exit-primary:hover:not(:disabled),
    .credit-exit-secondary:hover,
    .role-toggle-opt:hover,
    .back-btn:hover{
        transform:translateY(-1px);
    }
}

.game-card:active,
.resultado-card:active,
.hist-item:active,
.wa-banner:active,
.crear-card:active,
.settings-row:active,
.inbox-msg-card:active,
.req-team-card:active,
.org-setup-card:active{transform:scale(.985)}

.share-btn:active,
.join-pill:active,
.sub-btn:active:not(:disabled),
.req-confirm-btn:active:not(:disabled),
.req-join-btn:active,
.pos-btn:active,
.pay-check:active,
.terms-check:active,
.fc-entry-btn:active,
.fc-feedback-btn:active,
.gt-more-btn:active,
.credit-exit-primary:active:not(:disabled),
.credit-exit-secondary:active,
.role-toggle-opt:active,
.back-btn:active{transform:scale(.97)}

.screen.active .home-heading,
.screen.active .date-section,
.screen.active .games-sec,
.screen.active .resultado-sec,
.screen.active .goles-sec,
.screen.active .hub-header,
.screen.active .hub-section-label,
.screen.active .hub-list,
.screen.active .profile-wrap,
.screen.active .settings-hdr,
.screen.active .settings-section,
.screen.active .conf-wrap,
.screen.active .page-hdr,
.screen.active .stats-strip,
.screen.active .historial-sec,
.screen.active .terms-section,
.screen.active .fc-callout,
.screen.active .fc-norm-item,
.screen.active .admin-hdr,
.screen.active .admin-list{
    animation:cona-rise 320ms var(--motion-ease) both;
}

.screen.active .date-section{animation-delay:40ms}
.screen.active .games-sec,
.screen.active .resultado-sec,
.screen.active .hub-list,
.screen.active .settings-section,
.screen.active .historial-sec{animation-delay:70ms}
.screen.active .goles-sec,
.screen.active .admin-list{animation-delay:110ms}

.game-card,
.hist-item,
.scorer-row,
.pitem,
.req-player-row,
.gt-row,
.kt-row,
.alist > *,
.settings-row,
.inbox-msg-card,
.org-setup-card,
.org-bench-row{animation:cona-fade-up 260ms var(--motion-ease) both}

.game-card:nth-child(2),
.hist-item:nth-child(2),
.scorer-row:nth-child(2),
.pitem:nth-child(2),
.req-player-row:nth-child(2),
.gt-row:nth-child(2),
.kt-row:nth-child(2),
.alist > *:nth-child(2),
.settings-row:nth-child(2),
.inbox-msg-card:nth-child(2),
.org-setup-card:nth-child(2),
.org-bench-row:nth-child(2){animation-delay:35ms}

.game-card:nth-child(3),
.hist-item:nth-child(3),
.scorer-row:nth-child(3),
.pitem:nth-child(3),
.req-player-row:nth-child(3),
.gt-row:nth-child(3),
.kt-row:nth-child(3),
.alist > *:nth-child(3),
.settings-row:nth-child(3),
.inbox-msg-card:nth-child(3),
.org-setup-card:nth-child(3),
.org-bench-row:nth-child(3){animation-delay:70ms}

.game-card:nth-child(4),
.hist-item:nth-child(4),
.scorer-row:nth-child(4),
.pitem:nth-child(4),
.req-player-row:nth-child(4),
.gt-row:nth-child(4),
.kt-row:nth-child(4),
.alist > *:nth-child(4),
.settings-row:nth-child(4),
.inbox-msg-card:nth-child(4),
.org-setup-card:nth-child(4),
.org-bench-row:nth-child(4){animation-delay:105ms}

.game-card:nth-child(n+5),
.hist-item:nth-child(n+5),
.scorer-row:nth-child(n+5),
.pitem:nth-child(n+5),
.req-player-row:nth-child(n+5),
.gt-row:nth-child(n+5),
.kt-row:nth-child(n+5),
.alist > *:nth-child(n+5),
.settings-row:nth-child(n+5),
.inbox-msg-card:nth-child(n+5),
.org-setup-card:nth-child(n+5),
.org-bench-row:nth-child(n+5){animation-delay:130ms}

.date-chip.active,
.pos-btn.sel,
.pay-check.on,
.terms-check input:checked,
.req-team-card.selected,
.role-toggle-opt.on{animation:cona-soft-pop 240ms var(--motion-pop)}

.mini-bar-fill,
.ins-sfill,
.reg-fill,
.org-rp-stat-side,
.org-rp-cmp-bar{
    transition:width var(--motion-slow) var(--motion-ease),flex-basis var(--motion-slow) var(--motion-ease),box-shadow var(--motion-med) var(--motion-ease);
}
.mini-bar-fill,
.ins-sfill{box-shadow:0 0 14px rgba(167,238,67,.22)}

.credit-exit-overlay,
.onboarding-terms-overlay,
.onvo-overlay,
.avatar-crop-overlay{animation:cona-rise 180ms var(--motion-ease) both}
.credit-exit-sheet,
.onboarding-terms-sheet,
.onvo-sheet,
.avatar-crop-sheet{animation:cona-sheet-up 260ms var(--motion-ease) both}

.conf-icon,
.profile-avatar,
.rf-mvp-card,
.jdm-inner{animation:cona-soft-pop 320ms var(--motion-pop) both}
