/* FIX 73.0.9 R2 — complete four-season accent coverage without changing semantic operation colors */
body.season-theme{--season-primary:#059669;--season-primary-dark:#065f46;--season-secondary:#0ea5a8;--season-soft:#ecfdf5;--season-surface:#f8fffc;--season-border:color-mix(in srgb,var(--season-primary) 20%,#dbe5ef);--season-panel:color-mix(in srgb,var(--season-soft) 34%,#fff);--season-shadow:color-mix(in srgb,var(--season-primary) 9%,rgba(15,23,42,.11));--season-ring:color-mix(in srgb,var(--season-primary) 16%,transparent);background-color:var(--season-surface)!important;background-image:radial-gradient(circle at 8% 2%,color-mix(in srgb,var(--season-primary) 10%,transparent),transparent 24%),radial-gradient(circle at 96% 98%,color-mix(in srgb,var(--season-secondary) 8%,transparent),transparent 27%);background-attachment:fixed}
body.season-spring{--season-primary:#059669;--season-primary-dark:#065f46;--season-secondary:#0ea5a8;--season-soft:#ecfdf5;--season-surface:#f8fffc}
body.season-summer{--season-primary:#0284c7;--season-primary-dark:#075985;--season-secondary:#0891b2;--season-soft:#effaff;--season-surface:#f8fcff}
body.season-autumn{--season-primary:#ea580c;--season-primary-dark:#9a3412;--season-secondary:#b45309;--season-soft:#fff7ed;--season-surface:#fffaf5}
body.season-winter{--season-primary:#2563eb;--season-primary-dark:#1e3a8a;--season-secondary:#0284c7;--season-soft:#eff6ff;--season-surface:#f8fbff}

/* Main shells and neutral surfaces */
body.season-theme :is(.ess-content,.ess-page-body,.sp-main,.gp-main){background:linear-gradient(180deg,color-mix(in srgb,var(--season-surface) 72%,#fff),var(--season-surface))!important;border-color:var(--season-border)!important}
body.season-theme :is(.ess-panel-head,.sp-header,.gp-header,.ess-staff-dashboard-hero){background:linear-gradient(105deg,var(--season-primary-dark),var(--season-primary),var(--season-secondary))!important;color:#fff!important}
body.season-theme :is(.ess-panel-head p,.sp-brand small,.gp-brand small,.ess-staff-dashboard-hero p){color:color-mix(in srgb,#fff 78%,var(--season-soft))!important}
body.season-theme :is(.ess-sidebar,.sp-sidebar,.gp-sidebar){border-color:var(--season-border)!important;background:linear-gradient(180deg,#fff,var(--season-surface))!important;box-shadow:0 12px 32px var(--season-shadow)!important}
body.season-theme :is(.ess-topbar,.ess-mobile-sidebar-tools){border-color:var(--season-border)!important;background:color-mix(in srgb,#fff 94%,var(--season-soft))!important}
body.season-theme :is(.ess-sidebar-brand,.sp-student-card,.gp-guardian-card){border-color:var(--season-border)!important;background:linear-gradient(135deg,#fff,var(--season-soft))!important}
body.season-theme :is(.ess-sidebar-brand b,.sp-student-card b,.gp-guardian-card b){color:var(--season-primary-dark)!important}

/* Sidebar/menu states */
body.season-theme :is(.ess-sidebar a.active,.sp-sidebar nav a.active,.gp-sidebar nav a.active,.esm-item.active,.esm-group.is-active>.esm-group-toggle){background:linear-gradient(100deg,var(--season-primary-dark),var(--season-primary))!important;border-color:var(--season-primary)!important;color:#fff!important;box-shadow:0 8px 18px color-mix(in srgb,var(--season-primary) 22%,transparent)!important}
body.season-theme :is(.ess-sidebar a:hover:not(.active),.sp-sidebar nav a:hover:not(.active),.gp-sidebar nav a:hover:not(.active),.esm-item:hover:not(.active),.esm-group-toggle:hover,.esm-child:hover:not(.active)){background:var(--season-soft)!important;color:var(--season-primary-dark)!important;border-color:var(--season-border)!important}
body.season-theme .esm-child.active{background:var(--season-soft)!important;border-color:color-mix(in srgb,var(--season-primary) 42%,#cbd5e1)!important;color:var(--season-primary-dark)!important}
body.season-theme .esm-submenu{border-right-color:color-mix(in srgb,var(--season-primary) 32%,#dbeafe)!important}
body.season-theme :is(.esm-icon,.ess-arrow,.sp-sidebar nav i,.gp-sidebar nav i){color:var(--season-primary)!important}
body.season-theme :is(.ess-sidebar a.active,.sp-sidebar nav a.active,.gp-sidebar nav a.active,.esm-item.active,.esm-group.is-active>.esm-group-toggle) :is(.esm-icon,.ess-arrow,i){color:#fff!important}

/* Cards, grids, modals and access-management surfaces */
body.season-theme :is(.ess-card,.ess-card-box,.ess-section-box,.ess-info-card,.ess-mini,.ess-stat-card,.st-card,.sp-card,.sp-day,.sp-assignment,.sp-chat,.sp-topic-list>a,.sp-profile-grid>div,.gp-card,.gp-stat,.gp-student-card,.gm-card,.gd-reply,.founder-hero-card,.founder-actions-card,.founder-role-card,.founder-unit-card,.honor-create-card,.honor-filter-card,.honor-records-card,.su-panel,.ax-role-assignment-card,.ax-scope-step,.ax-permission-toolbar,.ess-staff-education-card,.ess-staff-attendance-card,.ess-staff-evaluated-card,.ess-staff-discipline-card,.ess-staff-workbox-card,.ess-staff-grade-overview-card){border-color:var(--season-border)!important;box-shadow:0 15px 34px var(--season-shadow)!important}
body.season-theme :is(.ess-card-box,.ess-section-box,.sp-card,.sp-day,.sp-assignment,.sp-chat,.gp-card,.gp-stat,.founder-actions-card,.founder-role-card,.founder-unit-card,.honor-create-card,.honor-filter-card,.honor-records-card,.su-panel,.ess-staff-education-card,.ess-staff-attendance-card,.ess-staff-evaluated-card,.ess-staff-discipline-card,.ess-staff-workbox-card,.ess-staff-grade-overview-card){background:linear-gradient(180deg,#fff,var(--season-panel))!important}
body.season-theme :is(.ess-question,.ess-staff-mini-stats>div,.ess-staff-evaluated-metric,.ess-staff-discipline-meta>div,.ess-mark-current-detail>div,.ess-mark-history-scores>div,.gp-meta span,.gp-child-summary>div,.sp-rich-text,.sp-day article,.sp-empty,.ax-scope-group,.ax-mode-switch){background:color-mix(in srgb,var(--season-soft) 55%,#fff)!important;border-color:var(--season-border)!important}
body.season-theme :is(.ess-modal-box,.ax-modal-box){border:1px solid var(--season-border)!important;box-shadow:0 25px 75px color-mix(in srgb,var(--season-primary) 13%,rgba(0,0,0,.24))!important}
body.season-theme :is(.ess-modal-head,.ax-modal-head,.ax-modal-sticky-actions){border-color:var(--season-border)!important}

/* Primary accents; semantic detail/edit/view/delete colors are intentionally preserved */
body.season-theme :is(.ess-btn-primary,.ess-btn-blue,.st-btn-primary,.sp-primary,.sp-quick a,.sp-page-head button,.ax-btn-primary,.su-btn-primary){background:linear-gradient(95deg,var(--season-primary-dark),var(--season-primary),var(--season-secondary))!important;border-color:var(--season-primary-dark)!important;color:#fff!important;box-shadow:0 8px 20px color-mix(in srgb,var(--season-primary) 20%,transparent)!important}
body.season-theme :is(.ess-tab.active,.sp-chip.active,.gp-student-switcher a.active,.ax-tab.active,[role="tab"][aria-selected="true"]){background:var(--season-primary)!important;border-color:var(--season-primary-dark)!important;color:#fff!important}
body.season-theme :is(.ess-info,.gp-notice.info,.sp-topic-first,.sp-chip,.ax-permission-menu-note,.ax-scope-source,.ax-scope-summary.auto,.su-info-strong){background:var(--season-soft)!important;border-color:var(--season-border)!important;color:var(--season-primary-dark)!important}
body.season-theme :is(.ess-badge:not(.green):not(.red):not(.orange):not(.dark),.gp-badge:not(.success):not(.warning):not(.danger),.sp-status:not(.submitted):not(.present):not(.graded):not(.absent):not(.late):not(.returned):not(.excused)){background:var(--season-soft)!important;color:var(--season-primary-dark)!important}
body.season-theme :is(.ess-stat-card:not(.green):not(.purple):not(.orange):not(.red):not(.dark):not(.cyan):not(.lime) strong,.sp-stats b,.gp-stat b,.founder-stat-title,.ess-staff-dashboard-date b){color:var(--season-primary-dark)!important}
body.season-theme .ess-stat-card:not(.green):not(.purple):not(.orange):not(.red):not(.dark):not(.cyan):not(.lime):before{background:color-mix(in srgb,var(--season-primary) 18%,#fff)!important}
body.season-theme :is(.founder-stat-icon.blue,.founder-stat-icon.cyan,.gp-child-avatar,.sp-profile-avatar,.sp-photo-fallback){background:linear-gradient(135deg,var(--season-soft),color-mix(in srgb,var(--season-primary) 22%,#fff))!important;color:var(--season-primary-dark)!important}

/* Forms and filters */
body.season-theme :is(input,select,textarea):focus{border-color:var(--season-primary)!important;box-shadow:0 0 0 3px var(--season-ring)!important;outline:none!important}
body.season-theme :is(.ess-field input,.ess-field select,.ess-field textarea,.sp-form input,.sp-form select,.sp-form textarea,.gp-field input,.gp-field select,.gp-field textarea,.gp-main input,.gp-main select,.gp-main textarea,.ax-field input,.ax-field select,.ax-field textarea){border-color:color-mix(in srgb,var(--season-primary) 17%,#cbd5e1)!important}
body.season-theme :is(.ess-staff-evaluated-filter,.ess-filter-card,.gf-toolbar,.gs-toolbar,.ax-multi-role-intro,.ax-permission-explain-grid>div){background:color-mix(in srgb,var(--season-soft) 42%,#fff)!important;border-color:var(--season-border)!important}
body.season-theme :is(input[type="checkbox"],input[type="radio"]){accent-color:var(--season-primary)!important}

/* Tables, charts, pagination */
body.season-theme :is(.ess-table,.sp-table-wrap,.gp-table-wrap,.ess-weekly-scroll){border-color:var(--season-border)!important}
body.season-theme :is(.ess-table th,.sp-table-wrap th,.gp-table-wrap th,.ess-weekly-table thead th,.ax-matrix th){background:linear-gradient(180deg,var(--season-soft),color-mix(in srgb,var(--season-soft) 44%,#fff))!important;color:var(--season-primary-dark)!important;border-color:var(--season-border)!important}
body.season-theme :is(.ess-table td,.sp-table-wrap td,.gp-table-wrap td,.ess-weekly-table td){border-color:color-mix(in srgb,var(--season-primary) 10%,#edf1f6)!important}
body.season-theme :is(.ess-staff-pagination a,.ess-pagination a,.sp-pagination a,.gp-pagination a){border-color:var(--season-border)!important;color:var(--season-primary-dark)!important;background:#fff!important}
body.season-theme :is(.ess-staff-pagination a:hover,.ess-pagination a:hover,.sp-pagination a:hover,.gp-pagination a:hover,.ess-staff-pagination .active,.ess-pagination .active,.sp-pagination .active,.gp-pagination .active){background:var(--season-primary)!important;color:#fff!important;border-color:var(--season-primary-dark)!important}
body.season-theme :is(.ess-weekly-lesson,.sp-files>a){background:var(--season-soft)!important;border-color:var(--season-border)!important;color:var(--season-primary-dark)!important}
body.season-theme :is(.ess-weekly-lesson b,.sp-day time,.sp-card-head a,.sp-back,.sp-files>a,.ess-audit-details summary,.gm-open){color:var(--season-primary-dark)!important}

/* Multi-role/access and units */
body.season-theme :is(.ax-role-assignment-card.is-primary,.ax-scope-step:focus-within,.ess-unit-switcher:focus-within){box-shadow:0 0 0 4px var(--season-ring)!important;border-color:var(--season-primary)!important}
body.season-theme :is(.ax-check-list label:has(input:checked),.ax-grouped-check-list label:has(input:checked)){background:var(--season-soft)!important;border-color:var(--season-primary)!important;color:var(--season-primary-dark)!important}
body.season-theme :is(.ess-unit-switcher,.su-founder-create-box,.su-founder-credential-card){border-color:var(--season-border)!important;background:linear-gradient(180deg,#fff,var(--season-panel))!important}

/* Links and focus visibility */
body.season-theme :is(.ess-page-body,.sp-main,.gp-main) a:not(.ess-btn):not(.ess-btn-green):not(.ess-btn-orange):not(.ess-btn-red):not(.gp-btn):not(.sp-primary){text-decoration-color:color-mix(in srgb,var(--season-primary) 55%,transparent)}
body.season-theme :is(a,button,input,select,textarea):focus-visible{outline:3px solid var(--season-ring)!important;outline-offset:2px}
body.season-theme [aria-current="page"]{outline-color:var(--season-ring)!important}

/* Optional motion only on large branded surfaces */
body.season-theme[data-season-motion="1"] :is(.ess-panel-head,.sp-header,.gp-header,.ess-staff-dashboard-hero){background-size:180% 180%!important;animation:seasonGradientShiftR2 14s ease infinite}
@keyframes seasonGradientShiftR2{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}
@media(prefers-reduced-motion:reduce){body.season-theme *{animation:none!important;transition-duration:.01ms!important}}
@media print{body.season-theme{background:#fff!important;background-image:none!important}body.season-theme :is(.ess-card,.sp-card,.gp-card){box-shadow:none!important}}
