
/* Desktop: mobile-only view switch has no role in the sidebar layout. */
@media(min-width:851px){.home-view-switch,.home-hero-image{display:none}}
/* NHL ANALYSER V0.12 — home screen only; analysis models and algorithms unchanged. */
@media(max-width:850px){
:root{--home-gold:#ffc06b;--home-hot:#ff652f;--home-ice:#46bdf3}
html,body{background:#070a0e!important;overflow-x:clip}
body{padding-bottom:calc(75px + env(safe-area-inset-bottom,0px))}
.layout{position:relative;display:block}
.sidebar{position:absolute!important;top:0;left:0;right:0;z-index:16;padding:14px 16px!important;background:transparent!important;border:0;height:auto!important;pointer-events:none}
.sidebar .identity{pointer-events:auto;width:max-content;max-width:68%;gap:9px!important}
.sidebar .identity-mark{height:45px!important;width:45px!important;background:linear-gradient(135deg,#38231a,#a86430)!important;box-shadow:inset 0 0 13px #f6ad6350,0 0 8px #000!important}
.sidebar .identity strong{font-size:18px!important;color:#fff;letter-spacing:-.04em}
.sidebar .identity small{font-size:8px!important;letter-spacing:1.15px}
.main{width:100%;max-width:660px!important;padding:0 13px 22px!important}
.hero{height:282px!important;min-height:282px!important;margin:0 -13px 9px;padding:0 13px!important;border:0!important;border-radius:0!important;overflow:hidden;
background:linear-gradient(180deg,#080a0e 0%,#24180f 45%,#0b0d12 100%)!important;box-shadow:none!important}
.hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(180deg,#080b0b10 0%,#080a0d0a 45%,#080a0f 96%),url("/assets/home-arena.svg");background-position:center center;background-size:cover;opacity:1}
.hero:after{display:none!important}
.hero .hero-glow{display:none!important}
.hero-content{position:relative;z-index:2;height:100%;max-width:none!important}
.hero .eyebrow,.hero .night-window-label,.hero .refresh-feedback{display:none!important}
.hero .date-form{position:absolute;top:14px;right:0;z-index:3;width:42%;max-width:180px;display:flex!important;gap:5px;align-items:center}
.hero .date-field{flex:1;min-width:0!important;height:44px;background:#0f1318e6!important;border:1px solid #4b525e!important;border-radius:12px!important;padding:6px 8px!important;box-shadow:0 3px 12px #0007}
.hero .date-field span{display:none}
.hero .date-field input{font-size:12px!important;min-height:30px!important;height:30px!important;text-align:center}
.hero .date-form .primary-button{height:42px!important;width:39px!important;min-height:42px!important;max-width:39px!important;min-width:39px!important;padding:0!important;overflow:hidden;font-size:0!important;border-radius:11px!important;flex:none;box-shadow:0 0 10px #f77d2840}
.hero .date-form .primary-button:before{content:"↻";font-size:24px;font-weight:bold}
.hero .date-form .primary-button:disabled:before{content:"…"}
.home-hero-image{position:absolute;inset:70px 0 72px;pointer-events:none}
.home-view-switch{position:absolute;left:0;right:0;bottom:5px;z-index:4;display:grid;grid-template-columns:1fr 1fr;gap:0;height:51px;border:1px solid #4c3e37;border-radius:13px;background:#080c10ee;padding:3px;box-shadow:0 8px 20px #0007}
.home-view-switch button{font:700 14px Inter,system-ui,sans-serif;border:0;color:#c7ccd3;background:transparent;border-radius:10px;min-width:0;cursor:pointer}
.home-view-switch button.is-selected{color:#ffcb79;background:linear-gradient(110deg,#603a23,#302319);border:1px solid #ffae57;box-shadow:0 0 14px #ff84285f,inset 0 0 12px #e8852445}
.kpis{display:none!important}
.section-head{display:block!important;margin:0 0 10px!important}
.section-head>div:first-child{display:none!important}
.section-head .segmented{display:grid!important;grid-template-columns:.75fr 1fr 1.17fr 1fr;gap:5px!important;margin:0!important;padding:3px!important;border:0!important;background:transparent!important;width:100%!important;max-width:none!important}
.section-head .segmented button{white-space:nowrap;overflow:hidden;min-width:0;min-height:42px!important;padding:5px 3px!important;border-radius:12px!important;font-size:12px!important;font-weight:750;background:linear-gradient(120deg,#11171e,#0a0d11)!important;border:1px solid #384049!important;color:#d5dce6!important}
.section-head .segmented button.selected{background:linear-gradient(135deg,#56351f,#1b1717)!important;border-color:#e99445!important;color:#ffbd67!important;box-shadow:0 0 13px #ff7f2845}
.load-status.is-quiet{display:none!important}
.load-status{margin:5px 3px 9px;font-size:11px}
.game-grid{display:grid!important;grid-template-columns:1fr!important;gap:11px!important;margin:0}
.game:not([open]){height:133px!important;min-height:133px!important;padding:0!important;border-radius:14px!important;overflow:hidden!important;isolation:isolate}
.game:not([open]) .game-trigger{height:100%;min-height:0!important;padding:9px 11px!important;position:relative!important;display:block!important}
.game:not([open]) .game-head{position:relative;font-size:10px!important;margin:0;color:#edf0f4;letter-spacing:.2px;padding-right:44%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.game:not([open]) .game-head .game-state{display:none!important}
.game:not([open]) .matchup{position:absolute!important;top:33px;left:11px;right:33px;margin:0!important;display:grid!important;grid-template-columns:minmax(0,1fr) 18px minmax(0,1fr);align-items:center;gap:5px}
.game:not([open]) .team{display:flex!important;align-items:center!important;justify-content:flex-start!important;text-align:left!important;gap:6px!important}
.game:not([open]) .team:last-child{justify-content:flex-start!important;text-align:left!important;flex-direction:row-reverse!important}
.game:not([open]) .team img{width:46px!important;height:46px!important;flex:none;object-fit:contain;filter:drop-shadow(0 2px 5px #0009)}
.game:not([open]) .team strong{font-size:15px!important;color:#fff}
.game:not([open]) .team small{display:block!important;max-width:90px;font-size:9px!important;line-height:1.25;color:#c3c7cd;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}
.game:not([open]) .team .venue-label{display:none!important}
.game:not([open]) .versus{font-size:10px!important;text-align:center;color:#c4b6b3}
.game:not([open]) .game-foot{position:absolute!important;right:9px;top:7px!important;padding:0!important;margin:0!important;border:0!important;max-width:57%;justify-content:flex-end!important}
.game:not([open]) .game-foot .visual-badge{max-width:100%;font-size:9px!important;padding:5px 6px!important;border-radius:9px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.game:not([open]) .game-foot .sample-label{display:none!important}
.game:not([open]) .game-preview{position:absolute!important;left:12px;right:34px;bottom:9px!important;margin:0!important;padding:0!important;display:flex!important;gap:6px!important;align-items:baseline}
.game:not([open]) .game-preview .preview-figure{font-size:22px!important;line-height:1!important;font-weight:900}
.game:not([open]) .game-preview .preview-unit{font-size:9px!important;white-space:nowrap;color:#c9cbd2}
.game:not([open]) .game-preview .preview-xg{font-size:9px!important;padding:2px 4px!important;white-space:nowrap;border:0!important;color:#c8cbd5}
.game:not([open]) .game-preview .preview-hint{font-size:0!important;display:none!important}
.game:not([open]) .game-trigger:after{content:"›"!important;position:absolute!important;right:9px!important;top:45%!important;width:27px;height:27px;border-radius:50%;border:1px solid #9a9293;display:grid;place-items:center;font-size:23px!important;color:#fff;background:#070a0d9a;line-height:1}
.game:not([open]) .game-trigger:before{position:absolute!important;left:12px;bottom:10px;right:auto!important;top:auto;margin:0!important;z-index:2;font-size:19px}
.game:not([open]).tier-strong{border:1px solid #ff6832!important;background:radial-gradient(ellipse at 110% 115%,#f03a0e9b,transparent 56%),linear-gradient(115deg,#370e09,#100e12 70%)!important;box-shadow:0 0 0 1px #ff7a37,0 0 17px #ff512d99,inset 0 0 16px #f74d1548!important}
.game:not([open]).tier-strong .game-preview{padding-left:27px!important}
.game:not([open]).tier-strong .game-trigger:before{content:"🔥"!important}
.game:not([open]).tier-strong .preview-figure{color:#ffbe65!important}
.game:not([open]).tier-cautious{background:radial-gradient(ellipse at 105% 105%,#075ca188,transparent 60%),linear-gradient(110deg,#0b2840,#06131d)!important;border:1px solid #238ed0!important;box-shadow:0 0 0 1px #218ac0,0 0 15px #1b82cd68,inset 0 0 13px #135d8b55!important}
.game:not([open]).tier-cautious .game-preview{padding-left:27px!important}
.game:not([open]).tier-cautious .game-trigger:before{content:"❄"!important;color:#b3eafe}
.game:not([open]).tier-cautious .preview-figure{color:#9bddff!important}
.game:not([open]).tier-neutral{border:1px solid #747b83!important;background:linear-gradient(115deg,#272b31,#11151a)!important;box-shadow:inset 0 0 12px #9e9e9e22!important}
.game:not([open]).tier-unknown{border:1px solid #535b67!important;background:#171c22!important;box-shadow:none!important}
.game:not([open]).tier-neutral .preview-figure,.game:not([open]).tier-unknown .preview-figure{color:#e0e3e7!important}
.game:not([open]) .preview-xg,.game:not([open]) .preview-unit{display:none!important}
.game:not([open]) .preview-figure:after{content:" · repère buts";font-size:9px;font-weight:600;color:#cbd0d7;margin-left:4px}
.game:not([open]) .preview-figure{display:inline!important}
.mobile-bottom-nav{display:grid!important;grid-template-columns:repeat(4,1fr);padding:7px 8px calc(7px + env(safe-area-inset-bottom,0px));background:#0a0d13fa!important;border-top:1px solid #5b442f!important;box-shadow:0 -9px 25px #000c;z-index:250}
.mobile-tab{color:#b7bbc3;font-size:11px!important}
.mobile-tab span{font-size:23px!important}
.mobile-tab.is-active{color:#ffbd63!important}
body.home-v12-moderate #games .game:not(.tier-neutral){display:none!important}
body.home-v12-players #liste-rencontres,body.home-v12-players #status,body.home-v12-players #games{display:none!important}
body.home-v12-players #joueurs{display:block!important}
body:not(.home-v12-players) #joueurs{display:none!important}
body:not(.home-v12-selection) #selection{display:none!important}
body.home-v12-selection #selection{display:block!important}
body.home-v12-selection #liste-rencontres,body.home-v12-selection #status,body.home-v12-selection #games,body.home-v12-selection #joueurs{display:none!important}
body:not(.home-v12-players) .home-view-switch #home-show-matches,
body.home-v12-players .home-view-switch #home-show-players{color:#ffd083}
body.home-v12-players .home-view-switch #home-show-matches{background:transparent;border:0;box-shadow:none;color:#c7ccd3}
body.home-v12-players .home-view-switch #home-show-players{background:linear-gradient(110deg,#603a23,#302319);border:1px solid #ffae57;box-shadow:0 0 14px #ff84285f}
body.home-v12-players .players-section{margin:0!important}
body.home-v12-players .players-topline h2{font-size:21px}
body.home-v12-players .player-load-button{max-width:100%;width:100%}
body.home-v12-selection .hero{height:210px!important;min-height:210px!important}
body.home-v12-selection .home-view-switch{display:none}
body.home-v12-selection #selection{margin-top:20px}
.main>.method-toggle{margin-top:24px}
body:not(.home-v12-selection):not(.home-v12-players) .main>.method-toggle{display:none}
.game[open]{z-index:401!important}
.game[open] .preview-figure:after{content:""}
body.detail-visible .mobile-bottom-nav{display:none!important}
}
@media(max-width:370px){.game:not([open]) .team img{width:37px!important;height:40px!important}.game:not([open]) .team strong{font-size:13px!important}.game:not([open]) .team small{font-size:8px!important}.hero .date-form{width:48%}}
@media(prefers-reduced-motion:reduce){.game{transition:none!important}.home-view-switch button{transition:none!important}}

/* Reference refinement: presentation only. Existing tier classes and numbers are retained. */
@media(max-width:850px){
 .sidebar{padding:17px 14px!important}
 .sidebar .identity{gap:9px!important;max-width:60%}
 .sidebar .identity-mark{height:46px!important;width:46px!important;border-radius:12px}
 .sidebar .identity strong{font-size:18px!important;white-space:nowrap}
 .sidebar .identity small{font-size:7px!important;letter-spacing:1.1px}
 .hero{height:237px!important;min-height:237px!important;margin-bottom:13px}
 .hero:before{background-image:linear-gradient(180deg,#03070be6 0%,#03070b33 39%,#03070b00 66%,#05080c 96%),url("/assets/home-hockey-v12.webp");background-position:center,center 47%}
 .hero .date-form{top:18px;width:132px;max-width:38%}
 .hero .date-field{height:39px;padding:3px 6px!important;border-radius:11px!important}
 .hero .date-field input{font-size:11px!important;width:100%;height:30px!important}
 .hero .date-form .primary-button{position:absolute;right:0;top:46px;height:30px!important;min-height:30px!important;width:30px!important;min-width:30px!important;background:#10151dd9;border:1px solid #6e5a43;color:#f4c481}
 .hero .date-form .primary-button:before{font-size:19px}
 .home-view-switch{height:49px;bottom:0;border-color:#333c43;border-radius:13px;padding:0;background:#080d10eb}
 .home-view-switch button{display:flex;align-items:center;justify-content:center;gap:10px;font-size:15px}
 .home-view-switch button.is-selected{background:linear-gradient(120deg,#795026a6,#362616c9);border-color:#ffb55b;box-shadow:inset 0 0 13px #fba0395e,0 0 12px #ff8b3e80}
 .ui-icon{width:24px;height:24px;display:inline-block;flex:none;vertical-align:middle}
 .section-head .segmented{gap:9px!important;padding:0!important;grid-template-columns:.75fr .95fr 1.15fr 1fr}
 .section-head .segmented button{display:flex;justify-content:center;align-items:center;gap:5px;min-height:39px!important;border-radius:16px!important;font-size:11px!important}
 .segmented .ui-icon{width:18px;height:18px}
 .game-grid{gap:10px!important}
 .game:not([open]){height:128px!important;min-height:128px!important;border-radius:12px!important;position:relative}
 .game:not([open]):after{content:"";position:absolute;inset:0;pointer-events:none;z-index:-1;background:repeating-linear-gradient(136deg,transparent 0 38px,#ffffff05 39px,transparent 41px 74px)}
 .game:not([open]) .game-trigger{padding:10px 12px!important}
 .game:not([open]) .game-head{font-size:10px!important;padding-right:48%!important}
 .game:not([open]) .matchup{top:36px;left:12px;right:35px;gap:7px;grid-template-columns:minmax(0,1fr) 15px minmax(0,1fr)}
 .game:not([open]) .team img{height:48px!important;width:48px!important}
 .game:not([open]) .team small{font-size:9px!important;max-width:80px}
 .game:not([open]) .team strong{font-size:16px!important}
 .game:not([open]) .game-foot{top:6px!important;right:10px;max-width:49%}
 .game:not([open]) .game-foot .visual-badge{font-size:8px!important;padding:4px 8px!important;border-radius:15px;text-overflow:ellipsis}
 .game:not([open]).tier-neutral .visual-badge{background:linear-gradient(180deg,#62666a80,#20242a)!important;border-color:#8e9196!important;color:#eff1f4!important}
 .game:not([open]).tier-strong .visual-badge{background:linear-gradient(180deg,#d447228c,#691c15)!important;border-color:#ff8b4b!important;color:#ffe4c0!important}
 .game:not([open]).tier-cautious .visual-badge{background:linear-gradient(180deg,#25719e8c,#102d47)!important;border-color:#57b8ed!important;color:#d4f3ff!important}
 .game:not([open]) .game-trigger:after{right:9px!important;width:31px;height:31px;top:45%!important;border-color:#b9b7b19c}
 .game:not([open]) .game-preview{bottom:11px!important;left:13px}
 .game:not([open]) .preview-figure{font-size:23px!important}
 .game:not([open]) .preview-figure:after{font-size:10px;color:#bdc7d0}
 .game:not([open]).tier-neutral .game-trigger:before{content:""!important;display:block!important;left:13px;bottom:12px;width:20px;height:22px;background:linear-gradient(#cbd0d7,#cbd0d7) left bottom/5px 9px no-repeat,linear-gradient(#d8dce2,#d8dce2) center bottom/5px 15px no-repeat,linear-gradient(#edf0f4,#edf0f4) right bottom/5px 22px no-repeat}
 .game:not([open]).tier-neutral .game-preview{padding-left:26px!important}
 .game:not([open]).tier-strong{background:radial-gradient(ellipse at 100% 110%,#f24e10ad,transparent 60%),linear-gradient(120deg,#350e0b,#120b0f 65%)!important;box-shadow:0 0 0 1px #ff9e47,0 0 16px #ff481e99,inset 0 0 13px #ff722855!important}
 .game:not([open]).tier-cautious{box-shadow:0 0 0 1px #328cba,0 0 14px #098fd678,inset 0 0 15px #3285ae66!important}
 .game:not([open]).tier-neutral{box-shadow:inset 0 0 12px #b8b8b830,0 0 4px #d1d1d130!important}
 .mobile-bottom-nav{border-top:1px solid #453b2f!important;border-radius:16px 16px 0 0;padding-top:10px;background:#080b10f5!important}
 .mobile-tab{gap:5px;min-height:49px;font-size:11px!important}
 .mobile-tab span{display:grid;place-items:center}
 .mobile-tab .ui-icon{width:26px;height:26px}
 .mobile-tab.is-active{color:#ffc260!important;text-shadow:0 0 14px #e3a64a66}
 button:focus-visible,a:focus-visible{outline:2px solid #ffd58e;outline-offset:3px}
}
@media(max-width:370px){
 .sidebar .identity strong{font-size:15px!important}
 .sidebar .identity small{font-size:6px!important;letter-spacing:.8px}
 .sidebar .identity-mark{height:39px!important;width:39px!important}
 .hero .date-form{width:121px;max-width:38%}
 .game:not([open]) .team img{width:36px!important;height:42px!important}
 .game:not([open]) .team strong{font-size:14px!important}
 .game:not([open]) .team small{max-width:67px;font-size:8px!important}
 .section-head .segmented{gap:5px!important}
}

/* Shared silver chart pictogram: no change to filtering. */
#liste-rencontres #filter-moderate{font-size:0!important;display:flex;align-items:center;justify-content:center;gap:6px}
#filter-moderate:before{content:"";display:inline-block;width:20px;height:22px;flex:none;background:linear-gradient(#cbd0d7,#cbd0d7) left bottom/5px 9px no-repeat,linear-gradient(#d8dce2,#d8dce2) center bottom/5px 15px no-repeat,linear-gradient(#edf0f4,#edf0f4) right bottom/5px 22px no-repeat}
#filter-moderate:after{content:"Modérés";font-size:12px}
@media(max-width:850px){#filter-moderate:after{font-size:11px}}

/* Approved NHL ANALYSER brand icon, presentation only. */
.sidebar .identity-mark{background:transparent!important;box-shadow:none!important}
.identity-mark img{display:block;width:100%;height:100%;object-fit:contain}
