/* Homepage-only composition; shared pages keep their existing header and layout. */
body.home-v3 { --hub-line: #36576d; --hub-panel: rgba(18,47,68,.94); --hub-muted: #b5ccdb; background:#09558c; }
body.home-v3::before { background-image:linear-gradient(rgba(4,26,53,.15),rgba(4,26,53,.32)),url('/assets/pl4ne-home-sky-reference.png?v=1'); }
.home-v3 .site-header { max-width:none; width:100%; margin:0; min-height:54px; padding:0; display:block; border-radius:0; }
.home-header-inner { max-width:1400px; width:calc(100% - 32px); min-height:54px; margin:0 auto; display:flex; align-items:center; gap:12px; position:relative; }
.home-v3 .site-header::before,.home-v3 .site-header::after { display:none; }
.home-v3 .home-header-inner > .main-nav { width:auto; flex:1 1 auto; }
.home-v3 .main-nav { display:flex; gap:4px; flex-wrap:wrap; min-width:0; }
.home-v3 .main-nav a { min-height:44px; padding:8px 12px; display:inline-flex; align-items:center; font-size:.82rem; }
.home-v3 .site-account-slot { margin-left:auto; flex-shrink:0; min-width:0; }
.home-v3 main { max-width:1400px; width:calc(100% - 32px); padding:0; margin:0 auto; }
.home-v3 .hub-masthead { min-height:112px; padding:18px 24px; display:flex; align-items:center; gap:18px; position:relative; overflow:hidden; background-image:var(--homepage-banner, none); background-position:center; background-size:cover; }
.hub-masthead img { width:64px; height:64px; object-fit:contain; }
body.home-v3 .hub-masthead h1 { font-size:clamp(2rem,4vw,3rem); letter-spacing:.15em; margin:0; line-height:1; }
.hub-masthead .masthead-flight { margin-left:auto; color:#69cfff; font-size:2rem; opacity:.6; }
.hub-tipping-strip { display:flex; gap:14px; align-items:center; padding:12px 16px; margin:0 0 14px; background:linear-gradient(100deg,#153d53,#0b2639); border:1px solid #38728b; border-left:3px solid #46cfff; }
.hub-tipping-strip img { width:46px; height:46px; object-fit:contain; }
.hub-tipping-copy { min-width:0; flex:1; }
.hub-tipping-copy strong { font-size:1rem; }
.hub-tipping-copy p { margin:3px 0 0; color:var(--hub-muted); font-size:.8rem; line-height:1.4; }
.home-v3 .hub-tipping-strip .button { min-height:44px; margin:0; padding:10px 18px; white-space:nowrap; font-size:.86rem; }
.hub-columns { display:grid; grid-template-columns:240px minmax(0,1fr) 290px; gap:14px; align-items:start; }
.hub-columns > * { min-width:0; }
.home-v3 .hub-panel { padding:0; margin:0; background:var(--hub-panel); border:1px solid var(--hub-line); border-radius:3px; overflow:hidden; }
.home-v3 .hub-sidebar .hub-panel + .hub-panel { margin-top:14px; }
.home-v3 .hub-panel h2 { font-size:.95rem; line-height:1.4; margin:0; padding:12px 14px; background:#244d68; border-bottom:1px solid var(--hub-line); }
.hub-sidebar h3 { margin:0; padding:12px 14px 4px; color:#84b5cf; font-size:.7rem; letter-spacing:.1em; text-transform:uppercase; }
.hub-sidebar nav a,.hub-sidebar .discovery-link { display:flex; align-items:center; gap:10px; min-height:44px; padding:8px 14px; color:#deedf5; font-size:.85rem; }
.hub-sidebar nav a:hover,.hub-sidebar .discovery-link:hover { background:#234355; color:#76ddff; }
.hub-sidebar nav img { width:28px; height:28px; object-fit:contain; }
.hub-sidebar nav { padding-bottom:8px; }
.hub-sidebar p { font-size:.8rem; color:var(--hub-muted); padding:0 14px; line-height:1.5; }
.hub-news .news-empty { padding:20px; }
.hub-news .news-empty h3 { font-size:1.3rem; margin:0 0 8px; }
.hub-news .news-empty p { color:var(--hub-muted); font-size:.9rem; line-height:1.6; margin:0 0 12px; }
.hub-news .news-empty a { min-height:44px; display:flex; align-items:center; color:#71d5ff; border-top:1px solid var(--hub-line); }
.news-feature { display:block; color:inherit; }
.news-feature img { display:block; width:100%; aspect-ratio:16/9; object-fit:cover; }
.news-feature .news-copy { padding:16px; }
.news-feature h3 { margin:6px 0; font-size:1.4rem; line-height:1.25; }
.news-feature p { color:var(--hub-muted); line-height:1.5; margin:8px 0 0; }
.news-feature time,.news-list time { color:var(--hub-muted); font-size:.75rem; }
.news-list { list-style:none; padding:0; margin:0; }
.news-list a { display:flex; gap:12px; justify-content:space-between; align-items:center; min-height:48px; padding:10px 14px; border-top:1px solid var(--hub-line); }
.news-list time { flex-shrink:0; }
.hub-next { padding:14px; border-top:1px solid var(--hub-line); }
.hub-next p { margin:4px 0; font-size:.86rem; line-height:1.5; }
.hub-next small { color:var(--hub-muted); }
.home-v3 .home-result-list { display:grid; gap:3px; padding:6px 8px; }
body.home-page.home-v3 .hub-results .compact-result-row { display:grid; grid-template-columns:22px 36px minmax(0,1fr) 44px; grid-template-areas:"code score opponent date"; min-height:44px; gap:6px; padding:6px 4px; border:0; border-bottom:1px solid rgba(160,203,230,.13); border-radius:2px; background:transparent; box-shadow:none; align-items:center; }
.home-v3 .compact-result-row:hover { background:#203d50; }
body.home-page.home-v3 .hub-results .compact-result-row:is(:hover,:focus-visible) { background:#28536c; }
body.home-v3 .compact-result-row .result-code { width:22px; min-height:22px; font-size:.66rem; border-radius:3px; display:grid; place-items:center; }
.home-v3 .result-score { font-size:.8rem; white-space:nowrap; }
body.home-page.home-v3 .result-opponent { min-width:0; font-size:.78rem; overflow-wrap:anywhere; display:flex; gap:6px; align-items:center; line-height:1.35; }
.home-v3 .result-score { font-variant-numeric:tabular-nums; text-align:center; }
.home-v3 .compact-result-row time { font-size:.66rem; text-align:right; white-space:nowrap; }
body.home-page.home-v3 .hub-results .compact-result-row.is-finals-win { background:rgba(232,202,118,.055); }
body.home-page.home-v3 .hub-results .compact-result-row.is-finals-win .result-code { color:#f3d98f; background:rgba(232,202,118,.12); border-color:transparent; }
body.home-page.home-v3 .hub-results .kg-result-stage { min-width:17px; min-height:0; padding:0; margin:0; border:0; border-radius:0; background:none; font-size:.62rem; line-height:1.3; flex-shrink:0; color:#f3d98f; }
.hub-history-link { display:flex; align-items:center; min-height:44px; padding:10px 14px; color:#73cfee; font-size:.8rem; }
.home-v3 .site-footer { width:calc(100% - 32px); max-width:1400px; margin:20px auto 0; padding:12px 0; display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:8px; font-size:.75rem; }
.home-v3 .site-footer nav { display:flex; flex-wrap:wrap; gap:14px; }
.home-v3 .site-footer a { display:inline-flex; align-items:center; min-height:44px; }
.home-v3 .home-kingsguard-state { padding:12px 6px; font-size:.85rem; }
.player-discovery { padding:16px; }
.player-discovery label { display:block; font-weight:700; margin-bottom:8px; }
.player-discovery input { min-height:44px; width:100%; min-width:0; padding:10px; color:#e8f4fc; background:#081b2a; border:1px solid #426379; border-radius:4px; font:inherit; }
.player-discovery p { font-size:.8rem; color:#a6bdcd; line-height:1.5; }
.ranking-row[hidden] { display:none; }
.home-nav-toggle,.home-search-toggle { display:none; }
.home-search { width:200px; max-width:25%; position:relative; flex-shrink:1; }
.home-search-field { position:relative; }
.home-search svg { width:19px; height:19px; stroke:currentColor; fill:none; stroke-width:1.8; flex-shrink:0; }
.home-search-field > svg { position:absolute; right:9px; top:7px; width:14px; height:14px; pointer-events:none; color:#9bb2c3; }
body.home-v3 #home-search-input { box-sizing:border-box; height:28px; min-height:28px; width:100%; min-width:0; padding:4px 30px 4px 9px; font:500 .75rem Inter,sans-serif; border:1px solid #375269; border-radius:2px; background:#213b4e; color:#edf5fb; }
body.home-v3 #home-search-input::placeholder { color:#a3b7c6; opacity:1; }
.home-search input:focus-visible { outline:2px solid #66d5ff; outline-offset:1px; }
.home-search-popup { position:absolute; top:calc(100% + 7px); right:0; width:280px; background:#12334b; border:1px solid #4e7891; border-radius:4px; box-shadow:0 8px 20px #02132260; z-index:10; }
.home-search-status { margin:0; padding:12px; font-size:.8rem; color:#c3d8e5; }
.home-search-popup ul { list-style:none; padding:0; margin:0; max-height:360px; max-height:min(360px,60vh); overflow-y:auto; }
.home-search-popup a { display:flex; align-items:center; justify-content:space-between; gap:10px; min-height:44px; padding:9px 12px; border-top:1px solid #35566b; color:#eef7ff; font-size:.84rem; }
.home-search-popup a small { color:#b6cddb; font-size:.72rem; }
.home-search-popup a:hover,.home-search-popup a[aria-selected=true] { background:#285d7d; }
@media(max-width:1150px) {
  .hub-columns { grid-template-columns:minmax(0,1fr) 290px; }
  .hub-sidebar { grid-column:1/-1; display:flex; gap:14px; }
  .home-v3 .hub-sidebar .hub-panel { flex:1; margin:0; }
  .home-v3 .hub-sidebar .hub-panel + .hub-panel { margin:0; }
  .hub-sidebar nav { display:flex; flex-wrap:wrap; align-items:center; }
  .hub-sidebar h3 { padding:8px 10px; }
  .hub-sidebar nav a { padding:8px 10px; }
}
@media(max-width:700px) {
  .home-v3 .home-header-inner,.home-v3 main,.home-v3 .site-footer { width:calc(100% - 20px); }
  .home-v3 .site-header { padding:0; gap:4px; flex-wrap:nowrap; }
  .home-header-inner { gap:8px; }
  .home-navigation-ready .home-nav-toggle,.home-navigation-ready .home-search-toggle { display:inline-flex; align-items:center; justify-content:center; gap:7px; min-width:44px; min-height:44px; padding:8px; color:#edf8ff; border:1px solid #3c617c; border-radius:4px; background:#14364d; font:700 .8rem Inter,sans-serif; }
  .home-v3 .home-header-inner.home-navigation-ready > .main-nav { display:none; position:absolute; left:0; top:100%; width:100%; background:#12354f; border:1px solid #52768d; border-radius:3px; z-index:9; padding:4px; }
  .home-v3 .home-header-inner.is-menu-open > .main-nav { display:flex; flex-direction:column; align-items:stretch; }
  .home-v3 .home-header-inner.is-menu-open > .main-nav a { font-size:.86rem; padding:10px 14px; }
  .home-search { position:static; width:auto; max-width:none; margin-left:auto; }
  .home-search-field { display:none; position:absolute; left:0; right:0; top:calc(100% + 4px); z-index:10; }
  body.home-v3 #home-search-input { height:44px; min-height:44px; padding:9px 10px 9px 38px; font-size:.9rem; }
  .home-search-field > svg { left:12px; right:auto; top:13px; width:18px; height:18px; }
  .home-search.is-open .home-search-field { display:block; }
  .home-search-popup { width:100%; max-width:100%; }
  .home-v3 .site-account-slot { margin-left:0; }
  .home-v3 .main-nav { gap:0; }
  .home-v3 .main-nav a { font-size:.72rem; padding:8px 7px; }
  .home-v3 .site-account-sign-in { padding:8px; font-size:.75rem; }
  .home-v3 .hub-masthead { min-height:84px; padding:12px 6px; gap:12px; }
  .hub-masthead img { width:48px; height:48px; }
  .hub-tipping-strip { flex-wrap:wrap; padding:12px; gap:10px; }
  .hub-tipping-strip img { width:38px; height:38px; }
  .home-v3 .hub-tipping-strip .button { width:100%; justify-content:center; }
  .hub-columns { display:flex; flex-direction:column; gap:14px; }
  .hub-columns > * { width:100%; }
  .hub-news { order:0; } .hub-results { order:1; } .hub-sidebar { order:2; display:block; }
  .home-v3 .hub-sidebar .hub-panel + .hub-panel { margin-top:14px; }
  .hub-sidebar nav { display:block; }
  body.home-page.home-v3 .hub-results .compact-result-row { grid-template-columns:22px 38px minmax(0,1fr) 46px; gap:7px; }
  .home-v3 .result-opponent { font-size:.85rem; }
}
