/* Sitewide ClassLingo visual rollout. Loaded after each legacy page stylesheet. */
.landing-body, .teach-body, .dispatch-body, .admin-body, .teacher-body {
  background-color: #06131d !important;
  background-image: linear-gradient(rgba(65,179,192,.08) 1px,transparent 1px), linear-gradient(90deg,rgba(65,179,192,.08) 1px,transparent 1px), radial-gradient(circle at 50% 0%,rgba(0,209,236,.16),transparent 44%) !important;
  background-size: 28px 28px,28px 28px,auto !important;
  color: #f5f7f4 !important;
}
.landing-body::before, .teach-body::before, .dispatch-body::before, .admin-body::before, .teacher-body::before {
  content:""; position:absolute; z-index:0; top:20px; left:16px; right:16px; height:8px;
  background:linear-gradient(90deg,#13d6d1,#c6ee35); box-shadow:0 0 11px rgba(0,211,237,.42); pointer-events:none;
}

/* Shared work surfaces */
.teach-body .app, .dispatch-body .app { position:relative; z-index:1; max-width:760px; padding-top:60px; }
.teach-body header, .dispatch-body header {
  color:#f5f7f4; border-bottom:1px solid rgba(115,239,247,.46); padding-bottom:14px;
}
.teach-body .logo::before, .dispatch-body .logo::before { color:#f5f7f4; }
.teach-body .logo::after, .dispatch-body .logo::after { color:#fb694a; }
.teach-body .logo-sub, .dispatch-body .logo-sub, .teach-body .hint, .dispatch-body .hint { color:rgba(220,249,250,.68); }
.teach-body .card, .dispatch-body .card, .teach-body .panel, .dispatch-body .panel,
.teach-body .utter, .dispatch-body .worker-row, .dispatch-body .resp-item, .dispatch-body .dispatch-msg {
  background:linear-gradient(142deg,rgba(20,48,69,.78),rgba(5,17,30,.91) 57%,rgba(3,12,23,.95)) !important;
  color:#f5f7f4 !important; border:1px solid rgba(119,239,250,.8) !important; border-radius:3px !important;
  box-shadow:0 4px 0 #02070c,0 8px 14px rgba(0,0,0,.42),0 0 0 1px rgba(0,215,242,.2),inset 0 1px 0 rgba(165,249,255,.27),inset 0 -2px 0 rgba(0,4,9,.76) !important;
}
.teach-body .card, .dispatch-body .card { border-left:4px solid #0fa9a8 !important; }
.teach-body input, .teach-body select, .teach-body textarea, .dispatch-body input, .dispatch-body select, .dispatch-body textarea,
.teach-body .btn, .dispatch-body .btn, .dispatch-body .quick-btn, .dispatch-body .resp-btn, .dispatch-body .mic-btn {
  background:rgba(1,12,22,.74) !important; color:#f5f7f4 !important; border:1px solid rgba(119,239,250,.82) !important; border-radius:3px !important;
  box-shadow:inset 0 1px 0 rgba(203,255,255,.18),inset 0 -2px 0 rgba(0,15,26,.64) !important;
}
.teach-body #student-url, .teach-body #kids-url {
  background:rgba(1,12,22,.88) !important;
  color:#eafffb !important;
  border:1px solid rgba(119,239,250,.92) !important;
  box-shadow:inset 0 1px 0 rgba(203,255,255,.18),0 0 0 1px rgba(0,215,242,.15) !important;
}
.teach-body .btn-primary, .dispatch-body .btn-primary, .dispatch-body .resp-got { background:#f5f7f4 !important; color:#071112 !important; }
.dispatch-body .resp-otw, .dispatch-body .resp-help, .dispatch-body .worker-row.selected { background:#fb694a !important; color:#071112 !important; }
.teach-body .card-title, .dispatch-body .card-title, .dispatch-body .worker-name, .dispatch-body .dispatch-msg .msg-text { color:#f5f7f4 !important; text-transform:uppercase; }
.teach-body .section-label, .dispatch-body .section-label, .dispatch-body .worker-lang, .dispatch-body .worker-resp, .dispatch-body .dispatch-msg .msg-en { color:rgba(220,249,250,.68) !important; }
.teach-body #msg-feed .utter, .teach-body #recent-feed .utter { color:#f5f7f4 !important; }
.teach-body #msg-feed .utter .tr, .teach-body #recent-feed .utter .tr {
  color:#f5f7f4 !important;
  font-weight:650 !important;
  text-shadow:0 1px 0 rgba(0,0,0,.65);
}
.teach-body #msg-feed .utter:not(.latest) .tr, .teach-body #recent-feed .utter:not(.latest) .tr {
  color:#eefdfc !important;
}
.teach-body #msg-feed .utter [style*="var(--muted)"],
.teach-body #recent-feed .utter [style*="var(--muted)"],
.teach-body #msg-feed .utter .en,
.teach-body #recent-feed .utter .en {
  color:rgba(225,248,249,.82) !important;
}
.teach-body .panel-text,
.teach-body .panel-text.filled,
.teach-body #live-text,
.teach-body #notes-preview-out,
.teach-body #notes-preview-status,
.teach-body #notes-preview-coverage,
.teach-body [style*="color:var(--text)"],
.teach-body [style*="color:var(--muted)"] {
  color:#f5f7f4 !important;
}
.teach-body .hint,
.teach-body #notes-preview-status,
.teach-body #notes-preview-coverage {
  color:rgba(225,248,249,.82) !important;
}
.teach-body #notes-preview-out,
.teach-body #live-text {
  background:rgba(1,12,22,.76) !important;
  text-shadow:0 1px 0 rgba(0,0,0,.62);
}
.teach-body .card-title::after, .dispatch-body .card-title::after { content:""; display:block; width:86px; height:3px; margin:10px auto 0; background:linear-gradient(90deg,#13d6d1,#c6ee35); }
.teach-body #auth-gate {
  background:linear-gradient(142deg,rgba(20,48,69,.78),rgba(5,17,30,.91) 57%,rgba(3,12,23,.95)) !important;
  border:1px solid rgba(119,239,250,.8) !important; border-left:4px solid #0fa9a8 !important; border-radius:3px !important;
  box-shadow:0 4px 0 #02070c,0 8px 14px rgba(0,0,0,.42),0 0 0 1px rgba(0,215,242,.2),inset 0 1px 0 rgba(165,249,255,.27),inset 0 -2px 0 rgba(0,4,9,.76) !important;
}
.teach-body #auth-gate::after { content:""; display:block; width:116px; height:4px; margin:18px auto 0; background:linear-gradient(90deg,#13d6d1,#c6ee35); }
.teach-body #auth-gate .btn { width:100% !important; justify-content:center; margin-top:10px !important; }

/* Landing: continuous cold glass over the shared blueprint field. */
.landing-body {
  background-image:linear-gradient(180deg,rgba(2,12,23,.56),rgba(2,11,21,.82)),url("/assets/teacher-blueprint-bg.jpg") !important;
  background-size:100% 100%,cover !important;
  background-position:center top !important;
  background-attachment:fixed !important;
}
.landing-body::before {
  top:75px; left:0; right:0; height:5px;
  background:linear-gradient(90deg,#13d6d1 0%,#20d6d1 54%,#c9f12f 100%);
  box-shadow:0 0 12px rgba(0,211,237,.48);
}
.landing-body nav {
  background:linear-gradient(to left,rgba(20,49,70,.94),rgba(3,14,25,.97) 62%) !important;
  border:0 !important;
  box-shadow:0 4px 0 #02070c,0 8px 18px rgba(0,0,0,.34),inset 0 -1px 0 rgba(132,238,249,.34) !important;
  backdrop-filter:blur(12px) saturate(1.3);
}
.landing-body main { isolation:isolate; }
.landing-body main > section {
  overflow:hidden;
  background:linear-gradient(to left,rgba(25,56,79,.48),rgba(7,23,38,.74) 56%,rgba(3,13,24,.82)) !important;
  border:0 !important;
  backdrop-filter:blur(8px) saturate(1.25);
}
.landing-body main > section + section {
  border-top:1px solid rgba(128,232,246,.72) !important;
  box-shadow:inset 0 1px 0 rgba(180,250,255,.18),0 -7px 18px rgba(0,211,237,.08);
}
.landing-body main > section:nth-of-type(even) {
  background:linear-gradient(to right,rgba(20,49,70,.54),rgba(5,18,31,.80) 54%,rgba(2,12,22,.88)) !important;
}
.landing-body .ink { color:#f7f8f5 !important; }
.landing-body .ink2 { color:rgba(225,248,249,.82) !important; }
.landing-body .h-display { text-transform:uppercase; letter-spacing:0 !important; }
.landing-body h1 {
  max-width:780px; font-size:clamp(44px,7vw,86px) !important; line-height:.98 !important;
  text-shadow:0 3px 0 rgba(0,0,0,.72),0 0 18px rgba(0,211,237,.10);
}
.landing-body h1 span, .landing-body h3 span { color:#63eee2 !important; }
.landing-body .chip {
  border:1px solid rgba(119,239,250,.88) !important; border-radius:3px !important;
  background:linear-gradient(120deg,rgba(87,232,245,.12),transparent 34%),rgba(1,12,22,.82) !important;
  color:#e4fbfa !important; box-shadow:0 3px 0 #02070c,inset 0 1px 0 rgba(203,255,255,.28) !important;
}
.landing-body .retro-card {
  position:relative; overflow:hidden;
  background:linear-gradient(to left,rgba(27,61,84,.82),rgba(7,23,38,.92) 58%,rgba(3,13,24,.96)) !important;
  border:1px solid rgba(128,232,246,.88) !important; border-radius:3px !important;
  box-shadow:0 4px 0 #02070c,0 9px 16px rgba(0,0,0,.46),0 0 0 1px rgba(0,215,242,.18),0 0 14px rgba(0,210,236,.14),inset 0 1px 0 rgba(185,251,255,.32),inset 0 -2px 0 rgba(0,4,9,.82) !important;
  backdrop-filter:blur(10px) saturate(1.3);
}
.landing-body .retro-card::after {
  content:""; position:absolute; left:0; right:0; bottom:0; height:5px; pointer-events:none;
  background:linear-gradient(90deg,#13d6d1 0%,#20d6d1 54%,#c9f12f 100%);
  box-shadow:0 0 10px rgba(0,211,237,.36);
}
.landing-body .retro-btn, .landing-body .nav-link {
  min-height:44px; justify-content:center; border:1px solid rgba(119,239,250,.95) !important; border-radius:3px !important;
  box-shadow:0 3px 0 #02070c,0 6px 10px rgba(0,0,0,.34),inset 0 1px 0 rgba(203,255,255,.42),inset 0 -2px 0 rgba(0,15,26,.60) !important;
  font-weight:800 !important;
}
.landing-body .retro-btn { background:#f5f7f4 !important; color:#071112 !important; }
.landing-body .retro-btn.mustard { background:#13d6d1 !important; color:#041113 !important; }
.landing-body .nav-link { background:rgba(1,12,22,.88) !important; color:#f5f7f4 !important; }
.landing-body .nav-link.primary { background:#fb694a !important; color:#071112 !important; }
.landing-body .ico-tile {
  border:1px solid rgba(119,239,250,.90) !important; border-radius:3px !important;
  background:linear-gradient(145deg,#ff8266,#e94e35) !important; color:#071112 !important;
  box-shadow:0 3px 0 #02070c,inset 0 1px 0 rgba(255,255,255,.32) !important;
}
.landing-body #features-grid .ico-tile { background:linear-gradient(145deg,#29e4df,#0b9999) !important; color:#031113 !important; }
.landing-body #features-grid .retro-card { border-left:1px solid rgba(128,232,246,.88) !important; }
.landing-body section .label-mono { color:rgba(225,248,249,.72) !important; }
.landing-body .landing-section-head { display:flex; flex-direction:column; align-items:center; text-align:center; gap:10px; }
.landing-body .landing-section-rail {
  display:block; width:100%; height:5px; margin-top:8px;
  background:linear-gradient(90deg,#13d6d1 0%,#20d6d1 54%,#c9f12f 100%);
  box-shadow:0 0 10px rgba(0,211,237,.38);
}
.landing-body .divider {
  width:100%; height:5px; border:0 !important; opacity:1 !important;
  background:linear-gradient(90deg,#13d6d1 0%,#20d6d1 54%,#c9f12f 100%);
  box-shadow:0 0 9px rgba(0,211,237,.32);
}
.landing-body footer {
  background:linear-gradient(to left,rgba(20,49,70,.92),rgba(3,14,25,.97) 62%) !important;
  border:0 !important; box-shadow:inset 0 1px 0 rgba(128,232,246,.62) !important;
}
.landing-body .landing-footer-links { display:flex; align-items:center; justify-content:center; gap:18px; }
.landing-body .landing-admin-link {
  color:rgba(220,249,250,.52); text-decoration:none;
  transition:color .15s ease;
}
.landing-body .landing-admin-link:hover { color:#f5f7f4; }
.landing-body .landing-admin-link:focus-visible { color:#f5f7f4; outline:2px solid #c6ee35; outline-offset:4px; }
@media (max-width:639px) {
  .landing-body::before { top:73px; height:5px; }
  .landing-body nav { padding:12px 16px !important; }
  .landing-body nav .nav-link { padding:8px 10px !important; font-size:10px !important; }
  .landing-body main > section { padding-left:16px !important; padding-right:16px !important; }
  .landing-body main > section:first-child { padding-top:72px !important; padding-bottom:60px !important; }
  .landing-body h1 { font-size:44px !important; }
  .landing-body .retro-btn { width:100%; }
  .landing-body #features-grid { gap:14px !important; }
  .landing-body .retro-card { padding:20px !important; }
}
@media (min-width:640px) and (max-height:700px) {
  .landing-body main > section:first-child { padding-top:48px !important; padding-bottom:34px !important; }
  .landing-body main > section:first-child .mb-7 { margin-bottom:20px !important; }
  .landing-body main > section:first-child .mt-7 { margin-top:20px !important; }
  .landing-body main > section:first-child .mt-9 { margin-top:24px !important; }
}

/* Admin workbench */
.admin-body #gate { position:relative; z-index:1; padding-top:60px; }.admin-body .gate-card, .admin-body .panel, .admin-body .stat, .admin-body .modal { background:linear-gradient(142deg,rgba(20,48,69,.78),rgba(5,17,30,.91) 57%,rgba(3,12,23,.95)) !important; border:1px solid rgba(119,239,250,.8) !important; border-radius:3px !important; color:#f5f7f4 !important; box-shadow:0 4px 0 #02070c,0 8px 14px rgba(0,0,0,.42),inset 0 1px 0 rgba(165,249,255,.27),inset 0 -2px 0 rgba(0,4,9,.76) !important; }
.admin-body input, .admin-body select, .admin-body textarea, .admin-body .btn { background:rgba(1,12,22,.74) !important; color:#f5f7f4 !important; border:1px solid rgba(119,239,250,.82) !important; border-radius:3px !important; }
.admin-body .btn-primary { background:#f5f7f4 !important; color:#071112 !important; }.admin-body .sidebar { background:rgba(3,12,23,.94) !important; border-color:rgba(115,239,247,.44) !important; }.admin-body .nav-btn.active { border-left-color:#13d6d1 !important; background:rgba(15,169,168,.18) !important; }.admin-body .brand span, .admin-body .gate-card h1 span, .admin-body a { color:#61e8de !important; }.admin-body .page-sub, .admin-body .lbl, .admin-body label, .admin-body .hint, .admin-body .empty { color:rgba(220,249,250,.68) !important; }
.admin-body .panel, .admin-body .stat {
  position:relative;
  background:linear-gradient(to left,rgba(25,56,79,.77) 0%,rgba(7,23,38,.90) 56%,rgba(3,13,24,.94) 100%) !important;
  box-shadow:0 4px 0 #02070c,0 8px 14px rgba(0,0,0,.42),0 0 0 1px rgba(0,215,242,.20),0 0 13px rgba(0,210,236,.15),inset 0 0 0 1px rgba(3,20,32,.92),inset 0 1px 0 rgba(165,249,255,.27),inset 0 -2px 0 rgba(0,4,9,.76) !important;
  backdrop-filter:blur(9px) saturate(1.3);
}
.admin-body .stat { overflow:hidden; }
.admin-body .panel { overflow-x:auto; }
.admin-body .panel::before, .admin-body .stat::before {
  content:""; position:absolute; inset:auto 0 0; height:5px; pointer-events:none;
  background:linear-gradient(90deg,#0d9e9a,#20d6d1 52%,#c9f12f);
}
.admin-body .stat .num, .admin-body .stat .lbl, .admin-body .panel h3, .admin-body .pill, .admin-body td {
  max-width:100%; overflow-wrap:break-word; word-break:normal;
}
.admin-body .mining-input-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.admin-body .mining-input-grid .panel { min-width:0; }
.admin-body .rule-readout {
  min-height:38px; display:flex; align-items:center; padding:9px 12px;
  color:#f5f7f4; background:rgba(1,12,22,.74); border:1px solid rgba(119,239,250,.82); border-radius:3px;
}
.admin-body .decision-row { display:flex; gap:6px; flex-wrap:wrap; }
.admin-body #tab-video-mining .panel h3 { text-transform:uppercase; letter-spacing:0; }
.admin-body #mine-status { color:#ff8d73; font-weight:700; text-shadow:0 0 9px rgba(255,105,74,.34); }
.admin-body #tab-video-mining th { color:#c9f12f; font-weight:700; }
@media (max-width:760px) {
  .admin-body .mining-input-grid { grid-template-columns:1fr; gap:0; }
  .admin-body #tab-video-mining .row > div { min-width:100%; }
  .admin-body #tab-video-mining .row > div[style*="flex:0"] { min-width:0; flex:1 1 calc(50% - 5px) !important; }
  .admin-body #tab-video-mining .row > div[style*="flex:0"] .btn { width:100%; }
}

/* Teacher dashboard after sign-in. Auth entry is styled in teacher.html. */
.teacher-body #app { background:transparent; color:#f5f7f4; }.teacher-body .topnav { background:rgba(6,19,29,.95) !important; border-color:rgba(115,239,247,.58) !important; }.teacher-body .rail-card, .teacher-body .panel, .teacher-body .stat, .teacher-body .class-card, .teacher-body .modal { background:linear-gradient(142deg,rgba(20,48,69,.78),rgba(5,17,30,.91) 57%,rgba(3,12,23,.95)) !important; border:1px solid rgba(119,239,250,.8) !important; border-radius:3px !important; color:#f5f7f4 !important; box-shadow:0 4px 0 #02070c,0 8px 14px rgba(0,0,0,.42),inset 0 1px 0 rgba(165,249,255,.27),inset 0 -2px 0 rgba(0,4,9,.76) !important; }.teacher-body .tab-btn, .teacher-body .nav-link, .teacher-body .retro-btn, .teacher-body input, .teacher-body select, .teacher-body textarea { background:rgba(1,12,22,.74) !important; color:#f5f7f4 !important; border:1px solid rgba(119,239,250,.82) !important; border-radius:3px !important; box-shadow:none !important; }.teacher-body .tab-btn.active, .teacher-body .nav-link.primary, .teacher-body .retro-btn { background:#f5f7f4 !important; color:#071112 !important; }.teacher-body .label-mono, .teacher-body label, .teacher-body .hint, .teacher-body .empty, .teacher-body .ink2 { color:rgba(220,249,250,.68) !important; }.teacher-body .ink { color:#f5f7f4 !important; }

/* Teacher glass: real blueprint paper underneath, sharply cut glass above it. */
.teacher-body { --red:#ff6d4d; --orange:#ff6d4d; }
.teacher-body #app {
  min-height:100vh;
  background-image:radial-gradient(ellipse 72% 58% at 104% 18%,rgba(75,231,242,.12),transparent 59%),linear-gradient(245deg,rgba(123,246,255,.07),transparent 34%),linear-gradient(180deg,rgba(2,12,23,.62),rgba(2,11,21,.82)),url("/assets/teacher-blueprint-bg.jpg") !important;
  background-size:100% 100%,100% 100%,100% 100%,cover !important;
  background-position:center top !important;
  background-attachment:fixed !important;
}
.teacher-body .topnav .brand .h-display span:last-child { color:#ff6d4d !important; text-shadow:0 0 12px rgba(255,109,77,.42); }
.teacher-body .rail-card, .teacher-body .panel, .teacher-body .stat, .teacher-body .class-card, .teacher-body .modal {
  position:relative; overflow:hidden;
  background:linear-gradient(to left,rgba(25,56,79,.77) 0%,rgba(7,23,38,.90) 56%,rgba(3,13,24,.94) 100%) !important;
  border-color:rgba(128,232,246,.80) !important;
  box-shadow:0 4px 0 #02070c,0 8px 14px rgba(0,0,0,.42),0 0 0 1px rgba(0,215,242,.20),0 0 13px rgba(0,210,236,.15),inset 0 0 0 1px rgba(3,20,32,.92),inset 0 1px 0 rgba(165,249,255,.27),inset 0 -2px 0 rgba(0,4,9,.76) !important;
  backdrop-filter:blur(9px) saturate(1.3);
}
.teacher-body .rail-card::before, .teacher-body .panel::before, .teacher-body .stat::before, .teacher-body .class-card::before {
  content:""; position:absolute; inset:auto 0 0; height:5px; pointer-events:none;
  background:linear-gradient(90deg,#0d9e9a,#20d6d1 52%,#c9f12f);
}
.teacher-body .tab-btn, .teacher-body .nav-link, .teacher-body .retro-btn, .teacher-body input, .teacher-body select, .teacher-body textarea {
  background:linear-gradient(120deg,rgba(87,232,245,.13),transparent 34%),rgba(1,12,22,.8) !important;
  border-color:rgba(126,246,255,.88) !important;
  box-shadow:inset 0 1px 0 rgba(194,255,255,.29),inset 0 -2px 0 rgba(0,5,12,.76) !important;
}
.teacher-body #signin .retro-btn { background:#f5f7f4 !important; color:#071112 !important; }
.teacher-body #signin #su-submit { background:#0fa9a8 !important; color:#071112 !important; }
.teacher-body #app .retro-btn {
  background:#f5f7f4 !important; color:#071112 !important; font-weight:800 !important;
}
.teacher-body #app .retro-btn.teal { background:#13d6d1 !important; color:#021014 !important; }
.teacher-body #app .retro-btn.ghost { background:rgba(1,12,22,.88) !important; color:#f5f7f4 !important; }
.teacher-body #app .retro-btn.mustard { background:#fb694a !important; color:#071112 !important; }
.teacher-body #app th {
  color:#ff8d73 !important; font-weight:800 !important;
  text-shadow:0 0 9px rgba(255,105,74,.34);
}
.teacher-body .modal .m-sub {
  position:relative; z-index:1;
  color:#ff8d73 !important; font-size:12px !important; font-weight:700 !important; line-height:1.45;
  text-shadow:0 0 9px rgba(255,105,74,.42);
}
.teacher-body .modal .retro-btn {
  position:relative; z-index:1; min-height:44px;
  background:#f5f7f4 !important; color:#071112 !important;
  font-size:12px !important; font-weight:800 !important;
}
.teacher-body .modal .retro-btn.teal { background:#13d6d1 !important; color:#021014 !important; }
.teacher-body .modal .retro-btn.ghost { background:rgba(1,12,22,.88) !important; color:#f5f7f4 !important; }
.teacher-body .modal .retro-btn.mustard { background:#fb694a !important; color:#071112 !important; }
.teacher-body .content::before {
  content:""; display:block; width:100%; height:5px; margin:1px 0 14px;
  border-top:1px solid rgba(93,203,222,.36);
  background:linear-gradient(90deg,transparent 0 32%,#0d9e9a 32%,#20d6d1 50%,#c9f12f 68%,transparent 68%);
  box-shadow:0 0 7px rgba(77,230,215,.45);
}
.teacher-body .panel h3::after, .teacher-body .class-card h3::after {
  content:none;
}
.teacher-body .rail-card h4 { color:#aeb9b7 !important; text-shadow:none; }
.teacher-body .rail-card .empty, .teacher-body .rail-card #rail-session, .teacher-body .rail-card .tree {
  color:#d2dfdf !important; font-size:14px; font-weight:500;
}
.teacher-body .rail-card h4::after {
  content:none;
}

@media (max-width:760px) { .admin-body .sidebar { margin-top:36px; }.admin-body .sidebar .nav-btn { border:1px solid rgba(115,239,247,.36); border-radius:3px; }.admin-body .sidebar .nav-btn.active { border-bottom-color:#13d6d1 !important; }.teacher-body .shell { padding-left:14px; padding-right:14px; } }

/* Teacher workspace: make the real dashboard usable before the content begins. */
@media (max-width:760px) {
  .teacher-body { overflow-x:hidden; }
  .teacher-body .topnav { width:100%; padding:10px 14px; gap:8px; align-items:center; flex-wrap:wrap; }
  .teacher-body .topnav .brand { gap:8px; min-width:0; }
  .teacher-body .topnav .brand .ico-tile { width:36px !important; height:36px !important; font-size:11px; flex:0 0 36px; }
  .teacher-body .topnav .brand .h-display { font-size:18px !important; white-space:nowrap; }
  .teacher-body .topnav .brand .label-mono { font-size:8px; letter-spacing:.13em; }
  .teacher-body #nav-who { display:none !important; }
  .teacher-body .topnav .nav-actions { width:100%; gap:6px; flex:1 1 100%; justify-content:flex-end; }
  .teacher-body .topnav .nav-actions #nav-who { display:none; }
  .teacher-body .topnav .nav-link { padding:7px 8px; font-size:10px; letter-spacing:.06em; white-space:nowrap; }
  .teacher-body .shell { padding:12px 14px 40px; gap:12px; }
  .teacher-body .rail { display:flex; flex-direction:column; gap:10px; }
  .teacher-body .rail-card { min-width:0; padding:11px; margin:0; }
  .teacher-body .rail-card h4 { font-size:10px; letter-spacing:.14em; }
  .teacher-body .rail-card select { min-width:0; font-size:14px; }
  .teacher-body .content { width:100%; }
  .teacher-body .tabbar { display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:8px; margin-bottom:14px; }
  .teacher-body .tab-btn { min-width:0; padding:9px 7px; font-size:10px; letter-spacing:.06em; }
  .teacher-body .panel, .teacher-body .stat, .teacher-body .class-card { padding:14px; }
}
