@import url('https://fonts.googleapis.com/css2?family=Sofia+Sans:wght@300;400;500;600;700;800&display=swap');

:root{
  --bg:#edf1f7;
  --surface:#ffffffcc;
  --surface-strong:#ffffffee;
  --surface-soft:#f5f7fb;
  --line:#d7deea;
  --line-strong:#c7cfdd;
  --text:#24314f;
  --muted:#667390;
  --accent:#0d325c;
  --accent-2:#ecd29f;
  --accent-soft:rgba(236,210,159,.28);
  --ok:#1f9d61;
  --warn:#d29b23;
  --bad:#d55c6b;
  --red:#e56262;
  --teacher:#3aa282;
  --student:#0d325c;
  --radius-xl:30px;
  --radius-lg:24px;
  --radius-md:18px;
  --radius-sm:14px;
  --shadow:0 16px 40px rgba(39,54,96,.10);
  --shadow-soft:0 8px 24px rgba(39,54,96,.07);
  --spring:cubic-bezier(.22,1,.36,1);
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;min-height:100%}
body{
  font-family:'Sofia Sans',system-ui,sans-serif;
  color:var(--text);
  background:
    radial-gradient(900px 360px at -10% -10%, rgba(13,50,92,.10), transparent 60%),
    radial-gradient(800px 320px at 110% 0%, rgba(236,210,159,.18), transparent 56%),
    linear-gradient(180deg,#eef2f8 0%, #e9eef6 58%, #eef2f8 100%);
}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
.hidden{display:none!important}
.icon-svg{display:inline-grid;place-items:center;width:18px;height:18px}
.icon-svg svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linejoin:round}

.app-shell{display:grid;grid-template-columns:260px minmax(0,1fr);gap:18px;padding:18px;min-height:100vh}
.sidebar-left{position:sticky;top:18px;height:calc(100vh - 36px)}
.sidebar-panel{height:100%;display:flex;flex-direction:column;gap:14px;padding:16px;background:linear-gradient(180deg,var(--surface-strong),rgba(248,250,254,.9));border:1px solid var(--line);border-radius:var(--radius-xl);box-shadow:var(--shadow);overflow:hidden}
.sidebar-top{display:grid;gap:14px}
.brand-wrap{display:flex;align-items:center;gap:12px}
.brand-copy{min-width:0}
.brand-mark{width:46px;height:46px;border-radius:16px;background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff;display:grid;place-items:center;font-weight:800;font-size:24px;box-shadow:0 10px 24px rgba(97,126,246,.22)}
.brand{font-size:28px;font-weight:800;letter-spacing:-.04em;line-height:1}
.sidebar-sub{font-size:13px;color:var(--muted);margin-top:5px;line-height:1.25}
.icon-button{width:42px;height:42px;border-radius:15px;border:1px solid var(--line);background:#fff;display:grid;place-items:center;cursor:pointer;color:var(--text)}
.sidebar-collapse-btn .icon-svg{transform:rotate(180deg);transition:transform .25s ease}
.user-chip,.card,.metric-card,.hero-panel,.school-card,.overlay-card,.tab-link,.nav-group-trigger,.version-pill{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-soft);backdrop-filter:blur(14px)}
.user-chip{display:flex;align-items:center;gap:12px;padding:12px;border-radius:20px}
.user-chip strong{display:block;font-size:16px}
.user-chip-copy{min-width:0}
.username-line{font-size:13px;font-weight:700;color:var(--muted);overflow:hidden;text-overflow:ellipsis}
.status-mini{display:flex;gap:8px;align-items:center;font-size:12px;font-weight:700;margin-top:4px;color:var(--muted)}
.status-mini.online{color:var(--ok)} .status-mini.idle{color:#a87a16} .status-mini.offline{color:var(--bad)}
.status-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.status-dot.green{background:var(--ok)}.status-dot.yellow{background:var(--warn)}.status-dot.red{background:var(--bad)}
.side-nav{display:grid;gap:10px;overflow:auto;padding-right:4px}
.nav-group{display:grid;gap:10px}
.nav-group-trigger{padding:12px 14px;border-radius:18px;display:flex;justify-content:space-between;align-items:center;cursor:pointer;font-weight:800;color:var(--text)}
.nav-group-title{font-size:15px}
.nav-group-chevron{color:var(--muted);transition:transform .25s ease}
.nav-group.is-open .nav-group-chevron{transform:rotate(180deg)}
.nav-group-panel{display:none;gap:8px;padding:0 2px}
.nav-group.is-open .nav-group-panel{display:grid;animation:fadeUp .25s ease}
.nav-link{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:16px;border:1px solid transparent;transition:background .2s ease,border-color .2s ease,transform .25s var(--spring)}
.nav-link:hover,.nav-link:focus-visible{background:#fff;border-color:var(--line-strong);transform:translateX(2px)}
.nav-link.active{background:linear-gradient(135deg,#eef2ff,#f8f9ff);border-color:rgba(97,126,246,.22)}
.nav-ico{width:38px;height:38px;border-radius:14px;background:var(--accent-soft);display:grid;place-items:center;color:var(--accent);flex:0 0 38px}
.sidebar-footer{margin-top:auto;display:grid;gap:10px}
.version-pill{padding:10px 12px;border-radius:16px;font-size:13px;color:var(--muted)}
.version-pill strong{color:var(--text)}

.content-max{width:min(100%, 1360px);margin:0 auto;display:grid;gap:14px}
.main-shell{min-width:0;display:grid}
.page-body{display:grid;gap:18px}
.beta-banner{width:100%;display:flex;align-items:center;gap:12px;justify-content:space-between;padding:14px 18px;border-radius:22px;background:linear-gradient(180deg,#f8eabc,#f5e6b0);border:1px solid #e6cf74;box-shadow:var(--shadow-soft);color:#7a5a0b;flex-wrap:wrap}
.beta-banner-icon{width:38px;height:38px;border-radius:12px;background:rgba(255,255,255,.45);display:grid;place-items:center;flex:0 0 38px}
.beta-build{margin-left:auto;color:#71530b;font-size:14px}
.beta-build strong{font-weight:800}
.hero-panel{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:18px 20px;border-radius:26px}
.hero-panel.compact{padding:16px 18px}
.eyebrow{text-transform:uppercase;font-size:11px;letter-spacing:.16em;color:var(--accent);font-weight:800;margin-bottom:8px}
.hero-panel h1{margin:0;font-size:clamp(22px,2.6vw,34px);letter-spacing:-.04em;line-height:1.05}
.hero-text{margin:8px 0 0;color:var(--muted);font-size:15px;line-height:1.45;max-width:700px}
.hero-meta,.hero-actions,.badge-row,.inline-meta,.prompt-actions,.tabs,.profile-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.hero-meta{justify-content:flex-end;max-width:420px;margin-left:auto}
.hero-chip,.pill{display:inline-flex;align-items:center;gap:8px;padding:9px 12px;border-radius:999px;background:#fff;border:1px solid var(--line);font-weight:700;font-size:13px;max-width:100%}
.pill.ok{background:rgba(31,157,97,.10);color:#166f45;border-color:rgba(31,157,97,.18)}
.pill.warn{background:#fff4d0;color:#805e10;border-color:#ebd28b}
.pill.bad{background:rgba(213,92,107,.10);color:#8f3040;border-color:rgba(213,92,107,.18)}
.pill.role-admin{background:rgba(229,98,98,.12);color:#992e2e;border-color:rgba(229,98,98,.22)}
.pill.role-teacher{background:rgba(58,162,130,.12);color:#1c6a54;border-color:rgba(58,162,130,.22)}
.pill.role-student{background:rgba(97,126,246,.12);color:#3950b1;border-color:rgba(97,126,246,.22)}
.muted{color:var(--muted)}

.button,button{appearance:none;border:none;border-radius:16px;padding:12px 16px;display:inline-flex;align-items:center;justify-content:center;gap:8px;background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff;font-weight:800;cursor:pointer;box-shadow:0 12px 24px rgba(97,126,246,.18);transition:transform .2s ease,box-shadow .2s ease}
.button:hover,button:hover{transform:translateY(-1px);box-shadow:0 16px 26px rgba(97,126,246,.22)}
.button.secondary{background:#fff;color:var(--text);border:1px solid var(--line);box-shadow:none}
.button.danger{background:linear-gradient(135deg,#d7556f,#ef7e72)}
.button.warn{background:linear-gradient(135deg,#f0b84e,#ffd46c);color:#593b00}
.button.success{background:linear-gradient(135deg,#2fa871,#58cb88)}
.button.small{padding:9px 12px;border-radius:13px;font-size:13px}

.card{padding:20px;border-radius:var(--radius-lg)}
.section-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:16px}
.section-head h2,.card h2{margin:0;font-size:22px;letter-spacing:-.03em}
.stack{display:grid;gap:14px}
.content-grid{display:grid;gap:18px}.content-grid.two-col{grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr)}
.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px}
.metric-card{padding:16px 18px;border-radius:20px;display:grid;gap:10px}.metric-card.soft{background:rgba(255,255,255,.55)}
.metric-value{font-size:28px;font-weight:800;letter-spacing:-.03em}.metric-mini{font-size:18px;font-weight:800}
.overview-card{padding:14px 16px;border-radius:18px;background:rgba(255,255,255,.65);border:1px solid var(--line);display:grid;gap:6px;min-width:150px}
.quick-overview{display:grid;grid-template-columns:repeat(2,minmax(150px,1fr));gap:12px;max-width:420px;width:100%}
.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:18px}
.table-wrap{overflow:auto}
.data-table,table{width:100%;border-collapse:separate;border-spacing:0 10px}
.data-table th,table th{padding:0 12px 8px;text-align:left;font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.data-table td,table td{padding:14px 12px;background:rgba(255,255,255,.7);border-top:1px solid var(--line);border-bottom:1px solid var(--line);vertical-align:middle}
.data-table td:first-child,table td:first-child{border-left:1px solid var(--line);border-radius:16px 0 0 16px}
.data-table td:last-child,table td:last-child{border-right:1px solid var(--line);border-radius:0 16px 16px 0}
.empty-state{padding:24px;border-radius:20px;border:1px dashed var(--line-strong);color:var(--muted);text-align:center;background:rgba(255,255,255,.4)}

.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
.form-grid.single-col{grid-template-columns:1fr}
label{display:grid;gap:8px;font-weight:700;color:var(--text)}
input,select,textarea{width:100%;padding:13px 14px;border-radius:15px;border:1px solid var(--line);background:#fff;color:var(--text);outline:none;font:inherit;transition:border-color .2s ease,box-shadow .2s ease}
input:focus,select:focus,textarea:focus{border-color:rgba(97,126,246,.6);box-shadow:0 0 0 4px rgba(97,126,246,.12)}
textarea{min-height:120px;resize:vertical}
.form-actions{display:flex;align-items:end;gap:10px}.span-all{grid-column:1/-1}
.flash{padding:12px 14px;border-radius:14px;border:1px solid rgba(213,92,107,.18);background:rgba(213,92,107,.10);color:#8f3040;margin-bottom:14px}

.auth-grid,.exam-cards{display:grid;gap:18px}.auth-grid{grid-template-columns:minmax(0,1fr) 320px}
.profile-head{display:flex;align-items:center;gap:16px;margin-bottom:16px}
.avatar{border-radius:50%;background:#e6ebf3;border:1px solid var(--line);object-fit:cover;overflow:hidden}
.avatar-sm{width:52px;height:52px}.avatar-md{width:68px;height:68px}.avatar-lg{width:104px;height:104px}
.avatar-fallback{display:grid;place-items:center;color:#fff;font-weight:800}
.avatar-bg-a{background:linear-gradient(135deg,#617ef6,#8aa0ff)}
.avatar-bg-b{background:linear-gradient(135deg,#ef7d9b,#f5a8be)}
.avatar-bg-c{background:linear-gradient(135deg,#3aa282,#66cfaf)}
.avatar-bg-d{background:linear-gradient(135deg,#f0b84e,#ffd46c);color:#5a3a00}
.avatar-bg-e{background:linear-gradient(135deg,#9a77f2,#c1a5ff)}
.avatar-bg-f{background:linear-gradient(135deg,#ff8b6c,#ffb29f)}
.role-admin{color:#992e2e}.role-teacher{color:#1c6a54}.role-student{color:#3950b1}

.tab-link{padding:10px 14px;border-radius:16px;font-weight:800}.tab-link.active{background:#fff;border-color:rgba(97,126,246,.24)}
.search-toolbar{display:grid;gap:12px}
.filter-bar.filter-bar-inline{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;align-items:end}
.search-results-grid{display:grid;grid-template-columns:1fr;gap:12px}
.search-result{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr) auto;gap:14px;align-items:center;padding:14px 16px;border-radius:20px;background:rgba(255,255,255,.72);border:1px solid var(--line);box-shadow:var(--shadow-soft)}
.search-result-title{font-size:20px;font-weight:800;line-height:1.15}
.search-result-meta,.search-result-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.user-row{display:flex;align-items:center;gap:12px}
.user-row .avatar{flex:0 0 44px;width:44px;height:44px}

.chart-stage{display:grid;grid-template-columns:220px minmax(0,1fr);gap:18px;align-items:center}
.donut{--value:0;position:relative;width:190px;height:190px;border-radius:50%;background:conic-gradient(var(--accent) calc(var(--value)*1%), #e8edf7 0)}
.donut::after{content:"";position:absolute;inset:22px;border-radius:50%;background:rgba(255,255,255,.92);border:1px solid var(--line)}
.donut-center{position:absolute;inset:0;display:grid;place-items:center;text-align:center;z-index:1}
.donut-center strong{font-size:32px;letter-spacing:-.03em}
.mini-note{color:var(--muted);font-size:13px}.mini-meter{display:grid;gap:6px}.meter-track{height:10px;border-radius:999px;background:#e8edf7;overflow:hidden}.meter-fill{height:100%;width:0;background:linear-gradient(90deg,var(--accent),var(--accent-2));border-radius:999px;transition:width 1s var(--spring)}

.overlay{position:fixed;inset:0;background:rgba(211,218,230,.28);backdrop-filter:blur(1.5px);display:grid;place-items:center;padding:18px;z-index:1100}
.overlay-card{max-width:min(720px,96vw);width:100%;padding:24px;border-radius:28px;background:rgba(255,255,255,.94);border:1px solid var(--line);box-shadow:0 24px 56px rgba(27,39,78,.16)}
.prompt-card.simple{max-width:430px}
.prompt-head{display:flex;gap:14px;align-items:center;margin-bottom:16px}.prompt-head h3{margin:0 0 4px;font-size:28px}.prompt-head p{margin:0;color:var(--muted)}
.prompt-icon{width:58px;height:58px;border-radius:18px;background:var(--accent-soft);display:grid;place-items:center;color:var(--accent);flex:0 0 58px}
.prompt-input{padding:16px 18px;border-radius:18px;font-size:20px;letter-spacing:.18em;text-align:center}.prompt-error{margin-top:10px;padding:10px 12px;border-radius:14px;background:rgba(213,92,107,.10);color:#8f3040;border:1px solid rgba(213,92,107,.18)}
.prompt-actions.center{justify-content:center}
.loader-card{text-align:center;max-width:420px}.loader-card h3{margin:12px 0 0;font-size:28px}.loader-spinner{width:74px;height:74px;border-radius:50%;border:6px solid rgba(97,126,246,.16);border-top-color:var(--accent);margin:0 auto;animation:spin .9s linear infinite}
.feedback-card{text-align:center;max-width:420px;padding:28px}
.feedback-card h3{font-size:30px;margin:10px 0 8px}.feedback-card p{margin:0 0 18px;color:var(--muted);font-size:16px}
.feedback-icon{width:74px;height:74px;border-radius:22px;display:grid;place-items:center;margin:0 auto;background:#eef7f1;color:var(--ok)}
.feedback-card.is-error .feedback-icon{background:#fff0f2;color:var(--bad)}
.feedback-progress{height:8px;border-radius:999px;background:#e8edf7;overflow:hidden;margin:8px 0 18px}.feedback-progress span{display:block;width:100%;height:100%;background:linear-gradient(90deg,var(--accent),var(--accent-2));transform-origin:left center}
.school-modal-card{max-width:min(1180px,96vw)}
.school-filter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:16px}
.school-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;max-height:56vh;overflow:auto;padding-right:4px}
.school-card,.school-item{display:grid;gap:10px;padding:16px;border-radius:24px;border:1px solid var(--line);background:linear-gradient(180deg,rgba(255,255,255,.86),rgba(245,248,253,.88));box-shadow:var(--shadow-soft);position:relative;overflow:hidden}
.school-item{cursor:pointer;text-align:left;width:100%}
.school-item:hover,.school-card:hover{transform:translateY(-1px);transition:transform .2s ease,border-color .2s ease; border-color:var(--line-strong)}
.school-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.school-title{font-size:20px;font-weight:800;line-height:1.18}
.school-meta{display:flex;flex-wrap:wrap;gap:8px}.school-code,.school-kind{padding:7px 10px;border-radius:999px;background:#f1f3ff;color:#4b62d2;font-weight:800;font-size:13px;border:1px solid #dfe6ff}
.school-icon-badge{width:46px;height:46px;border-radius:15px;background:#eef2ff;display:grid;place-items:center;color:var(--accent);flex:0 0 46px}
.school-location{font-size:17px;font-weight:700;color:#5d6b8b}.school-subinfo{color:var(--muted);font-size:14px;line-height:1.4}
.school-display-row{display:flex;align-items:center;gap:10px}.school-display{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:#fff}
.school-picker-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end}
.school-selected{padding:12px 14px;border-radius:15px;border:1px solid var(--line);background:#fff;min-height:48px;display:flex;align-items:center;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.school-stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.list-animate{animation:itemIn .26s ease both}

.crop-modal-card{max-width:720px}
.crop-stage{position:relative;height:340px;border-radius:24px;border:1px dashed var(--line-strong);background:#f4f6fb;overflow:hidden;cursor:grab}
.crop-stage.is-dragging{cursor:grabbing}
.crop-stage::after{content:"";position:absolute;left:50%;top:50%;width:260px;height:260px;border-radius:50%;transform:translate(-50%,-50%);border:2px solid rgba(97,126,246,.35);box-shadow:0 0 0 999px rgba(255,255,255,.35);pointer-events:none}
.crop-stage img{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);transform-origin:center center;user-select:none;max-width:none}
.crop-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}

.login-history-list{display:grid;gap:12px}.login-history-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px 16px;border-radius:18px;border:1px solid var(--line);background:rgba(255,255,255,.64)}
.login-history-item .log-icon{width:40px;height:40px;border-radius:14px;background:#eef2ff;color:var(--accent);display:grid;place-items:center}.login-history-item .log-title{font-weight:800}.login-history-meta{display:flex;gap:10px;flex-wrap:wrap;color:var(--muted);font-size:14px}

.reveal{animation:fadeUp .34s ease both}
@keyframes fadeUp{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes itemIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

body.sidebar-collapsed .app-shell{grid-template-columns:92px minmax(0,1fr)}
body.sidebar-collapsed .brand-copy,
body.sidebar-collapsed .user-chip-copy,
body.sidebar-collapsed .nav-label,
body.sidebar-collapsed .nav-group-title,
body.sidebar-collapsed .sidebar-footer{display:none}
body.sidebar-collapsed .nav-group-trigger{display:none}
body.sidebar-collapsed .nav-group-panel{display:grid!important}
body.sidebar-collapsed .nav-link{justify-content:center;padding:10px}
body.sidebar-collapsed .nav-ico{margin:0}
body.sidebar-collapsed .sidebar-collapse-btn .icon-svg{transform:rotate(0deg)}

@media (max-width:1180px){
  .app-shell{grid-template-columns:1fr}
  .sidebar-left{position:relative;top:0;height:auto}
  body.sidebar-collapsed .app-shell{grid-template-columns:1fr}
  .content-grid.two-col,.dashboard-grid,.auth-grid,.chart-stage{grid-template-columns:1fr}
  .school-list,.school-filter-grid,.school-stats-grid,.filter-bar.filter-bar-inline{grid-template-columns:1fr 1fr}
  .search-result{grid-template-columns:1fr}
}
@media (max-width:720px){
  .app-shell{padding:12px;gap:12px}
  .content-max{gap:12px}
  .hero-panel,.card{padding:16px}
  .beta-banner{padding:12px 14px}
  .hero-panel{flex-direction:column}
  .hero-meta{max-width:none;margin-left:0;justify-content:flex-start}
  .school-list,.school-filter-grid,.school-stats-grid,.filter-bar.filter-bar-inline{grid-template-columns:1fr}
  .quick-overview{grid-template-columns:1fr}
}

.line-chart{overflow:visible}.animated-line{stroke-dasharray:1200;stroke-dashoffset:1200;animation:drawLine 1.6s ease forwards}@keyframes drawLine{to{stroke-dashoffset:0}}

/* v42 overrides */
.app-shell{grid-template-columns:290px minmax(0,1fr);gap:14px;padding:14px}
.sidebar-left{top:14px;height:calc(100vh - 28px)}
.sidebar-panel{padding:14px 12px}
.side-nav{gap:8px}
.nav-group-trigger{padding:10px 12px;border-radius:16px}
.nav-link{padding:9px 10px;border-radius:14px}
.nav-ico{width:34px;height:34px;border-radius:12px;flex:0 0 34px}
.sidebar-mini-nav{display:none;gap:10px;overflow:auto;padding-top:6px}
.sidebar-mini-nav .nav-link{padding:0;border:none;background:none;box-shadow:none;justify-content:center}
.sidebar-mini-nav .nav-ico{width:44px;height:44px;border-radius:14px}
.content-max{max-width:1600px;width:100%}
.beta-banner{width:100%;max-width:none;display:grid;grid-template-columns:auto 1fr auto;align-items:center}
.beta-banner-copy{min-width:0}
.hero-panel{padding:14px 18px}
.hero-panel.compact{padding:12px 16px}
.button,button{border-radius:18px;padding:13px 18px;min-height:50px}
.button.small{padding:9px 14px;min-height:40px}
.classic-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.classic-actions .button{min-width:138px}
.danger-zone{margin-top:14px}
.form-actions{flex-wrap:wrap}

/* feedback toast */
.toast-feedback{position:fixed;right:22px;bottom:22px;z-index:1200;display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;min-width:320px;max-width:min(440px,calc(100vw - 24px));padding:14px 16px;border-radius:20px;background:rgba(255,255,255,.96);border:1px solid var(--line);box-shadow:0 24px 48px rgba(27,39,78,.16)}
.toast-feedback-icon{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:#eef7f1;color:var(--ok)}
.toast-feedback.is-error .toast-feedback-icon{background:#fff0f2;color:var(--bad)}
.toast-feedback-copy{display:grid;gap:4px}.toast-feedback-copy strong{font-size:16px}.toast-feedback-copy span{color:var(--muted);font-size:14px}
.toast-feedback-close{appearance:none;border:none;background:transparent;color:var(--muted);font-size:22px;cursor:pointer;padding:0 4px;min-height:auto;box-shadow:none}
.toast-feedback-progress{grid-column:1/-1;height:6px;border-radius:999px;background:#e8edf7;overflow:hidden}.toast-feedback-progress span{display:block;width:100%;height:100%;background:linear-gradient(90deg,var(--accent),var(--accent-2));transform-origin:left center}

/* school modal and school cards */
.school-modal-card{max-width:min(1320px,96vw);padding:18px}
.school-modal-layout{display:grid;grid-template-columns:320px minmax(0,1fr);gap:18px;align-items:start}
.school-modal-layout.is-classic{grid-template-columns:320px minmax(0,1fr)}
.school-modal-filters{display:grid;gap:14px}
.school-modal-results{display:grid;gap:12px;min-width:0}
.school-filter-stack{grid-template-columns:1fr!important;gap:12px}
.school-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-height:62vh;overflow:auto;padding-right:2px}
.school-modal-layout.is-classic .school-list{grid-template-columns:1fr}
.school-card,.school-item{padding:14px 16px;border-radius:20px;gap:8px}
.school-card-plain,.school-item{background:rgba(255,255,255,.84)}
.school-card-topline,.school-meta{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.school-title{font-size:18px;line-height:1.2}
.school-location{font-size:15px;line-height:1.35}
.school-subinfo{font-size:13px}
.school-icon-badge{display:none!important}
.school-item-classic{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;text-align:left}
.school-item-classic-side{display:grid;gap:6px;justify-items:end;text-align:right}
.school-selected,.school-display{min-height:46px;line-height:1.3;padding:11px 13px}
.school-picker-row{grid-template-columns:minmax(0,1fr) 46px;gap:8px}
.school-picker-row .button{min-width:46px;padding:0;min-height:46px}
.modal-end{justify-content:flex-end}
.schools-layout{display:grid;grid-template-columns:320px minmax(0,1fr);gap:18px;align-items:start}
.schools-filters-pane{position:sticky;top:0}
.schools-results-pane{display:grid;gap:12px;min-width:0}
.school-results-stack{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.school-profile-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:18px;align-items:start}

/* settings */
.settings-grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}
.setting-card{display:grid;gap:14px;padding:18px;border:1px solid var(--line);border-radius:22px;background:rgba(255,255,255,.66)}
.segmented{display:flex;gap:10px;flex-wrap:wrap}.segment-btn{appearance:none;border:none;border-radius:999px;padding:11px 15px;background:#fff;color:var(--text);border:1px solid var(--line);box-shadow:none;min-height:44px}.segment-btn.active{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff;border-color:transparent;box-shadow:0 12px 24px rgba(97,126,246,.18)}
.setting-row{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:14px 16px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.56)}
.switch{position:relative;display:inline-flex;align-items:center}.switch input{position:absolute;opacity:0;pointer-events:none}.switch-ui{width:58px;height:32px;border-radius:999px;background:#dce3f0;border:1px solid var(--line);display:block;position:relative;transition:.25s ease}.switch-ui::after{content:"";position:absolute;left:3px;top:3px;width:24px;height:24px;border-radius:50%;background:#fff;box-shadow:0 4px 10px rgba(39,54,96,.16);transition:.25s ease}.switch input:checked + .switch-ui{background:linear-gradient(135deg,var(--accent),var(--accent-2));border-color:transparent}.switch input:checked + .switch-ui::after{transform:translateX(26px)}

/* sidebar collapsed */
body.sidebar-collapsed .app-shell{grid-template-columns:92px minmax(0,1fr)}
body.sidebar-collapsed .brand-copy,
body.sidebar-collapsed .user-chip,
body.sidebar-collapsed .accordion-nav,
body.sidebar-collapsed .sidebar-footer{display:none}
body.sidebar-collapsed .sidebar-mini-nav{display:grid}
body.sidebar-collapsed .sidebar-panel{align-items:center;padding-inline:10px}
body.sidebar-collapsed .sidebar-top{width:100%;justify-items:center}
body.sidebar-collapsed .brand-wrap{flex-direction:column;gap:10px}
body.sidebar-collapsed .sidebar-collapse-btn .icon-svg{transform:rotate(0deg)}

/* responsive */
@media (max-width:1180px){
  .app-shell{grid-template-columns:1fr}
  .sidebar-left{position:relative;top:0;height:auto}
  body.sidebar-collapsed .app-shell{grid-template-columns:1fr}
  .schools-layout,.school-modal-layout,.school-profile-grid,.content-grid.two-col,.dashboard-grid,.auth-grid,.chart-stage{grid-template-columns:1fr}
  .school-results-stack,.school-list,.school-stats-grid,.filter-bar.filter-bar-inline{grid-template-columns:1fr 1fr}
}
@media (max-width:720px){
  .app-shell{padding:10px;gap:10px}
  .content-max{gap:10px}
  .beta-banner{grid-template-columns:1fr;justify-items:start}
  .school-results-stack,.school-list,.school-stats-grid,.filter-bar.filter-bar-inline{grid-template-columns:1fr}
  .toast-feedback{right:12px;left:12px;max-width:none;min-width:0}
}
.schools-layout.is-classic{grid-template-columns:320px minmax(0,1fr)}
.schools-layout.is-classic .school-results-stack{grid-template-columns:1fr}

/* v43 overrides */
body, input, select, textarea, button, .button {font-family:'Sofia Sans',system-ui,sans-serif}
.app-shell{grid-template-columns:250px minmax(0,1fr);gap:12px;padding:12px}
.sidebar-left{top:12px;height:calc(100vh - 24px)}
.sidebar-panel{padding:12px 10px;gap:10px}
.brand-wrap{gap:10px}.brand-mark{width:40px;height:40px;border-radius:14px;font-size:22px}.brand{font-size:24px}
.user-chip{padding:10px 12px}.mini-session-expiry{margin-top:4px;font-size:12px;color:var(--muted)}
.nav-group-trigger{padding:9px 12px}.nav-group-title{font-size:14px}.nav-group-panel{gap:6px}.nav-link{padding:8px 9px;border-radius:14px}.nav-label{font-size:14px}.nav-ico{width:32px;height:32px;border-radius:11px}
.sidebar-mini-nav{display:none;gap:8px;padding-top:8px}.sidebar-mini-nav .nav-link{padding:0;border:none;background:none;box-shadow:none;justify-content:center}.sidebar-mini-nav .nav-ico{width:40px;height:40px}
body.sidebar-collapsed .app-shell{grid-template-columns:84px minmax(0,1fr)}
body.sidebar-collapsed .brand-copy, body.sidebar-collapsed .user-chip, body.sidebar-collapsed .accordion-nav, body.sidebar-collapsed .sidebar-footer{display:none}
body.sidebar-collapsed .sidebar-panel{padding:12px 8px;align-items:center}
body.sidebar-collapsed .sidebar-mini-nav{display:grid}
body.sidebar-collapsed .sidebar-left{width:84px}
.content-max{max-width:1520px;gap:10px}
.beta-banner{padding:10px 14px;border-radius:18px;min-height:0;display:flex;align-items:center;gap:10px}.beta-banner-copy{font-size:14px}.beta-banner-icon{width:32px;height:32px;border-radius:10px}.beta-build{display:none}
.breadcrumb-bar{font-size:13px;color:var(--muted);padding:2px 4px 0 4px}
.server-strip{display:grid;gap:10px;padding:10px 14px;border-radius:20px;background:rgba(255,255,255,.78);border:1px solid var(--line);box-shadow:var(--shadow-soft)}
.server-strip-title{display:flex;align-items:center;gap:8px;font-size:14px}.server-strip-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.server-stat{padding:10px 12px;border:1px solid var(--line);border-radius:16px;background:#fff;display:grid;gap:4px}.server-stat span{font-size:12px;color:var(--muted)}.metric-ok{color:var(--ok)}.metric-bad{color:var(--bad)}
.hero-panel{padding:12px 16px}.hero-panel.compact{padding:11px 15px}.hero-panel h1{font-size:clamp(20px,2vw,30px)}.hero-text{font-size:14px}
.button,button{background:rgba(97,126,246,.10);color:var(--accent);border:1px solid rgba(97,126,246,.24);box-shadow:none;border-radius:17px;min-height:46px;padding:11px 16px}.button:hover,button:hover{box-shadow:none;background:rgba(97,126,246,.14)}
.button.secondary{background:rgba(255,255,255,.82);color:var(--text);border:1px solid var(--line)}
.button.success{background:rgba(47,168,113,.12);color:#1f8d5d;border-color:rgba(47,168,113,.24)}
.button.warn{background:rgba(240,184,78,.15);color:#8a5a00;border-color:rgba(240,184,78,.28)}
.button.danger{background:rgba(213,92,107,.12);color:#a2384b;border-color:rgba(213,92,107,.24)}
.button.small{min-height:40px;padding:8px 12px}
.tab-link.active,.nav-link.active{background:rgba(97,126,246,.12);border-color:rgba(97,126,246,.28);color:var(--accent)}
.tabs.admin-tabs{margin-bottom:12px}.tab-link{padding:10px 14px;border-radius:16px}
.card.subtle{background:rgba(255,255,255,.55)}
.school-picker-row.compact{grid-template-columns:minmax(0,1fr) 44px}.school-display{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.school-modal-card{max-width:min(1320px,96vw);padding:16px}.school-modal-layout{display:grid;grid-template-columns:320px minmax(0,1fr);gap:16px}.school-modal-layout.is-classic .school-list{grid-template-columns:1fr}.school-list{display:grid;grid-template-columns:1fr;max-height:62vh;overflow:auto;gap:10px}
.school-card,.school-item{padding:14px 16px;border-radius:20px}.school-card-topline{display:flex;gap:8px;flex-wrap:wrap}.school-code,.school-kind{display:inline-flex;padding:7px 10px;border-radius:999px;background:rgba(97,126,246,.09);color:var(--accent);font-weight:800;font-size:13px}.school-title{font-size:18px}.school-location{font-size:15px;line-height:1.35}.school-subinfo{font-size:13px}
.schools-layout{grid-template-columns:320px minmax(0,1fr)}.school-results-stack{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.school-card-plain{display:grid;gap:8px}
.suggest-field{position:relative}.suggest-list{position:absolute;left:0;right:0;top:100%;margin-top:6px;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow-soft);z-index:40;padding:6px;display:grid;gap:4px;max-height:240px;overflow:auto}.suggest-option{appearance:none;border:none;text-align:left;background:#fff;padding:10px 12px;border-radius:12px;cursor:pointer;color:var(--text)}.suggest-option:hover{background:#f4f7ff}
.empty-state{padding:22px;border:1px dashed var(--line-strong);border-radius:22px;text-align:center;color:var(--muted);background:rgba(255,255,255,.46)}
.toast-feedback{opacity:0;transform:translateY(14px);transition:opacity .2s ease,transform .2s ease}.toast-feedback.is-visible{opacity:1;transform:none}.toast-feedback.is-leaving{opacity:0;transform:translateY(10px)}
.feedback-overlay{background:rgba(16,24,40,.16)}.feedback-overlay.is-visible{animation:fadeIn .18s ease both}.feedback-overlay.is-leaving{animation:fadeOut .2s ease both}.feedback-card{max-width:440px}.feedback-progress span,.toast-feedback-progress span{transform-origin:left center}
@keyframes fadeIn{from{opacity:0}to{opacity:1}} @keyframes fadeOut{from{opacity:1}to{opacity:0}}
.settings-stack{display:grid;gap:12px}.setting-row{padding:14px 16px;border-radius:20px;align-items:center}.toggle-pills .segment-btn{min-height:40px;padding:9px 14px}.segment-btn{background:#fff;color:var(--text)}.segment-btn.active{background:rgba(97,126,246,.12);border-color:rgba(97,126,246,.28);color:var(--accent)}
.auth-grid-polished{grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr)}.auth-primary-card,.auth-side-card,.auth-register-card{max-width:1100px;margin:0 auto;width:100%}.auth-form{max-width:560px}.flash{padding:12px 14px;border-radius:16px;border:1px solid rgba(213,92,107,.18);background:rgba(213,92,107,.08);color:#8f3040;margin-bottom:14px}
.login-history-list.enhanced{display:grid;gap:10px}.login-history-item.clickable{cursor:pointer}.map-modal-card{max-width:min(900px,94vw)}.log-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.map-frame{width:100%;height:340px;border:1px solid var(--line);border-radius:18px;background:#f5f7fb}
@media (max-width:1200px){.server-strip-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.school-results-stack{grid-template-columns:1fr}.schools-layout,.school-modal-layout,.auth-grid-polished{grid-template-columns:1fr}}
@media (max-width:760px){.app-shell{padding:10px}.server-strip-grid,.log-detail-grid{grid-template-columns:1fr 1fr}.beta-banner{align-items:flex-start}.school-modal-card,.card{padding:14px}.server-strip{padding:10px 12px}}

/* v8 refinements */
:root{--content-max:1380px}
.content-max{width:min(var(--content-max),calc(100vw - 28px));margin:0 auto}
.page-body{display:grid;gap:14px}
.beta-banner{justify-content:flex-start !important;text-align:left;align-items:center;min-height:48px;padding:10px 14px !important}
.beta-banner-copy{flex:1 1 auto;text-align:left}
.server-strip-grid{grid-template-columns:repeat(5,minmax(0,1fr)) !important}
.server-stat strong{font-size:18px}
.sidebar-panel{display:flex;flex-direction:column;height:100%}
.sidebar-mini-nav{display:none}
body.sidebar-collapsed .side-nav{display:none}
body.sidebar-collapsed .sidebar-mini-nav{display:grid;gap:10px;align-content:start}
body.sidebar-collapsed .sidebar-left{width:92px}
body.sidebar-collapsed .brand-copy,body.sidebar-collapsed .sidebar-sub,body.sidebar-collapsed .user-chip-copy,body.sidebar-collapsed .sidebar-footer{display:none}
body.sidebar-collapsed .brand-wrap{justify-content:center}
body.sidebar-collapsed .profile-mini-card{justify-content:center;padding:12px}
body.sidebar-collapsed .sidebar-collapse-btn{position:static}
body.sidebar-collapsed .nav-link.mini{width:52px;height:52px;border-radius:18px;display:grid;place-items:center;margin:0 auto}
.nav-group-trigger,.nav-link,.button,button,input,select,textarea{font-family:"Sofia Sans",system-ui,sans-serif}
.tabs.admin-tabs{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:0 0 12px}
.tab-link{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border-radius:14px;white-space:nowrap}
.tab-link.active{box-shadow:inset 0 0 0 1px rgba(97,126,246,.24)}
.button,.button.secondary,.button.warn,.button.danger{background:rgba(255,255,255,.7);border:1px solid var(--line);color:var(--text)}
.button{color:var(--accent);border-color:rgba(97,126,246,.28);background:rgba(97,126,246,.08)}
.button:hover{transform:translateY(-1px)}
.classic-actions .button,.search-result-actions .button{min-height:48px}
.school-modal-card{padding:14px !important}
.school-modal-layout{grid-template-columns:320px minmax(0,1fr) !important;gap:14px !important}
.school-list{display:grid;grid-template-columns:1fr;max-height:64vh;overflow:auto;gap:10px}
.school-item-assign{padding:12px 14px !important;border-radius:18px !important;align-items:start}
.school-item-body{display:grid;gap:7px;width:100%}
.school-card,.school-item{overflow:visible}
.school-code{font-weight:800}
.search-hit{background:#fff2a8;color:#334; padding:0 .12em;border-radius:6px}
.modal-more-wrap{display:flex;justify-content:center;padding-top:8px}
.school-results-stack{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
.school-card-plain,.school-item-assign{min-height:156px}
.school-card .school-title,.school-item .school-title{font-size:17px;line-height:1.3;color:var(--text)}
.school-card .school-location,.school-item .school-location{color:#64708c}
.suggest-list{max-height:220px;overflow:auto}.suggest-option{display:block;width:100%;text-align:left;padding:10px 12px;border:none;background:transparent;font:inherit}.suggest-option:hover{background:rgba(97,126,246,.08)}
.status-overview-banner{padding:14px 18px;border-radius:18px;margin-bottom:14px;color:#fff}.status-overview-banner.ok{background:#32c85f}.status-overview-banner.warn{background:#e9a72e}
.modern-status-list{display:grid;gap:10px}.status-row-card{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border:1px solid var(--line);border-radius:18px;background:#fff}.status-row-main{display:flex;align-items:center;gap:12px}.status-dot-big{width:14px;height:14px;border-radius:50%}.status-dot-big.ok{background:#32c85f}.status-dot-big.warn{background:#e9a72e}.status-dot-big.bad{background:#ea5c67}
.compact-admin-status .setting-card.tight{padding:12px 14px;border-radius:16px}.compact-status-form{gap:10px}
.school-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.summary-cell{padding:12px 14px;border:1px solid var(--line);border-radius:16px;background:#fff;display:grid;gap:4px}.summary-cell span{color:var(--muted);font-size:13px}
.school-top-panels{align-items:stretch}
.settings-stack.compact{gap:10px}.setting-row.compact{padding:12px 14px;border-radius:16px}.toggle-pills.segmented.compact{gap:8px}.segment-btn{min-height:42px;padding:0 16px;border-radius:999px;border:1px solid var(--line);background:#fff}.segment-btn.active{background:rgba(97,126,246,.10);border-color:rgba(97,126,246,.30);color:var(--accent)}
@media (max-width:1100px){.school-results-stack{grid-template-columns:1fr !important}.server-strip-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important}}
@media (max-width:760px){.content-max{width:calc(100vw - 16px)}.school-modal-layout,.schools-layout,.school-summary-grid,.content-grid.two-col{grid-template-columns:1fr !important}.server-strip-grid{grid-template-columns:1fr 1fr !important}.status-row-card{align-items:flex-start;gap:10px;flex-direction:column}}

/* v9 bugfix-preserve-ui */
.guest-shell{padding-top:12px}
.guest-shell .content-max{width:min(1100px,calc(100vw - 28px))}
.force-password-overlay{z-index:1250;background:rgba(16,24,40,.22)}
.force-password-overlay .overlay-card{max-width:460px}
.school-item-assign{min-height:132px !important}
.school-item-assign .school-title{font-size:16px !important}
.school-item-assign .school-subinfo{font-size:12px !important;line-height:1.35}
.school-modal-results .school-list{align-content:start}
.modal-more-wrap .button.is-loading,.classic-actions .button.is-loading{pointer-events:none;opacity:.84}
.button-loader{width:16px;height:16px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:spin .75s linear infinite}
.version-pill{display:inline-flex;align-items:center;gap:6px}
.mini-session-expiry strong{font-variant-numeric:tabular-nums}
.profile-lock-note{margin-top:12px}
@media (max-width:760px){.guest-shell .content-max{width:calc(100vw - 16px)}}


/* v52 bugfix overrides */
:root[data-theme="dark"], body[data-theme="dark"]{--bg:#071225;--bg-soft:#0b1830;--panel:rgba(8,20,42,.96);--panel-2:#0d1d39;--text:#eaf0ff;--muted:#97a7ca;--line:rgba(117,141,193,.20);--line-strong:rgba(150,174,230,.32);--shadow-soft:0 18px 40px rgba(0,0,0,.28)}
body[data-theme="dark"]{background:radial-gradient(circle at top left,#12254a,#071225 55%)}
body[data-theme="dark"] .card, body[data-theme="dark"] .sidebar-panel, body[data-theme="dark"] .server-strip, body[data-theme="dark"] .beta-banner, body[data-theme="dark"] .overlay-card, body[data-theme="dark"] input, body[data-theme="dark"] select, body[data-theme="dark"] textarea{background:rgba(10,22,45,.96);color:var(--text);border-color:var(--line)}
body[data-theme="dark"] .muted, body[data-theme="dark"] .school-subinfo, body[data-theme="dark"] .login-history-meta{color:var(--muted)}
body[data-theme="dark"] .school-display, body[data-theme="dark"] .school-selected{background:rgba(8,18,39,.92)}
body[data-theme="dark"] .data-table tr:nth-child(even){background:rgba(255,255,255,.02)}
body[data-theme="dark"] .beta-banner{background:linear-gradient(180deg,#5b4510,#745912);border-color:#8f6c15;color:#fff1bf}
body[data-theme="dark"] .server-stat{background:rgba(255,255,255,.03)}
body[data-theme="dark"] .button.secondary{background:rgba(255,255,255,.05)}
.brand-mark{background:transparent;border:none;box-shadow:none;padding:0;width:38px;height:38px;border-radius:0}.brand-mark img{width:38px;height:38px;display:block}
.sidebar-left{position:sticky;top:14px;align-self:start}.sidebar-panel{border-radius:22px}.nav-group-trigger{background:rgba(97,126,246,.08);border:1px solid rgba(97,126,246,.14)}
.nav-link{position:relative;overflow:hidden}.nav-link::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(97,126,246,.10),transparent 72%);opacity:0;transition:opacity .18s ease}.nav-link:hover::after,.nav-link.active::after{opacity:1}.nav-link:hover,.nav-link:focus-visible{transform:none}
.beta-banner{margin-bottom:12px;min-height:56px;max-width:none !important}.server-strip{margin-bottom:12px;padding:14px 16px;border-radius:22px}.server-strip-grid{grid-template-columns:repeat(4,minmax(0,1fr)) !important}.server-stat{min-height:82px}.server-stat strong{font-size:16px}.beta-banner-copy{font-size:14px;line-height:1.45}.breadcrumb-bar{margin-bottom:12px}
.profile-core-card,.settings-fill-card{width:100%}.settings-fill-card .classic-actions.spaced{gap:14px;margin-top:18px}.upload-field input[type=file]{padding:12px;border:1px dashed var(--line-strong);background:rgba(97,126,246,.06)}
.school-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.donut-center{display:flex;flex-direction:column;justify-content:center;align-items:center}.donut-center strong,.donut-center span{position:relative;z-index:2}
.custom-tooltip{position:fixed;z-index:2000;pointer-events:none;padding:10px 12px;border-radius:14px;background:rgba(12,22,44,.96);color:#fff;font-size:13px;font-weight:700;box-shadow:0 14px 30px rgba(0,0,0,.24);opacity:0;transform:translateY(4px);transition:opacity .14s ease,transform .14s ease}.custom-tooltip.visible{opacity:1;transform:none}
.theme-toggle-btn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:14px;background:rgba(255,255,255,.12);border:1px solid var(--line)}.theme-toggle-btn.inline{margin-left:auto}.theme-icon{font-size:16px;line-height:1}.theme-icon-moon{display:none}body[data-theme="dark"] .theme-icon-sun{display:none}body[data-theme="dark"] .theme-icon-moon{display:inline}
.hero-panel.compact{padding:18px 22px}.profile-head .button{margin-left:auto}.classic-actions{gap:12px}.form-actions .button,.classic-actions .button{margin-right:8px}
.server-strip + .beta-banner{margin-top:0}.beta-banner{order:-1}.content-max{max-width:1500px}.main-shell{overflow:hidden}
@media (max-width:1024px){.server-strip-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important}.school-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* v20 final restore */
.button,.button.secondary,.button.warn,.button.danger,.button.success,button{background:rgba(97,126,246,.10)!important;color:var(--accent)!important;border:1px solid rgba(97,126,246,.24)!important;box-shadow:none!important;border-radius:16px!important;display:inline-flex!important;align-items:center;justify-content:center;gap:8px}
.button.secondary{background:rgba(255,255,255,.78)!important;color:var(--text)!important;border:1px solid var(--line)!important}
.button.warn{background:rgba(240,184,78,.14)!important;color:#8a5a00!important;border-color:rgba(240,184,78,.28)!important}
.button.danger{background:rgba(213,92,107,.12)!important;color:#a2384b!important;border-color:rgba(213,92,107,.24)!important}
.button.success{background:rgba(47,168,113,.12)!important;color:#1f8d5d!important;border-color:rgba(47,168,113,.24)!important}
.classic-actions,.form-actions{display:flex;flex-wrap:wrap;flex-direction:row!important;gap:12px!important;align-items:center}
.beta-banner{margin:0 0 12px!important;padding:10px 14px!important;border-radius:18px!important;min-height:0!important;display:grid!important;grid-template-columns:auto 1fr auto!important;align-items:center!important;box-shadow:var(--shadow-soft)!important}
.beta-banner-copy{font-size:14px!important;line-height:1.3!important;text-align:left!important}
.server-strip{margin:0 0 12px!important;padding:10px 14px!important;border-radius:18px!important;min-height:0!important}
.server-strip-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px!important}.server-stat{min-height:64px!important;padding:10px 12px!important}.server-stat strong{font-size:15px!important}
.status-overview-head{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:16px 18px;border-radius:20px;color:#fff}.status-overview-head.ok{background:linear-gradient(135deg,#2fa871,#55c67b)}.status-overview-head.warn{background:linear-gradient(135deg,#d39a20,#f0b84e)}.status-overview-head h2{margin:0 0 4px;font-size:22px}.status-overview-head p{margin:0;color:rgba(255,255,255,.92)}
.status-day-grid.refined{display:grid;grid-template-columns:repeat(30,minmax(0,1fr));gap:6px;margin:14px 0 10px}.status-day-cell{height:34px;border-radius:8px;border:1px solid var(--line);background:#dfe6f2}.status-day-cell.ok{background:rgba(47,168,113,.18);border-color:rgba(47,168,113,.24)}.status-day-cell.warn{background:rgba(240,184,78,.24);border-color:rgba(240,184,78,.3)}.status-day-cell.bad{background:rgba(213,92,107,.22);border-color:rgba(213,92,107,.28)}.status-day-legend{display:flex;gap:16px;flex-wrap:wrap;color:var(--muted);font-size:14px;margin-bottom:14px}.legend-dot{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:6px}.legend-dot.ok{background:rgba(47,168,113,.75)}.legend-dot.warn{background:rgba(240,184,78,.9)}.legend-dot.bad{background:rgba(213,92,107,.85)}
.status-component-row{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:14px 16px;border:1px solid var(--line);border-radius:18px;background:var(--surface)}.status-component-row.ok{border-color:rgba(47,168,113,.24)}.status-component-row.warn{border-color:rgba(240,184,78,.24)}.status-component-row.bad{border-color:rgba(213,92,107,.24)}
.status-editor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.status-editor-card{padding:16px;border-radius:20px;border:1px solid var(--line);background:var(--surface)}.status-editor-card.ok{border-color:rgba(47,168,113,.26)}.status-editor-card.warn{border-color:rgba(240,184,78,.28)}.status-editor-card.bad{border-color:rgba(213,92,107,.28)}
.status-radio-row{display:flex;flex-wrap:wrap;gap:10px;margin:8px 0 10px}.status-radio-pill{position:relative}.status-radio-pill input{position:absolute;opacity:0;pointer-events:none}.status-radio-pill span{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.75);font-weight:800;cursor:pointer}.status-radio-pill input:checked + span{background:rgba(97,126,246,.12);border-color:rgba(97,126,246,.28);color:var(--accent)}
.custom-tooltip.rich{padding:0;background:#fff;color:#24324f;border:1px solid rgba(17,24,39,.08);border-radius:4px;box-shadow:0 16px 40px rgba(15,23,42,.18);max-width:320px;min-width:220px}.custom-tooltip.rich .status-hover-card{padding:14px 14px 12px}.custom-tooltip.rich .status-hover-date{font-size:14px;font-weight:700;margin-bottom:10px;color:#334155}.custom-tooltip.rich .status-hover-state{font-size:12px;letter-spacing:.02em;color:#64748b;text-transform:uppercase;margin-bottom:10px}.custom-tooltip.rich .status-hover-row{display:flex;gap:8px;align-items:flex-start;padding:6px 0;font-size:14px;color:#1f2937}.custom-tooltip.rich .status-hover-dot{width:8px;height:8px;border-radius:50%;margin-top:6px;flex:0 0 8px}.custom-tooltip.rich .status-hover-dot.ok{background:#32c85f}.custom-tooltip.rich .status-hover-dot.warn{background:#e9a72e}.custom-tooltip.rich .status-hover-dot.bad{background:#ea5c67}.custom-tooltip.rich .status-hover-empty{font-size:14px;color:#334155}
.day-group-history{display:grid;gap:12px}.day-group{align-items:flex-start;gap:14px;border-radius:18px;padding:16px 18px;border:1px solid var(--line)}.day-group.ok{border-color:rgba(47,168,113,.20)}.day-group.warn{border-color:rgba(240,184,78,.22)}.day-group.bad{border-color:rgba(213,92,107,.22)}.status-history-date{font-weight:800;font-size:16px;margin-bottom:8px}.status-history-title{font-size:14px;color:var(--text);margin:4px 0}
.school-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.inline-head-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.network-chart-wrap.compact{height:190px;position:relative}.network-chart-wrap.compact canvas{width:100%!important;height:170px!important;display:block}
.exam-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px}.question-shell{display:none;gap:14px}.question-shell.active{display:grid}.choice{display:grid;grid-template-columns:36px 36px 1fr;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.choice input{margin:0}.choice-key{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:rgba(97,126,246,.10);color:var(--accent);font-weight:800}.nav-row{display:flex;justify-content:space-between;gap:12px;align-items:center}.question-map{display:grid;grid-template-columns:repeat(auto-fit,minmax(42px,1fr));gap:8px}.qdot{min-height:42px;border-radius:14px;border:1px solid var(--line);background:rgba(97,126,246,.08);color:var(--accent);font-weight:800}.qdot.active{background:rgba(97,126,246,.16)}.qdot.done{border-color:rgba(47,168,113,.28)}
body[data-theme="dark"] .button.secondary{background:rgba(15,23,42,.72)!important;color:var(--text)!important}
body[data-theme="dark"] .beta-banner{background:linear-gradient(180deg,#5b4510,#745912)!important;border-color:#8f6c15!important;color:#fff1bf!important}
body[data-theme="dark"] .server-strip,body[data-theme="dark"] .server-stat,body[data-theme="dark"] .status-editor-card,body[data-theme="dark"] .status-component-row,body[data-theme="dark"] .day-group,body[data-theme="dark"] .choice{background:rgba(10,22,45,.96)!important;color:var(--text)!important;border-color:var(--line)!important}
body[data-theme="dark"] .custom-tooltip.rich{background:#0f172a;color:#eaf0ff;border-color:rgba(148,163,184,.15)}
@media (max-width:1100px){.status-editor-grid{grid-template-columns:1fr}.status-day-grid.refined{grid-template-columns:repeat(15,minmax(0,1fr))}.exam-layout{grid-template-columns:1fr}.server-strip-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media (max-width:720px){.status-day-grid.refined{grid-template-columns:repeat(10,minmax(0,1fr))}.beta-banner{grid-template-columns:1fr!important}.server-strip-grid{grid-template-columns:1fr 1fr!important}.school-summary-grid{grid-template-columns:1fr!important}}


/* v54 polish pack */
:root{--sidebar-sticky-top:14px}
.breadcrumb-bar{display:none !important;margin:0 !important;padding:0 !important;height:0 !important;min-height:0 !important;overflow:hidden !important}
.beta-banner{padding:8px 12px !important;border-radius:16px !important;gap:10px !important;min-height:44px !important}
.beta-banner-copy{font-size:15px !important;line-height:1.35 !important}
.beta-banner-copy strong{font-size:15px}
.beta-banner-icon{width:30px !important;height:30px !important;border-radius:10px !important;flex-basis:30px !important}
.beta-banner .theme-toggle-btn.inline{width:38px;height:38px;border-radius:12px}
.server-strip{padding:9px 12px !important;border-radius:16px !important}
.server-strip-title{font-size:16px !important;font-weight:800 !important}
.server-strip-title strong{font-size:16px !important}
.server-strip-grid{grid-template-columns:repeat(5,minmax(0,1fr)) !important;gap:9px !important}
.server-stat{min-height:58px !important;padding:9px 11px !important;gap:3px !important}
.server-stat span{font-size:13px !important}
.server-stat strong{font-size:17px !important;line-height:1.1}
.status-day-cell,
button.status-day-cell{appearance:none !important;background:#dfe6f2 !important;color:transparent !important;border:1px solid var(--line) !important;box-shadow:none !important;padding:0 !important;display:block !important}
.status-day-cell.ok,button.status-day-cell.ok{background:rgba(47,168,113,.24) !important;border-color:rgba(47,168,113,.34) !important}
.status-day-cell.warn,button.status-day-cell.warn{background:rgba(240,184,78,.34) !important;border-color:rgba(240,184,78,.42) !important}
.status-day-cell.bad,button.status-day-cell.bad{background:rgba(213,92,107,.34) !important;border-color:rgba(213,92,107,.42) !important}
.status-day-cell:hover{transform:translateY(-1px)}
.compact-status-components,.status-component-list{display:grid;gap:16px !important}
.status-component-row{gap:22px !important;padding:15px 18px !important}
.status-component-main{display:flex;align-items:center;gap:14px}
.custom-tooltip.rich .status-hover-card{padding:14px 15px 12px}
.custom-tooltip.rich .status-hover-state.warn{color:#b86b00 !important}
.custom-tooltip.rich .status-hover-state.bad{color:#c2384a !important}
.custom-tooltip.rich .status-hover-state.ok{color:#287a50 !important}
.day-group-history{gap:16px !important}
.status-history-item{position:relative;overflow:hidden}
.status-history-item.day-group.ok{background:linear-gradient(180deg,rgba(47,168,113,.09),rgba(47,168,113,.05)) !important;border-color:rgba(47,168,113,.28) !important}
.status-history-item.day-group.warn{background:linear-gradient(180deg,rgba(240,184,78,.14),rgba(240,184,78,.06)) !important;border-color:rgba(240,184,78,.34) !important}
.status-history-item.day-group.bad{background:linear-gradient(180deg,rgba(213,92,107,.16),rgba(213,92,107,.08)) !important;border-color:rgba(213,92,107,.36) !important}
.status-history-item::before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:rgba(97,126,246,.22)}
.status-history-item.day-group.ok::before{background:rgba(47,168,113,.85)}
.status-history-item.day-group.warn::before{background:rgba(240,184,78,.92)}
.status-history-item.day-group.bad::before{background:rgba(213,92,107,.92)}
.status-history-main{display:grid;gap:12px}
.status-history-block{display:grid;gap:7px;padding:12px 14px;border-radius:14px;background:rgba(255,255,255,.55);border:1px solid rgba(148,163,184,.16)}
.status-history-title{margin:0 !important;font-size:15px !important;font-weight:700 !important}
.status-history-state{display:inline-flex;align-items:center;gap:6px;width:max-content;padding:5px 10px;border-radius:999px;background:rgba(97,126,246,.12);color:var(--accent);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.02em}
.status-history-note{font-size:14px;line-height:1.45;color:var(--text)}
.pin-prompt-actions{margin-top:14px !important}
.setting-switch{display:inline-flex;align-items:center;gap:12px}
.switch-labels{display:inline-flex;align-items:center;gap:10px;font-size:14px;line-height:1.2;color:var(--muted)}
.switch-labels strong{color:var(--text);font-size:14px}
.switch input:not(:checked) + .switch-ui + .switch-labels strong{color:var(--muted);font-weight:600}
.switch input:not(:checked) + .switch-ui + .switch-labels span{color:var(--text);font-weight:800}
.switch input:checked + .switch-ui + .switch-labels strong{color:var(--text)}
.switch input:checked + .switch-ui + .switch-labels span{color:var(--muted);font-weight:600}
.schools-page-shell{overflow:visible}
.schools-layout{align-items:start}
.schools-filters-pane{position:sticky;top:var(--sidebar-sticky-top) !important;align-self:start;max-height:calc(100vh - 28px);overflow:auto}
.prompt-card .prompt-actions{gap:10px}
.theme-toggle-btn{background:rgba(97,126,246,.10) !important;border:1px solid rgba(97,126,246,.18) !important;color:var(--accent) !important}
.theme-toggle-btn .theme-icon{display:inline-flex;align-items:center;justify-content:center}
.theme-toggle-btn .icon-svg{width:18px;height:18px}
.theme-toggle-btn .icon-svg svg{width:18px;height:18px}
.sidebar-panel{background:linear-gradient(180deg,rgba(255,255,255,.95),rgba(247,249,254,.98)) !important}
.nav-group-trigger{background:rgba(97,126,246,.08) !important;border-color:rgba(97,126,246,.16) !important}
.nav-group.is-open .nav-group-trigger{background:rgba(97,126,246,.14) !important;border-color:rgba(97,126,246,.24) !important;color:var(--accent)}
.nav-group-panel{padding-top:2px}
.nav-link{background:transparent}
.nav-link:hover,.nav-link:focus-visible{background:rgba(97,126,246,.08) !important;border-color:rgba(97,126,246,.18) !important}
.nav-link.active{background:linear-gradient(135deg,rgba(97,126,246,.16),rgba(97,126,246,.08)) !important;border-color:rgba(97,126,246,.30) !important}
.nav-ico{background:rgba(97,126,246,.10)}
.school-item-assign .school-subinfo{display:flex;gap:6px;flex-wrap:wrap}
.school-item-assign .pill{margin:0}
body[data-theme="dark"] .sidebar-panel{background:linear-gradient(180deg,rgba(8,16,30,.97),rgba(10,21,41,.98)) !important}
body[data-theme="dark"] .nav-group-trigger{background:rgba(97,126,246,.13) !important;border-color:rgba(97,126,246,.22) !important;color:#edf3ff !important}
body[data-theme="dark"] .nav-group.is-open .nav-group-trigger{background:rgba(97,126,246,.18) !important}
body[data-theme="dark"] .nav-link{color:#e7eefc}
body[data-theme="dark"] .nav-link:hover,
body[data-theme="dark"] .nav-link:focus-visible{background:rgba(97,126,246,.14) !important;border-color:rgba(97,126,246,.24) !important}
body[data-theme="dark"] .nav-link.active{background:linear-gradient(135deg,rgba(97,126,246,.24),rgba(97,126,246,.12)) !important;border-color:rgba(97,126,246,.34) !important;color:#f4f7ff !important}
body[data-theme="dark"] .nav-ico{background:rgba(97,126,246,.16)}
body[data-theme="dark"] .theme-toggle-btn{background:rgba(255,255,255,.05) !important;color:#f4f7ff !important;border-color:rgba(148,163,184,.18) !important}
body[data-theme="dark"] .status-history-block{background:rgba(5,12,24,.52);border-color:rgba(148,163,184,.18)}
body[data-theme="dark"] .custom-tooltip.rich .status-hover-date{color:#f1f5f9}
body[data-theme="dark"] .custom-tooltip.rich .status-hover-row{color:#e2e8f0}
body[data-theme="dark"] .custom-tooltip.rich .status-hover-empty{color:#cbd5e1}
body[data-theme="dark"] .switch-labels{color:#a8b4c8}
body[data-theme="dark"] .switch-labels strong,
body[data-theme="dark"] .switch input:not(:checked) + .switch-ui + .switch-labels span,
body[data-theme="dark"] .switch input:checked + .switch-ui + .switch-labels strong{color:#edf3ff}
body[data-theme="dark"] .server-strip,
body[data-theme="dark"] .server-stat,
body[data-theme="dark"] .status-overview-head,
body[data-theme="dark"] .settings-shell,
body[data-theme="dark"] .schools-filters-pane,
body[data-theme="dark"] .school-modal-card,
body[data-theme="dark"] .prompt-card,
body[data-theme="dark"] .overlay-card,
body[data-theme="dark"] .search-result{color:var(--text) !important}
body[data-theme="dark"] .status-history-item.day-group.ok{background:linear-gradient(180deg,rgba(47,168,113,.13),rgba(47,168,113,.06)) !important}
body[data-theme="dark"] .status-history-item.day-group.warn{background:linear-gradient(180deg,rgba(240,184,78,.16),rgba(240,184,78,.07)) !important}
body[data-theme="dark"] .status-history-item.day-group.bad{background:linear-gradient(180deg,rgba(213,92,107,.18),rgba(213,92,107,.08)) !important}
@media (max-width:1100px){
  .server-strip-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important}
}
@media (max-width:760px){
  .server-strip-grid{grid-template-columns:1fr 1fr !important}
  .server-stat strong{font-size:15px !important}
  .beta-banner-copy{font-size:14px !important}
  .switch-labels{font-size:13px}
}


/* v55 targeted refinements */
.beta-banner{justify-content:flex-start!important;align-items:center!important;flex-wrap:nowrap!important}
.beta-banner-copy{flex:0 1 auto!important}
.beta-banner .theme-toggle-btn.inline{margin-left:auto!important}
.server-strip-grid{display:flex!important;flex-wrap:wrap!important;gap:10px!important;justify-content:flex-start!important;align-items:stretch!important}
.server-stat{flex:0 0 172px!important;max-width:172px!important;min-width:150px!important}
.server-strip-title{margin-bottom:8px!important}
.status-component-row{align-items:flex-start!important}
.status-component-side{margin-left:auto;align-self:flex-start}
.status-history-group{gap:10px!important}
.status-history-updates{display:grid;gap:8px}
.status-history-update{display:grid;gap:6px;padding:10px 12px;border-radius:12px;border:1px solid rgba(148,163,184,.16);background:rgba(255,255,255,.72)}
.status-history-update.ok{border-color:rgba(47,168,113,.22);background:rgba(47,168,113,.08)}
.status-history-update.warn{border-color:rgba(240,184,78,.24);background:rgba(240,184,78,.10)}
.status-history-update.info{border-color:rgba(97,126,246,.20);background:rgba(97,126,246,.08)}
.status-history-update.neutral{background:rgba(255,255,255,.72)}
.status-history-update-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.status-history-state.state-ok{background:rgba(47,168,113,.12);color:#1d7e4d}
.status-history-state.state-warn{background:rgba(240,184,78,.16);color:#9a6302}
.status-history-state.state-info{background:rgba(97,126,246,.12);color:#3d57c8}
.status-history-state.state-neutral{background:rgba(148,163,184,.14);color:#516076}
.status-history-time{font-size:12px;font-weight:800;color:var(--muted)}
body[data-theme="dark"] .status-history-update{background:rgba(8,16,30,.72);border-color:rgba(148,163,184,.16)}
body[data-theme="dark"] .status-history-update.ok{background:rgba(47,168,113,.12)}
body[data-theme="dark"] .status-history-update.warn{background:rgba(240,184,78,.10)}
body[data-theme="dark"] .status-history-update.info{background:rgba(97,126,246,.12)}
.schools-page-shell,.schools-layout,.schools-results-pane{overflow:visible!important}
.schools-filters-pane{position:sticky!important;top:18px!important;overflow:visible!important;max-height:none!important}
.switch-between{display:inline-flex;align-items:center;gap:12px}
.switch-between .switch-side{font-size:14px;font-weight:700;color:var(--muted)}
.switch-between .switch-side-left{order:0}
.switch-between input{order:1}
.switch-between .switch-ui{order:2}
.switch-between .switch-side-right{order:3}
.switch-between input:not(:checked) ~ .switch-side-right{color:var(--muted);font-weight:700}
.switch-between input:not(:checked) ~ .switch-side-left{color:var(--text);font-weight:800}
.switch-between input:checked ~ .switch-side-right{color:var(--text);font-weight:800}
.switch-between input:checked ~ .switch-side-left{color:var(--muted);font-weight:700}
.theme-icon-moon{display:none!important}
body[data-theme="dark"] .theme-icon-sun{display:none!important}
body[data-theme="dark"] .theme-icon-moon{display:inline-flex!important}
body:not([data-theme="dark"]) .theme-icon-sun{display:inline-flex!important}
.nav-group-trigger{background:rgba(255,255,255,.58)!important;border-color:rgba(148,163,184,.20)!important;color:var(--text)!important}
.nav-group.is-open .nav-group-trigger{background:rgba(255,255,255,.92)!important;border-color:rgba(148,163,184,.26)!important;color:var(--text)!important}
.nav-link:hover,.nav-link:focus-visible{background:rgba(255,255,255,.86)!important;border-color:rgba(148,163,184,.20)!important}
.nav-link.active{background:rgba(255,255,255,.96)!important;border-color:rgba(148,163,184,.28)!important;color:var(--text)!important}
.nav-ico{background:rgba(148,163,184,.10)!important;color:var(--text)!important}
body[data-theme="dark"] .nav-group-trigger{background:rgba(15,23,42,.82)!important;border-color:rgba(148,163,184,.14)!important;color:#edf3ff!important}
body[data-theme="dark"] .nav-group.is-open .nav-group-trigger{background:rgba(15,23,42,.96)!important}
body[data-theme="dark"] .nav-link:hover,body[data-theme="dark"] .nav-link:focus-visible{background:rgba(30,41,59,.78)!important;border-color:rgba(148,163,184,.16)!important}
body[data-theme="dark"] .nav-link.active{background:rgba(30,41,59,.96)!important;border-color:rgba(148,163,184,.22)!important}
body[data-theme="dark"] .nav-ico{background:rgba(148,163,184,.12)!important}
.school-modal-card .school-item,.school-modal-card .school-card{background:rgba(255,255,255,.97)!important;border-color:rgba(148,163,184,.20)!important}
.school-modal-card .school-code,.school-modal-card .school-kind{background:rgba(148,163,184,.12)!important;color:var(--text)!important}
body[data-theme="dark"] .school-modal-card .school-item,body[data-theme="dark"] .school-modal-card .school-card{background:rgba(8,16,30,.95)!important}
.school-user-filter-bar{margin-bottom:14px!important}
.search-results-grid.compact{margin-top:8px}
.school-role-donut{background:conic-gradient(var(--student) 0 calc(var(--segment-student) * 1%), var(--teacher) 0 calc(var(--segment-teacher) * 1%), var(--red) 0 100%)!important}
.meter-fill.student{background:linear-gradient(90deg,var(--student),#85a1ff)!important}
.meter-fill.teacher{background:linear-gradient(90deg,var(--teacher),#62c5a4)!important}
.meter-fill.admin{background:linear-gradient(90deg,var(--red),#f08a8a)!important}
.leave-exam-card{max-width:min(520px,94vw)}
.profile-inline-actions{display:flex;gap:10px;flex-wrap:wrap}
@media (max-width:960px){
  .beta-banner{flex-wrap:wrap!important}
  .server-stat{flex:1 1 155px!important;max-width:none!important}
}
@media (max-width:760px){
  .switch-between{gap:10px}
  .switch-between .switch-side{font-size:13px}
}


/* v56 final compact fixes */
.content-max > .beta-banner{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  flex-wrap:nowrap!important;
  gap:10px!important;
  min-height:0!important;
  padding:8px 12px!important;
  border-radius:16px!important;
}
.content-max > .beta-banner .beta-banner-copy{
  flex:1 1 auto!important;
  min-width:0!important;
  font-size:14px!important;
  line-height:1.25!important;
}
.content-max > .beta-banner .beta-banner-copy strong{font-size:14px!important}
.content-max > .beta-banner .beta-banner-icon{
  width:28px!important;
  height:28px!important;
  flex:0 0 28px!important;
  border-radius:9px!important;
}
.content-max > .beta-banner .theme-toggle-btn.inline{
  flex:0 0 auto!important;
  width:36px!important;
  height:36px!important;
  margin-left:auto!important;
}

#serverStrip.server-strip{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  flex-wrap:wrap!important;
  gap:10px 14px!important;
  min-height:0!important;
  padding:8px 12px!important;
  border-radius:16px!important;
}
#serverStrip .server-strip-title{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  margin:0!important;
  flex:0 0 auto!important;
  font-size:15px!important;
  line-height:1.1!important;
}
#serverStrip .server-strip-title strong{font-size:15px!important}
#serverStrip .server-strip-grid{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:stretch!important;
  justify-content:flex-start!important;
  gap:8px!important;
  flex:1 1 auto!important;
  min-width:0!important;
}
#serverStrip .server-stat{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  gap:2px!important;
  flex:0 0 auto!important;
  width:auto!important;
  min-width:124px!important;
  max-width:none!important;
  min-height:50px!important;
  padding:8px 10px!important;
  border-radius:14px!important;
}
#serverStrip .server-stat span{font-size:12px!important;line-height:1.1!important}
#serverStrip .server-stat strong{font-size:15px!important;line-height:1.1!important}

.nav-group-trigger,
.nav-group.is-open .nav-group-trigger,
.nav-link,
.nav-link:hover,
.nav-link:focus-visible,
.nav-link.active{
  color:var(--text)!important;
}
.nav-group-trigger{background:rgba(255,255,255,.42)!important;border-color:rgba(148,163,184,.18)!important}
.nav-group.is-open .nav-group-trigger{background:rgba(255,255,255,.72)!important;border-color:rgba(148,163,184,.24)!important}
.nav-link:hover,.nav-link:focus-visible{background:rgba(255,255,255,.58)!important;border-color:rgba(148,163,184,.18)!important}
.nav-link.active{background:rgba(255,255,255,.82)!important;border-color:rgba(148,163,184,.24)!important}
.nav-ico{background:rgba(148,163,184,.10)!important;color:var(--text)!important}
body[data-theme='dark'] .nav-group-trigger{background:rgba(15,23,42,.76)!important;border-color:rgba(148,163,184,.14)!important}
body[data-theme='dark'] .nav-group.is-open .nav-group-trigger{background:rgba(15,23,42,.92)!important}
body[data-theme='dark'] .nav-link:hover,body[data-theme='dark'] .nav-link:focus-visible{background:rgba(30,41,59,.72)!important;border-color:rgba(148,163,184,.16)!important}
body[data-theme='dark'] .nav-link.active{background:rgba(30,41,59,.92)!important;border-color:rgba(148,163,184,.20)!important}
body[data-theme='dark'] .nav-ico{background:rgba(148,163,184,.12)!important}

.search-results-grid.compact{gap:8px!important}
.search-results-grid.compact .search-result{
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:10px 12px!important;
  align-items:center!important;
  padding:10px 12px!important;
  min-height:78px!important;
  border-radius:16px!important;
}
.search-results-grid.compact .search-result-main,
.search-results-grid.compact .search-result-side{min-width:0!important}
.search-results-grid.compact .search-result-title{font-size:16px!important;line-height:1.15!important}
.search-results-grid.compact .search-result .muted{font-size:13px!important;line-height:1.2!important}
.search-results-grid.compact .search-result-meta{gap:6px!important}
.search-results-grid.compact .search-result-actions{gap:6px!important;justify-content:flex-end!important}
.search-results-grid.compact .search-result-actions .button{min-height:34px!important;padding:6px 10px!important;border-radius:12px!important}
.search-results-grid.compact .pill{padding:5px 8px!important;font-size:12px!important}

.admin-users-table.compact td,
.admin-users-table.compact th{
  padding:10px 12px!important;
  line-height:1.2!important;
  vertical-align:middle!important;
}
.admin-users-table.compact .inline-meta{gap:6px!important;flex-wrap:nowrap!important}
.admin-users-table.compact .button{min-height:34px!important;padding:6px 10px!important;border-radius:12px!important}

@media (max-width: 980px){
  #serverStrip .server-stat{min-width:116px!important}
  .content-max > .beta-banner{flex-wrap:wrap!important}
}
@media (max-width: 760px){
  #serverStrip{align-items:flex-start!important}
  #serverStrip .server-strip-grid{width:100%!important}
  .search-results-grid.compact .search-result{grid-template-columns:1fr!important}
}

/* v57 warm theme + compact fixes */
:root{
  --surface:#fffdf9cc;
  --surface-strong:#fffdfbee;
  --surface-soft:#f7f1e8;
  --line:#e2d6c8;
  --line-strong:#d5c5b3;
  --text:#3d352b;
  --muted:#7c6f62;
  --accent:#bb9467;
  --accent-2:#d9b48c;
  --accent-soft:#f3e7d9;
  --shadow:0 16px 40px rgba(92,71,45,.10);
  --shadow-soft:0 10px 28px rgba(92,71,45,.07);
}
body{
  background:
    radial-gradient(860px 320px at -10% -10%, rgba(187,148,103,.12), transparent 60%),
    radial-gradient(760px 300px at 110% 0%, rgba(226,198,159,.16), transparent 56%),
    linear-gradient(180deg,#f6f1ea 0%, #f2ece3 58%, #f6f1ea 100%) !important;
}
.main-shell{overflow:visible!important}
.brand-mark{background:linear-gradient(135deg,#c6898f,#d95f70)!important}
.beta-banner,
#serverStrip.server-strip{
  width:100%!important;
  min-height:0!important;
  align-self:start!important;
}
.content-max > .beta-banner{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:10px!important;
  padding:8px 12px!important;
  border-radius:16px!important;
  background:linear-gradient(180deg,#f6e6bf,#f2ddb0)!important;
  border-color:#e0c184!important;
  color:#806536!important;
}
.content-max > .beta-banner .beta-banner-copy{
  font-size:13px!important;
  line-height:1.2!important;
}
.content-max > .beta-banner .beta-banner-copy strong{font-size:14px!important}
.content-max > .beta-banner .beta-banner-icon{
  width:30px!important;height:30px!important;flex:0 0 30px!important;border-radius:10px!important;
}
.content-max > .beta-banner .theme-toggle-btn.inline{
  width:34px!important;height:34px!important;border-radius:12px!important;min-width:34px!important;
}
#serverStrip.server-strip{
  display:grid!important;
  grid-template-columns:1fr!important;
  align-items:start!important;
  gap:8px!important;
  padding:10px 12px!important;
  border-radius:16px!important;
}
#serverStrip .server-strip-title{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  margin:0!important;
  font-size:14px!important;
  line-height:1.1!important;
}
#serverStrip .server-strip-title strong{font-size:14px!important}
#serverStrip .server-strip-grid{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  width:100%!important;
  min-width:0!important;
}
#serverStrip .server-stat{
  flex:0 0 auto!important;
  width:auto!important;
  min-width:126px!important;
  max-width:148px!important;
  min-height:0!important;
  padding:8px 10px!important;
  border-radius:14px!important;
  background:rgba(255,255,255,.78)!important;
}
#serverStrip .server-stat span{font-size:12px!important;line-height:1.05!important}
#serverStrip .server-stat strong{font-size:15px!important;line-height:1.1!important}
.theme-toggle-btn .theme-icon{display:none!important}
body:not([data-theme="dark"]) .theme-toggle-btn .theme-icon-sun{display:inline-flex!important}
body:not([data-theme="dark"]) .theme-toggle-btn .theme-icon-moon{display:none!important}
body[data-theme="dark"] .theme-toggle-btn .theme-icon-sun{display:none!important}
body[data-theme="dark"] .theme-toggle-btn .theme-icon-moon{display:inline-flex!important}
.switch-between .switch-side,
.switch-between input:not(:checked) ~ .switch-side-right,
.switch-between input:not(:checked) ~ .switch-side-left,
.switch-between input:checked ~ .switch-side-right,
.switch-between input:checked ~ .switch-side-left{
  font-weight:700!important;
}
.switch-between input:not(:checked) ~ .switch-side-right,
.switch-between input:checked ~ .switch-side-left{color:var(--muted)!important}
.switch-between input:not(:checked) ~ .switch-side-left,
.switch-between input:checked ~ .switch-side-right{color:var(--text)!important}
.nav-link::after{background:linear-gradient(90deg,rgba(187,148,103,.10),transparent 72%)!important}
.school-code,.school-kind{
  background:#f5ebdc!important;
  color:#8d6a3f!important;
  border-color:#e4d3be!important;
}
.school-item .school-code{background:#f5ebdc!important;color:#8d6a3f!important;border-color:#e4d3be!important}
.search-hit{background:rgba(187,148,103,.18)!important;color:inherit!important;padding:0 2px;border-radius:4px}
.schools-page-shell,.schools-layout,.schools-results-pane,.page-body{overflow:visible!important}
.schools-layout{align-items:start!important}
.schools-filters-pane{
  position:sticky!important;
  top:18px!important;
  align-self:start!important;
  height:fit-content!important;
  max-height:calc(100vh - 36px)!important;
  overflow:auto!important;
}
.school-results-stack{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
.school-card-plain,
.school-modal-card .school-item{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr)!important;
  grid-template-areas:
    "top title"
    "top location"
    "top info1"
    "top info2" !important;
  column-gap:12px!important;
  row-gap:6px!important;
  padding:14px 16px!important;
  align-items:start!important;
}
.school-card-plain > :nth-child(1),
.school-modal-card .school-item > .school-item-body > :nth-child(1){grid-area:top}
.school-card-plain > :nth-child(2),
.school-modal-card .school-item > .school-item-body > :nth-child(2){grid-area:title}
.school-card-plain > :nth-child(3),
.school-modal-card .school-item > .school-item-body > :nth-child(3){grid-area:location}
.school-card-plain > :nth-child(4),
.school-modal-card .school-item > .school-item-body > :nth-child(4){grid-area:info1}
.school-card-plain > :nth-child(5),
.school-modal-card .school-item > .school-item-body > :nth-child(5){grid-area:info2}
.school-card-plain .school-title,
.school-modal-card .school-item .school-title{font-size:17px!important;line-height:1.18!important;margin:0!important}
.school-card-plain .school-location,
.school-modal-card .school-item .school-location{font-size:14px!important;line-height:1.25!important}
.school-card-plain .school-subinfo,
.school-modal-card .school-item .school-subinfo{font-size:13px!important;line-height:1.3!important}
.student-assign-item.compact .school-item-body.compact{
  display:grid!important;
  gap:6px!important;
}
.student-assign-item.compact{padding:12px 14px!important;border-radius:18px!important}
.student-assign-item.compact .school-card-topline{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;flex-wrap:wrap!important}
.student-assign-pills{display:flex!important;gap:6px!important;flex-wrap:wrap!important;justify-content:flex-end!important}
.student-assign-item.compact .school-title{font-size:16px!important}
.student-assign-item.compact .school-location{font-size:13px!important}
.student-assign-item.compact .pill{padding:4px 8px!important;font-size:12px!important}
.exam-results-grid .search-result{
  grid-template-columns:minmax(0,1fr) auto auto!important;
  gap:10px 12px!important;
  align-items:center!important;
}
.exam-results-grid .search-result-actions{justify-content:flex-end!important;align-self:center!important}
.exam-results-grid .search-result-actions .button{white-space:nowrap!important}
.admin-users-table.compact{border-spacing:0 6px!important}
.admin-users-table.compact td,
.admin-users-table.compact th{padding:8px 10px!important}
.admin-users-table.compact .button{min-height:32px!important;padding:6px 10px!important}
.status-history-inline-grid{display:grid;gap:12px;margin-top:6px}
.status-history-group-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;flex-wrap:wrap}
.status-hover-row{display:flex;align-items:center;gap:8px;justify-content:space-between}
.status-hover-service{font-weight:700;min-width:0;flex:1 1 auto}
.status-hover-inline-state{font-size:12px;font-weight:800;border-radius:999px;padding:4px 8px;background:rgba(148,163,184,.14)}
.status-hover-inline-state.bad{background:rgba(213,92,107,.14);color:#a53749}
.status-hover-inline-state.warn{background:rgba(240,184,78,.16);color:#996207}
.status-hover-inline-state.ok{background:rgba(47,168,113,.12);color:#1d7e4d}
.status-component-row{grid-template-columns:minmax(0,1fr) auto!important;align-items:start!important}
.status-component-side{margin-left:0!important;justify-self:end!important}
body[data-theme="dark"]{
  background:linear-gradient(180deg,#1d1814 0%, #16120f 100%)!important;
}
body[data-theme="dark"] .card,
body[data-theme="dark"] .sidebar-panel,
body[data-theme="dark"] .overlay-card,
body[data-theme="dark"] input,
body[data-theme="dark"] select,
body[data-theme="dark"] textarea,
body[data-theme="dark"] .search-result,
body[data-theme="dark"] .school-card,
body[data-theme="dark"] .school-item,
body[data-theme="dark"] #serverStrip .server-stat{
  background:rgba(31,24,20,.96)!important;
  color:#f5eee6!important;
  border-color:rgba(183,157,124,.18)!important;
}
body[data-theme="dark"] .muted,
body[data-theme="dark"] .school-subinfo,
body[data-theme="dark"] .school-location{color:#c8b8a7!important}
body[data-theme="dark"] .beta-banner{background:linear-gradient(180deg,#6b5637,#7e6643)!important;border-color:#96754a!important;color:#fff1d7!important}
body[data-theme="dark"] .nav-group-trigger,
body[data-theme="dark"] .nav-group.is-open .nav-group-trigger,
body[data-theme="dark"] .nav-link.active,
body[data-theme="dark"] .nav-link:hover,
body[data-theme="dark"] .nav-link:focus-visible{color:#f5eee6!important}
body[data-theme="dark"] .nav-group-trigger{background:rgba(52,39,30,.78)!important}
body[data-theme="dark"] .nav-group.is-open .nav-group-trigger{background:rgba(59,45,34,.92)!important}
body[data-theme="dark"] .nav-link.active{background:rgba(70,53,39,.92)!important;border-color:rgba(183,157,124,.26)!important}
body[data-theme="dark"] .nav-link:hover,body[data-theme="dark"] .nav-link:focus-visible{background:rgba(59,45,34,.78)!important;border-color:rgba(183,157,124,.18)!important}
body[data-theme="dark"] .nav-ico{background:rgba(183,157,124,.12)!important;color:#f5eee6!important}
body[data-theme="dark"] .school-code,
body[data-theme="dark"] .school-kind{background:rgba(183,157,124,.12)!important;color:#f0ddc3!important;border-color:rgba(183,157,124,.22)!important}
@media (max-width: 1024px){
  .school-results-stack{grid-template-columns:1fr!important}
}
@media (max-width: 760px){
  .content-max > .beta-banner{grid-template-columns:auto 1fr auto!important}
  #serverStrip .server-stat{min-width:112px!important;max-width:none!important}
  .exam-results-grid .search-result{grid-template-columns:1fr!important}
}

.status-component-row{display:grid!important;}

/* v58 final layout fixes */
.content-max > .beta-banner{
  margin:0 0 6px!important;
  padding:10px 14px!important;
  min-height:auto!important;
  align-items:center!important;
}
.content-max > .beta-banner + #serverStrip.server-strip{
  margin-top:0!important;
}
#serverStrip.server-strip{
  margin:0 0 12px!important;
  padding:12px 14px!important;
  display:block!important;
  min-height:auto!important;
}
#serverStrip .server-strip-title{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  margin:0 0 10px!important;
  font-size:17px!important;
  font-weight:800!important;
}
#serverStrip .server-strip-title strong{font-size:17px!important;line-height:1.1!important}
#serverStrip .server-strip-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:12px!important;
  width:100%!important;
}
#serverStrip .server-stat{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  min-height:76px!important;
  padding:12px 14px!important;
  border-radius:16px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  gap:4px!important;
}
#serverStrip .server-stat span{font-size:13px!important;line-height:1.15!important}
#serverStrip .server-stat strong{font-size:18px!important;line-height:1.1!important}

.switch-between .switch-side,
.switch-between input:not(:checked) ~ .switch-side-right,
.switch-between input:not(:checked) ~ .switch-side-left,
.switch-between input:checked ~ .switch-side-right,
.switch-between input:checked ~ .switch-side-left{
  font-weight:600!important;
}

.exam-results-grid .search-result,
.exam-card-row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto auto!important;
  gap:12px!important;
  align-items:center!important;
}
.exam-results-grid .search-result-main,
.exam-results-grid .search-result-title{min-width:0!important}
.exam-results-grid .search-result-title{white-space:normal!important;overflow-wrap:anywhere!important}
.exam-results-grid .search-result-side{justify-self:end!important}
.exam-results-grid .search-result-meta{justify-content:flex-end!important;flex-wrap:wrap!important}
.exam-results-grid .search-result-actions{justify-self:end!important;align-self:center!important;display:flex!important;justify-content:flex-end!important}
.exam-results-grid .search-result-actions .button{white-space:nowrap!important;min-width:180px!important}

.bar-chart.compact .bar-row{
  grid-template-columns:minmax(200px,1.4fr) minmax(120px,2fr) auto!important;
  gap:10px!important;
  align-items:center!important;
}
.bar-chart.compact .bar-row > div:first-child,
.bar-chart.compact .bar-row > div:first-child span{
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:unset!important;
  display:block!important;
  line-height:1.25!important;
}

.search-results-grid.compact .search-result{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto auto!important;
  gap:12px!important;
  align-items:center!important;
}
.search-results-grid.compact .search-result-main,
.search-results-grid.compact .user-row,
.search-results-grid.compact .user-row > div{min-width:0!important}
.search-results-grid.compact .search-result-side{justify-self:end!important;min-width:0!important}
.search-results-grid.compact .search-result-meta{justify-content:flex-end!important;flex-wrap:wrap!important}
.search-results-grid.compact .search-result-actions,
.search-results-grid.compact .action-pack{
  justify-self:end!important;
  margin-left:auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
}
.search-results-grid.compact .search-result-actions form,
.action-pack form{margin:0!important}
.admin-users-table.compact td.actions-cell{width:1%;white-space:nowrap!important}
.admin-users-table.compact td.actions-cell .inline-meta{display:flex!important;justify-content:flex-end!important;gap:8px!important}

.main-shell,
.content-max,
.page-body,
.schools-page-shell,
.schools-layout,
.schools-results-pane{overflow:visible!important}
.schools-filters-pane{position:sticky!important;top:14px!important;align-self:start!important}

.search-hit{background:#ead58c!important;color:#6e4e1d!important;padding:0 3px!important;border-radius:4px!important}
body[data-theme='dark'] .search-hit{background:rgba(234,213,140,.22)!important;color:#ffe7b3!important}

.school-item-body-v2{display:flex!important;flex-direction:column!important;gap:10px!important;width:100%!important;min-width:0!important}
.school-item-header{display:flex!important;gap:12px!important;align-items:flex-start!important;min-width:0!important}
.school-item-copy{display:flex!important;flex-direction:column!important;gap:4px!important;min-width:0!important;flex:1 1 auto!important}
.school-item-meta{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px 14px!important}
.school-card-plain,
.school-modal-card .school-item{padding:14px 16px!important}
.school-title{margin:0!important;line-height:1.2!important;white-space:normal!important;overflow-wrap:anywhere!important}
.school-location,.school-subinfo{line-height:1.3!important;white-space:normal!important;overflow-wrap:anywhere!important}
.student-assign-body{gap:8px!important}
.student-assign-header{display:flex!important;justify-content:space-between!important;align-items:flex-start!important;gap:10px!important;flex-wrap:wrap!important}
.student-assign-name{font-size:18px!important;font-weight:800!important;line-height:1.15!important;color:var(--text)!important}
.student-assign-email,.student-assign-school{font-size:14px!important;line-height:1.3!important;color:var(--muted)!important;white-space:normal!important;overflow-wrap:anywhere!important}
.student-assign-pills{display:flex!important;flex-wrap:wrap!important;gap:6px!important;justify-content:flex-end!important}

.crop-toolbar{display:flex;align-items:center;gap:10px;margin-top:12px}
.crop-toolbar input[type='range']{flex:1 1 auto}
.crop-stage{position:relative;overflow:hidden;border-radius:24px;background:rgba(17,24,39,.08);min-height:360px}
.crop-stage::after{content:'';position:absolute;inset:24px;border:6px solid rgba(255,255,255,.98);border-radius:999px;pointer-events:none;box-shadow:0 0 0 999px rgba(0,0,0,.20)}
.crop-stage img{position:absolute;left:50%;top:50%;max-width:none;width:min(640px,96%);height:auto;transform:translate(-50%,-50%) scale(1);cursor:grab;user-select:none}
.crop-stage.is-dragging img{cursor:grabbing}

.engine-powered{position:fixed;right:16px;bottom:12px;display:flex;align-items:center;gap:6px;font-size:11px;line-height:1;color:var(--muted);opacity:.88;z-index:40;pointer-events:none}
.engine-powered img{width:14px;height:14px;object-fit:contain;opacity:.9}
body[data-theme='dark'] .engine-powered{color:#cbb79d!important}

@media (max-width: 1100px){
  #serverStrip .server-strip-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .school-item-meta{grid-template-columns:1fr!important}
}
@media (max-width: 760px){
  #serverStrip .server-strip-grid{grid-template-columns:1fr!important}
  .exam-results-grid .search-result,
  .search-results-grid.compact .search-result{grid-template-columns:1fr!important}
  .exam-results-grid .search-result-side,
  .exam-results-grid .search-result-actions,
  .search-results-grid.compact .search-result-side,
  .search-results-grid.compact .search-result-actions{justify-self:start!important}
  .crop-stage{min-height:300px}
  .engine-powered{right:10px;bottom:10px;font-size:10px}
}


/* v59 final layout fixes */
:root{--engine-beige:#b99158;--engine-beige-soft:#e9d7b7;--engine-beige-border:#d9c29d}
.role-moderator{background:#f5ebd7!important;color:#8a6327!important;border-color:#dec395!important}
.brand-mark{background:transparent!important;box-shadow:none!important;border:none!important}
.brand-mark img{background:transparent!important;box-shadow:none!important}
.content-max > .beta-banner{
  margin:0 0 8px!important;
  min-height:0!important;
  height:auto!important;
  align-self:start!important;
}
.content-max > .beta-banner + #serverStrip.server-strip{margin-top:0!important}
#serverStrip.server-strip{
  margin:0 0 14px!important;
  padding:12px 14px!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:10px!important;
  align-items:start!important;
}
#serverStrip .server-strip-title{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  width:100%!important;
  margin:0!important;
}
#serverStrip .server-strip-grid{
  width:100%!important;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:10px!important;
  flex-wrap:unset!important;
}
#serverStrip .server-stat{
  min-width:0!important;
  width:100%!important;
  min-height:72px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
}
#serverStrip .server-stat span{font-size:13px!important}
#serverStrip .server-stat strong{font-size:18px!important}
.engine-powered{
  position:static!important;
  right:auto!important;
  bottom:auto!important;
  margin:18px 0 8px auto!important;
  justify-content:flex-end!important;
  width:100%!important;
  pointer-events:none!important;
}
.settings-shell .switch-between .switch-side,
.settings-shell .switch-between input:not(:checked) ~ .switch-side-right,
.settings-shell .switch-between input:not(:checked) ~ .switch-side-left,
.settings-shell .switch-between input:checked ~ .switch-side-right,
.settings-shell .switch-between input:checked ~ .switch-side-left{font-weight:700!important}
.settings-shell .classic-actions.top-gap{margin-top:18px!important}
.school-item-meta,
.stack-meta{grid-template-columns:1fr!important;display:grid!important;gap:6px!important}
.school-item-meta .school-subinfo{display:block!important}
.student-assign-body{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:8px!important}
.student-assign-name,.student-assign-email,.student-assign-school{width:100%!important;white-space:normal!important;overflow-wrap:anywhere!important}
.student-assign-pills{justify-content:flex-start!important;width:100%!important}
.search-hit{background:#f4dca8!important;color:#7a4f1f!important}
body[data-theme='dark'] .search-hit{background:rgba(244,220,168,.22)!important;color:#ffe4b1!important}
.search-results-grid.compact .search-result,
.exam-results-grid .search-result{
  grid-template-columns:minmax(0,1fr) auto auto!important;
  align-items:center!important;
}
.search-results-grid.compact .search-result-actions,
.search-results-grid.compact .action-pack,
.exam-results-grid .search-result-actions{justify-self:end!important;margin-left:auto!important;align-self:center!important}
.admin-users-table.compact td.actions-cell,
.admin-users-table.compact td.actions-cell .inline-meta{justify-content:flex-end!important}
.exam-card-row .search-result-main{min-width:0!important}
.exam-card-row .search-result-title{white-space:normal!important}
.exam-card-row .search-result-actions .button{white-space:nowrap!important}
.bar-title-cell span{display:block!important;white-space:normal!important;overflow:visible!important;text-overflow:unset!important;line-height:1.28!important}
.schools-layout{align-items:start!important}
.schools-filters-pane{position:sticky!important;top:16px!important;max-height:calc(100vh - 32px)!important;overflow:auto!important}
@media (max-width: 1100px){
  #serverStrip .server-strip-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media (max-width: 760px){
  #serverStrip .server-strip-grid{grid-template-columns:1fr 1fr!important}
  .search-results-grid.compact .search-result,
  .exam-results-grid .search-result{grid-template-columns:1fr!important}
  .search-results-grid.compact .search-result-side,
  .search-results-grid.compact .search-result-actions,
  .exam-results-grid .search-result-side,
  .exam-results-grid .search-result-actions{justify-self:start!important}
}


/* v60 final fixes */
.status-overview-head.bad{background:linear-gradient(135deg,#c5485c,#ea5c67)!important}
.status-history-shell.compact{padding-top:16px!important}
.status-history-item.day-group{padding:14px 16px!important;border-radius:18px!important;background:rgba(255,255,255,.56)!important}
.status-history-item.day-group.bad{background:rgba(234,92,103,.06)!important;border-color:rgba(213,92,107,.22)!important}
.status-history-item.day-group.warn{background:rgba(240,184,78,.07)!important;border-color:rgba(240,184,78,.22)!important}
.status-history-item.day-group.ok{background:rgba(47,168,113,.04)!important;border-color:rgba(47,168,113,.18)!important}
.status-history-group.compact{padding:12px 14px!important;border-radius:16px!important;background:rgba(255,255,255,.72)!important}
.status-history-group-head{align-items:center!important}
.status-history-title{font-size:15px!important;font-weight:800!important;margin:0!important}
.status-history-updates.compact{display:grid!important;gap:8px!important;margin-top:10px!important}
.status-history-update{padding:10px 12px!important;border-radius:14px!important}
.status-history-update-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px}
.status-history-time{font-size:12px!important;color:var(--muted)!important}
.status-history-side{display:none!important}
.custom-tooltip.rich{max-width:390px!important;min-width:260px!important}
.status-hover-row{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;gap:8px!important;align-items:center!important}
.status-hover-service{min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
.status-hover-inline-state{white-space:nowrap!important;flex:0 0 auto!important}
.content-max > .beta-banner{margin:0 0 6px!important}
.content-max > .beta-banner + #serverStrip.server-strip{margin-top:0!important}
#serverStrip.server-strip{margin:0 0 10px!important;padding:12px 16px!important;gap:10px!important}
#serverStrip .server-strip-title{margin-bottom:0!important;font-size:16px!important}
#serverStrip .server-strip-title strong{font-size:18px!important}
#serverStrip .server-strip-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px!important;width:100%!important}
#serverStrip .server-stat{min-height:68px!important;max-width:none!important;width:100%!important}
#serverStrip .server-stat span{font-size:14px!important}
#serverStrip .server-stat strong{font-size:18px!important}
.dashboard-page .page-body{gap:12px!important}
.dashboard-page #serverStrip.server-strip{margin-bottom:8px!important}
.dashboard-page .stats-grid,.dashboard-page .dashboard-grid{margin-top:0!important}
.engine-powered{position:static!important;right:auto!important;bottom:auto!important;width:100%!important;display:flex!important;justify-content:flex-end!important;margin:14px 0 4px auto!important;pointer-events:none!important}
.engine-powered img{width:14px!important;height:14px!important;background:transparent!important}
.switch-between .switch-side-left,.switch-between .switch-side-right,.switch-between .switch-side{font-weight:700!important}
.switch-between input:not(:checked) ~ .switch-side-left,.switch-between input:checked ~ .switch-side-right{font-weight:700!important}
.switch-between input:not(:checked) ~ .switch-side-right,.switch-between input:checked ~ .switch-side-left{font-weight:700!important}
.settings-shell .switch-between .switch-side-left,.settings-shell .switch-between .switch-side-right,.settings-shell .switch-between .switch-side{font-weight:700!important}
.school-card-vertical{display:grid!important;grid-template-columns:1fr!important;gap:6px!important;align-items:start!important}
.school-card-vertical .school-code-top{justify-self:start!important;margin:0 0 2px!important}
.school-card-vertical .school-title{margin:0!important}
.school-card-vertical .school-location{margin:0!important}
.school-card-vertical .school-item-meta,.school-card-vertical .stack-meta{display:grid!important;grid-template-columns:1fr!important;gap:4px!important}
.school-card-plain > :nth-child(1),.school-card-plain > :nth-child(2),.school-card-plain > :nth-child(3),.school-card-plain > :nth-child(4),.school-card-plain > :nth-child(5){grid-area:auto!important}
.student-assign-body.compact-card{display:grid!important;grid-template-columns:1fr!important;gap:6px!important;align-items:start!important}
.student-email-chip{display:inline-flex!important;justify-self:start!important;max-width:100%;padding:6px 10px!important;border-radius:999px!important;background:var(--accent-soft)!important;color:var(--accent)!important;font-weight:800!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
.student-assign-name,.student-assign-school{width:100%!important;white-space:normal!important;overflow-wrap:anywhere!important;line-height:1.3!important}
.student-assign-pills{display:flex!important;justify-content:flex-start!important;flex-wrap:wrap!important;gap:6px!important;width:100%!important}
.search-hit{background:#ead18a!important;color:#6d4a10!important}
.bar-title-cell{min-width:0!important}
.bar-title-cell span{display:block!important;white-space:normal!important;word-break:break-word!important;overflow:visible!important;text-overflow:unset!important;line-height:1.28!important}
@media (max-width:1100px){#serverStrip .server-strip-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media (max-width:760px){#serverStrip .server-strip-grid{grid-template-columns:1fr 1fr!important}.engine-powered{justify-content:flex-start!important}}

/* v61 final fixes */
.settings-shell .switch-between .switch-side,
.settings-shell .switch-between .switch-side-left,
.settings-shell .switch-between .switch-side-right,
.settings-shell .switch-between input:not(:checked) ~ .switch-side-right,
.settings-shell .switch-between input:not(:checked) ~ .switch-side-left,
.settings-shell .switch-between input:checked ~ .switch-side-right,
.settings-shell .switch-between input:checked ~ .switch-side-left{
  font-weight:700 !important;
}

.overlay-school-card,
.overlay-school-card .school-title,
.overlay-school-card .school-location,
.overlay-school-card .school-subinfo,
.student-assign-copy,
.student-assign-name,
.student-assign-email,
.student-assign-school{
  min-width:0 !important;
  width:100% !important;
  white-space:normal !important;
  overflow:visible !important;
  text-overflow:unset !important;
  overflow-wrap:anywhere !important;
  word-break:break-word !important;
}
.overlay-school-card{display:grid !important;grid-template-columns:1fr !important;gap:8px !important;align-items:start !important}
.overlay-school-top{display:flex !important;align-items:center !important;justify-content:flex-start !important}
.overlay-school-meta{display:grid !important;grid-template-columns:1fr !important;gap:4px !important}
.school-modal-card .school-item,
#studentAssignList .student-assign-item{min-height:0 !important;height:auto !important}
.student-assign-item .student-assign-header.compact-header{display:block !important;width:100% !important}
.student-assign-item .student-assign-copy{display:grid !important;grid-template-columns:1fr !important;gap:4px !important}
.student-assign-item .student-assign-pills{justify-content:flex-start !important;align-items:center !important}
.student-assign-item .pill,
.school-modal-card .school-item .pill{max-width:100% !important;white-space:normal !important}

.compact-incident-history .status-history-item.day-group{
  padding:12px 14px !important;
  border-radius:16px !important;
  background:rgba(255,255,255,.52) !important;
}
.compact-incident-history .status-incident-stack{display:grid !important;gap:10px !important;margin-top:8px !important}
.compact-incident-history .incident-card{
  padding:12px 14px !important;
  border-radius:14px !important;
  border:1px solid var(--line) !important;
  background:rgba(255,255,255,.68) !important;
  display:grid !important;
  gap:10px !important;
}
.compact-incident-history .incident-card.bad{border-color:rgba(213,92,107,.22) !important;background:rgba(234,92,103,.05) !important}
.compact-incident-history .incident-card.warn{border-color:rgba(240,184,78,.22) !important;background:rgba(240,184,78,.05) !important}
.compact-incident-history .incident-head{align-items:center !important}
.compact-incident-history .incident-title{font-size:17px !important;line-height:1.25 !important}
.compact-incident-history .incident-service-list{display:grid !important;gap:8px !important}
.compact-incident-history .incident-service-row{
  padding:10px 12px !important;
  border:1px solid var(--line) !important;
  border-radius:12px !important;
  background:rgba(255,255,255,.58) !important;
  display:grid !important;
  gap:8px !important;
}
.compact-incident-history .incident-service-head{display:flex !important;align-items:center !important;justify-content:space-between !important;gap:10px !important;flex-wrap:wrap !important}
.compact-incident-history .incident-service-state{font-size:12px !important;font-weight:700 !important}
.compact-incident-history .incident-service-state.bad{color:#b24251 !important}
.compact-incident-history .incident-service-state.warn{color:#a56d12 !important}
.compact-incident-history .status-history-updates{display:grid !important;gap:8px !important}
.compact-incident-history .status-history-update{padding:8px 10px !important;border-radius:10px !important}
.compact-incident-history .status-history-update-head{display:flex !important;align-items:center !important;justify-content:space-between !important;gap:8px !important}
.compact-incident-history .status-history-note{margin-top:4px !important;line-height:1.35 !important}

.custom-tooltip.rich{max-width:360px !important;min-width:260px !important}
.custom-tooltip.rich .status-hover-card{padding:14px !important}
.custom-tooltip.rich .status-hover-incident{display:grid !important;gap:6px !important;margin-top:10px !important}
.custom-tooltip.rich .status-hover-incident:first-child{margin-top:0 !important}
.custom-tooltip.rich .status-hover-incident-title{font-size:14px !important;font-weight:800 !important;line-height:1.25 !important}
.custom-tooltip.rich .status-hover-incident-title.bad{color:#b24251 !important}
.custom-tooltip.rich .status-hover-incident-title.warn{color:#a56d12 !important}
.custom-tooltip.rich .status-hover-row{display:grid !important;grid-template-columns:8px minmax(0,1fr) auto !important;align-items:center !important;gap:8px !important;padding:4px 0 !important}
.custom-tooltip.rich .status-hover-service,
.custom-tooltip.rich .status-hover-inline-state{white-space:nowrap !important;overflow:hidden !important;text-overflow:ellipsis !important;min-width:0 !important}
.custom-tooltip.rich .status-hover-inline-state{font-size:12px !important;font-weight:700 !important;padding-left:10px !important}

body[data-theme="dark"] .user-chip,
body[data-theme="dark"] .profile-mini-card,
body[data-theme="dark"] .version-pill,
body[data-theme="dark"] .hero-panel,
body[data-theme="dark"] .setting-row,
body[data-theme="dark"] .metric-card,
body[data-theme="dark"] .metric-card.soft,
body[data-theme="dark"] .metric-card.accent,
body[data-theme="dark"] .pill,
body[data-theme="dark"] tr,
body[data-theme="dark"] .donut-card,
body[data-theme="dark"] .data-table,
body[data-theme="dark"] .data-table.result-table,
body[data-theme="dark"] .empty-state{
  background:rgba(16,24,34,.94) !important;
  color:var(--text) !important;
  border-color:rgba(176,150,115,.16) !important;
}
body[data-theme="dark"] .data-table th,
body[data-theme="dark"] .data-table td,
body[data-theme="dark"] .result-table th,
body[data-theme="dark"] .result-table td{background:transparent !important;color:var(--text) !important;border-color:rgba(176,150,115,.12) !important}
body[data-theme="dark"] .empty-state,
body[data-theme="dark"] .version-pill,
body[data-theme="dark"] .setting-row .muted,
body[data-theme="dark"] .metric-card span,
body[data-theme="dark"] .user-chip .muted{color:#cbb79d !important}
body[data-theme="dark"] .compact-incident-history .status-history-item.day-group,
body[data-theme="dark"] .compact-incident-history .incident-card,
body[data-theme="dark"] .compact-incident-history .incident-service-row{background:rgba(16,24,34,.94) !important;color:var(--text) !important}
body[data-theme="dark"] .custom-tooltip.rich{background:rgba(16,24,34,.98) !important;color:var(--text) !important;border-color:rgba(176,150,115,.18) !important}
body[data-theme="dark"] .custom-tooltip.rich .status-hover-date{color:#f1e3cf !important}
body[data-theme="dark"] .custom-tooltip.rich .status-hover-state{color:#d3b07a !important}
body[data-theme="dark"] .custom-tooltip.rich .status-hover-row{color:var(--text) !important}

/* v62 targeted fixes */
.switch-between .switch-side,
.switch-between .switch-side-left,
.switch-between .switch-side-right,
.settings-shell .switch-between .switch-side,
.settings-shell .switch-between .switch-side-left,
.settings-shell .switch-between .switch-side-right,
.settings-shell .switch-between input:not(:checked) ~ .switch-side-right,
.settings-shell .switch-between input:not(:checked) ~ .switch-side-left,
.settings-shell .switch-between input:checked ~ .switch-side-right,
.settings-shell .switch-between input:checked ~ .switch-side-left{
  font-weight:700 !important;
}

.engine-powered{position:static !important;right:auto !important;bottom:auto !important;margin:14px 0 2px auto !important;width:max-content}

.admin-search-layout.static{display:grid;grid-template-columns:320px minmax(0,1fr);gap:18px}
.admin-search-filters{align-self:start}
.admin-search-results{min-width:0}
.admin-user-search-row{display:grid !important;grid-template-columns:minmax(0,1fr) auto auto !important;gap:14px !important;align-items:center !important}
.admin-user-search-row .search-result-main{min-width:0}
.admin-user-search-row .search-result-side{justify-self:end !important}
.admin-user-search-row .search-result-actions{justify-self:end !important;display:flex !important;gap:8px !important;flex-wrap:wrap !important}
.admin-user-search-row .search-result-meta{justify-content:flex-end !important}
.admin-users-table .actions-cell .inline-meta{justify-content:flex-end !important;margin-left:auto !important}
.tabs.admin-tabs{flex-wrap:wrap}

.exam-results-grid .exam-card-row{display:grid !important;grid-template-columns:minmax(0,1fr) auto auto !important;align-items:center !important;gap:14px !important}
.exam-results-grid .search-result-actions{justify-self:end !important}
.exam-results-grid .search-result-side{justify-self:end !important}

.overlay-pick-card{display:grid !important;grid-template-columns:1fr !important;gap:8px !important;align-items:start !important;min-height:0 !important;height:auto !important;padding:14px 16px !important}
.overlay-pick-card .school-code,
.overlay-pick-card .school-title,
.overlay-pick-card .school-location,
.overlay-pick-card .school-subinfo,
.overlay-pick-card .student-assign-name,
.overlay-pick-card .student-assign-email,
.overlay-pick-card .student-assign-school{position:static !important;transform:none !important;float:none !important;display:block !important;width:100% !important;min-width:0 !important;white-space:normal !important;overflow:visible !important;text-overflow:unset !important;overflow-wrap:anywhere !important;word-break:break-word !important;margin:0 !important}
.overlay-pick-card .overlay-pick-main{display:grid !important;grid-template-columns:1fr !important;gap:6px !important;min-width:0 !important}
.overlay-pick-card .overlay-pick-topline{display:flex !important;justify-content:space-between !important;align-items:flex-start !important;gap:10px !important;flex-wrap:wrap !important}
.overlay-pick-card .student-assign-pills{display:flex !important;flex-wrap:wrap !important;gap:6px !important;justify-content:flex-start !important}
#studentAssignList .student-assign-item,
#schoolList .school-item{min-height:0 !important;height:auto !important;align-items:start !important}
#studentAssignList .student-assign-name{font-size:18px !important;line-height:1.18 !important;font-weight:800 !important}
#schoolList .school-title{font-size:17px !important;line-height:1.2 !important}
#schoolList .school-location,#schoolList .school-subinfo,#studentAssignList .student-assign-email,#studentAssignList .student-assign-school{font-size:14px !important;line-height:1.35 !important}

.compact-incident-history.clean-history .incident-card{padding:12px 14px !important}
.compact-incident-history.clean-history .incident-head{margin-bottom:2px !important}
.compact-incident-history.clean-history .incident-card .empty-state{padding:12px !important}
.compact-incident-history.clean-history .status-history-update{border:1px solid rgba(201,178,143,.22) !important;background:rgba(255,255,255,.55) !important}
.compact-incident-history.clean-history .status-history-update.info{background:rgba(96,126,246,.08) !important}
.compact-incident-history.clean-history .status-history-update.ok{background:rgba(78,179,108,.08) !important}
.compact-incident-history.clean-history .status-history-update.warn{background:rgba(228,176,64,.08) !important}
.compact-incident-history.clean-history .status-history-item.day-group{padding:10px 12px !important}

.school-summary-grid .summary-cell strong{line-height:1.3}

body[data-theme="dark"] .overlay-pick-card,
body[data-theme="dark"] .admin-search-shell .school-modal-filters,
body[data-theme="dark"] .admin-search-shell .school-modal-results,
body[data-theme="dark"] .admin-search-shell .search-result,
body[data-theme="dark"] .school-modal-card .school-item,
body[data-theme="dark"] #studentAssignList .student-assign-item{background:rgba(16,24,34,.94) !important;color:var(--text) !important;border-color:rgba(176,150,115,.16) !important}
body[data-theme="dark"] .overlay-pick-card .school-location,
body[data-theme="dark"] .overlay-pick-card .school-subinfo,
body[data-theme="dark"] .overlay-pick-card .student-assign-email,
body[data-theme="dark"] .overlay-pick-card .student-assign-school{color:#cbb79d !important}

@media (max-width: 980px){
  .admin-search-layout.static{grid-template-columns:1fr}
  .admin-user-search-row,
  .exam-results-grid .exam-card-row{grid-template-columns:1fr !important}
  .admin-user-search-row .search-result-side,
  .admin-user-search-row .search-result-actions,
  .exam-results-grid .search-result-side,
  .exam-results-grid .search-result-actions{justify-self:start !important}
}

/* v62 final overlay picker reset */
button.overlay-pick-school,
button.overlay-pick-student{
  appearance:none !important;
  display:block !important;
  width:100% !important;
  min-height:0 !important;
  height:auto !important;
  padding:14px 16px !important;
  text-align:left !important;
  border-radius:22px !important;
  border:1px solid var(--line) !important;
  background:rgba(255,255,255,.96) !important;
  color:var(--text) !important;
  box-shadow:none !important;
  overflow:hidden !important;
}
button.overlay-pick-school:hover,
button.overlay-pick-student:hover{
  background:rgba(255,255,255,.99) !important;
  border-color:var(--line-strong) !important;
}
button.overlay-pick-school .overlay-pick-main,
button.overlay-pick-student .overlay-pick-main{
  display:flex !important;
  flex-direction:column !important;
  gap:6px !important;
  min-width:0 !important;
}
button.overlay-pick-school .school-code,
button.overlay-pick-student .school-code{
  display:inline-flex !important;
  align-self:flex-start !important;
  margin:0 0 8px 0 !important;
}
button.overlay-pick-school .school-title,
button.overlay-pick-school .school-location,
button.overlay-pick-school .school-subinfo,
button.overlay-pick-student .student-assign-name,
button.overlay-pick-student .student-assign-email,
button.overlay-pick-student .student-assign-school{
  display:block !important;
  position:static !important;
  width:100% !important;
  min-width:0 !important;
  margin:0 !important;
  white-space:normal !important;
  overflow:visible !important;
  text-overflow:unset !important;
  overflow-wrap:anywhere !important;
  word-break:break-word !important;
}
button.overlay-pick-student .overlay-pick-topline{
  display:flex !important;
  align-items:flex-start !important;
  justify-content:space-between !important;
  gap:10px !important;
  flex-wrap:wrap !important;
}
button.overlay-pick-student .student-assign-pills{
  display:flex !important;
  justify-content:flex-start !important;
  align-items:center !important;
  flex-wrap:wrap !important;
  gap:6px !important;
}
#schoolList .list-animate,
#studentAssignList .list-animate{animation:none !important}
body[data-theme="dark"] button.overlay-pick-school,
body[data-theme="dark"] button.overlay-pick-student{
  background:rgba(16,24,34,.96) !important;
  border-color:rgba(176,150,115,.16) !important;
  color:var(--text) !important;
}

/* v63 final stability + compact user rows */
#schoolList,
#studentAssignList{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:12px !important;
  align-content:start !important;
  align-items:start !important;
  grid-auto-rows:max-content !important;
}
#schoolList .empty-state,
#studentAssignList .empty-state{align-self:start !important}
button.overlay-pick-school,
button.overlay-pick-student{
  min-height:148px !important;
  height:148px !important;
  align-items:flex-start !important;
  justify-content:flex-start !important;
  padding:14px 18px !important;
  overflow:hidden !important;
}
button.overlay-pick-school .overlay-pick-main,
button.overlay-pick-student .overlay-pick-main{
  display:grid !important;
  gap:8px !important;
  width:100% !important;
  min-width:0 !important;
  align-content:start !important;
}
button.overlay-pick-school .school-title{font-size:17px !important;line-height:1.25 !important;max-height:2.5em;overflow:hidden !important}
button.overlay-pick-school .school-location{font-size:14px !important;line-height:1.35 !important;max-height:2.7em;overflow:hidden !important}
button.overlay-pick-school .school-subinfo{font-size:13px !important;line-height:1.3 !important}
button.overlay-pick-student .student-assign-name{font-size:18px !important;line-height:1.2 !important;max-height:2.4em;overflow:hidden !important}
button.overlay-pick-student .student-assign-email,
button.overlay-pick-student .student-assign-school{font-size:14px !important;line-height:1.35 !important;max-height:2.7em;overflow:hidden !important}
button.overlay-pick-student .student-assign-pills .pill.warn{background:#f5ebdc !important;color:#8d6a3f !important;border-color:#e4d3be !important}
.school-modal-results{align-content:start !important}
.school-modal-results .section-head{margin-bottom:0 !important}

.compact-user-card{display:grid !important;grid-template-columns:minmax(0,1fr) auto auto !important;gap:12px !important;align-items:center !important}
.compact-user-card .search-result-title{display:flex !important;align-items:center !important;gap:10px !important;flex-wrap:wrap !important}
.compact-user-card .line-with-pill .pill{margin-left:2px !important}
.user-identity-line{white-space:normal !important;overflow-wrap:anywhere !important}
.status-dot-only{display:inline-block !important;width:10px !important;height:10px !important;border-radius:999px !important;box-shadow:0 0 0 3px rgba(255,255,255,.6) !important}
.status-dot-only.online{background:#3fb46a !important}
.status-dot-only.idle{background:#d6a33c !important}
.status-dot-only.offline{background:#d96b78 !important}
@media (max-width:980px){
  .compact-user-card{grid-template-columns:1fr !important}
  .compact-user-card .search-result-side,
  .compact-user-card .search-result-actions{justify-self:start !important}
}

.switch-between .switch-side,
.switch-between .switch-side-left,
.switch-between .switch-side-right,
.settings-shell .switch-between .switch-side,
.settings-shell .switch-between .switch-side-left,
.settings-shell .switch-between .switch-side-right{font-weight:700 !important}

body[data-theme="dark"] .user-chip,
body[data-theme="dark"] .profile-mini-card,
body[data-theme="dark"] .version-pill,
body[data-theme="dark"] .hero-panel.reveal.compact,
body[data-theme="dark"] .setting-row.compact.single-line,
body[data-theme="dark"] .metric-card.soft,
body[data-theme="dark"] .metric-card.accent,
body[data-theme="dark"] .pill,
body[data-theme="dark"] tr,
body[data-theme="dark"] .donut-card,
body[data-theme="dark"] .data-table.result-table,
body[data-theme="dark"] .empty-state{background:rgba(15,19,28,.94) !important;color:#f2e7d8 !important;border-color:rgba(191,165,126,.22) !important}
body[data-theme="dark"] .muted,
body[data-theme="dark"] .user-identity-line{color:#ceb89d !important}


/* v64 picker + school member flow fixes */
.picker-card-main{display:grid!important;gap:8px!important;align-content:start!important;min-width:0!important;width:100%!important}
.picker-card-code{display:inline-flex!important;align-self:flex-start!important;padding:7px 12px!important;border-radius:999px!important;background:#f5ebdc!important;color:#8d6a3f!important;border:1px solid #e4d3be!important;font-weight:800!important;font-size:13px!important;line-height:1!important}
.picker-card-title{font-size:18px!important;font-weight:800!important;line-height:1.24!important;color:var(--text)!important;white-space:normal!important;overflow:hidden!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important}
.picker-card-meta,.picker-card-subline{font-size:14px!important;line-height:1.35!important;color:var(--muted)!important;white-space:normal!important;overflow:hidden!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important}
.picker-card-subline strong{color:var(--text)!important}
.picker-card-toprow{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:10px!important;align-items:start!important}
button.overlay-pick-school,button.overlay-pick-student{display:block!important;width:100%!important;height:156px!important;min-height:156px!important;padding:14px 16px!important;border-radius:22px!important;background:rgba(255,255,255,.98)!important;border:1px solid var(--line)!important;text-align:left!important;overflow:hidden!important;box-shadow:none!important}
#schoolList,#studentAssignList{display:grid!important;grid-template-columns:1fr!important;gap:12px!important;align-content:start!important;grid-auto-rows:156px!important}
#schoolList .picker-card-school{grid-template-rows:auto auto auto auto auto!important}
#studentAssignList .picker-card-student{grid-template-rows:auto auto auto!important}
.member-mode-switch{margin-top:10px!important}
.switch-between .switch-side,.switch-between .switch-side-left,.switch-between .switch-side-right{font-weight:700!important}
.switch-between .switch-side.active,.switch-between .switch-side-left.active,.switch-between .switch-side-right.active{font-weight:700!important}
body[data-theme="dark"] .picker-card-title{color:#f8efe3!important}
body[data-theme="dark"] .picker-card-meta,body[data-theme="dark"] .picker-card-subline{color:#d4bea2!important}
body[data-theme="dark"] .picker-card-code{background:rgba(196,160,115,.16)!important;color:#f1d7b5!important;border-color:rgba(196,160,115,.24)!important}

/* v65 profile + picker + footer + status dot fixes */
.footer-inline{position:static!important;right:auto!important;bottom:auto!important;width:100%!important;display:flex!important;justify-content:flex-end!important;align-items:center!important;gap:6px!important;margin:18px 0 4px auto!important;pointer-events:none!important}
.footer-inline img{width:14px!important;height:14px!important;object-fit:contain!important;background:transparent!important}

.user-view-shell{padding:22px!important}
.user-view-grid{display:grid!important;grid-template-columns:minmax(320px,.95fr) minmax(0,1.25fr)!important;gap:22px!important;align-items:start!important}
.user-view-identity,.user-view-details{min-width:0!important}
.user-view-head{align-items:flex-start!important}
.user-view-head .badge-row{display:flex!important;flex-wrap:wrap!important;gap:8px!important}
.user-view-details .stats-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
@media (max-width: 980px){
  .user-view-grid{grid-template-columns:1fr!important}
  .user-view-details .stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media (max-width: 640px){
  .user-view-details .stats-grid{grid-template-columns:1fr!important}
}

.status-dot.pulse,.status-dot-only.pulse{position:relative;overflow:visible}
.status-dot.pulse::after,.status-dot-only.pulse::after{content:"";position:absolute;inset:-3px;border-radius:999px;background:currentColor;opacity:.12;transform:scale(.7);animation:statusRipple 2.4s ease-out infinite}
.status-dot.green,.status-dot-only.online{color:#34b566!important;background:#34b566!important}
.status-dot.yellow,.status-dot-only.idle{color:#d3a13f!important;background:#d3a13f!important}
.status-dot.red,.status-dot-only.offline{color:#d36a76!important;background:#d36a76!important}
@keyframes statusRipple{0%{transform:scale(.72);opacity:.26}65%{transform:scale(1.9);opacity:0}100%{transform:scale(1.9);opacity:0}}

#sidebarToggle,.sidebar-toggle,.mobile-menu-toggle,.hamburger-toggle,.sidebar-fab,.mobile-fab,.floating-menu-toggle{display:none!important}

button.overlay-pick-school,button.overlay-pick-student{display:block!important;width:100%!important;height:156px!important;min-height:156px!important;max-height:156px!important;padding:14px 16px!important;overflow:hidden!important}
button.overlay-pick-school .picker-card-main,button.overlay-pick-student .picker-card-main{display:grid!important;height:100%!important;align-content:start!important;align-items:start!important;min-height:0!important}
button.overlay-pick-school .picker-card-school{grid-template-rows:auto auto auto auto auto!important;row-gap:6px!important}
button.overlay-pick-student .picker-card-student{grid-template-rows:auto auto auto!important;row-gap:8px!important}
button.overlay-pick-school .picker-card-title,button.overlay-pick-student .picker-card-title{position:static!important;margin:0!important;white-space:normal!important;overflow:hidden!important;text-overflow:unset!important;word-break:break-word!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important}
button.overlay-pick-school .picker-card-meta,button.overlay-pick-school .picker-card-subline,button.overlay-pick-student .picker-card-meta,button.overlay-pick-student .picker-card-subline{position:static!important;margin:0!important;white-space:normal!important;overflow:hidden!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important}
button.overlay-pick-student .student-assign-pills{display:flex!important;flex-wrap:wrap!important;gap:6px!important;justify-content:flex-start!important;align-self:start!important}
#schoolList,#studentAssignList{grid-auto-rows:156px!important;align-content:start!important}
#schoolList .empty-state,#studentAssignList .empty-state{height:auto!important;min-height:120px!important;display:flex!important;align-items:center!important;justify-content:center!important}

.clean-create-form{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important}
.clean-create-form .span-all{grid-column:1/-1!important}
.clean-create-form label{display:grid!important;gap:8px!important}
@media (max-width: 820px){.clean-create-form{grid-template-columns:1fr!important}}

/* ═══════════════════════════════════════════════════════════════
   v3.0 — COMPREHENSIVE VISUAL OVERHAUL
   ═══════════════════════════════════════════════════════════════ */

/* ── Task 13: Compact alpha banner + server strip ────────────── */
.beta-banner{margin:0 0 4px!important;padding:8px 14px!important;min-height:auto!important;border-radius:16px!important;font-size:13px!important;gap:8px!important}
.beta-banner-icon{width:28px!important;height:28px!important;border-radius:8px!important;flex:0 0 28px!important}
.beta-banner-copy{font-size:13px!important}
.beta-banner-copy strong{font-size:13px}
.server-strip{margin:0 0 4px!important;padding:8px 12px!important;border-radius:16px!important;gap:6px!important}
.server-strip-title{font-size:13px!important;gap:6px!important}
.server-strip-title .icon-svg{width:14px;height:14px}
.server-strip-title strong{font-size:13px}
.server-strip-grid{gap:6px!important}
.server-stat{padding:6px 10px!important;border-radius:12px!important;gap:2px!important}
.server-stat span{font-size:11px!important}
.server-stat strong{font-size:14px!important}
.breadcrumb-bar{margin:0 0 2px!important;padding:4px 0!important}
.content-max{gap:8px!important}

/* ── Task 20: Remove powered-by, add docs link in sidebar ────── */
.engine-powered{display:none!important}

/* ── Task 21: Compact sidebar ────────────────────────────────── */
.app-shell{grid-template-columns:220px minmax(0,1fr)!important;gap:10px!important;padding:10px!important}
.sidebar-left{top:10px!important;height:calc(100vh - 20px)!important}
.sidebar-panel{padding:10px!important;gap:8px!important;border-radius:20px!important}
.brand-wrap{gap:8px}
.brand-mark{width:32px!important;height:32px!important;border-radius:10px!important;font-size:16px!important;box-shadow:0 6px 16px rgba(97,126,246,.18)!important}
.brand-compact .brand-mark img{width:32px;height:32px}
.brand{font-size:18px!important;font-weight:700!important}
.user-chip{padding:8px!important;border-radius:14px!important;gap:8px!important}
.user-chip strong{font-size:13px!important}
.username-line{font-size:11px!important}
.status-mini{font-size:10px!important;gap:4px!important;margin-top:2px!important}
.status-dot{width:6px!important;height:6px!important}
.avatar-sm{width:32px!important;height:32px!important;font-size:13px!important}
.nav-group-trigger{padding:6px 10px!important;border-radius:12px!important}
.nav-group-title{font-size:12px!important;text-transform:uppercase!important;letter-spacing:.06em!important;color:var(--muted)!important;font-weight:600!important}
.nav-group-panel{gap:2px!important;padding:0 2px!important}
.nav-link{padding:6px 8px!important;border-radius:10px!important;gap:8px!important;font-size:13px!important}
.nav-ico{width:28px!important;height:28px!important;border-radius:8px!important;flex:0 0 28px!important}
.nav-ico .icon-svg{width:14px!important;height:14px!important}
.nav-ico .icon-svg svg{width:14px!important;height:14px!important}
.nav-label{font-size:13px!important}
.nav-link.active .nav-ico{background:linear-gradient(135deg,var(--accent),var(--accent-2))!important;color:#fff!important}
.sidebar-footer{margin-top:auto;padding-top:4px}
.version-pill{padding:6px 8px!important;border-radius:10px!important;font-size:11px!important}
.icon-button{width:32px!important;height:32px!important;border-radius:10px!important}
.theme-toggle-btn{width:32px!important;height:32px!important;border-radius:10px!important}
.side-nav{gap:2px!important}
.nav-group{gap:2px!important}
.sidebar-mini-nav{display:none!important}
.nav-logout-form button.nav-link{font-size:13px!important}

/* ── Task 1: Lighter ripple ──────────────────────────────────── */
.button.ripple-active::after{background:rgba(255,255,255,.12)!important;animation:ripple .6s cubic-bezier(.22,1,.36,1)!important}

/* ── Task 3: Remove mobile responsive ────────────────────────── */
/* No mobile adjustments — desktop only */

/* ── Task 12: Status panel redesign ──────────────────────────── */
.status-editor-grid{grid-template-columns:1fr!important;gap:8px!important}
.status-editor-card{padding:12px 16px!important;border-radius:16px!important;border-left:3px solid var(--line)!important;display:grid;gap:8px}
.status-editor-card.ok{border-left-color:var(--ok)!important;background:rgba(31,157,97,.03)}
.status-editor-card.warn{border-left-color:var(--warn)!important;background:rgba(210,155,35,.03)}
.status-editor-card.bad{border-left-color:var(--bad)!important;background:rgba(213,92,107,.03)}
.status-editor-card .section-head{margin:0!important;padding:0!important}
.status-radio-row{display:flex;gap:6px;flex-wrap:wrap}
.status-radio-pill{cursor:pointer;display:flex;align-items:center;gap:4px;padding:4px 10px;border-radius:8px;border:1px solid var(--line);font-size:12px;font-weight:600;transition:all .2s ease}
.status-radio-pill:has(input:checked){border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}
.status-radio-pill input{display:none}

/* ── Task 17: Star ratings ───────────────────────────────────── */
.star-rating{display:inline-flex;gap:2px;font-size:0}
.star-rating .star{width:18px;height:18px;cursor:pointer;color:var(--line);transition:color .15s ease,transform .15s ease}
.star-rating .star:hover{transform:scale(1.15)}
.star-rating .star.filled{color:#e6a817}
.star-rating .star svg{width:18px;height:18px;fill:currentColor}
.star-rating-inline{font-size:0;display:inline-flex;gap:1px;vertical-align:middle}
.star-rating-inline .star-icon{width:14px;height:14px;color:var(--line)}
.star-rating-inline .star-icon.filled{color:#e6a817}

/* ── Task 15: Profile view redesign (two-column) ─────────────── */
.user-profile-layout{display:grid;grid-template-columns:320px minmax(0,1fr);gap:14px}
.user-profile-sidebar{display:grid;gap:10px;align-content:start}
.user-profile-card{text-align:center;padding:20px!important}
.user-profile-card .avatar{width:80px;height:80px;margin:0 auto 10px;font-size:28px}
.user-profile-card h2{font-size:18px;margin:0 0 4px}
.user-profile-card .muted{font-size:13px}
.user-profile-card .badge-row{justify-content:center;gap:4px;margin:8px 0}
.user-profile-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.user-profile-info-cell{padding:8px 10px;border-radius:10px;background:var(--surface-soft);font-size:13px}
.user-profile-info-cell span{display:block;font-size:11px;color:var(--muted);margin-bottom:2px}
.user-profile-info-cell strong{font-size:14px}

/* ── Task 7: Better form layouts ─────────────────────────────── */
.clean-create-form{gap:10px!important}
.clean-create-form label{font-size:13px!important}
.clean-create-form input,.clean-create-form select{padding:10px 12px!important;border-radius:12px!important;font-size:14px!important}
.form-grid{gap:10px!important}

/* ── Task 2: Compact toggle for school_view ──────────────────── */
.member-create-panel{display:flex;align-items:center;gap:10px;padding:8px 0;flex-wrap:wrap}
.member-mode-switch{display:inline-flex;border-radius:10px;border:1px solid var(--line);overflow:hidden;font-size:13px}
.member-mode-switch .switch-side{padding:5px 14px;background:transparent;border:none;cursor:pointer;font-weight:600;color:var(--muted);transition:all .2s ease}
.member-mode-switch .switch-side.active{background:var(--accent);color:#fff}
.member-create-actions{display:flex;align-items:center;gap:8px}
.member-create-actions label{font-size:12px;display:flex;align-items:center;gap:4px}
.member-create-actions select{padding:4px 8px;border-radius:8px;font-size:12px;width:auto}
.member-create-actions .button{padding:5px 12px!important;font-size:12px!important;border-radius:10px!important}

/* ── Settings page ───────────────────────────────────────────── */
.settings-stack{display:grid;gap:8px}
.setting-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border-radius:14px;border:1px solid var(--line);background:var(--surface-soft)}
.setting-row strong{font-size:14px}
.setting-row .muted{font-size:12px}
.settings-section-title{font-size:13px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;padding:8px 0 2px}

/* ── Compact search result items ─────────────────────────────── */
.compact-user-card{padding:8px 12px!important}
.compact-user-card .search-result-title{font-size:14px!important}
.compact-user-card .muted{font-size:12px!important}

/* ── Filter bar inline ───────────────────────────────────────── */
.filter-bar-inline{display:flex;gap:8px;flex-wrap:wrap;align-items:end;padding:8px 0}
.filter-bar-inline label{font-size:12px;display:grid;gap:2px;min-width:120px;flex:1;max-width:200px}
.filter-bar-inline input,.filter-bar-inline select{padding:6px 10px!important;font-size:13px!important;border-radius:10px!important}

/* ── Documentation link in sidebar ───────────────────────────── */
.docs-link{display:flex;align-items:center;gap:6px;padding:6px 8px;border-radius:8px;font-size:11px;color:var(--muted);transition:all .2s ease;border:1px solid transparent}
.docs-link:hover{background:var(--surface-soft);border-color:var(--line);color:var(--text)}
.docs-link .icon-svg{width:12px!important;height:12px!important}

/* ── Analytics charts ────────────────────────────────────────── */
.analytics-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.analytics-card{padding:14px!important}
.chart-container{position:relative;height:220px}
.analytics-metric-row{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:10px}
.analytics-metric-row .metric-card{padding:10px!important}

/* ── Dark mode fixes for new elements ────────────────────────── */
body[data-theme="dark"] .status-editor-card.ok{background:rgba(31,157,97,.06)}
body[data-theme="dark"] .status-editor-card.warn{background:rgba(210,155,35,.06)}
body[data-theme="dark"] .status-editor-card.bad{background:rgba(213,92,107,.06)}
body[data-theme="dark"] .member-mode-switch{border-color:var(--line)}
body[data-theme="dark"] .user-profile-info-cell{background:rgba(255,255,255,.03)}
body[data-theme="dark"] .setting-row{background:rgba(255,255,255,.03)}
body[data-theme="dark"] .star-rating .star{color:rgba(255,255,255,.15)}

/* ── Misc visual polish ──────────────────────────────────────── */
.section-head{margin-bottom:6px!important}
.section-head h2{font-size:16px!important}
.section-head h3{font-size:14px!important}
.card.strong{padding:14px!important;border-radius:20px!important}
.pill{font-size:11px!important;padding:3px 8px!important;border-radius:8px!important}
.hero-panel{padding:16px 20px!important;border-radius:20px!important}
.hero-panel h1{font-size:22px!important}
.hero-text{font-size:14px!important}
.tabs{gap:4px!important}
.tab-link{padding:8px 14px!important;border-radius:12px!important;font-size:13px!important}
.data-table th,.data-table td{padding:8px 10px!important;font-size:13px!important}
.flash{padding:10px 14px!important;border-radius:12px!important;font-size:13px!important}
.empty-state{padding:24px 16px!important;font-size:14px!important}
.prompt-card{border-radius:20px!important}
.overlay-card{border-radius:20px!important}
.school-modal-card{border-radius:20px!important}
.school-modal-filters{padding:14px!important}
.school-filter-grid label{font-size:12px!important}

/* ═══════════════════════════════════════════════════════════════
   v2.0 OVERHAUL — Compact layout, refined sidebar, visual fixes
   ═══════════════════════════════════════════════════════════════ */

/* ── #13: Compact beta banner + server strip ─────────────── */
.beta-banner{padding:8px 14px;border-radius:14px;font-size:13px;gap:8px}
.beta-banner-icon{width:28px;height:28px;border-radius:8px;flex:0 0 28px}
.beta-banner-icon .icon-svg{width:14px;height:14px}
.server-strip{padding:8px 14px!important;border-radius:14px!important;gap:6px!important;margin:0!important}
.server-strip.compact{margin:0!important}
.server-strip-title{font-size:13px;gap:6px}
.server-strip-title .icon-svg{width:14px;height:14px}
.server-strip-grid{gap:8px!important}
.server-stat{padding:6px 10px!important;border-radius:10px!important;font-size:12px!important}
.server-stat strong{font-size:14px!important}
.content-max{gap:8px}
.page-body{gap:14px}
.breadcrumb-bar{padding:2px 0;font-size:12px;opacity:.5}

/* ── #21: Compact sidebar ──────────────────────────────────── */
.app-shell{grid-template-columns:220px minmax(0,1fr);gap:12px;padding:12px}
.sidebar-left{top:12px;height:calc(100vh - 24px)}
.sidebar-panel{gap:8px;padding:10px;border-radius:var(--radius-lg);box-shadow:var(--shadow-soft)}
.brand-wrap{gap:8px}
.brand-mark{width:32px;height:32px;border-radius:10px;font-size:16px;box-shadow:0 6px 14px rgba(97,126,246,.18)}
.brand{font-size:18px}
.brand-wrap.brand-compact{justify-content:space-between}
.icon-button{width:32px;height:32px;border-radius:10px}
.user-chip{padding:8px;border-radius:14px;gap:8px}
.user-chip strong{font-size:13px}
.username-line{font-size:11px}
.status-mini{font-size:10px;gap:4px;margin-top:2px}
.avatar.avatar-sm{width:32px;height:32px;border-radius:10px;font-size:13px}
.side-nav{gap:2px}
.nav-group{gap:2px}
.nav-group-trigger{padding:6px 8px;border-radius:10px;font-size:13px;background:transparent!important;border:none!important;box-shadow:none!important}
.nav-group-title{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:700}
.nav-group-panel{gap:1px;padding:0}
.nav-link{padding:7px 8px;border-radius:10px;gap:8px;font-size:13px;font-weight:500}
.nav-ico{width:26px;height:26px;border-radius:8px;flex:0 0 26px}
.nav-ico .icon-svg{width:14px;height:14px}
.nav-link.active .nav-ico{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff;box-shadow:0 3px 8px rgba(97,126,246,.25)}
.nav-link.active{background:var(--accent-soft);border-color:rgba(97,126,246,.15)}
.nav-link:hover{transform:none;background:rgba(97,126,246,.05)}
.sidebar-footer{gap:4px;margin-top:auto;padding-top:6px;border-top:1px solid var(--line)}
.version-pill{padding:6px 8px;border-radius:8px;font-size:11px;background:transparent!important;border:none!important;box-shadow:none!important}
.sidebar-mini-nav{display:none}
.docs-link{display:flex;align-items:center;gap:6px;padding:6px 8px;border-radius:8px;font-size:12px;color:var(--muted);transition:background .15s ease}
.docs-link:hover{background:var(--accent-soft);color:var(--accent)}
.docs-link .icon-svg{width:14px;height:14px}

/* ── #1: Smoother ripple for active users only ─────────────── */
@keyframes rippleSoft{0%{transform:translate(-50%,-50%) scale(0);opacity:.15}100%{transform:translate(-50%,-50%) scale(1);opacity:0}}

/* ── #14: Visual polish ────────────────────────────────────── */
.card{border-radius:var(--radius-md)}
.card.strong{border-radius:var(--radius-lg)}
.section-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px;flex-wrap:wrap}
.section-head h2{font-size:18px;margin:0}
.section-head h3{font-size:15px;margin:0}
.inline-head-actions{display:flex;gap:6px}
.hero-panel{border-radius:var(--radius-lg);padding:16px 18px}
.hero-panel.compact{padding:14px 16px}
.hero-panel h1{font-size:clamp(20px,2.4vw,28px)}

/* ── #17: Star rating ──────────────────────────────────────── */
.star-rating{display:inline-flex;gap:2px;direction:rtl}
.star-rating input{display:none}
.star-rating label{cursor:pointer;color:var(--line);transition:color .15s ease;font-size:18px;line-height:1}
.star-rating label::before{content:"★"}
.star-rating input:checked ~ label,.star-rating label:hover,.star-rating label:hover ~ label{color:#e6a817}
.star-display{display:inline-flex;gap:1px;font-size:14px}
.star-display .star-filled{color:#e6a817}
.star-display .star-empty{color:var(--line)}

/* ── #12: Status admin redesign ────────────────────────────── */
.status-editor-grid{grid-template-columns:1fr!important;gap:8px!important}
.status-editor-card{padding:12px 14px;border-radius:var(--radius-md);border-left:3px solid var(--line)}
.status-editor-card.ok{border-left-color:var(--ok);background:rgba(31,157,97,.03)}
.status-editor-card.warn{border-left-color:var(--warn);background:rgba(210,155,35,.03)}
.status-editor-card.bad{border-left-color:var(--bad);background:rgba(213,92,107,.03)}
.status-radio-row{display:flex;gap:6px;margin:8px 0}
.status-radio-pill{display:flex;align-items:center;gap:4px;cursor:pointer;font-size:13px;padding:4px 10px;border-radius:8px;border:1px solid var(--line);transition:all .15s ease}
.status-radio-pill:has(input:checked){background:var(--accent-soft);border-color:var(--accent);color:var(--accent);font-weight:600}
.status-radio-pill input{width:0;height:0;opacity:0;position:absolute}
.status-editor-card .section-head{margin-bottom:6px}
.status-editor-card label{font-size:13px}
.status-editor-card input[type="text"]{padding:8px 10px;font-size:13px;border-radius:10px}
.compact-status-form .classic-actions{margin-top:8px}

/* ── #2: Compact member add toggle in school_view ──────────── */
.member-create-panel{display:flex;align-items:center;gap:10px;padding:8px 12px;background:var(--surface-soft);border-radius:12px;margin-bottom:10px;flex-wrap:wrap}
.member-mode-switch.switch-between{display:inline-flex;border-radius:8px;overflow:hidden;border:1px solid var(--line);background:#fff}
.member-mode-switch .switch-side{padding:4px 12px;font-size:12px;font-weight:600;border:none;background:transparent;cursor:pointer;transition:all .15s ease;color:var(--muted)}
.member-mode-switch .switch-side.active{background:var(--accent);color:#fff}
.member-create-actions{display:flex;align-items:center;gap:8px;margin-left:auto}
.member-create-actions label{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--muted)}
.member-create-actions select{width:auto;padding:4px 8px;font-size:12px;border-radius:8px}

/* ── #7: Better add school/user forms ──────────────────────── */
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.form-grid label{display:flex;flex-direction:column;gap:4px;font-size:13px;font-weight:600;color:var(--muted)}
.form-grid input,.form-grid select,.form-grid textarea{font-size:14px;padding:10px 12px;border-radius:12px}
.form-grid .span-all{grid-column:1/-1}
.form-actions{padding-top:6px}

/* ── #15: Profile layout — info left, photo right ──────────── */
.user-view-grid{display:grid;grid-template-columns:1fr 280px;gap:16px}
.user-view-identity{order:2;text-align:center}
.user-view-identity .profile-head{flex-direction:column;align-items:center;text-align:center}
.user-view-identity .avatar-lg{width:120px;height:120px;border-radius:28px;font-size:42px}
.user-view-details{order:1}
.profile-core-card .profile-head{display:flex;gap:16px;align-items:center;margin-bottom:12px}

/* ── #6: Live filter layout (schools-style everywhere) ─────── */
.admin-search-layout.static{display:grid;grid-template-columns:260px minmax(0,1fr);gap:12px}
.admin-search-filters{position:sticky;top:12px;align-self:start}
.school-filter-stack{display:grid;gap:6px}
.school-filter-stack label{font-size:12px;font-weight:600;color:var(--muted);display:flex;flex-direction:column;gap:3px}
.school-filter-stack input,.school-filter-stack select{padding:7px 10px;font-size:13px;border-radius:10px}

/* ── #10: Hide school picker for admins ────────────────────── */
body.admin-role .school-picker-shell.hide-for-admin{display:none}

/* ── #20: Remove powered-by, add docs link ─────────────────── */
.engine-powered{display:none!important}

/* ── Settings page improvements (#5) ──────────────────────── */
.settings-stack{display:grid;gap:8px}
.setting-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border-radius:12px;border:1px solid var(--line);background:var(--surface-soft)}
.setting-row strong{font-size:14px}
.setting-row .muted{font-size:12px;margin-top:2px}
.setting-row.compact.single-line{padding:8px 12px}

/* ── #18: Analytics improvements ──────────────────────────── */
.analytics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;margin-bottom:14px}
.analytics-metric{padding:14px;border-radius:14px;border:1px solid var(--line);background:var(--surface)}
.analytics-metric .muted{font-size:12px}
.analytics-metric strong{font-size:22px;display:block;margin-top:4px;font-variant-numeric:tabular-nums}
.chart-container{position:relative;height:280px;margin:14px 0;border-radius:14px;overflow:hidden;background:var(--surface-soft);padding:10px}

/* ── Dark mode patches ─────────────────────────────────────── */
body[data-theme="dark"] .member-create-panel{background:rgba(255,255,255,.03)}
body[data-theme="dark"] .member-mode-switch{background:rgba(255,255,255,.05);border-color:var(--line)}
body[data-theme="dark"] .status-editor-card.ok{background:rgba(31,157,97,.06)}
body[data-theme="dark"] .status-editor-card.warn{background:rgba(210,155,35,.06)}
body[data-theme="dark"] .status-editor-card.bad{background:rgba(213,92,107,.06)}
body[data-theme="dark"] .status-radio-pill:has(input:checked){background:rgba(97,126,246,.15)}
body[data-theme="dark"] .setting-row{background:rgba(255,255,255,.03)}
body[data-theme="dark"] .star-rating label{color:rgba(255,255,255,.15)}
body[data-theme="dark"] .docs-link:hover{background:rgba(97,126,246,.12)}

/* Top strip group - compact beta + server */
.top-strip-group{display:grid;gap:4px}
.top-strip-group .beta-banner{margin:0}
.top-strip-group .server-strip{margin:0}

/* Docs page */
.docs-content{line-height:1.6;font-size:14px}
.docs-content h3{font-size:16px;font-weight:700;margin:16px 0 8px;padding-top:12px;border-top:1px solid var(--line)}
.docs-content h3:first-child{border-top:none;padding-top:0;margin-top:0}
.docs-content p{margin:4px 0 8px;color:var(--muted)}
.docs-content strong{color:var(--text)}

/* School add form - two column with visual hierarchy (#7) */
.school-add-form .form-grid{gap:8px}
.school-add-form .section-label{grid-column:1/-1;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--accent);font-weight:700;padding:8px 0 0;border-top:1px solid var(--line);margin-top:4px}
.school-add-form .section-label:first-child{border-top:none;margin-top:0}

/* Address field */
.address-field textarea{min-height:60px;resize:vertical}

/* #19: Add address to profile forms */
body.admin-role .school-picker-shell.hide-for-admin{display:none!important}

/* Pulse animation for online status dots */
.status-dot-only.online.pulse,.status-dot.green.pulse{animation:pulse-green 2s ease-in-out infinite}
@keyframes pulse-green{0%,100%{box-shadow:0 0 0 0 rgba(31,157,97,.35)}50%{box-shadow:0 0 0 5px rgba(31,157,97,0)}}

/* Star rating inline display */
.star-inline{display:inline-flex;gap:1px;vertical-align:middle}
.star-inline .s{font-size:13px;line-height:1}
.star-inline .s.on{color:#e6a817}
.star-inline .s.off{color:var(--line)}


/* v67 final layout overrides */
:root{--content-max:min(1760px, calc(100vw - 56px));}
html{font-size:16.5px}
.content-max{max-width:var(--content-max)!important;width:min(1760px, calc(100vw - 56px))!important}
.top-strip-group{display:block!important;gap:0!important}
.top-strip-group .beta-banner{margin:0 0 6px!important}
.top-strip-group .server-strip{margin:0 0 10px!important}
.beta-banner{padding:10px 16px!important;min-height:48px!important}
.server-strip{padding:12px 16px!important}
#serverStrip .server-strip-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;align-items:stretch!important}
#serverStrip .server-stat{min-height:74px!important}
.user-view-shell{padding:18px 20px!important}
.user-view-grid{display:grid!important;grid-template-columns:minmax(540px,1.1fr) minmax(360px,.9fr)!important;gap:18px!important;align-items:start!important}
.user-view-identity{display:grid!important;grid-template-columns:112px minmax(0,1fr)!important;gap:14px!important;align-items:center!important;padding:10px 6px!important}
.user-view-identity > h2{grid-column:2;margin:0!important;font-size:34px!important;line-height:1.1!important}
.user-view-identity .badge-row{grid-column:2;justify-content:flex-start!important}
.user-view-identity .avatar-lg,.user-view-identity .avatar{grid-row:1 / span 2}
.sidebar-profile .status-dot-only,.profile-mini-card .status-dot-only{animation:none!important;box-shadow:none!important}
.status-dot-only{position:relative;display:inline-block;width:10px;height:10px;border-radius:999px}
.status-dot-only.online{background:#20b26b}
.status-dot-only.online.pulse::after{content:'';position:absolute;inset:-4px;border-radius:999px;border:1px solid rgba(32,178,107,.35);animation:pulse-ring 1.8s ease-out infinite}
.status-dot-only.offline,.status-dot-only.idle{box-shadow:none!important}
.status-dot-only.offline::after,.status-dot-only.idle::after{display:none!important}
@keyframes pulse-ring{0%{transform:scale(.8);opacity:.7}100%{transform:scale(1.9);opacity:0}}
.settings-shell .switch-between .switch-side,.settings-shell .switch-between .switch-side-left,.settings-shell .switch-between .switch-side-right{font-weight:600!important}
.compact-action-buttons .search-result-actions .button,.compact-action-buttons .inline-head-actions .button,.compact-action-buttons .table-wrap .button.secondary.small{font-size:0!important;min-width:42px!important;padding:0 10px!important}
.compact-action-buttons .search-result-actions .button .icon-svg,.compact-action-buttons .inline-head-actions .button .icon-svg,.compact-action-buttons .table-wrap .button.secondary.small .icon-svg{margin:0!important;width:16px!important;height:16px!important}
.compact-action-buttons .search-result-actions .button .icon-svg + *, .compact-action-buttons .inline-head-actions .button .icon-svg + *{display:none!important}
.school-modal-card .school-list.enhanced,.school-modal-results .school-list.enhanced,#studentAssignList{display:grid!important;gap:10px!important;align-content:start!important;grid-auto-rows:minmax(126px,126px)!important}
.school-modal-card .school-item,.overlay-pick-card.overlay-pick-student{height:126px!important;min-height:126px!important;max-height:126px!important;overflow:hidden!important}
.overlay-pick-card .picker-card-main,.overlay-pick-card .picker-card-main.fixed-height{display:grid!important;grid-template-rows:auto auto auto auto;align-content:start!important;gap:6px!important;height:100%!important}
.overlay-pick-card .picker-card-title,.overlay-pick-card .picker-card-meta,.overlay-pick-card .picker-card-subline,.overlay-pick-card .picker-card-ref{white-space:normal!important;overflow:hidden!important;text-overflow:ellipsis!important;display:-webkit-box!important;-webkit-line-clamp:1;-webkit-box-orient:vertical}
.overlay-pick-card .picker-card-subline{-webkit-line-clamp:2}
.school-modal-card .school-item .school-title,.school-modal-card .school-item .school-location,.school-modal-card .school-item .school-subinfo{display:block!important;overflow:hidden!important;text-overflow:ellipsis!important}
.school-modal-card .school-item .school-title{line-height:1.2!important;max-height:2.4em!important}
.school-modal-card .school-item .school-location,.school-modal-card .school-item .school-subinfo{line-height:1.25!important;max-height:1.25em!important}
.overlay-card .school-code-top,.school-modal-card .school-code-top{display:inline-flex!important;margin-bottom:4px!important}
.user-identity-line{display:flex!important;flex-wrap:wrap!important;gap:8px!important}
.user-search-status-dot{margin-left:8px!important}
.section-group{display:grid;grid-template-columns:1fr 1fr;gap:12px 14px}.section-group .span-all{grid-column:1/-1}
.form-section-title{grid-column:1/-1;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--accent);padding:8px 0 2px;margin-top:2px;border-top:1px solid var(--line)}
.form-section-title:first-child{border-top:none;padding-top:0}
.section-toggle-inline{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.section-toggle-inline .switch-between{margin-left:auto}
.class-section-tiles{display:flex;flex-wrap:wrap;gap:8px}.class-tile{position:relative}.class-tile input{position:absolute;opacity:0;pointer-events:none}.class-tile span{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:42px;padding:0 12px;border-radius:999px;border:1px solid var(--line);background:#fff;font-weight:700}.class-tile input:checked + span{background:rgba(186,151,96,.12);border-color:rgba(186,151,96,.36);color:var(--accent)}
.user-profile-inline-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.user-profile-inline-head .status-dot-only{margin-left:2px}
.mobile-menu-toggle,.hamburger-menu,.sidebar-fab,.floating-menu-toggle,.mobile-fab{display:none!important}
@media (max-width:1100px){.user-view-grid{grid-template-columns:1fr!important}.content-max{width:calc(100vw - 24px)!important}.section-group{grid-template-columns:1fr!important}}


/* v68 final overrides */
:root{--content-max:none;}
.main-shell{display:block!important;overflow:visible!important}
.content-max{width:100%!important;max-width:none!important;margin:0!important;padding:0 12px!important;box-sizing:border-box!important}
.page-body{gap:12px!important}
.top-strip-group{display:block!important;margin:0 0 10px!important}
.top-strip-group .beta-banner{margin:0 0 6px!important}
.top-strip-group .server-strip{margin:0 0 8px!important}
.beta-banner{min-height:46px!important}
.server-strip{margin-bottom:8px!important}
.server-strip + .card,.top-strip-group + .card{margin-top:0!important}
.school-filter-stack input,.school-filter-stack select,.school-filter-stack textarea,.form-grid input,.form-grid select,.form-grid textarea{min-height:52px!important;padding:12px 14px!important;font-size:15px!important}
.class-section-tiles{gap:10px!important}
.class-tile{cursor:pointer;transform:translateZ(0)}
.class-tile span{cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,background .16s ease!important}
.class-tile:hover span{transform:translateY(-1px) scale(1.03);box-shadow:0 8px 18px rgba(0,0,0,.06)}
.class-tile input:focus + span{outline:2px solid rgba(97,126,246,.26);outline-offset:2px}
.status-dot-only.online.pulse::after{inset:-2px!important;border-width:1px!important;animation:pulse-ring-small 1.8s ease-out infinite!important}
@keyframes pulse-ring-small{0%{transform:scale(.9);opacity:.55}100%{transform:scale(1.45);opacity:0}}
.sidebar-profile .status-dot-only::after,.profile-mini-card .status-dot-only::after{display:none!important}
.admin-user-search-row .search-result-side{justify-self:end!important;align-self:center!important}
.admin-user-search-row .search-result-actions{justify-self:end!important;margin-left:auto!important}
.status-radio-pill{position:relative!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;padding:0!important;border:none!important;background:transparent!important;box-shadow:none!important}
.status-radio-pill input{position:absolute!important;inset:0!important;opacity:0!important;width:100%!important;height:100%!important;margin:0!important}
.status-radio-pill span{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:40px!important;padding:9px 16px!important;border-radius:999px!important;border:1px solid var(--line)!important;background:var(--surface)!important;box-shadow:none!important}
.status-radio-pill:has(input:checked) span{background:var(--accent-soft)!important;border-color:var(--accent)!important;color:var(--accent)!important;font-weight:700!important}
.user-view-shell{padding:18px!important}
.user-view-grid{grid-template-columns:minmax(0,1.2fr) minmax(420px,.8fr)!important;gap:20px!important;align-items:start!important}
.user-view-details .stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.user-view-identity{grid-template-columns:120px minmax(0,1fr)!important;align-items:start!important;gap:16px!important;padding:8px 0!important}
.user-view-identity > h2{font-size:40px!important;margin:0 0 4px!important}
.user-view-identity .badge-row{margin-top:4px!important}
.user-view-identity .avatar-lg,.user-view-identity .avatar{width:120px!important;height:120px!important;border-radius:28px!important;font-size:44px!important}
.user-view-identity .stack{grid-column:2!important}
@media (max-width:1100px){.user-view-grid{grid-template-columns:1fr!important}.content-max{padding:0 8px!important}}

/* v69 search/layout tightening */
.compact-filters{gap:10px !important}
.compact-filters label{font-size:11px !important}
.compact-filters input,.compact-filters select{min-height:44px !important;padding:10px 12px !important}
.admin-search-layout{grid-template-columns:minmax(280px,360px) 1fr !important;align-items:start !important}
.admin-search-filters,.schools-filters-pane{padding:16px !important}
.class-section-tiles.multi{display:flex;flex-wrap:wrap;gap:8px}
.class-section-tiles.multi .class-tile span{min-width:42px;text-align:center}
.search-hit{background:#ead18a!important;color:#6d4a10!important;padding:0 3px!important;border-radius:4px!important}
#schoolPageMoreBtn{display:none!important}
.unified-edit-form .form-section-title{grid-column:1/-1;margin-top:8px}
#liveSearchForm .school-picker-row .school-display{cursor:pointer}
#liveSearchForm .school-picker-shell{grid-column:1/-1}
#liveSearchForm .suggest-field{grid-column:auto}
@media (max-width: 1100px){
  .admin-search-layout{grid-template-columns:1fr !important}
}

/* ─── v69 fixes ──────────────────────────────────────── */

/* #11: Search highlight */
mark.search-hit{background:rgba(97,126,246,.18);color:var(--accent);padding:0 2px;border-radius:3px;font-weight:inherit}
body[data-theme="dark"] mark.search-hit{background:rgba(97,126,246,.3)}

/* #14: Make suggest fields look like proper dropdowns */
.suggest-field{position:relative}
.suggest-field input{padding-right:28px}
.suggest-field::after{content:"▾";position:absolute;right:12px;bottom:12px;color:var(--muted);font-size:10px;pointer-events:none}
.suggest-list{position:absolute;left:0;right:0;top:100%;z-index:100;background:var(--surface-strong);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);max-height:200px;overflow-y:auto;margin-top:2px}
.suggest-list .suggest-option,.suggest-list .suggest-item{display:block;width:100%;text-align:left;padding:8px 12px;border:none;background:none;cursor:pointer;font:inherit;font-size:13px;color:var(--text);transition:background .1s}
.suggest-list .suggest-option:hover,.suggest-list .suggest-item:hover{background:var(--accent-soft)}
body[data-theme="dark"] .suggest-list{background:rgba(10,22,45,.98)}

/* #16: Username availability indicator */
.username-avail-indicator{display:inline-block;min-width:60px}

/* #6: Unified filter layout */
.schools-layout,.admin-search-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:14px;align-items:start}
.schools-filters-pane,.admin-search-filters{position:sticky;top:12px;align-self:start}

/* #5/#12: Unified profile card styling */
.profile-head{display:flex;align-items:center;gap:14px;margin-bottom:12px}
.user-view-grid{display:grid;grid-template-columns:1fr 240px;gap:16px}
.user-view-identity{text-align:center;order:2}
.user-view-details{order:1}

/* Compact action buttons - ensure they work with icons + text */
.compact-action-buttons .action-pack .button{gap:0}
.compact-action-buttons .action-pack .button .icon-svg{margin:0}


.auto-load-wrap{min-height:1px}
.user-chip.profile-mini-card.button-like-ripple{position:relative;overflow:hidden}
.user-chip.profile-mini-card.button-like-ripple::after{content:'';position:absolute;inset:0;border-radius:inherit;background:radial-gradient(circle at center, rgba(255,255,255,.06), transparent 55%);opacity:0;transition:opacity .25s ease;pointer-events:none}
.user-chip.profile-mini-card.button-like-ripple:hover::after{opacity:1}
.compact-action-buttons .search-result-actions .button,.compact-action-buttons .action-pack .button,.compact-action-buttons .inline-head-actions .button{font-size:0!important}
.compact-action-buttons .search-result-actions .button .icon-svg,.compact-action-buttons .action-pack .button .icon-svg,.compact-action-buttons .inline-head-actions .button .icon-svg{margin:0!important}

.clean-create-form{align-items:start!important}
.clean-create-form label{align-self:start!important}
.username-status-single{display:block;min-height:18px}

/* v73 final refinements */
.school-filter-stack input,.school-filter-stack select,.school-filter-stack textarea,.form-grid input,.form-grid select,.form-grid textarea{min-height:39px!important;padding:8px 12px!important;font-size:14px!important}
.compact-filters input,.compact-filters select{min-height:39px!important;padding:8px 12px!important}

.clean-create-form,.unified-edit-form,.profile-edit-form-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important;align-items:start!important}
.clean-create-form .span-all,.unified-edit-form .span-all,.profile-edit-form-grid .span-all{grid-column:1 / -1!important}
.clean-create-form .field-name,.unified-edit-form .field-name,.profile-edit-form-grid .field-name{grid-column:1!important}
.clean-create-form .field-middle,.unified-edit-form .field-middle,.profile-edit-form-grid .field-middle{grid-column:2!important}
.clean-create-form .field-last,.unified-edit-form .field-last,.profile-edit-form-grid .field-last{grid-column:3!important}
.clean-create-form .field-email,.unified-edit-form .field-email,.profile-edit-form-grid .field-email{grid-column:1 / span 2!important}
.clean-create-form .field-username,.unified-edit-form .field-username,.profile-edit-form-grid .field-username{grid-column:3!important}
.clean-create-form .field-role,.unified-edit-form .field-role,.profile-edit-form-grid .field-role{grid-column:1!important}
.clean-create-form .field-class,.unified-edit-form .field-class,.profile-edit-form-grid .field-class{grid-column:2!important}
.clean-create-form .field-section,.unified-edit-form .field-section,.profile-edit-form-grid .field-section{grid-column:3!important}
.clean-create-form label,.unified-edit-form label,.profile-edit-form-grid label{display:grid!important;gap:6px!important;align-self:start!important}
.clean-create-form .field-section > label,.unified-edit-form .field-section > label,.profile-edit-form-grid .field-section > label{display:block!important;margin-bottom:6px!important}
@media (max-width: 1100px){
  .clean-create-form,.unified-edit-form,.profile-edit-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .clean-create-form .field-name,.unified-edit-form .field-name,.profile-edit-form-grid .field-name{grid-column:1!important}
  .clean-create-form .field-middle,.unified-edit-form .field-middle,.profile-edit-form-grid .field-middle{grid-column:2!important}
  .clean-create-form .field-last,.unified-edit-form .field-last,.profile-edit-form-grid .field-last,
  .clean-create-form .field-email,.unified-edit-form .field-email,.profile-edit-form-grid .field-email,
  .clean-create-form .field-username,.unified-edit-form .field-username,.profile-edit-form-grid .field-username,
  .clean-create-form .field-role,.unified-edit-form .field-role,.profile-edit-form-grid .field-role,
  .clean-create-form .field-class,.unified-edit-form .field-class,.profile-edit-form-grid .field-class,
  .clean-create-form .field-section,.unified-edit-form .field-section,.profile-edit-form-grid .field-section{grid-column:1 / -1!important}
}
@media (max-width: 760px){
  .clean-create-form,.unified-edit-form,.profile-edit-form-grid,.section-group{grid-template-columns:1fr!important}
}

.school-members-toolbar{display:flex!important;align-items:flex-end!important;justify-content:space-between!important;gap:16px!important;flex-wrap:wrap!important}
.school-members-toolbar .member-create-panel{flex:1 1 360px!important;margin:0!important}
.school-members-toolbar .school-user-filter-bar{flex:999 1 720px!important;margin:0!important}
.school-members-toolbar .member-create-actions{display:flex!important;align-items:flex-end!important;gap:10px!important;flex-wrap:wrap!important}
.school-members-toolbar .member-create-actions > *{margin:0!important}

.username-field-wrap{position:relative!important}
.username-field-wrap input{padding-right:38px!important}
.username-status-single{position:absolute!important;right:12px!important;top:50%!important;transform:translateY(-50%)!important;width:18px!important;height:18px!important;display:flex!important;align-items:center!important;justify-content:center!important;pointer-events:none!important;min-height:0!important;z-index:2!important}
.username-status-single::before{display:block;font-size:14px;line-height:1;font-weight:900}
.username-status-single[data-state="ok"]::before{content:"✓";color:#23a55a}
.username-status-single[data-state="bad"]::before{content:"✕";color:#c94949}
.username-status-single[data-state="loading"]::before{content:"…";color:var(--muted)}

.compact-action-buttons #memberModeActionBtn{font-size:0!important;gap:0!important}
.compact-action-buttons #memberModeActionBtn .icon-svg{margin:0!important}

.form-section-title,.section-label{grid-column:1/-1!important;font-size:12px!important;font-weight:800!important;letter-spacing:.06em!important;text-transform:uppercase!important;color:var(--accent)!important;padding:8px 0 2px!important;margin-top:4px!important;border-top:1px solid var(--line)!important}
.form-section-title:first-child,.section-label:first-child{border-top:none!important;padding-top:0!important}

.profile-core-card .stats-grid,.shared-user-profile-card .stats-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
@media (max-width: 980px){.profile-core-card .stats-grid,.shared-user-profile-card .stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media (max-width: 640px){.profile-core-card .stats-grid,.shared-user-profile-card .stats-grid{grid-template-columns:1fr!important}}

/* Change 6: Multi-column modal filters for school member assign */
.school-transfer-filter-grid{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:10px!important}
.school-transfer-filter-grid .school-picker-shell{grid-column:span 3}
@media (max-width:900px){.school-transfer-filter-grid{grid-template-columns:repeat(2,1fr)!important}}
@media (max-width:600px){.school-transfer-filter-grid{grid-template-columns:1fr!important}}

/* Change 7: Buttons with icon+text in school_view */
.school-user-action-btn .btn-label{margin-left:4px}
.compact-action-buttons .school-user-action-btn .btn-label{display:none!important}

/* Change 8: Class level as round radio tiles */
.class-level-tiles{display:flex;flex-wrap:wrap;gap:6px}
.class-level-tiles .class-tile{min-width:42px}
.class-level-tiles .class-tile span{min-width:32px;text-align:center}

/* Change 9: Create form row layout */
.clean-create-form .form-row-3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.clean-create-form .avatar-upload-circle{width:80px;height:80px;border-radius:50%;border:2px dashed var(--border);display:flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;background:var(--bg-soft);transition:border-color .2s}
.clean-create-form .avatar-upload-circle:hover{border-color:var(--accent)}
.clean-create-form .avatar-upload-circle img{width:100%;height:100%;object-fit:cover}
.clean-create-form .avatar-upload-circle .avatar-placeholder{font-size:24px;color:var(--muted)}
@media (max-width:640px){.clean-create-form .form-row-3{grid-template-columns:1fr}}

/* Change 14: Inline member create panel */
.member-create-actions.section-toggle-inline{display:flex!important;flex-wrap:wrap;align-items:center;gap:10px;padding:0}
.member-create-panel{padding:0;margin-bottom:8px}


/* v75 targeted fixes */
.member-create-actions-tight{flex-wrap:nowrap!important;align-items:center!important}
.member-create-actions-tight .button{white-space:nowrap}
.school-members-toolbar{align-items:center!important}
.school-members-toolbar .member-create-panel{flex:0 0 auto!important}
.school-members-toolbar .school-user-filter-bar{flex:1 1 820px!important}
.school-transfer-filter-sections{display:grid;gap:12px}
.school-transfer-filter-group{display:grid;gap:10px;padding:12px;border:1px solid var(--line);border-radius:16px;background:var(--surface-soft)}
.filter-group-title{font-size:13px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
.school-transfer-grid-personal{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.school-transfer-grid-school{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.school-transfer-grid-school .school-picker-shell{grid-column:1 / -1}
@media (max-width:980px){.member-create-actions-tight{flex-wrap:wrap!important}.school-transfer-grid-personal,.school-transfer-grid-school{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media (max-width:640px){.school-transfer-grid-personal,.school-transfer-grid-school{grid-template-columns:1fr!important}}
.class-level-row{display:flex;flex-wrap:nowrap;overflow-x:auto;padding-bottom:2px}
.class-level-row::-webkit-scrollbar{height:6px}
.class-level-row .class-tile{flex:0 0 auto}
.role-education-grid{display:grid;grid-template-columns:minmax(280px,.95fr) minmax(320px,1.05fr);gap:16px}
.role-education-col{display:grid;gap:12px;align-content:start}
.role-education-col .school-picker-shell{grid-column:auto!important}
@media (max-width:880px){.role-education-grid{grid-template-columns:1fr}}
.user-chip.profile-mini-card.button-like-ripple,.user-chip.profile-mini-card.button-like-ripple::after{all:unset}
.profile-mini-card{position:relative}
.status-dot-only.online.pulse::after{content:'';position:absolute;inset:-5px;border-radius:999px;border:2px solid rgba(32,178,107,.26);animation:activeUserRing 1.6s cubic-bezier(.22,1,.36,1) infinite}
@keyframes activeUserRing{0%{transform:scale(.65);opacity:.55}70%{transform:scale(1.8);opacity:0}100%{transform:scale(1.8);opacity:0}}
.server-stat strong[title]{cursor:help}

/* v77 fixes */

/* Fix 1: member-create-panel centered on one line */
.member-create-panel-centered{display:flex!important;justify-content:center!important;align-items:center!important;width:100%;padding:10px 0}
.school-members-toolbar .member-create-panel-centered{flex:1 1 100%!important}
.member-create-actions-tight{display:flex!important;flex-wrap:nowrap!important;align-items:center!important;justify-content:center!important;gap:12px!important}

/* Fix 2: modal filter layout */
.school-transfer-filter-sections{gap:16px}
.school-transfer-filter-group{padding:16px;border-radius:16px}
.school-transfer-filter-grid{gap:12px 14px!important}
.school-transfer-grid-personal{grid-template-columns:repeat(2,1fr)!important}
.school-transfer-grid-school{grid-template-columns:repeat(3,1fr)!important}
.filter-group-title{font-size:13px;font-weight:700;color:var(--fg);margin-bottom:4px}
@media (max-width:700px){.school-transfer-grid-personal,.school-transfer-grid-school{grid-template-columns:1fr!important}}

/* Fix 2+5: Class tiles as CIRCLES, not ellipses, 4 per row, vertically aligned */
.class-level-tiles,.field-class .class-section-tiles{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:8px!important}
.field-section .class-section-tiles{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:8px!important}
.class-section-tiles.compact.multi.class-level-row{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:8px!important;flex-wrap:unset;overflow-x:visible}
.class-section-tiles.compact.multi.class-level-row .class-tile{flex:unset}
.class-level-tiles .class-tile,.field-section .class-section-tiles .class-tile,.class-section-tiles.compact.multi .class-tile{flex:unset}
.class-tile span{width:40px!important;height:40px!important;min-width:40px!important;max-width:40px!important;padding:0!important;font-size:13px;border-radius:50%!important;display:inline-flex!important;align-items:center!important;justify-content:center!important}

/* Fix 3: Avatar upload circle with outline border */
label.avatar-upload-circle.avatar{border:2px solid var(--border)!important;transition:border-color .2s;border-style:solid!important}
label.avatar-upload-circle.avatar:hover{border-color:var(--accent)!important}
label.avatar-upload-circle.avatar img{border-radius:0}
.profile-edit-shell .profile-head > .avatar:not(.avatar-upload-circle){display:none}
.profile-edit-shell .profile-head > img.avatar{display:none}
.profile-edit-shell .profile-head > div.avatar-fallback:not(.avatar-upload-circle){display:none}

/* Fix 6: Role pill selector */
.role-pill-group{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.role-pill{position:relative;cursor:pointer}
.role-pill input{position:absolute;opacity:0;pointer-events:none}
.role-pill span{display:inline-flex;align-items:center;justify-content:center;padding:6px 18px;border-radius:999px;font-weight:600;font-size:13px;border:2px solid transparent;transition:all .18s ease}
.role-pill-student span{color:#1f9d61;border-color:rgba(31,157,97,.25);background:rgba(31,157,97,.06)}
.role-pill-student input:checked+span{background:rgba(31,157,97,.16);border-color:#1f9d61}
.role-pill-teacher span{color:#617ef6;border-color:rgba(97,126,246,.25);background:rgba(97,126,246,.06)}
.role-pill-teacher input:checked+span{background:rgba(97,126,246,.16);border-color:#617ef6}
.role-pill-moderator span{color:#ba9760;border-color:rgba(186,151,96,.25);background:rgba(186,151,96,.06)}
.role-pill-moderator input:checked+span{background:rgba(186,151,96,.16);border-color:#ba9760}
.role-pill-admin span{color:#e24d4d;border-color:rgba(226,77,77,.25);background:rgba(226,77,77,.06)}
.role-pill-admin input:checked+span{background:rgba(226,77,77,.16);border-color:#e24d4d}
.role-pill:hover span{transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,.06)}


/* v78 fixes */
.school-members-toolbar{align-items:center!important;justify-content:flex-start!important}
.member-create-panel.member-create-panel-centered{display:flex!important;justify-content:center!important;align-items:center!important;flex:1 1 100%!important;width:100%!important;padding:8px 0!important;margin:0!important}
.member-create-actions.section-toggle-inline.member-create-actions-tight{display:flex!important;flex-wrap:nowrap!important;align-items:center!important;justify-content:center!important;gap:12px!important;width:auto!important}
.member-create-actions.section-toggle-inline.member-create-actions-tight > *{margin:0!important}
.member-create-actions.section-toggle-inline.member-create-actions-tight label{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;margin:0!important}
.member-create-actions.section-toggle-inline.member-create-actions-tight .switch-between{margin-left:0!important}
.member-create-actions.section-toggle-inline.member-create-actions-tight select{height:40px!important}
#memberModeActionBtn{font-size:14px!important;gap:8px!important;white-space:nowrap!important}
#memberModeActionBtn .btn-label{display:inline!important}
.compact-action-buttons #memberModeActionBtn{font-size:14px!important;gap:8px!important}
.compact-action-buttons #memberModeActionBtn .icon-svg{margin-right:8px!important}
.compact-action-buttons #memberModeActionBtn .btn-label{display:inline!important}

#studentAssignModal .overlay-card.school-modal-card{max-width:min(1560px,98vw)!important;padding:18px!important}
#studentAssignLayout{display:grid!important;grid-template-columns:minmax(430px,500px) minmax(0,1fr)!important;gap:18px!important;align-items:start!important}
#studentAssignLayout .school-modal-filters{min-width:0!important}
#studentAssignLayout .school-modal-results{min-width:0!important;align-content:start!important}
#studentAssignLayout .school-transfer-filter-sections{display:grid!important;gap:14px!important}
#studentAssignLayout .school-transfer-filter-group{display:grid!important;gap:10px!important;padding:14px!important;border:1px solid var(--line)!important;border-radius:18px!important;background:var(--surface-soft)!important}
#studentAssignLayout .school-transfer-grid-personal{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
#studentAssignLayout .school-transfer-grid-school{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important}
#studentAssignLayout .school-transfer-grid-school .school-picker-shell{grid-column:1 / -1!important}
#studentAssignList{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;grid-auto-rows:auto!important;max-height:74vh!important;overflow:auto!important;align-content:start!important}
#studentAssignList .overlay-pick-card.overlay-pick-student{height:auto!important;min-height:96px!important;max-height:none!important;padding:12px 14px!important}
#studentAssignList .picker-card-main,#studentAssignList .picker-card-main.fixed-height{display:grid!important;grid-template-rows:auto auto auto auto!important;gap:6px!important;height:auto!important}
#studentAssignList .picker-card-title{font-size:16px!important;line-height:1.22!important;-webkit-line-clamp:1!important}
#studentAssignList .picker-card-meta,#studentAssignList .picker-card-subline,#studentAssignList .picker-card-ref{font-size:13px!important;line-height:1.3!important;-webkit-line-clamp:1!important}
#studentAssignList .picker-card-subline{-webkit-line-clamp:1!important}
#studentAssignList .picker-card-toprow{gap:8px!important}
@media (max-width:1180px){#studentAssignLayout{grid-template-columns:1fr!important}#studentAssignLayout .school-transfer-grid-school{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media (max-width:760px){#studentAssignLayout .school-transfer-grid-personal,#studentAssignLayout .school-transfer-grid-school{grid-template-columns:1fr!important}}

.admin-search-filters .class-section-tiles.compact.multi.class-level-row{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto!important;gap:8px!important;padding-bottom:4px!important;grid-template-columns:none!important}
.admin-search-filters .class-section-tiles.compact.multi.class-level-row .class-tile{flex:0 0 auto!important}
.clean-create-form .field-class .class-level-tiles,.clean-create-form .field-section .class-section-tiles{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto!important;gap:8px!important;grid-template-columns:none!important;padding-bottom:4px!important}
.clean-create-form .field-class .class-tile,.clean-create-form .field-section .class-tile{flex:0 0 auto!important}
.clean-create-form .field-class .class-tile span,.clean-create-form .field-section .class-tile span,.admin-search-filters .class-section-tiles.compact.multi.class-level-row .class-tile span{width:40px!important;min-width:40px!important;max-width:40px!important;height:40px!important;padding:0!important;border-radius:50%!important}

.username-field-wrap{position:relative!important}
.username-field-wrap input{padding-right:42px!important}
.username-status-single{position:absolute!important;right:12px!important;top:auto!important;bottom:11px!important;transform:none!important;width:18px!important;height:18px!important;display:flex!important;align-items:center!important;justify-content:center!important;pointer-events:none!important;z-index:3!important}

.school-picker-row{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important}
.school-picker-row .school-display{flex:1 1 260px!important;min-width:220px!important}
.school-clear-btn{white-space:nowrap!important}



/* v79 targeted fixes */
:root{
  --ss-control-height:39px;
  --ss-control-font:14px;
  --ss-button-radius:12px;
}
body{font-size:14px!important}
.button{min-height:var(--ss-control-height)!important;padding:8px 12px!important;font-size:14px!important;border-radius:var(--ss-button-radius)!important}
.button.small{min-height:34px!important;padding:6px 10px!important;font-size:13px!important}
input,select,textarea{font-size:var(--ss-control-font)!important}
.school-filter-stack input,.school-filter-stack select,.school-filter-stack textarea,.form-grid input,.form-grid select,.form-grid textarea{min-height:var(--ss-control-height)!important;padding:8px 12px!important;font-size:var(--ss-control-font)!important}
.card,.overlay-card,.metric-card{border-radius:18px!important}
.card{padding:14px 16px!important}
.section-head h2,.profile-core-card .profile-head h2,.search-result-title{font-size:18px!important;line-height:1.2!important}
.metric-card{padding:12px 14px!important}
.shared-user-profile-card .profile-head{gap:12px!important;margin-bottom:10px!important}
.shared-user-profile-card .avatar.avatar-lg{width:74px!important;height:74px!important}
.shared-user-profile-card .badge-row{gap:6px!important}
.shared-user-profile-card .stats-grid{gap:10px!important}
.shared-user-profile-card .metric-mini{font-size:14px!important}
.login-history-item{padding:10px 12px!important}
.result-table th,.result-table td{padding:10px 12px!important;font-size:14px!important}
.search-result{padding:12px 14px!important;border-radius:18px!important}
.search-result .muted{font-size:13px!important}
.search-result-actions{gap:6px!important}
.pill{font-size:12px!important;padding:5px 9px!important}

/* school_view add button must obey compact/text mode */
#memberModeActionBtn{font-size:14px!important;gap:8px!important;white-space:nowrap!important}
#memberModeActionBtn .btn-label{display:inline!important}
.compact-action-buttons #memberModeActionBtn{font-size:0!important;gap:0!important;padding-inline:10px!important}
.compact-action-buttons #memberModeActionBtn .icon-svg{margin:0!important}
.compact-action-buttons #memberModeActionBtn .btn-label{display:none!important}

/* centered username status */
.username-field-wrap{position:relative!important}
.username-field-wrap input{padding-right:42px!important}
.username-status-single{top:50%!important;bottom:auto!important;transform:translateY(-50%)!important;right:12px!important}

/* nested school picker over assign modal */
#schoolModal{z-index:1206!important}
#studentAssignModal{z-index:1204!important}
#studentAssignConfirmModal{z-index:1205!important}

/* admin search filters must fit in pane */
.admin-search-layout{grid-template-columns:minmax(258px,320px) minmax(0,1fr)!important;gap:12px!important}
.admin-search-filters{min-width:0!important}
#liveSearchForm{gap:8px!important}
#liveSearchForm label{min-width:0!important}
.admin-search-filters .school-picker-row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 38px!important;
  gap:6px!important;
  align-items:center!important;
}
.admin-search-filters .school-picker-row .school-display{
  min-width:0!important;
  flex:initial!important;
  width:100%!important;
}
.admin-search-filters .school-picker-row .button{
  min-height:34px!important;
  padding:0 9px!important;
}
.admin-search-filters .school-picker-row .school-clear-btn{
  grid-column:1 / -1!important;
  justify-self:start!important;
}
.admin-search-filters .class-section-tiles.compact.multi.class-level-row{
  display:grid!important;
  grid-template-columns:repeat(8,minmax(0,1fr))!important;
  gap:4px!important;
  overflow:visible!important;
  padding-bottom:0!important;
}
.admin-search-filters .class-section-tiles.compact.multi.class-level-row .class-tile{
  flex:unset!important;
  min-width:0!important;
}
.admin-search-filters .class-section-tiles.compact.multi.class-level-row .class-tile span{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  height:32px!important;
  padding:0!important;
  font-size:12px!important;
}

/* create page: class and section stacked, visible and compact */
.clean-create-form .role-education-grid{grid-template-columns:minmax(260px,.92fr) minmax(0,1.08fr)!important}
.clean-create-form .role-education-col-school{display:grid!important;grid-template-columns:1fr!important;gap:12px!important}
.clean-create-form .field-class,
.clean-create-form .field-section{grid-column:1 / -1!important;width:100%!important}
.clean-create-form .field-class .class-level-tiles,
.clean-create-form .field-section .class-section-tiles{
  display:grid!important;
  grid-template-columns:repeat(8,34px)!important;
  gap:4px!important;
  overflow:visible!important;
  padding-bottom:0!important;
}
.clean-create-form .field-class .class-tile span,
.clean-create-form .field-section .class-tile span{
  width:34px!important;
  min-width:34px!important;
  max-width:34px!important;
  height:34px!important;
  font-size:12px!important;
}
.student-only-field.is-disabled{
  display:none!important;
}
.student-only-field.is-disabled .class-tile span{
  background:rgba(127,127,127,.08)!important;
  color:var(--muted)!important;
  border-color:var(--line)!important;
  cursor:not-allowed!important;
}
.student-only-field.is-disabled .class-tile input + span{
  pointer-events:none!important;
}

/* student assign modal tightened */
#studentAssignModal .overlay-card.school-modal-card{max-width:min(1460px,97vw)!important;padding:16px!important}
#studentAssignLayout{
  display:grid!important;
  grid-template-columns:minmax(430px,520px) minmax(0,1fr)!important;
  gap:16px!important;
  align-items:start!important;
}
#studentAssignLayout .school-modal-filters,
#studentAssignLayout .school-modal-results{min-width:0!important}
#studentAssignLayout .school-transfer-filter-grid{gap:10px!important}
#studentAssignLayout .school-transfer-grid-personal{grid-template-columns:repeat(2,minmax(0,1fr))!important}
#studentAssignLayout .school-transfer-grid-school{grid-template-columns:repeat(2,minmax(0,1fr))!important}
#studentAssignLayout .school-transfer-grid-school .school-picker-shell{grid-column:1 / -1!important}
#studentAssignLayout .school-picker-row.compact{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 38px!important;
  gap:6px!important;
}
#studentAssignLayout .school-picker-row.compact .school-display{min-width:0!important}
#studentAssignList{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:8px!important;
  max-height:72vh!important;
}
#studentAssignList .overlay-pick-card.overlay-pick-student{
  min-height:84px!important;
  padding:10px 12px!important;
  border-radius:16px!important;
}
#studentAssignList .picker-card-main,
#studentAssignList .picker-card-main.fixed-height{
  gap:5px!important;
}
#studentAssignList .picker-card-title{font-size:15px!important;line-height:1.2!important}
#studentAssignList .picker-card-meta,
#studentAssignList .picker-card-subline,
#studentAssignList .picker-card-ref{font-size:12px!important;line-height:1.25!important}
@media (max-width:1180px){
  #studentAssignLayout{grid-template-columns:1fr!important}
}

/* school add town input */
.school-add-form [name="town_id"][type="hidden"]{display:none!important}

/* server strip toggle */
.server-strip-toggle{margin-left:auto!important}
#serverStrip[data-metrics-enabled="0"] .server-stat{opacity:.72!important}


/* v80 final targeted fixes */
#memberModeActionBtn{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important}
#memberModeActionBtn .button-icon{display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 auto!important}
#memberModeActionBtn .button-icon .icon-svg{margin:0!important}
#memberModeActionBtn .btn-label{display:inline!important}
.compact-action-buttons #memberModeActionBtn{font-size:0!important;min-width:44px!important;padding:0 12px!important;gap:0!important}
.compact-action-buttons #memberModeActionBtn .btn-label{display:none!important}
.compact-action-buttons #memberModeActionBtn .button-icon{display:inline-flex!important}
.member-create-actions.section-toggle-inline.member-create-actions-tight{justify-content:center!important}
#studentAssignModal{z-index:2300!important}
#studentAssignConfirmModal{z-index:2350!important}
#schoolModal{z-index:2400!important}
#studentAssignModal .overlay-card.school-modal-card{max-width:min(1040px,92vw)!important;padding:12px!important;border-radius:18px!important}
#studentAssignLayout{display:grid!important;grid-template-columns:minmax(300px,300px) minmax(0,1fr)!important;gap:12px!important;align-items:start!important}
#studentAssignLayout .school-modal-filters{padding:10px!important;gap:10px!important}
#studentAssignLayout .school-transfer-filter-group{padding:10px!important;border-radius:14px!important}
#studentAssignLayout .school-transfer-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
#studentAssignLayout .school-transfer-filter-grid label{font-size:12px!important;gap:6px!important}
#studentAssignLayout input,#studentAssignLayout select{padding:9px 11px!important;min-height:40px!important;font-size:13px!important;border-radius:12px!important}
#studentAssignLayout .school-picker-row.compact{grid-template-columns:minmax(0,1fr) 40px!important;gap:6px!important}
#studentAssignLayout .school-picker-row.compact .button{min-width:40px!important;min-height:40px!important;padding:0!important}
#studentAssignList{gap:8px!important;grid-auto-rows:minmax(104px,104px)!important;max-height:70vh!important}
#studentAssignList .overlay-pick-card.overlay-pick-student{height:104px!important;min-height:104px!important;max-height:104px!important;padding:10px 12px!important;border-radius:16px!important}
#studentAssignList .picker-card-title{font-size:15px!important;line-height:1.15!important}
#studentAssignList .picker-card-meta,#studentAssignList .picker-card-subline,#studentAssignList .picker-card-ref{font-size:12px!important;line-height:1.2!important}
#studentAssignList .pill{padding:3px 8px!important;font-size:11px!important}
#liveSearchForm .school-picker-row{display:grid!important;grid-template-columns:minmax(0,1fr) 38px auto!important;gap:6px!important;align-items:center!important}
#liveSearchForm .school-picker-row .button{min-width:38px!important;min-height:38px!important;padding:0 10px!important;border-radius:10px!important}
#liveSearchForm .school-picker-row .school-clear-btn{padding:0 12px!important}
#liveSearchForm .class-section-tiles.multi{display:flex!important;flex-wrap:nowrap!important;gap:6px!important;width:100%!important}
#liveSearchForm .class-section-tiles.multi .class-tile{flex:1 1 0!important;min-width:0!important}
#liveSearchForm .class-section-tiles.multi .class-tile span{width:100%!important;min-width:0!important;height:36px!important;padding:0 6px!important;font-size:12px!important}
#liveSearchForm label{font-size:12px!important}
#liveSearchForm input,#liveSearchForm select{padding:9px 11px!important;font-size:13px!important;border-radius:12px!important;min-height:40px!important}
.clean-create-form .role-education-grid{grid-template-columns:1fr!important}
.clean-create-form .role-education-col-school{display:grid!important;grid-template-columns:1fr!important;gap:12px!important}
.clean-create-form .field-class,.clean-create-form .field-section{width:100%!important}
.required-mark{color:#c84b31;font-weight:800}
.school-town-suggest-wrap .suggest-list{max-height:220px!important;overflow:auto!important}
.search-results-grid.compact .search-result.hidden,#liveSearchResults .search-result.hidden{display:none!important}
@media (max-width:1180px){#studentAssignLayout{grid-template-columns:1fr!important}}


/* v81 targeted fixes */
.avatar-default-image{background:#f3f1ec;border-radius:50%;object-fit:cover}
.input-status-wrap{display:block;position:relative}
.input-status-wrap > input{width:100%}
.username-field-wrap{position:relative!important}
.username-field-wrap input{padding-right:38px!important}
.username-field-wrap .username-status-single{position:absolute!important;right:12px!important;top:50%!important;transform:translateY(-50%)!important;width:18px!important;height:18px!important;display:flex!important;align-items:center!important;justify-content:center!important;pointer-events:none!important;z-index:3!important}
#memberModeActionBtn{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important}
#memberModeActionBtn .button-icon{display:inline-flex!important;align-items:center!important;justify-content:center!important}
#memberModeActionBtn .btn-label{display:inline!important}
.compact-action-buttons #memberModeActionBtn{font-size:0!important;gap:0!important;min-width:38px!important;padding:0 11px!important}
.compact-action-buttons #memberModeActionBtn .button-icon{display:inline-flex!important}
.compact-action-buttons #memberModeActionBtn .btn-label{display:none!important}
body:not(.compact-action-buttons) #memberModeActionBtn .button-icon .icon-svg{margin-right:0!important}
#studentAssignModal .overlay-card.school-modal-card{max-width:min(880px,88vw)!important;padding:10px!important;border-radius:16px!important}
#studentAssignLayout{grid-template-columns:minmax(250px,280px) minmax(0,1fr)!important;gap:12px!important;align-items:start!important}
#studentAssignLayout .school-modal-filters{padding:0!important;gap:10px!important}
#studentAssignLayout .prompt-head.compact{gap:10px!important;margin-bottom:2px!important}
#studentAssignLayout .prompt-head.compact .prompt-icon{width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important}
#studentAssignLayout .prompt-head.compact h3{font-size:16px!important}
#studentAssignLayout .prompt-head.compact p{font-size:12px!important;line-height:1.25!important}
#studentAssignLayout .school-transfer-filter-group{padding:8px!important;border-radius:14px!important}
#studentAssignLayout .filter-group-title{font-size:12px!important;margin-bottom:8px!important}
#studentAssignLayout .school-transfer-filter-grid{gap:8px!important}
#studentAssignLayout .school-transfer-filter-grid label > span,
#studentAssignLayout .school-picker-shell > label{font-size:11px!important;line-height:1.1!important;margin-bottom:4px!important}
#studentAssignLayout input,
#studentAssignLayout select{height:29px!important;min-height:29px!important;padding:4px 10px!important;border-radius:10px!important;font-size:12px!important}
#studentAssignLayout .school-picker-row.compact{grid-template-columns:minmax(0,1fr) 29px!important;gap:6px!important}
#studentAssignLayout .school-picker-row.compact .button{min-width:29px!important;min-height:29px!important;height:29px!important;padding:0!important;border-radius:10px!important}
#studentAssignLayout .school-picker-row.compact .school-display{min-height:29px!important}
#studentAssignLayout .school-modal-results .section-head h3{font-size:16px!important}
#studentAssignList{gap:8px!important}
#studentAssignList .overlay-pick-card.overlay-pick-student{min-height:92px!important;height:92px!important;max-height:92px!important;padding:10px 12px!important}
#studentAssignList .overlay-pick-card.overlay-pick-student .picker-card-title{font-size:15px!important;line-height:1.15!important}
#studentAssignList .overlay-pick-card.overlay-pick-student .picker-card-meta,
#studentAssignList .overlay-pick-card.overlay-pick-student .picker-card-subline{font-size:12px!important;line-height:1.2!important}
#studentAssignLayout .prompt-actions .button{min-height:32px!important;padding:6px 12px!important}
#liveSearchForm .school-picker-row{grid-template-columns:minmax(0,1fr) 34px auto!important}
#liveSearchForm .school-picker-row .button{min-width:34px!important;min-height:34px!important;height:34px!important;padding:0 8px!important}
#liveSearchForm .school-picker-row .school-display{min-height:34px!important}
#liveSearchResults .search-result[aria-hidden="true"]{display:none!important}
.session-tabs .button.is-active{background:rgba(186,151,96,.14)!important;border-color:rgba(186,151,96,.34)!important;color:var(--accent)!important}


/* v81 final polish */
#studentAssignModal .overlay-card.school-modal-card{max-width:min(760px,86vw)!important;padding:10px!important;border-radius:16px!important}
#studentAssignModal .school-modal-layout{grid-template-columns:minmax(0,260px) minmax(0,1fr)!important;gap:10px!important}
#studentAssignModal .school-modal-filters,#studentAssignModal .school-modal-results{padding:0!important;min-width:0!important}
#studentAssignModal .school-filter-grid label{gap:4px!important}
#studentAssignModal .school-filter-grid input,
#studentAssignModal .school-filter-grid select,
#studentAssignModal .school-picker-row input,
#studentAssignModal .school-picker-row .button,
#studentAssignModal .overlay-pick-card,
#studentAssignModal button,
#studentAssignModal input,
#studentAssignModal select{min-height:29px!important;height:29px!important;max-height:29px!important;font-size:12px!important;padding:4px 9px!important;border-radius:10px!important}
#studentAssignModal .section-head h3,#studentAssignModal h3{font-size:15px!important}
#studentAssignModal .prompt-head p,#studentAssignModal .muted,#studentAssignModal .picker-card-meta,#studentAssignModal .picker-card-subline{font-size:11px!important;line-height:1.25!important}
#studentAssignModal .picker-card-title,#studentAssignModal .school-title{font-size:13px!important;line-height:1.2!important}
#studentAssignModal .overlay-pick-card{padding:8px 10px!important;border-radius:12px!important}
#studentAssignModal .school-list.enhanced{gap:8px!important}
.username-field-wrap .username-status-single,.input-status-wrap .username-status-single{top:50%!important;bottom:auto!important;transform:translateY(-50%)!important;display:flex!important;align-items:center!important;justify-content:center!important;line-height:18px!important}
#liveSearchResults .search-result[aria-hidden="true"],#liveSearchResults .search-result.hidden{display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;max-height:0!important;overflow:hidden!important;margin:0!important}


/* v82 final overrides */
.reduce-motion *, .reduce-motion *::before, .reduce-motion *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
#studentAssignModal .overlay-card.school-modal-card{max-width:min(980px,92vw)!important;padding:16px!important;border-radius:18px!important}
#studentAssignModal .school-modal-layout{grid-template-columns:minmax(0,300px) minmax(0,1fr)!important;gap:14px!important}
#studentAssignModal .school-filter-grid input,
#studentAssignModal .school-filter-grid select,
#studentAssignModal .school-picker-row input,
#studentAssignModal .school-picker-row .button,
#studentAssignModal .overlay-pick-card,
#studentAssignModal button,
#studentAssignModal input,
#studentAssignModal select{min-height:39px!important;height:39px!important;max-height:39px!important;font-size:13px!important;padding:8px 11px!important;border-radius:12px!important}
#studentAssignModal .overlay-pick-card{padding:10px 12px!important}
.school-town-suggest-wrap,.suggest-field{position:relative}
.school-town-suggest-wrap .suggest-list{display:block;position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:2400;max-height:260px;overflow:auto}
.hidden{display:none!important}
.admin-search-filters .class-section-tiles.compact.multi.class-level-row{display:flex!important;flex-wrap:wrap!important;gap:10px!important}
.admin-search-filters .class-section-tiles.compact.multi.class-level-row .class-tile{flex:0 0 auto!important;width:40px!important;height:40px!important;display:block!important}
.admin-search-filters .class-section-tiles.compact.multi.class-level-row .class-tile span{width:40px!important;height:40px!important;min-width:40px!important;max-width:40px!important;border-radius:50%!important;display:flex!important;align-items:center!important;justify-content:center!important}
.input-status-wrap,.username-field-wrap{position:relative;display:block}
.input-status-wrap input,.username-field-wrap input{padding-right:38px!important}
.input-status-wrap .username-status-single,.username-field-wrap .username-status-single{position:absolute!important;right:12px!important;top:50%!important;transform:translateY(-50%)!important;bottom:auto!important;margin:0!important}
.user-chip.profile-mini-card.button-like-ripple,.user-chip.profile-mini-card.button-like-ripple::after{all:unset!important}
.admin-user-search-list .status-dot-only.online.pulse::after{content:'';position:absolute;inset:-3px;border-radius:999px;border:1px solid rgba(32,178,107,.35);animation:pulse-ring-small 1.8s ease-out infinite!important}
.profile-mini-card .status-dot-only::after,.sidebar-profile .status-dot-only::after{display:none!important}
.unified-edit-shell{display:block!important}
.unified-edit-shell .section-head{display:block!important}
.unified-edit-form{max-width:620px!important;margin:0 auto!important}
.unified-edit-form.clean-create-form{display:grid!important}
.neispuo-inputs{display:flex;gap:8px;align-items:center}
.neispuo-inputs [data-neispuo-digit]{width:42px!important;min-width:42px!important;max-width:42px!important;text-align:center;font-weight:700;padding-inline:0!important}
body .theme-toggle-btn{display:none!important}


/* v83 final layout fixes */
.brand-wrap.brand-compact{justify-content:flex-start!important;align-items:center!important}
.brand-copy{flex:0 1 auto!important}
.profile-mini-card .avatar,.profile-mini-card .avatar-default-image{background:transparent!important;border:none!important;box-shadow:none!important}
.profile-mini-card .avatar-default-image{border-radius:0!important}

#studentAssignModal .overlay-card.school-modal-card{max-width:min(1180px,94vw)!important;padding:18px!important;border-radius:20px!important}
#studentAssignLayout{grid-template-columns:minmax(390px,430px) minmax(0,1fr)!important;gap:18px!important;align-items:start!important}
#studentAssignLayout .prompt-head.compact h3{font-size:22px!important;line-height:1.15!important}
#studentAssignLayout .prompt-head.compact p{font-size:16px!important;line-height:1.35!important}
#studentAssignLayout .school-transfer-filter-sections{gap:16px!important}
#studentAssignLayout .school-transfer-filter-group{padding:14px!important;border-radius:16px!important}
#studentAssignLayout .school-transfer-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px 14px!important}
#studentAssignLayout .school-transfer-grid-school .school-picker-shell{grid-column:1 / -1!important}
#studentAssignLayout .school-transfer-grid-school .school-picker-row.compact{grid-template-columns:minmax(0,1fr) 39px!important;gap:8px!important}
#studentAssignLayout input,#studentAssignLayout select,#studentAssignLayout .school-picker-row.compact .button{min-height:39px!important;height:39px!important;max-height:39px!important;font-size:13px!important;padding:8px 12px!important;border-radius:12px!important}
#studentAssignLayout .school-picker-row.compact .button{padding:0!important}
#studentAssignList{grid-auto-rows:minmax(108px,auto)!important;gap:10px!important;max-height:72vh!important}
#studentAssignList .overlay-pick-card.overlay-pick-student{min-height:108px!important;height:auto!important;max-height:none!important;padding:12px 14px!important}
#studentAssignList .picker-card-title{font-size:15px!important;line-height:1.2!important}
#studentAssignList .picker-card-meta,#studentAssignList .picker-card-subline,#studentAssignList .picker-card-ref{font-size:12px!important;line-height:1.28!important}
@media (max-width: 1024px){#studentAssignLayout{grid-template-columns:1fr!important}}

.neispuo-single-input{display:block!important}
.neispuo-single-input input{width:100%!important;max-width:280px;letter-spacing:.55em!important;font-family:ui-monospace,SFMono-Regular,Menlo,monospace!important;padding-left:16px!important;background-image:repeating-linear-gradient(to right, transparent 0, transparent calc(14.285% - 8px), rgba(199,178,145,.45) calc(14.285% - 8px), rgba(199,178,145,.45) 14.285%);background-size:100% 100%;background-repeat:no-repeat}
.neispuo-single-input.filter-neispuo input{max-width:100%!important}

#adminSearchLayout .class-section-tiles.compact.multi.class-level-row{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto!important;gap:8px!important;padding-bottom:4px!important}
#adminSearchLayout .class-section-tiles.compact.multi.class-level-row .class-tile{flex:0 0 auto!important}
#adminSearchLayout .class-section-tiles.compact.multi.class-level-row .class-tile span{width:40px!important;min-width:40px!important;max-width:40px!important;height:40px!important;border-radius:50%!important;padding:0!important;display:grid!important;place-items:center!important}
#adminSearchLayout .school-picker-row{grid-template-columns:minmax(0,1fr) 40px auto!important;gap:8px!important}
#adminSearchLayout .school-picker-row .button{min-width:40px!important}
#searchEmptyState{grid-column:1 / -1!important}

.admin-user-edit-page .unified-edit-shell,.school-edit-page .school-edit-shell{display:block!important}
.admin-user-edit-page .unified-edit-shell .section-head,.school-edit-page .school-edit-shell .section-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;flex-wrap:wrap!important}
.admin-user-edit-page .unified-edit-form,.school-edit-page .school-edit-form{max-width:none!important;width:100%!important;margin:0!important;grid-template-columns:minmax(0,1fr)!important}
.admin-user-edit-page .clean-create-form .form-row-3,.school-edit-page .clean-create-form .form-row-3{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.admin-user-edit-page .clean-create-form .role-education-grid,.school-edit-page .clean-create-form .role-education-grid{grid-template-columns:1fr!important}
.admin-user-edit-page .clean-create-form .school-picker-row,.school-edit-page .clean-create-form .school-picker-row{grid-template-columns:minmax(0,1fr) 44px auto!important;gap:10px!important}
@media (max-width: 820px){.admin-user-edit-page .clean-create-form .form-row-3,.school-edit-page .clean-create-form .form-row-3{grid-template-columns:1fr!important}}

.clean-create-form .role-education-grid.is-create-layout{grid-template-columns:repeat(3,minmax(0,1fr))!important;align-items:start!important}
.clean-create-form .role-education-grid.is-create-layout .role-education-col-main,.clean-create-form .role-education-grid.is-create-layout .role-education-col-school{display:contents!important}
.clean-create-form .role-education-grid.is-create-layout .field-role{grid-column:1!important}
.clean-create-form .role-education-grid.is-create-layout .field-class{grid-column:2!important}
.clean-create-form .role-education-grid.is-create-layout .field-section{grid-column:3!important}
.clean-create-form .role-education-grid.is-create-layout .school-picker-shell{grid-column:1 / -1!important}
@media (max-width:960px){.clean-create-form .role-education-grid.is-create-layout{grid-template-columns:1fr!important}.clean-create-form .role-education-grid.is-create-layout .field-role,.clean-create-form .role-education-grid.is-create-layout .field-class,.clean-create-form .role-education-grid.is-create-layout .field-section,.clean-create-form .role-education-grid.is-create-layout .school-picker-shell{grid-column:1 / -1!important}}

.admin-user-search-list .status-dot-only.online.pulse::after{display:block!important}
.profile-mini-card .status-dot-only::after,.sidebar-profile .status-dot-only::after{display:none!important}

/* v84 final shared UI + modal/layout fixes */
:root{
  --student-assign-field-height:39px;
  --student-assign-modal-max-width:1280px;
  --student-assign-modal-vw:95vw;
  --student-assign-filter-column:420px;
  --student-assign-result-min-height:100px;
  --admin-filter-tile-size:34px;
}
.overlay{opacity:0;visibility:hidden;pointer-events:none;transform:translateY(8px) scale(.985);transition:opacity .18s ease,transform .18s ease,visibility .18s ease}
.overlay.is-visible{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0) scale(1)}
.overlay.is-closing{opacity:0;visibility:hidden;pointer-events:none;transform:translateY(6px) scale(.985)}

.neispuo-inputs.neispuo-single-input{display:block!important}
.neispuo-single-input input,
.neispuo-single-input.filter-neispuo input{
  width:100%!important;
  max-width:none!important;
  letter-spacing:normal!important;
  font-family:inherit!important;
  background-image:none!important;
  padding-left:12px!important;
}

#studentAssignModal{z-index:2300!important}
#studentAssignModal .overlay-card.school-modal-card{
  width:min(var(--student-assign-modal-max-width),var(--student-assign-modal-vw))!important;
  max-width:min(var(--student-assign-modal-max-width),var(--student-assign-modal-vw))!important;
  max-height:84vh!important;
  padding:18px 20px!important;
  border-radius:22px!important;
  overflow:hidden!important;
}
#studentAssignModal .school-modal-layout{
  grid-template-columns:minmax(380px,var(--student-assign-filter-column)) minmax(0,1fr)!important;
  gap:18px!important;
  align-items:start!important;
  max-height:calc(84vh - 36px)!important;
}
#studentAssignModal .school-modal-filters,
#studentAssignModal .school-modal-results{min-width:0!important;max-height:calc(84vh - 72px)!important;overflow:auto!important;padding:0!important}
#studentAssignModal .prompt-head h3,
#studentAssignModal .section-head h3{font-size:18px!important;line-height:1.2!important}
#studentAssignModal .prompt-head p{font-size:14px!important;line-height:1.45!important}
#studentAssignLayout .school-transfer-filter-sections{gap:12px!important}
#studentAssignLayout .school-transfer-filter-group{padding:14px!important;border-radius:16px!important}
#studentAssignLayout .school-transfer-filter-grid{gap:12px 14px!important}
#studentAssignLayout .school-transfer-grid-personal{grid-template-columns:repeat(2,minmax(0,1fr))!important}
#studentAssignLayout .school-transfer-grid-school{grid-template-columns:repeat(2,minmax(0,1fr))!important}
#studentAssignLayout .school-transfer-grid-school .school-picker-shell{grid-column:1/-1!important}
#studentAssignLayout .school-filter-grid input,
#studentAssignLayout .school-filter-grid select,
#studentAssignLayout .school-picker-row input,
#studentAssignLayout .school-picker-row .button,
#studentAssignLayout button,
#studentAssignLayout input,
#studentAssignLayout select{
  min-height:var(--student-assign-field-height)!important;
  height:var(--student-assign-field-height)!important;
  max-height:var(--student-assign-field-height)!important;
  font-size:13px!important;
  padding:8px 11px!important;
  border-radius:12px!important;
}
#studentAssignLayout .school-picker-row.compact,
#studentAssignLayout .school-picker-row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 39px!important;
  gap:8px!important;
}
#studentAssignLayout .school-filter-grid label>span,
#studentAssignLayout .filter-group-title{font-size:12px!important}
#studentAssignList .overlay-pick-card.overlay-pick-student{min-height:var(--student-assign-result-min-height)!important;height:auto!important;max-height:none!important;padding:12px 14px!important}
#studentAssignList{align-content:start!important;grid-auto-rows:minmax(var(--student-assign-result-min-height),auto)!important}
@media (max-width:1180px){
  #studentAssignModal .overlay-card.school-modal-card{width:min(1120px,96vw)!important;max-width:min(1120px,96vw)!important}
  #studentAssignModal .school-modal-layout{grid-template-columns:minmax(340px,380px) minmax(0,1fr)!important}
}
@media (max-width:900px){
  #studentAssignModal .overlay-card.school-modal-card{width:min(96vw,960px)!important;max-width:min(96vw,960px)!important;max-height:88vh!important}
  #studentAssignModal .school-modal-layout{grid-template-columns:1fr!important}
}

button.overlay-pick-school .school-code,
.overlay-pick-card.overlay-pick-school .school-code,
#schoolList .school-code{
  display:inline-flex!important;
  width:auto!important;
  min-width:0!important;
  max-width:max-content!important;
  align-self:flex-start!important;
  justify-self:start!important;
  padding:7px 12px!important;
}

.schools-filters-pane.admin-search-filters,
.admin-search-filters{overflow-x:hidden!important}
.admin-search-filters .class-section-tiles.compact.multi.class-level-row{
  display:flex!important;
  flex-wrap:wrap!important;
  overflow:visible!important;
  gap:8px!important;
  padding-bottom:0!important;
}
.admin-search-filters .class-section-tiles.compact.multi.class-level-row .class-tile,
.admin-search-filters .class-section-tiles.compact.multi.class-level-row .class-tile span{
  width:var(--admin-filter-tile-size)!important;
  min-width:var(--admin-filter-tile-size)!important;
  max-width:var(--admin-filter-tile-size)!important;
  height:var(--admin-filter-tile-size)!important;
}
.admin-search-filters .class-section-tiles.compact.multi.class-level-row .class-tile span{
  border-radius:50%!important;
  font-size:12px!important;
  padding:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
#liveSearchResults{min-width:0!important}
#liveSearchResults .empty-state{display:block!important;width:100%!important}

.clean-create-form .role-education-grid,
.unified-edit-form .role-education-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  align-items:start!important;
  gap:14px!important;
}
.clean-create-form .role-education-grid .role-education-col-main,
.clean-create-form .role-education-grid .role-education-col-school,
.unified-edit-form .role-education-grid .role-education-col-main,
.unified-edit-form .role-education-grid .role-education-col-school{display:contents!important}
.clean-create-form .role-education-grid .field-role,
.unified-edit-form .role-education-grid .field-role{grid-column:1!important}
.clean-create-form .role-education-grid .field-class,
.unified-edit-form .role-education-grid .field-class{grid-column:2!important}
.clean-create-form .role-education-grid .field-section,
.unified-edit-form .role-education-grid .field-section{grid-column:3!important}
.clean-create-form .role-education-grid .school-picker-shell,
.unified-edit-form .role-education-grid .school-picker-shell{grid-column:1/-1!important}
@media (max-width:960px){
  .clean-create-form .role-education-grid,
  .unified-edit-form .role-education-grid{grid-template-columns:1fr!important}
  .clean-create-form .role-education-grid .field-role,
  .clean-create-form .role-education-grid .field-class,
  .clean-create-form .role-education-grid .field-section,
  .clean-create-form .role-education-grid .school-picker-shell,
  .unified-edit-form .role-education-grid .field-role,
  .unified-edit-form .role-education-grid .field-class,
  .unified-edit-form .role-education-grid .field-section,
  .unified-edit-form .role-education-grid .school-picker-shell{grid-column:1/-1!important}
}

.admin-user-edit-page .unified-edit-shell,
.school-edit-page .school-edit-shell{display:block!important}
.admin-user-edit-page .unified-edit-shell .clean-create-form,
.admin-user-edit-page .unified-edit-form,
.school-edit-page .school-edit-form,
.school-edit-page .clean-create-form{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
}
.admin-user-edit-page .unified-edit-shell .form-grid,
.school-edit-page .school-edit-shell .form-grid{width:100%!important;max-width:none!important}
.admin-user-edit-page .clean-create-form .form-row-3,
.school-edit-page .clean-create-form .form-row-3{grid-template-columns:repeat(3,minmax(0,1fr))!important}
@media (max-width:820px){
  .admin-user-edit-page .clean-create-form .form-row-3,
  .school-edit-page .clean-create-form .form-row-3{grid-template-columns:1fr!important}
}

.brand-wrap.brand-compact{justify-content:flex-start!important;align-items:center!important;gap:10px!important}
.brand-wrap.brand-compact .brand-copy{margin-left:0!important;flex:0 1 auto!important}
.profile-mini-card .avatar,
.profile-mini-card .avatar-default-image{background:transparent!important;border:none!important;box-shadow:none!important;outline:none!important}
.profile-mini-card .avatar-default-image{border-radius:0!important}
.overlay:not(.hidden){opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0) scale(1)}


/* v85 layout, modal animation, shared sizing */
:root{
  --student-assign-field-height:39px;
  --student-assign-modal-max-width:1440px;
  --student-assign-modal-vw:96vw;
  --student-assign-filter-column:560px;
  --student-assign-result-min-height:100px;
  --admin-filter-tile-size:30px;
  --admin-filter-tile-gap:6px;
}
.overlay{opacity:0;visibility:hidden;pointer-events:none;transition:opacity .22s ease,visibility .22s ease;transform:none!important}
.overlay .overlay-card{opacity:0;transform:translateY(18px) scale(.985);transition:opacity .22s ease,transform .22s ease;will-change:transform,opacity}
.overlay.is-visible{opacity:1;visibility:visible;pointer-events:auto}
.overlay.is-visible .overlay-card{opacity:1;transform:translateY(0) scale(1)}
.overlay.is-closing{opacity:0;visibility:hidden;pointer-events:none}
.overlay.is-closing .overlay-card{opacity:0;transform:translateY(12px) scale(.988)}
.overlay:not(.hidden){display:grid!important}
#studentAssignModal .overlay-card.school-modal-card{width:min(var(--student-assign-modal-max-width),var(--student-assign-modal-vw))!important;max-width:min(var(--student-assign-modal-max-width),var(--student-assign-modal-vw))!important;max-height:82vh!important;padding:20px 22px!important}
#studentAssignModal .school-modal-layout{grid-template-columns:minmax(540px,var(--student-assign-filter-column)) minmax(0,1fr)!important;gap:18px!important;max-height:calc(82vh - 40px)!important}
#studentAssignModal .school-modal-filters{overflow:visible!important;max-height:none!important}
#studentAssignModal .school-modal-results{overflow:auto!important;max-height:calc(82vh - 78px)!important}
#studentAssignModal .prompt-head h3,#studentAssignModal .section-head h3{font-size:20px!important}
#studentAssignModal .prompt-head p{font-size:15px!important;line-height:1.5!important}
#studentAssignLayout .school-transfer-filter-sections{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important;align-items:start!important}
#studentAssignLayout .school-transfer-filter-group{height:100%!important;padding:14px!important}
#studentAssignLayout .school-transfer-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px 14px!important}
#studentAssignLayout .school-transfer-grid-personal,#studentAssignLayout .school-transfer-grid-school{grid-template-columns:repeat(2,minmax(0,1fr))!important}
#studentAssignLayout .school-transfer-grid-school .school-picker-shell{grid-column:1/-1!important}
#studentAssignLayout .school-filter-grid input,#studentAssignLayout .school-filter-grid select,#studentAssignLayout .school-picker-row input,#studentAssignLayout .school-picker-row .button,#studentAssignLayout button,#studentAssignLayout input,#studentAssignLayout select{height:39px!important;min-height:39px!important;max-height:39px!important}
#studentAssignLayout .school-picker-row{grid-template-columns:minmax(0,1fr) 39px!important}
@media (max-width:1200px){#studentAssignModal .overlay-card.school-modal-card{width:min(1280px,96vw)!important;max-width:min(1280px,96vw)!important}#studentAssignModal .school-modal-layout{grid-template-columns:minmax(480px,520px) minmax(0,1fr)!important}}
@media (max-width:980px){#studentAssignModal .school-modal-layout{grid-template-columns:1fr!important;max-height:none!important}#studentAssignLayout .school-transfer-filter-sections{grid-template-columns:1fr!important}#studentAssignModal .school-modal-results{max-height:36vh!important}}
.admin-search-filters .class-section-tiles.compact.multi.class-level-row{gap:var(--admin-filter-tile-gap)!important;justify-content:flex-start!important}
.admin-search-filters .class-section-tiles.compact.multi.class-level-row .class-tile,.admin-search-filters .class-section-tiles.compact.multi.class-level-row .class-tile span{width:var(--admin-filter-tile-size)!important;min-width:var(--admin-filter-tile-size)!important;max-width:var(--admin-filter-tile-size)!important;height:var(--admin-filter-tile-size)!important}
.admin-search-filters .class-section-tiles.compact.multi.class-level-row .class-tile span{font-size:11px!important}
.clean-create-form .role-education-grid,.unified-edit-form .role-education-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important;align-items:start!important}
.clean-create-form .role-education-grid > .field-role,.unified-edit-form .role-education-grid > .field-role{grid-column:1!important}
.clean-create-form .role-education-grid > .field-class,.unified-edit-form .role-education-grid > .field-class{grid-column:2!important}
.clean-create-form .role-education-grid > .field-section,.unified-edit-form .role-education-grid > .field-section{grid-column:3!important}
.clean-create-form .role-education-grid > .school-picker-shell,.unified-edit-form .role-education-grid > .school-picker-shell{grid-column:1 / -1!important}
@media (max-width:960px){.clean-create-form .role-education-grid,.unified-edit-form .role-education-grid{grid-template-columns:1fr!important}.clean-create-form .role-education-grid > .field-role,.clean-create-form .role-education-grid > .field-class,.clean-create-form .role-education-grid > .field-section,.clean-create-form .role-education-grid > .school-picker-shell,.unified-edit-form .role-education-grid > .field-role,.unified-edit-form .role-education-grid > .field-class,.unified-edit-form .role-education-grid > .field-section,.unified-edit-form .role-education-grid > .school-picker-shell{grid-column:1 / -1!important}}

/* v86 targeted fixes */
#studentAssignModal .overlay-card.school-modal-card{width:min(1460px,97vw)!important;max-width:min(1460px,97vw)!important;max-height:78vh!important;padding:18px 22px!important}
#studentAssignModal .school-modal-layout{grid-template-columns:minmax(620px,680px) minmax(0,1fr)!important;gap:18px!important;max-height:calc(78vh - 36px)!important;align-items:start!important}
#studentAssignModal .school-modal-filters{overflow:visible!important;max-height:none!important}
#studentAssignModal .school-modal-results{max-height:calc(78vh - 80px)!important;overflow:auto!important}
#studentAssignLayout .school-transfer-filter-sections{display:grid!important;grid-template-columns:minmax(250px,290px) minmax(0,1fr)!important;gap:14px!important;align-items:start!important}
#studentAssignLayout .school-transfer-grid-personal{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
#studentAssignLayout .school-transfer-grid-school{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px 14px!important}
#studentAssignLayout .school-transfer-grid-school .school-picker-shell{grid-column:1 / -1!important}
#studentAssignLayout .assign-tile-field{display:grid!important;gap:6px!important;align-content:start!important}
#studentAssignLayout .assign-tile-field>span{font-size:12px!important;font-weight:700!important;color:var(--muted)!important}
#studentAssignLayout .assign-filter-tiles{display:flex!important;flex-wrap:wrap!important;gap:8px!important}
#studentAssignLayout .assign-filter-tiles .class-tile{flex:0 0 auto!important}
#studentAssignLayout .assign-filter-tiles .class-tile span{width:34px!important;min-width:34px!important;max-width:34px!important;height:34px!important;padding:0!important;border-radius:999px!important;display:grid!important;place-items:center!important;font-size:12px!important}
#studentAssignLayout .school-transfer-grid-school .suggest-field .suggest-list{z-index:2600!important}
@media (max-width:1100px){#studentAssignModal .school-modal-layout{grid-template-columns:1fr!important;max-height:none!important}#studentAssignLayout .school-transfer-filter-sections{grid-template-columns:1fr!important}#studentAssignModal .school-modal-results{max-height:34vh!important}}

#adminSearchLayout .class-section-tiles.compact.multi.class-level-row{display:flex!important;flex-wrap:wrap!important;overflow:visible!important;gap:8px!important;padding-bottom:0!important}
#adminSearchLayout .class-section-tiles.compact.multi.class-level-row .class-tile{flex:0 0 auto!important}
#adminSearchLayout .class-section-tiles.compact.multi.class-level-row .class-tile span{width:30px!important;min-width:30px!important;max-width:30px!important;height:30px!important;border-radius:50%!important;padding:0!important;display:grid!important;place-items:center!important;font-size:11px!important}

.clean-create-form .role-education-grid,.unified-edit-form .role-education-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important;align-items:start!important}
.clean-create-form .role-education-grid .field-role,.clean-create-form .role-education-grid .field-class,.clean-create-form .role-education-grid .field-section,.unified-edit-form .role-education-grid .field-role,.unified-edit-form .role-education-grid .field-class,.unified-edit-form .role-education-grid .field-section{display:grid!important;align-content:start!important;gap:8px!important;margin:0!important}
.clean-create-form .role-education-grid .role-pill-group,.unified-edit-form .role-education-grid .role-pill-group,.clean-create-form .role-education-grid .class-level-tiles,.clean-create-form .role-education-grid .class-section-tiles,.unified-edit-form .role-education-grid .class-level-tiles,.unified-edit-form .role-education-grid .class-section-tiles{margin-top:0!important;align-items:flex-start!important}
.clean-create-form .role-education-grid .school-picker-shell,.unified-edit-form .role-education-grid .school-picker-shell{grid-column:1 / -1!important;margin-top:0!important}

/* v87 stability + layout fixes */
.session-tabs.spaced{margin-bottom:16px!important}
.country-flag{font-size:20px!important;line-height:1!important;background:transparent!important;border:none!important;box-shadow:none!important}
.schools-page .schools-filters-pane .section-head .pill,
.admin-search-filters .section-head .pill{background:rgba(186,151,96,.08)!important;color:var(--accent)!important;border-color:rgba(186,151,96,.22)!important}
#studentAssignModal .overlay-card.school-modal-card{width:min(1380px,96vw)!important;max-width:min(1380px,96vw)!important;max-height:76vh!important;padding:18px 20px!important}
#studentAssignLayout{grid-template-columns:minmax(540px,620px) minmax(0,1fr)!important;gap:18px!important;align-items:start!important}
#studentAssignLayout .school-modal-filters{min-width:0!important}
#studentAssignLayout .school-modal-results{min-width:0!important}
#studentAssignLayout .school-transfer-filter-sections{display:grid!important;grid-template-columns:minmax(0,.95fr) minmax(0,1.25fr)!important;gap:14px!important;align-items:start!important}
#studentAssignLayout .school-transfer-filter-group{min-width:0!important}
#studentAssignLayout .school-transfer-grid-personal{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
#studentAssignLayout .school-transfer-grid-school{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px 14px!important}
#studentAssignLayout .school-transfer-grid-school .assign-tile-field,
#studentAssignLayout .school-transfer-grid-school .school-picker-shell{grid-column:1 / -1!important}
#studentAssignLayout input[type="text"],
#studentAssignLayout select,
#studentAssignLayout .school-picker-row.compact .school-display{height:39px!important;min-height:39px!important}
#studentAssignLayout .school-picker-row.compact{grid-template-columns:minmax(0,1fr) 39px!important;gap:8px!important}
#studentAssignLayout .assign-filter-tiles{gap:8px!important;flex-wrap:wrap!important}
#studentAssignLayout .assign-filter-tiles .class-tile span{width:34px!important;min-width:34px!important;max-width:34px!important;height:34px!important;border-radius:50%!important;font-size:12px!important}
#studentAssignLayout .school-code-top{display:inline-flex!important;align-self:flex-start!important;width:auto!important;max-width:max-content!important;padding:6px 12px!important}
@media (max-width:1180px){
  #studentAssignLayout{grid-template-columns:1fr!important;max-height:none!important}
  #studentAssignLayout .school-transfer-filter-sections{grid-template-columns:1fr!important}
}
#adminSearchLayout .class-section-tiles.compact.multi.class-level-row{display:flex!important;flex-wrap:nowrap!important;gap:6px!important;overflow:visible!important;padding-bottom:0!important}
#adminSearchLayout .class-section-tiles.compact.multi.class-level-row .class-tile{flex:0 0 auto!important;margin:0!important}
#adminSearchLayout .class-section-tiles.compact.multi.class-level-row .class-tile span{width:30px!important;min-width:30px!important;max-width:30px!important;height:30px!important;border-radius:50%!important;font-size:11px!important;padding:0!important}
#adminSearchLayout [data-multi-role-filter]{min-height:118px!important}
.clean-create-form .role-education-grid,
.unified-edit-form .role-education-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px 18px!important;align-items:start!important}
.clean-create-form .role-education-grid>.field-role,.unified-edit-form .role-education-grid>.field-role{grid-column:1!important}
.clean-create-form .role-education-grid>.field-class,.unified-edit-form .role-education-grid>.field-class{grid-column:2!important}
.clean-create-form .role-education-grid>.field-section,.unified-edit-form .role-education-grid>.field-section{grid-column:3!important}
.clean-create-form .role-education-grid>.school-picker-shell,.unified-edit-form .role-education-grid>.school-picker-shell{grid-column:1 / -1!important}
.clean-create-form .field-class .class-section-tiles,
.clean-create-form .field-section .class-section-tiles,
.unified-edit-form .field-class .class-section-tiles,
.unified-edit-form .field-section .class-section-tiles{margin-top:4px!important;align-items:center!important}
.clean-create-form .field-class label,
.clean-create-form .field-section label,
.unified-edit-form .field-class label,
.unified-edit-form .field-section label{display:block!important;margin-bottom:6px!important}
.clean-create-form .field-class .class-tile span,
.clean-create-form .field-section .class-tile span,
.unified-edit-form .field-class .class-tile span,
.unified-edit-form .field-section .class-tile span{width:36px!important;min-width:36px!important;max-width:36px!important;height:36px!important;border-radius:50%!important}
@media (max-width:960px){
  .clean-create-form .role-education-grid,
  .unified-edit-form .role-education-grid{grid-template-columns:1fr!important}
  .clean-create-form .role-education-grid>.field-role,.clean-create-form .role-education-grid>.field-class,.clean-create-form .role-education-grid>.field-section,.clean-create-form .role-education-grid>.school-picker-shell,
  .unified-edit-form .role-education-grid>.field-role,.unified-edit-form .role-education-grid>.field-class,.unified-edit-form .role-education-grid>.field-section,.unified-edit-form .role-education-grid>.school-picker-shell{grid-column:1 / -1!important}
}
.profile-mini-card .avatar,.profile-mini-card .avatar-default-image{border:none!important;box-shadow:none!important;background:transparent!important}


/* v39 parity pass */
.audit-logs-page .audit-log-shell{padding:18px 18px 14px!important}
.audit-logs-page .audit-log-filters{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important}
.audit-logs-page .audit-table td,.audit-logs-page .audit-table th{vertical-align:top!important}
.audit-logs-page .audit-table td .muted{display:block;margin-top:3px!important}
.admin-user-show-page .profile-core-card .badge-row{display:flex!important;flex-wrap:wrap!important;gap:8px!important;align-items:center!important}
.admin-user-show-page .profile-core-card .status-dot-only{margin-left:2px!important}
.admin-user-show-page .login-history-item .log-icon .icon-svg{width:18px!important;height:18px!important}
.admin-user-show-page .table-wrap{margin-top:4px!important}
.admin-users-search-page .search-result-actions.action-pack{display:flex!important;flex-wrap:wrap!important;gap:8px!important}
.admin-users-search-page .school-user-action-btn .btn-label{display:inline!important}
.session-target-line{margin-bottom:10px!important}
.school-add-page .section-label,.admin-user-create-page .form-section-title,.admin-user-edit-page .form-section-title{letter-spacing:.06em!important}
.admin-user-create-page input[disabled],.admin-user-edit-page input[disabled]{opacity:1!important;color:var(--muted)!important;background:rgba(255,255,255,.4)!important}
@media (max-width:980px){.audit-logs-page .audit-log-filters{grid-template-columns:1fr!important}}


/* v40 deeper parity pass */
.v40-school-view .search-result-actions.action-pack{display:flex!important;flex-wrap:wrap!important;gap:8px!important}
.v40-school-view .school-member-results-grid .search-result-main .muted{line-height:1.45!important}
.v40-school-view .school-member-results-grid .search-result-title{align-items:center!important}
.v40-school-view .school-member-results-grid .search-result-actions .button .btn-label{display:inline!important}
.audit-logs-page .audit-log-shell .section-head{margin-bottom:0!important}
.audit-logs-page .audit-log-filters label{align-content:start!important}
.audit-logs-page .audit-log-filters input{height:44px!important}
.admin-user-show-page .profile-core-card .stats-grid.compact{margin-top:14px!important}
.admin-user-show-page .profile-core-card .metric-card.soft{min-height:88px!important}
.admin-user-show-page .login-history-list,.admin-user-show-page .table-wrap{margin-top:4px!important}
.school-add-page .form-actions .button.success .icon-svg,.school-edit-page .classic-actions .button .icon-svg{margin-right:8px!important}
.status-page .status-component-list.compact-status-components{margin-top:12px!important}
.status-page .status-history-shell.compact{margin-top:14px!important}
.status-page .status-overview-head h2{font-size:18px!important}
.status-page .status-day-grid.refined{margin-top:14px!important}
.session-target-line{margin-bottom:10px!important}
.login-history-item .log-title{word-break:break-word!important}


/* v41 parity push */
.legacy-avatar-row{display:flex!important;align-items:center!important;gap:16px!important;margin-bottom:8px!important}
.legacy-avatar-hint{flex:1 1 auto!important;font-size:13px!important;color:var(--muted)!important}
.v41-password-row{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}
.legacy-force-password-row{margin-top:2px!important}
.legacy-temp-password-row{margin-top:2px!important}
.legacy-user-create-actions,.legacy-user-edit-actions{display:flex!important;align-items:center!important;gap:10px!important;flex-wrap:wrap!important}
.legacy-user-create-actions .button,.legacy-user-edit-actions .button{min-height:42px!important}
.admin-users-search-page .legacy-admin-filter-foot{margin-top:10px!important}
.admin-users-search-page .legacy-admin-filter-foot .inline-meta.wrap{display:flex!important;flex-wrap:wrap!important;gap:8px!important}
.admin-users-search-page .search-result-main .muted{line-height:1.45!important}
.admin-users-search-page .search-result-title.user-profile-inline-head{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important}
.admin-users-search-page .search-result-actions.action-pack{display:flex!important;flex-wrap:wrap!important;gap:8px!important}
.admin-users-search-page .school-user-action-btn .btn-label{display:inline!important}
.admin-users-search-page #liveSearchResults .search-result{min-height:72px!important}
.profile-edit-page .profile-email-line{margin-top:6px!important}
.profile-edit-page .legacy-profile-edit-grid{align-items:start!important}
.profile-edit-page .legacy-profile-edit-grid .card{height:auto!important}
.profile-edit-page .legacy-device-row{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:12px!important;padding:10px 0!important;border-bottom:1px solid rgba(186,151,96,.14)!important}
.profile-edit-page .legacy-device-row:last-child{border-bottom:none!important;padding-bottom:0!important}
.audit-logs-page .audit-log-shell{padding:18px 18px 14px!important}
.audit-logs-page .audit-log-filters{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important}
.audit-logs-page .audit-table td,.audit-logs-page .audit-table th{vertical-align:top!important}
.audit-logs-page .audit-table td .muted{display:block!important;margin-top:3px!important}
.school-add-page .school-add-form .section-head{margin-bottom:0!important}
.school-add-page .school-add-form .form-actions{margin-top:4px!important}
.schools-page .schools-results-pane .section-head.compact{margin-bottom:12px!important}
.schools-page .school-card.school-card-plain{min-height:0!important}
.schools-page .school-title{line-height:1.32!important}
.admin-user-edit-page .login-history-list,.profile-edit-page .legacy-device-list{margin-top:4px!important}
@media (max-width:980px){
  .audit-logs-page .audit-log-filters{grid-template-columns:1fr!important}
  .v41-password-row{grid-template-columns:1fr!important}
}

/* v42 migration / parity push */
.admin-search-shell .school-filter-grid,
.schools-page-shell .school-filter-grid{gap:12px 14px}
.admin-search-shell .school-filter-grid label,
.schools-page-shell .school-filter-grid label{display:flex;flex-direction:column;gap:6px}
.admin-search-shell input,
.admin-search-shell select,
.admin-search-shell textarea,
.schools-page-shell input,
.schools-page-shell select,
.schools-page-shell textarea{min-height:44px}
.admin-search-shell .search-result,
.school-member-results-grid .search-result{align-items:center;padding:14px 16px}
.admin-search-shell .search-result-main{gap:4px}
.admin-search-shell .search-result-title{font-size:1rem;line-height:1.25}
.admin-search-shell .search-result-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
.admin-search-shell .search-result-actions form{margin:0}
.school-modal-layout.admin-search-layout.static{grid-template-columns:minmax(320px,420px) minmax(0,1fr);gap:18px}
.school-summary-grid{gap:12px}
.school-summary-grid .summary-cell{min-height:84px}
.school-user-filter-bar{align-items:end;gap:10px 12px}
.school-user-filter-bar label{min-width:160px}
.user-profile-inline-head .pill{margin-left:6px}
.compact-user-card .muted{line-height:1.35}
.legacy-admin-filter-foot .inline-meta{gap:8px}
.member-create-actions-tight{gap:10px;align-items:end;flex-wrap:wrap}
.member-create-actions-tight label{min-width:150px}
.member-create-actions-tight .switch-between{margin-bottom:2px}
.school-member-action-btn .btn-label{display:inline}
@media (max-width: 980px){
  .school-modal-layout.admin-search-layout.static{grid-template-columns:1fr}
  .admin-search-shell .search-result{align-items:flex-start}
  .admin-search-shell .search-result-actions{justify-content:flex-start}
}


/* v43 aggressive parity pass */
.admin-search-shell .compact-filters label{display:flex;flex-direction:column;gap:8px}
.admin-search-shell .compact-filters input,.admin-search-shell .compact-filters select{min-height:42px}
.admin-user-search-row{grid-template-columns:minmax(0,1fr) auto auto;align-items:center}
.admin-user-search-row .search-result-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
.legacy-avatar-row .legacy-avatar-hint{flex:1;font-size:13px;color:var(--muted)}
.role-education-grid .school-picker-shell{align-self:end}
.profile-edit-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.profile-edit-form-grid .field-name,.profile-edit-form-grid .field-middle,.profile-edit-form-grid .field-last,.profile-edit-form-grid .span-all{grid-column:span 2}
@media (min-width:960px){.profile-edit-form-grid .field-name,.profile-edit-form-grid .field-middle,.profile-edit-form-grid .field-last{grid-column:auto}}
.legacy-profile-edit-grid .legacy-result-stack{display:grid;gap:18px}
.school-summary-grid .summary-cell strong{line-height:1.35}
.school-view-page .school-members-toolbar{display:grid;gap:16px}
.school-view-page .member-create-actions-tight{display:flex;flex-wrap:wrap;align-items:end;gap:10px}
.school-view-page .school-user-filter-bar{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
@media (max-width:980px){.school-view-page .school-user-filter-bar{grid-template-columns:1fr 1fr}}
@media (max-width:720px){.school-view-page .school-user-filter-bar{grid-template-columns:1fr}.admin-user-search-row{grid-template-columns:1fr}}

/* v44 stability patch */
.muted.tiny{font-size:11px;opacity:.72}
.status-mini{display:flex;align-items:center;gap:6px}


/* fixed filter dropdown and compact status history */
.role-filter-dropdown{display:grid;gap:6px}
.role-filter-dropdown .filter-label{font-size:12px;color:var(--muted);font-weight:700}
.filter-check-dropdown{position:relative}
.filter-check-dropdown summary{list-style:none;cursor:pointer;min-height:42px;display:flex;align-items:center;padding:0 14px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}
.filter-check-dropdown summary::-webkit-details-marker{display:none}
.filter-check-dropdown[open] .filter-check-dropdown-menu{display:grid}
.filter-check-dropdown-menu{display:none;position:absolute;top:calc(100% + 8px);left:0;z-index:30;min-width:220px;padding:10px;border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:var(--shadow-soft);gap:8px}
.filter-check-dropdown-menu .checkbox-row{display:flex!important;align-items:center;gap:8px}
.filter-check-dropdown-menu .checkbox-row input{width:auto!important;height:auto!important;min-height:auto!important}

.compact-history-accordion{display:grid;gap:10px}
.compact-history-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;list-style:none;padding:12px 14px}
.compact-history-summary::-webkit-details-marker{display:none}
.compact-history-date{font-weight:700}
.compact-history-body{display:grid;gap:8px;padding:0 14px 14px}
.compact-history-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.55)}
.compact-history-side{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.compact-history-main .muted{margin-top:4px}

.student-assign-student-only.is-hidden{display:none!important}

/* V47 follow-up fixes: status uptime strips */
.status-strip-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:16px 0 10px;color:var(--muted);font-size:14px}
.status-strip-list{display:grid;gap:16px}
.status-strip-row{border:1px solid var(--line);border-radius:18px;padding:14px 16px;background:rgba(255,255,255,.72)}
.status-strip-row-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.status-strip-title-wrap{min-width:0}
.status-strip-title-wrap strong{display:block;font-size:20px;line-height:1.2;color:var(--text)}
.status-strip-current{display:inline-flex;align-items:center;justify-content:center;padding:0;font-size:14px;font-weight:600;background:transparent!important;border:none!important;color:inherit}
.status-strip-track-wrap{overflow-x:auto;padding-bottom:2px}
.status-strip-track{display:grid;grid-template-columns:repeat(90,minmax(6px,1fr));gap:4px;min-width:720px;align-items:stretch}
.status-strip-bar,button.status-strip-bar{appearance:none;border:1px solid var(--line);border-radius:2px;padding:0;height:34px;min-height:34px;display:block!important;box-shadow:none!important;background:#dfe6f2;cursor:pointer}
.status-strip-bar.ok,button.status-strip-bar.ok{background:#3ca85d!important;border-color:#3ca85d!important}
.status-strip-bar.warn,button.status-strip-bar.warn{background:#b78918!important;border-color:#b78918!important}
.status-strip-bar.bad,button.status-strip-bar.bad{background:#e14f5f!important;border-color:#e14f5f!important}
.status-strip-bar:hover{transform:translateY(-1px)}
.status-strip-meta{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;margin-top:10px;color:var(--muted);font-size:14px}
.status-strip-meta span:nth-child(2){text-align:center}
.status-strip-legend{margin-top:14px;margin-bottom:0}
body[data-theme="dark"] .status-strip-row{background:rgba(15,23,42,.55);border-color:rgba(148,163,184,.18)}
body[data-theme="dark"] .status-strip-title-wrap strong{color:#e5eefc}
@media (max-width:720px){
  .status-strip-row{padding:12px}
  .status-strip-row-head{align-items:flex-start;flex-direction:column}
  .status-strip-title-wrap strong{font-size:18px}
  .status-strip-track{min-width:630px;gap:3px}
  .status-strip-bar,button.status-strip-bar{height:28px;min-height:28px}
  .status-strip-meta{grid-template-columns:auto auto auto;font-size:12px;gap:8px}
}


/* v48 subdomains / auth / compact admin filters */
.auth-shell-page .app-shell,.auth-shell-page .sidebar,.auth-shell-page .topbar,.auth-shell-page .hero-shell{display:none!important}
.auth-shell-page .app-main{padding:0!important;min-height:100vh;display:grid;place-items:center;background:#eef2f7}
.auth-eu-shell{width:min(100%,560px);margin:0 auto;padding:32px 18px 40px;display:grid;gap:22px}
.auth-eu-brand{display:flex;justify-content:center}
.auth-eu-brand img{max-width:290px;width:100%;height:auto;filter:drop-shadow(0 2px 8px rgba(10,25,55,.08))}
.auth-eu-card{width:min(100%,540px);margin:0 auto;padding:34px 38px;border-radius:24px;background:#fff!important;border:1px solid rgba(19,46,99,.12)!important;box-shadow:0 18px 48px rgba(15,23,42,.08)!important}
.auth-eu-card h1{text-align:center;font-size:2rem;margin:6px 0 24px;color:#1d3557}
.auth-eu-form{display:grid;gap:16px}
.auth-eu-form label{display:grid;gap:8px;font-weight:600;color:#21344b}
.auth-eu-form input{min-height:56px;border-radius:16px;border:1px solid #d6dce7;background:#f8fafc;padding:0 16px;font-size:1rem}
.auth-eu-links{display:flex;justify-content:flex-start;margin-top:-2px}
.auth-eu-links a,.auth-eu-secondary-link a,.auth-eu-footer-links a{color:#2a4ea1;text-decoration:none}
.auth-eu-remember{margin-top:2px}
.auth-eu-submit{min-height:56px;border-radius:16px;font-size:1.05rem;justify-content:center;background:#1f4ca6!important;border-color:#1f4ca6!important}
.auth-eu-secondary-link{text-align:left;margin-top:8px;color:#53657c}
.auth-eu-footer-links{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:14px;padding-top:14px;border-top:1px solid #e4e9f2}
.auth-language-inline select{min-height:44px;border-radius:14px;border:1px solid #cfd7e6;background:#fff;padding:0 36px 0 14px}
.admin-search-filters{overflow:visible!important;max-height:none!important;height:auto!important;position:sticky;top:12px;align-self:start}
.admin-search-shell .schools-layout{align-items:start}
.admin-search-shell .schools-filters-pane{overflow:visible!important}
.status-component-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin-top:16px}
.status-component-card{min-height:104px;display:grid;gap:8px;align-content:start}
.compact-status-history{display:grid;gap:10px}
.compact-status-history .status-history-item{padding:12px 14px;border-radius:16px;background:rgba(255,255,255,.72);border:1px solid var(--line)}
.compact-status-history .status-history-date{min-width:92px}
.compact-status-history .status-history-body{gap:4px}
body[data-theme="dark"] .auth-shell-page .app-main{background:#0f172a}
body[data-theme="dark"] .auth-eu-card{background:#111827!important;border-color:rgba(148,163,184,.18)!important}
body[data-theme="dark"] .auth-eu-card h1,body[data-theme="dark"] .auth-eu-form label{color:#e5eefc}
body[data-theme="dark"] .auth-eu-form input,body[data-theme="dark"] .auth-language-inline select{background:#0f172a;border-color:rgba(148,163,184,.2);color:#e5eefc}
@media (max-width:720px){.auth-eu-shell{padding:22px 14px 28px}.auth-eu-card{padding:24px 20px;border-radius:20px}.auth-eu-card h1{font-size:1.8rem}.auth-eu-footer-links{flex-direction:column;align-items:flex-start}}


/* v50 compact palette + modal fixes */
:root{--bg:#f7f7f5;--surface:#fffffff2;--surface-strong:#fffffff7;--surface-soft:#fbfaf8;--line:#ddd9d3;--line-strong:#cbc4bb;--text:#151313;--muted:#5f5550;--accent:#ff5734;--accent-2:#be94f5;--accent-soft:#fff0eb;--ok:#2f8f58;--warn:#fccc42;--bad:#d94d4d;--teacher:#be94f5;--student:#ff5734;--radius-xl:22px;--radius-lg:16px;--radius-md:12px;--radius-sm:10px;--shadow:0 12px 28px rgba(21,19,19,.08);--shadow-soft:0 6px 16px rgba(21,19,19,.05)}
body{background:linear-gradient(180deg,#f7f7f5 0%,#f6f1ea 100%);font-size:15px}
.app-shell{gap:12px;padding:12px}.sidebar-left{top:12px;height:calc(100vh - 24px)}.sidebar-panel{gap:10px;padding:12px}.content-max,.page-body,.stack,.content-grid,.dashboard-grid,.auth-grid,.schools-layout{gap:12px!important}.card{padding:14px!important;border-radius:14px!important}.metric-card{padding:12px 14px!important;border-radius:14px!important}.hero-panel{padding:14px 16px!important;border-radius:18px!important}.section-head{margin-bottom:10px!important}.section-head h2,.card h2{font-size:20px!important}.hero-text,.muted{font-size:14px!important}.button,button{padding:10px 14px;border-radius:8px;box-shadow:none}.button.small{padding:8px 10px;border-radius:6px;font-size:12px}.nav-group-trigger,.nav-link,.nav-button-link{border-radius:0!important}.nav-link,.nav-button-link{width:100%;justify-content:flex-start;min-height:42px;padding:10px 12px!important}.nav-group-panel{padding:0!important}.nav-ico{width:32px;height:32px;flex-basis:32px;border-radius:8px;background:rgba(255,87,52,.10);color:var(--accent)}.user-chip{padding:10px;border-radius:12px}.form-grid{gap:12px!important;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}label{gap:5px;font-size:14px}input,select,textarea{padding:10px 12px;border-radius:8px;font-size:14px}.pill,.hero-chip{padding:6px 10px;border-radius:999px;font-size:12px}.overlay{background:rgba(21,19,19,.54)!important;backdrop-filter:none!important}.overlay-card,.prompt-card{background:#fff!important;backdrop-filter:none!important;box-shadow:0 18px 48px rgba(21,19,19,.18)!important}.role-filter-dropdown .filter-check-dropdown summary{padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:#fff;cursor:pointer}.filter-check-dropdown-menu{display:grid;gap:6px;padding:8px 0}.checkbox-row{display:flex!important;align-items:center!important;gap:8px!important;font-weight:600}.checkbox-row input{width:16px!important;height:16px!important;flex:0 0 16px!important;margin:0!important}.admin-search-filters{overflow:visible!important;max-height:none!important}.school-summary-panel .metric-card,.school-summary-panel .stats-grid .metric-card{min-height:auto!important}.school-summary-panel,.schools-page-shell,.admin-search-shell{transform:scale(.98);transform-origin:top center}.profile-edit-form-grid .legacy-avatar-row,.clean-create-form .legacy-avatar-row{gap:12px!important}.clean-create-form .avatar-upload-circle{width:72px!important;height:72px!important}.crop-stage{min-height:320px!important;background:#f7f7f5!important}.crop-stage::after{inset:20px!important;box-shadow:0 0 0 999px rgba(21,19,19,.30)!important}.status-strip-track{gap:4px!important}.status-strip-bar{border-radius:4px!important;min-height:28px!important}.compact-question-stack{gap:10px!important}.exam-layout.compact-exam-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:12px}.exam-runner-main,.exam-runner-side{align-self:start}.exam-answer-list{display:grid;gap:8px}.choice{padding:10px 12px;border-radius:10px;grid-template-columns:22px 28px 1fr}.choice-key{width:24px;height:24px;font-size:12px}.compact-question-map{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.compact-question-map .qdot{min-height:36px;border-radius:8px;background:#fff;border:1px solid var(--line)}.exam-timer-stack{display:grid;gap:8px;justify-items:end}.exam-side-actions{gap:8px!important}.exam-question-copy h3{margin:0 0 6px;font-size:18px;line-height:1.35}.legacy-temp-password-row{align-items:center;gap:10px}.compact-transfer-card{padding:10px 12px!important}#assignStudentNewClassWrap.hidden{display:none!important}.role-filter-dropdown .filter-check-dropdown-menu .checkbox-row{padding:2px 0}body.compact-action-buttons #memberModeActionBtn .btn-label{display:none}@media (max-width:980px){.exam-layout.compact-exam-layout{grid-template-columns:1fr}.exam-runner-side{position:static}.school-summary-panel,.schools-page-shell,.admin-search-shell{transform:none}}


/* v51 focused polish */
:root{
  --bg:#f5f7fb !important;
  --surface:#ffffffee !important;
  --surface-strong:#ffffff !important;
  --surface-soft:#f7f7fc !important;
  --line:#d9deea !important;
  --line-strong:#c9d0e0 !important;
  --text:#23314d !important;
  --muted:#6b7590 !important;
  --accent:#617ef6 !important;
  --accent-2:#be94f5 !important;
  --accent-soft:#eef2ff !important;
  --warn:#fccc42 !important;
  --ok:#2a9d6f !important;
}
body{
  background:
    radial-gradient(900px 360px at -12% -10%, rgba(97,126,246,.12), transparent 60%),
    radial-gradient(820px 320px at 112% 0%, rgba(190,148,245,.10), transparent 56%),
    linear-gradient(180deg,#f7f9fd 0%, #f3f6fb 58%, #f7f9fd 100%) !important;
}
.app-shell{gap:10px!important;padding:10px!important}
.sidebar-left{top:10px!important;height:calc(100vh - 20px)!important}
.sidebar-panel{padding:8px!important;gap:8px!important;border-radius:18px!important;background:linear-gradient(180deg,#ffffff,#f8f9fd)!important}
.nav-group,.nav-group-panel,.side-nav,.accordion-nav{width:100%!important}
.nav-link,.nav-button-link,.nav-group-trigger{min-height:34px!important;padding:6px 10px!important;border-radius:0!important;width:calc(100% + 16px)!important;margin-left:-8px!important;margin-right:-8px!important}
.nav-ico{width:24px!important;height:24px!important;flex-basis:24px!important;border-radius:6px!important}
.brand-wrap,.sidebar-top,.sidebar-footer{gap:6px!important}
.profile-mini-card,.user-chip{padding:8px!important;border-radius:10px!important}
.content-max,.page-body,.stack,.content-grid,.dashboard-grid,.auth-grid,.schools-layout,.schools-layout.admin-search-layout{gap:10px!important}
.card,.metric-card,.hero-panel,.overlay-card,.prompt-card{border-radius:14px!important}
.card{padding:12px!important}
.metric-card{padding:10px 12px!important}
.section-head{margin-bottom:8px!important}
.section-head h2,.card h2{font-size:18px!important}
.form-grid,.school-filter-grid,.school-filter-stack,.unified-edit-form,.clean-create-form,.settings-shell,.legacy-result-stack{gap:8px!important}
label{gap:4px!important;font-size:13px!important}
input,select,textarea{
  min-height:30px!important;
  height:30px!important;
  padding:4px 10px!important;
  font-size:13px!important;
  line-height:1.2!important;
  border-radius:8px!important;
}
textarea{min-height:72px!important;height:auto!important;padding-top:8px!important;padding-bottom:8px!important}
.button,button{min-height:32px!important;padding:6px 12px!important;border-radius:8px!important;font-size:13px!important}
.button.small{min-height:28px!important;padding:4px 8px!important;font-size:12px!important}
.pill,.hero-chip{padding:4px 8px!important;font-size:11px!important}
.overlay{background:rgba(15,19,28,.66)!important;backdrop-filter:none!important}
.overlay-card,.prompt-card{background:#fff!important;opacity:1!important}
.school-summary-panel .metric-card,.school-summary-panel .stats-grid .metric-card{padding:8px 10px!important}
.school-summary-panel .stats-grid{gap:8px!important}
.role-filter-dropdown .filter-check-dropdown summary{min-height:30px!important;padding:4px 10px!important;border-radius:8px!important}
.filter-check-dropdown-menu{padding:8px 10px!important;gap:6px!important;border-radius:12px!important}
.filter-check-dropdown-menu .checkbox-row,
.role-filter-dropdown .checkbox-row,
.admin-search-filters .checkbox-row{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:8px!important;
  width:100%!important;
  margin:0!important;
  padding:2px 0!important;
}
.filter-check-dropdown-menu .checkbox-row span,
.role-filter-dropdown .checkbox-row span,
.admin-search-filters .checkbox-row span{
  display:inline-flex!important;
  align-items:center!important;
  margin:0!important;
}
.filter-check-dropdown-menu .checkbox-row input,
.role-filter-dropdown .checkbox-row input,
.admin-search-filters .checkbox-row input{
  width:14px!important;
  height:14px!important;
  min-height:14px!important;
  flex:0 0 14px!important;
  margin:0!important;
}
.admin-search-filters .class-section-tiles.compact.multi.class-level-row{gap:6px!important}
.admin-search-filters .class-section-tiles.compact.multi.class-level-row .class-tile,
.admin-search-filters .class-section-tiles.compact.multi.class-level-row .class-tile span{width:30px!important;min-width:30px!important;max-width:30px!important;height:30px!important}
#memberModeActionBtn{display:inline-flex!important;align-items:center!important;gap:6px!important;min-height:30px!important;padding:4px 10px!important}
#memberModeActionBtn .button-icon{display:inline-flex!important;align-items:center!important;justify-content:center!important}
#memberModeActionBtn .btn-label{display:inline!important}
body.compact-action-buttons #memberModeActionBtn{padding:4px 9px!important;min-width:30px!important;gap:0!important;font-size:0!important}
body.compact-action-buttons #memberModeActionBtn .btn-label{display:none!important}
.profile-page section.card.subtle.reveal.top-gap{margin-top:0!important}
.profile-page section.card.subtle.reveal{margin-top:0!important}
body .school-user-action-btn .btn-label{display:inline!important}
.admin-search-shell,.schools-page-shell,.school-summary-panel{transform:none!important}


/* v52 hotfixes */
.side-nav,.sidebar-mini-nav,.sidebar-panel,.sidebar-left{overflow-x:hidden!important}
.nav-group,.nav-group-panel,.nav-link,.nav-button-link,.nav-logout-form, .side-nav form{max-width:100%!important;min-width:0!important}
.side-nav form{margin:0!important}
.role-filter-dropdown{gap:4px!important}
.role-filter-dropdown .filter-check-dropdown summary{min-height:30px!important;height:30px!important;padding:4px 10px!important}
.filter-check-dropdown-menu{display:none;grid-auto-rows:min-content;padding:8px 10px!important;gap:6px!important;min-width:210px!important}
.filter-check-dropdown[open] .filter-check-dropdown-menu{display:grid!important}
.filter-check-dropdown-menu label.checkbox-row,.role-filter-dropdown label.checkbox-row,.admin-search-filters label.checkbox-row{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;grid-template-columns:none!important;gap:8px!important;padding:2px 0!important;white-space:nowrap!important}
.filter-check-dropdown-menu label.checkbox-row span,.role-filter-dropdown label.checkbox-row span,.admin-search-filters label.checkbox-row span{display:inline-flex!important;align-items:center!important;line-height:1.2!important;margin:0!important;white-space:nowrap!important}
.filter-check-dropdown-menu label.checkbox-row input,.role-filter-dropdown label.checkbox-row input,.admin-search-filters label.checkbox-row input{display:inline-block!important;width:14px!important;height:14px!important;min-height:14px!important;max-height:14px!important;flex:0 0 14px!important;margin:0!important;vertical-align:middle!important}
.school-filter-stack,.compact-filters,.form-grid.section-group{gap:8px!important}
.school-filter-stack label,.compact-filters label,.form-grid.section-group label{gap:4px!important}
.school-filter-stack input,.school-filter-stack select,.school-filter-stack textarea,.compact-filters input,.compact-filters select,.compact-filters textarea{min-height:30px!important;height:30px!important;padding:4px 10px!important;font-size:13px!important}
#memberModeActionBtn .button-icon svg,#memberModeActionBtn .button-icon .icon-svg{pointer-events:none}
#memberModeActionBtn .btn-label{display:inline-flex!important;align-items:center}
.sidebar-left .nav-link,.sidebar-left .nav-button-link{padding-left:8px!important;padding-right:8px!important;min-height:34px!important}
.sidebar-left .nav-ico{width:26px!important;height:26px!important;flex-basis:26px!important;border-radius:6px!important}
.sidebar-left .nav-label,.sidebar-left .nav-group-title{font-size:13px!important}
.sidebar-left .side-nav{gap:6px!important;padding-right:0!important}
.sidebar-left .nav-group-panel{gap:4px!important}
.sidebar-left .nav-group-trigger{padding:7px 8px!important}
body.admin-role .school-picker-shell.hide-for-admin, .school-picker-shell.hide-for-admin.hidden{display:none!important}


/* v2 emergency runtime/ui fixes */
.sidebar-left,.sidebar-panel,.nav-group-panel,.side-nav{overflow-x:hidden!important}
.nav-link,.nav-button-link,.nav-group-trigger{box-sizing:border-box!important;max-width:100%!important}
.filter-check-dropdown-menu .checkbox-row,
.role-filter-dropdown .checkbox-row,
.admin-search-filters .checkbox-row{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;flex-wrap:nowrap!important;white-space:nowrap!important}
.filter-check-dropdown-menu .checkbox-row > input,
.role-filter-dropdown .checkbox-row > input,
.admin-search-filters .checkbox-row > input{display:inline-block!important;vertical-align:middle!important}
.filter-check-dropdown-menu .checkbox-row > .checkbox-label,
.role-filter-dropdown .checkbox-row > .checkbox-label,
.admin-search-filters .checkbox-row > .checkbox-label{display:inline-flex!important;vertical-align:middle!important;line-height:1.1!important}


/* v4 patch on top of lastokbuild */
.student-only-field.hidden,
.student-assign-student-only.hidden{display:none!important}
.role-education-grid .field-class,
.role-education-grid .field-section{min-width:0}
.role-education-grid .class-level-tiles,
.role-education-grid .class-section-tiles{flex-wrap:wrap;overflow:hidden}
.role-education-grid .class-tile{flex:0 0 auto}
.school-picker-row .button .btn-label{display:inline-flex;align-items:center}
.security-inline-note{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.admin-users-search-page .school-filter-grid label,
.admin-users-search-page .school-filter-grid input,
.admin-users-search-page .school-filter-grid select{min-height:30px!important}
.admin-users-search-page .school-filter-grid label{gap:6px!important}
.admin-users-search-page .schools-filters-pane{overflow:visible!important;max-height:none!important}
.admin-users-search-page .school-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width:980px){.admin-users-search-page .school-filter-grid{grid-template-columns:1fr}}
.sidebar-left,.sidebar-panel,.side-nav,.nav-group-panel,.nav-group-item{overflow-x:hidden!important;min-width:0}
.sidebar-panel{padding:12px!important;gap:8px!important}
.nav-group-trigger,.nav-link,.nav-button-link{width:100%!important;max-width:100%!important;box-sizing:border-box!important;min-height:38px!important;padding:8px 10px!important}
.nav-group-panel{padding-left:0!important;padding-right:0!important}
.side-nav .button,.side-nav button{white-space:nowrap}
#memberAttachPanel .admin-search-filters{overflow:visible!important;max-height:none!important}
#memberAttachPanel .school-modal-layout.static{grid-template-columns:minmax(280px,360px) minmax(0,1fr)!important}
#memberAttachPanel .school-modal-filters{background:transparent!important;border:0!important;padding:0!important}
#memberAttachPanel .school-modal-results{background:transparent!important;border:0!important;padding:0!important}

.brand-wrap.brand-compact .brand-copy{display:none!important}
.brand-wrap.brand-compact .brand-mark{margin:0!important}

/* v18.2 sidebar logo sizing fix */
body:not(.sidebar-collapsed) .sidebar-top .brand-wrap.brand-compact{
  display:block!important;
  width:100%!important;
}
body:not(.sidebar-collapsed) .sidebar-top .brand-wrap.brand-compact .brand-mark{
  display:block!important;
  width:100%!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  border:none!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body:not(.sidebar-collapsed) .sidebar-top .brand-wrap.brand-compact .brand-mark img{
  display:block!important;
  width:min(100%, 170px)!important;
  height:auto!important;
  max-width:100%!important;
  max-height:none!important;
  object-fit:contain!important;
}
body.sidebar-collapsed .sidebar-top .brand-wrap.brand-compact .brand-mark{
  width:auto!important;
  height:auto!important;
  background:transparent!important;
  box-shadow:none!important;
  border-radius:0!important;
}
body.sidebar-collapsed .sidebar-top .brand-wrap.brand-compact .brand-mark img{
  width:38px!important;
  height:auto!important;
}


/* v19.0 horado parity fixes */
:root{
  --role-student-bg:rgba(31,157,97,.12);
  --role-student-border:rgba(31,157,97,.24);
  --role-student-color:#18794b;
  --role-teacher-bg:rgba(97,126,246,.12);
  --role-teacher-border:rgba(97,126,246,.24);
  --role-teacher-color:#3a56d1;
  --role-moderator-bg:rgba(186,151,96,.14);
  --role-moderator-border:rgba(186,151,96,.30);
  --role-moderator-color:#8a6327;
  --role-admin-bg:rgba(226,77,77,.12);
  --role-admin-border:rgba(226,77,77,.24);
  --role-admin-color:#c93838;
}
.pill.role-student{background:var(--role-student-bg)!important;color:var(--role-student-color)!important;border-color:var(--role-student-border)!important}
.pill.role-teacher{background:var(--role-teacher-bg)!important;color:var(--role-teacher-color)!important;border-color:var(--role-teacher-border)!important}
.pill.role-moderator{background:var(--role-moderator-bg)!important;color:var(--role-moderator-color)!important;border-color:var(--role-moderator-border)!important}
.pill.role-admin{background:var(--role-admin-bg)!important;color:var(--role-admin-color)!important;border-color:var(--role-admin-border)!important}
.role-student{color:var(--role-student-color)!important}
.role-teacher{color:var(--role-teacher-color)!important}
.role-moderator{color:var(--role-moderator-color)!important}
.role-admin{color:var(--role-admin-color)!important}
.role-pill-student span{color:var(--role-student-color)!important;border-color:var(--role-student-border)!important;background:rgba(31,157,97,.06)!important}
.role-pill-student input:checked+span{background:rgba(31,157,97,.18)!important;border-color:#1f9d61!important}
.role-pill-teacher span{color:var(--role-teacher-color)!important;border-color:var(--role-teacher-border)!important;background:rgba(97,126,246,.06)!important}
.role-pill-teacher input:checked+span{background:rgba(97,126,246,.18)!important;border-color:#617ef6!important}
.role-pill-moderator span{color:var(--role-moderator-color)!important;border-color:var(--role-moderator-border)!important;background:rgba(186,151,96,.08)!important}
.role-pill-moderator input:checked+span{background:rgba(186,151,96,.18)!important;border-color:#ba9760!important}
.role-pill-admin span{color:var(--role-admin-color)!important;border-color:var(--role-admin-border)!important;background:rgba(226,77,77,.06)!important}
.role-pill-admin input:checked+span{background:rgba(226,77,77,.18)!important;border-color:#e24d4d!important}

/* sidebar */
.sidebar-top{gap:16px!important}
.brand-wrap.brand-compact,
body:not(.sidebar-collapsed) .sidebar-top .brand-wrap.brand-compact{
  display:flex!important;
  width:100%!important;
  align-items:center!important;
  justify-content:flex-start!important;
}
.brand-wrap.brand-compact .brand-mark,
body:not(.sidebar-collapsed) .sidebar-top .brand-wrap.brand-compact .brand-mark{
  width:100%!important;
  max-width:none!important;
  height:auto!important;
}
.brand-wrap.brand-compact .brand-mark img,
body:not(.sidebar-collapsed) .sidebar-top .brand-wrap.brand-compact .brand-mark img{
  width:100%!important;
  max-width:none!important;
  height:auto!important;
  max-height:54px!important;
  object-fit:contain!important;
  object-position:left center!important;
}
body.sidebar-collapsed .brand-wrap.brand-compact .brand-mark img,
body.sidebar-collapsed .sidebar-top .brand-wrap.brand-compact .brand-mark img{
  width:42px!important;
  max-height:none!important;
}
.nav-group-panel{width:100%!important}
.nav-group-panel>a,
.nav-group-panel>form,
.nav-group-panel>form>button,
.nav-group-panel .nav-link{
  width:100%!important;
  display:flex!important;
}
.nav-group-panel>form{margin:0!important}
.nav-group-panel .nav-link,
.nav-group-panel .nav-button-link{
  min-height:46px!important;
  justify-content:flex-start!important;
  padding:10px 12px!important;
}
.profile-mini-card{display:grid!important;grid-template-columns:56px minmax(0,1fr)!important;align-items:center!important;gap:12px!important;padding:12px 14px!important}
.profile-mini-card .avatar,
.profile-mini-card .avatar-default-image{
  width:56px!important;
  height:56px!important;
  min-width:56px!important;
  min-height:56px!important;
  border-radius:50%!important;
  object-fit:cover!important;
  background:#f4efe8!important;
  border:1px solid rgba(199,207,221,.85)!important;
  box-shadow:none!important;
}
.profile-mini-card .user-chip-copy{min-width:0!important}
.profile-mini-card strong{font-size:15px!important;line-height:1.15!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.profile-mini-card .username-line{font-size:13px!important}
.profile-mini-card .status-mini{margin-top:2px!important}

/* auth and error logos */
.auth-eu-shell{width:min(100%,640px)!important}
.auth-eu-brand{width:100%!important;justify-content:center!important}
.auth-eu-brand img{
  width:min(100%, 420px)!important;
  max-width:420px!important;
  max-height:none!important;
  height:auto!important;
  object-fit:contain!important;
  object-position:center!important;
  margin:0 auto!important;
}
.auth-eu-card{width:min(100%,580px)!important}
body.auth-shell-page .content-max{width:min(100%,720px)!important}

/* user form */
.role-education-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) minmax(0,1fr)!important;align-items:start!important;gap:18px!important}
.role-education-grid .school-picker-shell{grid-column:1 / -1}
.student-only-field{display:grid!important;gap:10px!important;align-content:start!important}
.student-only-field .field-lock-note{font-size:12px!important;color:var(--muted)!important;line-height:1.35!important}
.student-only-field.is-disabled{opacity:1!important}
.student-only-field.is-disabled .class-level-tiles,
.student-only-field.is-disabled .class-section-tiles{pointer-events:none!important;filter:grayscale(.12)!important}
.student-only-field.is-disabled .class-tile span{background:#f2f4f8!important;border-color:#d4dae4!important;color:#9aa4b8!important}
.student-only-field.is-disabled .field-lock-note{color:#8b96aa!important}
.school-picker-row-wide{grid-template-columns:minmax(0,1fr) auto auto!important;align-items:center!important;gap:10px!important}
.school-picker-action,.school-picker-clear{min-height:44px!important;white-space:nowrap!important}
.school-picker-action .btn-label{display:inline!important}
.hide-for-admin.hidden{display:none!important}
@media (max-width:980px){
  .role-education-grid{grid-template-columns:1fr!important}
  .school-picker-row-wide{grid-template-columns:1fr!important}
}

/* exam builder */
.exam-builder-shell{padding:22px!important;border-radius:22px!important}
.exam-builder-shell .section-head{margin-bottom:14px!important}
.exam-builder-grid{gap:18px!important}
.exam-builder-grid>.form-section-title{
  grid-column:1 / -1;
  margin:4px 0 -2px!important;
  padding:0!important;
  font-size:13px!important;
  font-weight:800!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  color:var(--accent)!important;
}
.exam-builder-grid>label,
.horado-question-builder label{
  background:rgba(255,255,255,.78)!important;
  border:1px solid rgba(199,207,221,.75)!important;
  border-radius:16px!important;
  padding:14px!important;
}
.exam-builder-grid textarea,
.horado-question-builder textarea{min-height:108px!important}
.horado-question-builder{
  border-radius:22px!important;
  border:1px solid rgba(199,207,221,.82)!important;
  background:linear-gradient(180deg,rgba(255,255,255,.90),rgba(247,249,252,.90))!important;
  box-shadow:0 14px 30px rgba(39,54,96,.08)!important;
}
.horado-question-builder .section-head.compact{align-items:flex-start!important}
.horado-question-builder [data-option-row]{border-radius:18px!important;background:#fff!important;border:1px solid rgba(199,207,221,.72)!important}
.exam-builder-actions{display:flex!important;justify-content:space-between!important;align-items:center!important;flex-wrap:wrap!important;padding-top:4px!important}
.exam-builder-actions .button{min-height:46px!important}
@media (max-width:900px){.exam-builder-actions{justify-content:flex-start!important}}

/* status page */
.status-compact-shell{padding:22px!important;border-radius:24px!important}
.status-overview-head{padding:18px 20px!important;border-radius:22px!important}
.status-overview-head h2{font-size:24px!important;line-height:1.15!important}
.status-overview-head p{font-size:14px!important;max-width:720px!important}
.status-strip-row{padding:16px 18px!important;border-radius:20px!important;background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(245,248,252,.88))!important;border-color:rgba(199,207,221,.86)!important}
.status-strip-title-wrap strong{font-size:22px!important}
.status-strip-track{grid-template-columns:repeat(90,minmax(8px,1fr))!important;gap:5px!important}
.status-strip-bar,button.status-strip-bar{height:30px!important;min-height:30px!important;border-radius:5px!important}
.status-component-summary-grid{margin-top:18px!important;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))!important}
.status-component-card{border-radius:18px!important;padding:16px 18px!important;background:#fff!important;border:1px solid rgba(199,207,221,.78)!important;box-shadow:none!important}
.status-component-card strong{font-size:18px!important}
.compact-status-history{gap:12px!important}
.compact-status-history .status-history-item{display:grid!important;grid-template-columns:96px minmax(0,1fr)!important;align-items:start!important;gap:14px!important;padding:14px 16px!important;border-radius:18px!important;background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(246,249,252,.90))!important}
.compact-status-history .status-history-date{display:grid!important;gap:2px!important;align-content:start!important}
.compact-status-history .status-history-date span{font-size:18px!important;font-weight:800!important}
.compact-status-history .status-history-date small{font-size:12px!important;letter-spacing:.08em!important;text-transform:uppercase!important;color:var(--muted)!important}
.compact-status-history .status-history-title{font-size:17px!important}
.compact-status-history .status-history-meta{font-weight:700!important;color:var(--muted)!important}
@media (max-width:820px){
  .compact-status-history .status-history-item{grid-template-columns:1fr!important}
  .status-strip-track{min-width:720px!important}
}


/* v20 targeted UI fixes */
.auth-shell-page .top-strip-group,
.auth-shell-page .breadcrumb-bar{display:none!important}
.auth-shell-page .main-shell,
.auth-shell-page .guest-shell{min-height:100vh!important;display:grid!important;place-items:center!important;padding:0!important}
.auth-shell-page .content-max{width:min(100%,680px)!important;max-width:680px!important;margin:0 auto!important}
.auth-shell-page .page-body{display:block!important}
.auth-eu-shell{padding:20px 18px 28px!important}

.brand-wrap.brand-compact{display:flex!important;align-items:center!important;justify-content:flex-start!important;width:100%!important;padding:0 2px 4px!important}
.brand-wrap.brand-compact .brand-mark{width:100%!important;height:auto!important;min-height:0!important;background:transparent!important;box-shadow:none!important;border-radius:0!important;padding:0!important}
.brand-wrap.brand-compact .brand-mark img{display:block!important;width:100%!important;max-width:214px!important;height:auto!important;object-fit:contain!important}

.sidebar-left,.sidebar-panel,.sidebar-top,.side-nav,.nav-group,.nav-group-panel,.nav-link,.nav-button-link{width:100%!important}
.sidebar-panel{padding:10px!important;gap:8px!important;overflow:auto!important}
.sidebar-top,.sidebar-footer,.brand-wrap{gap:8px!important}
.user-chip{padding:8px!important;border-radius:14px!important;gap:10px!important}
.user-chip .avatar{width:54px!important;height:54px!important;min-width:54px!important;border-radius:50%!important;object-fit:cover!important;background:#eef2f7!important}
.nav-group-trigger,.nav-link,.nav-button-link{min-height:36px!important;padding:7px 10px!important;border-radius:10px!important;margin:0!important}
.nav-group-panel{padding:0!important;gap:4px!important}
.nav-group{gap:6px!important}
.nav-group-title,.nav-label{font-size:13px!important}
.nav-ico{width:28px!important;height:28px!important;flex:0 0 28px!important;border-radius:8px!important}
.docs-link,.version-pill{font-size:12px!important}
.version-pill{background:transparent!important;border:none!important;box-shadow:none!important;padding:0 2px!important;color:var(--muted)!important}

.role-education-grid .field-class,
.role-education-grid .field-section,
.role-education-grid .school-picker-shell{grid-column:1 / -1!important;width:100%!important}
.student-only-field{display:grid!important;gap:8px!important;align-content:start!important}
.student-only-field.is-disabled{display:grid!important;opacity:1!important}
.student-only-field.is-hidden{display:none!important}
.student-only-field.is-disabled .class-section-tiles,
.student-only-field.is-disabled .class-level-tiles{pointer-events:none!important}
.unified-edit-form .field-class .class-level-tiles,
.unified-edit-form .field-section .class-section-tiles,
.clean-create-form .field-class .class-level-tiles,
.clean-create-form .field-section .class-section-tiles{display:flex!important;flex-wrap:wrap!important;gap:8px!important;overflow:visible!important;grid-template-columns:none!important}
.unified-edit-form .field-class .class-tile,
.unified-edit-form .field-section .class-tile,
.clean-create-form .field-class .class-tile,
.clean-create-form .field-section .class-tile{flex:0 0 auto!important}
.unified-edit-form .field-class .class-tile input,
.unified-edit-form .field-section .class-tile input,
.clean-create-form .field-class .class-tile input,
.clean-create-form .field-section .class-tile input{position:absolute!important;opacity:0!important;pointer-events:none!important}
.unified-edit-form .field-class .class-tile span,
.unified-edit-form .field-section .class-tile span,
.clean-create-form .field-class .class-tile span,
.clean-create-form .field-section .class-tile span{width:40px!important;min-width:40px!important;max-width:40px!important;height:40px!important;border-radius:999px!important;padding:0!important;display:grid!important;place-items:center!important}

.school-picker-shell{width:100%!important}
.school-picker-row-wide{display:grid!important;grid-template-columns:minmax(0,1fr) auto auto!important;align-items:center!important;gap:10px!important;width:100%!important}
.school-picker-row-wide .school-display{width:100%!important;min-width:0!important;flex:unset!important}
.school-picker-action,.school-picker-clear{min-height:40px!important;white-space:nowrap!important;padding:0 14px!important}
@media (max-width:980px){.school-picker-row-wide{grid-template-columns:1fr!important}}

.exam-builder-page .exam-builder-shell{padding:18px!important;border-radius:18px!important}
.exam-builder-page .exam-builder-head{align-items:center!important}
.exam-builder-page .exam-builder-grid{grid-template-columns:repeat(12,minmax(0,1fr))!important;gap:12px!important}
.exam-builder-page .exam-builder-grid > label:not(.span-all),
.exam-builder-page .exam-builder-grid > .setting-row:not(.span-all){grid-column:span 4}
.exam-builder-page .exam-builder-grid > .span-all,
.exam-builder-page .exam-builder-grid > .stack{grid-column:1 / -1!important}
.exam-builder-page .form-section-title{grid-column:1 / -1!important;margin:4px 0 0!important;padding:0 0 6px!important;border-bottom:1px solid var(--line)!important;font-size:13px!important;font-weight:800!important;letter-spacing:.04em;text-transform:uppercase;color:#5e6d8a!important}
.exam-builder-page input,
.exam-builder-page select,
.exam-builder-page textarea{min-height:42px!important;border-radius:10px!important}
.exam-builder-page textarea{min-height:108px!important;padding-top:10px!important}
.exam-builder-page .setting-row{padding:12px 14px!important;border-radius:12px!important;border:1px solid var(--line)!important;background:rgba(255,255,255,.72)!important}
.exam-builder-page .horado-question-builder{padding:14px!important;border-radius:14px!important;border:1px solid var(--line)!important;background:rgba(255,255,255,.72)!important}
.exam-builder-page .horado-question-builder .section-head h3,
.exam-builder-page .horado-question-builder .section-head h4{font-size:17px!important}
.exam-builder-page .horado-question-builder .card.soft{padding:12px!important;border-radius:12px!important;border:1px solid var(--line)!important;background:#fbfcff!important;box-shadow:none!important}
.exam-builder-page .exam-builder-actions{justify-content:flex-start!important;gap:10px!important}
@media (max-width:1100px){
  .exam-builder-page .exam-builder-grid > label:not(.span-all),
  .exam-builder-page .exam-builder-grid > .setting-row:not(.span-all){grid-column:span 6}
}
@media (max-width:720px){
  .exam-builder-page .exam-builder-grid > label,
  .exam-builder-page .exam-builder-grid > .setting-row{grid-column:1 / -1!important}
}

/* v21 exam runner + status timeline refinement */
.exam-runner-head-spacious{margin-bottom:18px!important}
.take-question-stack{gap:18px!important}
.exam-question-card{padding:18px 20px!important;border-radius:18px!important}
.exam-question-copy-spacious{display:grid;gap:14px}
.rich-question-text{display:grid;gap:12px;min-width:0}
.rich-question-prose{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.35}
.exam-question-rich .rich-question-prose{font-size:20px;font-weight:800;color:var(--text);line-height:1.35}
.admin-question-preview{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;align-items:start;font-weight:600}
.admin-question-preview .rich-question-text{gap:8px}
.admin-question-preview .rich-question-prose{font-weight:600}
.question-code-block{overflow:hidden;border:1px solid #3c3c3c;border-radius:8px;background:#1e1e1e;color:#d4d4d4;box-shadow:0 10px 24px rgba(15,23,42,.10);max-width:100%}
.question-code-head{display:flex;align-items:center;justify-content:flex-start;gap:10px;min-height:28px;padding:3px 10px;background:#2d2d2d;border-bottom:1px solid #3a3a3a}
.question-code-lang{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;font-size:12px;line-height:1;color:#c8c8c8}
.question-code-block pre{margin:0;padding:14px 16px;overflow:auto;white-space:pre;tab-size:4;background:#1e1e1e}
.question-code-block code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;font-size:13px;line-height:1.55;color:inherit}
.tok-keyword{color:#569cd6}.tok-type{color:#4ec9b0}.tok-string{color:#ce9178}.tok-comment{color:#6a9955;font-style:italic}.tok-number{color:#b5cea8}.tok-function{color:#dcdcaa}.tok-variable{color:#9cdcfe}.tok-operator{color:#d4d4d4}.tok-punctuation{color:#808080}
.data-table .rich-question-text{min-width:260px;gap:8px}
.data-table .question-code-block pre{max-height:240px}
.exam-answer-list-spacious{display:grid;gap:12px;margin-top:8px}
.exam-choice-card{align-items:flex-start!important;gap:14px!important;padding:14px 16px!important;min-height:72px}
.exam-choice-card.has-image{padding-top:16px!important;padding-bottom:16px!important}
.choice-copy{display:flex;flex-direction:column;gap:10px;min-width:0}
.choice-textarea{display:grid!important;gap:10px!important;padding:16px!important}
.choice-helper-label{display:block;margin:0!important}
.question-media-wrap,.option-media-wrap{display:block}
.exam-media{display:block;max-width:100%;height:auto;border:1px solid var(--line);background:#fff}
.exam-media-question{width:min(100%,760px);max-height:520px;object-fit:contain;border-radius:18px;box-shadow:0 10px 28px rgba(15,23,42,.08)}
.exam-media-option{width:min(100%,420px);max-height:300px;object-fit:contain;border-radius:16px}
.exam-nav-row{margin-top:14px!important}
.exam-runner-side .question-map{margin-top:6px}
.exam-runner-side .qdot{min-height:40px}
#examGuardModal .prompt-card{max-width:540px}
#examGuardModal .prompt-actions{justify-content:flex-end}
.status-strip-track-wrap{overflow-x:auto;padding-bottom:8px}
.status-strip-track{display:flex!important;flex-wrap:nowrap!important;gap:6px!important;min-width:max-content!important}
.status-strip-bar,button.status-strip-bar{flex:0 0 14px!important;width:14px!important;height:38px!important;min-height:38px!important;border-radius:4px!important;position:relative}
.status-strip-bar::after{content:'';position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px rgba(255,255,255,.18)}
.overall-strip-row .status-strip-track{padding-bottom:2px}
.overall-strip-row .status-strip-meta{margin-top:14px}
@media (max-width:980px){
  .exam-question-card{padding:16px!important}
  .exam-media-question{width:100%;max-height:420px}
  .exam-media-option{width:100%;max-height:260px}
}

/* Horado exam/monitor/user-edit fixes */
.force-action-labels .button,
.force-action-labels .button.small{gap:8px!important;padding-inline:12px!important;white-space:nowrap!important}
.force-action-labels .btn-label{display:inline-flex!important}

.unified-edit-form .school-picker-shell,
.clean-create-form .school-picker-shell{width:100%!important;min-width:0!important}
.unified-edit-form .school-picker-row-wide,
.clean-create-form .school-picker-row-wide{display:grid!important;grid-template-columns:minmax(0,1fr) max-content max-content!important;gap:8px!important;align-items:center!important;width:100%!important}
.unified-edit-form .school-picker-row-wide .school-display,
.clean-create-form .school-picker-row-wide .school-display{width:100%!important;min-width:0!important}
.unified-edit-form .school-picker-row-wide .button,
.clean-create-form .school-picker-row-wide .button{min-height:40px!important;padding:0 14px!important;white-space:nowrap!important;flex:0 0 auto!important}
@media (max-width:980px){
  .unified-edit-form .school-picker-row-wide,
  .clean-create-form .school-picker-row-wide{grid-template-columns:1fr!important}
}


/* edubot adjustments */
.status-shell,.status-page,.status-overview-head,.status-day-grid,.status-history-list,.status-component-list{max-width:100%;overflow-x:hidden}
.status-day-grid.refined{width:100%;overflow:hidden}
.admin-user-edit-page .school-picker-row-wide{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:center}
.admin-user-edit-page .school-picker-row-wide .school-display{width:100%;min-width:0}
.exam-settings-top{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;align-items:end}
.compact-input label span,.clean-create-form label span{min-width:0!important;width:auto!important;display:block;margin-bottom:6px}
.clean-create-form input,.clean-create-form select,.clean-create-form textarea{min-height:40px!important;padding:10px 12px!important}
.clean-create-form textarea{min-height:88px}
.class-pill-group,.class-level-tiles{display:flex;flex-wrap:wrap;gap:8px}
.class-tile span{min-width:36px;min-height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px}
.search-result-actions .button.small{min-width:110px;justify-content:center}

/* v5 monitor/theme/button fixes */
:root{
  --accent:#022a5e;
  --accent-2:#e7d198;
  --accent-soft:rgba(231,209,152,.28);
  --student:#022a5e;
}
body{
  background:
    radial-gradient(900px 360px at -10% -10%, rgba(2,42,94,.10), transparent 60%),
    radial-gradient(800px 320px at 110% 0%, rgba(231,209,152,.20), transparent 56%),
    linear-gradient(180deg,#eef2f8 0%, #e8edf5 58%, #eef2f8 100%) !important;
}
.brand-mark{background:linear-gradient(135deg,var(--accent),var(--accent-2))!important}
.nav-link.active,.nav-group.is-open .nav-group-trigger,.status-history-state,.theme-toggle-btn,.school-code,.school-kind,.qdot,.choice-key{
  color:var(--accent)!important;
}
.nav-link.active,.nav-group.is-open .nav-group-trigger,.status-history-state,.theme-toggle-btn,.school-code,.school-kind,.qdot,.choice-key{
  background:rgba(231,209,152,.20)!important;
  border-color:rgba(2,42,94,.16)!important;
}
.button,.button.secondary,.button.warn,.button.danger,.button.success,button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  vertical-align:middle!important;
  line-height:1.1!important;
}
.button .icon-svg,button .icon-svg{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:18px!important;
  height:18px!important;
  flex:0 0 18px!important;
}
.button .icon-svg svg,button .icon-svg svg{
  width:18px!important;
  height:18px!important;
  display:block!important;
}
.status-shell,.status-page,.status-page > *,main,.main-shell,.content-max,.page-body,.status-strip-track{min-width:0!important;max-width:100%!important}
.status-strip-track,.status-day-grid.refined{overflow-x:auto!important}



/* === Sidebar Rail v2 redesign — merged safely without Laravel Mix === */
:root{
  --ss-navy:#022a5e;
  --ss-gold:#e7d198;
  --ss-rail-w:76px;
  --ss-sidebar-w:318px;
}
.app-shell.app-shell-v2{
  display:grid !important;
  grid-template-columns:var(--ss-sidebar-w) minmax(0,1fr) !important;
  min-height:100vh !important;
  height:100vh !important;
  align-items:stretch !important;
  overflow:hidden !important;
  background:#f7f8fb !important;
}
.sidebar-left.sidebar-left-v2{
  width:var(--ss-sidebar-w) !important;
  min-width:var(--ss-sidebar-w) !important;
  max-width:var(--ss-sidebar-w) !important;
  height:100vh !important;
  min-height:100vh !important;
  position:sticky !important;
  top:0 !important;
  left:0 !important;
  display:grid !important;
  grid-template-columns:var(--ss-rail-w) minmax(0,1fr) !important;
  padding:0 !important;
  margin:0 !important;
  border-radius:0 !important;
  border:0 !important;
  overflow:hidden !important;
  background:#fff7e7 !important;
  box-shadow:8px 0 30px rgba(2,42,94,.08) !important;
}
.sidebar-v2-rail{
  height:100vh !important;
  min-height:100vh !important;
  background:var(--ss-navy) !important;
  color:var(--ss-gold) !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  gap:14px !important;
  padding:14px 8px !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
}
.rail-v2-brand{
  width:48px !important;
  height:48px !important;
  min-height:48px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:16px !important;
  background:rgba(231,209,152,.14) !important;
  border:1px solid rgba(231,209,152,.28) !important;
  margin-bottom:4px !important;
}
.rail-v2-brand img{
  width:30px !important;
  height:30px !important;
  object-fit:contain !important;
}
.rail-v2-nav{
  width:100% !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:stretch !important;
  gap:6px !important;
}
.rail-v2-form{margin:0 !important;padding:0 !important;width:100% !important;}
.rail-v2-link{
  width:100% !important;
  min-height:58px !important;
  border:0 !important;
  border-radius:16px !important;
  background:transparent !important;
  color:rgba(255,255,255,.78) !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:5px !important;
  text-decoration:none !important;
  cursor:pointer !important;
  padding:8px 4px !important;
  transition:background .18s ease,color .18s ease,transform .18s ease !important;
  font:inherit !important;
  text-align:center !important;
}
.rail-v2-link:hover,
.rail-v2-link.active{
  background:rgba(231,209,152,.16) !important;
  color:var(--ss-gold) !important;
  transform:translateY(-1px) !important;
}
.rail-v2-ico,
.rail-v2-ico svg{
  width:22px !important;
  height:22px !important;
  display:grid !important;
  place-items:center !important;
  flex:0 0 auto !important;
}
.rail-v2-ico svg,
.rail-v2-ico svg *{
  stroke:currentColor !important;
}
.rail-v2-label{
  max-width:62px !important;
  font-size:10px !important;
  font-weight:800 !important;
  line-height:1.05 !important;
  letter-spacing:-.02em !important;
  white-space:normal !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
.sidebar-main-panel-v2{
  height:100vh !important;
  min-height:100vh !important;
  background:linear-gradient(180deg,#fff8e7 0%,#fffdf7 52%,#f8f3e8 100%) !important;
  border-right:1px solid rgba(2,42,94,.10) !important;
  box-shadow:none !important;
  border-radius:0 !important;
  padding:18px 16px !important;
  display:flex !important;
  flex-direction:column !important;
  gap:16px !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
}
.sidebar-top-v2{
  display:grid !important;
  gap:12px !important;
  flex:0 0 auto !important;
}
.sidebar-brand-v2{
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  padding:0 2px !important;
}
.sidebar-brand-v2 .brand-mark{
  width:42px !important;
  height:42px !important;
  border-radius:14px !important;
  background:#fff !important;
  display:grid !important;
  place-items:center !important;
  box-shadow:0 8px 18px rgba(2,42,94,.08) !important;
}
.sidebar-brand-v2 .brand-mark img{
  width:30px !important;
  height:30px !important;
  object-fit:contain !important;
}
.sidebar-brand-copy{
  display:grid !important;
  line-height:1.1 !important;
}
.sidebar-brand-copy strong{
  font-size:16px !important;
  color:var(--ss-navy) !important;
  font-weight:900 !important;
}
.sidebar-brand-copy span{
  font-size:12px !important;
  color:#7b6c4d !important;
  font-weight:700 !important;
}
.profile-mini-card-v2{
  width:100% !important;
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  padding:10px !important;
  border-radius:18px !important;
  border:1px solid rgba(2,42,94,.10) !important;
  background:rgba(255,255,255,.76) !important;
  box-shadow:0 10px 26px rgba(2,42,94,.07) !important;
  text-decoration:none !important;
}
.side-nav-v2{
  display:grid !important;
  gap:12px !important;
  flex:1 1 auto !important;
}
.nav-group-v2{
  border:0 !important;
  background:transparent !important;
  border-radius:0 !important;
  overflow:visible !important;
}
.nav-group-trigger-v2{
  width:100% !important;
  min-height:34px !important;
  border:0 !important;
  background:transparent !important;
  color:#6f6249 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  padding:0 4px !important;
  text-transform:uppercase !important;
  font-size:11px !important;
  font-weight:900 !important;
  letter-spacing:.08em !important;
  cursor:pointer !important;
}
.nav-group-panel-v2{
  display:grid !important;
  gap:5px !important;
  padding-top:3px !important;
}
.nav-link-v2{
  min-height:42px !important;
  border-radius:14px !important;
  padding:9px 10px !important;
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  color:#263247 !important;
  background:transparent !important;
  border:1px solid transparent !important;
  text-decoration:none !important;
  font-weight:750 !important;
  transition:background .16s ease,color .16s ease,border-color .16s ease,transform .16s ease !important;
}
.nav-link-v2:hover{
  background:rgba(2,42,94,.07) !important;
  color:var(--ss-navy) !important;
  transform:translateX(2px) !important;
}
.nav-link-v2.active{
  background:var(--ss-navy) !important;
  color:var(--ss-gold) !important;
  border-color:rgba(231,209,152,.28) !important;
  box-shadow:0 10px 22px rgba(2,42,94,.16) !important;
}
.nav-link-v2 .nav-ico,
.nav-link-v2 .nav-ico svg{
  width:20px !important;
  height:20px !important;
  flex:0 0 20px !important;
  display:grid !important;
  place-items:center !important;
}
.nav-link-v2 .nav-ico svg,
.nav-link-v2 .nav-ico svg *{
  stroke:currentColor !important;
}
.sidebar-footer-v2{
  display:grid !important;
  gap:8px !important;
  flex:0 0 auto !important;
  padding-top:8px !important;
}
.docs-link-v2{
  border-radius:14px !important;
  padding:10px !important;
  background:rgba(2,42,94,.06) !important;
  color:var(--ss-navy) !important;
  font-weight:800 !important;
}
.main-shell-v2{
  min-width:0 !important;
  height:100vh !important;
  overflow-y:auto !important;
  background:#f8fafc !important;
}
.main-shell-v2>.content-max{
  min-width:0 !important;
  max-width:none !important;
}
@media (max-width: 1100px){
  .app-shell.app-shell-v2{
    grid-template-columns:1fr !important;
  }
  .sidebar-left.sidebar-left-v2{
    position:fixed !important;
    z-index:1000 !important;
    transform:translateX(-100%) !important;
    transition:transform .2s ease !important;
  }
  .sidebar-left.sidebar-left-v2.is-open,
  body.sidebar-open .sidebar-left.sidebar-left-v2{
    transform:translateX(0) !important;
  }
}

/* === v91 Exam-platform shell and Exam Studio polish === */
:root{
  --studio-green:#4f8450;
  --studio-green-dark:#356d3c;
  --studio-rail:#222426;
  --studio-navy:#0f2d5f;
  --studio-ink:#27314c;
  --studio-muted:#727d98;
  --studio-line:#dfe5ef;
  --studio-soft:#f3f6fa;
  --studio-card:#ffffff;
  --studio-purple:#9b4fa5;
  --studio-gold:#e8d19a;
  --radius-xl:8px;
  --radius-lg:8px;
  --radius-md:8px;
  --radius-sm:6px;
  --shadow:0 14px 34px rgba(22,34,55,.08);
  --shadow-soft:0 8px 22px rgba(22,34,55,.06);
}
body,
button,
input,
select,
textarea,
h1,
h2,
h3,
h4,
h5,
.eyebrow,
.pill,
.rail-v2-label,
.nav-group-trigger-v2,
.data-table th,
table th{letter-spacing:0!important}
body{
  background:#f3f5f8!important;
  color:var(--studio-ink)!important;
}
.app-shell.app-shell-v2{
  grid-template-columns:302px minmax(0,1fr)!important;
  background:#f3f5f8!important;
}
.sidebar-left.sidebar-left-v2{
  width:302px!important;
  min-width:302px!important;
  max-width:302px!important;
  grid-template-columns:72px minmax(0,1fr)!important;
  box-shadow:8px 0 28px rgba(20,32,52,.08)!important;
  background:#edf3ef!important;
}
.sidebar-v2-rail{
  background:var(--studio-rail)!important;
  color:#f4f0e4!important;
  padding:10px 8px!important;
  gap:10px!important;
}
.rail-v2-brand{
  width:52px!important;
  height:52px!important;
  min-height:52px!important;
  border-radius:50%!important;
  background:#f4f0e4!important;
  border-color:rgba(255,255,255,.2)!important;
}
.rail-v2-link{
  min-height:66px!important;
  border-radius:8px!important;
  color:rgba(255,255,255,.76)!important;
  box-shadow:none!important;
}
.rail-v2-link:hover,
.rail-v2-link.active{
  background:var(--studio-green)!important;
  color:#fff!important;
  transform:none!important;
}
.rail-v2-label{
  font-size:11px!important;
  line-height:1.1!important;
  max-width:64px!important;
}
.sidebar-main-panel-v2{
  background:#eef6f1!important;
  border-right:1px solid #dbe6dd!important;
  padding:16px 14px!important;
  gap:14px!important;
}
.sidebar-brand-v2 .brand-mark{
  background:transparent!important;
  box-shadow:none!important;
  width:112px!important;
  height:auto!important;
}
.sidebar-brand-v2 .brand-mark img{
  width:112px!important;
  max-width:112px!important;
  height:auto!important;
}
.sidebar-brand-copy strong{color:var(--studio-navy)!important}
.sidebar-brand-copy span{color:#58656f!important}
.profile-mini-card-v2{
  border-radius:8px!important;
  background:#fff!important;
  box-shadow:none!important;
  border-color:#dce4ef!important;
}
.nav-group-trigger-v2{
  color:#778096!important;
  min-height:28px!important;
  padding:0 2px!important;
}
.nav-link-v2{
  min-height:40px!important;
  border-radius:8px!important;
  color:#27314c!important;
  padding:8px 10px!important;
}
.nav-link-v2:hover{
  background:#e0eee5!important;
  color:var(--studio-green-dark)!important;
  transform:none!important;
}
.nav-link-v2.active{
  background:var(--studio-navy)!important;
  color:#fff!important;
  border-color:var(--studio-navy)!important;
  box-shadow:0 8px 18px rgba(15,45,95,.14)!important;
}
.nav-link-v2 .nav-ico{
  background:rgba(79,132,80,.10)!important;
  border-radius:6px!important;
}
.nav-link-v2.active .nav-ico{background:rgba(255,255,255,.12)!important}
.docs-link-v2{
  background:#e2ebe5!important;
  border-radius:8px!important;
}
.main-shell-v2{
  background:#f3f5f8!important;
}
.main-shell-v2>.content-max{
  display:block!important;
  width:100%!important;
  max-width:none!important;
}
.context-topbar{
  position:sticky;
  top:0;
  z-index:70;
  min-height:76px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:12px 24px;
  background:var(--studio-green);
  color:#fff;
  border-bottom:1px solid rgba(255,255,255,.16);
  box-shadow:0 10px 24px rgba(28,63,34,.14);
}
.context-menu-btn{
  display:grid!important;
  place-items:center!important;
  width:42px!important;
  height:42px!important;
  min-height:42px!important;
  padding:0!important;
  border-radius:50%!important;
  background:rgba(255,255,255,.14)!important;
  color:#fff!important;
  box-shadow:none!important;
}
#sidebarToggle.context-menu-btn{
  display:grid!important;
  place-items:center!important;
}
.context-title-block{
  min-width:0;
  display:grid;
  gap:2px;
}
.context-breadcrumb{
  display:flex;
  align-items:center;
  gap:8px;
  color:rgba(255,255,255,.74);
  font-size:13px;
  font-weight:800;
}
.context-breadcrumb span+span::before{
  content:"›";
  margin-right:8px;
  color:rgba(255,255,255,.55);
}
.context-title-block h1{
  margin:0;
  font-size:24px;
  line-height:1.15;
  font-weight:900;
}
.context-title-block p{
  margin:0;
  color:rgba(255,255,255,.80);
  font-size:14px;
}
.context-actions,
.context-action-buttons,
.context-meta{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  flex-wrap:wrap;
}
.context-topbar .button,
.context-topbar button{
  min-height:40px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.16)!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.22)!important;
  box-shadow:none!important;
}
.context-topbar .button:not(.secondary){
  background:var(--studio-purple)!important;
  border-color:rgba(255,255,255,.16)!important;
}
.top-strip-group{
  padding:14px 24px 0!important;
  display:grid!important;
  gap:10px!important;
}
.breadcrumb-bar{display:none!important}
.page-body{
  padding:14px 24px 34px!important;
  gap:14px!important;
}
.beta-banner{
  border-radius:8px!important;
  padding:12px 16px!important;
  background:#f9edbd!important;
  border-color:#e8cd72!important;
  box-shadow:none!important;
}
.server-strip,
.card,
.metric-card,
.overview-card,
.school-card,
.search-result,
.overlay-card{
  border-radius:8px!important;
  border:1px solid var(--studio-line)!important;
  background:#fff!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
}
.server-strip{
  padding:16px 18px!important;
}
.server-strip-grid,
.stats-grid{
  gap:12px!important;
}
.server-stat,
.metric-card{
  border-radius:8px!important;
  border:1px solid var(--studio-line)!important;
  background:#fff!important;
}
.metric-card{
  min-height:94px;
  padding:16px 18px!important;
}
.metric-card.accent{
  border-color:#cbd8ed!important;
  background:#f9fbff!important;
}
.metric-value{
  font-size:30px!important;
  line-height:1!important;
}
.dashboard-page .dashboard-grid{
  grid-template-columns:minmax(0,1.45fr) minmax(340px,.55fr)!important;
  gap:14px!important;
}
.dashboard-page .card.strong{
  padding:18px!important;
}
.dashboard-page .section-head h2{
  font-size:20px!important;
}
.data-table,
table{
  border-spacing:0 10px!important;
}
.data-table th,
table th{
  font-size:12px!important;
  color:#737f99!important;
}
.data-table td,
table td{
  background:#fff!important;
  border-color:#dfe5ef!important;
  padding:12px 14px!important;
}
.data-table td:first-child,
table td:first-child{
  border-radius:8px 0 0 8px!important;
}
.data-table td:last-child,
table td:last-child{
  border-radius:0 8px 8px 0!important;
}
.chart-stage{
  grid-template-columns:230px minmax(0,1fr)!important;
}
.donut{
  background:conic-gradient(var(--studio-green) calc(var(--value)*1%), #e8edf5 0)!important;
}
.meter-fill{
  background:linear-gradient(90deg,var(--studio-green),#b693e8)!important;
}
.button,
button{
  border-radius:8px!important;
  background:var(--studio-navy)!important;
  box-shadow:none!important;
}
.button:hover,
button:hover{
  transform:none!important;
  box-shadow:none!important;
}
.button.secondary{
  background:#fff!important;
  color:var(--studio-ink)!important;
  border:1px solid var(--studio-line)!important;
}
.button.danger{
  background:#d95361!important;
  color:#fff!important;
}
.button.ghost{
  background:transparent!important;
  border:1px solid transparent!important;
  color:inherit!important;
}
input,
select,
textarea{
  border-radius:8px!important;
  border-color:#dbe3ee!important;
  box-shadow:none!important;
}
input:focus,
select:focus,
textarea:focus{
  border-color:var(--studio-green)!important;
  box-shadow:0 0 0 3px rgba(79,132,80,.14)!important;
}
.exam-builder-page .exam-builder-shell{
  padding:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  border:0!important;
}
.exam-builder-page .exam-builder-head{
  margin-bottom:12px!important;
}
.exam-builder-page .exam-builder-head h2{
  margin:0!important;
  font-size:18px!important;
}
.exam-studio-shell{
  display:grid;
  gap:12px;
}
.studio-error-list{
  border:1px solid rgba(217,83,97,.28);
  background:#fff4f5;
  color:#8b2d39;
  border-radius:8px;
  padding:12px 14px;
}
.studio-error-list ul{
  margin:8px 0 0;
  padding-left:18px;
}
.exam-studio-layout{
  display:grid;
  grid-template-columns:210px minmax(0,1fr) 300px;
  gap:12px;
  align-items:start;
}
.exam-studio-workflow,
.studio-panel,
.studio-summary-card{
  border:1px solid var(--studio-line);
  background:#fff;
  border-radius:8px;
  box-shadow:none;
}
.exam-studio-workflow{
  position:sticky;
  top:92px;
  display:grid;
  gap:10px;
  padding:12px;
}
.studio-brandline{
  display:flex;
  gap:10px;
  align-items:center;
  padding:6px 4px 10px;
  border-bottom:1px solid var(--studio-line);
}
.studio-brandline strong,
.studio-summary-head h3,
.studio-panel-head h3,
.studio-question-head h4,
.studio-subhead h4{
  margin:0;
  color:var(--studio-ink);
}
.studio-brandline small,
.studio-step-copy small,
.studio-workflow-foot,
.studio-kicker{
  color:var(--studio-muted);
  font-size:12px;
  font-weight:800;
}
.studio-brandmark{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:8px;
  background:#edf6ef;
  color:var(--studio-green);
  flex:0 0 34px;
}
.studio-step{
  width:100%;
  display:grid!important;
  grid-template-columns:34px minmax(0,1fr);
  align-items:center;
  gap:10px;
  min-height:64px!important;
  padding:10px!important;
  border:1px solid var(--studio-line)!important;
  background:#fff!important;
  color:var(--studio-ink)!important;
  text-align:left!important;
}
.studio-step.is-active{
  background:#edf6ef!important;
  border-color:#bfd7c5!important;
}
.studio-step-index{
  width:34px;
  height:34px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#eef2f6;
  color:var(--studio-navy);
  font-weight:900;
}
.studio-step.is-active .studio-step-index{
  background:var(--studio-green);
  color:#fff;
}
.studio-step-copy{
  display:grid;
  gap:2px;
  min-width:0;
}
.studio-workflow-foot{
  padding:10px;
  border-radius:8px;
  background:#f5f7fa;
}
.exam-studio-main{
  min-width:0;
}
.studio-panel{
  display:none;
  padding:18px;
}
.studio-panel.is-active{
  display:grid;
  gap:18px;
}
.studio-panel-head,
.studio-question-head,
.studio-summary-head,
.studio-option-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
}
.studio-kicker{
  text-transform:uppercase;
}
.studio-panel-head h3{
  font-size:24px;
  line-height:1.15;
}
.studio-panel-badge,
.q-status{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:5px 9px;
  border-radius:999px;
  background:#eef2f6;
  color:#526079;
  font-size:12px;
  font-weight:900;
}
.studio-form-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.studio-form-grid.compact{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.studio-field{
  display:grid;
  gap:7px;
  min-width:0;
  color:var(--studio-ink);
  font-weight:800;
}
.studio-field.span-2{grid-column:span 2}
.studio-field.span-all{grid-column:1 / -1}
.studio-section-split{
  display:grid;
  gap:12px;
  padding-top:16px;
  border-top:1px solid var(--studio-line);
}
.studio-subhead{
  display:grid;
  gap:3px;
}
.exam-question-shell{
  display:none;
}
.exam-question-shell.is-active{
  display:grid;
}
.studio-question-builder{
  display:grid;
  gap:12px;
}
.studio-question-card{
  gap:16px;
  padding:16px;
  border:1px solid var(--studio-line);
  border-radius:8px;
  background:#fbfcfe;
}
.studio-question-head h4{
  font-size:20px;
}
.studio-field-stack{
  display:grid;
  gap:14px;
}
.studio-question-text textarea{
  min-height:150px!important;
}
.studio-image-field{
  background:#fff;
  padding:12px;
  border:1px dashed #cfd8e6;
  border-radius:8px;
}
.exam-thumb-preview{
  margin-top:8px;
}
.exam-thumb-preview img{
  width:min(240px,100%);
  max-height:170px;
  object-fit:cover;
  border-radius:8px;
  border:1px solid var(--studio-line);
}
.studio-option-head h5{
  margin:0;
  font-size:16px;
}
.question-option-list{
  display:grid;
  gap:10px;
  margin-top:10px;
}
.studio-option-row{
  padding:12px;
  border:1px solid var(--studio-line);
  background:#fff;
  border-radius:8px;
}
.studio-option-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) 130px auto 42px;
  gap:10px;
  align-items:start;
}
.studio-check-row{
  min-height:42px;
  display:flex!important;
  align-items:center;
  gap:8px;
  padding:10px 12px;
  border:1px solid var(--studio-line);
  border-radius:8px;
  background:#f8fafc;
  font-weight:900;
}
.studio-check-row input[type="checkbox"]{
  width:18px!important;
  height:18px!important;
  padding:0!important;
}
.studio-remove-option{
  width:42px!important;
  height:42px!important;
  min-height:42px!important;
  padding:0!important;
  color:#b13d4a!important;
  border-color:#f0c9cf!important;
}
.exam-studio-summary{
  position:sticky;
  top:92px;
  display:grid;
  gap:12px;
  min-width:0;
}
.studio-summary-card{
  padding:14px;
  display:grid;
  gap:12px;
}
.studio-summary-head.compact{
  align-items:flex-start;
}
.studio-live-dot{
  width:10px;
  height:10px;
  border-radius:50%;
  background:var(--studio-green);
  box-shadow:0 0 0 5px rgba(79,132,80,.12);
}
.studio-summary-list{
  display:grid;
  gap:8px;
  margin:0;
}
.studio-summary-list div{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:9px 0;
  border-bottom:1px solid var(--studio-line);
}
.studio-summary-list dt{
  color:var(--studio-muted);
  font-weight:800;
}
.studio-summary-list dd{
  margin:0;
  font-weight:900;
}
.studio-action-stack{
  display:grid;
  gap:8px;
}
.studio-action-stack .button{
  width:100%;
  min-height:42px!important;
}
.studio-primary-action{
  background:var(--studio-purple)!important;
}
.exam-question-nav{
  display:grid;
  gap:8px;
  max-height:44vh;
  overflow:auto;
  padding-right:2px;
}
.exam-question-nav-btn{
  width:100%;
  min-height:58px!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  padding:10px!important;
  border:1px solid var(--studio-line)!important;
  border-radius:8px!important;
  background:#fff!important;
  color:var(--studio-ink)!important;
  text-align:left!important;
}
.exam-question-nav-btn.is-active{
  border-color:#b8d2c0!important;
  background:#edf6ef!important;
}
.exam-qnav-main{
  display:grid;
  gap:2px;
  min-width:0;
}
.exam-qnav-main strong,
.exam-qnav-main small{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.exam-qnav-main small{
  color:var(--studio-muted);
  font-size:12px;
  font-weight:800;
}
.q-status.is-ready{
  color:#27623b;
  background:#e6f4ea;
}
.q-status.is-warning{
  color:#8b6819;
  background:#fff3cf;
}
.q-status.is-draft{
  color:#7b8191;
  background:#eef2f6;
}
.exam-hidden{
  display:none!important;
}
@media (max-width:1320px){
  .exam-studio-layout{
    grid-template-columns:190px minmax(0,1fr) 280px;
  }
  .studio-option-grid{
    grid-template-columns:minmax(0,1fr) 120px 42px;
  }
  .studio-option-grid .studio-image-field{
    grid-column:1 / -1;
  }
}
@media (max-width:1120px){
  .exam-studio-layout{
    grid-template-columns:1fr;
  }
  .exam-studio-workflow,
  .exam-studio-summary{
    position:static;
  }
  .exam-studio-workflow{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .studio-brandline,
  .studio-workflow-foot{
    grid-column:1 / -1;
  }
  .exam-question-nav{
    max-height:none;
  }
}
@media (max-width:1100px){
  .context-menu-btn{
    display:grid!important;
    place-items:center;
    flex:0 0 42px;
  }
  .app-shell.app-shell-v2{
    grid-template-columns:1fr!important;
  }
  .sidebar-left.sidebar-left-v2{
    width:302px!important;
    min-width:302px!important;
    max-width:302px!important;
  }
}
@media (max-width:900px){
  .context-topbar{
    align-items:flex-start;
    padding:12px 14px;
  }
  .context-actions{
    display:none;
  }
  .top-strip-group,
  .page-body{
    padding-left:14px!important;
    padding-right:14px!important;
  }
  .dashboard-page .dashboard-grid,
  .chart-stage,
  .studio-form-grid,
  .studio-form-grid.compact{
    grid-template-columns:1fr!important;
  }
  .studio-field.span-2{
    grid-column:1 / -1;
  }
}
@media (max-width:680px){
  .context-title-block h1{
    font-size:20px;
  }
  .context-title-block p,
  .context-breadcrumb{
    display:none;
  }
  .exam-studio-workflow{
    grid-template-columns:1fr;
  }
  .studio-brandline,
  .studio-workflow-foot{
    grid-column:auto;
  }
  .studio-option-grid{
    grid-template-columns:1fr;
  }
  .studio-remove-option{
    width:100%!important;
  }
}

/* === v94 Horado shell repair: module rail, compact topbar, Exam Studio modes === */
:root{
  --horado-spring:cubic-bezier(.2,.92,.18,1);
  --horado-spring-soft:cubic-bezier(.16,1,.3,1);
  --horado-rail-w:68px;
  --horado-sidebar-w:292px;
  --horado-topbar-h:54px;
}
html[data-animations="off"] *,
html[data-animations="off"] *::before,
html[data-animations="off"] *::after{
  animation:none!important;
  transition:none!important;
  scroll-behavior:auto!important;
}
.app-shell.app-shell-v2{
  grid-template-columns:var(--horado-sidebar-w) minmax(0,1fr)!important;
  gap:0!important;
  padding:0!important;
  min-height:100vh!important;
  height:100vh!important;
  background:#f4f6f8!important;
}
.main-shell-v2{
  height:100vh!important;
  min-width:0!important;
  overflow:auto!important;
}
.main-shell-v2>.content-max{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
}
.main-shell-v2>.content-max{
  padding:0!important;
  display:block!important;
}
.sidebar-left.sidebar-left-v2{
  width:var(--horado-sidebar-w)!important;
  min-width:var(--horado-sidebar-w)!important;
  max-width:var(--horado-sidebar-w)!important;
  grid-template-columns:var(--horado-rail-w) minmax(0,1fr)!important;
  height:100vh!important;
  min-height:100vh!important;
  top:0!important;
  overflow:hidden!important;
  box-shadow:7px 0 26px rgba(18,31,50,.08)!important;
}
.sidebar-v2-rail{
  height:100vh!important;
  padding:10px 7px!important;
  gap:0!important;
  overflow:hidden!important;
  background:#22272b!important;
}
.rail-v2-brand,
.sidebar-brand-copy{
  display:none!important;
}
.rail-v2-nav{
  height:100%!important;
  width:100%!important;
  display:flex!important;
  flex-direction:column!important;
  gap:7px!important;
  overflow:hidden!important;
}
.rail-v2-link{
  min-height:54px!important;
  border-radius:12px!important;
  color:rgba(255,255,255,.74)!important;
  padding:7px 4px!important;
  letter-spacing:0!important;
  transform:translateZ(0)!important;
  transition:transform .42s var(--horado-spring),background .32s var(--horado-spring),color .24s ease,box-shadow .32s var(--horado-spring)!important;
}
.rail-v2-link:hover,
.rail-v2-link:focus-visible{
  background:rgba(255,255,255,.10)!important;
  color:#fff!important;
  transform:translateX(2px) scale(1.025)!important;
}
.rail-v2-link.active{
  background:#4f8450!important;
  color:#fff!important;
  box-shadow:0 10px 24px rgba(79,132,80,.30)!important;
}
.rail-v2-label{
  max-width:58px!important;
  font-size:10.5px!important;
  line-height:1.08!important;
  letter-spacing:0!important;
}
.sidebar-main-panel-v2{
  height:100vh!important;
  padding:12px!important;
  gap:10px!important;
  overflow:hidden!important;
  background:#eef6f1!important;
}
.sidebar-top-v2{
  gap:8px!important;
}
.sidebar-brand-v2{
  min-height:34px!important;
  justify-content:center!important;
  padding:0!important;
}
.sidebar-brand-v2 .brand-mark{
  width:96px!important;
  height:30px!important;
  background:transparent!important;
  box-shadow:none!important;
}
.sidebar-brand-v2 .brand-mark img{
  width:96px!important;
  max-width:96px!important;
  height:auto!important;
}
.profile-mini-card-v2{
  padding:8px!important;
  gap:8px!important;
  border-radius:8px!important;
}
.profile-mini-card-v2 .avatar{
  width:42px!important;
  height:42px!important;
}
.sidebar-module-heading{
  display:grid;
  gap:2px;
  padding:8px 10px;
  border:1px solid #dbe7df;
  border-radius:8px;
  background:#f8fbf9;
}
.sidebar-module-heading span{
  color:#75829a;
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:0!important;
}
.sidebar-module-heading strong{
  color:#263247;
  font-size:16px;
  line-height:1.15;
}
.module-nav-v2{
  flex:0 0 auto!important;
  display:grid!important;
  gap:6px!important;
  overflow:hidden!important;
}
.nav-v2-form{
  margin:0!important;
}
.nav-link-v2{
  min-height:40px!important;
  border-radius:8px!important;
  padding:8px 10px!important;
  transition:transform .34s var(--horado-spring),background .24s ease,color .18s ease,border-color .2s ease,box-shadow .32s var(--horado-spring)!important;
}
.nav-link-v2:hover,
.nav-link-v2:focus-visible{
  transform:translateX(3px)!important;
  background:#dfefe5!important;
}
.nav-link-v2.active{
  box-shadow:0 12px 22px rgba(15,45,95,.16)!important;
}
.sidebar-footer-v2{
  margin-top:auto!important;
  gap:6px!important;
  padding-top:8px!important;
}
.docs-link-v2{
  min-height:34px!important;
  padding:7px 9px!important;
}
.version-pill{
  font-size:10px!important;
}
.context-topbar{
  min-height:var(--horado-topbar-h)!important;
  padding:7px 18px!important;
  gap:12px!important;
  background:#4f8450!important;
  box-shadow:0 8px 22px rgba(28,63,34,.13)!important;
}
.context-menu-btn{
  width:38px!important;
  height:38px!important;
  min-height:38px!important;
  transition:transform .36s var(--horado-spring),background .24s ease!important;
}
.context-menu-btn:hover{
  transform:scale(1.05)!important;
}
.context-title-block{
  gap:0!important;
}
.context-title-block h1{
  font-size:19px!important;
  line-height:1.08!important;
}
.context-title-block p{
  display:none!important;
}
.context-breadcrumb{
  font-size:11px!important;
  line-height:1.1!important;
}
.top-strip-group{
  padding:8px 18px 0!important;
  gap:8px!important;
}
.beta-banner{
  min-height:34px!important;
  padding:7px 11px!important;
  border-radius:8px!important;
  box-shadow:none!important;
}
.beta-banner-icon{
  width:24px!important;
  height:24px!important;
}
.server-strip{
  padding:9px 11px!important;
  border-radius:8px!important;
}
.server-strip-title{
  margin-bottom:7px!important;
}
.server-strip-grid{
  gap:8px!important;
}
.server-stat{
  min-height:44px!important;
  padding:8px 10px!important;
}
.server-stat strong{
  font-size:17px!important;
}
.page-body{
  padding:12px 18px 28px!important;
}
.exam-builder-page .page-body{
  padding-top:10px!important;
}
.button,
button{
  transition:transform .34s var(--horado-spring),background .24s ease,color .18s ease,border-color .2s ease,box-shadow .34s var(--horado-spring)!important;
}
.button:hover,
button:hover{
  transform:translateY(-1px)!important;
  box-shadow:0 10px 22px rgba(15,45,95,.12)!important;
}
.settings-shell .studio-mode-setting{
  align-items:flex-start!important;
}
.studio-mode-options{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:7px;
  min-width:min(420px,100%);
}
.studio-mode-option{
  position:relative;
  display:grid!important;
  place-items:center;
  min-height:38px;
  padding:0!important;
  border:1px solid #dbe3ee;
  border-radius:8px;
  background:#fff;
  color:#27314c;
  font-weight:900;
  cursor:pointer;
  transition:transform .3s var(--horado-spring),border-color .2s ease,background .2s ease,color .2s ease!important;
}
.studio-mode-option input{
  position:absolute;
  opacity:0;
  inset:0;
}
.studio-mode-option:has(input:checked){
  border-color:#4f8450;
  background:#edf6ef;
  color:#356d3c;
}
.studio-mode-option:hover{
  transform:translateY(-1px);
}
.exam-studio-shell{
  --studio-enter:translateY(8px) scale(.992);
}
.exam-studio-layout{
  transition:grid-template-columns .42s var(--horado-spring),gap .3s ease!important;
}
.exam-studio-mode-focused .exam-studio-layout,
html[data-exam-studio-mode="focused"] .exam-studio-layout{
  grid-template-columns:minmax(0,1fr) 286px!important;
}
.exam-studio-mode-focused .exam-studio-workflow,
html[data-exam-studio-mode="focused"] .exam-studio-workflow,
.exam-studio-mode-wizard .exam-studio-workflow,
html[data-exam-studio-mode="wizard"] .exam-studio-workflow{
  grid-column:1 / -1!important;
  position:static!important;
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  padding:8px!important;
}
.exam-studio-mode-focused .studio-brandline,
.exam-studio-mode-focused .studio-workflow-foot,
html[data-exam-studio-mode="focused"] .studio-brandline,
html[data-exam-studio-mode="focused"] .studio-workflow-foot,
.exam-studio-mode-wizard .studio-brandline,
.exam-studio-mode-wizard .studio-workflow-foot,
html[data-exam-studio-mode="wizard"] .studio-brandline,
html[data-exam-studio-mode="wizard"] .studio-workflow-foot{
  display:none!important;
}
.exam-studio-mode-focused .studio-step,
html[data-exam-studio-mode="focused"] .studio-step,
.exam-studio-mode-wizard .studio-step,
html[data-exam-studio-mode="wizard"] .studio-step{
  flex:1 1 220px;
  min-height:48px!important;
  grid-template-columns:30px minmax(0,1fr)!important;
  padding:8px 10px!important;
}
.exam-studio-mode-focused .studio-step-index,
html[data-exam-studio-mode="focused"] .studio-step-index,
.exam-studio-mode-wizard .studio-step-index,
html[data-exam-studio-mode="wizard"] .studio-step-index{
  width:30px!important;
  height:30px!important;
}
.exam-studio-mode-focused .exam-studio-summary,
html[data-exam-studio-mode="focused"] .exam-studio-summary,
.exam-studio-mode-wizard .exam-studio-summary,
html[data-exam-studio-mode="wizard"] .exam-studio-summary{
  top:68px!important;
}
.exam-studio-mode-wizard .exam-studio-layout,
html[data-exam-studio-mode="wizard"] .exam-studio-layout{
  grid-template-columns:minmax(0,1fr) 280px!important;
}
.exam-studio-mode-wizard .question-map-card,
html[data-exam-studio-mode="wizard"] .question-map-card{
  display:none!important;
}
.studio-wizard-actions{
  display:none;
}
.exam-studio-mode-wizard .studio-wizard-actions,
html[data-exam-studio-mode="wizard"] .studio-wizard-actions{
  display:flex;
  justify-content:space-between;
  gap:10px;
}
.studio-wizard-actions .button{
  min-width:120px;
}
.studio-wizard-actions [hidden]{
  visibility:hidden;
  display:inline-flex!important;
}
.exam-studio-mode-compact .exam-studio-layout,
html[data-exam-studio-mode="compact"] .exam-studio-layout{
  grid-template-columns:190px minmax(0,1fr) 280px!important;
  gap:10px!important;
}
.exam-studio-mode-compact .studio-panel,
html[data-exam-studio-mode="compact"] .studio-panel{
  padding:14px!important;
}
.exam-studio-mode-compact .studio-panel.is-active,
html[data-exam-studio-mode="compact"] .studio-panel.is-active{
  gap:14px!important;
}
.studio-panel,
.studio-summary-card,
.exam-studio-workflow{
  transition:transform .42s var(--horado-spring),opacity .28s ease,border-color .22s ease,box-shadow .36s var(--horado-spring)!important;
}
.studio-panel.is-active{
  animation:studioPanelIn .42s var(--horado-spring-soft) both;
}
.studio-step{
  transition:transform .34s var(--horado-spring),background .24s ease,border-color .22s ease,box-shadow .32s var(--horado-spring)!important;
}
.studio-step:hover{
  transform:translateY(-1px)!important;
}
.studio-step.is-active{
  box-shadow:0 10px 22px rgba(79,132,80,.12)!important;
}
.studio-advanced-details{
  border:1px solid #dfe5ef;
  border-radius:8px;
  background:#fff;
  overflow:hidden;
}
.studio-advanced-details summary{
  min-height:40px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:0 12px;
  color:#526079;
  font-weight:900;
  cursor:pointer;
}
.studio-advanced-details summary::after{
  content:"";
  width:8px;
  height:8px;
  border-right:2px solid currentColor;
  border-bottom:2px solid currentColor;
  transform:rotate(45deg);
  transition:transform .28s var(--horado-spring);
}
.studio-advanced-details[open] summary::after{
  transform:rotate(225deg);
}
.studio-advanced-details > .studio-form-grid,
.studio-advanced-details > .studio-image-field{
  margin:0 12px 12px;
}
.core-question-grid{
  grid-template-columns:minmax(0,1.1fr) minmax(160px,.45fr)!important;
}
.studio-question-text textarea{
  min-height:128px!important;
}
.studio-summary-card{
  animation:studioPanelIn .5s var(--horado-spring-soft) both;
}
@keyframes studioPanelIn{
  from{opacity:0;transform:var(--studio-enter)}
  to{opacity:1;transform:none}
}
@media (max-width:1120px){
  .app-shell.app-shell-v2{
    grid-template-columns:1fr!important;
  }
  .sidebar-left.sidebar-left-v2{
    width:var(--horado-sidebar-w)!important;
    min-width:var(--horado-sidebar-w)!important;
    max-width:var(--horado-sidebar-w)!important;
    transform:translateX(-102%)!important;
    transition:transform .42s var(--horado-spring)!important;
  }
  .sidebar-left.sidebar-left-v2.is-open,
  body.sidebar-open .sidebar-left.sidebar-left-v2{
    transform:translateX(0)!important;
  }
  .sidebar-main-panel-v2{
    overflow:auto!important;
  }
  .exam-studio-layout,
  .exam-studio-mode-focused .exam-studio-layout,
  .exam-studio-mode-wizard .exam-studio-layout,
  .exam-studio-mode-compact .exam-studio-layout{
    grid-template-columns:1fr!important;
  }
  .exam-studio-workflow,
  .exam-studio-summary{
    position:static!important;
  }
}
@media (max-width:900px){
  .context-topbar{
    min-height:50px!important;
    padding:7px 12px!important;
  }
  .top-strip-group,
  .page-body{
    padding-left:12px!important;
    padding-right:12px!important;
  }
  .studio-mode-options{
    grid-template-columns:1fr;
  }
  .core-question-grid{
    grid-template-columns:1fr!important;
  }
}

/* === v95 Horado brand palette and rail polish === */
html[data-brand-palette="black_green"]{
  --brand-ink:#242928;
  --brand-primary:#242928;
  --brand-primary-strong:#111514;
  --brand-accent:#4f8450;
  --brand-accent-strong:#356d3c;
  --brand-accent-soft:#eaf3ed;
  --brand-warm:#e7d198;
  --brand-rail:#242928;
  --brand-topbar:#4f8450;
  --brand-bg:#f4f6f5;
  --brand-surface:#ffffff;
  --brand-surface-soft:#f0f6f2;
  --brand-line:#dbe5df;
  --brand-muted:#6d7788;
  --brand-focus:rgba(79,132,80,.22);
}
html[data-brand-palette="blue_beige"]{
  --brand-ink:#172334;
  --brand-primary:#022a5e;
  --brand-primary-strong:#011b3d;
  --brand-accent:#e7d198;
  --brand-accent-strong:#bfa35d;
  --brand-accent-soft:#fbf6e8;
  --brand-warm:#e7d198;
  --brand-rail:#022a5e;
  --brand-topbar:#022a5e;
  --brand-bg:#f5f6f3;
  --brand-surface:#ffffff;
  --brand-surface-soft:#f9f4e4;
  --brand-line:#d9deea;
  --brand-muted:#6f7788;
  --brand-focus:rgba(2,42,94,.20);
}
html[data-brand-palette]{
  --studio-green:var(--brand-accent);
  --studio-green-dark:var(--brand-accent-strong);
  --studio-rail:var(--brand-rail);
  --studio-navy:var(--brand-primary);
  --studio-ink:var(--brand-ink);
  --studio-line:var(--brand-line);
  --studio-soft:var(--brand-surface-soft);
  --studio-purple:var(--brand-primary);
  --accent:var(--brand-primary);
  --accent-2:var(--brand-accent);
  --line:var(--brand-line);
  --text:var(--brand-ink);
  --muted:var(--brand-muted);
}
body{
  background:var(--brand-bg)!important;
  color:var(--brand-ink)!important;
}
.app-shell.app-shell-v2{
  --horado-rail-w:90px;
  --horado-sidebar-w:318px;
  background:var(--brand-bg)!important;
}
.main-shell-v2{
  background:var(--brand-bg)!important;
}
.sidebar-left.sidebar-left-v2{
  width:var(--horado-sidebar-w)!important;
  min-width:var(--horado-sidebar-w)!important;
  max-width:var(--horado-sidebar-w)!important;
  grid-template-columns:var(--horado-rail-w) minmax(0,1fr)!important;
}
.sidebar-v2-rail{
  background:var(--brand-rail)!important;
  padding:8px 0!important;
}
.rail-v2-nav{
  gap:4px!important;
}
.rail-v2-link{
  min-height:58px!important;
  border-radius:0!important;
  color:rgba(255,255,255,.80)!important;
  padding:7px 8px!important;
}
.rail-v2-link:hover,
.rail-v2-link:focus-visible{
  background:rgba(255,255,255,.10)!important;
  color:#fff!important;
  transform:none!important;
}
.rail-v2-link.active{
  background:var(--brand-accent)!important;
  color:#fff!important;
  border-radius:0!important;
  box-shadow:inset 4px 0 0 var(--brand-warm)!important;
  transform:none!important;
}
html[data-brand-palette="blue_beige"] .rail-v2-link.active{
  background:var(--brand-accent)!important;
  color:var(--brand-primary)!important;
  box-shadow:inset 4px 0 0 #fff!important;
}
.rail-v2-ico,
.rail-v2-ico svg{
  width:23px!important;
  height:23px!important;
}
.rail-v2-label{
  max-width:82px!important;
  font-size:11px!important;
  line-height:1.08!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
}
.sidebar-main-panel-v2{
  background:var(--brand-surface-soft)!important;
  border-right-color:var(--brand-line)!important;
}
.sidebar-module-heading,
.profile-mini-card-v2,
.studio-summary-card,
.studio-panel,
.exam-studio-workflow,
.card,
.metric-card,
.server-strip,
.server-stat,
.overlay-card{
  background:var(--brand-surface)!important;
  border-color:var(--brand-line)!important;
}
.sidebar-module-heading strong,
.nav-link-v2,
.studio-panel-head h3,
.studio-summary-head h3,
.studio-question-head h4{
  color:var(--brand-ink)!important;
}
.nav-link-v2 .nav-ico,
.nav-link-v2.active .nav-ico{
  background:var(--brand-accent-soft)!important;
  color:var(--brand-primary)!important;
}
.nav-link-v2:hover,
.nav-link-v2:focus-visible{
  background:var(--brand-accent-soft)!important;
  color:var(--brand-primary)!important;
}
.nav-link-v2.active{
  background:var(--brand-primary)!important;
  border-color:var(--brand-primary)!important;
  color:#fff!important;
  box-shadow:0 12px 22px rgba(2,42,94,.16)!important;
}
.nav-link-v2.active .nav-ico{
  background:rgba(255,255,255,.14)!important;
  color:#fff!important;
}
.context-topbar{
  background:var(--brand-topbar)!important;
}
.context-menu-btn,
.context-topbar .button,
.context-topbar button{
  background:rgba(255,255,255,.14)!important;
  border-color:rgba(255,255,255,.22)!important;
  color:#fff!important;
}
.button,
button{
  background:var(--brand-primary)!important;
  border:1px solid var(--brand-primary)!important;
  color:#fff!important;
  box-shadow:none!important;
}
.button:hover,
button:hover{
  background:var(--brand-primary-strong)!important;
  border-color:var(--brand-primary-strong)!important;
  box-shadow:0 10px 22px rgba(17,24,39,.12)!important;
}
.button.secondary,
button.secondary{
  background:var(--brand-surface)!important;
  border-color:var(--brand-line)!important;
  color:var(--brand-ink)!important;
}
.button.secondary:hover,
button.secondary:hover{
  background:var(--brand-surface-soft)!important;
  border-color:var(--brand-line)!important;
  color:var(--brand-primary)!important;
}
.button.warn,
button.warn{
  background:#f4c45d!important;
  border-color:#e7b74b!important;
  color:#4a3500!important;
}
.button.danger,
button.danger{
  background:#c94b5b!important;
  border-color:#b94050!important;
  color:#fff!important;
}
.button.success,
button.success{
  background:var(--brand-accent)!important;
  border-color:var(--brand-accent)!important;
  color:#fff!important;
}
input:focus,
select:focus,
textarea:focus{
  border-color:var(--brand-accent)!important;
  box-shadow:0 0 0 3px var(--brand-focus)!important;
}
.studio-primary-action{
  background:var(--brand-primary)!important;
  border-color:var(--brand-primary)!important;
  color:#fff!important;
}
.studio-step.is-active{
  background:var(--brand-accent-soft)!important;
  border-color:color-mix(in srgb,var(--brand-accent) 45%,var(--brand-line))!important;
}
.studio-step.is-active .studio-step-index,
.studio-live-dot{
  background:var(--brand-accent)!important;
}
.studio-panel-badge,
.q-status{
  background:var(--brand-accent-soft)!important;
  color:var(--brand-primary)!important;
}
.beta-banner{
  background:var(--brand-accent-soft)!important;
  border-color:var(--brand-line)!important;
  color:var(--brand-ink)!important;
}
.brand-palette-setting{
  align-items:flex-start!important;
}
.brand-palette-options{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:7px;
  min-width:min(420px,100%);
}
.brand-palette-option{
  position:relative;
  display:grid!important;
  place-items:center;
  min-height:38px;
  padding:0 10px!important;
  border:1px solid var(--brand-line);
  border-radius:8px;
  background:#fff;
  color:var(--brand-ink);
  font-weight:900;
  cursor:pointer;
  overflow:hidden;
  transition:transform .3s var(--horado-spring),border-color .2s ease,background .2s ease,color .2s ease!important;
}
.brand-palette-option::before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:8px;
}
.brand-palette-option.is-black-green::before{
  background:linear-gradient(#242928 0 50%,#4f8450 50%);
}
.brand-palette-option.is-blue-beige::before{
  background:linear-gradient(#022a5e 0 50%,#e7d198 50%);
}
.brand-palette-option input{
  position:absolute;
  opacity:0;
  inset:0;
}
.brand-palette-option span{
  position:relative;
}
.brand-palette-option:has(input:checked){
  border-color:var(--brand-accent);
  background:var(--brand-accent-soft);
  color:var(--brand-primary);
}
@media (max-width:900px){
  .app-shell.app-shell-v2{
    --horado-sidebar-w:318px;
  }
  .brand-palette-options{
    grid-template-columns:1fr;
  }
}
/* Horado v96 stability/responsive polish */
.session-expired-card{max-width:460px;width:min(92vw,460px)}
.session-expired-card .prompt-icon{background:var(--warn-soft,#fff4d6);color:var(--warn,#8a5a00);font-weight:900}
.session-expired-card p{margin:4px 0 0;color:var(--muted)}

@media (max-width:1200px){
  .content-max,.main-v2-inner{max-width:100%;width:100%}
  .exam-studio-layout{grid-template-columns:180px minmax(0,1fr)}
  .exam-studio-summary{grid-column:1 / -1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .schools-layout,.admin-search-layout{grid-template-columns:260px minmax(0,1fr)}
  .exam-layout,.compact-exam-layout{grid-template-columns:minmax(0,1fr) 280px}
}

@media (max-width:900px){
  html,body{overflow-x:hidden}
  .app-shell.has-sidebar{grid-template-columns:1fr}
  .sidebar-v2{position:sticky;top:0;z-index:40;width:100%;height:auto;min-height:0;display:grid;grid-template-columns:92px minmax(0,1fr);box-shadow:0 10px 24px rgba(15,23,42,.12)}
  .rail-v2{height:auto;min-height:100%;width:92px}
  .sidebar-panel-v2{height:auto;max-height:none;overflow:visible}
  .main-v2{min-width:0}
  .context-topbar,.breadcrumb-bar{position:static}
  .server-strip-grid,.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .schools-layout,.admin-search-layout,.exam-layout,.compact-exam-layout,.monitor-layout{display:grid;grid-template-columns:1fr}
  .schools-filters-pane,.admin-search-filters,.exam-runner-side,.sticky-card,.monitor-side{position:static;top:auto}
  .school-filter-grid,.compact-filters{grid-template-columns:repeat(2,minmax(0,1fr))}
  .exam-studio-layout{grid-template-columns:1fr}
  .exam-studio-workflow{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;position:static}
  .studio-brandline,.studio-workflow-foot{display:none}
  .exam-studio-summary{grid-template-columns:1fr}
  .studio-form-grid,.studio-form-grid.compact{grid-template-columns:1fr}
  .studio-field.span-2,.studio-field.span-all{grid-column:auto}
  .table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
  .data-table{min-width:720px}
}

@media (max-width:680px){
  .sidebar-v2{grid-template-columns:1fr}
  .rail-v2{width:100%;display:flex;overflow-x:auto;overflow-y:hidden;padding:6px}
  .rail-v2-link{min-width:78px}
  .sidebar-panel-v2{display:none}
  .main-v2-inner{padding:10px}
  .content-max{padding:0}
  .context-topbar{min-height:auto;padding:10px 12px;align-items:flex-start}
  .context-topbar h1,.page-title{font-size:20px;line-height:1.15}
  .server-strip-grid,.stats-grid,.result-chart-grid{grid-template-columns:1fr}
  .school-filter-grid,.compact-filters{grid-template-columns:1fr}
  .search-result,.admin-user-search-row{grid-template-columns:1fr;gap:10px}
  .search-result-side,.search-result-actions,.classic-actions,.action-pack{width:100%;justify-content:stretch;flex-wrap:wrap}
  .button,.classic-actions .button,.action-pack .button{min-width:0}
  .exam-runner-head{align-items:flex-start;gap:10px}
  .exam-timer-stack,.exam-side-actions{width:100%}
  .question-map{grid-template-columns:repeat(auto-fit,minmax(38px,1fr))}
  .studio-question-head,.studio-panel-head,.section-head{align-items:flex-start;gap:10px;flex-wrap:wrap}
  .studio-option-grid{grid-template-columns:1fr}
  .overlay-card{width:min(94vw,560px);max-height:88vh;overflow:auto}
}

@media (max-width:480px){
  .main-v2-inner{padding:8px}
  .card,.metric-card,.chart-card,.studio-panel,.studio-summary-card{border-radius:8px}
  .rail-v2-link{min-width:70px;font-size:11px}
  .rail-v2-icon{width:34px;height:34px}
  .server-strip{display:none}
  .exam-question-copy h3{font-size:18px;line-height:1.25}
  .exam-question-rich .rich-question-prose{font-size:18px;line-height:1.3}
  .exam-answer-list{gap:8px}
  .choice{padding:10px}
  .nav-row,.prompt-actions{display:grid;grid-template-columns:1fr;gap:8px}
  .button{width:100%;justify-content:center}
  .metric-value{font-size:24px}
  .data-table{min-width:640px}
}

/* Horado v98 auth/search/exam-choice repair */
.auth-active-account{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:12px;
  margin:0 0 12px;
  border:1px solid var(--line);
  background:var(--surface-muted,#f7f9fb);
  border-radius:8px;
}
.auth-active-account strong,
.auth-active-account span{display:block}
.auth-active-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.auth-active-actions form{margin:0}
.auth-switch-note{margin:0 0 14px}

.exam-choice-card{
  position:relative;
  grid-template-columns:42px minmax(0,1fr)!important;
  align-items:flex-start!important;
  cursor:pointer;
  user-select:none;
}
.exam-choice-card input[type="radio"],
.exam-choice-card input[type="checkbox"]{
  position:absolute!important;
  inline-size:1px!important;
  block-size:1px!important;
  opacity:0!important;
  pointer-events:none!important;
  margin:0!important;
  inset-inline-start:18px;
  inset-block-start:18px;
}
.exam-choice-card .choice-key{
  width:34px!important;
  height:34px!important;
  border-radius:50%!important;
  border:1px solid var(--line)!important;
  background:#fff!important;
  color:var(--primary,#123f2b)!important;
  box-shadow:0 1px 0 rgba(15,23,42,.05);
  transition:transform .22s cubic-bezier(.2,.8,.2,1),background .22s ease,border-color .22s ease,color .22s ease;
}
.exam-choice-card:hover .choice-key{
  transform:translateY(-1px) scale(1.04);
  border-color:var(--primary,#123f2b)!important;
}
.exam-choice-card:has(input:focus-visible) .choice-key{
  outline:3px solid var(--focus-ring,rgba(39,126,77,.22));
  outline-offset:2px;
}
.exam-choice-card:has(input:checked){
  border-color:var(--primary,#123f2b)!important;
  background:var(--primary-soft,rgba(39,126,77,.08))!important;
}
.exam-choice-card:has(input:checked) .choice-key{
  background:var(--primary,#123f2b)!important;
  border-color:var(--primary,#123f2b)!important;
  color:#fff!important;
  transform:scale(1.06);
}
.exam-media-option{
  border-radius:0!important;
}

@media (max-width:680px){
  .auth-active-account{align-items:flex-start;flex-direction:column}
  .exam-choice-card{grid-template-columns:38px minmax(0,1fr)!important}
  .exam-choice-card .choice-key{width:30px!important;height:30px!important}
}

/* Horado v99 login security/presentation repair */
.auth-eu-actions-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
  margin-top:4px;
}
.auth-eu-actions-row .auth-eu-submit{
  min-height:46px!important;
  min-width:142px;
  border-radius:10px!important;
  font-size:.98rem!important;
  padding:10px 18px!important;
}
.auth-eu-actions-row .auth-eu-remember{
  display:flex!important;
  align-items:center!important;
  gap:9px!important;
  margin:0!important;
  min-height:46px;
  line-height:1.2;
  color:var(--text,#172033);
}
.auth-eu-actions-row .auth-eu-remember input{
  width:18px!important;
  height:18px!important;
  margin:0!important;
  flex:0 0 18px;
  accent-color:var(--primary,#123f2b);
}
.auth-captcha-field{
  display:grid;
  gap:7px;
  margin-top:2px;
  padding:12px;
  border:1px solid var(--line);
  border-radius:10px;
  background:var(--surface-muted,#f7f9fb);
}
.auth-captcha-field span{
  font-weight:800;
  color:var(--text,#172033);
}
.auth-language-inline select:disabled{
  opacity:.72;
  cursor:wait;
}
html.notranslate body{
  translate:no;
}

@media (max-width:560px){
  .auth-eu-actions-row{
    grid-template-columns:1fr;
  }
  .auth-eu-actions-row .auth-eu-submit{
    width:100%;
  }
}

/* Horado v101 stability, responsive and visibility controls */
*,*::before,*::after{box-sizing:border-box}
.card,.metric-card,.search-result,.studio-panel,.studio-summary-card,.overlay-card,.server-stat{min-width:0}
.icon-svg,.button .icon-svg,button .icon-svg{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  flex:0 0 18px!important;
  line-height:0!important;
  margin:0!important;
}
.button .icon-svg svg,button .icon-svg svg{display:block!important;width:18px!important;height:18px!important}
.button,button{line-height:1.15!important;text-align:center!important}
.button .btn-label,button .btn-label{display:inline-flex!important;align-items:center!important;min-width:0}
.force-action-labels .button,.force-action-labels .button.small{font-size:13px!important;gap:8px!important;min-width:130px!important;padding-inline:12px!important}
.force-action-labels .button .btn-label{display:inline-flex!important}
.admin-users-search-page .school-user-action-btn{gap:7px;min-width:112px}

.auth-notice{
  margin:0 0 14px;
  padding:12px 14px;
  border-radius:12px;
  border:1px solid rgba(240,184,78,.35);
  background:rgba(240,184,78,.14);
  color:#785000;
  font-weight:800;
}
.admin-settings-shell{max-width:860px}
.settings-admin-form{display:grid;gap:14px}
.settings-admin-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.64)}

.exam-visibility-editor .studio-subhead p{margin:6px 0 0}
.visibility-picker-grid{display:grid;grid-template-columns:minmax(260px,1.4fr) minmax(120px,.45fr) minmax(120px,.45fr) auto;gap:12px;align-items:end}
.visibility-add-wrap{display:flex;align-items:end}
.visibility-add-wrap .button{white-space:nowrap}
.visibility-target-error{display:none;margin:8px 0;color:#b91c1c;font-weight:800}
.visibility-target-error.is-visible{display:block}
.visibility-target-error.is-success{color:var(--ok)}
.visibility-target-list{display:grid;gap:8px;margin-top:12px}
.visibility-target-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.72)}
.visibility-target-list.readonly .visibility-target-row{grid-template-columns:1fr}
.visibility-target-main{display:grid;gap:2px;min-width:0}
.visibility-target-main strong,.visibility-target-main small{overflow-wrap:anywhere}
.visibility-target-main small{color:var(--muted)}

.result-hero-card{display:grid;gap:16px;overflow:hidden}
.result-hero-main{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center}
.result-hero-main h2{margin:4px 0 0;font-size:clamp(24px,3vw,38px);line-height:1.08}
.result-grade-ring{
  width:128px;
  aspect-ratio:1;
  border-radius:50%;
  display:grid;
  place-items:center;
  align-content:center;
  gap:2px;
  background:conic-gradient(var(--accent) calc(var(--score)*1%), rgba(148,163,184,.18) 0);
  box-shadow:inset 0 0 0 12px rgba(255,255,255,.84);
}
.result-grade-ring strong{font-size:30px;line-height:1}
.result-grade-ring span{font-size:13px;color:var(--muted);font-weight:900}
.result-quick-stats{display:flex;flex-wrap:wrap;gap:8px}
.data-table .rich-question-text{font-size:13px}

#serverStrip.server-strip{display:grid!important}
#serverStrip .server-stat strong{overflow-wrap:anywhere;line-height:1.25}

@media (max-width:1100px){
  .visibility-picker-grid{grid-template-columns:1fr 1fr}
  .visibility-picker-grid .school-picker-shell,.visibility-add-wrap{grid-column:1/-1}
  .visibility-add-wrap .button{width:100%}
}
@media (max-width:760px){
  .context-topbar{align-items:flex-start}
  .context-title-block h1{font-size:22px!important;overflow-wrap:anywhere}
  .schools-layout.admin-search-layout,.exam-studio-layout,.dashboard-grid{grid-template-columns:1fr!important}
  .search-result,.admin-user-search-row{grid-template-columns:1fr!important}
  .search-result-side,.search-result-actions{justify-content:flex-start!important}
  .search-result-actions .button,.search-result-actions form,.search-result-actions form .button{width:100%}
  .visibility-picker-grid{grid-template-columns:1fr}
  .visibility-target-row{grid-template-columns:1fr}
  .visibility-target-row .button{width:100%}
  .result-hero-main{grid-template-columns:1fr;justify-items:start}
  .result-grade-ring{width:112px}
  .settings-admin-row{grid-template-columns:1fr}
  .school-picker-row,.school-picker-row-wide{display:grid!important;grid-template-columns:1fr auto auto!important}
  #serverStrip .server-strip-grid{grid-template-columns:1fr!important}
}

/* Admin exams visibility modal + final UI behavior */
.warn-text{color:#9a6700!important;font-weight:800}
.admin-exam-actions .school-user-action-btn{gap:7px!important;min-width:112px}
body.compact-action-buttons .admin-exam-actions .school-user-action-btn{min-width:40px!important;width:40px!important;padding-inline:0!important;gap:0!important}
body.compact-action-buttons .admin-exam-actions .school-user-action-btn .btn-label{display:none!important}
.exam-visibility-modal-card{width:min(920px,94vw);display:grid;gap:14px}
.exam-visibility-modal-card .section-head{margin-bottom:0!important}
.exam-visibility-builder{display:grid;gap:14px}
.exam-visibility-choice-groups{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.visibility-choice-label{display:block;margin:0 0 8px;color:var(--muted);font-size:13px;font-weight:900}
.exam-visibility-tiles{display:flex!important;flex-wrap:wrap!important;gap:8px!important}
.exam-visibility-tiles .class-tile{flex:0 0 auto!important}
.exam-visibility-tiles .class-tile span{width:38px!important;min-width:38px!important;max-width:38px!important;height:38px!important;border-radius:50%!important;padding:0!important;display:grid!important;place-items:center!important}
.exam-visibility-target-list{max-height:min(360px,42vh);overflow:auto;padding-right:2px}
.visibility-modal-warning{padding:10px 12px;border:1px solid rgba(240,184,78,.34);border-radius:12px;background:rgba(240,184,78,.14);color:#805600;font-weight:900}

.toast-feedback{transform:translateX(120%);transition:opacity .45s ease,transform .55s cubic-bezier(.2,.8,.2,1);filter:none}
.toast-feedback.is-visible{opacity:1;transform:translateX(0)}
.toast-feedback.is-leaving{opacity:0;transform:translateX(120%)}

.school-role-donut{background:conic-gradient(#1f9d61 0 calc(var(--segment-student) * 1%), #3b82f6 0 calc(var(--segment-teacher) * 1%), #ba9760 0 calc(var(--segment-moderator) * 1%), #e24d4d 0 calc(var(--segment-admin) * 1%), #e8edf7 0 100%)!important}
.school-role-donut[data-empty="1"]{background:conic-gradient(#e8edf7 0 100%)!important}

#liveSearchForm .class-section-tiles.compact.multi.class-level-row,
#adminSearchLayout .class-section-tiles.compact.multi.class-level-row{display:flex!important;flex-wrap:wrap!important;gap:6px!important;overflow:visible!important;width:auto!important}
#liveSearchForm .class-section-tiles.compact.multi.class-level-row .class-tile,
#adminSearchLayout .class-section-tiles.compact.multi.class-level-row .class-tile{flex:0 0 auto!important;width:30px!important;height:30px!important;min-width:30px!important;margin:0!important}
#liveSearchForm .class-section-tiles.compact.multi.class-level-row .class-tile span,
#adminSearchLayout .class-section-tiles.compact.multi.class-level-row .class-tile span{width:30px!important;min-width:30px!important;max-width:30px!important;height:30px!important;border-radius:50%!important;padding:0!important;display:grid!important;place-items:center!important;font-size:11px!important}

@media (max-width:760px){
  .exam-visibility-choice-groups{grid-template-columns:1fr}
  .exam-visibility-modal-card .school-picker-row-wide{grid-template-columns:1fr!important}
  .exam-visibility-modal-card .prompt-actions{display:grid!important;grid-template-columns:1fr!important}
}

/* v103 cleanup */
.rail-v2-nav{gap:0!important}
.feedback-overlay{backdrop-filter:none!important}
.feedback-card{filter:none!important}
.audit-log-list{display:grid;gap:10px}
.audit-log-card{display:grid;gap:12px;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.74)}
.audit-log-card-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap}
.audit-log-card-head strong{display:block;font-size:16px}
.audit-log-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin:0}
.audit-log-details div{display:grid;gap:3px;padding:10px;border:1px solid rgba(148,163,184,.22);border-radius:10px;background:rgba(255,255,255,.62)}
.audit-log-details dt{font-size:12px;color:var(--muted);font-weight:900;text-transform:uppercase}
.audit-log-details dd{margin:0;font-weight:800;overflow-wrap:anywhere}
.audit-log-payload{padding:10px 12px;border-radius:10px;background:var(--surface-soft);color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;font-size:12px;overflow-wrap:anywhere}
.suggest-field{overflow:visible}
.suggest-list:not(.hidden){display:grid;z-index:4000}
body:not(.compact-action-buttons) .admin-exam-actions .school-user-action-btn,
body:not(.compact-action-buttons) .admin-users-search-page .school-user-action-btn,
body:not(.compact-action-buttons) #liveSearchResults .school-user-action-btn{width:auto;min-width:112px;padding-inline:12px;gap:7px}
body:not(.compact-action-buttons) .admin-exam-actions .school-user-action-btn .btn-label,
body:not(.compact-action-buttons) .admin-users-search-page .school-user-action-btn .btn-label,
body:not(.compact-action-buttons) #liveSearchResults .school-user-action-btn .btn-label{display:inline-flex}
body.compact-action-buttons .admin-users-search-page .school-user-action-btn,
body.compact-action-buttons #liveSearchResults .school-user-action-btn{width:40px;min-width:40px;padding-inline:0;gap:0}
body.compact-action-buttons .admin-users-search-page .school-user-action-btn .btn-label,
body.compact-action-buttons #liveSearchResults .school-user-action-btn .btn-label{display:none!important}
#liveSearchForm .class-section-tiles.compact.multi.class-level-row .class-tile,
#adminSearchLayout .class-section-tiles.compact.multi.class-level-row .class-tile{width:30px!important;height:30px!important;min-width:30px!important;max-width:30px!important;flex:0 0 30px!important}
#liveSearchForm .class-section-tiles.compact.multi.class-level-row .class-tile span,
#adminSearchLayout .class-section-tiles.compact.multi.class-level-row .class-tile span{width:30px!important;height:30px!important;min-width:30px!important;max-width:30px!important;line-height:30px!important;aspect-ratio:1/1!important;box-sizing:border-box!important}

/* v104 UI polish */
#questionBankModal.overlay,
.question-bank-modal.overlay{
  position:fixed;
  inset:0;
  width:100vw;
  height:100vh;
  z-index:12000;
}

@media (pointer:fine){
  body{cursor:url("/assets/cursors/moga-black/Normal%20Select.cur"), auto}
  a,
  button,
  [role="button"],
  summary,
  label[for],
  input[type="button"],
  input[type="submit"],
  input[type="radio"],
  input[type="checkbox"],
  select{cursor:url("/assets/cursors/moga-black/Link%20Select.cur"), pointer}
  input,
  textarea,
  [contenteditable="true"],
  .rich-text-editor{cursor:url("/assets/cursors/moga-black/Text%20Select.cur"), text}
  button:disabled,
  input:disabled,
  select:disabled,
  textarea:disabled,
  .is-disabled,
  [aria-disabled="true"]{cursor:url("/assets/cursors/moga-black/Unavailable.cur"), not-allowed}
  [draggable="true"],
  .draggable,
  .sortable-handle{cursor:url("/assets/cursors/moga-black/Move.cur"), move}
  .resize-x{cursor:url("/assets/cursors/moga-black/Horizontal%20Resize.cur"), ew-resize}
  .resize-y{cursor:url("/assets/cursors/moga-black/Vertical%20Resize.cur"), ns-resize}
}

/* v105 balance: server-backed button mode, denser Exam Studio, calmer radius */
body.compact-action-buttons .button:not(.force-text) .btn-label,
body.compact-action-buttons button:not(.force-text) .btn-label{
  display:none!important;
}
body.compact-action-buttons .button:not(.force-text),
body.compact-action-buttons button:not(.force-text){
  gap:0!important;
}
body:not(.compact-action-buttons) .button .btn-label,
body:not(.compact-action-buttons) button .btn-label{
  display:inline-flex!important;
}

.card,
.metric-card,
.search-result,
.studio-panel,
.studio-summary-card,
.overlay-card,
.prompt-card,
.school-map-only,
.qb-row,
.audit-log-card,
.dashboard-grid .card,
.profile-core-card{
  border-radius:8px!important;
}
.button,
button,
input,
select,
textarea,
.pill,
.hero-chip,
.metric-card.soft,
.status-strip-bar{
  border-radius:6px!important;
}
input[type="radio"]{border-radius:50%!important}
input[type="checkbox"]{border-radius:4px!important}
.avatar,
.avatar-sm,
.avatar-lg,
.avatar-upload-circle,
.status-dot,
.status-dot-only,
.donut,
.result-grade-ring,
.school-role-donut,
.monitor-rank-badge,
.class-tile span{
  border-radius:50%!important;
}
.nav-link,
.nav-button-link,
.nav-group-trigger,
.rail-v2-link{
  border-radius:0!important;
}

.exam-studio-layout{
  grid-template-columns:180px minmax(0,1fr) 260px!important;
  gap:10px!important;
  align-items:start!important;
}
.exam-studio-workflow,
.exam-studio-summary{
  position:sticky;
  top:12px;
}
.studio-panel,
.studio-summary-card,
.studio-question-card{
  padding:12px!important;
}
.studio-panel-head,
.studio-question-head,
.studio-summary-head{
  margin-bottom:10px!important;
  gap:8px!important;
}
.studio-panel-head h3,
.studio-question-head h4,
.studio-summary-head h3{
  font-size:18px!important;
  line-height:1.15!important;
  margin:0!important;
}
.studio-section-split{
  padding:10px!important;
  gap:10px!important;
  border-radius:8px!important;
}
.studio-subhead h4{
  font-size:15px!important;
  margin:0!important;
}
.studio-form-grid{
  gap:10px!important;
}
.studio-form-grid.compact{
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr))!important;
}
.studio-field textarea{
  min-height:82px!important;
}
.studio-question-text textarea{
  min-height:112px!important;
  max-height:220px;
}
.studio-field-stack{
  gap:10px!important;
}
.core-question-grid{
  grid-template-columns:minmax(170px,1fr) 92px!important;
  max-width:340px;
}
.studio-number-field input[type="number"],
.studio-short-field input{
  width:96px!important;
  max-width:96px!important;
  text-align:center;
}
.studio-summary-list{
  display:grid!important;
  gap:8px!important;
}
.studio-summary-list > div{
  grid-template-columns:78px minmax(0,1fr)!important;
  gap:8px!important;
  align-items:center!important;
}
.studio-summary-control select,
.studio-summary-control input[type="datetime-local"]{
  width:100%!important;
  min-width:0!important;
  padding:7px 8px!important;
  font-size:12px!important;
}
.studio-check-row.compact{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  min-height:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
}
.studio-check-row.compact input{
  width:16px!important;
  height:16px!important;
  flex:0 0 16px!important;
}
.studio-option-grid{
  grid-template-columns:minmax(0,1fr) 110px minmax(170px,.5fr) 36px!important;
  gap:8px!important;
  align-items:end!important;
}
.studio-option-row{
  padding:8px!important;
  border-radius:8px!important;
}
.studio-image-field input[type="file"]{
  padding:7px 8px!important;
  font-size:12px!important;
}
.exam-thumb-preview{
  max-width:180px!important;
  max-height:120px!important;
}

@media (max-width:1180px){
  .exam-studio-layout{grid-template-columns:1fr!important}
  .exam-studio-workflow,
  .exam-studio-summary{position:static}
  .exam-studio-workflow{display:flex!important;overflow:auto}
}
@media (max-width:760px){
  .studio-option-grid,
  .core-question-grid,
  .studio-form-grid.compact{grid-template-columns:1fr!important;max-width:none}
  .studio-number-field input[type="number"],
  .studio-short-field input{width:100%!important;max-width:none!important;text-align:left}
}
