/* Shared scoreAI component system.
   Reference: local bogo.hk football.css / optimization.css.
   Component geometry and hierarchy retained; colours mapped to Malaysia theme. */
:root{--ui-radius:6px;--ui-gap:24px;--ui-border:#d9e2ef;--ui-quiet:#f4f7fc;--ui-copy:#263e5c;--ui-muted:#5c6e85}
main .panel{min-width:0;border:1px solid var(--ui-border);border-radius:var(--ui-radius);background:#fff;padding:16px;box-shadow:none}
main .section-head{gap:12px;margin-bottom:16px;align-items:center}
main .section-head h2,main .panel>h2,main .section-label{border-left:4px solid var(--blue);padding-left:10px;font-size:20px;font-weight:800;letter-spacing:.2px;line-height:1.45}
main .overline{font-size:9px;font-weight:650;letter-spacing:1px;color:var(--ui-muted);margin-bottom:6px}
main .section-desc,main .section-desc p{color:var(--ui-muted);font-size:13px;line-height:1.85}
main .muted{color:var(--ui-muted);line-height:1.8}
main .layout,main .news-layout,main .detail-layout,main .portal-two{gap:var(--ui-gap);align-items:start}
main .primary,main aside,main .news-aside{gap:20px}
main :is(.blue,.yellow,.stream-button,.news-cta>a){display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:10px 18px;border:1px solid transparent;border-radius:5px;font-size:13px;font-weight:750;line-height:1.5;text-decoration:none;white-space:normal;transition:background .18s,border-color .18s}
main .blue,main .stream-button{background:var(--blue);border-color:var(--blue);color:#fff}
main .blue:hover,main .stream-button:hover{background:#104bc3;border-color:#104bc3}
main .yellow,main .news-cta>a{background:var(--yellow);border-color:var(--yellow);color:var(--navy)}
main .yellow:hover,main .news-cta>a:hover{background:#ffdf70;border-color:#ffdf70}
main .text-button,main .text-link,main .read{font-size:12px;font-weight:650;color:var(--blue)}
main .quick-links>a{background:#fff;border:1px solid #b8cdf3;color:var(--blue);min-height:40px;padding:9px 14px;border-radius:5px;font-size:12px;line-height:1.6}
main .quick-links>a:hover{background:#eef4ff;border-color:var(--blue)}
main :is(.tag,.tip-status,.ai-label){display:inline-flex;align-items:center;justify-content:center;gap:4px;border:1px solid #cbdcf6;background:#edf4ff;color:#164c99;border-radius:3px;padding:3px 7px;font-size:10px;font-weight:600;line-height:1.4;letter-spacing:0}
main .chips button{border:1px solid transparent;border-radius:4px;min-height:36px;font-size:12px;padding:8px 12px;box-shadow:none;background:#eff3f9;color:#3b5370}
main .chips button:hover{border-color:#bdd0ed;background:#e9f0fb}
main .chips button.selected{background:var(--blue);border-color:var(--blue);color:white;box-shadow:none}
main .dates button{font-size:11px;min-height:36px;box-shadow:none}
main :is(select,input[type=search]){border-radius:5px;min-height:42px;font-size:13px;background:#f9fbfe;border:1px solid var(--ui-border)}
main :is(.portal-heading,.news-intro){margin-bottom:26px}
main :is(.portal-heading,.news-intro) h1{font-size:34px;line-height:1.5;letter-spacing:-.6px;font-weight:800}
main :is(.portal-heading,.news-intro) p{font-size:14px;line-height:1.9;color:var(--ui-muted)}
main .eyebrow{letter-spacing:1.4px;font-size:9px}
/* Home modules */
.spotlight{border-radius:6px;box-shadow:none}
.spotlight-body{background:#123b76}
.spotlight-body:before{display:none}
.spotlight-tip{background:#10336a}
.spotlight-tip h2{font-size:22px;line-height:1.5}
.spotlight-tip>p{font-size:13px;line-height:1.85}
.spotlight-tip .yellow{width:100%;text-align:center}
.spotlight-tip>small{font-size:10px;line-height:1.7}
.pick-line{font-size:12px}
.method-note{background:transparent;border-top:1px solid var(--ui-border);border-radius:0;padding:14px 0 0;margin-top:18px}
.method-note p{font-size:11px;line-height:1.85;color:var(--ui-muted)}
.stream-preview{border-radius:4px;background:#123b76}
.stream-meta,.upcoming-label{font-size:11px;line-height:1.6;color:var(--ui-muted)}
.live-fixture h3{font-size:16px;line-height:1.6}
.live-fixture>b{font-size:18px;font-variant-numeric:tabular-nums}
.stream-button{width:100%}
.provider-foot{background:#f6f8fc;border:1px solid var(--ui-border);border-radius:4px;padding:13px}
.provider-foot>span,.provider-foot>small{font-size:11px;line-height:1.8;color:var(--ui-muted)}
.upcoming-row b{font-size:13px;line-height:1.6}.upcoming-row small{font-size:11px;line-height:1.6}.reminder{min-height:34px;border-radius:4px;font-size:11px}
.tonight-item{padding:14px 0;gap:12px}.tonight-item h3{font-size:13px;line-height:1.6}.tonight-item p{font-size:11px;line-height:1.7}.tonight-rank{font-size:23px;color:#8398b6}
.follow{background:#fff7d6;border:1px solid #eadb9d;border-radius:6px;padding:20px}.follow h3{font-size:19px;line-height:1.5}.follow p{font-size:13px;line-height:1.85;max-width:none}.follow .blue{font-size:12px;padding:10px 16px}
.news-strip{border-radius:6px;padding:16px;gap:20px}.news-item{font-size:12px;line-height:1.8}.news-kicker{font-size:12px}
.list-foot{font-size:11px;line-height:1.8}.list-foot button{font-size:11px}
.standings-detail{font-size:13px}.standings-detail summary{padding:10px 0}.standings-detail td{font-size:13px;padding:12px 8px}
/* News list and editorial content */
.lead-story{border-radius:6px;border-color:var(--ui-border);box-shadow:none}.lead-story:hover{box-shadow:none;border-color:#a9c1e9}
.lead-copy{padding:22px}.lead-copy h2{font-size:26px;line-height:1.6;letter-spacing:-.3px}.lead-copy p{font-size:14px;line-height:1.85}.lead-copy small{font-size:11px;line-height:1.8}.lead-copy .read{font-size:13px}.lead-label{font-size:10px}
.story-category{font-size:11px;font-weight:600;line-height:1.6}.story-row{gap:18px;padding:22px 0}.story-row h3{font-size:19px;line-height:1.6}.story-row p{font-size:13px;line-height:1.85}.story-row small{font-size:11px;line-height:1.7}.story-row .editorial-art{border-radius:4px}
.popular-story h3{font-size:14px;line-height:1.8;font-weight:600}.popular-story small{font-size:11px}.popular-story{padding:16px 0}
.news-cta{border:1px solid #244e86;background:#123b76;border-radius:6px;padding:22px}.news-cta h2{font-size:23px;line-height:1.6}.news-cta p{font-size:13px;line-height:1.85}.news-cta>a{display:flex;width:100%}.news-cta>span{font-size:11px}
.news-aside .muted{font-size:12px;line-height:1.85}
.pagination button{border-radius:4px;min-width:36px;min-height:36px;font-size:12px}.pagination button.current{background:var(--blue)}
.article-page{border-radius:6px;border-color:var(--ui-border)}.article-heading{padding:30px 32px 24px}.article-heading h1{font-size:38px;line-height:1.5;font-weight:800;letter-spacing:-.5px;margin:16px 0}.article-deck{font-size:17px;line-height:1.9;color:#52647a}.author-line b{font-size:12px}.author-line small{font-size:11px;line-height:1.8}.author-line button{font-size:11px;min-height:36px}.author-avatar{border-radius:4px}
.article-prose{padding:28px 32px 32px;max-width:820px;margin:auto}.article-prose p,.portal-prose p{font-size:16px;line-height:2;color:var(--ui-copy)}.article-prose h2{font-size:24px;line-height:1.6;border-left:4px solid var(--blue);padding-left:11px;margin:30px 0 18px}.article-prose .sample-disclosure{font-size:12px;line-height:1.9;padding-bottom:18px;border-bottom:1px solid var(--ui-border)}
.article-contents p{font-size:12px;line-height:1.8}.article-contents p span{font-size:13px}.match-links a{font-size:13px;min-height:42px}.back-link{font-size:13px}.related-card{border-radius:6px}.related-card h3{font-size:17px;line-height:1.7}.related-card small{font-size:11px;line-height:1.7}.related-card>div:last-child{padding:16px}.related-section>.section-head>a{font-size:12px}
/* Core page modules */
.portal-cards{gap:20px}.portal .analysis-card{border-radius:6px;box-shadow:none}.portal .analysis-card:hover{box-shadow:none}
.match-hero{border-radius:6px;background:#123b76;padding:24px}.match-hero-meta{font-size:12px;line-height:1.7}.full-score{padding:30px 0 18px}.full-score h2{font-size:22px;font-weight:800}.full-score small{font-size:12px}.score-middle>b{font-size:48px;font-weight:800}
.portal-prose h2{font-size:22px;line-height:1.6;margin-top:28px}.portal-prose p.analysis-lead{font-size:25px;color:var(--navy)}
.portal-note{font-size:12px;line-height:1.9;color:var(--ui-muted)}.portal-prose p.portal-note{font-size:12px}
.portal-two aside p{font-size:14px;line-height:1.85}.portal-two aside .blue{font-size:12px}.portal-two .quick-links{gap:9px}
.live-page-card .stream-preview{border-radius:4px}.live-page-card h2{font-size:19px;line-height:1.6}.live-page-card>p{font-size:13px}.live-page-card .text-link{font-size:12px}
.watch-placeholder{border:1px solid #234e86;border-radius:6px;background:#0c2b59;min-height:390px}.watch-placeholder small{font-size:13px;line-height:1.95}.watch-placeholder p{font-size:14px}
.overview-grid>div{background:#f4f7fc;border:1px solid #e1e8f3;border-radius:4px;padding:16px}.overview-grid small{font-size:12px}.overview-grid b{font-size:14px;line-height:1.7}.match-tabs{gap:8px}.timeline li{padding:20px 4px;font-size:14px;line-height:1.7}.stat-label{font-size:14px}.stat-bars{border-radius:3px}
main :is(a,button,input,select):focus-visible{outline:2px solid var(--blue);outline-offset:3px}
@media(max-width:1100px){main .layout,main .news-layout,main .detail-layout,main .portal-two{gap:20px}.article-heading h1{font-size:32px}.full-score h2{font-size:19px}.spotlight-tip h2{font-size:20px}.spotlight-tip>p{font-size:12px}.lead-copy h2{font-size:25px}}
@media(max-width:760px){main .panel{padding:14px;border-radius:6px}main .layout,main .news-layout,main .detail-layout,main .portal-two{gap:18px}main .section-head h2,main .panel>h2,main .section-label{font-size:19px;letter-spacing:0}main .overline{font-size:8px}main :is(.portal-heading,.news-intro) h1{font-size:28px;line-height:1.5}main :is(.portal-heading,.news-intro) p{font-size:13px}main .chips button{font-size:11px;min-height:36px;padding:8px 10px}main .dates button{font-size:9px;padding:8px 7px}.spotlight-tip{display:block;padding:18px}.spotlight-tip h2{font-size:21px;margin:12px 0 9px}.spotlight-tip>p{font-size:13px}.pick-line{display:flex;margin-top:16px;font-size:12px}.spotlight-tip .yellow{width:100%;margin-top:15px}.spotlight-tip>small{font-size:10px}.method-note p{font-size:11px}.follow h3{font-size:20px}.follow p{font-size:13px}.news-strip #news-cards{gap:0}.news-item{font-size:12px;padding:11px 0}.news-kicker{font-size:13px}.list-foot{font-size:10px;align-items:flex-start}.list-foot button{font-size:10px}.lead-copy{padding:20px}.lead-copy h2{font-size:25px;line-height:1.5}.lead-copy p{font-size:14px}.lead-copy small{font-size:10px}.story-row{grid-template-columns:90px minmax(0,1fr);gap:13px;padding:18px 0}.story-row h3{font-size:16px;line-height:1.65}.story-row small{font-size:10px}.story-category{font-size:10px}.popular-story h3{font-size:14px}.news-cta{padding:20px}.article-heading{padding:22px 20px}.article-heading h1{font-size:28px;line-height:1.55}.article-deck{font-size:16px;line-height:1.9}.author-line small{font-size:10px}.author-line button{font-size:10px}.article-prose{padding:22px 20px}.article-prose h2{font-size:22px}.article-prose p,.portal-prose p{font-size:16px;line-height:2}.article-prose .sample-disclosure{font-size:12px}.related-card h3{font-size:15px;line-height:1.7}.related-card small{font-size:10px}.related-card>div:last-child{padding:14px}.match-hero{padding:18px 14px}.match-hero-meta{font-size:10px}.full-score h2{font-size:15px}.full-score small{font-size:10px}.score-middle>b{font-size:32px}.portal-two aside p{font-size:14px}.watch-placeholder{min-height:300px;padding:24px}.watch-placeholder small{font-size:12px}.overview-grid>div{padding:12px}.overview-grid small{font-size:11px}.overview-grid b{font-size:13px}.timeline li{font-size:12px;gap:8px}.portal-prose p.analysis-lead{font-size:22px}}

/* Shared secondary navigation typography across all page types. */
main .breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-family:inherit;font-size:12px;font-weight:400;line-height:1.7;color:var(--ui-muted);margin-bottom:24px}
main .breadcrumb>a,main .breadcrumb>span{font-family:inherit;font-size:inherit;font-weight:inherit;line-height:inherit}
main .breadcrumb>a:hover{color:var(--blue)}
.footer>div:nth-child(2)>a,.footer>div:nth-child(2)>button{font-family:inherit;font-size:11px;font-weight:400;line-height:1.6;color:#d2def0;background:transparent;border:0;padding:4px 0}
.footer>div:nth-child(2)>a:hover,.footer>div:nth-child(2)>button:hover{color:var(--yellow)}
@media(max-width:760px){main .breadcrumb{font-size:12px;gap:8px;margin-bottom:20px}}
/* Isolated home live preview: fixed badge sizing and stable overlays. */
#watch.live-panel{min-width:0;overflow:hidden}
#live-cards{min-width:0;width:100%}
#watch .home-stream-preview{display:grid;grid-template-columns:52px 44px 52px;align-items:center;justify-content:center;gap:24px;position:relative;width:100%;height:164px;min-height:164px;padding:30px 16px 32px;border:1px solid #244f89;background:#123b76;border-radius:4px;isolation:isolate}
#watch .home-stream-preview>.club-badge{display:inline-flex;align-items:center;justify-content:center;width:52px;height:60px;min-width:52px;position:relative;z-index:1;clip-path:none;background:transparent;border:0}
#watch .home-stream-preview>.club-badge img{display:block;width:100%;height:100%;object-fit:contain}
#watch .home-stream-preview>.stream-play{position:relative;width:44px;height:44px;z-index:1}
#watch .home-stream-preview>.pitch-lines{pointer-events:none;z-index:0}
#watch .home-stream-preview>.stream-live{z-index:2;left:10px;top:10px;font-size:9px;line-height:1.5}
#watch .home-stream-preview>small{z-index:2;left:10px;right:10px;bottom:8px;text-align:center;line-height:1.5;font-size:10px;overflow-wrap:anywhere}
#watch .live-fixture{align-items:flex-start;gap:12px;min-width:0}
#watch .live-fixture h3{flex:1;min-width:0;overflow-wrap:anywhere;margin:0}
#watch .live-fixture>b{flex-shrink:0;white-space:nowrap}
#watch .stream-button{display:flex;width:100%;box-sizing:border-box}
#watch .upcoming-row>div{min-width:0;flex:1}#watch .upcoming-row b{overflow-wrap:anywhere}#watch .reminder{flex-shrink:0}
@media(max-width:760px){#watch .home-stream-preview{height:180px;min-height:180px;gap:28px}}
/* Mobile column layouts must stretch: desktop grid alignment must not shrink flex children. */
@media(max-width:760px){
 main .layout,main .news-layout,main .detail-layout,main .portal-two{align-items:stretch}
 main .layout>.primary,main .layout>aside,main .news-layout>div,main .news-layout>aside,main .detail-layout>article,main .detail-layout>aside,main .portal-two>section,main .portal-two>article,main .portal-two>aside{width:100%;max-width:100%;min-width:0;box-sizing:border-box}
 main .layout>aside{align-items:stretch}
 main .layout>aside>.panel,main .layout>aside>.follow{width:100%;max-width:100%;box-sizing:border-box}
}
#watch .live-tabs>small{margin-top:0;display:inline;font-size:10px}
#watch .home-stream-preview>small{margin-top:0}
/* Audit: local content must remain within narrow viewports. */
#watch .provider-foot>small{font-size:11px;line-height:1.8;margin-top:8px}
#watch .upcoming-row small{margin-top:3px}
@media(max-width:370px){#watch .home-stream-preview{grid-template-columns:46px 40px 46px;gap:18px;padding-left:10px;padding-right:10px}#watch .home-stream-preview>.club-badge{width:46px;height:54px;min-width:46px}#watch .home-stream-preview>.stream-play{width:40px;height:40px}.news-strip .news-kicker{white-space:normal}.live-tabs{flex-wrap:wrap}.author-line>div{min-width:0;flex:1}.author-line button{flex-shrink:0}}
@media(max-width:480px){.score-panel .section-head{flex-direction:column;align-items:flex-start;gap:14px}.score-panel .dates{width:100%;display:flex}.score-panel .dates button{flex:1;min-width:0;white-space:normal;line-height:1.5}.score-panel .section-head h2{white-space:normal}}
/* Keep the footer at the bottom on shorter desktop pages. */
body{min-height:100vh;display:flex;flex-direction:column}
body>main.wrap{width:100%;flex:1}
body>header,body>footer,body>.utility,body>.competitions{flex-shrink:0}
