/* Halloween presentation layer. All overrides are seasonal AND screen-only.
   Keep data, story artwork, the floor-plan canvas, and printed documents intact. */
.nexus-halloween-banner { display: none; }
.nexus-halloween-art[hidden] { display: none !important; }

@media screen {
  html.nexus-seasonal {
    color-scheme: dark;
    --hw-bg: #120f18;
    --hw-surface: #1e1828;
    --hw-raised: #292034;
    --hw-stripe: #251d30;
    --hw-hover: #352640;
    --hw-line: #594762;
    --hw-text: #fff3e6;
    --hw-muted: #cabbcf;
    --hw-orange: #ff983f;
    --hw-orange-ink: #251307;
    --hw-purple: #c4a0f6;
    --hw-good: #a4deb0;
    --hw-bad: #ffabba;
    --page-bg: var(--hw-bg);
    --paper: var(--hw-surface);
    --ink: var(--hw-text);
    --muted: var(--hw-muted);
    --soft: var(--hw-raised);
    --soft-2: var(--hw-surface);
    --line: var(--hw-line);
    --famous-red: var(--hw-orange);
    --famous-black: var(--hw-text);
    --famous-text: var(--hw-text);
    --famous-muted: var(--hw-muted);
    --famous-line: var(--hw-line);
    --famous-soft: var(--hw-raised);
    --famous-soft-2: var(--hw-surface);
    --famous-white: var(--hw-surface);
    --tools-text: var(--hw-text);
    --tools-muted: var(--hw-muted);
    --tools-line: var(--hw-line);
    --tools-card: var(--hw-surface);
    --tools-soft: var(--hw-raised);
    --mc-text: var(--hw-text);
    --mc-muted: var(--hw-muted);
    --mc-line: var(--hw-line);
    --mc-line-strong: #806188;
    --mc-soft: var(--hw-raised);
    --mc-panel: var(--hw-surface);
    --nexus-surface: var(--hw-surface);
    --nexus-field: var(--hw-raised);
    --nexus-text: var(--hw-text);
    --nexus-muted: var(--hw-muted);
    --nexus-border: var(--hw-line);
    --nexus-seasonal-orange: var(--hw-orange);
    --nexus-seasonal-orange-soft: #462a1a;
    --nexus-seasonal-purple: var(--hw-purple);
  }

  html.nexus-seasonal,
  html.nexus-seasonal body:is(body, .tools-page, .money-count-page, .store-layout-page, .sales-report-page) {
    background-color: var(--hw-bg) !important;
    color: var(--hw-text) !important;
  }
  html.nexus-seasonal body {
    background-image:
      radial-gradient(ellipse at 0 0, #ff983f12, transparent 42rem),
      radial-gradient(ellipse at 100% 8%, #b181ef14, transparent 46rem) !important;
    background-attachment: scroll !important;
  }
  html.nexus-seasonal:not(.nexus-styles-ready),
  html.nexus-seasonal:not(.nexus-styles-ready)::before {
    background: var(--hw-bg) !important;
  }
  html.nexus-seasonal:not(.nexus-styles-ready)::after {
    border-color: var(--hw-line) !important;
    border-top-color: var(--hw-orange) !important;
  }

  /* Shared navigation: warm black, orange icons, lavender hover states. */
  html.nexus-seasonal body :is(.app-header, .notes-header, .tools-header,
    .money-count-header, .sales-report-header, .news-page-header,
    .site-global-nav, .site-global-nav.output-actions, .site-shared-compact-bar,
    .site-notes-compact-nav, .compact-nav-menu, .site-shared-compact-drawer,
    .site-notes-nav-drawer, .compact-nav-bar.compact-controls-row-host) {
    background: #1a141f !important;
    color: var(--hw-text) !important;
    border-color: var(--hw-line) !important;
  }
  html.nexus-seasonal body .site-global-nav {
    border-top-color: var(--hw-orange) !important;
  }
  html.nexus-seasonal body :is(.site-nav-item, .site-nav-account,
    .site-shared-compact-title, .compact-nav-toggle, .compact-nav-close,
    .compact-nav-store-account, .compact-nav-menu-title, .site-page-title) {
    color: var(--hw-text) !important;
  }
  html.nexus-seasonal body :is(.site-nav-item, .compact-nav-item,
    .site-notes-nav-section .site-nav-item) {
    background: transparent !important;
    border-color: transparent !important;
  }
  html.nexus-seasonal body :is(.site-nav-item, .compact-nav-item):is(:hover, [aria-current="page"]) {
    background: var(--hw-hover) !important;
    color: var(--hw-text) !important;
    box-shadow: inset 0 -2px 0 var(--hw-orange);
  }
  html.nexus-seasonal body :is(.site-nav-item, .compact-nav-item,
    .site-nav-account, .site-shared-compact-search, .nexus-theme-toggle) svg {
    color: var(--hw-orange) !important;
  }
  html.nexus-seasonal body :is(.site-shared-nav-brand-icon,
    .site-shared-compact-title-icon, .nexus-hamburger-svg) {
    filter: brightness(0) saturate(100%) invert(70%) sepia(51%) saturate(1589%) hue-rotate(331deg) brightness(105%) contrast(101%) !important;
  }
  html.nexus-seasonal body :is(.site-page-subtitle, .site-page-store-name,
    .compact-nav-section-title, .site-page-meta, .compact-nav-menu-head) {
    color: var(--hw-muted) !important;
  }
  html.nexus-seasonal body .site-nav-account-avatar {
    background: var(--hw-orange) !important;
    color: var(--hw-orange-ink) !important;
  }

  /* Common panels, forms, dialogs, and the surrounding floor-plan editor. */
  html.nexus-seasonal body :is(.worksheet, .tool-card, .money-count-panel,
    .notes-toolbar, .notes-search, .note-card, .sales-panel, .sales-metric,
    .cloud-dialog-card, .zone-dialog-card, .schedule-dialog-card,
    .promo-guide-card, .shoe-search-card, .roster-dialog-card, .sales-store-drawer,
    .cloud-account-identity, .cloud-access-card, .nexus-admin-card,
    .store-layout-preview-panel, .store-layout-controls, .store-layout-save-bar,
    .store-layout-card, .store-layout-side-card, .store-layout-wall-card,
    .store-layout-bin-card, .store-layout-edit-card, dialog > div) {
    background: var(--hw-surface) !important;
    color: var(--hw-text) !important;
    border-color: var(--hw-line) !important;
    box-shadow: 0 8px 28px #0002 !important;
  }
  html.nexus-seasonal body :is(.section-content, .tasks-section, .customer-section,
    .financial-content, .promotions-box, .manager-notes, .quick-output-actions,
    .money-count-total-hero, .money-count-summary, .money-count-row-total,
    .cloud-login-role, .cloud-territory-store-button, .store-layout-canvas-wrap) {
    background: var(--hw-raised) !important;
    color: var(--hw-text) !important;
    border-color: var(--hw-line) !important;
  }
  html.nexus-seasonal body :is(.tool-card h2, .tool-card-open, .sales-value,
    .sales-shell h2, .sales-metric h3, .money-count-panel h2,
    .cloud-dialog-heading, .zone-dialog-title, .schedule-dialog-title,
    .store-layout-panel-heading, .store-layout-preview-heading,
    .store-layout-save-field strong, .compact-nav-store-account strong) {
    color: var(--hw-text) !important;
  }
  html.nexus-seasonal body :is(.tool-card-category, .tool-card p,
    .note-card-content, .sales-muted, .sales-kicker, .sales-scope-note,
    .sales-metric dt, .sales-source, .sales-import-actions span,
    .sales-territory-store-name, .sales-associate-id, .section-help,
    .customer-copy p, .section-heading-inline p, .financial-content p,
    .cloud-dialog-copy, .zone-dialog-subtitle, .schedule-dialog-subtitle,
    .cloud-fields label > span, .cloud-access-heading, .nexus-admin-help,
    .store-layout-kicker, .store-layout-autosave-note, .store-layout-legend,
    .store-layout-preview-heading p, .store-layout-panel-heading p, .save-status) {
    color: var(--hw-muted) !important;
  }
  html.nexus-seasonal body :is(.tool-card-icon, .note-category) {
    background: #32213f !important;
    color: var(--hw-purple) !important;
    border-color: #705484 !important;
  }
  html.nexus-seasonal body .tool-card-icon svg {
    color: var(--hw-purple) !important;
    stroke: currentColor !important;
  }
  html.nexus-seasonal body .tool-card:is(:hover, :focus-visible) {
    border-color: var(--hw-orange) !important;
    box-shadow: 0 8px 28px #ff983f0c !important;
  }
  html.nexus-seasonal body dialog::backdrop { background: #0b0712cc !important; }

  html.nexus-seasonal body.nexus-account-page {
    --account-line: var(--hw-line);
    --account-muted: var(--hw-muted);
    --account-field: var(--hw-raised);
  }
  html.nexus-seasonal body.nexus-account-page #cloudDialog {
    background: var(--hw-surface) !important;
    border-color: var(--hw-line) !important;
    color: var(--hw-text) !important;
  }
  html.nexus-seasonal body.nexus-account-page :is(#data-sync, #employeeAccounts) p,
  html.nexus-seasonal body .account-page-heading > p:last-child {
    color: var(--hw-muted) !important;
  }
  html.nexus-seasonal body #data-sync .account-employee-actions > a {
    background: #30213e !important;
    border-color: #816294 !important;
    color: #efdfff !important;
  }
  html.nexus-seasonal body #employeeAccessMessage.is-error { color: var(--hw-bad) !important; }
  html.nexus-seasonal body summary:focus-visible {
    outline: 2px solid var(--hw-orange) !important;
    outline-offset: 3px;
  }

  /* Keep native sizes and behavior; only restyle the controls, not the map. */
  html.nexus-seasonal body :is(input, textarea, select,
    .store-search-control, .week-picker, .shift-time-control,
    .money-count-currency-input, .money-count-qty):not(:where(.store-layout-map *)) {
    background-color: var(--hw-raised) !important;
    color: var(--hw-text) !important;
    border-color: var(--hw-line) !important;
    accent-color: var(--hw-orange);
    caret-color: var(--hw-orange);
  }
  html.nexus-seasonal body :is(input, textarea)::placeholder {
    color: var(--hw-muted) !important;
    opacity: 1;
  }
  html.nexus-seasonal body :is(select, option, optgroup) {
    color: var(--hw-text) !important;
    background-color: var(--hw-raised) !important;
  }
  html.nexus-seasonal body select:not([multiple]) {
    appearance: none;
    background-repeat: no-repeat !important;
    background-position: right 12px center !important;
    background-size: 14px 8px !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 8'%3E%3Cpath d='m1 1 6 6 6-6' fill='none' stroke='%23ff983f' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E") !important;
  }
  html.nexus-seasonal body :where(button, .output-button, .secondary-button,
    .news-card-action, .news-page-button, .news-page-empty a,
    .notes-back, .notes-button, .sales-button, .money-count-action-button,
    .promo-pdf-download-button, .dayforce-clock-external):not(:where(.store-layout-map *)) {
    background-color: #30213e !important;
    color: #efdfff !important;
    border-color: #816294 !important;
  }
  html.nexus-seasonal body :is(button, .output-button, .news-card-action,
    .news-page-button, .sales-button, .notes-button):not(:where(.store-layout-map *)):not(:disabled):hover {
    background-color: #443051 !important;
    border-color: var(--hw-purple) !important;
    filter: none !important;
  }
  html.nexus-seasonal body :is(button, .output-button, .news-card-action,
    .news-page-button, .sales-button) :is(span, strong, svg) {
    color: inherit !important;
  }
  html.nexus-seasonal body :is(.primary-button, .cloud-primary-button,
    .notes-button-primary, .sales-primary, .news-card-action-primary,
    .news-page-button-primary, .news-page-empty a, .news-load-more,
    .day-tab.active, .notes-filter.is-active, .home-section-tab.is-active,
    .home-upcoming-view-button.is-active, .money-count-day-tab[aria-selected="true"],
    .cloud-login-role button.is-active) {
    background: var(--hw-orange) !important;
    color: var(--hw-orange-ink) !important;
    border-color: var(--hw-orange) !important;
    box-shadow: 0 3px 12px #ff983f14 !important;
  }
  html.nexus-seasonal body :is(.primary-button, .cloud-primary-button,
    .notes-button-primary, .sales-primary, .news-card-action-primary,
    .news-page-button-primary, .news-load-more, .day-tab.active,
    .home-section-tab.is-active, .home-upcoming-view-button.is-active):not(:disabled):hover {
    background: #ffb065 !important;
    color: var(--hw-orange-ink) !important;
    border-color: #ffb065 !important;
  }
  html.nexus-seasonal body :is(button, a, input, select, textarea):focus-visible {
    outline: 2px solid var(--hw-orange) !important;
    outline-offset: 3px !important;
  }
  html.nexus-seasonal body button:disabled {
    opacity: .55;
    cursor: not-allowed;
  }
  html.nexus-seasonal body :is(.compact-nav-toggle, .compact-nav-close,
    .site-shared-compact-search, .site-notes-nav-toggle, .site-notes-nav-close,
    .nexus-theme-toggle, .sales-store-link, .sales-sort-button) {
    background: transparent !important;
    color: var(--hw-orange) !important;
    border-color: transparent !important;
    box-shadow: none !important;
  }
  html.nexus-seasonal body :is(.dialog-close, .store-layout-dialog-close)::before,
  html.nexus-seasonal body :is(.dialog-close, .store-layout-dialog-close)::after {
    background: var(--hw-text) !important;
  }
  html.nexus-seasonal body .calendar-controls #weekPicker :is(#weekDate, #weekRangeLabel),
  html.nexus-seasonal body .schedule-page-week-nav :is(#scheduleWeekDate, #scheduleWeekRangeLabel) {
    color: var(--hw-text) !important;
  }

  /* Real data tables: plum headers, alternating dark rows and clear selection. */
  html.nexus-seasonal body :is(.sales-shell, .worksheet, .schedule-page,
    [id="scheduleDialog"], .news-card-expanded, .money-count-page) table {
    background: var(--hw-surface) !important;
    color: var(--hw-text) !important;
    border-color: var(--hw-line) !important;
  }
  html.nexus-seasonal body :is(.sales-shell, .worksheet, .schedule-page,
    [id="scheduleDialog"], .news-card-expanded, .money-count-page) :is(th, td) {
    color: var(--hw-text) !important;
    border-color: var(--hw-line) !important;
    font-variant-numeric: tabular-nums;
  }
  html.nexus-seasonal body :is(.sales-shell, .worksheet, .schedule-page,
    [id="scheduleDialog"], .news-card-expanded, .money-count-page) tbody tr:nth-child(odd) > td {
    background: var(--hw-surface) !important;
  }
  html.nexus-seasonal body :is(.sales-shell, .worksheet, .schedule-page,
    [id="scheduleDialog"], .news-card-expanded, .money-count-page) tbody tr:nth-child(even) > td {
    background: var(--hw-stripe) !important;
  }
  html.nexus-seasonal body :is(.sales-shell, .worksheet, .schedule-page,
    [id="scheduleDialog"], .news-card-expanded, .money-count-page) :is(thead th, th, td.row-label),
  html.nexus-seasonal body .section-rail {
    background: #302036 !important;
    color: #ffd2a7 !important;
    border-color: #76516a !important;
  }
  html.nexus-seasonal body :is(.sales-shell, .schedule-page, [id="scheduleDialog"]) tbody tr:hover > td {
    background: var(--hw-hover) !important;
  }
  html.nexus-seasonal body .sales-shell tbody tr.sales-territory-active > td {
    background: #422c25 !important;
  }
  html.nexus-seasonal body .sales-shell tbody tr.sales-territory-active > td:first-child {
    box-shadow: inset 3px 0 0 var(--hw-orange);
  }
  html.nexus-seasonal body :is(.sales-shell, .worksheet, .schedule-page, [id="scheduleDialog"])
    td :is(input, select, .zone-cell-button) {
    background-color: transparent !important;
  }
  html.nexus-seasonal body .sales-shell :is(.sales-store-link, .sales-sort-button),
  html.nexus-seasonal body .sales-shell th button {
    background: transparent !important;
    color: inherit !important;
    border-color: transparent !important;
    box-shadow: none !important;
  }
  html.nexus-seasonal body .sales-shell .sales-store-link[aria-pressed="true"] {
    color: var(--hw-orange) !important;
  }
  html.nexus-seasonal body :is(.sales-import, .sales-sync, .sales-territory-panel,
    .sales-associate-panel, .sales-live-toolbar) {
    border-top-color: var(--hw-orange) !important;
    border-left-color: var(--hw-line) !important;
  }
  html.nexus-seasonal body .sales-live-state {
    background: var(--hw-raised) !important;
    color: var(--hw-muted) !important;
  }
  /* Positive/negative results stay semantic, never decorative orange/purple. */
  html.nexus-seasonal body .sales-shell .sales-good,
  html.nexus-seasonal body .sales-live-state[data-live="true"],
  html.nexus-seasonal body .store-layout-save-status.is-saved {
    color: var(--hw-good) !important;
  }
  html.nexus-seasonal body .sales-shell .sales-bad,
  html.nexus-seasonal body #reportStatus[data-error="true"],
  html.nexus-seasonal body .store-layout-save-status.is-error {
    color: var(--hw-bad) !important;
  }
  html.nexus-seasonal body .sales-shell .sales-missing { color: var(--hw-muted) !important; }
  html.nexus-seasonal body :is(.sales-warnings, .cloud-message.is-error, .nexus-admin-message.is-error) {
    background: #3c261f !important;
    color: #ffceb0 !important;
    border-color: #966849 !important;
  }

  /* Home: fix the dark-on-dark headings, descriptions and Spark links. */
  html.nexus-seasonal body .news-page-card {
    margin: 14px 0;
    padding: 24px;
    border: 1px solid #51405b !important;
    border-radius: 16px;
    background: var(--hw-surface) !important;
    color: var(--hw-text) !important;
  }
  html.nexus-seasonal body .news-page-card h2,
  html.nexus-seasonal body .news-card-expanded :is(h2, h3, h4, strong, b),
  html.nexus-seasonal body :is(.news-page-count, .news-page-empty h2,
    .news-card-expanded-author, .home-promo-title, .home-promo-content h3,
    .home-visual-task-content h3, .home-upcoming-promo-content h3) {
    color: var(--hw-text) !important;
  }
  html.nexus-seasonal body :is(.news-card-description, .news-card-expanded,
    .news-card-expanded blockquote, .news-card-date, .news-page-updated,
    .news-card-expanded-meta, .news-card-expanded-note, .news-page-empty p,
    .news-search-empty, .home-promo-updated, .home-promo-empty,
    .home-promo-content p, .home-visual-task-content p, .home-upcoming-promo-content p) {
    color: var(--hw-muted) !important;
  }
  html.nexus-seasonal body :is(.news-page-toolbar, .news-card-expanded,
    .news-card-expanded-meta, .news-card-expanded h2, .news-card-expanded hr,
    .news-search-empty, .home-promo-heading, .home-promo-card,
    .home-visual-task, .home-upcoming-promo) {
    border-color: var(--hw-line) !important;
  }
  html.nexus-seasonal body .news-card-expanded a {
    color: #ffb573 !important;
    text-decoration-color: #bd844f;
  }
  html.nexus-seasonal body .news-card-expanded blockquote { border-left-color: var(--hw-purple) !important; }
  html.nexus-seasonal body .news-card-media {
    background: var(--hw-raised) !important;
    border-color: #725b7c !important;
    border-radius: 12px;
  }
  html.nexus-seasonal body .news-card-image { background: var(--hw-raised) !important; }
  html.nexus-seasonal body :is(.news-card-action, .news-page-refresh, .news-load-more) {
    border-radius: 10px;
    transition: background-color .15s ease, border-color .15s ease;
  }
  html.nexus-seasonal body .news-page-empty-icon { background: #32213f !important; }
  html.nexus-seasonal body .news-page-empty-icon svg { stroke: var(--hw-orange) !important; }
  html.nexus-seasonal body .news-preview-card {
    background: linear-gradient(90deg, #1e1828, #32233e, #1e1828) !important;
    border-radius: 14px;
    background-size: 250% 100% !important;
  }
  html.nexus-seasonal body .home-section-controls { gap: 18px; }
  html.nexus-seasonal body .home-section-controls .home-section-tabs {
    min-height: 52px;
    padding: 5px;
    border: 1px solid var(--hw-line) !important;
    border-radius: 13px;
    background: var(--hw-surface) !important;
  }
  html.nexus-seasonal body .home-section-tab {
    background: transparent !important;
    color: var(--hw-muted) !important;
    border-radius: 9px;
  }
  html.nexus-seasonal body .home-section-tab:not(.is-active):hover {
    background: var(--hw-hover) !important;
    color: var(--hw-text) !important;
  }
  html.nexus-seasonal body .home-section-tab.is-active {
    background: var(--hw-orange) !important;
    color: var(--hw-orange-ink) !important;
  }
  html.nexus-seasonal body .home-story-search {
    min-height: 52px;
    padding: 0 14px;
    gap: 10px;
    border: 1px solid var(--hw-line) !important;
    border-radius: 13px;
    background: var(--hw-surface) !important;
    color: var(--hw-purple) !important;
  }
  html.nexus-seasonal body .home-story-search:focus-within {
    border-color: var(--hw-orange) !important;
    box-shadow: 0 0 0 2px #ff983f24;
  }
  html.nexus-seasonal body .home-story-search #homeStorySearch {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    color: var(--hw-text) !important;
    outline: none !important;
  }
  html.nexus-seasonal body .home-story-search #homeStorySearch::placeholder { color: var(--hw-muted) !important; }

  /* Promotions and calendar share the same palette as Stories. */
  html.nexus-seasonal body :is(.home-promo-content, .home-upcoming-pane,
    .home-visual-task-content, .home-upcoming-promo-content, .home-promo-empty,
    .home-calendar-day, .home-calendar-cell) {
    background: var(--hw-surface) !important;
    color: var(--hw-text) !important;
    border-color: var(--hw-line) !important;
  }
  html.nexus-seasonal body .home-promo-card.is-link:is(:hover, :focus-visible) .home-promo-content {
    background: var(--hw-hover) !important;
    border-color: var(--hw-purple) !important;
  }
  html.nexus-seasonal body :is(.home-promo-date, .home-visual-task-date,
    .home-upcoming-promo-date, .home-upcoming-pane-heading, .home-calendar-toolbar,
    .home-calendar-weekday) {
    background: #352342 !important;
    color: #edd8ff !important;
    border-color: #76558a !important;
  }
  html.nexus-seasonal body :is(.home-upcoming-view-toggle, .home-calendar-grid) { border-color: var(--hw-line) !important; }
  html.nexus-seasonal body :is(.home-calendar-month-label, .home-calendar-day-number) { color: var(--hw-text) !important; }

  html.nexus-seasonal body .home-calendar-day.is-outside-month { background: #17121f !important; }
  html.nexus-seasonal body .home-calendar-day.is-outside-month .home-calendar-day-number,
  html.nexus-seasonal body .home-calendar-more { color: var(--hw-muted) !important; }
  html.nexus-seasonal body .home-calendar-day.is-today { box-shadow: inset 0 0 0 2px var(--hw-orange) !important; }
  html.nexus-seasonal body .home-calendar-day.is-today .home-calendar-day-number { color: var(--hw-orange) !important; }
  html.nexus-seasonal body .home-calendar-event {
    background: #bc99e9 !important;
    color: #241131 !important;
  }
  html.nexus-seasonal body .home-calendar-event::before,
  html.nexus-seasonal body .home-calendar-event::after { color: inherit !important; }
  html.nexus-seasonal body .site-global-nav .site-nav-item svg,
  html.nexus-seasonal body .compact-nav-item svg { color: var(--hw-orange) !important; }

  /* A compact decorative home banner. No overlays on content or controls. */
  html.nexus-seasonal body .nexus-halloween-banner:not([hidden]) {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    min-height: 120px;
    margin: 0 0 20px;
    padding: 20px 26px;
    overflow: hidden;
    border: 1px solid #78503e;
    border-radius: 18px;
    background: radial-gradient(ellipse at 95% 80%, #5f35483b, transparent 65%),
      linear-gradient(110deg, #34201f, #24182f 70%);
    color: var(--hw-text);
  }
  html.nexus-seasonal body .nexus-halloween-copy { min-width: 0; }
  html.nexus-seasonal body .nexus-halloween-eyebrow {
    display: block;
    margin-bottom: 7px;
    color: #ffb575;
    font-size: 10px;
    font-weight: 750;
    letter-spacing: .14em;
    text-transform: uppercase;
  }
  html.nexus-seasonal body .nexus-halloween-title {
    display: block;
    color: var(--hw-text);
    font-size: clamp(21px, 2.5vw, 30px);
    font-weight: 750;
    letter-spacing: -.025em;
    line-height: 1.2;
  }
  html.nexus-seasonal body .nexus-halloween-caption {
    margin: 8px 0 0;
    color: #d9bfd0;
    font-size: 12px;
    line-height: 1.5;
  }
  html.nexus-seasonal body .nexus-halloween-art {
    display: block;
    flex: 0 0 auto;
    width: clamp(140px, 28vw, 280px);
    max-width: 42%;
    height: auto;
    pointer-events: none;
    user-select: none;
  }
  html.nexus-seasonal body .nexus-theme-choice {
    background: var(--hw-raised) !important;
    color: var(--hw-text) !important;
    border-color: var(--hw-line) !important;
  }
  html.nexus-seasonal body .nexus-theme-choice.is-active {
    background: #422c25 !important;
    border-color: var(--hw-orange) !important;
    box-shadow: inset 0 0 0 1px var(--hw-orange);
  }
  html.nexus-seasonal body .nexus-theme-choice-copy small { color: var(--hw-muted) !important; }
  html.nexus-seasonal body .nexus-theme-choice[data-theme="seasonal"] .nexus-theme-choice-icon { color: var(--hw-orange) !important; }
  html.nexus-seasonal body .brand-logo { filter: none !important; }
}

@media screen and (max-width: 760px) {
  html.nexus-seasonal body .news-page-card { padding: 18px; }
  html.nexus-seasonal body .nexus-halloween-banner:not([hidden]) { padding: 18px; min-height: 104px; margin-bottom: 16px; gap: 10px; }
  html.nexus-seasonal body .nexus-halloween-caption { display: none; }
  html.nexus-seasonal body .home-section-controls { gap: 10px; }
}
@media screen and (max-width: 430px) {
  html.nexus-seasonal body .nexus-halloween-title { font-size: 21px; }
  html.nexus-seasonal body .home-section-tab { white-space: normal; line-height: 1.25; padding-inline: 5px; }
  html.nexus-seasonal body .nexus-halloween-art { width: 118px; max-width: 38%; }
  html.nexus-seasonal body .news-page-card { padding: 16px; border-radius: 13px; }
}
@media screen and (prefers-reduced-motion: reduce) {
  html.nexus-seasonal body :is(.news-preview-card, .news-card-action,
    .news-page-refresh, .news-load-more, .tool-card) { animation: none !important; transition: none !important; }
}
@media print {
  .nexus-halloween-banner { display: none !important; }
}

/* Schedule grid refinement — seasonal theme only (desktop and mobile). */
html.nexus-seasonal body :is(.schedule-page, #scheduleDialog) .weekly-schedule-table {
  border-collapse: separate;
  border-spacing: 0;
}
html.nexus-seasonal body :is(.schedule-page, #scheduleDialog) .weekly-schedule-table :is(th, td) {
  border-right: 1px solid #100d12 !important;
  border-bottom: 1px solid #100d12 !important;
}
html.nexus-seasonal body :is(.schedule-page, #scheduleDialog) .weekly-schedule-table thead th {
  background: #241b29 !important;
  border-bottom-color: #09070a !important;
}
html.nexus-seasonal body :is(.schedule-page, #scheduleDialog) .weekly-schedule-table tbody tr:nth-child(even) > :is(th, td) {
  background-color: #302536 !important;
}
html.nexus-seasonal body :is(.schedule-page, #scheduleDialog) .weekly-schedule-table tbody tr:nth-child(odd) > :is(th, td) {
  background-color: #35293b !important;
}
html.nexus-seasonal body :is(.schedule-page, #scheduleDialog) :is(.schedule-summary-chip, .schedule-table-wrap) {
  border-color: #171019 !important;
}
