
/* V20.10.10 phase 4: derived season narrative, title race and milestone UI. */
.v20110-story{display:grid;gap:9px;border:1px solid rgba(255,255,255,.10);border-radius:5px;background:linear-gradient(180deg,rgba(26,38,53,.96),rgba(8,14,23,.98));overflow:hidden;}
.v20110-story-home{padding:11px;margin-top:0;}.v20110-story-league{padding:13px;margin-top:12px;border-top:3px solid #d0aa50;}
.v20110-story-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.09);}
.v20110-story-head small{display:block;color:#d7b760;font-size:8px;font-weight:1000;letter-spacing:.14em;}.v20110-story-head h3{margin:3px 0 0;color:#fff;font-size:16px;line-height:1.15;}.v20110-story-head p{margin:4px 0 0;color:#91a0b3;font-size:9px;line-height:1.45;}
.v20110-phase{flex:0 0 auto;display:inline-flex;align-items:center;min-height:25px;padding:4px 8px;border:1px solid rgba(102,177,255,.30);border-radius:999px;background:rgba(38,91,150,.22);color:#b9d9ff;font-size:8px;font-weight:1000;}.v20110-phase.late{border-color:rgba(255,197,91,.35);background:rgba(122,74,9,.24);color:#ffe09a;}.v20110-phase.complete{border-color:rgba(99,225,153,.35);background:rgba(24,105,65,.24);color:#a5f0c2;}
.v20110-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;}.v20110-kpi{min-width:0;padding:8px;border:1px solid rgba(255,255,255,.07);background:rgba(0,0,0,.17);text-align:center;}.v20110-kpi small{display:block;color:#8393a7;font-size:8px;font-weight:900;}.v20110-kpi b{display:block;margin-top:3px;color:#fff;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.v20110-kpi.hot b{color:#ffdf82;}.v20110-kpi.good b{color:#91ebba;}.v20110-kpi.bad b{color:#ff9da4;}
.v20110-story-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(240px,.9fr);gap:8px;}.v20110-panel{min-width:0;padding:9px;border:1px solid rgba(255,255,255,.07);background:rgba(0,0,0,.14);}
.v20110-panel-title{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:7px;}.v20110-panel-title b{color:#e8c86e;font-size:10px;}.v20110-panel-title span{color:#8191a5;font-size:8px;font-weight:900;}
.v20110-news-list{display:grid;gap:5px;}.v20110-news{display:grid;grid-template-columns:34px minmax(0,1fr);gap:7px;align-items:start;padding:7px;border-left:3px solid #4b6685;background:rgba(255,255,255,.035);}.v20110-news.hot{border-left-color:#d8ad4b;}.v20110-news.good{border-left-color:#4fbd7e;}.v20110-news.bad{border-left-color:#d75a66;}.v20110-news em{font-style:normal;color:#8fa0b3;font-size:7px;font-weight:1000;letter-spacing:.06em;}.v20110-news strong{display:block;color:#eef4fb;font-size:10px;line-height:1.25;}.v20110-news span{display:block;margin-top:2px;color:#94a3b5;font-size:8px;line-height:1.35;}
.v20110-race-list{display:grid;gap:5px;}.v20110-race{padding:7px;border:1px solid rgba(255,255,255,.06);background:rgba(255,255,255,.025);}.v20110-race-top{display:grid;grid-template-columns:58px minmax(0,1fr) auto;gap:6px;align-items:center;}.v20110-race-top small{color:#9aa9bc;font-size:8px;font-weight:900;}.v20110-race-top strong{min-width:0;color:#fff;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.v20110-race-top b{color:#f4d476;font-size:9px;white-space:nowrap;}.v20110-race-bar{display:block;height:5px;margin-top:5px;border-radius:999px;background:#121b27;overflow:hidden;}.v20110-race-bar i{display:block;width:var(--p,0%);height:100%;background:linear-gradient(90deg,#3d74aa,#f0c95d);}.v20110-race-meta{display:flex;justify-content:space-between;gap:7px;margin-top:4px;color:#7f90a5;font-size:7px;}.v20110-race.contender{border-color:rgba(255,207,87,.20);background:rgba(104,67,10,.10);}
.v20110-milestones{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;}.v20110-milestone{min-width:0;padding:7px;border:1px solid rgba(255,255,255,.06);background:rgba(255,255,255,.025);}.v20110-milestone small{display:block;color:#8e9eb1;font-size:7px;font-weight:900;}.v20110-milestone strong{display:block;margin-top:2px;color:#fff;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.v20110-milestone span{display:block;margin-top:3px;color:#d8bd6a;font-size:8px;}.v20110-milestone i{display:block;height:4px;margin-top:5px;border-radius:999px;background:linear-gradient(90deg,#4fb77c var(--p,0%),#131d29 var(--p,0%));font-style:normal;}.v20110-milestone.achieved{border-color:rgba(91,219,144,.22);}
.v20110-actions{display:flex;gap:6px;flex-wrap:wrap;}.v20110-actions button{min-height:31px;padding:6px 9px;border:1px solid #536277;border-radius:3px;background:linear-gradient(180deg,#2d3b4e,#151e2a);color:#fff;font-size:9px;font-weight:1000;}.v20110-actions button.primary{border-color:#c6a04a;background:linear-gradient(180deg,#aa2a39,#650f18);}
.v20110-empty{padding:12px;border:1px dashed rgba(255,255,255,.13);color:#91a1b4;font-size:9px;line-height:1.55;text-align:center;}
.v20110-story-league .v20110-story-grid{grid-template-columns:minmax(0,1.12fr) minmax(280px,.88fr);}.v20110-story-league .v20110-news strong{font-size:11px;}.v20110-story-league .v20110-news span{font-size:9px;}.v20110-story-league .v20110-race-top{grid-template-columns:66px minmax(0,1fr) auto;}.v20110-story-league .v20110-milestones{grid-template-columns:repeat(3,minmax(0,1fr));}
@media(max-width:760px){.v20110-story-grid,.v20110-story-league .v20110-story-grid{grid-template-columns:1fr;}.v20110-story-home{padding:9px;}.v20110-story-head h3{font-size:15px;}.v20110-kpis{grid-template-columns:repeat(3,minmax(0,1fr));}.v20110-kpi{padding:7px 3px;}.v20110-kpi b{font-size:12px;}.v20110-milestones,.v20110-story-league .v20110-milestones{grid-template-columns:repeat(2,minmax(0,1fr));}.v20110-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));}.v20110-actions button{min-width:0;padding:6px 3px;}.v20110-race-top{grid-template-columns:52px minmax(0,1fr) auto;}}
@media(max-width:390px){.v20110-kpis{grid-template-columns:1fr 1fr;}.v20110-kpi:last-child{grid-column:1/-1;}.v20110-milestones,.v20110-story-league .v20110-milestones{grid-template-columns:1fr;}.v20110-actions{grid-template-columns:1fr 1fr;}}
