/* ASH_EMERALD_SLATE_V1 — visual override only, October 2026 */
:root {
  --ash-ink:#193341; --ash-primary:#103F4C; --ash-emerald:#126858;
  --ash-gold:#E6BC6A; --ash-canvas:#F4F8FA; --ash-border:#DDE9E8;
  --ink:var(--ash-ink); --navy:var(--ash-primary); --navy2:var(--ash-primary);
  --emerald:var(--ash-emerald); --gold:var(--ash-gold); --bg:var(--ash-canvas);
  --line:var(--ash-border);
  --mts-primary:var(--ash-emerald); --mts-primary-dark:#0E564A;
  --mts-primary-soft:#E8F5F0; --mts-sky:#4EA38C; --mts-sky-light:#D4EDE4;
  --mts-canvas:var(--ash-canvas); --mts-card:#fff; --mts-text:var(--ash-ink);
  --mts-muted:#5C7280; --mts-border:var(--ash-border); --mts-gold:var(--ash-gold);
  --mts-shadow:0 13px 35px rgba(16,63,76,.065);
  --mts-shadow-hover:0 16px 38px rgba(16,63,76,.11);
  --gtk-accent:var(--ash-emerald);
}
html {background:var(--ash-canvas)!important;}
html body {background:radial-gradient(circle at 95% 1%,rgba(18,104,88,.045),transparent 24rem),var(--ash-canvas)!important;color:var(--ash-ink)!important;}
html body a {color:var(--ash-emerald);}
html body :is(input,select,textarea):focus-visible,
html body :is(button,a):focus-visible{outline:2px solid #218B71;outline-offset:2px;}
html body .btn.primary,
html body .auth-premium .auth-login-btn {background:linear-gradient(125deg,#126858,#0E4F47)!important;color:#fff!important;box-shadow:0 9px 24px rgba(18,104,88,.16)!important;}
html body .btn.primary:hover,
html body .auth-premium .auth-login-btn:hover {background:linear-gradient(125deg,#167861,#103F4C)!important;}
html body .btn.secondary {background:#E9F5F0!important;color:#145F50!important;}
html body .topbar {border-bottom:1px solid var(--ash-border)!important;box-shadow:0 8px 24px rgba(16,63,76,.035)!important;}
html body .status-pill {background:#E9F7F0!important;color:#11634F!important;border-color:#CDE9D9!important;}
html body .status-dot {background:#159E74!important;}
html body .top-title {color:var(--ash-ink)!important;}
html body .content :is(.panel-eyebrow,.premium-panel-eyebrow,.section-eyebrow) {color:#126858!important;}
html body .content :is(.card,.premium-panel,.premium-kpi,.import-main-card){border-color:var(--ash-border)!important;box-shadow:0 13px 36px rgba(16,63,76,.055)!important;}
html body .content .dashboard-hero.welcome-hero,
html body .content .dashboard-hero,
html body .content .import-data-hero{
  background:radial-gradient(circle at 99% 9%,rgba(230,188,106,.13),transparent 30%),linear-gradient(115deg,#103F4C 0%,#126858 70%,#257D70 100%)!important;
  border-color:rgba(255,255,255,.12)!important;
  box-shadow:0 20px 43px rgba(16,63,76,.16)!important;
}
html body .content :is(.dashboard-hero,.import-data-hero) :is(h1,h2,h3) {color:#fff!important;}
html body .content :is(.dashboard-hero,.import-data-hero) .dashboard-eyebrow {color:#F3D58A!important;}
html body .content .dashboard-hero .welcome-title > span {color:#F3CF79!important;}
html body .content :is(.dashboard-hero,.import-data-hero) p {color:#D7EAE7!important;}
html body .content .identity-score-inner {background:#103F4C!important;}
html body .content .identity-score-card {background:rgba(4,38,44,.28)!important;}
html body .content .import-source-node.primary{background:rgba(10,56,60,.32)!important;border-color:rgba(255,255,255,.22)!important;}
html body .content .import-source-node.primary :is(b,small) {color:#fff!important;}
html body .content .import-tab.active{border-color:#BBDDD2!important;background:#F1F8F5!important;color:#103F4C!important;}
html body .content :is(.import-file-button,.import-upload-icon.emis){background:#126858!important;color:#fff!important;}
html body .content :is(.premium-kpi-grid,.premium-panel) .kpi-icon {box-shadow:none;}
/* Login: preserve original layout, replace azure palette */
html body .auth-premium{background:radial-gradient(circle at 11% 6%,rgba(18,104,88,.08),transparent 32rem),linear-gradient(130deg,#F2F8F7,#EDF4F1 58%,#F7FAFC)!important;}
html body .auth-premium .auth-left{background:linear-gradient(135deg,#103F4C 0%,#126858 70%,#257D70 100%)!important;color:#fff!important;box-shadow:0 26px 70px rgba(16,63,76,.12)!important;}
html body .auth-premium .auth-hero-copy h2,
html body .auth-premium .auth-brand-copy strong,
html body .auth-premium .auth-feature b{color:#fff!important;text-shadow:none!important;}
html body .auth-premium :is(.auth-brand-copy span,.auth-hero-copy>p,.auth-feature small,.auth-left-note){color:#D8EAE5!important;}
html body .auth-premium .auth-kicker,
html body .auth-premium .auth-feature>span{color:#F3D58A!important;}
html body .auth-premium .auth-card-premium {border-color:#DCEAE4!important;box-shadow:0 25px 60px rgba(16,63,76,.09)!important;}
html body .auth-premium .auth-card-premium::before{background:rgba(18,104,88,.08)!important;}
html body .auth-premium :is(.auth-card-premium .eyebrow,.auth-footer a){color:#126858!important;}
html body .auth-premium :is(.auth-school-logo,.auth-field input:focus){border-color:#B9E0D0!important;}
/* Sidebar design system */
html body .app-shell{grid-template-columns:282px minmax(0,1fr)!important;}
html body .sidebar{
 width:auto!important;padding:18px 14px 13px!important;
 background:linear-gradient(180deg,#FFFFFF 0%,#FAFCFB 65%,#F1F7F4 100%)!important;
 color:var(--ash-ink)!important;border-right:1px solid #D8E6E2!important;
 box-shadow:8px 0 28px rgba(16,63,76,.035)!important;
}
html body .sidebar::before {background:none!important;content:none!important;}
html body .sidebar-brand{gap:9px!important;padding:4px 3px 15px!important;min-height:68px!important;border-bottom:1px solid #E5EEEB!important;}
html body .sidebar-logo {width:46px!important;min-width:46px!important;height:46px!important;border:1px solid #DEEAE5!important;box-shadow:0 5px 12px rgba(16,63,76,.06)!important;color:#126858!important;}
html body .sidebar-brand-copy{min-width:0!important;flex:1!important;}
html body .sidebar-brand-copy b {font-size:14px!important;color:#153645!important;line-height:1.15!important;}
html body .sidebar-brand-copy #sidebarSchoolName{
 max-width:none!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;
 display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;
 overflow:hidden!important;line-height:1.35!important;max-height:2.7em!important;
 color:#5D7580!important;font-size:11px!important;letter-spacing:0!important;
}
html body .sidebar-section-label{display:none!important;}
html body .sidebar nav{display:flex!important;flex-direction:column!important;gap:3px!important;margin-top:10px!important;padding:0 3px 10px 0!important;scrollbar-color:#D3E4DF transparent!important;}
html body .sidebar nav::-webkit-scrollbar-thumb{background:#D3E4DF!important;}
html body .sidebar .nav{min-height:42px!important;gap:10px!important;margin:0!important;padding:7px 10px!important;border-radius:11px!important;color:#526975!important;font-size:13px!important;transform:none!important;}
html body .sidebar .nav:hover{background:#F0F7F4!important;color:#126858!important;border-color:#E0EEE8!important;transform:none!important;}
html body .sidebar .nav.active{
 background:#E6F3ED!important;color:#125B4D!important;border:1px solid #CBEBDA!important;
 box-shadow:inset 3px 0 0 #126858!important;
}
html body .sidebar .nav.active::before{content:none!important;}
html body .sidebar .nav-icon,
html body .sidebar .classes-nav-icon{flex:none!important;color:#648A86!important;background:#F3F8F6!important;border:1px solid #E5EFEA!important;box-shadow:none!important;}
html body .sidebar .nav.active :is(.nav-icon,.classes-nav-icon){background:#126858!important;border-color:#126858!important;color:#fff!important;box-shadow:none!important;}
html body .sidebar-user {border-color:#E2ECE7!important;background:#fff!important;}
html body .sidebar .sidebar-user-copy #userName{color:#193341!important;}
html body .sidebar .sidebar-user-copy small{color:#648078!important;}
html body .sidebar .sidebar-logout{color:#966E23!important;}
html body .sidebar-foot{border-color:#E5EEEA!important;}
/* Modern grouped sidebar */
html body .sidebar .ash-nav-home{margin-bottom:5px!important;}
html body .sidebar .ash-nav-group {display:block;min-width:0;}
html body .sidebar .ash-nav-heading{
 display:flex;align-items:center;gap:9px;width:100%;padding:10px 9px;margin:3px 0 2px;
 background:transparent;color:#587477;border:1px solid transparent;border-radius:10px;
 text-align:left;font-family:inherit;font-weight:750;font-size:12px;line-height:1.25;cursor:pointer;letter-spacing:.01em;
}
html body .sidebar .ash-nav-heading:hover {background:#F1F7F4;color:#125B4D;}
html body .sidebar .ash-nav-heading[aria-expanded="true"]{color:#126858;background:#F6FAF8;}
html body .sidebar .ash-nav-heading svg {width:16px;height:16px;flex:none;stroke:currentColor;fill:none;stroke-width:1.8;}
html body .sidebar .ash-nav-heading .ash-group-title {flex:1;}
html body .sidebar .ash-nav-heading .ash-group-chevron{width:15px;height:15px;transition:transform .16s ease;}
html body .sidebar .ash-nav-heading[aria-expanded="true"] .ash-group-chevron{transform:rotate(180deg);}
html body .sidebar .ash-nav-group-items{display:flex;flex-direction:column;gap:2px;margin:0 0 6px;padding:0 0 0 9px;border-left:1px solid #E7F0EB;}
html body .sidebar .ash-nav-group-items[hidden]{display:none!important;}
html body .sidebar .ash-nav-group-items .nav{min-height:41px!important;}
html body .sidebar .ash-sidebar-collapse{display:grid!important;place-items:center;flex:none;width:29px;height:29px;padding:0;border:1px solid #E0EBE7;border-radius:9px;background:#F5F9F7;color:#52736D;cursor:pointer;}
html body .sidebar .ash-sidebar-collapse svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;}
html body .sidebar .ash-sidebar-collapse:hover{background:#EAF5EF;color:#126858;}
html body .ash-sidebar-backdrop{display:none;}
/* Dense desktop icon-only option */
@media(min-width:761px){
 html body .app-shell.ash-sidebar-collapsed{grid-template-columns:78px minmax(0,1fr)!important;}
 html body .app-shell.ash-sidebar-collapsed .sidebar{padding-left:11px!important;padding-right:11px!important;}
 html body .app-shell.ash-sidebar-collapsed .sidebar-brand{flex-direction:column;gap:6px!important;}
 html body .app-shell.ash-sidebar-collapsed .sidebar-brand-copy,
 html body .app-shell.ash-sidebar-collapsed .sidebar-foot .sidebar-user-copy,
 html body .app-shell.ash-sidebar-collapsed .sidebar-foot .sidebar-logout span,
 html body .app-shell.ash-sidebar-collapsed .sidebar .nav > span:last-child,
 html body .app-shell.ash-sidebar-collapsed .sidebar .ash-nav-heading{display:none!important;}
 html body .app-shell.ash-sidebar-collapsed .sidebar .ash-nav-group-items{display:flex!important;border:0;margin:0;padding:0;}
 html body .app-shell.ash-sidebar-collapsed .sidebar .nav{justify-content:center!important;padding:7px 0!important;}
 html body .app-shell.ash-sidebar-collapsed .sidebar .sidebar-foot .sidebar-user{padding:6px 3px!important;justify-content:center!important;}
 html body .app-shell.ash-sidebar-collapsed .sidebar .sidebar-foot .sidebar-logout{justify-content:center!important;min-height:32px!important;padding:2px!important;}
 html body .app-shell.ash-sidebar-collapsed .sidebar .sidebar-foot .sidebar-logout::before{content:"↗";}
}
/* Mobile drawer overlay, don't touch document scrolling until open */
@media(max-width:760px){
 html body .app-shell{display:block!important;}
 html body .sidebar{width:282px!important;max-width:min(90vw,282px)!important;position:fixed!important;z-index:80!important;box-shadow:18px 0 48px rgba(16,63,76,.18)!important;}
 html body .sidebar .ash-sidebar-collapse{display:none!important;}
 html body .ash-sidebar-backdrop{position:fixed;inset:0;z-index:70;background:rgba(11,39,48,.42);}
 html body .ash-sidebar-backdrop.is-visible{display:block!important;}
 html body .topbar .menu-btn{display:block!important;}
}
@media(prefers-reduced-motion:reduce){
 html body .sidebar .ash-nav-heading .ash-group-chevron{transition:none;}
}
