:root{--navy: #0f2748;--navy-dark: #0a1c38;--sidebar-bg: #ffffff;--sidebar-ink: #1e293b;--sidebar-muted: #64748b;--sidebar-line: #e2e8f0;--accent: #2563eb;--accent-soft: #eff6ff;--accent-hover: #1d4ed8;--teal: #0d9488;--paper: #f1f5fb;--card: #ffffff;--ink: #0f172a;--muted: #64748b;--line: #e2e8f0;--line-strong: #d5deee;--ok: #059669;--ok-bg: #d1fae5;--warn: #92400e;--warn-accent: #f59e0b;--warn-bg: #fef3c7;--danger: #b91c1c;--danger-bg: #fee2e2;--shadow: 0 1px 2px rgba(15, 23, 42, .04), 0 10px 28px rgba(15, 23, 42, .05);--shadow-lg: 0 8px 16px rgba(15, 23, 42, .06), 0 24px 48px rgba(15, 23, 42, .08);--shadow-lift: 0 12px 32px rgba(37, 99, 235, .12);--radius: 12px;--radius-sm: 8px;--radius-lg: 16px;--radius-pill: 999px;--sidebar: 320px;--header: 64px;--saffron: #ff9933;--green: #138808;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--font: "Plus Jakarta Sans", "Segoe UI", "Nirmala UI", sans-serif;--fs-xs: .72rem;--fs-sm: .8125rem;--fs-md: .9375rem;--fs-lg: 1.05rem;--fs-xl: 1.35rem;--fs-2xl: 1.6rem;--lh: 1.5;--lh-tight: 1.25;--track-label: .06em;--control-h: 42px;--control-h-lg: 44px}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;font-family:var(--font);font-size:var(--fs-md);color:var(--ink);background:radial-gradient(900px 320px at 88% -8%,rgba(37,99,235,.08),transparent 60%),radial-gradient(700px 240px at 8% 0%,rgba(15,39,72,.04),transparent 55%),var(--paper);line-height:var(--lh);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.skip{position:absolute;left:12px;top:-40px;background:#fff;color:var(--navy);padding:8px 12px;z-index:50;border-radius:8px}.skip:focus{top:8px}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.public-frame{min-height:100vh;display:flex;flex-direction:column;background:var(--paper)}.public-frame #main{flex:1;background:var(--paper)}.public-masthead,.header-actions{display:flex;align-items:center}.public-masthead{justify-content:space-between;gap:16px;padding:12px 24px;min-height:var(--header);background:#ffffffeb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}.public-frame.is-landing .public-masthead{padding:12px 28px;gap:20px}.public-lang{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:.9rem}.public-lang .nav-ico{width:16px;height:16px}.public-lang select{border:0;background:transparent;font:inherit;color:inherit;min-height:40px;cursor:pointer}.public-signin{display:inline-flex;align-items:center;gap:8px;background:var(--accent)!important;color:#fff!important;border:1px solid var(--accent)!important;border-radius:8px;padding:8px 16px;min-height:44px;text-decoration:none;font-weight:600}.public-signin .nav-ico{width:16px;height:16px}.brand,.brand-lockup{display:flex;gap:12px;align-items:center;text-decoration:none;color:inherit;min-height:44px}.brand-mark{width:40px;height:40px;border-radius:10px;background:#2563eb;color:#fff;display:grid;place-items:center;font-weight:800;font-size:.8rem;letter-spacing:.04em;flex:none;box-shadow:0 2px 8px #2563eb47}.app-sidebar .brand-mark{border-radius:10px;background:#2563eb}.brand-on-dark .brand-mark{background:linear-gradient(145deg,#3b82f6,#1e40af);box-shadow:0 4px 14px #2563eb59,inset 0 1px #ffffff40}.brand-text{display:grid;gap:2px;min-width:0;line-height:1.2}.brand-text h1,.brand-text strong,.brand-title{font-size:1.05rem;margin:0;color:var(--navy-dark);display:block;font-weight:800;letter-spacing:-.01em}.brand-text p,.brand-text small,.brand-tagline{margin:0;font-size:.78rem;color:var(--muted);display:block}.brand-on-dark .brand-mark{background:linear-gradient(145deg,#2563eb,#1d4ed8);box-shadow:0 0 0 1px #ffffff1f}.brand-on-dark .brand-text h1,.brand-on-dark .brand-text strong,.brand-on-dark .brand-title{color:#fff}.brand-on-dark .brand-text p,.brand-on-dark .brand-text small,.brand-on-dark .brand-tagline{color:#9fb2d4}.public-nav{display:flex;flex-wrap:wrap;gap:4px;padding:8px 16px;background:#fff;border-bottom:1px solid var(--line)}.public-masthead .public-nav{padding:0;border:0;background:transparent;margin:0 auto}.public-nav a{color:var(--navy-dark);text-decoration:none;padding:10px 14px;min-height:44px;border-radius:999px;display:inline-flex;align-items:center;gap:8px;font-weight:650}.public-nav a .nav-ico{width:16px;height:16px}.public-nav a.on,.public-nav a:hover{background:#e8eefc;color:var(--navy)}.landing-home{display:grid;gap:28px;padding:28px 28px 0;max-width:1240px;margin:0 auto}.landing-hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:28px;align-items:stretch;background:#fff;border:1px solid #d5deee;border-radius:16px;padding:28px;box-shadow:var(--shadow)}.landing-kicker{display:inline-flex;margin:0 0 12px;padding:6px 12px;border-radius:999px;background:#dbeafe;color:#1d4ed8;font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.landing-hero-copy h2{margin:0 0 12px;color:var(--navy-dark);font-size:clamp(2rem,3.4vw,2.85rem);line-height:1.12;letter-spacing:-.03em;max-width:16ch}.landing-lede{margin:0 0 22px;color:var(--muted);font-size:1.02rem;max-width:46ch;line-height:1.5}.landing-highlights{list-style:none;margin:0;padding:0;display:grid;gap:14px}.landing-highlights li{display:grid;grid-template-columns:40px 1fr;gap:12px;align-items:start}.landing-highlight-ico{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#eff6ff;color:#2563eb}.landing-highlight-ico .nav-ico{width:18px;height:18px}.landing-highlights strong{display:block;color:var(--navy-dark);font-size:.95rem}.landing-highlights span{color:var(--muted);font-size:.86rem}.landing-hero-media{position:relative;min-height:320px;border-radius:20px;overflow:hidden}.landing-hero-img{width:100%;height:100%;object-fit:cover;display:block;min-height:320px}.landing-quote{position:absolute;left:18px;bottom:18px;max-width:18rem;padding:16px 16px 14px;border-radius:16px;background:#fffffff5;box-shadow:0 12px 28px #0f172a29}.landing-quote-mark{display:block;color:#2563eb;font-size:2rem;line-height:.8;font-weight:700}.landing-quote p{margin:6px 0 0;color:var(--navy-dark);font-size:.92rem;font-weight:650;line-height:1.4}.landing-section-head{text-align:center;margin-bottom:18px}.landing-section-head h3{margin:0 0 6px;color:var(--navy-dark);font-size:1.55rem;letter-spacing:-.02em}.landing-section-head p{margin:0;color:var(--muted)}.landing-workspace-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.landing-workspace{display:grid;grid-template-columns:1.1fr .9fr;gap:0;background:#fff;border:1px solid #d5deee;border-radius:16px;overflow:hidden;min-height:250px;box-shadow:var(--shadow)}.landing-workspace-body{padding:20px 18px;display:grid;align-content:start;gap:10px}.landing-workspace-ico{width:42px;height:42px;border-radius:12px;display:grid;place-items:center}.landing-workspace-ico .nav-ico{width:18px;height:18px}.landing-workspace.tone-blue .landing-workspace-ico{background:#dbeafe;color:#2563eb}.landing-workspace.tone-amber .landing-workspace-ico{background:#ffedd5;color:#ea580c}.landing-workspace.tone-teal .landing-workspace-ico{background:#ccfbf1;color:#0d9488}.landing-workspace h4{margin:0;color:var(--navy-dark);font-size:1.05rem}.landing-workspace p{margin:0;color:var(--muted);font-size:.88rem;line-height:1.4}.landing-workspace-cta{margin-top:8px;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 14px;border-radius:8px;text-decoration:none;font-weight:600;font-size:.82rem;color:#fff}.landing-workspace.tone-blue .landing-workspace-cta{background:#2563eb}.landing-workspace.tone-amber .landing-workspace-cta{background:#ea580c}.landing-workspace.tone-teal .landing-workspace-cta{background:#0d9488}.landing-workspace-cta .nav-ico{width:14px;height:14px}.landing-workspace-photo{width:100%;height:100%;object-fit:cover;display:block;min-height:250px}.landing-stats{background:#fff;border:1px solid #d5deee;border-radius:16px;padding:16px 18px;box-shadow:var(--shadow)}.landing-stats ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.landing-stats li{display:flex;gap:10px;align-items:flex-start}.landing-stat-ico{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:#eff6ff;color:#2563eb;flex:none}.landing-stat-ico .nav-ico{width:16px;height:16px}.landing-stats b{display:block;color:var(--navy-dark);font-size:.98rem;line-height:1.15}.landing-stats span{color:var(--muted);font-size:.78rem}.landing-foot{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap;padding:8px 4px 22px;color:var(--muted);font-size:.82rem}.site-legal-foot{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap;color:var(--muted);font-size:.82rem}.site-legal-foot.is-stacked{flex-direction:column;align-items:flex-start;gap:8px}.site-legal-credit-block{display:grid;gap:4px;min-width:0}.site-legal-credit-block.is-inline{display:block}.site-legal-credit,.site-legal-version,.site-legal-links,.site-legal-note{margin:0}.site-legal-links{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.site-legal-link{background:none;border:0;color:inherit;font:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:2px;padding:0}.site-legal-developer{color:inherit;font:inherit;text-decoration:underline;text-underline-offset:2px}.site-legal-developer:hover{opacity:.92}.site-legal-ext{font-size:.85em}.site-legal-note{width:100%;color:var(--navy-dark)}.activate-legal-foot,.login-legal-foot{margin-top:4px;padding:4px 2px 8px}@media (max-width: 1100px){.landing-workspace-grid{grid-template-columns:1fr}.landing-stats ul{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 900px){.public-masthead{flex-wrap:wrap}.public-masthead .public-nav{order:3;width:100%;margin:0}.landing-home{padding:16px 16px 0}.landing-hero{grid-template-columns:1fr;padding:18px}.landing-hero-copy h2{max-width:none}.landing-workspace{grid-template-columns:1fr}.landing-workspace-photo{min-height:200px}.landing-stats ul{grid-template-columns:1fr}}.app-shell{display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr);min-height:100vh}.app-shell.is-collapsed{grid-template-columns:76px minmax(0,1fr)}.app-sidebar{background:var(--sidebar-bg);color:var(--sidebar-ink);padding:var(--space-4) var(--space-3) var(--space-3);position:sticky;top:0;height:100vh;overflow:hidden;display:flex;flex-direction:column;min-height:0;border-right:1px solid var(--sidebar-line);box-shadow:4px 0 24px #0f172a0a}.side-foot{flex:none;margin-top:auto;padding:12px 10px 8px;text-align:center;border-top:1px solid var(--sidebar-line)}.side-copy{margin:0;color:var(--sidebar-muted);font-size:.6875rem;line-height:1.45;text-align:center}.side-credit{margin-top:4px}.app-sidebar a.side-credit-link{display:inline;align-items:baseline;gap:0;min-height:0;padding:0;margin:0;border-radius:0;color:var(--navy);font-size:inherit;font-weight:650;text-decoration:underline;text-decoration-style:dotted;text-decoration-color:#94a3b8;text-underline-offset:2px}.app-sidebar a.side-credit-link:hover{background:transparent;color:var(--accent);text-decoration-color:var(--accent)}.app-sidebar a.side-credit-link:focus-visible{outline:2px solid #93c5fd;outline-offset:2px}.side-credit-ext{font-size:.85em;color:var(--sidebar-muted)}.side-version{margin:6px 0 0;color:#94a3b8;font-size:.6875rem;font-weight:600;text-align:center}.side-label.has-status{display:flex;align-items:center;gap:8px}.side-status-dot{width:7px;height:7px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 3px #22c55e2e;flex:none}.nav-badge{margin-left:auto;flex:none;min-width:20px;padding:1px 6px;border-radius:999px;font-size:.68rem;font-weight:700;line-height:1.4;color:#fff;background:#2563eb}.nav-label{flex:1 1 auto;min-width:0;line-height:1.25;white-space:nowrap;overflow:visible;text-overflow:clip}.nav-badge.tone-green{background:#16a34a}.nav-badge.tone-red{background:#dc2626}.nav-badge.tone-orange{background:#ea580c}.nav-badge.tone-blue{background:#2563eb}.side-brand{flex:none;color:var(--sidebar-ink);margin:0 6px var(--space-4);padding-bottom:var(--space-3);border-bottom:1px solid var(--sidebar-line)}.side-brand .brand-text .brand-title,.side-brand .brand-text strong{display:block;font-size:1.05rem;font-weight:800;color:var(--navy-dark);letter-spacing:-.02em}.side-brand .brand-text .brand-tagline,.side-brand .brand-text small{display:block;color:var(--sidebar-muted);font-size:var(--fs-xs);font-weight:500}.app-sidebar .side-nav{display:grid;gap:10px;flex:1 1 auto;min-height:0;align-content:start;overflow-x:auto;overflow-y:auto;overscroll-behavior:contain;padding:0 2px var(--space-2);scrollbar-width:thin;scrollbar-color:#cbd5e1 transparent}.side-nav-controls{display:flex;gap:6px;margin:0 4px 10px}.side-nav-ctrl{flex:1;min-height:30px;border:0;background:transparent;color:var(--sidebar-muted);border-radius:8px;font-size:.7rem;font-weight:650;cursor:pointer;padding:4px 6px}.side-nav-ctrl:hover{background:#f1f5f9;color:var(--accent)}.side-nav-ctrl:focus-visible{outline:2px solid #60a5fa;outline-offset:2px}.side-group{--side-tone: #2563eb;--side-tone-soft: #eff6ff;--side-tone-bar: #bfdbfe;--side-tone-ink: #1d4ed8;display:grid;gap:2px;padding:0 0 12px;margin:0 0 10px;border-bottom:1px solid var(--sidebar-line)}.side-group:last-child{border-bottom:0;margin-bottom:0;padding-bottom:4px}.side-group.tone-blue{--side-tone: #1d4ed8;--side-tone-soft: #eff6ff;--side-tone-bar: #93c5fd;--side-tone-ink: #1e3a8a}.side-group.tone-violet{--side-tone: #5b21b6;--side-tone-soft: #f5f3ff;--side-tone-bar: #c4b5fd;--side-tone-ink: #4c1d95}.side-group.tone-rose{--side-tone: #9f1239;--side-tone-soft: #fff1f2;--side-tone-bar: #fecdd3;--side-tone-ink: #881337}.side-group.tone-green{--side-tone: #166534;--side-tone-soft: #f0fdf4;--side-tone-bar: #bbf7d0;--side-tone-ink: #14532d}.side-group.tone-amber{--side-tone: #92400e;--side-tone-soft: #fffbeb;--side-tone-bar: #fde68a;--side-tone-ink: #78350f}.side-group.tone-indigo{--side-tone: #312e81;--side-tone-soft: #eef2ff;--side-tone-bar: #c7d2fe;--side-tone-ink: #1e1b4b}.side-group.tone-teal{--side-tone: #115e59;--side-tone-soft: #f0fdfa;--side-tone-bar: #99f6e4;--side-tone-ink: #134e4a}.side-group.tone-lime{--side-tone: #1d4ed8;--side-tone-soft: #eff6ff;--side-tone-bar: #93c5fd;--side-tone-ink: #1e3a8a}.side-group.tone-sky{--side-tone: #0c4a6e;--side-tone-soft: #f0f9ff;--side-tone-bar: #bae6fd;--side-tone-ink: #075985}.side-group.tone-slate{--side-tone: #334155;--side-tone-soft: #f8fafc;--side-tone-bar: #cbd5e1;--side-tone-ink: #1e293b}.side-group-toggle{width:100%;margin:0;padding:8px 10px;border:0;background:transparent;display:flex;align-items:center;flex-wrap:nowrap;gap:10px;cursor:pointer;border-radius:8px;text-align:left;font:inherit;box-shadow:none;white-space:nowrap}.side-group-toggle:hover{background:#f8fafc}.side-group.is-open>.side-group-toggle{box-shadow:none}.side-group-toggle:focus-visible{outline:2px solid var(--side-tone);outline-offset:2px}.side-group-toggle:disabled{cursor:default;opacity:1;filter:none}.side-group-toggle:disabled:hover{background:transparent}.side-group-ico{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;flex:none;color:var(--side-tone)}.side-group-ico .nav-ico{width:16px;height:16px}.side-group-title{flex:1 1 auto;min-width:0;color:var(--side-tone);font-size:.7rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;line-height:1.2;white-space:nowrap;overflow:visible}.side-group-chevron{width:.4rem;height:.4rem;border-right:1.5px solid #94a3b8;border-bottom:1.5px solid #94a3b8;transform:rotate(-45deg);transition:transform .18s ease;margin-left:4px;flex:none;opacity:.55}.side-group.is-open .side-group-chevron{transform:rotate(45deg)}.side-group-panel{display:grid;gap:2px;overflow:hidden;padding:2px 0 4px;margin:0;border-left:0;background:transparent;border-radius:0}.side-group-panel[hidden]{display:none}@media (prefers-reduced-motion: reduce){.side-group-chevron{transition:none}}.side-label{margin:0;font-size:.7rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--side-tone)}.app-sidebar a{display:flex;align-items:center;flex-wrap:nowrap;gap:12px;min-height:40px;color:#1e3a5f;text-decoration:none;padding:8px 12px;border-radius:10px;border-left:3px solid transparent;font-size:var(--fs-sm);font-weight:550;letter-spacing:-.01em;white-space:nowrap}.app-sidebar a .nav-ico{color:#3b82f6}.app-sidebar a:hover{background:#f1f5f9;color:var(--navy-dark)}.app-sidebar a:hover .nav-ico{color:var(--accent)}.app-sidebar a.on{background:#eff6ff;color:#1d4ed8;font-weight:650;border-left-color:#2563eb;box-shadow:none}.app-sidebar a.on .nav-ico{color:#2563eb}.app-sidebar a:focus-visible{outline:2px solid #93c5fd;outline-offset:2px}.nav-ico{width:18px;height:18px;flex:none}.app-shell.is-collapsed .brand-text,.app-shell.is-collapsed .side-label,.app-shell.is-collapsed .side-nav-controls,.app-shell.is-collapsed .nav-label,.app-shell.is-collapsed .side-foot,.app-shell.is-collapsed .nav-badge,.app-shell.is-collapsed .side-group-ico,.app-shell.is-collapsed .side-group-chevron,.app-shell.is-collapsed .side-status-dot{display:none}.app-shell.is-collapsed .side-group{border-bottom:0;gap:2px;margin:0;padding:0}.app-shell.is-collapsed .side-group-panel{padding:0;margin:0;border-left:0;background:transparent;border-radius:0}.app-shell.is-collapsed .app-sidebar a{justify-content:center;font-size:.72rem;text-align:center;border-left:0;padding-left:8px;padding-right:8px}.app-shell.is-collapsed .app-sidebar a.on{background:#eff6ff;color:#1d4ed8}.app-shell.is-collapsed .app-sidebar a .nav-ico{color:var(--accent)}.app-shell.is-collapsed .side-group-toggle{background:transparent;border:0}.app-shell.is-collapsed .side-group-toggle{margin:4px;padding:0;min-height:0;height:0;overflow:hidden}.app-main{min-width:0;display:flex;flex-direction:column}.topbar{display:flex;align-items:center;gap:var(--space-3);min-height:var(--header);padding:var(--space-2) var(--space-6);background:#fffffff5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5;box-shadow:0 1px #0f172a05}.crumbs{flex:1;min-width:0}.crumbs ol{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:0;padding:0;color:var(--muted);font-size:var(--fs-sm)}.crumbs a{color:var(--muted);text-decoration:none}.crumbs a:hover{color:var(--accent)}.crumbs li:not(:last-child):after{content:"›";margin-left:6px;color:#94a3b8}.crumbs li:last-child{color:var(--ink);font-weight:650}.topbar-meta{display:flex;align-items:center;gap:var(--space-3);margin-left:auto}.topbar-bell{position:relative;color:#334155}.topbar-bell .nav-ico{width:18px;height:18px}.topbar-bell-badge{position:absolute;top:2px;right:2px;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:#ef4444;color:#fff;font-size:.62rem;font-weight:700;line-height:16px;text-align:center}.top-search{position:relative;flex:1;min-width:180px;max-width:640px}.top-search input{width:100%;min-height:var(--control-h);border-radius:var(--radius-pill);background:#f8fafc;border:1px solid var(--line);padding:0 88px 0 16px;font:inherit;color:var(--ink);box-shadow:inset 0 1px #fffc}.top-search input:focus{outline:none;border-color:#93c5fd;background:#fff;box-shadow:0 0 0 3px #2563eb26}.top-search-kbd{position:absolute;right:10px;top:50%;transform:translateY(-50%);pointer-events:none;font:inherit;font-size:.68rem;font-weight:650;color:#64748b;background:#fff;border:1px solid var(--line);border-radius:6px;padding:3px 7px;line-height:1}.year-chip{margin:0;white-space:nowrap;padding:6px 12px;border-radius:var(--radius-pill);background:var(--accent-soft);color:var(--navy);font-size:var(--fs-xs);font-weight:700;border:1px solid #dbeafe}.icon-btn{min-width:40px;padding:0 10px}.profile-copy{display:grid;line-height:1.2}.profile-copy small{color:var(--muted);font-size:.72rem}.content-crumbs,.shell-welcome,.wrap,.workspace-main,.faculty-studio{box-sizing:border-box;width:min(100%,1440px);max-width:1440px;margin-left:auto;margin-right:auto;padding-left:var(--space-6);padding-right:var(--space-6)}.content-crumbs{flex:none;padding:var(--space-3) 0 0}.inst-tools input,.inst-tools select,.inst-tools .btn,.mgmt-tools input,.mgmt-tools select,.mgmt-tools .btn,.audit-filters input,.audit-filters select,.audit-filters .btn,.rep-toolbar select,.rep-toolbar .btn,.plat .programme-actions .btn{min-height:42px}.inst-tools .btn,.mgmt-tools .btn,.audit-filters .btn,.rep-toolbar .btn,.pd-actions .btn,.programme-actions .btn{display:inline-flex;align-items:center;justify-content:center;gap:6px}.inst-board table th,.rep table th,.audit-board table th,.plat table th{font-size:.72rem;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-weight:700}.uni-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:16px}.uni-kpis article{display:grid;grid-template-columns:40px minmax(0,1fr);column-gap:10px;align-items:center;padding:14px;border-radius:16px;border:1px solid transparent;min-width:0}.uni-kpis b{font-size:1.35rem;color:var(--navy);line-height:1.1}.uni-kpis small{color:#15803d;font-weight:650}.uni-kpis span{overflow-wrap:anywhere}.kpi-icon{grid-row:1 / span 3;width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#fffc;color:var(--navy)}.kpi-institutions{background:#eef2ff}.kpi-students{background:#ecfdf5}.kpi-faculty{background:#f5f3ff}.kpi-programmes{background:#fff7ed}.kpi-resources{background:#fef2f2}.level-list{list-style:none;padding:0;margin:0;display:grid;gap:6px;font-size:.82rem}.uni-charts>article,.uni-charts>article .level-list{min-width:0}.swatch{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:6px}@media (max-width: 1280px){.uni-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 900px){.uni-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 480px){.uni-kpis{grid-template-columns:1fr}}.workspace-name,.profile-name{margin:0;font-size:.82rem}.workspace-name{color:var(--navy);font-weight:700}.profile-chip{display:flex;align-items:center;gap:8px;margin:0}.profile-name{color:var(--muted);max-width:28ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.avatar{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#dbeafe;color:var(--navy);font-size:.72rem;font-weight:700;flex:none}.nav-toggle,.scrim{display:none}.collapse-toggle{display:inline-flex}main{flex:1;min-width:0}.wrap,.workspace-main,.faculty-studio{padding-top:var(--space-4);padding-bottom:var(--space-6)}.classroom-wrap{max-width:none;width:auto}.workspace{background:transparent;min-width:0}.workspace-main{display:grid;gap:0;align-content:start}.page-actions,.mgmt-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:flex-end}.page-header .page-actions{margin-left:auto}.mgmt-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap;margin:0 0 16px}.mgmt-head>div:first-child{min-width:0;flex:1 1 240px}.console-head,.hero-banner{display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px;align-items:flex-start;margin-bottom:20px;padding:24px 28px;border-radius:16px;background:linear-gradient(135deg,#1d4ed8,#2563eb 52%,#3b82f6);color:#fff;box-shadow:0 14px 36px #2563eb33}.console-head h2,.hero-banner h2{margin:0 0 6px;font-size:1.7rem;letter-spacing:-.03em;color:#fff}.console-head .lede,.hero-banner .lede{color:#dbeafe;max-width:68ch}.console-head .eyebrow,.hero-banner .eyebrow{color:#bfdbfe}.page-header{display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px;align-items:flex-start;margin:0 0 16px;padding:0;background:transparent;color:inherit;box-shadow:none}.page-header.hero-banner{background:transparent;color:inherit;box-shadow:none;padding:0}.page-header h2,.page-header.hero-banner h2{margin:0 0 4px;color:var(--navy-dark);font-size:1.45rem;letter-spacing:-.02em}.page-header .lede,.page-header.hero-banner .lede{margin:0;color:var(--muted);max-width:68ch}.page-header .eyebrow{color:var(--muted)}.page-header .hero-chips li{background:#fff;border:1px solid var(--line);color:var(--navy)}.hero-copy{min-width:min(100%,28rem)}.hero-chips{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:12px 0 0;padding:0}.hero-chips li,.hero-stats div{background:#ffffff24;border:1px solid rgba(255,255,255,.2);border-radius:999px;padding:6px 12px;font-size:.78rem}.hero-stats{display:flex;flex-wrap:wrap;gap:10px;margin:0}.hero-stats dt{color:#dbeafe;font-size:.72rem}.hero-stats dd{margin:2px 0 0;font-size:1.15rem;font-weight:700}h2{margin:0 0 6px;font-size:var(--fs-2xl);letter-spacing:-.025em;font-weight:800;color:var(--navy-dark)}h3{margin:0 0 8px;font-size:var(--fs-lg);font-weight:700;color:var(--navy-dark);letter-spacing:-.015em}.card,.hero,.panel,.console-form{background:var(--card);border:1px solid var(--line-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:var(--space-5);margin-bottom:var(--space-4)}.hero{background:linear-gradient(135deg,#1d4ed8,#2563eb 52%,#3b82f6);color:#fff;border:0}.hero h2,.hero .eyebrow{color:#fff}.hero .lede{color:#dbeafe}.eyebrow{margin:0 0 4px;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--navy);font-weight:700}.lede{margin:0;color:var(--muted);max-width:68ch}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;margin:16px 0}.kpi{background:#fff;border:1px solid var(--line);padding:18px 20px;border-radius:16px;box-shadow:var(--shadow)}.kpi span{font-size:.78rem;color:var(--muted)}.kpi b{display:block;font-size:1.75rem;color:var(--navy-dark);margin-top:4px;letter-spacing:-.03em}.kpi small{display:block;margin-top:4px;color:var(--muted)}.flag,.chip{font-size:.75rem;font-weight:700;padding:4px 8px;border-radius:999px;background:#e8eefc;color:var(--navy)}.flag.ok,.chip-published,.chip-active,.chip-up,.chip-approved,.chip-enrolled{background:var(--ok-bg);color:var(--ok)}.flag.breach,.chip-rejected,.chip-inactive{background:var(--danger-bg);color:var(--danger)}.chip-draft{background:#e2e8f0;color:#334155}.chip-in_review,.chip-pending{background:var(--warn-bg);color:var(--warn);box-shadow:inset 3px 0 0 var(--warn-accent)}.btn,button.primary,.btn.ghost,.btn.danger{min-height:var(--control-h-lg);border-radius:var(--radius-sm);padding:8px 16px;font:inherit;font-size:var(--fs-sm);font-weight:650;letter-spacing:-.01em;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:6px;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease,color .15s ease}.btn,button.primary{background:var(--accent);color:#fff;border:1px solid var(--accent);box-shadow:0 1px 2px #2563eb33}.btn:hover:not(:disabled),button.primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.btn.ghost{background:#fff;color:var(--navy);border:1px solid var(--line-strong);box-shadow:none}.btn.ghost:hover:not(:disabled){background:var(--accent-soft);border-color:#bfdbfe;color:var(--accent-hover)}.btn.danger,.btn.ghost.danger{color:var(--danger);border-color:#fecaca;background:#fff;box-shadow:none}.btn:disabled,button:disabled{opacity:.55;cursor:not-allowed}.btn.nav-toggle,.scrim{display:none}footer{padding:16px 24px;font-size:.78rem;color:var(--muted);border-top:1px solid var(--line);background:#fff;margin-top:auto}.err{color:var(--danger)}.premium-form-error{margin:0 0 12px;padding:10px 12px;border-radius:10px;border:1px solid #fecaca;background:#fef2f2;color:#991b1b;font-weight:600;font-size:.9rem;line-height:1.4}.premium-field-hint{display:block;margin-top:4px;color:#64748b;font-size:.78rem;font-weight:500;line-height:1.35}.premium-field-error{display:block;margin-top:4px;color:#b91c1c;font-size:.8rem;font-weight:600}.action-drawer-panel input[aria-invalid=true],.action-drawer-panel select[aria-invalid=true],.action-drawer-panel textarea[aria-invalid=true]{border-color:#f87171!important;box-shadow:0 0 0 1px #fecaca}.premium-help-details{margin:0;padding:10px 12px;border-radius:12px;border:1px solid #bfdbfe;background:#f8fbff;color:#1e3a8a}.premium-help-details summary{display:flex;align-items:center;gap:8px;cursor:pointer;font-weight:700;font-size:.88rem;list-style:none}.premium-help-details summary::-webkit-details-marker{display:none}.premium-help-details summary .nav-ico{width:16px;height:16px;color:#2563eb;flex:none}.premium-help-details-body{margin-top:8px;font-size:.82rem;font-weight:500;line-height:1.45;color:#334155}.premium-help-details-body p{margin:0 0 8px}.premium-help-details-body ul{margin:0;padding-left:1.1rem;display:grid;gap:4px}.empty{color:var(--muted);background:#f8fafc;border:1px dashed var(--line);border-radius:var(--radius);padding:16px}.pd-hierarchy-empty{display:grid;gap:12px;justify-items:start}.pd-hierarchy-empty p{margin:0;max-width:42rem}.pd-structure-actions{justify-content:flex-start;margin:0 0 12px}.pd-course-actions{display:flex;flex-wrap:wrap;gap:6px;align-items:center}table{width:100%;border-collapse:collapse;margin:var(--space-2) 0 var(--space-4);background:#fff}th,td{text-align:left;border-bottom:1px solid var(--line);padding:12px 10px;font-size:var(--fs-sm);vertical-align:middle;color:var(--ink)}th{color:var(--muted);font-size:var(--fs-xs);font-weight:700;letter-spacing:var(--track-label);text-transform:uppercase;background:#f8fafc}tbody tr:hover td{background:#f8fbff}.filters,.console-toolbar{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:end;margin:var(--space-3) 0}.filters label,.console-toolbar label,.console-form label,.stack-label{display:grid;gap:4px;font-size:var(--fs-sm);color:var(--ink);font-weight:550}input,select,textarea{min-width:180px;max-width:100%;min-height:var(--control-h);padding:10px 12px;border:1px solid var(--line-strong);border-radius:var(--radius-sm);font:inherit;font-size:var(--fs-sm);color:var(--ink);background:#fff;transition:border-color .15s ease,box-shadow .15s ease}input:focus,select:focus,textarea:focus{outline:none;border-color:#93c5fd;box-shadow:0 0 0 3px #2563eb24}input[type=radio],input[type=checkbox]{min-width:0;width:1.05rem;height:1.05rem;max-width:1.05rem;margin:0;padding:0;border:0;border-radius:0;background:transparent;accent-color:var(--accent)}textarea{min-height:96px;width:min(100%,640px)}.console-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.console-form label{text-transform:none;letter-spacing:0}.console-form input,.console-form select,.console-form textarea{width:100%;min-width:0}.pager,.table-head,.row-actions,.page-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.table-head{justify-content:space-between;margin-top:8px}.table-head h3{margin:0}.console-toolbar .toolbar-add{margin-left:auto}.action-drawer,.action-drawer.action-drawer--modal,.action-drawer.inst-drawer,.action-drawer.academic-create-drawer,.action-drawer.pd-drawer,.action-drawer.cal-event-drawer,.action-drawer.ra-drawer,.action-drawer.academic-assign-drawer{position:fixed!important;top:0!important;right:0!important;bottom:0!important;left:0!important;z-index:60;display:grid!important;place-items:center!important;justify-content:center!important;align-items:center!important;padding:16px!important;box-sizing:border-box;margin:0!important}.drawer-scrim{position:absolute;top:0;right:0;bottom:0;left:0;border:0;background:#0b1f4485;display:block}.action-drawer-panel,.action-drawer--modal .action-drawer-panel,.inst-drawer .action-drawer-panel,.academic-create-drawer .action-drawer-panel,.pd-drawer .action-drawer-panel,.cal-event-drawer .action-drawer-panel,.ra-drawer .action-drawer-panel,.academic-assign-drawer .action-drawer-panel{position:relative!important;inset:auto!important;right:auto!important;left:auto!important;top:auto!important;bottom:auto!important;z-index:1;width:min(784px,calc(100vw - 40px))!important;max-width:calc(100vw - 40px)!important;max-height:min(92dvh,920px)!important;height:auto!important;margin:0 auto!important;overflow-x:hidden!important;overflow-y:auto;background:var(--card)!important;padding:var(--space-5);border:1px solid var(--line-strong)!important;border-radius:var(--radius-lg)!important;box-shadow:var(--shadow-lg),0 24px 48px #0f172a2e!important;box-sizing:border-box;display:flex;flex-direction:column;font-family:var(--font)}.academic-create-drawer .action-drawer-panel,.inst-drawer .action-drawer-panel,.cal-event-drawer .action-drawer-panel,.ra-drawer .action-drawer-panel,.pd-drawer.academic-create-drawer .action-drawer-panel{padding:0!important}.action-drawer-panel>h3{margin:0;padding:18px 20px 14px;color:#fff;font-size:1.2rem;font-weight:800;letter-spacing:-.01em;text-shadow:0 1px 2px rgba(15,23,42,.3);background:radial-gradient(circle at 88% 20%,rgba(255,255,255,.12),transparent 42%),linear-gradient(115deg,#0f1f4d,#1d4ed8 55%,#4f46e5);border-radius:16px 16px 0 0}.action-drawer-panel>h3:only-child{border-radius:16px}.action-drawer-panel>form.console-form:not(.academic-create-form){display:grid;gap:12px;min-width:0}.action-drawer-panel>form.console-form:not(.academic-create-form)>label{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 4px;font-size:.85rem;font-weight:600;color:#334155;min-width:0}.action-drawer-panel>form.console-form:not(.academic-create-form)>label>input:not([type=radio]):not([type=checkbox]),.action-drawer-panel>form.console-form:not(.academic-create-form)>label>select,.action-drawer-panel>form.console-form:not(.academic-create-form)>label>textarea{flex:1 1 100%;width:100%;max-width:100%;min-width:0;box-sizing:border-box;padding:10px 12px;border:1px solid #cbd5e1;border-radius:10px;font:inherit;font-weight:500;background:#fff}.action-drawer-panel>.row-actions,.action-drawer-panel>form>.row-actions:not(.assign-create-footer){display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;margin-top:8px;padding-top:12px;border-top:1px solid #e2e8f0}.action-drawer-panel .console-form{margin:0;box-shadow:none;border:0;padding:0}.action-drawer-panel .req,.inst-drawer .req,.academic-create-form .req,.assign-step-body .req{color:#dc2626;font-weight:700}.action-drawer-panel .optional{color:#64748b;font-weight:500}.more-menu{position:relative}.more-menu summary{list-style:none}.more-menu summary::-webkit-details-marker{display:none}.more-menu div{position:absolute;right:0;z-index:6;display:grid;gap:8px;min-width:180px;padding:8px;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}.list-meta{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;margin:8px 0}.mgmt-head h2{margin:0 0 4px;color:var(--navy-dark);font-size:1.45rem;letter-spacing:-.02em}.mgmt-head .lede{margin:0}.btn.dark{background:#111827;color:#fff;border-color:#111827;border-radius:999px;padding-inline:18px}.mgmt-tools{display:flex;flex-wrap:wrap;gap:12px;align-items:end;margin-bottom:12px}.mgmt-bar{flex:1 0 100%;display:flex;gap:12px;align-items:end}.mgmt-tools label{display:grid;gap:4px;font-size:.78rem;color:var(--muted)}.mgmt-bar{display:flex;gap:12px;align-items:end}.mgmt-search{flex:1;min-width:0}.mgmt-search input,.mgmt-tools select{min-height:42px}.mgmt-search input{width:100%;border-radius:999px;background:#fff}.mgmt-tools>label,.mgmt-tools>button{justify-self:start}.mgmt-tools>button{min-height:40px}.record-count{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 12px;font-size:.82rem;color:var(--muted);white-space:nowrap}.mgmt-table{background:#fff;border:1px solid var(--line);border-radius:16px;padding:8px 16px 16px;box-shadow:var(--shadow)}.mgmt-table .btn{min-height:34px;border-radius:999px}.detail-card{margin-top:16px;padding-top:12px;border-top:1px solid var(--line)}.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 24px;margin:8px 0 0}.detail-grid dt{color:#1e293b;font-size:.82rem;font-weight:700;letter-spacing:.01em}.detail-grid dd{margin:4px 0 0;font-size:.98rem;font-weight:500;line-height:1.45;color:#0f172a}.inst-drawer-view-body{padding:16px 20px 12px;overflow:auto;flex:1 1 auto;min-height:0}.inst-drawer-view-foot{margin-top:4px;padding-top:12px;border-top:1px solid #e2e8f0}.inst-drawer .action-drawer-panel:has(.inst-drawer-view-body){display:flex;flex-direction:column;max-height:min(90dvh,880px)}.workspace-main{align-self:start}.list-meta p{margin:0}.list-meta label{display:flex;align-items:center;gap:8px;font-size:.85rem;color:var(--ink)}.list-meta select{min-width:0}.record-dialog{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:grid;place-items:center;background:#0b1f447a;padding:16px}.record-dialog .console-form{width:min(520px,100%);max-height:calc(100vh - 32px);overflow:auto}.people-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}.people-list li{display:flex;align-items:center;gap:12px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:#fff}.resource-card,.learn-card,.course-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px;margin:0 0 12px;box-shadow:var(--shadow)}.resource-card p,.learn-card p,.course-card p{margin:4px 0 8px;color:var(--muted)}.course-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;margin:16px 0 24px}.course-card{margin:0;display:grid;gap:8px;align-content:start}.course-card h3{margin:0;color:var(--navy)}.classroom{display:grid;grid-template-columns:minmax(220px,280px) minmax(0,1fr) minmax(220px,300px);gap:16px;align-items:start}.classroom-nav,.classroom-rail,.classroom-main{min-width:0}.classroom-nav .tree-btn[aria-current=page]{color:var(--accent);font-weight:700}.classroom.content-split{grid-template-columns:minmax(220px,300px) minmax(0,1fr)}.classroom-nav .hierarchy-tree,.classroom-nav .hierarchy-tree ul{list-style:none;margin:0;padding:0}.classroom-nav .hierarchy-tree ul{padding-left:12px;border-left:2px solid #dbe4f3;margin:4px 0 8px 4px}.classroom-nav .tree-label{display:block;font-weight:650;color:var(--navy);padding:6px 0 2px;overflow-wrap:anywhere}.classroom-nav .tree-label.is-open{color:var(--accent)}.classroom-nav .tree-btn{width:100%;overflow-wrap:anywhere;border-radius:8px;padding:6px 8px}.classroom-nav .tree-btn[aria-current=page]{background:#dbeafe}.learn-crumbs{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:0 0 8px;padding:0;color:var(--muted);font-size:.85rem}.learn-crumbs li:not(:last-child):after{content:"/";margin-left:6px}.learn-crumbs li:last-child{color:var(--navy);font-weight:600}.topic-panel ul{list-style:none;padding:0;display:grid;gap:10px}.resource-row{border:1px solid var(--line);border-radius:12px;padding:12px}.resource-row.is-open{border-color:var(--accent)}.resource-body{white-space:pre-wrap;background:#f8fafc;border-radius:8px;padding:12px;color:var(--ink)}.topic-pager{margin-top:16px}.rail-list p{margin:0 0 6px}.meter{height:8px;border-radius:999px;background:#e2e8f0;overflow:hidden}.meter span{display:block;height:100%;background:var(--accent)}.detail-list{display:grid;grid-template-columns:auto 1fr;gap:6px 16px;margin:12px 0}.detail-list dt{color:var(--muted)}.detail-list dd{margin:0;font-weight:650;color:var(--navy)}.learn-rest .row-actions .btn{min-height:40px;font-size:.9rem;padding:8px 14px}.learn-rest .row-actions .btn:not(.ghost):not(.danger){background:var(--accent);color:#fff;border:1px solid var(--accent)}.learn-rest .row-actions .btn.ghost{background:#fff;color:var(--navy);border:1px solid #c5d0e6}.hierarchy{display:grid;gap:12px;list-style:none;padding:0;margin:0 0 16px}.hierarchy>li,.hierarchy ol{list-style:none}.hierarchy ol{padding-left:16px;border-left:2px solid #dbe4f3;margin:8px 0}.attempt-focus .learn-rest{display:none}.attempt-board{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:20px}body.attempt-open .content-crumbs{display:none}.attempt-board.student-attempt-board{background:transparent;border:0;box-shadow:none;padding:0;display:grid;gap:14px}.student-attempt-crumbs ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px 8px;align-items:center;color:#64748b;font-size:.86rem}.student-attempt-crumbs li{display:inline-flex;align-items:center;gap:8px}.student-attempt-crumbs li:not(:last-child):after{content:"›";color:#94a3b8}.student-attempt-crumbs a,.student-attempt-crumbs button{border:0;background:transparent;color:#2563eb;cursor:pointer;padding:0;font:inherit;text-decoration:none}.student-attempt-crumbs [aria-current=page]{color:#0f172a;font-weight:650}.student-attempt-back{display:inline-flex;align-items:center;gap:8px;width:fit-content;border:0;background:transparent;color:#1d4ed8;font-weight:650;cursor:pointer;padding:0}.student-attempt-back:hover{text-decoration:underline}.student-attempt-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(270px,300px);gap:18px;align-items:start}.student-attempt-main{display:grid;gap:14px}.student-attempt-hero{display:grid;gap:16px;padding:20px 22px;border-radius:16px;border:1px solid #dbeafe;background:linear-gradient(180deg,#eff6ff,#fff 55%);box-shadow:0 10px 24px #2563eb0f}.student-attempt-title-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px}.student-attempt-title-row h2{margin:0;font-size:1.55rem;color:#0f172a;letter-spacing:-.02em}.student-attempt-status{display:inline-flex;align-items:center;padding:5px 12px;border-radius:999px;background:#ede9fe;color:#6d28d9;font-weight:700;font-size:.78rem}.student-attempt-sub{display:flex;flex-wrap:wrap;gap:6px 10px;margin:8px 0 0;color:#64748b;font-size:.9rem;word-break:break-word}.student-attempt-note{margin:6px 0 0;color:#94a3b8;font-size:.82rem}.student-attempt-kpis{list-style:none;margin:0;padding:14px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;border-radius:14px;border:1px solid #bfdbfe;background:#ffffffd1}.student-attempt-kpis li{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:start;min-width:0}.student-attempt-kpis span:not(.student-attempt-kpi-ico){display:block;color:#64748b;font-size:.74rem;margin-bottom:3px;font-weight:650}.student-attempt-kpis strong{display:block;color:#0f172a;font-size:.92rem;line-height:1.35}.student-attempt-kpi-ico{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;flex-shrink:0}.student-attempt-kpi-ico .nav-ico{width:17px;height:17px}.student-attempt-kpi-ico.tone-blue{background:#dbeafe;color:#1d4ed8}.student-attempt-kpi-ico.tone-violet{background:#ede9fe;color:#6d28d9}.student-attempt-kpi-ico.tone-green{background:#dcfce7;color:#15803d}.student-attempt-kpi-ico.tone-orange{background:#ffedd5;color:#c2410c}.student-attempt-question{padding:20px 22px;border-radius:16px;border:1px solid #e2e8f0;background:#fff;box-shadow:0 8px 20px #0f172a0a;display:grid;gap:14px}.student-attempt-question.is-current{border-color:#93c5fd;box-shadow:0 12px 28px #2563eb14}.student-attempt-q-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:10px}.student-attempt-q-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px}.student-attempt-q-label{margin:0;font-size:.84rem;color:#64748b;font-weight:700}.student-attempt-kind{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;font-size:.74rem;font-weight:700}.student-attempt-kind.tone-mcq{background:#dcfce7;color:#15803d}.student-attempt-kind.tone-tf{background:#ede9fe;color:#6d28d9}.student-attempt-mark,.student-attempt-mark-rail{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid #cbd5e1;background:#fff;color:#334155;border-radius:10px;padding:8px 12px;font-weight:650;cursor:pointer}.student-attempt-mark .nav-ico,.student-attempt-mark-rail .nav-ico,.student-attempt-submit .nav-ico{width:16px;height:16px}.student-attempt-mark.is-on,.student-attempt-mark-rail:focus-visible{border-color:#fbbf24;background:#fffbeb;color:#b45309}.student-attempt-question h3{margin:0;font-size:1.08rem;color:#0f172a;line-height:1.45}.student-attempt-options{display:grid;gap:10px}.student-attempt-options.is-tf{grid-template-columns:repeat(2,minmax(0,1fr))}.student-attempt-options label{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:center;padding:13px 14px;border-radius:12px;border:1.5px solid #e2e8f0;background:#fff;cursor:pointer;color:#0f172a;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}.student-attempt-options label:hover{border-color:#93c5fd;background:#f8fbff}.student-attempt-options label.is-selected{border-color:#2563eb;background:#eff6ff;box-shadow:inset 0 0 0 1px #2563eb}.student-attempt-options input{accent-color:#2563eb;width:18px;height:18px}.student-attempt-q-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding-top:2px}.student-attempt-clear{border:0;background:transparent;color:#dc2626;font-weight:650;cursor:pointer;padding:8px 0}.student-attempt-clear:disabled{opacity:.45;cursor:not-allowed}.student-attempt-next{min-width:140px;justify-content:center}.student-attempt-rail{display:grid;gap:12px;position:sticky;top:12px}.student-attempt-rail .panel{padding:16px;border-radius:16px;border:1px solid #e2e8f0;background:#fff;box-shadow:0 8px 20px #0f172a0a}.student-attempt-rail h3{margin:0 0 12px;font-size:.95rem;color:#0f172a}.student-attempt-timer-head{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;margin-bottom:12px}.student-attempt-timer-head h3{margin:0}.student-attempt-timer-ico{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:#dbeafe;color:#2563eb}.student-attempt-timer-ico .nav-ico{width:18px;height:18px}.student-attempt-timer-value{font-size:1.45rem;color:#2563eb;letter-spacing:.02em;font-variant-numeric:tabular-nums;line-height:1}.student-attempt-timer-bar{height:8px;border-radius:999px;background:#e2e8f0;overflow:hidden}.student-attempt-timer-bar span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#3b82f6,#2563eb);transition:width .4s linear}.student-attempt-nav-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-bottom:12px}.student-attempt-nav-btn{aspect-ratio:1;border-radius:10px;border:1px solid #cbd5e1;background:#f8fafc;color:#334155;font-weight:700;cursor:pointer}.student-attempt-nav-btn.is-current{background:#2563eb;border-color:#2563eb;color:#fff}.student-attempt-nav-btn.is-answered{background:#dcfce7;border-color:#86efac;color:#15803d}.student-attempt-nav-btn.is-marked{background:#fef3c7;border-color:#fbbf24;color:#b45309}.student-attempt-legend{list-style:none;margin:0;padding:0;display:grid;gap:6px;font-size:.8rem;color:#475569}.student-attempt-legend li{display:flex;align-items:center;gap:8px}.student-attempt-legend .dot{width:10px;height:10px;border-radius:50%;display:inline-block}.student-attempt-legend .dot.current{background:#2563eb}.student-attempt-legend .dot.idle{background:#cbd5e1}.student-attempt-legend .dot.answered{background:#22c55e}.student-attempt-legend .dot.marked{background:#f59e0b}.student-attempt-actions{display:grid;gap:10px}.student-attempt-mark-rail,.student-attempt-submit{width:100%}.student-attempt-mark-rail{border-color:#93c5fd;background:#eff6ff;color:#1d4ed8}.student-attempt-submit{display:inline-flex;align-items:center;justify-content:center;gap:8px}.student-attempt-help{background:linear-gradient(180deg,#eef2ff,#f8fafc)!important;border-color:#c7d2fe!important}.student-attempt-help h3{display:flex;align-items:center;gap:8px}.student-attempt-help-ico{width:22px;height:22px;border-radius:50%;display:inline-grid;place-items:center;background:#2563eb;color:#fff;font-size:.75rem;font-weight:800;font-style:italic}.student-attempt-help ul{margin:0;padding-left:18px;display:grid;gap:6px;color:#334155;font-size:.86rem}@media (max-width: 1100px){.student-attempt-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.student-attempt-layout{grid-template-columns:1fr}.student-attempt-rail{position:static}.student-attempt-options.is-tf{grid-template-columns:1fr}}@media (max-width: 640px){.student-attempt-kpis{grid-template-columns:1fr}}fieldset{border:1px solid var(--line);border-radius:10px;margin:0 0 12px;padding:12px}legend{font-weight:700;padding:0 4px}.skeleton{display:grid;gap:10px}.skeleton span:not(.sr){display:block;height:16px;border-radius:8px;background:linear-gradient(90deg,#e8eef6,#f8fafc,#e8eef6);background-size:200% 100%;animation:shimmer 1.2s ease-in-out infinite}.skeleton span:nth-child(2){width:46%;height:28px}.skeleton span:nth-child(4){width:72%}.pre{font-family:Consolas,monospace;font-size:.82rem;background:#f8fafc;padding:12px;overflow:auto;border-radius:8px}@media (prefers-reduced-motion: reduce){.skeleton span:not(.sr){animation:none}}@keyframes shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media (max-width: 1023px){.app-shell,.app-shell.is-collapsed{grid-template-columns:1fr}.btn.collapse-toggle{display:none}.btn.nav-toggle{display:inline-flex}.app-sidebar{position:fixed;z-index:30;inset:0 auto 0 0;height:100vh;width:min(90vw,340px);transform:translate(-105%);visibility:hidden;transition:transform .2s ease,visibility .2s ease}.app-shell.nav-open .app-sidebar{transform:none;visibility:visible}.topbar{flex-wrap:wrap;gap:8px;padding:8px 12px}.top-search{flex:1 1 100%;order:3;min-width:0}.year-chip{order:2}.topbar-meta{margin-left:0}.crumbs{flex-basis:100%;order:4}.app-shell.nav-open .scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#0b1f4466;z-index:25;border:0}.topbar-meta{gap:8px}.profile-name{display:none}.shell-welcome.uni-welcome{flex-direction:column;align-items:flex-start}.uni-date{justify-items:start;text-align:left;min-width:0}.campus-mark{width:min(160px,100%);height:auto}}@media (max-width: 720px){.filters,.console-toolbar{display:grid}.filters input,.filters select,.console-toolbar input,.console-toolbar select{min-width:0;width:100%}.console-toolbar .toolbar-add{margin-left:0;justify-self:start}.action-drawer-panel{width:min(100%,calc(100vw - 24px));max-height:min(92dvh,880px)}.content-crumbs,.shell-welcome,.wrap,.workspace-main{padding-left:12px;padding-right:12px}.wrap,.workspace-main{padding-top:12px;padding-bottom:24px}.page-header,.console-head{flex-direction:column}.panel .filters{display:grid;grid-template-columns:1fr}.panel .filters h3,.panel .filters .btn{grid-column:1}table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.year-chip{display:none}.uni-welcome{padding:16px}.uni-welcome .role-title{font-size:1.25rem}.role-pill{display:inline-block;margin:6px 0 0}.chart-head{align-items:stretch}.chart-head .section-tabs{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:4px;width:100%;-webkit-overflow-scrolling:touch}.chart-head .section-tabs button{flex:none;white-space:nowrap}.range-label,.range-label select,.programme-search input{width:100%}.pub-bars{gap:6px;padding:0 2px}.pub-col small{font-size:.62rem}}.studio-grid,.studio-board{display:grid;grid-template-columns:minmax(240px,300px) minmax(0,1fr) minmax(260px,320px);gap:16px;align-items:start}.faculty-studio .studio-head{display:flex;flex-wrap:wrap;gap:16px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px 18px;margin-bottom:16px;box-shadow:var(--shadow)}.studio-brand{display:flex;gap:12px;align-items:flex-start;min-width:280px;flex:1 1 320px}.studio-brand-product{margin:0 0 4px;text-transform:uppercase;letter-spacing:.08em;font-size:.68rem;font-weight:800;color:#1d4ed8}.studio-mark{width:46px;height:46px;border-radius:12px;background:#2563eb;color:#fff;display:grid;place-items:center;font-size:1.2rem;flex:none}.studio-mark-glyph{line-height:1}.studio-head h2{margin:0;color:#1d4ed8;font-size:1.45rem;letter-spacing:-.02em;white-space:nowrap}.studio-head p{margin:4px 0 0;color:var(--muted);font-size:.88rem}.studio-tools{display:flex;flex-wrap:wrap;gap:12px 16px;align-items:center;margin-left:auto}.studio-toolbar{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.studio-kpis{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}.studio-kpis li{min-width:88px;padding:8px 12px;border-radius:12px;background:#fff;border:1px solid var(--line)}.studio-kpis b{display:block;font-size:1.25rem;color:var(--navy);line-height:1.1}.studio-kpis span{font-size:.75rem;color:var(--muted)}.studio-kpis li:nth-child(1){background:#eff6ff}.studio-kpis li:nth-child(2){background:#fff7ed}.studio-kpis li:nth-child(3){background:#ecfdf5}.studio-kpis li:nth-child(4){background:#fef2f2}.studio-steps{display:flex;gap:0;list-style:none;margin:0 0 18px;padding:0}.studio-steps li{flex:1;position:relative;text-align:center}.studio-steps li:not(:last-child):after{content:"";position:absolute;top:18px;left:calc(50% + 18px);width:calc(100% - 36px);height:2px;background:#e2e8f0}.studio-steps button{border:0;background:transparent;font:inherit;cursor:pointer;color:var(--muted);display:grid;justify-items:center;gap:6px;min-height:44px;padding:0}.studio-steps button:before{content:attr(data-n);width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#e2e8f0;color:#475569;font-weight:700;font-size:.82rem}.studio-steps .on button{color:#1d4ed8;font-weight:700}.studio-steps .on button:before{background:#2563eb;color:#fff}.studio-editor{display:grid;gap:12px}.studio-editor h3{margin:0;color:var(--navy-dark);font-size:1.05rem}.studio-editor h3 span{display:block;margin-top:2px;color:var(--muted);font-size:.78rem;font-weight:650}.field-label{margin:0;font-size:.82rem;font-weight:700;color:var(--navy)}.faculty-studio label{display:grid;gap:6px;font-size:.82rem;font-weight:700;color:var(--navy);min-width:0}.faculty-studio input,.faculty-studio select,.faculty-studio textarea{width:100%;min-width:0;font-weight:500;border-radius:10px}.description-field{position:relative}.description-field textarea{min-height:96px}.char-count{justify-self:end;color:var(--muted);font-weight:600}.meta-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(148px,1fr));gap:10px}.type-row{display:flex;flex-wrap:wrap;gap:8px}.type-row button{min-height:40px;border-radius:10px;border:1px solid var(--line);background:#fff;font:inherit;cursor:pointer;padding:6px 12px;color:var(--navy)}.type-row button[aria-pressed=true]{background:#eff6ff;border-color:#2563eb;color:#1d4ed8;font-weight:700}.kind-note,.policy-note{margin:0;padding:10px 12px;border-radius:10px;background:#eff6ff;color:#1e3a8a;font-size:.82rem}.review-note{margin:0 0 12px;padding:10px 12px;border-radius:10px;background:#fff7ed;border:1px solid #fed7aa;color:#9a3412;font-size:.86rem}.editor-tools{display:flex;flex-wrap:wrap;gap:6px;padding:8px;border:1px solid var(--line);border-bottom:0;border-radius:10px 10px 0 0;background:#f8fafc}.editor-tools button{min-height:32px;min-width:32px;border:0;background:transparent;font:inherit;font-weight:700;cursor:pointer;color:var(--navy)}.editor-sheet{border:1px solid var(--line);border-radius:0 0 10px 10px;min-height:140px;padding:12px 14px;background:#fff}.editor-sheet h4{margin:0 0 8px}.editor-sheet p{margin:0;white-space:pre-wrap}.studio-search input{width:100%;border-radius:999px;min-height:40px}.studio-programme{display:grid;gap:8px;margin-bottom:10px}.studio-programme select{width:100%;min-height:40px;border:1px solid var(--line);border-radius:10px;padding:8px 10px;background:#fff}.studio-programme .btn{justify-self:start;background:#fff;color:var(--navy);border:1px solid var(--line)}.studio-hierarchy{margin-top:8px;max-height:min(70vh,640px);overflow:auto}.studio-hierarchy .fs-row{grid-template-columns:16px 28px minmax(0,1fr)}.studio-step-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.studio-review-summary{display:grid;gap:10px;padding:12px;border:1px solid var(--line);border-radius:12px;background:#f8fafc}.preview-view-link{display:inline-block;margin-top:8px;font-size:var(--fs-sm);font-weight:700;color:var(--accent);text-decoration:none}.faculty-content-board{display:grid;gap:var(--space-4)}.faculty-content-refreshing{margin:0;font-size:var(--fs-sm)}.faculty-content-kpis{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}.faculty-content-kpis button{min-width:96px;border:1px solid var(--line);border-radius:12px;background:#fff;padding:10px 12px;text-align:left;cursor:pointer;font:inherit}.faculty-content-kpis button.on{border-color:#93c5fd;background:#eff6ff}.faculty-content-kpis b{display:block;font-size:1.25rem;color:var(--navy);line-height:1.1}.faculty-content-kpis span{font-size:.75rem;color:var(--muted)}.faculty-content-toolbar{display:grid;grid-template-columns:repeat(5,minmax(110px,.9fr)) minmax(160px,1.3fr) auto auto;gap:10px;align-items:end}.faculty-content-toolbar label{display:grid;gap:4px;margin:0}.faculty-content-toolbar input,.faculty-content-toolbar select{width:100%;min-height:40px;border:1px solid var(--line);border-radius:10px;padding:8px 10px;background:#fff}.faculty-content-status-tabs{margin:0}.faculty-content-table{width:100%;border-collapse:collapse}.faculty-content-table th,.faculty-content-table td{padding:12px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;font-size:var(--fs-sm)}.faculty-content-table th{color:var(--muted);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.04em;font-weight:700}.faculty-content-title{display:flex;gap:10px;align-items:flex-start;min-width:0}.faculty-content-title strong{display:block;overflow-wrap:anywhere}.faculty-content-title small{display:block;color:var(--muted);margin-top:2px}.faculty-content-ico{width:32px;height:32px;border-radius:8px;display:grid;place-items:center;flex:none}.faculty-content-ico.tone-text{background:#dbeafe;color:#1d4ed8}.faculty-content-ico.tone-video{background:#fee2e2;color:#b91c1c}.faculty-content-ico.tone-live{background:#d1fae5;color:#047857}.faculty-content-ico.tone-other{background:#ede9fe;color:#6d28d9}.faculty-type-pill.tone-text{background:#dbeafe;color:#1e40af}.faculty-type-pill.tone-video{background:#fee2e2;color:#991b1b}.faculty-type-pill.tone-live{background:#d1fae5;color:#065f46}.faculty-type-pill.tone-other{background:#ede9fe;color:#5b21b6}.faculty-content-location{color:var(--navy);font-size:var(--fs-xs);line-height:1.4;overflow-wrap:anywhere}.faculty-content-updated{display:grid;gap:2px}.faculty-content-updated small{color:var(--muted)}.faculty-content-pager{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;align-items:center;margin-top:14px;font-size:var(--fs-sm);color:var(--muted)}.faculty-content-pages{display:flex;flex-wrap:wrap;gap:6px}.faculty-content-pages .btn.on{background:var(--accent);color:#fff;border-color:var(--accent)}.faculty-content-workflow-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-bottom:12px}.icon-btn{min-width:36px;padding-inline:8px}@media (max-width: 1100px){.faculty-content-toolbar{grid-template-columns:1fr 1fr}}@media (max-width: 640px){.faculty-content-toolbar{grid-template-columns:1fr}}.faculty-question-bank{display:grid;gap:var(--space-4)}.faculty-question-toolbar{display:grid;grid-template-columns:repeat(5,minmax(100px,.85fr)) minmax(160px,1.2fr) auto auto;gap:10px;align-items:end}.faculty-question-toolbar label,.faculty-question-form label{display:grid;gap:4px;margin:0;font-size:var(--fs-sm);font-weight:700;color:var(--navy)}.faculty-question-toolbar input,.faculty-question-toolbar select,.faculty-question-form input,.faculty-question-form select,.faculty-question-form textarea{width:100%;min-height:40px;border:1px solid var(--line);border-radius:10px;padding:8px 10px;background:#fff;font-weight:500}.faculty-question-split{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.9fr);gap:16px;align-items:start}.faculty-question-split.is-list-only{grid-template-columns:1fr}.faculty-question-tabs,.faculty-question-create-tabs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.faculty-question-tabs button,.faculty-question-create-tabs button{border:0;background:#f1f5f9;border-radius:999px;padding:8px 12px;font:inherit;font-size:var(--fs-sm);font-weight:650;color:var(--muted);cursor:pointer}.faculty-question-tabs button.on,.faculty-question-create-tabs button.on{background:#eff6ff;color:var(--accent)}.faculty-question-table{width:100%;border-collapse:collapse}.faculty-question-table th,.faculty-question-table td{padding:10px 8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;font-size:var(--fs-sm)}.faculty-question-table th{color:var(--muted);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.04em}.faculty-question-prompt{overflow-wrap:anywhere}.faculty-type-pill.tone-mcq{background:#dbeafe;color:#1e40af}.faculty-type-pill.tone-tf{background:#fce7f3;color:#9d174d}.faculty-question-fieldset{border:1px solid var(--line);border-radius:12px;padding:12px;margin:0 0 12px;display:grid;gap:10px}.faculty-question-fieldset legend{padding:0 6px;font-size:var(--fs-xs);font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.faculty-question-type,.faculty-question-tf{display:flex;flex-wrap:wrap;gap:12px 16px}.faculty-question-type label,.faculty-question-tf label{display:inline-flex;align-items:center;gap:8px;font-weight:650}.faculty-question-mcq{display:grid;gap:8px}.faculty-question-mcq-row{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:8px;align-items:center}.faculty-question-letter{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;background:#eff6ff;color:#1d4ed8;font-weight:800;font-size:var(--fs-xs)}.faculty-question-preview{display:grid;gap:10px}.faculty-question-preview ul{margin:0;padding-left:1.1rem;display:grid;gap:6px}.faculty-question-preview li.is-correct{font-weight:700;color:#047857}.faculty-question-actions{justify-content:flex-end}@media (max-width: 1100px){.faculty-question-split{grid-template-columns:1fr}.faculty-question-toolbar{grid-template-columns:1fr 1fr}}@media (max-width: 640px){.faculty-question-toolbar{grid-template-columns:1fr}}.faculty-assignments-board{display:grid;gap:var(--space-4)}.faculty-assignment-toolbar{display:grid;grid-template-columns:repeat(5,minmax(110px,1fr)) minmax(160px,1.4fr) auto auto;gap:10px;align-items:end}.faculty-assignment-toolbar label,.faculty-assignment-form label{display:grid;gap:4px;margin:0;font-size:var(--fs-sm);font-weight:700;color:var(--navy)}.faculty-assignment-toolbar input,.faculty-assignment-toolbar select,.faculty-assignment-form input,.faculty-assignment-form select,.faculty-assignment-form textarea{width:100%;min-width:0;font-weight:500;border-radius:10px}.faculty-assignment-search{min-width:0}.faculty-assignment-split{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(320px,.9fr);gap:var(--space-4);align-items:start}.faculty-assignment-split.is-list-only{grid-template-columns:1fr}.faculty-assignment-table{width:100%;border-collapse:collapse}.faculty-assignment-table th,.faculty-assignment-table td{padding:10px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.faculty-assignment-table th{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.faculty-assignment-title{display:grid;gap:2px;min-width:0}.faculty-assignment-title strong{overflow-wrap:anywhere}.faculty-assignment-title small{color:var(--muted);overflow-wrap:anywhere}.faculty-assignment-create{position:sticky;top:12px}.faculty-assignment-form{display:grid;gap:14px}.faculty-assignment-schedule{display:grid;grid-template-columns:1fr 1fr;gap:10px}.faculty-assignment-check{display:flex!important;align-items:center;gap:8px;font-weight:600!important}.faculty-assignment-check input{width:auto}.chip-assignment-active{background:#dcfce7;color:#166534}.chip-assignment-closed{background:#ffedd5;color:#c2410c}.chip-assignment-draft{background:#dbeafe;color:#1d4ed8}.faculty-row-menu button{display:block;width:100%;padding:8px 10px;border:0;border-radius:8px;background:transparent;text-align:left;color:var(--navy);font-size:var(--fs-sm);font-weight:600;cursor:pointer}.faculty-row-menu button:hover{background:#eff6ff;color:var(--accent)}@media (max-width: 1100px){.faculty-assignment-split{grid-template-columns:1fr}.faculty-assignment-toolbar{grid-template-columns:1fr 1fr}.faculty-assignment-create{position:static}}@media (max-width: 640px){.faculty-assignment-toolbar,.faculty-assignment-schedule{grid-template-columns:1fr}}.faculty-grading-board{display:grid;gap:var(--space-4);min-width:0;overflow-x:clip}.faculty-grading-board .board-hero .hero-stats.faculty-grading-kpis{grid-template-columns:repeat(4,minmax(0,1fr));max-width:none;gap:12px}.faculty-grading-kpis li{position:relative;display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto;align-items:center;gap:12px;padding:14px 16px;border-radius:14px;border:1px solid #e2e8f0;box-shadow:0 8px 20px #0f172a0a;overflow:hidden;background:#fff}.faculty-grading-kpi-copy{display:grid;gap:2px;min-width:0}.faculty-grading-kpi-copy b{font-size:1.35rem;line-height:1.1;letter-spacing:-.02em}.faculty-grading-kpi-copy span{font-size:.78rem;font-weight:600;color:#64748b}.faculty-grading-kpi-copy em{font-style:normal;font-size:.72rem;font-weight:700}.faculty-grading-kpi-ico{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#eff6ff;color:#2563eb;flex:none}.faculty-grading-kpi-ico .nav-ico{width:18px;height:18px}.faculty-grading-kpis .tone-total{border-color:#bfdbfe;background:linear-gradient(180deg,#f0f7ff,#fff)}.faculty-grading-kpis .tone-total .faculty-grading-kpi-ico{background:#dbeafe;color:#1d4ed8}.faculty-grading-kpis .tone-total b{color:#1d4ed8}.faculty-grading-kpis .tone-graded{border-color:#bbf7d0;background:linear-gradient(180deg,#f0fdf4,#fff)}.faculty-grading-kpis .tone-graded .faculty-grading-kpi-ico{background:#dcfce7;color:#15803d}.faculty-grading-kpis .tone-graded b,.faculty-grading-kpis .tone-graded em{color:#15803d}.faculty-grading-kpis .tone-pending{border-color:#fde68a;background:linear-gradient(180deg,#fffbeb,#fff)}.faculty-grading-kpis .tone-pending .faculty-grading-kpi-ico{background:#fef3c7;color:#c2410c}.faculty-grading-kpis .tone-pending b,.faculty-grading-kpis .tone-pending em{color:#c2410c}.faculty-grading-kpis .tone-resubmit{border-color:#e9d5ff;background:linear-gradient(180deg,#faf5ff,#fff)}.faculty-grading-kpis .tone-resubmit .faculty-grading-kpi-ico{background:#f3e8ff;color:#7e22ce}.faculty-grading-kpis .tone-resubmit b,.faculty-grading-kpis .tone-resubmit em{color:#7e22ce}.faculty-grading-toolbar{display:grid;grid-template-columns:repeat(5,minmax(110px,1fr));gap:12px;align-items:end;padding:16px 18px;border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 8px 20px #0f172a08}.faculty-grading-toolbar .faculty-grading-search{grid-column:1 / span 3}.faculty-grading-toolbar-actions{grid-column:4 / span 2;display:flex;justify-content:flex-end;gap:8px;align-items:end;padding-bottom:1px}.faculty-grading-toolbar label,.faculty-grading-form label{display:grid;gap:5px;margin:0;font-size:.78rem;font-weight:700;color:#334155}.faculty-grading-toolbar input,.faculty-grading-toolbar select,.faculty-grading-form input:not([type=checkbox]),.faculty-grading-form select,.faculty-grading-form textarea{width:100%;min-width:0;min-height:42px;font-weight:500;border:1px solid #dbe3ef;border-radius:10px;padding:8px 12px;background:#fff;color:#0f172a;box-shadow:0 1px #0f172a05}.faculty-grading-toolbar input:focus,.faculty-grading-toolbar select:focus,.faculty-grading-form input:not([type=checkbox]):focus,.faculty-grading-form textarea:focus{outline:none;border-color:#93c5fd;box-shadow:0 0 0 3px #2563eb1f}.faculty-grading-form textarea{min-height:110px;resize:vertical}.faculty-grading-form input[type=checkbox]{width:18px;min-width:18px;height:18px;min-height:18px;margin:0;padding:0;accent-color:#2563eb;flex:none}.faculty-grading-form .faculty-assignment-check{display:flex!important;align-items:center;gap:10px;font-weight:600!important;color:#1e293b}.faculty-grading-search{min-width:0}.faculty-grading-search-wrap{position:relative;display:grid}.faculty-grading-search-ico{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#94a3b8;display:grid;place-items:center;pointer-events:none}.faculty-grading-search-ico .nav-ico{width:15px;height:15px}.faculty-grading-search-wrap input{padding-left:36px}.faculty-grading-search-btn{min-height:42px;padding-inline:18px;background:#2563eb!important;border-color:#2563eb!important;color:#fff!important;font-weight:700;border-radius:10px}.faculty-grading-tabs{display:flex;flex-wrap:wrap;gap:8px}.faculty-grading-tabs button{border:1px solid #dbe3ef;background:#fff;border-radius:999px;padding:8px 16px;font-size:var(--fs-sm);font-weight:650;color:#334155;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.faculty-grading-tabs button:hover{border-color:#93c5fd;color:#1d4ed8}.faculty-grading-tabs button.on{background:#2563eb;border-color:#2563eb;color:#fff;box-shadow:0 6px 14px #2563eb38}.faculty-grading-split{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(360px,.95fr);gap:var(--space-4);align-items:start}.faculty-grading-split.is-list-only{grid-template-columns:1fr}.faculty-grading-list{overflow:auto;min-width:0;border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 8px 20px #0f172a08;padding:0}.faculty-grading-table{width:100%;min-width:720px;border-collapse:collapse}.faculty-grading-table th,.faculty-grading-table td{padding:14px 12px;border-bottom:1px solid #eef2f7;text-align:left;vertical-align:middle}.faculty-grading-table th{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:#64748b;background:#f8fafc;position:sticky;top:0;z-index:1}.faculty-grading-table tbody tr{cursor:pointer}.faculty-grading-table tbody tr:hover{background:#f8fbff}.faculty-grading-table tr.is-selected{background:#eff6ff;box-shadow:inset 3px 0 #2563eb}.faculty-grading-check-col{width:36px;text-align:center}.faculty-grading-title{display:grid;gap:2px;min-width:0}.faculty-grading-title strong{overflow-wrap:anywhere;color:#0f172a;font-weight:700}.faculty-grading-title small{color:#64748b;overflow-wrap:anywhere}.faculty-grading-action-primary{color:#fff!important;border-color:#2563eb!important;background:#2563eb!important;font-weight:700;border-radius:8px;box-shadow:0 4px 10px #2563eb2e}.faculty-grading-action-view{border-radius:8px;font-weight:650}.faculty-grading-pane{position:sticky;top:12px;border-radius:16px;border:1px solid #e2e8f0;box-shadow:0 12px 28px #0f172a0f;padding:16px;max-height:calc(100vh - 96px);display:flex;flex-direction:column;min-height:0;overflow:hidden;background:#fff}.faculty-grading-form{display:grid;grid-template-rows:auto minmax(180px,1fr) auto;gap:14px;min-height:0;flex:1;height:100%}.faculty-grading-form-body{display:grid;gap:16px;align-content:start;min-height:180px;overflow:auto;padding-right:2px}.faculty-grading-form h3{margin:0;color:#0f172a;font-size:1.1rem;font-weight:750}.faculty-grading-pane-tabs{display:grid;grid-template-columns:1fr 1fr;gap:0;padding:0;border-radius:12px;overflow:hidden;border:1px solid #dbeafe;background:#eef4ff}.faculty-grading-pane-tabs button{border:0;margin:0;padding:12px;font:inherit;font-size:var(--fs-sm);font-weight:700;color:#1e3a8a;background:#e8eef9;cursor:pointer}.faculty-grading-pane-tabs button.on{background:#2563eb;color:#fff;box-shadow:inset 0 0 0 1px #2563eb59}.faculty-grading-empty{display:grid;place-items:center;min-height:220px;padding:28px 20px;border:1.5px dashed #cbd5e1;border-radius:14px;background:#f8fafc;color:#94a3b8;font-size:var(--fs-sm);text-align:center;line-height:1.5}.faculty-grading-student{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:14px;border:1px solid #dbeafe;border-radius:14px;background:linear-gradient(180deg,#f8fbff,#fff)}.faculty-grading-avatar{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:#dbeafe;color:#1d4ed8}.faculty-grading-avatar .nav-ico{width:20px;height:20px}.faculty-grading-student-copy{display:grid;gap:2px;min-width:0}.faculty-grading-student-copy strong{color:#0f172a;font-size:.98rem}.faculty-grading-student-copy small{color:#64748b}.faculty-grading-block{display:grid;gap:12px}.faculty-grading-block h4{margin:0;font-size:.95rem;font-weight:750;color:#0f172a}.faculty-grading-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 18px;margin:0}.faculty-grading-info-grid dt{margin:0;font-size:.72rem;color:#64748b;font-weight:600}.faculty-grading-info-grid dd{margin:4px 0 0;font-size:var(--fs-sm);color:#0f172a;font-weight:700;overflow-wrap:anywhere}.faculty-grading-id-field{font-size:var(--fs-xs)!important}.faculty-grading-id-field input{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.72rem;color:var(--muted);background:#f8fafc}.faculty-grading-answer{display:grid;gap:10px;padding:14px 16px;border:1px solid #e2e8f0;border-radius:12px;background:#f1f5f9;color:#1e293b;line-height:1.55}.faculty-grading-answer p{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.faculty-grading-view-full{justify-self:end;display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;color:#2563eb;font:inherit;font-size:var(--fs-sm);font-weight:700;cursor:pointer;padding:0}.faculty-grading-view-full .nav-ico{width:14px;height:14px}.faculty-grading-form .req{color:#dc2626;font-weight:700}.faculty-grading-counter{justify-self:end;font-size:.72rem;color:#94a3b8;font-weight:600}.faculty-grading-preview{display:grid;gap:14px}.faculty-grading-actions{justify-content:flex-end;gap:10px;margin-top:0;padding-top:14px;border-top:1px solid #eef2f7;background:#fff;position:sticky;bottom:0}.faculty-grading-actions .btn.ghost{border-radius:10px;min-height:40px;padding-inline:16px}.faculty-grading-save{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding-inline:16px;border-radius:10px;background:#2563eb!important;border-color:#2563eb!important;color:#fff!important;font-weight:700;box-shadow:0 6px 14px #2563eb38}.faculty-grading-save .nav-ico{width:15px;height:15px}.faculty-grading-board .chip{border-radius:999px;font-weight:700;padding:4px 10px;border:0}.chip-grading-pending{background:#fef3c7;color:#b45309}.chip-grading-graded{background:#dcfce7;color:#166534}.chip-grading-resubmit{background:#f3e8ff;color:#7e22ce}@media (max-width: 1100px){.faculty-grading-split{grid-template-columns:1fr}.faculty-grading-toolbar{grid-template-columns:1fr 1fr}.faculty-grading-toolbar .faculty-grading-search,.faculty-grading-toolbar-actions{grid-column:1 / -1}.faculty-grading-toolbar-actions{justify-content:stretch}.faculty-grading-toolbar-actions .btn{flex:1}.faculty-grading-pane{position:static;max-height:none;overflow:visible}.faculty-grading-form{grid-template-rows:auto auto auto;height:auto}.faculty-grading-form-body{overflow:visible;min-height:0}.faculty-grading-board .board-hero .hero-stats.faculty-grading-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 640px){.faculty-grading-toolbar,.faculty-grading-info-grid,.faculty-grading-board .board-hero .hero-stats.faculty-grading-kpis{grid-template-columns:1fr}}.faculty-attend-board{display:grid;gap:var(--space-4);min-width:0;overflow-x:clip}.faculty-attend-board .board-hero .hero-stats.faculty-attend-kpis{grid-template-columns:repeat(4,minmax(0,1fr));max-width:none;gap:12px}.faculty-attend-kpis li{position:relative;display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto;align-items:center;gap:12px;padding:14px 16px;border-radius:14px;border:1px solid #e2e8f0;box-shadow:0 8px 20px #0f172a0a;background:#fff}.faculty-attend-kpi-copy{display:grid;gap:2px;min-width:0}.faculty-attend-kpi-copy b{font-size:1.35rem;line-height:1.1;letter-spacing:-.02em}.faculty-attend-kpi-copy span{font-size:.78rem;font-weight:600;color:#64748b}.faculty-attend-kpi-copy em{font-style:normal;font-size:.72rem;font-weight:700}.faculty-attend-kpi-ico{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#eff6ff;color:#2563eb}.faculty-attend-kpi-ico .nav-ico{width:18px;height:18px}.faculty-attend-kpis .tone-total{border-color:#bfdbfe;background:linear-gradient(180deg,#f0f7ff,#fff)}.faculty-attend-kpis .tone-total .faculty-attend-kpi-ico{background:#dbeafe;color:#1d4ed8}.faculty-attend-kpis .tone-total b{color:#1d4ed8}.faculty-attend-kpis .tone-present{border-color:#bbf7d0;background:linear-gradient(180deg,#f0fdf4,#fff)}.faculty-attend-kpis .tone-present .faculty-attend-kpi-ico{background:#dcfce7;color:#15803d}.faculty-attend-kpis .tone-present b,.faculty-attend-kpis .tone-present em{color:#15803d}.faculty-attend-kpis .tone-absent{border-color:#fecaca;background:linear-gradient(180deg,#fef2f2,#fff)}.faculty-attend-kpis .tone-absent .faculty-attend-kpi-ico{background:#fee2e2;color:#b91c1c}.faculty-attend-kpis .tone-absent b,.faculty-attend-kpis .tone-absent em{color:#b91c1c}.faculty-attend-kpis .tone-unmarked{border-color:#fde68a;background:linear-gradient(180deg,#fffbeb,#fff)}.faculty-attend-kpis .tone-unmarked .faculty-attend-kpi-ico{background:#fef3c7;color:#c2410c}.faculty-attend-kpis .tone-unmarked b,.faculty-attend-kpis .tone-unmarked em{color:#c2410c}.faculty-attend-toolbar{display:grid;grid-template-columns:repeat(3,minmax(120px,1fr)) repeat(3,minmax(120px,1fr));gap:12px;align-items:end;padding:16px 18px;border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 8px 20px #0f172a08}.faculty-attend-toolbar-actions{grid-column:1 / -1;display:flex;justify-content:flex-end;gap:8px}.faculty-attend-load{min-height:42px;padding-inline:18px;background:#2563eb!important;border-color:#2563eb!important;color:#fff!important;font-weight:700;border-radius:10px;box-shadow:0 6px 14px #2563eb38}.faculty-attend-toolbar label,.faculty-attend-pane label,.faculty-attend-quick-form label,.faculty-attend-list-tools label{display:grid;gap:5px;margin:0;font-size:.78rem;font-weight:700;color:#334155}.faculty-attend-toolbar input,.faculty-attend-toolbar select,.faculty-attend-pane input:not([type=checkbox]):not([type=radio]),.faculty-attend-pane select,.faculty-attend-pane textarea,.faculty-attend-quick-form input,.faculty-attend-list-tools select,.faculty-attend-search-wrap input{width:100%;min-height:42px;border:1px solid #dbe3ef;border-radius:10px;padding:8px 12px;background:#fff;font-weight:500;color:#0f172a}.faculty-attend-toolbar input:focus,.faculty-attend-toolbar select:focus,.faculty-attend-pane textarea:focus,.faculty-attend-search-wrap input:focus{outline:none;border-color:#93c5fd;box-shadow:0 0 0 3px #2563eb1f}.faculty-attend-split{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(340px,.9fr);gap:var(--space-4);align-items:start}.faculty-attend-list{overflow:auto;min-width:0;border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 8px 20px #0f172a08;padding:14px 16px}.faculty-attend-list-tools{display:flex;flex-wrap:wrap;gap:10px;align-items:end;margin-bottom:14px}.faculty-attend-search{flex:1;min-width:200px}.faculty-attend-search-wrap{position:relative;display:grid}.faculty-attend-search-ico{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#94a3b8;display:grid;place-items:center;pointer-events:none}.faculty-attend-search-ico .nav-ico{width:15px;height:15px}.faculty-attend-search-wrap input{padding-left:36px}.faculty-attend-show{min-width:120px}.faculty-attend-list-bulk{display:flex;flex-wrap:wrap;gap:8px;margin-left:auto}.faculty-attend-list-bulk .tone-present-btn,.faculty-attend-quick .tone-present-btn{border-color:#86efac!important;background:#ecfdf5!important;color:#166534!important;font-weight:700;border-radius:8px}.faculty-attend-list-bulk .tone-absent-btn,.faculty-attend-quick .tone-absent-btn{border-color:#fca5a5!important;background:#fef2f2!important;color:#b91c1c!important;font-weight:700;border-radius:8px}.faculty-attend-table{width:100%;min-width:780px;border-collapse:collapse}.faculty-attend-table th,.faculty-attend-table td{padding:12px 10px;border-bottom:1px solid #eef2f7;text-align:left;vertical-align:middle;font-size:var(--fs-sm)}.faculty-attend-table th{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:#64748b;background:#f8fafc;position:sticky;top:0;z-index:1}.faculty-attend-table tr.is-present{background:#f0fdf4}.faculty-attend-table tr.is-absent{background:#fef2f2}.faculty-attend-table tr.is-unmarked{background:#fffbeb}.faculty-attend-check-col{width:36px;text-align:center}.faculty-attend-roll{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem;color:#334155;background:#f1f5f9;padding:2px 6px;border-radius:6px}.faculty-attend-student{display:grid;gap:2px}.faculty-attend-student strong{color:#0f172a}.faculty-attend-student small{color:#64748b}.faculty-attend-board .chip.faculty-attend-status{border-radius:999px;font-weight:700;padding:4px 10px;border:0}.faculty-attend-status.chip-attend-present{background:#dcfce7;color:#166534}.faculty-attend-status.chip-attend-absent{background:#fee2e2;color:#b91c1c}.faculty-attend-status.chip-attend-unmarked{background:#fef3c7;color:#b45309}.faculty-attend-radios{display:inline-flex;flex-wrap:wrap;gap:8px;padding:6px 8px;border-radius:999px;border:1px solid #dbe3ef;background:#fff}.faculty-attend-radios label{display:inline-flex!important;align-items:center;gap:4px;font-size:.78rem;font-weight:650!important;margin:0;color:#64748b}.faculty-attend-radios input{width:14px!important;min-width:14px!important;height:14px!important;min-height:14px!important;margin:0;padding:0;accent-color:#2563eb}.chip-attend-present{border-color:#86efac;background:#ecfdf5}.chip-attend-present label:has(input:checked){color:#166534}.chip-attend-absent{border-color:#fca5a5;background:#fef2f2}.chip-attend-absent label:has(input:checked){color:#b91c1c}.chip-attend-unmarked{border-color:#fde68a;background:#fffbeb}.chip-attend-unmarked label:has(input:checked){color:#b45309}.faculty-attend-row-note{white-space:nowrap}.faculty-attend-pane{position:sticky;top:12px;border-radius:16px;border:1px solid #e2e8f0;box-shadow:0 12px 28px #0f172a0f;padding:16px;display:grid;gap:14px;max-height:calc(100vh - 96px);overflow:auto;background:#fff}.faculty-attend-pane-tabs{display:grid;grid-template-columns:1fr 1fr;border-radius:12px;overflow:hidden;border:1px solid #dbeafe;background:#eef4ff}.faculty-attend-pane-tabs button{border:0;padding:12px;font:inherit;font-size:var(--fs-sm);font-weight:700;color:#1e3a8a;background:#e8eef9;cursor:pointer}.faculty-attend-pane-tabs button.on{background:#2563eb;color:#fff;box-shadow:inset 0 0 0 1px #2563eb59}.faculty-attend-pane-body{display:grid;gap:16px}.faculty-attend-block{display:grid;gap:10px}.faculty-attend-block h4{margin:0;font-size:.95rem;font-weight:750;color:#0f172a}.faculty-attend-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px;margin:0}.faculty-attend-info-grid dt{margin:0;font-size:.72rem;color:#64748b;font-weight:600}.faculty-attend-info-grid dd{margin:4px 0 0;font-size:var(--fs-sm);color:#0f172a;font-weight:700;overflow-wrap:anywhere}.faculty-attend-donut-wrap{justify-items:center;padding:10px 0;border:1px solid #eef2f7;border-radius:14px;background:linear-gradient(180deg,#f8fbff,#fff)}.faculty-attend-donut{width:140px;height:140px;border-radius:50%;display:grid;place-items:center;box-shadow:inset 0 0 0 1px #e2e8f0}.faculty-attend-donut span{width:84px;height:84px;border-radius:50%;background:#fff;display:grid;place-items:center;align-content:center;text-align:center;font-size:.72rem;color:#64748b}.faculty-attend-donut b{font-size:1.2rem;color:#0f172a;line-height:1.1}.faculty-attend-legend{list-style:none;margin:10px 0 0;padding:0 16px 8px;display:grid;gap:6px;width:100%;font-size:var(--fs-sm);color:#1e293b}.faculty-attend-legend li{display:flex;align-items:center;gap:8px}.faculty-attend-legend i{width:10px;height:10px;border-radius:999px;display:inline-block}.faculty-attend-legend .tone-present{background:#16a34a}.faculty-attend-legend .tone-absent{background:#ef4444}.faculty-attend-legend .tone-unmarked{background:#f59e0b}.faculty-attend-legend b{margin-left:auto}.faculty-attend-quick{display:grid;gap:8px}.faculty-attend-counter{justify-self:end;font-size:.72rem;color:#94a3b8;font-weight:600}.faculty-attend-quick-form{display:grid;gap:10px;padding-top:12px;border-top:1px solid #eef2f7}.faculty-attend-quick-form h3{margin:0;font-size:.95rem;color:#0f172a}.faculty-attend-record{min-height:42px;background:#2563eb!important;border-color:#2563eb!important;color:#fff!important;font-weight:700;border-radius:10px}.faculty-attend-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;padding-top:14px;border-top:1px solid #eef2f7}.faculty-attend-save,.faculty-attend-next{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding-inline:14px;border-radius:10px;background:#2563eb!important;border-color:#2563eb!important;color:#fff!important;font-weight:700;box-shadow:0 6px 14px #2563eb38}.faculty-attend-save .nav-ico,.faculty-attend-next .nav-ico{width:15px;height:15px}.faculty-attend-actions .btn.ghost{border-radius:10px;min-height:40px}@media (max-width: 1100px){.faculty-attend-split{grid-template-columns:1fr}.faculty-attend-toolbar{grid-template-columns:1fr 1fr}.faculty-attend-toolbar-actions{grid-column:1 / -1}.faculty-attend-pane{position:static;max-height:none}.faculty-attend-board .board-hero .hero-stats.faculty-attend-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 640px){.faculty-attend-toolbar,.faculty-attend-info-grid{grid-template-columns:1fr}.faculty-attend-list-bulk{margin-left:0;width:100%}.faculty-attend-list-bulk .btn{flex:1}.faculty-attend-board .board-hero .hero-stats.faculty-attend-kpis{grid-template-columns:1fr}}.faculty-reports-board{display:grid;gap:var(--space-4);min-width:0;overflow-x:clip}.faculty-reports-board .board-hero .hero-stats.faculty-reports-kpis{grid-template-columns:repeat(5,minmax(0,1fr));max-width:none;gap:12px}.faculty-reports-kpis li{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto;align-items:center;gap:12px;padding:14px 16px;border-radius:14px;border:1px solid #e2e8f0;box-shadow:0 8px 20px #0f172a0a;background:#fff}.faculty-reports-kpi-copy{display:grid;gap:2px;min-width:0}.faculty-reports-kpi-copy b{font-size:1.3rem;line-height:1.1;letter-spacing:-.02em}.faculty-reports-kpi-copy span{font-size:.76rem;font-weight:600;color:#64748b}.faculty-reports-kpi-ico{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#eff6ff;color:#2563eb}.faculty-reports-kpi-ico .nav-ico{width:18px;height:18px}.faculty-reports-kpis .tone-programmes{border-color:#ddd6fe;background:linear-gradient(180deg,#f5f3ff,#fff)}.faculty-reports-kpis .tone-programmes .faculty-reports-kpi-ico{background:#ede9fe;color:#7c3aed}.faculty-reports-kpis .tone-programmes b{color:#6d28d9}.faculty-reports-kpis .tone-courses{border-color:#bfdbfe;background:linear-gradient(180deg,#f0f7ff,#fff)}.faculty-reports-kpis .tone-courses .faculty-reports-kpi-ico{background:#dbeafe;color:#1d4ed8}.faculty-reports-kpis .tone-courses b{color:#1d4ed8}.faculty-reports-kpis .tone-students{border-color:#bbf7d0;background:linear-gradient(180deg,#f0fdf4,#fff)}.faculty-reports-kpis .tone-students .faculty-reports-kpi-ico{background:#dcfce7;color:#15803d}.faculty-reports-kpis .tone-students b{color:#15803d}.faculty-reports-kpis .tone-completion{border-color:#fed7aa;background:linear-gradient(180deg,#fff7ed,#fff)}.faculty-reports-kpis .tone-completion .faculty-reports-kpi-ico{background:#ffedd5;color:#c2410c}.faculty-reports-kpis .tone-completion b{color:#c2410c}.faculty-reports-kpis .tone-pending{border-color:#fecaca;background:linear-gradient(180deg,#fef2f2,#fff)}.faculty-reports-kpis .tone-pending .faculty-reports-kpi-ico{background:#fee2e2;color:#b91c1c}.faculty-reports-kpis .tone-pending b{color:#b91c1c}.faculty-reports-toolbar{display:grid;grid-template-columns:repeat(3,minmax(140px,1fr));gap:12px;align-items:end;padding:16px 18px;border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 8px 20px #0f172a08}.faculty-reports-toolbar label{display:grid;gap:5px;margin:0;font-size:.78rem;font-weight:700;color:#334155}.faculty-reports-toolbar .req{color:#dc2626}.faculty-reports-toolbar input,.faculty-reports-toolbar select{width:100%;min-height:42px;border:1px solid #dbe3ef;border-radius:10px;padding:8px 12px;background:#fff;font-weight:500}.faculty-reports-legacy-load{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:10px;align-items:end;padding-top:4px;border-top:1px dashed #e2e8f0;min-width:0}.faculty-reports-legacy-load label{flex:1;min-width:0;max-width:100%}.faculty-reports-legacy-load input{max-width:100%;overflow:hidden;text-overflow:ellipsis}.faculty-reports-toolbar-actions{grid-column:1 / -1;display:flex;justify-content:flex-end;gap:8px}.faculty-reports-generate{min-height:42px;padding-inline:18px;background:#2563eb!important;border-color:#2563eb!important;color:#fff!important;font-weight:700;border-radius:10px;box-shadow:0 6px 14px #2563eb38}.faculty-reports-split{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.85fr);gap:var(--space-4);align-items:start}.faculty-reports-list{border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 8px 20px #0f172a08;padding:16px;overflow:auto;min-width:0;display:grid;gap:14px}.faculty-reports-list-head{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;align-items:end}.faculty-reports-list-head h3{margin:0 0 4px;color:#0f172a}.faculty-reports-list-tools{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.faculty-reports-search{min-width:200px;flex:1}.faculty-reports-search-wrap{position:relative;display:grid}.faculty-reports-search-ico{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#94a3b8;pointer-events:none}.faculty-reports-search-ico .nav-ico{width:15px;height:15px}.faculty-reports-search-wrap input{min-height:42px;border:1px solid #dbe3ef;border-radius:10px;padding:8px 12px 8px 36px;width:100%}.faculty-reports-export-all{display:inline-flex;align-items:center;gap:8px;min-height:42px;border-radius:10px;font-weight:700;color:#1d4ed8!important;border-color:#93c5fd!important;background:#eff6ff!important}.faculty-reports-export-all .nav-ico{width:15px;height:15px}.faculty-reports-table{width:100%;min-width:760px;border-collapse:collapse}.faculty-reports-table th,.faculty-reports-table td{padding:12px 10px;border-bottom:1px solid #eef2f7;text-align:left;vertical-align:middle;font-size:var(--fs-sm)}.faculty-reports-table th{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:#64748b;background:#f8fafc}.faculty-reports-table tbody tr{cursor:pointer}.faculty-reports-table tbody tr:hover{background:#f8fbff}.faculty-reports-table tr.is-selected{background:#eff6ff;box-shadow:inset 3px 0 #2563eb}.faculty-reports-title{display:grid;gap:2px}.faculty-reports-title strong{color:#0f172a}.faculty-reports-title small{color:#64748b}.faculty-reports-completion{display:grid;gap:6px;min-width:110px}.faculty-reports-completion strong{color:#0f172a;font-size:.85rem}.faculty-reports-bar{display:block;height:8px;border-radius:999px;background:#e2e8f0;overflow:hidden}.faculty-reports-bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#2563eb,#60a5fa)}.faculty-reports-row-generate{background:#2563eb!important;border-color:#2563eb!important;color:#fff!important;font-weight:700;border-radius:8px}.faculty-reports-progress{margin:0;padding:14px;border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc;box-shadow:none}.faculty-reports-progress-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:6px}.faculty-reports-progress-head h3{margin:0;font-size:1rem}.faculty-reports-pane{position:sticky;top:12px;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 12px 28px #0f172a0f;padding:16px;display:grid;gap:16px;background:#fff}.faculty-reports-block{display:grid;gap:12px}.faculty-reports-block h4{margin:0;font-size:.95rem;font-weight:750;color:#0f172a}.faculty-reports-summary-ico{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:#eff6ff;color:#2563eb}.faculty-reports-summary-ico .nav-ico{width:22px;height:22px}.faculty-reports-info-grid{display:grid;gap:10px;margin:0}.faculty-reports-info-grid dt{margin:0;font-size:.72rem;color:#64748b;font-weight:600}.faculty-reports-info-grid dd{margin:3px 0 0;font-size:var(--fs-sm);color:#0f172a;font-weight:700;overflow-wrap:anywhere}.faculty-reports-quick{display:grid;gap:8px}.faculty-reports-quick button{display:flex;align-items:center;gap:10px;width:100%;min-height:44px;border:1px solid #e2e8f0;border-radius:12px;background:#fff;padding:0 12px;font:inherit;font-size:var(--fs-sm);font-weight:650;color:#0f172a;cursor:pointer;text-align:left}.faculty-reports-quick button:hover{border-color:#93c5fd;background:#f8fbff}.faculty-reports-quick-ico{width:30px;height:30px;border-radius:10px;display:grid;place-items:center;flex:none}.faculty-reports-quick-ico .nav-ico{width:15px;height:15px}.faculty-reports-quick .tone-generate .faculty-reports-quick-ico{background:#dbeafe;color:#1d4ed8}.faculty-reports-quick .tone-course .faculty-reports-quick-ico{background:#dcfce7;color:#15803d}.faculty-reports-quick .tone-student .faculty-reports-quick-ico{background:#ffedd5;color:#c2410c}.faculty-reports-quick .tone-schedule .faculty-reports-quick-ico{background:#ede9fe;color:#7c3aed}@media (max-width: 1100px){.faculty-reports-split{grid-template-columns:1fr}.faculty-reports-toolbar{grid-template-columns:1fr 1fr}.faculty-reports-pane{position:static}.faculty-reports-board .board-hero .hero-stats.faculty-reports-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 640px){.faculty-reports-toolbar,.faculty-reports-board .board-hero .hero-stats.faculty-reports-kpis{grid-template-columns:1fr}}.faculty-announce-board{display:grid;gap:var(--space-4);min-width:0;overflow-x:clip}.faculty-announce-board .board-hero .hero-stats.faculty-announce-kpis{grid-template-columns:repeat(4,minmax(0,1fr));max-width:none;gap:12px}.faculty-announce-kpis li{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto;align-items:center;gap:12px;padding:14px 16px;border-radius:14px;border:1px solid #e2e8f0;box-shadow:0 8px 20px #0f172a0a;background:#fff}.faculty-announce-kpi-copy{display:grid;gap:2px;min-width:0}.faculty-announce-kpi-copy b{font-size:1.3rem;line-height:1.1;letter-spacing:-.02em}.faculty-announce-kpi-copy span{font-size:.76rem;font-weight:600;color:#64748b}.faculty-announce-kpi-ico{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#eff6ff;color:#2563eb}.faculty-announce-kpi-ico .nav-ico{width:18px;height:18px}.faculty-announce-kpis .tone-total{border-color:#bfdbfe;background:linear-gradient(180deg,#f0f7ff,#fff)}.faculty-announce-kpis .tone-total .faculty-announce-kpi-ico{background:#dbeafe;color:#1d4ed8}.faculty-announce-kpis .tone-total b{color:#1d4ed8}.faculty-announce-kpis .tone-published{border-color:#bbf7d0;background:linear-gradient(180deg,#f0fdf4,#fff)}.faculty-announce-kpis .tone-published .faculty-announce-kpi-ico{background:#dcfce7;color:#15803d}.faculty-announce-kpis .tone-published b{color:#15803d}.faculty-announce-kpis .tone-review{border-color:#fde68a;background:linear-gradient(180deg,#fffbeb,#fff)}.faculty-announce-kpis .tone-review .faculty-announce-kpi-ico{background:#fef3c7;color:#c2410c}.faculty-announce-kpis .tone-review b{color:#c2410c}.faculty-announce-kpis .tone-scheduled{border-color:#fecaca;background:linear-gradient(180deg,#fef2f2,#fff)}.faculty-announce-kpis .tone-scheduled .faculty-announce-kpi-ico{background:#fee2e2;color:#b91c1c}.faculty-announce-kpis .tone-scheduled b{color:#b91c1c}.faculty-announce-toolbar{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr)) minmax(180px,1.4fr);gap:12px;align-items:end;padding:16px 18px;border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 8px 20px #0f172a08}.faculty-announce-toolbar label{display:grid;gap:5px;margin:0;font-size:.78rem;font-weight:700;color:#334155}.faculty-announce-toolbar input,.faculty-announce-toolbar select{width:100%;min-height:42px;border:1px solid #dbe3ef;border-radius:10px;padding:8px 12px;background:#fff;font-weight:500}.faculty-announce-search{min-width:0}.faculty-announce-search-wrap{position:relative;display:grid}.faculty-announce-search-ico{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#94a3b8;pointer-events:none}.faculty-announce-search-ico .nav-ico{width:15px;height:15px}.faculty-announce-search-wrap input{padding-left:36px}.faculty-announce-legacy-load{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:10px;align-items:end;padding-top:4px;border-top:1px dashed #e2e8f0;min-width:0}.faculty-announce-legacy-load label{flex:1;min-width:0}.faculty-announce-legacy-load input{max-width:100%;overflow:hidden;text-overflow:ellipsis}.faculty-announce-toolbar-actions{grid-column:1 / -1;display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.faculty-announce-create{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding-inline:16px;background:#2563eb!important;border-color:#2563eb!important;color:#fff!important;font-weight:700;border-radius:10px;box-shadow:0 6px 14px #2563eb38;text-decoration:none}.faculty-announce-create .nav-ico{width:15px;height:15px}.faculty-announce-split{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.9fr);gap:var(--space-4);align-items:start}.faculty-announce-list{border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 8px 20px #0f172a08;padding:16px;overflow:auto;min-width:0;display:grid;gap:14px}.faculty-announce-list-head{display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;align-items:end}.faculty-announce-list-head h3{margin:0 0 4px;color:#0f172a}.faculty-announce-table{width:100%;min-width:720px;border-collapse:collapse}.faculty-announce-table th,.faculty-announce-table td{padding:12px 10px;border-bottom:1px solid #eef2f7;text-align:left;vertical-align:middle;font-size:var(--fs-sm)}.faculty-announce-table th{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:#64748b;background:#f8fafc}.faculty-announce-table tbody tr{cursor:pointer}.faculty-announce-table tbody tr:hover{background:#f8fbff}.faculty-announce-table tr.is-selected{background:#eff6ff;box-shadow:inset 3px 0 #2563eb}.faculty-announce-title{display:grid;gap:2px}.faculty-announce-title strong{color:#0f172a}.faculty-announce-title small{color:#64748b}.faculty-announce-board .chip.faculty-announce-status{border-radius:999px;font-weight:700;padding:4px 10px;border:0}.faculty-announce-status.tone-published{background:#dcfce7;color:#166534}.faculty-announce-status.tone-review{background:#fef3c7;color:#b45309}.faculty-announce-status.tone-scheduled{background:#dbeafe;color:#1d4ed8}.faculty-announce-status.tone-draft{background:#f1f5f9;color:#475569}.faculty-announce-pane{position:sticky;top:12px;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 12px 28px #0f172a0f;padding:16px;display:grid;gap:14px;background:#fff;max-height:calc(100vh - 96px);overflow:auto}.faculty-announce-pane-tabs{display:grid;grid-template-columns:1fr 1fr;border-radius:12px;overflow:hidden;border:1px solid #dbeafe;background:#eef4ff}.faculty-announce-pane-tabs button{border:0;padding:12px;font:inherit;font-size:var(--fs-sm);font-weight:700;color:#1e3a8a;background:#e8eef9;cursor:pointer}.faculty-announce-pane-tabs button.on{background:#2563eb;color:#fff}.faculty-announce-pane-body{display:grid;gap:14px}.faculty-announce-selected{display:flex;justify-content:space-between;gap:10px;align-items:start}.faculty-announce-selected h3{margin:0 0 4px;color:#0f172a;font-size:1.05rem}.faculty-announce-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 14px;margin:0}.faculty-announce-info-grid dt{margin:0;font-size:.72rem;color:#64748b;font-weight:600}.faculty-announce-info-grid dd{margin:3px 0 0;font-size:var(--fs-sm);color:#0f172a;font-weight:700;overflow-wrap:anywhere}.faculty-announce-block{display:grid;gap:8px}.faculty-announce-block h4{margin:0;font-size:.92rem;font-weight:750;color:#0f172a}.faculty-announce-body{padding:14px;border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc;color:#1e293b;line-height:1.55}.faculty-announce-body p{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.faculty-announce-empty{display:grid;place-items:center;min-height:160px;padding:20px;border:1.5px dashed #cbd5e1;border-radius:12px;background:#f8fafc;color:#94a3b8;text-align:center;font-size:var(--fs-sm)}.faculty-announce-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;padding-top:12px;border-top:1px solid #eef2f7}.faculty-announce-open{background:#2563eb!important;border-color:#2563eb!important;color:#fff!important;font-weight:700;border-radius:10px;text-decoration:none;display:inline-flex;align-items:center;min-height:40px;padding-inline:14px}@media (max-width: 1100px){.faculty-announce-split{grid-template-columns:1fr}.faculty-announce-toolbar{grid-template-columns:1fr 1fr}.faculty-announce-pane{position:static;max-height:none}.faculty-announce-board .board-hero .hero-stats.faculty-announce-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 640px){.faculty-announce-toolbar,.faculty-announce-info-grid,.faculty-announce-board .board-hero .hero-stats.faculty-announce-kpis{grid-template-columns:1fr}}.faculty-messaging-board{display:grid;gap:var(--space-4);min-width:0;overflow-x:clip}.faculty-messaging-board .board-hero .hero-stats.faculty-messaging-kpis{grid-template-columns:repeat(4,minmax(0,1fr));max-width:none;gap:12px}.faculty-messaging-kpis li{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto;align-items:center;gap:12px;padding:14px 16px;border-radius:14px;border:1px solid #e2e8f0;box-shadow:0 8px 20px #0f172a0a;background:#fff}.faculty-messaging-kpi-copy{display:grid;gap:2px;min-width:0}.faculty-messaging-kpi-copy b{font-size:1.3rem;line-height:1.1;letter-spacing:-.02em}.faculty-messaging-kpi-copy span{font-size:.76rem;font-weight:600;color:#64748b}.faculty-messaging-kpi-ico{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#eff6ff;color:#2563eb}.faculty-messaging-kpi-ico .nav-ico{width:18px;height:18px}.faculty-messaging-kpis .tone-total{border-color:#bfdbfe;background:linear-gradient(180deg,#f0f7ff,#fff)}.faculty-messaging-kpis .tone-total .faculty-messaging-kpi-ico{background:#dbeafe;color:#1d4ed8}.faculty-messaging-kpis .tone-total b{color:#1d4ed8}.faculty-messaging-kpis .tone-subs{border-color:#fed7aa;background:linear-gradient(180deg,#fff7ed,#fff)}.faculty-messaging-kpis .tone-subs .faculty-messaging-kpi-ico{background:#ffedd5;color:#c2410c}.faculty-messaging-kpis .tone-subs b{color:#c2410c}.faculty-messaging-kpis .tone-review{border-color:#fde68a;background:linear-gradient(180deg,#fffbeb,#fff)}.faculty-messaging-kpis .tone-review .faculty-messaging-kpi-ico{background:#fef3c7;color:#b45309}.faculty-messaging-kpis .tone-review b{color:#b45309}.faculty-messaging-kpis .tone-drafts{border-color:#bbf7d0;background:linear-gradient(180deg,#f0fdf4,#fff)}.faculty-messaging-kpis .tone-drafts .faculty-messaging-kpi-ico{background:#dcfce7;color:#15803d}.faculty-messaging-kpis .tone-drafts b{color:#15803d}.faculty-messaging-toolbar{display:grid;grid-template-columns:repeat(3,minmax(130px,1fr)) minmax(180px,1.4fr);gap:12px;align-items:end;padding:16px 18px;border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 8px 20px #0f172a08}.faculty-messaging-toolbar label{display:grid;gap:5px;margin:0;font-size:.78rem;font-weight:700;color:#334155}.faculty-messaging-toolbar input,.faculty-messaging-toolbar select{width:100%;min-height:42px;border:1px solid #dbe3ef;border-radius:10px;padding:8px 12px;background:#fff;font-weight:500}.faculty-messaging-search-wrap{position:relative;display:grid}.faculty-messaging-search-ico{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#94a3b8;pointer-events:none}.faculty-messaging-search-ico .nav-ico{width:15px;height:15px}.faculty-messaging-search-wrap input{padding-left:36px}.faculty-messaging-legacy-load{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:10px;align-items:end;padding-top:4px;border-top:1px dashed #e2e8f0;min-width:0}.faculty-messaging-legacy-load label{flex:1;min-width:0}.faculty-messaging-legacy-load input{max-width:100%;overflow:hidden;text-overflow:ellipsis}.faculty-messaging-toolbar-actions{grid-column:1 / -1;display:flex;justify-content:flex-end}.faculty-messaging-tabs{display:flex;flex-wrap:wrap;gap:8px}.faculty-messaging-tabs button{border:1px solid #dbe3ef;background:#fff;border-radius:999px;padding:8px 16px;font-size:var(--fs-sm);font-weight:650;color:#334155;cursor:pointer}.faculty-messaging-tabs button.on{background:#2563eb;border-color:#2563eb;color:#fff;box-shadow:0 6px 14px #2563eb38}.faculty-messaging-split{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.9fr);gap:var(--space-4);align-items:start}.faculty-messaging-list{border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 8px 20px #0f172a08;padding:16px;overflow:auto;min-width:0;display:grid;gap:14px}.faculty-messaging-list-head h3{margin:0 0 4px;color:#0f172a}.faculty-messaging-table{width:100%;min-width:780px;border-collapse:collapse}.faculty-messaging-table th,.faculty-messaging-table td{padding:12px 10px;border-bottom:1px solid #eef2f7;text-align:left;vertical-align:middle;font-size:var(--fs-sm)}.faculty-messaging-table th{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:#64748b;background:#f8fafc}.faculty-messaging-table tbody tr{cursor:pointer}.faculty-messaging-table tbody tr:hover{background:#f8fbff}.faculty-messaging-table tr.is-selected{background:#eff6ff;box-shadow:inset 3px 0 #2563eb}.faculty-messaging-table tr.is-read{opacity:.78}.faculty-messaging-check-col{width:36px;text-align:center}.faculty-messaging-title{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:start}.faculty-messaging-title strong{display:block;color:#0f172a}.faculty-messaging-title small{color:#64748b}.faculty-messaging-row-ico{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;flex:none}.faculty-messaging-row-ico .nav-ico{width:15px;height:15px}.faculty-messaging-row-ico.type-assignment,.faculty-messaging-type.type-assignment{background:#fee2e2;color:#b91c1c}.faculty-messaging-row-ico.type-content,.faculty-messaging-type.type-content{background:#ede9fe;color:#7c3aed}.faculty-messaging-row-ico.type-draft,.faculty-messaging-type.type-draft{background:#dbeafe;color:#1d4ed8}.faculty-messaging-board .chip.faculty-messaging-type,.faculty-messaging-board .chip.faculty-messaging-status{border-radius:999px;font-weight:700;padding:4px 10px;border:0}.faculty-messaging-status.tone-pending{background:#ffedd5;color:#c2410c}.faculty-messaging-status.tone-review{background:#fef3c7;color:#b45309}.faculty-messaging-status.tone-draft{background:#dbeafe;color:#1d4ed8}.faculty-messaging-pane{position:sticky;top:12px;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 12px 28px #0f172a0f;padding:16px;display:grid;gap:14px;background:#fff;max-height:calc(100vh - 96px);overflow:auto}.faculty-messaging-pane-tabs{display:grid;grid-template-columns:1fr 1fr;border-radius:12px;overflow:hidden;border:1px solid #dbeafe;background:#eef4ff}.faculty-messaging-pane-tabs button{border:0;padding:12px;font:inherit;font-size:var(--fs-sm);font-weight:700;color:#1e3a8a;background:#e8eef9;cursor:pointer}.faculty-messaging-pane-tabs button.on{background:#2563eb;color:#fff}.faculty-messaging-pane-body{display:grid;gap:14px}.faculty-messaging-selected{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:start}.faculty-messaging-selected h3{margin:0 0 4px;color:#0f172a;font-size:1.05rem}.faculty-messaging-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 14px;margin:0}.faculty-messaging-info-grid dt{margin:0;font-size:.72rem;color:#64748b;font-weight:600}.faculty-messaging-info-grid dd{margin:3px 0 0;font-size:var(--fs-sm);color:#0f172a;font-weight:700;overflow-wrap:anywhere}.faculty-messaging-block{display:grid;gap:8px}.faculty-messaging-block h4{margin:0;font-size:.92rem;font-weight:750;color:#0f172a}.faculty-messaging-body{padding:14px;border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc;color:#1e293b;line-height:1.55}.faculty-messaging-body p{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.faculty-messaging-related{display:grid;gap:8px;padding:14px;border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc}.faculty-messaging-related small{color:#64748b}.faculty-messaging-empty{display:grid;place-items:center;min-height:160px;padding:20px;border:1.5px dashed #cbd5e1;border-radius:12px;background:#f8fafc;color:#94a3b8;text-align:center;font-size:var(--fs-sm)}.faculty-messaging-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;padding-top:12px;border-top:1px solid #eef2f7}.faculty-messaging-primary{background:#2563eb!important;border-color:#2563eb!important;color:#fff!important;font-weight:700;border-radius:10px;text-decoration:none;display:inline-flex;align-items:center;min-height:40px;padding-inline:14px}.faculty-messaging-delete{color:#b91c1c!important;border-color:#fecaca!important}@media (max-width: 1100px){.faculty-messaging-split{grid-template-columns:1fr}.faculty-messaging-toolbar{grid-template-columns:1fr 1fr}.faculty-messaging-pane{position:static;max-height:none}.faculty-messaging-board .board-hero .hero-stats.faculty-messaging-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 640px){.faculty-messaging-toolbar,.faculty-messaging-info-grid{grid-template-columns:1fr}.faculty-messaging-selected{grid-template-columns:auto 1fr}.faculty-messaging-board .board-hero .hero-stats.faculty-messaging-kpis{grid-template-columns:1fr}}.faculty-profile-board{display:grid;gap:var(--space-4);min-width:0;overflow-x:clip}.faculty-profile-card{display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;align-items:center;padding:18px 20px;border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 8px 20px #0f172a08}.faculty-profile-identity{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:center;min-width:0;flex:1}.faculty-profile-avatar{width:64px;height:64px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(180deg,#dbeafe,#eff6ff);color:#1d4ed8;font-weight:800;font-size:1.15rem;letter-spacing:.02em}.faculty-profile-name-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:8px}.faculty-profile-name-row h3{margin:0;color:#0f172a;font-size:1.2rem}.faculty-profile-board .chip.faculty-profile-active{border-radius:999px;border:0;background:#dcfce7;color:#166534;font-weight:700;padding:4px 10px}.faculty-profile-meta-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 16px;margin:0}.faculty-profile-meta-grid dt{margin:0;font-size:.72rem;color:#64748b;font-weight:600}.faculty-profile-meta-grid dd{margin:3px 0 0;font-size:var(--fs-sm);color:#0f172a;font-weight:700;overflow-wrap:anywhere}.faculty-profile-edit{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding-inline:16px;background:#2563eb!important;border-color:#2563eb!important;color:#fff!important;font-weight:700;border-radius:10px;box-shadow:0 6px 14px #2563eb38}.faculty-profile-edit .nav-ico{width:15px;height:15px}.faculty-profile-kpis{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none;max-width:none!important}.faculty-profile-kpis li{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto;align-items:center;gap:12px;padding:14px 16px;border-radius:14px;border:1px solid #e2e8f0;box-shadow:0 8px 20px #0f172a0a;background:#fff}.faculty-profile-kpi-copy{display:grid;gap:2px;min-width:0}.faculty-profile-kpi-copy b{font-size:1.3rem;line-height:1.1;letter-spacing:-.02em}.faculty-profile-kpi-copy span{font-size:.76rem;font-weight:600;color:#64748b}.faculty-profile-kpi-ico{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#eff6ff;color:#2563eb}.faculty-profile-kpi-ico .nav-ico{width:18px;height:18px}.faculty-profile-kpis .tone-programmes{border-color:#bfdbfe;background:linear-gradient(180deg,#f0f7ff,#fff)}.faculty-profile-kpis .tone-programmes .faculty-profile-kpi-ico{background:#dbeafe;color:#1d4ed8}.faculty-profile-kpis .tone-programmes b{color:#1d4ed8}.faculty-profile-kpis .tone-courses{border-color:#ddd6fe;background:linear-gradient(180deg,#f5f3ff,#fff)}.faculty-profile-kpis .tone-courses .faculty-profile-kpi-ico{background:#ede9fe;color:#7c3aed}.faculty-profile-kpis .tone-courses b{color:#6d28d9}.faculty-profile-kpis .tone-students{border-color:#bbf7d0;background:linear-gradient(180deg,#f0fdf4,#fff)}.faculty-profile-kpis .tone-students .faculty-profile-kpi-ico{background:#dcfce7;color:#15803d}.faculty-profile-kpis .tone-students b{color:#15803d}.faculty-profile-kpis .tone-pending{border-color:#fde68a;background:linear-gradient(180deg,#fffbeb,#fff)}.faculty-profile-kpis .tone-pending .faculty-profile-kpi-ico{background:#fef3c7;color:#c2410c}.faculty-profile-kpis .tone-pending b{color:#c2410c}.faculty-profile-kpis .tone-alerts{border-color:#fecaca;background:linear-gradient(180deg,#fef2f2,#fff)}.faculty-profile-kpis .tone-alerts .faculty-profile-kpi-ico{background:#fee2e2;color:#b91c1c}.faculty-profile-kpis .tone-alerts b{color:#b91c1c}.faculty-profile-split{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.85fr);gap:var(--space-4);align-items:start}.faculty-profile-assignments{border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 8px 20px #0f172a08;padding:16px;overflow:auto;min-width:0}.faculty-profile-section-head h3{margin:0 0 4px;color:#0f172a}.faculty-profile-table{width:100%;min-width:640px;border-collapse:collapse;margin-top:12px}.faculty-profile-table th,.faculty-profile-table td{padding:12px 10px;border-bottom:1px solid #eef2f7;text-align:left;vertical-align:middle;font-size:var(--fs-sm)}.faculty-profile-table th{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:#64748b;background:#f8fafc}.faculty-profile-title{display:grid;gap:2px}.faculty-profile-title strong{color:#0f172a}.faculty-profile-title small{color:#64748b}.faculty-profile-side{display:grid;gap:14px}.faculty-profile-quick,.faculty-profile-account{border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 8px 20px #0f172a08;padding:16px}.faculty-profile-quick h3,.faculty-profile-account h3{margin:0 0 12px;color:#0f172a;font-size:1rem}.faculty-profile-quick-list{display:grid;gap:8px}.faculty-profile-quick-list a,.faculty-profile-quick-list button{display:flex;align-items:center;gap:10px;width:100%;min-height:44px;border:1px solid #e2e8f0;border-radius:12px;background:#fff;padding:0 12px;font:inherit;font-size:var(--fs-sm);font-weight:650;color:#0f172a;cursor:pointer;text-align:left;text-decoration:none}.faculty-profile-quick-list a:hover,.faculty-profile-quick-list button:hover{border-color:#93c5fd;background:#f8fbff}.faculty-profile-quick-ico{width:30px;height:30px;border-radius:10px;display:grid;place-items:center;flex:none}.faculty-profile-quick-ico .nav-ico{width:15px;height:15px}.faculty-profile-quick-list .tone-edit .faculty-profile-quick-ico{background:#dbeafe;color:#1d4ed8}.faculty-profile-quick-list .tone-password .faculty-profile-quick-ico{background:#ede9fe;color:#7c3aed}.faculty-profile-quick-list .tone-notify .faculty-profile-quick-ico{background:#ffedd5;color:#c2410c}.faculty-profile-quick-list .tone-courses .faculty-profile-quick-ico{background:#dcfce7;color:#15803d}.faculty-profile-account-grid{display:grid;gap:12px;margin:0}.faculty-profile-account-grid dt{margin:0;font-size:.72rem;color:#64748b;font-weight:600}.faculty-profile-account-grid dd{margin:3px 0 0;font-size:var(--fs-sm);color:#0f172a;font-weight:700;overflow-wrap:anywhere}@media (max-width: 1100px){.faculty-profile-split{grid-template-columns:1fr}.faculty-profile-meta-grid{grid-template-columns:1fr 1fr}.faculty-profile-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}}@media (max-width: 640px){.faculty-profile-meta-grid{grid-template-columns:1fr}.faculty-profile-kpis{grid-template-columns:1fr!important}.faculty-profile-identity{grid-template-columns:1fr}}.admin-grading-board{display:grid;gap:var(--space-4);background:radial-gradient(1200px 420px at 10% -10%,#dbeafe66,transparent 60%),radial-gradient(900px 360px at 100% 0%,#e0e7ff55,transparent 55%),#f1f5f9;margin:calc(var(--space-4) * -1);padding:var(--space-4);border-radius:18px}.admin-grading-hero{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(220px,.85fr);gap:18px;align-items:center;padding:20px 22px;border:1px solid #dbeafe;background:linear-gradient(135deg,#fff,#eff6ff);box-shadow:0 10px 28px #2563eb14}.admin-grading-hero-copy{display:grid;gap:8px;min-width:0}.admin-grading-title{margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:clamp(1.35rem,2vw,1.75rem);color:var(--navy);letter-spacing:-.02em}.admin-grading-badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;background:#dbeafe;color:#1d4ed8;font-size:.72rem;font-weight:800;letter-spacing:.02em;text-transform:uppercase}.admin-grading-lede{margin:0;max-width:54ch;color:var(--muted);font-size:.92rem;line-height:1.45}.admin-grading-hero-aside{display:grid;justify-items:end;gap:6px;color:var(--navy)}.admin-grading-hero-aside strong{font-size:.92rem}.admin-grading-campus{width:min(100%,220px);height:auto;color:#1e3a8a}.admin-grading-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;width:100%;list-style:none;margin:0;padding:0}.admin-grading-kpis li{position:relative;display:grid;gap:2px;padding:14px 14px 12px;border-radius:16px;border:1px solid #e2e8f0;background:#fff;box-shadow:0 8px 18px #0f172a0d;overflow:hidden}.admin-grading-kpi-ico{width:28px;height:28px;border-radius:9px;display:grid;place-items:center;margin-bottom:4px;background:#eff6ff;color:#2563eb}.admin-grading-kpi-ico .nav-ico{width:15px;height:15px}.admin-grading-kpis b{font-size:1.45rem;line-height:1.1;color:var(--navy)}.admin-grading-kpis>li>span:not(.admin-grading-kpi-ico){font-size:.78rem;font-weight:750;color:var(--navy)}.admin-grading-kpis small{font-size:.68rem;color:var(--muted)}.admin-grading-kpis .tone-up{color:#15803d;font-weight:700}.admin-grading-kpis .tone-graded{border-color:#bbf7d0;background:linear-gradient(180deg,#f0fdf4,#fff)}.admin-grading-kpis .tone-graded .admin-grading-kpi-ico{background:#dcfce7;color:#166534}.admin-grading-kpis .tone-graded b{color:#166534}.admin-grading-kpis .tone-pending{border-color:#fde68a;background:linear-gradient(180deg,#fffbeb,#fff)}.admin-grading-kpis .tone-pending .admin-grading-kpi-ico{background:#fef3c7;color:#b45309}.admin-grading-kpis .tone-pending b{color:#b45309}.admin-grading-kpis .tone-overdue{border-color:#fecaca;background:linear-gradient(180deg,#fef2f2,#fff)}.admin-grading-kpis .tone-overdue .admin-grading-kpi-ico{background:#fee2e2;color:#b91c1c}.admin-grading-kpis .tone-overdue b{color:#b91c1c}.admin-grading-shell{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,300px);gap:var(--space-4);align-items:start}.admin-grading-main{display:grid;gap:var(--space-4);min-width:0}.admin-grading-rail{display:grid;gap:12px;position:sticky;top:12px}.admin-grading-analytics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-4)}.admin-grading-card{display:grid;gap:12px;padding:16px;border-radius:16px;border:1px solid #e2e8f0;background:#fff;box-shadow:0 8px 20px #0f172a0a}.admin-grading-card-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.admin-grading-card-head h3{margin:0;font-size:.95rem;color:var(--navy)}.admin-grading-card-head span{font-size:.72rem;color:var(--muted);font-weight:650}.admin-grading-donut{width:150px;height:150px;margin:4px auto;border-radius:50%;background:conic-gradient(#16a34a 0 var(--graded, 0%),#f59e0b var(--graded, 0%) calc(var(--graded, 0%) + var(--pending, 0%)),#ef4444 0);display:grid;place-items:center;box-shadow:inset 0 0 0 1px #e2e8f0}.admin-grading-donut-hole{width:90px;height:90px;border-radius:50%;background:#fff;display:grid;place-items:center;text-align:center;box-shadow:0 0 0 1px #f1f5f9}.admin-grading-donut-hole b{font-size:1.3rem;line-height:1;color:var(--navy)}.admin-grading-donut-hole span{font-size:.72rem;color:var(--muted)}.admin-grading-legend{list-style:none;margin:0;padding:0;display:grid;gap:6px;font-size:.82rem}.admin-grading-legend.inline{grid-auto-flow:column;justify-content:start;gap:14px}.admin-grading-legend i{display:inline-block;width:10px;height:10px;border-radius:999px;margin-right:6px}.admin-grading-legend .tone-graded{background:#16a34a}.admin-grading-legend .tone-pending{background:#f59e0b}.admin-grading-legend .tone-overdue{background:#ef4444}.admin-grading-legend .tone-submissions{background:#2563eb}.admin-grading-trend-wrap{display:grid;gap:8px}.admin-grading-trend-svg{width:100%;height:auto;display:block}.admin-grading-trend-tip,.admin-grading-trend-hint{margin:0;font-size:.74rem;color:var(--muted)}.admin-grading-trend-tip{display:flex;flex-wrap:wrap;gap:8px 12px;padding:8px 10px;border-radius:10px;background:#eff6ff;color:var(--navy)}.admin-grading-bars{list-style:none;margin:0;padding:0;display:grid;gap:10px}.admin-grading-bars li{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1.6fr) auto;gap:8px;align-items:center}.admin-grading-bars span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.8rem}.admin-grading-bars div{background:#e2e8f0;border-radius:999px;height:9px;overflow:hidden}.admin-grading-bars i{display:block;height:100%;background:linear-gradient(90deg,#2563eb,#60a5fa);border-radius:999px}.admin-grading-actions{display:grid;gap:8px}.admin-grading-actions .btn{justify-content:center;width:100%;border-radius:12px;font-weight:700}.admin-grading-actions .btn:first-child{background:#2563eb;color:#fff;border-color:#2563eb;box-shadow:0 8px 16px #2563eb40}.admin-grading-sla-gauge{width:148px;height:148px;margin:4px auto;border-radius:50%;background:conic-gradient(#10b981 0 var(--sla, 0%),#e2e8f0 0);display:grid;place-items:center}.admin-grading-sla-hole{width:102px;height:102px;border-radius:50%;background:#fff;display:grid;place-items:center;text-align:center;color:#047857;box-shadow:inset 0 0 0 1px #d1fae5}.admin-grading-sla-hole b{font-size:1.55rem;line-height:1}.admin-grading-sla-hole span{font-size:.72rem;color:var(--muted)}.admin-grading-sla-breakdown{list-style:none;margin:0;padding:0;display:grid;gap:6px}.admin-grading-sla-breakdown li{display:flex;justify-content:space-between;gap:8px;font-size:.82rem;padding:7px 9px;border-radius:10px;background:#f8fafc}.admin-grading-alerts{list-style:none;margin:0;padding:0;display:grid;gap:8px}.admin-grading-alerts li{display:grid;gap:2px;padding:10px;border:1px solid var(--line);border-radius:12px;background:#fff7ed}.admin-grading-alerts .tone-rose{background:#fef2f2;border-color:#fecaca}.admin-grading-alerts .tone-amber{background:#fffbeb;border-color:#fde68a}.admin-grading-alerts .tone-blue{background:#eff6ff;border-color:#bfdbfe}.admin-grading-alerts .tone-green{background:#f0fdf4;border-color:#bbf7d0}.admin-grading-alerts span{color:var(--muted);font-size:var(--fs-sm)}.admin-grading-toolbar{display:grid;grid-template-columns:repeat(5,minmax(100px,1fr)) minmax(160px,1.5fr) auto auto;gap:10px;align-items:end;padding:14px;border-radius:16px;border:1px solid #e2e8f0;background:#fff;box-shadow:0 6px 16px #0f172a0a}.admin-grading-toolbar label{display:grid;gap:4px;margin:0;font-size:var(--fs-sm);font-weight:700;color:var(--navy)}.admin-grading-toolbar input,.admin-grading-toolbar select{width:100%;min-width:0;border-radius:10px;border:1px solid #cbd5e1;background:#f8fafc}.admin-grading-search{min-width:0}.admin-grading-tabs{display:flex;flex-wrap:wrap;gap:8px}.admin-grading-tabs button{border:1px solid #dbeafe;background:#fff;border-radius:999px;padding:7px 13px;font-weight:700;color:var(--navy);cursor:pointer}.admin-grading-tabs button.on{background:#2563eb;border-color:#2563eb;color:#fff;box-shadow:0 6px 14px #2563eb38}.admin-grading-table-wrap{overflow:auto;padding:0;border-radius:16px;border:1px solid #e2e8f0;background:#fff;box-shadow:0 8px 20px #0f172a0a}.admin-grading-table{width:100%;border-collapse:collapse;min-width:920px}.admin-grading-table th,.admin-grading-table td{padding:12px 10px;border-bottom:1px solid #eef2f7;text-align:left;vertical-align:top;font-size:.86rem}.admin-grading-table th{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:#64748b;background:#f8fafc;position:sticky;top:0;z-index:1}.admin-grading-table tr.is-selected{background:#eff6ff}.admin-grading-table .chip{display:inline-flex;align-items:center;padding:3px 9px;border-radius:999px;font-size:.72rem;font-weight:750}.admin-grading-row-actions{display:flex;gap:6px;align-items:center}.admin-grading-row-actions .btn{border-radius:10px;padding-inline:12px}.admin-grading-more{position:relative}.admin-grading-more-btn{min-width:34px;padding-inline:8px;font-weight:800}.admin-grading-menu{position:absolute;right:0;top:calc(100% + 4px);z-index:5;display:grid;gap:2px;min-width:180px;padding:6px;border:1px solid var(--line);border-radius:10px;background:#fff;box-shadow:0 10px 24px #0f172a1f}.admin-grading-menu button{border:0;background:transparent;text-align:left;padding:8px 10px;border-radius:8px;cursor:pointer;font-size:.82rem}.admin-grading-menu button:hover{background:#f1f5f9}.admin-grading-pager{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;align-items:center;padding:12px 14px;border-top:1px solid #eef2f7;font-size:.82rem;color:var(--muted)}.admin-grading-pages{display:flex;flex-wrap:wrap;gap:4px;align-items:center}.admin-grading-pages .btn{min-width:34px;padding-inline:8px;border-radius:9px}.admin-grading-pages .btn.on{background:#2563eb;border-color:#2563eb;color:#fff}.admin-grading-page-slot{display:inline-flex;align-items:center;gap:4px}.admin-grading-ellipsis{color:var(--muted);padding-inline:2px}.chip-admin-review{background:#dbeafe;color:#1d4ed8}@media (max-width: 1200px){.admin-grading-shell{grid-template-columns:1fr}.admin-grading-rail{position:static;grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.admin-grading-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-grading-hero{grid-template-columns:1fr}.admin-grading-hero-aside{justify-items:start}}@media (max-width: 900px){.admin-grading-analytics,.admin-grading-rail{grid-template-columns:1fr}.admin-grading-toolbar{grid-template-columns:1fr 1fr}}@media (max-width: 640px){.admin-grading-kpis{grid-template-columns:1fr 1fr}.admin-grading-toolbar{grid-template-columns:1fr}.admin-grading-board{margin:0;padding:0;background:transparent}}.topic-field{display:grid;gap:6px;min-width:0}.topic-id{font-weight:650}.studio-tree .hierarchy-tree{margin-top:8px}.tree-btn.on{background:#dbeafe;border-radius:8px;font-weight:700}.workflow{list-style:none;margin:0;padding:0;display:grid;gap:12px}.workflow li{padding-left:18px;position:relative;color:var(--muted);display:grid}.workflow li strong{color:var(--navy);font-weight:650}.workflow li span{font-size:.78rem}.workflow li:before{content:"";position:absolute;left:0;top:.45em;width:8px;height:8px;border-radius:50%;background:#cbd5e1}.workflow .on:before{background:#2563eb}.preview-card{display:flex;gap:12px;align-items:flex-start;padding:12px;border:1px solid var(--line);border-radius:12px;background:#f8fafc}.preview-mark{width:42px;height:42px;border-radius:10px;background:#2563eb;color:#fff;display:grid;place-items:center;font-size:.68rem;font-weight:700;flex:none}.preview-card p{margin:2px 0 6px;color:var(--muted);font-size:.8rem}.preview-kind{display:inline-block;padding:2px 8px;border-radius:999px;background:#dbeafe;color:#1d4ed8;font-size:.72rem;font-weight:700}.preview-place{color:var(--muted);font-size:.8rem}.action-list{display:grid;gap:8px}.action-link,.faculty-studio .action-list .btn,.faculty-studio .history summary{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;text-align:left;text-decoration:none;border-radius:12px;padding:10px 12px;min-height:44px;border:0;font:inherit;font-weight:700;cursor:pointer}.action-link span,.faculty-studio .history summary span{font-weight:500;font-size:.75rem}.action-link.save{background:#f5f3ff;color:#6d28d9}.action-link.preview{background:#eff6ff;color:#1d4ed8}.faculty-studio .action-list .btn{background:#ecfdf5;color:#047857}.faculty-studio .history summary{background:#f8fafc;color:var(--navy);list-style:none}.faculty-studio .history .panel{border:0;box-shadow:none;padding:8px 0 0;background:transparent}.faculty-studio .edit-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end;margin-top:12px}.faculty-studio .edit-row h3{grid-column:1 / -1;margin:0}.structure-grid{display:grid;grid-template-columns:minmax(220px,320px) minmax(0,1fr);gap:16px;align-items:start}.studio-grid .filters,.structure-grid .filters{display:grid;grid-template-columns:1fr;align-items:stretch}.studio-grid .filters .btn,.structure-grid .filters .btn{justify-self:start;width:auto}.faculty-links{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-top:16px}.faculty-link{display:grid;gap:4px;min-height:44px;text-decoration:none;color:inherit;padding:16px}.faculty-link span{color:var(--muted);font-size:.85rem}.faculty-home{display:grid;gap:var(--space-4)}.faculty-home-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,300px);gap:var(--space-4);align-items:start}.faculty-home-main,.faculty-home-aside{display:grid;gap:var(--space-4);min-width:0}.faculty-programme-panel .filters{margin-bottom:var(--space-3)}.faculty-status-pills{list-style:none;margin:var(--space-3) 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px}.faculty-status-pills li{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:10px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.faculty-status-pills .faculty-status-ico{grid-row:1 / span 2;width:36px;height:36px;border-radius:999px;display:grid;place-items:center}.faculty-status-pills b{font-size:1.15rem;color:var(--navy-dark);line-height:1.1}.faculty-status-pills span:not(.faculty-status-ico){color:var(--muted);font-size:var(--fs-xs);font-weight:550}.faculty-status-pills .tone-total .faculty-status-ico{background:#dbeafe;color:#2563eb}.faculty-status-pills .tone-draft .faculty-status-ico{background:#ffedd5;color:#ea580c}.faculty-status-pills .tone-review .faculty-status-ico{background:#ede9fe;color:#7c3aed}.faculty-status-pills .tone-approved .faculty-status-ico{background:#d1fae5;color:#059669}.faculty-status-pills .tone-published .faculty-status-ico{background:#ffe4e6;color:#e11d48}.faculty-status-pills .tone-rejected .faculty-status-ico{background:#f1f5f9;color:#475569}.faculty-quick-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.faculty-quick-card{display:grid;gap:6px;align-content:start;padding:14px;border:1px solid var(--line);border-radius:var(--radius);background:#f8fafc;text-decoration:none;color:inherit;min-height:96px;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.faculty-quick-card:hover{border-color:#93c5fd;background:#fff;box-shadow:var(--shadow)}.faculty-quick-ico{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:#dbeafe;color:#2563eb}.faculty-quick-card:nth-child(2) .faculty-quick-ico{background:#ede9fe;color:#7c3aed}.faculty-quick-card:nth-child(3) .faculty-quick-ico{background:#d1fae5;color:#059669}.faculty-quick-card:nth-child(4) .faculty-quick-ico{background:#ffedd5;color:#ea580c}.faculty-quick-card:nth-child(5) .faculty-quick-ico{background:#e0f2fe;color:#0284c7}.faculty-quick-card:nth-child(6) .faculty-quick-ico{background:#ffe4e6;color:#e11d48}.faculty-quick-card:nth-child(7) .faculty-quick-ico{background:#fef9c3;color:#a16207}.faculty-quick-card:nth-child(8) .faculty-quick-ico{background:#ccfbf1;color:#0d9488}.faculty-quick-card:nth-child(9) .faculty-quick-ico{background:#f1f5f9;color:#475569}.faculty-quick-card strong{color:var(--navy-dark);font-size:var(--fs-sm)}.faculty-quick-card span{color:var(--muted);font-size:var(--fs-xs)}.faculty-recent-panel .panel-title,.faculty-courses-panel .panel-title,.faculty-quick-panel .panel-title,.faculty-programme-panel .panel-title{margin-bottom:12px}.faculty-recent-panel .panel-title h3,.faculty-courses-panel .panel-title h3,.faculty-quick-panel .panel-title h3,.faculty-programme-panel .panel-title h3{margin:0}.panel-link{color:var(--accent);font-size:var(--fs-sm);font-weight:650;text-decoration:none}.panel-link:hover{text-decoration:underline}.faculty-home .table-wrap{overflow-x:auto}.faculty-recent-table{width:100%;border-collapse:collapse}.faculty-recent-table th,.faculty-recent-table td{padding:10px 8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;font-size:var(--fs-sm)}.faculty-recent-table th{color:var(--muted);font-weight:650;font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.04em}.faculty-lesson-title{display:inline-flex;align-items:center;gap:8px;color:var(--navy-dark);font-weight:600}.faculty-lesson-title .nav-ico{color:var(--accent);flex:none}.btn.compact{min-height:34px;padding:4px 12px;font-size:var(--fs-sm)}.faculty-course-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.faculty-course-card{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:12px;text-decoration:none;color:inherit;background:#fff}.faculty-course-card:hover{border-color:#93c5fd;box-shadow:var(--shadow)}.faculty-course-ico{width:36px;height:36px;border-radius:10px;display:grid;place-items:center}.faculty-course-card.tone-blue .faculty-course-ico{background:#dbeafe;color:#2563eb}.faculty-course-card.tone-rose .faculty-course-ico{background:#ffe4e6;color:#e11d48}.faculty-course-card.tone-violet .faculty-course-ico{background:#ede9fe;color:#7c3aed}.faculty-course-card.tone-amber .faculty-course-ico{background:#ffedd5;color:#ea580c}.faculty-course-card.tone-teal .faculty-course-ico{background:#ccfbf1;color:#0d9488}.faculty-course-card.tone-sky .faculty-course-ico{background:#e0f2fe;color:#0284c7}.faculty-course-card strong{display:block;color:var(--navy-dark);font-size:var(--fs-sm)}.faculty-course-card small{display:block;color:var(--muted);font-size:var(--fs-xs);margin-top:2px}.side-group-empty{margin:0;padding:6px 10px 10px;color:var(--sidebar-muted);font-size:.72rem;line-height:1.4}@media (max-width: 1100px){.faculty-home-layout{grid-template-columns:1fr}.faculty-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 640px){.faculty-quick-grid{grid-template-columns:1fr}.faculty-status-pills{grid-template-columns:repeat(2,minmax(0,1fr))}}.faculty-home-board{display:grid;gap:var(--space-4)}.faculty-welcome .faculty-kpi-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;width:100%}.faculty-welcome .faculty-kpi-stats li{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto auto;column-gap:10px;align-items:start;padding:12px;background:#fff;border:1px solid var(--line);border-radius:12px}.faculty-welcome .faculty-kpi-stats .nav-ico{grid-row:1 / span 3;width:18px;height:18px;margin-top:4px}.faculty-welcome .faculty-kpi-stats b{font-size:1.2rem;color:var(--navy-dark)}.faculty-welcome .faculty-kpi-stats span{color:var(--navy);font-size:var(--fs-xs);font-weight:650}.faculty-welcome .faculty-kpi-stats small{color:var(--muted);font-size:.68rem;grid-column:2}.faculty-welcome .faculty-kpi-stats .tone-blue .nav-ico{color:#2563eb}.faculty-welcome .faculty-kpi-stats .tone-green .nav-ico{color:#059669}.faculty-welcome .faculty-kpi-stats .tone-violet .nav-ico{color:#7c3aed}.faculty-welcome .faculty-kpi-stats .tone-amber .nav-ico{color:#ea580c}.faculty-welcome .faculty-kpi-stats .tone-rose .nav-ico{color:#e11d48}.faculty-hero-art{width:120px;height:72px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(135deg,#dbeafe,#eff6ff);color:#2563eb}.faculty-hero-art .nav-ico{width:36px;height:36px}.faculty-quick-grid-8{grid-template-columns:repeat(4,minmax(0,1fr))}.faculty-course-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}.faculty-course-tile{border:1px solid var(--line);border-radius:14px;padding:14px;background:#fff;display:grid;gap:10px}.faculty-course-tile-head{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:center}.faculty-course-tile-head strong{display:block;color:var(--navy-dark)}.faculty-course-tile-head small{color:var(--muted);font-size:var(--fs-xs)}.faculty-course-meta{display:flex;justify-content:space-between;gap:8px;margin:0;color:var(--muted);font-size:var(--fs-xs)}.faculty-course-meta span{display:inline-flex;align-items:center;gap:4px}.faculty-progress{height:8px;border-radius:999px;background:#e2e8f0;overflow:hidden}.faculty-progress span{display:block;height:100%;background:var(--accent);border-radius:inherit}.faculty-course-links{display:flex;flex-wrap:wrap;gap:8px 12px;font-size:var(--fs-xs)}.faculty-course-links a{color:var(--accent);font-weight:650;text-decoration:none}.faculty-course-links a:hover{text-decoration:underline}.faculty-activity-type{display:inline-flex;align-items:center;gap:6px;color:var(--navy);font-weight:650}.faculty-schedule-list,.faculty-pending-list,.faculty-notify-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}.faculty-schedule-list li{display:grid;gap:2px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:#f8fafc}.faculty-schedule-when{color:var(--muted);font-size:var(--fs-xs)}.faculty-schedule-status{justify-self:start;margin-top:4px;padding:2px 8px;border-radius:999px;font-size:.68rem;font-weight:700}.faculty-schedule-status.tone-live{background:#d1fae5;color:#047857}.faculty-schedule-status.tone-upcoming{background:#dbeafe;color:#1d4ed8}.faculty-schedule-status.tone-done{background:#f1f5f9;color:#475569}.faculty-pending-list a,.faculty-notify-list a{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:center;text-decoration:none;color:inherit;padding:8px 0;border-bottom:1px solid var(--line)}.faculty-pending-list li:last-child a,.faculty-notify-list li:last-child a{border-bottom:0}.faculty-pending-count{min-width:28px;height:28px;border-radius:999px;display:grid;place-items:center;font-size:.75rem;font-weight:700;color:#fff}.faculty-pending-count.tone-amber{background:#ea580c}.faculty-pending-count.tone-violet{background:#7c3aed}.faculty-pending-count.tone-rose{background:#e11d48}.faculty-pending-count.tone-blue{background:#2563eb}.faculty-notify-list strong{display:block;font-size:var(--fs-sm);color:var(--navy-dark)}.faculty-notify-list small{color:var(--muted)}@media (max-width: 1280px){.faculty-welcome .faculty-kpi-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.faculty-quick-grid-8{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 720px){.faculty-welcome .faculty-kpi-stats{grid-template-columns:1fr 1fr}.faculty-quick-grid-8{grid-template-columns:1fr}}.faculty-courses-board{display:grid;gap:var(--space-4)}.faculty-structure-banner{margin:0;padding:12px 14px;border-radius:12px;border:1px solid #fcd34d;background:#fffbeb;color:#92400e;font-size:var(--fs-sm);line-height:1.45}.faculty-courses-toolbar{display:grid;grid-template-columns:minmax(180px,1.4fr) repeat(3,minmax(120px,.8fr)) auto auto;gap:10px;align-items:end}.faculty-courses-toolbar label{display:grid;gap:4px;margin:0}.faculty-courses-toolbar input,.faculty-courses-toolbar select{width:100%;min-height:40px;border:1px solid var(--line);border-radius:10px;padding:8px 10px;background:#fff}.faculty-view-toggle{display:inline-flex;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#f8fafc}.faculty-view-toggle button{border:0;background:transparent;padding:8px 12px;font:inherit;font-size:var(--fs-sm);font-weight:650;color:var(--muted);cursor:pointer;min-height:40px}.faculty-view-toggle button.on{background:var(--accent);color:#fff}.faculty-hierarchy-controls{display:flex;gap:8px}.faculty-hierarchy-table{width:100%;border-collapse:collapse}.faculty-hierarchy-table th,.faculty-hierarchy-table td{padding:10px 8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;font-size:var(--fs-sm)}.faculty-hierarchy-table th{color:var(--muted);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.04em;font-weight:700}.faculty-tree-title{display:flex;align-items:center;gap:8px;min-width:0}.faculty-tree-copy{display:grid;gap:2px;min-width:0}.faculty-tree-title strong{color:var(--navy-dark);overflow-wrap:anywhere}.faculty-tree-copy small{color:var(--muted);font-size:var(--fs-xs);font-weight:600}.faculty-code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem;color:var(--navy);background:#f8fafc;border:1px solid var(--line);border-radius:6px;padding:2px 6px}.faculty-create-steps{margin:12px 0 0;padding-left:1.2rem;text-align:left;display:grid;gap:4px;color:var(--navy);font-size:var(--fs-sm)}.faculty-tree-chevron,.faculty-tree-spacer{width:16px;height:16px;flex:none}.faculty-tree-chevron{border:0;background:transparent;padding:0;cursor:pointer;position:relative}.faculty-tree-chevron:before{content:"";position:absolute;top:4px;right:4px;bottom:4px;left:4px;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:rotate(-45deg)}.faculty-tree-chevron.is-open:before{transform:rotate(45deg)}.faculty-tree-ico{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;flex:none}.faculty-tree-ico.tone-programme{background:#ede9fe;color:#7c3aed}.faculty-tree-ico.tone-year{background:#d1fae5;color:#059669}.faculty-tree-ico.tone-semester{background:#dbeafe;color:#2563eb}.faculty-tree-ico.tone-period{background:#e0f2fe;color:#0284c7}.faculty-tree-ico.tone-subject{background:#ffe4e6;color:#e11d48}.faculty-tree-ico.tone-topic{background:#e0f2fe;color:#0369a1}.faculty-hierarchy-table th:last-child,.faculty-hierarchy-table td.faculty-tree-actions{white-space:nowrap;text-align:right;vertical-align:middle}.faculty-tree-actions{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end;align-items:center}.faculty-tree-actions .btn.compact{padding:4px 10px;font-size:.78rem;font-weight:650}.faculty-type-pill{display:inline-flex;padding:2px 8px;border-radius:999px;font-size:.68rem;font-weight:700}.faculty-type-pill.tone-programme{background:#ede9fe;color:#5b21b6}.faculty-type-pill.tone-year{background:#d1fae5;color:#065f46}.faculty-type-pill.tone-semester{background:#dbeafe;color:#1e40af}.faculty-type-pill.tone-period{background:#e0f2fe;color:#075985}.faculty-type-pill.tone-subject{background:#ffe4e6;color:#9f1239}.faculty-type-pill.tone-topic{background:#e0f2fe;color:#0c4a6e}.faculty-row-actions{position:relative;display:inline-flex;gap:6px;align-items:center}.faculty-row-menu{position:absolute;right:0;top:calc(100% + 4px);z-index:20;min-width:180px;display:grid;gap:2px;padding:6px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow-lg)}.faculty-row-menu a{padding:8px 10px;border-radius:8px;text-decoration:none;color:var(--navy);font-size:var(--fs-sm);font-weight:600}.faculty-row-menu a:hover{background:#eff6ff;color:var(--accent)}@media (max-width: 1100px){.faculty-courses-toolbar{grid-template-columns:1fr 1fr}}@media (max-width: 640px){.faculty-courses-toolbar{grid-template-columns:1fr}}.structure-forms{display:grid;gap:20px}.structure-form-block{margin:0;padding:14px;border:1px solid #e2e8f0;border-radius:14px;background:#fff}.structure-form-block h3{margin:0 0 4px;font-size:var(--fs-md)}.fs-empty-copy{margin:0;padding:8px 12px 8px 36px;font-size:var(--fs-sm)}.faculty-structure-board{display:grid;gap:var(--space-4)}.faculty-structure-toolbar{display:grid;grid-template-columns:minmax(200px,1.6fr) repeat(3,minmax(120px,.75fr)) auto;gap:10px;align-items:end}.faculty-structure-toolbar label{display:grid;gap:4px;margin:0}.faculty-structure-toolbar input,.faculty-structure-toolbar select{width:100%;min-height:40px;border:1px solid var(--line);border-radius:10px;padding:8px 10px;background:#fff}.faculty-structure-split{display:grid;grid-template-columns:minmax(280px,1.05fr) minmax(300px,.95fr);gap:16px;align-items:start}.faculty-structure-tree .panel-title,.faculty-structure-detail .panel-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.faculty-structure-tree .panel-title h3{margin:0;font-size:var(--fs-md)}.faculty-structure-list,.faculty-structure-list ul{list-style:none;margin:0;padding:0}.fs-children{padding-left:14px;border-left:1px solid #e2e8f0;margin-left:12px}.fs-row{width:100%;display:grid;grid-template-columns:16px 28px minmax(0,1fr) auto;gap:8px;align-items:center;border:0;background:transparent;text-align:left;padding:8px 10px;border-radius:10px;cursor:pointer;font:inherit;color:var(--navy);min-height:44px}.fs-row:hover{background:#f8fafc}.fs-row.is-selected{background:#eff6ff;box-shadow:inset 3px 0 0 var(--accent)}.fs-copy{display:grid;gap:2px;min-width:0}.fs-copy strong{font-size:var(--fs-sm);overflow-wrap:anywhere}.fs-copy small{color:var(--muted);font-size:var(--fs-xs);font-weight:600}.fs-meta{color:var(--muted);font-size:var(--fs-xs);font-weight:650;white-space:nowrap}.fs-detail-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:12px}.fs-detail-head h3{margin:4px 0}.fs-detail-actions{display:flex;gap:8px;flex-wrap:wrap}.fs-detail-tabs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px;border-bottom:1px solid var(--line);padding-bottom:8px}.fs-detail-tabs button{border:0;background:transparent;padding:8px 10px;border-radius:8px;font:inherit;font-size:var(--fs-sm);font-weight:650;color:var(--muted);cursor:pointer}.fs-detail-tabs button.on{background:#eff6ff;color:var(--accent)}.fs-detail-body{display:grid;gap:8px;margin-bottom:16px}.fs-detail-body h4{margin:8px 0 0;font-size:var(--fs-sm)}.fs-detail-meta{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0}.fs-detail-meta dt{color:var(--muted);font-size:var(--fs-xs);font-weight:700;text-transform:uppercase;letter-spacing:.04em}.fs-detail-meta dd{margin:2px 0 0;font-weight:650}.fs-detail-list{margin:0 0 16px;padding-left:1.1rem;display:grid;gap:6px}.fs-quick-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:8px}.fs-quick{display:grid;gap:4px;padding:12px;border:1px solid var(--line);border-radius:12px;text-decoration:none;color:var(--navy);background:#f8fafc;min-height:88px}.fs-quick:hover{border-color:#93c5fd;background:#eff6ff}.fs-quick strong{font-size:var(--fs-sm)}.fs-quick span{color:var(--muted);font-size:var(--fs-xs)}.fs-quick .nav-ico{width:20px;height:20px;color:var(--accent)}@media (max-width: 1100px){.faculty-structure-toolbar{grid-template-columns:1fr 1fr}.faculty-structure-split{grid-template-columns:1fr}}@media (max-width: 640px){.faculty-structure-toolbar,.fs-quick-actions,.fs-detail-meta{grid-template-columns:1fr}}.tree-btn{background:transparent;border:0;color:var(--navy);font:inherit;text-align:left;min-height:44px;padding:4px 0;cursor:pointer}.hierarchy-tree{margin:0;padding-left:1.2rem}.content-filters{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.preview-panel{margin:12px 0}table caption{text-align:left;font-weight:650;margin-bottom:8px}@media (max-width: 1100px){.studio-tools{margin-left:0}.meta-grid{grid-template-columns:1fr 1fr}.studio-head h2{white-space:normal}.studio-toolbar{justify-content:flex-start}}@media (max-width: 1023px){.studio-grid,.studio-board,.structure-grid,.classroom,.classroom.content-split{grid-template-columns:1fr}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.login-page{width:min(1120px,calc(100% - 32px));margin:20px auto 28px;display:grid;gap:20px}.login-shell{display:grid;grid-template-columns:minmax(280px,1.05fr) minmax(0,1fr);border-radius:16px;overflow:hidden;background:#fff;border:1px solid #d5deee;box-shadow:var(--shadow);min-height:min(720px,calc(100vh - 220px))}.login-brand{position:relative;overflow:hidden;color:#fff;padding:32px 28px 28px;display:flex;flex-direction:column;gap:0;background:radial-gradient(520px 280px at 18% 12%,rgba(37,99,235,.28),transparent 58%),radial-gradient(420px 260px at 92% 78%,rgba(59,130,246,.16),transparent 60%),linear-gradient(165deg,#0c2348,#102a55 48%,#0b1f44)}.login-pill{align-self:flex-start;margin:0 0 14px;background:#2563eb47;color:#bfdbfe;border:1px solid rgba(147,197,253,.35);border-radius:999px;padding:6px 12px;font-size:.72rem;font-weight:700;letter-spacing:.04em;position:relative;z-index:1}.login-brand h2{color:#fff;font-size:clamp(1.7rem,2.8vw,2.35rem);line-height:1.12;letter-spacing:-.02em;max-width:16ch;margin:0 0 12px;position:relative;z-index:1}.login-brand-copy{color:#d5deee;max-width:36ch;font-size:.98rem;margin:0 0 22px;position:relative;z-index:1}.login-features{list-style:none;margin:0;padding:0;display:grid;gap:14px;max-width:28rem;position:relative;z-index:1}.login-features li{display:grid;grid-template-columns:40px 1fr;gap:12px;align-items:start}.login-feature-ico{width:40px;height:40px;border-radius:12px;display:grid;place-items:center}.login-feature-ico .nav-ico{width:18px;height:18px}.login-feature-ico.tone-blue{background:#dbeafe;color:#2563eb}.login-feature-ico.tone-violet{background:#ede9fe;color:#7c3aed}.login-feature-ico.tone-green{background:#d1fae5;color:#059669}.login-feature-ico.tone-amber{background:#fef3c7;color:#d97706}.login-feature-ico.tone-rose{background:#ffe4e6;color:#e11d48}.login-features strong{display:block;font-size:.95rem;margin-bottom:2px}.login-features span{color:#b7c3d9;font-size:.86rem;line-height:1.35}.login-campus-wrap{position:absolute;right:-12%;bottom:-8%;width:min(58%,280px);aspect-ratio:1;pointer-events:none;z-index:0}.login-campus-ring{width:100%;height:100%;border-radius:50%;overflow:hidden;border:5px solid rgba(255,255,255,.14);box-shadow:0 18px 40px #00000059}.login-campus-img{width:100%;height:100%;object-fit:cover;display:block}.login-panel{display:grid;align-content:start;padding:28px 28px 24px;background:#fff}.login-card{width:100%;display:grid;gap:12px}.login-card .eyebrow{margin:0;color:var(--accent);font-size:.78rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.login-card h2{font-size:1.7rem;color:var(--navy-dark);margin:0}.login-card .lede{margin:0 0 4px;color:var(--muted);font-size:.92rem}.login-field{display:grid;gap:6px;font-weight:650;font-size:.9rem}.login-input-wrap{display:grid;grid-template-columns:40px 1fr auto;align-items:center;border:1px solid #cbd5e1;border-radius:8px;background:#fff;min-height:48px;overflow:hidden}.login-input-ico{display:grid;place-items:center;color:#64748b}.login-input-ico .nav-ico{width:16px;height:16px}.login-card input[type=text],.login-card input[type=password],.activate-card input[type=text],.activate-card input[type=password]{width:100%;min-width:0;min-height:46px;border:0;background:transparent;padding:0 8px 0 0;box-shadow:none}.login-eye{border:0;background:transparent;color:#64748b;width:42px;height:46px;cursor:pointer;display:grid;place-items:center}.login-eye .nav-ico{width:16px;height:16px}.login-forgot-row{display:flex;justify-content:flex-end;margin-top:-4px}.login-role-title{margin:4px 0 0;font-weight:700;font-size:.92rem;color:var(--navy-dark)}.login-roles{display:grid;grid-template-columns:1fr 1fr;gap:10px}.login-role{position:relative;display:grid;grid-template-columns:34px 1fr;gap:8px;align-items:start;text-align:left;min-height:76px;padding:10px 28px 10px 12px;border:1px solid #d5deee;border-radius:10px;background:#f8fafc;font:inherit;cursor:pointer;color:var(--navy-dark)}.login-role-copy{display:grid;gap:2px;min-width:0}.login-role strong{font-size:.82rem;line-height:1.25;font-weight:700}.login-role-user,.login-role-pass{display:block;font-size:.68rem;line-height:1.3;color:#64748b;font-weight:500;word-break:break-all}.login-role-pass{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:#475569}.login-role-ico{width:34px;height:34px;border-radius:10px;display:grid;place-items:center}.login-role-ico .nav-ico{width:16px;height:16px}.login-role.tone-blue .login-role-ico{background:#dbeafe;color:#2563eb}.login-role.tone-violet .login-role-ico{background:#ede9fe;color:#7c3aed}.login-role.tone-green .login-role-ico{background:#d1fae5;color:#059669}.login-role.tone-amber .login-role-ico{background:#ffedd5;color:#ea580c}.login-role.tone-sky .login-role-ico{background:#e0f2fe;color:#0284c7}.login-role.tone-rose .login-role-ico{background:#ffe4e6;color:#e11d48}.login-role.on{border-color:#2563eb;background:#eff6ff;box-shadow:0 0 0 1px #2563eb33}.login-role-check{position:absolute;top:8px;right:8px;width:18px;height:18px;border-radius:50%;background:#2563eb;color:#fff;display:grid;place-items:center}.login-role-check .nav-ico{width:11px;height:11px}.login-hint,.login-sso,.login-note{margin:0;color:var(--muted);font-size:.82rem}.login-row{display:flex;justify-content:space-between;align-items:center;gap:12px}.login-check{display:flex;align-items:center;gap:8px;font-weight:500}.login-check input{min-width:0;width:16px;height:16px}.login-link{background:none;border:0;color:var(--muted);font:inherit;cursor:pointer;min-height:40px;padding:0}.login-primary{min-height:44px;border:1px solid var(--accent);border-radius:8px;background:var(--accent);color:#fff;font:inherit;font-weight:600;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;text-decoration:none;padding:8px 16px}.login-primary:disabled{opacity:.55;cursor:not-allowed}.login-or{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;color:var(--muted);font-size:.82rem;margin:4px 0}.login-or:before,.login-or:after{content:"";height:1px;background:var(--line)}.login-alts{display:grid;grid-template-columns:1fr 1fr;gap:12px}.login-alt{min-height:44px;border-radius:8px;border:1px solid #c5d0e6;background:#fff;font:inherit;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;color:var(--navy)}.login-alt .nav-ico{width:16px;height:16px;color:#64748b}.login-alt:disabled{cursor:not-allowed;color:var(--muted)}@media (max-width: 900px){.login-shell{grid-template-columns:1fr;min-height:0}.login-campus-wrap{display:none}.login-brand{padding:24px 20px}.login-brand h2{max-width:none}.login-panel{padding:20px 16px 24px}.login-roles,.login-alts,.role-split{grid-template-columns:1fr}}.activate-page{width:min(1120px,calc(100% - 32px));margin:20px auto 28px;display:grid;gap:20px}.activate-shell{display:grid;grid-template-columns:minmax(280px,1.05fr) minmax(0,1fr);border-radius:16px;overflow:hidden;background:#fff;border:1px solid #d5deee;box-shadow:var(--shadow);min-height:min(640px,calc(100vh - 220px))}.activate-brand{position:relative;overflow:hidden;color:#fff;padding:32px 28px 28px;display:flex;flex-direction:column;gap:0;background:radial-gradient(520px 280px at 18% 12%,rgba(37,99,235,.28),transparent 58%),linear-gradient(165deg,#0c2348,#102a55 48%,#0b1f44)}.activate-brand-lockup{margin:0 0 18px;align-self:flex-start}.activate-pill{align-self:flex-start;margin:0 0 14px;background:#2563eb47;color:#bfdbfe;border:1px solid rgba(147,197,253,.35);border-radius:999px;padding:6px 12px;font-size:.72rem;font-weight:700;letter-spacing:.04em;position:relative;z-index:1}.activate-brand h2{color:#fff;font-size:clamp(1.7rem,2.8vw,2.35rem);line-height:1.12;letter-spacing:-.02em;max-width:16ch;margin:0 0 12px;position:relative;z-index:1}.activate-brand-copy{color:#d5deee;max-width:36ch;font-size:.98rem;margin:0 0 22px;position:relative;z-index:1}.activate-journey{list-style:none;margin:0;padding:0;display:grid;gap:12px;position:relative;z-index:1}.activate-journey-step{display:grid;grid-template-columns:36px 1fr;gap:12px;align-items:start;opacity:.55}.activate-journey-step.is-current{opacity:1}.activate-journey-step.is-done{opacity:.92}.activate-journey-mark{width:36px;height:36px;border-radius:12px;display:grid;place-items:center;background:#ffffff14;border:1px solid rgba(255,255,255,.16);color:#dbeafe;font-size:.85rem;font-weight:700}.activate-journey-step.is-current .activate-journey-mark{background:#2563eb;border-color:#2563eb;color:#fff}.activate-journey-step.is-done .activate-journey-mark{background:#059669;border-color:#059669;color:#fff}.activate-journey-mark .nav-ico{width:16px;height:16px}.activate-journey-step strong{display:block;font-size:.95rem;margin-bottom:2px}.activate-journey-step span{color:#b7c3d9;font-size:.84rem;line-height:1.35}.activate-campus-wrap{position:absolute;right:-12%;bottom:-18%;width:min(58%,280px);aspect-ratio:1;pointer-events:none;opacity:.95}.activate-campus-ring{width:100%;height:100%;border-radius:50%;overflow:hidden;border:5px solid rgba(255,255,255,.14);box-shadow:0 18px 40px #00000059}.activate-campus-img{width:100%;height:100%;object-fit:cover;display:block}.activate-panel{display:grid;place-items:center;align-content:center;padding:28px 24px;background:radial-gradient(420px 220px at 100% 0%,rgba(37,99,235,.07),transparent 55%),#f8fafc}.activate-card{width:min(420px,100%);display:grid;gap:12px;padding:8px 4px}.activate-card .eyebrow{margin:0;display:inline-flex;align-self:start;width:fit-content;padding:5px 10px;border-radius:999px;background:#dbeafe;color:#1d4ed8;font-size:.72rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.activate-card h2{font-size:1.7rem;color:var(--navy-dark);margin:0}.activate-card .lede{margin:0 0 2px;color:var(--muted);font-size:.92rem}.activate-tip{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:10px;border:1px solid #dbeafe;background:#eff6ff;color:#1e3a5f;font-size:.86rem;line-height:1.35}.activate-tip p{margin:0}.activate-tip-ico{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;background:#dbeafe;color:#2563eb;flex:none}.activate-tip-ico .nav-ico{width:14px;height:14px}.activate-rules{border:1px solid #d5deee;border-radius:10px;background:#f8fafc;padding:12px 14px}.activate-rules-title{margin:0 0 8px;font-size:.86rem;font-weight:700;color:var(--navy-dark)}.activate-rules ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}.activate-rules li{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:.86rem}.activate-rules li span{width:16px;height:16px;border-radius:50%;border:1.5px solid #94a3b8;flex:none;box-sizing:border-box}.activate-rules li.met{color:#047857;font-weight:600}.activate-rules li.met span{border-color:#059669;background:#059669;box-shadow:inset 0 0 0 3px #ecfdf5}.activate-actions{display:grid;gap:10px;margin-top:4px}.activate-actions .login-primary{width:100%;text-decoration:none}.activate-back{min-height:44px;border:1px solid #c5d0e6;border-radius:8px;background:#fff;color:var(--navy);font:inherit;font-weight:600;cursor:pointer;text-decoration:none}.activate-back:disabled{opacity:.5;cursor:not-allowed}.activate-message{margin:0}.activate-help{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.activate-help li{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;border-radius:16px;background:#fff;border:1px solid #d5deee;box-shadow:var(--shadow)}.activate-help-ico{width:36px;height:36px;border-radius:12px;display:grid;place-items:center;background:#eff6ff;color:#2563eb;flex:none}.activate-help-ico .nav-ico{width:16px;height:16px}.activate-help strong{display:block;font-size:.92rem;color:var(--navy-dark);margin-bottom:2px}.activate-help span{color:var(--muted);font-size:.84rem;line-height:1.35}@media (max-width: 900px){.activate-shell{grid-template-columns:1fr;min-height:0}.activate-campus-wrap{display:none}.activate-brand{padding:24px 20px}.activate-brand h2{max-width:none}.activate-panel{padding:20px 16px 24px}.activate-help{grid-template-columns:1fr}}.inst-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-3);margin:0 0 var(--space-4);padding:0;list-style:none}.inst-kpis li{display:flex;gap:var(--space-3);align-items:flex-start;padding:var(--space-4) var(--space-5);border-radius:var(--radius-lg);background:var(--card);border:1px solid var(--line-strong);box-shadow:var(--shadow)}.inst-kpis b{display:block;font-size:1.55rem;color:var(--navy-dark);line-height:1.1;letter-spacing:-.03em}.inst-kpis span{color:var(--muted);font-size:var(--fs-sm);font-weight:550}.inst-kpis small{display:block;margin-top:4px;font-size:var(--fs-xs)}.inst-kpis small.up{color:#059669}.inst-kpis small.down{color:#ea580c}.kpi-ico{display:grid;place-items:center;width:36px;height:36px;border-radius:12px;flex:none}.kpi-ico .nav-ico{width:18px;height:18px}.inst-kpis li:nth-child(1) .kpi-ico{background:#dbeafe;color:#2563eb}.inst-kpis li:nth-child(2) .kpi-ico{background:#d1fae5;color:#059669}.inst-kpis li:nth-child(3) .kpi-ico{background:#ffedd5;color:#ea580c}.inst-kpis li:nth-child(4) .kpi-ico{background:#ede9fe;color:#7c3aed}.mgmt-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:flex-end}.people-kpis{grid-template-columns:repeat(5,minmax(0,1fr))}.academic-assign-filters{flex-wrap:wrap}.academic-assign-filters input{min-width:220px;flex:1 1 220px}.academic-due-unavailable,.academic-sub-note{color:#64748b}.academic-submission-panel table{width:100%;margin-top:8px}.academic-assign-kpis li:nth-child(4) .kpi-ico{background:#fee2e2;color:#b91c1c}.academic-assign-kpis li:nth-child(5) .kpi-ico{background:#e0f2fe;color:#0369a1}.academic-assign-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.hierarchy-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 16px;padding:0;list-style:none}.hierarchy-steps li{border:1px solid #d7e0ef;border-radius:10px;background:#f8fafc;padding:10px 12px;display:grid;gap:4px}.hierarchy-steps li strong{font-size:.92rem;color:#1e293b}.hierarchy-steps li span{font-size:.8rem;color:#64748b}.hierarchy-steps li.current{border-color:#2563eb;background:#eff6ff}.hierarchy-steps li.done{border-color:#86efac;background:#f0fdf4}@media (max-width: 900px){.hierarchy-steps{grid-template-columns:1fr 1fr}}.academic-assign-tabs{flex-wrap:wrap}.academic-code{display:block;color:#64748b;margin-top:2px}.assign-type{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;font-size:.75rem;font-weight:600}.assign-type.assignment{background:#dbeafe;color:#1d4ed8}.assign-type.quiz{background:#ede9fe;color:#6d28d9}.assign-type.case{background:#ccfbf1;color:#0f766e}.assign-type.practical{background:#ffedd5;color:#c2410c}.assign-type.discussion{background:#dcfce7;color:#15803d}.assign-faculty{display:inline-flex;align-items:center;gap:8px}.assign-avatar{width:28px;height:28px;border-radius:999px;background:#dbeafe;color:#1d4ed8;display:inline-flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700}.assign-progress{display:grid;gap:4px;min-width:72px}.assign-bar{display:block;height:6px;border-radius:999px;background:#e2e8f0;overflow:hidden}.assign-bar i{display:block;height:100%;background:#2563eb}.academic-create-drawer .action-drawer-panel,.premium-create-modal .action-drawer-panel,.pd-drawer.academic-create-drawer .action-drawer-panel,.pd-drawer.premium-create-modal .action-drawer-panel,.curriculum-create-modal .action-drawer-panel{width:min(1288px,calc(100vw - 40px))!important;height:min(94dvh,960px)!important;max-height:min(94dvh,960px)!important;overflow:hidden!important;display:flex!important;flex-direction:column!important}.academic-create-drawer .action-drawer-panel>form.academic-create-form,.academic-create-drawer .action-drawer-panel>form.premium-create-form,.academic-create-drawer .action-drawer-panel>form.curriculum-create-form,.premium-create-modal .action-drawer-panel>form,.curriculum-create-modal .action-drawer-panel>form,.pd-drawer.academic-create-drawer .action-drawer-panel>form{flex:1 1 auto;min-height:0}.academic-create-form,.premium-create-form{display:flex!important;flex-direction:column!important;height:auto;max-height:none;min-height:0;min-width:0;width:100%;margin:0;overflow:hidden}.academic-create-form .academic-create-scroll{flex:1 1 auto;min-height:0;min-width:0;overflow-x:hidden;overflow-y:auto;padding:0 0 12px}.academic-create-form .academic-create-scroll>.err,.academic-create-form .academic-create-scroll>.lede{margin:8px 20px 0}.academic-create-form .assign-step-body{padding:16px 20px 8px;min-width:0}.academic-create-form .curriculum-create-fields.assign-step-body{padding:16px!important}.academic-create-form .curriculum-create-body.academic-create-scroll{padding:0 0 12px}.academic-create-form .inst-drawer-head{position:relative;z-index:1;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin:0;padding:22px 20px;border-bottom:0;color:#fff;text-shadow:0 1px 2px rgba(15,23,42,.35);background:radial-gradient(circle at 88% 20%,rgba(255,255,255,.14),transparent 42%),linear-gradient(115deg,#0f1f4d,#1d4ed8 52%,#5b21b6)}.academic-create-form .inst-drawer-head h3,.academic-create-form .inst-drawer-copy h3{margin:0 0 6px;color:#fff!important;font-size:1.35rem;font-weight:800;letter-spacing:-.01em;line-height:1.25}.academic-create-form .inst-drawer-copy .muted,.academic-create-form .inst-drawer-head>.muted,.academic-create-form .inst-drawer-copy .prog-drawer-sub{margin:0;color:#fff!important;opacity:.92;font-size:.9rem;font-weight:500;line-height:1.4}.academic-create-form .inst-drawer-head .icon-btn,.academic-create-form .inst-drawer-head>.btn.ghost.icon-btn{border-radius:999px!important;border:1px solid rgba(255,255,255,.35)!important;background:#ffffff29!important;color:#fff!important}.academic-create-form .inst-drawer-head .icon-btn:hover{background:#ffffff47!important}.academic-create-form .assign-create-footer,.premium-create-form .assign-create-footer,.curriculum-create-form .assign-create-footer,.academic-create-form .curriculum-create-footer,.premium-create-form .curriculum-create-footer,.curriculum-create-form .curriculum-create-footer{position:relative;z-index:5;flex:0 0 auto!important;display:flex!important;flex-wrap:wrap;gap:8px;justify-content:flex-end;align-items:center;visibility:visible!important;opacity:1!important;margin:0;padding:12px 20px 16px;background:#fff!important;border-top:1px solid #e2e8f0;box-shadow:0 -6px 16px #0f172a0f;min-height:64px}.academic-create-form .assign-create-footer .btn,.premium-create-form .assign-create-footer .btn,.curriculum-create-form .assign-create-footer .btn,.academic-create-form .curriculum-create-footer .btn,.premium-create-form .curriculum-create-footer .btn,.curriculum-create-form .curriculum-create-footer .btn{display:inline-flex!important;align-items:center;gap:8px;min-height:42px;min-width:auto;padding:8px 16px;font-size:.9rem;font-weight:600;border-radius:10px;background:#2563eb;color:#fff!important;border:1px solid #2563eb;cursor:pointer;visibility:visible!important;opacity:1!important}.academic-create-form .assign-create-footer .btn.ghost,.premium-create-form .assign-create-footer .btn.ghost,.curriculum-create-form .assign-create-footer .btn.ghost,.academic-create-form .curriculum-create-footer .btn.ghost,.premium-create-form .curriculum-create-footer .btn.ghost,.curriculum-create-form .curriculum-create-footer .btn.ghost{background:#fff!important;color:#0f172a!important;border:1px solid #cbd5e1!important}.academic-create-form .assign-create-footer .btn:disabled,.premium-create-form .assign-create-footer .btn:disabled,.curriculum-create-form .assign-create-footer .btn:disabled{opacity:.55!important;cursor:not-allowed}.assign-stepper{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0 0 16px;padding:0}.assign-stepper li{display:grid;gap:4px;justify-items:center;text-align:center;color:#64748b;font-size:.72rem;min-width:0}.assign-stepper li span{width:28px;height:28px;border-radius:999px;border:1px solid #cbd5e1;display:inline-flex;align-items:center;justify-content:center;font-weight:700}.assign-stepper li.on{color:#1d4ed8}.assign-stepper li.on span{background:#2563eb;border-color:#2563eb;color:#fff}.assign-stepper li.done span{background:#dbeafe;border-color:#93c5fd;color:#1d4ed8}.assign-step-body{display:grid;gap:14px;min-width:0}.assign-step-body>label{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 4px;font-size:.88rem;font-weight:700;color:#1e293b;letter-spacing:.01em;width:100%;min-width:0}.assign-step-body>label>input:not([type=radio]):not([type=checkbox]),.assign-step-body>label>select,.assign-step-body>label>textarea,.assign-step-body>label>.assign-counter,.assign-step-body>label>small,.assign-step-body>label>.curriculum-field-shell,.assign-step-body>label>.premium-field-hint,.assign-step-body>label>.premium-field-error,.assign-step-body>input:not([type=radio]):not([type=checkbox]),.assign-step-body>select,.assign-step-body>textarea,.curriculum-create-fields>input:not([type=radio]):not([type=checkbox]),.curriculum-create-fields>select,.curriculum-create-fields>textarea{flex:1 1 100%;width:100%!important;max-width:100%;min-width:0!important;box-sizing:border-box}.assign-step-body input:not([type=radio]):not([type=checkbox]),.assign-step-body select,.assign-step-body textarea{font:inherit;font-weight:500;padding:10px 12px;border:1px solid #cbd5e1;border-radius:10px;background:#fff;color:#0f172a}.assign-step-body input:not([type=radio]):not([type=checkbox]):focus,.assign-step-body select:focus,.assign-step-body textarea:focus{outline:2px solid #93c5fd;outline-offset:1px;border-color:#2563eb}.assign-step-body input[type=radio],.assign-step-body input[type=checkbox]{width:1.05rem;height:1.05rem;min-width:1.05rem;max-width:1.05rem;margin:0;padding:0;border:0;border-radius:0;background:transparent;accent-color:#2563eb;flex:none}.assign-fieldset,.assign-step-body>fieldset,.curriculum-create-fields>fieldset{border:1px solid #e2e8f0;border-radius:12px;padding:12px;margin:0;min-width:0;width:100%;box-sizing:border-box;background:#fff}.assign-fieldset legend,.assign-step-body>fieldset>legend,.curriculum-create-fields>fieldset>legend{padding:0 6px;font-weight:700;color:#0f172a}.assign-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-width:0;width:100%}.assign-grid>label{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 4px;min-width:0;width:100%}.assign-grid>label>input:not([type=radio]):not([type=checkbox]),.assign-grid>label>select,.assign-grid>label>textarea{flex:1 1 100%;width:100%!important;max-width:100%;min-width:0!important;box-sizing:border-box}.assign-toggle{display:flex!important;align-items:center;gap:10px;font-weight:600}.assign-upload{border:1px dashed #93c5fd;border-radius:12px;padding:18px;text-align:center;background:#f8fbff;color:#334155}.assign-upload .nav-ico{width:28px;height:28px;color:#2563eb}.assign-counter{color:#64748b;font-weight:500;text-align:right}.assign-type-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;min-width:0}.assign-type-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.assign-type-grid label{display:flex;gap:8px;align-items:center;padding:10px 12px;border:1px solid #e2e8f0;border-radius:10px;min-width:0;font-weight:600;background:#fff;box-sizing:border-box;cursor:pointer}.assign-type-grid label>span{min-width:0;overflow:visible;white-space:normal;overflow-wrap:break-word;line-height:1.35;color:inherit}.assign-type-grid label input{flex:none;margin:0}.assign-type-grid label.on{border-color:#2563eb;background:#eff6ff;color:#1d4ed8}.assign-create-footer{position:sticky;bottom:0;background:#fff;padding-top:12px;margin-top:12px;border-top:1px solid #e2e8f0}@media (max-width: 768px){.assign-grid,.assign-type-grid,.assign-stepper{grid-template-columns:1fr}.action-drawer{padding:12px}.academic-create-drawer .action-drawer-panel,.inst-drawer .action-drawer-panel,.action-drawer-panel{width:min(100%,calc(100vw - 24px));max-height:min(92dvh,880px);border-radius:14px}}.curriculum-create-modal .action-drawer-panel,.premium-create-modal .action-drawer-panel,.inst-drawer.academic-create-drawer .action-drawer-panel,.inst-drawer.premium-create-modal .action-drawer-panel,.inst-drawer.curriculum-create-modal .action-drawer-panel,.pd-drawer.academic-create-drawer .action-drawer-panel,.pd-drawer.premium-create-modal .action-drawer-panel{width:min(1372px,calc(100vw - 40px))!important;max-width:calc(100vw - 40px)!important;height:min(94dvh,980px)!important;max-height:min(94dvh,980px)!important;overflow:hidden!important;display:flex!important;flex-direction:column!important}.action-drawer-panel input:not([type=radio]):not([type=checkbox]):not([type=file]):not([type=range]):not([type=color]),.action-drawer-panel select,.action-drawer-panel textarea{width:100%!important;max-width:100%!important;min-width:0;box-sizing:border-box;font-size:1rem!important;line-height:1.45!important;font-weight:500;color:#0f172a}.action-drawer-panel input:not([type=radio]):not([type=checkbox]):not([type=file]):not([type=number]):not([type=date]):not([type=time]):not([type=datetime-local]),.action-drawer-panel textarea,.action-drawer-panel select{min-width:min(100%,40ch)!important}.action-drawer-panel .curriculum-field-shell{width:100%;min-width:min(100%,40ch)}.action-drawer-panel .curriculum-field-shell input,.action-drawer-panel .curriculum-field-shell textarea{min-width:0!important;width:100%!important;font-size:1rem!important}.action-drawer-panel label{font-size:.92rem;font-weight:700;color:#1e293b}.action-drawer-panel .inst-form .pair,.action-drawer-panel .assign-grid,.premium-create-modal .inst-form .pair,.curriculum-create-modal .inst-form .pair,.academic-create-drawer .inst-form .pair{grid-template-columns:repeat(auto-fit,minmax(min(100%,40ch),1fr))}.action-drawer-panel .inst-form label,.action-drawer-panel .inst-form .pair>label,.action-drawer-panel .assign-step-body>label,.action-drawer-panel .assign-grid>label,.action-drawer-panel .curriculum-create-fields>label{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 4px;width:100%;min-width:0}.action-drawer-panel .inst-form label>input:not([type=radio]):not([type=checkbox]),.action-drawer-panel .inst-form label>select,.action-drawer-panel .inst-form label>textarea,.action-drawer-panel .inst-form .pair>label>input:not([type=radio]):not([type=checkbox]),.action-drawer-panel .inst-form .pair>label>select,.action-drawer-panel .inst-form .pair>label>textarea,.action-drawer-panel .assign-step-body>label>input:not([type=radio]):not([type=checkbox]),.action-drawer-panel .assign-step-body>label>select,.action-drawer-panel .assign-step-body>label>textarea,.action-drawer-panel .assign-grid>label>input:not([type=radio]):not([type=checkbox]),.action-drawer-panel .assign-grid>label>select,.action-drawer-panel .assign-grid>label>textarea,.action-drawer-panel .curriculum-create-fields>label>input:not([type=radio]):not([type=checkbox]),.action-drawer-panel .curriculum-create-fields>label>select,.action-drawer-panel .curriculum-create-fields>label>textarea{flex:1 1 100%;width:100%!important;max-width:100%;min-width:0!important;box-sizing:border-box}.curriculum-create-fields>.inst-form,.curriculum-create-fields>.inst-form.prog-form,.curriculum-create-fields>.inst-form.people-assign{padding:0!important;margin:0;background:transparent;border:0;box-shadow:none;overflow:visible}.curriculum-create-fields>.inst-form label,.curriculum-create-fields>.inst-form .pair>label{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 4px;width:100%;min-width:0}.curriculum-create-fields>.inst-form label>input:not([type=radio]):not([type=checkbox]),.curriculum-create-fields>.inst-form label>select,.curriculum-create-fields>.inst-form label>textarea,.curriculum-create-fields>.inst-form .pair>label>input:not([type=radio]):not([type=checkbox]),.curriculum-create-fields>.inst-form .pair>label>select,.curriculum-create-fields>.inst-form .pair>label>textarea,.curriculum-create-fields .people-field>input:not([type=radio]):not([type=checkbox]),.curriculum-create-fields .people-field>select,.curriculum-create-fields .people-field>textarea{flex:1 1 100%;width:100%!important;max-width:100%;min-width:0!important;box-sizing:border-box}.curriculum-create-fields .people-field{display:grid;gap:6px;width:100%;min-width:0}.action-drawer-panel .assign-type-grid>label,.action-drawer-panel .role-picks>label,.curriculum-create-fields .assign-type-grid>label,.curriculum-create-fields .role-picks>label{display:flex!important;flex-direction:row!important;align-items:center!important;gap:8px;width:auto;min-width:0}.premium-create-layout-solo{display:grid;grid-template-columns:1fr;gap:16px;align-items:start}.action-drawer-panel>.inst-drawer-head:first-child,.action-drawer .console-form>.inst-drawer-head:first-child{border-radius:16px 16px 0 0}.action-drawer.inst-drawer:not(.academic-create-drawer) .inst-drawer-head,.action-drawer:not(.academic-create-drawer):not(.curriculum-create-modal):not(.premium-create-modal)>.action-drawer-panel>.inst-drawer-head{background:radial-gradient(circle at 88% 20%,rgba(255,255,255,.12),transparent 42%),linear-gradient(115deg,#0f1f4d,#1d4ed8 55%,#4f46e5);color:#fff;border-bottom:0;padding:18px 20px;text-shadow:0 1px 2px rgba(15,23,42,.3)}.action-drawer.inst-drawer:not(.academic-create-drawer) .inst-drawer-head h3,.action-drawer.inst-drawer:not(.academic-create-drawer) .inst-drawer-copy h3,.action-drawer:not(.academic-create-drawer):not(.curriculum-create-modal):not(.premium-create-modal)>.action-drawer-panel>.inst-drawer-head h3{color:#fff!important;font-weight:800;font-size:1.2rem}.action-drawer.inst-drawer:not(.academic-create-drawer) .inst-drawer-copy .muted,.action-drawer.inst-drawer:not(.academic-create-drawer) .inst-drawer-head>.muted{color:#ffffffeb!important}.action-drawer.inst-drawer:not(.academic-create-drawer) .inst-drawer-head .icon-btn{border-radius:999px!important;border-color:#ffffff59!important;background:#ffffff29!important;color:#fff!important}.curriculum-create-form{display:flex!important;flex-direction:column!important;height:auto;max-height:none;min-height:0;overflow:hidden}.curriculum-create-hero,.premium-create-hero{flex:0 0 auto!important}.curriculum-create-body,.premium-create-body,.academic-create-form .curriculum-create-body,.academic-create-form .premium-create-body,.academic-create-form>.academic-create-scroll,.premium-create-form>.academic-create-scroll{flex:1 1 auto!important;min-height:0!important;overflow-x:hidden!important;overflow-y:auto!important}.curriculum-create-hero{position:relative;flex:none;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:22px 56px 22px 22px;color:#fff;background:radial-gradient(circle at 88% 20%,rgba(255,255,255,.14),transparent 42%),linear-gradient(115deg,#0f1f4d,#1d4ed8 52%,#5b21b6);overflow:hidden;text-shadow:0 1px 2px rgba(15,23,42,.35)}.curriculum-create-hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:28px 28px;opacity:.45;pointer-events:none}.curriculum-create-hero-main{position:relative;z-index:1;display:flex;gap:14px;align-items:flex-start;min-width:0}.curriculum-create-hero-ico{flex:none;width:48px;height:48px;border-radius:999px;display:grid;place-items:center;background:#ffffff2e;border:1px solid rgba(255,255,255,.28);color:#fff}.curriculum-create-hero-ico .nav-ico{width:22px;height:22px}.curriculum-create-hero h3{margin:0 0 6px;font-size:1.35rem;font-weight:800;color:#fff;letter-spacing:-.01em}.curriculum-create-order{margin:0 0 4px;font-size:.84rem;font-weight:600;color:#fff;opacity:.95}.curriculum-create-sub{margin:0;font-size:.92rem;font-weight:500;color:#fff;opacity:.92;max-width:48ch}.curriculum-create-hero-art{position:relative;z-index:1;display:flex;align-items:flex-end;gap:8px;padding-right:8px;color:#fff;opacity:.95}.curriculum-create-art-cal,.curriculum-create-art-book{display:grid;place-items:center;border-radius:14px;background:#ffffff29;border:1px solid rgba(255,255,255,.28);box-shadow:0 10px 24px #0f172a33}.curriculum-create-art-cal{width:58px;height:58px}.curriculum-create-art-book{width:46px;height:46px;margin-bottom:8px}.curriculum-create-art-cal .nav-ico,.curriculum-create-art-book .nav-ico{width:24px;height:24px}.curriculum-create-close{position:absolute;top:14px;right:14px;z-index:2;width:36px;height:36px;border-radius:999px;border:1px solid rgba(255,255,255,.35);background:#ffffff29;color:#fff;font-size:1.25rem;line-height:1;cursor:pointer}.curriculum-create-close:hover{background:#ffffff47}.curriculum-create-body{flex:1 1 auto;min-height:0;overflow:auto;padding:18px 20px 8px!important;background:#f8fafc}.curriculum-create-layout{display:grid;grid-template-columns:minmax(40ch,1.9fr) minmax(200px,.7fr);gap:18px;align-items:start}.curriculum-create-fields{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:16px!important;box-shadow:0 1px 2px #0f172a0a}.curriculum-create-fields>label{font-size:.88rem;font-weight:700;color:#1e293b;letter-spacing:.01em}.curriculum-create-fields>label>input:not([type=radio]):not([type=checkbox]),.curriculum-create-fields>label>select,.curriculum-create-fields>label>textarea{font-weight:500;color:#0f172a}.curriculum-create-fields>label>.curriculum-field-shell,.curriculum-create-fields>label>.curriculum-type-cards,.curriculum-create-fields>.curriculum-type-fieldset{flex:1 1 100%;width:100%}.curriculum-field-shell{display:flex;align-items:center;gap:8px;width:100%;border:1px solid #cbd5e1;border-radius:10px;background:#fff;padding:0 10px;box-sizing:border-box}.curriculum-field-shell input,.curriculum-field-shell textarea{border:0!important;box-shadow:none!important;outline:none!important;padding-left:0!important;background:transparent!important}.curriculum-field-area{align-items:flex-start;padding-top:10px;padding-bottom:10px}.curriculum-field-area textarea{min-height:96px;resize:vertical}.curriculum-field-ico{flex:none;color:#2563eb;display:inline-flex;margin-top:2px}.curriculum-field-ico .nav-ico{width:18px;height:18px}.curriculum-type-fieldset{border:0;margin:0;padding:0;min-width:0}.curriculum-type-fieldset legend{margin:0 0 8px;font-size:.85rem;font-weight:700;color:#334155}.curriculum-type-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;width:100%;min-width:0}.curriculum-type-cards-3{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.curriculum-type-cards>label{display:flex!important;flex-wrap:nowrap;align-items:flex-start;gap:10px;margin:0;padding:12px 14px;border:1px solid #e2e8f0;border-radius:12px;background:#fff;cursor:pointer;min-width:0;max-width:100%;overflow:visible;box-sizing:border-box;color:#0f172a}.curriculum-type-cards>label.on{border-color:#2563eb;background:#eff6ff;box-shadow:0 0 0 1px #93c5fd inset}.curriculum-type-cards>label>input[type=radio]{margin:4px 0 0!important;width:1.05rem!important;height:1.05rem!important;min-width:0!important;max-width:1.05rem!important;padding:0!important;border:0!important;background:transparent!important;flex:0 0 1.05rem!important;-webkit-appearance:auto;-moz-appearance:auto;appearance:auto;accent-color:#2563eb}.curriculum-type-ico{flex:0 0 auto;width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:#dbeafe;color:#1d4ed8}.curriculum-type-ico .nav-ico{width:18px;height:18px}.curriculum-type-copy{flex:1 1 auto;display:grid;gap:2px;min-width:0;overflow:visible}.curriculum-type-copy strong,.curriculum-type-copy small{display:block;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;word-break:normal;overflow-wrap:break-word}.curriculum-type-copy strong{color:#0f172a;font-size:.95rem;font-weight:700;line-height:1.3}.curriculum-type-copy small{color:#334155;font-size:.82rem;line-height:1.4;font-weight:550}.curriculum-create-guide{display:grid;gap:12px;min-width:0}.curriculum-guide-card{background:#eff6ff;border:1px solid #bfdbfe;border-radius:14px;padding:14px}.curriculum-guide-card h4{display:inline-flex;align-items:center;gap:8px;margin:0 0 12px;color:#1e3a8a;font-size:.95rem}.curriculum-guide-card h4 .nav-ico{width:16px;height:16px;color:#2563eb}.curriculum-guide-card ol{list-style:none;margin:0;padding:0;display:grid;gap:8px}.curriculum-guide-card li{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;background:#ffffffb3;color:#64748b;font-size:.88rem;font-weight:600}.curriculum-guide-card li span{width:26px;height:26px;border-radius:999px;display:inline-grid;place-items:center;background:#e2e8f0;color:#475569;font-size:.78rem;flex:none}.curriculum-guide-card li.on{background:#2563eb;color:#fff}.curriculum-guide-card li.on span{background:#fff3;color:#fff}.curriculum-guide-note{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:12px;background:#ecfdf5;border:1px solid #a7f3d0;color:#065f46;font-size:.84rem}.curriculum-guide-note .nav-ico{width:16px;height:16px;flex:none;margin-top:2px;color:#059669}.curriculum-guide-note p{margin:0;line-height:1.4}.curriculum-create-footer{background:#fff!important}.curriculum-create-footer .btn{display:inline-flex;align-items:center;gap:8px}.curriculum-create-footer .btn .nav-ico{width:16px;height:16px}@media (max-width: 1100px){.curriculum-create-layout{grid-template-columns:1fr}.curriculum-create-hero-art{display:none}.curriculum-type-cards,.curriculum-type-cards-3,.curriculum-create-modal .curriculum-type-cards,.curriculum-create-modal .curriculum-type-cards-3{grid-template-columns:1fr}}.people-kpis-6{grid-template-columns:repeat(6,minmax(0,1fr))}.people-kpis li:nth-child(3) .kpi-ico{background:#ffedd5;color:#c2410c}.people-kpis li:nth-child(4) .kpi-ico{background:#ede9fe;color:#7c3aed}.people-kpis li:nth-child(5) .kpi-ico{background:#dbeafe;color:#1d4ed8}.people-kpis li:nth-child(6) .kpi-ico{background:#fce7f3;color:#db2777}.people-filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:12px}.people-filters input{flex:1 1 220px;min-height:42px}.people-filters select{min-width:140px;min-height:42px}.people-filters .people-clear{color:#2563eb}.people-filters .people-add{margin-left:auto}.people-more-note{margin:-4px 0 12px;color:var(--muted);font-size:.85rem}.people-user{display:flex;align-items:center;gap:10px;min-width:0}.people-user span{display:grid;gap:2px;min-width:0}.people-user strong{color:var(--navy-dark)}.people-user small{color:var(--muted);font-size:.78rem;overflow:hidden;text-overflow:ellipsis}.people-roles{display:flex;flex-wrap:wrap;gap:6px}.people-role{display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;font-size:.75rem;font-weight:650;background:#e2e8f0;color:#334155}.people-role.student{background:#dbeafe;color:#1d4ed8}.people-role.faculty{background:#ede9fe;color:#6d28d9}.people-role.pharmacist{background:#d1fae5;color:#047857}.people-role.admin{background:#ffedd5;color:#c2410c}.people-role.usa{background:#fee2e2;color:#b91c1c}.people-kpis .kpi-note{color:#64748b;font-weight:600}.people-kpis .kpi-note.warn{color:#d97706}.people-tab-badge{display:inline-grid;place-items:center;min-width:18px;height:18px;margin-left:6px;padding:0 5px;border-radius:999px;background:#ef4444;color:#fff;font-size:.68rem;font-weight:700;line-height:1;vertical-align:middle}.people-req{color:#dc2626;font-style:normal;font-weight:700}.people-field-hint{color:#64748b;font-size:.75rem}.people-invite-notice{margin:12px 0 0;padding:10px 12px;border-radius:8px;background:#fef2f2;border:1px solid #fecaca;color:#b91c1c;font-size:.85rem;line-height:1.35}.people-phone{display:grid;grid-template-columns:88px minmax(0,1fr);gap:8px}.people-phone select,.people-phone input{min-height:42px;width:100%;margin:0}.people-verify-callout{display:grid;gap:4px;padding:12px 14px;border:1px solid #bfdbfe;border-radius:12px;background:#eff6ff;color:#1e3a8a}.people-verify-callout strong{font-size:.88rem}.people-verify-callout p{margin:0;font-size:.82rem;color:#1d4ed8;line-height:1.4}.people-tabs.people-tabs button,.people-tabs.map-tabs button{display:inline-flex;align-items:center}.people-verify{display:inline-flex;align-items:center;gap:6px;font-weight:650;font-size:.85rem}.people-verify.yes{color:#059669}.people-verify.yes:before{content:"✓"}.people-verify.no{color:#dc2626}.people-verify.no:before{content:"✕"}.people-check-row{display:flex;gap:10px;align-items:flex-start;font-size:.88rem;color:#334155}.people-check-row input{margin-top:3px}.people-details{display:grid;gap:16px}.people-details-head{display:flex;justify-content:space-between;gap:12px;align-items:center}.people-role-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}.people-role-list li{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:10px}.people-details-actions{justify-content:flex-end}.btn.danger-outline{border-color:#fecaca;color:#b91c1c;background:#fff}.btn.danger-outline:hover{background:#fef2f2}.people-status{display:inline-flex;align-items:center;gap:6px;font-weight:650;color:#64748b}.people-status i{width:8px;height:8px;border-radius:99px;background:#94a3b8}.people-status.active{color:#059669}.people-status.active i{background:#22c55e}.people-status.pending{color:#d97706}.people-status.pending i{background:#f59e0b}.people-status.inactive{color:#dc2626}.people-status.inactive i{background:#ef4444}.people-check{width:36px}.people-counter{color:var(--muted);font-size:.75rem;justify-self:end}.people-assign textarea{width:100%;min-height:84px;resize:vertical;border:1px solid var(--line);border-radius:10px;padding:10px 12px;font:inherit}.people-assign{gap:16px}.people-assign .people-step-pane{display:grid;gap:16px;align-content:start}.people-stepper{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 0 4px;padding:0;list-style:none}.people-stepper li{display:grid;justify-items:center;gap:6px;text-align:center;font-size:.72rem;color:#94a3b8;position:relative}.people-stepper li:not(:last-child):after{content:"";position:absolute;top:11px;left:calc(50% + 14px);width:calc(100% - 28px);height:2px;background:#e2e8f0}.people-stepper .on{color:#2563eb;font-weight:700}.people-stepper .done{color:#0f172a}.people-stepper b{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#e2e8f0;color:#64748b;font-size:.75rem}.people-stepper .on b{background:#2563eb;color:#fff}.people-stepper .done b{background:#bfdbfe;color:#1d4ed8}.people-field{display:grid;gap:6px}.people-label{color:#64748b;font-size:.78rem;font-weight:650}.people-assign .people-field input,.people-assign .people-field select{width:100%;min-height:42px;margin:0}.people-assign .people-selected{display:grid;gap:12px;padding:14px;border:1px solid #dbe3f0;border-radius:14px;background:#f8fafc}.people-selected-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.people-assign .people-verified{flex:none;padding:3px 8px;border-radius:999px;background:#d1fae5;color:#047857;font-size:.72rem;font-weight:700}.people-assign .people-selected dl{display:grid;gap:8px;margin:0}.people-assign .people-selected dl>div{display:grid;grid-template-columns:110px minmax(0,1fr);gap:8px;align-items:baseline}.people-assign .people-selected dt{color:var(--muted);font-size:.75rem}.people-assign .people-selected dd{margin:0;font-weight:650;color:#0f172a;word-break:break-word}.people-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem;font-weight:600}.people-selected-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.people-link{justify-self:start;min-height:auto!important;padding:0!important;border:0!important;background:transparent!important;color:#2563eb!important;font-weight:650;box-shadow:none!important}.people-suggest{list-style:none;margin:0;padding:0;display:grid;gap:4px;max-height:220px;overflow:auto}.people-suggest button{width:100%;display:flex;gap:10px;align-items:center;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:#fff;text-align:left;cursor:pointer}.people-suggest button:hover{background:#f8fafc}.people-invite{display:grid;gap:10px}.people-invite p{margin:0;color:var(--muted);font-size:.85rem}.people-scope{display:grid;gap:8px;margin:0;padding:0;border:0;background:transparent}.people-scope-options{display:flex;flex-direction:column;align-items:stretch;gap:10px}.console-form .people-scope-option,.people-scope-option{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start;gap:10px;width:100%;margin:0;padding:0;border:0;border-radius:0;background:transparent;font-weight:600;color:#0f172a;cursor:pointer;text-align:left}.people-scope-option:has(input:checked){color:#1d4ed8}.people-scope-option input[type=radio]{width:16px;height:16px;margin:0;flex:none;accent-color:#2563eb}.people-scope-option span{display:inline-block;line-height:1.25;text-align:left}.people-review{margin:0}@media (max-width: 1100px){.people-kpis,.people-kpis-6{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 900px){.mgmt-head{flex-direction:column}.mgmt-actions{justify-content:flex-start}.people-filters .people-add{margin-left:0}}.inst-tools{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:12px}.inst-tools input{flex:1 1 240px}.inst-tools select{min-width:140px}.inst-add{background:#2563eb;color:#fff;border-color:#2563eb}.inst-add:hover{background:#1d4ed8}.inst-tools .btn.ghost{display:inline-flex;align-items:center;gap:6px}.inst-tools .nav-ico{width:16px;height:16px}.inst-table-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px}.inst-table-head h3{margin:0}.inst-table-head label{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:.85rem}.inst-table-head select{width:auto}.inst-board table{width:100%;border-collapse:collapse}.inst-actions{display:flex;align-items:center;gap:4px;white-space:nowrap}.ra-row-actions{flex-wrap:wrap;justify-content:flex-end;max-width:420px;white-space:normal}.ra-row-actions .btn{min-height:32px;padding:4px 8px;font-size:.78rem}.inst-pager{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.inst-pager label{margin-left:auto;display:flex;align-items:center;gap:8px;color:var(--muted);font-size:.85rem}.inst-pager label select{width:auto}.inst-pager .page-on{background:#2563eb;color:#fff;border-color:#2563eb;min-width:36px}.row-menu{position:relative;display:inline-flex}.row-menu-pop{position:absolute;right:0;top:100%;z-index:5;display:grid;min-width:140px;padding:6px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow)}.row-menu-pop button{background:none;border:0;text-align:left;padding:8px 10px;border-radius:8px;cursor:pointer}.row-menu-pop button:hover{background:#f1f5f9}.act-dot{display:inline-block;width:8px;height:8px;margin-right:8px;border-radius:99px;background:#94a3b8}.act-dot.ok{background:#22c55e}.act-dot.info{background:#3b82f6}.act-dot.warn{background:#f59e0b}.inst-form{display:grid;gap:12px}.inst-form section{display:grid;gap:10px;padding:12px;border:1px solid var(--line);border-radius:14px;background:#fff}.inst-form h4{display:flex;align-items:center;gap:8px;margin:0;font-size:.95rem}.inst-form h4 .nav-ico{width:16px;height:16px}.inst-form .pair{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,40ch),1fr));gap:10px}.inst-drawer .action-drawer-panel{width:min(784px,calc(100vw - 40px))!important;max-height:min(92dvh,920px)!important;background:#fff;display:flex;flex-direction:column;overflow:hidden;overflow-x:hidden}.inst-drawer.people-drawer .action-drawer-panel{width:min(728px,calc(100vw - 40px))!important}.inst-drawer.academic-create-drawer .action-drawer-panel,.inst-drawer.premium-create-modal .action-drawer-panel,.inst-drawer.curriculum-create-modal .action-drawer-panel,.inst-drawer.people-drawer.academic-create-drawer .action-drawer-panel,.inst-drawer.people-drawer.premium-create-modal .action-drawer-panel{width:min(1372px,calc(100vw - 40px))!important;max-width:calc(100vw - 40px)!important;height:min(94dvh,980px)!important;max-height:min(94dvh,980px)!important;overflow:hidden!important;display:flex!important;flex-direction:column!important}.inst-drawer .inst-editor{display:flex;flex-direction:column;height:100%;min-height:0;min-width:0;margin:0;background:transparent;border:0;box-shadow:none}.inst-drawer-head{display:flex;justify-content:space-between;align-items:flex-start;flex:none;gap:12px;padding:16px 20px 12px;border-bottom:1px solid #e2e8f0;background:#fff;min-width:0}.inst-drawer-head h3{margin:0;color:#0f172a;font-size:1.1rem;line-height:1.3;min-width:0}.inst-drawer-copy{flex:1;min-width:0;display:grid;gap:4px}.inst-drawer-copy h3{margin:0}.inst-drawer-copy .muted,.inst-drawer-head>.muted{margin:0;color:#64748b;font-size:.85rem;line-height:1.4}.inst-drawer-head .icon-btn,.inst-drawer-head>.btn.ghost.icon-btn{flex:none;width:36px;height:36px;min-width:36px;min-height:36px;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;border:1px solid #cbd5e1;background:#fff;color:#0f172a}.prog-drawer-sub{margin:4px 0 0;color:var(--muted);font-size:.85rem}.inst-drawer .inst-form{flex:1;min-height:0;overflow:auto;overflow-x:hidden;padding:12px 20px 16px}.inst-editor .row-actions{flex:none;justify-content:flex-end;margin:0;padding:12px 20px;background:#fff;border-top:1px solid var(--line)}.inst-editor .row-actions .btn{background:#2563eb;color:#fff;border:1px solid #2563eb;font-size:.9rem;padding:8px 16px}.inst-editor .row-actions .btn.ghost{background:#fff;color:#0f172a;border:1px solid #cbd5e1}.prog-form section{display:grid;gap:10px;margin:0 0 16px;padding:14px;border:1px solid var(--line);border-radius:12px;background:#fff}.prog-form section h4{display:inline-flex;align-items:center;gap:8px;margin:0 0 4px;font-size:.95rem}.prog-form .req{color:#dc2626}.prog-form .optional{color:var(--muted);font-weight:500}.prog-form .hint{color:var(--muted);font-size:.78rem}.prog-form .prog-counter{justify-self:end}.prog-info{display:flex;gap:8px;align-items:flex-start;margin:0;padding:10px 12px;border-radius:10px;background:#eff6ff;color:#1e3a8a;font-size:.82rem}.prog-info .nav-ico{width:16px;height:16px;flex:none;margin-top:2px}.prog-status-row{display:flex;justify-content:space-between;gap:16px;align-items:center;padding-top:8px;border-top:1px solid #e2e8f0;margin-top:4px}.prog-status-copy{min-width:0;flex:1;display:grid;gap:2px}.prog-status-row strong{display:block;font-size:.9rem}.console-form label.prog-switch,.prog-switch{position:relative;display:inline-flex;flex-direction:column;align-items:center;gap:4px;margin:0;flex:none;cursor:pointer;width:auto;min-width:0}.prog-switch input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;width:100%;height:100%;margin:0;cursor:pointer;min-width:0;padding:0;border:0;background:transparent}.prog-switch-track{display:block;width:44px;height:24px;border-radius:999px;background:#cbd5e1;position:relative;transition:background .15s ease;flex:none}.prog-switch-track:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #0f172a33;transition:transform .15s ease}.prog-switch input:checked+.prog-switch-track{background:#2563eb}.prog-switch input:checked+.prog-switch-track:after{transform:translate(20px)}.prog-switch input:focus-visible+.prog-switch-track{outline:2px solid #93c5fd;outline-offset:2px}.prog-switch input:disabled+.prog-switch-track{opacity:.55}.prog-switch em{font-style:normal;font-weight:650;font-size:.85rem;line-height:1.2;color:#0f172a}.prog-secure{display:flex;gap:10px;align-items:flex-start;margin:0 0 8px;padding:12px;border-radius:10px;background:#eff6ff;color:#1e3a8a;font-size:.82rem}.prog-secure .nav-ico{width:18px;height:18px;flex:none;margin-top:1px}.prog-secure strong{display:inline}.logo-drop{position:relative;display:grid;justify-items:center;gap:4px;padding:16px;border:1px dashed #cbd5e1;border-radius:12px;color:var(--muted);text-align:center;background:#fff}.logo-drop input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.logo-drop .nav-ico{width:18px;height:18px}.map-kpis li:nth-child(1){background:#eff6ff}.map-kpis li:nth-child(2){background:#ecfdf5}.map-kpis li:nth-child(3){background:#f5f3ff}.map-kpis li:nth-child(4){background:#fff7ed}.map-kpis li:nth-child(3) .kpi-ico{background:#ede9fe;color:#7c3aed}.map-kpis li:nth-child(4) .kpi-ico{background:#ffedd5;color:#ea580c}.map-tabs{display:flex;flex-wrap:wrap;align-items:flex-end;gap:2px;margin:0 0 16px;border-bottom:1px solid var(--line)}.map-tabs button[role=tab]{display:inline-flex;align-items:center;gap:6px;border:0;border-bottom:2px solid transparent;background:transparent;border-radius:0;min-height:42px;margin-bottom:-1px;padding:0 12px;font:inherit;font-weight:650;color:#64748b;cursor:pointer}.map-tabs button[role=tab] .nav-ico{width:16px;height:16px}.map-tabs button[aria-selected=true]{background:transparent;color:#2563eb;border-bottom-color:#2563eb}.map-add{margin-left:auto;margin-bottom:6px;position:relative}.map-filters{display:flex;flex-wrap:wrap;gap:8px;align-items:end;margin-bottom:12px}.map-filters label{display:grid;gap:4px;flex:1;min-width:150px;color:var(--muted);font-size:.75rem}.map-filters select,.map-filters input{min-width:0;width:100%}.map-search{display:flex;gap:8px;align-items:center;margin-bottom:12px}.map-search input{flex:1}.map-sub{margin:4px 0 0;color:var(--muted);font-size:.85rem}.map-stepper{display:flex;gap:8px;margin:0 0 16px;padding:0;list-style:none;width:100%;min-width:0}.map-stepper li{flex:1;font-size:.72rem;color:var(--muted);min-width:0}.map-stepper .on{color:#2563eb;font-weight:700}.map-stepper b{display:grid;place-items:center;width:22px;height:22px;margin-bottom:4px;border-radius:50%;background:#e2e8f0;color:#334155;font-size:.75rem}.map-stepper .on b{background:#2563eb;color:#fff}.role-picks{display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%;min-width:0}.role-picks label{display:flex;flex-direction:row;gap:8px;align-items:center;padding:10px 12px;border:1px solid #e2e8f0;border-radius:10px;min-width:0;font-weight:600;background:#fff;box-sizing:border-box;cursor:pointer}.role-picks label.on{border-color:#2563eb;background:#eff6ff;color:#1d4ed8}.role-picks label>span{min-width:0;line-height:1.35;overflow-wrap:break-word}.role-picks label input{flex:none;margin:0}@media (max-width: 900px){.inst-kpis,.inst-form .pair,.role-picks{grid-template-columns:1fr}}.uadmin-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:16px;align-items:start}.uadmin-hero{position:relative;display:flex;justify-content:space-between;gap:16px;min-height:148px;margin-bottom:16px;padding:22px 24px;border-radius:18px;overflow:hidden;color:#fff;background:linear-gradient(105deg,#0b1f44,#1d4ed8 62%,#60a5fa)}.uadmin-hero p{margin:0;letter-spacing:.08em;text-transform:uppercase;font-size:.75rem;color:#dbeafe}.uadmin-hero strong{display:block;margin:8px 0;font-size:1.7rem}.uadmin-hero small{display:block;max-width:46ch;color:#e0ecff}.uadmin-pill{display:inline-flex;margin:0 0 8px;padding:4px 10px;border-radius:999px;background:#ffffff2e;font-size:.78rem;font-weight:700}.uadmin-date{display:grid;justify-items:end;align-content:start;z-index:1}.uadmin-date b{font-size:1.05rem}.uadmin-campus{position:absolute;right:18px;bottom:0;width:210px;height:130px;opacity:.85}.uadmin-layout .board-hero{margin-bottom:16px}.uadmin-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:0 0 16px;padding:0;list-style:none}.uadmin-kpis li{padding:12px;border-radius:14px;background:#fff;border:1px solid var(--line)}.uadmin-kpis b{display:block;margin:4px 0;font-size:1.35rem;color:var(--navy-dark)}.uadmin-kpis small,.uadmin-kpis span{color:var(--muted);font-size:.75rem}.uadmin-kpis li:nth-child(1){background:#eff6ff}.uadmin-kpis li:nth-child(2){background:#ecfdf5}.uadmin-kpis li:nth-child(3){background:#fff7ed}.uadmin-kpis li:nth-child(4){background:#f5f3ff}.uadmin-kpis li:nth-child(5){background:#fdf2f8}.uadmin-kpis li:nth-child(6){background:#fff7ed}.uadmin-tabs{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px;flex-wrap:wrap}.uadmin-tabs div{display:flex;gap:8px;flex-wrap:wrap}.uadmin-tabs button[role=tab]{border:0;background:transparent;font:inherit;font-weight:700;color:var(--muted);min-height:40px;cursor:pointer;border-bottom:2px solid transparent}.uadmin-tabs button[aria-selected=true]{color:#1d4ed8;border-bottom-color:#1d4ed8}.uadmin-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:16px}.uadmin-cards article{display:grid;gap:4px;padding:14px;border:1px solid var(--line);border-radius:14px;background:#fff}.uadmin-cards span{justify-self:start;padding:2px 8px;border-radius:999px;background:#ecfdf5;color:#047857;font-size:.75rem;font-weight:700}.uadmin-cards h3{margin:4px 0 0;font-size:.95rem}.uadmin-cards p,.uadmin-cards small{margin:0;color:var(--muted)}.uadmin-filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.uadmin-filters input,.uadmin-filters select{min-width:0}.uadmin-table table,.uadmin-split table{width:100%;border-collapse:collapse}.uadmin-split{display:grid;grid-template-columns:1.2fr .8fr;gap:16px;margin-top:16px}.uadmin-rail{display:grid;gap:12px}.uadmin-rail .btn,.uadmin-rail a.btn{width:100%;margin-top:8px}@media (max-width: 1100px){.uadmin-layout,.uadmin-cards,.uadmin-kpis,.uadmin-split{grid-template-columns:1fr 1fr}.uadmin-layout{grid-template-columns:1fr}}.role-hero{margin:8px 0 16px;padding:22px 24px;border-radius:18px;background:linear-gradient(120deg,#102a55,#1d4ed8);color:#fff}.role-hero .eyebrow,.role-hero p{color:#ffffffdb}.role-title{margin:0 0 6px;font-size:1.6rem;font-weight:700}.role-split{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:16px;align-items:start;margin-bottom:16px}.stat-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px}.stat-row.uni-kpis{grid-template-columns:repeat(5,minmax(0,1fr))}@media (max-width: 1280px){.stat-row.uni-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 900px){.stat-row.uni-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 480px){.stat-row.uni-kpis{grid-template-columns:1fr}}.stat-tile,.month-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px;box-shadow:var(--shadow)}.stat-tile span,.stat-tile small{display:block;color:var(--muted);font-size:.82rem}.stat-tile strong{display:block;margin:6px 0;color:var(--navy);font-size:1.6rem}.month-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;text-align:center;font-size:.78rem}.month-dow{color:var(--muted);font-weight:700}.month-grid .is-today{background:var(--accent);color:#fff;border-radius:8px}.roster{list-style:none;margin:0;padding:0;display:grid;gap:8px}.roster li{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}.pill{display:inline-block;width:fit-content;padding:2px 8px;border-radius:999px;background:#e0e7ff;color:var(--navy);font-size:.75rem;font-weight:700}.programme-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:16px}.programme-head h2{margin:0 0 6px}.programme-actions{display:flex;flex-wrap:wrap;gap:8px}.programme-top{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(220px,.8fr) minmax(200px,.7fr);gap:16px;margin-bottom:16px}.programme-info dl{margin:0 0 12px;display:grid;gap:8px}.programme-info dl div{display:grid;grid-template-columns:140px minmax(0,1fr);gap:8px}.programme-info dt{color:var(--muted)}.programme-info dd{margin:0;font-weight:650;word-break:break-all}.pub-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.pub-grid span{display:grid;gap:2px;padding:12px;border-radius:12px;background:#f8fafc}.pub-grid b{font-size:1.4rem;color:var(--navy)}.pub-grid small{color:var(--muted)}.programme-title{display:flex;gap:12px;align-items:center}.programme-mark{width:44px;height:44px;border-radius:12px;background:#dbeafe;color:var(--navy);display:grid;place-items:center;font-weight:800}.programme-head h2{margin:0}.panel-title{display:flex;justify-content:space-between;align-items:center;gap:8px}.qa-main,.qa-line,.qa-danger{width:100%;margin-top:8px}.qa-danger{color:var(--danger);border-color:#fecaca}.tone-draft{background:#fef9c3}.tone-review{background:#ffedd5}.tone-approved{background:#dcfce7}.tone-published{background:#dbeafe}.hierarchy-tools,.content-search{display:flex;gap:8px;align-items:end;margin:8px 0 12px}.bpharm-tree{display:grid;gap:6px}.tree-row{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:8px;background:#f8fafc}button.tree-row{width:100%;border:0;text-align:left;cursor:pointer;font:inherit}.tree-subject{display:grid;gap:4px;margin-bottom:6px}.topic-list{margin:0 0 8px}.tree-row span{margin-left:auto;color:var(--muted)}.indent-1{margin-left:18px}.indent-2{margin-left:36px}.indent-3{margin-left:54px;background:#fff;border:1px solid var(--line)}.pd-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:16px}.pd-head h2{margin:0 0 6px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.pd-head p{margin:0;color:var(--muted)}.pd-actions,.pd-crumbs{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.pd-crumbs{margin-bottom:10px;color:var(--muted);font-size:.85rem}.pd-crumbs a{color:inherit}.pd-hero{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(180px,.7fr);gap:18px;align-items:center;padding:18px 20px;margin-bottom:14px;border:1px solid #e2e8f0;background:linear-gradient(135deg,#fff,#eff6ff 55%,#f5f3ff);box-shadow:0 10px 24px #2563eb0f}.pd-hero-main{display:flex;gap:14px;align-items:flex-start;min-width:0}.pd-hero-mark{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;flex:none;background:linear-gradient(145deg,#7c3aed,#5b21b6);color:#fff;box-shadow:0 8px 18px #5b21b647}.pd-hero-mark .nav-ico{width:22px;height:22px;color:#fff}.pd-hero-copy{display:grid;gap:8px;min-width:0}.pd-hero-title-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.pd-hero-title-row h2{margin:0;font-size:clamp(1.35rem,2vw,1.7rem);color:var(--navy)}.pd-hero-status{display:inline-flex;padding:4px 10px;border-radius:999px;font-size:.72rem;font-weight:800;background:#dcfce7;color:#166534}.pd-hero-status.tone-draft{background:#f1f5f9;color:#475569}.pd-hero-status.tone-in-review{background:#fef3c7;color:#92400e}.pd-hero-status.tone-approved{background:#dbeafe;color:#1d4ed8}.pd-hero-status.tone-published{background:#dcfce7;color:#166534}.pd-hero-lede{margin:0;color:var(--muted);max-width:54ch;line-height:1.45}.pd-hero-tags{display:flex;flex-wrap:wrap;gap:8px}.pd-tag{display:inline-flex;padding:5px 12px;border-radius:999px;background:#dbeafe;color:#1d4ed8;font-size:.75rem;font-weight:700;white-space:nowrap}.pd-hero-aside{justify-self:end;display:grid;justify-items:end;gap:6px;color:var(--navy);text-align:right}.pd-hero-campus{width:120px;height:72px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(160deg,#1d4ed8,#0f2748);color:#fff;box-shadow:0 10px 22px #0f274838}.pd-hero-campus .nav-ico{width:28px;height:28px;color:#bfdbfe}.pd-hero-aside strong{font-size:.9rem}.pd-hero-aside span{display:inline-flex;padding:3px 10px;border-radius:999px;background:#eff6ff;color:#1d4ed8;font-size:.72rem;font-weight:700}.pd-stats-row{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-bottom:12px}.pd-stat{display:flex;align-items:center;gap:10px;padding:12px 14px;border:1px solid #e2e8f0;border-radius:14px;background:#fff;box-shadow:0 6px 14px #0f172a0a;text-align:left;font:inherit;color:inherit;cursor:default}button.pd-stat{cursor:pointer}.pd-stat>div{display:grid;gap:2px;min-width:0}.pd-stat b{font-size:1.15rem;color:var(--navy);line-height:1.1;white-space:nowrap}.pd-stat span{font-size:.72rem;color:#64748b;font-weight:650}.pd-stat-ico{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;flex:none}.pd-stat-ico .nav-ico{width:16px;height:16px}.pd-stat.tone-sem .pd-stat-ico{background:#dbeafe;color:#1d4ed8}.pd-stat.tone-course .pd-stat-ico{background:#dcfce7;color:#15803d}.pd-stat.tone-credit .pd-stat-ico{background:#ede9fe;color:#6d28d9}.pd-stat.tone-students .pd-stat-ico{background:#fef3c7;color:#b45309}.pd-stat.tone-faculty .pd-stat-ico{background:#fee2e2;color:#b91c1c}.pd-stat.tone-status .pd-stat-ico{background:#dbeafe;color:#1d4ed8}.pd-pub-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-bottom:12px}.pd-pub-strip button{border:1px solid #e2e8f0;border-radius:12px;background:#fff;padding:10px 12px;display:grid;gap:2px;text-align:left;cursor:pointer;font:inherit}.pd-pub-strip b{font-size:1.2rem;color:var(--navy)}.pd-pub-strip small{color:#64748b;font-weight:650}.pd-pub-strip .tone-draft{border-color:#e2e8f0}.pd-pub-strip .tone-review{border-color:#fde68a;background:#fffbeb}.pd-pub-strip .tone-approved{border-color:#bbf7d0;background:#f0fdf4}.pd-pub-strip .tone-published{border-color:#bfdbfe;background:#eff6ff}.pd-rail-stack{display:grid;gap:12px}.pd-rail-card{padding:14px}.pd-workflow{list-style:none;margin:0 0 12px;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.pd-workflow li{display:grid;justify-items:center;gap:4px;font-size:.68rem;font-weight:700;color:#94a3b8;text-align:center}.pd-workflow li.on{color:#1d4ed8}.pd-workflow-n{width:24px;height:24px;border-radius:999px;display:grid;place-items:center;background:#f1f5f9;color:#64748b;font-size:.72rem}.pd-workflow li.on .pd-workflow-n{background:#2563eb;color:#fff}.pd-key-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.pd-key-actions button{display:flex;align-items:center;gap:8px;min-height:40px;border:1px solid var(--line);background:#fff;border-radius:10px;cursor:pointer;text-align:left;padding:0 10px;font:inherit;font-size:.8rem;font-weight:600}.pd-key-actions button.danger{color:#b91c1c}.pd-donut{--pd-core: 72%;width:132px;height:132px;margin:8px auto 12px;position:relative}.pd-donut-ring{width:100%;height:100%;border-radius:50%;background:conic-gradient(#2563eb 0 var(--pd-core),#93c5fd var(--pd-core) 90%,#e2e8f0 90% 100%);mask:radial-gradient(circle at center,transparent 52%,#000 53%);-webkit-mask:radial-gradient(circle at center,transparent 52%,#000 53%)}.pd-donut-center{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-content:center;text-align:center;gap:0}.pd-donut-center b{font-size:1.35rem;color:var(--navy)}.pd-donut-center span{font-size:.7rem;color:#64748b;font-weight:650}.pd-donut-legend{list-style:none;margin:0 0 12px;padding:0;display:grid;gap:6px;font-size:.78rem;color:#475569}.pd-donut-legend i{display:inline-block;width:8px;height:8px;border-radius:999px;margin-right:8px}.pd-donut-legend .tone-core{background:#2563eb}.pd-donut-legend .tone-elective{background:#93c5fd}.pd-donut-legend .tone-other{background:#e2e8f0}.pd-top{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(220px,.9fr) minmax(220px,.8fr);gap:16px;margin-bottom:8px}.pd-info dl{margin:0 0 12px;display:grid;gap:8px}.pd-info dl div{display:grid;grid-template-columns:140px minmax(0,1fr);gap:8px}.pd-info dt{color:var(--muted)}.pd-info dd{margin:0;font-weight:650}.pd-catalogue-hint{margin:0 0 10px}.pd-catalogue-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.pd-catalogue-actions .btn{min-height:38px;padding:8px 14px;border-radius:10px;border:1px solid #2563eb;background:#2563eb;color:#fff;font:inherit;font-weight:650;cursor:pointer}.pd-catalogue-actions .btn.ghost{background:#fff;color:var(--navy);border-color:#c5d0e6}.pd-catalogue-actions .btn:disabled{opacity:.65;cursor:wait}.pd-pub{display:grid;grid-template-columns:1fr 1fr;gap:10px}.pd-pub span{display:grid;gap:2px;padding:14px;border-radius:12px;background:#f8fafc}.pd-pub b{font-size:1.5rem;color:var(--navy)}.pd-pub small{color:var(--muted)}.pd-quick{display:grid;gap:8px;align-content:start}.pd-quick h3,.pd-info h3,.pd .panel h3{display:flex;align-items:center;gap:8px}.pd-quick button{display:flex;align-items:center;gap:8px;width:100%;min-height:38px;border:1px solid var(--line);background:#fff;border-radius:10px;cursor:pointer;text-align:left;padding:0 10px;font:inherit}.pd-quick button.danger{color:#b91c1c}.pd-tabs{display:flex;gap:4px;flex-wrap:wrap;margin:8px 0 12px;border-bottom:1px solid var(--line)}.pd-tabs button{border:0;border-bottom:2px solid transparent;background:transparent;min-height:42px;margin-bottom:-1px;font:inherit;font-weight:650;color:#64748b;cursor:pointer}.pd-tabs button[aria-selected=true]{color:#2563eb;border-bottom-color:#2563eb}.pd,.pd-top>*,.pd-split>*{min-width:0}.pd-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,320px);gap:16px;align-items:start}.pd-year{display:grid;gap:8px;margin-bottom:12px}.pd-year>span{color:var(--muted);justify-self:end}.pd-donut{width:148px;height:148px;margin:8px auto;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#2563eb 0,#2563eb 70%,#22c55e 70%,#22c55e 88%,#f59e0b 88%,#f59e0b)}.pd-donut span{width:96px;height:96px;border-radius:50%;background:#fff;display:grid;place-items:center;align-content:center;text-align:center}.pd-donut b{font-size:1.6rem;color:var(--navy);line-height:1}.pd-rail ul{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:8px}.pd-rail li{display:flex;justify-content:space-between;gap:8px}@media (max-width: 1000px){.pd-top,.pd-split,.pd-head,.pd-hero,.pd-stats-row,.pd-pub-strip{display:grid;grid-template-columns:minmax(0,1fr)}.pd-hero-aside{justify-self:start;justify-items:start;text-align:left}.pd-stats-row,.pd-pub-strip{grid-template-columns:1fr 1fr}}.gov-head{align-items:center}.gov-head>div:first-child{min-width:0}.gov-head h2{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.programme-page .programme-actions{flex-wrap:nowrap}.gov-head p{margin:0;color:var(--muted)}.gov-icon-btn,.gov-tabs button,.gov-card h3,.gov-quick>button,.gov-activity li{display:flex;align-items:center;gap:8px}.gov-card h3{margin-top:0}.gov-ico{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;flex:none}.gov-ico .nav-ico{width:16px;height:16px}.gov-ico.indigo{background:#eef2ff;color:#4f46e5}.gov-ico.amber{background:#fff7ed;color:#ea580c}.gov-ico.slate{background:#f1f5f9;color:#334155}.gov-pub{display:grid;grid-template-columns:1fr 1fr;gap:10px}.gov-pub span{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:8px;align-items:center;padding:12px;border-radius:12px}.gov-pub .nav-ico{grid-row:1 / span 2;width:18px;height:18px}.gov-pub b{font-size:1.35rem;line-height:1}.gov-pub small{color:var(--muted)}.gov-pub .span{grid-column:1 / -1}.gov-pub .tone-total{background:#eef2ff;color:#4338ca}.gov-pub .tone-draft{background:#eff6ff;color:#1d4ed8}.gov-pub .tone-approved{background:#fff7ed;color:#c2410c}.gov-pub .tone-review{background:#ecfdf5;color:#047857}.gov-pub .tone-published{background:#fff1f2;color:#be123c}.gov-quick{align-content:start}.gov-quick>button,.gov-quick .qa-text{width:100%;min-height:38px;border:1px solid var(--line);background:#fff;border-radius:10px;cursor:pointer;text-align:left;padding:0 10px;font:inherit}.gov-quick>button.danger,.gov-quick .qa-text{color:#b91c1c}.gov-quick form{display:grid;gap:8px;margin-top:8px}.gov-tabs{border-bottom:1px solid var(--line)}.gov-tabs button{border-bottom-width:2px;font-weight:650;color:#64748b}.gov-tabs button .nav-ico{width:16px;height:16px}.gov-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,320px);gap:16px;align-items:start;min-width:0}.gov-split>*{min-width:0}.gov-icon-btn{white-space:nowrap}.gov-tools{align-items:center}.gov-tools select,.gov-tools input{min-height:38px;border:1px solid var(--line);border-radius:10px;padding:0 10px;background:#fff}.gov-tools input{flex:1;min-width:160px}.gov-empty{margin:0 0 8px 28px}.programme-page .gov-year table{margin-left:28px}.programme-page .gov-year th{font-size:.72rem;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-weight:700}.gov-semester{margin-left:12px}.gov-row-actions{display:flex;gap:6px;white-space:nowrap}.gov-donut{width:148px;height:148px;margin:8px auto;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#2563eb 0,#2563eb 75%,#22c55e 75%,#22c55e 90%,#a855f7 90%,#a855f7)}.gov-donut span{width:96px;height:96px;border-radius:50%;background:#fff;display:grid;place-items:center;align-content:center;text-align:center}.gov-donut b{font-size:1.6rem;color:var(--navy);line-height:1}.gov-legend,.gov-activity{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:8px}.gov-legend li,.gov-activity li{display:flex;align-items:center;gap:8px}.gov-legend b{margin-left:auto}.gov-legend i{width:10px;height:10px;border-radius:50%;display:inline-block}.gov-legend .core{background:#2563eb}.gov-legend .elective{background:#22c55e}.gov-legend .optional{background:#a855f7}.gov-stats{list-style:none;margin:8px 0 12px;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.gov-stats li{display:grid;gap:2px;padding:8px;border-radius:10px;background:#f8fafc}.gov-stats b{color:var(--navy);font-size:1.1rem}.gov-stats span,.gov-activity small{color:var(--muted);font-size:.75rem}.gov-activity strong{display:block}.gov-card dd{word-break:normal}.programme-page .panel{overflow-x:auto}.section-tabs{display:flex;gap:8px;margin:16px 0;flex-wrap:wrap}@media (max-width: 800px){.programme-info dl div{grid-template-columns:1fr}.programme-head{display:grid}}.section-tabs button{min-height:40px;border:0;background:transparent;border-bottom:2px solid transparent;font:inherit;cursor:pointer}.section-tabs .on{border-bottom-color:var(--accent);color:var(--accent);font-weight:700}.shell-welcome{margin-top:16px}main>.wrap>.uni-welcome:first-child,main>.workspace>.workspace-main>.uni-welcome:first-child,main>.workspace>.workspace-main>.board-hero:first-child{margin-top:0}@media (max-width: 800px){.shell-welcome{margin-top:12px}}.uni-welcome{display:flex;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-4);padding:var(--space-5) var(--space-6);border-radius:var(--radius-lg);background:radial-gradient(420px 180px at 92% 20%,rgba(37,99,235,.1),transparent 60%),linear-gradient(135deg,#fff,#f3f8ff 55%,#eaf2ff);color:var(--ink);overflow:hidden;border:1px solid var(--line-strong);box-shadow:var(--shadow)}.uni-welcome h2:not(.role-title){margin:0;font-size:var(--fs-xs);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--accent)}.uni-welcome .role-title{margin:6px 0;font-size:1.65rem;font-weight:800;line-height:1.2;letter-spacing:-.025em;text-transform:none;color:var(--navy-dark)}.uni-welcome p{margin:6px 0;max-width:68ch;color:var(--muted)}.welcome-email{font-size:var(--fs-sm);color:#475569}.role-pill{display:inline-block;margin-left:8px;padding:3px 10px;border-radius:var(--radius-pill);background:var(--accent-soft);color:var(--accent);border:1px solid #bfdbfe;font-size:var(--fs-xs);font-weight:700;vertical-align:middle}.uni-date{display:grid;justify-items:end;align-content:start;gap:2px;text-align:right;min-width:140px;color:var(--navy-dark)}.uni-date strong{font-size:1.05rem;color:var(--navy-dark)}.campus-mark{width:180px;height:90px;margin-top:8px;stroke:#60a5fa;fill:#2563eb14;stroke-width:2}.quick-actions .btn,.quick-actions label.btn{width:100%;justify-content:flex-start;gap:8px;margin:0 0 8px;cursor:pointer}.quick-actions .btn:last-child{margin-bottom:0}.dash-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px}.dash-head h2{margin:0;font-size:1.25rem}.dash-account{margin:0;color:var(--muted);font-size:.85rem}.chart-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.chart-head .section-tabs{margin:0;flex-wrap:wrap}.range-label select{min-width:150px;min-height:36px}.dash-hero .hero-brand{margin:0;text-transform:uppercase;letter-spacing:var(--track-label);font-size:var(--fs-xs);font-weight:800;color:var(--accent)}.dash-hero .role-pill{display:inline-block;margin-left:8px;padding:2px 10px;border-radius:var(--radius-pill);background:var(--accent-soft);color:var(--accent);border:1px solid #bfdbfe;font-size:var(--fs-xs);font-weight:700}.dash-hero .hero-year{margin-top:8px;background:var(--accent-soft);color:var(--navy);border:1px solid #bfdbfe}.dash-hero .hero-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:16px 0 0;padding:0;list-style:none}.dash-hero .hero-stats li{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:8px;align-items:center;padding:10px 12px;border-radius:var(--radius);background:#fff;border:1px solid var(--line);color:var(--navy-dark)}.dash-hero .hero-stats .nav-ico{grid-row:1 / span 2;width:18px;height:18px;color:var(--accent)}.dash-hero .hero-stats b{font-size:1.15rem;line-height:1.1;color:var(--navy-dark)}.dash-hero .hero-stats span{grid-column:2;font-size:var(--fs-xs);color:var(--muted)}.uni-kpis article{position:relative}.kpi-spark{position:absolute;right:12px;bottom:12px;width:72px;height:28px;opacity:.9}.deadline-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}.deadline-list li{display:flex;gap:12px;align-items:flex-start}.deadline-day{flex:none;min-width:58px;padding:8px 6px;border-radius:10px;text-align:center;font-size:.68rem;font-weight:800;letter-spacing:.04em;color:#fff;background:#2563eb}.deadline-day.tone-urgent{background:#dc2626}.deadline-day.tone-warn{background:#ea580c}.deadline-day.tone-info{background:#2563eb}.deadline-day.tone-calm{background:#0f766e}.deadline-list strong{display:block;font-size:.9rem}.deadline-list small{color:var(--muted)}.health-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}.health-list li{display:flex;gap:10px;align-items:flex-start}.health-list i{width:18px;height:18px;border-radius:50%;margin-top:2px;background:#22c55e;position:relative}.health-list i:after{content:"";position:absolute;top:4px;right:3px;bottom:5px;left:5px;border:solid #fff;border-width:0 0 2px 2px;transform:rotate(-45deg)}.health-list li.bad i{background:#dc2626}.health-list li.bad i:after{top:8px;right:4px;bottom:8px;left:4px;border-width:0 0 2px 0;transform:none}.health-list span{display:grid;gap:2px}.health-list small{color:var(--muted)}.platform-activity{display:grid;gap:12px}.platform-legend{display:flex;flex-wrap:wrap;gap:12px;font-size:.78rem;color:var(--muted)}.platform-legend i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:6px}.tone-logins{background:#2563eb}.tone-uploads{background:#16a34a}.tone-assignments{background:#7c3aed}.tone-assessments{background:#ea580c}.platform-bars{display:grid;grid-template-columns:repeat(auto-fit,minmax(48px,1fr));gap:10px;align-items:end;min-height:160px}.platform-col{display:grid;gap:6px;justify-items:center}.platform-stack{display:flex;align-items:flex-end;gap:3px;height:140px;width:100%;justify-content:center}.platform-stack span{width:8px;min-height:2px;border-radius:3px 3px 0 0;align-self:flex-end}.platform-col small{color:var(--muted);font-size:.68rem}.uni-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px;align-items:start}@media (max-width: 1100px){.dash-hero .hero-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}.uni-charts{display:grid;grid-template-columns:minmax(210px,.9fr) minmax(230px,1.15fr) minmax(230px,1.2fr);gap:16px;margin-top:8px}.uni-charts h4,.tab-focus h4{margin:0 0 10px;font-size:.95rem}.level-layout{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.donut{width:148px;height:148px;border-radius:50%;flex:none;display:grid;place-items:center;background:conic-gradient(#3b82f6 0,#3b82f6 47%,#22c55e 47%,#22c55e 79%,#f59e0b 79%,#f59e0b 92%,#a855f7 92%,#a855f7)}.donut span{width:92px;height:92px;border-radius:50%;background:#fff;display:grid;place-items:center;align-content:center;text-align:center}.donut b{font-size:1.6rem;color:var(--navy);line-height:1}.donut small{color:var(--muted)}.pub-chart{display:grid;grid-template-columns:32px minmax(0,1fr);gap:8px;min-height:210px}.pub-axis{display:flex;flex-direction:column;justify-content:space-between;color:var(--muted);font-size:.7rem}.pub-bars{display:flex;align-items:stretch;gap:10px;min-height:210px;border-left:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0;padding:0 6px}.pub-col{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center}.pub-col b{font-size:.72rem}.pub-col small{color:var(--muted);text-align:center;display:block;width:100%;font-size:.68rem;line-height:1.15}.pub-track{flex:1;width:100%;min-height:140px;display:flex;flex-direction:column;justify-content:flex-end}.pub-track i{display:block;width:min(48px,78%);margin:0 auto;border-radius:8px 8px 0 0;min-height:6px}.pub-track i.draft{background:#3b82f6}.pub-track i.review{background:#f59e0b}.pub-track i.approved{background:#22c55e}.pub-track i.published{background:#8b5cf6}.enrol-chart{width:100%;height:auto;display:block}.enrol-grid{stroke:#e2e8f0;stroke-width:1}.enrol-line{fill:none;stroke:#2563eb;stroke-width:2.5}.enrol-area{fill:#2563eb24}.enrol-dot{fill:#2563eb}.enrol-label{fill:#64748b;font-size:10px}.enrol-tip{fill:#fff;stroke:#dbe3f0}.enrol-tip-title,.enrol-tip-copy{fill:#0f172a;font-size:10px}.programme-search input{width:min(100%,280px);min-height:36px;margin:8px 0}.rail-actions{display:grid;gap:8px;margin-bottom:16px}.rail-actions .btn{width:100%;justify-content:flex-start;gap:8px}.count-badge{min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:#ef4444;color:#fff;font-size:.75rem;font-weight:700;display:inline-grid;place-items:center}.pending-list,.activity-list{list-style:none;margin:0;padding:0;display:grid;gap:12px}.pending-list a,.activity-list li,.sys-ok{display:flex;align-items:center;gap:10px;color:inherit;text-decoration:none}.activity-list li span,.pending-list a span{display:grid;line-height:1.3}.activity-list small{color:var(--muted)}.status-dot{width:10px;height:10px;border-radius:50%;background:#16a34a;display:inline-block}.access-card .btn,.access-card button.primary{width:100%}.access-card .people-list{margin:0 0 8px;padding-left:18px;font-size:.82rem}.row-actions button:not(.btn){min-height:32px;min-width:32px;border:0;background:transparent;cursor:pointer;font-size:1.1rem}.row-actions .btn{min-height:40px;min-width:auto;padding:8px 16px;font-size:.9rem;font-weight:600;border-radius:10px;cursor:pointer}.row-actions .btn:not(.ghost):not(.danger){background:#2563eb;color:#fff;border:1px solid #2563eb}.row-actions .btn.ghost{background:#fff;color:#0f172a;border:1px solid #cbd5e1}.console-form .row-actions .btn{background:#2563eb;color:#fff;border:1px solid #2563eb;font-size:.9rem;padding:8px 16px}.console-form .row-actions .btn.ghost{background:#fff;color:#0f172a;border:1px solid #cbd5e1}@media (max-width: 1100px){.uni-layout,.uni-charts{grid-template-columns:1fr}.dash-head{display:grid}.uni-side{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.uni-side>.panel{margin:0}}@media (max-width: 720px){.uni-side{grid-template-columns:1fr}}.muted{color:var(--muted)}@media (max-width: 1000px){.programme-top,.programme-head,.gov-split{display:grid}.programme-top,.gov-split{grid-template-columns:minmax(0,1fr)}.hierarchy-tools{flex-wrap:wrap}.rep-kpis,.rep-charts,.rep-main{grid-template-columns:1fr}}.rep-toolbar{display:flex;justify-content:flex-end;gap:8px;margin-bottom:12px}.rep-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:0 0 16px;padding:0;list-style:none}.rep-kpis li{display:flex;gap:10px;align-items:flex-start;padding:14px;border-radius:16px;background:#fff;border:1px solid var(--line)}.rep-kpis b{display:block;font-size:1.4rem;color:var(--navy)}.rep-kpis span,.rep-kpis small{display:block;color:var(--muted);font-size:.78rem}.rep-kpis small.up,.rep .up{color:#059669}.rep-kpis li:nth-child(1) .kpi-ico{background:#dbeafe;color:#2563eb}.rep-kpis li:nth-child(2) .kpi-ico{background:#d1fae5;color:#059669}.rep-kpis li:nth-child(3) .kpi-ico{background:#ede9fe;color:#7c3aed}.rep-kpis li:nth-child(4) .kpi-ico{background:#ffedd5;color:#ea580c}.rep-kpis li:nth-child(5) .kpi-ico{background:#fee2e2;color:#dc2626}.rep-charts{display:grid;grid-template-columns:1.1fr 1.2fr 1fr 240px;gap:12px;margin-bottom:16px;align-items:start}.rep-donut-row{display:flex;gap:12px;align-items:center}.rep-donut{width:120px;height:120px;border-radius:50%;display:grid;place-items:center;flex:none}.rep-donut span{width:74px;height:74px;border-radius:50%;background:#fff;display:grid;place-items:center;text-align:center}.rep-donut b{line-height:1}.rep-donut-row ul,.rep-filters,.rep-side section ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}.rep-donut-row li,.rep-side li{display:flex;align-items:center;gap:8px}.rep-donut-row b,.rep-side b{margin-left:auto;font-weight:650}.rep-donut-row i{width:8px;height:8px;border-radius:50%;background:#2563eb}.rep-donut-row li:nth-child(2) i{background:#16a34a}.rep-donut-row li:nth-child(3) i{background:#f59e0b}.rep-donut-row li:nth-child(4) i{background:#a855f7}.rep-bars{display:flex;align-items:flex-end;gap:12px;min-height:150px}.rep-bars div{display:grid;justify-items:center;gap:4px;align-items:end}.rep-bars span{width:28px;border-radius:8px 8px 0 0;background:#2563eb;display:block}.rep-bars small{color:var(--muted)}.rep-filters label,.rep-filters select,.rep-filters .btn{width:100%}.rep-filters label{display:grid;gap:4px;color:var(--muted);font-size:.8rem}.rep-main{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:12px;align-items:start;margin-bottom:16px}.rep-tabs{display:flex;gap:4px;flex-wrap:wrap;border-bottom:1px solid var(--line);margin-bottom:12px}.rep-tabs button{border:0;border-bottom:2px solid transparent;background:transparent;min-height:40px;font:inherit;cursor:pointer;color:#64748b}.rep-tabs button[aria-selected=true]{color:#2563eb;border-bottom-color:#2563eb;font-weight:700}.rep-table-tools{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.rep-table-tools input,.rep-table-tools select{min-height:38px;border:1px solid var(--line);border-radius:10px;padding:0 10px}.rep-table-tools input{flex:1;min-width:160px}.rep-side{display:grid;gap:12px}.rep-side button{display:flex;align-items:center;gap:8px;width:100%;min-height:38px;border:1px solid var(--line);background:#fff;border-radius:10px;cursor:pointer;text-align:left;padding:0 10px;font:inherit}.rep-side i{width:8px;height:8px;border-radius:50%;background:#cbd5e1}.rep-side i.ok{background:#16a34a}.rep-trend{margin:0}.rep-trend svg{width:100%;height:140px}.rep-trend ol{display:flex;justify-content:space-between;gap:4px;list-style:none;margin:0;padding:0}.rep-trend span{display:block;color:var(--muted);font-size:.75rem}.rep .panel{overflow-x:auto}.audit-filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px;align-items:center}.audit-filters input,.audit-filters select{min-height:38px;border:1px solid var(--line);border-radius:10px;padding:0 10px;background:#fff}.audit-filters input{flex:1;min-width:220px}.audit-chip{display:inline-block;padding:2px 8px;border-radius:999px;font-size:.72rem;font-weight:700;background:#e2e8f0;color:#334155}.audit-chip.create{background:#dcfce7;color:#166534}.audit-chip.update{background:#dbeafe;color:#1d4ed8}.audit-chip.delete{background:#fee2e2;color:#b91c1c}.audit-chip.publish{background:#ede9fe;color:#6d28d9}.audit-chip.assign{background:#ffedd5;color:#c2410c}.audit-chip.login{background:#f1f5f9;color:#334155}.audit-id{font-size:.75rem;max-width:140px;overflow:hidden;text-overflow:ellipsis}.audit-recent{list-style:none;margin:0;padding:0;display:grid;gap:10px}.audit-recent b,.audit-recent span{display:block}.audit-recent span{color:var(--muted)}.plat-checked{display:inline-flex;align-items:center;gap:6px;color:var(--muted)}.plat-checked i,.plat-legend i{width:8px;height:8px;border-radius:50%;display:inline-block;background:#16a34a}.plat-cards{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:0 0 16px;padding:0;list-style:none}.plat-cards li{display:flex;gap:10px;padding:14px;border-radius:16px;background:#fff;border:1px solid var(--line)}.plat-cards strong,.plat-cards small{display:block;color:var(--muted);font-size:.78rem}.plat-cards b{display:block;margin:4px 0}.plat-cards .up b{color:#059669}.plat-cards .down b,.plat-cards .checking b{color:#64748b}.plat-cards .down b{color:#b91c1c}.plat-cards .idle b{color:#7c3aed}.plat-mid,.plat-bottom{display:grid;gap:12px;margin-bottom:16px}.plat-config{margin-bottom:16px;scroll-margin-top:88px}.plat-config .muted{margin:0 0 12px}.plat-mid{grid-template-columns:1.2fr 1fr .8fr}.plat-bottom{grid-template-columns:minmax(0,1fr) 280px}.plat-bars{list-style:none;margin:0;padding:0;display:grid;gap:10px}.plat-bars li{display:grid;grid-template-columns:180px 1fr auto auto;gap:8px;align-items:center}.plat-bars i{height:8px;border-radius:999px;background:#e2e8f0;display:block}.plat-bars b{display:block;height:8px;border-radius:999px;background:#16a34a}.plat-bars em{font-style:normal;font-size:.75rem;color:#059669}.plat-info{margin:0;display:grid;gap:8px}.plat-info div{display:flex;justify-content:space-between;gap:8px}.plat-info dt{color:var(--muted)}.plat-info dd{margin:0;font-weight:650}.plat-legend{display:flex;gap:8px;align-items:center;color:var(--muted);font-size:.8rem}.plat-legend .app{background:#2563eb}.plat-legend .db{background:#16a34a}.plat-legend .idp{background:#f59e0b}.plat-on{background:#eff6ff}@media (max-width: 1000px){.plat-cards,.plat-mid,.plat-bottom,.plat-bars li{grid-template-columns:1fr}.plat .mgmt-head{flex-direction:column;align-items:stretch}.plat .programme-actions{width:100%}.plat-bars li{grid-template-columns:minmax(0,1fr)}.plat-bars span{overflow-wrap:anywhere}.plat table{display:block;max-width:100%;overflow-x:auto}.plat table td,.plat table th{overflow-wrap:anywhere}.panel,.workspace-main,.wrap,.public-frame,.app-main{min-width:0}.rep-trend svg{width:100%;height:auto;max-width:100%}.plat-info div{flex-wrap:wrap}}.inst-tools,.mgmt-tools,.audit-filters,.rep-toolbar,.rep-table-tools,.programme-actions,.pd-actions,.gov-tools{align-items:center}.inst-tools .btn,.inst-tools select,.mgmt-tools .btn,.mgmt-tools select,.audit-filters .btn,.audit-filters select,.audit-filters input,.rep-toolbar .btn,.rep-toolbar select,.rep-table-tools input,.rep-table-tools select,.rep-table-tools .btn,.programme-actions .btn,.pd-actions .btn{min-height:42px;flex:none}.inst-tools input,.audit-filters input,.rep-table-tools input,.mgmt-search input{min-height:42px;border:1px solid #94a3b8;background:#fff;color:var(--ink)}.inst-tools select,.mgmt-tools select,.audit-filters select,.rep-toolbar select,.rep-table-tools select{border:1px solid #94a3b8;background:#fff;color:var(--ink)}.inst-actions,.gov-row-actions{justify-content:flex-end}.inst-board th:last-child,.inst-board td.inst-actions{text-align:right}.inst-kpis,.rep-kpis,.plat-cards{align-items:stretch}.inst-kpis li,.rep-kpis li{height:100%}.panel,.card,.mgmt-table,.inst-table{border:1px solid #d5deee}input:focus-visible,select:focus-visible,textarea:focus-visible,.btn:focus-visible,a.btn:focus-visible{outline:2px solid #1d4ed8;outline-offset:2px}.workspace-main,.wrap{padding-top:16px}.cal-board{display:grid;gap:16px}.cal-hero{display:flex;justify-content:space-between;gap:16px;padding:22px 24px;border-radius:18px;background:linear-gradient(110deg,#1e3a8a,#2563eb 58%,#60a5fa);color:#fff}.cal-hero h2{margin:0 0 8px;font-size:1.55rem}.cal-hero p{margin:0;max-width:62ch;color:#e0ecff}.cal-hero-year{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:14px;background:#ffffff24;align-self:flex-start}.cal-hero-year span{display:block;font-size:.72rem;color:#dbeafe}.cal-hero-year strong{display:block;font-size:1.05rem}.cal-hero-year .btn{color:#fff;border-color:#ffffff59}.cal-kpis{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.cal-kpis li{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;border-radius:16px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow)}.cal-kpis .kpi-ico{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#dbeafe;color:#1d4ed8}.cal-kpis li:nth-child(2) .kpi-ico{background:#d1fae5;color:#059669}.cal-kpis li:nth-child(3) .kpi-ico{background:#ede9fe;color:#7c3aed}.cal-kpis li:nth-child(4) .kpi-ico{background:#ffedd5;color:#ea580c}.cal-kpis li:nth-child(5) .kpi-ico{background:#fee2e2;color:#dc2626}.cal-kpis b{display:block;font-size:1.35rem;color:var(--navy)}.cal-kpis span{display:block;font-size:.86rem}.cal-kpis small{color:var(--muted)}.cal-toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}.cal-tabs{flex:1;min-width:0}.cal-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr) 280px;gap:16px;align-items:start}.cal-month-nav{display:flex;align-items:center;gap:8px}.cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.cal-dow{text-align:center;font-size:.72rem;color:var(--muted);font-weight:700}.cal-cell{min-height:64px;border:1px solid #e2e8f0;border-radius:12px;background:#fff;display:grid;align-content:start;justify-items:center;gap:6px;padding:8px 4px;cursor:pointer}.cal-cell.is-empty{border:0;background:transparent}.cal-cell.is-today{box-shadow:inset 0 0 0 1px #93c5fd}.cal-cell.is-selected{background:#2563eb;color:#fff;border-color:#2563eb}.cal-dots{display:flex;gap:3px;min-height:6px}.cal-dots em{width:6px;height:6px;border-radius:50%;background:#94a3b8}.cal-dots .tone-live,.cal-tag.tone-live{background:#16a34a}.cal-dots .tone-assessment,.cal-tag.tone-assessment{background:#2563eb}.cal-dots .tone-due,.cal-tag.tone-due{background:#dc2626}.cal-dots .tone-exam,.cal-tag.tone-exam{background:#ea580c}.cal-dots .tone-review,.cal-tag.tone-review{background:#7c3aed}.cal-dots .tone-event,.cal-tag.tone-event{background:#64748b}.cal-tag{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;color:#fff;font-size:.68rem;font-weight:700;white-space:nowrap}.cal-day-list,.cal-upcoming{list-style:none;margin:0;padding:0;display:grid;gap:12px}.cal-day-list li{display:grid;grid-template-columns:64px 1fr auto;gap:10px;align-items:start}.cal-day-list b,.cal-upcoming strong{display:block}.cal-day-list span,.cal-day-list small,.cal-upcoming small{display:block;color:var(--muted)}.cal-actions .btn{width:100%;justify-content:flex-start;gap:8px;margin:0 0 8px}.cal-upcoming li{display:grid;grid-template-columns:58px 1fr auto;gap:10px;align-items:start}.cal-table-tools{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px}.cal-table-tools .mgmt-search{flex:1 1 220px}.cal-table-tools select{min-height:42px}.block-muted{display:block;color:var(--muted);font-size:.78rem}@media (max-width: 1200px){.cal-layout{grid-template-columns:1fr}.cal-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 720px){.cal-kpis{grid-template-columns:1fr}.cal-hero{flex-direction:column}}.cal-event-drawer .action-drawer-panel{width:min(1344px,calc(100vw - 40px))!important;max-height:min(94dvh,980px)!important;background:#fff;overflow:hidden;display:flex;flex-direction:column}.cal-event-wizard{display:flex;flex-direction:column;height:100%;min-height:0}.cal-event-head{padding:18px 22px 8px}.cal-event-title{display:flex;gap:12px;align-items:flex-start}.cal-event-ico{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#dbeafe;color:#1d4ed8;flex:none}.cal-event-title h3{margin:0 0 4px}.cal-event-title p{margin:0;color:var(--muted);font-size:.86rem}.cal-event-steps{list-style:none;margin:0;padding:8px 22px 14px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;border-bottom:1px solid var(--line);background:#fff}.cal-event-steps li{display:flex;gap:8px;align-items:center;color:#94a3b8;font-size:.78rem}.cal-event-steps li span{width:24px;height:24px;border-radius:999px;display:grid;place-items:center;background:#e2e8f0;font-weight:700;flex:none}.cal-event-steps li strong{font-weight:650}.cal-event-steps li.on{color:#1d4ed8}.cal-event-steps li.on span{background:#2563eb;color:#fff}.cal-event-steps li.done{color:#059669}.cal-event-steps li.done span{background:#d1fae5;color:#047857}.cal-event-body{flex:1;min-height:0;overflow:auto;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.85fr);gap:16px;padding:16px 22px}.cal-event-section{background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px;display:grid;gap:12px}.cal-event-section h4{margin:0;color:var(--navy)}.cal-event-section label{display:grid;gap:6px;font-size:.82rem;color:var(--muted)}.cal-event-section input,.cal-event-section select,.cal-event-section textarea{min-height:42px;border:1px solid var(--line);border-radius:10px;padding:8px 12px;color:var(--ink);background:#fff}.cal-event-section textarea{min-height:110px;resize:vertical}.cal-event-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.cal-toggle{display:flex!important;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:#f8fafc}.cal-toggle span{flex:1;color:var(--ink);font-weight:650}.cal-toggle small{color:var(--muted);font-weight:700}.cal-toggle-list{display:grid;gap:8px}.cal-cofaculty{border:1px solid var(--line);border-radius:12px;padding:12px}.cal-cofaculty legend{padding:0 6px;font-size:.82rem;color:var(--muted)}.cal-chip-row{display:flex;flex-wrap:wrap;gap:8px}.cal-chip{border:1px solid #bfdbfe;background:#eff6ff;color:#1d4ed8;border-radius:999px;padding:6px 12px;font-size:.78rem;font-weight:650}.cal-chip.on{background:#2563eb;color:#fff;border-color:#2563eb}.cal-attach{border:1px dashed #93c5fd;border-radius:14px;padding:14px;background:#f8fbff}.cal-attach em{font-style:normal;color:var(--muted);font-size:.78rem}.cal-event-aside{display:grid;gap:12px;align-content:start}.cal-event-preview{background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px}.cal-event-preview h4{margin:0 0 10px}.cal-preview-head{display:flex;justify-content:space-between;gap:8px;align-items:flex-start;margin-bottom:10px}.cal-event-preview ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}.cal-event-preview li,.cal-setting-list li{display:flex;justify-content:space-between;gap:10px;font-size:.82rem}.cal-event-preview li span,.cal-setting-list li{color:var(--muted)}.cal-event-preview li b,.cal-setting-list b{color:var(--ink);font-weight:650;text-align:right}.cal-setting-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.cal-review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0}.cal-review-grid dt{color:var(--muted);font-size:.78rem}.cal-review-grid dd{margin:2px 0 0;font-weight:650}.cal-event-foot{display:flex;justify-content:space-between;gap:12px;padding:14px 22px 18px;border-top:1px solid var(--line);background:#fff}.cal-event-foot-actions{display:flex;gap:8px}@media (max-width: 960px){.cal-event-body,.cal-event-steps,.cal-event-grid,.cal-review-grid{grid-template-columns:1fr}}.access-board{display:grid;gap:16px}.access-hero{display:flex;justify-content:space-between;gap:16px;padding:22px 24px;border-radius:18px;background:linear-gradient(110deg,#1e3a8a,#2563eb 58%,#60a5fa);color:#fff}.access-hero h2{margin:0 0 6px;font-size:1.55rem}.access-hero-kicker{margin:0 0 8px;font-size:.86rem;letter-spacing:.04em;text-transform:uppercase;color:#dbeafe;font-weight:700}.access-hero p{margin:0;max-width:64ch;color:#e0ecff}.access-hero-meta{display:grid;gap:10px;align-content:start;justify-items:end;padding:12px 14px;border-radius:14px;background:#ffffff24}.access-hero-meta span{display:block;font-size:.72rem;color:#dbeafe}.access-hero-meta strong{display:block;font-size:1.4rem}.access-hero-meta .btn{color:#fff;border-color:#ffffff59}.access-kpis{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.access-kpis li{display:flex;gap:12px;padding:14px 16px;border-radius:16px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow)}.access-kpis .kpi-ico{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#dbeafe;color:#1d4ed8}.access-kpis li:nth-child(2) .kpi-ico{background:#ede9fe;color:#7c3aed}.access-kpis li:nth-child(3) .kpi-ico{background:#d1fae5;color:#059669}.access-kpis li:nth-child(4) .kpi-ico{background:#ffedd5;color:#ea580c}.access-kpis li:nth-child(5) .kpi-ico{background:#fee2e2;color:#dc2626}.access-kpis b{display:block;font-size:1.35rem;color:var(--navy)}.access-kpis span{display:block;font-size:.86rem}.access-kpis small{color:var(--muted)}.access-kpis .warn-text{color:#dc2626;font-weight:700}.access-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px;align-items:start}.access-filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px;align-items:end}.access-filters .mgmt-search{flex:1 1 220px}.access-filters select,.access-filters .btn{min-height:42px}.access-user{display:flex;gap:10px;align-items:center}.access-user strong,.access-user small{display:block}.access-user small{color:var(--muted)}.access-role-stack{display:flex;flex-wrap:wrap;gap:6px}.access-role{display:inline-flex;padding:2px 8px;border-radius:999px;font-size:.72rem;font-weight:700;color:#fff;background:#64748b}.access-role.tone-usa{background:#2563eb}.access-role.tone-spc{background:#7c3aed}.access-role.tone-inst{background:#ea580c}.access-role.tone-faculty{background:#1d4ed8}.access-role.tone-student{background:#38bdf8;color:#0f172a}.access-role.tone-pharm{background:#db2777}.access-mfa{font-size:.78rem;color:var(--muted)}.access-mfa.ok{color:#059669;font-weight:650;display:inline-flex;gap:6px;align-items:center}.access-mfa.ok i{width:14px;height:14px;border-radius:50%;background:#22c55e;position:relative}.access-mfa.ok i:after{content:"";position:absolute;top:3px;right:2px;bottom:4px;left:3px;border:solid #fff;border-width:0 0 2px 2px;transform:rotate(-45deg)}.access-pager{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;margin-top:12px;color:var(--muted);font-size:.86rem}.access-pager>div{display:flex;gap:8px;align-items:center}.access-side .btn{width:100%;justify-content:flex-start;gap:8px;margin:0 0 8px}.access-donut-wrap{display:grid;gap:12px;justify-items:center}.access-donut{width:148px;height:148px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#2563eb 0,#2563eb 20%,#7c3aed 20%,#7c3aed 40%,#ea580c 40%,#ea580c 55%,#38bdf8 55%,#38bdf8 85%,#db2777 85%,#db2777)}.access-donut span{width:92px;height:92px;border-radius:50%;background:#fff;display:grid;place-items:center;text-align:center}.access-donut b{font-size:1.4rem;color:var(--navy);line-height:1}.access-legend{list-style:none;margin:0;padding:0;width:100%;display:grid;gap:8px}.access-legend li{display:flex;align-items:center;gap:8px;font-size:.8rem}.access-legend i{width:10px;height:10px;border-radius:50%;flex:none}.access-legend b{margin-left:auto}.access-pending{list-style:none;margin:0;padding:0;display:grid;gap:10px}.access-pending li{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.access-pending strong,.access-pending small{display:block}.access-pending small{color:var(--muted)}.access-role-cards{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.access-role-cards li{border:1px solid var(--line);border-radius:14px;padding:14px;display:grid;gap:6px}.access-role-cards b{font-size:1.4rem;color:var(--navy)}@media (max-width: 1100px){.access-layout{grid-template-columns:1fr}.access-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.access-role-cards{grid-template-columns:1fr 1fr}}@media (max-width: 720px){.access-kpis,.access-role-cards{grid-template-columns:1fr}.access-hero{flex-direction:column}}.live-board{display:grid;gap:16px}.live-hero,.live-hero.live-hero-design{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(160px,.7fr) auto;gap:18px 24px;align-items:center;padding:22px 24px;min-height:168px;border-radius:20px;color:#fff;background:radial-gradient(circle at 88% 20%,rgba(255,255,255,.18),transparent 28%),linear-gradient(110deg,#1e3a8a,#2563eb 55%,#60a5fa);box-shadow:0 12px 28px #2563eb2e}.live-hero-main{min-width:0}.live-hero-badge{display:inline-flex;margin:0 0 10px;padding:4px 12px;border-radius:999px;background:#22c55e;color:#052e16;font-size:.72rem;font-weight:800;letter-spacing:.03em;text-transform:uppercase}.live-hero h2{margin:0 0 8px;font-size:1.75rem;letter-spacing:-.03em;color:#fff}.live-hero p{margin:0 0 14px;max-width:58ch;color:#e0ecff;font-size:.92rem;line-height:1.45}.live-hero-features{list-style:none;margin:0;padding:0;display:grid;gap:6px}.live-hero-features li{display:inline-flex;align-items:center;gap:8px;font-size:.8rem;color:#e0ecff;font-weight:600}.live-hero-features .nav-ico{width:14px;height:14px;color:#86efac}.live-hero-art{display:grid;place-items:center;min-height:120px}.live-hero-screen{position:relative;width:min(100%,180px);aspect-ratio:16 / 11;border-radius:14px;background:linear-gradient(160deg,#eff6ff,#dbeafe);border:3px solid rgba(255,255,255,.55);box-shadow:0 16px 30px #0f172a38}.live-hero-screen:after{content:"";position:absolute;left:18%;right:18%;bottom:-10px;height:8px;border-radius:999px;background:#ffffff8c}.live-hero-screen i,.live-hero-screen span{position:absolute;border-radius:999px;background:#93c5fd}.live-hero-screen i:nth-child(1){width:34%;height:34%;left:12%;top:22%;background:#60a5fa}.live-hero-screen i:nth-child(2){width:22%;height:22%;right:14%;top:18%;background:#38bdf8}.live-hero-screen i:nth-child(3){width:18%;height:18%;right:28%;bottom:18%;background:#818cf8}.live-hero-screen span{width:28%;height:8px;left:14%;bottom:16%;border-radius:6px;background:#bfdbfe}.live-hero-meta{display:grid;gap:4px;align-content:start;justify-items:end;padding:12px 14px;border-radius:14px;background:#ffffff24;align-self:start;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.live-hero-meta span{display:block;font-size:.72rem;color:#dbeafe}.live-hero-meta strong{display:block;font-size:1.45rem}.live-hero-meta small{color:#dbeafe;font-size:.72rem}@media (max-width: 1100px){.live-hero.live-hero-design{grid-template-columns:1fr auto}.live-hero-art{display:none}}@media (max-width: 720px){.live-hero.live-hero-design{grid-template-columns:1fr}.live-hero-meta{justify-items:start}}.live-kpis{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.live-kpis li{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:14px 16px;border-radius:16px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow)}.live-spark{width:64px;height:24px;opacity:.85}.live-spark-blue{color:#2563eb}.live-spark-green{color:#059669}.live-spark-violet{color:#7c3aed}.live-spark-orange{color:#ea580c}.live-kpis .kpi-ico{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#dbeafe;color:#1d4ed8}.live-kpis li:nth-child(2) .kpi-ico{background:#d1fae5;color:#059669}.live-kpis li:nth-child(3) .kpi-ico{background:#ede9fe;color:#7c3aed}.live-kpis li:nth-child(4) .kpi-ico{background:#ffedd5;color:#ea580c}.live-kpis b{display:block;font-size:1.35rem;color:var(--navy)}.live-kpis span{display:block;font-size:.86rem}.live-kpis small{color:var(--muted)}.live-kpis .live-text{color:#ea580c;font-weight:700}.live-toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}.live-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px;align-items:start}.live-filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px;align-items:end}.live-filters .mgmt-search{flex:1 1 220px}.live-filters select,.live-filters input,.live-filters .btn{min-height:42px}.live-time{display:block;color:var(--muted);font-size:.78rem}.live-mode-badge{display:inline-flex;align-items:center;gap:6px;padding:3px 10px 3px 4px;border-radius:999px;font-size:.72rem;font-weight:700;background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe;white-space:nowrap}.live-mode-badge em{display:grid;place-items:center;width:18px;height:18px;border-radius:6px;background:currentColor;color:#fff;font-size:.62rem;font-style:normal;font-weight:800;mix-blend-mode:multiply;background:#2563eb}.live-mode-badge.mode-teams{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}.live-mode-badge.mode-teams em{background:#2563eb}.live-mode-badge.mode-zoom{background:#ecfeff;color:#0e7490;border-color:#a5f3fc}.live-mode-badge.mode-zoom em{background:#0ea5e9}.live-mode-badge.mode-bbb{background:#f0fdf4;color:#15803d;border-color:#bbf7d0}.live-mode-badge.mode-bbb em{background:#16a34a}.live-mode-badge.mode-campus,.live-mode-badge.mode-external,.live-mode-badge.mode-online,.live-mode-badge.mode-stub{background:#f8fafc;color:#475569;border-color:#e2e8f0}.live-mode-badge.mode-stub em{background:#d97706}.live-empty{display:grid;gap:8px;justify-items:start;padding:18px 8px;max-width:48ch}.live-empty strong{color:var(--navy);font-size:.98rem}.live-empty p{margin:0;color:var(--muted);font-size:.88rem;line-height:1.4}.live-table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.live-side-note{margin:4px 0 0;font-size:.74rem;color:var(--muted);line-height:1.35}.live-schedule-body{align-items:start}.live-provider-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 12px}.live-provider-card{display:grid;gap:6px;justify-items:start;padding:12px;border-radius:14px;border:1px solid var(--line);background:#fff;text-align:left;cursor:pointer}.live-provider-card.on{border-color:#2563eb;box-shadow:0 0 0 1px #2563eb inset}.live-provider-card.off{opacity:.55;cursor:not-allowed}.live-provider-card span{display:inline-flex;align-items:center;gap:6px;font-size:.78rem;color:var(--muted)}.live-provider-card span.ok{color:#059669;font-weight:700}.live-provider-card i{width:8px;height:8px;border-radius:999px;background:#94a3b8}.live-provider-card span.ok i{background:#16a34a}.live-provider-ok{margin:0 0 14px;padding:10px 12px;border-radius:12px;background:#ecfdf5;color:#065f46;font-size:.86rem}.live-provider-warn{margin:0 0 14px;padding:10px 12px;border-radius:12px;background:#fff7ed;color:#9a3412;font-size:.86rem}.live-toggle{display:flex;gap:10px;align-items:flex-start;margin:0 0 10px}.live-toggle input{margin-top:4px}.live-toggle strong,.live-toggle small{display:block}.live-toggle small{color:var(--muted);font-weight:400}.live-schedule-hint{color:var(--muted);font-size:.86rem}.live-review{margin:0;display:grid;gap:8px}.live-review>div{display:grid;grid-template-columns:140px 1fr;gap:8px}.live-review dt{color:var(--muted)}.live-review dd{margin:0}.live-settings-preview{list-style:none;margin:0;padding:0;display:grid;gap:8px}.live-settings-preview li{display:flex;justify-content:space-between;gap:8px;font-size:.86rem}.live-mode-badge.mode-stub{background:#fef3c7;color:#92400e;border-color:#fcd34d}@media (max-width: 900px){.live-provider-grid{grid-template-columns:1fr}}.live-side .btn:disabled{opacity:.55;cursor:not-allowed}.live-table-scroll .mgmt-table td.row-actions,.live-board .mgmt-table td.row-actions{min-width:320px;overflow:visible;vertical-align:middle}.live-row-actions{display:inline-flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:flex-start;min-width:300px;max-width:100%}.live-row-actions .icon-btn{width:34px;min-width:34px;padding:0;justify-content:center;flex:none}.live-action-primary,.live-action-secondary{display:inline-flex!important;visibility:visible!important;opacity:1!important;min-height:36px;padding:0 12px;font-size:.78rem;font-weight:700;white-space:nowrap;gap:6px;flex:none}.live-action-primary{background:#1d4ed8!important;border-color:#1d4ed8!important;color:#fff!important;box-shadow:0 1px 2px #1d4ed833}.live-action-secondary{color:#1d4ed8!important;border-color:#93c5fd!important;background:#fff!important}.live-action-primary:disabled,.live-action-secondary:disabled{opacity:.55!important;box-shadow:none;cursor:not-allowed}.live-faculty{display:inline-flex;align-items:center;gap:8px}.live-faculty i{display:grid;place-items:center;width:28px;height:28px;border-radius:999px;background:#dbeafe;color:#1d4ed8;font-size:.68rem;font-style:normal;font-weight:800;flex:none}.live-more{position:relative}.live-more-menu{position:absolute;right:0;top:calc(100% + 4px);z-index:5;min-width:180px;margin:0;padding:6px;list-style:none;border-radius:12px;border:1px solid var(--line);background:#fff;box-shadow:0 12px 28px #0f172a1f}.live-more-menu button,.live-more-menu a{display:block;width:100%;padding:8px 10px;border:0;border-radius:8px;background:transparent;color:var(--navy);text-align:left;font:inherit;text-decoration:none;cursor:pointer}.live-more-menu button:hover,.live-more-menu a:hover{background:#eff6ff}.live-more-menu button:disabled{opacity:.45;cursor:not-allowed}.live-status{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:999px;font-size:.72rem;font-weight:700;color:#1e3a8a;background:#dbeafe}.live-status.tone-live,.live-status.tone-live-now{background:#fee2e2;color:#b91c1c}.live-status.tone-ongoing{background:#dcfce7;color:#15803d}.live-status.tone-scheduled{background:#dbeafe;color:#1d4ed8}.live-status.tone-cancelled{background:#e2e8f0;color:#475569}.live-status.tone-done{background:#f1f5f9;color:#475569}.live-dot.tone-ongoing{background:#16a34a}.live-status-pulse{width:7px;height:7px;border-radius:999px;background:#ef4444;box-shadow:0 0 #ef44448c;animation:live-pulse 1.4s ease-out infinite}@keyframes live-pulse{0%{box-shadow:0 0 #ef444480}70%{box-shadow:0 0 0 8px #ef444400}to{box-shadow:0 0 #ef444400}}.live-pager{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;margin-top:12px;color:var(--muted);font-size:.86rem}.live-pager>div{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.live-page-num{min-width:34px;padding:0 8px;justify-content:center}.live-page-num.on{background:#2563eb;color:#fff;border-color:#2563eb}.live-note{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0;padding:10px 12px;border-radius:12px;border:1px solid #bfdbfe;background:#eff6ff;color:#1e3a8a;font-size:.88rem}.live-note .btn{flex:none}.live-side .btn{width:100%;justify-content:flex-start;gap:8px;margin:0 0 8px}.live-today-date{margin:0 0 10px;color:var(--muted);font-size:.8rem;font-weight:650}.live-timeline{list-style:none;margin:0;padding:0;display:grid;gap:12px}.live-timeline li{display:grid;grid-template-columns:10px minmax(72px,auto) 1fr auto;gap:8px;align-items:start}.live-timeline li.live-timeline-empty{grid-template-columns:1fr;color:var(--muted)}.live-timeline time{font-size:.72rem;font-weight:700;color:var(--navy);line-height:1.3}.live-timeline strong,.live-timeline small{display:block}.live-timeline small{color:var(--muted)}.live-today-join{min-height:30px;padding:0 10px;font-size:.75rem}.live-today-join:disabled{opacity:.45}.live-dot{width:8px;height:8px;margin-top:5px;border-radius:999px;background:#94a3b8}.live-dot.tone-live,.live-dot.tone-live-now{background:#ef4444}.live-dot.tone-scheduled{background:#16a34a}.live-dot.tone-done{background:#94a3b8}.live-health-meta{opacity:.85;font-size:.8rem}.live-health{list-style:none;margin:0;padding:0;display:grid;gap:10px}.live-health li{display:flex;justify-content:space-between;gap:10px;font-size:.86rem;align-items:center}.live-health li>span{display:inline-flex;align-items:center;gap:8px}.live-health-dot{width:8px;height:8px;border-radius:999px;background:#94a3b8;flex:none}.live-health-dot.ok{background:#16a34a}.live-health-dot.bad{background:#dc2626}.live-health-dot.warn{background:#ea580c}.live-health .ok{color:#059669}.live-health .bad{color:#dc2626}.live-health .warn{color:#ea580c}.live-analytics{list-style:none;margin:0;padding:0;display:grid;gap:10px}.live-analytics li{display:flex;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--line);border-radius:12px}.live-cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.live-cal-dow{text-align:center;font-size:.72rem;color:var(--muted);font-weight:700}.live-cal-cell{min-height:56px;border:1px solid #e2e8f0;border-radius:12px;background:#fff;display:grid;align-content:start;justify-items:center;gap:4px;padding:8px 4px;cursor:pointer}.live-cal-cell.is-empty{border:0;background:transparent;cursor:default}.live-cal-cell.is-today{box-shadow:inset 0 0 0 1px #93c5fd}.live-cal-cell em{min-width:18px;height:18px;border-radius:999px;background:#2563eb;color:#fff;font-size:.68rem;font-style:normal;display:grid;place-items:center;padding:0 5px}@media (max-width: 1100px){.live-layout{grid-template-columns:1fr}.live-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.live-side{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.live-side .panel{margin:0}.live-hero-features{max-width:none;justify-content:flex-start}}@media (max-width: 900px){.live-side{grid-template-columns:1fr}.live-filters label{flex:1 1 140px}.live-filters .mgmt-search{flex:1 1 100%}}@media (max-width: 720px){.live-kpis{grid-template-columns:1fr}.live-hero,.live-hero.live-hero-compact{flex-direction:column}.live-hero-meta{justify-items:start}.live-toolbar{align-items:stretch}.live-tabs{overflow-x:auto;flex-wrap:nowrap}.live-filters{gap:8px}.live-filters select,.live-filters input[type=date],.live-filters .btn{width:100%}.live-filters label{flex:1 1 100%}.live-pager{flex-direction:column;align-items:stretch}.live-timeline li{grid-template-columns:10px 1fr}.live-timeline time,.live-timeline em{grid-column:2}}.library-board{display:grid;gap:16px}.library-hero{display:flex;justify-content:space-between;gap:16px;padding:22px 24px;border-radius:18px;background:linear-gradient(110deg,#1e3a8a,#2563eb 58%,#60a5fa);color:#fff}.library-hero h2{margin:0 0 6px;font-size:1.55rem}.library-hero-kicker{margin:0 0 8px;font-size:.86rem;letter-spacing:.04em;text-transform:uppercase;color:#dbeafe;font-weight:700}.library-hero p{margin:0;max-width:64ch;color:#e0ecff}.library-hero-meta{display:grid;gap:6px;align-content:start;justify-items:end;padding:12px 14px;border-radius:14px;background:#ffffff24;align-self:flex-start}.library-hero-meta span{display:block;font-size:.72rem;color:#dbeafe}.library-hero-meta strong{display:block;font-size:1.4rem}.library-hero-meta small{color:#dbeafe;font-size:.72rem}.library-kpis{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.library-kpis li{display:flex;gap:12px;padding:14px 16px;border-radius:16px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow)}.library-kpis .kpi-ico{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#dbeafe;color:#1d4ed8}.library-kpis li:nth-child(2) .kpi-ico{background:#ede9fe;color:#7c3aed}.library-kpis li:nth-child(3) .kpi-ico{background:#ffedd5;color:#ea580c}.library-kpis li:nth-child(4) .kpi-ico{background:#d1fae5;color:#059669}.library-kpis b{display:block;font-size:1.35rem;color:var(--navy)}.library-kpis span{display:block;font-size:.86rem}.library-kpis small{color:var(--muted)}.library-toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}.library-tabs{flex:1;min-width:0;overflow-x:auto}.library-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px;align-items:start}.library-filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px;align-items:end}.library-filters .mgmt-search{flex:1 1 220px}.library-filters select,.library-filters .btn{min-height:42px}.library-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.library-card{display:grid;gap:8px;align-content:start;text-align:left;width:100%;padding:12px;border-radius:14px;border:1px solid var(--line);background:#fff;cursor:pointer;min-height:220px}.library-card:hover{border-color:#93c5fd;box-shadow:var(--shadow)}.library-thumb{height:88px;border-radius:12px;background:linear-gradient(135deg,#eff6ff,#e0e7ff);display:grid;place-items:center;color:#1d4ed8}.library-card strong{font-size:.95rem;color:var(--navy);line-height:1.3}.library-card small{color:var(--muted)}.library-type{display:inline-flex;width:fit-content;padding:2px 8px;border-radius:999px;font-size:.68rem;font-weight:700;color:#fff;background:#64748b}.library-type.tone-ebook{background:#2563eb}.library-type.tone-notes{background:#0ea5e9}.library-type.tone-research{background:#7c3aed}.library-type.tone-video{background:#db2777}.library-type.tone-audio{background:#ea580c}.library-type.tone-presentation{background:#059669}.library-type.tone-link{background:#64748b}.library-type.tone-reading{background:#1d4ed8}.library-tags{display:flex;flex-wrap:wrap;gap:6px}.library-tags em{font-style:normal;font-size:.68rem;padding:2px 6px;border-radius:999px;background:#f1f5f9;color:#334155}.library-meta{display:flex;justify-content:space-between;gap:8px;font-size:.72rem;color:var(--muted);margin-top:auto}.library-pager{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;margin-top:14px;color:var(--muted);font-size:.86rem}.library-pager>div{display:flex;gap:8px;align-items:center}.library-side .btn{width:100%;justify-content:flex-start;gap:8px;margin:0 0 8px}.library-categories{list-style:none;margin:0;padding:0;display:grid;gap:10px}.library-categories li{display:flex;align-items:center;gap:8px;font-size:.86rem}.library-categories i{width:10px;height:10px;border-radius:50%;flex:none}.library-categories b{margin-left:auto}.library-storage-summary{margin:0 0 10px}.library-storage-summary strong{display:block;font-size:1.2rem;color:var(--navy)}.library-storage-summary small{color:var(--muted)}.library-storage-bar{display:flex;height:10px;border-radius:999px;overflow:hidden;background:#e2e8f0;margin-bottom:10px}.library-storage-bar span{display:block;height:100%}.library-storage-legend{list-style:none;margin:0;padding:0;display:grid;gap:8px}.library-storage-legend li{display:flex;align-items:center;gap:8px;font-size:.8rem}.library-storage-legend i{width:10px;height:10px;border-radius:50%;flex:none}.library-storage-legend b{margin-left:auto}.library-detail{display:grid;gap:8px;margin:0 0 16px}.library-detail div{display:grid;grid-template-columns:120px 1fr;gap:8px}.library-detail dt{color:var(--muted);margin:0}.library-detail dd{margin:0}.library-preview{white-space:pre-wrap;background:#f8fafc;border:1px solid var(--line);border-radius:12px;padding:12px;max-height:360px;overflow:auto;font:inherit}@media (max-width: 1100px){.library-layout{grid-template-columns:1fr}.library-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 720px){.library-kpis{grid-template-columns:1fr}.library-hero{flex-direction:column}}.discuss-board{display:grid;gap:16px}.discuss-hero{display:flex;justify-content:space-between;gap:16px;padding:22px 24px;border-radius:18px;background:linear-gradient(110deg,#1e3a8a,#2563eb 58%,#60a5fa);color:#fff}.discuss-hero-copy{display:flex;gap:14px;align-items:flex-start}.discuss-hero-ico{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:#ffffff29;flex:none}.discuss-hero h2{margin:0 0 8px;font-size:1.55rem}.discuss-hero p{margin:0;max-width:64ch;color:#e0ecff}.discuss-hero-date{padding:12px 14px;border-radius:14px;background:#ffffff24;align-self:flex-start;text-align:right}.discuss-hero-date span,.discuss-hero-date small{display:block;font-size:.72rem;color:#dbeafe}.discuss-hero-date strong{display:block;font-size:1.1rem}.discuss-kpis{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.discuss-kpis li{display:flex;gap:12px;padding:14px 16px;border-radius:16px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow)}.discuss-kpis .kpi-ico{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#dbeafe;color:#1d4ed8}.discuss-kpis li:nth-child(2) .kpi-ico{background:#d1fae5;color:#059669}.discuss-kpis li:nth-child(3) .kpi-ico{background:#ede9fe;color:#7c3aed}.discuss-kpis li:nth-child(4) .kpi-ico{background:#fee2e2;color:#dc2626}.discuss-kpis b{display:block;font-size:1.35rem;color:var(--navy)}.discuss-kpis span{display:block;font-size:.86rem}.discuss-kpis small{color:var(--muted)}.discuss-kpis .warn-text{color:#dc2626;font-weight:700}.discuss-toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}.discuss-tabs{flex:1;min-width:0;overflow-x:auto}.discuss-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px;align-items:start}.discuss-filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px;align-items:end}.discuss-filters .mgmt-search{flex:1 1 220px}.discuss-filters select,.discuss-filters .btn{min-height:42px}.discuss-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}.discuss-row{width:100%;display:grid;grid-template-columns:40px minmax(0,1fr) auto auto;gap:12px;align-items:start;text-align:left;padding:12px;border-radius:14px;border:1px solid var(--line);background:#fff;cursor:pointer}.discuss-row:hover{border-color:#93c5fd;box-shadow:var(--shadow)}.discuss-row-main{display:grid;gap:4px;min-width:0}.discuss-row-main strong{color:var(--navy)}.discuss-row-main small{color:var(--muted)}.discuss-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.discuss-tags em{font-style:normal;font-size:.72rem;padding:2px 8px;border-radius:999px;background:#dbeafe;color:#1d4ed8;font-weight:650}.discuss-stats{display:grid;gap:6px;font-size:.78rem;color:var(--muted);align-content:start}.discuss-stats span{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.discuss-status{display:inline-flex;padding:2px 8px;border-radius:999px;font-size:.72rem;font-weight:700;color:#fff;background:#64748b;align-self:start}.discuss-status.tone-open{background:#16a34a}.discuss-status.tone-answered{background:#2563eb}.discuss-status.tone-closed{background:#7c3aed}.discuss-status.tone-progress{background:#0ea5e9}.discuss-pager{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;margin-top:14px;color:var(--muted);font-size:.86rem}.discuss-pager>div{display:flex;gap:8px;align-items:center}.discuss-side .btn{width:100%;justify-content:flex-start;gap:8px;margin:0 0 8px;position:relative}.discuss-badge{margin-left:auto;min-width:22px;padding:0 6px;border-radius:999px;background:#dc2626;color:#fff;font-size:.72rem;font-weight:700;text-align:center}.discuss-categories{list-style:none;margin:0;padding:0;display:grid;gap:10px}.discuss-categories li{display:flex;align-items:center;gap:8px;font-size:.86rem}.discuss-categories i{width:10px;height:10px;border-radius:50%;flex:none}.discuss-categories b{margin-left:auto}.discuss-activity{display:flex;align-items:end;gap:3px;height:80px;padding-top:8px}.discuss-activity span{flex:1;min-width:0;border-radius:4px 4px 0 0;background:linear-gradient(180deg,#60a5fa,#2563eb)}.discuss-activity-caption{display:block;margin-top:8px;color:var(--muted);font-size:.78rem}.discuss-group-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}.discuss-group-list li{display:flex;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:12px}.discuss-detail{display:grid;gap:8px;margin:0 0 16px}.discuss-detail div{display:grid;grid-template-columns:120px 1fr;gap:8px}.discuss-detail dt{color:var(--muted);margin:0}.discuss-detail dd{margin:0}.discuss-preview{white-space:pre-wrap;background:#f8fafc;border:1px solid var(--line);border-radius:12px;padding:12px;max-height:220px;overflow:auto;font:inherit}.discuss-replies{list-style:none;margin:0;padding:0;display:grid;gap:12px}.discuss-replies li{border:1px solid var(--line);border-radius:12px;padding:10px 12px}.discuss-replies strong,.discuss-replies small{display:block}.discuss-replies small{color:var(--muted);margin-bottom:6px}.discuss-replies p{margin:0}.discuss-toolbar-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.discuss-group-btn,.discuss-category-btn{width:100%;display:flex;justify-content:space-between;align-items:center;gap:8px;background:transparent;border:0;padding:0;text-align:left;cursor:pointer;font:inherit;color:inherit}.discuss-category-btn{justify-content:flex-start}.discuss-category-btn b{margin-left:auto}.discuss-grade{display:grid;grid-template-columns:100px 1fr auto;gap:8px;align-items:end;margin-top:10px}.discuss-grade label{display:grid;gap:4px;font-size:.8rem}@media (max-width: 720px){.discuss-grade{grid-template-columns:1fr}}@media (max-width: 1100px){.discuss-layout{grid-template-columns:1fr}.discuss-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.discuss-row{grid-template-columns:40px minmax(0,1fr)}.discuss-stats,.discuss-status{grid-column:2}}@media (max-width: 720px){.discuss-kpis{grid-template-columns:1fr}.discuss-hero{flex-direction:column}}.assess-board{display:grid;gap:16px}.assess-hero{display:flex;justify-content:space-between;gap:16px;padding:22px 24px;border-radius:18px;background:linear-gradient(110deg,#1e3a8a,#2563eb 58%,#60a5fa);color:#fff}.assess-hero h2{margin:0 0 8px;font-size:1.55rem}.assess-hero-kicker{margin:0 0 8px;font-size:.86rem;letter-spacing:.04em;text-transform:uppercase;color:#dbeafe;font-weight:700}.assess-hero p{margin:0;max-width:64ch;color:#e0ecff}.assess-hero-meta{display:grid;gap:4px;align-content:start;justify-items:end;padding:12px 14px;border-radius:14px;background:#ffffff24;align-self:flex-start}.assess-hero-meta span,.assess-hero-meta small{display:block;font-size:.72rem;color:#dbeafe}.assess-hero-meta strong{display:block;font-size:1.2rem}.assess-kpis{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.assess-kpis li{display:flex;gap:12px;padding:14px 16px;border-radius:16px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow)}.assess-kpis .kpi-ico{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#dbeafe;color:#1d4ed8;flex:none}.assess-kpis li:nth-child(2) .kpi-ico{background:#ede9fe;color:#7c3aed}.assess-kpis li:nth-child(3) .kpi-ico{background:#d1fae5;color:#059669}.assess-kpis li:nth-child(4) .kpi-ico{background:#ffedd5;color:#ea580c}.assess-kpis li:nth-child(5) .kpi-ico{background:#fee2e2;color:#dc2626}.assess-kpis b{display:block;font-size:1.35rem;color:var(--navy)}.assess-kpis span{display:block;font-size:.86rem}.assess-kpis small{color:var(--muted)}.assess-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px;align-items:start}.assess-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.assess-tabs button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 14px;cursor:pointer;color:var(--navy);font-weight:600}.assess-tabs button.on{background:#1d4ed8;border-color:#1d4ed8;color:#fff}.assess-filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px;align-items:end}.assess-filters .mgmt-search{flex:1 1 220px}.assess-filters select,.assess-filters .btn{min-height:42px}.assess-more-filters{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 14px}.assess-more-filters label{display:grid;gap:4px;font-size:.82rem}.assess-table-wrap{overflow-x:auto}.assess-table-wrap table{width:100%;border-collapse:collapse}.assess-table-wrap th,.assess-table-wrap td{padding:10px 8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.assess-title-link{display:grid;gap:2px;border:0;background:transparent;padding:0;text-align:left;cursor:pointer;color:inherit}.assess-title-link strong{color:var(--navy)}.assess-title-link small,.assess-sub{color:var(--muted);display:block}.assess-status{display:inline-flex;padding:2px 8px;border-radius:999px;font-size:.75rem;font-weight:700;color:#fff;background:#64748b}.assess-status.tone-ok{background:#16a34a}.assess-status.tone-draft{background:#ea580c}.assess-status.tone-review{background:#2563eb}.assess-status.tone-muted{background:#64748b}.assess-side .btn{width:100%;justify-content:flex-start;gap:8px;margin:0 0 8px}.assess-quick{display:flex;align-items:center;gap:8px;width:100%;margin:0 0 8px;padding:10px 12px;border-radius:12px;border:1px solid var(--line);background:#fff;color:var(--navy);text-decoration:none;cursor:pointer;font:inherit;text-align:left}.assess-quick:hover{border-color:#93c5fd;background:#f8fbff}.assess-donut{width:140px;height:140px;margin:8px auto 16px;border-radius:50%;background:conic-gradient(#2563eb 0,#2563eb 40%,#0ea5e9 40%,#0ea5e9 65%,#7c3aed 65%,#7c3aed 80%,#16a34a 80%,#16a34a 92%,#ea580c 92%,#ea580c 98%,#64748b 98%,#64748b);display:grid;place-items:center}.assess-donut span{width:84px;height:84px;border-radius:50%;background:#fff;display:grid;place-content:center;text-align:center}.assess-donut b{font-size:1.4rem;color:var(--navy)}.assess-donut small{color:var(--muted)}.assess-legend{list-style:none;margin:0;padding:0;display:grid;gap:8px}.assess-legend li{display:flex;align-items:center;gap:8px;font-size:.86rem}.assess-legend i{width:10px;height:10px;border-radius:50%;background:#2563eb;flex:none}.assess-legend b{margin-left:auto}.assess-activity{list-style:none;margin:0;padding:0;display:grid;gap:10px}.assess-activity li{display:flex;gap:10px;align-items:flex-start}.assess-activity strong,.assess-activity small{display:block}.assess-activity small{color:var(--muted)}@media (max-width: 1100px){.assess-layout{grid-template-columns:1fr}.assess-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 720px){.assess-kpis{grid-template-columns:1fr}.assess-hero{flex-direction:column}.assess-hero-meta{justify-items:start}}.cred-board{display:grid;gap:16px}.cred-hero{display:flex;justify-content:space-between;gap:16px;padding:22px 24px;border-radius:18px;background:linear-gradient(110deg,#1e3a8a,#2563eb 58%,#60a5fa);color:#fff}.cred-hero-copy{display:flex;gap:14px;align-items:flex-start}.cred-hero-ico{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:#ffffff29;flex:none}.cred-hero h2{margin:0 0 6px;font-size:1.55rem}.cred-hero-kicker{margin:0 0 8px;font-size:.86rem;letter-spacing:.04em;text-transform:uppercase;color:#dbeafe;font-weight:700}.cred-hero p{margin:0;max-width:64ch;color:#e0ecff}.cred-hero a{color:#fff;text-decoration:underline;text-underline-offset:2px}.cred-hero-meta{display:grid;gap:4px;align-content:start;justify-items:end;padding:12px 14px;border-radius:14px;background:#ffffff24;align-self:flex-start}.cred-hero-meta span,.cred-hero-meta small{display:block;font-size:.72rem;color:#dbeafe}.cred-hero-meta strong{display:block;font-size:1.2rem}.cred-kpis{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.cred-kpis li{display:flex;gap:12px;padding:14px 16px;border-radius:16px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow)}.cred-kpis .kpi-ico{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#dbeafe;color:#1d4ed8;flex:none}.cred-kpis li:nth-child(2) .kpi-ico{background:#ede9fe;color:#7c3aed}.cred-kpis li:nth-child(3) .kpi-ico{background:#ffedd5;color:#ea580c}.cred-kpis li:nth-child(4) .kpi-ico{background:#d1fae5;color:#059669}.cred-kpis li:nth-child(5) .kpi-ico{background:#fee2e2;color:#dc2626}.cred-kpis b{display:block;font-size:1.35rem;color:var(--navy)}.cred-kpis span{display:block;font-size:.86rem}.cred-kpis small{color:var(--muted)}.cred-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px;align-items:start}.cred-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.cred-tabs button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 14px;cursor:pointer;color:var(--navy);font-weight:600}.cred-tabs button.on{background:#1d4ed8;border-color:#1d4ed8;color:#fff}.cred-filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px;align-items:end}.cred-filters .mgmt-search{flex:1 1 220px}.cred-filters select,.cred-filters .btn,.cred-date-range input{min-height:42px}.cred-date-range{display:grid}.cred-table-wrap{overflow-x:auto}.cred-table-wrap table{width:100%;border-collapse:collapse}.cred-table-wrap th,.cred-table-wrap td{padding:10px 8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.cred-check{width:36px}.cred-title-link{display:flex;gap:10px;align-items:flex-start;border:0;background:transparent;padding:0;text-align:left;cursor:pointer;color:inherit;font:inherit}.cred-row-ico{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:#dbeafe;color:#1d4ed8;flex:none}.cred-sub{display:block;color:var(--muted)}.cred-type{display:inline-flex;padding:2px 10px;border-radius:999px;font-size:.75rem;font-weight:700;background:#e0e7ff;color:#3730a3}.cred-type.tone-academic{background:#dbeafe;color:#1d4ed8}.cred-type.tone-general{background:#ede9fe;color:#6d28d9}.cred-type.tone-maintenance{background:#ffedd5;color:#c2410c}.cred-status{display:inline-flex;padding:2px 8px;border-radius:999px;font-size:.75rem;font-weight:700;color:#fff;background:#64748b}.cred-status.tone-ok{background:#16a34a}.cred-status.tone-review{background:#2563eb}.cred-status.tone-warn{background:#ea580c}.cred-status.tone-fail{background:#dc2626}.cred-status.tone-muted{background:#64748b}.cred-side .btn{width:100%;justify-content:flex-start;gap:8px;margin:0 0 8px}.cred-quick{display:flex;align-items:center;gap:8px;width:100%;margin:0 0 8px;padding:10px 12px;border-radius:12px;border:1px solid var(--line);background:#fff;color:var(--navy);text-decoration:none;cursor:pointer;font:inherit;text-align:left}.cred-quick:hover{border-color:#93c5fd;background:#f8fbff}.cred-donut{width:140px;height:140px;margin:8px auto 16px;border-radius:50%;background:conic-gradient(#2563eb 0,#2563eb 45%,#0ea5e9 45%,#0ea5e9 70%,#7c3aed 70%,#7c3aed 85%,#16a34a 85%,#16a34a 95%,#64748b 95%,#64748b);display:grid;place-items:center}.cred-donut span{width:84px;height:84px;border-radius:50%;background:#fff;display:grid;place-content:center;text-align:center}.cred-donut b{font-size:1.4rem;color:var(--navy)}.cred-donut small{color:var(--muted)}.cred-legend{list-style:none;margin:0;padding:0;display:grid;gap:8px}.cred-legend li{display:flex;align-items:center;gap:8px;font-size:.86rem}.cred-legend i{width:10px;height:10px;border-radius:50%;background:#2563eb;flex:none}.cred-legend i.tone-muted{background:#64748b}.cred-legend b{margin-left:auto}.cred-activity{list-style:none;margin:0;padding:0;display:grid;gap:10px}.cred-activity li{display:flex;gap:10px;align-items:flex-start}.cred-activity strong,.cred-activity small{display:block}.cred-activity small{color:var(--muted)}@media (max-width: 1100px){.cred-layout{grid-template-columns:1fr}.cred-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 720px){.cred-kpis{grid-template-columns:1fr}.cred-hero{flex-direction:column}.cred-hero-meta{justify-items:start}}.announce-board,.attend-board,.assess-board,.msg-board,.mpr-board,.cred-board,.live-board,.library-board,.discuss-board,.records-board,.ra-board,.ra-page,.int-board,.cal-board,.access-board,.content-management-board,.academic-assignments-board{display:grid;gap:16px;min-width:0;align-content:start}.board-hero,.announce-hero,.attend-hero,.assess-hero,.msg-hero,.mpr-hero,.cred-hero,.live-hero,.library-hero,.discuss-hero,.records-hero,.ra-hero,.int-hero,.cal-hero,.access-hero{align-items:flex-start;flex-wrap:wrap;min-width:0}.board-hero-copy{display:flex;gap:14px;align-items:flex-start;min-width:0;flex:1 1 280px}.board-hero-ico{width:44px;height:44px;border-radius:var(--radius);display:grid;place-items:center;flex:none;background:var(--accent-soft);color:var(--accent);border:1px solid #bfdbfe}.board-hero-lede,.board-hero p.board-hero-lede{margin:6px 0 0;max-width:68ch;color:var(--muted)}.board-hero-aside{display:grid;gap:10px;justify-items:end;flex:none}.board-hero-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.board-hero-actions .btn{background:#fff;border-color:var(--line-strong);color:var(--navy)}.board-hero-actions .btn:not(.ghost){background:var(--accent);border-color:var(--accent);color:#fff}.board-hero .hero-stats,.dash-hero .board-hero-stats .hero-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;margin:16px 0 0;padding:0;list-style:none;max-width:720px}.board-hero .hero-stats li{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:8px;align-items:center;padding:10px 12px;border-radius:var(--radius);background:#fff;border:1px solid var(--line)}.board-hero .hero-stats .nav-ico{grid-row:1 / span 2;width:18px;height:18px;color:var(--accent)}.board-hero .hero-stats b{font-size:1.15rem;line-height:1.1;color:var(--navy-dark)}.board-hero .hero-stats span{grid-column:2;font-size:var(--fs-xs);color:var(--muted)}.live-board,.inst-board,.rep,.content-management-board,.academic-assignments-board,.announce-board,.attend-board,.assess-board,.msg-board,.mpr-board,.cred-board,.library-board,.discuss-board,.records-board,.ra-board,.int-board,.cal-board,.access-board,.uadmin-layout,.workspace-main{min-width:0}.workspace-main>.board-hero,.workspace-main>.uni-welcome,.live-board>.board-hero,.inst-board>.board-hero,.rep>.board-hero,.uadmin-main>.board-hero{margin-top:0}.mgmt-head-actions{display:flex;justify-content:flex-end;margin-bottom:12px;min-height:0}.mgmt-head-actions:empty{display:none}@media (max-width: 900px){.board-hero,.announce-hero,.attend-hero,.assess-hero,.msg-hero,.mpr-hero,.cred-hero,.live-hero,.library-hero,.discuss-hero,.records-hero,.ra-hero,.int-hero,.cal-hero,.access-hero{flex-direction:column}.board-hero-aside,.board-hero-meta{justify-items:start;text-align:left}.board-hero-aside .campus-mark{width:140px;height:70px}}.announce-hero{display:flex;justify-content:space-between;gap:16px;padding:22px 24px;border-radius:18px;background:linear-gradient(110deg,#1e3a8a,#2563eb 58%,#60a5fa);color:#fff}.announce-hero-copy{display:flex;gap:14px;align-items:flex-start}.announce-hero-ico{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:#ffffff29;flex:none}.announce-hero h2{margin:0 0 6px;font-size:1.55rem}.announce-hero-kicker{margin:0 0 8px;font-size:.86rem;letter-spacing:.04em;text-transform:uppercase;color:#dbeafe;font-weight:700}.announce-hero p{margin:0;max-width:64ch;color:#e0ecff}.announce-hero-meta{display:grid;gap:4px;align-content:start;justify-items:end;padding:12px 14px;border-radius:14px;background:#ffffff24;align-self:flex-start}.announce-hero-meta span,.announce-hero-meta small{display:block;font-size:.72rem;color:#dbeafe}.announce-hero-meta strong{display:block;font-size:1.2rem}.announce-kpis{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.announce-kpis li{display:flex;gap:12px;padding:14px 16px;border-radius:16px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow)}.announce-kpis .kpi-ico{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#dbeafe;color:#1d4ed8;flex:none}.announce-kpis li:nth-child(2) .kpi-ico{background:#d1fae5;color:#059669}.announce-kpis li:nth-child(3) .kpi-ico{background:#ede9fe;color:#7c3aed}.announce-kpis li:nth-child(4) .kpi-ico{background:#e2e8f0;color:#475569}.announce-kpis li:nth-child(5) .kpi-ico{background:#fee2e2;color:#dc2626}.announce-kpis b{display:block;font-size:1.35rem;color:var(--navy)}.announce-kpis span{display:block;font-size:.86rem}.announce-kpis small{color:var(--muted)}.announce-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px;align-items:start}.announce-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.announce-tabs button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 14px;cursor:pointer;color:var(--navy);font-weight:600}.announce-tabs button.on{background:#1d4ed8;border-color:#1d4ed8;color:#fff}.announce-filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px;align-items:end}.announce-filters .mgmt-search{flex:1 1 220px}.announce-filters select,.announce-filters .btn,.announce-date-range input{min-height:42px}.announce-date-range{display:grid}.announce-table-wrap{overflow-x:auto}.announce-table-wrap table{width:100%;border-collapse:collapse}.announce-table-wrap th,.announce-table-wrap td{padding:10px 8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.announce-check{width:36px}.announce-title-link{display:flex;gap:10px;align-items:flex-start;border:0;background:transparent;padding:0;text-align:left;cursor:pointer;color:inherit;font:inherit}.announce-row-ico{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:#dbeafe;color:#1d4ed8;flex:none}.announce-sub{display:block;color:var(--muted)}.announce-type{display:inline-flex;padding:2px 10px;border-radius:999px;font-size:.75rem;font-weight:700;background:#e0e7ff;color:#3730a3}.announce-type.tone-academic{background:#dbeafe;color:#1d4ed8}.announce-type.tone-general{background:#ede9fe;color:#6d28d9}.announce-type.tone-maintenance{background:#ffedd5;color:#c2410c}.announce-type.tone-event{background:#d1fae5;color:#047857}.announce-status{display:inline-flex;padding:2px 8px;border-radius:999px;font-size:.75rem;font-weight:700;color:#fff;background:#64748b}.announce-status.tone-ok{background:#16a34a}.announce-status.tone-review{background:#2563eb}.announce-status.tone-fail{background:#dc2626}.announce-status.tone-muted{background:#64748b}.announce-side .btn{width:100%;justify-content:flex-start;gap:8px;margin:0 0 8px}.announce-quick{display:flex;align-items:center;gap:8px;width:100%;margin:0 0 8px;padding:10px 12px;border-radius:12px;border:1px solid var(--line);background:#fff;color:var(--navy);text-decoration:none;cursor:pointer;font:inherit;text-align:left}.announce-quick:hover{border-color:#93c5fd;background:#f8fbff}.announce-donut{width:140px;height:140px;margin:8px auto 16px;border-radius:50%;background:conic-gradient(#2563eb 0,#2563eb 46%,#16a34a 46%,#16a34a 71%,#7c3aed 71%,#7c3aed 83%,#ea580c 83%,#ea580c 92%,#64748b 92%,#64748b);display:grid;place-items:center}.announce-donut span{width:84px;height:84px;border-radius:50%;background:#fff;display:grid;place-content:center;text-align:center}.announce-donut b{font-size:1.4rem;color:var(--navy)}.announce-donut small{color:var(--muted)}.announce-legend{list-style:none;margin:0;padding:0;display:grid;gap:8px}.announce-legend li{display:flex;align-items:center;gap:8px;font-size:.86rem}.announce-legend i{width:10px;height:10px;border-radius:50%;background:#2563eb;flex:none}.announce-legend b{margin-left:auto}.announce-activity{list-style:none;margin:0;padding:0;display:grid;gap:10px}.announce-activity li{display:flex;gap:10px;align-items:flex-start}.announce-activity strong,.announce-activity small{display:block}.announce-activity small{color:var(--muted)}@media (max-width: 1100px){.announce-layout{grid-template-columns:1fr}.announce-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 720px){.announce-kpis{grid-template-columns:1fr}.announce-hero{flex-direction:column}.announce-hero-meta{justify-items:start}}.msg-board{display:grid;gap:16px}.msg-hero{display:flex;justify-content:space-between;gap:16px;padding:22px 24px;border-radius:18px;background:linear-gradient(110deg,#1e3a8a,#2563eb 58%,#60a5fa);color:#fff}.msg-hero-copy{display:flex;gap:14px;align-items:flex-start}.msg-hero-ico{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:#ffffff29;flex:none}.msg-hero h2{margin:0 0 6px;font-size:1.55rem}.msg-hero-kicker{margin:0 0 8px;font-size:.86rem;letter-spacing:.04em;text-transform:uppercase;color:#dbeafe;font-weight:700}.msg-hero p{margin:0;max-width:68ch;color:#e0ecff}.msg-hero-meta{display:grid;gap:4px;align-content:start;justify-items:end;padding:12px 14px;border-radius:14px;background:#ffffff24;align-self:flex-start}.msg-hero-meta span,.msg-hero-meta small{display:block;font-size:.72rem;color:#dbeafe}.msg-hero-meta strong{display:block;font-size:1.2rem}.msg-kpis{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.msg-kpis li{display:flex;gap:12px;padding:14px 16px;border-radius:16px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow)}.msg-kpis .kpi-ico{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#dbeafe;color:#1d4ed8;flex:none}.msg-kpis li:nth-child(2) .kpi-ico{background:#d1fae5;color:#059669}.msg-kpis li:nth-child(3) .kpi-ico{background:#ede9fe;color:#7c3aed}.msg-kpis li:nth-child(4) .kpi-ico{background:#fee2e2;color:#dc2626}.msg-kpis li:nth-child(5) .kpi-ico{background:#ffedd5;color:#c2410c}.msg-kpis b{display:block;font-size:1.35rem;color:var(--navy)}.msg-kpis span{display:block;font-size:.86rem}.msg-kpis small{color:var(--muted)}.msg-attention{color:#dc2626!important;font-weight:700}.msg-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px;align-items:start}.msg-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.msg-tabs button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 14px;cursor:pointer;color:var(--navy);font-weight:600}.msg-tabs button.on{background:#1d4ed8;border-color:#1d4ed8;color:#fff}.msg-section-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.msg-section-head h3{margin:0}.msg-filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px;align-items:end}.msg-filters .mgmt-search{flex:1 1 220px}.msg-filters select,.msg-filters .btn,.msg-date-range input{min-height:42px}.msg-date-range{display:grid}.msg-table-wrap{overflow-x:auto}.msg-table-wrap table{width:100%;border-collapse:collapse}.msg-table-wrap th,.msg-table-wrap td{padding:10px 8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.msg-check{width:36px}.msg-title-link{display:flex;gap:10px;align-items:flex-start;border:0;background:transparent;padding:0;text-align:left;cursor:pointer;color:inherit;font:inherit}.msg-row-ico{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:#dbeafe;color:#1d4ed8;flex:none}.msg-sub{display:block;color:var(--muted)}.msg-type{display:inline-flex;padding:2px 8px;border-radius:999px;font-size:.75rem;font-weight:700}.msg-type.tone-academic{background:#dbeafe;color:#1d4ed8}.msg-type.tone-general{background:#ede9fe;color:#6d28d9}.msg-type.tone-maintenance{background:#ffedd5;color:#c2410c}.msg-type.tone-event{background:#d1fae5;color:#047857}.msg-status{display:inline-flex;padding:2px 8px;border-radius:999px;font-size:.75rem;font-weight:700;color:#fff;background:#64748b}.msg-status.tone-ok{background:#16a34a}.msg-status.tone-review{background:#2563eb}.msg-status.tone-fail{background:#dc2626}.msg-status.tone-muted{background:#64748b}.msg-actions{display:flex;flex-wrap:wrap;gap:6px}.msg-side .btn{width:100%;justify-content:flex-start;gap:8px;margin:0 0 8px}.msg-quick{display:flex;align-items:center;gap:8px;width:100%;margin:0 0 8px;padding:10px 12px;border-radius:12px;border:1px solid var(--line);background:#fff;color:var(--navy);text-decoration:none;cursor:pointer;font:inherit;text-align:left}.msg-quick:hover{border-color:#93c5fd;background:#f8fbff}.msg-donut{width:140px;height:140px;margin:8px auto 14px;border-radius:50%;display:grid;place-items:center}.msg-donut span{width:86px;height:86px;border-radius:50%;background:#fff;display:grid;place-content:center;text-align:center}.msg-donut b{font-size:1.4rem;color:var(--navy)}.msg-donut small{color:var(--muted)}.msg-legend{list-style:none;margin:0 0 10px;padding:0;display:grid;gap:8px}.msg-legend li{display:flex;align-items:center;gap:8px;font-size:.86rem}.msg-legend i{width:10px;height:10px;border-radius:50%;background:#2563eb;flex:none}.msg-legend b{margin-left:auto}.msg-activity{list-style:none;margin:0;padding:0;display:grid;gap:10px}.msg-activity li{display:flex;gap:10px;align-items:flex-start}.msg-activity strong,.msg-activity small{display:block}.msg-activity small{color:var(--muted)}.msg-settings ul{margin:10px 0 0;padding-left:18px;display:grid;gap:8px}@media (max-width: 1100px){.msg-layout{grid-template-columns:1fr}.msg-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 720px){.msg-kpis{grid-template-columns:1fr}.msg-hero{flex-direction:column}.msg-hero-meta{justify-items:start}}.records-board{display:grid;gap:16px}.records-hero{display:flex;justify-content:space-between;gap:16px;padding:22px 24px;border-radius:18px;background:linear-gradient(110deg,#1e3a8a,#2563eb 58%,#60a5fa);color:#fff}.records-hero-copy{display:flex;gap:14px;align-items:flex-start}.records-hero-ico{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:#ffffff29;flex:none}.records-hero h2{margin:0 0 8px;font-size:1.55rem}.records-hero p{margin:0;max-width:64ch;color:#e0ecff}.records-hero-meta{display:grid;gap:4px;align-content:start;justify-items:end;padding:12px 14px;border-radius:14px;background:#ffffff24;align-self:flex-start}.records-hero-meta span,.records-hero-meta small{display:block;font-size:.72rem;color:#dbeafe}.records-hero-meta strong{display:block;font-size:1.2rem}.records-kpis{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.records-kpis li{display:flex;gap:12px;padding:14px 16px;border-radius:16px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow)}.records-kpis .kpi-ico{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#dbeafe;color:#1d4ed8;flex:none}.records-kpis li:nth-child(2) .kpi-ico{background:#ede9fe;color:#7c3aed}.records-kpis li:nth-child(3) .kpi-ico{background:#ffedd5;color:#ea580c}.records-kpis li:nth-child(4) .kpi-ico{background:#d1fae5;color:#059669}.records-kpis li:nth-child(5) .kpi-ico{background:#fee2e2;color:#dc2626}.records-kpis b{display:block;font-size:1.35rem;color:var(--navy)}.records-kpis span{display:block;font-size:.86rem}.records-kpis small{color:var(--muted)}.records-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px;align-items:start}.records-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.records-tabs button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 14px;cursor:pointer;color:var(--navy);font-weight:600}.records-tabs button.on{background:#1d4ed8;border-color:#1d4ed8;color:#fff}.records-filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px;align-items:end}.records-filters .mgmt-search{flex:1 1 220px}.records-filters select,.records-filters .btn{min-height:42px}.records-more-filters{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 14px}.records-more-filters label{display:grid;gap:4px;font-size:.82rem}.records-table-wrap{overflow-x:auto}.records-table-wrap table{width:100%;border-collapse:collapse}.records-table-wrap th,.records-table-wrap td{padding:10px 8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.records-sub{display:block;color:var(--muted)}.records-status{display:inline-flex;padding:2px 8px;border-radius:999px;font-size:.75rem;font-weight:700;color:#fff;background:#64748b}.records-status.tone-ok{background:#16a34a}.records-status.tone-fail{background:#dc2626}.records-status.tone-review{background:#2563eb}.records-status.tone-muted{background:#64748b}.records-side .btn{width:100%;justify-content:flex-start;gap:8px;margin:0 0 8px}.records-quick{display:flex;align-items:center;gap:8px;width:100%;margin:0 0 8px;padding:10px 12px;border-radius:12px;border:1px solid var(--line);background:#fff;color:var(--navy);text-decoration:none;cursor:pointer;font:inherit;text-align:left}.records-quick:hover{border-color:#93c5fd;background:#f8fbff}.records-donut{width:140px;height:140px;margin:8px auto 16px;border-radius:50%;background:conic-gradient(#16a34a 0,#16a34a 70%,#dc2626 70%,#dc2626 82%,#2563eb 82%,#2563eb 92%,#64748b 92%,#64748b);display:grid;place-items:center}.records-donut span{width:84px;height:84px;border-radius:50%;background:#fff;display:grid;place-content:center;text-align:center}.records-donut b{font-size:1.4rem;color:var(--navy)}.records-donut small{color:var(--muted)}.records-legend{list-style:none;margin:0;padding:0;display:grid;gap:8px}.records-legend li{display:flex;align-items:center;gap:8px;font-size:.86rem}.records-legend i{width:10px;height:10px;border-radius:50%;background:#2563eb;flex:none}.records-legend i.tone-ok{background:#16a34a}.records-legend i.tone-fail{background:#dc2626}.records-legend i.tone-review{background:#2563eb}.records-legend i.tone-muted{background:#64748b}.records-legend b{margin-left:auto}.records-activity{list-style:none;margin:0;padding:0;display:grid;gap:10px}.records-activity li{display:flex;gap:10px;align-items:flex-start}.records-activity strong,.records-activity small{display:block}.records-activity small{color:var(--muted)}@media (max-width: 1100px){.records-layout{grid-template-columns:1fr}.records-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 720px){.records-kpis{grid-template-columns:1fr}.records-hero{flex-direction:column}.records-hero-meta{justify-items:start}}.attend-board{display:grid;gap:16px}.attend-hero{display:flex;justify-content:space-between;gap:16px;padding:22px 24px;border-radius:18px;background:linear-gradient(110deg,#1e3a8a,#2563eb 58%,#60a5fa);color:#fff}.attend-hero h2{margin:0 0 8px;font-size:1.55rem}.attend-hero-kicker{margin:0 0 8px;font-size:.86rem;letter-spacing:.04em;text-transform:uppercase;color:#dbeafe;font-weight:700}.attend-hero p{margin:0;max-width:64ch;color:#e0ecff}.attend-hero-meta{display:grid;gap:4px;align-content:start;justify-items:end;padding:12px 14px;border-radius:14px;background:#ffffff24;align-self:flex-start}.attend-hero-meta span,.attend-hero-meta small{display:block;font-size:.72rem;color:#dbeafe}.attend-hero-meta strong{display:block;font-size:1.2rem}.attend-kpis{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.attend-kpis li{display:flex;gap:12px;padding:14px 16px;border-radius:16px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow)}.attend-kpis .kpi-ico{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#dbeafe;color:#1d4ed8;flex:none}.attend-kpis li:nth-child(2) .kpi-ico{background:#d1fae5;color:#059669}.attend-kpis li:nth-child(3) .kpi-ico{background:#fee2e2;color:#dc2626}.attend-kpis li:nth-child(4) .kpi-ico{background:#ede9fe;color:#7c3aed}.attend-kpis li:nth-child(5) .kpi-ico{background:#ffedd5;color:#ea580c}.attend-kpis b{display:block;font-size:1.35rem;color:var(--navy)}.attend-kpis span{display:block;font-size:.86rem}.attend-kpis small{color:var(--muted)}.attend-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px;align-items:start}.attend-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.attend-tabs button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 14px;cursor:pointer;color:var(--navy);font-weight:600}.attend-tabs button.on{background:#1d4ed8;border-color:#1d4ed8;color:#fff}.attend-filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px;align-items:end}.attend-filters .mgmt-search{flex:1 1 220px}.attend-filters select,.attend-filters .btn{min-height:42px}.attend-more-filters{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 14px}.attend-more-filters label{display:grid;gap:4px;font-size:.82rem}.attend-table-wrap{overflow-x:auto}.attend-table-wrap table{width:100%;border-collapse:collapse}.attend-table-wrap th,.attend-table-wrap td{padding:10px 8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.attend-sub{display:block;color:var(--muted)}.attend-status{display:inline-flex;padding:2px 8px;border-radius:999px;font-size:.75rem;font-weight:700;color:#fff;background:#64748b}.attend-status.tone-ok{background:#16a34a}.attend-status.tone-draft{background:#ea580c}.attend-side .btn{width:100%;justify-content:flex-start;gap:8px;margin:0 0 8px}.attend-quick{display:flex;align-items:center;gap:8px;width:100%;margin:0 0 8px;padding:10px 12px;border-radius:12px;border:1px solid var(--line);background:#fff;color:var(--navy);text-decoration:none;cursor:pointer;font:inherit;text-align:left}.attend-quick:hover{border-color:#93c5fd;background:#f8fbff}.attend-donut{width:140px;height:140px;margin:8px auto 16px;border-radius:50%;background:conic-gradient(#16a34a 0,#16a34a 70%,#dc2626 70%,#dc2626 90%,#64748b 90%,#64748b);display:grid;place-items:center}.attend-donut span{width:84px;height:84px;border-radius:50%;background:#fff;display:grid;place-content:center;text-align:center}.attend-donut b{font-size:1.4rem;color:var(--navy)}.attend-donut small{color:var(--muted)}.attend-legend{list-style:none;margin:0;padding:0;display:grid;gap:8px}.attend-legend li{display:flex;align-items:center;gap:8px;font-size:.86rem}.attend-legend i{width:10px;height:10px;border-radius:50%;background:#2563eb;flex:none}.attend-legend i.tone-ok{background:#16a34a}.attend-legend i.tone-draft{background:#dc2626}.attend-legend i.tone-muted{background:#64748b}.attend-legend b{margin-left:auto}.attend-activity{list-style:none;margin:0;padding:0;display:grid;gap:10px}.attend-activity li{display:flex;gap:10px;align-items:flex-start}.attend-activity strong,.attend-activity small{display:block}.attend-activity small{color:var(--muted)}.attend-bars{list-style:none;margin:0;padding:12px 8px 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(36px,1fr));gap:8px;align-items:end;min-height:160px}.attend-bars li{display:grid;gap:6px;justify-items:center;height:140px;align-content:end}.attend-bars span{width:22px;min-height:8px;border-radius:8px 8px 4px 4px;background:linear-gradient(180deg,#60a5fa,#1d4ed8);align-self:end}.attend-bars small{color:var(--muted);font-size:.72rem}.attend-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin:10px 0 12px;text-align:center;font-size:.78rem}.attend-cal-head{color:var(--muted);font-weight:700}.attend-calendar span{min-height:28px;display:grid;place-items:center;border-radius:8px}.attend-calendar span.marked{background:#dbeafe;color:#1d4ed8;font-weight:700}@media (max-width: 1100px){.attend-layout{grid-template-columns:1fr}.attend-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 720px){.attend-kpis{grid-template-columns:1fr}.attend-hero{flex-direction:column}.attend-hero-meta{justify-items:start}}.ra-page,.ra-board{display:grid;gap:16px}.ra-hero{display:flex;justify-content:space-between;gap:16px;padding:22px 24px;border-radius:18px;background:linear-gradient(110deg,#1e3a8a,#2563eb 58%,#60a5fa);color:#fff}.ra-hero h2{margin:0 0 6px;font-size:1.55rem}.ra-hero-kicker{margin:0 0 8px;font-size:.86rem;letter-spacing:.04em;text-transform:uppercase;color:#dbeafe;font-weight:700}.ra-hero p{margin:0;max-width:64ch;color:#e0ecff}.ra-hero-kpis{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(90px,1fr));gap:10px;align-self:start}.ra-hero-kpis li{padding:10px 12px;border-radius:14px;background:#ffffff24;text-align:right}.ra-hero-kpis strong{display:block;font-size:1.45rem;line-height:1.1}.ra-hero-kpis span{display:block;font-size:.78rem;color:#dbeafe}.ra-hero-kpis small{display:block;font-size:.68rem;color:#bfdbfe;margin-top:2px}.ra-hero-kpis li:nth-child(1){background:#6366f159}.ra-hero-kpis li:nth-child(2){background:#10b98147}.ra-hero-kpis li:nth-child(3){background:#f59e0b4d}.ra-hero-kpis li:nth-child(4){background:#ef444447}.ra-tabs{display:flex;flex-wrap:wrap;gap:4px;border-bottom:1px solid var(--line)}.ra-tabs button{border:0;border-bottom:2px solid transparent;background:transparent;min-height:42px;margin-bottom:-1px;padding:0 12px;font:inherit;font-weight:650;color:#64748b;cursor:pointer}.ra-tabs button.on,.ra-tabs button[aria-selected=true]{color:#2563eb;border-bottom-color:#2563eb}.ra-filters,.ra-more-filters{display:flex;flex-wrap:wrap;gap:10px;align-items:end}.ra-filters .mgmt-search{flex:1 1 240px}.ra-filters select,.ra-filters .btn,.ra-more-filters input,.ra-more-filters label{min-height:42px}.ra-more-filters label{display:grid;gap:4px;font-size:.8rem;color:var(--muted)}.ra-table-wrap{overflow:auto}.ra-title-link{display:grid;gap:2px;border:0;background:transparent;padding:0;text-align:left;font:inherit;color:inherit;cursor:pointer}.ra-title-link small,.ra-sub{display:block;color:var(--muted);font-size:.78rem}.ra-type{display:inline-flex;align-items:center;gap:6px}.ra-status{display:inline-flex;padding:2px 8px;border-radius:999px;font-size:.72rem;font-weight:700;background:#e2e8f0;color:#334155}.ra-status.tone-review{background:#dbeafe;color:#1d4ed8}.ra-status.tone-ok{background:#d1fae5;color:#047857}.ra-status.tone-warn{background:#ffedd5;color:#c2410c}.ra-status.tone-draft{background:#f1f5f9;color:#475569}.ra-status.tone-muted{background:#e2e8f0;color:#64748b}.ra-status.tone-bad{background:#fee2e2;color:#b91c1c}.ra-drawer .action-drawer-panel{width:min(784px,calc(100vw - 40px))!important;max-height:min(92dvh,920px)!important;display:grid;grid-template-rows:auto auto 1fr auto;overflow:hidden}.ra-drawer-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;padding:16px 18px 8px;border-bottom:1px solid var(--line)}.ra-drawer-head.curriculum-create-hero{border-bottom:0;align-items:flex-start}.ra-drawer-head h3{margin:0 0 10px}.ra-drawer-head.curriculum-create-hero h3{margin:0 0 8px}.ra-drawer-subject{display:flex;gap:10px;align-items:flex-start}.ra-drawer-subject p{margin:6px 0 0;color:var(--muted);font-size:.85rem}.ra-drawer-head.curriculum-create-hero .ra-drawer-subject p{color:#ffffffe6}.ra-drawer-subject strong{display:inline;margin-right:8px}.ra-drawer-head.curriculum-create-hero .ra-drawer-subject strong{color:#fff}.ra-drawer-head.curriculum-create-hero .ra-status{vertical-align:middle}.ra-drawer-tabs{display:flex;flex-wrap:wrap;gap:2px;padding:0 12px;border-bottom:1px solid var(--line)}.ra-drawer-tabs button{border:0;border-bottom:2px solid transparent;background:transparent;min-height:40px;margin-bottom:-1px;padding:0 10px;font:inherit;font-size:.86rem;font-weight:650;color:#64748b;cursor:pointer}.ra-drawer-tabs button.on{color:#2563eb;border-bottom-color:#2563eb}.ra-drawer-body{padding:14px 18px;overflow:auto;display:grid;gap:16px}.ra-drawer-body h4{margin:0 0 8px}.ra-meta{margin:0;display:grid;gap:10px}.ra-meta div{display:grid;grid-template-columns:140px minmax(0,1fr);gap:8px}.ra-meta dt{color:var(--muted)}.ra-meta dd{margin:0;font-weight:650}.ra-person{display:flex;align-items:center;gap:8px;font-weight:650}.ra-body{white-space:pre-wrap;margin:0;padding:12px;border-radius:12px;background:#f8fafc;border:1px solid var(--line);font:inherit}.ra-validation{list-style:none;margin:0;padding:0;display:grid;gap:8px}.ra-validation li{display:flex;align-items:center;gap:8px}.ra-validation .ok{color:#047857}.ra-validation .bad{color:#b91c1c}.ra-comment,.ra-history li{padding:10px 12px;border-radius:12px;border:1px solid var(--line);background:#f8fafc}.ra-history{list-style:none;margin:0;padding:0;display:grid;gap:8px}.ra-history li span{display:block;color:var(--muted);font-size:.78rem}.ra-drawer-body label{display:grid;gap:6px;margin-top:12px}.ra-drawer-body textarea{width:100%;border:1px solid var(--line);border-radius:10px;padding:10px;font:inherit;resize:vertical}.ra-drawer-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;padding:12px 18px;border-top:1px solid var(--line);background:#fff}.ra-drawer-actions .ra-request{color:#c2410c;border-color:#fdba74}.ra-drawer-actions .ra-reject{color:#b91c1c;border-color:#fca5a5}@media (max-width: 1100px){.ra-hero{flex-direction:column}.ra-hero-kpis{grid-template-columns:repeat(2,minmax(0,1fr));width:100%}}@media (max-width: 720px){.ra-hero-kpis,.ra-meta div{grid-template-columns:1fr}}.pd-pub button{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:8px;align-items:center;width:100%;border:0;text-align:left;font:inherit;cursor:pointer;padding:12px;border-radius:12px}.pd-pub button .nav-ico{grid-row:1 / span 2}.pd-pub button b{font-size:1.35rem;line-height:1}.pd-pub button small{color:var(--muted)}.pd-row-focus{outline:2px solid #93c5fd;background:#eff6ff}.pd-overview-lede{margin:0 0 12px;font-size:.88rem;line-height:1.45}.pd-course-drawer .action-drawer-panel{width:min(820px,calc(100vw - 32px))!important;max-height:min(90dvh,880px)!important;overflow:hidden;display:flex;flex-direction:column;padding:0!important;border-radius:16px}.pd-course-detail{display:flex;flex-direction:column;min-height:0;max-height:min(90dvh,880px);background:#fff}.pd-course-detail-head{position:relative;display:flex;gap:14px;align-items:flex-start;padding:20px 52px 18px 22px;border-bottom:1px solid #e2e8f0;background:radial-gradient(circle at 92% 12%,rgba(37,99,235,.08),transparent 40%),#f8fafc}.pd-course-detail-ico{flex:none;width:44px;height:44px;display:grid;place-items:center;border-radius:12px;background:#eff6ff;border:1px solid #bfdbfe;color:#1d4ed8}.pd-course-detail-copy{min-width:0}.pd-course-detail-copy h3{margin:0 0 4px;font-size:1.2rem;font-weight:800;color:#0f172a;letter-spacing:-.01em;line-height:1.3}.pd-course-detail-copy p{margin:0;color:#64748b;font-size:.9rem;line-height:1.4;max-width:52ch}.pd-course-detail-close{position:absolute;top:14px;right:14px;width:34px;height:34px;border-radius:999px;border:1px solid #cbd5e1;background:#fff;color:#334155;font-size:1.25rem;line-height:1;cursor:pointer}.pd-course-detail-close:hover{background:#f1f5f9}.pd-course-detail-body{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(220px,.85fr);gap:16px;padding:18px 22px 8px;overflow:auto;min-height:0}.pd-course-meta{margin:0;display:grid;gap:10px;align-content:start}.pd-course-meta>div{display:grid;grid-template-columns:140px minmax(0,1fr);gap:8px;padding:8px 10px;border:1px solid #eef2f7;border-radius:10px;background:#fff}.pd-course-meta dt{margin:0;color:#64748b;font-size:.82rem;font-weight:650}.pd-course-meta dd{margin:0;color:#0f172a;font-weight:700;font-size:.92rem}.pd-course-topics{border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc;padding:12px 14px;min-height:160px}.pd-course-topics-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}.pd-course-topics-head h4{margin:0;font-size:.95rem;color:#0f172a}.pd-course-topics-count{min-width:28px;height:28px;padding:0 8px;border-radius:999px;display:inline-grid;place-items:center;background:#2563eb;color:#fff;font-size:.8rem;font-weight:700}.pd-course-topics ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}.pd-course-topics li{padding:10px 12px;border-radius:10px;border:1px solid #e2e8f0;background:#fff;color:#1e293b;font-weight:600;font-size:.9rem}.pd-course-topics .empty{margin:0;color:#64748b;font-size:.88rem}.pd-course-banner{margin:0 22px 12px;padding:12px 14px;border-radius:12px;border:1px solid #bfdbfe;background:#eff6ff;color:#1e3a8a;font-size:.88rem;line-height:1.45}.pd-course-detail-foot{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;align-items:center;padding:12px 22px 18px;border-top:1px solid #e2e8f0;background:#fff}.pd-course-detail-foot .btn{display:inline-flex;align-items:center;gap:8px;min-height:40px}.pd-course-detail-foot .btn .nav-ico{width:16px;height:16px}@media (max-width: 720px){.pd-course-detail-body{grid-template-columns:1fr}.pd-course-meta>div{grid-template-columns:1fr;gap:2px}}.pd-stat-btn,.pd-activity-btn{display:grid;gap:2px;width:100%;border:0;background:transparent;padding:0;text-align:left;font:inherit;cursor:pointer;color:inherit}.pd-activity-btn strong{display:block}.pd-drawer .console-form:not(.academic-create-form):not(.premium-create-form):not(.curriculum-create-form){padding:16px 18px;display:grid;gap:12px}.pd-drawer .academic-create-form,.pd-drawer .premium-create-form,.pd-drawer .curriculum-create-form{display:flex!important;flex-direction:column!important;height:auto;max-height:none;min-height:0;overflow:hidden;padding:0!important;gap:0!important}.pd-drawer .assign-create-footer,.pd-drawer .curriculum-create-footer,.academic-create-drawer .assign-create-footer,.premium-create-modal .assign-create-footer,.curriculum-create-modal .assign-create-footer{flex:0 0 auto!important;position:sticky;bottom:0;z-index:8}.mpr-board{display:grid;gap:16px}.mpr-hero{display:flex;justify-content:space-between;gap:16px;padding:22px 24px;border-radius:18px;background:linear-gradient(110deg,#1e3a8a,#2563eb 58%,#60a5fa);color:#fff}.mpr-hero-copy{display:flex;gap:14px;align-items:flex-start}.mpr-hero-ico{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:#ffffff29;flex:none}.mpr-hero h2{margin:0 0 6px;font-size:1.55rem}.mpr-hero-kicker{margin:0 0 8px;font-size:.86rem;letter-spacing:.04em;text-transform:uppercase;color:#dbeafe;font-weight:700}.mpr-hero p{margin:0;max-width:68ch;color:#e0ecff}.mpr-hero-meta{display:grid;gap:4px;align-content:start;justify-items:end;padding:12px 14px;border-radius:14px;background:#ffffff24;align-self:flex-start}.mpr-hero-meta span,.mpr-hero-meta small{display:block;font-size:.72rem;color:#dbeafe}.mpr-hero-meta strong{display:block;font-size:1.2rem}.mpr-kpis{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.mpr-kpis li{display:flex;gap:12px;padding:14px 16px;border-radius:16px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow)}.mpr-kpis .kpi-ico{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#dbeafe;color:#1d4ed8;flex:none}.mpr-kpis li:nth-child(2) .kpi-ico{background:#d1fae5;color:#059669}.mpr-kpis li:nth-child(3) .kpi-ico{background:#ffedd5;color:#c2410c}.mpr-kpis li:nth-child(4) .kpi-ico{background:#ede9fe;color:#7c3aed}.mpr-kpis li:nth-child(5) .kpi-ico{background:#fee2e2;color:#dc2626}.mpr-kpis b{display:block;font-size:1.35rem;color:var(--navy)}.mpr-kpis span{display:block;font-size:.86rem}.mpr-kpis small{color:var(--muted)}.mpr-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px;align-items:start}.mpr-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.mpr-tabs button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 14px;cursor:pointer;color:var(--navy);font-weight:600}.mpr-tabs button.on{background:#1d4ed8;border-color:#1d4ed8;color:#fff}.mpr-filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px;align-items:end}.mpr-filters select,.mpr-filters .btn,.mpr-month input{min-height:42px}.mpr-month{display:grid}.mpr-charts{display:grid;grid-template-columns:1.35fr 1fr;gap:14px;margin-bottom:16px}.mpr-chart-panel{min-height:280px}.mpr-chart-legend{margin:0}.mpr-line-chart{width:100%;height:190px;display:block}.mpr-grid{stroke:#e2e8f0;stroke-width:1}.mpr-axis{fill:#64748b;font-size:10px}.mpr-trend-meta{list-style:none;margin:10px 0 0;padding:0;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.mpr-trend-meta li{display:grid;gap:2px;justify-items:center;font-size:.72rem;color:var(--muted)}.mpr-trend-meta strong{color:var(--navy);font-size:.74rem}.mpr-swatch{display:inline-block;width:10px;height:10px;border-radius:2px;margin:0 4px 0 8px}.mpr-swatch.expected{background:#93c5fd}.mpr-swatch.submitted{background:#2563eb}.mpr-donut-wrap{display:grid;grid-template-columns:150px 1fr;gap:14px;align-items:center}.mpr-donut{width:140px;height:140px;margin:0;border-radius:50%;display:grid;place-items:center;box-shadow:inset 0 0 0 1px #0f172a0f}.mpr-donut span{width:88px;height:88px;border-radius:50%;background:#fff;display:grid;place-content:center;text-align:center;box-shadow:0 1px 4px #0f172a14}.mpr-donut b{font-size:1.25rem;color:var(--navy)}.mpr-donut small{color:var(--muted)}.mpr-legend{list-style:none;margin:0;padding:0;display:grid;gap:10px}.mpr-legend li{display:flex;align-items:center;gap:8px;font-size:.88rem}.mpr-legend i{width:10px;height:10px;border-radius:50%;flex:none}.mpr-legend b{margin-left:auto;font-variant-numeric:tabular-nums}.mpr-section-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:8px 0 12px;flex-wrap:wrap}.mpr-section-head h3{margin:0}.mpr-section-head small{color:var(--muted);font-weight:600}.mpr-section-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.mpr-section-actions .mgmt-search{min-width:220px}.mpr-table-wrap{overflow-x:auto}.mpr-table-wrap table{width:100%;border-collapse:collapse}.mpr-table-wrap th,.mpr-table-wrap td{padding:10px 8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.mpr-check{width:36px}.mpr-inst{display:flex;gap:10px;align-items:center}.mpr-avatar{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:#dbeafe;color:#1d4ed8;font-size:.72rem;font-weight:800;flex:none}.mpr-sub{display:block;color:var(--muted)}.mpr-pill{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;font-size:.78rem;font-weight:700;background:#f1f5f9;color:#475569}.mpr-pill i{width:8px;height:8px;border-radius:50%;background:currentColor;flex:none}.mpr-pill.tone-ok{background:#dcfce7;color:#15803d}.mpr-pill.tone-review{background:#ffedd5;color:#c2410c}.mpr-pill.tone-fail{background:#fee2e2;color:#b91c1c}.mpr-pill.tone-muted{background:#e2e8f0;color:#475569}.mpr-status{display:inline-flex;padding:2px 8px;border-radius:999px;font-size:.75rem;font-weight:700;color:#fff;background:#64748b}.mpr-status.tone-ok{background:#16a34a}.mpr-status.tone-review{background:#f59e0b}.mpr-status.tone-fail{background:#dc2626}.mpr-status.tone-muted{background:#64748b}.mpr-actions{display:flex;flex-wrap:wrap;gap:6px}.mpr-side .btn{width:100%;justify-content:flex-start;gap:8px;margin:0 0 8px}.mpr-quick{display:flex;align-items:center;gap:8px;width:100%;margin:0 0 8px;padding:10px 12px;border-radius:12px;border:1px solid var(--line);background:#fff;color:var(--navy);text-decoration:none;cursor:pointer;font:inherit;text-align:left}.mpr-quick:hover{border-color:#93c5fd;background:#f8fbff}.mpr-bars{list-style:none;margin:0;padding:0;display:grid;gap:12px}.mpr-bar-meta{display:flex;justify-content:space-between;gap:8px;font-size:.86rem;margin-bottom:4px}.mpr-bar-track{height:8px;border-radius:999px;background:#e2e8f0;overflow:hidden}.mpr-bar-track i{display:block;height:100%;background:linear-gradient(90deg,#2563eb,#60a5fa);border-radius:999px}.mpr-activity{list-style:none;margin:0;padding:0;display:grid;gap:10px}.mpr-activity li{display:flex;gap:10px;align-items:flex-start}.mpr-activity strong,.mpr-activity small{display:block}.mpr-activity small{color:var(--muted)}@media (max-width: 1100px){.mpr-layout{grid-template-columns:1fr}.mpr-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.mpr-charts{grid-template-columns:1fr}.mpr-donut-wrap{grid-template-columns:1fr;justify-items:center}.mpr-trend-meta{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width: 720px){.mpr-kpis{grid-template-columns:1fr}.mpr-hero{flex-direction:column}.mpr-hero-meta{justify-items:start}}.int-board{display:grid;gap:16px}.int-hero{display:flex;justify-content:space-between;gap:16px;padding:22px 24px;border-radius:18px;background:linear-gradient(110deg,#1e3a8a,#2563eb 58%,#60a5fa);color:#fff}.int-hero-copy{display:flex;gap:14px;align-items:flex-start}.int-hero-ico{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:#ffffff29;flex:none}.int-hero h2{margin:0 0 6px;font-size:1.55rem}.int-hero-kicker{margin:0 0 8px;font-size:.86rem;letter-spacing:.04em;text-transform:uppercase;color:#dbeafe;font-weight:700}.int-hero p{margin:0;max-width:68ch;color:#e0ecff}.int-hero-meta{display:grid;gap:4px;align-content:start;justify-items:end;padding:12px 14px;border-radius:14px;background:#ffffff24;align-self:flex-start}.int-hero-meta span,.int-hero-meta small{display:block;font-size:.72rem;color:#dbeafe}.int-hero-meta strong{display:block;font-size:1.05rem}.int-kpis{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.int-kpis li{display:flex;gap:12px;padding:14px 16px;border-radius:16px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow)}.int-kpis .kpi-ico{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#dbeafe;color:#1d4ed8;flex:none}.int-kpis li:nth-child(2) .kpi-ico{background:#d1fae5;color:#059669}.int-kpis li:nth-child(3) .kpi-ico{background:#fee2e2;color:#dc2626}.int-kpis li:nth-child(4) .kpi-ico{background:#ffedd5;color:#c2410c}.int-kpis b{display:block;font-size:1.2rem;color:var(--navy)}.int-kpis span{display:block;font-size:.86rem}.int-kpis small{color:var(--muted)}.int-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px;align-items:start}.int-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.int-tabs button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 14px;cursor:pointer;color:var(--navy);font-weight:600}.int-tabs button.on{background:#1d4ed8;border-color:#1d4ed8;color:#fff}.int-filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px;align-items:end}.int-filters .mgmt-search{flex:1 1 220px}.int-filters select,.int-filters .btn{min-height:42px}.int-check{display:inline-flex;align-items:center;gap:8px;min-height:42px}.int-table-wrap{overflow-x:auto}.int-table-wrap table{width:100%;border-collapse:collapse}.int-table-wrap th,.int-table-wrap td{padding:10px 8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.int-check-col{width:36px}.int-title-link{display:flex;gap:10px;align-items:flex-start;border:0;background:transparent;padding:0;text-align:left;cursor:pointer;color:inherit;font:inherit}.int-row-ico{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:#dbeafe;color:#1d4ed8;flex:none}.int-sub{display:block;color:var(--muted)}.int-type{display:inline-flex;padding:2px 8px;border-radius:999px;font-size:.75rem;font-weight:700}.int-type.tone-blue{background:#dbeafe;color:#1d4ed8}.int-type.tone-purple{background:#ede9fe;color:#6d28d9}.int-type.tone-orange{background:#ffedd5;color:#c2410c}.int-type.tone-pink{background:#fce7f3;color:#be185d}.int-type.tone-green{background:#d1fae5;color:#047857}.int-type.tone-slate{background:#e2e8f0;color:#475569}.int-pill{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;font-size:.78rem;font-weight:700;background:#f1f5f9;color:#475569}.int-pill i{width:8px;height:8px;border-radius:50%;background:currentColor;flex:none}.int-pill.tone-ok{background:#dcfce7;color:#15803d}.int-pill.tone-review{background:#dbeafe;color:#1d4ed8}.int-pill.tone-fail{background:#fee2e2;color:#b91c1c}.int-actions{display:flex;flex-wrap:wrap;gap:6px}.int-side .btn{width:100%;justify-content:flex-start;gap:8px;margin:0 0 8px}.int-quick{display:flex;align-items:center;gap:8px;width:100%;margin:0 0 8px;padding:10px 12px;border-radius:12px;border:1px solid var(--line);background:#fff;color:var(--navy);cursor:pointer;font:inherit;text-align:left}.int-quick:hover{border-color:#93c5fd;background:#f8fbff}.int-donut{width:140px;height:140px;margin:8px auto 14px;border-radius:50%;display:grid;place-items:center}.int-donut span{width:86px;height:86px;border-radius:50%;background:#fff;display:grid;place-content:center;text-align:center}.int-donut b{font-size:1.4rem;color:var(--navy)}.int-donut small{color:var(--muted)}.int-legend{list-style:none;margin:0;padding:0;display:grid;gap:8px}.int-legend li{display:flex;align-items:center;gap:8px;font-size:.86rem}.int-legend i{width:10px;height:10px;border-radius:50%;flex:none}.int-legend b{margin-left:auto}.int-activity{list-style:none;margin:0;padding:0;display:grid;gap:10px}.int-activity li{display:flex;gap:10px;align-items:flex-start}.int-activity strong,.int-activity small{display:block}.int-activity small{color:var(--muted)}.int-settings ul{margin:10px 0 0;padding-left:18px}@media (max-width: 1100px){.int-layout{grid-template-columns:1fr}.int-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 720px){.int-kpis{grid-template-columns:1fr}.int-hero{flex-direction:column}.int-hero-meta{justify-items:start}}.mc-board{display:grid;gap:16px}.mc-points{list-style:none;margin:0;padding:0;display:grid;gap:8px;color:#fff;font-size:13px}.mc-points li{display:flex;gap:8px;align-items:flex-start}.mc-points li:before{content:"✓";font-weight:700}.mc-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.mc-kpi{background:#fff;border:1px solid var(--line, #e6eaf2);border-radius:14px;padding:16px;display:grid;gap:4px}.mc-kpi strong{font-size:28px;line-height:1}.mc-kpi span{font-weight:650;color:#101828}.mc-kpi small{color:var(--muted, #667085)}.mc-kpi i{display:block;height:6px;border-radius:99px;margin-top:8px}.mc-kpi.blue strong{color:#1d4ed8}.mc-kpi.green strong{color:#15803d}.mc-kpi.amber strong{color:#c2410c}.mc-kpi.violet strong{color:#6d28d9}.mc-kpi.violet i,.mc-kpi.blue i{background:currentColor;color:#6d28d9}.mc-kpi.blue i{color:#1d4ed8}.mc-tabs{display:flex;gap:6px;flex-wrap:wrap;background:#fff;border:1px solid var(--line, #e6eaf2);border-radius:12px;padding:6px}.mc-tabs button{border:0;background:transparent;border-radius:8px;padding:8px 12px;cursor:pointer;color:#344054}.mc-tabs button.active{background:#1d4ed8;color:#fff}.mc-split{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,.9fr);gap:16px;align-items:start}.mc-panel header{display:flex;justify-content:space-between;align-items:center;gap:12px}.mc-panel header button,.mc-panel header a{border:0;background:transparent;color:#1d4ed8;cursor:pointer;font-weight:650}.mc-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.mc-card{border:1px solid var(--line, #e6eaf2);border-radius:12px;padding:14px;display:grid;gap:10px}.mc-card header{display:flex;justify-content:space-between;gap:8px}.mc-card header span,.mc-card li,.mc-row span,.mc-live span{color:var(--muted, #667085);display:block;font-size:13px}.mc-card em,.mc-row em{font-style:normal;font-size:12px;border-radius:99px;padding:2px 8px;background:#f2f4f7}.mc-card em.on{background:#dcfce7;color:#166534}.mc-card ul{display:flex;gap:12px;list-style:none;margin:0;padding:0;flex-wrap:wrap}.mc-card>a,.mc-actions a,.mc-live a,.mc-table a{display:inline-flex;justify-content:center;border:1px solid var(--line, #e6eaf2);border-radius:8px;padding:8px 10px;text-decoration:none}.mc-progress{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center;font-size:12px}.mc-progress i{display:block;height:6px;background:#eef2ff;border-radius:99px;overflow:hidden}.mc-progress b{display:block;height:100%;background:#1d4ed8}.mc-table{width:100%;border-collapse:collapse}.mc-table th,.mc-table td{text-align:left;padding:10px 8px;border-bottom:1px solid var(--line, #e6eaf2);vertical-align:top}.mc-row,.mc-live{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line, #e6eaf2)}.mc-live time{width:42px;text-align:center;color:#1d4ed8}.mc-live time b,.mc-live time span{display:block}.mc-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}@media (max-width: 1100px){.mc-kpis,.mc-split,.mc-cards{grid-template-columns:1fr}}.live-meeting-stub{max-width:720px;margin:24px auto 48px}.live-meeting-card{display:grid;gap:18px;padding:24px;border:1px solid #e2e8f0;border-radius:16px;background:radial-gradient(circle at 92% 8%,rgba(37,99,235,.08),transparent 42%),#fff;box-shadow:0 10px 28px #0f172a0f}.live-meeting-card>header{display:flex;gap:14px;align-items:flex-start}.live-meeting-card .eyebrow{margin:0 0 4px;color:#2563eb;font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.live-meeting-card h1{margin:0 0 6px;font-size:1.45rem;color:#0f172a}.live-meeting-ico{flex:none;width:48px;height:48px;display:grid;place-items:center;border-radius:14px;background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe}.live-meeting-stage{display:grid;gap:8px;justify-items:center;text-align:center;padding:28px 16px;border-radius:14px;border:1px dashed #93c5fd;background:#f8fbff;color:#334155}.live-meeting-stage .nav-ico{width:36px;height:36px;color:#2563eb}.live-meeting-stage p{margin:0;max-width:42ch}.people-kpis,.rep-kpis,.map-kpis,.cal-kpis,.academic-assign-kpis,.uni-kpis{gap:var(--space-3)}.people-kpis li,.rep-kpis li,.map-kpis li,.cal-kpis li,.academic-assign-kpis li{border:1px solid var(--line-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow);background:var(--card);padding:var(--space-4)}.people-filters,.inst-tools,.mgmt-tools,.audit-filters,.academic-assign-filters,.rep-toolbar{gap:var(--space-2)}.people-filters input,.people-filters select,.inst-tools input,.inst-tools select,.mgmt-tools input,.mgmt-tools select,.audit-filters input,.audit-filters select,.academic-assign-filters input,.academic-assign-filters select{min-height:var(--control-h);border-radius:var(--radius-sm);border-color:var(--line-strong);font-family:var(--font)}.mgmt-table,.inst-table,.panel.inst-table{border:1px solid var(--line-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow);background:var(--card)}.role-pill{display:inline-flex;align-items:center;margin-left:10px;padding:4px 10px;border-radius:var(--radius-pill);background:#ffffff2e;border:1px solid rgba(255,255,255,.28);font-size:var(--fs-xs);font-weight:700;letter-spacing:.01em;vertical-align:middle}.uni-welcome .role-pill,.board-hero .role-pill,.dash-hero .role-pill{background:var(--accent-soft);color:var(--accent);border:1px solid #bfdbfe}.profile-chip .avatar{width:36px;height:36px;background:var(--accent-soft);color:var(--accent);border:1px solid #bfdbfe;font-weight:750}.profile-copy strong{font-size:var(--fs-sm);color:var(--navy-dark);font-weight:700}.profile-copy small{color:var(--muted);font-size:var(--fs-xs);font-weight:550}.nav-badge{font-family:var(--font);font-size:.65rem;min-width:22px;padding:2px 7px}.flag,.chip,[class*=chip-]{font-family:var(--font);font-size:var(--fs-xs);font-weight:700;border-radius:var(--radius-pill);padding:4px 10px}.chip-active,.flag.ok{background:var(--ok-bg);color:var(--ok)}main .panel>h3,main .inst-table-head h3,main .table-head h3{font-size:var(--fs-lg);font-weight:750;letter-spacing:-.02em}.action-drawer-panel label,.premium-create-form label,.curriculum-create-form label{font-family:var(--font);font-size:var(--fs-sm);font-weight:600;color:var(--navy-dark)}.action-drawer-panel input,.action-drawer-panel select,.action-drawer-panel textarea,.premium-create-form input,.premium-create-form select,.premium-create-form textarea{font-family:var(--font);border-radius:var(--radius-sm);min-height:var(--control-h)}.ra-drawer-actions,.assign-create-footer,.curriculum-create-footer,.pd-structure-footer,.row-actions{gap:var(--space-2)}@media (max-width: 1100px){.inst-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 640px){.inst-kpis{grid-template-columns:1fr}.top-search-kbd{display:none}.top-search input{padding-right:16px}}.announce-hero,.attend-hero,.assess-hero,.msg-hero,.mpr-hero,.cred-hero,.live-hero,.live-hero.live-hero-design,.library-hero,.discuss-hero,.records-hero,.ra-hero,.int-hero,.cal-hero,.access-hero,.board-hero,.uni-welcome.dash-hero,.uni-welcome.board-hero{display:flex!important;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:var(--space-4)!important;padding:var(--space-5) var(--space-6)!important;min-height:0!important;border-radius:var(--radius-lg)!important;color:var(--ink)!important;border:1px solid var(--line-strong)!important;box-shadow:var(--shadow)!important;background:radial-gradient(420px 180px at 92% 20%,rgba(37,99,235,.1),transparent 60%),linear-gradient(135deg,#fff,#f3f8ff 55%,#eaf2ff)!important;text-shadow:none!important;grid-template-columns:none!important}.announce-hero h2,.attend-hero h2,.assess-hero h2,.msg-hero h2,.mpr-hero h2,.cred-hero h2,.live-hero h2,.library-hero h2,.discuss-hero h2,.records-hero h2,.ra-hero h2,.int-hero h2,.cal-hero h2,.access-hero h2,.uni-welcome .role-title,.board-hero .role-title{color:var(--navy-dark)!important;font-family:var(--font);font-weight:800;letter-spacing:-.025em}.announce-hero p,.attend-hero p,.assess-hero p,.msg-hero p,.mpr-hero p,.cred-hero p,.live-hero p,.library-hero p,.discuss-hero p,.records-hero p,.ra-hero p,.int-hero p,.cal-hero p,.access-hero p,.board-hero-lede,.uni-welcome p{color:var(--muted)!important}.announce-hero-kicker,.assess-hero-kicker,.library-hero-kicker,.cred-hero-kicker,.access-hero-kicker,.ra-hero-kicker,.dash-hero .hero-brand,.board-hero .hero-brand{color:var(--accent)!important;font-size:var(--fs-xs)!important;letter-spacing:var(--track-label);font-weight:800}.announce-hero-ico,.discuss-hero-ico,.cred-hero-ico,.board-hero-ico{background:var(--accent-soft)!important;color:var(--accent)!important;border:1px solid #bfdbfe!important}.announce-hero-meta,.attend-hero-meta,.assess-hero-meta,.msg-hero-meta,.mpr-hero-meta,.cred-hero-meta,.live-hero-meta,.library-hero-meta,.discuss-hero-date,.records-hero-meta,.int-hero-meta,.cal-hero-year,.access-hero-meta{background:#fff!important;border:1px solid var(--line)!important;color:var(--navy-dark)!important;border-radius:var(--radius)!important;box-shadow:var(--shadow)}.announce-hero-meta span,.announce-hero-meta small,.attend-hero-meta span,.attend-hero-meta small,.assess-hero-meta span,.assess-hero-meta small,.msg-hero-meta span,.msg-hero-meta small,.mpr-hero-meta span,.mpr-hero-meta small,.cred-hero-meta span,.cred-hero-meta small,.live-hero-meta span,.live-hero-meta small,.library-hero-meta span,.library-hero-meta small,.discuss-hero-date span,.discuss-hero-date small,.records-hero-meta span,.records-hero-meta small,.int-hero-meta span,.int-hero-meta small,.cal-hero-year span,.access-hero-meta span{color:var(--muted)!important}.announce-hero-meta strong,.attend-hero-meta strong,.assess-hero-meta strong,.msg-hero-meta strong,.mpr-hero-meta strong,.cred-hero-meta strong,.live-hero-meta strong,.library-hero-meta strong,.discuss-hero-date strong,.records-hero-meta strong,.int-hero-meta strong,.cal-hero-year strong,.access-hero-meta strong{color:var(--navy-dark)!important}.cal-hero-year .btn,.access-hero-meta .btn,.live-hero-meta .btn,.cred-hero a{color:var(--navy)!important;border-color:var(--line-strong)!important}.live-hero-features li{color:var(--muted)!important}.live-hero-features .nav-ico{color:var(--ok)!important}.live-hero-art{display:none!important}.live-hero-badge{background:var(--ok-bg)!important;color:var(--ok)!important}.ra-hero-kpis{width:100%;margin:var(--space-4) 0 0!important;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-3);list-style:none;padding:0}.ra-hero-kpis li{background:#fff!important;border:1px solid var(--line-strong)!important;border-radius:var(--radius)!important;padding:var(--space-3) var(--space-4)!important;box-shadow:var(--shadow);color:var(--navy-dark)!important}.ra-hero-kpis strong{color:var(--navy-dark)!important}.ra-hero-kpis span,.ra-hero-kpis small{color:var(--muted)!important}.ra-hero-kpis li:nth-child(1){border-top:3px solid #6366f1}.ra-hero-kpis li:nth-child(2){border-top:3px solid #10b981}.ra-hero-kpis li:nth-child(3){border-top:3px solid #f59e0b}.ra-hero-kpis li:nth-child(4){border-top:3px solid #ef4444}.announce-kpis,.attend-kpis,.assess-kpis,.msg-kpis,.mpr-kpis,.cred-kpis,.live-kpis,.library-kpis,.discuss-kpis,.records-kpis,.int-kpis,.cal-kpis,.access-kpis,.people-kpis,.rep-kpis,.map-kpis,.academic-assign-kpis,.inst-kpis{gap:var(--space-3)!important}.announce-kpis li,.attend-kpis li,.assess-kpis li,.msg-kpis li,.mpr-kpis li,.cred-kpis li,.live-kpis li,.library-kpis li,.discuss-kpis li,.records-kpis li,.int-kpis li,.cal-kpis li,.access-kpis li{background:var(--card)!important;border:1px solid var(--line-strong)!important;border-radius:var(--radius-lg)!important;box-shadow:var(--shadow)!important;padding:var(--space-4)!important}.curriculum-create-hero,.premium-create-hero,.ra-drawer-head.premium-create-hero,.ra-drawer-head.curriculum-create-hero{color:var(--ink)!important;text-shadow:none!important;background:radial-gradient(280px 120px at 92% 10%,rgba(37,99,235,.12),transparent 55%),linear-gradient(135deg,#0f2748,#1e3a5f 45%,#2563eb)!important;padding:var(--space-5) 56px var(--space-5) var(--space-5)!important;border-bottom:1px solid rgba(255,255,255,.08)}.curriculum-create-hero:before,.premium-create-hero:before{opacity:.2!important}.curriculum-create-hero h3,.premium-create-hero h3,.curriculum-create-order,.curriculum-create-sub,.ra-drawer-head h3,.ra-drawer-head .curriculum-create-sub,.ra-drawer-head .curriculum-create-order{color:#fff!important}.curriculum-create-hero-ico{background:#ffffff29!important;border-color:#ffffff47!important;color:#fff!important}.console-head,.hero-banner:not(.page-header):not(.landing-hero){background:radial-gradient(420px 180px at 92% 20%,rgba(37,99,235,.1),transparent 60%),linear-gradient(135deg,#fff,#f3f8ff 55%,#eaf2ff)!important;color:var(--ink)!important;border:1px solid var(--line-strong)!important;box-shadow:var(--shadow)!important}.console-head h2,.hero-banner:not(.page-header):not(.landing-hero) h2{color:var(--navy-dark)!important}.console-head .lede,.hero-banner:not(.page-header):not(.landing-hero) .lede,.console-head .eyebrow,.hero-banner:not(.page-header):not(.landing-hero) .eyebrow{color:var(--muted)!important}.section-tabs,.announce-tabs,.ra-tabs,.pd-tabs,.gov-tabs{gap:var(--space-2)}.section-tabs button,.announce-tabs button,.ra-tabs button,.pd-tabs button,.gov-tabs button{font-family:var(--font);font-size:var(--fs-sm);font-weight:600;min-height:38px;border-radius:var(--radius-pill);border:1px solid var(--line-strong);background:#fff;color:var(--navy)}.section-tabs button.on,.section-tabs button[aria-selected=true],.announce-tabs button.on,.announce-tabs button[aria-selected=true],.ra-tabs button.on,.ra-tabs button[aria-selected=true],.pd-tabs button.on,.pd-tabs button[aria-selected=true],.gov-tabs button.on,.gov-tabs button[aria-selected=true]{background:var(--accent);border-color:var(--accent);color:#fff}.faculty-studio .studio-head,.attempt-board:not(.student-attempt-board),.classroom-nav,.classroom-main>.panel,.ra-page .panel{border:1px solid var(--line-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow);background:var(--card)}.faculty-studio,.classroom,.ra-page,.live-board,.inst-board,.rep,.content-management-board,.academic-assignments-board,.announce-board,.attend-board,.assess-board,.msg-board,.mpr-board,.cred-board,.library-board,.discuss-board,.records-board,.ra-board,.int-board,.cal-board,.access-board,.uadmin-layout,.courses-curriculum-board,.pd,.programme-page{font-family:var(--font);gap:var(--space-4)}.workspace-main,.wrap{padding-top:var(--space-4)!important;padding-bottom:var(--space-6)}.live-board table th,.announce-board table th,.attend-board table th,.assess-board table th,.msg-board table th,.mpr-board table th,.cred-board table th,.library-board table th,.discuss-board table th,.records-board table th,.ra-board table th,.int-board table th,.cal-board table th,.access-board table th,.content-management-board table th,.academic-assignments-board table th,.inst-board table th,.rep table th,.pd table th,.faculty-studio table th{font-size:var(--fs-xs)!important;letter-spacing:var(--track-label);text-transform:uppercase;color:var(--muted)!important;font-weight:700;background:#f8fafc}.live-tools,.announce-tools,.attend-tools,.assess-tools,.msg-tools,.library-tools,.discuss-tools,.records-tools,.ra-filters,.int-filters,.cal-tools,.access-tools,.cred-tools,.mpr-tools,.content-tools,.people-filters,.inst-tools,.mgmt-tools,.academic-assign-filters{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center;margin-bottom:var(--space-3)}@media (max-width: 900px){.ra-hero-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}}@media (max-width: 560px){.ra-hero-kpis{grid-template-columns:1fr!important}}.app-sidebar{background:var(--sidebar-bg)!important}.app-sidebar a{transition:background .16s ease,color .16s ease,transform .16s ease,box-shadow .16s ease}.app-sidebar a.on{transform:translate(1px)}.app-sidebar a .nav-ico{transition:color .16s ease}.topbar{background:#ffffffe0!important;-webkit-backdrop-filter:blur(16px) saturate(1.2);backdrop-filter:blur(16px) saturate(1.2);box-shadow:0 1px #0f172a0a,0 8px 24px #0f172a08!important}.uni-welcome,.board-hero,.dash-hero{position:relative;overflow:hidden}.uni-welcome:after,.board-hero:after{content:"";position:absolute;right:-40px;top:-60px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(37,99,235,.12),transparent 70%);pointer-events:none}.board-hero-copy,.board-hero-aside,.uni-welcome>div{position:relative;z-index:1}.campus-mark{width:200px!important;height:100px!important;margin-top:10px;color:#3b82f6;filter:drop-shadow(0 8px 16px rgba(37,99,235,.12))}.role-title{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px}.role-pill{margin-left:0!important;padding:5px 12px!important;background:linear-gradient(180deg,#eff6ff,#dbeafe)!important;color:#1d4ed8!important;border:1px solid #bfdbfe!important;box-shadow:inset 0 1px #ffffffb3;font-size:.7rem!important;letter-spacing:.02em}.inst-kpis li,.people-kpis li,.rep-kpis li,.map-kpis li,.cal-kpis li,.announce-kpis li,.attend-kpis li,.assess-kpis li,.msg-kpis li,.mpr-kpis li,.cred-kpis li,.live-kpis li,.library-kpis li,.discuss-kpis li,.records-kpis li,.int-kpis li,.access-kpis li,.academic-assign-kpis li,.uni-kpis article,.ra-hero-kpis li{transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.inst-kpis li:hover,.people-kpis li:hover,.rep-kpis li:hover,.map-kpis li:hover,.cal-kpis li:hover,.announce-kpis li:hover,.attend-kpis li:hover,.assess-kpis li:hover,.msg-kpis li:hover,.mpr-kpis li:hover,.cred-kpis li:hover,.live-kpis li:hover,.library-kpis li:hover,.discuss-kpis li:hover,.records-kpis li:hover,.int-kpis li:hover,.access-kpis li:hover,.academic-assign-kpis li:hover,.uni-kpis article:hover,.ra-hero-kpis li:hover{transform:translateY(-2px);box-shadow:var(--shadow-lift)!important;border-color:#c7d7f5!important}.kpi-ico{width:44px!important;height:44px!important;border-radius:14px!important;box-shadow:inset 0 1px #ffffffa6}.premium-toolbar,.inst-tools,.people-filters,.mgmt-tools,.academic-assign-filters,.live-tools,.announce-tools,.attend-tools,.assess-tools,.msg-tools,.library-tools,.discuss-tools,.records-tools,.ra-filters,.int-filters,.cal-tools,.access-tools,.cred-tools,.mpr-tools,.content-tools{padding:12px 14px;background:#ffffffb8;border:1px solid var(--line-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.panel.inst-table,.mgmt-table,.inst-table,main .panel{overflow:hidden}main table thead th{position:sticky;top:0;z-index:1;background:linear-gradient(180deg,#f8fafc,#f1f5f9)!important;border-bottom:1px solid var(--line-strong);padding-top:14px!important;padding-bottom:14px!important}main table tbody td{padding-top:14px!important;padding-bottom:14px!important}main table tbody tr{transition:background .14s ease}main table tbody tr:hover td{background:#f5f9ff!important}main table tbody tr:last-child td{border-bottom:0}.chip-active,.chip.chip-active,.flag.ok,.chip-published,.chip-approved,.chip-enrolled{display:inline-flex!important;align-items:center;gap:6px;padding:5px 12px!important;background:#ecfdf5!important;color:#047857!important;border:1px solid #a7f3d0;box-shadow:inset 0 1px #ffffffb3}.chip-active:before,.chip.chip-active:before,.flag.ok:before,.chip-published:before,.chip-approved:before{content:"";width:7px;height:7px;border-radius:50%;background:#10b981;box-shadow:0 0 0 3px #10b9812e}.chip-inactive,.chip.chip-inactive,.chip-rejected{display:inline-flex!important;align-items:center;gap:6px;padding:5px 12px!important;background:#fff7ed!important;color:#c2410c!important;border:1px solid #fed7aa}.chip-inactive:before,.chip.chip-inactive:before{content:"";width:7px;height:7px;border-radius:50%;background:#f97316}.chip-draft,.chip-in_review,.chip-pending{display:inline-flex!important;align-items:center;gap:6px;padding:5px 12px!important}.chip-draft:before{content:"";width:7px;height:7px;border-radius:50%;background:#94a3b8}.chip-in_review:before,.chip-pending:before{content:"";width:7px;height:7px;border-radius:50%;background:#f59e0b}.inst-actions .btn.ghost,.gov-row-actions .btn.ghost,.inst-actions .btn,td .btn.ghost{min-height:34px;padding:4px 12px;font-size:.78rem;border-radius:8px}.inst-actions .icon-btn,.row-menu .icon-btn{min-width:34px;min-height:34px;padding:0;color:#64748b}.inst-actions .icon-btn:hover,.row-menu .icon-btn:hover{background:var(--accent-soft);color:var(--accent);border-color:#bfdbfe}.inst-pager .btn,.pager .btn,.live-pager .btn,.access-pager .btn,.library-pager .btn,.discuss-pager .btn{min-height:36px;min-width:36px;padding:4px 12px;border-radius:10px;font-size:.8rem}.inst-pager .page-on,.pager .page-on,.live-pager .page-on{background:var(--accent)!important;color:#fff!important;border-color:var(--accent)!important;box-shadow:0 4px 12px #2563eb47}.act-dot{width:9px!important;height:9px!important;box-shadow:0 0 0 3px #94a3b833}.act-dot.ok{box-shadow:0 0 0 3px #22c55e33}.act-dot.info{box-shadow:0 0 0 3px #3b82f633}.act-dot.warn{box-shadow:0 0 0 3px #f59e0b33}.btn.inst-add,.btn:not(.ghost):not(.danger):not(.icon-btn):not(.nav-toggle):not(.collapse-toggle):not(.page-on){box-shadow:0 4px 14px #2563eb38}.btn.inst-add:hover,.btn:not(.ghost):not(.danger):not(.icon-btn):hover:not(:disabled){box-shadow:0 8px 20px #2563eb4d;transform:translateY(-1px)}.inst-table-head h3,.panel-title h3,main .panel>h3{font-size:1.05rem!important;font-weight:750!important;letter-spacing:-.02em;color:var(--navy-dark)}.drawer-scrim{background:#0a1c388c!important;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}@media (prefers-reduced-motion: reduce){.inst-kpis li,.people-kpis li,.app-sidebar a,.btn{transition:none!important;transform:none!important}}.cc-board{display:grid;gap:16px;background:radial-gradient(900px 320px at 0% 0%,#dbeafe55,transparent 55%),radial-gradient(700px 280px at 100% 0%,#e0e7ff44,transparent 50%),transparent}.cc-hero{display:grid;grid-template-columns:minmax(0,1.6fr) auto;gap:16px;align-items:center;padding:18px 20px;border:1px solid #dbeafe;background:linear-gradient(135deg,#fff,#eff6ff);box-shadow:0 10px 24px #2563eb12}.cc-hero-copy{display:flex;gap:14px;align-items:flex-start;min-width:0}.cc-hero-ico{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:#dbeafe;color:#1d4ed8;flex:none}.cc-hero-title{margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:clamp(1.3rem,2vw,1.65rem);color:var(--navy)}.cc-hero-badge{display:inline-flex;padding:4px 10px;border-radius:999px;background:#dbeafe;color:#1d4ed8;font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.02em}.cc-hero-lede{margin:6px 0 0;color:var(--muted);max-width:56ch;line-height:1.45}.cc-hero-aside{display:grid;justify-items:end;gap:8px;color:var(--navy);padding:12px 14px;border-radius:14px;border:1px solid #dbeafe;background:linear-gradient(180deg,#fff,#eff6ff);box-shadow:0 6px 14px #2563eb0f;min-width:11rem}.cc-hero-aside strong{font-size:.95rem}.cc-hero-year-chip{display:inline-flex;padding:4px 10px;border-radius:999px;background:#dbeafe;color:#1d4ed8;font-size:.72rem;font-weight:700}.cc-board .cc-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.cc-step{border:1px solid #dbe3f0;background:#fff;border-radius:14px;padding:12px 14px;font-weight:650;color:#334155;text-align:left;cursor:pointer;display:flex;align-items:center;gap:10px;box-shadow:0 4px 12px #0f172a08}.cc-step-n{width:28px;height:28px;border-radius:999px;display:grid;place-items:center;background:#f1f5f9;color:#475569;font-size:.82rem;font-weight:800;flex:none}.cc-step.on{border-color:#2563eb;background:#eff6ff;color:#1d4ed8;box-shadow:0 0 0 1px #2563eb33,0 8px 18px #2563eb1f}.cc-step.on .cc-step-n{background:#2563eb;color:#fff}.cc-step.muted{opacity:.72}.cc-programme-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 20px;padding:14px 16px;border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 8px 20px #0f172a0d}.cc-programme-identity{display:flex;align-items:flex-start;gap:12px;min-width:min(100%,280px);flex:1 1 260px}.cc-programme-mark{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;flex:none;background:#7c3aed;color:#fff;box-shadow:0 6px 14px #7c3aed47}.cc-programme-mark .nav-ico{width:20px;height:20px;color:#fff}.cc-programme-copy{display:grid;gap:4px;min-width:0}.cc-programme-title-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px}.cc-programme-name{margin:0;font-size:1.05rem;font-weight:800;color:var(--navy);line-height:1.25}.cc-programme-pill{display:inline-flex;padding:3px 10px;border-radius:999px;background:#ede9fe;color:#6d28d9;font-size:.7rem;font-weight:800;letter-spacing:.02em}.cc-programme-meta{margin:0;color:#64748b;font-size:.8rem;font-weight:600;white-space:nowrap}.cc-programme-pick{display:block;margin-top:4px;max-width:22rem}.cc-programme-pick select{width:100%;border:1px solid #e2e8f0;border-radius:8px;padding:6px 10px;background:#f8fafc;color:#334155;font:inherit;font-size:.78rem;font-weight:600}.cc-programme-stats{display:flex;flex-wrap:wrap;align-items:stretch;gap:0;flex:1 1 420px;justify-content:flex-end;border:1px solid #eef2f7;border-radius:12px;background:#fff;overflow:hidden}.cc-stat{display:flex;align-items:center;gap:10px;padding:10px 14px;min-width:7.5rem;flex:1 1 auto;border-right:1px solid #eef2f7}.cc-stat:last-child{border-right:0}.cc-stat>div{display:grid;gap:1px}.cc-stat b{font-size:1.2rem;font-weight:800;color:var(--navy);line-height:1.1}.cc-stat span{font-size:.72rem;font-weight:650;color:#64748b}.cc-stat-ico{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;flex:none}.cc-stat-ico .nav-ico{width:16px;height:16px}.cc-stat.tone-year .cc-stat-ico{background:#dcfce7;color:#15803d}.cc-stat.tone-sem .cc-stat-ico{background:#dbeafe;color:#1d4ed8}.cc-stat.tone-sub .cc-stat-ico{background:#fee2e2;color:#b91c1c}.cc-stat.tone-topic .cc-stat-ico{background:#ffedd5;color:#c2410c}.cc-stat.tone-content .cc-stat-ico{background:#ede9fe;color:#6d28d9}.cc-main-tabs{display:flex;gap:8px;border-bottom:1px solid #e2e8f0;padding-bottom:0}.cc-main-tabs button{border:0;background:transparent;padding:10px 14px;font-weight:700;color:#64748b;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px}.cc-main-tabs button.on{color:#1d4ed8;border-bottom-color:#2563eb}.cc-workspace{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.95fr);gap:16px;align-items:start}.cc-tree-tools{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:10px;align-items:center}.cc-tree-tools input{flex:1 1 16rem;min-width:12rem;border:1px solid #dbe3f0;border-radius:10px;padding:9px 12px;background:#fff}.cc-overview{padding:16px;display:grid;gap:12px}.cc-overview h3{margin:0}.cc-overview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}.cc-overview-grid div{border:1px solid #e2e8f0;border-radius:12px;padding:10px 12px;background:#f8fafc}.cc-overview-grid dt{font-size:.72rem;color:#64748b;font-weight:700;text-transform:uppercase}.cc-overview-grid dd{margin:4px 0 0;font-weight:700;color:var(--navy)}.cc-form-pane{position:sticky;top:12px;padding:16px;border-radius:16px;border:1px solid #e2e8f0;background:#fff;box-shadow:0 10px 24px #0f172a0d}.cc-form-idle{display:grid;gap:12px}.cc-form-idle ol{margin:0;padding-left:1.2rem;color:#475569}.cc-side-form{display:grid;gap:12px}.cc-side-form-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.cc-side-form-head h3{margin:0;font-size:1.08rem;color:var(--navy)}.cc-side-form-lede{margin:4px 0 0;color:var(--muted);font-size:.86rem}.cc-location{display:grid;gap:8px;padding:12px;border-radius:12px;background:#f8fafc;border:1px solid #e2e8f0;font-size:.85rem}.cc-location>span{color:#64748b;font-weight:700;font-size:.74rem;text-transform:uppercase;letter-spacing:.03em}.cc-location-chips{display:flex;flex-wrap:wrap;gap:6px}.cc-chip{display:inline-flex;padding:4px 10px;border-radius:999px;background:#eff6ff;color:#1d4ed8;font-size:.78rem;font-weight:700}.cc-fields{display:grid;gap:12px}.cc-fields label{display:grid;gap:6px;font-weight:600;font-size:.88rem}.cc-fields input,.cc-fields select,.cc-fields textarea{border:1px solid #dbe3f0;border-radius:10px;padding:9px 11px;font:inherit;background:#fff}.cc-guidelines{border:1px solid #bbf7d0;border-radius:12px;padding:12px 14px;background:#f0fdf4;font-size:.82rem;color:#166534}.cc-guidelines strong{display:block;margin-bottom:4px}.cc-guidelines ul{margin:6px 0 0;padding-left:1.1rem;color:#166534}.cc-side-form-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:8px;border-top:1px solid #eef2f7}.faculty-tree-details{font-size:.8rem;color:#64748b;white-space:nowrap}@media (max-width: 1100px){.cc-programme-stats{justify-content:stretch}.cc-stat{min-width:6.5rem}}@media (max-width: 980px){.cc-board .cc-steps{grid-template-columns:1fr 1fr}.cc-workspace{grid-template-columns:1fr}.cc-form-pane{position:static}.cc-hero{grid-template-columns:1fr}.cc-hero-aside{justify-items:start}.cc-programme-bar{flex-direction:column;align-items:stretch}.cc-programme-stats{justify-content:stretch}}@media (max-width: 640px){.cc-programme-stats{display:grid;grid-template-columns:1fr 1fr}.cc-stat{border-right:0;border-bottom:1px solid #eef2f7}.cc-overview-grid{grid-template-columns:1fr}}.app-shell.is-student-learn .app-sidebar{border-right-color:#dbeafe}.app-shell.is-student-learn .app-sidebar a{border-radius:10px;border-left-width:0;padding-left:14px}.app-shell.is-student-learn .app-sidebar a.on{background:#2563eb;color:#fff;font-weight:700;border-left-color:transparent;box-shadow:0 10px 22px #2563eb47;transform:none}.app-shell.is-student-learn .app-sidebar a.on .nav-ico{color:#fff}.app-shell.is-student-learn .app-sidebar a:hover:not(.on){background:#eff6ff;color:#1d4ed8}.app-shell.is-student-learn .side-label{color:#64748b;letter-spacing:.08em}.app-shell.is-student-learn.is-collapsed .app-sidebar a.on{background:#2563eb}.app-shell.is-student-learn.is-collapsed .app-sidebar a.on .nav-ico{color:#fff}.student-classroom-board{display:grid;gap:var(--space-4);min-width:0}.student-classroom-board .board-hero .hero-stats.student-classroom-kpis{grid-template-columns:repeat(5,minmax(0,1fr));max-width:none;gap:12px}.student-classroom-kpis li{position:relative;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:12px;padding:14px 16px;border-radius:14px;border:1px solid #e2e8f0;box-shadow:0 8px 20px #0f172a0a;background:#fff}.student-classroom-kpi-copy{display:grid;gap:2px;min-width:0}.student-classroom-kpi-copy b{font-size:1.35rem;line-height:1.1;letter-spacing:-.02em}.student-classroom-kpi-copy span{font-size:.78rem;font-weight:600;color:#64748b}.student-classroom-kpi-copy em{font-style:normal;font-size:.72rem;font-weight:700;color:#64748b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.student-classroom-kpi-ico{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#eff6ff;color:#2563eb}.student-classroom-kpi-ico .nav-ico{width:18px;height:18px}.student-classroom-kpis .tone-programme{border-color:#ddd6fe;background:linear-gradient(180deg,#f5f3ff,#fff)}.student-classroom-kpis .tone-programme .student-classroom-kpi-ico{background:#ede9fe;color:#6d28d9}.student-classroom-kpis .tone-programme b{color:#6d28d9}.student-classroom-kpis .tone-courses{border-color:#bfdbfe;background:linear-gradient(180deg,#eff6ff,#fff)}.student-classroom-kpis .tone-courses .student-classroom-kpi-ico{background:#dbeafe;color:#1d4ed8}.student-classroom-kpis .tone-courses b{color:#1d4ed8}.student-classroom-kpis .tone-resources{border-color:#bbf7d0;background:linear-gradient(180deg,#f0fdf4,#fff)}.student-classroom-kpis .tone-resources .student-classroom-kpi-ico{background:#dcfce7;color:#15803d}.student-classroom-kpis .tone-resources b{color:#15803d}.student-classroom-kpis .tone-assess{border-color:#fed7aa;background:linear-gradient(180deg,#fff7ed,#fff)}.student-classroom-kpis .tone-assess .student-classroom-kpi-ico{background:#ffedd5;color:#c2410c}.student-classroom-kpis .tone-assess b{color:#c2410c}.student-classroom-kpis .tone-live{border-color:#fecaca;background:linear-gradient(180deg,#fef2f2,#fff)}.student-classroom-kpis .tone-live .student-classroom-kpi-ico{background:#fee2e2;color:#b91c1c}.student-classroom-kpis .tone-live b{color:#b91c1c}.student-classroom-mark{color:#3b82f6}.student-classroom-programme{display:flex;flex-wrap:wrap;align-items:end;gap:12px;padding:16px 18px;border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 8px 20px #0f172a08}.student-classroom-programme label{flex:1 1 280px;display:grid;gap:6px;font-size:.82rem;font-weight:650;color:#475569}.student-classroom-programme select{min-height:42px;border-radius:10px;border:1px solid #cbd5e1;padding:8px 12px;font:inherit;background:#fff}.student-classroom-programme .btn{min-height:42px;padding:0 18px;border-radius:10px}.classroom.student-classroom{display:grid;grid-template-columns:minmax(240px,280px) minmax(0,1fr) minmax(240px,300px);gap:16px;align-items:start}.student-classroom-nav{padding:16px;border-radius:16px;border:1px solid #e2e8f0;background:#fff;box-shadow:0 8px 20px #0f172a08}.student-classroom-nav h3{margin:0 0 12px;font-size:1rem}.student-classroom-nav .hierarchy-tree ul{border-left-color:#e2e8f0}.student-classroom-nav .tree-subject{width:100%;display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:center;text-align:left;border:1px solid transparent;background:transparent;border-radius:10px;padding:8px 10px;cursor:pointer;color:#0f172a}.student-classroom-nav .tree-subject:hover{background:#f8fafc;border-color:#e2e8f0}.student-classroom-nav .tree-subject.is-open,.student-classroom-nav .tree-subject[aria-current=page]{background:#dbeafe;border-color:#93c5fd;color:#1d4ed8}.tree-subject-ico{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;background:#fee2e2;color:#dc2626}.tree-subject-ico .nav-ico{width:14px;height:14px}.tree-subject-copy{display:grid;gap:1px;min-width:0}.tree-subject-copy strong{font-size:.82rem;letter-spacing:.01em}.tree-subject-copy span{font-size:.78rem;color:#64748b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.student-classroom-nav .tree-subject.is-open .tree-subject-copy span,.student-classroom-nav .tree-subject[aria-current=page] .tree-subject-copy span{color:#1e40af}.student-classroom-main,.student-classroom-rail{display:grid;gap:16px;min-width:0}.student-classroom-card{margin:0;padding:16px 18px;border-radius:16px;border:1px solid #e2e8f0;background:#fff;box-shadow:0 8px 20px #0f172a08}.student-classroom-card h3{margin:0 0 12px;font-size:1rem;color:#0f172a}.student-classroom-card .eyebrow{margin:0 0 4px;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#64748b}.student-current-learning h3{margin-bottom:10px}.student-progress-bar{height:8px;border-radius:999px;background:#e2e8f0;overflow:hidden;margin:4px 0 8px}.student-progress-bar span{display:block;height:100%;background:linear-gradient(90deg,#2563eb,#60a5fa)}.student-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.student-card-head h3{margin:0}.student-card-head .btn.ghost{min-height:32px;padding:4px 10px;font-size:.8rem}.student-resource-list,.student-upcoming-list,.student-quick-actions,.student-progress-legend{list-style:none;margin:0;padding:0;display:grid;gap:10px}.student-resource-list li{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:start;padding:10px 12px;border:1px solid #eef2f7;border-radius:12px;background:#f8fafc}.student-resource-list li.is-open{border-color:#93c5fd;background:#eff6ff}.student-file-ico{width:40px;height:40px;border-radius:10px;display:grid;place-items:center;font-size:.68rem;font-weight:800;letter-spacing:.02em;background:#e2e8f0;color:#334155}.student-file-ico.tone-pdf{background:#fee2e2;color:#b91c1c}.student-file-ico.tone-pptx{background:#ffedd5;color:#c2410c}.student-file-ico.tone-docx{background:#dbeafe;color:#1d4ed8}.student-file-ico.tone-video{background:#ede9fe;color:#6d28d9}.student-file-ico.tone-link{background:#dcfce7;color:#15803d}.student-resource-copy strong{display:block;font-size:.92rem;color:#0f172a}.student-resource-copy p{margin:2px 0 0;font-size:.8rem;color:#64748b}.student-resource-actions{display:grid;gap:6px;justify-items:stretch}.student-resource-actions .btn{min-height:34px;padding:4px 10px;font-size:.8rem}.student-upcoming-list li{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;padding:10px 12px;border:1px solid #eef2f7;border-radius:12px}.student-upcoming-list strong{display:block;font-size:.9rem}.student-upcoming-list p{margin:2px 0 0;font-size:.78rem;color:#64748b}.student-status-pending{background:#ffedd5;color:#c2410c}.student-status-upcoming{background:#dbeafe;color:#1d4ed8}.student-status-submitted{background:#dcfce7;color:#15803d}.student-topic-details{border:1px solid #e2e8f0;border-radius:16px;background:#fff;padding:12px 16px}.student-topic-details summary{cursor:pointer;font-weight:700;color:#1e3a5f}.student-overview-list{display:grid;gap:10px;margin:0}.student-overview-list>div{display:grid;grid-template-columns:110px 1fr;gap:8px;align-items:baseline;padding-bottom:8px;border-bottom:1px solid #f1f5f9}.student-overview-list dt{margin:0;font-size:.78rem;color:#64748b;font-weight:600}.student-overview-list dd{margin:0;font-size:.9rem;font-weight:650;color:#0f172a}.student-progress-donut{width:140px;height:140px;border-radius:50%;margin:8px auto 16px;display:grid;place-items:center}.student-progress-donut-hole{width:96px;height:96px;border-radius:50%;background:#fff;display:grid;place-content:center;text-align:center;gap:2px;box-shadow:inset 0 0 0 1px #e2e8f0}.student-progress-donut-hole b{font-size:1.35rem;color:#1d4ed8;line-height:1}.student-progress-donut-hole span{font-size:.72rem;color:#64748b;font-weight:600}.student-progress-legend li{display:flex;align-items:center;gap:8px;font-size:.82rem;color:#475569}.student-progress-legend .dot{width:10px;height:10px;border-radius:50%;background:#cbd5e1}.student-progress-legend .dot.done{background:#2563eb}.student-progress-legend .dot.progress{background:#60a5fa}.student-progress-legend .dot.idle{background:#e2e8f0}.student-progress-legend .dot.total{background:#94a3b8}.student-quick-actions a{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:10px 12px;border-radius:12px;border:1px solid #eef2f7;text-decoration:none;color:#0f172a;font-weight:600;font-size:.9rem;background:#fff;transition:background .15s ease,border-color .15s ease}.student-quick-actions a:hover{background:#f8fafc;border-color:#cbd5e1}.qa-ico{width:34px;height:34px;border-radius:10px;display:grid;place-items:center}.qa-ico .nav-ico{width:16px;height:16px}.qa-ico.tone-blue{background:#dbeafe;color:#1d4ed8}.qa-ico.tone-orange{background:#ffedd5;color:#c2410c}.qa-ico.tone-violet{background:#ede9fe;color:#6d28d9}.qa-ico.tone-green{background:#dcfce7;color:#15803d}.student-rail-export{margin-top:12px;padding-top:12px;border-top:1px solid #eef2f7}@media (max-width: 1100px){.student-classroom-board .board-hero .hero-stats.student-classroom-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.classroom.student-classroom{grid-template-columns:minmax(220px,260px) minmax(0,1fr)}.student-classroom-rail{grid-column:1 / -1;grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 760px){.student-classroom-board .board-hero .hero-stats.student-classroom-kpis{grid-template-columns:1fr 1fr}.classroom.student-classroom,.student-classroom-rail,.student-resource-list li,.student-upcoming-list li{grid-template-columns:1fr}}.student-courses-board{display:grid;gap:var(--space-4);min-width:0}.student-courses-board .board-hero .hero-stats.student-courses-kpis{grid-template-columns:repeat(4,minmax(0,1fr));max-width:none;gap:12px}.student-courses-kpis li{position:relative;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:12px;padding:14px 16px;border-radius:14px;border:1px solid #e2e8f0;box-shadow:0 8px 20px #0f172a0a;background:#fff}.student-courses-kpis .tone-programme{border-color:#ddd6fe;background:linear-gradient(180deg,#f5f3ff,#fff)}.student-courses-kpis .tone-programme .student-classroom-kpi-ico{background:#ede9fe;color:#6d28d9}.student-courses-kpis .tone-programme b{color:#6d28d9}.student-courses-kpis .tone-courses{border-color:#bfdbfe;background:linear-gradient(180deg,#eff6ff,#fff)}.student-courses-kpis .tone-courses .student-classroom-kpi-ico{background:#dbeafe;color:#1d4ed8}.student-courses-kpis .tone-courses b{color:#1d4ed8}.student-courses-kpis .tone-assess{border-color:#fde68a;background:linear-gradient(180deg,#fffbeb,#fff)}.student-courses-kpis .tone-assess .student-classroom-kpi-ico{background:#fef3c7;color:#b45309}.student-courses-kpis .tone-assess b{color:#b45309}.student-courses-kpis .tone-live{border-color:#bbf7d0;background:linear-gradient(180deg,#f0fdf4,#fff)}.student-courses-kpis .tone-live .student-classroom-kpi-ico{background:#dcfce7;color:#15803d}.student-courses-kpis .tone-live b{color:#15803d}.student-courses-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,300px);gap:16px;align-items:start}.student-courses-main{display:grid;gap:16px;min-width:0}.student-courses-filters{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr)) auto;gap:12px;align-items:end;padding:16px 18px;border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 8px 20px #0f172a08}.student-courses-filters label{display:grid;gap:6px;font-size:.82rem;font-weight:650;color:#475569}.student-courses-filters select,.student-courses-filters input{min-height:42px;border-radius:10px;border:1px solid #cbd5e1;padding:8px 12px;font:inherit;background:#fff}.student-courses-search{grid-column:span 1}.student-courses-filters .btn{min-height:42px;border-radius:10px;white-space:nowrap}.student-courses-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}.student-course-card{margin:0;display:grid;gap:10px;align-content:start;padding:16px;border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 8px 20px #0f172a0a}.student-course-card-top{display:flex;align-items:center;gap:8px}.student-course-code-ico{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;background:#eff6ff;color:#2563eb}.student-course-code-ico .nav-ico{width:16px;height:16px}.student-course-code{font-size:.78rem;font-weight:800;color:#1d4ed8;background:#eff6ff;border-radius:999px;padding:4px 10px}.student-course-card h3{margin:0;font-size:1rem;line-height:1.3;color:#0f172a}.student-course-meta{display:flex;flex-wrap:wrap;gap:6px}.student-course-meta .chip{background:#f1f5f9;color:#475569;border:0;font-size:.72rem;font-weight:650}.student-course-stats{display:flex;gap:12px;margin:0;font-size:.8rem;color:#64748b}.student-course-progress{display:grid;gap:6px}.student-course-progress-row{display:flex;justify-content:space-between;font-size:.78rem;color:#64748b}.student-course-progress-row strong{color:#1d4ed8}.student-course-card .meter{height:7px;border-radius:999px;background:#e2e8f0;overflow:hidden}.student-course-card .meter span{display:block;height:100%;background:#2563eb}.student-course-card .meter.tone-mid span{background:#f59e0b}.student-course-card .meter.tone-good span{background:#2563eb}.student-course-actions{margin-top:4px;display:grid;gap:8px}.student-course-actions .btn{width:100%;justify-content:center}.student-courses-pager{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;align-items:center;padding:12px 16px;border:1px solid #e2e8f0;border-radius:14px;background:#fff;font-size:.85rem;color:#475569}.student-courses-pager-controls{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.student-courses-pager-controls label{display:flex;gap:6px;align-items:center}.student-courses-pager-controls select{min-height:34px;border-radius:8px;border:1px solid #cbd5e1;padding:4px 8px}.student-courses-rail{display:grid;gap:16px;min-width:0}.student-rail-programme{margin:0 0 12px;font-weight:700;color:#0f172a}.student-quick-btn{width:100%;display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:10px 12px;border-radius:12px;border:1px solid #eef2f7;background:#fff;color:#0f172a;font:inherit;font-weight:600;font-size:.9rem;text-align:left;cursor:pointer}.student-quick-btn:hover{background:#f8fafc;border-color:#cbd5e1}@media (max-width: 1100px){.student-courses-board .board-hero .hero-stats.student-courses-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.student-courses-layout{grid-template-columns:1fr}.student-courses-rail{grid-template-columns:repeat(2,minmax(0,1fr))}.student-courses-filters{grid-template-columns:1fr 1fr}.student-courses-filters .btn{grid-column:1 / -1;justify-self:end}}@media (max-width: 640px){.student-courses-board .board-hero .hero-stats.student-courses-kpis,.student-courses-rail,.student-courses-filters{grid-template-columns:1fr}}.student-catalogue-board{display:grid;gap:var(--space-4);min-width:0}.student-catalogue-board .board-hero .hero-stats.student-catalogue-kpis{grid-template-columns:repeat(4,minmax(0,1fr));max-width:none;gap:12px}.student-catalogue-kpis li{position:relative;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:12px;padding:14px 16px;border-radius:14px;border:1px solid #e2e8f0;box-shadow:0 8px 20px #0f172a0a;background:#fff}.student-catalogue-kpis .tone-total{border-color:#ddd6fe;background:linear-gradient(180deg,#f5f3ff,#fff)}.student-catalogue-kpis .tone-total .student-classroom-kpi-ico{background:#ede9fe;color:#6d28d9}.student-catalogue-kpis .tone-total b{color:#6d28d9}.student-catalogue-kpis .tone-enrolled{border-color:#bbf7d0;background:linear-gradient(180deg,#f0fdf4,#fff)}.student-catalogue-kpis .tone-enrolled .student-classroom-kpi-ico{background:#dcfce7;color:#15803d}.student-catalogue-kpis .tone-enrolled b{color:#15803d}.student-catalogue-kpis .tone-open{border-color:#fde68a;background:linear-gradient(180deg,#fffbeb,#fff)}.student-catalogue-kpis .tone-open .student-classroom-kpi-ico{background:#fef3c7;color:#b45309}.student-catalogue-kpis .tone-open b{color:#b45309}.student-catalogue-kpis .tone-live{border-color:#fecaca;background:linear-gradient(180deg,#fef2f2,#fff)}.student-catalogue-kpis .tone-live .student-classroom-kpi-ico{background:#fee2e2;color:#b91c1c}.student-catalogue-kpis .tone-live b{color:#b91c1c}.student-catalogue-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,300px);gap:16px;align-items:start}.student-catalogue-main{display:grid;gap:16px;min-width:0}.student-catalogue-filters{display:grid;grid-template-columns:repeat(4,minmax(110px,1fr)) minmax(160px,1.2fr) auto auto;gap:12px;align-items:end;padding:16px 18px;border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 8px 20px #0f172a08}.student-catalogue-filters label{display:grid;gap:6px;font-size:.82rem;font-weight:650;color:#475569}.student-catalogue-filters select,.student-catalogue-filters input{min-height:42px;border-radius:10px;border:1px solid #cbd5e1;padding:8px 12px;font:inherit;background:#fff}.student-catalogue-filters .btn{min-height:42px;border-radius:10px;white-space:nowrap}.student-catalogue-tabs{display:flex;flex-wrap:wrap;gap:8px}.student-catalogue-tabs button{min-height:38px;padding:8px 14px;border-radius:999px;border:1px solid #e2e8f0;background:#fff;color:#334155;font:inherit;font-size:.85rem;font-weight:650;cursor:pointer}.student-catalogue-tabs button.on{background:#2563eb;border-color:#2563eb;color:#fff}.student-catalogue-toolbar{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;align-items:end}.student-catalogue-toolbar label{display:grid;gap:6px;font-size:.82rem;font-weight:650;color:#475569}.student-catalogue-toolbar select{min-height:38px;border-radius:10px;border:1px solid #cbd5e1;padding:6px 10px;font:inherit}.student-catalogue-view{display:inline-flex;border:1px solid #e2e8f0;border-radius:10px;overflow:hidden;background:#fff}.student-catalogue-view button{min-height:38px;padding:0 14px;border:0;background:transparent;font:inherit;font-weight:650;color:#475569;cursor:pointer}.student-catalogue-view button.on{background:#eff6ff;color:#1d4ed8}.student-catalogue-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}.student-catalogue-list{display:grid;gap:12px}.student-catalogue-list .student-catalogue-card{grid-template-columns:1fr}.student-catalogue-card{margin:0;display:grid;gap:10px;align-content:start;padding:16px;border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 8px 20px #0f172a0a}.student-catalogue-card-top{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.student-catalogue-card-top .chip,.student-catalogue-card-top [class*=status]{margin-left:auto}.student-catalogue-rail{display:grid;gap:16px;min-width:0}.student-facet-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.student-facet-list label{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center;font-size:.85rem;color:#334155;cursor:pointer}.student-facet-list em{font-style:normal;font-size:.78rem;font-weight:700;color:#64748b;background:#f1f5f9;border-radius:999px;padding:2px 8px}@media (max-width: 1100px){.student-catalogue-board .board-hero .hero-stats.student-catalogue-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.student-catalogue-layout{grid-template-columns:1fr}.student-catalogue-rail{grid-template-columns:repeat(3,minmax(0,1fr))}.student-catalogue-filters{grid-template-columns:1fr 1fr}}@media (max-width: 640px){.student-catalogue-board .board-hero .hero-stats.student-catalogue-kpis,.student-catalogue-rail,.student-catalogue-filters{grid-template-columns:1fr}}.student-content-board{display:grid;gap:var(--space-4);min-width:0}.student-content-filters{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr)) auto auto;gap:12px;align-items:end;padding:16px 18px;border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 8px 20px #0f172a08}.student-content-filters label{display:grid;gap:6px;font-size:.82rem;font-weight:650;color:#475569}.student-content-filters select{min-height:42px;border-radius:10px;border:1px solid #cbd5e1;padding:8px 12px;font:inherit;background:#fff}.student-content-filters .btn{min-height:42px;border-radius:10px;white-space:nowrap}.student-content-back{justify-self:start}.student-content-layout{display:grid;grid-template-columns:minmax(260px,320px) minmax(0,1fr);gap:16px;align-items:start}.student-content-structure{padding:16px 18px;border-radius:16px;border:1px solid #e2e8f0;background:#fff;box-shadow:0 8px 20px #0f172a08}.student-content-structure h3{margin:0 0 12px;font-size:1rem}.student-content-course-summary{display:grid;gap:8px;padding:12px;border-radius:12px;background:#f8fafc;border:1px solid #eef2f7;margin-bottom:14px}.student-content-course-summary strong{font-size:.95rem;color:#0f172a}.student-content-timeline{list-style:none;margin:0;padding:0;display:grid;gap:8px;position:relative}.student-content-timeline:before{content:"";position:absolute;left:15px;top:18px;bottom:18px;width:2px;background:#e2e8f0}.student-content-topic-btn{width:100%;display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:start;text-align:left;border:1px solid transparent;background:transparent;border-radius:12px;padding:8px 10px;cursor:pointer;color:#0f172a;position:relative;z-index:1}.student-content-topic-btn:hover{background:#f8fafc;border-color:#e2e8f0}.student-content-timeline .is-current .student-content-topic-btn{background:#dbeafe;border-color:#93c5fd}.student-content-timeline .is-done .student-content-step{background:#dcfce7;color:#15803d;border-color:#86efac}.student-content-step{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-size:.75rem;font-weight:800;background:#eff6ff;color:#1d4ed8;border:2px solid #bfdbfe}.student-content-timeline .is-current .student-content-step{background:#2563eb;color:#fff;border-color:#2563eb}.student-content-topic-copy{display:grid;gap:2px;min-width:0}.student-content-topic-copy strong{font-size:.88rem}.student-content-topic-copy small{color:#64748b;font-size:.75rem}.student-content-course-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.student-content-pane{min-width:0}.student-content-detail{margin:0;padding:18px 20px;border-radius:16px;border:1px solid #e2e8f0;background:#fff;box-shadow:0 8px 20px #0f172a08;display:grid;gap:16px}.student-content-detail-head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;align-items:start}.student-content-title-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.student-content-title-row h3{margin:0;font-size:1.15rem}.student-content-topic-count{margin:0;font-size:.82rem;font-weight:650;color:#64748b;background:#f1f5f9;border-radius:999px;padding:6px 12px}.student-content-pane-tabs{display:flex;flex-wrap:wrap;gap:4px;border-bottom:1px solid #e2e8f0}.student-content-pane-tabs button{min-height:40px;padding:8px 14px;border:0;border-bottom:2px solid transparent;background:transparent;font:inherit;font-size:.88rem;font-weight:650;color:#64748b;cursor:pointer;margin-bottom:-1px}.student-content-pane-tabs button.on{color:#1d4ed8;border-bottom-color:#2563eb}.student-content-resources,.student-content-assess-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}.student-content-resources>li{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:start;padding:12px;border:1px solid #eef2f7;border-radius:12px;background:#f8fafc}.student-content-resources>li.is-open{border-color:#93c5fd;background:#eff6ff}.student-content-assess-list>li{padding:12px;border:1px solid #eef2f7;border-radius:12px;background:#f8fafc;display:grid;gap:8px}.student-content-notes{padding:14px 16px;border-radius:12px;background:#f8fafc;border:1px solid #eef2f7}.student-content-notes h4{margin:0 0 6px;font-size:.92rem}.student-content-notes p{margin:0;color:#475569;font-size:.9rem}.student-content-kpis{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.student-content-kpis li{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:center;padding:12px;border-radius:12px;border:1px solid #e2e8f0;background:#fff}.student-content-kpis b{display:block;font-size:.95rem;color:#0f172a}.student-content-kpis span{font-size:.75rem;color:#64748b;font-weight:600}.student-content-kpis .tone-resources{border-color:#fed7aa;background:linear-gradient(180deg,#fff7ed,#fff)}.student-content-kpis .tone-assess{border-color:#bbf7d0;background:linear-gradient(180deg,#f0fdf4,#fff)}.student-content-kpis .tone-courses{border-color:#bfdbfe;background:linear-gradient(180deg,#eff6ff,#fff)}.student-content-kpis .tone-enrolled{border-color:#bbf7d0;background:linear-gradient(180deg,#f0fdf4,#fff)}.student-content-kpis .tone-open{border-color:#fde68a;background:linear-gradient(180deg,#fffbeb,#fff)}.student-content-pager{justify-content:space-between;border-top:1px solid #eef2f7;padding-top:12px}@media (max-width: 980px){.student-content-layout{grid-template-columns:1fr}.student-content-filters,.student-content-kpis{grid-template-columns:1fr 1fr}}@media (max-width: 640px){.student-content-filters,.student-content-kpis{grid-template-columns:1fr}.student-content-resources>li{grid-template-columns:1fr}}.student-module-board{display:grid;gap:var(--space-4);min-width:0}.student-module-hero{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(220px,.8fr);gap:20px;align-items:center;padding:18px 20px;border-radius:16px;border:1px solid #bfdbfe;background:linear-gradient(135deg,#eff6ff,#fff 55%,#f8fafc);box-shadow:0 8px 20px #0f172a0a;margin:0}.student-module-hero-copy{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:start}.student-module-hero-ico{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:#dbeafe;color:#1d4ed8}.student-module-hero-ico .nav-ico{width:22px;height:22px}.student-module-hero h2{margin:0;font-size:1.25rem;color:#0f172a}.student-module-hero-progress{display:grid;gap:8px;padding:14px 16px;border-radius:14px;background:#fff;border:1px solid #e2e8f0}.student-module-layout{display:grid;grid-template-columns:minmax(240px,280px) minmax(0,1fr) minmax(240px,300px);gap:16px;align-items:start}.student-module-rail{display:grid;gap:16px;min-width:0}.student-module-topic-search{display:block;margin-bottom:12px}.student-module-topic-search input{width:100%;min-height:40px;border-radius:10px;border:1px solid #cbd5e1;padding:8px 12px;font:inherit;background:#fff}.student-module-pick{padding:12px;border:1px solid #e2e8f0;border-radius:16px;background:#fff;list-style:none;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}.student-module-pick .tree-subject{width:100%;display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:center;margin:0;padding:10px 12px;text-align:left;font:inherit;color:#0f172a;background:#fff;border:1px solid #e2e8f0;border-radius:12px;cursor:pointer}.student-module-pick .tree-subject:hover,.student-module-pick .tree-subject:focus-visible{background:#eff6ff;border-color:#93c5fd}.student-module-pick .tree-subject-ico{background:#dbeafe;color:#1d4ed8}@media (max-width: 1360px){.student-module-layout{grid-template-columns:minmax(220px,260px) minmax(0,1fr)}.student-module-rail{grid-column:1 / -1;grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 760px){.student-module-hero,.student-module-layout,.student-module-rail{grid-template-columns:1fr}}.student-assess-board{display:grid;gap:var(--space-4);min-width:0}.student-assess-board .board-hero .hero-stats.student-assess-kpis{grid-template-columns:repeat(5,minmax(0,1fr));max-width:none;gap:12px}.student-assess-kpis li{position:relative;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:12px;padding:14px 16px;border-radius:14px;border:1px solid #e2e8f0;box-shadow:0 8px 20px #0f172a0a;background:#fff}.student-assess-kpis .tone-total{border-color:#bfdbfe;background:linear-gradient(180deg,#eff6ff,#fff)}.student-assess-kpis .tone-total .student-classroom-kpi-ico{background:#dbeafe;color:#1d4ed8}.student-assess-kpis .tone-total b{color:#1d4ed8}.student-assess-kpis .tone-pending{border-color:#fde68a;background:linear-gradient(180deg,#fffbeb,#fff)}.student-assess-kpis .tone-pending .student-classroom-kpi-ico{background:#fef3c7;color:#b45309}.student-assess-kpis .tone-pending b{color:#b45309}.student-assess-kpis .tone-progress{border-color:#ddd6fe;background:linear-gradient(180deg,#f5f3ff,#fff)}.student-assess-kpis .tone-progress .student-classroom-kpi-ico{background:#ede9fe;color:#6d28d9}.student-assess-kpis .tone-progress b{color:#6d28d9}.student-assess-kpis .tone-done{border-color:#bbf7d0;background:linear-gradient(180deg,#f0fdf4,#fff)}.student-assess-kpis .tone-done .student-classroom-kpi-ico{background:#dcfce7;color:#15803d}.student-assess-kpis .tone-done b{color:#15803d}.student-assess-kpis .tone-overdue{border-color:#fecaca;background:linear-gradient(180deg,#fef2f2,#fff)}.student-assess-kpis .tone-overdue .student-classroom-kpi-ico{background:#fee2e2;color:#b91c1c}.student-assess-kpis .tone-overdue b{color:#b91c1c}.student-assess-filters{display:grid;grid-template-columns:repeat(4,minmax(110px,1fr)) minmax(160px,1.2fr) auto;gap:12px;align-items:end;padding:16px 18px;border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 8px 20px #0f172a08}.student-assess-filters label{display:grid;gap:6px;font-size:.82rem;font-weight:650;color:#475569}.student-assess-filters select,.student-assess-filters input{min-height:42px;border-radius:10px;border:1px solid #cbd5e1;padding:8px 12px;font:inherit;background:#fff}.student-assess-filters .btn{min-height:42px;border-radius:10px;white-space:nowrap}.student-assess-group{border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 8px 20px #0f172a08;overflow:hidden}.student-assess-group-head{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid #eef2f7}.student-assess-group-head h3{margin:0;font-size:.95rem}.student-assess-group-head span{font-size:.78rem;font-weight:700;color:#64748b;background:#f1f5f9;border-radius:999px;padding:2px 10px}.student-assess-group.tone-overdue .student-assess-group-head{background:#fef2f2;border-bottom-color:#fecaca}.student-assess-group.tone-pending .student-assess-group-head{background:#fffbeb;border-bottom-color:#fde68a}.student-assess-group.tone-progress .student-assess-group-head{background:#f5f3ff;border-bottom-color:#ddd6fe}.student-assess-group.tone-done .student-assess-group-head{background:#f0fdf4;border-bottom-color:#bbf7d0}.student-assess-list,.student-assess-grid{display:grid;gap:12px;padding:14px 16px}.student-assess-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.student-assess-card{display:grid;gap:8px;padding:14px 16px;border:1px solid #eef2f7;border-radius:14px;background:#f8fafc}.student-assess-card-top{display:flex;justify-content:space-between;gap:8px;align-items:center}.student-assess-card h4{margin:0;font-size:1rem;color:#0f172a}.student-assess-status.tone-overdue{background:#fee2e2;color:#b91c1c}.student-assess-status.tone-pending{background:#fef3c7;color:#b45309}.student-assess-status.tone-progress{background:#ede9fe;color:#6d28d9}.student-assess-status.tone-done{background:#dcfce7;color:#15803d}.student-assess-table-wrap{overflow-x:auto;padding:8px 12px 16px}.student-assess-table{width:100%;border-collapse:collapse}.student-assess-table th,.student-assess-table td{text-align:left;padding:12px 10px;border-bottom:1px solid #eef2f7;vertical-align:top;font-size:.9rem}.student-assess-table th{font-size:.72rem;letter-spacing:.04em;text-transform:uppercase;color:#64748b;background:#f8fafc}.student-assess-table td p{margin:2px 0 0;font-size:.78rem}@media (max-width: 1100px){.student-assess-board .board-hero .hero-stats.student-assess-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.student-assess-filters{grid-template-columns:1fr 1fr}}@media (max-width: 640px){.student-assess-board .board-hero .hero-stats.student-assess-kpis,.student-assess-filters{grid-template-columns:1fr}}.student-assign-board{display:grid;gap:var(--space-4);min-width:0}.student-assign-board .board-hero .hero-stats.student-assign-kpis{grid-template-columns:repeat(4,minmax(0,1fr));max-width:none;gap:12px}.student-assign-kpis li{position:relative;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:12px;padding:14px 16px;border-radius:14px;border:1px solid #e2e8f0;box-shadow:0 8px 20px #0f172a0a;background:#fff}.student-assign-kpis .tone-total{border-color:#bfdbfe;background:linear-gradient(180deg,#eff6ff,#fff)}.student-assign-kpis .tone-total .student-classroom-kpi-ico{background:#dbeafe;color:#1d4ed8}.student-assign-kpis .tone-total b{color:#1d4ed8}.student-assign-kpis .tone-pending{border-color:#fde68a;background:linear-gradient(180deg,#fffbeb,#fff)}.student-assign-kpis .tone-pending .student-classroom-kpi-ico{background:#fef3c7;color:#b45309}.student-assign-kpis .tone-pending b{color:#b45309}.student-assign-kpis .tone-submitted{border-color:#bfdbfe;background:linear-gradient(180deg,#f0f7ff,#fff)}.student-assign-kpis .tone-submitted .student-classroom-kpi-ico{background:#dbeafe;color:#1d4ed8}.student-assign-kpis .tone-submitted b{color:#1d4ed8}.student-assign-kpis .tone-graded{border-color:#bbf7d0;background:linear-gradient(180deg,#f0fdf4,#fff)}.student-assign-kpis .tone-graded .student-classroom-kpi-ico{background:#dcfce7;color:#15803d}.student-assign-kpis .tone-graded b{color:#15803d}.student-assign-filters{display:grid;grid-template-columns:repeat(4,minmax(110px,1fr)) minmax(160px,1.2fr) auto;gap:12px;align-items:end;padding:16px 18px;border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 8px 20px #0f172a08}.student-assign-filters label{display:grid;gap:6px;font-size:.82rem;font-weight:650;color:#475569}.student-assign-filters select,.student-assign-filters input{min-height:42px;border-radius:10px;border:1px solid #cbd5e1;padding:8px 12px;font:inherit;background:#fff}.student-assign-filters .btn{min-height:42px;border-radius:10px;white-space:nowrap}.student-assign-table-wrap{margin:0;padding:0;overflow-x:auto;border-radius:16px;border:1px solid #e2e8f0;background:#fff;box-shadow:0 8px 20px #0f172a08}.student-assign-table{width:100%;border-collapse:collapse}.student-assign-table th,.student-assign-table td{text-align:left;padding:14px 12px;border-bottom:1px solid #eef2f7;vertical-align:top;font-size:.9rem}.student-assign-table th{font-size:.72rem;letter-spacing:.04em;text-transform:uppercase;color:#64748b;background:#f8fafc}.student-assign-table td p{margin:4px 0 0;font-size:.8rem}.student-assign-table tr.is-selected td{background:#eff6ff}.student-assign-table .btn{min-height:34px;padding:4px 12px;font-size:.82rem}.student-assign-submit{margin:0;padding:18px 20px;border-radius:16px;border:1px solid #e2e8f0;background:#fff;box-shadow:0 8px 20px #0f172a08;display:grid;gap:12px}.student-assign-submit h3{margin:0}.student-assign-submit-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.student-assign-submit-grid label{display:grid;gap:6px;font-size:.82rem;font-weight:650;color:#475569}.student-assign-submit-grid input,.student-assign-submit-grid textarea{min-height:42px;border-radius:10px;border:1px solid #cbd5e1;padding:8px 12px;font:inherit;background:#fff}.student-assign-submission{grid-column:1 / -1}.student-assign-submission textarea{min-height:140px;resize:vertical}.student-assign-submit-actions{display:flex;justify-content:flex-end}@media (max-width: 980px){.student-assign-board .board-hero .hero-stats.student-assign-kpis{grid-template-columns:1fr 1fr}.student-assign-filters,.student-assign-submit-grid{grid-template-columns:1fr}}.student-grades-board{display:grid;gap:var(--space-4);min-width:0}.student-grades-board .board-hero .hero-stats.student-grades-kpis{grid-template-columns:repeat(4,minmax(0,1fr));max-width:none;gap:12px}.student-grades-kpis li{position:relative;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:12px;padding:14px 16px;border-radius:14px;border:1px solid #e2e8f0;box-shadow:0 8px 20px #0f172a0a;background:#fff}.student-grades-kpis .tone-total{border-color:#bbf7d0;background:linear-gradient(180deg,#f0fdf4,#fff)}.student-grades-kpis .tone-total .student-classroom-kpi-ico{background:#dcfce7;color:#15803d}.student-grades-kpis .tone-total b{color:#15803d}.student-grades-kpis .tone-graded{border-color:#fed7aa;background:linear-gradient(180deg,#fff7ed,#fff)}.student-grades-kpis .tone-graded .student-classroom-kpi-ico{background:#ffedd5;color:#c2410c}.student-grades-kpis .tone-graded b{color:#c2410c}.student-grades-kpis .tone-pending{border-color:#bfdbfe;background:linear-gradient(180deg,#eff6ff,#fff)}.student-grades-kpis .tone-pending .student-classroom-kpi-ico{background:#dbeafe;color:#1d4ed8}.student-grades-kpis .tone-pending b{color:#1d4ed8}.student-grades-kpis .tone-missing{border-color:#fecaca;background:linear-gradient(180deg,#fef2f2,#fff)}.student-grades-kpis .tone-missing .student-classroom-kpi-ico{background:#fee2e2;color:#b91c1c}.student-grades-kpis .tone-missing b{color:#b91c1c}.student-grades-filters{display:grid;grid-template-columns:repeat(4,minmax(110px,1fr)) minmax(160px,1.2fr) auto;gap:12px;align-items:end;padding:16px 18px;border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 8px 20px #0f172a08}.student-grades-filters label{display:grid;gap:6px;font-size:.82rem;font-weight:650;color:#475569}.student-grades-filters select,.student-grades-filters input{min-height:42px;border-radius:10px;border:1px solid #cbd5e1;padding:8px 12px;font:inherit;background:#fff}.student-grades-filters .btn{min-height:42px;border-radius:10px;white-space:nowrap}.student-grades-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,300px);gap:16px;align-items:start}.student-grades-main{display:grid;gap:16px;min-width:0}.student-grades-table-wrap{margin:0;padding:0;overflow-x:auto;border-radius:16px;border:1px solid #e2e8f0;background:#fff;box-shadow:0 8px 20px #0f172a08}.student-grades-table{width:100%;border-collapse:collapse}.student-grades-table th,.student-grades-table td{text-align:left;padding:14px 12px;border-bottom:1px solid #eef2f7;vertical-align:top;font-size:.9rem}.student-grades-table th{font-size:.72rem;letter-spacing:.04em;text-transform:uppercase;color:#64748b;background:#f8fafc}.student-grades-table td p{margin:4px 0 0;font-size:.8rem}.student-grades-table .btn{min-height:34px;padding:4px 12px;font-size:.82rem;white-space:nowrap}.student-grades-rail{display:grid;gap:16px;min-width:0}.student-grades-recent{list-style:none;margin:0;padding:0;display:grid;gap:10px}.student-grades-recent li{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:10px 12px;border:1px solid #eef2f7;border-radius:12px;background:#f8fafc}.student-grades-recent strong{display:block;font-size:.88rem}.student-grades-recent p{margin:2px 0 0;font-size:.75rem}.student-grades-score{font-weight:800;color:#1d4ed8;background:#eff6ff;border-radius:999px;padding:4px 10px;font-size:.82rem;white-space:nowrap}@media (max-width: 1100px){.student-grades-layout{grid-template-columns:1fr}.student-grades-rail{grid-template-columns:repeat(3,minmax(0,1fr))}.student-grades-board .board-hero .hero-stats.student-grades-kpis,.student-grades-filters{grid-template-columns:1fr 1fr}}@media (max-width: 640px){.student-grades-rail,.student-grades-board .board-hero .hero-stats.student-grades-kpis,.student-grades-filters{grid-template-columns:1fr}}.student-attend-board{display:grid;gap:var(--space-4);min-width:0}.student-attend-board .board-hero .hero-stats.student-attend-kpis{grid-template-columns:repeat(4,minmax(0,1fr));max-width:none;gap:12px}.student-attend-kpis li{position:relative;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:12px;padding:14px 16px;border-radius:14px;border:1px solid #e2e8f0;box-shadow:0 8px 20px #0f172a0a;background:#fff}.student-attend-kpis .tone-total{border-color:#bbf7d0;background:linear-gradient(180deg,#f0fdf4,#fff)}.student-attend-kpis .tone-total .student-classroom-kpi-ico{background:#dcfce7;color:#15803d}.student-attend-kpis .tone-total b{color:#15803d}.student-attend-kpis .tone-present{border-color:#bfdbfe;background:linear-gradient(180deg,#eff6ff,#fff)}.student-attend-kpis .tone-present .student-classroom-kpi-ico{background:#dbeafe;color:#1d4ed8}.student-attend-kpis .tone-present b,.student-attend-kpis .tone-present em{color:#1d4ed8}.student-attend-kpis .tone-absent{border-color:#fde68a;background:linear-gradient(180deg,#fffbeb,#fff)}.student-attend-kpis .tone-absent .student-classroom-kpi-ico{background:#fef3c7;color:#b45309}.student-attend-kpis .tone-absent b,.student-attend-kpis .tone-absent em{color:#b45309}.student-attend-kpis .tone-unmarked{border-color:#fecaca;background:linear-gradient(180deg,#fef2f2,#fff)}.student-attend-kpis .tone-unmarked .student-classroom-kpi-ico{background:#fee2e2;color:#b91c1c}.student-attend-kpis .tone-unmarked b,.student-attend-kpis .tone-unmarked em{color:#b91c1c}.student-attend-filters{display:grid;grid-template-columns:repeat(4,minmax(100px,1fr)) minmax(120px,.9fr) minmax(120px,.9fr) auto;gap:12px;align-items:end;padding:16px 18px;border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 8px 20px #0f172a08}.student-attend-filters label{display:grid;gap:6px;font-size:.82rem;font-weight:650;color:#475569}.student-attend-filters select,.student-attend-filters input{min-height:42px;border-radius:10px;border:1px solid #cbd5e1;padding:8px 12px;font:inherit;background:#fff}.student-attend-filters .btn{min-height:42px;border-radius:10px;white-space:nowrap}.student-attend-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,300px);gap:16px;align-items:start}.student-attend-main{display:grid;gap:16px;min-width:0}.student-attend-table-wrap{margin:0;padding:0;overflow-x:auto;border-radius:16px;border:1px solid #e2e8f0;background:#fff;box-shadow:0 8px 20px #0f172a08}.student-attend-table{width:100%;border-collapse:collapse}.student-attend-table th,.student-attend-table td{text-align:left;padding:12px 10px;border-bottom:1px solid #eef2f7;vertical-align:top;font-size:.88rem}.student-attend-table th{font-size:.72rem;letter-spacing:.04em;text-transform:uppercase;color:#64748b;background:#f8fafc}.student-attend-rail{display:grid;gap:16px;min-width:0}.student-attend-cal-month{display:block;margin-bottom:10px}.student-attend-cal-month input{width:100%;min-height:38px;border-radius:10px;border:1px solid #cbd5e1;padding:6px 10px;font:inherit}.student-attend-cal{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.student-attend-cal-head{text-align:center;font-size:.7rem;font-weight:700;color:#64748b;padding:4px 0}.student-attend-cal-cell{aspect-ratio:1;display:grid;place-items:center;border-radius:8px;font-size:.75rem;font-weight:650;color:#334155;background:#f8fafc;border:1px solid transparent}.student-attend-cal-cell.is-empty{background:transparent}.student-attend-cal-cell.is-present{background:#dcfce7;color:#15803d;border-color:#86efac}.student-attend-cal-cell.is-absent{background:#fee2e2;color:#b91c1c;border-color:#fca5a5}.student-attend-cal-cell.is-unmarked{background:#fef3c7;color:#b45309;border-color:#fde68a}@media (max-width: 1100px){.student-attend-layout{grid-template-columns:1fr}.student-attend-rail{grid-template-columns:repeat(3,minmax(0,1fr))}.student-attend-board .board-hero .hero-stats.student-attend-kpis,.student-attend-filters{grid-template-columns:1fr 1fr}}@media (max-width: 640px){.student-attend-rail,.student-attend-board .board-hero .hero-stats.student-attend-kpis,.student-attend-filters{grid-template-columns:1fr}}.student-progress-board{display:grid;gap:var(--space-4);min-width:0}.student-progress-board .board-hero .hero-stats.student-progress-kpis{grid-template-columns:repeat(4,minmax(0,1fr));max-width:none;gap:12px}.student-progress-kpis li{position:relative;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:12px;padding:14px 16px;border-radius:14px;border:1px solid #e2e8f0;box-shadow:0 8px 20px #0f172a0a;background:#fff}.student-progress-kpis .tone-total{border-color:#bfdbfe;background:linear-gradient(180deg,#eff6ff,#fff)}.student-progress-kpis .tone-total .student-classroom-kpi-ico{background:#dbeafe;color:#1d4ed8}.student-progress-kpis .tone-total b{color:#1d4ed8}.student-progress-kpis .tone-progress{border-color:#bbf7d0;background:linear-gradient(180deg,#f0fdf4,#fff)}.student-progress-kpis .tone-progress .student-classroom-kpi-ico{background:#dcfce7;color:#15803d}.student-progress-kpis .tone-progress b{color:#15803d}.student-progress-kpis .tone-done{border-color:#ddd6fe;background:linear-gradient(180deg,#f5f3ff,#fff)}.student-progress-kpis .tone-done .student-classroom-kpi-ico{background:#ede9fe;color:#6d28d9}.student-progress-kpis .tone-done b{color:#6d28d9}.student-progress-kpis .tone-idle{border-color:#fed7aa;background:linear-gradient(180deg,#fff7ed,#fff)}.student-progress-kpis .tone-idle .student-classroom-kpi-ico{background:#ffedd5;color:#c2410c}.student-progress-kpis .tone-idle b{color:#c2410c}.student-progress-filters{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr)) auto;gap:12px;align-items:end;padding:16px 18px;border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 8px 20px #0f172a08}.student-progress-filters label{display:grid;gap:6px;font-size:.82rem;font-weight:650;color:#475569}.student-progress-filters select{min-height:42px;border-radius:10px;border:1px solid #cbd5e1;padding:8px 12px;font:inherit;background:#fff}.student-progress-filters .btn{min-height:42px;border-radius:10px;white-space:nowrap}.student-progress-toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}.student-progress-toolbar .student-catalogue-tabs{margin:0}.student-progress-toolbar .btn{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.student-progress-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,300px);gap:16px;align-items:start}.student-progress-main{display:grid;gap:16px;min-width:0}.student-progress-table-wrap{margin:0;padding:0;overflow-x:auto;border-radius:16px;border:1px solid #e2e8f0;background:#fff;box-shadow:0 8px 20px #0f172a08}.student-progress-table{width:100%;border-collapse:collapse}.student-progress-table th,.student-progress-table td{text-align:left;padding:12px 10px;border-bottom:1px solid #eef2f7;vertical-align:middle;font-size:.88rem}.student-progress-table th{font-size:.72rem;letter-spacing:.04em;text-transform:uppercase;color:#64748b;background:#f8fafc}.student-progress-table td p{margin:4px 0 0;font-size:.78rem}.student-progress-table .btn{min-height:34px;padding:4px 12px;font-size:.82rem;white-space:nowrap}.student-progress-meter{display:grid;grid-template-columns:minmax(80px,1fr) auto;gap:10px;align-items:center;min-width:140px}.student-progress-meter .meter{height:8px;border-radius:999px;background:#e2e8f0;overflow:hidden}.student-progress-meter .meter>span{display:block;height:100%;border-radius:inherit;background:#94a3b8}.student-progress-meter .meter.tone-mid>span{background:#f59e0b}.student-progress-meter .meter.tone-good>span{background:#16a34a}.student-progress-meter strong{font-size:.82rem;color:#334155}.student-progress-rail{display:grid;gap:16px;min-width:0}.student-progress-activity{list-style:none;margin:0;padding:0;display:grid;gap:10px}.student-progress-activity li{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:start;padding:10px 12px;border:1px solid #eef2f7;border-radius:12px;background:#f8fafc}.student-progress-activity-ico{width:34px;height:34px;border-radius:999px;display:grid;place-items:center;background:#dbeafe;color:#1d4ed8}.student-progress-activity strong{display:block;font-size:.88rem}.student-progress-activity p,.student-progress-activity span{margin:2px 0 0;font-size:.75rem}@media (max-width: 1100px){.student-progress-layout{grid-template-columns:1fr}.student-progress-rail{grid-template-columns:repeat(2,minmax(0,1fr))}.student-progress-board .board-hero .hero-stats.student-progress-kpis,.student-progress-filters{grid-template-columns:1fr 1fr}}@media (max-width: 640px){.student-progress-rail,.student-progress-board .board-hero .hero-stats.student-progress-kpis,.student-progress-filters{grid-template-columns:1fr}}.student-announce-board{display:grid;gap:var(--space-4);min-width:0}.student-announce-filters{display:grid;grid-template-columns:repeat(4,minmax(110px,1fr)) minmax(180px,1.2fr);gap:12px;align-items:end;padding:16px 18px;border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 8px 20px #0f172a08}.student-announce-filters label{display:grid;gap:6px;font-size:.82rem;font-weight:650;color:#475569}.student-announce-filters select,.student-announce-filters input{min-height:42px;border-radius:10px;border:1px solid #cbd5e1;padding:8px 12px;font:inherit;background:#fff;width:100%}.student-announce-search-wrap{position:relative;display:block}.student-announce-search-ico{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#64748b;pointer-events:none}.student-announce-search-ico .nav-ico{width:16px;height:16px}.student-announce-search input{padding-left:36px}.student-announce-toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}.student-announce-toolbar .student-catalogue-tabs{margin:0}.student-announce-sort{display:grid;gap:4px;font-size:.78rem;font-weight:650;color:#475569}.student-announce-sort select{min-height:38px;border-radius:999px;border:1px solid #cbd5e1;padding:6px 12px;font:inherit;background:#fff}.student-announce-list{list-style:none;margin:0;padding:0;display:grid;gap:12px}.student-announce-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:14px;align-items:center;padding:16px 18px;border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 8px 20px #0f172a08}.student-announce-ico{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;flex-shrink:0}.student-announce-ico .nav-ico{width:20px;height:20px}.student-announce-ico.tone-academic{background:#dbeafe;color:#1d4ed8}.student-announce-ico.tone-examination{background:#fee2e2;color:#b91c1c}.student-announce-ico.tone-events{background:#dcfce7;color:#15803d}.student-announce-ico.tone-general{background:#ede9fe;color:#6d28d9}.student-announce-copy{min-width:0}.student-announce-title-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:4px}.student-announce-title-row strong{font-size:.98rem;color:#0f172a}.student-announce-copy p{margin:0;color:#64748b;font-size:.88rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.student-announce-cat.tone-academic{background:#eff6ff;color:#1d4ed8}.student-announce-cat.tone-examination{background:#fef2f2;color:#b91c1c}.student-announce-cat.tone-events{background:#f0fdf4;color:#15803d}.student-announce-cat.tone-general{background:#f5f3ff;color:#6d28d9}.student-announce-when{white-space:nowrap;font-size:.8rem}.student-announce-card .btn{min-height:36px;white-space:nowrap}.student-announce-pager{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;padding:8px 4px}.student-announce-pages{display:flex;gap:6px;align-items:center}.student-announce-pages .btn{min-width:36px;min-height:36px;padding:0 10px;border-radius:10px}.student-announce-pager label{display:flex;gap:8px;align-items:center;font-size:.82rem;color:#475569}.student-announce-pager select{min-height:36px;border-radius:10px;border:1px solid #cbd5e1;padding:4px 10px;font:inherit}.student-announce-detail-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a59;display:grid;place-items:center;z-index:40;padding:24px}.student-announce-detail{width:min(520px,100%);max-height:min(80vh,640px);overflow:auto;padding:20px 22px;border-radius:16px;background:#fff;box-shadow:0 24px 48px #0f172a2e}.student-announce-detail-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px}.student-announce-detail h3{margin:0 0 6px;font-size:1.15rem}.student-announce-detail-body{margin:14px 0 0;white-space:pre-wrap;color:#334155;line-height:1.55}@media (max-width: 1100px){.student-announce-filters{grid-template-columns:1fr 1fr}.student-announce-card{grid-template-columns:auto minmax(0,1fr)}.student-announce-when,.student-announce-card .btn{grid-column:2}}@media (max-width: 640px){.student-announce-filters{grid-template-columns:1fr}}.student-messaging-board{display:grid;gap:var(--space-4);min-width:0}.student-messaging-main-tabs{display:flex;gap:4px;border-bottom:1px solid #e2e8f0}.student-messaging-main-tabs button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;padding:10px 16px;font:inherit;font-weight:650;color:#64748b;cursor:pointer;border-bottom:3px solid transparent;margin-bottom:-1px;display:inline-flex;align-items:center;gap:8px}.student-messaging-main-tabs button.on{color:#1d4ed8;border-bottom-color:#2563eb}.student-messaging-tab-count{min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#e2e8f0;color:#475569;font-size:.72rem;font-weight:700;display:inline-grid;place-items:center}.student-messaging-main-tabs button.on .student-messaging-tab-count{background:#fee2e2;color:#b91c1c}.student-messaging-toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}.student-messaging-toolbar .student-catalogue-tabs{margin:0}.student-messaging-tools{display:flex;flex-wrap:wrap;gap:10px;align-items:end}.student-messaging-search-wrap{position:relative;display:block}.student-messaging-search-ico{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:#64748b;pointer-events:none}.student-messaging-search-ico .nav-ico{width:15px;height:15px}.student-messaging-search input{min-height:38px;min-width:200px;border-radius:999px;border:1px solid #cbd5e1;padding:6px 12px 6px 34px;font:inherit;background:#fff}.student-messaging-sort{display:grid;gap:4px;font-size:.75rem;font-weight:650;color:#475569}.student-messaging-sort select{min-height:38px;border-radius:999px;border:1px solid #cbd5e1;padding:6px 12px;font:inherit;background:#fff}.student-messaging-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,300px);gap:16px;align-items:start}.student-messaging-main{display:grid;gap:12px;min-width:0}.student-messaging-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.student-messaging-row{width:100%;display:grid;grid-template-columns:10px auto minmax(0,1fr) auto;gap:12px;align-items:center;text-align:left;padding:14px 16px;border:1px solid #e2e8f0;border-radius:14px;background:#fff;box-shadow:0 6px 16px #0f172a08;cursor:pointer;font:inherit;color:inherit}.student-messaging-row.is-selected{border-color:#93c5fd;background:#f8fbff}.student-messaging-unread{width:8px;height:8px;border-radius:999px;background:transparent}.student-messaging-row.is-unread .student-messaging-unread{background:#ef4444}.student-messaging-ico{width:40px;height:40px;border-radius:12px;display:grid;place-items:center}.student-messaging-ico .nav-ico{width:18px;height:18px}.student-messaging-ico.tone-announcements{background:#ede9fe;color:#6d28d9}.student-messaging-ico.tone-academic{background:#ffedd5;color:#c2410c}.student-messaging-ico.tone-assignments{background:#dbeafe;color:#1d4ed8}.student-messaging-ico.tone-examinations{background:#fee2e2;color:#b91c1c}.student-messaging-copy{display:grid;gap:2px;min-width:0}.student-messaging-copy strong{font-size:.92rem;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.student-messaging-copy .muted{font-size:.8rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.student-messaging-meta{display:grid;gap:6px;justify-items:end}.student-messaging-meta time{font-size:.75rem;white-space:nowrap}.student-messaging-cat.tone-announcements{background:#f5f3ff;color:#6d28d9}.student-messaging-cat.tone-academic{background:#fff7ed;color:#c2410c}.student-messaging-cat.tone-assignments{background:#eff6ff;color:#1d4ed8}.student-messaging-cat.tone-examinations{background:#fef2f2;color:#b91c1c}.student-messaging-pager{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;padding:4px 2px}.student-messaging-pages{display:flex;gap:6px}.student-messaging-pages .btn{min-width:36px;min-height:36px;padding:0 10px;border-radius:10px}.student-messaging-rail{display:grid;gap:16px;min-width:0}.student-messaging-preview{display:grid;gap:10px;padding:18px}.student-messaging-preview h3{margin:0;font-size:1.05rem}.student-messaging-preview p{margin:0;color:#475569;line-height:1.5;font-size:.9rem}.student-messaging-cta{justify-self:start;margin-top:4px}.student-messaging-related{padding:16px 18px}.student-messaging-related h3{margin:0 0 12px;font-size:.95rem}.student-messaging-related ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}.student-messaging-related a{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:10px 12px;border:1px solid #eef2f7;border-radius:12px;background:#f8fafc;color:#1e293b;text-decoration:none;font-size:.88rem;font-weight:600}.student-messaging-related a:hover{border-color:#bfdbfe;background:#eff6ff}.student-messaging-related-ico{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;background:#dbeafe;color:#1d4ed8}.student-messaging-related-ico .nav-ico{width:14px;height:14px}@media (max-width: 1100px){.student-messaging-layout{grid-template-columns:1fr}}@media (max-width: 640px){.student-messaging-row{grid-template-columns:10px auto minmax(0,1fr)}.student-messaging-meta{grid-column:2 / -1;justify-items:start;grid-auto-flow:column;align-items:center}}.student-help-board{display:grid;gap:var(--space-4);min-width:0}.student-help-note{margin:0;padding:10px 14px;border-radius:12px;border:1px solid #bfdbfe;background:#eff6ff;color:#1e40af;font-size:.9rem}.student-help-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.student-help-action{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:16px;border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 8px 20px #0f172a08;text-decoration:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.student-help-action strong{display:block;font-size:.92rem;color:#0f172a}.student-help-action em{display:block;margin-top:2px;font-style:normal;font-size:.75rem;color:#64748b}.student-help-action-ico{width:42px;height:42px;border-radius:12px;display:grid;place-items:center}.student-help-action-ico .nav-ico{width:18px;height:18px}.student-help-action.tone-contact .student-help-action-ico{background:#dbeafe;color:#1d4ed8}.student-help-action.tone-guide .student-help-action-ico{background:#ede9fe;color:#6d28d9}.student-help-action.tone-faq .student-help-action-ico{background:#dcfce7;color:#15803d}.student-help-action.tone-chat .student-help-action-ico{background:#ffedd5;color:#c2410c}.student-help-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,300px);gap:16px;align-items:start}.student-help-main{padding:0;overflow:hidden;border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 8px 20px #0f172a08}.student-help-tabs{display:flex;flex-wrap:wrap;gap:4px;padding:0 16px;border-bottom:1px solid #e2e8f0}.student-help-tabs button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;padding:14px 12px;font:inherit;font-weight:650;color:#64748b;cursor:pointer;border-bottom:3px solid transparent;margin-bottom:-1px}.student-help-tabs button.on{color:#1d4ed8;border-bottom-color:#2563eb}.student-help-faq-tools{display:grid;grid-template-columns:minmax(0,1fr) minmax(140px,200px);gap:12px;padding:14px 16px;border-bottom:1px solid #eef2f7}.student-help-faq-tools label{display:grid;gap:6px;font-size:.78rem;font-weight:650;color:#475569}.student-help-faq-tools select,.student-help-search input{min-height:40px;border-radius:10px;border:1px solid #cbd5e1;padding:8px 12px;font:inherit;background:#fff;width:100%}.student-help-search-wrap{position:relative;display:block}.student-help-search-ico{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#64748b;pointer-events:none}.student-help-search-ico .nav-ico{width:15px;height:15px}.student-help-search input{padding-left:36px}.student-help-faq-list{list-style:none;margin:0;padding:8px 0}.student-help-faq-list li{border-bottom:1px solid #eef2f7}.student-help-faq-q{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:14px 16px;border:0;background:transparent;font:inherit;text-align:left;cursor:pointer;color:inherit}.student-help-faq-list li.is-open .student-help-faq-q{background:#f8fafc}.student-help-faq-ico{width:34px;height:34px;border-radius:10px;display:grid;place-items:center}.student-help-faq-ico .nav-ico{width:16px;height:16px}.student-help-faq-ico.tone-assignments,.student-help-faq-cat.tone-assignments{background:#dbeafe;color:#1d4ed8}.student-help-faq-ico.tone-assessments,.student-help-faq-cat.tone-assessments{background:#ffedd5;color:#c2410c}.student-help-faq-ico.tone-grades,.student-help-faq-cat.tone-grades{background:#dcfce7;color:#15803d}.student-help-faq-ico.tone-attendance,.student-help-faq-cat.tone-attendance{background:#ede9fe;color:#6d28d9}.student-help-faq-ico.tone-account,.student-help-faq-cat.tone-account{background:#e2e8f0;color:#334155}.student-help-faq-ico.tone-general,.student-help-faq-cat.tone-general{background:#eff6ff;color:#1d4ed8}.student-help-faq-label{font-weight:650;color:#0f172a;font-size:.92rem}.student-help-faq-chevron{color:#94a3b8;font-size:1rem}.student-help-faq-a{padding:0 16px 16px 62px;display:grid;gap:10px}.student-help-faq-a p{margin:0;color:#475569;line-height:1.5;font-size:.9rem}.student-help-faq-a .btn{justify-self:start;min-height:34px}.student-help-main .empty-state,.student-help-main [class*=Empty]{margin:16px}.student-help-rail{display:grid;gap:16px;min-width:0}.student-help-card{padding:16px 18px}.student-help-card h3{margin:0 0 12px;font-size:.95rem}.student-help-contact-list{margin:0 0 10px;display:grid;gap:10px}.student-help-contact-list div{display:grid;gap:2px}.student-help-contact-list dt{display:flex;gap:8px;align-items:center;font-size:.78rem;font-weight:650;color:#64748b}.student-help-contact-list dt .nav-ico{width:14px;height:14px;color:#2563eb}.student-help-contact-list dd{margin:0;font-weight:650;color:#0f172a}.student-help-quick{list-style:none;margin:0;padding:0;display:grid;gap:8px}.student-help-quick a{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;border:1px solid #eef2f7;border-radius:12px;background:#f8fafc;color:#1e293b;text-decoration:none;font-size:.88rem;font-weight:600}.student-help-quick a:hover{border-color:#bfdbfe;background:#eff6ff}.student-help-ticket{padding:18px;display:grid;gap:10px;justify-items:start;background:linear-gradient(180deg,#eff6ff,#fff);border:1px solid #bfdbfe}.student-help-ticket-ico{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#dbeafe;color:#1d4ed8}.student-help-ticket p{margin:0;color:#334155;font-size:.9rem}@media (max-width: 1100px){.student-help-actions{grid-template-columns:1fr 1fr}.student-help-layout{grid-template-columns:1fr}}@media (max-width: 640px){.student-help-actions,.student-help-faq-tools{grid-template-columns:1fr}.student-help-faq-q{grid-template-columns:auto minmax(0,1fr) auto}.student-help-faq-cat{display:none}}.student-guide-board{display:grid;gap:var(--space-4);min-width:0}.student-guide-note{margin:0;padding:10px 14px;border-radius:12px;border:1px solid #bfdbfe;background:#eff6ff;color:#1e40af;font-size:.9rem}.student-guide-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.student-guide-action{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:16px;border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 8px 20px #0f172a08;text-decoration:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.student-guide-action strong{display:block;font-size:.92rem;color:#0f172a}.student-guide-action em{display:block;margin-top:2px;font-style:normal;font-size:.75rem;color:#64748b}.student-guide-action-ico{width:42px;height:42px;border-radius:12px;display:grid;place-items:center}.student-guide-action-ico .nav-ico{width:18px;height:18px}.student-guide-action.tone-video .student-guide-action-ico{background:#dbeafe;color:#1d4ed8}.student-guide-action.tone-manual .student-guide-action-ico{background:#ede9fe;color:#6d28d9}.student-guide-action.tone-faq .student-guide-action-ico{background:#dcfce7;color:#15803d}.student-guide-action.tone-tips .student-guide-action-ico{background:#ffedd5;color:#c2410c}.student-guide-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,300px);gap:16px;align-items:start}.student-guide-main{padding:0;overflow:hidden;border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 8px 20px #0f172a08}.student-guide-tabs{display:flex;flex-wrap:wrap;gap:4px;padding:0 16px;border-bottom:1px solid #e2e8f0}.student-guide-tabs button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;padding:14px 12px;font:inherit;font-weight:650;color:#64748b;cursor:pointer;border-bottom:3px solid transparent;margin-bottom:-1px}.student-guide-tabs button.on{color:#1d4ed8;border-bottom-color:#2563eb}.student-guide-steps{list-style:none;margin:0;padding:8px 0;counter-reset:none}.student-guide-steps li{border-bottom:1px solid #eef2f7}.student-guide-steps li.is-selected{background:#f8fbff}.student-guide-step{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:14px 16px}.student-guide-num{width:32px;height:32px;border-radius:999px;display:grid;place-items:center;background:#eff6ff;color:#1d4ed8;font-weight:800;font-size:.85rem}.student-guide-step-copy strong{display:block;font-size:.95rem;color:#0f172a}.student-guide-step-copy p{margin:4px 0 0;color:#64748b;font-size:.84rem;line-height:1.45}.student-guide-tag.tone-basics{background:#eff6ff;color:#1d4ed8}.student-guide-tag.tone-learning{background:#f0fdf4;color:#15803d}.student-guide-tag.tone-assignments{background:#dbeafe;color:#1d4ed8}.student-guide-tag.tone-assessments{background:#ffedd5;color:#c2410c}.student-guide-tag.tone-grades{background:#ede9fe;color:#6d28d9}.student-guide-tag.tone-account{background:#e2e8f0;color:#334155}.student-guide-view{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:#1d4ed8;font:inherit;font-weight:700;font-size:.85rem;cursor:pointer;white-space:nowrap}.student-guide-detail{padding:16px 18px 20px;border-top:1px solid #eef2f7;background:#f8fafc;display:grid;gap:10px}.student-guide-detail h3{margin:0;font-size:1.05rem}.student-guide-detail p{margin:0;color:#475569;line-height:1.5}.student-guide-detail .btn{justify-self:start}.student-guide-rail{display:grid;gap:16px;min-width:0}.student-guide-card{padding:16px 18px}.student-guide-card h3{margin:0 0 12px;font-size:.95rem}.student-guide-quick{list-style:none;margin:0;padding:0;display:grid;gap:8px}.student-guide-quick a{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:10px 12px;border:1px solid #eef2f7;border-radius:12px;background:#f8fafc;color:#1e293b;text-decoration:none;font-size:.86rem;font-weight:600}.student-guide-quick a:hover{border-color:#bfdbfe;background:#eff6ff}.student-guide-quick-ico{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;background:#dbeafe;color:#1d4ed8}.student-guide-quick-ico .nav-ico{width:14px;height:14px}.student-guide-help{padding:18px;display:grid;gap:10px;justify-items:start;background:linear-gradient(180deg,#eff6ff,#fff);border:1px solid #bfdbfe}.student-guide-help-ico{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#dbeafe;color:#1d4ed8}.student-guide-help h3{margin:0;font-size:1rem}.student-guide-help p{margin:0;color:#475569;font-size:.88rem;line-height:1.45}@media (max-width: 1100px){.student-guide-actions{grid-template-columns:1fr 1fr}.student-guide-layout{grid-template-columns:1fr}}@media (max-width: 640px){.student-guide-actions{grid-template-columns:1fr}.student-guide-step{grid-template-columns:auto minmax(0,1fr)}.student-guide-tag,.student-guide-view{grid-column:2;justify-self:start}}.student-profile-board{display:grid;gap:var(--space-4);min-width:0}.student-profile-note{margin:0;padding:10px 14px;border-radius:12px;border:1px solid #bfdbfe;background:#eff6ff;color:#1e40af;font-size:.9rem}.student-profile-hero-card{padding:20px 22px}.student-profile-identity{display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:center}.student-profile-avatar{position:relative;width:88px;height:88px;border-radius:999px;display:grid;place-items:center;background:linear-gradient(180deg,#dbeafe,#eff6ff);color:#1d4ed8;font-size:1.6rem;font-weight:800;border:3px solid #fff;box-shadow:0 8px 20px #2563eb2e}.student-profile-avatar-cam{position:absolute;right:2px;bottom:2px;width:28px;height:28px;border-radius:999px;background:#2563eb;color:#fff;display:grid;place-items:center;border:2px solid #fff}.student-profile-avatar-cam .nav-ico{width:12px;height:12px}.student-profile-name-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:12px}.student-profile-name-row h3{margin:0;font-size:1.35rem}.student-profile-summary{margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.student-profile-summary div{display:grid;gap:4px;padding:10px 12px;border-radius:12px;border:1px solid #e2e8f0;background:#f8fafc}.student-profile-summary dt{display:flex;gap:6px;align-items:center;font-size:.72rem;font-weight:650;color:#64748b;text-transform:uppercase;letter-spacing:.03em}.student-profile-summary dt .nav-ico{width:13px;height:13px;color:#2563eb}.student-profile-summary dd{margin:0;font-weight:700;color:#0f172a;font-size:.9rem}.student-profile-tabs{display:flex;flex-wrap:wrap;gap:4px;border-bottom:1px solid #e2e8f0}.student-profile-tabs button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;padding:12px 14px;font:inherit;font-weight:650;color:#64748b;cursor:pointer;border-bottom:3px solid transparent;margin-bottom:-1px}.student-profile-tabs button.on{color:#1d4ed8;border-bottom-color:#2563eb}.student-profile-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,300px);gap:16px;align-items:start}.student-profile-main{padding:18px 20px}.student-profile-section-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px}.student-profile-section-head h3{margin:0;font-size:1.05rem}.student-profile-section-head .btn{display:inline-flex;align-items:center;gap:6px}.student-profile-fields{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:12px 18px}.student-profile-fields div{display:grid;gap:4px;padding:12px 14px;border-radius:12px;border:1px solid #eef2f7;background:#f8fafc}.student-profile-fields dt{font-size:.75rem;font-weight:650;color:#64748b}.student-profile-fields dd{margin:0;font-weight:700;color:#0f172a;word-break:break-word}.student-profile-account{display:grid;gap:12px}.student-profile-account-actions{display:flex;flex-wrap:wrap;gap:10px}.student-profile-rail{display:grid;gap:16px;min-width:0}.student-profile-photo{padding:18px;display:grid;gap:12px;justify-items:center;text-align:center}.student-profile-photo h3{margin:0;justify-self:start;font-size:.95rem}.student-profile-photo-avatar{width:96px;height:96px;border-radius:999px;display:grid;place-items:center;background:linear-gradient(180deg,#dbeafe,#eff6ff);color:#1d4ed8;font-size:1.8rem;font-weight:800}.student-profile-photo .muted{margin:0;font-size:.8rem}.student-profile-quick{padding:16px 18px}.student-profile-quick h3{margin:0 0 12px;font-size:.95rem}.student-profile-quick-grid{display:grid;gap:8px}.student-profile-quick-grid a,.student-profile-quick-grid button{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:center;padding:12px;border:1px solid #eef2f7;border-radius:12px;background:#f8fafc;color:#1e293b;text-decoration:none;font:inherit;font-size:.86rem;font-weight:650;text-align:left;cursor:pointer}.student-profile-quick-grid a:hover,.student-profile-quick-grid button:hover{border-color:#bfdbfe;background:#eff6ff}.student-profile-quick-ico{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;background:#dbeafe;color:#1d4ed8}.student-profile-quick-ico .nav-ico{width:15px;height:15px}@media (max-width: 1100px){.student-profile-layout{grid-template-columns:1fr}.student-profile-summary{grid-template-columns:1fr 1fr}}@media (max-width: 640px){.student-profile-identity,.student-profile-fields,.student-profile-summary{grid-template-columns:1fr}}.student-settings-board{display:grid;gap:var(--space-4);min-width:0}.student-settings-note{margin:0;padding:10px 14px;border-radius:12px;border:1px solid #bfdbfe;background:#eff6ff;color:#1e40af;font-size:.9rem}.student-settings-tabs{display:flex;flex-wrap:wrap;gap:4px;border-bottom:1px solid #e2e8f0}.student-settings-tabs button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;padding:12px 14px;font:inherit;font-weight:650;color:#64748b;cursor:pointer;border-bottom:3px solid transparent;margin-bottom:-1px}.student-settings-tabs button.on{color:#1d4ed8;border-bottom-color:#2563eb}.student-settings-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.9fr);gap:16px;align-items:start}.student-settings-main,.student-settings-rail{display:grid;gap:16px;min-width:0}.student-settings-card{padding:18px 20px}.student-settings-card-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.student-settings-card-head h3{margin:0;font-size:1.02rem}.student-settings-card-head .btn{display:inline-flex;align-items:center;gap:6px}.student-settings-hint{margin:0 0 12px;font-size:.82rem}.student-settings-fields{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:10px 14px}.student-settings-fields div{display:grid;gap:4px;padding:12px 14px;border-radius:12px;border:1px solid #eef2f7;background:#f8fafc}.student-settings-fields dt{font-size:.74rem;font-weight:650;color:#64748b}.student-settings-fields dd{margin:0;font-weight:700;color:#0f172a;word-break:break-word}.student-settings-notify{list-style:none;margin:0;padding:0;display:grid;gap:10px}.student-settings-notify li{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:12px;border:1px solid #eef2f7;border-radius:12px;background:#f8fafc}.student-settings-notify.compact li{grid-template-columns:1fr auto}.student-settings-notify strong{display:block;font-size:.9rem;color:#0f172a}.student-settings-notify .muted{margin:2px 0 0;font-size:.78rem}.student-settings-notify-ico{width:36px;height:36px;border-radius:10px;display:grid;place-items:center}.student-settings-notify-ico .nav-ico{width:16px;height:16px}.student-settings-notify-ico.tone-purple{background:#ede9fe;color:#6d28d9}.student-settings-notify-ico.tone-green{background:#dcfce7;color:#15803d}.student-settings-notify-ico.tone-orange{background:#ffedd5;color:#c2410c}.student-settings-notify-ico.tone-blue{background:#dbeafe;color:#1d4ed8}.student-settings-notify-ico.tone-teal{background:#ccfbf1;color:#0f766e}.student-settings-switch{width:46px;height:26px;border-radius:999px;border:0;background:#cbd5e1;position:relative;cursor:pointer;padding:0;flex-shrink:0}.student-settings-switch span{position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:999px;background:#fff;box-shadow:0 1px 3px #0f172a33;transition:transform .15s ease}.student-settings-switch.is-on{background:#2563eb}.student-settings-switch.is-on span{transform:translate(20px)}.student-settings-prefs{display:grid;gap:12px}.student-settings-prefs label{display:grid;gap:6px;font-size:.82rem;font-weight:650;color:#475569}.student-settings-prefs select{min-height:42px;border-radius:10px;border:1px solid #cbd5e1;padding:8px 12px;font:inherit;background:#fff}.student-settings-password{display:grid;gap:12px}.student-settings-password label{display:grid;gap:6px;font-size:.82rem;font-weight:650;color:#475569}.student-settings-password-wrap{position:relative;display:block}.student-settings-password input{width:100%;min-height:42px;border-radius:10px;border:1px solid #cbd5e1;padding:8px 40px 8px 12px;font:inherit;background:#fff}.student-settings-eye{position:absolute;right:8px;top:50%;transform:translateY(-50%);border:0;background:transparent;color:#64748b;cursor:pointer;padding:4px;display:grid;place-items:center}.student-settings-eye .nav-ico{width:16px;height:16px}.student-settings-password-submit{width:100%;min-height:44px;border-radius:10px}@media (max-width: 1100px){.student-settings-layout{grid-template-columns:1fr}}@media (max-width: 640px){.student-settings-fields{grid-template-columns:1fr}}.student-upcoming-live{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.student-upcoming-live li{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.student-upcoming-live li>div{display:flex;flex-direction:column;gap:2px;min-width:0}.student-attend-hint{margin:0 0 10px;font-size:.85rem}.self-service-form{display:grid;gap:12px}.self-service-form.grid{grid-template-columns:1fr 1fr;gap:12px 18px}.self-service-form .full{grid-column:1 / -1}.self-service-form label{display:grid;gap:6px;font-size:.8rem;font-weight:650;color:#475569}.self-service-form input:not([type=checkbox]),.self-service-form select{width:100%;padding:9px 12px;border:1px solid #cbd5e1;border-radius:10px;font:inherit;font-weight:500;color:#0f172a;background:#fff}.self-service-form input:focus-visible,.self-service-form select:focus-visible{outline:2px solid #2563eb;outline-offset:1px}.self-service-form .self-service-check{display:flex;align-items:center;gap:8px;font-weight:500}.self-service-hint{margin:0;font-size:.8rem}.self-service-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.self-service-form .self-service-actions{justify-content:flex-start}.self-service-msg{margin:4px 0 0;padding:8px 12px;border-radius:10px;font-size:.85rem;background:#ecfdf5;color:#047857}.self-service-msg.is-error,.student-settings-note.is-error{background:#fef2f2;color:#b91c1c;border-color:#fecaca}.danger-text{color:#b91c1c}.student-profile-photo-avatar,.student-profile-avatar,.faculty-profile-avatar,.avatar{overflow:hidden}.student-profile-avatar{overflow:visible}.student-profile-photo-avatar img,.student-profile-avatar img,.faculty-profile-avatar img,.avatar img{width:100%;height:100%;object-fit:cover;border-radius:inherit}.student-profile-avatar-cam{border:0;cursor:pointer}.student-profile-account h4{margin:18px 0 10px}.faculty-profile-self{display:grid;gap:12px}@media (max-width: 720px){.self-service-form.grid{grid-template-columns:1fr}}.self-service-form textarea{width:100%;padding:9px 12px;border:1px solid #cbd5e1;border-radius:10px;font:inherit;font-weight:500;color:#0f172a;resize:vertical}.link-btn{border:0;background:none;padding:0;font:inherit;font-weight:700;color:#2563eb;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.support-dialog .action-drawer-panel{max-width:560px}.support-dialog h2{margin:0;font-size:1.15rem}.support-queries{display:grid;gap:12px;padding-top:12px}.support-queries-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.support-queries-head p{margin:0}.support-table{width:100%;border-collapse:collapse;font-size:.88rem}.support-table th,.support-table td{text-align:left;padding:10px 8px;border-bottom:1px solid #e2e8f0;vertical-align:top}.support-table th{font-size:.75rem;color:#64748b;font-weight:650}.support-table tr.is-selected td{background:#eff6ff}.support-sub{display:block}.support-status.tone-open{background:#dbeafe;color:#1d4ed8}.support-status.tone-progress{background:#fef3c7;color:#b45309}.support-status.tone-waiting{background:#ede9fe;color:#6d28d9}.support-status.tone-resolved{background:#dcfce7;color:#15803d}.support-status.tone-closed{background:#e2e8f0;color:#475569}.support-priority.tone-high,.support-priority.tone-urgent{background:#fee2e2;color:#b91c1c}.support-thread{display:grid;gap:12px;padding-top:12px}.support-thread-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.support-thread-head h3{margin:0 0 4px}.support-thread-head p{margin:0;font-size:.82rem}.support-thread-status{display:flex;gap:8px;align-items:center;flex-shrink:0}.support-messages{list-style:none;margin:0;padding:0;display:grid;gap:10px}.support-messages li{padding:10px 14px;border-radius:12px;border:1px solid #e2e8f0;background:#f8fafc;max-width:85%}.support-messages li.from-support{justify-self:end;background:#eff6ff;border-color:#bfdbfe}.support-message-meta{margin:0 0 4px;font-size:.75rem;color:#64748b}.support-message-body{margin:0;white-space:pre-wrap;word-break:break-word}.support-status-actions{justify-content:flex-start}.support-queue-board{display:grid;gap:16px}.support-queue-panel{display:grid;gap:12px}.support-filter{display:flex;flex-wrap:wrap;gap:6px}.support-filter button{border:1px solid #cbd5e1;background:#fff;border-radius:999px;padding:6px 12px;font:inherit;font-size:.8rem;cursor:pointer}.support-filter button.on{background:#2563eb;border-color:#2563eb;color:#fff}
