:root{--font-sans:Arial, "Helvetica Neue", "Segoe UI", sans-serif;--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:600;--bg:#eef1f4;--surface:#fff;--surface-soft:#f3f5f7;--border:#d7dde5;--text:#18202b;--muted:#697386;--primary:#334155;--primary-dark:#1f2937;--navy:#141a22;--success:#15803d;--warning:#a16207;--danger:#b91c1c;--shadow:0 8px 22px #0f172a0d;--shadow-soft:0 14px 34px #0f172a14;--motion-fast:.15s ease;--motion-base:.22s ease;--motion-slow:.36s cubic-bezier(.22, 1, .36, 1)}*{box-sizing:border-box}body{font-family:var(--font-sans);font-size:14px;font-weight:var(--font-weight-regular);background:var(--bg);color:var(--text);scroll-behavior:smooth;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;line-height:1.45}button,input,textarea,select{font-synthesis-weight:none;letter-spacing:0;font-family:inherit}h1,h2,h3,h4,h5,h6,p{letter-spacing:0}h1,h2,h3,h4,h5,h6,strong,b{font-weight:var(--font-weight-semibold)}p,small,.muted{line-height:1.45}button{background:var(--primary);color:#fff;font-size:12.5px;font-weight:var(--font-weight-semibold);cursor:pointer;transition:background var(--motion-base), border-color var(--motion-base), color var(--motion-base), box-shadow var(--motion-base), transform var(--motion-base);border:none;border-radius:7px;justify-content:center;align-items:center;gap:8px;padding:8px 12px;display:inline-flex}button:hover{background:var(--primary-dark);transform:translateY(-1px);box-shadow:0 8px 18px #0f172a1f}button:disabled{cursor:not-allowed;opacity:.45;transform:none}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,[role=button]:focus-visible{outline-offset:2px;outline:2px solid #3341556b}button.secondary{color:var(--text);background:#e6eaf0}button.danger{background:var(--danger)}button.ghost{color:var(--muted);background:0 0}input,textarea,select{border:1px solid var(--border);width:100%;color:var(--text);font-size:13px;font-weight:var(--font-weight-regular);transition:border-color var(--motion-base), box-shadow var(--motion-base), background var(--motion-base);background:#fff;border-radius:7px;outline:none;padding:9px 10px}input:focus,textarea:focus,select:focus{border-color:var(--primary);box-shadow:0 0 0 3px #3341551a}textarea{resize:vertical;min-height:72px}.app-shell{min-height:100vh;animation:sf360-page-in var(--motion-slow) both;padding:24px}.page{max-width:1180px;animation:sf360-page-in var(--motion-slow) both;margin:0 auto}.card{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);animation:sf360-card-in var(--motion-slow) both;transition:border-color var(--motion-base), box-shadow var(--motion-base), transform var(--motion-base);border-radius:9px;padding:14px}.card+.card{margin-top:12px}.card:hover{box-shadow:var(--shadow-soft);border-color:#33415538}.page-header{animation:sf360-page-in var(--motion-slow) both;margin-bottom:14px}.page-header h1{letter-spacing:0;margin:0;font-size:22px}.page-header p{margin:6px 0 0}.muted{color:var(--muted)}.grid{gap:12px;display:grid}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.full{grid-column:1/-1}.badge{color:var(--primary);background:#e8edf3;border-radius:999px;align-items:center;gap:6px;padding:4px 8px;font-size:11px;font-weight:600;display:inline-flex}.badge.success{color:var(--success);background:#e7f3eb}.badge.warning{color:var(--warning);background:#f6efdf}.badge.danger{color:var(--danger);background:#fee2e2}.icon{width:18px;height:18px}.rotate-icon{transform:rotate(180deg)}.spinner{border:2px solid;border-right-color:#0000;border-radius:999px;width:15px;height:15px;animation:.75s linear infinite spin}.toast-host{z-index:5200;pointer-events:none;gap:10px;width:min(380px,100vw - 36px);display:grid;position:fixed;top:50%;right:18px;transform:translateY(-50%)}.notification-center{z-index:5000;display:inline-flex;position:relative}.notification-trigger{width:34px;height:34px;padding:0;position:relative}.notification-trigger>span{background:var(--danger);color:#fff;border:2px solid #fff;border-radius:999px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:10px;font-weight:600;line-height:1;display:inline-flex;position:absolute;top:-7px;right:-7px}.notification-menu{z-index:5000;border:1px solid var(--border);background:#fff;border-radius:10px;max-height:min(460px,100vh - 28px);padding:10px;position:fixed;overflow:auto;box-shadow:0 18px 40px #0f172a2e}.notification-menu-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:10px;padding:2px 2px 10px;display:flex}.notification-menu-head strong{color:var(--text);font-size:14px}.notification-menu-head p,.notification-empty{color:var(--muted);margin:2px 0 0;font-size:12px}.notification-list{gap:8px;margin-top:10px;display:grid}.notification-item{border:1px solid var(--border);background:#fff;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;gap:6px;display:grid}.notification-item.unread{background:#f8fafc;border-color:#b6c5d8}.notification-item-main{width:100%;color:var(--text);text-align:left;box-shadow:none;background:0 0;border:0;grid-template-columns:auto minmax(0,1fr);justify-content:stretch;align-items:start;gap:9px;padding:10px;display:grid}.notification-item-main:hover{color:var(--text);box-shadow:none;background:0 0;transform:none}.notification-item-main strong{color:var(--text);font-size:12.5px;display:block}.notification-item-main p{color:var(--muted);margin:3px 0;font-size:12px;line-height:1.35}.notification-item-main small{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;font-size:10.5px;font-weight:600}.notification-dot{background:var(--primary);border-radius:999px;width:8px;height:8px;margin-top:5px}.notification-dot.success{background:var(--success)}.notification-dot.warning{background:var(--warning)}.notification-dot.error{background:var(--danger)}.notification-dismiss{align-self:start;width:28px;height:28px;margin:5px 5px 0 0}.build-version{z-index:70;color:#64748b;pointer-events:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffc7;border:1px solid #94a3b852;border-radius:999px;padding:2px 8px;font-size:10px;font-weight:600;line-height:1.5;position:fixed;bottom:6px;left:50%;transform:translate(-50%)}.toast{border:1px solid #d8dee7;border-left:4px solid var(--primary);animation:sf360-toast-in var(--motion-slow) both;pointer-events:auto;background:#fff;border-radius:10px;grid-template-columns:28px minmax(0,1fr) 28px;align-items:start;gap:10px;padding:13px;display:grid;box-shadow:0 22px 56px #0f172a2e}.toast>.icon{color:var(--primary)}.toast-success{border-left-color:var(--success)}.toast-success>.icon{color:var(--success)}.toast-warning,.toast-error{border-left-color:var(--warning)}.toast-error{border-left-color:var(--danger)}.toast-warning>.icon{color:var(--warning)}.toast-error>.icon{color:var(--danger)}.toast strong{color:var(--text);font-size:13px;display:block}.toast p{color:var(--muted);margin:3px 0 0;font-size:12px;line-height:1.35}.toast-close{width:28px;height:28px;color:var(--muted);background:0 0;border-radius:7px;padding:0}.toast-close:hover{background:var(--surface-soft);color:var(--text);box-shadow:none;transform:none}.empty-state{border:1px dashed var(--border);background:var(--surface-soft);border-radius:10px;align-items:center;gap:12px;margin:10px 0;padding:14px;display:flex}.empty-state>.icon{width:34px;height:34px;color:var(--primary);background:#fff;border-radius:10px;flex:none;padding:7px}.empty-state strong{color:var(--text);font-size:14px;display:block}.empty-state p{margin:3px 0 0;line-height:1.4}.skeleton-list{gap:9px;margin:10px 0;display:grid}.skeleton-card{border:1px solid var(--border);background:#fff;border-radius:10px;gap:8px;padding:12px;display:grid}.skeleton-card span,.skeleton-card strong,.skeleton-card p{background:linear-gradient(90deg,#eef2f7,#f8fafc,#eef2f7) 0 0/220% 100%;border-radius:999px;height:10px;margin:0;animation:1.25s ease-in-out infinite skeleton-shimmer;display:block}.skeleton-card span{width:28%}.skeleton-card strong{width:62%;height:14px}.skeleton-card p{width:44%}@keyframes skeleton-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.status-legend{color:var(--muted);flex-wrap:wrap;align-items:center;gap:10px;font-size:11px;font-weight:600;display:flex}.status-legend span{align-items:center;gap:6px;display:inline-flex}.legend-dot{background:#f59e0b;border-radius:999px;width:8px;height:8px;display:inline-block}.legend-dot.in-progress{background:#2b5c75}.legend-dot.completed{background:var(--success)}.legend-dot.danger{background:var(--danger)}@keyframes spin{to{transform:rotate(360deg)}}@keyframes sf360-page-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes sf360-card-in{0%{opacity:0;transform:translateY(10px)scale(.99)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes sf360-modal-in{0%{opacity:0;transform:translateY(18px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes sf360-toast-in{0%{opacity:0;transform:translate(18px)scale(.98)}to{opacity:1;transform:translate(0)scale(1)}}@keyframes sf360-soft-pop{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}@keyframes sf360-progress-slide{0%{background-position:160% 0}to{background-position:0 0}}.login-page{--login-accent:#2b5c75;--login-accent-dark:#183d52;--login-accent-soft:#eef6f7;--login-accent-border:#bad3dd;--login-bg-soft:#f6fafb;background:linear-gradient(135deg, var(--login-bg-soft), var(--bg) 48%, #fff);min-height:100vh;animation:sf360-page-in var(--motion-slow) both;transition:background var(--motion-slow);grid-template-columns:minmax(0,500px) minmax(360px,440px);justify-content:center;align-items:center;gap:34px;padding:38px 32px;display:grid}.login-page.login-mode-student{--login-accent:#2b5c75;--login-accent-dark:#183d52;--login-accent-soft:#eef6f7;--login-accent-border:#bad3dd;--login-bg-soft:#f6fafb}.login-page.login-mode-staff{--login-accent:#0f766e;--login-accent-dark:#115e59;--login-accent-soft:#ecfdf5;--login-accent-border:#99f6e4;--login-bg-soft:#f3fffb}.login-page.login-mode-admin{--login-accent:#7f1d1d;--login-accent-dark:#450a0a;--login-accent-soft:#fef2f2;--login-accent-border:#fecaca;--login-bg-soft:#fff7f7}.brand-panel{max-width:500px;min-height:520px;animation:sf360-card-in var(--motion-slow) both;align-content:center;gap:14px;display:grid}.brand-logo{color:var(--primary);letter-spacing:0;font-size:46px;font-weight:600;line-height:1}.brand-logo-image{object-fit:contain;width:min(236px,56vw);height:auto;display:block}.brand-kicker,.login-trust-row span{width:fit-content;color:var(--login-accent-dark);transition:color var(--motion-base), background var(--motion-base), border-color var(--motion-base);align-items:center;gap:8px;font-size:13px;font-weight:600;display:inline-flex}.brand-kicker{border:1px solid var(--login-accent-border);background:var(--login-accent-soft);border-radius:999px;padding:8px 10px}.brand-panel h1{letter-spacing:0;max-width:520px;margin:0;font-size:32px;line-height:1.16}.brand-panel p{max-width:500px;color:var(--text);letter-spacing:0;margin:0;font-size:15px;font-weight:600;line-height:1.45}.brand-panel>p{border-left:3px solid var(--login-accent);padding-left:12px}.login-trust-row{flex-wrap:wrap;gap:10px;margin-top:12px;display:flex}.login-trust-row span{border:1px solid var(--login-accent-border);background:#ffffffd1;border-radius:999px;padding:9px 11px;box-shadow:0 8px 18px #0f172a0d}.league-public-link{border:1px solid var(--login-accent);width:min(360px,100%);color:var(--login-accent-dark);transition:background var(--motion-base), border-color var(--motion-base), box-shadow var(--motion-base), color var(--motion-base), transform var(--motion-base);background:#fff;border-left-width:5px;border-radius:10px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;margin-top:8px;padding:13px 14px;text-decoration:none;display:grid;box-shadow:0 14px 30px #0f172a1a}.league-public-link:hover{border-color:var(--login-accent);background:var(--login-accent-soft);transform:translateY(-1px);box-shadow:0 18px 34px #0f172a24}.league-public-link>.icon{color:var(--login-accent)}.league-public-link strong,.league-public-link small{display:block}.league-public-link strong{color:#0f172a;font-size:14px}.league-public-link small{color:#475569;margin-top:2px;font-size:12px}.login-card h2{margin:0}.login-card{border-color:var(--login-accent-border);border-radius:12px;justify-self:center;gap:14px;width:100%;padding:26px;animation-delay:60ms;display:grid;position:relative;overflow:hidden;box-shadow:0 18px 42px #0f172a14}.login-card:before{background:var(--login-accent);content:"";height:5px;position:absolute;inset:0 0 auto}.login-card-head{grid-template-columns:46px minmax(0,1fr);align-items:start;gap:12px;margin-bottom:2px;display:grid}.login-card-head h2{margin-top:9px;font-size:21px}.login-card-head p{margin:6px 0 0;line-height:1.45}.login-mode-emblem{border:1px solid var(--login-accent-border);background:var(--login-accent-soft);width:46px;height:46px;color:var(--login-accent-dark);border-radius:12px;place-items:center;display:grid}.login-mode-emblem .icon{width:23px;height:23px}.login-mode-badge{background:var(--login-accent-soft);color:var(--login-accent-dark)}.login-field{gap:7px;display:grid}.login-field span{color:var(--muted);font-size:12px;font-weight:600}.login-input-wrap{border:1px solid var(--border);background:#fff;border-radius:8px;align-items:center;gap:10px;padding:0 12px;display:flex}.login-input-wrap:focus-within{border-color:var(--login-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--login-accent) 16%, transparent)}.login-input-wrap .icon{color:var(--login-accent);flex:none}.login-input-wrap input{background:0 0;border:none;border-radius:0;width:100%;padding:13px 0}.login-input-wrap input:focus{outline:none}.password-field-wrap{border:1px solid var(--border);background:#fff;border-radius:7px;align-items:center;gap:8px;width:100%;padding:0 8px 0 0;display:flex}.password-field-wrap:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px #3341551a}.password-field-wrap input{background:0 0;border:none;border-radius:0}.password-field-wrap input:focus{box-shadow:none}.password-toggle{width:30px;height:30px;color:var(--muted);background:0 0;border-radius:6px;flex:none;padding:0}.password-toggle:hover{background:var(--surface-soft);color:var(--text);transform:none}.password-toggle .icon{width:16px;height:16px}.login-actions{gap:10px;margin-top:4px;display:grid}.login-mode-grid{border:1px solid var(--border);background:var(--surface-soft);border-radius:10px;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding:5px;display:grid}.login-mode-grid button{border:1px solid #0000;min-height:38px;padding:8px;font-size:12px}.login-mode-grid button.login-mode-active{border-color:var(--login-accent-border);background:var(--login-accent);color:#fff;box-shadow:0 8px 18px color-mix(in srgb, var(--login-accent) 22%, transparent)}.login-mode-grid button.secondary:hover{border-color:var(--login-accent-border);color:var(--login-accent-dark);background:#fff}.login-notice{color:#6f4f06;background:#fbf6e7;border:1px solid #d9c48a;border-radius:8px;align-items:flex-start;gap:8px;padding:10px;font-size:12px;font-weight:600;line-height:1.45;display:flex}.login-notice .icon{flex:none;width:16px;height:16px;margin-top:1px}.login-actions button:first-child{background:var(--login-accent);justify-content:center;min-height:42px}.login-actions button:first-child:hover{background:var(--login-accent-dark)}.admin-link{justify-content:center}.login-help{color:var(--muted);text-align:center;margin:0;padding-top:2px;font-size:12px}.login-service-status{min-height:28px;color:var(--muted);justify-content:center;align-items:center;gap:8px;font-size:12px;font-weight:600;display:flex}.login-service-status:before{background:var(--muted);content:"";width:7px;height:7px;transition:background var(--motion-base);border-radius:999px}.login-service-status.online{color:var(--success)}.login-service-status.online:before{background:var(--success)}.login-service-status.offline{color:var(--danger)}.login-service-status.offline:before{background:var(--danger)}.login-service-status button{height:26px;padding:4px 8px;font-size:11px}.forced-password-page{grid-template-columns:minmax(320px,430px)}.forced-password-card{gap:12px;padding:24px;display:grid}.forced-password-card h2{margin:2px 0 0}.forced-password-card p{margin:0;line-height:1.45}.dashboard-card{justify-content:space-between;align-items:center;gap:12px;display:flex}.dashboard-card h2{margin:0 0 3px;font-size:18px}.dashboard-card p{margin:0}.student-shell{--student-accent:#2b5c75;--student-accent-dark:#183d52;--student-accent-soft:#f2f7f8;--student-accent-border:#d4e3e8;--student-accent-highlight:#6f93a3;--student-accent-rgb:43, 92, 117;--student-surface:#fff;--student-line:#e5edf0;min-height:100vh;animation:sf360-page-in var(--motion-slow) both;background:#f6f8fa;padding:20px}.student-page{max-width:1180px;margin:0 auto}.student-topbar{border:1px solid var(--student-accent-border);animation:sf360-card-in var(--motion-slow) both;background:#fff;border-radius:14px;justify-content:space-between;align-items:center;gap:18px;margin-bottom:16px;padding:14px 16px;display:flex;position:relative;overflow:visible;box-shadow:0 10px 24px #0f172a0e}.student-topbar:before{background:var(--student-accent);content:"";width:5px;position:absolute;inset:0 auto 0 0}.student-topbar h1{color:#0f172a;letter-spacing:0;margin:6px 0 0;font-size:24px}.student-topbar p{margin:4px 0 0}.student-identity-badges{flex-wrap:wrap;gap:6px;margin-top:7px;display:flex}.student-identity-badges span{border:1px solid var(--student-accent-border);background:var(--student-accent-soft);min-height:24px;color:var(--student-accent-dark);border-radius:999px;align-items:center;padding:4px 8px;font-size:11px;font-weight:600;display:inline-flex}.student-brandline{align-items:center;gap:16px;min-width:0;padding-left:4px;display:flex}.student-brandline img{object-fit:contain;border:1px solid var(--student-accent-border);width:112px;height:auto;box-shadow:0 8px 18px rgba(var(--student-accent-rgb), .07);background:#fff;border-radius:12px;flex:none;padding:8px}.student-topbar-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.student-session-pill{border:1px solid var(--student-accent-border);background:var(--student-accent-soft);min-height:34px;color:var(--student-accent-dark);border-radius:999px;align-items:center;padding:0 11px;font-size:12px;font-weight:600;display:inline-flex}.student-tabs{z-index:8;border:1px solid var(--student-accent-border);width:fit-content;box-shadow:0 10px 24px rgba(var(--student-accent-rgb), .07);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:sf360-card-in var(--motion-slow) both;background:#ffffffe6;border-radius:12px;flex-wrap:wrap;gap:6px;margin:0 0 14px;padding:5px;display:flex;position:sticky;top:10px}.student-tabs button{min-width:124px;min-height:38px;box-shadow:none;border-radius:9px}.student-tabs button:not(.secondary),.student-shell button:not(.secondary):not(.danger):not(.ghost):not(.password-toggle):not(.icon-button):not(.notification-item-main){background:var(--student-accent)}.student-tabs button:not(.secondary):hover,.student-shell button:not(.secondary):not(.danger):not(.ghost):not(.password-toggle):not(.icon-button):not(.notification-item-main):hover{background:var(--student-accent-dark)}.student-tabs button.secondary{color:var(--student-accent-dark);background:0 0;border:1px solid #0000}.student-tabs button.secondary:hover{background:var(--student-accent-soft)}.student-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px;display:grid}.student-stat{border:1px solid var(--student-accent-border);box-shadow:0 8px 18px rgba(var(--student-accent-rgb), .055);animation:sf360-card-in var(--motion-slow) both;transition:border-color var(--motion-base), box-shadow var(--motion-base), transform var(--motion-base);background:#fff;border-radius:12px;align-items:center;gap:12px;padding:13px 14px;display:flex;position:relative;overflow:hidden}.student-stat .icon{background:var(--student-accent-soft);width:34px;height:34px;color:var(--student-accent);border-radius:10px;padding:7px}.student-stat:hover,.stat-card:hover,.guide-item:hover,.student-event-card:hover,.event-card:hover,.assessment-card:hover,.result-assessment-row:hover{border-color:var(--student-accent);box-shadow:0 16px 34px rgba(var(--student-accent-rgb), .11);transform:translateY(-2px)}.student-stats .student-stat:nth-child(2),.stats .stat-card:nth-child(2){animation-delay:35ms}.student-stats .student-stat:nth-child(3),.stats .stat-card:nth-child(3){animation-delay:70ms}.student-stats .student-stat:nth-child(4),.stats .stat-card:nth-child(4){animation-delay:.105s}.student-stat span{color:#0f172a;font-size:24px;font-weight:600;line-height:1;display:block}.student-stat p{text-transform:uppercase;margin:4px 0 0;font-size:11px;font-weight:600}.student-profile-card{border:1px solid var(--student-accent-border);width:100%;box-shadow:0 12px 26px rgba(var(--student-accent-rgb), .075);animation:sf360-card-in var(--motion-slow) both;background:#fff;border-radius:12px;margin-bottom:0;overflow:hidden}.student-profile-card-head{border-bottom:1px solid var(--student-accent-border);background:var(--student-accent-soft);justify-content:space-between;align-items:center;gap:10px;padding:12px 13px;display:flex}.student-profile-card-head strong{font-size:13px}.student-profile-list{display:grid}.student-profile-list div{border-bottom:1px solid var(--student-line);justify-content:space-between;align-items:center;gap:14px;min-width:0;padding:10px 13px;display:flex}.student-profile-list div:last-child{border-bottom:none}.student-profile-list span{color:#64748b;text-transform:uppercase;font-size:10px;font-weight:600}.student-profile-list strong{text-align:right;text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.student-home-layout{grid-template-columns:minmax(250px,300px) minmax(0,1fr);align-items:start;gap:14px;display:grid}.student-side-column,.student-workspace-column{gap:14px;display:grid}.student-readiness-card{border:1px solid var(--student-accent-border);box-shadow:0 12px 26px rgba(var(--student-accent-rgb), .065);background:#fff;border-radius:12px;gap:7px;padding:14px;display:grid}.student-readiness-card strong{color:#0f172a;font-size:15px}.student-readiness-card p{margin:0;font-size:12px;line-height:1.45}.student-current-session{background:#fffdf5;border:1px solid #fcd34d;border-radius:12px;grid-template-columns:minmax(0,1fr) minmax(240px,.9fr);align-items:center;gap:14px;padding:16px;display:grid;box-shadow:0 10px 22px #0f172a0b}.student-current-session h2{color:#0f172a;margin:8px 0 4px;font-size:19px}.student-current-session p{margin:0}.current-session-list{gap:8px;display:grid}.current-session-card{color:#0f172a;text-align:left;background:#fff;border:1px solid #fcd34d;border-radius:10px;justify-content:stretch;gap:4px;width:100%;padding:11px 12px;display:grid}.current-session-card:hover{color:#0f172a;background:#fffbeb}.current-session-card span{color:#92400e;text-transform:uppercase;font-size:10px;font-weight:600}.current-session-card strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.current-session-card small{color:#64748b;font-size:11px;font-weight:600}.student-panel,.student-practice-panel,.guide-summary,.guide-item{border:1px solid var(--student-accent-border);box-shadow:0 12px 26px rgba(var(--student-accent-rgb), .065);animation:sf360-card-in var(--motion-slow) both;transition:border-color var(--motion-base), box-shadow var(--motion-base), transform var(--motion-base);background:#fff;border-radius:12px}.student-panel,.student-practice-panel{padding:16px}.student-practice-panel{border-color:var(--student-accent-border);background:#fff;justify-content:space-between;align-items:center;gap:18px;margin-bottom:0;display:flex}.student-practice-panel h2{margin:8px 0 6px;font-size:20px}.student-practice-panel p{max-width:680px;margin:0}.practice-notes{flex-wrap:wrap;gap:10px;margin-top:12px;display:flex}.practice-notes span{color:#475569;align-items:center;gap:7px;font-size:13px;font-weight:600;display:inline-flex}.student-section-head,.student-exam-row,.guide-summary{justify-content:space-between;align-items:center;gap:16px;display:flex}.student-section-head{margin-bottom:12px}.student-section-head h2{color:#0f172a;margin:0;font-size:19px}.student-section-head h3{color:#0f172a;margin:6px 0 3px;font-size:16px}.student-section-head p{margin:4px 0 0}.student-assessment-table-wrap{border:1px solid var(--student-accent-border);background:#fff;border-radius:10px;overflow-x:auto;box-shadow:0 8px 18px #0f172a0a}.student-assessment-tools{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:0 0 12px;display:flex}.student-filter-tabs{overflow-x:auto}.student-filter-tabs button{white-space:nowrap;gap:6px;min-width:auto}.student-filter-tabs button span{background:#ffffffc7;border-radius:999px;justify-content:center;min-width:22px;padding:2px 6px;font-size:10px;display:inline-flex}.student-shell .empty-state{border-color:var(--student-accent-border);background:#f6fafb}.student-shell .empty-state>.icon{color:var(--student-accent)}.student-assessment-table{border-collapse:collapse;background:#fff;width:100%;min-width:760px}.student-assessment-table th,.student-assessment-table td{border-bottom:1px solid var(--student-line);text-align:left;vertical-align:middle;transition:background var(--motion-fast);padding:10px 12px;font-size:13px}.student-assessment-table th{color:var(--student-accent-dark);background:var(--student-accent-soft);text-transform:uppercase;font-size:11px;font-weight:600}.student-assessment-table tr:last-child td{border-bottom:none}.student-assessment-table tbody tr:hover td,.result-table tbody tr:hover td,.bank-table tbody tr:hover td,.question-table tbody tr:hover td{background:#f6fafb}.student-performance-panel{border-color:var(--student-line);color:var(--text);background:#fff;position:relative;overflow:visible;box-shadow:0 10px 24px #0f172a0e}.student-performance-panel:before,.student-performance-panel:after{display:none}.student-performance-panel>*{z-index:1;position:relative}.student-performance-panel .muted{color:#64748b}.performance-head{border-bottom:1px solid var(--student-line);margin-bottom:14px;padding:0 0 12px}.performance-head h2,.performance-subhead{align-items:center;gap:8px;display:inline-flex}.performance-head h2{color:#0f172a;font-size:21px}.performance-head .icon,.performance-subhead .icon{width:19px;height:19px}.performance-count,.performance-rank-badge{border-color:var(--student-accent-border);background:var(--student-accent-soft);color:var(--student-accent-dark)}.performance-block{border:1px solid var(--student-line);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:#fff;border-radius:10px;margin-top:14px;padding:12px}.performance-summary-block{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-color:#0000;padding:0}.performance-block-title{justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:10px;display:flex}.performance-block-title p{max-width:560px;margin:0;font-size:12px}.performance-stats{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:0}.performance-stats .student-stat{border-color:var(--student-line);color:#0f172a;min-height:76px;box-shadow:none;background:#fff}.performance-stats .student-stat:nth-child(2),.performance-stats .student-stat:nth-child(3){border-color:var(--student-line);background:#fff}.performance-stats .student-stat .icon{background:var(--student-accent-soft);width:27px;height:27px;color:var(--student-accent);border-radius:8px;padding:5px}.performance-stats .student-stat:nth-child(2) .icon,.performance-stats .student-stat:nth-child(3) .icon{background:var(--student-accent-soft);color:var(--student-accent)}.performance-stats .student-stat span{font-size:24px;line-height:1}.performance-stats .student-stat p{color:#64748b;text-transform:uppercase;font-size:11px;font-weight:600}.performance-subhead{color:#0f172a;letter-spacing:0;margin:0;font-size:14px}.performance-subhead.compact{margin-top:12px;font-size:13px}.performance-table-wrap,.student-performance-panel .student-assessment-table-wrap{border-color:var(--student-line);box-shadow:none;background:#fff}.performance-table{color:#111827;background:#fff;min-width:760px}.performance-table th,.performance-table td{border-bottom-color:#e5e7eb;padding:8px 10px;font-size:12px}.performance-table th{color:#475569;letter-spacing:0;background:#f8fafc;font-size:10px}.performance-table tbody tr:hover td{background:#f8fafc}.performance-table .rank-cell{white-space:nowrap;width:74px;font-size:13px;font-weight:600}.rank-pill{border:1px solid var(--student-line);min-width:42px;height:24px;color:var(--student-accent-dark);background:#f8fafc;border-radius:999px;justify-content:center;align-items:center;padding:0 8px;font-size:12px;font-weight:600;display:inline-flex}.leaderboard-table{min-width:520px}.leaderboard-table th:last-child,.leaderboard-table td:last-child{text-align:right}.subject-table{min-width:560px}.subject-table th:last-child,.subject-table td:last-child{text-align:right}.performance-event-card{border-color:var(--student-line);background:#fff}.performance-event-head{border-bottom:1px solid var(--student-line);margin-bottom:12px;padding-bottom:12px}.performance-event-head h4{color:#0f172a;margin:0;font-size:15px}.performance-rank-card{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 12px;display:grid}.performance-rank-card div{border:1px solid var(--student-line);background:#f8fafc;border-radius:10px;padding:12px}.performance-rank-card span{color:#64748b;text-transform:uppercase;margin-bottom:5px;font-size:10px;font-weight:600;display:block}.performance-rank-card strong{color:#0f172a;font-size:24px;line-height:1;display:block}.performance-rank-card p{color:#64748b;margin:5px 0 0;font-size:12px}.leaderboard-block{background:#fff}.leaderboard-controls{grid-template-columns:minmax(220px,1fr) minmax(170px,220px) 130px;gap:8px;margin:10px 0;display:grid}.leaderboard-search,.leaderboard-select{align-items:center;display:flex;position:relative}.leaderboard-search .icon,.leaderboard-select .icon{z-index:1;color:#64748b;pointer-events:none;width:16px;height:16px;position:absolute;left:10px}.leaderboard-search input,.leaderboard-select select{border-color:var(--student-line);background:#fff;height:38px;padding-left:32px}.leaderboard-page-size{border-color:var(--student-line);height:38px}.current-student-row td{border-top:1px solid var(--student-accent-border);border-bottom-color:var(--student-accent-border);background:#f2f7f8}.current-student-row td:first-child{box-shadow:inset 3px 0 0 var(--student-accent)}.current-student-row .rank-pill{border-color:var(--student-accent);color:var(--student-accent-dark);background:#fff}.current-student-row:hover td{background:#eef6f7}.leaderboard-pagination{color:#64748b;justify-content:space-between;align-items:center;gap:12px;margin-top:9px;font-size:12px;font-weight:600;display:flex}.leaderboard-pagination div{align-items:center;gap:8px;display:flex}.leaderboard-pagination button{min-width:78px;padding:6px 9px}.subject-leaders-disclosure{border:1px solid var(--student-line);background:#fff;border-radius:10px;margin-top:10px}.subject-leaders-disclosure summary{color:var(--student-accent-dark);cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;font-size:13px;font-weight:600;list-style:none;display:flex}.subject-leaders-disclosure summary::-webkit-details-marker{display:none}.subject-leaders-disclosure summary span:first-child{align-items:center;gap:8px;display:inline-flex}.subject-leaders-disclosure .performance-table-wrap{margin:0 10px 10px}.subject-leader-badge{border:1px solid var(--student-line);min-height:28px;color:var(--student-accent-dark);white-space:nowrap;background:#f8fafc;border-radius:999px;align-items:center;gap:7px;padding:5px 9px;font-size:11px;font-weight:600;display:inline-flex}.subject-leader-badge .icon{width:15px;height:15px;color:var(--student-accent)}.student-assessment-title{min-width:260px}.student-assessment-title strong{color:#0f172a;text-overflow:ellipsis;white-space:nowrap;max-width:360px;display:block;overflow:hidden}.student-assessment-title span{color:var(--muted);margin-top:2px;font-size:11px;font-weight:600;display:block}.assessment-metric{color:#475569;white-space:nowrap;align-items:center;gap:6px;font-weight:600;display:inline-flex}.assessment-metric .icon{width:15px;height:15px}.student-assessment-action{text-align:right;width:118px}.student-assessment-action button{border-radius:8px;min-width:102px;padding:8px 11px}.guide-summary{align-items:flex-start;margin-bottom:14px;padding:16px}.guide-summary h2{margin:10px 0 4px;font-size:20px}.guide-session{text-align:right;overflow-wrap:anywhere;max-width:360px}.guide-session span{margin-bottom:4px;font-size:12px;display:block}.guide-sections{color:var(--muted);margin:0;padding-left:18px;font-size:13px}.guide-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.guide-item{gap:12px;padding:14px;display:flex}.guide-icon{width:36px;height:36px;color:var(--primary);background:#e8edf3;border-radius:8px;flex:none;place-items:center;display:grid}.guide-item h3{margin:0;font-size:15px}.guide-item p{margin:4px 0 0;font-size:13px}.student-actions{gap:8px;margin-top:14px;display:flex}.layout{min-height:100vh;animation:sf360-page-in var(--motion-slow) both;grid-template-columns:220px 1fr;display:grid}.sidebar{background:var(--navy);color:#fff;padding:18px 14px;box-shadow:10px 0 30px #0f172a14}.sidebar-brand{align-items:center;margin-bottom:18px;display:flex}.sidebar-brand img{object-fit:contain;width:132px;max-width:100%;height:auto;display:block}.sidebar-item{color:#aeb8c6;cursor:pointer;transition:background var(--motion-base), color var(--motion-base), transform var(--motion-base);border-radius:7px;align-items:center;gap:9px;margin-bottom:4px;padding:9px 10px;font-size:13px;font-weight:600;display:flex}.sidebar-item.active{color:#fff;background:#2d3745;box-shadow:inset 3px 0 #93c5fd}.sidebar-item:hover{color:#fff;background:#ffffff14;transform:translate(2px)}.sidebar-item.active:hover{background:#2d3745}.sidebar-item.disabled{cursor:not-allowed;opacity:.65;pointer-events:none}.admin-main{animation:sf360-page-in var(--motion-slow) both;padding:16px}.stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:12px;display:grid}.stat-card{border:1px solid var(--border);box-shadow:var(--shadow);animation:sf360-card-in var(--motion-slow) both;transition:border-color var(--motion-base), box-shadow var(--motion-base), transform var(--motion-base);background:#fff;border-radius:8px;padding:12px}.stat-card h3{color:var(--text);margin:4px 0 0;font-size:22px}.stat-card span{color:var(--muted);margin-top:2px;font-size:12px;display:block}.exam-topbar{border-bottom:1px solid var(--border);height:58px;animation:sf360-page-in var(--motion-slow) both;background:#fff;justify-content:space-between;align-items:center;padding:0 20px;display:flex;box-shadow:0 8px 18px #0f172a0a}.exam-title-block{min-width:0}.exam-title-block h3{margin:0;font-size:16px}.exam-title-block p{text-overflow:ellipsis;white-space:nowrap;max-width:560px;margin:3px 0 0;font-size:12px;overflow:hidden}.exam-wrapper{min-height:calc(100vh - 58px);animation:sf360-page-in var(--motion-slow) both;grid-template-columns:minmax(0,1fr) 280px;display:grid}.exam-question{padding:22px}.exam-card{border:1px solid var(--border);width:min(920px,100%);box-shadow:var(--shadow-soft);animation:sf360-card-in var(--motion-slow) both;background:#fff;border-radius:8px;margin:0 auto;padding:22px}.question-meta{justify-content:space-between;align-items:center;gap:14px;margin-bottom:16px;display:flex}.exam-card h2{letter-spacing:0;margin:0 0 18px;font-size:22px;line-height:1.35}.exam-question-text{color:var(--text);letter-spacing:0;white-space:pre-wrap;margin:0 0 16px;font-size:15px;font-weight:400;line-height:1.55}.exam-note{background:#f3f5f7;border:1px solid #3341552e;border-radius:8px;gap:4px;margin:0 0 16px;padding:12px;display:grid}.exam-note strong{color:var(--primary);font-size:12px}.exam-note p{color:var(--muted);margin:0;font-size:13px;line-height:1.5}.exam-summary{border-left:1px solid var(--border);animation:sf360-card-in var(--motion-slow) both;background:#fff;padding:18px;animation-delay:60ms}.exam-summary h3{margin:0 0 8px;font-size:16px}.exam-summary>.muted{margin:0 0 16px;font-size:13px}.exam-topbar button,.exam-actions button,.exam-summary button{border-radius:6px;padding:8px 12px;font-size:13px}.option{border:1px solid var(--border);cursor:pointer;transition:background var(--motion-fast), border-color var(--motion-fast), box-shadow var(--motion-fast), transform var(--motion-fast);background:#fff;border-radius:6px;align-items:center;gap:10px;margin-bottom:8px;padding:11px 12px;font-size:14px;display:flex}.option:hover{border-color:var(--primary);background:#f8fbff;transform:translateY(-1px);box-shadow:0 6px 16px #0f172a12}.option input{width:auto}.exam-actions{border-top:1px solid var(--border);justify-content:space-between;gap:10px;margin-top:20px;padding-top:16px;display:flex}.exam-actions button{min-width:120px}.flag-action{color:#334155;background:#f1f5f9;border:1px solid #cbd5e1;transition:background .18s,border-color .18s,color .18s,transform .18s,box-shadow .18s}.flag-action:hover{color:#0f172a;background:#e2e8f0}.flag-action.active{color:#111827;background:#f59e0b;border-color:#f59e0b;box-shadow:0 8px 18px #f59e0b3d}.flag-action.active:hover{color:#fff;background:#d97706;border-color:#d97706}.flag-action.active .icon{animation:.22s flag-pop}@keyframes flag-pop{0%{transform:scale(.86)rotate(-8deg)}70%{transform:scale(1.12)rotate(5deg)}to{transform:scale(1)rotate(0)}}.question-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;display:grid}.question-grid button{min-height:34px;color:var(--text);transition:background var(--motion-fast), color var(--motion-fast), box-shadow var(--motion-fast), transform var(--motion-fast);background:#eef2f7;border-radius:6px;padding:0;font-size:13px}.question-grid button.current{outline:1px solid var(--primary);outline-offset:1px;background:#fff;box-shadow:0 0 0 3px #3341551a}.question-grid button.answered{color:#166534;background:#dcfce7}.question-grid button.flagged{color:#9a3412;background:#ffedd5}.exam-legend{border-top:1px solid var(--border);gap:8px;margin:18px 0;padding-top:14px;display:grid}.review-dialog{width:min(780px,94vw)}.review-dialog-body{gap:14px;padding:16px;display:grid}.review-status-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.review-status-strip div{background:#f8fafc;border:1px solid #d9e1ea;border-radius:8px;padding:13px 14px}.review-status-strip div.attention{background:#fff7f7;border-color:#f1c9c9}.review-status-strip span{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:10.5px;font-weight:600;display:block}.review-status-strip strong{color:var(--text);margin-top:5px;font-size:26px;line-height:1;display:block}.review-status-strip .attention strong{color:var(--danger)}.review-section-title{justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.review-section-title strong{color:var(--text);font-size:13px}.review-section-title span{color:var(--muted);font-size:12px;font-weight:600}.review-question-grid{background:#fff;border:1px solid #d9e1ea;border-radius:8px;grid-template-columns:repeat(auto-fill,minmax(42px,1fr));max-height:300px;padding:10px;overflow:auto}.review-legend{border-top:none;grid-template-columns:repeat(3,minmax(0,max-content));gap:10px;margin:0;padding-top:0}.review-actions{border-top:1px solid var(--border);background:#f8fafc;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.result-table{border-collapse:collapse;width:100%;margin-top:10px}.result-table-wrap{border-radius:8px;overflow-x:auto}.result-table th,.result-table td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;transition:background var(--motion-fast);padding:8px 9px;font-size:12px}.result-table th{color:var(--muted);background:var(--surface-soft);white-space:nowrap;font-weight:600}.result-table td p{margin:2px 0 0;font-size:11px}.result-table.compact{min-width:960px}.admin-performance-card{border-left:3px solid var(--primary)}.admin-layout .admin-performance-card{border-left-color:var(--admin-accent);background:#fff;position:relative;overflow:visible}.admin-layout .admin-performance-card:before{display:none}.admin-layout .admin-performance-card>*{z-index:1;position:relative}.admin-performance-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.switch-control{min-height:30px;color:var(--text);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:9px;font-size:12px;font-weight:600;display:inline-flex;position:relative}.switch-control input{opacity:0;width:1px;height:1px;margin:0;position:absolute}.switch-track{width:42px;height:23px;transition:background var(--motion-base), border-color var(--motion-base);background:#e2e8f0;border:1px solid #cbd5e1;border-radius:999px;align-items:center;padding:3px;display:inline-flex}.switch-thumb{width:15px;height:15px;transition:transform var(--motion-base);background:#fff;border-radius:999px;box-shadow:0 1px 3px #0f172a38}.switch-control input:checked+.switch-track{background:var(--primary);border-color:#64748b}.switch-control input:checked+.switch-track .switch-thumb{transform:translate(19px)}.switch-control input:focus-visible+.switch-track{box-shadow:0 0 0 3px #3341552e}.switch-label{white-space:nowrap}.live-feed-table{min-width:1040px}.live-progress{gap:5px;min-width:160px;display:grid}.live-progress span{color:var(--muted);font-size:11px}.live-progress div{background:#e8edf3;border-radius:999px;height:6px;overflow:hidden}.live-progress i{border-radius:inherit;background:linear-gradient(90deg, var(--primary), #64748b, var(--primary));background-size:180% 100%;height:100%;animation:1.8s ease-in-out infinite sf360-progress-slide;display:block}.result-session{overflow-wrap:anywhere;max-width:210px;color:var(--muted);font-size:11px}.result-percent{min-width:42px;color:var(--success);background:#e7f3eb;border-radius:999px;justify-content:center;padding:3px 7px;font-weight:600;display:inline-flex}.result-subject-list,.result-subject-card{gap:10px;display:grid}.result-assessment-list{border-top:1px solid var(--border);display:grid}.result-assessment-row{border-bottom:1px solid var(--border);transition:background var(--motion-base), border-color var(--motion-base), box-shadow var(--motion-base), transform var(--motion-base);justify-content:space-between;align-items:center;gap:12px;padding:9px 0;display:flex}.result-assessment-row:last-child{border-bottom:none}.result-assessment-row strong{font-size:13px}.result-assessment-row p{margin:2px 0 0;font-size:12px}.result-assessment-row button,.compact-actions button{border-radius:6px;padding:6px 9px;font-size:12px}.transcript-controls{grid-template-columns:repeat(auto-fit,minmax(118px,1fr));align-items:center;gap:8px;margin-top:10px;display:grid}.transcript-controls button{min-width:76px}.transcript-actions{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.event-session-list,.event-list,.student-event-list{gap:10px;margin-top:12px;display:grid}.event-overview{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:12px;display:grid}.event-overview-card{border:1px solid var(--border);box-shadow:var(--shadow);animation:sf360-card-in var(--motion-slow) both;transition:border-color var(--motion-base), box-shadow var(--motion-base), transform var(--motion-base);background:#fff;border-radius:8px;padding:11px 12px}.event-overview-card span{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:600}.event-overview-card strong{margin-top:3px;font-size:24px;line-height:1;display:block}.event-overview-card p{margin:4px 0 0;font-size:11px}.event-create-card,.event-section-card{padding:13px}.event-create-grid{grid-template-columns:minmax(220px,1fr) 170px 120px;gap:9px;margin-top:12px;display:grid}.event-create-grid label{gap:5px;display:grid}.event-create-grid label span{color:var(--muted);font-size:11px;font-weight:600}.event-session-card,.event-card,.student-event-card{border:1px solid var(--border);box-shadow:var(--shadow);animation:sf360-card-in var(--motion-slow) both;transition:border-color var(--motion-base), box-shadow var(--motion-base), transform var(--motion-base);background:#fbfcfd;border-radius:8px;padding:12px}.student-shell .student-event-list{gap:12px;margin-top:12px}.student-shell .student-event-card{border-color:var(--student-accent-border);box-shadow:0 12px 26px rgba(var(--student-accent-rgb), .065);background:#fff;border-radius:12px;padding:14px;position:relative;overflow:hidden}.student-shell .student-event-card:before{background:var(--student-accent);content:"";height:3px;position:absolute;inset:0 0 auto}.student-shell .student-event-card:hover{border-color:var(--student-accent);box-shadow:0 16px 34px rgba(var(--student-accent-rgb), .11);transform:translateY(-2px)}.event-overview-card:hover,.event-session-card:hover{box-shadow:var(--shadow-soft);border-color:#33415547;transform:translateY(-2px)}.event-student-grid{border:1px solid var(--border);background:var(--surface-soft);border-radius:8px;max-height:220px;padding:8px;overflow:auto}.ranking-card{background:#fbf6e7;border:1px solid #d9c48a;border-radius:8px;align-items:center;gap:10px;margin:10px 0;padding:10px;display:flex}.ranking-card span{color:var(--warning);text-transform:uppercase;font-size:11px;font-weight:600}.ranking-card strong{margin-top:2px;display:block}.event-result-table{min-width:860px}.event-status-table{min-width:980px}.syllabus-review-table{min-width:1320px}.syllabus-review-table input{border-radius:6px;min-width:140px;padding:6px 7px;font-size:12px}.student-event-session{border-top:1px solid var(--border);grid-template-columns:minmax(160px,.7fr) minmax(0,1fr);align-items:center;gap:10px;padding:10px 0;display:grid}.student-event-session:first-of-type{border-top:none}.student-event-assessments{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.compact-heading{margin:14px 0 8px;font-size:13px}.image-preview{object-fit:contain;border:1px solid var(--border);background:#f8faf9;border-radius:8px;width:min(420px,100%);max-height:360px;margin:14px auto 18px;display:block}.section-title{align-items:center;gap:8px;margin-top:0;display:flex}.actions{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.bank-list,.checkbox-grid{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.compact-bank-list{gap:6px;margin-top:8px}.bank-header{justify-content:space-between;align-items:center;gap:14px;display:flex}.bank-header h3{margin:0}.bank-header p{margin:4px 0 0}.question-metadata-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:14px;display:grid}.question-metadata-grid label{gap:6px;display:grid}.question-metadata-grid span{color:var(--muted);font-size:12px;font-weight:600}.question-builder-tabs{border:1px solid var(--border);background:var(--surface-soft);border-radius:8px;gap:6px;margin:12px 0;padding:4px;display:flex}.question-builder-tab{color:var(--muted);box-shadow:none;background:0 0;border:1px solid #0000;flex:1}.question-builder-tab:hover{border-color:var(--border);color:var(--text);box-shadow:none;background:#fff;transform:none}.question-builder-tab.active{border-color:var(--border);color:var(--text);background:#fff;box-shadow:0 6px 16px #0f172a0f}.question-builder-panel{gap:12px;display:grid}.question-builder-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.question-scope-card{border:1px solid var(--border);background:var(--surface-soft);border-radius:8px;gap:4px;padding:10px 12px;display:grid}.question-scope-card span{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:600}.question-scope-card strong{color:var(--text);font-size:14px}.question-scope-card small{color:var(--muted);font-weight:600}.question-review-grid,.question-review-card{grid-template-columns:minmax(0,1.45fr) minmax(260px,.85fr);align-items:start;gap:12px;display:grid}.review-card-grid{gap:12px;display:grid}.question-review-card{border:1px solid var(--border);background:var(--surface-soft);border-radius:8px;padding:12px}.question-review-main .question-preview{margin:0}.question-approval-metadata{border:1px solid var(--border);background:#fff;border-radius:8px;gap:8px;padding:12px;display:grid}.question-approval-metadata h3,.question-approval-metadata p{margin:0}.question-approval-metadata h3{font-size:15px}.question-approval-metadata p{color:var(--muted);font-size:12px;line-height:1.4}.question-approval-metadata strong{color:var(--text)}.access-control-layout{grid-template-columns:minmax(220px,.28fr) minmax(0,1fr);align-items:start;gap:12px;display:grid}.access-user-list{gap:7px;display:grid}.access-user-row{border:1px solid var(--border);color:var(--text);text-align:left;box-shadow:none;background:#fff;border-radius:8px;justify-content:stretch;gap:2px;padding:10px;display:grid}.access-user-row:hover{border-color:var(--primary);background:var(--surface-soft);color:var(--text);box-shadow:none;transform:none}.access-user-row.active{border-color:var(--primary);box-shadow:inset 3px 0 0 var(--primary);background:#eef2f7}.access-user-row span,.access-user-row small{color:var(--muted);font-size:11px;font-weight:600}.access-matrix-panel{gap:10px;min-width:0;display:grid}.access-matrix-table{min-width:1100px}.access-check{min-width:120px;color:var(--muted);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:6px;font-size:10.5px;font-weight:600;display:inline-grid}.access-check input{width:15px;height:15px}.question-analytics{border:1px solid var(--border);background:var(--surface-soft);border-radius:8px;gap:6px;margin:12px 0;padding:12px;display:grid}.question-analytics p{margin:0;font-size:13px}.question-table-wrap{overflow-x:auto}.question-table{border-collapse:collapse;width:100%;min-width:980px;margin-top:10px}.bank-table{border-collapse:collapse;width:100%;margin-top:12px}.bank-table th,.bank-table td,.question-table th,.question-table td{vertical-align:top;text-align:left;border-bottom:1px solid var(--border);padding:7px 8px;font-size:12px}.bank-table th,.question-table th{color:var(--muted);font-weight:600}.bank-table td{padding:11px 8px;font-size:13px}.question-table textarea{min-height:62px}.question-table input,.question-table select,.question-table textarea{border-radius:6px;padding:7px 8px;font-size:12px}.question-table button{border-radius:6px;padding:8px}.dense-field-grid{gap:7px;min-width:210px;display:grid}.student-filter-grid{grid-template-columns:minmax(220px,1.4fr) repeat(5,minmax(120px,1fr));gap:8px;margin:12px 0 10px;display:grid}.student-filter-grid input,.student-filter-grid select{border-radius:6px;padding:8px 9px;font-size:12px}.asset-summary-grid{grid-template-columns:repeat(3,minmax(160px,1fr));gap:10px;display:grid}.asset-upload-grid,.asset-filter-grid{grid-template-columns:minmax(220px,1fr) minmax(220px,1fr) auto;align-items:end;gap:10px;display:grid}.asset-filter-grid{grid-template-columns:repeat(2,minmax(180px,240px));margin-bottom:10px}.asset-upload-action{align-items:end;display:flex}.asset-table{min-width:940px}.asset-thumb{object-fit:cover;border:1px solid var(--border);background:var(--surface-soft);border-radius:6px;width:72px;height:48px}.link-button{justify-content:center;align-items:center;gap:6px;text-decoration:none;display:inline-flex}.student-create-card{padding:13px}.segmented-control{border:1px solid var(--border);background:var(--surface-soft);border-radius:8px;gap:4px;padding:3px;display:inline-flex}.segmented-control button{border-radius:6px;padding:6px 10px;font-size:12px}.student-create-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px;display:grid}.student-create-grid label,.student-edit-panel label{gap:5px;display:grid}.student-create-grid label span,.student-edit-panel label span{color:var(--muted);font-size:11px;font-weight:600}.student-create-actions{grid-column:1/-1;justify-content:flex-end;align-items:center;gap:10px;display:flex}.student-create-summary{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.student-create-summary span{border:1px solid var(--border);color:var(--muted);border-radius:7px;gap:2px;padding:9px 10px;font-size:11px;font-weight:600;display:grid}.student-create-summary strong{color:var(--text);font-size:14px}.student-compact-table td{vertical-align:middle}.student-compact-table p{margin:3px 0 0;font-size:11px}.student-edit-panel{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:12px;display:grid}.student-edit-panel input,.student-edit-panel select{border-radius:6px;padding:7px 8px;font-size:12px}.student-edit-dialog{width:min(560px,100%)}.student-edit-dialog-actions{border-top:1px solid var(--border);justify-content:flex-end;align-items:center;gap:8px;padding:12px;display:flex}.question-cell{max-width:340px}.question-cell strong{-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.35;display:-webkit-box;overflow:hidden}.question-cell p{text-overflow:ellipsis;white-space:nowrap;margin:4px 0 0;overflow:hidden}.capitalize{text-transform:capitalize}.table-actions{white-space:nowrap;align-items:center;gap:8px;display:flex}.table-actions button,.question-edit-actions button{border-radius:6px;padding:7px 10px;font-size:12px}.question-edit-row td{background:var(--surface-soft)}.question-edit-panel{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:10px;display:grid}.question-edit-panel label{gap:5px;display:grid}.question-edit-panel span,.field-label{color:var(--muted);font-size:11px;font-weight:600}.question-edit-actions{align-items:end;gap:8px;display:flex}.question-preview{border:1px solid var(--border);background:#fff;border-radius:8px;padding:14px}.preview-overlay{z-index:3000;animation:sf360-soft-pop var(--motion-base) both;background:#0a141294;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.platform-dialog-overlay{z-index:5400;animation:sf360-soft-pop var(--motion-base) both;background:#0f172a6b;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.platform-dialog{background:var(--surface);width:min(520px,100%);animation:sf360-modal-in var(--motion-slow) both;border:1px solid #d8dee7;border-radius:10px;overflow:hidden;box-shadow:0 26px 70px #0f172a47}.platform-dialog-header{grid-template-columns:38px minmax(0,1fr) 34px;align-items:start;gap:12px;padding:18px;display:grid}.platform-dialog-icon{width:38px;height:38px;color:var(--warning);background:#fffbeb;border-radius:9px;place-items:center;display:inline-grid}.platform-dialog.success .platform-dialog-icon{color:var(--success);background:#ecfdf5}.platform-dialog.danger .platform-dialog-icon{color:var(--danger);background:#fef2f2}.platform-dialog-header h2{letter-spacing:0;margin:0 0 5px;font-size:18px}.platform-dialog-header p{color:var(--muted);font-size:13px;line-height:1.45}.platform-dialog-actions{border-top:1px solid var(--border);background:#f8fafc;justify-content:flex-end;align-items:center;gap:8px;padding:13px 18px;display:flex}.preview-dialog{border:1px solid var(--border);background:var(--surface);width:min(680px,100%);max-height:calc(100vh - 48px);animation:sf360-modal-in var(--motion-slow) both;border-radius:10px;overflow:auto;box-shadow:0 24px 60px #0c121038}.preview-dialog-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:start;gap:16px;padding:14px 16px;display:flex}.preview-dialog-header h2{margin:6px 0 2px}.preview-dialog .question-preview{background:#fff;margin:16px}.icon-button{justify-content:center;width:34px;height:34px;padding:0}.unlock-dialog{width:min(480px,100%)}.unlock-form{gap:10px;padding:16px;display:grid}.unlock-form button{justify-self:start}.question-preview h3{margin:10px 0 12px;font-size:16px;line-height:1.4}.question-preview .question-meta{margin-bottom:0}.question-preview .option{margin-bottom:7px;padding:9px 10px}.preview-warning{color:var(--danger);margin:4px 0 12px;font-size:12px;font-weight:600}.section-builder{gap:14px;margin:16px 0;display:grid}.section-row,.bank-section{border-top:1px solid var(--border);padding-top:16px}.assessment-list{gap:10px;display:grid}.assessment-card{border:1px solid var(--border);box-shadow:var(--shadow);animation:sf360-card-in var(--motion-slow) both;transition:border-color var(--motion-base), box-shadow var(--motion-base), transform var(--motion-base);background:#fff;border-radius:10px;gap:14px;padding:14px;display:grid}.assessment-card.open{border-color:#33415547;box-shadow:0 12px 28px #0f172a0f}.assessment-card-head,.workflow-header,.assessment-section-header,.section-save-row{justify-content:space-between;align-items:center;gap:14px;display:flex}.assessment-card-head h3{margin-bottom:4px}.assessment-create-card{border-radius:12px}.workflow-header{align-items:flex-start;margin-bottom:14px}.workflow-header.compact{margin-bottom:10px}.workflow-header p{margin:4px 0 0}.workflow-steps{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.workflow-steps span{border:1px solid var(--border);color:var(--muted);transition:border-color var(--motion-base), background var(--motion-base), color var(--motion-base), transform var(--motion-base);background:#fff;border-radius:999px;padding:7px 9px;font-size:12px;font-weight:600}.workflow-steps span:hover{color:var(--text);border-color:#33415552;transform:translateY(-1px)}.workflow-panel{border:1px solid var(--border);background:var(--surface-soft);animation:sf360-card-in var(--motion-slow) both;border-radius:8px;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:12px;display:grid}.workflow-phase{gap:10px;display:flex}.workflow-phase span{width:26px;height:26px;color:var(--primary);background:#fff;border-radius:999px;flex:0 0 26px;place-items:center;font-size:12px;font-weight:600;display:inline-grid}.workflow-phase p{margin:3px 0 0;font-size:12px}.workflow-actions{flex-wrap:wrap;align-items:center;gap:10px;padding-top:4px;display:flex}.workflow-actions p{flex-basis:100%;margin:0}.assessment-details-panel{border:1px solid var(--border);box-shadow:var(--shadow);animation:sf360-card-in var(--motion-slow) both;background:#fff;border-radius:8px;gap:12px;padding:14px;display:grid}.assessment-details-panel h4{margin-bottom:4px}.assessment-section-editor{gap:8px;display:grid}.section-edit-row{grid-template-columns:minmax(180px,1.4fr) 130px minmax(170px,1fr);align-items:center;gap:8px;display:grid}.assessment-summary-list{border-top:1px solid var(--border);border-bottom:1px solid var(--border);gap:6px;margin:0;padding:10px 0 10px 18px;display:grid}.assessment-section-list{gap:10px;padding-top:2px;display:grid}.assessment-section-list-head h4{margin-bottom:4px}.assessment-section-list-head p{margin:0}.assessment-section{border:1px solid var(--border);background:#fff;border-radius:8px;overflow:hidden}.assessment-section.open{border-color:#33415552;box-shadow:0 8px 22px #0f172a0d}.assessment-section-header{background:var(--surface-soft);padding:12px 14px}.assessment-section-header p{margin:4px 0 0}.assessment-section-body{border-top:1px solid var(--border);gap:12px;padding:14px;display:grid}.section-picker-table{min-width:760px;margin-top:0}.section-picker-table th:first-child,.section-picker-table td:first-child{text-align:center;width:64px}.section-picker-table input[type=checkbox]{width:16px;height:16px}.section-save-row{padding-top:2px}.assignment-window{background:#f3f5f7;border:1px solid #3341553d;border-radius:8px;gap:12px;padding:14px;display:grid}.assignment-window table input{width:auto}.section-result-list{gap:3px;min-width:220px;display:grid}.section-result-list span{border-bottom:1px solid #edf0f4;justify-content:space-between;gap:10px;padding:3px 0;font-size:11px;line-height:1.35;display:flex}.section-result-list span:last-child{border-bottom:none}.section-result-list strong{color:var(--text);font-weight:600}.option.compact{margin-bottom:0;padding:9px 11px}.summary-row{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:14px;padding:12px 0;display:flex}.summary-row:first-of-type{border-top:none}.summary-row p{margin:4px 0 0}.admin-layout{--admin-bg:#f5f7fa;--admin-surface:#fff;--admin-surface-soft:#f8fafc;--admin-border:#d9e0ea;--admin-line:#e7ecf3;--admin-text:#111827;--admin-muted:#64748b;--admin-accent:#0f766e;--admin-accent-dark:#115e59;--admin-accent-soft:#ecfdf5;--admin-accent-border:#99f6e4;--admin-navy:#111827;background:var(--admin-bg);grid-template-columns:248px minmax(0,1fr);min-height:100vh}.admin-layout.admin-mode-admin{--admin-accent:#7f1d1d;--admin-accent-dark:#450a0a;--admin-accent-soft:#fef2f2;--admin-accent-border:#fecaca}.admin-layout.admin-mode-staff{--admin-accent:#0f766e;--admin-accent-dark:#115e59;--admin-accent-soft:#ecfdf5;--admin-accent-border:#99f6e4}.admin-layout .sidebar{background:linear-gradient(180deg, var(--admin-accent-dark) 0%, #172033 46%, #111827 100%);border-right:1px solid #ffffff14;flex-direction:column;height:100vh;padding:18px 14px;display:flex;position:sticky;top:0;overflow:auto;box-shadow:10px 0 28px #0f172a1a}.admin-layout .sidebar-brand{border-bottom:1px solid #ffffff1a;margin-bottom:14px;padding:8px 8px 14px}.admin-layout .sidebar-brand img{width:138px}.sidebar-context,.sidebar-user{background:#ffffff0b;border:1px solid #ffffff14;border-radius:8px;gap:3px;margin-bottom:14px;padding:10px 11px;display:grid}.sidebar-context span,.sidebar-user span{color:#93a4b8;text-transform:uppercase;letter-spacing:.08em;font-size:10px;font-weight:600}.sidebar-context strong,.sidebar-user strong{color:#fff;font-size:13px;line-height:1.2}.sidebar-user{margin-top:auto;margin-bottom:10px}.sidebar-user p{color:#aeb8c6;margin:0;font-size:11px}.sidebar-nav{gap:3px;display:grid}.admin-layout .sidebar-item{color:#b8c3d3;border:1px solid #0000;border-radius:8px;margin-bottom:0}.admin-layout .sidebar-item.active{border-color:color-mix(in srgb, var(--admin-accent-border) 45%, transparent);background:color-mix(in srgb, var(--admin-accent) 24%, transparent);box-shadow:inset 3px 0 0 var(--admin-accent-border), 0 8px 18px #0f172a2e;color:#fff}.admin-layout .sidebar-item:hover{background:#ffffff14;transform:translate(1px)}.admin-layout .admin-main{min-width:0;padding:18px 22px 28px}.admin-topbar{border:1px solid var(--admin-border);background:var(--admin-surface);border-radius:10px;justify-content:space-between;align-items:center;gap:14px;min-height:58px;margin-bottom:14px;padding:11px 14px;display:flex;box-shadow:0 8px 18px #0f172a0b}.admin-topbar strong{color:var(--admin-text);margin-top:2px;font-size:16px;display:block}.admin-eyebrow{color:var(--admin-muted);text-transform:uppercase;letter-spacing:.08em;font-size:10px;font-weight:600}.admin-topbar-meta{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.admin-api-status{border:1px solid var(--admin-border);color:var(--admin-muted);background:var(--admin-surface-soft);border-radius:999px;align-items:center;gap:7px;padding:5px 9px;font-size:11px;font-weight:600;display:inline-flex}.admin-api-status:before{content:"";background:#94a3b8;border-radius:999px;width:7px;height:7px}.admin-api-status.online:before{background:var(--admin-accent)}.admin-api-status.offline:before{background:var(--warning)}.admin-mobile-nav{display:none}.admin-layout .admin-page-header{border-bottom:1px solid var(--admin-border);justify-content:space-between;align-items:flex-end;gap:14px;margin:0 0 14px;padding:0 2px 12px;display:flex}.admin-layout .admin-page-header h1{color:var(--admin-text);font-size:24px;font-weight:600}.admin-layout .admin-page-header p{max-width:760px;font-size:13px}.admin-layout .card,.admin-layout .assessment-card,.admin-layout .event-overview-card,.admin-layout .event-session-card,.admin-layout .event-card,.admin-layout .workflow-panel,.admin-layout .assessment-details-panel{border-color:var(--admin-border);background:var(--admin-surface);border-radius:8px;box-shadow:0 8px 18px #0f172a0b}.admin-layout .card{padding:14px}.admin-layout .card:hover,.admin-layout .assessment-card:hover,.admin-layout .event-overview-card:hover,.admin-layout .event-session-card:hover{border-color:#b9c4d3;box-shadow:0 12px 26px #0f172a13}.admin-layout .card h2,.admin-layout .dashboard-card h2,.admin-layout .assessment-card-head h3,.admin-layout .bank-header h3{color:var(--admin-text);letter-spacing:0;font-size:16px;font-weight:600}.admin-layout .dashboard-card{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.admin-layout .stats{gap:11px;margin-bottom:14px}.admin-layout .stat-card{border-color:var(--admin-border);background:var(--admin-surface);border-radius:8px;padding:13px 14px;position:relative;overflow:hidden;box-shadow:0 8px 18px #0f172a0b}.admin-layout .stat-card:before{content:"";background:var(--admin-accent);width:4px;position:absolute;inset:0 auto 0 0}.admin-layout .stat-card h3{color:var(--admin-text);margin-top:5px;font-size:26px;line-height:1}.admin-layout .stat-card p,.admin-layout .stat-card span{font-size:11px}.admin-layout .badge{border:1px solid var(--admin-accent-border);background:var(--admin-accent-soft);color:var(--admin-accent-dark);border-radius:999px;font-size:10.5px;font-weight:600}.admin-layout .badge.success{background:#eaf7ef;border-color:#bbdfc7}.admin-layout .badge.warning{background:#fbf6e7;border-color:#e5d3a2}.admin-layout .badge.danger{background:#fef2f2;border-color:#fecaca}.admin-layout button{border-radius:6px;font-size:12px;font-weight:600}.admin-layout button:not(.secondary):not(.danger):not(.ghost):not(.password-toggle):not(.icon-button):not(.taxonomy-group-card):not(.question-builder-tab):not(.notification-item-main):not(.access-user-row){background:var(--admin-accent)}.admin-layout button:not(.secondary):not(.danger):not(.ghost):not(.password-toggle):not(.icon-button):not(.taxonomy-group-card):not(.question-builder-tab):not(.notification-item-main):not(.access-user-row):hover{background:var(--admin-accent-dark)}.admin-layout button.secondary{color:var(--admin-accent-dark);background:#f8fafc;border:1px solid #cbd5e1}.admin-layout button.ghost{color:#475569}.admin-layout input,.admin-layout textarea,.admin-layout select{border-color:var(--admin-border);background:#fff;border-radius:6px;font-size:12px}.admin-layout input:focus,.admin-layout textarea:focus,.admin-layout select:focus{border-color:var(--admin-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--admin-accent) 14%, transparent)}.admin-layout .result-table-wrap,.admin-layout .question-table-wrap{border:1px solid var(--admin-border);background:var(--admin-surface);border-radius:8px}.admin-layout .result-table,.admin-layout .question-table,.admin-layout .bank-table{margin-top:0}.admin-layout .result-table th,.admin-layout .question-table th,.admin-layout .bank-table th{z-index:1;background:var(--admin-accent-soft);color:var(--admin-accent-dark);text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid #cbd5e1;font-size:10.5px;font-weight:600;position:sticky;top:0}.admin-layout .result-table td,.admin-layout .question-table td,.admin-layout .bank-table td{border-bottom-color:var(--admin-line);font-size:12px}.admin-layout .result-table tbody tr:hover td,.admin-layout .bank-table tbody tr:hover td,.admin-layout .question-table tbody tr:hover td{background:var(--admin-accent-soft)}.admin-layout .summary-row{padding:10px 0}.admin-layout .assignment-window,.admin-layout .question-analytics,.admin-layout .assessment-section-header,.admin-layout .workflow-panel{background:var(--admin-surface-soft)}.admin-layout .workflow-steps span{background:#fff;border-radius:7px}.admin-layout .student-filter-grid,.admin-layout .transcript-controls,.admin-layout .event-create-grid,.admin-layout .student-create-grid,.admin-layout .form-grid{gap:9px}.admin-layout .table-actions{gap:6px}.admin-layout .table-actions button,.admin-layout .compact-actions button,.admin-layout .result-assessment-row button{padding:6px 8px;font-size:11.5px}.admin-density-compact .result-table th,.admin-density-compact .result-table td,.admin-density-compact .question-table th,.admin-density-compact .question-table td,.admin-density-compact .bank-table th,.admin-density-compact .bank-table td{padding:5px 7px;font-size:11px}.admin-density-compact .card,.admin-density-compact .assessment-card,.admin-density-compact .event-session-card,.admin-density-compact .event-card{padding:11px}.density-toggle{color:var(--admin-muted);align-items:center;gap:7px;font-size:11px;font-weight:600;display:inline-flex}.density-toggle select{border-radius:999px;width:auto;min-width:122px;height:30px;padding:5px 8px;font-size:11px}.admin-quick-actions{border:1px solid var(--admin-accent-border);background:var(--admin-accent-soft);border-radius:10px;justify-content:space-between;align-items:center;gap:14px;margin:0 0 14px;padding:12px 14px;display:flex}.admin-quick-actions strong{color:var(--admin-accent-dark);margin-top:2px;font-size:14px;display:block}.admin-quick-actions>div:last-child{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.taxonomy-workbench{gap:12px;display:grid}.taxonomy-group-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.taxonomy-group-card{border:1px solid var(--admin-border);min-height:78px;color:var(--admin-text);text-align:left;box-shadow:none;background:#fff;border-radius:8px;justify-content:stretch;gap:3px;padding:10px 12px;display:grid}.taxonomy-group-card:hover{border-color:var(--admin-accent-border);background:var(--admin-accent-soft);transform:none}.taxonomy-group-card.active{border-color:var(--admin-accent);color:var(--admin-text);box-shadow:inset 3px 0 0 var(--admin-accent);background:#eef2ff}.taxonomy-group-card span{color:var(--admin-muted);text-transform:uppercase;letter-spacing:.03em;font-size:11px;font-weight:600}.taxonomy-group-card strong{color:var(--admin-text);font-size:24px;line-height:1}.taxonomy-group-card small{color:var(--admin-muted);font-size:11px;font-weight:600}.taxonomy-filter-grid{grid-template-columns:repeat(4,minmax(150px,1fr));align-items:center;gap:8px;display:grid}.taxonomy-filter-grid input{grid-column:span 2}.taxonomy-filter-grid input,.taxonomy-filter-grid select,.taxonomy-filter-grid button{min-height:34px}.taxonomy-active-summary{border:1px solid var(--admin-border);background:var(--admin-surface-soft);border-radius:8px;align-items:center;gap:10px;padding:9px 10px;display:flex}.taxonomy-active-summary p{margin:0}.admin-status-legend{justify-content:flex-end;margin:-6px 0 12px}.admin-empty-state{background:#f8fafc}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}button:hover,.student-stat:hover,.stat-card:hover,.guide-item:hover,.student-event-card:hover,.event-card:hover,.assessment-card:hover,.event-overview-card:hover,.event-session-card:hover,.result-assessment-row:hover,.option:hover{transform:none}}@media (width<=900px){.login-page,.layout,.exam-wrapper,.grid-2,.grid-3,.stats,.form-grid,.question-metadata-grid,.question-edit-panel,.question-review-grid,.question-review-card,.access-control-layout,.student-stats,.student-home-layout,.workflow-panel,.section-edit-row,.transcript-controls,.student-filter-grid,.student-create-grid,.student-create-summary,.student-edit-panel,.asset-summary-grid,.asset-upload-grid,.asset-filter-grid,.event-overview,.event-create-grid,.student-event-session,.performance-rank-card,.leaderboard-controls,.taxonomy-group-grid,.taxonomy-filter-grid,.guide-grid{grid-template-columns:1fr}.sidebar{display:none}.admin-layout .admin-main{padding:14px}.admin-topbar,.admin-layout .admin-page-header{flex-direction:column;align-items:flex-start}.admin-topbar-meta{justify-content:flex-start}.taxonomy-active-summary{flex-direction:column;align-items:flex-start}.admin-mobile-nav{border:1px solid var(--border);background:#fff;border-radius:10px;gap:7px;margin:0 0 14px;padding:8px;display:flex;overflow-x:auto;box-shadow:0 8px 18px #0f172a0b}.admin-mobile-nav button{color:#334155;background:#f8fafc;border:1px solid #d7dde5;flex:none}.admin-mobile-nav button.active{border-color:var(--admin-accent);background:var(--admin-accent);color:#fff}.exam-summary{border-left:none;border-top:1px solid var(--border)}.student-topbar,.student-topbar-actions,.student-exam-row,.student-practice-panel,.performance-block-title,.leaderboard-pagination,.bank-header,.workflow-header,.assessment-card-head,.assessment-section-header,.section-save-row,.guide-summary{flex-direction:column;align-items:flex-start}.workflow-steps{justify-content:flex-start}.login-page{gap:24px;padding:24px}.brand-panel h1{font-size:30px}.login-illustration{max-width:420px}.guide-session{text-align:left;max-width:none}.student-profile-card{width:100%}.student-tabs{width:100%;position:static}.student-tabs button{flex:140px}.leaderboard-pagination{align-items:flex-start}.leaderboard-pagination div{flex-wrap:wrap}.student-current-session{grid-template-columns:1fr}.student-assessment-tools{flex-direction:column;align-items:stretch}.student-filter-tabs{width:100%}.student-filter-tabs button{flex:auto}.student-shell .student-assessment-table{min-width:0}.student-shell .student-assessment-table thead{display:none}.student-shell .student-assessment-table,.student-shell .student-assessment-table tbody,.student-shell .student-assessment-table tr,.student-shell .student-assessment-table td{width:100%;display:block}.student-shell .student-assessment-table tr{border-bottom:1px solid var(--student-line);padding:12px}.student-shell .student-assessment-table tr:last-child{border-bottom:none}.student-shell .student-assessment-table td{text-align:right;border-bottom:none;justify-content:space-between;align-items:center;gap:12px;padding:7px 0;display:flex}.student-shell .student-assessment-table td:before{content:attr(data-label);color:#64748b;text-align:left;text-transform:uppercase;font-size:10px;font-weight:600}.student-shell .student-assessment-title{text-align:left;justify-content:stretch;align-items:start;display:grid}.student-shell .student-assessment-title:before{margin-bottom:4px}.student-assessment-action button{width:auto}.toast-host{width:auto;left:14px;right:14px}.platform-dialog-actions,.review-actions{flex-direction:column-reverse;align-items:stretch}.platform-dialog-actions button,.review-actions button{justify-content:center;width:100%}.review-status-strip{grid-template-columns:1fr}}
