/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.relative{position:relative}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.block{display:block}.flex{display:flex}.hidden{display:none}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.flex-wrap{flex-wrap:wrap}.border{border-style:var(--tw-border-style);border-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--ink:#102b31;--muted:#6c8184;--line:#dfeaec;--paper:#fff;--canvas:#f2f8f8;--green:#0b8090;--green-deep:#075b68;--green-soft:#e6f4f4;--lime:#cedd6a;--lime-soft:#f5f8df;--shadow:0 14px 38px #0a576514}*{box-sizing:border-box}html{background:var(--canvas)}body{background:radial-gradient(circle at 93% 2%, #cedd6a3d, transparent 25rem), radial-gradient(circle at 76% 18%, #279aa71c, transparent 34rem), var(--canvas);color:var(--ink);margin:0;font-family:PingFang SC,Microsoft YaHei,Noto Sans CJK SC,Arial,sans-serif}button,input,select,textarea{font:inherit}button{color:inherit}button,select{cursor:pointer}.prototype-shell{grid-template-columns:228px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#f9fcfce8;border-right:1px solid #d3e5e8e6;flex-direction:column;height:100vh;padding:28px 20px 20px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:12px;padding:0 8px 30px;display:flex}.brand-mark{object-fit:cover;border:2px solid #fff;border-radius:50%;flex:none;width:40px;height:40px;box-shadow:0 8px 20px #08728533}.brand div,.sidebar-bottom div{flex-direction:column;min-width:0;display:flex}.brand strong{letter-spacing:.02em;font-size:15px}.brand small,.sidebar-bottom small{color:#829087;margin-top:4px;font-size:10px}.sidebar nav{flex-direction:column;gap:7px;display:flex}.sidebar nav button{color:#6d7a72;text-align:left;background:0 0;border:0;border-radius:13px;align-items:center;gap:13px;width:100%;padding:12px 14px;font-size:14px;transition:all .16s;display:flex}.sidebar nav button:hover{color:var(--green);background:#ebf5f5}.sidebar nav button.active{background:var(--green-soft);color:var(--green-deep);font-weight:700}.sidebar-bottom{border-top:1px solid var(--line);align-items:center;gap:10px;margin-top:auto;padding:14px 9px 4px;display:flex}.sidebar-bottom div{flex:1}.sidebar-bottom strong{font-size:13px}.teacher-avatar{color:#fff;background:linear-gradient(145deg,#2aa0ad,#086677);border-radius:17px;flex:none;place-items:center;width:50px;height:50px;font-size:18px;font-weight:700;display:grid}.teacher-avatar.small{border-radius:12px;width:36px;height:36px;font-size:14px}.app-view{min-width:0}.desktop-header{z-index:10;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffffd1;border-bottom:1px solid #dbe9ebdb;justify-content:space-between;align-items:center;height:68px;padding:0 clamp(24px,5vw,64px);display:flex;position:sticky;top:0}.desktop-header>div{color:#88938d;align-items:center;gap:7px;font-size:12px;display:flex}.desktop-header strong{color:var(--ink)}.header-actions button{background:0 0;border:0;border-radius:50%;place-items:center;width:36px;height:36px;display:grid;position:relative}.header-actions button:hover{background:var(--green-soft)}.header-actions button i{background:#d86652;border-radius:50%;width:6px;height:6px;position:absolute;top:7px;right:7px}.school-year{color:#526157;background:#edf5f5;border-radius:10px;align-items:center;gap:6px;margin-left:7px;padding:9px 12px;display:flex}.school-year select{color:#48656a;appearance:none;background:0 0;border:0;outline:0;max-width:220px;font-size:11px;font-weight:650}.mobile-brand{display:none}.content-scroll{width:min(100%,1120px);margin:0 auto;padding:38px clamp(24px,5vw,64px) 80px}.page-stack{flex-direction:column;gap:28px;animation:.22s fadeIn;display:flex}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.greeting,.page-title{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.greeting{background:radial-gradient(circle at 86% 38%,#cedd6a54,#0000 18%),linear-gradient(118deg,#e8f6f5 0%,#fbfdf9 72%);border:1px solid #d7e9e9;border-radius:24px;padding:28px;position:relative;overflow:hidden}.greeting:before{content:"";border:1px solid #0b80901c;border-radius:50%;width:160px;height:160px;position:absolute;bottom:-42px;right:82px}.greeting:after{opacity:.065;content:"";background:url(/school-logo.jpg) 50%/cover;border-radius:50%;width:120px;height:120px;position:absolute;bottom:-20px;right:26px}.eyebrow,.section-kicker{color:#789182;letter-spacing:.17em;margin:0 0 7px;font-size:10px;font-weight:800}.greeting h1,.page-title h1{letter-spacing:-.04em;margin:0;font-size:clamp(26px,3vw,34px);font-weight:750}.greeting p:last-child,.page-title p:last-child{color:var(--muted);margin:8px 0 0;font-size:14px}.icon-button,.primary-icon-button{border:1px solid var(--line);background:#fff;border-radius:14px;flex:none;place-items:center;width:42px;height:42px;display:grid;box-shadow:0 8px 20px #2a46330d}.primary-icon-button{border-color:var(--green);background:var(--green);color:#fff}.icon-button.subtle{width:36px;height:36px;box-shadow:none;border:0}.notification-button{position:relative}.notification-dot{background:#df6a55;border:2px solid #fff;border-radius:50%;width:7px;height:7px;position:absolute;top:7px;right:8px}.notice-card{background:linear-gradient(115deg,#eaf6f6,#fbfdf8);border:1px solid #d5e7e9;border-radius:19px;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;padding:19px 21px;display:grid}.notice-card-button{width:100%;color:var(--ink);cursor:pointer;text-align:left;transition:transform .16s,border-color .16s,box-shadow .16s}.notice-card-button:hover{border-color:#a9cfd3;transform:translateY(-1px);box-shadow:0 12px 28px #11606914}.notice-icon{width:42px;height:42px;color:var(--green);background:#fff;border-radius:14px;place-items:center;display:grid;box-shadow:0 7px 20px #2a553714}.notice-copy{flex-direction:column;min-width:0;display:flex}.notice-copy span{color:var(--green);font-size:10px;font-weight:800}.notice-copy strong{text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:14px;overflow:hidden}.notice-copy small{color:#829087;margin-top:5px;font-size:10px}.section-heading{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:14px;display:flex}.section-heading.compact{margin-bottom:20px}.section-heading h2,.card-heading h2,.modal-title h2{letter-spacing:-.02em;margin:0;font-size:18px}.section-heading>span{color:#8a968f;font-size:11px}.text-button{color:var(--green);background:0 0;border:0;align-items:center;gap:4px;padding:0;font-size:12px;display:flex}.quick-grid{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.quick-card{text-align:left;border:1px solid #dce4deb8;border-radius:18px;flex-direction:column;align-items:flex-start;min-height:126px;padding:18px;transition:transform .16s,box-shadow .16s;display:flex}.quick-card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.quick-card.mint{background:#eaf7f6}.quick-card.blue{background:#edf4fa}.quick-card.sand{background:#f8f8e8}.quick-card.lilac{background:#f3f1f8}.quick-icon{width:36px;height:36px;color:var(--green);background:#fffc;border-radius:12px;place-items:center;margin-bottom:15px;display:grid}.quick-card strong{font-size:14px}.quick-card small{color:#7a887f;margin-top:6px;font-size:10px}.todo-list,.student-list,.family-record-list,.module-list,.attendance-list{border:1px solid var(--line);background:#fff;border-radius:19px;overflow:hidden;box-shadow:0 10px 30px #2a413109}.todo-item,.student-row,.module-list button{text-align:left;background:#fff;border:0;border-bottom:1px solid #eef2ef;align-items:center;gap:13px;width:100%;padding:15px 18px;display:flex}.todo-item:last-child,.student-row:last-child,.module-list button:last-child{border-bottom:0}.todo-item:hover,.student-row:hover,.module-list button:hover{background:#fafcfb}.todo-symbol{border-radius:12px;flex:none;place-items:center;width:38px;height:38px;display:grid}.todo-symbol.urgent{color:#b95746;background:#fcedea}.todo-symbol.follow{color:#55739a;background:#eef3fa}.todo-symbol.calm{color:var(--green);background:#edf5ef}.todo-copy{flex-direction:column;flex:1;min-width:0;display:flex}.todo-copy strong{font-size:13px}.todo-copy small{color:#89948e;text-overflow:ellipsis;white-space:nowrap;margin-top:5px;font-size:10px;overflow:hidden}.todo-count{color:#fff;background:#c55f4d;border-radius:8px;place-items:center;min-width:24px;height:24px;font-size:11px;font-weight:700;display:grid}.todo-count.neutral{background:#6f8376}.class-overview,.content-card,.exam-card{border:1px solid var(--line);background:var(--paper);box-shadow:var(--shadow);border-radius:20px;padding:22px}.overview-numbers{grid-template-columns:repeat(4,1fr);display:grid}.overview-numbers div{border-right:1px solid var(--line);flex-direction:column;align-items:center;display:flex}.overview-numbers div:last-child{border-right:0}.overview-numbers strong{font-size:21px}.overview-numbers span{color:#849087;margin-top:6px;font-size:10px}.search-box{border:1px solid var(--line);color:#8b9790;background:#fff;border-radius:14px;align-items:center;gap:10px;padding:0 15px;display:flex}.search-box input{width:100%;height:46px;color:var(--ink);background:0 0;border:0;outline:0;font-size:13px}.filter-row{gap:8px;margin-top:-14px;display:flex}.filter-pill{border:1px solid var(--line);color:#718078;background:#fff;border-radius:999px;padding:8px 13px;font-size:11px}.filter-pill.active{border-color:var(--green);background:var(--green);color:#fff}.filter-pill.icon-pill{place-items:center;width:34px;padding:0;display:grid}.student-summary{color:#7e8b83;justify-content:space-between;align-items:center;margin:-9px 2px -14px;font-size:11px;display:flex}.student-summary span,.student-summary button{align-items:center;gap:6px;display:flex}.student-summary button{color:#7e8b83;background:0 0;border:0;font-size:10px}.avatar{color:#2d5039;border-radius:14px;flex:none;place-items:center;font-weight:750;display:grid}.avatar-sm{border-radius:11px;width:34px;height:34px;font-size:12px}.avatar-md{width:46px;height:46px;font-size:15px}.avatar-lg{border-radius:22px;width:70px;height:70px;font-size:24px}.student-main{flex-direction:column;flex:1;min-width:0;display:flex}.student-main>span:first-child{align-items:baseline;gap:9px;display:flex}.student-main strong{font-size:14px}.student-main small{color:#94a099;font-size:9px}.tag-row{flex-wrap:wrap;gap:5px;margin-top:7px;display:flex}.tag-row i,.record-line i,.record-line em{color:#5f7466;background:#eff4f0;border-radius:6px;padding:3px 6px;font-size:9px;font-style:normal}.student-metric{grid-template-columns:1fr auto;align-items:center;column-gap:5px;min-width:66px;display:grid}.student-metric small{color:#93a098;grid-column:1/-1;font-size:9px}.student-metric strong{font-size:20px}.student-metric em{align-self:end;margin-bottom:3px;font-size:9px;font-style:normal}.student-metric em.up,.score-up{color:#388256}.student-metric em.down,.score-down{color:#c46451}.detail-topbar{justify-content:space-between;align-items:center;display:flex}.detail-topbar strong{font-size:15px}.student-hero{background:radial-gradient(circle at 92% 20%,#cddd6a47,#0000 18%),linear-gradient(120deg,#e4f4f4,#fbfdfb 65%);border-radius:22px;align-items:center;gap:16px;padding:25px;display:flex}.student-identity{flex:1;min-width:0}.student-identity h1{margin:0;font-size:24px}.student-identity p{color:#738178;margin:7px 0 0;font-size:11px}.outline-button,.primary-button{color:var(--green-deep);background:#ffffffc7;border:1px solid #b9cebf;border-radius:11px;justify-content:center;align-items:center;gap:7px;padding:10px 14px;font-size:11px;font-weight:700;display:inline-flex}.outline-button.small{padding:8px 10px}.primary-button{border-color:var(--green);background:var(--green);color:#fff}.primary-button.wide{width:100%;min-height:45px}.metric-strip{border:1px solid var(--line);background:#fff;border-radius:18px;grid-template-columns:repeat(3,1fr);padding:18px;display:grid}.metric-strip div{border-right:1px solid var(--line);flex-direction:column;align-items:center;display:flex}.metric-strip div:last-child{border-right:0}.metric-strip strong{font-size:21px}.metric-strip strong.positive{color:#388256}.metric-strip span{color:#8a968e;margin-top:4px;font-size:10px}.term-context-card,.grade-context{background:linear-gradient(120deg,#f1f8f8,#fff);border:1px solid #d7e7e9;border-radius:18px;grid-template-columns:1fr 1fr 1fr;gap:12px;padding:16px;display:grid}.term-context-card>div,.term-context-card label,.grade-context>div,.grade-context label{flex-direction:column;justify-content:center;gap:5px;min-width:0;padding:4px 10px;display:flex}.term-context-card>*+*,.grade-context>*+*{border-left:1px solid #deeaeb}.term-context-card span,.grade-context span{color:#789094;font-size:9px}.term-context-card strong,.grade-context strong{font-size:12px}.term-context-card small{color:#7d9093;font-size:9px}.term-context-card select,.grade-context select{width:100%;min-width:0;height:34px;color:var(--ink);background:#fff;border:1px solid #d5e5e7;border-radius:9px;outline:0;padding:0 9px;font-size:10px}.profile-info-grid{border:1px solid #e3ecee;border-radius:14px;grid-template-columns:repeat(4,1fr);margin-top:20px;display:grid;overflow:hidden}.profile-info-grid div{background:#fbfdfd;border-bottom:1px solid #e7eef0;border-right:1px solid #e7eef0;flex-direction:column;gap:7px;min-width:0;padding:15px;display:flex}.profile-info-grid div:nth-child(4n){border-right:0}.profile-info-grid div:nth-child(n+5){border-bottom:0}.profile-info-grid span{color:#819397;font-size:9px}.profile-info-grid strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.average-badge{background:var(--lime-soft);color:#66752f;border-radius:9px;padding:8px 10px;font-size:10px;font-weight:750}.academic-radar-layout{grid-template-columns:minmax(230px,.8fr) minmax(400px,1.4fr);align-items:center;gap:30px;margin-top:18px;display:grid}.subject-score-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.subject-score{text-align:left;background:#fbfdfd;border:1px solid #e1ebed;border-radius:12px;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:9px 10px;transition:all .15s;display:grid}.subject-score:hover,.subject-score.active{background:#eef8f8;border-color:#8fc3c9;transform:translateY(-1px)}.subject-score>i,.grade-subject-grid i{color:#fff;border-radius:9px;place-items:center;width:30px;height:30px;font-size:10px;font-style:normal;font-weight:800;display:grid}.subject-score>span{flex-direction:column;gap:3px;display:flex}.subject-score small{color:#758b8f;font-size:9px}.subject-score strong{font-size:15px}.subject-score em{color:#718589;font-size:8px;font-style:normal}.subject-switcher{scrollbar-width:none;gap:7px;margin-top:18px;display:flex;overflow-x:auto}.subject-switcher::-webkit-scrollbar{display:none}.subject-switcher button{color:#71888c;background:#fff;border:1px solid #dfeaec;border-radius:999px;flex:none;padding:7px 11px;font-size:9px}.subject-switcher button.active{border-color:var(--green);background:var(--green);color:#fff;font-weight:700}.semester-table{border:1px solid #e1ebed;border-radius:14px;margin-top:18px;overflow:hidden}.semester-head,.semester-row{grid-template-columns:1.6fr repeat(4,.7fr) .9fr;align-items:center;gap:8px;padding:12px 15px;display:grid}.semester-head{color:#778c90;background:#f0f6f6;font-size:8px}.semester-row{text-align:left;background:#fff;border:0;border-top:1px solid #e6eef0;width:100%}.semester-row:hover,.semester-row.active{background:#f0f9f8}.semester-row>span{flex-direction:column;gap:4px;display:flex}.semester-row strong,.semester-row b{font-size:10px}.semester-row small{color:#84979a;font-size:8px}.semester-row em{color:#31816f;font-size:9px;font-style:normal;font-weight:700}.card-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.card-heading p{color:#8a968f;margin:6px 0 0;font-size:10px}.filter-mini,.trend-badge{color:#617067;background:#f2f6f3;border:0;border-radius:8px;align-items:center;gap:4px;padding:7px 9px;font-size:9px;display:flex}.trend-badge{color:#3d7952;background:#eaf5ed}.trend-chart{width:100%;margin-top:18px}.chart-grid{stroke:#e9eeea;stroke-width:1px}.chart-path{fill:none;stroke:#3d7651;stroke-width:3px;stroke-linecap:round}.chart-dot{fill:#fff;stroke:#3d7651;stroke-width:2px}.chart-label{fill:#87938b;font-size:9px}.chart-scale{fill:#9aabad;font-size:7px}.chart-value{fill:#526b70;font-size:8px;font-weight:700}.timeline{flex-direction:column;margin-top:18px;display:flex}.timeline>div{gap:12px;padding:0 0 18px;display:flex;position:relative}.timeline>div:not(:last-child):before{content:"";background:#e3eae5;width:1px;position:absolute;top:30px;bottom:3px;left:15px}.timeline-icon{z-index:1;border-radius:10px;flex:none;place-items:center;width:31px;height:31px;display:grid}.timeline-icon.award{color:#a77725;background:#fbf1dc}.timeline-icon.talk{color:#527796;background:#e9f1f7}.timeline-icon.note{color:#3d7952;background:#eaf4ec}.timeline p{flex-direction:column;margin:1px 0 0;display:flex}.timeline strong{font-size:12px}.timeline small{color:#929e96;margin-top:5px;font-size:9px}.segmented{background:#e9eeea;border-radius:13px;grid-template-columns:repeat(3,1fr);padding:4px;display:grid}.segmented button{color:#718078;background:0 0;border:0;border-radius:10px;padding:9px;font-size:11px}.segmented button.active{color:var(--green-deep);background:#fff;font-weight:700;box-shadow:0 3px 10px #1f3b2814}.record-stats{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.record-stats>div{border:1px solid var(--line);background:#fff;border-radius:16px;align-items:center;gap:12px;padding:15px;display:flex}.stat-icon{border-radius:11px;flex:none;place-items:center;width:36px;height:36px;display:grid}.stat-icon.visit{color:#3d7952;background:#eaf4ec}.stat-icon.contact{color:#55769a;background:#edf2f8}.stat-icon.coverage{color:#9a762f;background:#f7f0e2}.record-stats p{flex-direction:column;margin:0;display:flex}.record-stats strong{font-size:18px}.record-stats small{color:#89958d;margin-top:3px;font-size:9px}.family-record{border-bottom:1px solid #edf1ee;grid-template-columns:auto 1fr auto;align-items:center;gap:13px;padding:16px 18px;display:grid}.family-record:last-child{border-bottom:0}.record-type{border-radius:13px;place-items:center;width:40px;height:40px;display:grid}.record-type.visit{color:#3d7952;background:#eaf4ec}.record-type.call{color:#55769a;background:#edf2f8}.family-record>div{min-width:0}.record-line{align-items:center;gap:7px;display:flex}.record-line strong{font-size:13px}.record-line em{color:#b26734;background:#fff0e5}.family-record p{color:#5f6e65;text-overflow:ellipsis;white-space:nowrap;margin:6px 0 0;font-size:11px;overflow:hidden}.family-record small{color:#95a098;margin-top:6px;font-size:9px;display:block}.empty-state{border:1px solid var(--line);text-align:center;background:#fff;border-radius:20px;flex-direction:column;align-items:center;padding:50px 22px;display:flex}.empty-state>span{background:var(--green-soft);width:58px;height:58px;color:var(--green);border-radius:19px;place-items:center;display:grid}.empty-state h3{margin:17px 0 7px;font-size:16px}.empty-state p{max-width:360px;color:var(--muted);margin:0 0 20px;font-size:11px;line-height:1.8}.attendance-alert{color:#b35d3f;background:#fff7f2;align-items:center;gap:12px;padding:15px 17px;display:flex}.attendance-alert p,.attendance-row p{flex-direction:column;flex:1;margin:0;display:flex}.attendance-alert strong,.attendance-row strong{font-size:12px}.attendance-alert span,.attendance-row small{color:#9b7c70;margin-top:4px;font-size:9px}.attendance-row{border-top:1px solid var(--line);align-items:center;gap:11px;padding:14px 17px;display:flex}.status-pill{border-radius:7px;padding:5px 8px;font-size:9px}.status-pill.warning{color:#b26734;background:#fff0e5}.status-pill.success{color:#3d7952;background:#eaf4ec}.exam-top{align-items:center;gap:12px;display:flex}.exam-top>span{background:var(--green-soft);width:40px;height:40px;color:var(--green);border-radius:13px;place-items:center;display:grid}.exam-top>div{flex-direction:column;flex:1;display:flex}.exam-top small{color:#8e9992;font-size:9px}.exam-top strong{margin-top:4px;font-size:13px}.exam-progress{border-top:1px solid var(--line);margin-top:20px;padding-top:18px}.exam-progress>div{justify-content:space-between;font-size:10px;display:flex}.exam-progress i{background:#e8ede9;border-radius:6px;height:6px;margin:9px 0 7px;display:block;overflow:hidden}.exam-progress b{background:var(--green);border-radius:6px;height:100%;display:block}.exam-progress small{color:#8c9890;font-size:9px}.grade-subject-grid{grid-template-columns:repeat(5,1fr);gap:9px;display:grid}.grade-subject-grid button{color:#829397;text-align:left;background:#fff;border:1px solid #dfeaec;border-radius:13px;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;min-width:0;padding:12px 10px;transition:all .15s;display:grid}.grade-subject-grid button:hover,.grade-subject-grid button.active{color:var(--green-deep);background:#eff8f8;border-color:#8fc4ca;box-shadow:0 8px 20px #0a667712}.grade-subject-grid button>span{flex-direction:column;gap:4px;min-width:0;display:flex}.grade-subject-grid strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.grade-subject-grid small{color:#87999c;text-overflow:ellipsis;white-space:nowrap;font-size:7px;overflow:hidden}.score-table{border:1px solid var(--line);background:#fff;border-radius:17px;overflow:hidden}.score-head,.score-row{grid-template-columns:1fr 90px 90px 70px;align-items:center;padding:12px 18px;display:grid}.score-head{color:#839087;background:#f3f6f4;font-size:9px}.score-row{border-top:1px solid var(--line)}.score-student{align-items:center;gap:10px;display:flex}.score-student b{font-size:12px}.score-row input{text-align:center;border:1px solid #dce5df;border-radius:9px;outline:none;width:58px;height:34px}.score-row input:focus{border-color:var(--green);box-shadow:0 0 0 3px var(--green-soft)}.score-row em{font-size:10px;font-style:normal}.rank-text{color:#667c80;font-size:9px;font-weight:600}.safe-note,.privacy-caption{color:#87938b;justify-content:center;align-items:center;gap:5px;margin:-15px 0 0;font-size:9px;display:flex}.profile-card{background:linear-gradient(120deg,#e5f4f4,#fbfdf8);border-radius:20px;align-items:center;gap:14px;padding:22px;display:flex}.profile-card>div{flex-direction:column;flex:1;min-width:0;display:flex}.profile-card h1{margin:0;font-size:19px}.profile-card p,.profile-card span{color:#6e7c73;margin:5px 0 0;font-size:10px}.feature-banner{text-align:left;background:#fff;border:1px solid #d9e5db;border-radius:17px;align-items:center;gap:13px;padding:17px 19px;display:flex}.feature-banner>span{color:#55769a;background:#edf3fa;border-radius:13px;place-items:center;width:40px;height:40px;display:grid}.feature-banner>div{flex-direction:column;flex:1;display:flex}.feature-banner strong{font-size:13px}.feature-banner small{color:#88958d;margin-top:4px;font-size:9px}.module-list button{padding:14px 17px}.module-icon{border-radius:12px;place-items:center;width:38px;height:38px;display:grid}.module-icon.green{color:#3d7952;background:#eaf4ec}.module-icon.orange{color:#b26734;background:#fff0e5}.module-icon.blue{color:#55769a;background:#edf2f8}.module-icon.purple{color:#795d8b;background:#f2ecf6}.module-icon.teal{color:#397b72;background:#e6f3f1}.module-icon.gray{color:#657069;background:#eef1ef}.module-list p{flex-direction:column;flex:1;margin:0;display:flex}.module-list strong{font-size:12px}.module-list small{color:#8d9991;margin-top:4px;font-size:9px}.module-list em{color:#fff;background:#c46350;border-radius:7px;place-items:center;width:20px;height:20px;font-size:9px;font-style:normal;display:grid}.prototype-note{color:#929d96;text-align:center;margin:-10px 0 0;font-size:9px}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#1321186b;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal-sheet{background:#fff;border-radius:24px;width:min(100%,500px);max-height:calc(100vh - 40px);padding:8px 24px 22px;animation:.22s sheetUp;overflow-y:auto;box-shadow:0 30px 80px #14261a38}@keyframes sheetUp{0%{opacity:0;transform:translateY(16px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.modal-handle{background:#dfe5e1;border-radius:4px;width:36px;height:4px;margin:3px auto 14px}.modal-title{justify-content:space-between;align-items:flex-start;margin-bottom:20px;display:flex}.form-field{flex-direction:column;gap:8px;margin-bottom:16px;display:flex}.form-field>span{color:#66736b;font-size:11px;font-weight:700}.form-field select,.form-field textarea{width:100%;color:var(--ink);background:#fbfcfb;border:1px solid #dce5df;border-radius:11px;outline:none;font-size:12px}.form-field select{height:43px;padding:0 12px}.form-field textarea{resize:vertical;padding:12px;line-height:1.7}.form-field select:focus,.form-field textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px var(--green-soft)}.choice-row{grid-template-columns:1fr 1fr;gap:9px;display:grid}.choice{color:#69766e;background:#fff;border:1px solid #dce5df;border-radius:11px;justify-content:center;align-items:center;gap:7px;height:42px;font-size:11px;display:flex}.choice.active{background:var(--green-soft);color:var(--green-deep);border-color:#8fb29a;font-weight:700}.switch-row{align-items:center;margin:5px 0 20px;display:flex;position:relative}.switch-row>div{flex-direction:column;flex:1;display:flex}.switch-row strong{font-size:11px}.switch-row small{color:#929d96;margin-top:4px;font-size:9px}.switch-row input{z-index:2;opacity:0;width:42px;height:24px;position:absolute;right:0}.switch-row i{background:#dfe5e1;border-radius:24px;width:42px;height:24px;transition:all .16s;position:relative}.switch-row i:after{content:"";background:#fff;border-radius:50%;width:18px;height:18px;transition:all .16s;position:absolute;top:3px;left:3px;box-shadow:0 2px 5px #1e30232e}.switch-row input:checked+i{background:var(--green)}.switch-row input:checked+i:after{transform:translate(18px)}.privacy-caption{margin:12px 0 0}.toast{z-index:120;color:#fff;background:#203f2c;border-radius:12px;align-items:center;gap:8px;padding:12px 16px;font-size:11px;animation:.18s toastIn;display:flex;position:fixed;bottom:28px;right:28px;box-shadow:0 14px 40px #1830203d}@keyframes toastIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.gateway-page{background:#f8fbfb;grid-template-columns:minmax(620px,1.15fr) minmax(360px,.85fr);min-height:100vh;display:grid}.gateway-panel{flex-direction:column;justify-content:center;width:min(100%,760px);padding:54px clamp(42px,6vw,88px);display:flex}.gateway-brand{align-items:center;gap:16px;margin-bottom:55px;display:flex}.gateway-brand img{object-fit:cover;border-radius:50%;width:58px;height:58px;box-shadow:0 10px 25px #086f8029}.gateway-brand div{flex-direction:column;gap:5px;display:flex}.gateway-brand span{color:#789297;letter-spacing:.12em;font-family:Georgia,serif;font-size:7px}.gateway-brand strong{letter-spacing:.02em;font-size:18px}.gateway-heading h1{letter-spacing:-.05em;margin:0;font-size:clamp(34px,4vw,48px);font-weight:760}.gateway-heading>p:last-child{max-width:560px;color:var(--muted);margin:13px 0 0;font-size:13px;line-height:1.8}.role-choice-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:30px;display:grid}.role-choice{text-align:left;white-space:normal;background:#fff;border:1px solid #dce9eb;border-radius:19px;flex-direction:column;align-items:flex-start;min-width:0;min-height:190px;padding:18px;transition:all .17s;display:flex;position:relative}.role-choice:hover,.role-choice.active{transform:translateY(-3px);box-shadow:0 16px 38px #0a5b691a}.role-choice.active.teacher{background:#f0f9f9;border-color:#59a6b2}.role-choice.active.parent{background:#f3f7fc;border-color:#8ba9d5}.role-choice.active.admin{background:#f7f5fb;border-color:#9b92c1}.role-choice>span{border-radius:14px;place-items:center;width:44px;height:44px;display:grid}.role-choice.teacher>span{color:#0b8090;background:#e4f4f4}.role-choice.parent>span{color:#587dae;background:#edf3fb}.role-choice.admin>span{color:#7566a4;background:#f0edf7}.role-choice strong{margin-top:16px;font-size:14px}.role-choice p{color:#7e9195;overflow-wrap:anywhere;margin:7px 0 0;font-size:9px;line-height:1.7}.role-choice>i{width:24px;height:24px;color:var(--green);background:#edf5f5;border-radius:50%;place-items:center;font-style:normal;display:grid;position:absolute;bottom:14px;right:14px}.gateway-enter{color:#fff;background:linear-gradient(110deg,#087487,#0b8997);border:0;border-radius:14px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:50px;margin-top:18px;font-size:13px;font-weight:750;display:flex;box-shadow:0 12px 28px #076d7d33}.teacher-entry-picker{background:#f3f9f9;border:1px solid #cfe2e4;border-radius:16px;grid-template-columns:1.2fr 1fr;gap:12px;margin-top:16px;padding:16px;display:grid}.teacher-entry-picker>div{color:#0b7888;grid-column:1/-1;align-items:center;gap:10px;display:flex}.teacher-entry-picker>div p,.teacher-entry-picker label{flex-direction:column;gap:4px;margin:0;display:flex}.teacher-entry-picker strong,.teacher-entry-picker label>span{color:#274e55;font-size:11px;font-weight:750}.teacher-entry-picker small{color:#789095;font-size:9px}.teacher-entry-picker select,.teacher-entry-picker input{color:#304e54;background:#fff;border:1px solid #d1e1e3;border-radius:11px;outline:none;min-width:0;height:42px;padding:0 12px;font-size:10px}.teacher-entry-picker .demo-credential-button.compact{grid-column:1/-1;justify-content:center;min-height:38px;margin-top:0}.admin-entry-picker{grid-template-columns:1fr}.gateway-access-note{color:#407263;background:#f4faf7;border:1px solid #d5e7df;border-radius:15px;align-items:center;gap:11px;margin-top:16px;padding:15px 16px;display:flex}.gateway-access-note p{gap:4px;margin:0;display:grid}.gateway-access-note small{color:#718982}.gateway-access-error{margin-top:13px}.acceptance-center{gap:18px;display:grid}.acceptance-summary{background:#f7faf9;border:1px solid #dce8e6;border-radius:15px;align-items:center;gap:13px;padding:16px;display:flex}.acceptance-summary>span{color:#a96d30;background:#fff4e8;border-radius:13px;place-items:center;width:44px;height:44px;display:grid}.acceptance-summary>span.passed{color:#34785b;background:#eaf6ef}.acceptance-summary>div,.acceptance-manual-note p{gap:4px;display:grid}.acceptance-summary small,.acceptance-manual-note small{color:#718484}.acceptance-check-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.acceptance-check-list article{border:1px solid #dce8e6;border-radius:14px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:14px;display:grid}.acceptance-check-list article>span{border-radius:9px;place-items:center;width:30px;height:30px;display:grid}.acceptance-check-list article.passed>span{color:#36775c;background:#e9f5ee}.acceptance-check-list article.failed>span{color:#a55349;background:#faece9}.acceptance-check-list article p{gap:4px;margin:0;display:grid}.acceptance-check-list article small{color:#748686}.acceptance-check-list article em{color:#5c7a70;font-size:12px;font-style:normal}.acceptance-manual-note{color:#386b67;background:#eef5f4;border-radius:14px;gap:11px;padding:15px 16px;display:flex}@media (width<=760px){.acceptance-check-list{grid-template-columns:1fr}}.gateway-security{color:#688084;background:#f1f6f6;border-radius:13px;align-items:flex-start;gap:10px;margin-top:19px;padding:13px 15px;display:flex}.gateway-security>svg{color:var(--green);flex:none}.gateway-security div{flex-direction:column;gap:4px;display:flex}.gateway-security strong{color:#47666c;font-size:9px}.gateway-security span{font-size:8px;line-height:1.6}.gateway-art{background:radial-gradient(circle at 25% 15%,#d6e47073,#0000 18rem),linear-gradient(145deg,#0a7b8d 0%,#0b6677 48%,#07505e 100%);place-items:center;min-height:100vh;display:grid;position:relative;overflow:hidden}.gateway-art:before{opacity:.25;content:"";background-image:radial-gradient(#ffffff3d .8px,#0000 .8px);background-size:27px 27px;position:absolute;inset:0}.gateway-core{z-index:2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #ffffff38;border-radius:50%;place-items:center;width:260px;height:260px;display:grid;box-shadow:0 30px 80px #00252f47}.gateway-core img{object-fit:cover;border:8px solid #ffffffe0;border-radius:50%;width:174px;height:174px}.gateway-orbit{border:1px solid #ffffff29;border-radius:50%;position:absolute}.gateway-orbit.one{width:430px;height:430px}.gateway-orbit.two{width:610px;height:610px}.gateway-art>p{z-index:2;color:#fffc;letter-spacing:.35em;font-size:13px;position:absolute;bottom:55px}.role-portal-shell{grid-template-columns:228px minmax(0,1fr);min-height:100vh;display:grid}.role-sidebar{background:#f9fcfceb;border-right:1px solid #d3e5e8e6;flex-direction:column;height:100vh;padding:28px 20px 20px;display:flex;position:sticky;top:0}.role-sidebar .brand{padding-bottom:18px}.role-label{border-radius:9px;align-items:center;gap:6px;margin:0 8px 25px;padding:7px 9px;font-size:9px;font-weight:750;display:flex}.role-label.parent{color:#5579a8;background:#edf3fb}.role-label.admin{color:#71629e;background:#f0edf7}.role-sidebar nav{flex-direction:column;gap:7px;display:flex}.role-sidebar nav button{color:#6d7e82;text-align:left;background:0 0;border:0;border-radius:13px;align-items:center;gap:13px;width:100%;padding:12px 14px;font-size:13px;display:flex}.role-sidebar nav button:hover,.role-sidebar nav button.active{background:var(--green-soft);color:var(--green-deep);font-weight:700}.switch-role-button{color:#71878b;background:#fff;border:1px solid #dce8ea;border-radius:11px;justify-content:center;align-items:center;gap:7px;margin-top:auto;padding:10px;font-size:10px;display:flex}.role-exit-icon{width:30px;height:30px;color:var(--green);background:#edf4f4;border:0;border-radius:9px;place-items:center;display:grid}.portal-main{min-width:0}.portal-header{z-index:10;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffffdb;border-bottom:1px solid #dbe9ebdb;justify-content:space-between;align-items:center;height:68px;padding:0 clamp(24px,5vw,64px);display:flex;position:sticky;top:0}.portal-header>div{color:#87979a;align-items:center;gap:7px;font-size:11px;display:flex}.portal-header strong{color:var(--ink)}.portal-mobile-header,.portal-bottom-nav{display:none}.portal-content{width:min(100%,1180px);margin:0 auto;padding:38px clamp(24px,5vw,64px) 80px}.parent-welcome,.admin-welcome{background:radial-gradient(circle at 88% 20%,#cedd6a47,#0000 14rem),linear-gradient(118deg,#edf7f7,#fbfdf9);border:1px solid #dbe9eb;border-radius:24px;justify-content:space-between;align-items:center;gap:20px;padding:28px;display:flex}.parent-welcome h1,.admin-welcome h1{letter-spacing:-.04em;margin:0;font-size:clamp(25px,3vw,34px)}.parent-welcome p:last-child,.admin-welcome p:last-child{color:#71878b;margin:8px 0 0;font-size:11px}.parent-overview,.admin-stat-grid{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.parent-overview>div{background:#fff;border:1px solid #dfeaec;border-radius:16px;align-items:center;gap:11px;padding:16px;display:flex}.parent-overview>div>span{background:var(--green-soft);width:36px;height:36px;color:var(--green);border-radius:11px;place-items:center;display:grid}.parent-overview p{flex-direction:column;gap:4px;margin:0;display:flex}.parent-overview strong{font-size:17px}.parent-overview small{color:#819397;font-size:8px}.parent-quick-grid{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.parent-quick-grid button{min-height:120px;color:var(--green);text-align:left;background:#fff;border:1px solid #dfeaec;border-radius:17px;flex-direction:column;align-items:flex-start;padding:17px;display:flex}.parent-quick-grid strong{color:var(--ink);margin-top:18px;font-size:12px}.parent-quick-grid small{color:#84969a;margin-top:5px;font-size:8px}.parent-feedback{background:#f1f8f8;border-radius:13px;align-items:flex-start;gap:12px;margin-top:18px;padding:15px;display:flex}.parent-feedback>span{color:var(--green)}.parent-feedback p{color:#526b70;margin:0;font-size:11px;line-height:1.8}.parent-subject-grid{grid-template-columns:repeat(5,1fr);gap:8px;margin-top:18px;display:grid}.parent-subject-grid>button{text-align:left;background:#fbfdfd;border:1px solid #e2ecee;border-radius:12px;grid-template-columns:auto 1fr;align-items:center;gap:8px;padding:11px;transition:all .15s;display:grid}.parent-subject-grid>button:hover,.parent-subject-grid>button.active{background:#eef8f8;border-color:#87bec6;transform:translateY(-1px)}.parent-subject-grid i{color:#fff;border-radius:9px;place-items:center;width:30px;height:30px;font-size:9px;font-style:normal;font-weight:750;display:grid}.parent-subject-grid span{flex-direction:column;gap:2px;display:flex}.parent-subject-grid small{color:#7e9195;font-size:8px}.parent-subject-grid strong{font-size:15px}.parent-subject-grid em{color:#5d858c;text-align:right;grid-column:1/-1;font-size:7px;font-style:normal}.parent-grade-filters{background:linear-gradient(120deg,#f0f8f8,#fff);border:1px solid #dce9eb;border-radius:17px;grid-template-columns:1fr 1fr 1fr;gap:10px;padding:16px;display:grid}.parent-grade-filters label,.parent-grade-filters>div{flex-direction:column;gap:6px;min-width:0;padding:3px 9px;display:flex}.parent-grade-filters>*+*{border-left:1px solid #dfeaec}.parent-grade-filters span{color:#7d9195;font-size:8px}.parent-grade-filters select{width:100%;height:35px;color:var(--ink);background:#fff;border:1px solid #d7e6e8;border-radius:9px;outline:0;padding:0 9px;font-size:9px}.parent-grade-filters strong{align-items:center;gap:5px;font-size:10px;display:flex}.parent-grade-filters small{color:#86999c;font-size:8px}.parent-subject-switcher{scrollbar-width:none;gap:6px;margin-top:17px;display:flex;overflow-x:auto}.parent-subject-switcher::-webkit-scrollbar{display:none}.parent-subject-switcher button{color:#71878b;background:#fff;border:1px solid #dce8ea;border-radius:999px;flex:none;padding:7px 10px;font-size:8px}.parent-subject-switcher button.active{border-color:var(--green);background:var(--green);color:#fff}.parent-semester-list{flex-direction:column;gap:8px;margin-top:17px;display:flex}.parent-semester-list button{text-align:left;background:#fbfdfd;border:1px solid #e0eaec;border-radius:12px;grid-template-columns:1.4fr .6fr .8fr auto;align-items:center;gap:10px;padding:13px 14px;display:grid}.parent-semester-list button.active{background:#eef8f8;border-color:#8cc3ca}.parent-semester-list span,.parent-semester-list p{flex-direction:column;gap:3px;margin:0;display:flex}.parent-semester-list strong{font-size:10px}.parent-semester-list small{color:#819397;font-size:8px}.parent-semester-list em{color:#388270;font-size:8px;font-style:normal}.attendance-parent-stats>div{text-align:center;justify-content:center}.leave-form,.notice-editor{box-shadow:var(--shadow);background:#fff;border:1px solid #dce9eb;border-radius:20px;padding:22px}.leave-form-grid,.notice-editor-grid{grid-template-columns:1fr 1fr;gap:12px;margin-top:18px;display:grid}.leave-form label,.notice-editor label{flex-direction:column;gap:7px;margin-top:14px;display:flex}.leave-form label>span,.notice-editor label>span{color:#60777b;font-size:9px;font-weight:700}.leave-form input,.leave-form select,.leave-form textarea,.notice-editor input,.notice-editor select,.notice-editor textarea{width:100%;color:var(--ink);background:#fbfdfd;border:1px solid #d9e7e9;border-radius:10px;outline:0;padding:10px 11px;font-size:10px}.leave-form textarea,.notice-editor textarea{resize:vertical}.leave-form>.primary-button{margin-top:16px}.parent-attendance-list{border:1px solid #e1ebed;border-radius:14px;margin-top:16px;overflow:hidden}.parent-attendance-list>div{border-bottom:1px solid #e7eef0;align-items:center;gap:10px;padding:13px 15px;display:flex}.parent-attendance-list>div:last-child{border-bottom:0}.status-dot{border-radius:50%;width:8px;height:8px}.status-dot.正常{background:#52a777}.status-dot.迟到{background:#d59a4b}.status-dot.早退{background:#c58b55}.status-dot.病假{background:#5f8fc3}.status-dot.事假{background:#7c78b9}.status-dot.缺勤{background:#cc6b60}.parent-attendance-list p{flex-direction:column;flex:1;gap:4px;margin:0;display:flex}.parent-attendance-list strong{font-size:10px}.parent-attendance-list small{color:#87999c;font-size:8px}.parent-attendance-list em{color:#547980;background:#eef6f6;border-radius:8px;padding:5px 8px;font-size:8px;font-style:normal}.bound-child{border:1px solid #e1ebed;border-radius:14px;align-items:center;gap:12px;margin-top:18px;padding:14px;display:flex}.bound-child>div{flex-direction:column;flex:1;gap:4px;display:flex}.bound-child strong{font-size:12px}.bound-child small,.bound-child>span{color:#7f9397;font-size:8px}.admin-avatar{color:#fff;background:#7566a4;border-radius:11px;place-items:center;width:34px;height:34px;font-size:12px;font-weight:750;display:grid}.admin-stat-grid>div,.admin-stat-grid>button{background:#fff;border:1px solid #e1e8ef;border-radius:17px;align-items:center;gap:12px;min-width:0;padding:18px;display:flex}.admin-stat-grid>button{width:100%;color:inherit;text-align:left}.actionable-stats>button{transition:transform .16s,border-color .16s,box-shadow .16s}.actionable-stats>button:hover{border-color:#9fc8cd;transform:translateY(-2px);box-shadow:0 10px 28px #0a576517}.actionable-stats>button>svg{color:#8aa0a3;margin-left:auto}.admin-stat-icon{border-radius:13px;flex:none;place-items:center;width:42px;height:42px;display:grid}.admin-stat-icon.students{color:#0b8090;background:#e7f4f5}.admin-stat-icon.teachers{color:#7466a3;background:#eef0f9}.admin-stat-icon.attendance{color:#4c9369;background:#eaf5ee}.admin-stat-icon.records{color:#8a792f;background:#f8f4df}.admin-stat-grid p{flex-direction:column;min-width:0;margin:0;display:flex}.admin-stat-grid small{color:#7e9094;font-size:8px}.admin-stat-grid strong{margin-top:4px;font-size:21px}.admin-stat-grid em{color:#87999c;text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:8px;font-style:normal;overflow:hidden}.admin-stat-grid.compact>div,.admin-stat-grid.compact>button{text-align:center;justify-content:center}.data-center-tabs{background:#e8f1f2d1;border:1px solid #dce8ea;border-radius:16px;grid-template-columns:repeat(6,1fr);gap:6px;padding:6px;display:grid}.data-center-tabs button{color:#6f8589;background:0 0;border:0;border-radius:11px;justify-content:center;align-items:center;gap:7px;min-height:42px;font-size:10px;display:flex}.data-center-tabs button.active{color:var(--green-deep);background:#fff;font-weight:750;box-shadow:0 4px 14px #0f4f5b14}.data-center-tabs em{color:#fff;background:#c26551;border-radius:10px;place-items:center;min-width:19px;height:19px;font-size:8px;font-style:normal;display:grid}.workflow-table-card{overflow:hidden}.workflow-table{border:1px solid #e0eaec;border-radius:14px;margin-top:14px;overflow:hidden}.workflow-table>div{border-bottom:1px solid #e8eff0;grid-template-columns:1.1fr 1fr .7fr 1.6fr;align-items:center;gap:12px;padding:12px 14px;font-size:10px;display:grid}.workflow-table>div:last-child{border-bottom:0}.workflow-table-head{color:#71868a;background:#f2f7f7;font-weight:700}.workflow-table>div>span:first-child{flex-direction:column;gap:3px;display:flex}.workflow-table small{color:#85979a;font-size:8px}.workflow-table em,.workflow-card-list>article>em{color:#a26728;background:#faf0e5;border-radius:8px;justify-self:start;padding:4px 8px;font-size:8px;font-style:normal}.workflow-table em.normal,.workflow-card-list>article>em.normal{color:#3e7d59;background:#eaf5ed}.workflow-actions{flex-wrap:wrap;gap:6px;display:flex}.workflow-actions button{color:#276b74;background:#edf7f7;border:1px solid #b9d2d5;border-radius:8px;padding:6px 9px;font-size:8px;font-weight:700}.workflow-actions button.reject{color:#a35e56;background:#fbefed;border-color:#ead0cd}.workflow-card-list{border:1px solid #e0eaec;border-radius:14px;flex-direction:column;margin-top:14px;display:flex}.workflow-card-list>article{border-bottom:1px solid #e8eff0;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:14px;display:grid}.workflow-card-list>article:last-child{border-bottom:0}.workflow-card-list p{flex-direction:column;gap:4px;min-width:0;margin:0;display:flex}.workflow-card-list strong{font-size:10px}.workflow-card-list small{color:#7e9195;font-size:8px}.workflow-card-list i{color:#536f74;font-size:9px;font-style:normal}.workflow-empty{color:#829598;text-align:center;padding:24px;font-size:10px}.admin-dashboard-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.admin-task-list{margin-top:15px}.admin-task-list button{text-align:left;background:0 0;border:0;border-bottom:1px solid #e9eff0;align-items:center;gap:10px;width:100%;padding:11px 0;display:flex}.admin-task-list button:last-child{border-bottom:0}.admin-task-list p{flex-direction:column;flex:1;gap:4px;margin:0;display:flex}.admin-task-list strong{font-size:10px}.admin-task-list small{color:#86999c;font-size:8px}.admin-bar-list{flex-direction:column;gap:14px;margin-top:23px;display:flex}.admin-bar-list>div{color:#657d81;grid-template-columns:65px 1fr 44px;align-items:center;gap:9px;font-size:9px;display:grid}.admin-bar-list i{background:#e6eef0;border-radius:6px;height:6px;overflow:hidden}.admin-bar-list b{border-radius:inherit;background:linear-gradient(90deg,#0b8090,#75b8b2);height:100%;display:block}.admin-bar-list strong{color:var(--ink);font-size:9px}.security-callout{color:var(--green);background:#eef7f7;border:1px solid #d6e7e9;border-radius:16px;align-items:center;gap:12px;padding:16px 18px;display:flex}.security-callout>div{flex-direction:column;flex:1;gap:4px;display:flex}.security-callout strong{color:#3f666c;font-size:10px}.security-callout span{color:#758d91;font-size:8px;line-height:1.6}.security-callout button{color:var(--green);background:0 0;border:0;font-size:9px;font-weight:700}.invite-card{background:linear-gradient(120deg,#f2eff8,#fff);border:1px solid #ddd9ed;border-radius:18px;align-items:center;gap:15px;padding:20px;display:flex}.invite-card>span{color:#fff;background:#7869a5;border-radius:14px;place-items:center;width:45px;height:45px;display:grid}.invite-card>div{flex-direction:column;flex:1;gap:4px;display:flex}.invite-card small,.invite-card p{color:#837d97;margin:0;font-size:8px}.invite-card strong{letter-spacing:.08em;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:18px}.admin-people-summary{border:1px solid #e0e9eb;border-radius:15px;grid-template-columns:repeat(4,1fr);display:grid;overflow:hidden}.admin-people-summary button{background:#fff;border:0;border-right:1px solid #e4ecee;flex-direction:column;gap:4px;padding:15px;display:flex}.admin-people-summary button:last-child{border-right:0}.admin-people-summary button.active{color:var(--green);background:#eef7f7}.admin-people-summary strong{font-size:16px}.admin-people-summary span{color:#819397;font-size:8px}.people-table{background:#fff;border:1px solid #e0e9eb;border-radius:15px;overflow:hidden}.people-head,.people-row{grid-template-columns:1.3fr 1fr 1.3fr .7fr .9fr;align-items:center;gap:10px;padding:12px 15px;display:grid}.people-head{color:#7f9296;background:#f1f6f6;font-size:8px}.people-row{text-align:left;background:#fff;border:0;border-top:1px solid #e7edef;width:100%}.people-row>span{align-items:center;gap:8px;display:flex}.people-row i{width:28px;height:28px;color:var(--green);background:#e9f4f4;border-radius:9px;place-items:center;font-size:9px;font-style:normal;display:grid}.people-row b{color:#627b80;font-weight:550}.people-row em{border-radius:7px;width:fit-content;padding:4px 7px;font-size:8px;font-style:normal}.people-row em.normal{color:#438563;background:#e9f5ed}.people-row em.pending{color:#af6b36;background:#fff2e6}.people-row small{color:#87999c;font-size:8px}.people-view-tabs{background:#e9eff0;border-radius:13px;grid-template-columns:repeat(3,1fr);padding:4px;display:grid}.people-view-tabs button{color:#71878b;background:0 0;border:0;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:9px;font-size:9px;display:flex}.people-view-tabs button.active{color:var(--green-deep);background:#fff;font-weight:700;box-shadow:0 3px 10px #174c5614}.teacher-management-layout{grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);align-items:start;gap:12px;display:grid}.people-row.active{box-shadow:inset 3px 0 var(--green);background:#eef8f8}.people-row>span>strong{flex-direction:column;gap:3px;display:flex}.people-row>span>strong>small{font-weight:400}.teacher-detail-panel{box-shadow:var(--shadow);background:#fff;border:1px solid #dce8ea;border-radius:18px;flex-direction:column;gap:16px;padding:19px;display:flex;position:sticky;top:86px}.teacher-detail-identity{align-items:center;gap:11px;display:flex}.teacher-detail-identity>span{color:#fff;background:linear-gradient(145deg,#2a9dac,#086778);border-radius:15px;place-items:center;width:48px;height:48px;font-size:17px;font-weight:750;display:grid}.teacher-detail-identity>div{flex:1}.teacher-detail-identity h2{margin:0;font-size:17px}.teacher-detail-identity p,.teacher-detail-identity small{color:#778d91;margin:4px 0 0;font-size:8px}.teacher-info-grid{border:1px solid #e2eaec;border-radius:12px;grid-template-columns:1fr 1fr;display:grid;overflow:hidden}.teacher-info-grid>div{background:#fbfdfd;border-bottom:1px solid #e6edef;border-right:1px solid #e6edef;flex-direction:column;gap:5px;padding:11px;display:flex}.teacher-info-grid>div:nth-child(2n){border-right:0}.teacher-info-grid>div:nth-child(n+5){border-bottom:0}.teacher-info-grid span{color:#829599;font-size:7px}.teacher-info-grid strong{font-size:8px;line-height:1.5}.teacher-detail-section h3{margin:0;font-size:11px}.teacher-work-list,.teacher-activity-list{margin-top:10px}.teacher-work-list>div{color:#47826d;border-bottom:1px solid #e8eef0;align-items:center;gap:7px;padding:8px 0;display:flex}.teacher-work-list>div:last-child{border-bottom:0}.teacher-work-list span{color:#4f696e;flex:1;font-size:8px}.teacher-work-list em{color:#87999c;font-size:7px;font-style:normal}.teacher-work-metrics{border:1px solid #e1eaec;border-radius:12px;grid-template-columns:repeat(4,1fr);display:grid;overflow:hidden}.teacher-work-metrics>div{text-align:center;border-right:1px solid #e5edef;flex-direction:column;align-items:center;gap:3px;padding:10px 4px;display:flex}.teacher-work-metrics>div:last-child{border-right:0}.teacher-work-metrics strong{font-size:13px}.teacher-work-metrics span{color:#829599;font-size:6px}.teacher-activity-list>div{gap:8px;padding:7px 0;display:flex}.teacher-activity-list p{flex-direction:column;gap:4px;margin:0;display:flex}.teacher-activity-list strong{font-size:8px}.teacher-activity-list small{color:#829599;font-size:7px}.role-permission-grid{grid-template-columns:repeat(3,1fr);gap:9px;display:grid}.role-permission-grid button{text-align:left;background:#fff;border:1px solid #dfe9eb;border-radius:13px;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;min-height:105px;padding:13px;display:grid}.role-permission-grid button>span{width:28px;height:28px;color:var(--green);background:#e9f4f4;border-radius:9px;place-items:center;font-size:9px;font-weight:750;display:grid}.role-permission-grid button>div{flex-direction:column;gap:4px;min-width:0;display:flex}.role-permission-grid strong{font-size:10px}.role-permission-grid small,.role-permission-grid p{color:#819397;margin:0;font-size:7px;line-height:1.5}.notice-editor-grid{margin-top:8px}.notice-editor-actions{justify-content:flex-end;gap:9px;margin-top:17px;display:flex}.admin-notice-list{margin-top:16px}.admin-notice-list button{text-align:left;background:0 0;border:0;border-bottom:1px solid #e7eef0;align-items:center;gap:11px;width:100%;padding:12px 0;display:flex}.admin-notice-list button:last-child{border-bottom:0}.admin-notice-list>button>span{width:34px;height:34px;color:var(--green);background:#e9f5f5;border-radius:10px;place-items:center;display:grid}.admin-notice-list p{flex-direction:column;flex:1;gap:4px;margin:0;display:flex}.admin-notice-list strong{font-size:10px}.admin-notice-list small{color:#86999c;font-size:8px}.admin-notice-list em{color:#617e83;background:#eef5f5;border-radius:7px;padding:5px 7px;font-size:8px;font-style:normal}.notice-detail-sheet{background:#fff;border-radius:24px;width:min(100%,780px);max-height:calc(100vh - 40px);padding:24px 30px 28px;animation:.22s sheetUp;overflow-y:auto;box-shadow:0 30px 90px #122e3247}.notice-detail-topbar,.notice-reader-footer,.admin-notice-actions{justify-content:space-between;align-items:center;gap:12px;display:flex}.notice-back-button{color:#557277;background:0 0;border:0;align-items:center;gap:6px;padding:7px 0;font-size:10px;font-weight:700;display:inline-flex}.notice-detail-header{border-bottom:1px solid #e5edef;padding:20px 0 18px}.notice-detail-badges{align-items:center;gap:7px;display:flex}.notice-detail-badges>span{color:#627d82;background:#eff5f5;border-radius:7px;padding:5px 8px;font-size:8px;font-weight:750}.notice-detail-header h1{color:#173337;margin:13px 0 8px;font-size:clamp(21px,3vw,28px);line-height:1.35}.notice-detail-header>p,.admin-notice-preview>header>p{color:#72888c;margin:0;font-size:10px;line-height:1.75}.notice-status.status-已发布{color:#39704c;background:#e7f4eb}.notice-status.status-待审核{color:#9a6715;background:#fff2db}.notice-status.status-草稿{color:#66777a;background:#eef1f2}.notice-status.status-已撤回{color:#a35348;background:#f8e7e5}.notice-meta-grid{grid-template-columns:repeat(4,1fr);gap:12px;padding:17px 0;display:grid}.notice-meta-grid>div{background:#f5f8f8;border-radius:11px;flex-direction:column;gap:5px;min-width:0;padding:11px;display:flex}.notice-meta-grid span{color:#8a9b9e;font-size:8px}.notice-meta-grid strong{color:#36565b;text-overflow:ellipsis;font-size:9px;overflow:hidden}.notice-article,.admin-notice-body{color:#34494c;padding:18px 4px;font-size:11px;line-height:2}.notice-article p,.admin-notice-body p{margin:0}.notice-article .notice-signature{text-align:right;margin-top:20px}.notice-attachments{background:#fafcfc;border:1px solid #e2ebec;border-radius:14px;padding:15px}.notice-attachments .card-heading{margin-bottom:8px}.notice-attachments button{width:100%;color:var(--ink);text-align:left;background:#fff;border:0;border-radius:10px;align-items:center;gap:10px;padding:10px;display:flex}.notice-attachments button+button{margin-top:6px}.notice-attachments button>span{width:33px;height:33px;color:var(--green);background:#e7f3f3;border-radius:9px;flex:none;place-items:center;display:grid}.notice-attachments button p{flex-direction:column;flex:1;gap:3px;margin:0;display:flex}.notice-attachments button strong{font-size:9px}.notice-attachments button small{color:#849699;font-size:8px}.notice-reader-footer{border-top:1px solid #e5edef;margin-top:18px;padding-top:17px}.notice-reader-footer>div{flex-direction:column;gap:4px;display:flex}.notice-reader-footer strong{color:#39585d;font-size:10px}.notice-reader-footer span{color:#84969a;font-size:8px}.notice-status-summary{background:#fff;border:1px solid #dce8ea;border-radius:16px;grid-template-columns:repeat(5,1fr);display:grid;overflow:hidden;box-shadow:0 8px 24px #124c540a}.notice-status-summary button{color:#7c8f93;background:0 0;border:0;border-right:1px solid #e6edef;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-height:67px;display:flex}.notice-status-summary button:last-child{border-right:0}.notice-status-summary button.active{color:var(--green);background:#eaf5f5}.notice-status-summary strong{color:inherit;font-size:17px}.notice-status-summary span{font-size:8px;font-weight:700}.notice-management-grid{grid-template-columns:minmax(330px,.85fr) minmax(430px,1.15fr);align-items:start;gap:16px;display:grid}.notice-list-panel,.admin-notice-preview{min-width:0}.admin-notice-list.detailed{margin-top:8px}.admin-notice-list.detailed>button{border-radius:10px;align-items:flex-start;padding:14px 8px}.admin-notice-list.detailed>button.active{background:#edf6f6;border-bottom-color:#0000}.admin-notice-list.detailed p i{color:#6f8589;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:8px;font-style:normal;line-height:1.55;display:-webkit-box;overflow:hidden}.admin-notice-list.detailed .notice-status{flex:none}.notice-empty{color:#91a0a2;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:7px;min-height:190px;display:flex}.notice-empty strong{color:#536d71;font-size:10px}.notice-empty span{font-size:8px}.admin-notice-preview{padding:24px}.admin-notice-preview>header h2{color:#17363a;margin:12px 0 7px;font-size:18px;line-height:1.45}.notice-meta-grid.compact{grid-template-columns:repeat(2,1fr);padding-bottom:8px}.admin-notice-body{border-top:1px solid #e6edef;border-bottom:1px solid #e6edef;max-height:300px;margin-top:10px;overflow-y:auto}.admin-notice-body h3{margin:0 0 10px;font-size:10px}.notice-attachments.admin{margin-top:14px}.notice-read-stat{background:#f2f7f7;border-radius:13px;grid-template-columns:1fr auto;align-items:end;gap:10px 14px;margin-top:14px;padding:14px;display:grid}.notice-read-stat>div{flex-direction:column;gap:4px;display:flex}.notice-read-stat span,.notice-read-stat small{color:#789095;font-size:8px}.notice-read-stat strong{color:#294f55;font-size:14px}.notice-read-stat>i{background:#dce8e9;border-radius:6px;grid-column:1/-1;height:6px;overflow:hidden}.notice-read-stat>i b{border-radius:inherit;background:#4d8b73;height:100%;display:block}.notice-read-stat>button{color:var(--green);background:0 0;border:0;grid-area:1/2;font-size:8px;font-weight:750}.admin-notice-actions{border-top:1px solid #e6edef;justify-content:flex-end;margin-top:16px;padding-top:16px}.danger-outline-button{color:#a65045;background:#fff;border:1px solid #dfaaa2;border-radius:10px;justify-content:center;align-items:center;min-height:36px;padding:0 14px;font-size:9px;font-weight:750;display:inline-flex}.notice-composer textarea{min-height:210px;line-height:1.8}.notice-uploaded-file{color:#547277;background:#eff6f6;border-radius:10px;align-items:center;gap:8px;margin-top:12px;padding:10px 12px;font-size:9px;display:flex}.notice-uploaded-file span{flex:1}.notice-uploaded-file button{color:#778b8f;background:#fff;border:0;border-radius:8px;place-items:center;width:26px;height:26px;display:grid}.publication-list{margin-top:18px}.publication-list>div,.publication-list>button{width:100%;color:inherit;text-align:left;background:0 0;border:0;border-bottom:1px solid #e6edef;align-items:center;gap:10px;padding:12px 0;display:flex}.publication-list>div:last-child,.publication-list>button:last-child{border-bottom:0}.publication-list p{flex-direction:column;flex:1;gap:4px;margin:0;display:flex}.publication-list strong{font-size:10px}.publication-list small{color:#87999c;font-size:8px}.publication-list>div>span,.publication-list>button>span{color:var(--green);font-size:10px;font-weight:700}.setting-state{color:#6e8589;font-size:8px}.attendance-workspace{flex-direction:column;gap:16px;display:flex}.attendance-session-card{background:linear-gradient(120deg,#edf8f8,#fff);border:1px solid #d8e7e9;border-radius:19px;padding:20px}.attendance-session-top{align-items:center;gap:12px;display:flex}.attendance-session-top>span:first-child{background:var(--green);color:#fff;border-radius:13px;place-items:center;width:43px;height:43px;display:grid}.attendance-session-top>div{flex-direction:column;flex:1;gap:4px;display:flex}.attendance-session-top small,.attendance-session-top p{color:#7f9397;margin:0;font-size:8px}.attendance-session-top strong{font-size:13px}.session-state{color:#75888c;background:#eef2f2;border-radius:8px;padding:6px 9px;font-size:8px}.session-state.active{color:#3c8760;background:#e6f5ea}.attendance-session-actions{flex-wrap:wrap;gap:8px;margin-top:18px;display:flex}.upload-button{position:relative;overflow:hidden}.upload-button input{opacity:0;cursor:pointer;position:absolute;inset:0}.attendance-upload-note{color:#83969a;margin:10px 0 0;font-size:8px}.attendance-summary-strip{background:#fff;border:1px solid #e0e9eb;border-radius:15px;grid-template-columns:repeat(6,1fr);display:grid;overflow:hidden}.attendance-summary-strip div{border-right:1px solid #e5edef;flex-direction:column;align-items:center;gap:4px;padding:14px;display:flex}.attendance-summary-strip div:last-child{border-right:0}.attendance-summary-strip strong{font-size:18px}.attendance-summary-strip span{color:#819397;font-size:8px}.attendance-roster{background:#fff;border:1px solid #dfeaec;border-radius:17px;overflow:hidden}.attendance-roster-head{background:#f1f6f6;justify-content:space-between;align-items:flex-end;padding:16px 18px;display:flex}.attendance-roster-head h2{margin:0;font-size:15px}.attendance-roster-head>span{color:#7d9094;font-size:8px}.attendance-student-row{border-top:1px solid #e7eef0;grid-template-columns:28px auto 1fr minmax(280px,.9fr);align-items:center;gap:10px;padding:12px 16px;display:grid}.roll-number{color:#91a1a4;font-size:8px}.attendance-student-row>p{flex-direction:column;gap:3px;margin:0;display:flex}.attendance-student-row strong{font-size:10px}.attendance-student-row small{color:#87999c;font-size:8px}.attendance-status-options{grid-template-columns:repeat(6,1fr);gap:5px;display:grid}.attendance-status-options button{color:#7d9094;background:#fff;border:1px solid #e0e9eb;border-radius:8px;padding:7px 5px;font-size:8px}.attendance-status-options button.active.status-正常{color:#40845f;background:#eaf6ee;border-color:#76b58e}.attendance-status-options button.active.status-迟到{color:#aa6a32;background:#fff4e8;border-color:#e0b16e}.attendance-status-options button.active.status-早退{color:#9b6533;background:linen;border-color:#d1a56f}.attendance-status-options button.active.status-请假{color:#5550a5;background:#efeffb;border-color:#7772c7;box-shadow:0 0 0 2px #7772c724}.attendance-status-options button.active.status-病假{color:#557eae;background:#edf4fc;border-color:#88aeda}.attendance-status-options button.active.status-事假{color:#6f69a5;background:#f1f0fa;border-color:#9c98cf}.attendance-status-options button.active.status-缺勤{color:#b45e52;background:#fceeed;border-color:#db9187}.attendance-status-options button[aria-pressed=true]{border-width:2px;font-weight:700}.attendance-status-options button svg{flex:none}.attendance-verify-card{background:#fff8f2;border:1px solid #f0d8c7;border-radius:15px;justify-content:space-between;align-items:center;gap:14px;padding:15px 17px;display:flex}.attendance-verify-card>div:first-child{color:#b46838;align-items:center;gap:10px;display:flex}.attendance-verify-card p{flex-direction:column;gap:4px;margin:0;display:flex}.attendance-verify-card strong{font-size:10px}.attendance-verify-card small{color:#9c7a65;font-size:8px}.verify-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.verify-actions>button:not(.outline-button){color:#966341;background:#fff;border:1px solid #ead5c7;border-radius:8px;padding:7px 9px;font-size:8px}.attendance-submit-bar{background:#eef7f7;border:1px solid #d8e8e9;border-radius:14px;align-items:center;gap:14px;padding:14px 16px;display:flex}.attendance-submit-bar>div{color:#6e8589;flex:1;align-items:center;gap:7px;font-size:8px;display:flex}.daily-record-workspace{flex-direction:column;gap:14px;display:flex}.daily-guide{background:linear-gradient(120deg,#edf8f8,#fff);border:1px solid #d8e8e9;border-radius:17px;align-items:center;gap:13px;padding:18px;display:flex}.daily-guide>span{background:var(--green);color:#fff;border-radius:13px;flex:none;place-items:center;width:42px;height:42px;display:grid}.daily-guide>div{flex:1}.daily-guide h3{margin:0;font-size:13px}.daily-guide p{color:#7e9195;margin:5px 0 0;font-size:8px}.daily-record-form{background:#fff;border:1px solid #dce9eb;border-radius:17px;grid-template-columns:1fr 1fr;gap:12px;padding:18px;display:grid}.daily-record-form label{flex-direction:column;gap:7px;display:flex}.daily-record-form label>span{color:#627b80;font-size:8px;font-weight:700}.daily-record-form select,.daily-record-form textarea{width:100%;color:var(--ink);background:#fbfdfd;border:1px solid #dae7e9;border-radius:10px;outline:0;padding:10px;font-size:10px}.daily-note-field,.daily-record-form>div{grid-column:1/-1}.daily-record-form>div{justify-content:flex-end;gap:8px;display:flex}.daily-record-list{background:#fff;border:1px solid #dfeaec;border-radius:16px;overflow:hidden}.daily-record-list article{border-bottom:1px solid #e7eef0;align-items:flex-start;gap:11px;padding:15px 17px;display:flex}.daily-record-list article:last-child{border-bottom:0}.daily-record-list article>div{flex:1}.daily-record-list article>div>div{align-items:center;gap:7px;display:flex}.daily-record-list strong{font-size:10px}.daily-record-list i{color:#5b7d83;background:#eef6f6;border-radius:6px;padding:3px 6px;font-size:8px;font-style:normal}.daily-record-list p{color:#526b70;margin:6px 0 0;font-size:10px;line-height:1.7}.daily-record-list small{color:#86999c;margin-top:6px;font-size:8px;display:block}.daily-record-list article>button{color:#72878b;background:#f1f5f5;border:0;border-radius:8px;place-items:center;width:30px;height:30px;display:grid}.module-list button.active{background:#eef8f8}.module-detail-card{box-shadow:var(--shadow);background:#fff;border:1px solid #dce9eb;border-radius:19px;padding:20px}.module-detail-card>.card-heading{margin-bottom:17px}.module-action-list,.approval-list{border:1px solid #e1eaec;border-radius:14px;overflow:hidden}.module-action-list>button{text-align:left;background:#fbfdfd;border:0;border-bottom:1px solid #e7eef0;align-items:center;gap:10px;width:100%;padding:12px 14px;display:flex}.module-action-list>button:last-child{border-bottom:0}.module-action-list p{flex-direction:column;flex:1;gap:4px;margin:0;display:flex}.module-action-list strong{font-size:10px}.module-action-list small{color:#82969a;font-size:8px}.approval-list article{border-bottom:1px solid #e7eef0;align-items:center;gap:9px;padding:12px 13px;display:flex}.approval-list article:last-child{border-bottom:0}.approval-list p{flex-direction:column;flex:1;gap:4px;margin:0;display:flex}.approval-list strong{font-size:10px}.approval-list small{color:#82969a;font-size:8px}.approval-list article>button{color:#418360;background:#e8f5ed;border:0;border-radius:8px;padding:7px 9px;font-size:8px}.approval-list article>button.reject{color:#b66650;background:#fff0eb}.candidate-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.candidate-grid>button{text-align:left;background:#fbfdfd;border:1px solid #e0eaec;border-radius:12px;align-items:center;gap:9px;min-width:0;padding:11px;display:flex}.candidate-grid p{flex-direction:column;flex:1;gap:4px;min-width:0;margin:0;display:flex}.candidate-grid strong{font-size:10px}.candidate-grid small{color:#83969a;text-overflow:ellipsis;white-space:nowrap;font-size:8px;overflow:hidden}.candidate-grid>button>span:last-child{color:var(--green);font-size:8px}.privacy-warning{color:var(--green);background:#f2f6f6;border-radius:12px;align-items:flex-start;gap:10px;margin-bottom:12px;padding:13px;display:flex}.privacy-warning p{flex-direction:column;gap:4px;margin:0;display:flex}.privacy-warning strong{color:#4d696e;font-size:9px}.privacy-warning small{color:#788e92;font-size:8px;line-height:1.6}.teacher-data-grid{border:1px solid #e0eaec;border-radius:13px;grid-template-columns:repeat(4,1fr);display:grid;overflow:hidden}.teacher-data-grid>div{border-right:1px solid #e5edef;flex-direction:column;align-items:center;gap:4px;padding:15px;display:flex}.teacher-data-grid>div:last-child{border-right:0}.teacher-data-grid strong{font-size:17px}.teacher-data-grid span{color:#819397;font-size:8px}.teacher-scope-card,.boarding-score-hero,.boarding-context-card{background:#fff;border:1px solid #d9e8ea;border-radius:16px;align-items:center;gap:14px;padding:17px 19px;display:flex;box-shadow:0 8px 24px #124c540a}.teacher-scope-card{justify-content:space-between}.teacher-scope-card>div{align-items:center;gap:11px;display:flex}.teacher-scope-card>div>span{width:38px;height:38px;color:var(--green);background:#e7f4f4;border-radius:11px;place-items:center;display:grid}.teacher-scope-card p{flex-direction:column;gap:4px;margin:0;display:flex}.teacher-scope-card strong{font-size:13px}.teacher-scope-card small,.teacher-scope-card em{color:#71878b;font-size:10px;font-style:normal}.teacher-scope-card em{color:#527479;background:#f0f6f6;border-radius:9px;padding:7px 10px;font-weight:700}.class-context-picker{background:#fff;border:1px solid #d9e7e5;border-radius:18px;overflow:hidden;box-shadow:0 10px 28px #184a430d}.class-context-copy{border-bottom:1px solid #e6eeec;align-items:center;gap:12px;padding:15px 18px;display:flex}.class-context-copy>span{width:38px;height:38px;color:var(--green);background:#e7f4f4;border-radius:11px;flex:none;place-items:center;display:grid}.class-context-copy p{flex-direction:column;flex:1;gap:4px;min-width:0;margin:0;display:flex}.class-context-copy strong{font-size:14px}.class-context-copy small,.class-context-copy em{color:#70847f;font-size:11px;font-style:normal}.class-context-copy em{background:#f0f6f4;border-radius:8px;padding:6px 9px;font-weight:700}.class-picker-controls{background:#f8fbfa;grid-template-columns:minmax(180px,.8fr) minmax(260px,1.2fr) minmax(220px,1fr);align-items:end;gap:14px;padding:16px 18px 18px;display:grid}.class-picker-controls label,.class-picker-controls>div{flex-direction:column;gap:7px;min-width:0;display:flex}.class-picker-controls span{color:#6b7f79;font-size:11px;font-weight:700}.class-picker-controls select{width:100%;height:43px;color:var(--ink);font:inherit;background:#fff;border:1px solid #d6e3df;border-radius:10px;padding:0 38px 0 12px}.class-picker-controls>div{border-left:1px solid #dce7e3;justify-content:center;min-height:43px;padding:0 14px}.class-picker-controls strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.class-context-picker:has(>.search-box){grid-template-columns:minmax(280px,2fr) repeat(3,minmax(150px,1fr)) auto;align-items:end;gap:16px;padding:20px;display:grid;overflow:visible}.class-context-picker:has(>.search-box)>label{flex-direction:column;align-items:stretch;gap:7px;min-width:0;margin:0;display:flex}.class-context-picker:has(>.search-box)>label>span{color:#667a73;font-size:12px;font-weight:700;line-height:1.3;position:static;transform:none}.class-context-picker:has(>.search-box)>.search-box{display:block;position:relative}.class-context-picker:has(>.search-box)>.search-box>svg{z-index:1;color:#758781;pointer-events:none;position:absolute;top:50%;left:14px;transform:translateY(-50%)}:is(.class-context-picker:has(>.search-box) input,.class-context-picker:has(>.search-box) select){width:100%;min-width:0;height:44px;color:var(--ink);font:inherit;background-color:#fbfdfc;border:1px solid #d4e1dd;border-radius:11px;outline:none;padding:0 38px 0 13px;font-size:13px}.class-context-picker:has(>.search-box) .search-box input{padding-left:42px}:is(.class-context-picker:has(>.search-box) input:focus,.class-context-picker:has(>.search-box) select:focus){border-color:#6ca3a1;box-shadow:0 0 0 3px #4789861f}.student-filter-reset{white-space:nowrap;min-height:44px}.student-selection-toolbar{background:#fff;border:1px solid #dce7e3;border-radius:14px;justify-content:space-between;align-items:center;gap:14px;min-height:58px;padding:12px 15px;display:flex}.student-selection-toolbar.active{background:#f1f8f6;border-color:#94c2bb}.student-selection-toolbar label,.student-selection-toolbar>div{align-items:center;gap:10px;display:flex}.student-selection-toolbar input{width:17px;height:17px;accent-color:var(--green)}.student-selection-toolbar small{color:#71837d}.bulk-transfer-dialog{width:min(900px,94vw);max-height:90vh;overflow:auto}.student-editor-wide{grid-column:span 1}.bulk-transfer-preview{background:#f8fbfa;border:1px solid #dce7e3;border-radius:14px;gap:12px;margin-top:16px;padding:15px;display:grid}.bulk-transfer-preview>div:first-child{color:#60756e;align-items:center;gap:16px;display:flex}.bulk-transfer-preview .preview-warning{color:#a44f3c;font-weight:700}.bulk-transfer-student-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:230px;display:grid;overflow:auto}.bulk-transfer-student-list>span{background:#fff;border:1px solid #e0e9e6;border-radius:10px;gap:4px;padding:10px 12px;display:grid}.bulk-transfer-student-list small{color:#73857f}@media (width<=1050px){.class-context-picker:has(>.search-box){grid-template-columns:minmax(240px,2fr) repeat(2,minmax(150px,1fr))}.class-context-picker:has(>.search-box)>label:nth-of-type(4){grid-column:1/2}}@media (width<=700px){.class-context-picker:has(>.search-box){grid-template-columns:1fr;gap:13px;padding:16px}.class-context-picker:has(>.search-box)>label:nth-of-type(4){grid-column:auto}.student-filter-reset{justify-content:center;width:100%}.student-selection-toolbar,.student-selection-toolbar>div,.bulk-transfer-preview>div:first-child{flex-direction:column;align-items:stretch}.student-selection-toolbar>div .primary-button{justify-content:center;width:100%}.bulk-transfer-student-list,.bulk-transfer-dialog .student-editor-grid{grid-template-columns:1fr}}.class-picker-controls small{color:#83938e;font-size:10px}.implementation-status-card{background:#fff;border:1px solid #dbe7e4;border-radius:18px;padding:20px;box-shadow:0 10px 28px #184a430d}.implementation-status-card>header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.implementation-status-card h2{margin:4px 0 0;font-size:18px}.implementation-status-card>header>span{color:#42725f;background:#eaf5ef;border-radius:9px;align-items:center;gap:6px;padding:7px 10px;font-size:10px;font-weight:750;display:inline-flex}.implementation-status-card>div{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.implementation-status-card article{background:#f6faf8;border-radius:13px;padding:14px}.implementation-status-card article:last-child{background:#fbf8f3}.implementation-status-card article>strong{margin-bottom:9px;font-size:12px;display:block}.implementation-status-card article p{color:#667b74;align-items:center;gap:5px;margin:4px 14px 4px 0;font-size:10px;display:inline-flex}.implementation-status-card article:first-child p svg{color:#4f846d}.implementation-status-card article:last-child p svg{color:#b0804f}.class-overview-card{box-shadow:var(--shadow);background:#fff;border:1px solid #dce9eb;border-radius:18px;padding:20px}.class-overview-card .trend-chart{max-height:220px}.class-overview-button{width:100%;color:inherit;cursor:pointer;text-align:left}.boarding-context-card{grid-template-columns:repeat(4,1fr);display:grid}.boarding-context-card>label,.boarding-context-card>div{flex-direction:column;gap:6px;min-width:0;display:flex}.boarding-context-card>*+*{border-left:1px solid #e4edef;padding-left:14px}.boarding-context-card span{color:#789095;font-size:10px;font-weight:700}.boarding-context-card select{color:#284b51;background:#f8fbfb;border:1px solid #dbe7e9;border-radius:10px;min-height:40px;padding:0 10px;font-size:12px}.boarding-context-card strong{color:#294f55;font-size:12px}.boarding-context-card small{color:#87999c;font-size:10px}.boarding-context-card.parent{grid-template-columns:repeat(3,1fr)}.boarding-score-hero{grid-template-columns:170px 1fr;display:grid}.boarding-score-hero>div:first-child{background:linear-gradient(145deg,#e8f2f6,#f5f8ee);border-radius:14px;flex-direction:column;justify-content:center;align-items:center;min-height:150px;display:flex}.boarding-score-hero>div>span,.boarding-score-hero>div>small{color:#71878b;font-size:10px}.boarding-score-hero>div>strong{color:#315e66;margin:6px 0 3px;font-size:38px}.boarding-score-hero .trend-chart{max-height:170px}.boarding-dimensions{grid-template-columns:1fr 1fr;gap:15px 22px;margin-top:16px;display:grid}.boarding-dimensions.compact{grid-template-columns:repeat(3,1fr)}.boarding-dimensions>div{flex-direction:column;gap:7px;display:flex}.boarding-dimensions p{justify-content:space-between;gap:10px;margin:0;display:flex}.boarding-dimensions strong{font-size:12px}.boarding-dimensions small{color:#748a8e;font-size:10px}.boarding-dimensions i,.boarding-score-editor article>i{background:#e8eeee;border-radius:7px;height:7px;overflow:hidden}.boarding-dimensions i b,.boarding-score-editor article>i b{border-radius:inherit;height:100%;display:block}.boarding-score-editor{grid-template-columns:1fr 1fr;gap:11px;margin-top:17px;display:grid}.boarding-score-editor article{background:#fbfdfd;border:1px solid #e0eaec;border-radius:13px;grid-template-columns:minmax(145px,.8fr) 1fr auto;align-items:center;gap:13px;padding:13px;display:grid}.boarding-score-editor article>div:first-child{align-items:center;gap:9px;display:flex}.boarding-score-editor article>div:first-child>span{color:#fff;border-radius:10px;flex:none;place-items:center;width:34px;height:34px;font-size:12px;font-weight:800;display:grid}.boarding-score-editor article p{flex-direction:column;gap:3px;margin:0;display:flex}.boarding-score-editor article strong{font-size:12px}.boarding-score-editor article small{color:#82969a;font-size:10px}.score-stepper{align-items:center;gap:7px;display:flex}.score-stepper button{width:28px;height:28px;color:var(--green);background:#fff;border:1px solid #d8e5e7;border-radius:8px;place-items:center;font-size:15px;display:grid}.score-stepper strong{text-align:center;min-width:22px}.boarding-observation>div:not(.card-heading){border-bottom:1px solid #e7eef0;align-items:center;gap:11px;padding:12px 0;display:flex}.boarding-observation>div:last-child{border-bottom:0}.boarding-observation>div>span{color:#527984;background:#eaf4f5;border-radius:11px;place-items:center;width:36px;height:36px;display:grid}.boarding-observation p{flex-direction:column;gap:4px;margin:0;display:flex}.boarding-observation strong{font-size:12px}.boarding-observation small{color:#768b8f;font-size:10px}.award-workspace{grid-template-columns:minmax(250px,.8fr) minmax(420px,1.2fr);gap:15px;margin-top:16px;display:grid}.award-catalog{flex-direction:column;gap:7px;display:flex}.award-catalog>button{text-align:left;background:#fff;border:1px solid #e0eaec;border-radius:11px;align-items:center;gap:10px;width:100%;padding:11px;display:flex}.award-catalog>button.active{background:#f5f2fa;border-color:#b5a6d4}.award-catalog>button>span{color:#765d9f;background:#f0ebf7;border-radius:10px;flex:none;place-items:center;width:34px;height:34px;display:grid}.award-catalog p{flex-direction:column;flex:1;gap:3px;min-width:0;margin:0;display:flex}.award-catalog strong{font-size:12px}.award-catalog small{color:#7f9296;font-size:9px;line-height:1.5}.award-nomination-card,.attendance-application-form,.application-records{background:#fff;border:1px solid #dfeaec;border-radius:16px;padding:18px}.award-form-grid{grid-template-columns:1fr 1fr;gap:10px;margin-top:14px;display:grid}.award-form-grid label,.award-evidence{flex-direction:column;gap:6px;display:flex}.award-form-grid span,.award-evidence>span{color:#71878b;font-size:10px;font-weight:700}.award-form-grid select,.award-form-grid input,.award-evidence textarea{color:#294c52;background:#f9fbfb;border:1px solid #dbe7e9;border-radius:10px;outline:none;width:100%;padding:10px;font-size:11px}.award-evidence{margin:11px 0}.award-evidence textarea{resize:vertical;line-height:1.7}.award-flow,.binding-flow{color:#71878b;background:#f4f7f7;border-radius:11px;justify-content:center;align-items:center;gap:6px;margin-top:16px;padding:11px;font-size:9px;display:flex}.award-flow i,.binding-flow i{background:#cfdcde;width:14px;height:1px}.submitted-awards{margin-top:11px}.submitted-awards>div{color:#527176;border-bottom:1px solid #e7eef0;align-items:center;gap:8px;padding:9px 0;font-size:10px;display:flex}.teacher-attendance-workspace{margin-top:14px}.teacher-attendance-summary,.organization-summary{background:#fff;border:1px solid #dce8ea;border-radius:14px;grid-template-columns:repeat(4,1fr);display:grid;overflow:hidden}.teacher-attendance-summary>div,.organization-summary>div{border-right:1px solid #e5edef;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-height:72px;display:flex}.teacher-attendance-summary>div:last-child,.organization-summary>div:last-child{border-right:0}.teacher-attendance-summary strong,.organization-summary strong{color:#315e65;font-size:18px}.teacher-attendance-summary span,.organization-summary span{color:#7d9296;font-size:9px}.application-type-grid{grid-template-columns:repeat(4,1fr);gap:8px;margin:12px 0;display:grid}.application-type-grid button{text-align:left;background:#fbfdfd;border:1px solid #dfe9eb;border-radius:12px;flex-direction:column;align-items:flex-start;gap:6px;min-height:100px;padding:12px;display:flex}.application-type-grid button.active{color:#316b73;background:#eaf5f5;border-color:#83b8bf}.application-type-grid strong{font-size:11px}.application-type-grid small{color:#7c9094;font-size:9px;line-height:1.5}.application-records{margin-top:12px}.application-records>button{text-align:left;background:0 0;border:0;border-bottom:1px solid #e7eef0;align-items:center;gap:9px;width:100%;padding:10px 0;display:flex}.application-records>button>span{width:34px;height:34px;color:var(--green);background:#eaf4f5;border-radius:10px;place-items:center;display:grid}.application-records p{flex-direction:column;flex:1;gap:3px;margin:0;display:flex}.application-records strong{font-size:11px}.application-records small,.application-records em{color:#7b9094;font-size:9px;font-style:normal}.application-records em.normal{color:#40815f}.application-records em.pending{color:#a66d2f}.parent-binding-page{background:radial-gradient(circle at 15% 20%,#4a8f9724,#0000 25rem),radial-gradient(circle at 90% 85%,#cedd6a2e,#0000 22rem),#f2f8f8;place-items:center;min-height:100vh;padding:24px;display:grid}.parent-binding-card{background:#fff;border:1px solid #dbe8ea;border-radius:24px;width:min(100%,520px);padding:28px;box-shadow:0 24px 70px #0f4c541f}.binding-brand{align-items:center;gap:14px;margin:18px 0;display:flex}.binding-brand img{object-fit:cover;border-radius:50%}.binding-brand span{color:var(--green);font-size:10px;font-weight:800}.binding-brand h1{margin:3px 0 0;font-size:27px}.binding-intro{color:#657d82;margin:0 0 18px;font-size:12px;line-height:1.8}.parent-binding-card>label{flex-direction:column;gap:7px;margin:12px 0;display:flex}.parent-binding-card>label span{color:#587277;font-size:11px;font-weight:700}.parent-binding-card>label input{background:#fafcfc;border:1px solid #d6e5e7;border-radius:11px;outline:none;min-height:45px;padding:0 12px;font-size:13px}.binding-error{color:#b45e52;margin:8px 0;font-size:10px}.demo-credential-button{color:#52757a;background:#f0f6f6;border:0;border-radius:10px;justify-content:center;align-items:center;gap:7px;width:100%;margin-top:10px;padding:10px;font-size:10px;display:flex}.organization-browser{grid-template-columns:minmax(140px,190px) minmax(170px,230px) minmax(0,1fr);align-items:start;gap:12px;display:grid}.grade-column,.class-column,.class-detail-column{background:#fff;border:1px solid #dce8ea;border-radius:16px;min-width:0;padding:14px;box-shadow:0 8px 24px #124c540a}.column-title{flex-direction:column;gap:4px;padding:5px 5px 12px;display:flex}.column-title strong{font-size:13px}.column-title small{color:#82969a;font-size:9px}.grade-column>button{text-align:left;background:0 0;border:0;border-radius:10px;grid-template-columns:1fr auto;gap:4px 7px;width:100%;padding:10px;display:grid}.grade-column>button.active{color:#316a72;background:#e9f4f4}.grade-column>button span{font-size:11px;font-weight:750}.grade-column>button small{color:#809397;font-size:8px}.grade-column>button svg{grid-area:1/2/3;align-self:center}.class-column>button{text-align:left;background:#fbfdfd;border:1px solid #e0eaec;border-radius:11px;justify-content:space-between;align-items:center;gap:8px;width:100%;margin-bottom:7px;padding:11px;display:flex}.class-column>button.active{background:#edf6f6;border-color:#8dbbc1}.class-column>button>div{flex-direction:column;gap:3px;min-width:0;display:flex}.class-column>button strong{font-size:11px}.class-column>button span,.class-column>button small{color:#789095;font-size:8px}.class-column>button em{color:#3d727a;flex-direction:column;align-items:center;font-size:16px;font-style:normal;font-weight:800;display:flex}.class-column>button em small{font-size:7px;font-weight:500}.class-detail-column>header{justify-content:space-between;align-items:center;gap:12px;display:flex}.class-detail-column>header span{color:var(--green);font-size:9px;font-weight:800}.class-detail-column>header h2{margin:4px 0;font-size:22px}.class-detail-column>header p{color:#758b8f;margin:0;font-size:10px}.class-header-actions,.class-list-actions{align-items:center;gap:8px;display:flex}.class-teacher-preview{border-top:1px solid #e7eef0;padding:15px 0}.class-teacher-preview>div:not(.card-heading):not(.empty-editor-state){border-bottom:1px solid #e7eef0;align-items:center;gap:9px;padding:9px 0;display:flex}.class-teacher-preview>div:not(.card-heading) p{flex-direction:column;flex:1;gap:3px;margin:0;display:flex}.class-teacher-preview strong{font-size:10px}.class-teacher-preview small{color:#849699;font-size:8px}.class-teacher-preview em{color:#55797f;font-size:8px;font-style:normal}.member-manager-backdrop{z-index:80;align-items:center;padding:24px}.class-member-manager{background:#f8fbfb;border:1px solid #dce8ea;border-radius:24px;flex-direction:column;width:min(1080px,96vw);max-height:min(820px,92vh);display:flex;overflow:hidden;box-shadow:0 30px 80px #0a3a4538}.class-member-manager>header{background:#fff;border-bottom:1px solid #dfeaec;justify-content:space-between;align-items:flex-start;gap:20px;padding:22px 24px 18px;display:flex}.class-member-manager>header h2{margin:4px 0;font-size:21px}.class-member-manager>header span{color:#70868a;font-size:9px}.member-manager-columns{grid-template-columns:1fr 1fr;gap:14px;min-height:0;padding:16px;display:grid;overflow:hidden}.member-manager-columns>section{background:#fff;border:1px solid #dfeaec;border-radius:16px;flex-direction:column;min-height:0;display:flex;overflow:hidden}.member-panel-title{border-bottom:1px solid #e4edef;padding:14px}.member-panel-title>div{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.member-panel-title strong{font-size:12px}.member-panel-title small{color:#688389;font-size:8px}.search-box.compact{min-height:38px;padding:0 11px}.member-choice-list{min-height:0;padding:6px;overflow-y:auto}.member-choice-list>label{cursor:pointer;border:1px solid #0000;border-radius:11px;align-items:center;gap:9px;padding:9px 10px;display:flex}.member-choice-list>label:hover{background:#f3f8f8}.member-choice-list>label.selected{background:#ebf6f6;border-color:#b7d5d9}.member-choice-list input{width:15px;height:15px;accent-color:var(--green)}.member-choice-list p{flex-direction:column;flex:1;gap:3px;min-width:0;margin:0;display:flex}.member-choice-list strong{font-size:10px}.member-choice-list small{color:#819497;font-size:8px}.member-choice-list>label>span:last-child{color:#668187;font-size:8px}.class-member-manager>footer{background:#fff;border-top:1px solid #dfeaec;justify-content:space-between;align-items:center;gap:18px;padding:14px 22px;display:flex}.class-member-manager>footer p,.class-member-manager>footer>div{align-items:center;gap:8px;margin:0;display:flex}.class-member-manager>footer p{color:#70868a;font-size:8px}.class-detail-metrics{border:1px solid #e0eaec;border-radius:12px;grid-template-columns:repeat(4,1fr);margin:16px 0;display:grid;overflow:hidden}.class-detail-metrics>div{border-right:1px solid #e5edef;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-height:66px;display:flex}.class-detail-metrics>div:last-child{border-right:0}.class-detail-metrics strong{font-size:16px}.class-detail-metrics span{color:#819397;font-size:8px}.class-trend-section,.class-subject-bars,.class-student-preview{border-top:1px solid #e7eef0;padding:15px 0}.class-trend-section .trend-chart{max-height:190px}.class-subject-bars>button{text-align:left;background:0 0;border:0;grid-template-columns:45px 1fr 28px;align-items:center;gap:8px;width:100%;padding:6px 0;display:grid}.class-subject-bars span,.class-subject-bars strong{font-size:9px}.class-subject-bars i{background:#e7eeee;border-radius:6px;height:6px;overflow:hidden}.class-subject-bars i b{border-radius:inherit;height:100%;display:block}.class-student-preview>button{text-align:left;background:0 0;border:0;border-bottom:1px solid #e7eef0;align-items:center;gap:9px;width:100%;padding:9px 0;display:flex}.class-student-preview>button p{flex-direction:column;flex:1;gap:3px;margin:0;display:flex}.class-student-preview>button strong{font-size:10px}.class-student-preview>button small{color:#849699;font-size:8px}.class-student-preview>button em{color:#3c747c;font-size:12px;font-style:normal;font-weight:800}.notice-target-grid{grid-template-columns:1fr 1fr}.notice-target-preview{background:#edf6f6;border-radius:10px;flex-direction:column;justify-content:center;gap:3px;min-height:58px;padding:9px 11px;display:flex}.notice-target-preview span,.notice-target-preview small{color:#779095;font-size:8px}.notice-target-preview strong{color:#346871;font-size:10px}.boarding-building-list>button{text-align:left;background:0 0;border:0;border-bottom:1px solid #e7eef0;align-items:center;gap:11px;width:100%;padding:12px 0;display:flex}.boarding-building-list>button>span{color:#55778b;background:#eaf3f5;border-radius:11px;place-items:center;width:38px;height:38px;display:grid}.boarding-building-list p{flex-direction:column;flex:1;gap:3px;margin:0;display:flex}.boarding-building-list strong{font-size:11px}.boarding-building-list small{color:#819397;font-size:8px}.boarding-building-list em{color:#3d727a;flex-direction:column;align-items:center;font-size:14px;font-style:normal;font-weight:800;display:flex}.boarding-building-list b{color:#8a6f5d;font-size:9px}.page-title>div>p,.card-heading p,.notice-copy small,.portal-header>div,.student-main small,.module-list small,.todo-copy small,.parent-quick-grid small,.role-sidebar nav button,.sidebar nav button{font-size:max(11px,.72rem)}.card-heading h2,.section-heading h2{font-size:18px}.module-list strong,.todo-copy strong,.student-main strong,.parent-quick-grid strong{font-size:14px}.eyebrow,.section-kicker,.filter-mini,.trend-badge,.average-badge{font-size:11px}.page-title-actions,.editor-actions,.row-edit-actions{align-items:center;gap:10px;display:flex}.inline-data-editor,.student-data-editor,.master-data-editor{background:#fff;border:1px solid #dce7e3;border-radius:22px;box-shadow:0 14px 35px #2d4b4112}.inline-data-editor{grid-template-columns:1.3fr 1fr auto auto;align-items:end;gap:12px;padding:18px;display:grid}.inline-data-editor label,.student-data-editor label,.master-editor-form label{flex-direction:column;gap:7px;display:flex}.inline-data-editor label>span,.student-data-editor label>span,.master-editor-form label>span{color:#667a73;font-size:12px;font-weight:700}.inline-data-editor input,.inline-data-editor select,.student-data-editor input,.student-data-editor select,.master-editor-form input{width:100%;min-height:42px;color:var(--ink);font:inherit;background:#fbfdfc;border:1px solid #d8e4df;border-radius:11px;padding:0 12px}.admin-class-editor{grid-template-columns:repeat(4,minmax(0,1fr))}.admin-class-editor .editor-actions{grid-column:1/-1;justify-content:flex-end}.inline-data-editor input:disabled{color:#71827c;background:#f1f5f3}.student-data-editor{padding:20px}.student-editor-grid,.master-form-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.student-data-editor .editor-actions,.master-editor-form .editor-actions{justify-content:flex-end;margin-top:18px}.student-row.editable{grid-template-columns:42px minmax(0,1fr);align-items:center;padding:0;display:grid;overflow:hidden}.student-row.editable>.student-open-button,.student-row.editable>.row-edit-actions{grid-column:2}.student-row.editable>input[type=checkbox],.student-select-spacer{grid-area:1/1;place-self:center}.student-row.editable>input[type=checkbox]{width:17px;height:17px;accent-color:var(--green)}.student-open-button{width:100%;color:inherit;text-align:left;background:0 0;border:0;grid-template-columns:auto auto 1fr auto auto;align-items:center;gap:14px;padding:15px 17px 11px;display:grid}.student-row.student-placeholder{background:#f7faf8;border-color:#dfe9e4}.student-row.student-placeholder .student-open-button{color:#71827a}.student-row.student-placeholder .tag-row i:first-child{color:#668078;background:#edf3f0}.student-row.student-inactive{opacity:.72;background:#f7f7f7}.roll-number{color:#71827a;font-variant-numeric:tabular-nums;text-align:center;min-width:34px;font-weight:800}.row-edit-actions{background:#fafcfb;border-top:1px solid #edf2ef;justify-content:flex-end;padding:9px 14px}.row-edit-actions button,.master-record-row>div button{color:#47695c;background:#edf5f1;border:0;border-radius:8px;align-items:center;gap:5px;padding:6px 9px;font-size:11px;font-weight:700;display:inline-flex}.row-edit-actions button.danger,.master-record-row>div button.danger{color:#a65f5f;background:#fbefef}.empty-editor-state{color:#72857e;border:1px dashed #cfded8;border-radius:18px;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:170px;display:flex}.empty-editor-state strong{color:#2c3b36}.master-data-editor{padding:24px}.master-editor-heading{justify-content:space-between;align-items:center;gap:20px;display:flex}.master-editor-heading h2{margin:4px 0 5px;font-size:23px}.master-editor-heading span{color:#71847d;font-size:13px}.master-editor-tabs{background:#f2f6f4;border-radius:15px;grid-template-columns:repeat(2,1fr);gap:9px;margin:20px 0;padding:6px;display:grid}.master-editor-tabs button{color:#63766f;background:0 0;border:0;border-radius:11px;justify-content:center;align-items:center;gap:8px;padding:11px;display:flex}.master-editor-tabs button.active{color:var(--green);background:#fff;box-shadow:0 4px 14px #33524614}.master-editor-tabs span{background:#e7efeb;border-radius:50%;place-items:center;min-width:23px;height:23px;font-size:10px;display:grid}.master-editor-form{background:#f8fbf9;border:1px solid #cfe0d8;border-radius:17px;margin-bottom:18px;padding:18px}.master-form-grid{grid-template-columns:repeat(2,1fr)}.master-record-list{border:1px solid #e0e9e5;border-radius:16px;overflow:hidden}.master-record-head,.master-record-row{grid-template-columns:1.1fr 1fr 1.6fr .65fr .8fr;align-items:center;gap:12px;padding:12px 15px;display:grid}.master-record-head{color:#71827c;background:#f2f6f4;font-size:11px;font-weight:700}.master-record-row+.master-record-row{border-top:1px solid #e8efec}.master-record-row>span{flex-direction:column;gap:3px;display:flex}.master-record-row small,.master-record-row p,.master-record-row b,.master-record-row em{color:#71817b;font-size:11px;font-style:normal;font-weight:500}.master-record-row>div{gap:6px;display:flex}.editor-safety-note{color:#466759;background:#eef5f2;border-radius:14px;align-items:flex-start;gap:11px;margin-top:16px;padding:14px;display:flex}.editor-safety-note p{flex-direction:column;gap:4px;display:flex}.editor-safety-note span{color:#6f817a;font-size:12px}.bottom-nav{display:none}@media (width<=900px){.gateway-page{min-height:100vh;display:block}.gateway-panel{width:100%;max-width:760px;margin:0 auto;padding:40px 24px 60px}.gateway-brand{margin-bottom:42px}.gateway-art{display:none}.role-portal-shell{display:block}.role-sidebar,.portal-header{display:none}.portal-mobile-header{z-index:15;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffed;border-bottom:1px solid #dce9eb;align-items:center;gap:10px;height:64px;padding:9px 18px;display:flex;position:sticky;top:0}.portal-mobile-header>img{object-fit:cover;border-radius:50%}.portal-mobile-header>div{flex-direction:column;flex:1;gap:3px;display:flex}.portal-mobile-header strong{font-size:12px}.portal-mobile-header small{color:#7c9195;font-size:8px}.portal-content{width:100%;padding:26px 18px 104px}.portal-bottom-nav{z-index:20;padding:8px 10px calc(8px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffffff2;border-top:1px solid #dfeaec;grid-template-columns:repeat(auto-fit,minmax(48px,1fr));display:grid;position:fixed;bottom:0;left:0;right:0}.portal-bottom-nav button{color:#87999c;background:0 0;border:0;flex-direction:column;align-items:center;gap:4px;padding:4px;font-size:8px;display:flex}.portal-bottom-nav button.active{color:var(--green);font-weight:700}.prototype-shell{display:block}.sidebar,.desktop-header{display:none}.app-view{background:#f5f9f9;min-height:100vh}.mobile-brand{z-index:15;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffeb;border-bottom:1px solid #dce9eb;align-items:center;gap:10px;height:64px;padding:9px 18px;display:flex;position:sticky;top:0}.mobile-brand img{object-fit:cover;border-radius:50%;width:40px;height:40px;box-shadow:0 5px 14px #0b809024}.mobile-brand>div{flex-direction:column;flex:1;gap:3px;display:flex}.mobile-brand strong{font-size:13px}.mobile-brand small{color:#789094;font-size:9px}.content-scroll{width:100%;padding:26px 18px 104px}.bottom-nav{z-index:20;padding:8px max(10px, env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom)) max(10px, env(safe-area-inset-left));-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffffff0;border-top:1px solid #e4eae6;grid-template-columns:repeat(auto-fit,minmax(48px,1fr));display:grid;position:fixed;bottom:0;left:0;right:0}.bottom-nav button{color:#89958d;background:0 0;border:0;flex-direction:column;align-items:center;gap:4px;padding:5px;font-size:9px;display:flex}.bottom-nav button.active{color:var(--green);font-weight:700}.page-stack{gap:22px}.quick-grid{grid-template-columns:1fr 1fr}.quick-card{min-height:115px}.record-stats{grid-template-columns:1fr}.record-stats>div{padding:13px 15px}.parent-overview,.admin-stat-grid,.parent-quick-grid,.parent-subject-grid{grid-template-columns:repeat(2,1fr)}.admin-dashboard-grid,.teacher-management-layout{grid-template-columns:1fr}.teacher-detail-panel{position:static}.notice-management-grid{grid-template-columns:1fr}.notice-detail-sheet{width:min(100%,720px)}.role-permission-grid{grid-template-columns:1fr 1fr}.attendance-summary-strip{grid-template-columns:repeat(3,1fr)}.attendance-summary-strip div:nth-child(3){border-right:0}.attendance-summary-strip div:nth-child(-n+3){border-bottom:1px solid #e5edef}.attendance-student-row{grid-template-columns:24px auto 1fr}.attendance-status-options{grid-column:1/-1;margin-top:3px}.academic-radar-layout{grid-template-columns:1fr}.grade-subject-grid{grid-template-columns:repeat(2,1fr)}.student-hero{flex-wrap:wrap}.student-identity{flex:calc(100% - 90px)}.student-hero .outline-button{width:100%}.toast{justify-content:center;bottom:88px;left:18px;right:18px}.award-workspace,.organization-browser{grid-template-columns:1fr}.boarding-context-card,.boarding-context-card.parent{grid-template-columns:repeat(2,1fr)}.boarding-score-editor{grid-template-columns:1fr}.boarding-dimensions.compact,.application-type-grid{grid-template-columns:repeat(2,1fr)}.inline-data-editor{grid-template-columns:1fr 1fr}.student-editor-grid{grid-template-columns:repeat(2,1fr)}.master-record-list{overflow-x:auto}.master-record-head,.master-record-row{min-width:820px}}@media (width<=520px){.gateway-panel{padding:28px 18px 45px}.gateway-brand{margin-bottom:34px}.gateway-brand img{width:48px;height:48px}.gateway-heading h1{font-size:30px}.role-choice-grid{grid-template-columns:1fr}.role-choice{min-height:auto;padding:15px}.role-choice strong{margin-top:11px}.teacher-entry-picker{grid-template-columns:1fr}.parent-welcome,.admin-welcome{padding:21px 18px}.parent-welcome .avatar{display:none}.parent-overview,.admin-stat-grid{grid-template-columns:1fr 1fr}.parent-overview>div,.admin-stat-grid>div{padding:13px}.leave-form-grid,.notice-editor-grid{grid-template-columns:1fr;gap:0}.parent-subject-grid{grid-template-columns:1fr 1fr}.parent-grade-filters{grid-template-columns:1fr}.parent-grade-filters>*+*{border-top:1px solid #dfeaec;border-left:0;padding-top:11px}.parent-semester-list button{grid-template-columns:1fr auto}.parent-semester-list p,.parent-semester-list em{display:none}.people-view-tabs,.teacher-info-grid{grid-template-columns:1fr}.teacher-info-grid>div{border-bottom:1px solid #e6edef;border-right:0}.teacher-info-grid>div:nth-child(n+5){border-bottom:1px solid #e6edef}.teacher-info-grid>div:last-child{border-bottom:0}.teacher-work-metrics{grid-template-columns:1fr 1fr}.teacher-work-metrics>div:nth-child(2){border-right:0}.teacher-work-metrics>div:nth-child(-n+2){border-bottom:1px solid #e5edef}.role-permission-grid,.candidate-grid{grid-template-columns:1fr}.approval-list article{flex-wrap:wrap;align-items:flex-start}.approval-list p{min-width:calc(100% - 60px)}.teacher-data-grid{grid-template-columns:1fr 1fr}.teacher-data-grid>div:nth-child(2){border-right:0}.teacher-data-grid>div:nth-child(-n+2){border-bottom:1px solid #e5edef}.admin-people-summary{grid-template-columns:1fr 1fr}.admin-people-summary button:nth-child(2){border-right:0}.admin-people-summary button:nth-child(-n+2){border-bottom:1px solid #e4ecee}.people-table{overflow-x:auto}.people-head,.people-row{min-width:700px}.invite-card{flex-wrap:wrap}.invite-card>div{min-width:calc(100% - 65px)}.invite-card>button{width:100%}.attendance-session-top{flex-wrap:wrap}.session-state{margin-left:55px}.attendance-summary-strip{grid-template-columns:1fr 1fr}.attendance-summary-strip div:nth-child(2n){border-right:0}.attendance-summary-strip div:nth-child(-n+4){border-bottom:1px solid #e5edef}.attendance-verify-card{flex-direction:column;align-items:stretch}.verify-actions{justify-content:flex-start}.daily-guide{flex-wrap:wrap;align-items:flex-start}.daily-guide>div{min-width:calc(100% - 60px)}.daily-guide>button{width:100%}.daily-record-form{grid-template-columns:1fr}.daily-record-form>*{grid-column:1}.attendance-roster-head{flex-direction:column;align-items:flex-start;gap:7px}.attendance-status-options{grid-template-columns:1fr 1fr}.attendance-submit-bar{flex-direction:column;align-items:stretch}.greeting h1,.page-title h1{font-size:26px}.notice-card{padding:16px}.greeting{padding:23px 20px}.greeting:after{width:92px;height:92px;right:10px}.quick-card{padding:15px}.overview-numbers{grid-template-columns:1fr 1fr;row-gap:18px}.overview-numbers div:nth-child(2){border-right:0}.overview-numbers div:nth-child(3),.overview-numbers div:nth-child(4){border-top:1px solid var(--line);padding-top:16px}.student-row{gap:10px;padding:14px}.student-metric{display:none}.metric-strip{padding:15px 8px}.metric-strip strong{font-size:18px}.term-context-card,.grade-context{grid-template-columns:1fr}.term-context-card>*+*,.grade-context>*+*{border-top:1px solid #deeaeb;border-left:0;padding-top:12px}.profile-info-grid{grid-template-columns:1fr 1fr}.profile-info-grid div:nth-child(4n){border-right:1px solid #e7eef0}.profile-info-grid div:nth-child(2n){border-right:0}.profile-info-grid div:nth-child(n+5){border-bottom:1px solid #e7eef0}.profile-info-grid div:nth-child(n+7){border-bottom:0}.subject-score-grid{grid-template-columns:1fr}.semester-table{overflow-x:auto}.semester-head,.semester-row{min-width:650px}.content-card{padding:18px}.score-head,.score-row{grid-template-columns:1fr 62px 62px 44px;padding-left:13px;padding-right:13px}.modal-backdrop{align-items:end;padding:0}.modal-sheet{border-radius:25px 25px 0 0;max-height:92vh}.notice-detail-sheet{border-radius:24px 24px 0 0;width:100%;max-height:94vh;padding:18px 18px 24px}.notice-meta-grid,.notice-meta-grid.compact{grid-template-columns:1fr 1fr}.notice-reader-footer,.admin-notice-actions{flex-direction:column;align-items:stretch}.notice-reader-footer .primary-button,.admin-notice-actions>button{width:100%}.notice-status-summary{grid-template-columns:repeat(3,1fr)}.notice-status-summary button:nth-child(3){border-right:0}.notice-status-summary button:nth-child(-n+3){border-bottom:1px solid #e6edef}.notice-editor-actions{flex-direction:column;align-items:stretch}.notice-editor-actions>*,.notice-editor-actions .upload-button{justify-content:center;width:100%}.parent-binding-page{padding:18px}.parent-binding-card{padding:22px 18px}.binding-flow,.award-flow,.boarding-context-card,.boarding-context-card.parent,.boarding-score-hero,.award-form-grid,.notice-target-grid{grid-template-columns:1fr}.boarding-context-card>div+div,.boarding-context-card.parent>div+div{border-top:1px solid #deeaeb;border-left:0;padding-top:12px;padding-left:0}.boarding-dimensions,.boarding-dimensions.compact,.boarding-editor-list,.application-type-grid{grid-template-columns:1fr}.teacher-attendance-summary,.organization-summary,.class-metric-grid{grid-template-columns:repeat(2,1fr)}.grade-column,.class-column,.organization-detail{padding:16px}.class-student-head,.class-student-row{min-width:560px}.class-student-list{overflow-x:auto}.boarding-building-list article{grid-template-columns:1fr auto}.boarding-building-list article>b{display:none}.page-title-actions,.master-editor-heading{flex-direction:column;align-items:stretch;width:100%}.page-title-actions button,.master-editor-heading>button{justify-content:center;width:100%}.inline-data-editor,.student-editor-grid,.master-form-grid,.class-picker-controls{grid-template-columns:1fr}.class-picker-controls>div{border-top:1px solid #dce7e3;border-left:0;padding:12px 0 0}.class-context-copy{align-items:flex-start}.class-context-copy em{display:none}.implementation-status-card>header{flex-direction:column;align-items:flex-start}.implementation-status-card>div{grid-template-columns:1fr}.inline-data-editor>button{justify-content:center;width:100%}.student-open-button{grid-template-columns:auto 1fr auto}.student-open-button .student-metric{display:none}.master-data-editor{padding:18px 14px}.master-editor-tabs{grid-template-columns:repeat(2,1fr)}.class-detail-column>header,.class-member-manager>footer{flex-direction:column;align-items:stretch}.class-header-actions,.class-list-actions,.class-member-manager>footer>div{flex-wrap:wrap}.class-header-actions>button{flex:1;justify-content:center}.member-manager-backdrop{align-items:flex-end;padding:0}.class-member-manager{border-radius:22px 22px 0 0;width:100%;max-height:94vh}.member-manager-columns{grid-template-columns:1fr;overflow-y:auto}.member-manager-columns>section{min-height:420px}.data-center-tabs{grid-template-columns:1fr 1fr}.data-center-tabs button:first-child{grid-column:1/-1}.workflow-table{overflow-x:auto}.workflow-table>div{min-width:650px}.workflow-card-list>article{grid-template-columns:auto minmax(0,1fr) auto}.workflow-card-list .workflow-actions{grid-column:2/-1}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.schedule-view-tabs{background:#eaf1f1;border-radius:16px;gap:8px;width:max-content;max-width:100%;padding:6px;display:flex;overflow:auto}.schedule-view-tabs button{color:#647879;white-space:nowrap;background:0 0;border:0;border-radius:11px;padding:11px 18px;font-weight:700}.schedule-view-tabs button.active{color:#1d6673;background:#fff;box-shadow:0 5px 18px #1e4b5017}.schedule-table-wrap{border:1px solid #dbe7e7;border-radius:16px;overflow:auto}.schedule-table{border-collapse:collapse;background:#fff;width:100%;min-width:980px}.schedule-table th,.schedule-table td{text-align:left;vertical-align:top;border-bottom:1px solid #e3ebeb;border-right:1px solid #e3ebeb;padding:12px}.schedule-table thead th{color:#486263;text-align:center;background:#f1f6f5}.schedule-table tbody th{background:#f8faf9;width:130px}.schedule-table tbody th strong,.schedule-table tbody th small{display:block}.schedule-table tbody th small{color:#849393;margin-top:5px;font-weight:500}.schedule-lesson{background:#edf6f5;border-left:4px solid #368697;border-radius:12px;min-height:72px;padding:10px}.schedule-lesson strong,.schedule-lesson span,.schedule-lesson small{display:block}.schedule-lesson span{color:#51696a;margin-top:5px;font-size:13px}.schedule-lesson small{color:#829090;margin-top:4px}.schedule-empty{text-align:center;color:#b3bebe;padding:24px;display:block}.routine-list{gap:8px;display:grid}.routine-list article{border:1px solid #e1e9e8;border-radius:13px;grid-template-columns:150px 1fr auto;align-items:center;gap:18px;padding:14px 16px;display:grid}.routine-list article>span{color:#236b78;font-weight:800}.routine-list strong,.routine-list small{display:block}.routine-list small{color:#7c8d8d;margin-top:4px}.routine-list em{color:#4e7467;background:#edf5f2;border-radius:999px;padding:5px 9px;font-size:12px;font-style:normal}.schedule-editor-toolbar{background:#fff;border:1px solid #dbe7e7;border-radius:17px;align-items:end;gap:20px;padding:18px;display:flex}.schedule-editor-toolbar label{gap:7px;min-width:260px;display:grid}.schedule-editor-toolbar label span,.schedule-editor-list label span{color:#728585;font-size:12px;font-weight:700}.schedule-editor-toolbar select,.schedule-editor-list input,.schedule-editor-list select,.routine-editor input{color:#17373d;background:#fff;border:1px solid #d6e2e1;border-radius:10px;padding:10px 12px}.schedule-editor-toolbar>div{gap:7px;display:flex;overflow:auto}.schedule-editor-toolbar>div button{white-space:nowrap;background:#f8faf9;border:1px solid #d6e2e1;border-radius:10px;padding:11px 17px}.schedule-editor-toolbar>div button.active{color:#fff;background:#2e8190;border-color:#2e8190}.schedule-editor-list>article{border-top:1px solid #e5eceb;grid-template-columns:130px 1fr 1.3fr 1fr;align-items:end;gap:12px;padding:14px 0;display:grid}.schedule-editor-list>article>div strong,.schedule-editor-list>article>div small,.schedule-editor-list label{gap:5px;display:grid}.schedule-editor-list>article>div small{color:#7c8d8d;margin-top:4px}.routine-editor article{border-top:1px solid #e5eceb;grid-template-columns:100px 100px 1fr 2fr;gap:10px;padding:9px 0;display:grid}.teacher-picker{gap:10px;margin:16px 0;display:grid}.teacher-picker>label{gap:7px;display:grid}.teacher-picker>label>div{background:#fff;border:1px solid #d6e2e1;border-radius:11px;align-items:center;gap:8px;padding:0 12px;display:flex}.teacher-picker input{outline:0;width:100%;border:0!important;padding:12px 0!important}.teacher-picker>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:230px;display:grid;overflow:auto}.teacher-picker>div button{text-align:left;background:#fff;border:1px solid #dce7e6;border-radius:12px;align-items:center;gap:10px;padding:11px;display:flex}.teacher-picker>div button.active{background:#eef7f7;border-color:#2e8190}.teacher-picker>div button>span{color:#287584;background:#e4f0f0;border-radius:9px;place-items:center;width:32px;height:32px;font-weight:800;display:grid}.teacher-picker>div button p{flex:1}.teacher-picker>div button strong,.teacher-picker>div button small{display:block}.teacher-picker>div button small{color:#758787;margin-top:3px}.leave-report-field{gap:7px;display:grid}.leave-report-field textarea{resize:vertical;width:100%;font:inherit;border:1px solid #d6e2e1;border-radius:12px;padding:12px}.leave-approval-workspace{min-height:170px}.leave-report-detail{gap:18px;display:grid}.leave-report-detail>header,.leave-report-detail>footer{justify-content:space-between;align-items:center;gap:10px;display:flex}.leave-report-detail dl{border:1px solid #dfe9e8;border-radius:13px;grid-template-columns:repeat(2,1fr);margin:0;display:grid;overflow:hidden}.leave-report-detail dl div{border-bottom:1px solid #e4eceb;border-right:1px solid #e4eceb;padding:12px}.leave-report-detail dt{color:#7a8b8c;font-size:12px}.leave-report-detail dd{margin:5px 0 0;font-weight:700}.leave-report-detail>section{background:#f4f7f4;border-radius:13px;padding:16px}.leave-report-detail>section p{color:#4f6161;margin:9px 0 0;line-height:1.8}.leave-report-detail .reject{color:#a34d43;background:#fff4f2;border:1px solid #e1aaa2;border-radius:10px;padding:10px 15px}@media (width<=900px){.routine-list article{grid-template-columns:105px 1fr}.routine-list article em{display:none}.schedule-editor-toolbar{flex-direction:column;align-items:stretch}.schedule-editor-toolbar label{min-width:0}.schedule-editor-list>article{grid-template-columns:1fr 1fr}.schedule-editor-list>article>div{grid-column:1/-1}.routine-editor article{grid-template-columns:1fr 1fr}.routine-editor article input:nth-child(n+3){grid-column:1/-1}.teacher-picker>div,.leave-report-detail dl{grid-template-columns:1fr}.schedule-view-tabs{width:100%}}.teacher-scope-edit-button{color:#245f67;text-align:left;background:#eef7f5;border:1px solid #bfd7d5;border-radius:14px;align-items:center;gap:12px;width:100%;padding:14px 16px;display:flex}.teacher-scope-edit-button>span{flex:1;gap:4px;display:grid}.teacher-scope-edit-button small{color:#718585;font-weight:500}.teacher-scope-modal{background:#fff;border-radius:22px;flex-direction:column;gap:16px;width:min(900px,94vw);max-height:88vh;padding:24px;display:flex;box-shadow:0 26px 80px #14363b33}.teacher-scope-modal>header,.teacher-scope-modal>footer{justify-content:space-between;align-items:center;gap:16px;display:flex}.teacher-scope-modal>header span{color:#708283}.teacher-scope-modal>footer p{color:#637879;align-items:center;gap:7px;display:flex}.teacher-scope-modal>footer>div{gap:8px;display:flex}.teacher-scope-groups{gap:14px;padding-right:5px;display:grid;overflow:auto}.teacher-scope-groups>section{border:1px solid #dce7e6;border-radius:15px;overflow:hidden}.teacher-scope-groups>section>div:first-child{background:#f2f6f5;justify-content:space-between;padding:12px 14px;display:flex}.teacher-scope-groups>section>div:last-child{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:12px;display:grid}.teacher-scope-groups label{border:1px solid #dfe8e7;border-radius:11px;align-items:center;gap:9px;padding:11px;display:flex}.teacher-scope-groups label.selected{background:#edf7f6;border-color:#398895}.teacher-scope-groups label>span{flex:1;gap:3px;display:grid}.teacher-scope-groups label small{color:#7e8e8e}.teacher-scope-groups label em{color:#287381;font-size:11px;font-style:normal}.gateway-enter:disabled{opacity:.48;cursor:not-allowed}.exam-creator-card{background:linear-gradient(135deg,#f5faf9,#eef6f4);border:1px solid #cddfdd;border-radius:18px;padding:20px}.exam-creator-card>div{grid-template-columns:220px minmax(280px,1fr) auto;align-items:end;gap:12px;display:grid}.exam-creator-card label{gap:7px;display:grid}.exam-creator-card label span{color:#687c7c;font-size:12px;font-weight:700}.exam-creator-card input,.exam-creator-card select{width:100%;font:inherit;background:#fff;border:1px solid #cfdedc;border-radius:11px;padding:11px 12px}.exam-creator-card>p{color:#647979;align-items:center;gap:7px;margin:13px 0 0;font-size:13px;display:flex}.teacher-exam-list>div:last-child{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.teacher-exam-list>div:last-child>button{text-align:left;background:#fff;border:1px solid #dce7e6;border-radius:13px;align-items:center;gap:11px;padding:14px;display:flex}.teacher-exam-list>div:last-child>button.active{background:#eef7f6;border-color:#338392}.teacher-exam-list button>span{color:#277684;background:#e7f1f1;border-radius:10px;place-items:center;width:36px;height:36px;display:grid}.teacher-exam-list button p{flex:1;gap:4px;display:grid}.teacher-exam-list button small{color:#788989}.teacher-exam-list em,.exam-top em{border-radius:999px;padding:5px 9px;font-size:12px;font-style:normal}.teacher-exam-list em.draft,.exam-top em.draft{color:#9c6727;background:#fff2de}.teacher-exam-list em.published,.exam-top em.published{color:#3c7650;background:#e8f5e9}.exam-publish-actions{justify-content:flex-end;gap:10px;display:flex}.exam-publish-actions button:disabled{opacity:.5;cursor:not-allowed}.published-exam-card>div:last-child{gap:8px;display:grid}.published-exam-card article{border:1px solid #e0e9e8;border-radius:12px;align-items:center;gap:12px;padding:13px;display:flex}.published-exam-card article>span{color:#267484;background:#e9f3f3;border-radius:10px;place-items:center;width:36px;height:36px;display:grid}.published-exam-card article p{flex:1;gap:4px;display:grid}.published-exam-card article small{color:#788989}.published-exam-card article b{color:#1f6571;font-size:22px}@media (width<=900px){.teacher-scope-modal{border-radius:22px 22px 0 0;width:100%;max-height:94vh}.teacher-scope-backdrop{align-items:flex-end;padding:0}.teacher-scope-modal>header,.teacher-scope-modal>footer{flex-direction:column;align-items:stretch}.teacher-scope-modal>footer>div{width:100%}.teacher-scope-modal>footer button{flex:1}.teacher-scope-groups>section>div:last-child,.exam-creator-card>div,.teacher-exam-list>div:last-child{grid-template-columns:1fr}.exam-publish-actions{flex-direction:column}.exam-publish-actions button{justify-content:center;width:100%}}.shared-exam-list{gap:9px;display:grid}.shared-exam-list>button,.published-exam-card>div:last-child>button{text-align:left;background:#fff;border:1px solid #dce8e7;border-radius:13px;align-items:center;gap:12px;width:100%;padding:13px;display:flex}.shared-exam-list>button:hover,.published-exam-card>div:last-child>button:hover{background:#f3f9f8;border-color:#8ebbbc}.shared-exam-list>button>span,.published-exam-card button>span{color:#267483;background:#e8f3f2;border-radius:10px;place-items:center;width:36px;height:36px;display:grid}.shared-exam-list p,.published-exam-card button p{flex:1;gap:4px;display:grid}.shared-exam-list small,.published-exam-card button small{color:#768989}.shared-exam-list b,.published-exam-card button b{color:#1e6672;font-size:18px}.shared-exam-list em{border-radius:999px;padding:5px 8px;font-size:12px;font-style:normal}.class-exam-center{border:1px solid #dce7e6;border-radius:17px;padding:20px}.exam-detail-backdrop{z-index:140}.exam-detail-modal{background:#fff;border-radius:22px;flex-direction:column;gap:18px;width:min(940px,94vw);min-width:0;max-height:90vh;padding:24px;display:flex;overflow-y:auto;box-shadow:0 28px 90px #1231363d}.exam-detail-modal>header,.exam-detail-modal>footer{justify-content:space-between;align-items:center;gap:18px;min-width:0;display:flex}.exam-detail-modal>header>div,.exam-detail-modal>footer>*{min-width:0}.exam-detail-modal>header span{color:#718484}.exam-detail-modal>header h2,.exam-detail-modal>header span,.exam-detail-modal>footer p{overflow-wrap:anywhere}.exam-detail-meta{border:1px solid #dce7e6;border-radius:14px;grid-template-columns:repeat(6,minmax(0,1fr));display:grid;overflow:hidden}.exam-detail-meta>div{border-right:1px solid #e4eceb;gap:5px;min-width:0;padding:13px;display:grid}.exam-detail-meta>div:last-child{border-right:0}.exam-detail-meta span{color:#7a8b8b;font-size:12px}.exam-detail-meta strong{overflow-wrap:anywhere;min-width:0;font-size:18px}.exam-roster{border:1px solid #dce7e6;border-radius:14px;min-height:0;overflow:auto}.exam-roster>div:first-child,.exam-roster>article{grid-template-columns:1.4fr 1fr 1fr .6fr;align-items:center;gap:12px;padding:12px 14px;display:grid}.exam-roster>div:first-child{color:#667a7b;background:#eff5f4;font-size:12px;font-weight:700;position:sticky;top:0}.exam-roster>article{border-top:1px solid #e5eceb}.exam-roster>article>span{align-items:center;gap:9px;display:flex}.exam-roster small{color:#6f8182}.exam-roster b{color:#1f6874}.exam-detail-modal>footer p{color:#637879;align-items:center;gap:7px;display:flex}.parent-invite-card{background:linear-gradient(135deg,#f1faf7,#f7fbf4);border-color:#b9d6cf}.people-search-empty{text-align:center;color:#788a8a;background:#fff;border:1px dashed #cbdada;border-radius:14px;grid-column:1/-1;padding:34px}@media (width<=900px){.exam-detail-backdrop{align-items:flex-end;padding:0}.exam-detail-modal{border-radius:22px 22px 0 0;width:100%;max-height:94vh}.exam-detail-meta{grid-template-columns:repeat(2,1fr)}.exam-detail-meta>div{border-bottom:1px solid #e4eceb}.exam-detail-modal>header,.exam-detail-modal>footer{flex-direction:column;align-items:stretch}.exam-roster>div:first-child,.exam-roster>article{min-width:640px}.shared-exam-list>button{align-items:flex-start}.shared-exam-list em{display:none}}.custom-exam-score-focus{background:linear-gradient(135deg,#f1f9f8,#f9fbf4);border:1px solid #bcd8d6;border-radius:16px;align-items:center;gap:16px;padding:20px;display:flex}.custom-exam-score-focus>i{color:#fff;border-radius:15px;place-items:center;width:58px;height:58px;font-size:20px;font-style:normal;font-weight:800;display:grid}.custom-exam-score-focus>div{flex:1;gap:4px;display:grid}.custom-exam-score-focus>div small,.custom-exam-score-focus>div span{color:#6f8282}.custom-exam-score-focus>div strong{color:#174f59;font-size:30px}.custom-exam-score-focus>button{white-space:nowrap}@media (width<=700px){.custom-exam-score-focus{flex-wrap:wrap;align-items:flex-start}.custom-exam-score-focus>button{justify-content:center;width:100%}}.system-health-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;display:grid}.system-health-grid article{background:#fff;border:1px solid #d9e6e5;border-radius:15px;align-items:center;gap:13px;padding:18px;display:flex}.system-health-grid article>svg{color:#277987}.system-health-grid span,.system-health-grid small,.system-health-grid strong{display:block}.system-health-grid small{color:#758888}.system-health-grid strong{color:#193d43;white-space:normal;margin-top:4px}.settings-tabs{background:#eaf1f0;border-radius:15px;gap:8px;width:max-content;max-width:100%;padding:6px;display:flex;overflow:auto}.settings-tabs button{color:#637878;white-space:nowrap;background:0 0;border:0;border-radius:10px;align-items:center;gap:7px;padding:11px 17px;font-weight:700;display:flex}.settings-tabs button.active{color:#246e79;background:#fff;box-shadow:0 5px 16px #20494e14}.security-capability-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.security-capability-grid article{background:#fff;border:1px solid #dce7e6;border-radius:15px;gap:13px;padding:19px;display:flex}.security-capability-grid article>svg{color:#347f70;flex:none}.security-capability-grid article div{gap:6px;display:grid}.security-capability-grid article span{color:#687c7c;line-height:1.65}.audit-center,.version-center{gap:18px;display:grid}.audit-table{border:1px solid #dce7e6;border-radius:14px;overflow:auto}.audit-table>div,.audit-table>article{grid-template-columns:190px 170px minmax(280px,1fr) 180px;align-items:center;gap:14px;min-width:880px;padding:12px 15px;display:grid}.audit-table>div{color:#6d8080;background:#eef4f3;font-size:12px;font-weight:700}.audit-table>article{border-top:1px solid #e4eceb}.audit-table time,.audit-table small{color:#788;font-size:12px}.audit-table article>span{gap:4px;display:grid}.audit-table em{color:#2e717b;font-style:normal}.version-list{gap:9px;display:grid}.version-list article{border:1px solid #dce7e6;border-radius:13px;align-items:center;gap:12px;padding:13px;display:flex}.version-list article>span{color:#267483;background:#e8f3f2;border-radius:10px;place-items:center;width:38px;height:38px;display:grid}.version-list article p{flex:1;gap:4px;display:grid}.version-list article small{color:#748686}.version-list article em{color:#667a7b;font-style:normal}.version-list button{justify-content:center;min-width:116px}.version-list button:disabled{opacity:.55;cursor:not-allowed}.system-empty{text-align:center;color:#788a8a;padding:28px}.audit-table>.system-empty{min-width:0}.parent-binding-row{cursor:default}.binding-review-actions{gap:6px;display:flex!important}.binding-review-actions button{color:#397553;background:#e9f5ed;border:0;border-radius:8px;padding:7px 10px;font-weight:700}.binding-review-actions button.reject{color:#a65148;background:#fff0ed}.binding-review-actions small{line-height:1.5}.people-head,.people-row,.people-head{font-size:12px}.people-row strong,.people-row b{font-size:13px}.people-row small,.people-row em{font-size:11px}.parent-registration-lookup{background:#fff;border:1px solid #d9e6e2;border-radius:18px;gap:16px;padding:20px;display:grid}.registration-picker{grid-template-columns:minmax(150px,.7fr) minmax(180px,.9fr) minmax(280px,1.4fr) minmax(240px,1.2fr);align-items:end;gap:12px;display:grid}.registration-picker>label{gap:7px;min-width:0;display:grid}.registration-picker label>span{color:#677b74;font-size:12px;font-weight:700}.registration-picker select,.registration-picker input{width:100%;height:44px;font:inherit;color:var(--ink);background:#fbfdfc;border:1px solid #d4e1dd;border-radius:11px;padding:0 12px}.registration-picker select:disabled{opacity:.55}.registration-search>div{gap:7px;display:flex}.registration-search input{min-width:0}.registration-search button{white-space:nowrap;height:44px}.registration-result{background:#f5faf8;border:1px solid #bcd8d0;border-radius:15px;gap:14px;padding:17px;display:grid}.registration-result>header{justify-content:space-between;align-items:center;gap:14px;display:flex}.registration-result header>div{gap:4px;display:grid}.registration-result header small,.registration-result header span{color:#70837c}.registration-result header strong{font-size:21px}.registration-result header em{color:#397256;background:#e3f2e9;border-radius:999px;padding:6px 10px;font-size:12px;font-style:normal;font-weight:800}.registration-result dl{border:1px solid #dce8e4;border-radius:12px;grid-template-columns:repeat(2,minmax(0,1fr));margin:0;display:grid;overflow:hidden}.registration-result dl>div{border-bottom:1px solid #e2ebe8;border-right:1px solid #e2ebe8;padding:12px}.registration-result dt{color:#768880;font-size:12px}.registration-result dd{overflow-wrap:anywhere;margin:5px 0 0;font-weight:750}.registration-result footer{justify-content:flex-end;gap:8px;display:flex}@media (width<=1000px){.system-health-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=1100px){.registration-picker{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=700px){.system-health-grid,.security-capability-grid,.registration-picker,.registration-result dl{grid-template-columns:1fr}.settings-tabs{width:100%}.settings-tabs button{flex:1;justify-content:center}.version-center .card-heading{flex-direction:column;align-items:stretch}.version-list article{flex-wrap:wrap;align-items:flex-start}.version-list article p{min-width:calc(100% - 52px)}.version-list article em{margin-left:50px}.version-list article button{flex:1}.registration-search>div,.registration-result>header,.registration-result footer{flex-direction:column;align-items:stretch}.registration-result footer button{justify-content:center}}.student-directory-search-card{background:#fff;border:1px solid #dbe7e4;border-radius:17px;grid-template-columns:minmax(300px,2fr) minmax(190px,.8fr) auto auto;align-items:end;gap:14px;padding:18px;display:grid;box-shadow:0 8px 24px #2048400d}.student-directory-search-card>label{gap:7px;min-width:0;display:grid}.student-directory-search-card>label>span,.directory-roster header label>span{color:#657972;font-size:12px;font-weight:700}.student-directory-search-card input,.student-directory-search-card select,.directory-roster header select{width:100%;height:44px;color:var(--ink);font:inherit;background:#fbfdfc;border:1px solid #d5e2de;border-radius:11px;padding:0 38px 0 12px}.student-directory-search-card .search-box{position:relative}.student-directory-search-card .search-box svg{z-index:1;pointer-events:none;position:absolute;top:50%;left:13px;transform:translateY(-50%)}.student-directory-search-card .search-box input{padding-left:40px}.directory-loading,.directory-error{color:#647a73;background:#fff;border:1px solid #dbe7e4;border-radius:16px;justify-content:center;align-items:center;gap:10px;min-height:110px;padding:24px;display:flex}.directory-error{color:#955443;background:#fff8f6;border-color:#ebd0ca;min-height:auto}.directory-error .text-button{margin-left:auto}.grade-directory{gap:20px;display:grid}.grade-directory>section{background:#fff;border:1px solid #dbe7e4;border-radius:18px;overflow:hidden}.grade-directory>section>header{background:#f7faf9;border-bottom:1px solid #e5ece9;justify-content:space-between;align-items:center;gap:16px;padding:17px 19px;display:flex}.grade-directory header h2,.grade-directory header p{margin:0}.grade-directory header h2{font-size:18px}.grade-directory header p{color:#74877f;margin-top:4px;font-size:12px}.grade-directory header>strong{color:#326f68}.directory-class-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:16px;display:grid}.directory-class-grid>button{min-width:0;color:inherit;text-align:left;background:#fff;border:1px solid #dfe9e6;border-radius:14px;grid-template-columns:auto 1fr auto;align-items:center;gap:11px;padding:15px;display:grid}.directory-class-grid>button:hover{background:#f3f9f7;border-color:#8ebbb2;transform:translateY(-1px)}.directory-class-icon{color:#31776f;background:#e8f3f0;border-radius:11px;place-items:center;width:38px;height:38px;display:grid}.directory-class-grid button>div{gap:5px;min-width:0;display:grid}.directory-class-grid small{color:#71837d;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.directory-class-grid p{flex-wrap:wrap;gap:5px;margin:3px 0 0;display:flex}.directory-class-grid em{color:#58736b;background:#f0f5f3;border-radius:7px;padding:4px 6px;font-size:10px;font-style:normal}.directory-roster{gap:14px;display:grid}.directory-roster>header{background:#fff;border:1px solid #dbe7e4;border-radius:16px;grid-template-columns:auto 1fr minmax(180px,.3fr);align-items:end;gap:16px;padding:17px;display:grid}.directory-roster header>div h2,.directory-roster header>div p{margin:0}.directory-roster header>div p{color:#70827c;margin-top:5px;font-size:12px}.directory-roster header>label{gap:6px;display:grid}.view-profile-label{color:#34766e;white-space:nowrap;font-size:12px;font-weight:700}.student-profile-page{max-width:1180px;margin:0 auto}.profile-back-button{width:max-content}.student-profile-hero{background:linear-gradient(135deg,#f2f9f7,#fff);border:1px solid #d7e5e1;border-radius:20px;align-items:center;gap:17px;padding:22px;display:flex}.student-profile-hero>div{flex:1}.student-profile-hero h1,.student-profile-hero p{margin:0}.student-profile-hero h1{margin:4px 0;font-size:28px}.student-profile-hero>div>span{color:#667a73}.record-badge{color:#3c785b;background:#e6f3ec;border-radius:999px;padding:7px 11px;font-size:12px;font-style:normal;font-weight:800}.record-badge.placeholder{color:#687b74;background:#eef2f0}.record-badge.inactive{color:#846d6d;background:#f1eeee}.profile-info-grid,.profile-module-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.profile-info-grid>article,.profile-module-grid>article{background:#fff;border:1px solid #dce7e4;border-radius:16px;padding:18px}.profile-info-grid>article>strong{margin-bottom:13px;display:block}.profile-info-grid dl{gap:9px;margin:0;display:grid}.profile-info-grid dl>div{border-bottom:1px solid #edf1ef;grid-template-columns:120px 1fr;gap:12px;padding-bottom:8px;display:grid}.profile-info-grid dt{color:#71837d}.profile-info-grid dd{margin:0;font-weight:700}.profile-empty{color:#81918c;text-align:center;padding:24px}.profile-score-list,.profile-history-list{gap:8px;display:grid}.profile-score-list>div,.profile-history-list>div,.profile-record{background:#f6f9f8;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.profile-score-list strong{color:#246e75;font-size:20px}.profile-record{flex-direction:column;align-items:flex-start}.profile-record span,.profile-history-list span,.profile-key-value span{color:#758780;font-size:12px}.profile-key-value{background:#f5f9f7;border-radius:12px;gap:6px;padding:16px;display:grid}.profile-key-value strong{font-size:22px}.placeholder-profile-note{background:#f8faf9;border-style:solid}@media (width<=1100px){.directory-class-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.student-directory-search-card{grid-template-columns:minmax(260px,1.5fr) minmax(180px,1fr) auto}.student-directory-search-card>button:last-child{grid-column:1/-1}}@media (width<=700px){.student-directory-search-card,.directory-roster>header,.profile-info-grid,.profile-module-grid{grid-template-columns:1fr}.student-directory-search-card>button:last-child{grid-column:auto}.directory-class-grid{grid-template-columns:1fr;padding:12px}.grade-directory>section>header,.student-profile-hero{flex-direction:column;align-items:flex-start}.directory-roster>header{align-items:stretch}.profile-info-grid dl>div{grid-template-columns:95px 1fr}.view-profile-label{display:none}}html,body{max-width:100%;overflow-x:hidden}.schedule-editor-toolbar,.notice-editor-grid,.registration-picker,.leave-form-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr));gap:12px;min-width:0;display:grid}.radar-partial-line{stroke:#39734d;stroke-width:2.4px;stroke-linecap:round}.radar-value-point{fill:#fff;stroke:#39734d;stroke-width:2px}.schedule-editor-toolbar>*,.notice-editor-grid>*,.registration-picker>*,.leave-form-grid>*{min-width:0;max-width:100%}.schedule-editor-toolbar select,.schedule-editor-toolbar input,.registration-picker select,.registration-picker input{width:100%;min-width:0}.weekday-tabs,.schedule-day-tabs,.timetable-weekdays,.schedule-grid,.workflow-table,.people-table{overscroll-behavior-inline:contain;max-width:100%;overflow-x:auto}.admin-notice-list p,.admin-notice-list strong,.admin-notice-list small,.admin-notice-preview h2,.admin-notice-body,.admin-notice-body p{overflow-wrap:anywhere;word-break:break-word;min-width:0}.teacher-management-layout,.organization-browser,.organization-browser>*{min-width:0}.schedule-grid>:first-child,.timetable-grid>:first-child{z-index:2;background:var(--surface,#fff);position:sticky;left:0}button,.primary-button,.outline-button,.danger-outline-button{white-space:nowrap}.honor-award-list article,.growth-record-list article{min-width:0}@media (width<=1366px){.notice-management-grid,.teacher-management-layout{grid-template-columns:minmax(0,1fr)}.admin-notice-preview,.teacher-detail-panel{min-width:0}}.attendance-key-metrics{flex-wrap:wrap;gap:10px;margin:12px 0;display:flex}.attendance-key-metrics span{color:#66706b;background:#f6f8f7;border-radius:12px;flex:150px;padding:10px 12px}.attendance-key-metrics strong{color:#20342b;margin-top:3px;font-size:1.15rem;display:block}.attendance-chart-scroll{max-width:100%;overflow-x:auto}.attendance-chart-scroll svg{width:100%;min-width:520px;height:250px}.attendance-chart-scroll line{stroke:#cad3ce;stroke-width:1px}.attendance-chart-legend{flex-wrap:wrap;gap:8px 14px;display:flex}.attendance-chart-legend span{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.attendance-chart-legend i{border-radius:99px;width:9px;height:9px}.profile-export-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;min-width:0;margin-left:auto;display:flex}.profile-export-actions select{min-width:150px}@media (width<=720px){.profile-export-actions{justify-content:flex-start;width:100%}}html,body,#root{max-width:100%;overflow-x:clip}.portal-main,.app-view,.portal-content,.content-scroll,.page-stack,.content-card{min-width:0}.system-toast{z-index:300;color:#914e3d;background:#fff8f4;border:1px solid #e4c9bd;border-radius:13px;align-items:center;gap:9px;max-width:min(440px,100vw - 28px);padding:13px 15px;display:flex;position:fixed;bottom:22px;right:22px;box-shadow:0 18px 55px #2c3c372e}.system-toast button{color:inherit;background:0 0;border:0;place-items:center;margin-left:auto;display:grid}.system-confirm-backdrop{z-index:310}.system-confirm-dialog{background:#fff;border-radius:20px;grid-template-columns:auto 1fr;gap:14px;width:min(460px,100vw - 28px);padding:22px;display:grid;box-shadow:0 24px 80px #18343740}.system-confirm-icon{color:#ac593e;background:#fff0e8;border-radius:12px;place-items:center;width:42px;height:42px;display:grid}.system-confirm-dialog h2,.system-confirm-dialog p{margin:0}.system-confirm-dialog p{color:#657878;white-space:pre-line;margin-top:7px;line-height:1.65}.system-confirm-dialog footer{grid-column:1/-1;justify-content:flex-end;gap:9px;display:flex}.danger-button{color:#fff;white-space:nowrap;background:#a94f47;border:1px solid #b75b52;border-radius:10px;justify-content:center;align-items:center;gap:6px;min-height:42px;padding:0 16px;font-weight:750;display:inline-flex}.schedule-editor-toolbar{grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;display:grid}.schedule-editor-toolbar label{min-width:0}.schedule-editor-toolbar:has(>div){grid-template-columns:minmax(0,1fr) auto;align-items:end}.schedule-editor-toolbar:has(>div)>div:first-child{scrollbar-gutter:stable;grid-column:1/-1;padding:2px 2px 12px;overflow-x:auto}.schedule-editor-toolbar:has(>div)>label{grid-column:1}.schedule-editor-toolbar:has(>div)>button{grid-column:2;min-width:116px;min-height:42px}.schedule-editor-toolbar:has(>div)>label:nth-of-type(2){grid-row:3}.schedule-editor-toolbar:has(>div)>label:nth-of-type(2)+button{grid-row:3}.schedule-editor-list>article label,.schedule-editor-list>article input,.schedule-editor-list>article select{width:100%;min-width:0}.schedule-editor-list .page-title-actions{flex-wrap:wrap;gap:8px;display:flex}.schedule-editor-list button{white-space:nowrap}.award-form-grid{grid-template-columns:minmax(190px,1fr) minmax(240px,1.5fr) auto;align-items:end;gap:12px;display:grid!important}.award-form-grid>label{min-width:0}.award-form-grid input,.award-form-grid select,.award-form-grid>button{width:100%;min-height:44px}.honor-list-heading{border-top:1px solid #e3ebe8;justify-content:space-between;align-items:center;gap:12px;margin:22px 0 10px;padding-top:18px;display:flex}.honor-list-heading h3,.honor-list-heading p{margin:0}.honor-list-heading p{color:#758781;margin-top:4px;font-size:12px}.honor-list-heading>span{color:#52716a;white-space:nowrap;font-weight:750}.profile-growth-list{min-height:0!important}.profile-growth-list>div{background:#fff;border:1px solid #e0e9e6;border-radius:12px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px;display:grid}.honor-award-list p{gap:4px;min-width:0;display:grid}.honor-award-list p span,.honor-award-list p small{color:#71837e;font-size:12px}.profile-growth-list button.reject{color:#a14940;white-space:nowrap;background:#fff4f2;border:1px solid #dd9e96;border-radius:9px;padding:8px 12px}.compact-empty{text-align:center;color:#7b8d88;padding:24px}.leave-application-list{gap:10px;display:grid}.leave-application-card{background:#fff;border:1px solid #dce7e4;border-radius:13px;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:14px;display:grid}.leave-application-card>div{gap:4px;display:grid}.leave-application-card p{color:#4f6360;margin:4px 0}.leave-application-card small{color:#758781}.leave-application-card>em{border-radius:999px;padding:5px 9px;font-style:normal}.leave-application-card>em.normal{color:#347054;background:#e7f4eb}.leave-application-card>em.pending{color:#9a672a;background:#fff2df}.leave-application-card>em.rejected{color:#9f4e45;background:#fff0ed}.leave-application-card>footer{gap:7px;display:flex}.teacher-notification-center{gap:9px;max-height:560px;display:grid;overflow-y:auto}.teacher-notification-center>button{text-align:left;background:#fff;border:1px solid #dce7e4;border-radius:13px;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:11px;width:100%;padding:14px;display:grid;position:relative}.teacher-notification-center>button.unread{background:#f2faf7;border-color:#b8d5cf}.teacher-notification-center p{gap:4px;display:grid}.teacher-notification-center p i{color:#556b67;text-overflow:ellipsis;white-space:nowrap;font-style:normal;overflow:hidden}.teacher-notification-center small{color:#778984}.teacher-notification-center>button.unread strong{font-weight:850}.notice-unread-dot,.pending-red-dot{background:#d4524a;border-radius:99px;width:8px;height:8px}.notification-count,.header-notice-count{color:#fff;background:#d34d48;border:2px solid #fff;border-radius:99px;place-items:center;min-width:19px;height:19px;padding:0 5px;font-size:10px;font-weight:800;display:grid;position:absolute;top:-5px;right:-7px}.header-actions>button{position:relative}.notice-view-all{color:#246f78;font-size:12px;font-weight:750}.receipt-dialog-backdrop{z-index:320}.receipt-dialog{background:#fff;border-radius:21px;flex-direction:column;gap:16px;width:min(1050px,100vw - 28px);max-height:90vh;padding:22px;display:flex;box-shadow:0 28px 90px #12313640}.receipt-dialog>header,.receipt-dialog>footer{justify-content:space-between;align-items:center;gap:12px;display:flex}.receipt-dialog h2{margin:4px 0 0}.receipt-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;display:grid}.receipt-stat-grid>div{background:#f2f7f5;border-radius:12px;gap:5px;padding:14px;display:grid}.receipt-stat-grid span{color:#6d817b;font-size:12px}.receipt-stat-grid strong{font-size:24px}.receipt-toolbar{justify-content:space-between;align-items:center;gap:12px;display:flex}.receipt-tabs{background:#edf3f1;border-radius:12px;gap:6px;padding:5px;display:flex}.receipt-tabs button{background:0 0;border:0;border-radius:8px;padding:9px 13px}.receipt-tabs button.active{color:#246f78;background:#fff;box-shadow:0 4px 12px #1e464114}.receipt-toolbar>label{border:1px solid #d7e3df;border-radius:10px;align-items:center;gap:7px;min-width:260px;padding:0 11px;display:flex}.receipt-toolbar input{border:0;outline:0;width:100%;min-width:0;height:42px}.receipt-table-scroll{border:1px solid #dce7e4;border-radius:13px;min-height:0;overflow:auto}.receipt-table{min-width:900px}.receipt-table>div{grid-template-columns:1.1fr .7fr 1.5fr 1fr 1fr .7fr;align-items:center;gap:12px;padding:12px 14px;display:grid}.receipt-table-head{z-index:1;color:#687b76;background:#edf4f2;font-size:12px;font-weight:750;position:sticky;top:0}.receipt-table>div:not(.receipt-table-head){border-top:1px solid #e5ece9}.receipt-table>div>span:first-child{gap:3px;display:grid}.receipt-table small{color:#7a8c87}.receipt-table em{font-style:normal;font-weight:750}.trend-chart{width:100%;min-height:210px;overflow:visible}.chart-value{font-variant-numeric:tabular-nums}.chart-label{font-size:10px}.quick-card{position:relative}@media (width<=1100px){.schedule-editor-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.schedule-editor-list>article{grid-template-columns:110px repeat(2,minmax(0,1fr))}.schedule-editor-list>article>label:last-child{grid-column:2/-1}.receipt-toolbar{flex-direction:column;align-items:stretch}.receipt-toolbar>label{min-width:0}.award-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.award-form-grid>button{grid-column:1/-1}}@media (width<=700px){:is(.schedule-editor-toolbar,.schedule-editor-toolbar:has(>div)){grid-template-columns:1fr}.schedule-editor-toolbar:has(>div)>label{grid-area:auto/1;width:100%}.schedule-editor-toolbar:has(>div)>button{grid-area:auto/1;width:100%}.schedule-editor-toolbar:has(>div)>label:nth-of-type(2){grid-area:auto/1;width:100%}.schedule-editor-toolbar:has(>div)>label:nth-of-type(2)+button{grid-area:auto/1;width:100%}.schedule-editor-list>article,.award-form-grid,.receipt-stat-grid{grid-template-columns:1fr}.schedule-editor-list>article>div,.schedule-editor-list>article>label:last-child,.award-form-grid>button{grid-column:auto}.leave-application-card{grid-template-columns:auto minmax(0,1fr) auto}.leave-application-card>footer{grid-column:2/-1}.receipt-dialog-backdrop{align-items:flex-end;padding:0}.receipt-dialog{border-radius:20px 20px 0 0;width:100%;max-height:94vh}.system-confirm-backdrop{align-items:flex-end;padding:0}.system-confirm-dialog{border-radius:20px 20px 0 0;width:100%}.teacher-notification-center>button{grid-template-columns:auto minmax(0,1fr) auto}.teacher-notification-center>button>em{grid-column:2}}.unified-radar-layout{grid-template-columns:minmax(240px,1fr) minmax(190px,.78fr);align-items:center;gap:20px;min-width:0;display:grid}.unified-radar-wrap{place-items:center;min-width:0;display:grid}.unified-radar{width:min(100%,360px);height:auto;display:block;overflow:visible}.unified-radar-grid,.unified-radar-axis{fill:none;stroke:#d9e5df;stroke-width:1.4px}.unified-radar-area{fill:#3e876133;stroke:#347a58;stroke-width:2.6px;stroke-linejoin:round}.unified-radar-segment{fill:none;stroke:#347a58;stroke-width:2.6px;stroke-linecap:round}.unified-radar-point{fill:#fff;stroke:#347a58;stroke-width:3px;cursor:help}.unified-radar-label{fill:#637870;font-size:12px;font-weight:650}.unified-radar-insufficient{color:#7c8e88;text-align:center;margin:-18px 0 8px;font-size:12px}.unified-radar-data{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;min-width:0;display:grid}.unified-radar-data>div{background:#f7faf9;border:1px solid #e3ebe8;border-radius:12px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 8px;min-width:0;padding:10px 12px;display:grid}.unified-radar-data span{color:#29443b;text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.unified-radar-data strong{color:#246d77;white-space:nowrap;font-size:15px}.unified-radar-data small{color:#7c8e88;white-space:nowrap;grid-column:1/-1;font-size:11px}.radar-update-meta{color:#6d817a;margin-top:12px;display:block}@media (width<=820px){.unified-radar-layout{grid-template-columns:1fr}.unified-radar{width:min(100%,330px)}.unified-radar-data{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=520px){.unified-radar-data{grid-template-columns:repeat(2,minmax(0,1fr))}.unified-radar-label{font-size:11px}.unified-radar-data>div{padding:9px 10px}}.interactive-trend-chart{gap:12px;min-width:0;display:grid}.interactive-trend-chart .chart-point{cursor:pointer;outline:none;transition:r .16s,fill .16s}.interactive-trend-chart .chart-point:hover,.interactive-trend-chart .chart-point:focus,.interactive-trend-chart .chart-point.selected{fill:#2d8491;stroke:#fff;stroke-width:3px}.chart-selected-detail{background:#f1f8f6;border:1px solid #c9dfdc;border-radius:13px;justify-content:space-between;align-items:center;gap:14px;padding:12px 15px;display:flex}.chart-selected-detail p{gap:3px;min-width:0;display:grid}.chart-selected-detail strong{overflow-wrap:anywhere}.chart-selected-detail small{color:#748682}.chart-selected-detail b{color:#246f79;white-space:nowrap;font-size:22px}.trend-subject-control{flex-wrap:wrap;align-items:end;gap:10px;display:flex}.trend-subject-control label{gap:5px;display:grid}.trend-subject-control label>span{color:#70827e;font-size:11px;font-weight:750}.trend-subject-control select{color:#27443e;background:#fff;border:1px solid #d1dfdc;border-radius:10px;min-width:170px;padding:9px 11px}.exam-boxplot-card{background:#fff;border:1px solid #dce7e4;border-radius:17px;gap:14px;padding:20px;display:grid}.boxplot-scroll{overflow-x:auto}.boxplot-scroll svg{width:100%;min-width:406px;height:150px;display:block}.boxplot-axis{stroke:#bccbc7;stroke-width:1.5px}.boxplot-whisker{stroke:#357f89;stroke-width:3px;stroke-linecap:round}.boxplot-box{fill:#dcefeb;stroke:#2f7d88;stroke-width:2px}.boxplot-median{stroke:#c56b4b;stroke-width:4px}.boxplot-summary{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.boxplot-summary span{text-align:center;background:#f2f7f5;border-radius:11px;gap:4px;padding:10px 12px;display:grid}.boxplot-summary small{color:#72847f}.boxplot-summary strong{color:#245f68;font-size:18px}.teacher-module-title .text-button{margin-bottom:12px}.module-detail-card{gap:16px;min-height:420px;display:grid}.module-detail-card>.content-card{margin:0}.teacher-scope-grade-tabs{gap:8px;max-width:100%;padding-bottom:3px;display:flex;overflow-x:auto}.teacher-scope-grade-tabs button{color:#29453f;text-align:left;background:#f8faf9;border:1px solid #dbe6e4;border-radius:12px;gap:4px;min-width:130px;padding:11px 13px;display:grid}.teacher-scope-grade-tabs button.active{color:#1f6b77;background:#eaf6f5;border-color:#398793}.teacher-scope-grade-tabs small{color:#748681}.teacher-scope-picker{background:#f8faf9;border:1px solid #dce7e5;border-radius:15px;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;min-height:170px;padding:14px;display:grid;overflow:auto}.teacher-scope-picker label{background:#fff;border:1px solid #dce6e4;border-radius:11px;align-items:center;gap:9px;min-width:0;padding:12px;display:flex}.teacher-scope-picker label.selected{background:#edf7f6;border-color:#398793}.teacher-scope-picker label>span{gap:3px;min-width:0;display:grid}.teacher-scope-picker label strong,.teacher-scope-picker label small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.teacher-scope-picker label small{color:#748681}.teacher-scope-selected{background:#f0f6f4;border-radius:12px;flex-wrap:wrap;align-items:center;gap:8px;padding:11px 13px;display:flex}.teacher-scope-selected>span{color:#687b76;font-size:12px;font-weight:750}.teacher-scope-selected em{color:#246e78;background:#fff;border-radius:999px;padding:5px 8px;font-size:12px;font-style:normal}.dorm-building-grid,.dorm-room-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.dorm-building-grid>button,.dorm-room-grid>button{color:#26423c;text-align:left;background:#fff;border:1px solid #dce7e4;border-radius:14px;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:11px;width:100%;min-width:0;padding:15px;display:grid}.dorm-building-grid>button:hover,.dorm-building-grid>button.active,.dorm-room-grid>button:hover{background:#f0f8f6;border-color:#84b7b8}.dorm-building-grid>button>span,.dorm-room-grid>button>span{color:#2b7782;background:#e8f3f1;border-radius:11px;place-items:center;width:40px;height:40px;display:grid}.dorm-building-grid p,.dorm-room-grid p{gap:4px;min-width:0;display:grid}.dorm-building-grid small,.dorm-room-grid small{color:#758782}.dorm-building-grid em,.dorm-room-grid em{color:#3c6d65;white-space:nowrap;font-style:normal;font-weight:750}.dorm-manager-list,.dorm-resident-list{gap:9px;display:grid}.dorm-manager-list article,.dorm-resident-list article{background:#fff;border:1px solid #dfe8e6;border-radius:13px;align-items:center;gap:11px;padding:13px;display:flex}.dorm-manager-list article p,.dorm-resident-list article p{flex:1;gap:4px;min-width:0;display:grid}.dorm-manager-list small,.dorm-resident-list small{color:#758782;overflow-wrap:anywhere}.dorm-manager-form{grid-template-columns:repeat(3,minmax(0,1fr)) auto}.dorm-student-assigner{grid-template-columns:minmax(0,1fr) auto}.dorm-student-assigner>small{color:#6d807b;grid-column:1/-1}.dorm-room-page{min-height:100%}.term-transition-backdrop{z-index:340}.term-transition-modal{background:#fff;border-radius:22px;flex-direction:column;gap:16px;width:min(900px,100vw - 28px);max-height:92vh;padding:24px;display:flex;overflow-y:auto;box-shadow:0 30px 90px #12313642}.term-transition-modal>header,.term-transition-modal>footer{justify-content:space-between;align-items:center;gap:12px;display:flex}.term-transition-modal>header span{color:#6d817c}.term-transition-warning,.term-confirmation-panel{color:#76591e;background:#fff8e8;border:1px solid #ead3a6;border-radius:14px;gap:12px;padding:16px;display:flex}.term-transition-warning svg,.term-confirmation-panel svg{flex:none}.term-transition-warning div,.term-confirmation-panel div{gap:6px;display:grid}.term-transition-warning p,.term-confirmation-panel p{color:#685f49;margin:0;line-height:1.7}.term-confirmation-panel{color:#275f52;background:#eef8f5;border-color:#bcdad1}.term-transition-summary{grid-template-columns:1fr auto 1.35fr;align-items:center;gap:15px;display:grid}.term-transition-summary>div,.term-transition-summary>label{background:#f8faf9;border:1px solid #dce7e4;border-radius:14px;gap:7px;padding:16px;display:grid}.term-transition-summary span,.term-transition-modal>label>span{color:#6c7f7a;font-size:12px;font-weight:750}.term-transition-summary strong{font-size:20px}.term-transition-summary small{color:#748681}.term-transition-summary select,.term-transition-modal>label>input{width:100%;font:inherit;background:#fff;border:1px solid #ceded9;border-radius:10px;padding:11px 12px}.term-confirm-check{background:#f7faf9;border:1px solid #dbe6e3;border-radius:13px;grid-template-columns:auto 1fr;align-items:flex-start;gap:10px;padding:14px;display:flex!important}.term-confirm-check input{margin-top:3px;width:auto!important}.term-archive-history{border-top:1px solid #e2eae8;gap:8px;padding-top:15px;display:grid}.term-archive-history article{background:#f4f8f6;border-radius:11px;align-items:center;gap:10px;padding:11px;display:flex}.term-archive-history article>span{color:#287580;background:#e3f0ed;border-radius:9px;place-items:center;width:34px;height:34px;display:grid}.term-archive-history p{flex:1;gap:3px;min-width:0;display:grid}.term-archive-history small{color:#72847f}.term-archive-history em{color:#416f67;font-family:monospace;font-style:normal}.term-transition-button{background:#2d7884}@media (width<=900px){.teacher-scope-picker{grid-template-columns:repeat(2,minmax(0,1fr))}.dorm-building-grid,.dorm-room-grid{grid-template-columns:1fr}.dorm-manager-form{grid-template-columns:1fr 1fr}.term-transition-backdrop{align-items:flex-end;padding:0}.term-transition-modal{border-radius:22px 22px 0 0;width:100%;max-height:95vh}.term-transition-summary{grid-template-columns:1fr}.term-transition-summary>svg{margin:auto;transform:rotate(90deg)}}@media (width<=620px){.boxplot-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-scope-picker,.dorm-manager-form,.dorm-student-assigner{grid-template-columns:1fr}.dorm-manager-list article,.dorm-resident-list article{flex-wrap:wrap;align-items:flex-start}.dorm-manager-list article button,.dorm-resident-list article button{flex:1}.dorm-building-grid>button,.dorm-room-grid>button{grid-template-columns:auto minmax(0,1fr) auto}.dorm-building-grid em,.dorm-room-grid em{grid-column:2}.term-transition-modal>header,.term-transition-modal>footer{flex-direction:column;align-items:stretch}.term-transition-modal>footer button{justify-content:center;width:100%}.chart-selected-detail{flex-direction:column;align-items:flex-start}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
