:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#edf3ff;background:#090f1c;line-height:1.45}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 50% -10%,#1b2a43 0,#0b1220 42%,#070b13 100%);min-height:100vh}.app{width:min(1100px,92%);margin:auto;padding:30px 0 26px}.hero{display:flex;justify-content:space-between;gap:22px;align-items:center;margin-bottom:24px;padding:8px 2px}.brand{display:flex;align-items:center;gap:14px}.brand-mark{width:56px;height:56px;display:grid;place-items:center;color:#9eb5d6;flex:0 0 auto}.brand-mark svg{width:52px;height:52px}.eyebrow{font-size:10px;letter-spacing:.2em;color:#93a6c4;opacity:.82}.hero h1{font-size:clamp(27px,5.5vw,46px);letter-spacing:.055em;margin:5px 0 2px;line-height:1.05;font-weight:850;color:#f2f6ff}.hero h1 span{color:#91a9cb}.hero p,.section-head p{margin:0;color:#91a0b9;font-size:13px}.status{background:rgba(17,27,45,.75);border:1px solid #263852;padding:8px 12px;border-radius:999px;font-size:12px;white-space:nowrap;color:#bdc9dc}.status i{display:inline-block;width:7px;height:7px;background:#5ee39b;border-radius:50%;margin-right:7px}.panel{background:rgba(13,21,36,.84);border:1px solid #20304a;border-radius:18px;padding:20px;margin:15px 0;box-shadow:0 14px 40px rgba(0,0,0,.18)}.section-head{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:16px}.section-head h2{font-size:19px;margin:0 0 3px;font-weight:800}.step-title{letter-spacing:.01em}.step-1{color:#9fb8dc}.step-2{color:#b4a9df}.step-3{color:#c4a98d}.league-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}.league{display:flex;align-items:center;gap:11px;padding:13px 14px;border:1px solid #243754;background:#0f192b;color:#eaf0fb;border-radius:13px;text-align:left;cursor:pointer;transition:transform .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease}.league:hover,.league.active{border-color:#637da5;transform:translateY(-1px);background:#13213a;box-shadow:0 8px 20px rgba(0,0,0,.14)}.league.active{box-shadow:inset 0 0 0 1px rgba(150,180,225,.12),0 8px 20px rgba(0,0,0,.14)}.league-flag{width:27px;height:27px;display:grid;place-items:center;font-size:22px;line-height:1;flex:0 0 auto}.league-name{font-weight:700;font-size:14px}.match-list{display:grid;gap:10px}.match{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px;border:1px solid #223450;background:#0d1627;border-radius:13px}.teams{display:flex;align-items:center;gap:9px;font-weight:650}.teams img{width:28px;height:28px;object-fit:contain}.time{font-size:12px;color:#8999b3;margin-top:5px}.analyze{border:0;background:#637fae;color:#fff;font-weight:750;padding:10px 14px;border-radius:10px;cursor:pointer;transition:.15s}.analyze:hover{background:#7895c4;transform:translateY(-1px)}.ghost{border:1px solid #304563;background:transparent;color:#d6e0ef;border-radius:10px;padding:8px 11px;cursor:pointer}.hidden{display:none}.notice{padding:14px;border-radius:12px;background:#181b24;border:1px solid #35425a;color:#cbd4e4;margin-bottom:12px}.rate-limit-notice{border-color:#8a6b32;background:linear-gradient(180deg,#211d16,#181b24);color:#d9d4c8;line-height:1.6}.rate-limit-title{font-weight:850;color:#f0c76d;margin-bottom:3px}.analyze:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.analysis-top{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:18px;background:#101a2d;border-radius:15px;border:1px solid #273957}.analysis-top h3{font-size:21px;margin:0 0 2px}.badge{padding:9px 12px;border-radius:10px;background:#1c2944;color:#b8c9e5;font-weight:800}.best-prediction{position:relative;margin:14px 0;padding:2px;border-radius:15px;overflow:hidden;background:conic-gradient(from 0deg,#39e58b,#8dffbf,#24c879,#e0ffe9,#39e58b);background-size:200% 200%;animation:flow-border 3.2s linear infinite;box-shadow:0 0 20px rgba(53,224,133,.13)}.best-prediction::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.28),transparent);transform:translateX(-120%);animation:shine 2.8s ease-in-out infinite;pointer-events:none}.best-inner{position:relative;z-index:1;border-radius:13px;background:#123323;padding:15px 17px;display:flex;align-items:center;justify-content:space-between;gap:14px;color:#effff6}.best-label{font-size:10px;letter-spacing:.16em;font-weight:850;color:#86f1b5;margin-bottom:3px}.best-value{font-size:20px;font-weight:900}.best-signal-label{font-size:9px;letter-spacing:.11em;text-transform:uppercase;font-weight:800;color:#78dca5;margin-top:8px}.best-signal{font-size:11px;line-height:1.35;color:#b8d9c5;margin-top:2px;max-width:720px}.best-percent{font-size:21px;font-weight:900;color:#82f0b2}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:12px}.metric{padding:15px;background:#0d1627;border:1px solid #223450;border-radius:13px}.metric b{font-size:24px}.metric span{display:block;color:#8999b3;font-size:12px}.bars{margin-top:12px;display:grid;gap:9px}.barrow{display:grid;grid-template-columns:80px 1fr 45px;gap:9px;align-items:center;font-size:13px}.bar{height:9px;background:#1c2940;border-radius:20px;overflow:hidden}.bar i{display:block;height:100%;background:#718dbb;border-radius:20px}.insights{margin-top:14px;color:#aab6ca;font-size:13px}.form{margin-top:14px;display:grid;grid-template-columns:1fr 1fr;gap:10px}.form-card{padding:14px;border:1px solid #223450;border-radius:13px;background:#0d1627}.form-card h4{margin:0 0 6px}.form-card p{margin:3px 0;color:#94a3bb;font-size:13px}footer{text-align:center;color:#65748b;font-size:11px;padding:15px}@keyframes flow-border{0%{background-position:0% 50%;transform:translateZ(0)}50%{background-position:100% 50%}100%{background-position:0% 50%}}@keyframes shine{0%,18%{transform:translateX(-120%)}52%,100%{transform:translateX(120%)}}@media(prefers-reduced-motion:reduce){.best-prediction,.best-prediction::before{animation:none}}@media(max-width:650px){.app{width:min(94%,1100px);padding-top:22px}.hero{align-items:flex-start}.brand-mark{width:45px;height:45px}.brand-mark svg{width:44px;height:44px}.hero h1{font-size:27px}.hero p{font-size:12px}.status{display:none}.match{align-items:flex-start;flex-direction:column}.match .analyze{width:100%}.teams{font-size:14px}.metrics{grid-template-columns:1fr}.form{grid-template-columns:1fr}.lineup-grid{grid-template-columns:1fr}.analysis-top{align-items:flex-start;flex-direction:column}.barrow{grid-template-columns:70px 1fr 38px}.league-grid{grid-template-columns:1fr 1fr}.league{padding:12px}.league-flag{font-size:20px}.best-inner{padding:14px}.best-value{font-size:18px}}@media(max-width:390px){.league-grid{grid-template-columns:1fr}}

