/* XSStream — thèmes saisonniers. Aucune décoration au-dessus du lecteur. */
[data-xs-season] {
  --season-bg:var(--season-dark-bg,#111113);
  --season-surface:var(--season-dark-surface,#1a191b);
  --season-raised:var(--season-dark-raised,#292326);
  --season-ink:var(--season-dark-ink,#fff4e8);
  --season-muted:var(--season-dark-muted,#cbb9ae);
  --season-line:var(--season-dark-line,#574034);
  --season-accent:var(--season-dark-accent,#f2b479);
  --season-button:linear-gradient(115deg,#a84b27,#873d49);
  --xs-bg:var(--season-bg);
  --xs-pink:var(--season-a,#a84b27);
  --xs-violet:var(--season-b,#873d49);
  --xs-focus:var(--season-accent);
}
[data-xs-season][data-theme="light"],html[data-theme="light"] [data-xs-season] {
  --season-bg:var(--season-light-bg,#f8f3ec);
  --season-surface:var(--season-light-surface,#fffbf5);
  --season-raised:var(--season-light-raised,#f0e5d7);
  --season-ink:var(--season-light-ink,#352820);
  --season-muted:var(--season-light-muted,#725947);
  --season-line:var(--season-light-line,#d9c0a7);
  --season-accent:var(--season-light-accent,#944c25);
}
html[data-xs-season] body.xs-home-page,
html[data-xs-season] #home {
  background:var(--season-bg)!important;
}
html[data-xs-season] #home .catalog {
  background:linear-gradient(transparent,var(--season-bg) 50px)!important;
}
html[data-xs-season] body.xs-home-page>.topbar,
html[data-xs-season] body.xs-home-page>.topbar::before,
html[data-xs-season] body.xs-home-page>.topbar nav,
html[data-xs-season] body.xs-home-page>.app-sidebar,
html[data-xs-season] body.xs-home-page:has(#home)>.topbar,
html[data-xs-season] body.xs-home-page:has(#home)>.app-sidebar {
  background:var(--season-surface)!important;
  border-color:var(--season-line)!important;
}
html[data-xs-season] body.xs-home-page:has(#home)>.topbar .search,
html[data-xs-season] body.xs-home-page>.topbar .top-profile {
  background:var(--season-raised)!important;
  border-color:var(--season-line)!important;
}
html[data-xs-season] body.xs-home-page .side-links button.active,
html[data-xs-season] body.xs-home-page>.topbar .nav.active {
  background:var(--season-raised)!important;
  color:var(--season-ink)!important;
  box-shadow:inset 0 -2px var(--season-accent)!important;
}
html[data-xs-season] .hero .primary,
html[data-xs-season] .xs-request-submit,
html[data-xs-season] .xs-boot-logo,
html[data-xs-season] .xs-boot-line i {
  background:var(--season-button)!important;
  color:#fff!important;
  box-shadow:0 8px 24px #7e351d35!important;
}
html[data-xs-season] #home .hero .kicker {
  background:var(--season-raised)!important;
  color:var(--season-accent)!important;
}
html[data-xs-season] #home .hero .meta .chip {
  border-color:var(--season-accent)!important;
  color:var(--season-accent)!important;
}
html[data-xs-season] #home .card:hover .poster {
  border-color:var(--season-accent)!important;
  box-shadow:0 0 0 1px var(--season-accent),0 14px 32px #0006!important;
}
html[data-xs-season] .xs-boot {background:var(--season-bg);color:var(--season-ink)}
html[data-xs-season] .xs-boot small {color:var(--season-muted)}
html[data-xs-season] :is(.topbar,.app-sidebar,.auth-card,.request-card) :is(button,a,input):focus-visible {
  outline:3px solid var(--season-accent)!important;
  outline-offset:3px;
}
/* Petits motifs fixes intégrés aux éléments existants, sans occuper de place. */
.xs-season-detail {display:none}
[data-xs-season]:not([data-xs-season="classic"]) .xs-season-detail {
  position:absolute;display:block;right:22px;bottom:68px;width:54px;height:38px;
  pointer-events:none;user-select:none;color:var(--season-accent);opacity:.68;
}
.xs-season-detail svg {position:absolute;right:0;top:0;width:26px;height:26px;fill:currentColor;transform:rotate(24deg)}
.xs-season-detail svg+svg {right:28px;top:20px;width:15px;height:15px;transform:rotate(-30deg);opacity:.65}
[data-xs-season] :is(.auth-card,.request-card)>.xs-season-detail {top:15px;bottom:auto;right:14px;width:38px;height:30px;opacity:.45}
[data-xs-season] :is(.auth-card,.request-card)>.xs-season-detail svg {width:20px;height:20px}
[data-xs-season] :is(.auth-card,.request-card)>.xs-season-detail svg+svg {width:12px;height:12px;right:22px;top:16px}
@media(max-width:600px) {[data-xs-season] #hero>.xs-season-detail{right:17px;bottom:68px;opacity:.55}}
@media(forced-colors:active) {.xs-season-detail{display:none!important}}
/* Connexion : même palette et contrastes adaptés à la préférence enregistrée. */
html[data-xs-season] .auth-card {
  background:var(--season-surface);
  color:var(--season-ink);
  border-color:var(--season-line);
  box-shadow:0 30px 90px #0008;
}
html[data-xs-season] .auth-backdrop:after {background:linear-gradient(120deg,#33190b80,#130c12b0)}
html[data-xs-season] .auth-logo {color:var(--season-ink)}
html[data-xs-season] .auth-logo strong {background-image:linear-gradient(135deg,var(--season-accent),var(--season-a))}
html[data-xs-season] :is(.auth-tabs,.auth-form label>div) {background:var(--season-raised);border-color:var(--season-line)}
html[data-xs-season] :is(.auth-form input,.auth-form label i,.auth-form label button) {color:var(--season-ink)}
html[data-xs-season] :is(.auth-form>p,.remember,.auth-tabs button) {color:var(--season-muted)}
html[data-xs-season] .auth-form input::placeholder {color:var(--season-muted);opacity:1}
html[data-xs-season] :is(.auth-submit,.auth-tabs button.active) {background:var(--season-button);color:#fff;box-shadow:none}
html[data-xs-season] .auth-switch button {color:var(--season-accent)}
html[data-xs-season] .remember input {accent-color:var(--season-accent)}
html[data-xs-season] .auth-form label>div:focus-within {border-color:var(--season-accent);box-shadow:0 0 0 2px var(--season-line)}
html[data-xs-season][data-theme="light"] #authMessage {color:#a0293e}
/* Page de demande : ne change ni les champs ni leur comportement. */
html[data-xs-season] .xs-season-request {background:var(--season-bg);color:var(--season-ink)}
html[data-xs-season] .xs-season-request :is(header,.request-card) {background:var(--season-surface);border-color:var(--season-line)}
html[data-xs-season] .xs-season-request :is(.request-brand,.back,.request-intro>p,.field>span,.request-points span,footer) {color:var(--season-muted)}
html[data-xs-season] .xs-season-request :is(.request-intro small,.card-head small) {color:var(--season-accent)}
html[data-xs-season] .xs-season-request .request-intro h1 em {background-image:var(--season-button)}
html[data-xs-season] .xs-season-request :is(.field input,.type-picker label>span) {background:var(--season-raised);color:var(--season-ink);border-color:var(--season-line)}
html[data-xs-season] .xs-season-request .field input::placeholder {color:var(--season-muted)}
html[data-xs-season] .xs-season-request :is(#sendRequest,.request-brand span) {background:var(--season-button);color:#fff}
html[data-xs-season] .xs-season-request .glow-one {background:var(--season-a)}
html[data-xs-season] .xs-season-request .glow-two {background:var(--season-b)}
html[data-xs-season] .xs-season-request .type-picker input:checked+span {
  background:var(--season-button);
  border-color:var(--season-accent);
  color:#fff;
}
html[data-xs-season] .xs-season-request .type-picker input:focus-visible+span {
  outline:3px solid var(--season-accent);
  outline-offset:3px;
}
html[data-xs-season] .xs-season-request :is(.request-success p,.request-success a,footer b) {color:var(--season-muted)}
html[data-xs-season][data-theme="light"] .xs-season-request #requestState {color:#a0293e}
html[data-xs-season] .xs-season-request .glow {max-width:100%;max-height:100%}
html[data-xs-season] .xs-season-request .glow-one {left:0}
html[data-xs-season] .xs-season-request .glow-two {right:0;bottom:0}
html[data-xs-season] .xs-season-request .request-card::before {background:var(--season-button)}
html[data-xs-season] .xs-season-request .card-head>span {color:var(--season-accent);border-color:var(--season-line)}
html[data-xs-season][data-theme="light"] .xs-season-request .request-card {box-shadow:0 24px 65px #59351c20}

html[data-xs-season] #home .hero .meta .chip {background:#111113c9!important;color:#fff0df!important}
html[data-xs-season] body.xs-home-page .brand span {background:var(--season-button)!important}
html[data-xs-season] #home :is(.xs-explore-heading>div>span,.xs-tonight-heading>div>span) {color:var(--season-accent)!important}
html[data-xs-season] .xs-season-request .request-success button {background:var(--season-button)}
/* Garder les commandes du carrousel au-dessus de la rangée du catalogue. */
html body.xs-home-page #home .hero-dots {bottom:64px!important}
