:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#17212b;background:#f5f8fa;font-synthesis:none;text-rendering:optimizeLegibility;--bg: #f4f7f9;--surface: #ffffff;--surface-soft: #f7fafb;--text: #17212b;--muted: #687784;--border: #dfe7eb;--primary: #0e7f7b;--primary-strong: #096b68;--primary-soft: #e4f4f2;--accent: #ff7f63;--shadow: 0 14px 38px rgba(19, 46, 59, .08);--sidebar: #0f2c35;--sidebar-muted: #9fb4bc;--danger: #b42318}:root[data-theme=dark]{--bg: #0e1519;--surface: #151f24;--surface-soft: #18262c;--text: #eef6f7;--muted: #98aab2;--border: #2a3a42;--primary: #43b7b0;--primary-strong: #5cc7c0;--primary-soft: #173c3c;--shadow: 0 18px 44px rgba(0, 0, 0, .28);--sidebar: #091115;--sidebar-muted: #89a0aa}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{min-width:320px;background:var(--bg);color:var(--text)}button,input{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,a:focus-visible{outline:3px solid color-mix(in srgb,var(--primary),white 38%);outline-offset:2px}.brand{display:flex;align-items:center;gap:12px;min-width:0}.brand-mark{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;color:#fff;font-weight:800;font-size:20px;background:linear-gradient(145deg,var(--primary),#35a79f);box-shadow:0 8px 20px #0e7f7b3d;flex:0 0 auto}.brand-copy{display:grid;line-height:1.1}.brand-copy strong{font-size:18px;letter-spacing:-.02em}.brand-copy span{color:var(--muted);font-size:12px;margin-top:4px}.login-page{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(420px,.9fr);background:var(--surface)}.login-visual{position:relative;overflow:hidden;padding:72px;display:flex;align-items:flex-end;background:linear-gradient(150deg,#092f38,#0e6968 58%,#1a8e86);color:#fff}.login-visual:after{content:"";position:absolute;inset:0;opacity:.14;background-image:radial-gradient(circle at 15% 25%,white 0 1px,transparent 1.5px),radial-gradient(circle at 78% 65%,white 0 1px,transparent 1.5px);background-size:34px 34px,48px 48px}.visual-orb{position:absolute;border-radius:999px;filter:blur(1px);border:1px solid rgba(255,255,255,.18);background:#ffffff12}.visual-orb-one{width:420px;height:420px;right:-120px;top:-80px}.visual-orb-two{width:260px;height:260px;left:-70px;top:18%}.login-message{position:relative;z-index:1;max-width:680px}.login-message h1{font-size:clamp(42px,5vw,72px);line-height:1.02;letter-spacing:-.045em;margin:24px 0}.login-message p{max-width:590px;color:#ffffffd1;font-size:18px;line-height:1.7}.pill{display:inline-flex;padding:8px 12px;border:1px solid rgba(255,255,255,.25);background:#ffffff17;border-radius:999px;font-size:13px}.login-panel{display:grid;place-items:center;padding:48px;background:var(--surface)}.login-card{width:min(100%,440px)}.login-heading{margin:54px 0 28px}.login-heading h2{font-size:32px;margin:8px 0 10px;letter-spacing:-.03em}.login-heading p,.login-note{color:var(--muted);line-height:1.6}.login-card form{display:grid;gap:18px}.login-card label{display:grid;gap:8px;font-weight:650;font-size:14px}.login-card input{width:100%;border:1px solid var(--border);border-radius:13px;padding:14px 15px;background:var(--surface);color:var(--text);transition:border .15s,box-shadow .15s}.login-card input:focus{border-color:var(--primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--primary-soft),transparent 22%);outline:0}.login-note{font-size:12px;margin-top:18px}.form-error{padding:12px 14px;border-radius:12px;color:var(--danger);background:#fef3f2;border:1px solid #fecdca;font-size:14px}.button{border:0;border-radius:12px;min-height:42px;padding:0 16px;font-weight:700}.button-primary{color:#fff;background:var(--primary);box-shadow:0 8px 20px color-mix(in srgb,var(--primary),transparent 72%)}.button-primary:hover{background:var(--primary-strong)}.button:disabled{cursor:wait;opacity:.65}.button-full{width:100%;min-height:50px}.button-ghost{color:var(--text);background:var(--surface-soft);border:1px solid var(--border)}.icon-button{width:42px;height:42px;border-radius:12px;border:1px solid var(--border);background:var(--surface);color:var(--text);display:grid;place-items:center}.app-shell{min-height:100vh;display:grid;grid-template-columns:250px minmax(0,1fr);transition:grid-template-columns .2s ease}.app-shell.sidebar-collapsed{grid-template-columns:82px minmax(0,1fr)}.sidebar{position:sticky;top:0;height:100vh;padding:22px 16px;display:flex;flex-direction:column;color:#fff;background:var(--sidebar);z-index:30}.sidebar .brand-copy span{color:var(--sidebar-muted)}.sidebar-top{min-height:52px;display:flex;align-items:center;justify-content:space-between;gap:10px}.sidebar-collapse{border-color:#ffffff1f;color:#fff;background:#ffffff12;flex:0 0 auto}.sidebar-nav{display:grid;gap:7px;margin-top:38px}.sidebar-nav a{min-height:46px;display:flex;align-items:center;gap:12px;padding:0 13px;color:#d7e4e8;text-decoration:none;border-radius:12px;font-weight:650}.sidebar-nav a:hover{background:#ffffff0f}.sidebar-nav a.active{color:#fff;background:#43b7b02e;box-shadow:inset 3px 0 #43b7b0}.nav-icon{width:24px;text-align:center;font-size:20px}.sidebar-foot{margin-top:auto;color:var(--sidebar-muted);display:grid;gap:5px;padding:12px;font-size:12px}.shell-main{min-width:0}.topbar{min-height:74px;position:sticky;top:0;z-index:20;padding:0 30px;display:flex;align-items:center;gap:22px;justify-content:space-between;background:color-mix(in srgb,var(--surface),transparent 7%);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--border)}.topbar-context{display:grid;gap:3px;margin-right:auto}.eyebrow{color:var(--primary);text-transform:uppercase;letter-spacing:.09em;font-weight:800;font-size:11px}.topbar-context strong{font-size:14px}.topbar-actions{display:flex;align-items:center;gap:10px}.user-chip{display:flex;align-items:center;gap:10px;padding:5px 10px 5px 5px;border:1px solid var(--border);border-radius:13px;background:var(--surface)}.avatar{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:var(--primary-soft);color:var(--primary);font-weight:800;font-size:12px}.user-copy{display:grid;line-height:1.15}.user-copy strong{font-size:13px}.user-copy span{color:var(--muted);font-size:11px;margin-top:3px}.mobile-menu{display:none}.page-content{padding:34px;max-width:1500px;margin:0 auto}.page-stack{display:grid;gap:22px}.welcome-card,.content-card,.metric-card{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow)}.welcome-card{min-height:220px;border-radius:22px;padding:38px;display:flex;justify-content:space-between;align-items:flex-end;gap:30px;overflow:hidden;position:relative}.welcome-card:after{content:"M";position:absolute;right:-20px;top:-85px;font-size:300px;font-weight:900;color:var(--primary-soft);transform:rotate(8deg);z-index:0}.welcome-card>*{position:relative;z-index:1}.welcome-card h1{font-size:clamp(34px,4vw,54px);line-height:1;letter-spacing:-.04em;margin:10px 0 14px}.welcome-card p{color:var(--muted);max-width:660px;margin:0;line-height:1.6}.status-badge{display:inline-flex;align-items:center;gap:9px;padding:10px 13px;border-radius:999px;white-space:nowrap;background:var(--primary-soft);color:var(--primary-strong);font-size:12px;font-weight:800}.status-badge span{width:8px;height:8px;border-radius:50%;background:var(--primary);box-shadow:0 0 0 5px color-mix(in srgb,var(--primary),transparent 85%)}.metric-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.metric-card{border-radius:18px;padding:24px;display:grid;gap:6px}.metric-card span{color:var(--muted);font-size:13px;font-weight:700}.metric-card strong{font-size:30px;letter-spacing:-.035em}.metric-card small{color:var(--muted)}.content-card{border-radius:18px;padding:28px}.content-card p{color:var(--muted);line-height:1.7;margin-bottom:0}.section-heading{display:flex;justify-content:space-between;align-items:start;gap:20px}.section-heading h2{margin:6px 0 0;letter-spacing:-.025em}.tag{padding:7px 10px;border-radius:999px;border:1px solid var(--border);color:var(--muted);background:var(--surface-soft);font-size:11px;font-weight:750}.app-loading{min-height:100vh;display:grid;place-items:center;align-content:center;gap:14px;color:var(--muted)}.loader-mark{width:56px;height:56px;border-radius:18px;display:grid;place-items:center;background:var(--primary);color:#fff;font-size:25px;font-weight:900;animation:breathe 1.2s ease-in-out infinite alternate}.sidebar-backdrop{display:none}@keyframes breathe{0%{transform:scale(.94);opacity:.75}to{transform:scale(1);opacity:1}}@media(max-width:900px){.login-page{grid-template-columns:1fr}.login-visual{display:none}.login-panel{min-height:100vh;padding:28px}.login-heading{margin-top:44px}.app-shell,.app-shell.sidebar-collapsed{display:block}.sidebar{position:fixed;inset:0 auto 0 0;width:min(84vw,290px);transform:translate(-105%);transition:transform .2s ease;box-shadow:16px 0 40px #00000040}.sidebar.sidebar-open{transform:translate(0)}.sidebar-collapse{display:none}.sidebar-backdrop{display:block;position:fixed;inset:0;z-index:25;border:0;background:#010d1273}.mobile-menu{display:grid}.topbar{padding:0 16px;min-height:66px;gap:10px}.topbar-context{display:none}.topbar-actions{margin-left:auto}.user-copy{display:none}.user-chip{padding-right:5px}.page-content{padding:20px 16px 32px}.metric-grid{grid-template-columns:1fr}.welcome-card{align-items:start;flex-direction:column;padding:26px;min-height:270px}.welcome-card:after{font-size:230px;right:-30px;top:20px}.status-badge{white-space:normal}}@media(max-width:520px){.topbar .button-ghost{width:42px;overflow:hidden;color:transparent;position:relative;padding:0}.topbar .button-ghost:after{content:"↪";color:var(--text);position:absolute;inset:0;display:grid;place-items:center}.welcome-card h1{font-size:36px}.section-heading{flex-direction:column}}.button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;gap:8px}select,textarea{font:inherit;color:var(--text);background:var(--surface)}select,textarea,.compact-form input,.inline-form input,.filter-row input,.filter-row select,.date-navigator input,.bncc-search input{border:1px solid var(--border);border-radius:12px;padding:11px 12px;background:var(--surface);color:var(--text)}select:focus,textarea:focus,input:focus{border-color:var(--primary);outline:0;box-shadow:0 0 0 4px color-mix(in srgb,var(--primary-soft),transparent 20%)}.page-hero{border:1px solid var(--border);border-radius:22px;padding:30px 32px;background:linear-gradient(135deg,var(--surface),var(--surface-soft));box-shadow:var(--shadow);display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.page-hero h1{margin:7px 0 10px;font-size:clamp(31px,4vw,48px);letter-spacing:-.04em}.page-hero p{margin:0;max-width:760px;color:var(--muted);line-height:1.65}.compact-hero{min-height:190px}.notice{border-radius:14px;padding:13px 15px;border:1px solid var(--border);font-size:14px}.notice-error{color:#b42318;background:#fef3f2;border-color:#fecdca}.notice-success{color:#067647;background:#ecfdf3;border-color:#abefc6}.notice-neutral{color:var(--muted);background:var(--surface-soft)}:root[data-theme=dark] .notice-error{color:#fda29b;background:#351714;border-color:#6e2a24}:root[data-theme=dark] .notice-success{color:#75e0a7;background:#102b20;border-color:#235d42}.metric-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.setup-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:24px}.setup-panel{border:1px solid var(--border);border-radius:15px;background:var(--surface-soft);overflow:hidden}.setup-panel summary{list-style:none;min-height:56px;padding:0 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;font-weight:800}.setup-panel summary::-webkit-details-marker{display:none}.setup-panel summary span{width:28px;height:28px;border-radius:9px;display:grid;place-items:center;background:var(--primary-soft);color:var(--primary);font-size:18px}.setup-panel[open] summary span{transform:rotate(45deg)}.setup-panel-body{padding:0 16px 16px}.compact-form{display:grid;gap:11px}.compact-form label,.inline-form label,.filter-row label{display:grid;gap:6px;color:var(--muted);font-size:12px;font-weight:750}.compact-form input,.compact-form select{width:100%}.form-columns{display:grid;grid-template-columns:1fr 1fr;gap:10px}.inline-followup{margin-top:14px;padding-top:14px;border-top:1px dashed var(--border)}.data-list{display:grid;gap:0;margin-top:18px;border:1px solid var(--border);border-radius:14px;overflow:hidden}.data-row{min-height:64px;padding:11px 15px;display:flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid var(--border);background:var(--surface)}.data-row:last-child{border-bottom:0}.data-row>div{display:grid;gap:4px}.data-row span{color:var(--muted);font-size:13px}.empty-state{grid-column:1/-1;padding:30px;text-align:center;color:var(--muted);background:var(--surface-soft);border-radius:12px}.compact-empty{padding:18px}.flow-line{margin-top:24px;display:flex;align-items:center;gap:11px;flex-wrap:wrap}.flow-line span{padding:10px 13px;border-radius:12px;background:var(--surface-soft);border:1px solid var(--border);font-weight:700;font-size:13px}.flow-line b{color:var(--primary)}.hero-action{white-space:nowrap}.teacher-welcome{background:linear-gradient(135deg,var(--surface),color-mix(in srgb,var(--primary-soft),var(--surface) 45%))}.schedule-toolbar{display:grid;gap:18px}.segmented-control{display:inline-flex;width:max-content;max-width:100%;padding:4px;border:1px solid var(--border);border-radius:13px;background:var(--surface-soft)}.segmented-control button{border:0;border-radius:9px;padding:9px 13px;background:transparent;color:var(--muted);font-weight:750;white-space:nowrap}.segmented-control button.active{background:var(--surface);color:var(--text);box-shadow:0 4px 12px #0000000f}.filter-row,.inline-form{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.filter-row label{min-width:150px}.filter-row select,.filter-row input,.inline-form select,.inline-form input{min-height:42px}.inline-form{margin:20px 0;padding:15px;border:1px solid var(--border);border-radius:14px;background:var(--surface-soft)}.inline-form label{min-width:130px}.inline-form .grow{flex:1 1 260px}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.calendar-day{min-height:90px;border:1px solid var(--border);border-radius:12px;padding:11px;display:grid;align-content:start;gap:5px;background:var(--surface)}.calendar-day strong{font-size:13px;text-transform:capitalize}.calendar-day span{font-size:11px;font-weight:800;color:var(--primary)}.calendar-day small{color:var(--muted);line-height:1.35}.day-holiday,.day-recess,.day-no_class{background:color-mix(in srgb,var(--accent),var(--surface) 94%)}.generation-summary{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.generation-summary span{padding:10px 13px;border-radius:12px;background:var(--surface-soft);border:1px solid var(--border);color:var(--muted)}.generation-summary strong{color:var(--text);font-size:18px;margin-right:4px}.lesson-table{display:grid;border:1px solid var(--border);border-radius:14px;overflow:hidden}.lesson-admin-row{min-height:70px;display:grid;grid-template-columns:100px minmax(0,1fr) auto;gap:16px;align-items:center;padding:10px 14px;border-bottom:1px solid var(--border)}.lesson-admin-row:last-child{border-bottom:0}.lesson-admin-row>div{display:grid;gap:4px}.lesson-admin-row span{color:var(--muted);font-size:12px}.lesson-date strong{font-size:14px}.lesson-status{display:inline-flex;align-items:center;border-radius:999px;padding:7px 10px;font-size:11px;font-weight:850;white-space:nowrap;border:1px solid var(--border);background:var(--surface-soft)}.status-scheduled{color:#175cd3;background:#eff8ff;border-color:#b2ddff}.status-draft{color:#b54708;background:#fffaeb;border-color:#fedf89}.status-completed{color:#067647;background:#ecfdf3;border-color:#abefc6}.status-locked{color:#475467;background:#f2f4f7}:root[data-theme=dark] .status-scheduled,:root[data-theme=dark] .status-draft,:root[data-theme=dark] .status-completed,:root[data-theme=dark] .status-locked,:root[data-theme=dark] .status-cancelled{background:var(--surface-soft);border-color:var(--border)}.diary-page{display:grid;gap:18px}.diary-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:24px}.diary-heading h1{margin:6px 0 8px;font-size:clamp(32px,4vw,48px);letter-spacing:-.04em}.diary-heading p{margin:0;color:var(--muted);max-width:720px}.save-indicator{border:1px solid var(--border);border-radius:999px;padding:8px 12px;color:var(--muted);background:var(--surface);font-size:12px;font-weight:750;white-space:nowrap}.save-indicator[data-state=saving]{color:var(--primary)}.save-indicator[data-state=error]{color:var(--danger)}.diary-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px;border:1px solid var(--border);border-radius:16px;background:var(--surface)}.date-navigator{display:flex;align-items:center;gap:7px}.date-navigator input{min-height:42px}.diary-workspace{min-height:680px;display:grid;grid-template-columns:330px minmax(0,1fr);gap:16px;align-items:start}.lesson-rail{position:sticky;top:92px;max-height:calc(100vh - 116px);overflow:auto;display:grid;gap:8px;padding:12px;border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:var(--shadow)}.lesson-rail-title{display:flex;justify-content:space-between;align-items:center;padding:4px 4px 10px}.lesson-rail-title span{width:28px;height:28px;border-radius:9px;display:grid;place-items:center;background:var(--surface-soft);color:var(--muted);font-size:12px;font-weight:800}.lesson-card{width:100%;border:1px solid var(--border);border-radius:14px;padding:12px;background:var(--surface-soft);color:var(--text);display:grid;grid-template-columns:64px minmax(0,1fr) 12px;align-items:center;gap:10px;text-align:left;transition:.15s ease}.lesson-card:hover{border-color:color-mix(in srgb,var(--primary),var(--border) 50%);transform:translateY(-1px)}.lesson-card.selected{border-color:var(--primary);background:var(--primary-soft);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary),transparent 83%)}.lesson-card-time{display:grid;gap:3px}.lesson-card-time strong{font-size:16px}.lesson-card-time span{color:var(--muted);font-size:11px;text-transform:capitalize}.lesson-card-copy{min-width:0;display:grid;gap:2px}.lesson-card-copy strong,.lesson-card-copy span,.lesson-card-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lesson-card-copy span{color:var(--muted);font-size:12px}.lesson-card-copy small{color:var(--muted);font-size:10px}.status-dot{width:9px;height:9px;border-radius:50%;background:#98a2b3}.dot-draft{background:#f79009}.dot-completed{background:#12b76a}.dot-scheduled{background:#2e90fa}.dot-locked{background:#667085}.dot-cancelled{background:#f04438}.lesson-editor{min-width:0;display:grid;gap:14px}.editor-empty{min-height:500px;border:1px dashed var(--border);border-radius:18px;display:grid;place-items:center;align-content:center;text-align:center;padding:30px;color:var(--muted);background:var(--surface)}.editor-empty h2{color:var(--text);margin:12px 0 5px}.editor-empty p{max-width:420px}.empty-icon{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;background:var(--primary-soft);color:var(--primary);font-size:30px}.lesson-editor-head{border:1px solid var(--border);border-radius:18px;padding:22px;background:var(--surface);display:flex;justify-content:space-between;align-items:start;gap:20px;box-shadow:var(--shadow)}.lesson-editor-head h2{font-size:27px;margin:6px 0 5px;letter-spacing:-.03em}.lesson-editor-head p{color:var(--muted);margin:0}.editor-meta{display:flex;gap:8px;flex-wrap:wrap}.editor-meta span{padding:5px 8px;border-radius:8px;background:var(--surface-soft);color:var(--muted);font-size:11px;font-weight:750;text-transform:capitalize}.diary-section{border:1px solid var(--border);border-radius:18px;padding:20px;background:var(--surface)}.diary-section-title{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:12px;align-items:start;margin-bottom:16px}.section-number{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:var(--primary-soft);color:var(--primary);font-weight:900}.diary-section-title h3{margin:1px 0 3px;font-size:17px}.diary-section-title p{margin:0;color:var(--muted);font-size:12px}.section-title-action{align-self:center}.small-button{min-height:36px;padding:0 11px;font-size:12px}.diary-section textarea{width:100%;resize:vertical;min-height:92px;line-height:1.55}.attendance-list{display:grid;border:1px solid var(--border);border-radius:14px;overflow:hidden}.attendance-row{min-height:62px;padding:8px 11px;display:flex;align-items:center;justify-content:space-between;gap:14px;border-bottom:1px solid var(--border)}.attendance-row:last-child{border-bottom:0}.student-identity{display:flex;align-items:center;gap:10px;min-width:0}.student-avatar{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:var(--surface-soft);color:var(--muted);font-size:11px;font-weight:850;flex:0 0 auto}.student-identity>div:last-child{display:grid;gap:2px;min-width:0}.student-identity strong{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.student-identity span{color:var(--muted);font-size:10px}.presence-control{display:flex;border:1px solid var(--border);border-radius:10px;overflow:hidden;background:var(--surface-soft)}.presence-control button{min-width:44px;min-height:36px;border:0;border-right:1px solid var(--border);background:transparent;color:var(--muted);font-weight:900;display:flex;align-items:center;justify-content:center;gap:5px}.presence-control button:last-child{border-right:0}.presence-control button span{display:none;font-size:10px;font-weight:700}.presence-control button.active.present{color:#067647;background:#ecfdf3}.presence-control button.active.absent{color:#b42318;background:#fef3f2}.presence-control button.active.justified{color:#b54708;background:#fffaeb}.presence-control button:disabled{cursor:default;opacity:.75}.section-actions{margin-top:13px;display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--muted);font-size:11px}.unsaved-note{color:#b54708}.saved-note{color:#067647}.bncc-search{position:relative}.bncc-search input{width:100%;padding-right:42px}.bncc-search>span{position:absolute;right:14px;top:50%;transform:translateY(-50%);color:var(--muted);font-size:20px}.skill-chips{display:grid;gap:7px;margin-top:10px}.skill-chips button{width:100%;border:1px solid color-mix(in srgb,var(--primary),var(--border) 58%);border-radius:12px;background:var(--primary-soft);color:var(--text);padding:9px 11px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:9px;align-items:center;text-align:left}.skill-chips button strong{color:var(--primary);font-size:11px}.skill-chips button span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.skill-chips button b{font-size:16px;color:var(--muted)}.bncc-results{display:grid;gap:6px;margin-top:8px;max-height:240px;overflow:auto;border:1px solid var(--border);border-radius:12px;padding:6px;background:var(--surface-soft)}.bncc-results button{border:0;border-radius:9px;background:var(--surface);color:var(--text);padding:9px 10px;text-align:left;display:grid;grid-template-columns:100px minmax(0,1fr) auto;gap:8px;align-items:center}.bncc-results button:hover{background:var(--primary-soft)}.bncc-results strong{color:var(--primary);font-size:11px}.bncc-results span{font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bncc-results small{color:var(--muted);font-size:9px}.diary-footer{position:sticky;bottom:12px;z-index:5;border:1px solid var(--border);border-radius:17px;padding:14px 16px;background:color-mix(in srgb,var(--surface),transparent 4%);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 18px 42px #0000001f;display:flex;align-items:center;justify-content:space-between;gap:16px}.diary-footer>div:first-child{display:grid;gap:3px}.diary-footer strong{font-size:12px}.diary-footer span{color:var(--muted);font-size:10px}.diary-footer>div:last-child{display:flex;gap:8px}.complete-button{min-width:130px}@media(min-width:1200px){.presence-control button.active{min-width:90px}.presence-control button.active span{display:inline}}@media(max-width:1100px){.setup-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.diary-workspace{grid-template-columns:280px minmax(0,1fr)}}@media(max-width:900px){.metric-grid-4{grid-template-columns:1fr 1fr}.page-hero{align-items:flex-start;flex-direction:column}.setup-grid{grid-template-columns:1fr}.calendar-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.diary-heading{align-items:flex-start;flex-direction:column;gap:10px}.diary-toolbar{align-items:stretch;flex-direction:column}.date-navigator{width:100%}.date-navigator input{flex:1;min-width:0}.diary-workspace{display:block}.lesson-rail{position:static;max-height:none;grid-template-columns:1fr;margin-bottom:14px;overflow:visible;box-shadow:none;background:transparent;padding:0;border:0}.lesson-rail-title{padding:0 2px 6px}.lesson-card{min-height:76px;background:var(--surface);box-shadow:0 5px 14px #00000009}.lesson-editor-head{box-shadow:none}.diary-footer{bottom:8px}}@media(max-width:620px){.metric-grid-4,.form-columns{grid-template-columns:1fr}.calendar-grid{grid-template-columns:1fr 1fr}.lesson-admin-row{grid-template-columns:72px minmax(0,1fr)}.lesson-admin-row .lesson-status{grid-column:2;width:max-content}.segmented-control{width:100%;overflow:auto}.segmented-control button{flex:1}.filter-row label{flex:1 1 45%;min-width:130px}.inline-form{align-items:stretch;flex-direction:column}.inline-form label{width:100%}.diary-heading h1{font-size:34px}.save-indicator{white-space:normal}.lesson-editor-head{flex-direction:column;padding:17px}.diary-section{padding:15px}.diary-section-title{grid-template-columns:34px minmax(0,1fr)}.section-title-action{grid-column:1/-1}.attendance-row{align-items:stretch;flex-direction:column}.presence-control{width:100%}.presence-control button{flex:1}.presence-control button.active span{display:inline}.section-actions{align-items:stretch;flex-direction:column}.section-actions .button{width:100%}.bncc-results button{grid-template-columns:1fr}.bncc-results span{white-space:normal}.skill-chips button{grid-template-columns:1fr auto}.skill-chips button span{grid-row:2;grid-column:1/-1;white-space:normal}.diary-footer{align-items:stretch;flex-direction:column}.diary-footer>div:last-child{display:grid;grid-template-columns:1fr 1fr}}.assessment-create-form{display:grid;grid-template-columns:minmax(130px,.7fr) minmax(220px,2fr) minmax(120px,.65fr) auto;gap:12px;align-items:end;padding:16px;margin-bottom:16px;border:1px solid var(--border);border-radius:16px;background:var(--surface-soft)}.assessment-create-form label,.grade-row{display:grid;gap:6px;font-size:.82rem;font-weight:650;color:var(--muted)}.assessment-list{display:grid;gap:10px}.assessment-card{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid var(--border);border-radius:15px;padding:14px 16px;background:var(--surface)}.assessment-card.selected{border-color:var(--primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 10%,transparent)}.assessment-card>div{display:grid;gap:3px}.assessment-card>div>span,.assessment-card small{color:var(--muted);font-size:.78rem}.grade-sheet{margin-top:18px;border:1px solid var(--border);border-radius:18px;overflow:hidden;background:var(--surface)}.grade-sheet-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;border-bottom:1px solid var(--border);background:var(--surface-soft)}.grade-sheet-head h4{margin:3px 0 0;font-size:1rem}.grade-list{display:grid}.grade-row{grid-template-columns:minmax(180px,1fr) 90px 52px;align-items:center;gap:12px;padding:11px 18px;border-bottom:1px solid var(--border)}.grade-row>span{display:grid;gap:2px;color:var(--text)}.grade-row input{text-align:center;min-width:0}.grade-row>small,.grade-row span small{color:var(--muted);font-weight:500}@media(max-width:760px){.assessment-create-form{grid-template-columns:1fr}.assessment-card{align-items:stretch;flex-direction:column}.assessment-card .button{width:100%}.grade-row{grid-template-columns:minmax(0,1fr) 74px 42px;padding-inline:12px}}.coordination-page{gap:18px}.coordination-hero{background:linear-gradient(135deg,var(--surface),color-mix(in srgb,var(--primary-soft),var(--surface) 38%))}.coordination-context-card{min-width:230px;display:grid;gap:5px;padding:15px 17px;border:1px solid var(--border);border-radius:15px;background:color-mix(in srgb,var(--surface),transparent 4%)}.coordination-context-card strong{font-size:14px}.coordination-context-card span{color:var(--muted);font-size:11px}.coordination-filters{padding:16px 18px}.coordination-filters .filter-row{align-items:end}.threshold-chip{margin-left:auto;min-height:42px;display:flex;align-items:center;gap:9px;padding:6px 8px 6px 12px;border:1px solid var(--border);border-radius:12px;background:var(--surface-soft);color:var(--muted);font-size:11px;font-weight:750}.threshold-chip select{min-height:30px;padding:4px 8px;border-radius:8px}.threshold-chip strong{color:var(--text)}.coordination-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.metric-attention{border-color:color-mix(in srgb,#f79009,var(--border) 55%);background:color-mix(in srgb,#fffaeb,var(--surface) 83%)}:root[data-theme=dark] .metric-attention{background:color-mix(in srgb,#6a3a0a,var(--surface) 84%)}.coordination-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:18px}.coordination-panel{min-width:0}.action-list,.attention-list,.class-progress-list{margin-top:16px;display:grid;gap:8px}.action-row{width:100%;display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:11px;align-items:center;min-height:62px;padding:9px 10px;border:1px solid var(--border);border-radius:13px;background:var(--surface);color:var(--text);text-align:left}.action-row:hover,.action-row.selected{border-color:color-mix(in srgb,var(--primary),var(--border) 42%);background:var(--primary-soft)}.action-row>span:nth-child(2){min-width:0;display:grid;gap:3px}.action-row strong{font-size:13px}.action-row small{color:var(--muted);font-size:10px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.action-row>b{min-width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:#fffaeb;color:#b54708;font-size:13px}:root[data-theme=dark] .action-row>b{background:#3a2a0e;color:#fec84b}.action-avatar{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:var(--primary-soft);color:var(--primary);font-size:10px;font-weight:900}.attention-list{max-height:540px;overflow:auto;padding-right:2px}.attention-row{min-height:61px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:9px 11px;border:1px solid var(--border);border-radius:13px;background:var(--surface)}.attention-row>div:first-child{min-width:0;display:grid;gap:3px}.attention-row>div:first-child strong{font-size:13px}.attention-row>div:first-child span{color:var(--muted);font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attendance-rate{display:grid;gap:2px;text-align:right;flex:0 0 auto}.attendance-rate strong{color:#b42318;font-size:16px}.attendance-rate small{color:var(--muted);font-size:9px}.class-progress-row{display:grid;grid-template-columns:minmax(160px,.8fr) minmax(180px,1.4fr) minmax(180px,.8fr);gap:18px;align-items:center;min-height:66px;padding:10px 12px;border-bottom:1px solid var(--border)}.class-progress-row:last-child{border-bottom:0}.class-progress-row>div:first-child{min-width:0;display:grid;gap:3px}.class-progress-row>div:first-child strong{font-size:13px}.class-progress-row>div:first-child span{color:var(--muted);font-size:10px}.progress-track{height:9px;overflow:hidden;border-radius:999px;background:var(--surface-soft);border:1px solid var(--border)}.progress-track span{display:block;height:100%;border-radius:inherit;background:var(--primary)}.class-progress-numbers{display:grid;gap:3px;text-align:right}.class-progress-numbers strong{font-size:14px}.class-progress-numbers small{color:var(--muted);font-size:10px}.coordination-detail{scroll-margin-top:84px}.teacher-pending-layout{display:grid;grid-template-columns:320px minmax(0,1fr);gap:16px;margin-top:18px}.teacher-pending-list{display:grid;align-content:start;gap:7px;max-height:700px;overflow:auto}.pending-lesson-row{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--text);text-align:left}.pending-lesson-row:hover,.pending-lesson-row.selected{border-color:var(--primary);background:var(--primary-soft)}.pending-lesson-row>span:first-child{min-width:0;display:grid;gap:3px}.pending-lesson-row strong{font-size:11px}.pending-lesson-row small{color:var(--muted);font-size:10px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.readonly-diary{min-height:430px;padding:18px;border:1px solid var(--border);border-radius:16px;background:var(--surface-soft);display:grid;align-content:start;gap:11px}.readonly-diary-head{display:flex;align-items:start;justify-content:space-between;gap:14px;padding-bottom:12px;border-bottom:1px solid var(--border)}.readonly-diary-head h3{margin:4px 0;font-size:19px}.readonly-diary-head p{margin:0;color:var(--muted);font-size:11px}.readonly-section{display:grid;gap:6px;padding:12px 13px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.readonly-section>span{color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.035em}.readonly-section p{margin:0;line-height:1.55;font-size:12px;white-space:pre-wrap}.readonly-skills{display:grid;gap:6px}.readonly-skills>span{display:grid;grid-template-columns:100px minmax(0,1fr);gap:8px;padding:7px 8px;border-radius:9px;background:var(--surface-soft);font-size:10px;line-height:1.45}.readonly-skills strong{color:var(--primary)}.readonly-attendance{display:grid;gap:5px;max-height:280px;overflow:auto}.readonly-attendance>div{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:7px 8px;border-bottom:1px solid var(--border);font-size:11px}.readonly-attendance>div:last-child{border-bottom:0}.attendance-pill{border-radius:999px;padding:4px 7px;font-size:9px;font-weight:800}.attendance-present{color:#067647;background:#ecfdf3}.attendance-absent{color:#b42318;background:#fef3f2}.attendance-justified_absence{color:#b54708;background:#fffaeb}.attendance-empty{color:var(--muted);background:var(--surface-soft)}:root[data-theme=dark] .attendance-present,:root[data-theme=dark] .attendance-absent,:root[data-theme=dark] .attendance-justified_absence{background:var(--surface-soft)}@media(max-width:1050px){.coordination-grid{grid-template-columns:1fr}.teacher-pending-layout{grid-template-columns:270px minmax(0,1fr)}}@media(max-width:820px){.coordination-metrics{grid-template-columns:1fr 1fr}.threshold-chip{margin-left:0}.class-progress-row{grid-template-columns:minmax(0,1fr) 120px}.class-progress-row .progress-track{grid-row:2;grid-column:1/-1}.teacher-pending-layout{grid-template-columns:1fr}.teacher-pending-list{max-height:330px}}@media(max-width:580px){.coordination-metrics{grid-template-columns:1fr}.coordination-context-card{width:100%;min-width:0}.threshold-chip{width:100%;justify-content:space-between}.attention-row{align-items:flex-start;flex-direction:column}.attendance-rate{text-align:left}.class-progress-row{grid-template-columns:1fr;gap:8px}.class-progress-row .progress-track{grid-row:auto;grid-column:auto}.class-progress-numbers{text-align:left}.readonly-diary-head{flex-direction:column}.readonly-skills>span{grid-template-columns:1fr}}.secretariat-page{gap:18px}.secretariat-hero{background:linear-gradient(135deg,var(--surface),color-mix(in srgb,var(--primary-soft),var(--surface) 40%))}.secretariat-search-card{padding:16px 18px}.secretariat-search{display:grid;grid-template-columns:minmax(280px,2fr) minmax(190px,.8fr) minmax(170px,.7fr) auto;gap:12px;align-items:end}.secretariat-search label,.inline-enrollment-form label{display:grid;gap:6px;color:var(--muted);font-size:11px;font-weight:800}.secretariat-search input,.secretariat-search select,.inline-enrollment-form input,.inline-enrollment-form select,.movement-panel textarea{width:100%;min-height:42px;border:1px solid var(--border);border-radius:11px;padding:9px 11px;background:var(--surface);color:var(--text)}.secretariat-workspace{display:grid;grid-template-columns:minmax(360px,.82fr) minmax(0,1.18fr);gap:18px;align-items:start}.student-results-card{position:sticky;top:92px;max-height:calc(100vh - 116px);display:flex;flex-direction:column;min-height:640px}.student-result-list{display:grid;gap:7px;margin-top:15px;overflow:auto;padding-right:3px}.student-result{width:100%;display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px;border:1px solid var(--border);border-radius:13px;background:var(--surface-soft);color:var(--text);text-align:left}.student-result:hover,.student-result.selected{border-color:color-mix(in srgb,var(--primary),var(--border) 42%);background:var(--primary-soft)}.student-result-copy{min-width:0;display:grid;gap:2px}.student-result-copy strong,.student-result-copy small,.student-result-copy em{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.student-result-copy strong{font-size:13px}.student-result-copy small,.student-result-copy em{color:var(--muted);font-size:10px;font-style:normal}.enrollment-status{display:inline-flex;align-items:center;width:max-content;min-height:27px;padding:4px 8px;border-radius:999px;background:var(--surface-soft);color:var(--muted);border:1px solid var(--border);font-size:9px;font-weight:850;white-space:nowrap}.status-active{color:#067647;background:#ecfdf3;border-color:#abefc6}.status-moved{color:#175cd3;background:#eff8ff;border-color:#b2ddff}.status-transferred{color:#6941c6;background:#f4f3ff;border-color:#d9d6fe}.status-cancelled{color:#b42318;background:#fef3f2;border-color:#fecdca}.status-completed{color:#475467;background:#f2f4f7;border-color:#d0d5dd}.pagination-row{margin-top:auto;padding-top:14px;display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--muted);font-size:10px}.student-detail-column{display:grid;gap:18px;min-width:0}.student-detail-empty{min-height:360px;display:grid;place-items:center;align-content:center;text-align:center}.student-detail-empty h2{margin:12px 0 0}.student-detail-empty p{max-width:420px}.student-profile-head{display:flex;align-items:center;gap:14px}.student-profile-avatar{width:58px;height:58px;display:grid;place-items:center;border-radius:17px;background:var(--primary-soft);color:var(--primary);font-weight:900}.student-profile-head h2{margin:3px 0 4px}.student-profile-head p{margin:0;color:var(--muted);font-size:11px}.current-enrollment{margin-top:18px;display:flex;justify-content:space-between;align-items:center;gap:14px;padding:14px 15px;border:1px solid var(--border);border-radius:14px;background:var(--surface-soft)}.current-enrollment>div{display:grid;gap:3px}.current-enrollment>div>span,.current-enrollment small{color:var(--muted);font-size:10px}.current-enrollment strong{font-size:13px}.secretariat-action-grid{margin-top:15px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.movement-panel{min-width:0}.movement-panel textarea{min-height:72px;resize:vertical}.document-actions{margin-top:16px;padding-top:16px;border-top:1px solid var(--border);display:flex;align-items:center;gap:9px;flex-wrap:wrap}.document-actions>div{display:grid;gap:3px;margin-right:auto}.document-actions>div span{color:var(--muted);font-size:10px}.new-enrollment{margin-top:15px;display:grid;gap:12px;padding:15px;border:1px solid var(--border);border-radius:14px;background:var(--surface-soft)}.new-enrollment>div{display:grid;gap:3px}.new-enrollment>div span{color:var(--muted);font-size:10px}.inline-enrollment-form{display:grid;grid-template-columns:minmax(220px,1fr) 150px auto;gap:10px;align-items:end}.history-list{margin-top:15px;display:grid;gap:8px}.history-row{display:grid;grid-template-columns:12px minmax(0,1fr) auto;gap:10px;align-items:center;padding:11px 12px;border:1px solid var(--border);border-radius:13px}.history-dot{width:8px;height:8px;border-radius:50%;background:var(--primary);box-shadow:0 0 0 5px var(--primary-soft)}.history-row>div{display:grid;gap:3px}.history-row strong{font-size:12px}.history-row small{color:var(--muted);font-size:10px}.movement-row{display:grid;grid-template-columns:125px minmax(0,1fr);gap:12px;padding:9px 12px;border-left:2px solid var(--border);margin-left:4px}.movement-row>span{color:var(--primary);font-size:10px;font-weight:850}.movement-row>div{display:grid;gap:2px}.movement-row strong{font-size:11px}.movement-row small{color:var(--muted);font-size:9px}@media(max-width:1100px){.secretariat-search{grid-template-columns:1fr 1fr}.search-main{grid-column:1/-1}.secretariat-workspace{grid-template-columns:320px minmax(0,1fr)}.secretariat-action-grid{grid-template-columns:1fr}}@media(max-width:850px){.secretariat-workspace{display:block}.student-results-card{position:static;max-height:none;min-height:0;margin-bottom:18px}.student-result-list{max-height:none;overflow:visible}.secretariat-search{grid-template-columns:1fr}.search-main{grid-column:auto}.inline-enrollment-form{grid-template-columns:1fr}}@media(max-width:560px){.student-result{grid-template-columns:38px minmax(0,1fr)}.student-result .enrollment-status{grid-column:2}.current-enrollment{align-items:flex-start;flex-direction:column}.document-actions{align-items:stretch;flex-direction:column}.document-actions .button{width:100%}.history-row{grid-template-columns:12px minmax(0,1fr)}.history-row .enrollment-status{grid-column:2}.movement-row{grid-template-columns:1fr;gap:4px}}.portal-page{gap:18px}.portal-hero{align-items:center;background:linear-gradient(135deg,var(--surface),color-mix(in srgb,var(--primary-soft),var(--surface) 32%))}.portal-enrollment-chip{min-width:210px;display:grid;gap:3px;padding:14px 16px;border:1px solid color-mix(in srgb,var(--primary),var(--border) 55%);border-radius:16px;background:var(--primary-soft)}.portal-enrollment-chip span,.portal-enrollment-chip small{color:var(--muted);font-size:10px;font-weight:750}.portal-enrollment-chip strong{font-size:15px}.portal-student-switcher{padding:22px}.portal-student-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px;margin-top:16px}.portal-student-card{min-height:68px;display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid var(--border);border-radius:14px;padding:10px 12px;background:var(--surface-soft);color:var(--text);text-align:left}.portal-student-card:hover,.portal-student-card.selected{border-color:var(--primary);background:var(--primary-soft)}.portal-student-card>div:nth-child(2){min-width:0;display:grid;gap:2px}.portal-student-card strong,.portal-student-card span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portal-student-card strong{font-size:12px}.portal-student-card span{color:var(--muted);font-size:9px}.portal-student-card b{color:var(--primary)}.portal-filters{padding:16px 18px}.portal-current-student{min-height:42px;display:grid;align-content:center;gap:2px;padding:0 13px;border-left:1px solid var(--border)}.portal-current-student span{color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.06em;font-weight:850}.portal-current-student strong{font-size:12px}.portal-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.portal-two-column{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(340px,.8fr);gap:18px;align-items:start}.portal-lesson-list,.portal-schedule-list,.portal-calendar-list{display:grid;gap:8px;margin-top:16px}.portal-lesson-card{display:grid;grid-template-columns:86px minmax(0,1fr) auto;gap:12px;align-items:center;padding:11px 12px;border:1px solid var(--border);border-radius:13px;background:var(--surface-soft)}.portal-date-block{display:grid;gap:2px}.portal-date-block strong{color:var(--primary);font-size:11px;text-transform:capitalize}.portal-date-block span{font-size:15px;font-weight:850}.portal-lesson-card>div:nth-child(2){min-width:0;display:grid;gap:2px}.portal-lesson-card>div:nth-child(2) strong{font-size:12px}.portal-lesson-card>div:nth-child(2) span,.portal-lesson-card>small{color:var(--muted);font-size:9px}.portal-schedule-row{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 11px;border-bottom:1px solid var(--border)}.portal-schedule-row:last-child{border-bottom:0}.portal-day{width:42px;min-height:30px;display:grid;place-items:center;border-radius:9px;background:var(--primary-soft);color:var(--primary);font-size:10px;font-weight:900}.portal-schedule-row>div{display:grid;gap:2px}.portal-schedule-row strong{font-size:11px}.portal-schedule-row small{color:var(--muted);font-size:9px}.portal-schedule-row b{font-size:10px}.portal-assessment-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;margin-top:18px}.portal-assessment-card{display:grid;gap:8px;padding:15px;border:1px solid var(--border);border-radius:15px;background:var(--surface-soft)}.portal-assessment-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.portal-assessment-head span{padding:5px 8px;border-radius:999px;background:var(--primary-soft);color:var(--primary);font-size:9px;font-weight:850}.portal-assessment-head small{color:var(--muted);font-size:9px}.portal-assessment-card>strong{font-size:13px}.portal-assessment-card>p{margin:0;color:var(--muted);font-size:10px}.portal-grade{min-height:48px;display:flex;align-items:baseline;gap:4px;flex-wrap:wrap;padding:10px 11px;border:1px dashed var(--border);border-radius:11px;color:var(--muted)}.portal-grade.has-grade{border-style:solid;border-color:color-mix(in srgb,var(--primary),var(--border) 55%);background:var(--primary-soft);color:var(--text)}.portal-grade b{font-size:24px;color:var(--primary)}.portal-grade span{font-size:11px}.portal-grade small{width:100%;color:var(--muted);font-size:9px}.portal-feedback{padding:9px 10px;border-left:3px solid var(--primary);background:var(--surface);color:var(--muted);font-size:10px;line-height:1.5}.attendance-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:16px}.attendance-summary>div{display:grid;gap:3px;padding:13px;border:1px solid var(--border);border-radius:13px;background:var(--surface-soft);text-align:center}.attendance-summary strong{font-size:24px}.attendance-summary span{color:var(--muted);font-size:9px}.portal-help{margin-top:14px!important;font-size:10px;line-height:1.55!important}.portal-calendar-row{display:grid;grid-template-columns:145px minmax(0,1fr);gap:12px;align-items:center;padding:10px 11px;border-bottom:1px solid var(--border)}.portal-calendar-row:last-child{border-bottom:0}.portal-calendar-row>div{display:grid;gap:2px}.portal-calendar-row strong{font-size:10px;text-transform:capitalize}.portal-calendar-row span{color:var(--primary);font-size:9px;font-weight:850}.portal-calendar-row p{margin:0;color:var(--muted);font-size:10px}.portal-empty{padding:24px 12px;color:var(--muted);text-align:center;font-size:11px;border:1px dashed var(--border);border-radius:13px}@media(max-width:1000px){.portal-two-column{grid-template-columns:1fr}}@media(max-width:760px){.portal-metrics{grid-template-columns:1fr}.portal-current-student{border-left:0;border-top:1px solid var(--border);padding:10px 0 0;width:100%}.portal-hero{align-items:flex-start}.portal-enrollment-chip{width:100%;min-width:0}}@media(max-width:560px){.portal-student-cards{grid-template-columns:1fr}.portal-lesson-card{grid-template-columns:72px minmax(0,1fr)}.portal-lesson-card>small{grid-column:2}.portal-assessment-grid{grid-template-columns:1fr}.attendance-summary{grid-template-columns:1fr 1fr 1fr}.portal-calendar-row{grid-template-columns:1fr;gap:4px}}.analytics-page{gap:18px}.analytics-hero{align-items:center;background:linear-gradient(135deg,var(--surface),color-mix(in srgb,var(--primary-soft),var(--surface) 36%))}.analytics-context-badge{min-width:220px;display:grid;gap:3px;padding:14px 16px;border:1px solid color-mix(in srgb,var(--primary),var(--border) 55%);border-radius:16px;background:var(--primary-soft)}.analytics-context-badge span,.analytics-context-badge small{color:var(--muted);font-size:10px;font-weight:750}.analytics-context-badge strong{font-size:15px}.analytics-filter-card{display:flex;align-items:end;justify-content:space-between;gap:14px;padding:16px 18px}.analytics-filters{flex:1;display:grid;grid-template-columns:repeat(6,minmax(130px,1fr));gap:10px}.analytics-filters label{display:grid;gap:6px;color:var(--muted);font-size:10px;font-weight:800}.analytics-filters select{min-height:40px;width:100%;border:1px solid var(--border);border-radius:11px;padding:0 10px;background:var(--surface);color:var(--text)}.analytics-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.analytics-metric{min-height:128px;display:grid;align-content:center;gap:7px;padding:18px;border:1px solid var(--border);border-radius:17px;background:var(--surface);box-shadow:var(--shadow);position:relative;overflow:hidden}.analytics-metric:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--border)}.analytics-metric.good:before{background:#12b76a}.analytics-metric.attention:before{background:#f79009}.analytics-metric.critical:before{background:#d92d20}.analytics-metric>span{color:var(--muted);font-size:11px;font-weight:750}.analytics-metric>strong{font-size:30px;letter-spacing:-.04em}.analytics-metric>small{color:var(--muted);font-size:9px;line-height:1.45}.analytics-grid-main{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,.4fr);gap:18px;align-items:start}.analytics-panel{min-width:0}.analytics-explainer{margin:-4px 0 15px;color:var(--muted);font-size:10px;line-height:1.55}.analytics-table{border:1px solid var(--border);border-radius:15px;overflow:hidden}.analytics-table-head,.analytics-table-row{display:grid;grid-template-columns:minmax(220px,2fr) 80px 100px 100px 90px;gap:10px;align-items:center;min-height:50px;padding:8px 12px}.analytics-table-head{min-height:38px;background:var(--surface-soft);color:var(--muted);font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.04em}.analytics-table-row{width:100%;border:0;border-top:1px solid var(--border);background:var(--surface);color:var(--text);text-align:left;font-size:11px}button.analytics-table-row:hover{background:var(--primary-soft)}.analytics-table-row.static{cursor:default}.analytics-name{min-width:0;display:grid;gap:2px}.analytics-name strong,.analytics-name small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.analytics-name strong{font-size:11px}.analytics-name small{color:var(--muted);font-size:9px}.indicator{width:max-content;min-width:54px;padding:5px 7px;border-radius:999px;background:var(--surface-soft);color:var(--muted);font-weight:850;text-align:center}.indicator.good{color:#067647;background:#ecfdf3}.indicator.attention{color:#b54708;background:#fffaeb}.indicator.critical{color:#b42318;background:#fef3f2}.attention-number{color:#b54708;font-weight:900}.analytics-side-panel{position:sticky;top:88px}.analytics-volume-list{display:grid;gap:8px;margin-top:8px}.analytics-volume-list>div{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid var(--border)}.analytics-volume-list>div:last-child{border-bottom:0}.analytics-volume-list span{color:var(--muted);font-size:10px}.analytics-volume-list strong{font-size:16px}.analytics-footnote{margin:12px 0 0;padding:10px 11px;border-radius:11px;background:var(--surface-soft);color:var(--muted);font-size:9px;line-height:1.5}.analytics-classroom-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:11px}.analytics-classroom-card{display:grid;gap:14px;min-height:144px;padding:15px;border:1px solid var(--border);border-radius:15px;background:var(--surface-soft);color:var(--text);text-align:left}.analytics-classroom-card:hover,.analytics-classroom-card.selected{border-color:var(--primary);background:var(--primary-soft)}.analytics-card-title{display:flex;justify-content:space-between;align-items:start;gap:10px}.analytics-card-title>div{min-width:0;display:grid;gap:2px}.analytics-card-title span{color:var(--muted);font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.analytics-card-title strong{font-size:13px}.analytics-card-title b{padding:5px 7px;border-radius:8px;background:var(--surface);color:var(--muted);font-size:9px;font-weight:800}.analytics-mini-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.analytics-mini-grid>span{display:grid;gap:2px}.analytics-mini-grid small{color:var(--muted);font-size:8px}.analytics-mini-grid strong{font-size:13px}.analytics-student-table .analytics-table-head,.analytics-student-table .analytics-table-row{grid-template-columns:minmax(220px,2fr) 100px 80px 80px 100px}.subject-performance-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:11px}.subject-performance-card{display:grid;gap:13px;padding:15px;border:1px solid var(--border);border-radius:15px;background:var(--surface-soft)}.subject-performance-card>div:first-child{display:grid;gap:2px}.subject-performance-card>div:first-child span{color:var(--primary);font-size:9px;font-weight:850}.subject-performance-card>div:first-child strong{font-size:13px}.subject-performance-card dl{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:8px}.subject-performance-card dl>div{display:grid;gap:2px;padding:9px;border-radius:10px;background:var(--surface)}.subject-performance-card dt{color:var(--muted);font-size:8px}.subject-performance-card dd{margin:0;font-size:12px;font-weight:850}.analytics-empty{grid-column:1/-1;padding:24px 14px;color:var(--muted);text-align:center;font-size:10px}@media(max-width:1250px){.analytics-filters{grid-template-columns:repeat(3,minmax(150px,1fr))}.analytics-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:980px){.analytics-grid-main{grid-template-columns:1fr}.analytics-side-panel{position:static}.analytics-table{overflow:auto}.analytics-table-head,.analytics-table-row{min-width:720px}}@media(max-width:760px){.analytics-hero{align-items:flex-start}.analytics-context-badge{width:100%;min-width:0}.analytics-filter-card{align-items:stretch;flex-direction:column}.analytics-filters,.analytics-kpis{grid-template-columns:1fr 1fr}}@media(max-width:520px){.analytics-filters,.analytics-kpis,.analytics-classroom-grid,.subject-performance-grid{grid-template-columns:1fr}}.ai-assistant-section{position:relative;overflow:hidden}.ai-assistant-section:after{content:"";position:absolute;width:170px;height:170px;right:-90px;top:-95px;border-radius:50%;background:color-mix(in srgb,var(--primary-soft),transparent 18%);pointer-events:none}.ai-status-card{display:grid;gap:5px;padding:14px;border:1px solid var(--border);border-radius:13px;background:var(--surface-soft);font-size:10px}.ai-status-card strong{font-size:11px}.ai-status-card span{color:var(--muted);line-height:1.55}.ai-status-card.muted{color:var(--muted)}.ai-quick-actions{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}.ai-action-card{min-height:80px;display:grid;align-content:center;justify-items:start;gap:7px;padding:13px;border:1px solid var(--border);border-radius:13px;background:var(--surface-soft);color:var(--text);text-align:left;cursor:pointer}.ai-action-card:hover:not(:disabled){border-color:var(--primary);background:var(--primary-soft);transform:translateY(-1px)}.ai-action-card:disabled{opacity:.55;cursor:not-allowed}.ai-action-card>span{display:grid;place-items:center;width:25px;height:25px;border-radius:8px;background:var(--primary-soft);color:var(--primary);font-size:13px}.ai-action-card strong{font-size:10px;line-height:1.35}.ai-privacy-note{margin-top:10px;padding:9px 11px;border-radius:10px;background:var(--surface-soft);color:var(--muted);font-size:9px;line-height:1.55}.ai-privacy-note strong{color:var(--text)}.ai-generating{display:flex;align-items:center;gap:11px;margin-top:12px;padding:14px;border:1px solid color-mix(in srgb,var(--primary),var(--border) 58%);border-radius:13px;background:var(--primary-soft)}.ai-generating>span{font-size:20px;color:var(--primary);animation:aiPulse 1.15s ease-in-out infinite}.ai-generating>div{display:grid;gap:3px}.ai-generating strong{font-size:11px}.ai-generating small{color:var(--muted);font-size:9px}@keyframes aiPulse{50%{opacity:.35;transform:scale(.9) rotate(20deg)}}.ai-notice{margin-top:12px}.ai-response-card{display:grid;gap:13px;margin-top:13px;padding:16px;border:1px solid color-mix(in srgb,var(--primary),var(--border) 54%);border-radius:15px;background:linear-gradient(145deg,var(--surface),var(--primary-soft))}.ai-response-head{display:flex;justify-content:space-between;gap:12px;align-items:start}.ai-response-head h4{margin:2px 0 0;font-size:16px}.ai-response-head .tag{white-space:nowrap}.ai-summary{margin:0;color:var(--muted);font-size:10px;line-height:1.65}.ai-suggestion-list{display:grid;gap:9px}.ai-suggestion{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.ai-suggestion>div:first-child{display:grid;gap:4px}.ai-suggestion strong{font-size:11px}.ai-suggestion p{margin:0;color:var(--muted);font-size:10px;line-height:1.55}.ai-suggestion-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.ai-teacher-note,.ai-disclaimer{margin:0;padding:9px 10px;border-radius:10px;font-size:9px;line-height:1.5}.ai-teacher-note{background:var(--surface);color:var(--muted)}.ai-disclaimer{border-top:1px solid var(--border);border-radius:0;padding:10px 0 0;color:var(--muted);font-weight:700}@media(max-width:1050px){.ai-quick-actions{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:700px){.ai-quick-actions{grid-template-columns:1fr 1fr}.ai-suggestion{grid-template-columns:1fr}.ai-suggestion-actions{justify-content:flex-start}.ai-response-head{flex-direction:column}.ai-response-head .tag{white-space:normal}}@media(max-width:460px){.ai-quick-actions{grid-template-columns:1fr}}.aee-hero{align-items:center}.aee-hero h1{max-width:780px}.aee-privacy-badge{min-width:230px;display:grid;gap:4px;padding:15px 17px;border:1px solid color-mix(in srgb,var(--primary),var(--border) 52%);border-radius:15px;background:var(--primary-soft)}.aee-privacy-badge strong{color:var(--primary-strong);font-size:12px}.aee-privacy-badge span{color:var(--muted);font-size:10px}.aee-toolbar{padding:18px 20px}.aee-toolbar .filter-row{align-items:end}.aee-search-field{flex:1 1 240px!important}.aee-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.aee-metric{padding:17px 19px;display:grid;gap:4px;box-shadow:none}.aee-metric span{color:var(--muted);font-size:10px;font-weight:750}.aee-metric strong{font-size:26px;letter-spacing:-.03em}.aee-create-card{box-shadow:none}.aee-create-form{margin-top:18px;display:grid;grid-template-columns:repeat(4,minmax(140px,1fr));gap:12px;align-items:start}.aee-create-form label,.aee-plan-form label,.aee-session-create label,.aee-session-record label{display:grid;gap:6px;color:var(--muted);font-size:10px;font-weight:750}.aee-create-form input,.aee-create-form select,.aee-plan-form input,.aee-plan-form select,.aee-plan-form textarea,.aee-session-create input,.aee-session-record textarea{width:100%;min-height:42px;border:1px solid var(--border);border-radius:11px;padding:9px 11px;background:var(--surface);color:var(--text)}.aee-create-form .aee-student-picker{grid-column:1/-1;display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:9px;align-items:end}.aee-create-form>.button{grid-column:1/-1;justify-self:end}.aee-student-results{grid-column:1/-1;display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:7px}.aee-student-results button{display:grid;gap:3px;min-height:56px;padding:10px 12px;border:1px solid var(--border);border-radius:11px;background:var(--surface-soft);color:var(--text);text-align:left}.aee-student-results button.selected{border-color:var(--primary);background:var(--primary-soft)}.aee-student-results strong{font-size:11px}.aee-student-results span{color:var(--muted);font-size:9px}.aee-workspace{display:grid;grid-template-columns:340px minmax(0,1fr);gap:16px;align-items:start}.aee-case-list{position:sticky;top:92px;max-height:calc(100vh - 115px);overflow:auto;padding:18px;box-shadow:none}.aee-case-list h2{font-size:18px}.aee-case-cards{display:grid;gap:8px;margin-top:14px}.aee-case-card{display:grid;gap:10px;width:100%;padding:12px;border:1px solid var(--border);border-radius:13px;background:var(--surface-soft);color:var(--text);text-align:left}.aee-case-card:hover,.aee-case-card.selected{border-color:var(--primary);background:var(--primary-soft)}.aee-case-title{display:flex;gap:9px;align-items:center;min-width:0}.aee-case-title>div:last-child{min-width:0;display:grid;gap:2px}.aee-case-title strong,.aee-case-title span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.aee-case-title strong{font-size:11px}.aee-case-title span{color:var(--muted);font-size:9px}.aee-case-meta{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.aee-case-meta small{color:var(--muted);font-size:8px}.aee-status{display:inline-flex;align-items:center;width:max-content;padding:5px 8px;border-radius:999px;background:var(--surface);color:var(--muted);font-size:8px;font-weight:850;border:1px solid var(--border)}.status-active,.session-completed{color:#067647;background:#ecfdf3;border-color:#abefc6}.status-paused,.session-scheduled{color:#b54708;background:#fffaeb;border-color:#fedf89}.status-completed{color:#344054;background:#f2f4f7}.session-cancelled,.session-missed{color:#b42318;background:#fef3f2;border-color:#fecdca}.aee-detail{min-width:0;display:grid;gap:14px}.aee-student-head{display:flex;justify-content:space-between;align-items:start;gap:18px;box-shadow:none}.aee-student-head h2{margin:5px 0 4px;font-size:26px;letter-spacing:-.03em}.aee-student-head p{margin:0;font-size:11px}.aee-head-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px;align-items:center}.aee-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:16px;box-shadow:none}.aee-summary-grid>div{display:grid;gap:4px;padding:10px 11px;border-radius:11px;background:var(--surface-soft)}.aee-summary-grid span{color:var(--muted);font-size:8px}.aee-summary-grid strong{font-size:11px}.aee-section{box-shadow:none}.aee-plan-view{display:grid;gap:10px;margin-top:16px}.aee-field{display:grid;gap:4px;padding:11px 12px;border:1px solid var(--border);border-radius:11px;background:var(--surface-soft)}.aee-field span{color:var(--primary);font-size:8px;font-weight:850;text-transform:uppercase;letter-spacing:.05em}.aee-field p{margin:0;color:var(--text);font-size:10px;line-height:1.6;white-space:pre-wrap}.aee-plan-dates{color:var(--muted);font-size:9px}.aee-plan-form{display:grid;gap:11px;margin-top:16px;padding-top:15px;border-top:1px solid var(--border)}.aee-plan-form textarea,.aee-session-record textarea{min-height:86px;resize:vertical;line-height:1.5}.aee-plan-form .form-columns{display:grid;grid-template-columns:1fr 1fr;gap:10px}.aee-plan-form>.button{justify-self:start}.aee-session-create{display:grid;grid-template-columns:1fr 130px 130px auto;gap:9px;align-items:end;margin-top:15px;padding:12px;border:1px solid var(--border);border-radius:12px;background:var(--surface-soft)}.aee-session-list{display:grid;gap:10px;margin-top:15px}.aee-session-card{display:grid;gap:10px;padding:13px;border:1px solid var(--border);border-radius:13px;background:var(--surface-soft)}.aee-session-head{display:flex;justify-content:space-between;gap:12px;align-items:start}.aee-session-head>div{display:grid;gap:3px}.aee-session-head strong{font-size:11px}.aee-session-head span{color:var(--muted);font-size:9px}.aee-session-record{display:grid;gap:9px;padding-top:10px;border-top:1px solid var(--border)}.aee-session-record>div{display:flex;justify-content:flex-end;gap:7px}.success-notice{border:1px solid #abefc6;background:#ecfdf3;color:#067647;border-radius:12px;padding:10px 13px;font-size:11px}@media(max-width:1100px){.aee-metrics{grid-template-columns:1fr 1fr}.aee-workspace{grid-template-columns:290px minmax(0,1fr)}.aee-create-form,.aee-summary-grid{grid-template-columns:1fr 1fr}}@media(max-width:900px){.aee-workspace{display:block}.aee-case-list{position:static;max-height:none;margin-bottom:14px}.aee-case-cards{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}.aee-student-head{flex-direction:column}.aee-head-actions{justify-content:flex-start}}@media(max-width:680px){.aee-metrics,.aee-create-form,.aee-summary-grid,.aee-create-form .aee-student-picker,.aee-student-results{grid-template-columns:1fr}.aee-session-create{grid-template-columns:1fr 1fr}.aee-session-create label:first-child,.aee-session-create .button{grid-column:1/-1}.aee-session-head{flex-direction:column}.aee-plan-form .form-columns,.aee-case-cards{grid-template-columns:1fr}}.nutrition-hero{background:linear-gradient(135deg,var(--surface) 0%,color-mix(in srgb,var(--surface) 88%,#f59e0b 12%) 100%)}.nutrition-badge{display:flex;flex-direction:column;gap:.25rem;min-width:220px;padding:1rem 1.1rem;border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:var(--shadow-sm)}.nutrition-badge span{font-size:.82rem;color:var(--muted)}.nutrition-tabs{display:flex;gap:.45rem;padding:.45rem;width:max-content;max-width:100%;overflow:auto}.nutrition-tabs button{border:0;background:transparent;color:var(--muted);padding:.7rem 1rem;border-radius:12px;font-weight:700;white-space:nowrap;cursor:pointer}.nutrition-tabs button.active{background:var(--text);color:var(--surface)}.nutrition-toolbar{padding:1rem 1.15rem}.nutrition-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.nutrition-create-card{display:grid;gap:1rem}.nutrition-inline-form{display:grid;grid-template-columns:minmax(180px,1.4fr) repeat(4,minmax(130px,1fr)) auto;gap:.8rem;align-items:end}.nutrition-inline-form label,.nutrition-service-form label,.nutrition-form-card label,.nutrition-assign-form label{display:grid;gap:.35rem;font-size:.8rem;font-weight:700;color:var(--muted)}.nutrition-workspace{display:grid;grid-template-columns:minmax(300px,.85fr) minmax(420px,1.5fr);gap:1rem;align-items:start}.nutrition-plan-list,.nutrition-detail{min-height:430px}.nutrition-plan-cards{display:grid;gap:.65rem}.nutrition-plan-card{width:100%;display:flex;justify-content:space-between;gap:1rem;text-align:left;padding:.9rem;border:1px solid var(--border);border-radius:16px;background:var(--surface);color:var(--text);cursor:pointer;transition:.18s ease}.nutrition-plan-card:hover,.nutrition-plan-card.selected{border-color:color-mix(in srgb,var(--primary) 60%,var(--border));transform:translateY(-1px);box-shadow:var(--shadow-sm)}.nutrition-plan-card>div:first-child{display:grid;gap:.2rem}.nutrition-plan-card span,.nutrition-plan-card small{color:var(--muted);font-size:.8rem}.nutrition-plan-meta{display:flex;flex-direction:column;align-items:flex-end;gap:.25rem;white-space:nowrap}.meal-status{display:inline-flex;align-items:center;width:max-content;padding:.26rem .55rem;border-radius:999px;font-size:.72rem;font-weight:800}.meal-status.status-planned{background:color-mix(in srgb,#3b82f6 15%,transparent);color:#2563eb}.meal-status.status-served{background:color-mix(in srgb,#16a34a 15%,transparent);color:#15803d}.meal-status.status-cancelled{background:color-mix(in srgb,#ef4444 14%,transparent);color:#dc2626}.nutrition-detail-stack{display:grid;gap:1.1rem}.nutrition-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem}.nutrition-facts>div{display:grid;gap:.15rem;padding:.8rem;border-radius:14px;background:var(--surface-soft);border:1px solid var(--border)}.nutrition-facts span{font-size:.75rem;color:var(--muted)}.nutrition-facts strong{font-size:1.25rem}.restriction-alert{display:flex;gap:.75rem;padding:1rem;border-radius:16px;border:1px solid}.restriction-alert>div{display:grid;gap:.25rem}.restriction-alert span{font-size:.85rem;color:var(--muted)}.restriction-alert.warning{background:color-mix(in srgb,#f59e0b 10%,var(--surface));border-color:color-mix(in srgb,#f59e0b 45%,var(--border))}.restriction-alert.safe{background:color-mix(in srgb,#16a34a 8%,var(--surface));border-color:color-mix(in srgb,#16a34a 35%,var(--border))}.nutrition-restricted-students{display:grid;gap:.65rem}.nutrition-restricted-students h3{margin:0}.nutrition-restricted-students article{display:flex;justify-content:space-between;gap:1rem;padding:.75rem;border:1px solid var(--border);border-radius:14px}.nutrition-restricted-students article>div:first-child{display:grid;gap:.15rem}.nutrition-restricted-students article span{font-size:.78rem;color:var(--muted)}.nutrition-service-form{display:grid;gap:.8rem;padding-top:.9rem;border-top:1px solid var(--border)}.three-field-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem}.nutrition-service-form textarea,.nutrition-form-card textarea{min-height:90px;resize:vertical}.button-danger-soft{border-color:color-mix(in srgb,#ef4444 40%,var(--border));color:#dc2626;background:color-mix(in srgb,#ef4444 6%,var(--surface))}.nutrition-catalog-grid,.nutrition-restrictions-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.8fr);gap:1rem;align-items:start}.meal-catalog-list,.restriction-catalog{display:grid;gap:.7rem}.meal-catalog-list article,.restriction-catalog article{display:grid;gap:.45rem;padding:.85rem;border:1px solid var(--border);border-radius:14px}.meal-catalog-list article>div:first-child{display:grid;gap:.2rem}.meal-catalog-list span,.restriction-catalog span{font-size:.8rem;color:var(--muted)}.nutrition-form-card,.nutrition-assign-form{display:grid;gap:.8rem}.nutrition-form-card fieldset{border:1px solid var(--border);border-radius:14px;padding:.8rem}.nutrition-form-card legend{font-weight:800;padding:0 .3rem}.restriction-checkboxes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem}.restriction-checkboxes label{display:flex;align-items:center;gap:.45rem;color:var(--text);font-weight:600}.warning-tag{background:color-mix(in srgb,#f59e0b 12%,var(--surface));border-color:color-mix(in srgb,#f59e0b 35%,var(--border))}.student-search-row{display:grid;grid-template-columns:1fr auto;gap:.6rem}.restriction-student-list{display:grid;gap:.55rem;margin-top:.8rem}.restriction-student-list>button{display:grid;gap:.45rem;text-align:left;padding:.75rem;border:1px solid var(--border);border-radius:14px;background:var(--surface);color:var(--text);cursor:pointer}.restriction-student-list>button.selected{border-color:var(--primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 16%,transparent)}.restriction-student-list>button>div:first-child{display:grid;gap:.15rem}.restriction-student-list span{font-size:.78rem;color:var(--muted)}.nutrition-assign-form{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border)}.nutrition-assign-form h3{margin:0}@media(max-width:1100px){.nutrition-metrics{grid-template-columns:repeat(2,1fr)}.nutrition-inline-form{grid-template-columns:repeat(3,minmax(0,1fr))}.nutrition-workspace,.nutrition-catalog-grid,.nutrition-restrictions-grid{grid-template-columns:1fr}}@media(max-width:720px){.nutrition-badge{display:none}.nutrition-tabs{width:100%}.nutrition-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.nutrition-inline-form,.three-field-grid{grid-template-columns:1fr}.nutrition-workspace{display:block}.nutrition-plan-list{min-height:auto;margin-bottom:1rem}.nutrition-plan-card{flex-direction:column}.nutrition-plan-meta{align-items:flex-start;flex-direction:row;flex-wrap:wrap}.nutrition-facts{grid-template-columns:1fr}.nutrition-restricted-students article{flex-direction:column}.restriction-checkboxes,.student-search-row{grid-template-columns:1fr}}.nutrition-school-selector{display:grid;gap:.35rem;max-width:360px;margin-bottom:.75rem;font-size:.8rem;font-weight:700;color:var(--muted)}.inventory-hero{background:linear-gradient(135deg,var(--surface) 0%,color-mix(in srgb,var(--surface) 88%,#0ea5e9 12%) 100%)}.inventory-location-badge{display:flex;flex-direction:column;gap:.2rem;min-width:240px;padding:1rem 1.1rem;border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:var(--shadow-sm)}.inventory-location-badge span,.inventory-location-badge small{color:var(--muted);font-size:.78rem}.inventory-location-badge strong{font-size:1rem}.inventory-controlbar{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(180px,.55fr) minmax(260px,1fr);gap:.8rem;align-items:end;padding:1rem 1.1rem}.inventory-controlbar label,.inventory-movement-form label,.inventory-item-form label,.inventory-policy label{display:grid;gap:.35rem;font-size:.8rem;font-weight:700;color:var(--muted)}.inventory-controlbar form{display:grid;grid-template-columns:1fr auto;gap:.6rem;align-items:end}.inventory-tabs{display:flex;gap:.4rem;width:max-content;max-width:100%;padding:.4rem;overflow:auto}.inventory-tabs button{border:0;background:transparent;color:var(--muted);font-weight:750;padding:.7rem 1rem;border-radius:11px;cursor:pointer;white-space:nowrap}.inventory-tabs button.active{background:var(--text);color:var(--surface)}.inventory-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.inventory-alerts{display:grid;gap:1rem}.inventory-alert-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.inventory-alert{display:grid;gap:.25rem;padding:.8rem .9rem;border-radius:14px;border:1px solid var(--border)}.inventory-alert span{font-size:.8rem;color:var(--muted)}.inventory-alert.warning{background:color-mix(in srgb,#f59e0b 8%,var(--surface));border-color:color-mix(in srgb,#f59e0b 35%,var(--border))}.inventory-alert.danger{background:color-mix(in srgb,#ef4444 7%,var(--surface));border-color:color-mix(in srgb,#ef4444 35%,var(--border))}.inventory-balance-card{display:grid;gap:1rem}.muted-copy{font-size:.78rem;color:var(--muted)}.inventory-balance-list{display:grid;gap:.55rem}.inventory-balance-row{display:grid;grid-template-columns:minmax(220px,1.5fr) minmax(130px,.55fr) minmax(180px,.75fr) auto;gap:1rem;align-items:center;padding:.85rem;border:1px solid var(--border);border-radius:14px;background:var(--surface-soft)}.inventory-item-main{display:grid;gap:.12rem}.inventory-item-main small,.inventory-min span,.inventory-min small{font-size:.76rem;color:var(--muted)}.inventory-code{display:inline-flex;width:max-content;font-size:.68rem;font-weight:850;letter-spacing:.04em;color:var(--primary);text-transform:uppercase}.inventory-quantity,.inventory-min{display:grid;gap:.22rem}.inventory-quantity>strong{font-size:1.15rem}.stock-state{display:inline-flex;width:max-content;padding:.22rem .5rem;border-radius:999px;font-size:.68rem;font-weight:850}.stock-state.state-ok{background:color-mix(in srgb,#16a34a 12%,transparent);color:#15803d}.stock-state.state-low{background:color-mix(in srgb,#f59e0b 14%,transparent);color:#b45309}.stock-state.state-out{background:color-mix(in srgb,#ef4444 12%,transparent);color:#dc2626}.inventory-policy{display:grid;gap:1rem}.inventory-policy form{display:grid;grid-template-columns:1fr 1fr auto;gap:.7rem;align-items:end}.inventory-policy form>div{display:flex;gap:.5rem}.inventory-movement-layout,.inventory-catalog-layout{display:grid;grid-template-columns:minmax(320px,.72fr) minmax(0,1.35fr);gap:1rem;align-items:start}.inventory-movement-form{display:grid;gap:1rem;position:sticky;top:84px}.inventory-movement-form>div p{margin:.3rem 0 0;color:var(--muted);font-size:.8rem;line-height:1.5}.inventory-movement-form form,.inventory-item-form form{display:grid;gap:.7rem}.inventory-movement-form .movement-reason{margin-top:.2rem}.inventory-history{display:grid;gap:1rem;min-height:420px}.inventory-history-list{display:grid;gap:.55rem}.inventory-history-list article{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:.8rem;align-items:center;padding:.8rem;border:1px solid var(--border);border-radius:14px}.movement-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--surface-soft);font-weight:900;color:var(--primary)}.inventory-history-list article>div:nth-child(2){display:grid;gap:.15rem}.inventory-history-list article span,.inventory-history-list article small,.movement-time span{font-size:.76rem;color:var(--muted)}.movement-time{display:grid;gap:.15rem;text-align:right}.movement-time strong{font-size:.78rem}.inventory-catalog-list,.inventory-location-list{display:grid;gap:.6rem}.inventory-catalog-list article{display:flex;justify-content:space-between;gap:1rem;padding:.8rem;border:1px solid var(--border);border-radius:14px}.inventory-catalog-list article>div:first-child{display:grid;gap:.15rem}.inventory-catalog-list article>div:last-child{display:flex;gap:.35rem;align-items:flex-start}.inventory-catalog-list small{color:var(--muted);font-size:.76rem}.inventory-item-form{display:grid;gap:1rem;position:sticky;top:84px}.check-line{display:flex!important;grid-template-columns:none!important;align-items:center;gap:.5rem!important;color:var(--text)!important;font-weight:650!important}.check-line input{width:auto}.inventory-location-list article{display:grid;grid-template-columns:38px 1fr;gap:.7rem;align-items:center;padding:.8rem;border:1px solid var(--border);border-radius:14px}.location-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--surface-soft);color:var(--primary)}.inventory-location-list article>div:last-child{display:grid;gap:.15rem}.inventory-location-list span,.inventory-location-list small{font-size:.76rem;color:var(--muted)}@media(max-width:1100px){.inventory-controlbar{grid-template-columns:1fr 1fr}.inventory-controlbar form{grid-column:1/-1}.inventory-metrics{grid-template-columns:repeat(2,1fr)}.inventory-balance-row{grid-template-columns:minmax(200px,1fr) 120px 160px}.inventory-balance-row>.button{grid-column:1/-1;justify-self:start}.inventory-movement-layout,.inventory-catalog-layout{grid-template-columns:1fr}.inventory-movement-form,.inventory-item-form{position:static}}@media(max-width:760px){.inventory-location-badge{display:none}.inventory-controlbar,.inventory-controlbar form,.inventory-policy form{grid-template-columns:1fr}.inventory-controlbar form{grid-column:auto}.inventory-metrics,.inventory-alert-grid,.inventory-balance-row{grid-template-columns:1fr 1fr}.inventory-item-main{grid-column:1/-1}.inventory-balance-row>.button{grid-column:1/-1}.inventory-history-list article{grid-template-columns:34px 1fr}.movement-time{grid-column:2;text-align:left}.inventory-tabs{width:100%}}@media(max-width:520px){.inventory-metrics,.inventory-alert-grid,.inventory-balance-row{grid-template-columns:1fr}.inventory-item-main,.inventory-balance-row>.button{grid-column:auto}.inventory-history-list article{grid-template-columns:1fr}.movement-icon{display:none}.movement-time{grid-column:auto}.inventory-catalog-list article{flex-direction:column}}.transport-hero{background:linear-gradient(135deg,var(--surface) 0%,color-mix(in srgb,var(--surface) 88%,#8b5cf6 12%) 100%)}.transport-context-badge{display:flex;flex-direction:column;gap:.22rem;min-width:230px;padding:1rem 1.1rem;border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:var(--shadow-sm)}.transport-context-badge span,.transport-context-badge small{font-size:.78rem;color:var(--muted)}.transport-context-badge strong{font-size:1rem}.transport-controlbar{display:grid;grid-template-columns:minmax(190px,.7fr) minmax(220px,.9fr) auto;gap:.8rem;align-items:end;padding:1rem 1.1rem}.transport-controlbar>label,.transport-route-form label,.transport-stop-form label,.transport-config-form label,.transport-form-card label{display:grid;gap:.35rem;font-size:.8rem;font-weight:700;color:var(--muted)}.transport-tabs{display:flex;gap:.4rem;padding:.4rem;width:max-content;max-width:100%;overflow:auto;justify-self:end}.transport-tabs button{border:0;background:transparent;color:var(--muted);font-weight:750;padding:.7rem 1rem;border-radius:11px;cursor:pointer;white-space:nowrap}.transport-tabs button.active{background:var(--text);color:var(--surface)}.transport-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.8rem}.transport-metric{display:grid;gap:.35rem;padding:1rem 1.05rem;border:1px solid var(--border);border-radius:16px;background:var(--surface)}.transport-metric span{font-size:.76rem;color:var(--muted)}.transport-metric strong{font-size:1.55rem;letter-spacing:-.03em}.transport-metric.attention{border-color:color-mix(in srgb,#f59e0b 42%,var(--border));background:color-mix(in srgb,#f59e0b 7%,var(--surface))}.transport-create{display:grid;gap:1rem}.transport-route-form{display:grid;gap:1rem;padding-top:.9rem;border-top:1px solid var(--border)}.transport-route-form textarea{min-height:82px;resize:vertical}.transport-route-form fieldset{border:1px solid var(--border);border-radius:14px;padding:.8rem}.transport-route-form legend{padding:0 .3rem;font-weight:800}.transport-school-checks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}.transport-school-checks label{display:flex!important;align-items:center;gap:.45rem!important;color:var(--text)!important;font-weight:650!important}.transport-school-checks input{width:auto}.transport-workspace{display:grid;grid-template-columns:minmax(300px,.78fr) minmax(0,1.55fr);gap:1rem;align-items:start}.transport-route-list{position:sticky;top:84px;max-height:calc(100vh - 105px);overflow:auto}.transport-detail-column{min-width:0;display:grid;gap:1rem}.transport-empty-detail{min-height:250px;display:grid;align-content:center;gap:.35rem}.transport-empty-detail p{margin:0;color:var(--muted)}.transport-route-card{width:100%;display:grid;gap:.7rem;text-align:left;padding:.9rem;margin-top:.6rem;border:1px solid var(--border);border-radius:15px;background:var(--surface);color:var(--text);cursor:pointer;transition:.18s ease}.transport-route-card:hover,.transport-route-card.selected{border-color:color-mix(in srgb,var(--primary) 55%,var(--border));box-shadow:var(--shadow-sm);transform:translateY(-1px)}.transport-route-title{display:flex;justify-content:space-between;gap:.8rem;align-items:start}.transport-route-title>div{display:grid;gap:.18rem}.transport-route-title span,.transport-route-meta span{font-size:.76rem;color:var(--muted)}.transport-route-meta{display:flex;gap:.55rem 1rem;flex-wrap:wrap}.transport-status{display:inline-flex;width:max-content;white-space:nowrap;padding:.25rem .52rem;border-radius:999px;font-size:.68rem;font-weight:850}.transport-status.status-active{background:color-mix(in srgb,#16a34a 13%,transparent);color:#15803d}.transport-status.status-paused{background:color-mix(in srgb,#f59e0b 13%,transparent);color:#b45309}.transport-status.status-inactive{background:color-mix(in srgb,#64748b 13%,transparent);color:#475569}.capacity-line{display:flex;justify-content:space-between;gap:.8rem;padding:.48rem .62rem;border-radius:10px;background:var(--surface-soft);font-size:.73rem}.capacity-line.capacity-full,.capacity-panel.capacity-full{background:color-mix(in srgb,#f59e0b 10%,var(--surface));color:#b45309}.capacity-line.capacity-over_capacity,.capacity-panel.capacity-over_capacity{background:color-mix(in srgb,#ef4444 10%,var(--surface));color:#dc2626}.capacity-line.capacity-no_vehicle,.capacity-panel.capacity-no_vehicle{background:color-mix(in srgb,#64748b 10%,var(--surface));color:#475569}.transport-warning{font-size:.72rem;color:#b45309}.transport-route-detail{display:grid;gap:1rem}.transport-route-detail .section-heading p{margin:.18rem 0 0;font-size:.8rem;color:var(--muted)}.transport-operation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem}.transport-operation-grid>div{display:grid;gap:.2rem;padding:.8rem;border:1px solid var(--border);border-radius:14px;background:var(--surface-soft)}.transport-operation-grid span,.transport-operation-grid small{font-size:.73rem;color:var(--muted)}.capacity-panel{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.8rem 1rem;border:1px solid var(--border);border-radius:14px;background:var(--surface-soft)}.capacity-panel>div{display:grid;gap:.15rem}.capacity-panel span{font-size:.76rem}.capacity-panel strong{font-size:1.35rem}.transport-config-form{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr)) auto;gap:.65rem;align-items:end;padding-top:.9rem;border-top:1px solid var(--border)}.transport-stop-list,.transport-assignment-list,.transport-student-results,.transport-vehicle-list,.transport-staff-list{display:grid;gap:.6rem}.transport-stop-list article{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:.75rem;align-items:center;padding:.78rem;border:1px solid var(--border);border-radius:14px}.stop-sequence{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:var(--surface-soft);color:var(--primary);font-weight:900}.transport-stop-list article>div:nth-child(2){display:grid;gap:.15rem}.transport-stop-list span{font-size:.76rem;color:var(--muted)}.transport-stop-form{display:grid;grid-template-columns:90px 1fr 1.3fr 145px auto;gap:.6rem;align-items:end;margin-top:.8rem;padding-top:.8rem;border-top:1px solid var(--border)}.transport-assignment-list article,.transport-student-results article,.transport-staff-list article{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.78rem;border:1px solid var(--border);border-radius:14px}.transport-assignment-list article>div,.transport-student-results article>div:first-child,.transport-staff-list article>div:first-child{display:grid;gap:.15rem}.transport-assignment-list span,.transport-student-results span,.transport-student-results small,.transport-staff-list span,.transport-staff-list small{font-size:.76rem;color:var(--muted)}.transport-assignment-list article>div:last-child{display:flex;align-items:center;gap:.7rem}.transport-student-search{display:grid;gap:.7rem;margin-top:.9rem;padding-top:.9rem;border-top:1px solid var(--border)}.transport-student-search .student-search-row{grid-template-columns:minmax(170px,.8fr) minmax(220px,1.4fr) auto}.transport-assign-actions{display:flex;gap:.5rem;align-items:center}.transport-assign-actions select{min-width:170px}.transport-catalog-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.7fr);gap:1rem;align-items:start}.transport-form-card{display:grid;gap:.8rem;position:sticky;top:84px}.transport-form-card h2{margin:0}.transport-form-card .form-columns{display:grid;grid-template-columns:1fr 1fr;gap:.65rem}.transport-vehicle-list article{display:grid;gap:.65rem;padding:.85rem;border:1px solid var(--border);border-radius:14px}.transport-vehicle-main{display:flex;justify-content:space-between;gap:1rem;align-items:start}.transport-vehicle-main>div{display:grid;gap:.15rem}.transport-vehicle-main span{font-size:.77rem;color:var(--muted)}.transport-document-grid{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;padding-top:.55rem;border-top:1px solid var(--border);font-size:.76rem;color:var(--muted)}.danger-link{color:#dc2626}.small-button{min-height:34px;padding:.45rem .7rem}@media(max-width:1180px){.transport-kpis{grid-template-columns:repeat(3,1fr)}.transport-workspace{grid-template-columns:minmax(280px,.72fr) minmax(0,1.35fr)}.transport-config-form{grid-template-columns:repeat(2,1fr)}.transport-config-form .button{grid-column:1/-1;justify-self:start}.transport-stop-form{grid-template-columns:80px 1fr 1fr}.transport-stop-form label:nth-child(4),.transport-stop-form .button{grid-column:auto}.transport-catalog-grid{grid-template-columns:1fr}.transport-form-card{position:static}}@media(max-width:900px){.transport-controlbar{grid-template-columns:1fr 1fr}.transport-tabs{grid-column:1/-1;justify-self:start}.transport-workspace{display:block}.transport-route-list{position:static;max-height:none;margin-bottom:1rem}.transport-school-checks{grid-template-columns:repeat(2,1fr)}.transport-operation-grid{grid-template-columns:1fr 1fr}.transport-stop-form{grid-template-columns:90px 1fr}.transport-stop-form label:nth-child(3){grid-column:1/-1}.transport-student-search .student-search-row{grid-template-columns:1fr 1fr}.transport-student-search .student-search-row input{grid-column:1/-1}.transport-catalog-grid{grid-template-columns:1fr}}@media(max-width:680px){.transport-context-badge{display:none}.transport-controlbar,.transport-kpis,.transport-operation-grid,.transport-config-form,.transport-stop-form,.transport-student-search .student-search-row,.transport-school-checks,.transport-form-card .form-columns,.transport-document-grid{grid-template-columns:1fr}.transport-tabs{width:100%}.transport-kpis{grid-template-columns:1fr 1fr}.transport-route-title,.transport-vehicle-main,.transport-assignment-list article,.transport-student-results article,.transport-staff-list article{flex-direction:column;align-items:flex-start}.transport-route-meta{display:grid;grid-template-columns:1fr 1fr}.transport-assignment-list article>div:last-child{width:100%;justify-content:space-between}.transport-assign-actions{width:100%;display:grid;grid-template-columns:1fr auto}.transport-assign-actions select{min-width:0}.transport-stop-list article{grid-template-columns:34px 1fr}.transport-stop-list article>b{grid-column:2}.transport-config-form .button,.transport-stop-form label:nth-child(3){grid-column:auto}.transport-student-search .student-search-row input{grid-column:auto}}@media(max-width:480px){.transport-kpis,.transport-route-meta{grid-template-columns:1fr}.transport-metric{grid-template-columns:1fr auto;align-items:center}.transport-metric strong{font-size:1.2rem}.transport-assignment-list article>div:last-child{align-items:flex-start;flex-direction:column}.transport-assign-actions{grid-template-columns:1fr}.transport-stop-list article{grid-template-columns:1fr}.stop-sequence{display:none}.transport-stop-list article>b{grid-column:auto}}.communication-page{display:grid;gap:1rem}.communication-tabs{display:flex;gap:.45rem;flex-wrap:wrap}.communication-tabs button{border:1px solid var(--border);background:var(--surface);color:var(--muted);border-radius:11px;padding:.62rem .85rem;font-weight:800;cursor:pointer}.communication-tabs button.active{background:var(--primary-soft);border-color:color-mix(in srgb,var(--primary) 45%,var(--border));color:var(--primary)}.communication-filterbar{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;gap:.75rem;align-items:center;padding:.85rem}.communication-filterbar input,.communication-compose input,.communication-compose select,.communication-compose textarea{width:100%;border:1px solid var(--border);border-radius:11px;padding:.72rem .8rem;background:var(--surface);color:var(--text)}.communication-compose textarea{resize:vertical;line-height:1.55}.inline-check{display:flex!important;align-items:center;gap:.5rem;color:var(--text);font-weight:700}.inline-check input{width:auto!important;margin:0}.communication-workspace{display:grid;grid-template-columns:minmax(300px,.8fr) minmax(0,1.45fr);gap:1rem;align-items:start}.communication-list{padding:.9rem;position:sticky;top:84px;max-height:calc(100vh - 110px);overflow:auto}.communication-card{width:100%;display:grid;gap:.45rem;text-align:left;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:14px;padding:.85rem;margin-top:.6rem;cursor:pointer;position:relative}.communication-card:hover,.communication-card.selected{border-color:color-mix(in srgb,var(--primary) 55%,var(--border));box-shadow:var(--shadow-sm)}.communication-card.unread{background:color-mix(in srgb,var(--primary-soft) 45%,var(--surface))}.communication-card strong{font-size:.96rem}.communication-card p{margin:0;color:var(--muted);font-size:.82rem;line-height:1.45}.communication-card small{color:var(--muted);font-size:.7rem;line-height:1.35}.communication-card-head{display:flex;align-items:center;justify-content:space-between;gap:.6rem}.unread-dot{width:8px;height:8px;border-radius:999px;background:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.communication-kind,.communication-status{display:inline-flex;width:max-content;padding:.26rem .52rem;border-radius:999px;font-size:.67rem;font-weight:850;letter-spacing:.01em}.communication-kind.kind-announcement{background:color-mix(in srgb,var(--primary) 12%,transparent);color:var(--primary)}.communication-kind.kind-alert{background:color-mix(in srgb,#f59e0b 14%,transparent);color:#b45309}.communication-kind.kind-event{background:color-mix(in srgb,#7c3aed 13%,transparent);color:#6d28d9}.communication-status.status-draft{background:color-mix(in srgb,#64748b 12%,transparent);color:#475569}.communication-status.status-published{background:color-mix(in srgb,#16a34a 12%,transparent);color:#15803d}.communication-status.status-archived{background:color-mix(in srgb,#64748b 10%,transparent);color:var(--muted)}.communication-detail{min-height:430px}.communication-detail-head{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;border-bottom:1px solid var(--border);padding-bottom:1rem}.communication-detail-head>div{display:grid;gap:.35rem}.communication-detail-head h2{margin:0;font-size:1.55rem}.communication-detail-head p{margin:0;color:var(--muted);font-size:.8rem}.communication-summary{font-size:1.02rem;font-weight:700;color:var(--text);margin:1.2rem 0}.communication-body{white-space:pre-wrap;line-height:1.7;font-size:.94rem;min-height:140px}.communication-meta{display:flex;gap:.6rem 1rem;flex-wrap:wrap;border-top:1px solid var(--border);margin-top:1.5rem;padding-top:1rem;color:var(--muted);font-size:.75rem}.communication-empty-detail{min-height:360px;display:grid;place-items:center;align-content:center;text-align:center;gap:.45rem;color:var(--muted)}.communication-empty-detail .empty-icon{font-size:2rem}.communication-empty-detail p{margin:0;max-width:340px}.communication-management-list{display:grid;gap:.65rem;margin-top:1rem}.communication-management-card{display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:.9rem;border:1px solid var(--border);border-radius:14px;background:var(--surface-soft)}.communication-management-card>div:first-child{display:grid;gap:.3rem;min-width:0}.communication-management-card strong{font-size:.94rem}.communication-management-card p,.communication-management-card small{margin:0;color:var(--muted);font-size:.75rem}.row-actions{display:flex;gap:.45rem;flex-wrap:wrap;justify-content:flex-end}.communication-compose{display:grid;gap:1rem}.communication-form-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:.75rem}.communication-compose label{display:grid;gap:.38rem;font-size:.76rem;font-weight:800;color:var(--muted)}.communication-compose fieldset{border:1px solid var(--border);border-radius:14px;padding:.9rem;margin:0}.communication-compose legend{padding:0 .35rem;font-size:.78rem;font-weight:850}.communication-check-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;margin-top:.7rem}.check-card{display:flex!important;align-items:center;gap:.5rem;border:1px solid var(--border);border-radius:11px;padding:.65rem;background:var(--surface-soft);color:var(--text)!important;font-weight:700!important}.check-card input{width:auto!important;margin:0}.form-actions{display:flex;justify-content:flex-end;gap:.55rem}.communication-bell{position:relative;text-decoration:none}.communication-bell>span{position:absolute;right:-6px;top:-7px;min-width:18px;height:18px;padding:0 4px;border-radius:999px;display:grid;place-items:center;background:#dc2626;color:#fff;font-size:9px;font-weight:900;border:2px solid var(--surface)}@media(max-width:1000px){.communication-workspace{grid-template-columns:280px minmax(0,1fr)}.communication-form-grid{grid-template-columns:1fr 1fr}.communication-form-grid label:last-child{grid-column:1/-1}.communication-check-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.communication-tabs{width:100%}.communication-tabs button{flex:1}.communication-filterbar{grid-template-columns:1fr}.communication-workspace{display:block}.communication-list{position:static;max-height:none;margin-bottom:1rem}.communication-detail-head,.communication-management-card{flex-direction:column}.communication-detail-head .button,.row-actions{align-self:stretch}.row-actions .button{flex:1}.communication-form-grid,.communication-check-grid{grid-template-columns:1fr}.communication-form-grid label:last-child{grid-column:auto}.form-actions{position:sticky;bottom:0;background:var(--surface);padding:.75rem 0 calc(.75rem + env(safe-area-inset-bottom));border-top:1px solid var(--border)}.communication-bell{display:grid!important}}.login-public-link{display:inline-flex;margin-top:18px;color:var(--primary);font-size:13px;font-weight:800;text-decoration:none}.login-public-link:hover{text-decoration:underline}.public-site{min-height:100vh;background:#f5f8f7;color:#17313a}.public-header{position:sticky;top:0;z-index:50;min-height:78px;padding:0 max(24px,calc((100vw - 1240px)/2));display:flex;align-items:center;gap:28px;background:#fffffff0;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid #dde8e5}.public-brand{display:flex;align-items:center;gap:12px;min-width:0;text-decoration:none;color:#17313a;margin-right:auto}.public-brand>img,.public-brand-mark{width:43px;height:43px;border-radius:13px;object-fit:contain;background:#0e7f7b;color:#fff;display:grid;place-items:center;font-weight:900;font-size:20px}.public-brand>span:last-child{display:grid;line-height:1.1}.public-brand strong{font-size:17px}.public-brand small{font-size:11px;color:#71838a;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:320px}.public-nav{display:flex;align-items:center;gap:4px}.public-nav a{padding:10px 12px;border-radius:10px;color:#4d646d;text-decoration:none;font-size:13px;font-weight:780}.public-nav a:hover,.public-nav a.active{background:#e8f4f2;color:#0b6f6b}.public-nav .public-login-link{margin-left:8px;background:#0e7f7b;color:#fff;padding-inline:16px}.public-nav .public-login-link:hover{background:#096b68;color:#fff}.public-menu-button{display:none;border:1px solid #dce7e4;background:#fff;border-radius:11px;width:42px;height:42px;color:#17313a}.public-main{min-height:calc(100vh - 280px)}.public-home,.public-inner-page,.public-article,.public-message{width:min(1240px,calc(100% - 40px));margin:0 auto}.public-hero{min-height:520px;margin-top:26px;border-radius:30px;padding:clamp(34px,6vw,74px);display:grid;grid-template-columns:minmax(0,1.45fr) minmax(220px,.55fr);align-items:end;gap:48px;overflow:hidden;position:relative;background:linear-gradient(135deg,#0d333d,#0e6f6d 60%,#2a9b92);color:#fff;box-shadow:0 26px 70px #0b3f4333}.public-hero:after{content:"M";position:absolute;right:-25px;top:-110px;font-size:440px;line-height:1;font-weight:950;color:#ffffff0e;transform:rotate(7deg);pointer-events:none}.public-hero.with-image{background-size:cover;background-position:center}.public-hero>div,.public-network-card{position:relative;z-index:1}.public-kicker{display:inline-flex;padding:8px 12px;border:1px solid rgba(255,255,255,.22);border-radius:999px;background:#ffffff17;font-size:12px;font-weight:800}.public-hero h1{font-size:clamp(42px,6vw,78px);line-height:.98;letter-spacing:-.055em;max-width:880px;margin:24px 0 20px}.public-hero p{font-size:clamp(16px,2vw,20px);line-height:1.65;color:#ffffffd1;max-width:720px;margin:0}.public-hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:30px}.public-button{display:inline-flex;min-height:46px;padding:0 18px;border-radius:12px;align-items:center;justify-content:center;text-decoration:none;border:0;font-weight:820;font-size:13px}.public-button.primary{background:#fff;color:#0d5e5b}.public-button.secondary{background:#ffffff1a;border:1px solid rgba(255,255,255,.25);color:#fff}.public-search .public-button.primary,.public-article .public-button.primary,.public-message .public-button.primary{background:#0e7f7b;color:#fff}.public-network-card{justify-self:end;width:min(100%,260px);padding:24px;border:1px solid rgba(255,255,255,.18);border-radius:20px;background:#04232a47;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:grid;gap:3px}.public-network-card span,.public-network-card small{color:#ffffffb8;font-size:12px}.public-network-card strong{font-size:56px;letter-spacing:-.05em}.public-feature-banner{margin:20px 0 10px;padding:22px 26px;border-radius:18px;background:#fff;border:1px solid #dce8e5;display:flex;align-items:center;justify-content:space-between;gap:28px;box-shadow:0 10px 30px #183d450f}.public-feature-banner>div{display:grid;gap:4px}.public-feature-banner span{color:#0e7f7b;text-transform:uppercase;font-size:10px;font-weight:900;letter-spacing:.1em}.public-feature-banner h2{margin:0;font-size:21px}.public-feature-banner p{margin:0;color:#71838a;font-size:13px}.public-feature-banner>a{white-space:nowrap;color:#0e7f7b;font-weight:850;text-decoration:none}.public-section{padding:72px 0 0}.public-section-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:22px}.public-section-head>div{display:grid;gap:4px}.public-section-head span{color:#0e7f7b;font-size:10px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.public-section-head h2{margin:0;font-size:clamp(28px,4vw,42px);letter-spacing:-.04em}.public-section-head>a{color:#0e7f7b;font-size:13px;font-weight:850;text-decoration:none}.public-content-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.public-content-grid-list{grid-template-columns:repeat(3,minmax(0,1fr))}.public-content-card{min-width:0;display:block;border:1px solid #dce8e5;background:#fff;border-radius:20px;overflow:hidden;text-decoration:none;color:#17313a;transition:.18s ease;box-shadow:0 10px 28px #183d450b}.public-content-card:hover{transform:translateY(-3px);border-color:#9ccac6;box-shadow:0 18px 38px #183d4517}.public-content-card>img,.public-content-placeholder{width:100%;height:190px;object-fit:cover}.public-content-placeholder{display:grid;place-items:center;background:linear-gradient(135deg,#dff1ef,#f4f8f7);color:#0e7f7b;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.12em}.public-content-placeholder.kind-event{background:linear-gradient(135deg,#efe9fb,#f8f5fd);color:#6d28d9}.public-content-placeholder.kind-project{background:linear-gradient(135deg,#fff0e8,#fff8f3);color:#b45309}.public-content-placeholder.kind-announcement{background:linear-gradient(135deg,#e8f0ff,#f5f8ff);color:#2563eb}.public-content-placeholder.kind-banner{background:linear-gradient(135deg,#17313a,#0e7f7b);color:#fff}.public-content-card>div:last-child{padding:20px;display:grid;gap:8px}.public-content-card small{color:#71838a;font-size:11px}.public-content-card h3{font-size:20px;line-height:1.25;letter-spacing:-.025em;margin:0}.public-content-card p{color:#687b83;font-size:13px;line-height:1.55;margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.public-content-card>div:last-child>span{color:#0e7f7b;font-size:11px;font-weight:780}.public-split-section{display:grid;grid-template-columns:1.15fr .85fr;gap:48px;padding-top:72px}.public-stack-list,.public-announcement-list{display:grid;gap:10px}.public-event-row{display:grid;grid-template-columns:68px minmax(0,1fr) auto;gap:16px;align-items:center;padding:14px;border:1px solid #dce8e5;border-radius:16px;background:#fff;color:#17313a;text-decoration:none}.public-event-row time{height:62px;border-radius:13px;background:#e9f5f3;color:#0b6f6b;display:grid;place-items:center;align-content:center;line-height:1}.public-event-row time strong{font-size:25px}.public-event-row time span{text-transform:uppercase;font-size:9px;font-weight:900;margin-top:5px}.public-event-row>div{min-width:0;display:grid;gap:3px}.public-event-row>div>small{color:#0e7f7b;font-size:10px;font-weight:800}.public-event-row strong{font-size:15px}.public-event-row p{margin:0;color:#71838a;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.public-event-row>b{font-size:26px;color:#96aaa9}.public-announcement-list>a{padding:18px;border-left:3px solid #0e7f7b;border-radius:0 14px 14px 0;background:#fff;border-top:1px solid #e1e9e7;border-right:1px solid #e1e9e7;border-bottom:1px solid #e1e9e7;display:grid;gap:5px;text-decoration:none;color:#17313a}.public-announcement-list>a>span{font-size:9px;font-weight:900;color:#0e7f7b;text-transform:uppercase}.public-announcement-list>a>strong{font-size:15px}.public-announcement-list>a>small{color:#71838a;font-size:11px}.public-school-section{padding-bottom:0}.public-school-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.public-school-grid-full{grid-template-columns:repeat(3,minmax(0,1fr))}.public-school-card{position:relative;min-height:270px;padding:24px;border:1px solid #dce8e5;border-radius:22px;background:#fff;display:grid;align-content:end;gap:12px;text-decoration:none;color:#17313a;overflow:hidden;box-shadow:0 10px 28px #183d450b}.public-school-card>img{position:absolute;inset:0 0 auto;width:100%;height:115px;object-fit:cover}.school-card-mark{position:relative;width:52px;height:52px;border-radius:15px;background:#0e7f7b;color:#fff;border:4px solid #fff;display:grid;place-items:center;font-size:12px;font-weight:900;overflow:hidden;z-index:1}.school-card-mark img{width:100%;height:100%;object-fit:contain;background:#fff}.public-school-card>div:nth-of-type(2){display:grid;gap:5px}.public-school-card strong{font-size:18px}.public-school-card span{color:#0e7f7b;font-size:11px;font-weight:800}.public-school-card p{margin:0;color:#71838a;font-size:12px;line-height:1.55;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.public-school-card>b{font-size:12px;color:#0e7f7b}.public-project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.public-empty{grid-column:1/-1;padding:28px;border:1px dashed #cbd9d6;border-radius:16px;color:#71838a;background:#fbfdfc;text-align:center;font-size:13px}.public-footer{margin-top:84px;padding:52px max(24px,calc((100vw - 1240px)/2));background:#0d2e37;color:#fff;display:grid;grid-template-columns:1.2fr .8fr;gap:34px}.public-footer>div:first-child{display:grid;gap:9px}.public-footer strong{font-size:18px}.public-footer p{margin:0;color:#ffffffab;max-width:600px;line-height:1.65;font-size:13px}.public-footer-meta{display:grid;align-content:start;justify-content:end;gap:7px;color:#ffffffb8;font-size:12px}.public-footer-meta a{color:#84d8d2}.public-footer>small{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.12);padding-top:22px;color:#ffffff80}.public-inner-page{padding-top:60px}.public-page-header{max-width:760px}.public-page-header>span{color:#0e7f7b;text-transform:uppercase;letter-spacing:.1em;font-size:10px;font-weight:900}.public-page-header h1{font-size:clamp(42px,6vw,68px);line-height:1;letter-spacing:-.05em;margin:12px 0}.public-page-header p{color:#6d8188;font-size:17px;line-height:1.65}.public-search{margin:30px 0;display:flex;gap:9px;max-width:760px}.public-search input{flex:1;min-height:48px;border:1px solid #d7e3e0;border-radius:13px;background:#fff;color:#17313a;padding:0 15px}.public-loading,.public-message{min-height:52vh;display:grid;place-items:center;align-content:center;gap:12px;color:#71838a;text-align:center}.public-message h1{color:#17313a;font-size:42px;margin:0}.public-message p{max-width:600px}.public-error{padding:14px 16px;border:1px solid #fecaca;border-radius:13px;background:#fff1f2;color:#b42318;margin:20px 0}.school-public-hero{min-height:360px;padding:42px;border-radius:28px;background:linear-gradient(135deg,#0d333d,#0e7772);color:#fff;display:flex;align-items:end;gap:22px;background-size:cover;background-position:center}.school-public-logo{width:82px;height:82px;border-radius:22px;border:5px solid rgba(255,255,255,.95);background:#0e7f7b;display:grid;place-items:center;font-weight:900;overflow:hidden;flex:0 0 auto}.school-public-logo img{width:100%;height:100%;object-fit:contain;background:#fff}.school-public-hero>div:last-child span{font-size:11px;text-transform:uppercase;font-weight:900;letter-spacing:.1em;color:#a7e2dd}.school-public-hero h1{font-size:clamp(36px,6vw,64px);letter-spacing:-.05em;line-height:1;margin:9px 0}.school-public-hero p{max-width:760px;color:#ffffffc7;line-height:1.6;margin:0}.school-info-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:14px}.school-info-grid>div{padding:18px;border-radius:15px;background:#fff;border:1px solid #dce8e5;display:grid;gap:5px}.school-info-grid span{font-size:9px;color:#0e7f7b;text-transform:uppercase;font-weight:900;letter-spacing:.08em}.school-info-grid strong{font-size:13px}.school-info-grid small{color:#71838a}.school-social{margin-top:50px;padding:22px;border:1px solid #dce8e5;border-radius:16px;background:#fff;display:flex;align-items:center;gap:15px;flex-wrap:wrap}.school-social strong{margin-right:auto}.school-social a{color:#0e7f7b;font-size:12px;font-weight:850;text-decoration:none}.public-article{padding-top:54px;max-width:920px}.public-article header{display:grid;gap:24px}.public-article-cover{width:100%;max-height:480px;object-fit:cover;border-radius:25px}.public-article-heading>span{color:#0e7f7b;font-size:10px;text-transform:uppercase;font-weight:900;letter-spacing:.1em}.public-article-heading h1{font-size:clamp(40px,6vw,68px);line-height:1.02;letter-spacing:-.05em;margin:13px 0 17px}.public-article-heading>p{font-size:19px;color:#62777f;line-height:1.6}.public-article-heading>div{display:flex;gap:8px 18px;flex-wrap:wrap;color:#71838a}.public-article-body{white-space:pre-wrap;font-size:17px;line-height:1.82;color:#29454e;padding:40px 0;border-top:1px solid #dce8e5;margin-top:30px}.public-article footer{display:flex;gap:8px;flex-wrap:wrap;margin-top:30px}.public-article footer a{padding:8px 11px;border-radius:999px;background:#e9f4f2;color:#0b6f6b;text-decoration:none;font-size:11px;font-weight:800}.cms-page{display:grid;gap:18px}.cms-tabs{display:flex;gap:6px;flex-wrap:wrap}.cms-tabs button{border:1px solid var(--border);border-radius:11px;background:var(--surface);color:var(--muted);padding:.65rem .9rem;font-weight:820}.cms-tabs button.active{background:var(--primary-soft);color:var(--primary);border-color:color-mix(in srgb,var(--primary) 35%,var(--border))}.cms-content-list{display:grid;gap:.65rem;margin-top:1rem}.cms-content-row{display:flex;justify-content:space-between;align-items:center;gap:1.2rem;padding:1rem;border:1px solid var(--border);border-radius:15px;background:var(--surface-soft)}.cms-content-row>div:first-child{display:grid;gap:.35rem;min-width:0}.cms-content-row strong{font-size:.96rem}.cms-content-row p,.cms-content-row small{margin:0;color:var(--muted);font-size:.75rem}.cms-row-badges{display:flex;gap:.35rem;align-items:center;flex-wrap:wrap}.cms-kind,.cms-status{display:inline-flex;padding:.27rem .55rem;border-radius:999px;font-size:.66rem;font-weight:900}.cms-kind{background:var(--primary-soft);color:var(--primary)}.cms-kind.kind-event{background:color-mix(in srgb,#7c3aed 13%,transparent);color:#6d28d9}.cms-kind.kind-project{background:color-mix(in srgb,#f59e0b 14%,transparent);color:#b45309}.cms-kind.kind-banner{background:color-mix(in srgb,#0f766e 14%,transparent);color:#0f766e}.cms-status.status-draft{background:color-mix(in srgb,#64748b 12%,transparent);color:#475569}.cms-status.status-published{background:color-mix(in srgb,#16a34a 12%,transparent);color:#15803d}.cms-status.status-archived{background:color-mix(in srgb,#64748b 10%,transparent);color:var(--muted)}.cms-editor,.cms-school-editor,.cms-site-editor{display:grid;gap:1rem}.cms-editor label,.cms-school-editor label,.cms-site-editor label{display:grid;gap:.38rem;font-size:.76rem;font-weight:800;color:var(--muted)}.cms-editor input,.cms-editor select,.cms-editor textarea,.cms-school-editor input,.cms-school-editor textarea,.cms-site-editor input,.cms-site-editor textarea{width:100%;border:1px solid var(--border);border-radius:11px;padding:.72rem .8rem;background:var(--surface);color:var(--text)}.cms-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.cms-editor fieldset{border:1px solid var(--border);border-radius:14px;padding:1rem}.cms-editor legend{padding:0 .5rem;font-size:.75rem;font-weight:850}.cms-school-workspace{display:grid;grid-template-columns:280px minmax(0,1fr);gap:1rem;align-items:start}.cms-school-list{position:sticky;top:92px;display:grid;gap:.55rem}.cms-school-list h2{margin:.2rem 0 .6rem}.cms-school-list>button{border:1px solid var(--border);border-radius:12px;background:var(--surface-soft);color:var(--text);padding:.75rem;text-align:left;display:grid;gap:.2rem}.cms-school-list>button.selected{border-color:var(--primary);background:var(--primary-soft)}.cms-school-list>button span{font-size:.68rem;color:var(--muted)}@media(max-width:900px){.public-header{padding:0 16px}.public-brand small{max-width:190px}.public-menu-button{display:grid;place-items:center}.public-nav{display:none;position:absolute;top:68px;left:12px;right:12px;padding:12px;border-radius:16px;background:#fff;border:1px solid #dce8e5;box-shadow:0 20px 50px #10303a26;align-items:stretch}.public-nav.open{display:grid}.public-nav a{padding:12px}.public-nav .public-login-link{margin-left:0;text-align:center}.public-home,.public-inner-page,.public-article,.public-message{width:min(100% - 24px,1240px)}.public-hero{grid-template-columns:1fr;min-height:560px;margin-top:12px;padding:34px 25px}.public-network-card{justify-self:start;width:230px}.public-feature-banner{align-items:flex-start;flex-direction:column}.public-content-grid,.public-content-grid-list,.public-school-grid,.public-school-grid-full{grid-template-columns:repeat(2,minmax(0,1fr))}.public-split-section{grid-template-columns:1fr;gap:54px}.school-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.public-footer{padding:42px 22px;grid-template-columns:1fr}.public-footer-meta{justify-content:start}.public-footer>small{grid-column:1}.cms-form-grid,.cms-school-workspace{grid-template-columns:1fr}.cms-school-list{position:static}.cms-content-row{align-items:flex-start;flex-direction:column}.cms-content-row .row-actions{justify-content:flex-start}}@media(max-width:560px){.public-brand small{display:none}.public-hero h1{font-size:42px}.public-content-grid,.public-content-grid-list,.public-school-grid,.public-school-grid-full,.public-project-grid{grid-template-columns:1fr}.public-section,.public-split-section{padding-top:54px}.public-section-head{align-items:flex-start;flex-direction:column}.public-content-card>img,.public-content-placeholder{height:170px}.public-event-row{grid-template-columns:58px minmax(0,1fr) auto}.school-public-hero{min-height:430px;padding:28px 22px;align-items:flex-start;justify-content:flex-end;flex-direction:column}.school-info-grid{grid-template-columns:1fr}.public-article-heading h1{font-size:40px}.public-search{flex-direction:column}.public-search .public-button{width:100%}}.learning-admin-page,.student-learning-page{display:grid;gap:18px}.learning-workspace{display:grid;grid-template-columns:320px minmax(0,1fr);gap:16px;align-items:start}.learning-path-list{position:sticky;top:92px;max-height:calc(100vh - 116px);overflow:auto}.learning-path-row{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:start;padding:11px 10px;border:1px solid var(--border);border-radius:12px;background:var(--surface-soft);color:var(--text);text-align:left;margin-top:8px}.learning-path-row.active,.learning-path-row:hover{border-color:var(--primary);background:var(--primary-soft)}.learning-path-row>span:nth-child(2){display:grid;gap:2px;min-width:0}.learning-path-row strong,.learning-path-row small{overflow:hidden;text-overflow:ellipsis}.learning-path-row small{font-size:8px;color:var(--muted)}.learning-path-row em{font-size:8px;font-style:normal;color:var(--muted);white-space:nowrap}.status-dot{width:9px;height:9px;border-radius:50%;margin-top:4px;background:#94a3b8}.status-dot.status-published{background:#16a34a}.status-dot.status-draft{background:#f59e0b}.status-dot.status-archived{background:#64748b}.status-pill{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:8px;font-weight:900;background:var(--surface-soft);border:1px solid var(--border)}.status-pill.status-published{color:#15803d;background:#ecfdf3;border-color:#bbf7d0}.status-pill.status-draft{color:#b45309;background:#fffbeb;border-color:#fde68a}.status-pill.status-archived{color:#64748b}.learning-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.learning-admin-page label{display:grid;gap:6px;color:var(--muted);font-size:10px;font-weight:800}.learning-admin-page input,.learning-admin-page select,.learning-admin-page textarea,.student-learning-page select{width:100%;border:1px solid var(--border);border-radius:11px;padding:9px 11px;background:var(--surface);color:var(--text)}.learning-target-box{margin-top:12px;padding:12px;border:1px solid var(--border);border-radius:13px;background:var(--surface-soft)}.learning-target-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:8px;max-height:260px;overflow:auto;margin-top:10px}.target-option{display:flex!important;grid-template-columns:none!important;gap:8px!important;align-items:flex-start;padding:9px;border:1px solid var(--border);border-radius:10px;background:var(--surface)}.target-option.selected{border-color:var(--primary);background:var(--primary-soft)}.target-option input{width:auto;min-height:auto;margin-top:3px}.target-option span{display:grid;gap:2px}.target-option small{font-size:8px;color:var(--muted)}.learning-actions{margin-top:8px;padding-top:12px;border-top:1px solid var(--border)}.learning-modules{display:grid;gap:10px}.learning-module{border:1px solid var(--border);border-radius:13px;overflow:hidden}.learning-module.active{border-color:var(--primary)}.learning-module-head{width:100%;display:flex;justify-content:space-between;gap:12px;padding:12px;border:0;background:var(--surface-soft);color:var(--text);text-align:left}.learning-module-head>span:first-child{display:grid;gap:2px}.learning-module-head small{color:var(--muted);font-size:8px}.mini-danger,.text-button.danger{color:#b42318}.mini-danger{font-size:8px;font-weight:900}.learning-content-list{display:grid}.learning-content-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 12px;border-top:1px solid var(--border)}.content-kind{display:inline-flex;padding:4px 7px;border-radius:999px;background:var(--primary-soft);color:var(--primary);font-size:8px;font-weight:900}.learning-content-row>span:nth-child(2){display:grid;gap:2px}.learning-content-row small{color:var(--muted);font-size:8px}.learning-inline-form,.learning-content-form{display:grid;gap:10px;margin-top:14px;padding-top:14px;border-top:1px solid var(--border)}.learning-inline-form{grid-template-columns:1fr 1fr auto;align-items:end}.checkbox-line{display:flex!important;align-items:center;gap:8px!important}.checkbox-line input{width:auto!important}.learning-portal-toolbar{display:flex;justify-content:space-between;gap:12px;align-items:end}.learning-portal-toolbar label{display:grid;gap:5px;font-size:9px;color:var(--muted);font-weight:800}.learning-portal-toolbar span{font-size:9px;color:var(--muted)}.learning-portal-workspace{display:grid;grid-template-columns:300px minmax(0,1fr);gap:16px;align-items:start}.learning-portal-list{display:grid;gap:10px;position:sticky;top:92px;max-height:calc(100vh - 120px);overflow:auto}.learning-student-card{display:grid;gap:7px;text-align:left;border-color:var(--border);cursor:pointer}.learning-student-card.active,.learning-student-card:hover{border-color:var(--primary);background:var(--primary-soft)}.learning-student-card p{margin:0;color:var(--muted);font-size:10px;line-height:1.5}.progress-line{height:7px;border-radius:999px;background:var(--border);overflow:hidden}.progress-line span{display:block;height:100%;background:var(--primary);border-radius:999px}.learning-student-card small{color:var(--muted);font-size:8px}.learning-reader{min-width:0}.learning-progress-badge{display:grid;justify-items:end;gap:2px}.learning-progress-badge strong{font-size:28px}.learning-progress-badge span{font-size:8px;color:var(--muted)}.learning-reader-modules{display:grid;gap:16px;margin-top:18px}.learning-reader-module{display:grid;gap:10px}.learning-reader-module>div:first-child{display:flex;gap:10px;align-items:flex-start}.module-number{display:grid;place-items:center;min-width:28px;height:28px;border-radius:9px;background:var(--primary-soft);color:var(--primary);font-size:10px;font-weight:900}.learning-reader-module h3{margin:0 0 3px}.learning-reader-module p{margin:0;color:var(--muted);font-size:10px;line-height:1.55}.learning-reader-contents{display:grid;gap:8px}.learning-reader-content{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:start;padding:12px;border:1px solid var(--border);border-radius:12px;background:var(--surface-soft)}.learning-reader-content.done{border-color:color-mix(in srgb,#16a34a 40%,var(--border));background:color-mix(in srgb,#16a34a 5%,var(--surface))}.content-check{width:26px;height:26px;border-radius:8px;display:grid;place-items:center;background:var(--surface);border:1px solid var(--border);font-weight:900}.learning-reader-content.done .content-check{background:#ecfdf3;color:#15803d;border-color:#bbf7d0}.content-main{display:grid;gap:6px;min-width:0}.content-main h4{margin:0}.learning-body{white-space:pre-wrap!important;color:var(--text)!important}.content-main small{font-size:8px;color:var(--muted)}.learning-readonly-note{margin-top:14px;padding:10px 12px;border-radius:10px;background:var(--surface-soft);color:var(--muted);font-size:9px}.student-switcher{display:flex;gap:8px;overflow:auto}.student-switcher button{min-width:190px;padding:10px;border:1px solid var(--border);border-radius:11px;background:var(--surface-soft);color:var(--text);text-align:left;display:grid;gap:2px}.student-switcher button.active{border-color:var(--primary);background:var(--primary-soft)}.student-switcher small{font-size:8px;color:var(--muted)}@media(max-width:1000px){.learning-workspace,.learning-portal-workspace{grid-template-columns:1fr}.learning-path-list,.learning-portal-list{position:static;max-height:none}.learning-form-grid{grid-template-columns:1fr 1fr}.learning-inline-form{grid-template-columns:1fr}.learning-portal-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.learning-form-grid,.learning-portal-list{grid-template-columns:1fr}.learning-reader-content{grid-template-columns:auto minmax(0,1fr)}.learning-reader-content>.button{grid-column:2}.learning-portal-toolbar{align-items:stretch;flex-direction:column}.learning-progress-badge{justify-items:start}.learning-target-grid{grid-template-columns:1fr}}.card{border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:var(--shadow);padding:22px}.page-heading{display:flex;justify-content:space-between;gap:20px;align-items:flex-end}.page-heading h1{margin:5px 0 8px;font-size:clamp(30px,4vw,46px);letter-spacing:-.035em}.page-heading p{margin:0;color:var(--muted);line-height:1.55}.compact-field{display:grid;gap:6px;min-width:220px;font-size:13px;font-weight:700}.compact-field select{min-height:42px}.status-pill{display:inline-flex;align-items:center;width:max-content;min-height:28px;padding:0 10px;border-radius:999px;border:1px solid var(--border);background:var(--surface-soft);color:var(--muted);font-size:11px;font-weight:800}.status-pill.success{color:var(--primary-strong);background:var(--primary-soft);border-color:color-mix(in srgb,var(--primary),var(--border) 65%)}.exam-list-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.exam-list-card{display:grid;gap:12px}.exam-list-card h3{margin:0;font-size:20px}.exam-list-card p{margin:0;color:var(--muted)}.exam-card-top,.card-head,.exam-question-head,.review-attempt-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.exam-list-card dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px;margin:4px 0}.exam-list-card dl div{display:grid;gap:3px}.exam-list-card dt{color:var(--muted);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.exam-list-card dd{margin:0;font-weight:700}.exam-latest{padding-top:10px;border-top:1px solid var(--border);display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:13px}.exam-latest strong{color:var(--text)}.card-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:4px}.muted-copy{color:var(--muted);font-size:13px}.danger-text{color:var(--danger)}.exam-attempt-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.exam-attempt-summary>div{display:grid;gap:5px}.exam-attempt-summary span{color:var(--muted);font-size:12px}.exam-attempt-summary strong{font-size:18px}.exam-question-list,.exam-question-card{display:grid;gap:16px}.exam-question-head{color:var(--muted);font-size:13px}.exam-prompt{margin:0;font-size:17px;line-height:1.65;white-space:pre-wrap}.exam-options{display:grid;gap:10px}.exam-options label{display:flex;gap:10px;align-items:flex-start;padding:12px 13px;border:1px solid var(--border);border-radius:12px;background:var(--surface-soft);cursor:pointer}.exam-options input{margin-top:3px}.exam-question-card textarea{width:100%}.sticky-actions{position:sticky;bottom:14px;z-index:5;display:flex;justify-content:flex-end;gap:10px;padding:12px;border:1px solid var(--border);border-radius:16px;background:color-mix(in srgb,var(--surface),transparent 5%);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:var(--shadow)}.two-panel-layout{display:grid;grid-template-columns:minmax(250px,320px) minmax(0,1fr);gap:20px;align-items:start}.side-list{position:sticky;top:96px;display:grid;gap:8px;padding:14px;max-height:calc(100vh - 120px);overflow:auto}.side-list h3{margin:4px 8px 8px}.side-list>button{width:100%;text-align:left;border:1px solid transparent;background:transparent;color:var(--text);border-radius:13px;padding:11px;display:flex;gap:10px;align-items:center;justify-content:space-between}.side-list>button:hover,.side-list>button.selected{border-color:var(--border);background:var(--surface-soft)}.side-list button span:first-child{display:grid;gap:4px;min-width:0}.side-list button small{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-head h2,.card-head h3{margin:4px 0 6px}.card-head p{margin:0;color:var(--muted)}.form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:18px}.form-grid label,.question-create-form label,.question-bank-list label,.manual-answer label{display:grid;gap:6px;color:var(--muted);font-size:12px;font-weight:700}.form-grid input,.form-grid select,.question-create-form input,.question-create-form select,.question-create-form textarea,.question-bank-list input,.manual-answer input,.inline-search input{width:100%;border:1px solid var(--border);border-radius:11px;padding:10px 11px;background:var(--surface);color:var(--text)}.check-row{display:flex!important;align-items:center;gap:8px!important;align-self:end;min-height:42px}.question-composer-list,.question-bank-list{display:grid;gap:10px;margin-top:16px}.question-composer-row{display:grid;grid-template-columns:34px minmax(0,1fr) auto 42px;gap:12px;align-items:center;padding:12px;border:1px solid var(--border);border-radius:12px;background:var(--surface-soft)}.question-composer-row>span{width:30px;height:30px;display:grid;place-items:center;border-radius:9px;background:var(--primary-soft);color:var(--primary-strong);font-weight:800}.question-composer-row p{margin:4px 0 0;color:var(--muted);line-height:1.45}.inline-search{display:flex;gap:8px;min-width:min(100%,360px)}.question-create-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:16px;margin-top:18px;border:1px dashed var(--border);border-radius:14px;background:var(--surface-soft)}.span-2{grid-column:span 2}.span-3{grid-column:1/-1}.alternatives-editor{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.alternatives-editor label{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:8px}.alternatives-editor label input[type=radio]{width:auto}.question-bank-list article{display:grid;grid-template-columns:minmax(0,1fr) 100px auto;gap:12px;align-items:center;padding:12px;border:1px solid var(--border);border-radius:12px}.question-bank-list p{margin:4px 0 0;line-height:1.5}.review-attempt{display:grid;gap:14px;margin-top:14px;padding:16px;border:1px solid var(--border);border-radius:14px;background:var(--surface-soft)}.review-attempt-head>div{display:grid;gap:4px}.review-attempt-head span{color:var(--muted);font-size:12px}.manual-answer{display:grid;grid-template-columns:minmax(0,1fr) 110px;gap:12px;padding-top:12px;border-top:1px solid var(--border)}.manual-answer p,.manual-answer blockquote{grid-column:1/-1;margin:0}.manual-answer blockquote{padding:12px 14px;border-left:3px solid var(--primary);background:var(--surface);color:var(--text);white-space:pre-wrap}@media(max-width:980px){.two-panel-layout{grid-template-columns:1fr}.side-list{position:static;max-height:none}.form-grid,.question-create-form{grid-template-columns:repeat(2,minmax(0,1fr))}.span-2,.span-3{grid-column:1/-1}.exam-attempt-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.page-heading,.card-head,.exam-card-top,.review-attempt-head{align-items:stretch;flex-direction:column}.exam-list-grid,.form-grid,.question-create-form,.alternatives-editor,.exam-list-card dl{grid-template-columns:1fr}.exam-latest{flex-direction:column}.question-composer-row{grid-template-columns:30px minmax(0,1fr) auto}.question-composer-row .icon-button{grid-column:3}.question-bank-list article{grid-template-columns:1fr}.manual-answer{grid-template-columns:1fr}.sticky-actions{bottom:8px}}.active-search-page{display:grid;gap:18px}.active-search-hero{align-items:center}.active-search-hero-actions{display:grid;justify-items:end;gap:5px;min-width:220px}.active-search-hero-actions span{font-size:10px;color:var(--muted)}.active-search-settings-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;align-items:end}.active-search-settings-grid label,.active-search-action-form label,.resolve-case-box label{display:grid;gap:6px;color:var(--muted);font-size:10px;font-weight:800}.active-search-settings-grid input,.active-search-action-form input,.active-search-action-form select,.active-search-action-form textarea,.resolve-case-box input,.resolve-case-box textarea{width:100%;border:1px solid var(--border);border-radius:11px;padding:9px 11px;background:var(--surface);color:var(--text)}.danger-metric strong{color:#b42318}.active-search-workspace{display:grid;grid-template-columns:390px minmax(0,1fr);gap:16px;align-items:start}.active-search-lists{display:grid;gap:16px}.active-search-lists>.content-card{padding:18px}.active-search-alert-list{display:grid;gap:10px}.active-search-alert{display:grid;gap:11px;border:1px solid var(--border);border-radius:14px;padding:13px;background:var(--surface-soft)}.active-search-alert.risk-high{border-color:color-mix(in srgb,#dc2626 36%,var(--border))}.active-search-alert.risk-medium{border-color:color-mix(in srgb,#d97706 36%,var(--border))}.active-search-alert.risk-low{border-color:color-mix(in srgb,#2563eb 28%,var(--border))}.active-search-alert-head{display:flex;gap:10px;align-items:flex-start}.active-search-alert-head>div{display:grid;gap:2px;min-width:0}.active-search-alert-head small{font-size:8px;color:var(--muted)}.risk-pill{display:inline-flex;width:max-content;border-radius:999px;padding:5px 8px;font-size:8px;font-weight:900;border:1px solid var(--border);white-space:nowrap}.risk-high{color:#b42318;background:#fff1f2;border-color:#fecdd3}.risk-medium{color:#b45309;background:#fffbeb;border-color:#fde68a}.risk-low{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}.risk-dot{width:9px;height:9px;border-radius:50%;margin-top:4px;background:#64748b}.risk-dot.risk-high{background:#dc2626}.risk-dot.risk-medium{background:#d97706}.risk-dot.risk-low{background:#2563eb}.active-search-numbers{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.active-search-numbers span{display:grid;gap:1px;border:1px solid var(--border);background:var(--surface);border-radius:9px;padding:7px;font-size:7px;color:var(--muted)}.active-search-numbers b{font-size:12px;color:var(--text)}.active-search-alert ul{margin:0;padding-left:17px;color:var(--muted);font-size:9px;line-height:1.5}.active-case-list{display:grid;gap:7px}.active-case-list button{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:start;padding:10px;border:1px solid var(--border);border-radius:11px;background:var(--surface-soft);color:var(--text);text-align:left}.active-case-list button.active,.active-case-list button:hover{border-color:var(--primary);background:var(--primary-soft)}.active-case-list button>span:nth-child(2){display:grid;gap:2px}.active-case-list small,.active-case-list em{font-size:8px;color:var(--muted);font-style:normal}.active-search-case-detail{position:sticky;top:92px;max-height:calc(100vh - 116px);overflow:auto}.case-detail-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;border-bottom:1px solid var(--border);padding-bottom:14px}.case-detail-head h2{margin:7px 0 2px}.case-detail-head p{margin:0}.case-detail-head>div:last-child{display:grid;justify-items:end;gap:5px}.case-detail-head small{font-size:8px;color:var(--muted)}.case-trigger,.guardian-box,.resolve-case-box,.resolved-case{margin-top:14px;border:1px solid var(--border);border-radius:12px;padding:12px;background:var(--surface-soft)}.case-trigger p,.guardian-box p,.resolved-case p{margin:5px 0 0}.guardian-box{display:grid;gap:8px}.guardian-box>div{display:grid;gap:2px;padding-top:7px;border-top:1px solid var(--border)}.guardian-box small{font-size:8px;color:var(--muted)}.active-search-action-form{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px;padding-top:16px;border-top:1px solid var(--border)}.active-search-action-form h3{grid-column:1/-1;margin:0}.active-search-action-form .span-2{grid-column:1/-1}.resolve-case-box form{display:grid;gap:10px;margin-top:10px}.case-timeline{display:grid;gap:10px;margin-top:18px}.case-timeline h3{margin:0}.case-timeline article{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px}.timeline-marker{width:10px;height:10px;border-radius:50%;margin-top:5px;background:var(--primary);box-shadow:0 0 0 4px var(--primary-soft)}.case-timeline article>div:last-child{display:grid;gap:3px;border-bottom:1px solid var(--border);padding-bottom:10px}.case-timeline span,.case-timeline small{font-size:8px;color:var(--muted)}.case-timeline p{margin:2px 0;font-size:9px}.status-open{color:#b45309}.status-in_progress{color:#1d4ed8}.status-resolved{color:#15803d}.empty-state{display:grid;gap:5px;padding:22px;border:1px dashed var(--border);border-radius:12px;text-align:center;color:var(--muted)}@media(max-width:1100px){.active-search-settings-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.active-search-workspace{grid-template-columns:340px minmax(0,1fr)}}@media(max-width:900px){.active-search-workspace{grid-template-columns:1fr}.active-search-case-detail{position:static;max-height:none}.active-search-settings-grid{grid-template-columns:1fr 1fr}.active-search-hero-actions{justify-items:start}.active-search-numbers{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:600px){.active-search-settings-grid,.active-search-action-form{grid-template-columns:1fr}.active-search-action-form .span-2{grid-column:auto}.active-search-numbers{grid-template-columns:1fr}.case-detail-head{display:grid}.case-detail-head>div:last-child{justify-items:start}.active-case-list button{grid-template-columns:auto 1fr}.active-case-list em{grid-column:2}.active-search-alert .button{width:100%}}.class-council-page{display:grid;gap:18px}.class-council-workspace{display:grid;grid-template-columns:320px minmax(0,1fr);gap:16px;align-items:start}.council-list{position:sticky;top:92px;max-height:calc(100vh - 116px);overflow:auto}.council-list>button{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 10px;text-align:left;padding:12px;margin-top:8px;border:1px solid var(--border);border-radius:12px;background:var(--surface-soft);color:var(--text);cursor:pointer}.council-list>button:hover,.council-list>button.active{border-color:var(--primary);background:var(--primary-soft)}.council-list>button>span:first-child{display:grid;gap:2px}.council-list>button small{font-size:8px;color:var(--muted)}.council-list>button>small{grid-column:1/-1}.council-detail{min-height:520px}.council-detail-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding-bottom:14px;border-bottom:1px solid var(--border)}.council-detail-head h2{margin:4px 0}.council-detail-head p{margin:0;color:var(--muted)}.council-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.info-note{margin-top:14px;padding:12px;border:1px solid var(--border);border-radius:12px;background:var(--surface-soft)}.info-note p{margin:5px 0 0;white-space:pre-wrap}.council-student-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:16px;margin-top:16px}.council-students{display:grid;gap:7px;align-content:start;max-height:700px;overflow:auto}.council-students button{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;width:100%;border:1px solid var(--border);border-radius:11px;padding:10px;background:var(--surface-soft);color:var(--text);text-align:left}.council-students button.active{border-color:var(--primary);background:var(--primary-soft)}.council-students button.has-decision{box-shadow:inset 3px 0 #16a34a}.council-students button>span{display:grid;gap:2px}.council-students small{font-size:8px;color:var(--muted)}.council-student-detail{display:grid;gap:14px;min-width:0}.student-title{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.student-title h3{margin:3px 0}.student-title>span{font-size:9px;color:var(--muted)}.council-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.council-metrics article{display:grid;gap:4px;padding:12px;border:1px solid var(--border);border-radius:12px;background:var(--surface-soft)}.council-metrics span,.council-metrics small{font-size:8px;color:var(--muted)}.council-metrics strong{font-size:1.25rem}.council-subjects,.council-contributions,.council-decision{display:grid;gap:10px;padding:14px;border:1px solid var(--border);border-radius:13px;background:var(--surface-soft)}.council-subjects h4,.council-contributions h4,.council-decision h4{margin:0}.council-subjects article,.council-contributions article{display:grid;gap:5px;padding:10px;border:1px solid var(--border);border-radius:10px;background:var(--surface)}.council-subjects article>div{display:flex;justify-content:space-between;gap:10px;align-items:center}.council-subjects article span,.council-subjects small,.council-contributions small{font-size:8px;color:var(--muted)}.council-contributions p{margin:0;white-space:pre-wrap}.council-contributions form,.council-decision form{display:grid;gap:10px;padding-top:10px;border-top:1px solid var(--border)}.council-contributions label,.council-decision label{display:grid;gap:6px;font-size:9px;font-weight:800;color:var(--muted)}.council-contributions textarea,.council-decision textarea,.council-decision input{width:100%;border:1px solid var(--border);border-radius:10px;padding:10px;background:var(--surface);color:var(--text);resize:vertical}.decision-readonly{display:grid;gap:7px}.decision-readonly p{margin:0;white-space:pre-wrap}.status-finalized{color:#15803d;background:#ecfdf3}.status-draft{color:#b45309;background:#fffbeb}@media(max-width:1050px){.class-council-workspace{grid-template-columns:270px minmax(0,1fr)}.council-student-layout{grid-template-columns:220px minmax(0,1fr)}}@media(max-width:850px){.class-council-workspace{grid-template-columns:1fr}.council-list{position:static;max-height:none}.council-student-layout{grid-template-columns:1fr}.council-students{grid-template-columns:repeat(2,minmax(0,1fr));max-height:none}.council-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:600px){.council-detail-head,.student-title{display:grid}.council-actions{justify-content:flex-start}.council-students,.council-metrics{grid-template-columns:1fr}.council-subjects article>div{display:grid}.class-council-page .form-grid{grid-template-columns:1fr}.class-council-page .span-2{grid-column:auto}}.occurrence-workspace{display:grid;grid-template-columns:minmax(260px,340px) minmax(0,1fr);gap:1rem;align-items:start}.occurrence-list{padding:0;overflow:hidden;position:sticky;top:5.5rem}.occurrence-list .section-heading{padding:1rem 1rem .5rem}.occurrence-list-item{display:flex;width:100%;flex-direction:column;gap:.3rem;text-align:left;border:0;border-top:1px solid var(--border);background:transparent;color:inherit;padding:1rem;cursor:pointer}.occurrence-list-item:hover,.occurrence-list-item.selected{background:var(--surface-soft)}.occurrence-list-item strong{font-size:.96rem}.occurrence-list-item span,.occurrence-list-item small{color:var(--muted)}.occurrence-list-top{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.status-pill{display:inline-flex;align-items:center;width:max-content;border-radius:999px;padding:.3rem .6rem;font-size:.73rem;font-weight:700;background:var(--surface-soft);border:1px solid var(--border)}.status-open{color:#9a5b00}.status-in_follow_up{color:#315ea8}.status-resolved{color:#287a4b}.occurrence-detail{min-width:0}.occurrence-detail-heading{align-items:flex-start}.occurrence-detail-heading p{margin:.3rem 0 0;color:var(--muted)}.occurrence-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin:1rem 0}.occurrence-meta div{display:flex;flex-direction:column;gap:.25rem;padding:.8rem;border-radius:.8rem;background:var(--surface-soft)}.occurrence-meta span,.occurrence-text>span{font-size:.76rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:700}.occurrence-text{display:grid;gap:.4rem;margin-bottom:1rem}.occurrence-text p{margin:0 0 .8rem;white-space:pre-wrap}.occurrence-management{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:.8rem;border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:1rem 0;margin:1rem 0}.occurrence-management>div:first-child{display:grid;grid-template-columns:1fr auto;gap:.5rem}.occurrence-management>div:first-child .eyebrow{grid-column:1/-1}.guardian-share{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem;border:1px solid var(--border);border-radius:.8rem}.guardian-share.shared{background:var(--surface-soft)}.guardian-share div{display:flex;flex-direction:column;gap:.25rem}.guardian-share span{color:var(--muted);font-size:.85rem}.occurrence-followups{margin-top:1rem}.occurrence-followup{border-left:3px solid var(--border);padding:.75rem 1rem;margin:.6rem 0;background:var(--surface-soft);border-radius:0 .7rem .7rem 0}.occurrence-followup>div{display:flex;justify-content:space-between;gap:1rem}.occurrence-followup span,.occurrence-followup small{color:var(--muted)}.occurrence-followup p{white-space:pre-wrap}.occurrence-followup small{display:block;margin-top:.35rem}.occurrence-followup-form{display:grid;gap:.7rem;border-top:1px solid var(--border);margin-top:1rem;padding-top:1rem}.occurrence-resolution{display:grid;grid-template-columns:1fr auto;gap:.75rem;align-items:end;border-top:1px dashed var(--border);padding-top:.8rem;margin-top:.4rem}.occurrence-resolved{display:flex;flex-direction:column;gap:.5rem;border-top:1px solid var(--border);margin-top:1rem;padding-top:1rem}.occurrence-resolved p{white-space:pre-wrap}.occurrence-create{position:relative}.occurrence-form{display:grid;gap:1rem}.occurrence-student-search{position:relative}.inline-input{display:flex;gap:.5rem}.inline-input input{flex:1}.occurrence-search-results{display:grid;position:absolute;z-index:5;top:100%;left:0;right:0;max-height:260px;overflow:auto;border:1px solid var(--border);border-radius:.7rem;background:var(--surface);box-shadow:0 12px 30px #0000001f}.occurrence-search-results button{display:flex;flex-direction:column;gap:.2rem;text-align:left;padding:.75rem;border:0;border-bottom:1px solid var(--border);background:transparent;color:inherit;cursor:pointer}.occurrence-search-results button:hover,.occurrence-search-results button.selected{background:var(--surface-soft)}.occurrence-search-results span,.selected-student span{font-size:.82rem;color:var(--muted)}.selected-student{display:flex;flex-direction:column;gap:.2rem;padding:.7rem;margin-top:.6rem;background:var(--surface-soft);border-radius:.7rem}.portal-occurrence-list{display:grid;gap:.75rem}.portal-occurrence-card{border:1px solid var(--border);border-radius:.9rem;padding:1rem;background:var(--surface)}.portal-occurrence-card>div:first-child{display:flex;justify-content:space-between;gap:1rem;align-items:start}.portal-occurrence-card p{white-space:pre-wrap}.portal-occurrence-card small{color:var(--muted)}@media(max-width:900px){.occurrence-workspace{grid-template-columns:1fr}.occurrence-list{position:static}.occurrence-meta{grid-template-columns:1fr 1fr}.occurrence-management,.occurrence-resolution{grid-template-columns:1fr}}@media(max-width:600px){.occurrence-meta{grid-template-columns:1fr}.occurrence-management>div:first-child{grid-template-columns:1fr}.inline-input{flex-direction:column}.occurrence-list-item{padding:.85rem}.guardian-share{align-items:flex-start;flex-direction:column}}.tv-manage-page{display:grid;gap:18px}.tv-manage-heading{align-items:flex-start}.tv-manage-heading p{max-width:760px}.tv-manage-workspace{display:grid;grid-template-columns:300px minmax(0,1fr);gap:16px;align-items:start}.tv-dashboard-list{position:sticky;top:92px;padding:0;overflow:hidden;max-height:calc(100vh - 116px);overflow-y:auto}.tv-dashboard-list .section-heading{padding:14px 14px 8px}.tv-dashboard-list .section-heading>div{display:flex;justify-content:space-between;width:100%;align-items:center}.tv-dashboard-list>button{display:flex;width:100%;align-items:center;justify-content:space-between;gap:10px;padding:13px 14px;border:0;border-top:1px solid var(--border);background:transparent;color:var(--text);text-align:left;cursor:pointer}.tv-dashboard-list>button:hover,.tv-dashboard-list>button.selected{background:var(--surface-soft)}.tv-dashboard-list>button.selected{box-shadow:inset 3px 0 0 var(--primary)}.tv-dashboard-list>button>span:first-child{display:grid;gap:3px;min-width:0}.tv-dashboard-list strong{font-size:11px}.tv-dashboard-list small{color:var(--muted);font-size:8px}.tv-dashboard-editor{display:grid;gap:16px;min-width:0}.tv-settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.check-row{display:flex!important;align-items:center;gap:8px!important;color:var(--text)!important}.check-row input{width:auto!important}.tv-access-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;padding:14px;border:1px solid color-mix(in srgb,var(--primary),var(--border) 58%);border-radius:14px;background:var(--primary-soft)}.tv-access-card>div:first-child{display:grid;gap:6px;min-width:0}.tv-access-card code{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:9px 10px;border-radius:9px;background:var(--surface);font-size:9px}.tv-access-card small{color:var(--muted);font-size:8px;line-height:1.5}.tv-access-card>div:last-child{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.tv-widget-editor-head{display:flex;justify-content:space-between;gap:14px;align-items:end;padding-top:4px;border-top:1px solid var(--border)}.tv-widget-editor-head h3{margin:4px 0 0}.tv-widget-editor-head>div:last-child{display:flex;gap:8px;align-items:center}.tv-widget-editor-head select{min-width:210px}.tv-widget-editor-list{display:grid;gap:8px}.tv-widget-editor-list article{display:grid;grid-template-columns:minmax(150px,1.4fr) minmax(150px,1.2fr) 80px 120px 90px 108px;gap:8px;align-items:end;padding:10px;border:1px solid var(--border);border-radius:12px;background:var(--surface-soft)}.tv-widget-editor-list label{display:grid;gap:4px;font-size:8px;color:var(--muted);font-weight:800}.tv-widget-editor-list input,.tv-widget-editor-list select{width:100%}.tv-widget-editor-list .check-row{align-self:center;margin-top:16px}.tv-widget-type{display:grid;gap:2px;align-self:center}.tv-widget-type strong{font-size:10px}.tv-widget-type small{font-size:7px;color:var(--muted)}.tv-widget-order-actions{display:flex;gap:4px;justify-content:flex-end;align-items:center}.tv-widget-order-actions .icon-button{width:30px;height:30px}.tv-widget-order-actions .icon-button:disabled{opacity:.35;cursor:not-allowed}.muted-copy{font-size:8px;color:var(--muted)}.tv-screen{min-height:100vh;width:100%;display:grid;grid-template-rows:auto 1fr auto;gap:clamp(14px,1.4vw,30px);padding:clamp(18px,2vw,46px);overflow:hidden;background:radial-gradient(circle at 20% 0%,rgba(52,107,230,.2),transparent 34%),radial-gradient(circle at 90% 85%,rgba(28,184,145,.11),transparent 30%),#08101f;color:#f7faff;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.tv-screen *{box-sizing:border-box}.tv-screen-header{display:grid;grid-template-columns:minmax(220px,1fr) minmax(320px,2fr) minmax(230px,1fr);align-items:center;gap:clamp(16px,2vw,40px)}.tv-screen-brand{display:flex;gap:clamp(10px,1vw,18px);align-items:center}.tv-screen-brand>span{display:grid;place-items:center;width:clamp(42px,3.3vw,76px);aspect-ratio:1;border-radius:24%;background:linear-gradient(145deg,#4d7cff,#2453c8);font-size:clamp(20px,1.8vw,38px);font-weight:900;box-shadow:0 10px 40px #2d61dc59}.tv-screen-brand>div{display:grid;gap:2px}.tv-screen-brand strong{font-size:clamp(15px,1.2vw,28px)}.tv-screen-brand small{color:#9daccc;font-size:clamp(9px,.7vw,15px)}.tv-screen-title{text-align:center}.tv-screen-title span{display:block;color:#7f9fe8;text-transform:uppercase;letter-spacing:.18em;font-size:clamp(8px,.65vw,14px);font-weight:800}.tv-screen-title h1{margin:4px 0 0;font-size:clamp(22px,2.25vw,52px);line-height:1.05;letter-spacing:-.035em}.tv-screen-clock{display:grid;grid-template-columns:1fr auto;grid-template-areas:"time button" "date button";gap:1px 12px;justify-self:end;text-align:right;align-items:center}.tv-screen-clock strong{grid-area:time;font-size:clamp(17px,1.45vw,34px)}.tv-screen-clock span{grid-area:date;color:#9daccc;font-size:clamp(8px,.62vw,14px);text-transform:capitalize}.tv-screen-clock button{grid-area:button;width:clamp(34px,2.5vw,52px);aspect-ratio:1;border:1px solid rgba(255,255,255,.14);border-radius:12px;background:#ffffff0f;color:#dbe7ff;cursor:pointer;font-size:clamp(15px,1.2vw,25px)}.tv-page-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:minmax(0,1fr);gap:clamp(10px,1vw,22px);min-height:0;align-content:stretch}.tv-widget{position:relative;overflow:hidden;display:grid;align-content:start;gap:clamp(10px,1vw,22px);padding:clamp(16px,1.45vw,34px);border:1px solid rgba(139,167,226,.18);border-radius:clamp(14px,1.2vw,28px);background:linear-gradient(145deg,#111e37f0,#0a1427f5);box-shadow:0 20px 60px #0000002e}.tv-widget:after{content:"";position:absolute;width:160px;height:160px;border-radius:50%;right:-95px;top:-95px;background:#4670dc17;pointer-events:none}.tv-widget-small{grid-column:span 3}.tv-widget-medium{grid-column:span 4}.tv-widget-large{grid-column:span 6}.tv-widget-full{grid-column:1/-1}.tv-widget-heading{display:flex;gap:9px;align-items:center;color:#9eb1d8;font-size:clamp(9px,.75vw,17px);font-weight:750;letter-spacing:.01em}.tv-pulse{width:7px;height:7px;border-radius:50%;background:#5c87ed;box-shadow:0 0 0 5px #5c87ed1c}.tv-big-number{display:flex;align-items:baseline;gap:.16em;margin-top:auto;font-size:clamp(44px,5.2vw,118px);font-weight:870;letter-spacing:-.07em;line-height:.9}.tv-big-number em{font-style:normal;font-size:.38em;color:#8fb1ff;letter-spacing:-.02em}.tv-hint{align-self:end;color:#778bad;font-size:clamp(8px,.62vw,14px);line-height:1.35}.tv-hint.attention{color:#f7bd64}.tv-widget-pending_diaries .tv-big-number,.tv-widget-active_search_open .tv-big-number{color:#ffc872}.tv-widget-attendance_rate .tv-big-number,.tv-widget-lesson_completion_rate .tv-big-number{color:#a8d0ff}.tv-trend-chart{height:100%;min-height:clamp(190px,25vh,420px);display:flex;align-items:stretch;justify-content:space-around;gap:clamp(8px,1.1vw,24px);padding-top:8px}.tv-trend-column{flex:1;min-width:0;display:grid;grid-template-rows:auto 1fr auto;gap:8px;justify-items:center}.tv-trend-value{font-size:clamp(11px,.9vw,20px);font-weight:800}.tv-trend-bar-wrap{width:min(70%,62px);height:100%;min-height:120px;display:flex;align-items:flex-end;border-radius:999px;background:#ffffff0e;overflow:hidden}.tv-trend-bar-wrap span{display:block;width:100%;border-radius:999px;background:linear-gradient(180deg,#6f9cff,#2d65db);box-shadow:0 -7px 25px #4a7dee40;transition:height .45s ease}.tv-trend-column small{color:#8799ba;font-size:clamp(8px,.62vw,13px)}.tv-horizontal-bars{display:grid;gap:clamp(10px,.8vw,17px);align-content:center;height:100%}.tv-horizontal-bars>div{display:grid;gap:5px}.tv-horizontal-bars>div>div:first-child{display:flex;justify-content:space-between;gap:14px;align-items:center}.tv-horizontal-bars strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:clamp(9px,.75vw,16px)}.tv-horizontal-bars span{font-weight:850;font-size:clamp(10px,.8vw,18px)}.tv-horizontal-track{height:clamp(7px,.55vw,13px);border-radius:999px;background:#ffffff13;overflow:hidden}.tv-horizontal-track>span{display:block;height:100%;background:linear-gradient(90deg,#2e64db,#6b9fff);border-radius:999px}.tv-event-list{display:grid;gap:clamp(9px,.8vw,16px);align-content:center}.tv-event-list>div{display:grid;grid-template-columns:auto 1fr;gap:clamp(10px,1vw,20px);align-items:center;padding-bottom:clamp(8px,.6vw,13px);border-bottom:1px solid rgba(255,255,255,.08)}.tv-event-list time{display:grid;place-items:center;min-width:clamp(48px,4vw,80px);padding:clamp(7px,.6vw,12px);border-radius:11px;background:#537fe724;color:#a9c3ff;text-transform:uppercase;font-size:clamp(8px,.65vw,14px);font-weight:850}.tv-event-list>div>span{display:grid;gap:3px}.tv-event-list strong{font-size:clamp(10px,.82vw,18px)}.tv-event-list small{color:#8498bb;font-size:clamp(8px,.58vw,12px)}.tv-empty{display:grid;place-items:center;height:100%;min-height:150px;color:#7f91b2;font-size:clamp(10px,.75vw,16px);text-align:center}.tv-screen-footer{display:grid;grid-template-columns:1fr auto 1fr;gap:18px;align-items:center;color:#7f91b2;font-size:clamp(8px,.62vw,14px)}.tv-screen-footer>div:first-child{display:flex;gap:8px;align-items:center}.tv-screen-footer>span:last-child{text-align:right}.tv-page-dots{display:flex;gap:7px;justify-content:center}.tv-page-dots button{width:clamp(7px,.55vw,12px);height:clamp(7px,.55vw,12px);padding:0;border:0;border-radius:999px;background:#31415e;cursor:pointer;transition:.2s}.tv-page-dots button.active{width:clamp(22px,1.8vw,40px);background:#6894f3}.tv-screen-loading,.tv-screen-error{place-items:center;align-content:center;text-align:center}.tv-screen-loading{display:grid}.tv-tv-loader,.tv-error-mark{display:grid;place-items:center;width:72px;height:72px;border-radius:20px;background:#3468dc;font-size:30px;font-weight:900;margin-bottom:14px}.tv-tv-loader{animation:aiPulse 1.15s ease-in-out infinite}.tv-screen-error h1{margin:4px 0}.tv-screen-error p{color:#9daccc}.tv-screen-error button{padding:10px 15px;border:1px solid rgba(255,255,255,.16);border-radius:10px;background:#ffffff14;color:#fff}@media(max-width:1100px){.tv-manage-workspace{grid-template-columns:1fr}.tv-dashboard-list{position:static;max-height:none}.tv-widget-editor-list article{grid-template-columns:1fr 1fr 80px 110px}.tv-widget-editor-list .tv-widget-type{grid-column:1/-1}.tv-widget-order-actions{grid-column:1/-1;justify-self:end}.tv-screen-header{grid-template-columns:1fr auto}.tv-screen-title{grid-column:1/-1;grid-row:1;text-align:left}.tv-screen-brand,.tv-screen-clock{grid-row:2}.tv-widget-small,.tv-widget-medium,.tv-widget-large{grid-column:span 6}}@media(max-width:720px){.tv-settings-grid{grid-template-columns:1fr}.tv-settings-grid .span-2{grid-column:auto}.tv-access-card,.tv-widget-editor-head{grid-template-columns:1fr;display:grid}.tv-access-card>div:last-child,.tv-widget-editor-head>div:last-child{justify-content:flex-start;flex-wrap:wrap}.tv-widget-editor-head select{min-width:0;flex:1}.tv-widget-editor-list article{grid-template-columns:1fr 1fr}.tv-widget-editor-list .tv-widget-type{grid-column:1/-1}.tv-widget-order-actions{grid-column:1/-1;justify-self:end}.tv-screen{overflow:auto}.tv-screen-header{grid-template-columns:1fr}.tv-screen-title,.tv-screen-brand,.tv-screen-clock{grid-column:1;grid-row:auto}.tv-screen-title{text-align:left}.tv-screen-clock{justify-self:start;text-align:left}.tv-widget-small,.tv-widget-medium,.tv-widget-large,.tv-widget-full{grid-column:1/-1}.tv-page-grid{grid-template-columns:1fr;grid-auto-rows:auto}.tv-widget{min-height:180px}.tv-screen-footer{grid-template-columns:1fr}.tv-screen-footer>span:last-child{text-align:left}.tv-page-dots{justify-content:flex-start}}@media(min-width:2500px){.tv-screen{padding:64px}.tv-page-grid{gap:28px}.tv-widget{border-width:2px}.tv-screen-footer{font-size:18px}}.reports-hero{align-items:stretch}.reports-hero-note{min-width:240px;display:grid;align-content:center;gap:4px;padding:18px 20px;border:1px solid var(--border);border-radius:16px;background:var(--surface)}.reports-hero-note span,.reports-hero-note small{color:var(--muted);font-size:11px}.reports-hero-note strong{font-size:20px}.reports-workspace{display:grid;grid-template-columns:280px minmax(0,1fr);gap:16px;align-items:start}.reports-catalog{position:sticky;top:82px}.reports-catalog-list{display:grid;gap:8px}.reports-catalog-list button{display:grid;gap:4px;text-align:left;padding:13px;border:1px solid var(--border);border-radius:12px;background:var(--surface-soft);color:var(--text);cursor:pointer;transition:.18s}.reports-catalog-list button:hover,.reports-catalog-list button.active{border-color:var(--primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 12%,transparent)}.reports-catalog-list button span{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:800}.reports-catalog-list button strong{font-size:13px}.reports-catalog-list button small{font-size:10px;line-height:1.4;color:var(--muted)}.reports-main{display:grid;gap:16px;min-width:0}.reports-filter-card{display:grid;gap:16px}.reports-filters{display:grid;grid-template-columns:repeat(4,minmax(145px,1fr));gap:10px}.reports-filters label{display:grid;gap:6px;font-size:10px;color:var(--muted);font-weight:750}.reports-filters input,.reports-filters select{width:100%}.reports-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.reports-preview-card{min-width:0}.reports-preview-head{display:flex;justify-content:space-between;gap:16px;align-items:end;margin-bottom:14px}.reports-preview-head h2{margin:3px 0 0}.reports-preview-head>div:last-child{display:grid;text-align:right}.reports-preview-head>div:last-child strong{font-size:20px}.reports-preview-head>div:last-child span{font-size:10px;color:var(--muted)}.reports-table-wrap{overflow:auto;border:1px solid var(--border);border-radius:12px}.reports-table{width:100%;border-collapse:collapse;min-width:760px;font-size:10px}.reports-table th{position:sticky;top:0;text-align:left;padding:10px 11px;background:var(--surface-soft);color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--border)}.reports-table td{padding:10px 11px;border-bottom:1px solid var(--border);vertical-align:top}.reports-table tbody tr:last-child td{border-bottom:0}.reports-pagination{display:flex;justify-content:flex-end;gap:10px;align-items:center;margin-top:12px;font-size:10px;color:var(--muted)}@media(max-width:1100px){.reports-workspace{grid-template-columns:1fr}.reports-catalog{position:static}.reports-catalog-list,.reports-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.reports-hero{display:grid}.reports-hero-note{min-width:0}.reports-catalog-list,.reports-filters{grid-template-columns:1fr}.reports-actions{justify-content:stretch}.reports-actions .button{flex:1}.reports-preview-head{align-items:start}.reports-preview-head>div:last-child{text-align:left}.reports-pagination{justify-content:space-between}.reports-pagination span{text-align:center}}.communication-delivery-panel{margin-top:18px;padding-top:18px;border-top:1px solid var(--border);display:grid;gap:12px}.communication-delivery-panel h3{margin:3px 0}.communication-delivery-panel .reports-table{min-width:900px}.communication-delivery-panel td strong{font-size:10px}.communication-delivery-panel td small{color:var(--muted);font-size:9px}.operations-page{display:grid;gap:20px}.operations-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.operations-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.operations-card{padding:22px;display:grid;gap:16px;min-width:0}.operations-list{display:grid;gap:9px}.operations-list>div{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:11px 12px;border:1px solid var(--border);border-radius:12px;background:var(--surface-soft)}.operations-list span{font-size:12px;color:var(--muted);text-align:right}.operations-table{min-width:720px}.recovery-commands>p{margin:0;color:var(--muted);line-height:1.6}.recovery-commands>div:not(.section-heading){display:grid;grid-template-columns:110px minmax(0,1fr);gap:12px;align-items:center}.recovery-commands>div>span{text-transform:uppercase;font-size:10px;font-weight:850;letter-spacing:.08em;color:var(--muted)}.recovery-commands code{display:block;overflow:auto;padding:11px 13px;border-radius:10px;background:var(--surface-soft);border:1px solid var(--border);font-size:12px}.error-banner{padding:12px 14px;border:1px solid #fecaca;border-radius:12px;background:#fff1f2;color:#b42318}.page-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.page-title-row h1{margin:4px 0 6px}.page-title-row p{margin:0;color:var(--muted);max-width:760px}.table-scroll{overflow:auto}@media(max-width:900px){.operations-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.operations-grid{grid-template-columns:1fr}.page-title-row{display:grid}.recovery-commands>div:not(.section-heading){grid-template-columns:1fr}}@media(max-width:620px){.operations-metrics{grid-template-columns:1fr}}