.byline{font-size:.78rem;letter-spacing:.06em;opacity:.68;margin-top:-.15rem;margin-bottom:.35rem}.byline sup{font-size:.62em;position:relative;top:-.18em;margin-left:.12rem}

.lineups{margin-top:14px;padding:14px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:rgba(255,255,255,.02)}.lineup-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px}.lineup-head h4{margin:0}.lineup-status{font-size:10px;letter-spacing:.08em;padding:5px 8px;border-radius:7px;background:#27344a;color:#aebbd0;font-weight:800}.lineup-status.available{background:#183d2b;color:#83e7ae}.lineup-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.lineup-card{padding:12px;border:1px solid #223450;border-radius:11px;background:#0d1627}.lineup-card>img{width:30px;height:30px;object-fit:contain;float:right}.lineup-team{display:flex;flex-direction:column;gap:2px;padding-right:34px}.lineup-team span,.coach{font-size:11px;color:#8797b0}.coach{margin-top:7px}.xi{margin-top:10px}.xi-title{font-size:11px;color:#91a2bc;font-weight:800;margin-bottom:5px}.player-row{display:flex;justify-content:space-between;gap:8px;padding:4px 0;border-top:1px solid rgba(255,255,255,.045);font-size:12px}.player-row small{color:#74849c}.lineup-note{margin-top:9px!important}
.availability{margin-top:14px;padding:14px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:rgba(255,255,255,.02)}.availability h4{margin:0 0 8px}.availability-list{display:grid;gap:7px}.availability-list div{font-size:13px;line-height:1.4}.availability-list span{display:block;opacity:.6;font-size:11px}.muted{opacity:.65;margin:0;font-size:13px}

/* Match Updates — compact official card */
.match-updates{margin-top:14px;padding:15px 16px;border:1px solid rgba(255,255,255,.10);border-radius:14px;background:rgba(13,21,36,.84)}
.updates-heading{display:inline-flex;align-items:center;padding:5px 9px;border:1px solid rgba(255,255,255,.28);border-radius:7px;color:#5ee39b;font-size:12px;font-weight:850;letter-spacing:.12em;margin-bottom:8px;background:rgba(255,255,255,.025)}
.update-item{padding:9px 0 8px;border-top:1px solid rgba(255,255,255,.055)}
.update-title{font-size:13px;line-height:1.38;font-weight:650;color:#e8eef8;display:block}
.update-source{display:inline-flex;vertical-align:-2px;margin-left:4px;width:13px;height:13px;align-items:center;justify-content:center;text-decoration:none}
.update-favicon{width:11px;height:11px;object-fit:contain;border-radius:2px;opacity:.9}
.update-source-dot{width:7px;height:7px;border-radius:50%;background:#8291a8;display:block}
.update-date{margin-top:3px;color:#6f7d91;font-size:9px;line-height:1.2}
.updates-empty{padding:5px 0 2px;color:#8492a7;font-size:11px}

/* Header credit: directly below the tool name, clearly separated from the description. */
.byline{display:block;text-align:left;margin:5px 0 12px;font-size:11px;line-height:1;color:#91a9cb;font-weight:650;letter-spacing:.035em;text-shadow:0 0 0.35px #d8c9ad;}
.byline sup{font-size:7px;vertical-align:super;margin-left:1px;color:#91a9cb;}
@media(max-width:650px){.byline{margin-top:5px;margin-bottom:11px;font-size:10px;}}

/* Match Updates loading indicator */
.loading-updates{display:flex;align-items:center;gap:8px;min-height:22px}
.loading-dots{display:inline-flex;align-items:center;gap:5px;height:14px}
.loading-dots i{display:block;width:7px;height:7px;border-radius:50%;animation:updates-wave 1.15s ease-in-out infinite;box-shadow:0 0 7px rgba(255,255,255,.12)}
.loading-dots i:nth-child(1){background:#5ee39b;animation-delay:0s}
.loading-dots i:nth-child(2){background:#63a4ff;animation-delay:.15s}
.loading-dots i:nth-child(3){background:#ffad4a;animation-delay:.30s}
.loading-dots i:nth-child(1){animation-name:updates-wave-green}
.loading-dots i:nth-child(2){animation-name:updates-wave-blue}
.loading-dots i:nth-child(3){animation-name:updates-wave-orange}
@keyframes updates-wave-green{0%,60%,100%{transform:translateY(0);opacity:.65}30%{transform:translateY(-5px);opacity:1}}
@keyframes updates-wave-blue{0%,60%,100%{transform:translateY(0);opacity:.65}30%{transform:translateY(-5px);opacity:1}}
@keyframes updates-wave-orange{0%,60%,100%{transform:translateY(0);opacity:.65}30%{transform:translateY(-5px);opacity:1}}
@media(prefers-reduced-motion:reduce){.loading-dots i{animation:none;opacity:.9}}

.market-signal{margin-top:10px;padding:8px 11px;border:1px solid #273957;border-radius:10px;background:#0d1627;color:#8798b2;font-size:11px}

/* V2.14 result hierarchy */
.result-section{margin-top:14px;padding:14px;border:1px solid #223450;border-radius:13px;background:#0b1424}
.result-heading{font-size:11px;letter-spacing:.13em;font-weight:850;color:#9aabc3;margin-bottom:10px}
.hierarchy{display:grid;gap:7px}.hierarchy .result-heading{margin-bottom:2px}.hierarchy-row{display:grid;grid-template-columns:35px 1fr 48px;align-items:center;gap:8px;padding:10px 11px;border:1px solid rgba(255,255,255,.055);border-radius:9px;background:#0d1627}.hierarchy-row .rank{color:#71839e;font-size:11px;font-weight:800}.hierarchy-market{font-size:13px;font-weight:700;color:#e6edf7}.hierarchy-row b{text-align:right;color:#a9b9d0}
.promising-prediction{margin:14px 0;padding:2px;border-radius:15px;background:linear-gradient(90deg,#f6a33b,#ffd08a,#f39a2e);box-shadow:0 0 18px rgba(246,163,59,.12)}.promising-inner{border-radius:13px;background:#2a2116;padding:14px 17px;color:#fff5e8}.promising-label{font-size:10px;letter-spacing:.16em;font-weight:850;color:#ffc16c;margin-bottom:3px}.promising-value{font-size:19px;font-weight:900}.promising-reason{font-size:10px;color:#bda98d;margin-top:4px}
.market-signal{display:grid;gap:4px;margin-top:14px;padding:10px 11px;border:1px solid #273957;border-radius:10px;background:#0d1627;color:#aab8cc;font-size:11px}.market-signal b{color:#d3deef;font-size:10px;letter-spacing:.12em}.market-signal small{color:#718099;font-size:9px}
@media(max-width:650px){.promising-inner{padding:13px 14px}.promising-value{font-size:17px}.result-section{padding:12px}.hierarchy-row{grid-template-columns:32px 1fr 44px}}

/* Private admin panel */
/* Private admin panel */
.admin-app{max-width:1050px;margin:0 auto;padding:28px 16px 60px}.admin-header{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:18px}.admin-header h1{margin:4px 0 2px;font-size:28px;letter-spacing:.5px}.admin-header h1 span{font-weight:700}.admin-header p{margin:0;color:#68736d}.eyebrow{font-size:11px;letter-spacing:1.5px;color:#8a6f4f;font-weight:700}.admin-home{padding:9px 12px;border:1px solid #d9d4cb;border-radius:9px;text-decoration:none;color:#33423a;background:#fff}.admin-card{background:rgba(255,255,255,.92);border:1px solid #e1ded8;border-radius:16px;padding:18px;box-shadow:0 6px 20px rgba(0,0,0,.05);margin-bottom:16px}.admin-card h2{margin:0 0 6px}.admin-card p{color:#68736d}.admin-row{display:flex;gap:8px}.admin-row input,.admin-grid input,.admin-grid select,.hierarchy-edit select,.hierarchy-edit input{width:100%;box-sizing:border-box;padding:11px;border:1px solid #d9ded9;border-radius:9px;background:#fff;color:#253129}.admin-row button,.admin-actions button{border:0;border-radius:9px;padding:10px 14px;font-weight:700;cursor:pointer;background:#47795d;color:#fff}.admin-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:12px}.admin-actions span{font-size:13px;color:#66716b}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.admin-grid-5{grid-template-columns:repeat(5,1fr)}.admin-grid label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:700;color:#4d5a53}.admin-toolbar{display:flex;justify-content:space-between;align-items:center;gap:10px}.ghost{background:#f4f5f3!important;color:#3f4c45!important;border:1px solid #d9ded9!important}.danger{background:#a94d4d!important}.admin-result{margin-top:12px;padding:12px;border-radius:10px;background:#f5f7f4;border:1px solid #e1e6e0;font-size:13px;line-height:1.5}.admin-section{border-top:1px solid #e7e5e0;margin-top:18px;padding-top:16px}.admin-section h3{margin:0 0 12px;font-size:16px;color:#3d6650}.admin-note{font-size:12px;color:#7a817c;margin-top:8px}.admin-error{color:#a94d4d;margin-top:8px;font-size:13px}.hidden{display:none!important}.hierarchy-edit{display:grid;grid-template-columns:1fr;gap:8px}.hierarchy-edit>div{display:grid;grid-template-columns:38px 1fr 120px;gap:8px;align-items:center}.hierarchy-edit b{color:#5e6c64}.checkline{display:flex;align-items:center;gap:8px;font-weight:700;color:#4d5a53}.checkline input{width:18px;height:18px}.override-list,.audit-list{display:grid;gap:7px}.override-item,.audit-item{padding:9px 11px;border:1px solid #e4e5e2;border-radius:9px;background:#fafbf9;font-size:12px}.override-item{display:flex;justify-content:space-between;gap:10px}.override-item span,.audit-item span{color:#68736d}.audit-item{display:grid;grid-template-columns:1fr auto;gap:2px 12px}.audit-item small{grid-column:1/-1;color:#7a817c}@media(max-width:760px){.admin-grid,.admin-grid-5{grid-template-columns:1fr 1fr}.admin-header{flex-direction:column}.admin-row{flex-direction:column}.hierarchy-edit>div{grid-template-columns:32px 1fr 90px}}@media(max-width:480px){.admin-grid,.admin-grid-5{grid-template-columns:1fr}}

/* V2.23 Design Control tokens — values are safely supplied by the design API. */
:root{--d-page-bg:#090f1c;--d-panel-bg:#0d1524;--d-card-bg:#0d1627;--d-primary:#637fae;--d-primary-hover:#7895c4;--d-heading:#f2f6ff;--d-accent:#91a9cb;--d-text:#edf3ff;--d-muted:#91a0b9;--d-border:#20304a;--d-best:#39e58b;--d-promising:#f6a33b;--d-hierarchy:#9aabc3;--d-radius:18px;--d-button-radius:10px;--d-app-width:1100px;--d-panel-padding:20px;--d-section-gap:15px;--d-heading-size:19px;--d-body-size:13px}
body{background:var(--d-page-bg);font-size:var(--d-body-size)}.app{width:min(var(--d-app-width),92%)}.panel{background:var(--d-panel-bg);border-color:var(--d-border);border-radius:var(--d-radius);padding:var(--d-panel-padding);margin:var(--d-section-gap) 0}.hero h1{color:var(--d-heading)}.hero h1 span{color:var(--d-accent)}.hero p,.section-head p{color:var(--d-muted)}.section-head h2{font-size:var(--d-heading-size)}.league{background:var(--d-card-bg);border-color:var(--d-border);border-radius:var(--d-button-radius);color:var(--d-text)}.league:hover,.league.active{background:var(--d-card-bg);border-color:var(--d-primary)}.match{background:var(--d-card-bg);border-color:var(--d-border);border-radius:var(--d-button-radius)}.analyze{background:var(--d-primary);border-radius:var(--d-button-radius)}.analyze:hover{background:var(--d-primary-hover)}.ghost{border-color:var(--d-border);border-radius:var(--d-button-radius)}.analysis-top{background:var(--d-card-bg);border-color:var(--d-border);border-radius:var(--d-radius)}.best-prediction{background:var(--d-best)}.promising-prediction{background:var(--d-promising)}.result-section{background:var(--d-panel-bg);border-color:var(--d-border);border-radius:calc(var(--d-radius) - 5px)}.result-heading{color:var(--d-hierarchy)}.hierarchy-row{background:var(--d-card-bg);border-color:var(--d-border);border-radius:var(--d-button-radius)}.hierarchy-row b{color:var(--d-accent)}.update-title{color:var(--d-text)}.updates-heading{color:var(--d-best)}

/* Disclaimer +18 — footer notice */
footer{padding:0}
.disclaimer{display:flex;align-items:flex-start;gap:10px;text-align:left;max-width:720px;margin:0 auto 10px;padding:12px 14px;border:1px solid rgba(255,77,79,.35);border-radius:12px;background:rgba(255,77,79,.06)}
.disclaimer-icon{width:26px;height:26px;flex:0 0 auto;margin-top:1px}
.disclaimer span{font-size:11.5px;line-height:1.6;color:#e7c9ca}
.footer-credit{text-align:center;color:#65748b;font-size:11px;padding:15px 0}
@media(max-width:650px){.disclaimer{margin:0 12px 10px;padding:11px 12px}.disclaimer span{font-size:11px}}

/* AI Summary — clearly labeled, visually distinct from the statistical model output */
.ai-summary{margin:0 0 10px;padding:10px 12px;border:1px solid rgba(99,220,190,.30);border-radius:10px;background:rgba(99,220,190,.06)}
.ai-summary-badge{display:inline-block;font-size:9px;letter-spacing:.12em;font-weight:850;color:#63dcbe;border:1px solid rgba(99,220,190,.4);border-radius:6px;padding:2px 6px;margin-bottom:6px}
.ai-summary p{margin:6px 0 0;font-size:12px;line-height:1.55;color:#dbeee8}

/* Language slide selector (8 languages) */
.header-right{display:flex;align-items:center;gap:10px}
.lang-select{position:relative}
.lang-trigger{display:flex;align-items:center;gap:7px;border:1px solid #304563;border-radius:999px;background:transparent;color:#cfe0ff;font-size:12px;font-weight:750;padding:6px 11px;cursor:pointer;letter-spacing:.03em}
.lang-trigger:hover{border-color:#4a6da8}
.lang-caret{font-size:9px;opacity:.65;transition:transform .18s ease}
.lang-select.open .lang-caret{transform:rotate(180deg)}
.lang-menu{position:absolute;top:calc(100% + 8px);right:0;min-width:190px;background:#101a2c;border:1px solid #304563;border-radius:14px;padding:6px;margin:0;list-style:none;box-shadow:0 16px 34px rgba(0,0,0,.4);z-index:50;
  opacity:0;transform:translateY(-6px) scale(.97);pointer-events:none;transition:opacity .16s ease,transform .16s ease;max-height:340px;overflow:auto}
.lang-select.open .lang-menu{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}
.lang-menu li{list-style:none}
.lang-option{display:flex;align-items:center;gap:9px;width:100%;padding:8px 10px;border:0;background:transparent;color:#cfe0ff;font-size:13px;border-radius:9px;cursor:pointer;text-align:left}
.lang-option:hover{background:#1b2942}
.lang-option.active{background:#243652;font-weight:750}
.lang-option .lang-flag{font-size:15px;line-height:1}
.lang-option .check{margin-left:auto;color:#63dcbe;font-weight:800}
[dir="rtl"] .lang-menu{right:auto;left:0}
[dir="rtl"] .lang-option{text-align:right}
[dir="rtl"] .lang-option .check{margin-left:0;margin-right:auto}
[dir="rtl"] .hero{flex-direction:row-reverse}
[dir="rtl"] .header-right{flex-direction:row-reverse}
[dir="rtl"] .section-head{flex-direction:row-reverse}
[dir="rtl"] .brand{flex-direction:row-reverse}
[dir="rtl"] .disclaimer{flex-direction:row-reverse;text-align:right}
[dir="rtl"] .match{flex-direction:row-reverse}
[dir="rtl"] .teams{flex-direction:row-reverse}
[dir="rtl"] .barrow{direction:ltr}
@media(max-width:650px){.header-right{flex-direction:column;align-items:flex-end;gap:6px}}
.fun-correct-score{margin:14px 0;padding:2px;border-radius:15px;background:linear-gradient(90deg,#e5484d,#ff7a7f,#d92d35,#ff8a8f,#e5484d);box-shadow:0 0 18px rgba(229,72,77,.13)}
.fun-score-inner{border-radius:13px;background:#321719;padding:14px 17px;color:#fff1f1}
.fun-score-label{font-size:10px;letter-spacing:.16em;font-weight:850;color:#ff8b90;margin-bottom:3px}
.fun-score-value{font-size:22px;font-weight:900;letter-spacing:.03em}
.fun-score-note{font-size:10px;color:#cfa3a5;margin-top:4px;font-style:italic}

.locked-feature{position:relative;min-height:230px;border:1px solid #263852;border-radius:14px;overflow:hidden;background:#0d1627}.locked-content{position:absolute;inset:0;padding:28px;filter:blur(8px);opacity:.9;transform:scale(1.03);color:#b9c5d6}.locked-lines{display:grid;gap:18px;font-size:15px;font-weight:700}.locked-lines div{padding:16px;border:1px solid #30415c;border-radius:10px;background:#111d31}.locked-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:rgba(7,13,23,.24);text-align:center}.lock-icon{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:#16243a;border:1px solid #536985;font-size:22px;box-shadow:0 8px 24px rgba(0,0,0,.25)}.locked-title{margin-top:10px;font-size:10px;letter-spacing:.14em;font-weight:850;color:#c7d4e7}.locked-cta{margin-top:5px;color:#fff;text-decoration:none;font-size:14px;font-weight:850}.locked-cta:hover{text-decoration:underline}.analysis-actions{display:flex;justify-content:flex-end;margin:-8px 0 8px}.save-match-btn{border:1px solid #36506f;background:#101a2d;color:#d9e4f4;border-radius:9px;padding:8px 12px;font-weight:750;cursor:pointer}.save-match-btn:hover,.save-match-btn.saved{border-color:#4f9d7c;color:#9bf0c0}.save-match-btn:disabled{opacity:.55;cursor:wait}

/* V2.56 Fantasy Feature #1 — Top Fantasy Picks */
.fantasy-panel{border-color:rgba(99,127,174,.45)}
.fantasy-title{color:#63dcbe!important}
.fantasy-card{border:1px solid #20304a;border-radius:14px;background:#0d1627;padding:14px}
.fantasy-card-head{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-bottom:12px}
.fantasy-card-head h3{margin:0 0 4px;color:#edf3ff;font-size:16px}.fantasy-card-head p{margin:0;color:#91a0b9;font-size:12px}
.fantasy-load{border:1px solid #47795d;background:#173126;color:#baf4d8;border-radius:9px;padding:9px 13px;font-weight:800;cursor:pointer;white-space:nowrap}.fantasy-load:hover{background:#1d3d2f}.fantasy-load:disabled{opacity:.55;cursor:wait}
.fantasy-empty{padding:18px;text-align:center;color:#91a0b9;font-size:12px;border:1px dashed #30415c;border-radius:10px}.fantasy-error{color:#ff9a9f}
.fantasy-meta{display:flex;justify-content:space-between;gap:10px;align-items:center;margin:2px 0 10px;color:#91a0b9;font-size:11px}.fantasy-meta b{color:#63dcbe}
.fantasy-list{display:grid;gap:7px}.fantasy-player{display:grid;grid-template-columns:36px minmax(150px,1.6fr) 92px 72px minmax(145px,1fr);gap:10px;align-items:center;padding:10px;border:1px solid #20304a;border-radius:10px;background:#101a2c}.fantasy-rank{font-size:13px;font-weight:900;color:#63dcbe}.fantasy-player-name{font-size:13px;font-weight:850;color:#edf3ff}.fantasy-player-sub{margin-top:3px;font-size:10px;color:#91a0b9}.fantasy-stat{display:flex;flex-direction:column;gap:2px}.fantasy-stat b{font-size:12px;color:#edf3ff}.fantasy-stat span{font-size:9px;color:#71819b;text-transform:uppercase;letter-spacing:.05em}.fantasy-stat.fixture b{font-size:11px}.fantasy-stat.fixture span{text-transform:none;letter-spacing:0}
@media(max-width:760px){.fantasy-card-head{align-items:flex-start;flex-direction:column}.fantasy-load{width:100%}.fantasy-player{grid-template-columns:28px minmax(120px,1fr) 72px 64px}.fantasy-player .fixture{grid-column:2/-1}.fantasy-meta{align-items:flex-start;flex-direction:column}}

/* V2.57 Fantasy mode tabs + Best Captain */
.mode-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:0 0 15px;padding:5px;border:1px solid #20304a;border-radius:14px;background:#0c1525;position:sticky;top:8px;z-index:10;box-shadow:0 8px 24px rgba(0,0,0,.14)}
.mode-tab{border:1px solid transparent;background:transparent;color:#8fa0ba;border-radius:10px;padding:12px 14px;font-weight:850;font-size:12px;letter-spacing:.02em;cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease}.mode-tab:hover{color:#dfe8f6;background:#111d31}.mode-tab.active{color:#eef5ff;background:#172640;border-color:#365275;box-shadow:inset 0 0 0 1px rgba(255,255,255,.025)}.mode-view{display:none}.mode-view.active{display:block}.fantasy-card+.fantasy-card{margin-top:12px}.captain-feature{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:15px;border:1px solid #294a45;border-radius:12px;background:linear-gradient(135deg,#102b28,#101a2c)}.captain-main{display:flex;align-items:center;gap:12px}.captain-badge{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#183d36;border:1px solid #3c907a;color:#9ff0d4;font-weight:950}.captain-name{font-size:18px;font-weight:900;color:#effff8}.captain-sub{font-size:11px;color:#8fa8a0;margin-top:3px}.captain-points{text-align:right}.captain-points b{display:block;font-size:22px;color:#8ff0c7}.captain-points span{font-size:9px;color:#71819b;text-transform:uppercase}.captain-reason{margin-top:10px;padding:10px 12px;border:1px solid #223450;border-radius:10px;color:#a9b8ca;font-size:12px;background:#0e1728}.captain-reason b{color:#dce7f4}.captain-alt{margin-top:8px;padding:9px 12px;border-radius:10px;background:#111b2d;color:#8f9eb4;font-size:11px}.captain-alt b{color:#dbe5f2;margin-left:5px}.captain-note{justify-content:flex-start!important;margin-top:8px}
@media(max-width:650px){.mode-tabs{top:4px}.mode-tab{padding:11px 7px;font-size:10px}.captain-feature{align-items:flex-start}.captain-name{font-size:16px}.captain-points b{font-size:19px}}

/* V2.58 Fantasy Feature #3 — Transfer Assistant */
.transfer-group+.transfer-group{margin-top:14px}.transfer-group h4{margin:0 0 7px;color:#dce7f4;font-size:12px}.transfer-list{display:grid;gap:7px}.transfer-player{display:grid;grid-template-columns:28px minmax(150px,1.6fr) 92px minmax(145px,1fr);gap:10px;align-items:center;padding:10px;border:1px solid #20304a;border-radius:10px;background:#101a2c}.transfer-player .fixture b{font-size:11px}@media(max-width:650px){.transfer-player{grid-template-columns:28px minmax(120px,1fr) 72px}.transfer-player .fixture{grid-column:2/-1}}
/* V2.59 Fantasy Edge extensions */
.fixture-planner-list{display:grid;gap:8px}.fixture-team{display:grid;grid-template-columns:28px minmax(150px,1fr) minmax(260px,2fr);gap:10px;align-items:center;padding:10px;border:1px solid #20304a;border-radius:10px;background:#101a2c}.fixture-team-main{min-width:0}.fixture-run{display:flex;flex-wrap:wrap;gap:5px}.fixture-run span{padding:5px 7px;border-radius:7px;font-size:10px;color:#dfe8f6;background:#1a2740;border:1px solid #2d405f}.fixture-run .fdr-1{border-color:#4c9b72;background:#173527}.fixture-run .fdr-2{border-color:#477f68}.fixture-run .fdr-3{border-color:#3b4c69}.fixture-run .fdr-4{border-color:#80624a;background:#302419}.fixture-run .fdr-5{border-color:#8b4d55;background:#351d22}.risk-player{display:grid;grid-template-columns:28px minmax(150px,1.6fr) 72px 86px minmax(190px,1.4fr);gap:10px;align-items:center;padding:10px;border:1px solid #20304a;border-radius:10px;background:#101a2c}.risk-badge{font-size:9px;font-weight:900;text-align:center;padding:5px 6px;border-radius:7px;border:1px solid #3b4b63}.risk-high{color:#ffb0b4;border-color:#75434a;background:#321d22}.risk-medium{color:#f1cf8b;border-color:#755e38;background:#302817}.risk-low{color:#a7e6c8;border-color:#3c705a;background:#183127}.risk-reasons{display:flex;flex-wrap:wrap;gap:5px}.risk-reasons span{font-size:9px;color:#91a0b9;padding:4px 6px;border-radius:6px;background:#151f32;border:1px solid #273851}@media(max-width:760px){.fixture-team{grid-template-columns:28px 1fr}.fixture-run{grid-column:2/-1}.risk-player{grid-template-columns:28px minmax(120px,1fr) 68px}.risk-player .fantasy-stat{grid-column:2}.risk-reasons{grid-column:2/-1}}
/* Fantasy Edge Engine */
.edge-engine-card{border-color:#31556a}.edge-list{display:grid;gap:8px}.edge-player{display:grid;grid-template-columns:28px minmax(180px,1.7fr) 62px 100px minmax(150px,1.2fr);gap:10px;align-items:center;padding:11px;border:1px solid #20304a;border-radius:10px;background:#101a2c}.edge-rank{font-weight:900;color:#63dcbe}.edge-name{font-size:13px;font-weight:900;color:#edf3ff}.edge-sub{margin-top:3px;font-size:10px;color:#91a0b9}.edge-reason{margin-top:6px;font-size:10px;color:#9aa9bc}.edge-reason b{color:#dce7f4}.edge-score{text-align:center}.edge-score b{display:block;font-size:17px;color:#8ff0c7}.edge-score span{font-size:8px;color:#71819b;text-transform:uppercase}.edge-decision{text-align:center;font-size:9px;font-weight:950;padding:7px 5px;border-radius:7px;letter-spacing:.03em}.edge-strong{color:#a7e6c8;background:#183127;border:1px solid #3c705a}.edge-watch{color:#f1cf8b;background:#302817;border:1px solid #755e38}.edge-avoid{color:#ffb0b4;background:#321d22;border:1px solid #75434a}.edge-alt{display:flex;flex-direction:column;gap:2px;font-size:9px;color:#71819b}.edge-alt b{font-size:11px;color:#dce7f4}.edge-alt small{color:#63dcbe}@media(max-width:760px){.edge-player{grid-template-columns:28px minmax(130px,1fr) 58px}.edge-decision{grid-column:2}.edge-alt{grid-column:2/-1}.edge-score{grid-column:3}}
