@import "https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700&display=swap";:root{color:#f8fafc;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--navy:#0b1220;--canvas:#111827;--card:#1f2937;--blue:#1677ff;--orange:#ff8a00;--white:#fff;--muted:#9ca3af;--border:#9ca3af29;--text:#f8fafc;--shadow:0 18px 45px #0208172e;background:#111827;font-family:Plus Jakarta Sans,Inter,system-ui,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}button:focus-visible,input:focus-visible{outline-offset:2px;outline:3px solid #1677ff61}*{-ms-overflow-style:none;scrollbar-width:none}::-webkit-scrollbar{width:0;height:0;display:none}.app-shell{background:var(--canvas);min-height:100vh}.sidebar{background:var(--navy);z-index:20;border-right:1px solid #ffffff0f;flex-direction:column;width:264px;padding:28px 16px 20px;display:flex;position:fixed;inset:0 auto 0 0}.sidebar-top{align-items:center;padding:0 12px 42px;display:flex}.brand-lockup{align-items:center;gap:11px;display:flex}.brand-mark{width:40px;height:40px;color:var(--navy);background:var(--orange);letter-spacing:.04em;border-radius:12px;place-items:center;font-size:12px;font-weight:700;display:grid;box-shadow:0 7px 22px #ff8a0033}.brand-lockup strong,.brand-lockup span,.profile-copy strong,.profile-copy span{display:block}.brand-lockup strong{color:var(--white);letter-spacing:-.02em;font-family:Space Grotesk,sans-serif;font-size:14px}.brand-lockup span{color:#718096;margin-top:3px;font-size:10px}.sidebar-close,.menu-button{display:none!important}.sidebar-nav{flex-direction:column;gap:5px;display:flex}.nav-section-label{color:#657286;letter-spacing:.14em;text-transform:uppercase;margin:0 12px 10px;font-size:10px;font-weight:700}.system-label{margin-top:30px}.nav-item{color:#94a3b8;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:11px;align-items:center;gap:13px;width:100%;min-height:46px;padding:0 12px;transition:all .2s;display:flex}.nav-item:hover{color:var(--white);background:#ffffff0f}.nav-item.active{color:var(--white);box-shadow:inset 3px 0 var(--blue);background:#1677ff2b;font-weight:600}.active-chevron{color:#73aaff;margin-left:auto}.sidebar-profile{border-top:1px solid #ffffff14;align-items:center;gap:10px;margin-top:auto;padding:20px 8px 0;display:flex}.avatar{color:#0d4da9;background:#b9d3ff;border-radius:50%;flex:none;justify-content:center;align-items:center;width:35px;height:35px;font-size:13px;font-weight:700;display:flex}.avatar-small{width:36px;height:36px}.profile-copy{min-width:0}.profile-copy strong{color:var(--white);font-size:12px;font-weight:600}.profile-copy span{color:#718096;margin-top:3px;font-size:11px}.profile-more,.more-button{color:#718096;cursor:pointer;background:0 0;border:0;margin-left:auto;padding:5px;display:flex}.main-content{min-height:100vh;margin-left:264px}.topbar{border-bottom:1px solid var(--border);z-index:10;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#111827e0;align-items:center;min-height:86px;padding:0 52px;display:flex;position:sticky;top:0}.topbar-overline{color:#64748b;letter-spacing:.04em;margin-bottom:5px;font-size:10px;display:block}.topbar-heading h1{color:var(--white);letter-spacing:-.035em;margin:0;font-family:Space Grotesk,sans-serif;font-size:20px}.topbar-actions{align-items:center;gap:9px;margin-left:auto;display:flex}.icon-button{border:1px solid var(--border);color:#94a3b8;cursor:pointer;background:#ffffff0a;border-radius:10px;justify-content:center;align-items:center;width:39px;height:39px;transition:all .2s;display:flex;position:relative}.icon-button:hover{color:#8cbaff;border-color:#1677ffb3}.notification-dot{background:var(--orange);border:2px solid var(--canvas);border-radius:50%;width:8px;height:8px;position:absolute;top:7px;right:8px}.topbar-user{border-left:1px solid var(--border);align-items:center;gap:10px;margin-left:12px;padding-left:21px;display:flex}.page-content{max-width:1280px;margin:0 auto;padding:48px 52px 68px}.page-header{justify-content:space-between;align-items:end;margin-bottom:31px;display:flex}.eyebrow{color:#72aaff;letter-spacing:.14em;text-transform:uppercase;margin-bottom:9px;font-size:10px;font-weight:700;display:block}.page-header h2{color:var(--white);letter-spacing:-.045em;margin:0;font-family:Space Grotesk,sans-serif;font-size:34px;line-height:1.1}.page-header p{color:var(--muted);margin:9px 0 0;font-size:13px}.primary-button,.secondary-button{cursor:pointer;border:0;border-radius:10px;align-items:center;gap:7px;min-height:42px;padding:0 16px;font-size:12px;font-weight:700;transition:all .2s;display:inline-flex}.primary-button{background:var(--blue);color:var(--white);box-shadow:0 8px 20px #1677ff33}.secondary-button{color:#8bb9ff;background:#1677ff24;margin-top:20px}.secondary-button:hover{background:#1677ff3d}.welcome-card{color:var(--white);background:linear-gradient(110deg,#174da1 0%,#145cc7 54%,#1677ff 100%);border:1px solid #7cb1ff47;border-radius:18px;justify-content:space-between;align-items:center;min-height:186px;padding:34px 41px;display:flex;position:relative;overflow:hidden;box-shadow:0 16px 36px #07327e2e}.welcome-card:after{content:"";border:1px solid #ffffff26;border-radius:50%;width:270px;height:270px;position:absolute;top:-135px;right:11%}.welcome-copy{z-index:1;max-width:590px;position:relative}.welcome-kicker{color:#b9d5ff;letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:6px;font-size:10px;font-weight:700;display:flex}.welcome-copy h2{letter-spacing:-.04em;margin:14px 0 8px;font-family:Space Grotesk,sans-serif;font-size:28px}.welcome-copy p{color:#d9e8ff;margin:0;font-size:13px;line-height:1.65}.welcome-art{width:148px;height:120px;margin-right:30px;position:relative}.welcome-art span{color:#143e82;z-index:2;background:#ffb75b;border-radius:50%;justify-content:center;align-items:center;width:76px;height:76px;font-family:Space Grotesk,sans-serif;font-size:25px;display:flex;position:absolute;top:23px;left:39px}.art-circle{border:1px solid #ffffff4d;border-radius:50%;position:absolute}.circle-one{width:115px;height:115px;top:0;right:0}.circle-two{width:55px;height:55px;top:55px;left:4px}.section-heading,.panel-heading{justify-content:space-between;align-items:end;display:flex}.section-heading{margin:40px 0 17px}.section-heading h3,.panel-heading h3{color:var(--white);letter-spacing:-.025em;margin:0;font-family:Space Grotesk,sans-serif;font-size:17px}.updated-label{color:#718096;align-items:center;gap:6px;font-size:11px;display:flex}.stats-grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.stat-card{background:var(--card);border:1px solid var(--border);border-radius:14px;min-height:148px;padding:19px 20px;transition:all .2s}.stat-card:hover{box-shadow:var(--shadow);border-color:#1677ff73;transform:translateY(-2px)}.stat-card-top{align-items:center;gap:10px;display:flex}.stat-icon{border-radius:9px;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.stat-icon.blue,.care-icon.blue{color:#75adff;background:#1677ff29}.stat-icon.orange,.care-icon.orange{color:#ffb454;background:#ff8a0029}.stat-icon.violet,.care-icon.violet{color:#b69aff;background:#8b5cf629}.stat-icon.mint{color:#6be5d2;background:#2dd4bf24}.stat-label{color:#a9b6c7;font-size:12px;font-weight:600}.stat-value{color:var(--white);letter-spacing:-.05em;margin-top:16px;font-family:Space Grotesk,sans-serif;font-size:29px;display:block}.stat-detail{color:#718096;margin-top:2px;font-size:11px;display:block}.content-panel{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:23px 24px 8px}.panel-heading{align-items:start}.panel-heading p{color:var(--muted);margin:6px 0 0;font-size:11px}.dashboard-grid,.care-grid{grid-template-columns:1.3fr .9fr;gap:16px;margin-top:32px;display:grid}.text-button{color:#76adff;cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;padding:4px;font-size:11px;font-weight:700;display:flex}.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:39px 20px;display:flex}.empty-icon{color:#76adff;background:#1677ff1f;border-radius:50%;justify-content:center;align-items:center;width:55px;height:55px;margin-bottom:14px;display:flex}.empty-state h3{color:var(--white);margin:0;font-size:14px}.empty-state p{color:var(--muted);max-width:390px;margin:7px 0 0;font-size:12px;line-height:1.6}.attendance-empty{justify-content:center;align-items:center;gap:28px;min-height:220px;display:flex}.donut{background:conic-gradient(var(--blue) 0deg, #334155 0deg);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:138px;height:138px;display:flex;position:relative}.donut:after{background:var(--card);content:"";border-radius:50%;width:104px;height:104px;position:absolute}.donut strong,.donut span{z-index:1;position:relative}.donut strong{color:var(--white);font-family:Space Grotesk,sans-serif;font-size:23px}.donut span{color:var(--muted);margin-top:3px;font-size:10px}.legend{flex-direction:column;gap:14px;display:flex}.legend span{color:#a9b6c7;font-size:11px}.legend b{color:var(--white);margin-left:16px}.dot{border-radius:50%;width:7px;height:7px;margin-right:7px;display:inline-block}.blue-dot{background:var(--blue)}.orange-dot{background:var(--orange)}.grey-dot{background:#64748b}.filter-bar{gap:10px;margin:-5px 0 22px;display:flex}.search-field{background:var(--card);border:1px solid var(--border);color:#718096;border-radius:10px;align-items:center;gap:8px;width:min(320px,100%);padding:0 13px;display:flex}.search-field input{color:var(--white);background:0 0;border:0;outline:0;width:100%;min-height:40px}.search-field input::placeholder{color:#718096}.filter-button,.filter-icon,.date-button{background:var(--card);border:1px solid var(--border);color:#a9b6c7;cursor:pointer;border-radius:10px;align-items:center;gap:20px;min-height:40px;padding:0 13px;font-size:11px;display:flex}.filter-icon{gap:0;margin-left:auto}.filter-button:hover,.filter-icon:hover,.date-button:hover{color:var(--white);border-color:#1677ff80}.table-wrap{margin:22px -24px 0}.table-row{grid-template-columns:1.2fr 1fr 1fr 1fr 32px;align-items:center;gap:15px;min-height:52px;padding:0 24px;display:grid}.table-head{border-bottom:1px solid var(--border);color:#718096;letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:700}.table-wrap>.empty-state{min-height:270px}.status-badge{border-radius:20px;padding:5px 9px;font-size:10px;font-weight:700;display:inline-flex}.date-toolbar{justify-content:space-between;align-items:center;margin:-6px 0 22px;display:flex}.date-button{gap:9px;font-weight:600}.muted-note{color:#718096;font-size:11px}.attendance-stats{grid-template-columns:repeat(3,1fr);margin-bottom:32px}.class-grid{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.class-card{background:var(--card);border:1px solid var(--border);border-radius:14px;min-height:238px;padding:23px;position:relative}.class-card-featured{background:linear-gradient(145deg,#1f2937,#17283e);border-color:#1677ff54}.class-card-icon{color:#82b6ff;background:#1677ff26;border-radius:10px;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.class-card-top{align-items:center;display:flex;position:absolute;top:20px;right:20px}.class-card h3{color:var(--white);margin:31px 0 7px;font-family:Space Grotesk,sans-serif;font-size:21px}.class-card p{color:var(--muted);margin:0;font-size:12px}.class-meta{border-top:1px solid var(--border);gap:23px;margin-top:35px;padding-top:16px;display:flex}.class-meta span{color:#a9b6c7;align-items:center;gap:6px;font-size:11px;display:flex}.class-card-dashed{text-align:center;border-style:dashed;flex-direction:column;justify-content:center;align-items:center;display:flex}.class-card-dashed h3{margin:2px 0 6px;font-size:16px}.class-card-dashed .text-button{margin-top:15px}.care-grid{grid-template-columns:1.1fr .9fr}.care-items{padding:20px 0 12px}.care-items>div{border-top:1px solid var(--border);align-items:center;gap:12px;padding:15px 0;display:flex}.care-icon{border-radius:10px;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.care-items span{flex-direction:column;flex:1;gap:4px;display:flex}.care-items strong{color:var(--white);font-size:12px}.care-items small{color:#718096;font-size:11px}.care-items b{color:#a9b6c7;font-size:16px}.announcement-list{margin-top:20px}.announcement-list .empty-state{min-height:330px}.settings-layout{grid-template-columns:230px 1fr;gap:16px;display:grid}.settings-nav{flex-direction:column;gap:5px;display:flex}.settings-link{color:#94a3b8;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:10px;padding:12px;font-size:12px;display:flex}.settings-link:hover,.settings-link.active{color:var(--white);background:#1677ff21}.settings-link.active{box-shadow:inset 3px 0 var(--blue)}.profile-form{align-items:start;gap:22px;margin:24px 0 28px;display:flex}.profile-large{width:58px;height:58px}.form-grid{flex:1;grid-template-columns:repeat(2,1fr);gap:17px;display:grid}.form-grid label{color:#94a3b8;flex-direction:column;gap:7px;font-size:11px;display:flex}.save-button{margin-left:80px}.drawer-overlay{opacity:0;pointer-events:none;z-index:19;background:#020817a6;transition:opacity .2s;position:fixed;inset:0}.drawer-overlay.visible{opacity:1;pointer-events:auto}@media (width<=1000px){.sidebar{width:232px}.main-content{margin-left:232px}.topbar,.page-content{padding-left:30px;padding-right:30px}.stats-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid,.care-grid{grid-template-columns:1fr}}@media (width<=700px){.sidebar{width:276px;transition:transform .25s;transform:translate(-100%);box-shadow:12px 0 30px #00000059}.sidebar.open{transform:translate(0)}.sidebar-close{margin-left:auto;display:flex!important}.main-content{margin-left:0}.topbar{min-height:74px;padding:0 18px}.menu-button{margin-right:13px;display:flex!important}.menu-lines,.menu-lines:before,.menu-lines:after{content:"";background:currentColor;border-radius:2px;width:16px;height:2px;display:block;position:absolute}.menu-lines:before{top:-5px}.menu-lines:after{top:5px}.search-button{display:none}.topbar-user{border:0;margin-left:4px;padding-left:5px}.topbar-user .profile-copy{display:none}.page-content{padding:34px 18px 48px}.page-header{flex-direction:column;align-items:start;gap:19px}.page-header h2{font-size:29px}.welcome-card{min-height:218px;padding:28px 24px}.welcome-art{opacity:.55;position:absolute;right:-15px}.filter-bar{flex-wrap:wrap}.search-field{flex:100%;width:100%}.filter-icon{margin-left:0}.table-wrap{overflow-x:auto}.table-row{min-width:650px}.date-toolbar{flex-direction:column;align-items:start;gap:11px}.class-grid,.settings-layout{grid-template-columns:1fr}.settings-nav{grid-template-columns:repeat(2,1fr);display:grid}.profile-form{flex-direction:column}.form-grid{width:100%}.save-button{margin-left:0}.attendance-empty{gap:15px}}@media (width<=390px){.stats-grid,.attendance-stats{grid-template-columns:1fr}.topbar-overline{display:none}.welcome-card{min-height:240px}.welcome-copy h2{font-size:24px}.form-grid,.settings-nav{grid-template-columns:1fr}}.login-page{grid-template-columns:minmax(340px,.9fr) minmax(420px,1.1fr);min-height:100vh;display:grid}.login-brand-panel{background:var(--navy);color:var(--white);padding:38px 8%;position:relative;overflow:hidden}.login-brand-panel:after{content:"";border:1px solid #1677ff4d;border-radius:50%;width:450px;height:450px;position:absolute;bottom:-190px;right:-100px}.login-back{color:#94a3b8;cursor:pointer;z-index:1;background:0 0;border:0;align-items:center;gap:8px;padding:0;font-size:12px;display:flex;position:relative}.login-brand-content{z-index:1;max-width:440px;margin:23vh auto 0;position:relative}.login-mark,.login-mobile-mark{background:var(--orange);color:var(--navy);letter-spacing:.06em;border-radius:13px;justify-content:center;align-items:center;width:48px;height:48px;font-size:13px;font-weight:700;display:flex}.login-brand-content .eyebrow{color:#72aaff;margin-top:32px}.login-brand-content h1,.login-form-wrap h2{color:var(--white);letter-spacing:-.04em;font-family:Space Grotesk,sans-serif}.login-brand-content h1{max-width:470px;margin:0;font-size:clamp(34px,4vw,54px);line-height:1.08}.login-brand-content p{color:#a9b6c7;max-width:330px;margin:20px 0 0;font-size:14px;line-height:1.7}.login-trust{color:#72aaff;align-items:center;gap:8px;margin-top:80px;font-size:11px;display:flex}.login-form-panel{background:var(--canvas);justify-content:center;align-items:center;padding:40px 8%;display:flex}.login-form-wrap{width:100%;max-width:390px}.login-form-wrap>.eyebrow{margin-bottom:12px}.login-form-wrap h2{margin:0;font-size:37px}.login-subtitle,.login-note{color:var(--muted);font-size:13px}.login-subtitle{margin:8px 0 34px}.login-form-wrap form{flex-direction:column;gap:19px;display:flex}.login-form-wrap label{color:#a9b6c7;flex-direction:column;gap:8px;font-size:12px;font-weight:600;display:flex}.login-form-wrap input[type=email],.login-form-wrap input[type=password]{background:var(--card);border:1px solid var(--border);color:var(--white);font:inherit;border-radius:8px;outline:none;min-height:46px;padding:0 13px;font-size:13px}.login-form-wrap input:focus{border-color:var(--blue);box-shadow:0 0 0 3px #1677ff24}.login-options{justify-content:space-between;align-items:center;margin-top:-3px;display:flex}.remember{flex-direction:row!important;align-items:center!important;font-weight:400!important}.forgot-button{color:#72aaff;cursor:pointer;background:0 0;border:0;font-size:11px}.login-submit{background:var(--blue);color:var(--white);cursor:pointer;border:0;border-radius:9px;min-height:46px;font-weight:700}.login-note{align-items:center;gap:7px;margin-top:25px;font-size:11px;display:flex}.login-mobile-mark{display:none}@media (width<=700px){.login-page{display:block}.login-brand-panel{display:none}.login-form-panel{min-height:100vh;padding:32px 24px}.login-mobile-mark{margin-bottom:35px;display:flex}}.login-form-topline{justify-content:space-between;align-items:center;margin-bottom:35px;display:flex}.login-form-topline .login-mobile-mark{margin:0;display:flex}.login-theme-toggle{border:1px solid var(--border);color:var(--muted);cursor:pointer;background:0 0;border-radius:8px;padding:8px 10px;font-size:11px}.login-theme-toggle:hover{border-color:var(--blue);color:var(--blue)}.login-form-wrap form{gap:16px}.login-form-wrap label,.password-field{position:relative}.password-field input{width:100%;padding-right:43px!important}.password-toggle{color:var(--muted);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;height:100%;padding:0 12px;display:flex;position:absolute;top:0;right:0}.password-toggle:hover{color:var(--blue)}.field-error{color:#e87855;font-size:10px;font-weight:500}.login-form-wrap input[aria-invalid=true]{border-color:#e87855}.login-notice{color:#76adff;background:#1677ff1a;border:1px solid #1677ff38;border-radius:8px;margin:-2px 0 0;padding:10px 11px;font-size:11px}.login-submit:disabled{cursor:wait;opacity:.7;transform:none}.theme-light .login-form-panel{background:var(--canvas)}.theme-light .login-form-wrap h2{color:#111827}.theme-light .login-form-wrap label{color:#475569}.theme-light .login-form-wrap input[type=email],.theme-light .login-form-wrap input[type=password]{color:#111827;background:#fff;border-color:#0f172a24}.theme-light .login-form-wrap input::placeholder{color:#94a3b8}.theme-light .login-subtitle,.theme-light .login-note{color:#64748b}.theme-light .remember{color:#475569!important}.theme-light .login-theme-toggle{color:#64748b;background:#fff;border-color:#0f172a24}@media (width<=700px){.login-form-topline{margin-bottom:30px}.login-form-panel{padding:28px 20px}.login-form-wrap{max-width:430px}.login-form-wrap h2{font-size:32px}}.login-page{background:var(--canvas);justify-content:center;align-items:center;min-height:100vh;padding:40px 24px;display:flex}.login-shell{width:100%;max-width:460px;margin:0 auto}.login-branding{text-align:left;justify-content:center;align-items:center;gap:12px;margin-bottom:22px;display:flex}.login-branding .login-mark{background:var(--orange);color:var(--navy);letter-spacing:.06em;border-radius:11px;justify-content:center;align-items:center;width:42px;height:42px;font-size:12px;font-weight:700;display:flex}.login-branding strong,.login-branding span{display:block}.login-branding strong{color:var(--text);letter-spacing:-.025em;font-family:Space Grotesk,sans-serif;font-size:16px}.login-branding span{color:var(--muted);margin-top:3px;font-size:10px}.login-card{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:16px;padding:34px 36px 28px}.login-card-label{color:#72aaff;letter-spacing:.12em;text-transform:uppercase;font-size:10px;font-weight:700}.login-card h1{color:var(--text);letter-spacing:-.045em;margin:0;font-family:Space Grotesk,sans-serif;font-size:31px}.login-card .login-subtitle{color:var(--muted);margin:8px 0 28px;font-size:13px}.login-card form{flex-direction:column;gap:17px;display:flex}.login-card form>label{color:var(--text);flex-direction:column;gap:8px;font-size:12px;font-weight:600;display:flex}.login-card input[type=email],.login-card input[type=password],.login-card input[type=text]{border:1px solid var(--border);color:var(--text);font:inherit;background:#0b122052;border-radius:9px;outline:none;min-height:47px;padding:0 13px;font-size:13px;transition:border-color .2s,box-shadow .2s}.login-card input:focus{border-color:var(--blue);box-shadow:0 0 0 3px #1677ff24}.login-card input::placeholder{color:var(--muted)}.login-card .password-field{width:100%}.login-card .login-options{margin-top:1px}.login-card .remember{color:var(--muted);flex-direction:row;align-items:center;gap:7px;font-size:11px;font-weight:400;display:flex}.login-card .remember input{accent-color:var(--blue)}.login-card .forgot-button{color:#76adff}.login-card .login-submit{background:var(--blue);color:var(--white);cursor:pointer;border:0;border-radius:9px;min-height:47px;font-weight:700;transition:background-color .2s,transform .2s}.login-card .login-submit:hover{background:#3188ff;transform:translateY(-1px)}.login-card .login-note{color:var(--muted);justify-content:center;align-items:center;gap:6px;margin:22px 0 18px;font-size:10px;display:flex}.login-card .login-back{color:var(--muted);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:6px;margin:0 auto;padding:4px;font-size:11px;display:flex}.login-card .login-back:hover{color:var(--blue)}.theme-light .login-card{background:#fff;border-color:#0f172a1f}.theme-light .login-card input[type=email],.theme-light .login-card input[type=password],.theme-light .login-card input[type=text]{color:#111827;background:#f8fafc;border-color:#0f172a24}.theme-light .login-card h1,.theme-light .login-card form>label{color:#111827}.theme-light .login-card .login-submit{color:#fff}@media (width<=700px){.login-page{padding:24px 16px}.login-shell{max-width:460px}.login-card{padding:27px 22px 23px}.login-card .login-form-topline{margin-bottom:24px}.login-card h1{font-size:28px}.login-card .login-subtitle{margin-bottom:23px}}.login-page{background:radial-gradient(circle at 85% 10%,#1677ff6b,#0000 48%),radial-gradient(circle at 15% 90%,#ff8a0059,#0000 48%),#0b1220;position:relative;overflow:hidden}.login-page:before{content:"";pointer-events:none;background:radial-gradient(circle at 64% 52%,#1677ff0f,#0000 48%);position:absolute;inset:0}.login-shell{z-index:1;position:relative}.login-branding{margin-bottom:24px}.login-branding .login-mark{box-shadow:0 7px 18px #ff8a0029}.login-card{background:#111827f0;border-color:#9ca3af2e;border-radius:20px;padding:38px 38px 29px;box-shadow:0 24px 70px #0208174d}.login-card .login-form-topline{margin-bottom:30px}.login-card h1{font-size:32px}.login-card input[type=email],.login-card input[type=password],.login-card input[type=text]{background:#0b122094;min-height:50px}.login-card .login-submit{box-shadow:0 8px 20px #1677ff33}.theme-light .login-card{background:#fffffff5;border-color:#0f172a1f;box-shadow:0 24px 70px #0f172a1c}.theme-light .login-card input[type=email],.theme-light .login-card input[type=password],.theme-light .login-card input[type=text]{background:#f8fafce6}@media (width<=700px){.login-page{padding:26px 16px}.login-card{border-radius:18px;padding:29px 22px 24px}.login-card h1{font-size:29px}}.app-shell{transition:background-color .2s,color .2s}.sidebar,.topbar,.content-panel,.stat-card,.class-card,.filter-button,.filter-icon,.search-field,.date-button,.form-grid input,.icon-button{transition:background-color .2s,border-color .2s,color .2s}.theme-light{--canvas:#f4f7fb;--card:#fff;--text:#111827;--white:#111827;--muted:#64748b;--border:#0f172a1f;--shadow:0 18px 45px #0f172a14}.theme-light .sidebar{background:#fff;border-right-color:#0f172a1a}.theme-light .brand-lockup strong{color:#111827}.theme-light .brand-lockup span,.theme-light .nav-section-label{color:#94a3b8}.theme-light .nav-item{color:#64748b}.theme-light .nav-item:hover{color:#0f55b8;background:#eef4ff}.theme-light .nav-item.active{color:#0f55b8;background:#e8f1ff}.theme-light .sidebar-profile{border-top-color:#0f172a1a}.theme-light .profile-copy strong{color:#111827}.theme-light .profile-copy span,.theme-light .profile-more{color:#64748b}.theme-light .topbar-heading h1,.theme-light .section-heading h3,.theme-light .panel-heading h3,.theme-light .empty-state h3,.theme-light .class-card h3{color:#111827}.theme-light .topbar-overline,.theme-light .updated-label,.theme-light .panel-heading p,.theme-light .stat-detail,.theme-light .muted-note{color:#64748b}.theme-light .icon-button,.theme-light .content-panel,.theme-light .stat-card,.theme-light .class-card,.theme-light .filter-button,.theme-light .filter-icon,.theme-light .search-field,.theme-light .date-button{background:#fff;border-color:#0f172a1f}.theme-light .icon-button{color:#64748b}.theme-light .search-field input,.theme-light .form-grid input{color:#111827}.theme-light .search-field input::placeholder{color:#94a3b8}.theme-light .table-head,.theme-light .class-meta,.theme-light .care-items>div{border-color:#0f172a1a}.theme-light .table-head,.theme-light .stat-label,.theme-light .class-meta span,.theme-light .care-items small,.theme-light .settings-link,.theme-light .form-grid label{color:#64748b}.theme-light .care-items strong{color:#111827}.theme-light .form-grid input{background:#f8fafc}.theme-light .settings-link:hover,.theme-light .settings-link.active{color:#0f55b8}.theme-light .donut:after{background:#fff}.theme-light .drawer-overlay{background:#0f172a61}.desktop-sidebar-toggle{flex:0 0 39px;justify-content:center;align-items:center;margin-right:13px;display:flex}@media (width<=700px){.desktop-sidebar-toggle{display:none}.theme-light .menu-button{background:#fff}}.sidebar{transition:transform .25s,background-color .2s,border-color .2s,color .2s}.main-content{transition:margin-left .25s}.sidebar.desktop-hidden{visibility:visible;width:264px;padding-left:16px;padding-right:16px;overflow:visible;transform:translate(-100%)}.sidebar.desktop-hidden~.main-content{margin-left:0}@media (width<=1000px) and (width>=701px){.sidebar,.sidebar.desktop-hidden{width:232px}}@media (width<=700px){.sidebar.desktop-hidden{visibility:visible;width:276px;padding:28px 16px 20px;overflow:visible;transform:translate(-100%)}.sidebar.desktop-hidden.open{transform:translate(0)}.sidebar.desktop-hidden~.main-content{margin-left:0}}.login-page,.login-page button,.login-page input{font-family:Plus Jakarta Sans,sans-serif}.login-branding{text-align:left;align-items:flex-start}.login-branding>div:last-child{flex-direction:column;gap:3px;display:flex}.login-branding strong{color:var(--muted);letter-spacing:.16em;font-family:Plus Jakarta Sans,sans-serif;font-size:11px;font-weight:600;line-height:1.2}.login-branding b{color:var(--text);letter-spacing:-.045em;white-space:nowrap;font-family:Plus Jakarta Sans,sans-serif;font-size:clamp(30px,4vw,35px);font-weight:700;line-height:1.05}.login-branding span{color:var(--muted);margin-top:2px;font-size:14px;font-weight:400;line-height:1.35}.login-card h1{letter-spacing:-.035em;font-family:Plus Jakarta Sans,sans-serif;font-size:29px;font-weight:600}.login-card .login-subtitle{font-size:14px;font-weight:400;line-height:1.55}.login-card form>label{font-size:13px;font-weight:500}.login-card input[type=email],.login-card input[type=password],.login-card input[type=text]{font-size:14px}.login-card .login-submit{font-size:15px;font-weight:600}.login-card .login-note,.login-card .login-back,.login-card-label,.login-theme-toggle,.login-card .remember,.login-card .forgot-button{font-weight:400}@media (width<=700px){.login-branding b{font-size:clamp(28px,8vw,32px)}.login-card h1{font-size:28px}.login-card .login-subtitle{font-size:14px}}.login-branding{text-align:center;flex-direction:column;align-items:center;gap:0;margin-bottom:32px;display:flex}.login-branding strong{margin-bottom:9px;font-size:13px;line-height:1.2}.login-branding b{margin-bottom:5px;font-size:clamp(32px,4vw,36px);line-height:1}.login-branding span{margin:0;font-size:14px;line-height:1.35}.login-card .login-form-topline{justify-content:flex-end;margin-bottom:24px}@media (width<=700px){.login-branding{margin-bottom:30px}.login-branding strong{font-size:12px}.login-branding b{font-size:clamp(28px,8vw,32px)}.login-branding span{font-size:13px}}.header-menu-anchor,.notification-button,.topbar-user{position:relative}.notification-button.selected,.topbar-user.selected{color:#8cbaff;border-color:#1677ffb3}.topbar-user{cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;align-items:center;gap:10px;margin-left:12px;padding:3px 8px 3px 12px;display:flex}.topbar-user:hover{background:#1677ff14}.topbar-user .profile-copy{text-align:left}.topbar-user>svg{color:#718096}.notification-badge{background:var(--orange);border:2px solid var(--canvas);color:var(--navy);border-radius:10px;justify-content:center;align-items:center;min-width:16px;height:16px;font-size:9px;font-weight:700;display:flex;position:absolute;top:-5px;right:-5px}.header-dropdown{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow);color:var(--text);z-index:30;border-radius:13px;width:310px;position:absolute;top:calc(100% + 12px);right:0}.dropdown-heading{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:17px 17px 14px;display:flex}.dropdown-heading div,.profile-menu-heading span{flex-direction:column;gap:4px;display:flex}.dropdown-heading strong,.profile-menu-heading strong{color:var(--text);font-size:13px}.dropdown-heading span,.profile-menu-heading small{color:var(--muted);font-size:10px}.dropdown-count{color:var(--orange);background:#ff8a0026;border-radius:12px;justify-content:center;align-items:center;width:22px;height:22px;font-weight:700;display:flex;font-size:10px!important}.notification-list{padding:5px 7px}.notification-item{color:var(--text);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:9px;align-items:center;gap:10px;width:100%;padding:11px 9px;display:flex}.notification-item:hover,.profile-menu-links button:hover{background:#1677ff1a}.notification-item>span:last-child{flex-direction:column;flex:1;gap:4px;display:flex}.notification-item strong{color:var(--text);font-size:11px;font-weight:600;line-height:1.35}.notification-item small{color:var(--muted);font-size:10px}.notification-icon{border-radius:8px;justify-content:center;align-items:center;width:30px;height:30px;display:flex}.notification-icon.blue,.quick-action-icon.blue{color:#76adff;background:#1677ff26}.notification-icon.orange,.quick-action-icon.orange{color:#ffb454;background:#ff8a0026}.dropdown-footer{border:0;border-top:1px solid var(--border);color:#76adff;cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:5px;width:100%;padding:13px;font-size:11px;font-weight:700;display:flex}.profile-dropdown{width:230px;padding:9px}.profile-menu-heading{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:8px 8px 13px;display:flex}.profile-menu-links{flex-direction:column;gap:2px;padding-top:7px;display:flex}.profile-menu-links button{color:var(--text);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:9px;width:100%;padding:10px 8px;font-size:11px;display:flex}.profile-menu-links button svg{color:#76adff}.profile-menu-links .logout-link{border-top:1px solid var(--border);color:#ffad58;margin-top:4px;padding-top:13px}.profile-menu-links .logout-link svg{color:var(--orange)}.quick-actions{background:var(--card);border:1px solid var(--border);border-radius:14px;margin-top:32px;padding:21px 22px 22px}.quick-actions-heading{justify-content:space-between;align-items:end;margin-bottom:17px;display:flex}.quick-actions-heading .eyebrow{margin-bottom:6px}.quick-actions-heading h3{color:var(--text);margin:0;font-family:Space Grotesk,sans-serif;font-size:17px}.quick-actions-heading>span{color:var(--muted);font-size:11px}.quick-action{border:1px solid var(--border);color:var(--text);cursor:pointer;text-align:left;background:#0b122033;border-radius:10px;align-items:center;gap:10px;min-width:0;padding:12px;transition:background-color .2s,border-color .2s,transform .2s;display:flex}.quick-action small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.quick-action-icon{border-radius:8px;flex:none;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.theme-light .header-dropdown{background:#fff;border-color:#0f172a1f}.theme-light .notification-item:hover,.theme-light .profile-menu-links button:hover,.theme-light .topbar-user:hover{background:#eef4ff}@media (width<=700px){.header-dropdown{max-width:calc(100vw - 36px);right:-4px}.notification-dropdown{width:min(310px,100vw - 36px)}.profile-dropdown{width:230px}.topbar-actions{gap:5px}.topbar-user{margin-left:2px;padding-left:4px}.topbar-user .profile-copy,.topbar-user>svg{display:none}.quick-actions{padding:18px 16px}.quick-actions-grid{grid-template-columns:repeat(2,1fr)}.quick-action{min-height:66px}.quick-actions-heading{flex-direction:column;align-items:start;gap:5px}}@media (width<=390px){.quick-actions-grid{grid-template-columns:1fr}.header-dropdown{right:-10px}.notification-dropdown{width:calc(100vw - 30px)}}.app-shell,.app-shell button,.app-shell input,.login-page,.login-page button,.login-page input,.app-shell h1,.app-shell h2,.app-shell h3,.app-shell h4,.login-page h1,.login-page h2,.login-page h3{font-family:Plus Jakarta Sans,Inter,system-ui,sans-serif}.topbar-heading h1,.page-header h2,.welcome-copy h2,.section-heading h3,.panel-heading h3,.class-card h3,.quick-actions-heading h3{font-weight:700}.panel-heading h3,.section-heading h3,.settings-link,.stat-label,.nav-item,.notification-item strong,.quick-action strong{font-weight:600}.topbar-overline,.eyebrow,.nav-section-label,.stat-detail,.panel-heading p,.page-header p,.updated-label,.profile-copy span,.brand-lockup span,.quick-action small,.dropdown-heading span,.notification-item small,.profile-menu-heading small,.quick-actions-heading>span{font-weight:400}.primary-button,.secondary-button,.text-button,.login-submit,.forgot-button,.dropdown-footer,.login-card h1{font-weight:600}.dashboard-page{color:var(--text);flex-direction:column;gap:28px;max-width:1440px;display:flex}.dashboard-header{justify-content:space-between;align-items:end;gap:24px;padding:12px 2px 4px;display:flex}.dashboard-header h2{color:var(--text);letter-spacing:-.045em;margin:8px 0 10px;font-size:clamp(30px,3vw,34px);font-weight:600;line-height:1.12}.dashboard-header p{color:var(--muted);margin:0;font-size:14px}.dashboard-header time,.dashboard-date{color:var(--muted);white-space:nowrap;font-size:13px}.dashboard-eyebrow,.dashboard-section .eyebrow{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;font-size:11px;font-weight:600}.dashboard-summary{border-bottom:1px solid var(--border);border-top:1px solid var(--border);grid-template-columns:repeat(4,1fr);display:grid}.summary-item{min-height:152px;padding:24px 24px 22px 0;position:relative}.summary-item+.summary-item{border-left:1px solid var(--border);padding-left:24px}.summary-icon{color:#72aaff;background:#1677ff1a;border-radius:10px;justify-content:center;align-items:center;width:32px;height:32px;margin-bottom:17px;display:flex}.summary-item-attention .summary-icon{color:var(--orange);background:#ff8a001a}.summary-label{color:var(--muted);margin-bottom:7px;font-size:12px;display:block}.summary-item strong{color:var(--text);letter-spacing:-.04em;font-size:30px;font-weight:700;line-height:1;display:block}.summary-item small{color:var(--muted);margin-top:9px;font-size:12px;display:block}.dashboard-main-grid{grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);gap:20px;display:grid}.dashboard-section{background:var(--card);border:1px solid var(--border);border-radius:20px;padding:25px;box-shadow:0 10px 28px #0208170f}.dashboard-section-heading{justify-content:space-between;align-items:start;gap:16px;margin-bottom:26px;display:flex}.dashboard-section h3{color:var(--text);letter-spacing:-.025em;margin:7px 0 0;font-size:19px;font-weight:600}.attendance-content{align-items:center;gap:38px;min-height:132px;display:flex}.attendance-score{flex-direction:column;flex:0 0 145px;display:flex}.attendance-score strong{color:var(--text);letter-spacing:-.06em;font-size:48px;font-weight:700;line-height:1}.attendance-score span{color:var(--muted);margin-top:9px;font-size:12px}.attendance-details{flex:1;min-width:0}.attendance-progress{background:#9ca3af26;border-radius:99px;height:8px;overflow:hidden}.attendance-progress span{background:var(--blue);border-radius:inherit;height:100%;display:block}.attendance-breakdown{flex-wrap:wrap;gap:18px;margin-top:22px;display:flex}.attendance-breakdown span{color:var(--muted);align-items:center;gap:7px;font-size:12px;display:flex}.attendance-breakdown strong{color:var(--text);font-weight:600}.attendance-dot{background:var(--blue);border-radius:50%;width:7px;height:7px}.attendance-dot.absent{background:#94a3b8}.attendance-dot.late{background:var(--orange)}.activity-list{flex-direction:column;display:flex}.activity-item{grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:57px;display:grid}.activity-item+.activity-item{border-top:1px solid var(--border)}.activity-icon{color:#72aaff;background:#1677ff1a;border-radius:9px;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.activity-icon.orange{color:var(--orange);background:#ff8a001a}.activity-item strong,.activity-item small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.activity-item strong{color:var(--text);font-size:12px;font-weight:600}.activity-item small,.activity-item time{color:var(--muted);font-size:11px}.activity-item small{margin-top:3px}.activity-item time{white-space:nowrap}.quick-actions{margin-top:0}.quick-actions-grid{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.quick-action{border:1px solid var(--border);color:var(--text);cursor:pointer;text-align:left;background:0 0;border-radius:12px;align-items:center;gap:10px;min-height:66px;padding:11px 12px;transition:background-color .2s,border-color .2s,transform .2s;display:flex}.quick-action:hover{background:#1677ff0f;border-color:#1677ff66;transform:translateY(-1px)}.quick-action-primary{background:var(--blue);border-color:var(--blue);color:var(--white)}.quick-action-primary:hover{background:#3188ff;border-color:#3188ff}.quick-action-icon{color:var(--blue);flex:none;justify-content:center;align-items:center;display:flex}.quick-action-primary .quick-action-icon{color:var(--white)}.quick-action>span:nth-child(2){flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.quick-action strong{color:inherit;white-space:nowrap;font-size:12px}.quick-action small{color:var(--muted);white-space:nowrap;font-size:10px}.quick-action-primary small{color:#ffffffc7}.quick-action>svg{color:var(--muted);flex:none}.quick-action-primary>svg{color:#fffc}.theme-light .dashboard-section{background:#fff;box-shadow:0 10px 28px #0f172a0b}.theme-light .quick-action-primary{background:var(--blue)}.theme-light .summary-icon,.theme-light .activity-icon{background:#1677ff14}@media (width<=1000px){.dashboard-summary{grid-template-columns:repeat(2,1fr)}.summary-item:nth-child(3){border-left:0;padding-left:0}.summary-item:nth-child(n+3){border-top:1px solid var(--border)}.summary-item:nth-child(4){padding-left:24px}.dashboard-main-grid{grid-template-columns:1fr}.quick-actions-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=700px){.dashboard-page{gap:22px}.dashboard-header{flex-direction:column;align-items:start;gap:16px;padding-top:2px}.dashboard-header h2{font-size:29px}.dashboard-summary{grid-template-columns:1fr 1fr}.summary-item{min-height:140px;padding:20px 16px 18px 0}.summary-item+.summary-item{padding-left:16px}.summary-item:nth-child(3){padding-left:0}.summary-item:nth-child(4){padding-left:16px}.dashboard-section{border-radius:17px;padding:20px 18px}.dashboard-section-heading{margin-bottom:22px}.attendance-content{flex-direction:column;align-items:start;gap:25px}.attendance-score{flex-basis:auto}.attendance-score strong{font-size:42px}.attendance-details{width:100%}.activity-item{grid-template-columns:30px minmax(0,1fr);gap:10px;padding:8px 0}.activity-item time{grid-column:2;margin-top:-7px}.quick-actions-grid{grid-template-columns:1fr}.quick-action{min-height:60px}}.sidebar{background:var(--navy);border-right-color:#9ca3af1f;box-shadow:12px 0 40px #02081714}.brand-mark{border-radius:13px}.nav-section-label{color:#718096;letter-spacing:.12em}.nav-item{border-radius:12px;min-height:44px}.nav-item.active{background:#1677ff24;box-shadow:inset 3px 0 #5b9cff}.topbar{background:color-mix(in srgb, var(--canvas) 92%, transparent);border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);min-height:82px;padding:0 38px}.topbar-heading h1{color:var(--text);letter-spacing:-.03em;font-size:21px;font-weight:600}.topbar-overline{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:10px}.icon-button,.topbar-user{border-radius:11px}.icon-button:hover,.topbar-user:hover{background:#1677ff14}.page-header{align-items:end;gap:26px;margin-bottom:34px}.page-header h2{color:var(--text);letter-spacing:-.045em;margin-top:8px;font-size:clamp(28px,3vw,32px);font-weight:600}.page-header p{color:var(--muted);margin-top:10px;font-size:14px}.eyebrow{color:var(--muted);letter-spacing:.11em;text-transform:uppercase;font-size:10px;font-weight:600}.primary-button,.secondary-button,.text-button,.filter-button,.date-button{border-radius:11px;min-height:42px;transition:background-color .2s,border-color .2s,color .2s,transform .2s}.primary-button{background:var(--blue);border:1px solid var(--blue);box-shadow:0 7px 18px #1677ff29}.primary-button:hover{background:#3188ff;transform:translateY(-1px)}.secondary-button,.text-button{border:1px solid var(--border);background:0 0}.secondary-button:hover,.text-button:hover{color:var(--blue);background:#1677ff12;border-color:#1677ff61}.text-button{border:0;min-height:30px;padding:4px 0}.content-panel,.stat-card,.class-card{background:var(--card);border:1px solid var(--border);border-radius:20px;box-shadow:0 10px 28px #0208170e}.content-panel{padding:26px}.panel-heading{align-items:start;margin-bottom:24px}.panel-heading h3{color:var(--text);letter-spacing:-.025em;font-size:19px;font-weight:600}.panel-heading p{color:var(--muted);margin-top:7px;font-size:12px}.panel-status{color:var(--muted);align-items:center;gap:6px;font-size:11px;display:flex}.filter-bar,.attendance-controls{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:24px;display:flex}.search-field{background:var(--card);border:1px solid var(--border);border-radius:12px;min-height:44px}.search-field:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px #1677ff1f}.search-field input{color:var(--text)}.filter-button,.date-button,.filter-icon{border:1px solid var(--border);color:var(--muted);background:0 0;min-height:44px}.filter-button:hover,.date-button:hover,.filter-icon:hover{color:var(--text);background:#1677ff0f;border-color:#1677ff66}.attendance-controls .muted-note{margin-left:auto}.stats-grid{gap:14px;margin-bottom:24px}.stat-card{min-height:154px;padding:22px}.stat-icon{border-radius:10px}.stat-value{color:var(--text);letter-spacing:-.04em;font-size:30px}.stat-detail{color:var(--muted);font-size:12px}.stat-label{color:var(--muted)}.table-wrap{overflow-x:auto}.modern-table{min-width:760px}.modern-table .table-row{grid-template-columns:1.5fr 1.05fr 1.05fr .8fr 1fr;align-items:center;gap:16px;min-height:70px;padding:0 8px;display:grid}.modern-table .table-head{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:600}.modern-table .student-row{border-top:1px solid var(--border);color:var(--muted);font-size:12px;transition:background-color .2s}.person-cell{align-items:center;gap:11px;min-width:0;display:flex}.person-cell>span:last-child{min-width:0}.person-cell strong,.person-cell small{display:block}.person-cell strong{color:var(--text);font-size:12px;font-weight:600}.person-cell small{color:var(--muted);margin-top:4px;font-size:10px}.avatar-student{flex:none;justify-content:center;align-items:center;width:34px;height:34px;font-size:10px;display:flex}.blue-avatar{color:#72aaff;background:#1677ff24}.orange-avatar{color:#ffb35c;background:#ff8a0024}.green-avatar{color:#79d69c;background:#48bb7824}.row-actions{gap:4px;display:flex}.row-actions button,.more-button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;min-width:32px;min-height:32px;display:flex}.row-actions button:hover,.more-button:hover{color:var(--blue);background:#1677ff17}.status-badge{border-radius:99px;padding:6px 9px;font-size:10px;font-weight:600}.status-badge.blue{color:#72aaff;background:#1677ff1f}.status-badge.orange{color:#ffb35c;background:#ff8a0021}.status-badge.red{color:#f39a7b;background:#e8785521}.modern-class-grid{grid-template-columns:repeat(3,1fr);align-items:stretch;gap:16px}.modern-class-grid .class-card-top{align-items:start;gap:10px;display:flex}.modern-class-grid .class-card-top .status-badge{margin-left:auto}.modern-class-grid .class-card-icon{color:#72aaff;background:#1677ff1f;border-radius:11px;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.modern-class-grid .class-card-icon.orange{color:#ffb35c;background:#ff8a001f}.modern-class-grid h3{color:var(--text);margin:27px 0 7px;font-size:20px;font-weight:600}.modern-class-grid p{color:var(--muted);margin:0;font-size:12px}.class-teacher{border-bottom:1px solid var(--border);border-top:1px solid var(--border);align-items:center;gap:10px;margin:22px 0 16px;padding:14px 0;display:flex}.class-teacher span:last-child{flex-direction:column;gap:3px;display:flex}.class-teacher small{color:var(--muted);font-size:10px}.class-teacher strong{color:var(--text);font-size:12px;font-weight:500}.class-meta{color:var(--muted);font-size:11px}.class-meta span{align-items:center;gap:6px;margin-right:16px;display:inline-flex}.modern-care-grid{grid-template-columns:1.1fr .9fr;gap:16px}.modern-care-grid .content-panel{min-height:280px}.care-items>div{border-bottom-color:var(--border);min-height:70px}.care-items>div:last-child{border-bottom:0}.care-items span{color:var(--text)}.care-items small{color:var(--muted)}.care-update-list{flex-direction:column;display:flex}.care-update-list>div{border-bottom:1px solid var(--border);align-items:center;gap:11px;min-height:65px;display:flex}.care-update-list>div:last-child{border-bottom:0}.care-update-list>div>span:last-child{flex-direction:column;gap:4px;display:flex}.care-update-list strong{color:var(--text);font-size:12px;font-weight:600}.care-update-list small{color:var(--muted);font-size:10px}.modern-announcement-list article{border-bottom:1px solid var(--border);align-items:start;gap:14px;padding:8px 0 20px;display:flex}.modern-announcement-list article+article{padding-top:20px}.modern-announcement-list article:last-child{border-bottom:0;padding-bottom:6px}.announcement-icon{border-radius:11px;flex:none;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.announcement-icon.blue{color:#72aaff;background:#1677ff1f}.announcement-icon.orange{color:#ffb35c;background:#ff8a001f}.modern-announcement-list article>div:nth-child(2){flex:1}.announcement-meta{align-items:center;gap:10px;display:flex}.announcement-meta>span{color:var(--muted);font-size:10px}.modern-announcement-list h3{color:var(--text);margin:10px 0 6px;font-size:15px;font-weight:600}.modern-announcement-list p{color:var(--muted);margin:0;font-size:12px;line-height:1.6}.modern-settings-layout{align-items:start;gap:18px}.modern-settings-layout .settings-nav{background:0 0;gap:4px;padding:0}.modern-settings-layout .settings-link{color:var(--muted);border-radius:11px;min-height:44px;padding:0 13px}.modern-settings-layout .settings-link:hover{color:var(--text);background:#1677ff12}.modern-settings-layout .settings-link.active{color:#72aaff;background:#1677ff1f}.settings-panels{flex-direction:column;flex:1;gap:16px;display:flex}.profile-form{align-items:start;gap:26px}.form-grid{gap:17px}.form-grid label{color:var(--muted);font-size:11px}.form-grid input{border:1px solid var(--border);color:var(--text);background:0 0;border-radius:11px;min-height:45px;padding:0 12px}.form-grid input:focus{border-color:var(--blue);outline:none;box-shadow:0 0 0 3px #1677ff1f}.preference-list>div{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:20px;padding:14px 0;display:flex}.preference-list>div:last-child{border-bottom:0}.preference-list span{flex-direction:column;gap:5px;display:flex}.preference-list strong{color:var(--text);font-size:13px;font-weight:500}.preference-list small{color:var(--muted);font-size:11px}.preference-list input{accent-color:var(--blue);width:17px;height:17px}.theme-light .content-panel,.theme-light .stat-card,.theme-light .class-card{background:#fff;box-shadow:0 10px 28px #0f172a0b}.theme-light .topbar{background:#f4f7fbeb}.theme-light .search-field,.theme-light .form-grid input{background:#fff}.theme-light .sidebar{box-shadow:12px 0 40px #0f172a0d}@media (width<=1000px){.page-content{padding-left:30px;padding-right:30px}.modern-class-grid,.modern-care-grid{grid-template-columns:repeat(2,1fr)}.modern-class-grid .class-card:last-child{grid-column:span 2}.modern-care-grid{grid-template-columns:1fr}}@media (width<=700px){.topbar{padding:0 18px}.page-content{padding:30px 18px 52px}.page-header{flex-direction:column;align-items:start;gap:18px;margin-bottom:26px}.page-header .primary-button{width:100%}.filter-bar,.attendance-controls{align-items:stretch}.search-field{flex-basis:100%}.filter-button,.date-button{flex:1;justify-content:center}.attendance-controls .muted-note{width:100%;margin-left:0}.modern-class-grid,.modern-care-grid{grid-template-columns:1fr}.modern-class-grid .class-card:last-child{grid-column:auto}.content-panel{border-radius:17px;padding:20px 18px}.profile-form{flex-direction:column}.modern-settings-layout .settings-nav{grid-template-columns:repeat(2,1fr);display:grid}.modern-settings-layout .settings-link{font-size:11px}.settings-panels .primary-button{width:100%}}.main-content{background:radial-gradient(circle at 88% 0%, #1677ff14, transparent 28%), var(--canvas)}.sidebar{background:#0b1220;border-right-color:#94a3b81f}.sidebar-top{padding-bottom:39px}.brand-mark{box-shadow:0 0 24px #ff8a0029}.sidebar-nav{gap:4px}.nav-section-label{letter-spacing:.16em;margin-bottom:8px;font-size:9px}.nav-item{color:#8c9ab0;min-height:42px}.nav-item.active{color:#f8fafc;background:linear-gradient(90deg,#1677ff33,#1677ff0a);box-shadow:inset 2px 0 #4f98ff,0 0 24px #1677ff14}.nav-item:hover{background:#ffffff0d}.sidebar-profile{border-top-color:#94a3b81f}.topbar{background:#0b1220c2;border-bottom-color:#94a3b81f;min-height:72px;padding:0 32px}.topbar-heading h1{font-size:19px}.page-content{max-width:1500px;padding:32px 34px 56px}.page-header{margin-bottom:25px}.page-header h2{margin-top:6px;font-size:29px}.page-header p{margin-top:7px;font-size:13px}.dashboard-page{gap:20px}.dashboard-header{padding-top:0}.dashboard-header h2{margin:5px 0 7px;font-size:clamp(28px,3vw,32px)}.dashboard-header p{font-size:13px}.dashboard-summary{border-top-color:#94a3b81f;border-bottom-color:#94a3b81f}.summary-item{min-height:132px;padding-top:18px;padding-bottom:18px}.summary-icon{margin-bottom:12px;box-shadow:0 0 18px #1677ff17}.summary-item strong{font-size:27px}.dashboard-section,.content-panel,.stat-card,.class-card{background:#111827e0;border-color:#94a3b824;box-shadow:0 12px 34px #0208171f}.dashboard-section{border-radius:17px;padding:21px}.content-panel{border-radius:17px;padding:22px}.panel-heading{margin-bottom:19px}.dashboard-section-heading{margin-bottom:20px}.dashboard-section h3,.panel-heading h3{font-size:17px}.dashboard-section .eyebrow,.eyebrow{font-size:9px}.quick-action{background:#0b122047;border-color:#94a3b824;min-height:58px}.quick-action-primary{background:linear-gradient(135deg,#1677ff,#286fd5);box-shadow:0 8px 22px #1677ff29}.quick-action:hover{box-shadow:0 7px 20px #1677ff14}.activity-item{min-height:53px}.activity-icon{box-shadow:0 0 15px #1677ff14}.analytics-section{background:linear-gradient(135deg,#1f2937f5,#111827f0);box-shadow:0 15px 36px #0208172e,inset 0 1px #ffffff06}.analytics-legend{align-items:center;gap:14px;display:flex}.analytics-legend span{color:var(--muted);align-items:center;gap:6px;font-size:10px;display:inline-flex}.legend-dot{background:var(--blue);border-radius:50%;width:6px;height:6px}.legend-dot.orange{background:var(--orange)}.analytics-summary{align-items:center;gap:12px;margin-bottom:14px;display:flex}.analytics-summary strong{color:var(--text);letter-spacing:-.04em;font-size:25px}.analytics-summary>span{color:var(--muted);font-size:11px}.analytics-summary .status-badge{margin-left:auto}.analytics-chart{border-bottom:1px solid #94a3b81f;grid-template-columns:repeat(5,1fr);align-items:end;gap:12px;min-height:184px;padding:8px 4px 0;display:grid}.chart-column{flex-direction:column;justify-content:end;align-items:center;min-width:0;height:100%;display:flex}.chart-value{color:#a9caff;margin-bottom:7px;font-size:10px;font-weight:600}.chart-bars{justify-content:center;align-items:end;gap:4px;width:100%;height:120px;display:flex}.chart-bar{border-radius:5px 5px 2px 2px;width:28%;max-width:22px;min-height:12px;display:block}.attendance-bar{background:linear-gradient(#52a0ff,#1677ff);box-shadow:0 0 14px #1677ff38}.late-bar{background:#ff8a00d1}.chart-column>strong{color:var(--text);margin-top:10px;font-size:10px;font-weight:600}.chart-column>small{color:var(--muted);white-space:nowrap;margin-top:5px;font-size:9px}.filter-bar,.attendance-controls{margin-bottom:19px}.search-field,.filter-button,.date-button,.filter-icon,.form-grid input{background:#111827b8;border-color:#94a3b829}.search-field,.filter-button,.date-button,.filter-icon{min-height:40px}.modern-table .table-row{min-height:62px}.modern-table .student-row:hover{background:#1677ff0f}.status-badge{padding:5px 8px}.modern-class-grid .class-card{min-height:253px;padding:20px}.modern-class-grid h3{margin-top:22px}.care-items>div{min-height:62px}.theme-light .main-content{background:radial-gradient(circle at 90% 0%, #1677ff0f, transparent 28%), var(--canvas)}.theme-light .topbar{background:#f4f7fbe6;border-bottom-color:#0f172a1a}.theme-light .dashboard-section,.theme-light .content-panel,.theme-light .stat-card,.theme-light .class-card{background:#fffffff0;border-color:#0f172a1a;box-shadow:0 10px 30px #0f172a0f}.theme-light .analytics-section{background:linear-gradient(135deg,#fff,#f6f9ff)}.theme-light .quick-action,.theme-light .search-field,.theme-light .filter-button,.theme-light .date-button,.theme-light .filter-icon,.theme-light .form-grid input{background:#fff}@media (width<=700px){.topbar{min-height:70px;padding:0 18px}.page-content{padding:28px 18px 48px}.analytics-summary{flex-wrap:wrap;align-items:start}.analytics-summary .status-badge{margin-left:0}.analytics-chart{gap:6px;min-height:168px}.chart-bars{height:105px}.chart-column>small{font-size:8px}.analytics-legend{gap:8px}.analytics-legend span{font-size:9px}}.student-toolbar{flex-direction:column;gap:12px;margin-bottom:20px;display:flex}.student-search{color:var(--muted);background:#111827c7;border:1px solid #94a3b829;border-radius:12px;align-items:center;gap:10px;min-height:46px;padding:0 14px;transition:border-color .2s,box-shadow .2s;display:flex}.student-search:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px #1677ff1f}.student-search input{color:var(--text);background:0 0;border:0;outline:0;width:100%;min-width:0}.student-search input::placeholder{color:var(--muted)}.student-filter-grid{grid-template-columns:repeat(4,minmax(130px,1fr)) auto;align-items:end;gap:10px;display:grid}.student-filter-grid label{flex-direction:column;gap:6px;display:flex}.student-filter-grid label span{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;font-size:10px;font-weight:600}.student-filter-grid select{appearance:none;color:var(--text);background:#111827c7 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%239CA3AF' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") right 12px center no-repeat;border:1px solid #94a3b829;border-radius:10px;outline:0;min-height:40px;padding:0 32px 0 11px}.student-filter-grid select:focus{border-color:var(--blue);box-shadow:0 0 0 3px #1677ff1a}.student-filter-grid option{color:#f8fafc;background:#1f2937}.clear-filter-button{color:var(--muted);cursor:pointer;white-space:nowrap;background:0 0;border:0;min-height:40px;padding:0 4px;font-size:11px}.clear-filter-button:hover:not(:disabled){color:var(--blue)}.clear-filter-button:disabled{cursor:default;opacity:.35}.student-directory-panel .panel-heading{align-items:center}.student-directory-table{min-width:1010px}.student-directory-table .table-row{grid-template-columns:1.45fr .72fr 1.12fr .55fr 1.1fr .7fr .7fr}.student-directory-table .student-row>span:not(.person-cell):not(.row-actions){color:var(--muted);font-size:11px}.student-directory-table .student-row .status-badge{justify-self:start}.status-badge.muted{color:var(--muted);background:#9ca3af1f}.student-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:280px;padding:30px 20px;display:flex}.student-state h3{color:var(--text);margin:15px 0 6px;font-size:16px;font-weight:600}.student-state p{color:var(--muted);margin:0 0 17px;font-size:12px}.student-state .secondary-button{min-height:36px}.student-skeleton-list{flex-direction:column;gap:12px;min-height:280px;padding:22px 8px;display:flex}.student-skeleton-list span{background:linear-gradient(90deg,#94a3b817,#94a3b82b,#94a3b817) 0 0/200% 100%;border-radius:8px;height:46px;animation:1.4s ease-in-out infinite student-skeleton-pulse}.student-skeleton-list span:nth-child(2){animation-delay:.1s}.student-skeleton-list span:nth-child(3){animation-delay:.2s}.student-skeleton-list span:nth-child(4){animation-delay:.3s}@keyframes student-skeleton-pulse{0%{background-position:100% 0}to{background-position:-100% 0}}.student-card-list{display:none}.student-profile-backdrop{z-index:40;background:#020817a3;position:fixed;inset:0}.student-profile-drawer{background:var(--card);border-left:1px solid var(--border);z-index:41;width:100%;max-width:460px;height:100vh;padding:30px;position:fixed;top:0;right:0;overflow-y:auto;box-shadow:-18px 0 50px #0208174d}.student-profile-header{justify-content:space-between;align-items:start;gap:20px;display:flex}.student-profile-header h3{color:var(--text);letter-spacing:-.04em;margin:7px 0 6px;font-size:24px;font-weight:600}.student-profile-header p{color:var(--muted);margin:0;font-size:12px}.student-profile-identity{border-bottom:1px solid var(--border);align-items:center;gap:13px;margin:27px 0 24px;padding-bottom:24px;display:flex}.avatar-profile{justify-content:center;align-items:center;width:52px;height:52px;font-size:15px;display:flex}.student-profile-identity>div{flex-direction:column;gap:8px;display:flex}.student-profile-identity strong{color:var(--text);font-size:14px;font-weight:600}.student-profile-section{border-bottom:1px solid var(--border);margin-bottom:22px;padding:0 0 22px}.profile-section-label{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;margin-bottom:14px;font-size:10px;font-weight:600;display:block}.student-profile-section dl{flex-direction:column;gap:13px;margin:0;display:flex}.student-profile-section dl div{justify-content:space-between;align-items:center;gap:18px;display:flex}.student-profile-section dt{color:var(--muted);font-size:12px}.student-profile-section dd{color:var(--text);text-align:right;margin:0;font-size:12px}.theme-light .student-search,.theme-light .student-filter-grid select{background-color:#fff;border-color:#0f172a1f}.theme-light .student-filter-grid option{color:#111827;background:#fff}.theme-light .student-profile-drawer{background:#fff;border-color:#0f172a1f}.theme-light .student-profile-backdrop{background:#0f172a61}.student-page-header{justify-content:space-between;align-items:end;gap:22px;margin-bottom:22px;display:flex}.student-page-header h2{color:var(--text);letter-spacing:-.045em;margin:7px 0 6px;font-size:29px;font-weight:600}.student-page-header p{color:var(--muted);margin:0;font-size:13px}.student-stats{grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:21px;display:grid}.student-stat{border:1px solid var(--border);background:#111827b8;border-radius:13px;align-items:center;gap:11px;min-height:76px;padding:13px 14px;display:flex}.student-stat-icon{color:#78adff;background:#1677ff1c;border-radius:9px;flex:none;justify-content:center;align-items:center;width:29px;height:29px;display:flex}.student-stat span:last-child{flex-direction:column;gap:2px;display:flex}.student-stat small,.student-stat em{color:var(--muted);font-size:10px;font-style:normal}.student-stat strong{color:var(--text);font-size:21px;line-height:1.1}.student-stat.green .student-stat-icon{color:#79d69c;background:#48bb781c}.student-stat.orange .student-stat-icon{color:#ffb35c;background:#ff8a001c}.student-stat.muted .student-stat-icon{color:var(--muted);background:#9ca3af1a}.active-filter-row{flex-wrap:wrap;align-items:center;gap:7px;min-height:25px;margin:-4px 0 17px;display:flex}.active-filter-row>span:first-child{color:var(--muted);margin-right:6px;font-size:11px}.filter-chip{color:#8abbff;cursor:pointer;background:#1677ff1c;border:1px solid #1677ff38;border-radius:99px;align-items:center;gap:5px;padding:5px 8px;font-size:10px;display:inline-flex}.filter-chip:hover{background:#1677ff2e}.clear-all-button{color:var(--muted);cursor:pointer;background:0 0;border:0;margin-left:3px;padding:5px;font-size:10px}.clear-all-button:hover{color:var(--blue)}.student-pagination{border-top:1px solid var(--border);justify-content:end;align-items:center;gap:6px;margin-top:15px;padding-top:15px;display:flex}.student-pagination .secondary-button{min-height:32px;padding:0 10px}.pagination-number{color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;min-width:32px;height:32px;font-size:11px}.pagination-number:hover,.pagination-number.active{color:#8abbff;background:#1677ff1f;border-color:#1677ff40}.add-student-modal{background:var(--card);border:1px solid var(--border);z-index:42;border-radius:18px;width:calc(100% - 32px);max-width:520px;max-height:calc(100vh - 40px);padding:25px;position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%);box-shadow:0 24px 70px #02081759}.add-student-heading{justify-content:space-between;align-items:start;gap:16px;display:flex}.add-student-heading h3{color:var(--text);margin:7px 0 5px;font-size:21px}.add-student-heading p{color:var(--muted);margin:0;font-size:12px}.add-student-form{flex-direction:column;gap:14px;margin-top:24px;display:flex}.add-student-form label{color:var(--muted);flex-direction:column;gap:6px;font-size:11px;display:flex}.add-student-form input,.add-student-form select{border:1px solid var(--border);color:var(--text);background:#0b122052;border-radius:10px;outline:none;min-height:42px;padding:0 11px}.add-student-form input:focus,.add-student-form select:focus{border-color:var(--blue);box-shadow:0 0 0 3px #1677ff1a}.add-student-form option{color:#f8fafc;background:#1f2937}.add-form-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.add-student-actions{justify-content:end;gap:9px;margin-top:4px;display:flex}.add-student-actions button{min-height:38px}.theme-light .student-stat,.theme-light .add-student-modal{background:#fff;border-color:#0f172a1a}.theme-light .add-student-form input,.theme-light .add-student-form select{background:#fff}.theme-light .add-student-form option{color:#111827;background:#fff}.profile-activity-list>div{color:#78adff;align-items:center;gap:9px;display:flex}.profile-activity-list span{flex-direction:column;gap:3px;display:flex}.profile-activity-list strong{color:var(--text);font-size:11px;font-weight:500}.profile-activity-list small{color:var(--muted);font-size:10px}@media (width<=1000px){.student-filter-grid{grid-template-columns:repeat(2,1fr)}.clear-filter-button{justify-self:start}.student-stats{grid-template-columns:repeat(2,1fr)}}@media (width<=700px){.student-page-header{flex-direction:column;align-items:start;gap:16px}.student-page-header .primary-button{width:100%}.student-stats{grid-template-columns:1fr 1fr}.student-stat{min-height:70px;padding:11px}.student-stat em{display:none}.student-filter-grid{grid-template-columns:1fr 1fr}.student-directory-table{display:none}.student-card-list{flex-direction:column;gap:10px;display:flex}.student-mobile-card{border:1px solid var(--border);background:#0b122042;border-radius:13px;padding:15px}.student-mobile-card .person-cell{align-items:center}.student-mobile-card .person-cell>.status-badge{margin-left:auto}.student-mobile-meta{border-bottom:1px solid var(--border);border-top:1px solid var(--border);grid-template-columns:repeat(3,1fr);gap:9px;margin:14px 0;padding:12px 0;display:grid}.student-mobile-meta span{color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex-direction:column;gap:4px;min-width:0;font-size:11px;display:flex;overflow:hidden}.student-mobile-meta small{color:var(--muted);text-transform:uppercase;font-size:9px}.student-mobile-card .secondary-button{width:100%;min-height:36px}.student-pagination{justify-content:center}.student-pagination .secondary-button{font-size:10px}.student-profile-drawer{max-width:none;padding:24px 20px}.student-profile-header h3{font-size:21px}.student-profile-section dl div{flex-direction:column;align-items:start;gap:4px}.student-profile-section dd{text-align:left}.add-student-modal{padding:20px}.theme-light .student-mobile-card{background:#f8fafc}}.student-page-header h2{font-size:31px;font-weight:700;line-height:1.18}.student-page-header p{font-size:15px;line-height:1.5}.student-search input{font-size:15px;line-height:1.4}.student-filter-grid label span{font-size:12px}.student-filter-grid select,.clear-filter-button{font-size:14px;line-height:1.4}.student-directory-table .table-head{font-size:12px;font-weight:600;line-height:1.35}.student-directory-table .student-row{font-size:14px;line-height:1.45}.student-directory-table .student-row>span:not(.person-cell):not(.row-actions){font-size:14px}.person-cell strong{font-size:16px;font-weight:600;line-height:1.35}.person-cell small{font-size:13px;line-height:1.35}.student-directory-table .status-badge,.student-mobile-card .status-badge{font-size:13px;font-weight:500;line-height:1.25}.row-actions button{min-width:34px;min-height:34px;font-size:14px}.student-stat small{font-size:13px;line-height:1.3}.student-stat strong{font-size:26px;font-weight:700;line-height:1.15}.student-stat em{font-size:12px;line-height:1.35}.active-filter-row>span:first-child{font-size:13px}.filter-chip,.clear-all-button{font-size:13px;line-height:1.3}.student-pagination .secondary-button,.pagination-number{font-size:14px}.student-mobile-meta span{font-size:14px;line-height:1.35}.student-mobile-meta small{font-size:11px;line-height:1.25}.student-profile-header h3{font-size:26px;line-height:1.2}.student-profile-header p{font-size:14px;line-height:1.4}.profile-section-label{font-size:16px;line-height:1.35}.student-profile-section dt{font-size:13px;line-height:1.4}.student-profile-section dd{font-size:15px;line-height:1.4}.profile-activity-list strong{font-size:14px;line-height:1.35}.profile-activity-list small{font-size:12px;line-height:1.35}.add-student-heading h3{font-size:24px;line-height:1.25}.add-student-heading p{font-size:14px;line-height:1.45}.add-student-form label{font-size:13px}.add-student-form input,.add-student-form select{font-size:14px;line-height:1.4}@media (width<=700px){.student-page-header h2{font-size:29px}.student-page-header p{font-size:14px}.student-stat small{font-size:12px}.student-stat strong{font-size:24px}.student-stat em{font-size:11px}.student-mobile-card .person-cell strong{font-size:15px}.student-mobile-card .person-cell small{font-size:13px}.student-profile-header h3{font-size:23px}.profile-section-label{font-size:16px}.student-profile-section dt{font-size:13px}.student-profile-section dd{font-size:15px}}.student-directory-table .person-cell strong,.student-card-list .person-cell strong{cursor:pointer;transition:color .18s,text-shadow .18s}.student-directory-table .person-cell strong:hover,.student-card-list .person-cell strong:hover,.student-directory-table .person-cell strong:focus-visible,.student-card-list .person-cell strong:focus-visible{color:#78adff;text-shadow:0 0 14px #1677ff33;outline:none}.directory-stats{grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:20px;display:grid}.directory-stat{border:1px solid var(--border);background:#111827b8;border-radius:13px;justify-content:space-between;align-items:center;min-height:70px;padding:13px 15px;display:flex}.directory-stat span{color:var(--muted);font-size:13px}.directory-stat strong{color:var(--text);font-size:26px;font-weight:700}.directory-stat.green{border-left:2px solid #65c98b}.directory-stat.orange{border-left:2px solid var(--orange)}.directory-stat.muted{border-left:2px solid #64748b}.directory-toolbar{flex-direction:column;gap:12px;margin-bottom:13px;display:flex}.directory-search{border:1px solid var(--border);color:var(--muted);background:#111827c7;border-radius:11px;align-items:center;gap:9px;min-height:44px;padding:0 13px;display:flex}.directory-search:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px #1677ff1a}.directory-search input{color:var(--text);background:0 0;border:0;outline:0;width:100%;min-width:0;font-size:15px}.directory-filter-grid{grid-template-columns:repeat(6,1fr);gap:9px;display:grid}.directory-filter-grid label{color:var(--muted);flex-direction:column;gap:5px;font-size:12px;font-weight:500;display:flex}.directory-filter-grid select,.student-edit-form input,.student-edit-form select{border:1px solid var(--border);color:var(--text);background:#0b122059;border-radius:9px;outline:0;min-height:40px;padding:0 10px;font-size:14px}.directory-filter-grid select:focus,.student-edit-form input:focus,.student-edit-form select:focus{border-color:var(--blue);box-shadow:0 0 0 3px #1677ff1a}.directory-filter-grid option,.student-edit-form option{color:#f8fafc;background:#1f2937}.directory-filter-summary{flex-wrap:wrap;align-items:center;gap:7px;min-height:24px;margin:0 0 15px;display:flex}.directory-filter-summary>span{color:var(--muted);margin-right:5px;font-size:13px}.directory-filter-summary>button{color:#9bc4ff;cursor:pointer;background:#1677ff1c;border:1px solid #1677ff38;border-radius:99px;align-items:center;gap:5px;padding:5px 8px;font-size:12px;display:inline-flex}.directory-filter-summary .clear-all-directory{color:var(--muted);background:0 0;border:0}.directory-filter-summary .clear-all-directory:hover{color:var(--blue)}.student-directory-panel{overflow:hidden}.modern-directory-table{overflow-x:auto}.directory-table-row{border-bottom:1px solid var(--border);grid-template-columns:1.45fr .75fr 1.05fr .75fr .65fr 1.05fr .72fr 1.35fr;align-items:center;gap:13px;min-width:1120px;min-height:66px;padding:0 8px;display:grid}.directory-table-row:last-child{border-bottom:0}.directory-table-head{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;min-height:44px;font-size:12px;font-weight:600}.directory-table-row:not(.directory-table-head){color:var(--muted);font-size:14px}.directory-table-row:not(.directory-table-head):hover{background:#1677ff09}.directory-person{align-items:center;gap:10px;min-width:0;display:flex}.directory-avatar{border-radius:9px;flex:none;justify-content:center;align-items:center;width:33px;height:33px;font-size:11px;font-weight:600;display:inline-flex}.directory-avatar.blue{color:#8abbff;background:#1677ff24}.directory-avatar.orange{color:#ffc06e;background:#ff8a0024}.directory-avatar.green{color:#8ce0aa;background:#48bb7824}.directory-name-button{color:var(--text);cursor:pointer;text-align:left;background:0 0;border:0;padding:0;font-size:16px;font-weight:600;transition:color .18s}.directory-name-button:hover,.directory-name-button:focus-visible{color:#78adff;outline:0}.student-badge{white-space:nowrap;border-radius:99px;padding:5px 8px;font-size:13px;font-weight:500;line-height:1.2;display:inline-flex}.student-badge.blue{color:#8abbff;background:#1677ff1f}.student-badge.orange{color:#ffc06e;background:#ff8a0021}.student-badge.muted{color:var(--muted);background:#9ca3af1f}.student-badge.year-4-4a{color:#9cc9ff;background:#5ba2ff29}.student-badge.year-4-4b{color:#78b1ff;background:#1677ff2e}.student-badge.year-5-5a{color:#b9aaff;background:#8f75ff29}.student-badge.year-5-5b{color:#a997ff;background:#5c43be38}.student-badge.year-6-6a{color:#ffd08a;background:#ffb14a29}.student-badge.year-6-6b{color:#ffbd68;background:#d6771933}.directory-actions{align-items:center;gap:3px;display:flex}.directory-actions button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:7px;align-items:center;gap:5px;min-height:32px;padding:0 6px;font-size:14px;display:inline-flex}.directory-actions button:hover{color:#78adff;background:#1677ff17}.directory-actions button:first-child{color:#9bc4ff}.directory-mobile-list{display:none}.directory-pagination{border-top:1px solid var(--border);justify-content:end;align-items:center;gap:6px;margin-top:13px;padding-top:14px;display:flex}.directory-pagination button{color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;min-width:34px;min-height:34px;font-size:13px}.directory-pagination button:hover,.directory-pagination button.active{color:#9bc4ff;background:#1677ff1f;border-color:#1677ff40}.directory-pagination button:disabled{cursor:default;opacity:.35}.directory-profile-backdrop{z-index:40;background:#020817a3;position:fixed;inset:0}.directory-profile-drawer{background:var(--card);border-left:1px solid var(--border);z-index:41;width:100%;max-width:520px;height:100vh;padding:28px;position:fixed;top:0;right:0;overflow-y:auto;box-shadow:-18px 0 50px #0208174d}.directory-profile-header{justify-content:space-between;align-items:start;gap:16px;display:flex}.directory-profile-header h3{color:var(--text);margin:7px 0 5px;font-size:25px}.directory-profile-header p{color:var(--muted);margin:0;font-size:13px}.profile-header-actions{align-items:center;gap:7px;display:flex}.profile-identity{border-bottom:1px solid var(--border);align-items:center;gap:12px;margin:23px 0 20px;padding-bottom:20px;display:flex}.profile-identity>div{flex-direction:column;gap:7px;display:flex}.profile-identity strong{color:var(--text);font-size:16px}.profile-section{border-bottom:1px solid var(--border);margin-bottom:20px;padding-bottom:19px}.profile-section h4{color:var(--text);margin:0 0 14px;font-size:17px;font-weight:600}.profile-field{justify-content:space-between;align-items:center;gap:16px;margin-top:11px;display:flex}.profile-field span{color:var(--muted);font-size:13px}.profile-field strong{color:var(--text);text-align:right;font-size:15px;font-weight:500}.profile-activity-list{flex-direction:column;gap:11px;display:flex}.profile-activity-list p{color:var(--muted);align-items:center;gap:8px;margin:0;font-size:13px;display:flex}.profile-activity-list p svg{color:#78adff}.profile-activity-list small{margin-left:auto}.student-edit-form{grid-template-columns:1fr 1fr;gap:13px;margin-top:23px;display:grid}.student-edit-form label{color:var(--muted);flex-direction:column;gap:6px;font-size:13px;display:flex}.student-edit-form label:first-child,.student-edit-form label:nth-child(2),.student-edit-form label:nth-child(8),.student-edit-form label:nth-child(9){grid-column:1/-1}.profile-edit-actions{grid-column:1/-1;justify-content:end;gap:8px;margin-top:5px;display:flex}.profile-feedback{color:#8ce0aa;background:#48bb781f;border:1px solid #48bb7840;border-radius:8px;margin:17px 0 -7px;padding:9px 10px;font-size:12px}.theme-light .directory-stat,.theme-light .directory-search,.theme-light .directory-filter-grid select{background:#fff}.theme-light .directory-filter-grid option,.theme-light .student-edit-form option{color:#111827;background:#fff}.theme-light .directory-profile-drawer{background:#fff;border-color:#0f172a1f}@media (width<=1000px){.directory-filter-grid{grid-template-columns:repeat(3,1fr)}.directory-stats{grid-template-columns:repeat(2,1fr)}}@media (width<=700px){.student-page-header{flex-direction:column;align-items:start}.student-page-header .primary-button{width:100%}.directory-stats{grid-template-columns:1fr 1fr}.directory-stat{min-height:64px;padding:11px}.directory-stat span{font-size:12px}.directory-stat strong{font-size:23px}.directory-filter-grid{grid-template-columns:1fr 1fr}.modern-directory-table{display:none}.directory-mobile-list{flex-direction:column;gap:10px;display:flex}.directory-mobile-card{border:1px solid var(--border);background:#0b122040;border-radius:14px;padding:15px}.directory-mobile-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.directory-mobile-details{border-bottom:1px solid var(--border);border-top:1px solid var(--border);grid-template-columns:1fr 1fr;gap:12px 8px;margin:14px 0;padding:12px 0;display:grid}.directory-mobile-details span{color:var(--muted);flex-direction:column;gap:4px;font-size:11px;display:flex}.directory-mobile-details strong{color:var(--text);font-size:14px;font-weight:500}.directory-mobile-card>.secondary-button{width:100%}.directory-pagination{justify-content:center}.directory-profile-drawer{max-width:none;padding:23px 19px}.directory-profile-header h3{font-size:22px}.student-edit-form{grid-template-columns:1fr}.student-edit-form label,.student-edit-form label:first-child,.student-edit-form label:nth-child(2),.student-edit-form label:nth-child(8),.student-edit-form label:nth-child(9){grid-column:auto}.profile-field{flex-direction:column;align-items:start;gap:4px}.profile-field strong{text-align:left}.profile-activity-list small{margin-left:auto}.theme-light .directory-mobile-card{background:#f8fafc}}.daily-care-tabs{border:1px solid var(--border);background:#1118278f;border-radius:13px;gap:4px;width:fit-content;margin-bottom:20px;padding:4px;display:flex}.daily-care-tabs button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:9px;align-items:center;gap:7px;min-height:38px;padding:0 14px;font-size:12px;transition:background-color .2s,color .2s;display:flex}.daily-care-tabs button:hover{color:var(--text)}.daily-care-notice{color:#8abbff;background:#1677ff1a;border:1px solid #1677ff38;border-radius:10px;margin:-5px 0 16px;padding:10px 12px;font-size:12px}.daily-care-form-panel{max-width:900px}.daily-care-form{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.daily-care-form label,.timeline-post-form label{color:var(--muted);flex-direction:column;gap:7px;font-size:12px;display:flex}.daily-care-form input,.daily-care-form select,.daily-care-form textarea,.timeline-post-form textarea{border:1px solid var(--border);color:var(--text);background:#0b122059;border-radius:10px;outline:0;min-height:43px;padding:10px 12px;font-size:14px}.daily-care-form textarea,.timeline-post-form textarea{resize:vertical}.daily-care-form input:focus,.daily-care-form select:focus,.daily-care-form textarea:focus,.timeline-post-form textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #1677ff1a}.daily-care-form option{color:#f8fafc;background:#1f2937}.daily-care-notes{grid-column:1/-1}.daily-care-form>.primary-button{justify-self:start}.daily-care-update-list article{border-bottom:1px solid var(--border);align-items:center;gap:12px;min-height:76px;padding:9px 0;display:flex}.daily-care-update-list article:last-child{border-bottom:0}.daily-care-update-icon{color:#78adff;background:#1677ff1c;border-radius:10px;flex:none;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.daily-care-update-list article>div{flex:1;min-width:0}.daily-care-update-list strong,.daily-care-update-list p,.daily-care-update-list small{display:block}.daily-care-update-list strong{color:var(--text);font-size:14px;font-weight:600}.daily-care-update-list p{color:var(--muted);margin:4px 0 0;font-size:12px}.daily-care-update-list small{color:var(--muted);margin-top:4px;font-size:11px}.daily-care-timeline{grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);gap:16px;display:grid}.timeline-post-form{flex-direction:column;gap:15px;display:flex}.media-upload{cursor:pointer;text-align:center;background:#1677ff0f;border:1px dashed #1677ff6b;border-radius:12px;justify-content:center;align-items:center;min-height:84px;color:#8abbff!important;flex-direction:row!important;gap:9px!important;display:flex!important}.media-upload input{display:none}.timeline-post-form .primary-button{align-self:start}.timeline-post-list{flex-direction:column;gap:14px;display:flex}.timeline-post{border:1px solid var(--border);border-radius:13px;overflow:hidden}.timeline-post>img,.timeline-post>video{object-fit:cover;background:#0b1220;width:100%;max-height:260px;display:block}.timeline-placeholder{color:var(--muted);background:#1677ff0f;flex-direction:column;justify-content:center;align-items:center;gap:7px;min-height:135px;display:flex}.timeline-placeholder span{font-size:11px}.timeline-post-copy{padding:14px}.timeline-post-copy>p{color:var(--text);margin:0 0 7px;font-size:13px;line-height:1.5}.timeline-post-copy>small{color:var(--muted);font-size:11px}.timeline-actions{border-bottom:1px solid var(--border);align-items:center;gap:18px;margin-top:12px;padding-bottom:11px;display:flex}.timeline-actions button,.timeline-actions span{color:var(--muted);background:0 0;border:0;align-items:center;gap:6px;padding:0;font-size:11px;display:inline-flex}.timeline-actions button{cursor:pointer}.timeline-actions button:hover{color:#78adff}.timeline-comments{flex-direction:column;gap:7px;padding-top:10px;display:flex}.timeline-comments p{color:var(--muted);margin:0;font-size:11px}.timeline-comments strong{color:var(--text);margin-right:7px}.timeline-comment-form input{border:1px solid var(--border);color:var(--text);background:0 0;border-radius:8px;flex:1;min-width:0;padding:8px 10px}.timeline-comment-form button{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:8px;justify-content:center;align-items:center;width:34px;display:flex}.album-card{border:1px solid var(--border);border-radius:13px;overflow:hidden}.album-cover{color:var(--muted);background:#1677ff0f;justify-content:center;align-items:center;height:125px;display:flex;overflow:hidden}.album-cover img,.album-cover video{object-fit:cover;width:100%;height:100%}.album-card>div:last-of-type{flex-direction:column;gap:5px;padding:13px 14px 8px;display:flex}.album-card strong{color:var(--text);font-size:13px}.album-card small{color:var(--muted);font-size:11px}.album-card .text-button{margin:0 14px 12px}.theme-light .daily-care-tabs,.theme-light .daily-care-form input,.theme-light .daily-care-form select,.theme-light .daily-care-form textarea,.theme-light .timeline-post-form textarea{background:#fff}.theme-light .daily-care-form option{color:#111827;background:#fff}@media (width<=1000px){.daily-care-timeline{grid-template-columns:1fr}}@media (width<=700px){.daily-care-tabs{grid-template-columns:1fr 1fr;width:100%;display:grid}.daily-care-tabs button{justify-content:center;padding:0 7px}.daily-care-form{grid-template-columns:1fr}.daily-care-notes{grid-column:auto}.daily-care-form>.primary-button{width:100%}.daily-care-update-list article{align-items:start}.daily-care-update-list article>.status-badge{align-self:center}.timeline-post-copy>p{font-size:14px}.album-grid{grid-template-columns:1fr 1fr}.album-cover{height:105px}}.health-activity-form{grid-template-columns:minmax(320px,1.35fr) repeat(3,minmax(150px,.65fr));display:grid}.health-student-picker{grid-row:span 2}.health-student-picker>label{margin-bottom:7px;display:block}.student-tree-search{border:1px solid var(--border);color:var(--muted);background:#0b122059;border-radius:10px;align-items:center;gap:8px;min-height:42px;padding:0 11px;display:flex}.student-tree-search:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px #1677ff1a}.student-tree-search input{color:var(--text);background:0 0;border:0;outline:0;width:100%;min-width:0}.student-tree{border:1px solid var(--border);background:#0b122038;border-radius:11px;max-height:285px;margin-top:9px;padding:7px;overflow-y:auto}.student-tree-year,.student-tree-class{flex-direction:column;display:flex}.student-tree-class{margin-left:14px}.student-tree-folder,.student-tree-student{color:var(--text);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:7px;align-items:center;gap:6px;width:100%;min-height:31px;padding:0 7px;font-size:12px;display:flex}.student-tree-folder:hover,.student-tree-student:hover{background:#1677ff14}.student-tree-folder small{color:var(--muted);margin-left:auto;font-size:10px}.student-tree-folder span{font-weight:600}.class-folder span{font-weight:500}.tree-chevron{color:var(--muted);transition:transform .2s;transform:rotate(-90deg)}.tree-chevron.open{transform:rotate(0)}.student-tree-student{color:var(--muted);gap:8px;margin-left:14px;padding-left:15px}.student-tree-student.selected{color:#9bc4ff;background:#1677ff21}.student-tree-empty{color:var(--muted);padding:12px;font-size:12px}.selected-student-chip{color:#9bc4ff;background:#1677ff1a;border:1px solid #1677ff40;border-radius:10px;justify-content:space-between;align-items:center;margin-top:9px;padding:9px 10px;font-size:12px;display:flex}.selected-student-chip span{flex-direction:column;gap:3px;display:flex}.selected-student-chip strong{color:var(--muted);text-transform:uppercase;font-size:10px;font-weight:500}.selected-student-chip button{color:var(--muted);cursor:pointer;background:0 0;border:0;font-size:18px;line-height:1}.health-activity-form>label{align-self:start}.health-activity-form>.primary-button{grid-column:2/-1;justify-self:start}.theme-light .student-tree-search,.theme-light .student-tree{background:#fff}.theme-light .student-tree-student.selected{background:#1677ff1a}.student-picker-filters,.daily-care-update-filters{gap:7px;margin-top:8px;display:flex}.student-picker-filters select,.daily-care-update-filters select{border:1px solid var(--border);color:var(--muted);background:#0b122059;border-radius:8px;min-width:0;min-height:32px;padding:0 7px;font-size:11px}.student-picker-filters select{flex:1}.recent-students{flex-wrap:wrap;gap:6px;margin-top:9px;display:flex}.recent-students span{color:var(--muted);width:100%;font-size:10px}.recent-students button{color:#9bc4ff;cursor:pointer;background:#1677ff14;border:1px solid #1677ff33;border-radius:99px;padding:5px 8px;font-size:10px}.daily-care-update-filters{margin-bottom:15px}.daily-care-update-filters select{flex:1;min-height:36px}.timeline-comment{border-top:1px solid var(--border);color:var(--muted);margin:10px 0 0;padding-top:9px;font-size:11px}.timeline-comment strong{color:var(--text);margin-right:7px}.theme-light .student-picker-filters select,.theme-light .daily-care-update-filters select{background:#fff}.daily-care-date-banner{background:#1677ff12;border:1px solid #1677ff2e;border-radius:12px;justify-content:space-between;align-items:center;gap:18px;margin:-4px 0 16px;padding:13px 15px;display:flex}.daily-care-date-banner>div{flex-direction:column;gap:3px;display:flex}.daily-care-date-banner strong{color:var(--text);font-size:17px;font-weight:600}.daily-care-date-banner small{color:var(--muted);font-size:11px}.daily-care-date-banner label{color:var(--muted);flex-direction:column;gap:5px;font-size:10px;display:flex}.daily-care-date-banner input{border:1px solid var(--border);color:var(--text);background:#0b122059;border-radius:8px;min-height:34px;padding:0 8px;font-size:12px}.daily-care-date-banner input:focus{border-color:var(--blue);outline:0;box-shadow:0 0 0 3px #1677ff1a}.theme-light .daily-care-date-banner{background:#1677ff0f}.theme-light .daily-care-date-banner input{background:#fff}.daily-care-date-banner input[type=datetime-local]{min-width:190px}.health-activity-form>label:nth-of-type(2){display:flex}.daily-care-date-field{min-width:0}.daily-care-date-display{color:#9bc4ff;background:#1677ff14;border:1px solid #1677ff33;border-radius:9px;padding:9px 10px;font-size:13px;line-height:1.35;display:block}.daily-care-date-field input[type=datetime-local]{border:1px solid var(--border);color:var(--text);background:#0b122059;border-radius:9px;min-height:38px;padding:0 8px;font-size:12px}.daily-care-date-field input[type=datetime-local]:focus{border-color:var(--blue);outline:0;box-shadow:0 0 0 3px #1677ff1a}.theme-light .daily-care-date-display{background:#1677ff0f}.theme-light .daily-care-date-field input[type=datetime-local]{background:#fff}@media (width<=1000px){.health-activity-form{grid-template-columns:repeat(2,1fr)}.health-student-picker{grid-row:span 3}.health-activity-form>.primary-button{grid-column:2}}@media (width<=700px){.health-activity-form{grid-template-columns:1fr}.health-student-picker{grid-row:auto}.health-activity-form>.primary-button{grid-column:auto}.student-tree{max-height:245px}}.directory-profile-backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);opacity:0;background:#0208177a;animation:.24s ease-out both directory-profile-backdrop-in}.directory-profile-backdrop.is-closing{animation:.18s ease-in both directory-profile-backdrop-out}.theme-light .directory-profile-backdrop{background:#0f172a57}.directory-profile-shell{pointer-events:none;z-index:41;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.directory-profile-drawer{border:1px solid var(--border);opacity:0;pointer-events:auto;-ms-overflow-style:none;overscroll-behavior:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch;transform-origin:50%;will-change:opacity, transform;border-radius:20px;width:min(100%,560px);max-width:560px;height:auto;max-height:min(86vh,760px);position:relative;top:auto;right:auto;box-shadow:0 24px 70px #0208175c}.directory-profile-drawer::-webkit-scrollbar{display:none}.directory-profile-shell.is-opening .directory-profile-drawer{animation:.24s ease-out both directory-profile-panel-in}.directory-profile-shell.is-closing .directory-profile-drawer{animation:.18s ease-in both directory-profile-panel-out}.profile-content-transition{animation:.18s ease-out both directory-profile-content-in}@keyframes directory-profile-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes directory-profile-backdrop-out{0%{opacity:1}to{opacity:0}}@keyframes directory-profile-panel-in{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes directory-profile-panel-out{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(8px)scale(.98)}}@keyframes directory-profile-content-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (width<=700px){.directory-profile-shell{align-items:flex-end;padding:12px 10px 0}.directory-profile-drawer{max-width:none;max-height:calc(100dvh - 18px);padding:23px 19px calc(23px + env(safe-area-inset-bottom));border-bottom:0;border-radius:20px 20px 0 0;width:100%}}@media (prefers-reduced-motion:reduce){.directory-profile-backdrop,.directory-profile-backdrop.is-closing,.directory-profile-shell.is-opening .directory-profile-drawer,.directory-profile-shell.is-closing .directory-profile-drawer,.profile-content-transition{animation-duration:1ms}}.parent-filter-grid{grid-template-columns:repeat(4,1fr)}.parent-directory-panel{overflow:hidden}.parent-table-wrap{margin:22px -24px 0;overflow-x:auto}.parent-table-row{border-bottom:1px solid var(--border);color:var(--muted);grid-template-columns:1.35fr 1.25fr .8fr .75fr 1fr .65fr .85fr;align-items:center;gap:14px;min-width:1040px;min-height:66px;padding:0 24px;font-size:14px;display:grid}.parent-table-row:last-child{border-bottom:0}.parent-table-head{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;min-height:44px;font-size:11px;font-weight:700}.parent-table-row:not(.parent-table-head):hover{background:#1677ff09}.parent-contact-cell{flex-direction:column;gap:3px;min-width:0;display:flex}.parent-contact-cell strong,.parent-contact-cell small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.parent-contact-cell strong{color:var(--text);font-size:13px;font-weight:600}.parent-contact-cell small{color:var(--muted);font-size:11px}.parent-mobile-list{display:none}.parent-profile-panel{width:min(100%,780px);max-width:780px}.parent-profile-header .secondary-button,.parent-quick-actions .secondary-button,.parent-mobile-card .secondary-button,.directory-pagination .secondary-button{margin-top:0}.parent-profile-hero{background:#1677ff12;border:1px solid #1677ff2e;border-radius:18px;grid-template-columns:auto 1fr;align-items:center;gap:16px;margin:23px 0 16px;padding:16px;display:grid}.parent-avatar{color:#9bc4ff;letter-spacing:.03em;background:#1677ff29;border:1px solid #1677ff3d;border-radius:16px;justify-content:center;align-items:center;width:58px;height:58px;font-weight:800;display:flex}.parent-title-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.parent-title-row strong{color:var(--text);font-size:18px}.parent-profile-hero p{color:var(--muted);margin:5px 0 12px;font-size:13px}.parent-completeness{grid-template-columns:auto auto 1fr;align-items:center;gap:8px;display:grid}.parent-completeness span,.parent-completeness strong{color:var(--muted);font-size:11px;font-weight:700}.parent-completeness strong{color:#9bc4ff}.parent-completeness i{background:#94a3b82e;border-radius:999px;height:6px;display:block;overflow:hidden}.parent-completeness b{background:linear-gradient(90deg, var(--blue), #73aaff);border-radius:inherit;height:100%;display:block}.parent-quick-actions{flex-wrap:wrap;align-items:center;gap:9px;margin-bottom:20px;display:flex}.parent-section{border-top:1px solid var(--border);padding:20px 0}.parent-section h4,.parent-edit-section h4{color:var(--text);margin:0 0 14px;font-size:16px;font-weight:700}.parent-info-grid,.parent-care-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.parent-field{border:1px solid var(--border);color:var(--muted);background:#0b12203d;border-radius:14px;grid-template-columns:auto 1fr;align-items:start;gap:4px 8px;min-height:70px;padding:12px;display:grid}.parent-field svg{color:#8abbff;grid-row:span 2;margin-top:1px}.parent-field span{text-transform:uppercase;font-size:11px;font-weight:700}.parent-field strong{color:var(--text);overflow-wrap:anywhere;min-width:0;font-size:14px;font-weight:600}.parent-field.incomplete strong{color:#f7ba72}.parent-empty-note{color:var(--muted);background:#94a3b814;border:1px solid #94a3b829;border-radius:13px;align-items:center;gap:8px;margin:0;padding:13px 14px;font-size:13px;display:flex}.parent-empty-note.attention{color:#ffc06e;background:#ff8a001a;border-color:#ff8a0038}.parent-child-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.parent-child-card{border:1px solid var(--border);background:#0b12203d;border-radius:15px;flex-direction:column;gap:9px;padding:14px;display:flex}.parent-child-card strong{color:var(--text);font-size:15px;display:block}.parent-child-card span,.parent-child-card small{color:var(--muted);font-size:12px}.parent-child-card p{flex-wrap:wrap;gap:6px;margin:0;display:flex}.parent-edit-form{flex-direction:column;gap:16px;margin-top:22px;display:flex}.parent-edit-section{border:1px solid var(--border);background:#0b12202e;border-radius:16px;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;padding:16px;display:grid}.parent-edit-section h4,.parent-edit-section .wide-field,.parent-child-edit-card,.parent-edit-section>.parent-empty-note{grid-column:1/-1}.parent-edit-form label{color:var(--muted);flex-direction:column;gap:7px;min-width:0;font-size:12px;font-weight:600;display:flex}.parent-edit-form input,.parent-edit-form textarea{border:1px solid var(--border);color:var(--text);font:inherit;background:#0b122059;border-radius:12px;outline:0;min-height:42px;padding:0 12px;font-size:14px}.parent-edit-form textarea{resize:vertical;padding-top:10px;padding-bottom:10px;line-height:1.5}.parent-edit-form input:focus,.parent-edit-form textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #1677ff1a}.parent-child-edit-card{border-top:1px solid var(--border);grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding-top:14px;display:grid}.inline-error{color:#ffc06e;font-size:11px;font-weight:600}.discard-confirm{color:#ffc06e;background:#ff8a001a;border:1px solid #ff8a003d;border-radius:13px;flex-wrap:wrap;align-items:center;gap:8px;padding:12px;display:flex}.discard-confirm span{margin-right:auto;font-size:13px;font-weight:700}.discard-confirm button{color:var(--text);cursor:pointer;background:#ffffff0f;border:1px solid #ffffff1f;border-radius:9px;min-height:32px;padding:0 10px}.profile-activity-list span strong{color:var(--text);margin-right:5px;font-size:12px}.theme-light .parent-profile-hero,.theme-light .parent-field,.theme-light .parent-child-card,.theme-light .parent-edit-section,.theme-light .parent-edit-form input,.theme-light .parent-edit-form textarea{background:#fff}.theme-light .parent-empty-note{background:#f8fafc;border-color:#0f172a1a}.theme-light .parent-table-row:not(.parent-table-head):hover{background:#1677ff0b}@media (width<=1000px){.parent-filter-grid{grid-template-columns:repeat(2,1fr)}.parent-info-grid,.parent-care-grid,.parent-child-grid{grid-template-columns:1fr}}@media (width<=700px){.parent-page-header{flex-direction:column;align-items:start}.parent-filter-grid{grid-template-columns:1fr}.parent-table-wrap{display:none}.parent-mobile-list{flex-direction:column;gap:10px;margin-top:18px;display:flex}.parent-mobile-card{border:1px solid var(--border);background:#0b122040;border-radius:15px;flex-direction:column;gap:8px;padding:15px;display:flex}.parent-mobile-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.parent-mobile-card p,.parent-mobile-card span{color:var(--muted);margin:0;font-size:13px}.parent-mobile-card>.secondary-button{justify-content:center;width:100%}.parent-profile-panel{width:100%;max-width:none}.parent-profile-hero{grid-template-columns:1fr;align-items:start}.parent-completeness{grid-template-columns:1fr auto}.parent-completeness i{grid-column:1/-1}.parent-quick-actions{flex-direction:column;align-items:stretch}.parent-quick-actions .primary-button,.parent-quick-actions .secondary-button{justify-content:center;width:100%}.parent-edit-section,.parent-child-edit-card{grid-template-columns:1fr}.theme-light .parent-mobile-card{background:#f8fafc}}.dropdown-field,.custom-date-picker{align-self:start;width:100%;min-width:0;position:relative}.custom-dropdown{color:var(--text);z-index:2;width:100%;min-width:0;position:relative}.custom-dropdown-label{color:var(--muted);margin-bottom:7px;font-size:12px;font-weight:600;line-height:1.3;display:block}.custom-dropdown-trigger{appearance:none;color:var(--text);cursor:pointer;font:inherit;text-align:left;background:linear-gradient(#1f2937db,#111827f5);border:1px solid #94a3b82e;border-radius:13px;outline:0;justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:44px;padding:0 13px 0 14px;font-size:14px;transition:background-color .18s,border-color .18s,box-shadow .18s,color .18s;display:flex;box-shadow:0 10px 22px #0208171f,inset 0 1px #ffffff09}.custom-dropdown-trigger>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.custom-dropdown-chevron,.custom-date-trigger svg{color:var(--muted);flex:none;transition:color .18s,transform .18s}.custom-dropdown-trigger:hover{background:linear-gradient(#1f2937fa,#111827);border-color:#1677ff5c}.custom-dropdown-trigger:focus-visible,.custom-dropdown.open .custom-dropdown-trigger,.custom-date-picker.open .custom-dropdown-trigger{border-color:#1677ffc7;box-shadow:0 0 0 3px #1677ff21,0 12px 26px #02081729}.custom-dropdown.open .custom-dropdown-chevron{color:#8abbff;transform:rotate(180deg)}.custom-dropdown.compact .custom-dropdown-trigger{border-radius:12px;min-height:38px;padding:0 11px 0 12px;font-size:12px}.custom-dropdown-menu{z-index:100;background:#111827;border:1px solid #94a3b829;border-radius:14px;flex-direction:column;gap:3px;min-width:100%;max-height:min(260px,48vh);margin-top:7px;padding:6px;animation:.17s ease-out both custom-dropdown-menu-in;display:flex;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 18px 42px #0208175c}.custom-dropdown.menu-up .custom-dropdown-menu{margin-top:0;margin-bottom:7px;top:auto;bottom:100%}.custom-dropdown-menu.is-closing{animation:.16s ease-in both custom-dropdown-menu-out}.custom-dropdown-menu button{color:var(--text);cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;width:100%;min-height:38px;padding:0 10px;font-size:13px;transition:background-color .16s,color .16s;display:flex}.custom-dropdown-menu button span{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.custom-dropdown-menu button svg{color:#8abbff;flex:none}.custom-dropdown-menu button:hover,.custom-dropdown-menu button.active{color:#dbeafe;background:#1677ff1f}.custom-dropdown-menu button.selected{color:#fff;background:#1677ff2e}.custom-dropdown-dot{border-radius:99px;flex:none;width:7px;height:7px}.custom-dropdown-dot.tone-year-4,.custom-dropdown-dot.tone-4a{background:#9cc9ff}.custom-dropdown-dot.tone-4b{background:#78b1ff}.custom-dropdown-dot.tone-year-5,.custom-dropdown-dot.tone-5a{background:#b9aaff}.custom-dropdown-dot.tone-5b{background:#a997ff}.custom-dropdown-dot.tone-year-6,.custom-dropdown-dot.tone-6a{background:#ffd08a}.custom-dropdown-dot.tone-6b{background:#ffbd68}.directory-filter-grid .custom-dropdown,.student-picker-filters .custom-dropdown,.daily-care-update-filters .custom-dropdown,.attendance-controls .custom-dropdown,.attendance-controls .custom-date-picker{min-width:0}.student-picker-filters .custom-dropdown,.daily-care-update-filters .custom-dropdown{flex:1 1 0}.attendance-controls .custom-date-picker,.attendance-controls .custom-dropdown{flex:0 220px}.custom-calendar-popover{z-index:95;background:#111827;border:1px solid #94a3b829;border-radius:16px;width:330px;max-width:min(330px,100vw - 32px);margin-top:7px;padding:12px;animation:.17s ease-out both custom-dropdown-menu-in;position:absolute;top:100%;left:0;box-shadow:0 18px 42px #0208175c}.custom-calendar-popover.is-closing{animation:.16s ease-in both custom-dropdown-menu-out}.custom-calendar-header{grid-template-columns:36px 1fr 36px;align-items:center;gap:8px;margin-bottom:12px;display:grid}.custom-calendar-header .icon-button{width:36px;height:36px}.custom-calendar-selectors{grid-template-columns:1.4fr .85fr;gap:7px;display:grid}.custom-calendar-weekdays,.custom-calendar-grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.custom-calendar-weekdays span{color:var(--muted);text-align:center;padding:5px 0;font-size:10px;font-weight:700}.custom-calendar-grid button{color:var(--text);cursor:pointer;font:inherit;background:0 0;border:1px solid #0000;border-radius:10px;min-height:34px;font-size:12px;transition:background-color .16s,border-color .16s,color .16s}.custom-calendar-grid button:hover{background:#1677ff1a;border-color:#1677ff38}.custom-calendar-grid button.today{border-color:#1677ff73}.custom-calendar-time{border-top:1px solid var(--border);margin-top:12px;padding-top:12px}.theme-light .custom-dropdown-trigger:hover{background:#fff;border-color:#1677ff57}.theme-light .custom-dropdown-menu,.theme-light .custom-calendar-popover{background:#fff;border-color:#0f172a1a;box-shadow:0 18px 38px #0f172a24}.theme-light .custom-dropdown-menu button{color:#111827}.theme-light .custom-dropdown-menu button:hover,.theme-light .custom-dropdown-menu button.active{color:#0f172a;background:#1677ff14}.theme-light .custom-dropdown-menu button.selected{color:#0f172a;background:#1677ff1f}.theme-light .custom-calendar-grid button{color:#111827}.theme-light .custom-calendar-grid button.selected{color:#fff}@keyframes custom-dropdown-menu-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes custom-dropdown-menu-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-4px)}}@media (width<=700px){.custom-dropdown-trigger,.custom-dropdown.compact .custom-dropdown-trigger{min-height:44px}.custom-dropdown-menu{max-height:min(280px,55vh)}.custom-calendar-popover{width:min(330px,100vw - 24px);max-width:calc(100vw - 24px);left:0}.daily-care-update-filters .custom-dropdown,.student-picker-filters .custom-dropdown{flex-basis:calc(50% - 4px)}}@media (width<=390px){.daily-care-update-filters .custom-dropdown,.student-picker-filters .custom-dropdown{flex-basis:100%}}@media (prefers-reduced-motion:reduce){.custom-dropdown-menu,.custom-calendar-popover{animation-duration:1ms}.custom-dropdown-chevron,.custom-dropdown-trigger,.custom-dropdown-menu button,.custom-calendar-grid button{transition-duration:1ms}}.custom-dropdown{isolation:isolate}.custom-dropdown.open,.custom-date-picker.open{z-index:1200}.custom-dropdown-trigger{background:linear-gradient(#1f2937,#111827);border-color:#94a3b83d;box-shadow:0 10px 24px #0208172e,inset 0 1px #ffffff0a}.custom-dropdown-trigger:hover{background:linear-gradient(#263244,#141c2b)}.custom-dropdown-menu{color:#f8fafc;background:#0f172a;border-color:#94a3b838;box-shadow:0 22px 48px #0208176b}.custom-dropdown-menu-portal{z-index:1200;width:auto;min-width:180px;max-width:calc(100vw - 24px);position:fixed;top:auto;bottom:auto;right:auto}.custom-dropdown-menu-portal.placement-up{transform-origin:bottom;animation-name:custom-dropdown-menu-up-in}.custom-dropdown-menu-portal.placement-up.is-closing{animation-name:custom-dropdown-menu-up-out}.custom-dropdown-menu button,.custom-dropdown-option{color:#f8fafc;background:#0f172a}.custom-dropdown-menu button:hover,.custom-dropdown-menu button.active,.custom-dropdown-option:hover,.custom-dropdown-option.active{color:#fff;background:#162238}.custom-dropdown-menu button.selected,.custom-dropdown-option.selected{color:#fff;background:#17345f}.custom-dropdown-menu button.selected:hover,.custom-dropdown-option.selected:hover,.custom-dropdown-menu button.selected.active,.custom-dropdown-option.selected.active{background:#1b3f73}.custom-dropdown-check,.custom-dropdown-menu button svg{color:#8abbff}.custom-dropdown-empty{color:var(--muted);background:#0f172a;border-radius:10px;padding:10px;font-size:13px}.custom-calendar-popover{color:#f8fafc;z-index:1200;background:#0f172a;border-color:#94a3b838;box-shadow:0 22px 48px #0208176b}.custom-calendar-grid button{background:#0f172a}.custom-calendar-grid button.selected{background:var(--blue)}.theme-light .custom-dropdown-trigger{color:#111827;background:linear-gradient(#fff,#f8fafc);border-color:#0f172a24;box-shadow:0 10px 22px #0f172a14,inset 0 1px #fffffff2}.theme-light .custom-dropdown-trigger:hover{background:linear-gradient(#fff,#f3f7fc)}.theme-light .custom-dropdown-menu{color:#111827;background:#fff;border-color:#0f172a1f;box-shadow:0 22px 44px #0f172a29}.theme-light .custom-dropdown-menu button,.theme-light .custom-dropdown-option{color:#111827;background:#fff}.theme-light .custom-dropdown-menu button:hover,.theme-light .custom-dropdown-menu button.active,.theme-light .custom-dropdown-option:hover,.theme-light .custom-dropdown-option.active{color:#0f172a;background:#edf4ff}.theme-light .custom-dropdown-menu button.selected,.theme-light .custom-dropdown-option.selected{color:#0f172a;background:#dbeafe}.theme-light .custom-dropdown-menu button.selected:hover,.theme-light .custom-dropdown-option.selected:hover,.theme-light .custom-dropdown-menu button.selected.active,.theme-light .custom-dropdown-option.selected.active{background:#cfe3ff}.theme-light .custom-dropdown-empty{color:#64748b;background:#fff}.theme-light .custom-calendar-grid button{background:#fff}.custom-calendar-popover,.solid-calendar-popover{overscroll-behavior:contain!important;z-index:9999!important;width:min(380px,100vw - 24px)!important;min-width:min(380px,100vw - 24px)!important;max-height:calc(100dvh - 24px)!important;overflow-y:auto!important}.custom-calendar-popover::-webkit-scrollbar{display:none}.solid-calendar-popover::-webkit-scrollbar{display:none}@media (width<=410px){.custom-calendar-popover,.solid-calendar-popover{width:calc(100vw - 20px)!important;min-width:calc(100vw - 20px)!important}.custom-calendar-popover .custom-calendar-header,.solid-calendar-popover .custom-calendar-header{grid-template-columns:34px minmax(0,1fr) 34px!important;gap:7px!important}.custom-calendar-popover .custom-calendar-selectors,.solid-calendar-popover .custom-calendar-selectors{grid-template-columns:minmax(132px,1fr) minmax(92px,98px)!important;gap:6px!important}.custom-calendar-month-dropdown{min-width:132px!important}.custom-calendar-year-dropdown{min-width:92px!important}.custom-calendar-select-wrap select{padding-left:8px;padding-right:26px;font-size:11px}}.dashboard-summary-overlay,.directory-profile-backdrop{width:100vw!important;min-height:100dvh!important;position:fixed!important;inset:0!important}.dashboard-summary-modal-shell,.directory-profile-shell{justify-content:center!important;align-items:center!important;width:100vw!important;min-height:100dvh!important;padding:20px!important;display:flex!important;position:fixed!important;inset:0!important;overflow:hidden!important}.dashboard-summary-modal{flex-direction:column!important;max-height:calc(100dvh - 40px)!important;display:flex!important;overflow:hidden!important}.directory-profile-drawer{flex-direction:column!important;width:min(100%,560px)!important;max-width:min(560px,100vw - 40px)!important;height:auto!important;max-height:calc(100dvh - 40px)!important;display:flex!important;position:relative!important;top:auto!important;right:auto!important;overflow:hidden!important}.profile-content-transition{overscroll-behavior:contain!important;flex:auto!important;min-height:0!important;overflow-y:auto!important}@media (width<=700px){.dashboard-summary-modal-shell,.directory-profile-shell{justify-content:center!important;align-items:center!important;padding:12px!important}.dashboard-summary-modal,.directory-profile-drawer,.directory-profile-drawer.parent-profile-panel{border-radius:18px!important;width:calc(100vw - 24px)!important;max-width:calc(100vw - 24px)!important;max-height:calc(100dvh - 24px)!important;padding:20px!important}}@media (width<=420px){.dashboard-summary-modal-shell,.directory-profile-shell{padding:10px!important}.dashboard-summary-modal,.directory-profile-drawer,.directory-profile-drawer.parent-profile-panel{width:calc(100vw - 20px)!important;max-width:calc(100vw - 20px)!important;max-height:calc(100dvh - 20px)!important}}.custom-date-picker .custom-date-trigger{background:linear-gradient(#1f2937eb,#111827fa)!important;border-color:#94a3b838!important;border-radius:13px!important;box-shadow:0 10px 24px #02081724,inset 0 1px #ffffff0a!important}.custom-date-picker .custom-date-trigger:hover,.custom-date-picker.open .custom-date-trigger{border-color:#1677ff7a!important;box-shadow:0 0 0 3px #1677ff1f,0 12px 28px #0208172e!important}.custom-date-placeholder{color:var(--muted)!important}.solid-calendar-popover{color:#f8fafc!important;z-index:9999!important;background:#0f172a!important;border:1px solid #94a3b83d!important;border-radius:18px!important;width:min(382px,100vw - 24px)!important;min-width:min(382px,100vw - 24px)!important;max-width:calc(100vw - 24px)!important;margin-top:0!important;padding:12px!important;animation:.17s ease-out both custom-dropdown-menu-in!important;position:fixed!important;overflow:visible!important;box-shadow:0 24px 58px #02081780!important}.solid-calendar-popover.is-closing{animation:.15s ease-in both custom-dropdown-menu-out!important}.solid-calendar-popover .custom-calendar-surface,.solid-calendar-popover .custom-calendar-header,.solid-calendar-popover .custom-calendar-selectors,.solid-calendar-popover .custom-calendar-weekdays,.solid-calendar-popover .custom-calendar-grid,.solid-calendar-popover .custom-calendar-time{color:#f8fafc!important;background:#0f172a!important}.solid-calendar-popover .custom-calendar-header{grid-template-columns:36px minmax(0,1fr) 36px!important;align-items:end!important;gap:10px!important;margin-bottom:12px!important;display:grid!important;overflow:visible!important}.solid-calendar-popover .custom-calendar-header .icon-button{color:#cbd5e1!important;background:#0f172aeb!important;border-color:#94a3b838!important;border-radius:11px!important;width:38px!important;height:38px!important}.solid-calendar-popover .custom-calendar-selectors{grid-template-columns:minmax(158px,1fr) minmax(102px,112px)!important;align-items:end!important;gap:8px!important;min-width:0!important;display:grid!important;overflow:visible!important}.solid-calendar-popover .custom-calendar-month-dropdown,.solid-calendar-popover .custom-calendar-year-dropdown{width:100%!important;min-width:0!important}.solid-calendar-popover .custom-calendar-month-dropdown .custom-dropdown-label,.solid-calendar-popover .custom-calendar-year-dropdown .custom-dropdown-label,.solid-calendar-popover .custom-calendar-time .custom-dropdown-label{color:#cbd5e1bd!important;letter-spacing:.08em!important;text-transform:uppercase!important;margin-bottom:5px!important;font-size:10px!important;font-weight:800!important}.solid-calendar-popover .custom-calendar-month-dropdown .custom-dropdown-trigger,.solid-calendar-popover .custom-calendar-year-dropdown .custom-dropdown-trigger,.solid-calendar-popover .custom-calendar-time .custom-dropdown-trigger{color:#f8fafc!important;background:linear-gradient(#111827,#0f172a)!important;border:1px solid #94a3b842!important;border-radius:11px!important;min-height:38px!important;padding:0 10px!important;font-size:12px!important;font-weight:750!important;overflow:visible!important;box-shadow:inset 0 1px #ffffff0b!important}.solid-calendar-popover .custom-calendar-month-dropdown .custom-dropdown-trigger:hover,.solid-calendar-popover .custom-calendar-year-dropdown .custom-dropdown-trigger:hover,.solid-calendar-popover .custom-calendar-time .custom-dropdown-trigger:hover,.solid-calendar-popover .custom-calendar-month-dropdown.open .custom-dropdown-trigger,.solid-calendar-popover .custom-calendar-year-dropdown.open .custom-dropdown-trigger,.solid-calendar-popover .custom-calendar-time .custom-dropdown.open .custom-dropdown-trigger{background:linear-gradient(#172033,#111827)!important;border-color:#1677ff7a!important;box-shadow:0 0 0 3px #1677ff1f,inset 0 1px #ffffff0d!important}.solid-calendar-popover .custom-calendar-month-dropdown .custom-dropdown-value,.solid-calendar-popover .custom-calendar-year-dropdown .custom-dropdown-value,.solid-calendar-popover .custom-calendar-time .custom-dropdown-value{text-overflow:clip!important;white-space:nowrap!important;overflow:hidden!important}.solid-calendar-popover .custom-calendar-weekdays{gap:5px!important;margin-top:6px!important}.solid-calendar-popover .custom-calendar-weekdays span{color:#cbd5e1ad!important;letter-spacing:.04em!important;font-size:10px!important;font-weight:800!important}.solid-calendar-popover .custom-calendar-grid{gap:5px!important}.solid-calendar-popover .custom-calendar-grid button{color:#e5edf8!important;background:0 0!important;border:1px solid #0000!important;border-radius:11px!important;min-height:36px!important;font-size:12px!important;font-weight:650!important;transition:background-color .16s,border-color .16s,box-shadow .16s,color .16s,transform .16s!important}.solid-calendar-popover .custom-calendar-grid button:hover{color:#fff!important;background:#1677ff21!important;border-color:#1677ff47!important}.solid-calendar-popover .custom-calendar-grid button.today{color:#ffd08a!important;border-color:#ff8a008c!important}.solid-calendar-popover .custom-calendar-grid button.selected{color:#fff!important;background:linear-gradient(#2f8cff,#1677ff)!important;border-color:#4f98ff!important;box-shadow:0 8px 18px #1677ff47!important}.solid-calendar-popover .custom-calendar-grid button:active{transform:scale(.96)}.solid-calendar-popover .custom-calendar-time{border-top:1px solid #94a3b82e!important;margin-top:12px!important;padding-top:12px!important}.custom-dropdown-menu-portal{z-index:10000!important;background:#0f172a!important;border:1px solid #94a3b83d!important;border-radius:14px!important;gap:4px!important;max-height:min(260px,48vh)!important;padding:6px!important;box-shadow:0 22px 52px #0208177a!important}.custom-dropdown-menu-portal .custom-dropdown-option{color:#e5edf8!important;border-radius:10px!important;min-height:37px!important;font-size:13px!important}.custom-dropdown-menu-portal .custom-dropdown-option:hover,.custom-dropdown-menu-portal .custom-dropdown-option.active{color:#fff!important;background:#1677ff21!important}.custom-dropdown-menu-portal .custom-dropdown-option.selected{color:#fff!important;background:#1677ff33!important}.custom-dropdown-menu-portal .custom-dropdown-check{color:#9bc4ff!important}.theme-light .custom-date-picker .custom-date-trigger{background:linear-gradient(#fff,#f8fafc)!important;border-color:#0f172a21!important;box-shadow:0 8px 20px #0f172a12,inset 0 1px #ffffffe6!important}.theme-light .solid-calendar-popover,.theme-light .solid-calendar-popover .custom-calendar-surface,.theme-light .solid-calendar-popover .custom-calendar-header,.theme-light .solid-calendar-popover .custom-calendar-selectors,.theme-light .solid-calendar-popover .custom-calendar-weekdays,.theme-light .solid-calendar-popover .custom-calendar-grid,.theme-light .solid-calendar-popover .custom-calendar-time{color:#111827!important;background:#fff!important}.theme-light .solid-calendar-popover{border-color:#0f172a1f!important;box-shadow:0 24px 50px #0f172a2e!important}.theme-light .solid-calendar-popover .custom-calendar-header .icon-button,.theme-light .solid-calendar-popover .custom-calendar-month-dropdown .custom-dropdown-trigger,.theme-light .solid-calendar-popover .custom-calendar-year-dropdown .custom-dropdown-trigger,.theme-light .solid-calendar-popover .custom-calendar-time .custom-dropdown-trigger{color:#111827!important;background:linear-gradient(#fff,#f8fafc)!important;border-color:#0f172a24!important}.theme-light .solid-calendar-popover .custom-calendar-month-dropdown .custom-dropdown-label,.theme-light .solid-calendar-popover .custom-calendar-year-dropdown .custom-dropdown-label,.theme-light .solid-calendar-popover .custom-calendar-time .custom-dropdown-label,.theme-light .solid-calendar-popover .custom-calendar-weekdays span{color:#475569c2!important}.theme-light .solid-calendar-popover .custom-calendar-grid button{color:#111827!important}.theme-light .solid-calendar-popover .custom-calendar-grid button:hover{background:#edf4ff!important;border-color:#1677ff38!important}.theme-light .solid-calendar-popover .custom-calendar-grid button.today{color:#b96100!important}.theme-light .solid-calendar-popover .custom-calendar-grid button.selected{color:#fff!important}.theme-light .custom-dropdown-menu-portal{background:#fff!important;border-color:#0f172a1f!important;box-shadow:0 22px 44px #0f172a2b!important}.theme-light .custom-dropdown-menu-portal .custom-dropdown-option{color:#111827!important}.theme-light .custom-dropdown-menu-portal .custom-dropdown-option:hover,.theme-light .custom-dropdown-menu-portal .custom-dropdown-option.active{color:#0f172a!important;background:#edf4ff!important}.theme-light .custom-dropdown-menu-portal .custom-dropdown-option.selected{color:#0f172a!important;background:#dbeafe!important}@media (width<=410px){.solid-calendar-popover{width:calc(100vw - 20px)!important;min-width:calc(100vw - 20px)!important;padding:10px!important}.solid-calendar-popover .custom-calendar-header{grid-template-columns:34px minmax(0,1fr) 34px!important;gap:7px!important}.solid-calendar-popover .custom-calendar-header .icon-button{width:34px!important;height:34px!important}.solid-calendar-popover .custom-calendar-selectors{grid-template-columns:minmax(130px,1fr) minmax(92px,98px)!important;gap:6px!important}.solid-calendar-popover .custom-calendar-grid button{min-height:34px!important}}.attendance-summary-rich{grid-template-columns:repeat(6,minmax(0,1fr))!important}.attendance-summary-rich .attendance-issue-strip{flex-wrap:wrap;grid-column:1/-1;gap:8px;display:flex}.attendance-issue-strip button{color:#ffc06e;cursor:pointer;background:#ff8a0017;border:1px solid #ff8a0033;border-radius:999px;align-items:center;gap:6px;min-height:34px;padding:0 12px;font-size:12px;font-weight:700;transition:background-color .18s,border-color .18s,color .18s;display:inline-flex}.attendance-issue-strip button.active,.attendance-issue-strip button:hover{color:#ffd89c;background:#ff8a0029;border-color:#ff8a0052}.attendance-register-head-rich,.attendance-register-row-rich{grid-template-columns:minmax(210px,1fr) minmax(170px,.8fr) minmax(128px,.62fr) minmax(128px,.62fr) minmax(92px,.42fr) minmax(180px,.86fr)!important}.attendance-register-row-rich{min-height:94px!important}.attendance-student-cell-rich em{color:var(--muted);font-size:11px;font-style:normal}.attendance-avatar{color:#fff;cursor:pointer;border:1px solid #94a3b83d;border-radius:50%;flex:none;justify-content:center;align-items:center;width:44px;height:44px;font-size:13px;font-weight:800;display:inline-flex;overflow:hidden;box-shadow:0 8px 18px #02081729}.attendance-avatar img,.attendance-preview-photo img{object-fit:cover;width:100%;height:100%}.attendance-avatar.blue,.attendance-preview-photo.blue{background:linear-gradient(135deg,#1677ff,#7ab2ff)}.attendance-avatar.orange,.attendance-preview-photo.orange{color:#1f2937;background:linear-gradient(135deg,#ff8a00,#ffc06e)}.attendance-avatar.green,.attendance-preview-photo.green{color:#10261b;background:linear-gradient(135deg,#2fb66d,#8ce0aa)}.attendance-avatar-preview{color:var(--text);z-index:10020;background:#111827fa;border:1px solid #94a3b833;border-radius:16px;padding:14px;animation:.17s ease-out both custom-dropdown-menu-in;position:fixed;box-shadow:0 24px 58px #02081773}.attendance-preview-photo{border-radius:14px;justify-content:center;align-items:center;height:112px;margin-bottom:12px;font-size:24px;font-weight:800;display:flex;overflow:hidden}.attendance-avatar-preview strong,.attendance-avatar-preview span,.attendance-avatar-preview small{display:block}.attendance-avatar-preview strong{color:var(--text);margin-bottom:4px;font-size:15px}.attendance-avatar-preview span,.attendance-avatar-preview small{color:var(--muted);font-size:12px}.attendance-avatar-preview p{border-top:1px solid var(--border);justify-content:space-between;align-items:center;margin:12px 0 0;padding-top:11px;display:flex}.attendance-avatar-preview b{color:#9bc4ff}.attendance-status-cell-rich{flex-direction:column;align-items:start!important}.attendance-status-cell-rich .custom-dropdown{width:100%}.attendance-time-picker{flex-direction:column;gap:5px;min-width:0;display:flex}.attendance-time-picker>button{color:var(--text);cursor:pointer;font:inherit;text-align:left;background:#1677ff14;border:1px solid #1677ff2e;border-radius:11px;flex-direction:column;align-items:start;gap:3px;width:100%;min-height:47px;padding:8px 10px;transition:background-color .18s,border-color .18s,box-shadow .18s;display:flex}.attendance-time-picker>button:hover:not(:disabled){background:#1677ff21;border-color:#1677ff57}.attendance-time-picker>button:disabled{color:var(--muted);cursor:default;background:#94a3b814;border-color:#94a3b81f}.attendance-time-picker>button span,.attendance-duration-cell span,.attendance-note-cell span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:800}.attendance-time-picker>button strong,.attendance-duration-cell strong{color:var(--text);font-size:13px}.attendance-time-picker.has-error>button{border-color:#f8717180;box-shadow:0 0 0 3px #f871711a}.attendance-time-picker>small{color:#ffa2a2;font-size:11px;line-height:1.35}.attendance-time-popover{z-index:10010;background:#0f172a;border:1px solid #94a3b83d;border-radius:16px;padding:13px;animation:.17s ease-out both custom-dropdown-menu-in;position:fixed;box-shadow:0 24px 58px #02081780}.attendance-time-popover-header,.attendance-time-actions{justify-content:space-between;align-items:center;gap:9px;display:flex}.attendance-time-popover-header>span{color:var(--text);font-size:13px;font-weight:800}.attendance-time-popover-header button{color:#9bc4ff;cursor:pointer;background:#1677ff1f;border:1px solid #1677ff3d;border-radius:999px;align-items:center;gap:5px;min-height:31px;padding:0 10px;font-size:11px;font-weight:800;display:inline-flex}.attendance-time-grid{grid-template-columns:.8fr .9fr .9fr;gap:8px;margin:13px 0;display:grid}.attendance-time-actions .secondary-button,.attendance-time-actions .primary-button{justify-content:center;min-height:36px;margin-top:0}.attendance-duration-cell,.attendance-note-cell{flex-direction:column;gap:7px;min-width:0;display:flex}.attendance-note-cell>div:first-child{flex-direction:column;gap:5px;min-width:0;display:flex}.attendance-note-cell strong{color:var(--text);align-items:center;gap:5px;min-width:0;font-size:12px;display:inline-flex}.attendance-note-cell em{color:var(--muted);font-size:12px;font-style:normal}.attendance-note-actions{grid-template-columns:minmax(0,1fr) 28px;align-items:center;gap:6px;display:grid}.attendance-note-actions>button{color:#ffa2a2;cursor:pointer;background:#f871711a;border:1px solid #f871712e;border-radius:8px;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.attendance-register-row-rich.is-protected{background:#94a3b809}.attendance-locked-pill{color:var(--muted);background:#94a3b81f;border:1px solid #94a3b82e;border-radius:999px;align-items:center;gap:6px;min-height:32px;padding:0 10px;font-size:12px;font-weight:800;display:inline-flex}.attendance-review-panel{border:1px solid var(--border);background:#111827c7;border-radius:15px;grid-template-columns:minmax(160px,.7fr) minmax(260px,1.2fr) auto;align-items:center;gap:16px;margin-top:14px;padding:16px;display:grid}.attendance-review-panel h3{color:var(--text);margin:0;font-size:17px}.attendance-review-panel ul{grid-template-columns:1fr 1fr;gap:7px 12px;margin:0;padding:0;list-style:none;display:grid}.attendance-review-panel li{color:var(--muted);font-size:12px;font-weight:700}.attendance-review-panel li.ok{color:#8ce0aa}.attendance-review-panel li.warning{color:#ffc06e}.attendance-review-actions{justify-content:end;align-items:center;gap:8px;display:flex}.attendance-review-actions .secondary-button,.attendance-review-actions .primary-button{white-space:nowrap;margin-top:0}.attendance-lock-overlay{z-index:10030;background:#0208179e;position:fixed;inset:0}.attendance-lock-modal{animation:dashboard-summary-modal-in var(--motion-normal) var(--ease-emphasized) both;background:var(--card);border:1px solid var(--border);z-index:10031;border-radius:18px;width:calc(100vw - 32px);max-width:420px;padding:24px;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 26px 70px #02081773}.attendance-lock-icon{color:#9bc4ff;background:#1677ff21;border-radius:12px;justify-content:center;align-items:center;width:42px;height:42px;margin-bottom:15px;display:flex}.attendance-lock-modal h3{color:var(--text);margin:0 0 8px;font-size:22px}.attendance-lock-modal p{color:var(--muted);margin:0 0 20px;font-size:13px;line-height:1.6}.attendance-lock-modal>div:last-child{justify-content:end;gap:8px;display:flex}.attendance-lock-modal .secondary-button{margin-top:0}.attendance-toast.warning{color:#ffd08a;background:#2f210c;border-color:#ff8a0059}.theme-light .attendance-avatar-preview,.theme-light .attendance-time-popover{background:#fff;border-color:#0f172a1f;box-shadow:0 22px 44px #0f172a2e}.theme-light .attendance-time-picker>button,.theme-light .attendance-review-panel,.theme-light .attendance-lock-modal{background:#fff;border-color:#0f172a1a}.theme-light .attendance-register-row-rich.is-protected{background:#f8fafc}@media (width<=1180px){.attendance-summary-rich{grid-template-columns:repeat(3,minmax(0,1fr))!important}.attendance-register-head-rich,.attendance-register-row-rich{grid-template-columns:minmax(210px,1.1fr) minmax(160px,.9fr) minmax(132px,.7fr) minmax(132px,.7fr)}.attendance-duration-cell,.attendance-note-cell{grid-column:span 2}.attendance-review-panel{grid-template-columns:1fr}.attendance-review-actions{justify-content:start}}@media (width<=900px){.attendance-register-row-rich{grid-template-columns:1fr 1fr!important}.attendance-duration-cell,.attendance-note-cell{grid-column:auto}}@media (width<=700px){.attendance-summary-rich{grid-template-columns:repeat(2,minmax(0,1fr))!important}.attendance-review-panel ul,.attendance-time-grid{grid-template-columns:1fr}.attendance-review-actions,.attendance-lock-modal>div:last-child{flex-direction:column;align-items:stretch}.attendance-review-actions .primary-button,.attendance-review-actions .secondary-button,.attendance-lock-modal .primary-button,.attendance-lock-modal .secondary-button{justify-content:center;width:100%}}@media (width<=520px){.attendance-summary-rich,.attendance-register-row-rich{grid-template-columns:1fr!important}.attendance-avatar{width:40px;height:40px}.attendance-time-popover{width:calc(100vw - 24px)!important;left:12px!important}.attendance-note-actions{grid-template-columns:minmax(0,1fr) 34px}}.dashboard-summary-overlay,.directory-profile-backdrop,.student-profile-backdrop{width:100vw;min-height:100dvh;position:fixed!important;inset:0!important}.dashboard-summary-modal-shell,.directory-profile-shell{width:100vw;min-height:100dvh;overflow:hidden;justify-content:center!important;align-items:center!important;padding:20px!important;display:flex!important;position:fixed!important;inset:0!important}.dashboard-summary-modal{flex-direction:column;display:flex;max-height:calc(100dvh - 40px)!important;overflow:hidden!important}.dashboard-summary-metrics{min-height:0;overflow-y:auto}.directory-profile-drawer{flex-direction:column;display:flex;width:min(100%,560px)!important;max-width:min(560px,100vw - 40px)!important;height:auto!important;max-height:calc(100dvh - 40px)!important;position:relative!important;top:auto!important;right:auto!important;overflow:hidden!important}.directory-profile-drawer.parent-profile-panel{width:min(100%,860px)!important;max-width:min(860px,100vw - 40px)!important}.directory-profile-header,.profile-feedback{flex:none}.profile-content-transition{overscroll-behavior:contain;flex:auto;min-height:0;padding-right:2px;overflow-y:auto}@media (width<=700px){.dashboard-summary-modal-shell,.directory-profile-shell{justify-content:center!important;align-items:center!important;padding:12px!important}.dashboard-summary-modal,.directory-profile-drawer,.directory-profile-drawer.parent-profile-panel{border-radius:18px!important;width:calc(100vw - 24px)!important;max-width:calc(100vw - 24px)!important;max-height:calc(100dvh - 24px)!important;padding:20px!important}}@media (width<=420px){.dashboard-summary-modal-shell,.directory-profile-shell{padding:10px!important}.dashboard-summary-modal,.directory-profile-drawer,.directory-profile-drawer.parent-profile-panel{width:calc(100vw - 20px)!important;max-width:calc(100vw - 20px)!important;max-height:calc(100dvh - 20px)!important}}.dashboard-header-actions{flex-direction:column;align-items:flex-end;gap:10px;display:flex}.dashboard-summary-button{color:#9bc4ff;cursor:pointer;min-height:40px;transition:background-color var(--motion-normal) var(--ease-standard), border-color var(--motion-normal) var(--ease-standard), box-shadow var(--motion-normal) var(--ease-standard), color var(--motion-normal) var(--ease-standard), transform var(--motion-normal) var(--ease-standard);white-space:nowrap;background:#1677ff24;border:1px solid #1677ff47;border-radius:12px;align-items:center;gap:8px;padding:0 14px;font-size:12px;font-weight:700;display:inline-flex}.dashboard-summary-button:hover{color:#d9eaff;background:#1677ff38;border-color:#1677ff7a;transform:translateY(-1px);box-shadow:0 10px 24px #1677ff1f}.dashboard-summary-button:focus-visible,.dashboard-summary-close:focus-visible{border-color:#1677ffc7;outline:0;box-shadow:0 0 0 3px #1677ff24}.dashboard-summary-overlay{animation:dashboard-summary-overlay-in var(--motion-fast) var(--ease-standard) both;z-index:88;background:#020817ad;position:fixed;inset:0}.dashboard-summary-modal-shell{pointer-events:none;z-index:89;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.dashboard-summary-modal{animation:dashboard-summary-modal-in var(--motion-normal) var(--ease-emphasized) both;color:var(--text);pointer-events:auto;background:#111827fa;border:1px solid #94a3b82e;border-radius:20px;width:min(100%,640px);max-width:640px;max-height:calc(100vh - 48px);padding:24px;overflow-y:auto;box-shadow:0 28px 80px #02081780}.dashboard-summary-modal-header{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.dashboard-summary-modal-header h3{color:var(--text);letter-spacing:-.035em;margin:0;font-size:27px;font-weight:700;line-height:1.15}.dashboard-summary-modal-header .eyebrow{font-size:12px}.dashboard-summary-modal-header p{color:var(--muted);margin:7px 0 0;font-size:14px}.dashboard-summary-close{color:var(--muted);cursor:pointer;height:38px;transition:background-color var(--motion-normal) var(--ease-standard), border-color var(--motion-normal) var(--ease-standard), color var(--motion-normal) var(--ease-standard), transform var(--motion-normal) var(--ease-standard);background:#ffffff0d;border:1px solid #94a3b829;border-radius:11px;flex:none;justify-content:center;align-items:center;width:38px;display:flex}.dashboard-summary-close:hover{color:#bdd7ff;background:#1677ff24;border-color:#1677ff57}.dashboard-rate-panel{background:linear-gradient(135deg,#1677ff24,#ff8a0014);border:1px solid #94a3b829;border-radius:16px;justify-content:space-between;align-items:center;gap:18px;margin:22px 0 14px;padding:18px;display:flex}.dashboard-rate-panel>div{flex-direction:column;gap:5px;display:flex}.dashboard-rate-panel span{color:var(--muted);letter-spacing:.09em;text-transform:uppercase;font-size:13px;font-weight:700}.dashboard-rate-panel strong{color:var(--text);letter-spacing:-.05em;font-size:34px;font-weight:800;line-height:1}.dashboard-rate-panel p{color:var(--muted);text-align:right;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:5px;margin:0;font-size:14px;display:flex}.dashboard-summary-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.dashboard-summary-metric{background:#0b12206b;border:1px solid #94a3b824;border-radius:14px;min-height:96px;padding:15px}.dashboard-summary-metric span{color:var(--muted);margin-bottom:14px;font-size:13px;font-weight:700;display:block}.dashboard-summary-metric strong{color:var(--text);letter-spacing:-.045em;font-size:34px;font-weight:800;line-height:1;display:block}.dashboard-summary-metric.blue strong{color:#9bc4ff}.dashboard-summary-metric.green strong{color:#8ce0aa}.dashboard-summary-metric.orange strong{color:#ffc06e}.dashboard-summary-metric.red strong{color:#ffa2a2}.dashboard-summary-metric.muted strong{color:#cbd5e1}.theme-light .dashboard-summary-button{color:#0d5ec7;background:#1677ff1a;border-color:#1677ff2e}.theme-light .dashboard-summary-button:hover{color:#0b4fa8;background:#1677ff26;border-color:#1677ff47}.theme-light .dashboard-summary-overlay{background:#0f172a6b}.theme-light .dashboard-summary-modal{background:#fffffffa;border-color:#0f172a1a;box-shadow:0 28px 70px #0f172a33}.theme-light .dashboard-summary-close{background:#0f172a0a;border-color:#0f172a1a}.theme-light .dashboard-rate-panel{background:linear-gradient(135deg,#1677ff1a,#ff8a0014);border-color:#0f172a1a}.theme-light .dashboard-summary-metric{background:#f8fafc;border-color:#0f172a14}.theme-light .dashboard-summary-metric.blue strong{color:#0d5ec7}.theme-light .dashboard-summary-metric.green strong{color:#14854b}.theme-light .dashboard-summary-metric.orange strong{color:#b96100}.theme-light .dashboard-summary-metric.red strong{color:#c24141}.theme-light .dashboard-summary-metric.muted strong{color:#334155}@keyframes dashboard-summary-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes dashboard-summary-modal-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (width<=700px){.dashboard-header-actions{align-items:stretch;width:100%}.dashboard-summary-button{justify-content:center;width:100%}.dashboard-summary-modal-shell{padding:14px}.dashboard-summary-modal{border-radius:18px;max-height:calc(100vh - 28px);padding:20px}.dashboard-rate-panel{flex-direction:column;align-items:flex-start}.dashboard-rate-panel p{text-align:left;justify-content:flex-start;font-size:13px}.dashboard-summary-modal-header h3{font-size:24px}.dashboard-summary-modal-header p,.dashboard-rate-panel span,.dashboard-summary-metric span,.dashboard-summary-modal-header .eyebrow{font-size:12px}.dashboard-summary-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=420px){.dashboard-summary-metric strong{font-size:30px}.dashboard-summary-metrics{grid-template-columns:1fr}}.custom-calendar-popover,.solid-calendar-popover{z-index:9999!important;width:min(360px,100vw - 32px)!important;min-width:min(360px,100vw - 32px)!important}.custom-calendar-popover .custom-calendar-month-dropdown,.solid-calendar-popover .custom-calendar-month-dropdown{min-width:150px}.custom-calendar-popover .custom-calendar-year-dropdown,.solid-calendar-popover .custom-calendar-year-dropdown{min-width:96px}.custom-calendar-popover .custom-calendar-month-dropdown .custom-dropdown-trigger,.custom-calendar-popover .custom-calendar-year-dropdown .custom-dropdown-trigger,.solid-calendar-popover .custom-calendar-month-dropdown .custom-dropdown-trigger,.solid-calendar-popover .custom-calendar-year-dropdown .custom-dropdown-trigger{min-height:38px;padding-left:10px;padding-right:9px;overflow:visible}.custom-calendar-popover .custom-calendar-month-dropdown .custom-dropdown-value,.custom-calendar-popover .custom-calendar-year-dropdown .custom-dropdown-value,.custom-calendar-popover .custom-calendar-month-dropdown .custom-dropdown-trigger>span,.custom-calendar-popover .custom-calendar-year-dropdown .custom-dropdown-trigger>span,.solid-calendar-popover .custom-calendar-month-dropdown .custom-dropdown-value,.solid-calendar-popover .custom-calendar-year-dropdown .custom-dropdown-value,.solid-calendar-popover .custom-calendar-month-dropdown .custom-dropdown-trigger>span,.solid-calendar-popover .custom-calendar-year-dropdown .custom-dropdown-trigger>span{text-overflow:clip;white-space:nowrap;overflow:visible}.custom-calendar-popover .custom-calendar-month-dropdown .custom-dropdown-chevron,.custom-calendar-popover .custom-calendar-year-dropdown .custom-dropdown-chevron,.solid-calendar-popover .custom-calendar-month-dropdown .custom-dropdown-chevron,.solid-calendar-popover .custom-calendar-year-dropdown .custom-dropdown-chevron{flex:none;margin-left:4px}@media (width<=390px){.custom-calendar-popover,.solid-calendar-popover{width:calc(100vw - 24px)!important;min-width:calc(100vw - 24px)!important}.custom-calendar-popover .custom-calendar-header,.solid-calendar-popover .custom-calendar-header{grid-template-columns:34px minmax(0,1fr) 34px}.custom-calendar-popover .custom-calendar-selectors,.solid-calendar-popover .custom-calendar-selectors{grid-template-columns:minmax(128px,1fr) minmax(86px,92px);gap:6px}.custom-calendar-popover .custom-calendar-month-dropdown,.solid-calendar-popover .custom-calendar-month-dropdown{min-width:128px}.custom-calendar-popover .custom-calendar-year-dropdown,.solid-calendar-popover .custom-calendar-year-dropdown{min-width:86px}}.custom-date-picker.open,.custom-date-picker.open .custom-calendar-popover,.custom-date-picker.open .solid-calendar-popover{z-index:9999}.custom-date-picker.open .solid-calendar-popover{width:min(330px,100vw - 32px);max-width:calc(100vw - 32px);margin-top:0;top:auto;left:auto;right:auto;overflow:hidden;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;color:#f8fafc!important;opacity:1!important;background:#0f172a!important;border:1px solid #64748bf2!important;animation:none!important;position:fixed!important;box-shadow:0 28px 70px #0000009e!important}.custom-date-picker.open .custom-calendar-surface,.custom-date-picker.open .solid-calendar-popover .custom-calendar-header,.custom-date-picker.open .solid-calendar-popover .custom-calendar-selectors,.custom-date-picker.open .solid-calendar-popover .custom-calendar-weekdays,.custom-date-picker.open .solid-calendar-popover .custom-calendar-grid,.custom-date-picker.open .solid-calendar-popover .custom-calendar-time{-webkit-backdrop-filter:none!important;backdrop-filter:none!important;color:#f8fafc!important;opacity:1!important;background:#0f172a!important}.custom-date-picker.open .custom-calendar-surface{border-radius:15px;min-height:100%}.custom-date-picker.open .solid-calendar-popover .custom-calendar-grid button{color:#f8fafc!important;opacity:1!important;background:#0f172a!important}.custom-date-picker.open .solid-calendar-popover .custom-calendar-grid button:hover{background:#162238!important}.custom-date-picker.open .solid-calendar-popover .custom-calendar-grid button.muted{color:#cbd5e194!important}.custom-date-picker.open .solid-calendar-popover .custom-calendar-grid button.selected{background:var(--blue)!important;border-color:var(--blue)!important;color:#fff!important}.theme-light .custom-date-picker.open .solid-calendar-popover{color:#111827!important;background:#fff!important;border-color:#cbd5e1fa!important;box-shadow:0 28px 60px #0f172a3d!important}.theme-light .custom-date-picker.open .custom-calendar-surface,.theme-light .custom-date-picker.open .solid-calendar-popover .custom-calendar-header,.theme-light .custom-date-picker.open .solid-calendar-popover .custom-calendar-selectors,.theme-light .custom-date-picker.open .solid-calendar-popover .custom-calendar-weekdays,.theme-light .custom-date-picker.open .solid-calendar-popover .custom-calendar-grid,.theme-light .custom-date-picker.open .solid-calendar-popover .custom-calendar-time,.theme-light .custom-date-picker.open .solid-calendar-popover .custom-calendar-grid button{color:#111827!important;background:#fff!important}.theme-light .custom-date-picker.open .solid-calendar-popover .custom-calendar-grid button:hover{background:#edf4ff!important}.theme-light .custom-date-picker.open .solid-calendar-popover .custom-calendar-grid button.muted{color:#64748ba3!important}.theme-light .custom-date-picker.open .solid-calendar-popover .custom-calendar-grid button.selected{background:var(--blue)!important;color:#fff!important}.solid-calendar-popover{isolation:isolate;padding:12px;top:auto;left:auto;right:auto;overflow:hidden;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;color:#f8fafc!important;opacity:1!important;z-index:9999!important;background:#0f172a!important;border:1px solid #64748bf2!important;width:min(330px,100vw - 32px)!important;max-width:calc(100vw - 32px)!important;margin-top:0!important;animation:none!important;position:fixed!important;box-shadow:0 28px 70px #0000009e!important}.solid-calendar-popover.is-closing{opacity:1!important;animation:none!important}.solid-calendar-popover .custom-calendar-surface,.solid-calendar-popover .custom-calendar-header,.solid-calendar-popover .custom-calendar-selectors,.solid-calendar-popover .custom-calendar-weekdays,.solid-calendar-popover .custom-calendar-grid,.solid-calendar-popover .custom-calendar-time{-webkit-backdrop-filter:none!important;backdrop-filter:none!important;color:#f8fafc!important;opacity:1!important;background:#0f172a!important}.solid-calendar-popover .custom-calendar-grid button{color:#f8fafc!important;opacity:1!important;background:#0f172a!important}.solid-calendar-popover .custom-calendar-grid button:hover{background:#162238!important}.solid-calendar-popover .custom-calendar-grid button.muted{color:#cbd5e194!important}.solid-calendar-popover .custom-calendar-grid button.selected{background:var(--blue)!important;border-color:var(--blue)!important;color:#fff!important}.theme-light .solid-calendar-popover{color:#111827!important;background:#fff!important;border-color:#cbd5e1fa!important;box-shadow:0 28px 60px #0f172a3d!important}.theme-light .solid-calendar-popover .custom-calendar-surface,.theme-light .solid-calendar-popover .custom-calendar-header,.theme-light .solid-calendar-popover .custom-calendar-selectors,.theme-light .solid-calendar-popover .custom-calendar-weekdays,.theme-light .solid-calendar-popover .custom-calendar-grid,.theme-light .solid-calendar-popover .custom-calendar-time,.theme-light .solid-calendar-popover .custom-calendar-grid button{color:#111827!important;background:#fff!important}.theme-light .solid-calendar-popover .custom-calendar-grid button:hover{background:#edf4ff!important}.theme-light .solid-calendar-popover .custom-calendar-grid button.muted{color:#64748ba3!important}.theme-light .solid-calendar-popover .custom-calendar-grid button.selected{background:var(--blue)!important;color:#fff!important}.solid-calendar-popover{width:min(360px,100vw - 32px)!important}.solid-calendar-popover .custom-calendar-header{grid-template-columns:36px minmax(0,1fr) 36px;gap:10px}.solid-calendar-popover .custom-calendar-selectors{grid-template-columns:minmax(142px,1fr) minmax(86px,96px);align-items:center;gap:8px;min-width:0;display:grid}.solid-calendar-popover .custom-calendar-selectors .custom-dropdown{min-width:0}.solid-calendar-popover .custom-calendar-selectors .custom-dropdown-trigger{min-height:38px;padding-left:10px;padding-right:9px}.solid-calendar-popover .custom-calendar-selectors .custom-dropdown-value,.solid-calendar-popover .custom-calendar-selectors .custom-dropdown-trigger>span{text-overflow:clip;white-space:nowrap;overflow:visible}.solid-calendar-popover .custom-calendar-selectors .custom-dropdown-chevron{flex:none;margin-left:4px}@media (width<=390px){.solid-calendar-popover .custom-calendar-header{grid-template-columns:34px minmax(0,1fr) 34px}.solid-calendar-popover .custom-calendar-selectors{grid-template-columns:minmax(120px,1fr) minmax(78px,86px);gap:6px}.solid-calendar-popover .custom-calendar-selectors .custom-dropdown-trigger{padding-left:8px;padding-right:7px;font-size:11px}}.health-student-picker>label{color:var(--text);margin-bottom:10px;font-size:13px;font-weight:700}.health-student-picker .student-tree-search{background:#0f172a85;border:0;border-radius:11px;width:100%;min-height:40px;padding:0 11px;box-shadow:inset 0 0 0 1px #94a3b81f}.health-student-picker .student-tree-search:focus-within{box-shadow:inset 0 0 0 1px #1677ff80,0 0 0 3px #1677ff17}.health-student-picker .student-tree-search svg{color:var(--muted);width:14px;height:14px}.health-student-picker .student-tree-search input{min-height:40px;padding:0;font-size:13px}.health-student-picker .student-picker-filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:8px;display:grid}.health-student-picker .student-picker-filters .custom-dropdown{width:100%;min-width:0}.health-student-picker .student-picker-filters .custom-dropdown-trigger{box-shadow:none;background:#0f172a6b;border-color:#94a3b81f;border-radius:10px;gap:6px;min-height:36px;padding:0 9px 0 10px;font-size:11px}.health-student-picker .student-picker-filters .custom-dropdown-trigger>span{text-overflow:clip}.health-student-picker .student-picker-filters .custom-dropdown-chevron{width:14px;height:14px}.health-student-picker .recent-students{gap:5px;margin-top:10px}.health-student-picker .recent-students span{color:var(--muted);letter-spacing:.02em;font-size:10px;font-weight:600}.health-student-picker .recent-students button{color:var(--text);background:#94a3b817;border:0;border-radius:99px;min-height:24px;padding:0 8px;font-size:10px}.health-student-picker .recent-students button:hover{color:#9bc4ff;background:#1677ff1f}.health-student-picker .student-tree{background:0 0;border:0;border-radius:0;max-height:300px;margin-top:12px;padding:0}.health-student-picker .student-tree-year{border-top:1px solid #94a3b81f;padding:6px 0}.health-student-picker .student-tree-year:first-child{border-top:0;padding-top:0}.health-student-picker .student-tree-class{margin-left:18px}.health-student-picker .student-tree-folder,.health-student-picker .student-tree-student{border-radius:9px;min-height:32px;padding:0 8px;font-size:12px}.health-student-picker .student-tree-folder:hover,.health-student-picker .student-tree-student:hover{background:#94a3b814}.health-student-picker .student-tree-folder span{color:var(--text);font-weight:700}.health-student-picker .class-folder{color:var(--muted);margin-top:2px}.health-student-picker .class-folder span{color:var(--text);font-weight:500}.health-student-picker .class-folder:has(.tree-chevron.open){background:#94a3b812}.health-student-picker .student-tree-folder small{color:var(--muted);font-size:11px;font-weight:600}.health-student-picker .tree-chevron{color:var(--muted);flex:none}.health-student-picker .student-tree-student{color:var(--muted);gap:0;min-height:30px;margin-left:18px;padding-left:12px}.health-student-picker .student-tree-student svg{display:none}.health-student-picker .student-tree-student.selected{color:#b7d4ff;background:#1677ff21;font-weight:700;box-shadow:inset 2px 0 #1677ffc7}.health-student-picker .student-tree-empty{color:var(--muted);text-align:center;background:#94a3b812;border-radius:10px;margin:0;padding:14px}.health-student-picker .student-search-helper{justify-content:center;align-items:center;min-height:78px;display:flex}.health-student-picker .selected-student-chip{color:#b7d4ff;background:#1677ff1a;border:1px solid #1677ff38;border-radius:11px;margin-top:12px;padding:10px 11px}.health-student-picker .selected-student-chip strong{color:var(--muted);letter-spacing:.04em;font-size:10px}.health-student-picker .student-assignment-note{color:var(--muted);margin-top:9px;font-size:11px}.theme-light .health-student-picker{background:#fff;border-color:#0f172a1a}.theme-light .health-student-picker .student-tree-search,.theme-light .health-student-picker .student-picker-filters .custom-dropdown-trigger{background:#f8fafc;border-color:#0f172a1a;box-shadow:inset 0 0 0 1px #0f172a14}.theme-light .health-student-picker .student-tree-year{border-color:#0f172a14}.theme-light .health-student-picker .student-tree-folder:hover,.theme-light .health-student-picker .student-tree-student:hover{background:#0f172a0b}.theme-light .health-student-picker .class-folder:has(.tree-chevron.open){background:#0f172a0b}.theme-light .health-student-picker .recent-students button{color:#334155;background:#f1f5f9}.theme-light .health-student-picker .student-tree-student.selected{color:#0d4da9;background:#1677ff1a}@media (width<=700px){.health-student-picker{padding:13px}.health-student-picker .student-picker-filters{grid-template-columns:1fr}.health-student-picker .student-tree{max-height:250px}}.health-student-picker .student-flat-list{flex-direction:column;gap:4px;max-height:300px;margin-top:12px;display:flex;overflow-y:auto}.health-student-picker .student-flat-row{animation:item-enter var(--motion-smooth) var(--ease-emphasized) both;color:var(--text);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:10px;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:10px;width:100%;min-height:46px;padding:6px 9px;display:grid}.health-student-picker .student-flat-row:hover{background:#94a3b814}.health-student-picker .student-flat-row.selected{background:#1677ff21;box-shadow:inset 2px 0 #1677ffc7}.health-student-picker .student-flat-avatar{color:var(--muted);background:#94a3b81f;border-radius:9px;justify-content:center;align-items:center;width:30px;height:30px;font-size:10px;font-weight:800;display:flex}.health-student-picker .student-flat-row.selected .student-flat-avatar{color:#b7d4ff;background:#1677ff2e}.health-student-picker .student-flat-copy{flex-direction:column;gap:3px;min-width:0;display:flex}.health-student-picker .student-flat-copy strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:700;overflow:hidden}.health-student-picker .student-flat-copy small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.theme-light .health-student-picker .student-flat-row:hover{background:#0f172a0b}.theme-light .health-student-picker .student-flat-row.selected{background:#1677ff1a}.theme-light .health-student-picker .student-flat-avatar{color:#64748b;background:#f1f5f9}.theme-light .health-student-picker .student-flat-row.selected .student-flat-avatar{color:#0d4da9;background:#1677ff24}@media (width<=700px){.health-student-picker .student-flat-list{max-height:250px}}@keyframes custom-dropdown-menu-up-in{0%{opacity:0;transform:translateY(4px)scale(.99)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes custom-dropdown-menu-up-out{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(4px)scale(.99)}}:root{--motion-fast:.15s;--motion-normal:.2s;--motion-smooth:.3s;--motion-slow:.4s;--ease-standard:cubic-bezier(.2, 0, 0, 1);--ease-emphasized:cubic-bezier(.16, 1, .3, 1)}.page-transition{animation:page-enter var(--motion-smooth) var(--ease-emphasized) both}.motion-reveal{opacity:0;transition:opacity var(--motion-smooth) var(--ease-emphasized) var(--motion-delay,0s), transform var(--motion-smooth) var(--ease-emphasized) var(--motion-delay,0s);will-change:opacity, transform;transform:translateY(12px)}.motion-reveal.is-visible{opacity:1;transform:translateY(0)}.summary-item,.directory-stat,.directory-table-row:not(.directory-table-head),.parent-table-row:not(.parent-table-head),.directory-mobile-card,.parent-mobile-card,.student-row,.activity-item,.chart-column,.class-card,.modern-announcement-list article,.daily-care-update-list article,.timeline-post,.student-tree-year{animation:item-enter var(--motion-smooth) var(--ease-emphasized) both;animation-delay:var(--stagger-delay,0s)}.header-dropdown{animation:dropdown-enter var(--motion-fast) var(--ease-emphasized) both;transform-origin:100% 0}.drawer-overlay{transition:opacity var(--motion-normal) var(--ease-standard)}.sidebar{will-change:transform}.nav-item span,.active-chevron,.profile-copy{transition:opacity var(--motion-normal) var(--ease-standard), transform var(--motion-normal) var(--ease-standard)}.nav-item,.settings-link,.daily-care-tabs button,.directory-actions button,.directory-name-button,.text-button,.more-button,.profile-more,.forgot-button,.login-theme-toggle,.password-toggle,.custom-dropdown-trigger,.custom-calendar-grid button,.notification-item,.profile-menu-links button,.recent-students button,.student-tree-folder,.student-tree-student,.timeline-actions button,.timeline-comment-form button,.selected-student-chip button,.discard-confirm button,.directory-pagination button,.pagination-number,.filter-chip,.clear-all-button,.clear-all-directory,.media-upload,.primary-button,.secondary-button,.login-submit,.icon-button,.quick-action{transition:background-color var(--motion-normal) var(--ease-standard), border-color var(--motion-normal) var(--ease-standard), box-shadow var(--motion-normal) var(--ease-standard), color var(--motion-normal) var(--ease-standard), opacity var(--motion-normal) var(--ease-standard), transform var(--motion-normal) var(--ease-standard), filter var(--motion-normal) var(--ease-standard)}.primary-button:hover,.secondary-button:hover,.login-submit:hover,.icon-button:hover,.directory-actions button:hover,.directory-pagination button:hover,.filter-chip:hover,.clear-all-button:hover,.clear-all-directory:hover,.recent-students button:hover,.timeline-comment-form button:hover,.media-upload:hover{filter:brightness(1.04);transform:translateY(-1px)}.primary-button:active,.secondary-button:active,.login-submit:active,.icon-button:active,.nav-item:active,.settings-link:active,.daily-care-tabs button:active,.directory-actions button:active,.directory-pagination button:active,.custom-dropdown-trigger:active,.timeline-comment-form button:active,.quick-action:active{transform:scale(.98)}.content-panel,.stat-card,.summary-item,.directory-stat,.directory-mobile-card,.parent-mobile-card,.class-card,.quick-actions,.quick-action,.timeline-post,.album-card,.parent-child-card,.parent-field{transition:border-color var(--motion-normal) var(--ease-standard), box-shadow var(--motion-normal) var(--ease-standard), transform var(--motion-normal) var(--ease-standard), background-color var(--motion-normal) var(--ease-standard)}.directory-mobile-card:hover,.parent-mobile-card:hover,.class-card:hover,.album-card:hover,.timeline-post:hover,.parent-child-card:hover{border-color:#1677ff57;transform:translateY(-1px);box-shadow:0 14px 32px #02081724}.directory-search,.student-tree-search,.timeline-comment-form input,.parent-edit-form input,.parent-edit-form textarea,.student-edit-form input,.daily-care-form input,.daily-care-form textarea,.timeline-post-form textarea,.form-grid input,.login-card input[type=email],.login-card input[type=password],.login-card input[type=text]{transition:border-color var(--motion-normal) var(--ease-standard), box-shadow var(--motion-normal) var(--ease-standard), background-color var(--motion-normal) var(--ease-standard)}.directory-search:focus-within,.timeline-comment-form input:focus,.parent-edit-form input:focus,.parent-edit-form textarea:focus,.student-edit-form input:focus,.form-grid input:focus{border-color:#1677ffc7;outline:0;box-shadow:0 0 0 3px #1677ff1f}.field-error,.inline-error,.profile-feedback,.daily-care-notice,.login-notice,.discard-confirm{animation:notice-enter var(--motion-normal) var(--ease-emphasized) both}.login-page{isolation:isolate;background:#0b1220;animation:.9s cubic-bezier(.2,0,0,1) both login-background-in}.login-page:before,.login-page:after{content:"";pointer-events:none;will-change:transform;z-index:0;position:absolute;inset:0}.login-page:before{background:radial-gradient(circle at 85% 10%,#1677ff6b,#0000 48%),radial-gradient(circle at 64% 52%,#1677ff0f,#0000 48%);animation:1.5s cubic-bezier(.16,1,.3,1) both login-blue-glow-in,13s ease-in-out 1.6s infinite alternate login-blue-glow-drift}.login-page:after{background:radial-gradient(circle at 15% 90%,#ff8a0059,#0000 48%);animation:1.5s cubic-bezier(.16,1,.3,1) both login-orange-glow-in,14s ease-in-out 1.6s infinite alternate login-orange-glow-drift}.theme-light .login-page{background:#f8fafc}.theme-light .login-page:before{background:radial-gradient(circle at 85% 10%,#1677ff47,#0000 48%),radial-gradient(circle at 64% 52%,#1677ff09,#0000 48%)}.theme-light .login-page:after{background:radial-gradient(circle at 15% 90%,#ff8a0033,#0000 48%)}.login-branding{animation:.8s cubic-bezier(.16,1,.3,1) both login-branding-in}.login-card{animation:.9s cubic-bezier(.16,1,.3,1) both login-card-in}.login-card h1,.login-card .login-subtitle,.login-card form>label,.login-card .login-options,.login-card .login-notice,.login-card .login-submit,.login-card .login-note{animation:login-item-in var(--motion-smooth) var(--ease-emphasized) both}.login-branding{animation-delay:40ms}.login-card{animation-delay:90ms}.login-card h1{animation-delay:.13s}.login-card .login-subtitle{animation-delay:.16s}.login-card form>label:first-of-type{animation-delay:.19s}.login-card form>label:nth-of-type(2){animation-delay:.23s}.login-card .login-options{animation-delay:.26s}.login-card .login-notice{animation-delay:.28s}.login-card .login-submit{animation-delay:.3s}.login-card .login-note{animation-delay:.33s}.dashboard-page{position:relative}.dashboard-page:before{content:"";pointer-events:none;z-index:-1;background:radial-gradient(circle at 8% 0,#1677ff38,#0000 40%),radial-gradient(circle at 92% 2%,#ff8a0029,#0000 42%);height:520px;position:absolute;inset:-72px -84px auto}.attendance-progress span,.parent-completeness b{animation:progress-grow var(--motion-slow) var(--ease-emphasized) both;transform-origin:0}.chart-bar{animation:bar-grow var(--motion-slow) var(--ease-emphasized) both;animation-delay:var(--stagger-delay,0s);transform-origin:bottom}.student-skeleton-list span{position:relative;overflow:hidden}.student-skeleton-list span:after{content:"";background:linear-gradient(90deg,#0000,#ffffff1f,#0000);animation:1.2s linear infinite skeleton-shimmer;position:absolute;inset:0;transform:translate(-100%)}.theme-light .student-skeleton-list span:after{background:linear-gradient(90deg,#0000,#0f172a14,#0000)}@keyframes page-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes item-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes dropdown-enter{0%{opacity:0;transform:translateY(-5px)scale(.99)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes login-background-in{0%{opacity:.86}to{opacity:1}}@keyframes login-blue-glow-in{0%{opacity:.9;transform:translate(-8vw)}to{opacity:1;transform:translate(0,0)}}@keyframes login-orange-glow-in{0%{opacity:.9;transform:translate(8vw)}to{opacity:1;transform:translate(0,0)}}@keyframes login-blue-glow-drift{0%{transform:translate(0,0)}to{transform:translate(7px,5px)}}@keyframes login-orange-glow-drift{0%{transform:translate(0,0)}to{transform:translate(-7px,-5px)}}@keyframes login-branding-in{0%{opacity:.94;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes login-card-in{0%{opacity:.96;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}@keyframes login-item-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes notice-enter{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes progress-grow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes bar-grow{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes skeleton-shimmer{to{transform:translate(100%)}}@keyframes ambient-drift{0%{transform:translate(-8px)}to{transform:translate(10px,8px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}.motion-reveal,.page-transition{opacity:1!important;transform:none!important}.login-page,.login-page:before,.login-page:after,.login-branding,.login-card,.login-card h1,.login-card .login-subtitle,.login-card form>label,.login-card .login-options,.login-card .login-notice,.login-card .login-submit,.login-card .login-note{opacity:1!important;animation:none!important;transform:none!important}}.attendance-page-header{align-items:end;gap:22px}.attendance-header-controls{align-items:end;gap:10px;min-width:min(100%,470px);display:flex}.attendance-header-controls .custom-date-picker,.attendance-header-controls .custom-dropdown{flex:1 1 0;min-width:0}.attendance-summary-strip{grid-template-columns:repeat(4,1fr);gap:10px;margin:-10px 0 18px;display:grid}.attendance-summary-item{border:1px solid var(--border);background:#111827a8;border-radius:13px;grid-template-columns:32px 1fr auto;align-items:center;gap:8px;min-height:58px;padding:11px 13px;display:grid}.attendance-summary-item span{border-radius:9px;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.attendance-summary-item.present span{color:#8abbff;background:#1677ff21}.attendance-summary-item.absent span{color:#ffa2a2;background:#f871711f}.attendance-summary-item.late span{color:#ffc06e;background:#ff8a0021}.attendance-summary-item.medical span{color:#8ce0aa;background:#48bb7821}.attendance-summary-item small{color:var(--muted);font-size:12px;font-weight:600}.attendance-summary-item strong{color:var(--text);font-size:24px;font-weight:700}.attendance-workbar{grid-template-columns:minmax(260px,1fr) auto;align-items:start;gap:10px;margin-bottom:14px;display:grid}.attendance-search{margin:0}.attendance-workbar-actions{justify-content:end;align-items:center;gap:10px;display:flex}.attendance-mark-all{white-space:nowrap;margin-top:0}.attendance-unsaved-dot{color:#ffc06e;white-space:nowrap;align-items:center;gap:7px;font-size:12px;display:inline-flex}.attendance-unsaved-dot:before{background:var(--orange);content:"";border-radius:99px;width:7px;height:7px;box-shadow:0 0 0 4px #ff8a001f}.attendance-confirm{color:#ffc06e;background:#ff8a0017;border:1px solid #ff8a0038;border-radius:11px;grid-column:1/-1;justify-content:space-between;align-items:center;gap:9px;padding:10px 12px;font-size:12px;display:flex}.attendance-confirm span{color:var(--text)}.attendance-confirm button{color:#ffd08a;cursor:pointer;background:#ff8a001f;border:1px solid #ff8a0033;border-radius:8px;min-height:30px;padding:0 10px;font-size:11px}.attendance-register-panel{padding-bottom:0;overflow:hidden}.attendance-register-head,.attendance-register-row{grid-template-columns:minmax(190px,1.05fr) minmax(300px,1.5fr) minmax(140px,.7fr) minmax(140px,.7fr);align-items:center;gap:14px;display:grid}.attendance-register-head{border-bottom:1px solid var(--border);color:var(--muted);letter-spacing:.05em;text-transform:uppercase;min-height:42px;margin:18px -24px 0;padding:0 24px;font-size:11px;font-weight:700}.attendance-register-list{margin:0 -24px}.attendance-register-row{animation:item-enter var(--motion-smooth) var(--ease-emphasized) both;border-bottom:1px solid var(--border);min-height:78px;padding:12px 24px}.attendance-register-row:last-child{border-bottom:0}.attendance-register-row:hover{background:#1677ff09}.attendance-student-cell,.attendance-status-cell,.attendance-time-cell{min-width:0}.attendance-student-cell{align-items:center;gap:10px;display:flex}.attendance-student-cell span:last-child{flex-direction:column;gap:3px;min-width:0;display:flex}.attendance-student-cell strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:15px;overflow:hidden}.attendance-student-cell small,.attendance-time-cell span{color:var(--muted);font-size:11px}.attendance-status-cell{align-items:center;gap:10px;display:flex}.attendance-status-badge{white-space:nowrap;border-radius:99px;flex:none;padding:5px 8px;font-size:12px;font-weight:700;display:inline-flex}.attendance-status-badge.medical-leave{color:#8ce0aa;background:#48bb7821}.attendance-segmented-control{border:1px solid var(--border);background:#0b12204d;border-radius:12px;flex:1;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px;padding:3px;display:grid}.attendance-segmented-control button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:9px;min-height:32px;padding:0 8px;font-size:11px;font-weight:700}.attendance-segmented-control button:hover{color:var(--text)}.attendance-segmented-control button.selected{color:#9bc4ff;background:#1677ff2b;box-shadow:0 7px 18px #1677ff14}.attendance-time-cell{flex-direction:column;gap:6px;display:flex}.attendance-time-cell button{color:#9bc4ff;cursor:pointer;background:#1677ff1a;border:1px solid #1677ff33;border-radius:9px;width:fit-content;min-height:32px;padding:0 10px;font-size:11px;font-weight:700}.attendance-time-cell strong{color:var(--text);align-items:center;gap:5px;font-size:13px;display:inline-flex}.attendance-time-cell strong svg{color:#8ce0aa}.attendance-time-cell em{color:var(--muted);font-size:12px;font-style:normal}.attendance-empty-state{min-height:250px}.attendance-savebar{border:1px solid var(--border);background:#111827c7;border-radius:13px;justify-content:space-between;align-items:center;margin-top:14px;padding:12px;display:flex}.attendance-savebar span{color:var(--muted);padding-left:3px;font-size:12px}.attendance-savebar .primary-button:disabled{cursor:default;filter:grayscale(.15);opacity:.55;transform:none}.attendance-toast{animation:notice-enter var(--motion-normal) var(--ease-emphasized) both;color:#9de8b8;z-index:60;background:#10261b;border:1px solid #48bb784d;border-radius:12px;align-items:center;gap:8px;padding:12px 14px;font-size:13px;display:flex;position:fixed;bottom:24px;right:24px;box-shadow:0 18px 46px #0208173d}.theme-light .attendance-summary-item,.theme-light .attendance-savebar,.theme-light .attendance-segmented-control{background:#fff}.theme-light .attendance-register-row:hover{background:#1677ff0a}.theme-light .attendance-time-cell button{background:#1677ff14}.theme-light .attendance-toast{color:#1f7a3c;background:#f0fff5;box-shadow:0 18px 38px #0f172a21}@media (width<=1100px){.attendance-register-head,.attendance-register-row{grid-template-columns:minmax(180px,.9fr) minmax(280px,1.35fr) minmax(125px,.62fr) minmax(125px,.62fr)}}@media (width<=900px){.attendance-page-header{flex-direction:column;align-items:start}.attendance-header-controls{width:100%}.attendance-summary-strip{grid-template-columns:repeat(2,1fr)}.attendance-register-head{display:none}.attendance-register-list{flex-direction:column;gap:10px;margin:18px 0 0;display:flex}.attendance-register-row{border:1px solid var(--border);background:#0b12203d;border-radius:13px;grid-template-columns:1fr 1fr;min-height:0;padding:14px}.attendance-student-cell,.attendance-status-cell{grid-column:1/-1}.theme-light .attendance-register-row{background:#f8fafc}}@media (width<=700px){.attendance-header-controls,.attendance-workbar,.attendance-workbar-actions,.attendance-confirm,.attendance-savebar{flex-direction:column;align-items:stretch}.attendance-header-controls,.attendance-workbar-actions,.attendance-confirm,.attendance-savebar{display:flex}.attendance-workbar{grid-template-columns:1fr}.attendance-workbar-actions{justify-content:stretch}.attendance-mark-all,.attendance-savebar .primary-button{justify-content:center;width:100%}.attendance-segmented-control{grid-template-columns:1fr 1fr}}@media (width<=460px){.attendance-summary-strip,.attendance-register-row{grid-template-columns:1fr}.attendance-time-cell button{width:100%}.attendance-toast{bottom:16px;left:16px;right:16px}}.class-management-header{gap:20px}.class-management-toolbar{grid-template-columns:minmax(280px,1fr) minmax(180px,220px);align-items:end;gap:10px;margin:-8px 0 15px;display:grid}.class-search{margin:0}.class-management-list-panel{padding-bottom:0;overflow:hidden}.class-management-table{margin:18px -24px 0}.class-table-row{animation:item-enter var(--motion-smooth) var(--ease-emphasized) both;border-bottom:1px solid var(--border);color:var(--muted);grid-template-columns:minmax(190px,1.15fr) minmax(170px,1fr) minmax(120px,.62fr) minmax(92px,.45fr) minmax(178px,.88fr);align-items:center;gap:16px;min-height:72px;padding:0 24px;display:grid}.class-table-row:last-child{border-bottom:0}.class-table-row:not(.class-table-head):hover{background:#1677ff09}.class-table-head{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;min-height:42px;font-size:11px;font-weight:700;animation:none}.class-table-row>span{min-width:0}.class-table-row small,.class-mobile-card small,.class-info-grid span,.class-student-row small,.class-teacher-card small{color:var(--muted);font-size:11px}.class-table-row strong,.class-mobile-card strong{color:var(--text);margin-top:4px;font-size:14px;display:block}.class-title-cell{flex-direction:column;gap:4px;display:flex}.class-title-cell button,.class-mobile-heading button{color:var(--text);cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;padding:0;font-size:15px;font-weight:700}.class-title-cell button:hover,.class-mobile-heading button:hover{color:#8abbff}.class-status-badge{border-radius:99px;justify-content:center;width:fit-content;padding:5px 9px;font-size:12px;font-weight:700;display:inline-flex}.class-status-badge.active{color:#8abbff;background:#1677ff1f}.class-status-badge.inactive{color:var(--muted);background:#9ca3af1f}.capacity-full{color:#ffc06e!important}.class-actions{justify-content:end;align-items:center;gap:7px;display:flex}.class-actions button,.class-remove-button,.class-remove-confirm button{color:#9bc4ff;cursor:pointer;background:#1677ff1a;border:1px solid #1677ff2e;border-radius:9px;align-items:center;gap:5px;min-height:34px;padding:0 10px;font-size:12px;font-weight:700;display:inline-flex}.class-actions button:last-child{justify-content:center;width:34px;padding:0}.class-actions button:first-child:last-child{width:auto;padding:0 10px}.class-mobile-list{display:none}.class-empty-state{min-height:250px}.class-details-page{flex-direction:column;gap:16px;display:flex}.class-back-button{color:#8abbff;cursor:pointer;background:0 0;border:0;align-self:flex-start;align-items:center;gap:7px;padding:0;font-size:12px;font-weight:700;display:inline-flex}.class-details-hero{border:1px solid var(--border);background:#111827a8;border-radius:15px;justify-content:space-between;align-items:end;padding:22px 23px;display:flex}.class-details-hero h2{color:var(--text);letter-spacing:-.04em;margin:0;font-family:Space Grotesk,sans-serif;font-size:30px;line-height:1.1}.class-details-hero p{color:var(--muted);margin:7px 0 0;font-size:13px}.class-hero-actions,.class-students-actions{align-items:center;gap:9px;display:flex}.class-hero-actions .secondary-button,.class-students-actions .primary-button{margin-top:0}.class-details-grid{grid-template-columns:minmax(0,1.1fr) minmax(280px,.65fr);gap:16px;display:grid}.class-info-panel,.class-teacher-panel,.class-students-panel{padding-bottom:20px}.class-info-grid{grid-template-columns:repeat(2,1fr);gap:12px;margin-top:20px;display:grid}.class-info-grid span{border:1px solid var(--border);background:#0b12203d;border-radius:11px;flex-direction:column;gap:7px;min-height:68px;padding:12px;display:flex}.class-info-grid strong{color:var(--text);font-size:15px}.class-teacher-card{border:1px solid var(--border);background:#0b12203d;border-radius:12px;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:11px;margin-top:20px;padding:12px;display:grid}.class-teacher-avatar{color:#8abbff;background:#1677ff21;border-radius:12px;justify-content:center;align-items:center;width:42px;height:42px;font-size:12px;font-weight:800;display:flex}.class-teacher-card strong{color:var(--text);font-size:15px;display:block}.class-teacher-selector{margin-top:11px}.class-students-heading{gap:12px}.class-capacity-pill{color:#ffc06e;white-space:nowrap;background:#ff8a001f;border:1px solid #ff8a0038;border-radius:99px;padding:7px 9px;font-size:11px;font-weight:700}.class-student-list{flex-direction:column;margin-top:16px;display:flex}.class-student-row{animation:item-enter var(--motion-smooth) var(--ease-emphasized) both;border-bottom:1px solid var(--border);grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:62px;padding:10px 0;display:grid}.class-student-row:last-child{border-bottom:0}.class-student-row strong{color:var(--text);font-size:14px;display:block}.class-remove-button{color:#ffa2a2;background:#f8717117;border-color:#f871712e}.class-remove-confirm{align-items:center;gap:6px;display:flex}.class-remove-confirm button{min-height:30px}.class-remove-confirm button:first-of-type{color:#ffa2a2;background:#f871711a;border-color:#f8717138}.class-modal-overlay{animation:class-modal-overlay-in .17s var(--ease-standard) both;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:70;background:#02081794;position:fixed;inset:0}.class-modal-overlay.is-closing{animation:class-modal-overlay-out .15s var(--ease-standard) both}.class-modal-shell{pointer-events:none;z-index:71;justify-content:center;align-items:center;min-height:100dvh;padding:28px;display:flex;position:fixed;inset:0}.class-modal{animation:class-modal-in .18s var(--ease-emphasized) both;background:var(--card);border:1px solid var(--border);pointer-events:auto;border-radius:18px;width:min(100%,560px);max-height:min(86vh,780px);padding:28px;overflow-y:auto;box-shadow:0 24px 70px #0208175c}.class-modal-shell.is-closing .class-modal{animation:class-modal-out .15s var(--ease-standard) both}.class-modal-header{justify-content:space-between;align-items:start;gap:16px;display:flex}.class-modal-header h3{color:var(--text);margin:7px 0 5px;font-size:25px}.class-modal-header p{color:var(--muted);margin:0;font-size:13px}.class-management-panel{width:min(100%,560px)}.class-assignment-panel{width:min(100%,640px)}@keyframes class-modal-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes class-modal-overlay-out{0%{opacity:1}to{opacity:0}}@keyframes class-modal-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes class-modal-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(8px)}}.class-management-form{grid-template-columns:1fr 1fr;gap:14px;margin-top:22px;display:grid}.class-management-form label,.class-management-form .dropdown-field{color:var(--muted);flex-direction:column;gap:7px;font-size:13px;display:flex}.class-management-form label:first-child,.class-management-form label:nth-child(2){grid-column:1/-1}.class-management-form input{border:1px solid var(--border);color:var(--text);background:#0b122059;border-radius:10px;outline:0;min-height:43px;padding:0 12px;font-size:14px}.class-management-form input:focus{border-color:#1677ffc7;box-shadow:0 0 0 3px #1677ff1f}.class-form-actions{grid-column:1/-1;justify-content:end;gap:8px;margin-top:8px;display:flex}.class-form-actions .secondary-button{margin-top:0}.class-form-actions .primary-button:disabled,.class-students-actions .primary-button:disabled{cursor:default;filter:grayscale(.2);opacity:.52;transform:none}.class-student-search{margin:20px 0 12px}.class-capacity-note{color:#9bc4ff;background:#1677ff14;border:1px solid #1677ff2e;border-radius:10px;margin:0 0 12px;padding:10px 11px;font-size:12px}.class-capacity-note.full{color:#ffc06e;background:#ff8a001a;border-color:#ff8a0038}.class-student-picker-list{flex-direction:column;gap:8px;max-height:min(48vh,420px);padding-right:2px;display:flex;overflow-y:auto}.class-student-option{border:1px solid var(--border);color:var(--text);cursor:pointer;background:#0b12203d;border-radius:12px;grid-template-columns:18px 34px 1fr;align-items:center;gap:10px;min-height:58px;padding:10px;display:grid}.class-student-option input{accent-color:var(--blue);width:16px;height:16px}.class-student-option strong,.class-student-option small{display:block}.class-student-option strong{color:var(--text);font-size:14px}.class-student-option small{color:var(--muted);margin-top:3px;font-size:11px}.class-student-option.selected{background:#1677ff1c;border-color:#1677ff47}.class-student-option.disabled{cursor:default;opacity:.55}.compact-empty{min-height:180px}.class-toast{animation:notice-enter var(--motion-normal) var(--ease-emphasized) both;color:#9de8b8;z-index:60;background:#10261b;border:1px solid #48bb784d;border-radius:12px;align-items:center;gap:8px;padding:12px 14px;font-size:13px;display:flex;position:fixed;bottom:24px;right:24px;box-shadow:0 18px 46px #0208173d}.theme-light .class-details-hero,.theme-light .class-info-grid span,.theme-light .class-teacher-card,.theme-light .class-modal,.theme-light .class-management-form input,.theme-light .class-student-option{background:#fff}.theme-light .class-modal-overlay{background:#0f172a57}.theme-light .class-table-row:not(.class-table-head):hover{background:#1677ff0a}.theme-light .class-mobile-card{background:#f8fafc}.theme-light .class-toast{color:#1f7a3c;background:#f0fff5;box-shadow:0 18px 38px #0f172a21}@media (width<=1000px){.class-table-row{grid-template-columns:minmax(170px,1.1fr) minmax(145px,.9fr) minmax(95px,.55fr) minmax(88px,.45fr) minmax(140px,.72fr)}.class-actions button:first-child{padding:0 8px}.class-details-grid{grid-template-columns:1fr}}@media (width<=800px){.class-management-header{flex-direction:column;align-items:start}.class-management-header .primary-button{width:100%}.class-management-toolbar{grid-template-columns:1fr}.class-management-table{display:none}.class-mobile-list{flex-direction:column;gap:10px;margin-top:18px;display:flex}.class-mobile-card{animation:item-enter var(--motion-smooth) var(--ease-emphasized) both;border:1px solid var(--border);background:#0b12203d;border-radius:14px;padding:15px}.class-mobile-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.class-mobile-meta{border-bottom:1px solid var(--border);border-top:1px solid var(--border);grid-template-columns:1fr 1fr;gap:10px;margin:13px 0;padding:12px 0;display:grid}.class-mobile-meta span{color:var(--muted);flex-direction:column;gap:4px;font-size:11px;display:flex}.class-mobile-card .class-actions{justify-content:stretch}.class-mobile-card .class-actions button:first-child{flex:1;justify-content:center}.class-mobile-card .class-actions button:last-child{width:auto;padding:0 11px}}@media (width<=700px){.class-details-hero,.class-hero-actions,.class-students-heading,.class-students-actions,.class-form-actions{flex-direction:column;align-items:stretch}.class-details-hero,.class-hero-actions,.class-students-actions,.class-form-actions{display:flex}.class-details-hero h2{font-size:27px}.class-info-grid,.class-management-form{grid-template-columns:1fr}.class-management-form label:first-child,.class-management-form label:nth-child(2),.class-form-actions{grid-column:auto}.class-students-actions .primary-button,.class-form-actions .primary-button,.class-form-actions .secondary-button{justify-content:center;width:100%}.class-teacher-card{grid-template-columns:42px minmax(0,1fr)}.class-teacher-card .text-button{grid-column:1/-1;justify-content:center}.class-student-row{grid-template-columns:34px minmax(0,1fr)}.class-remove-button,.class-remove-confirm{grid-column:1/-1;justify-content:center;width:100%}.class-remove-confirm button{flex:1;justify-content:center}.class-modal-shell{align-items:center;padding:18px}.class-modal{border-radius:16px;max-height:calc(100vh - 36px);padding:23px 19px}.class-modal-header h3{font-size:22px}}@media (width<=460px){.class-mobile-meta{grid-template-columns:1fr}.class-student-option{grid-template-columns:18px 32px 1fr}.class-toast{bottom:16px;left:16px;right:16px}}.class-header-actions{align-items:end;gap:10px;margin-left:auto;display:flex}.class-header-actions .primary-button{margin-top:0}.class-role-control{min-width:170px}.class-management-toolbar-wide{grid-template-columns:minmax(260px,1.35fr) repeat(4,minmax(145px,.75fr))}.class-management-toolbar-wide .custom-dropdown{min-width:0}.class-management-toolbar-wide .custom-dropdown-trigger{width:100%}.class-table-row{grid-template-columns:minmax(175px,1.16fr) minmax(82px,.48fr) minmax(145px,.9fr) minmax(145px,.82fr) minmax(96px,.48fr) minmax(188px,.92fr)}.class-table-row.capacity-almost-full:not(.class-table-head){box-shadow:inset 2px 0 #ff8a00b8}.class-table-row.capacity-full:not(.class-table-head){box-shadow:inset 2px 0 #f871719e}.class-mobile-card.capacity-almost-full{box-shadow:inset 2px 0 #ff8a00b8}.class-mobile-card.capacity-full{box-shadow:inset 2px 0 #f871719e}.class-status-badge.full{color:#ffc06e;background:#ff8a0024}.class-status-badge.archived{color:#cbd5e1;background:#9ca3af24}.theme-light .class-status-badge.archived{color:#64748b}.capacity-warning{color:#ffc06e!important}.class-detail-search{margin:17px 0 4px}.class-student-row-rich{grid-template-columns:34px minmax(140px,1.15fr) minmax(92px,.55fr) minmax(126px,.82fr) 86px auto}.class-student-row-rich>span{min-width:0}.class-student-row-rich>span strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.class-student-status{border-radius:99px;justify-content:center;width:fit-content;padding:5px 8px;font-size:11px;font-weight:800;display:inline-flex}.class-student-status.active{color:#9de8b8;background:#48bb781f}.class-student-status.pending{color:#ffc06e;background:#ff8a001f}.class-student-status.inactive{color:var(--muted);background:#9ca3af1f}.theme-light .class-student-status.active{color:#1f7a3c}.theme-light .class-student-status.pending{color:#a45b00}.class-confirm-box{color:#ffc06e;background:#ff8a001a;border:1px solid #ff8a0038;border-radius:11px;margin-top:12px;padding:10px 12px;font-size:12px;font-weight:700}.theme-light .class-confirm-box{color:#a45b00;background:#ff8a0017}.class-saving-line{color:var(--muted);align-items:center;min-height:36px;margin-right:auto;font-size:12px;font-weight:700;display:inline-flex}.class-form-actions .secondary-button:disabled{cursor:default;opacity:.58}.class-mobile-card .class-actions{flex-wrap:wrap}.class-empty-state .primary-button{margin-top:6px}@media (width<=1180px){.class-management-toolbar-wide{grid-template-columns:repeat(2,minmax(0,1fr))}.class-management-toolbar-wide .class-search{grid-column:1/-1}}@media (width<=1040px){.class-table-row{grid-template-columns:minmax(165px,1.05fr) minmax(82px,.45fr) minmax(130px,.76fr) minmax(126px,.7fr) minmax(86px,.42fr) minmax(154px,.8fr)}}@media (width<=800px){.class-header-actions{flex-direction:column;width:100%;margin-left:0}.class-header-actions .custom-dropdown,.class-header-actions .primary-button{width:100%}.class-management-toolbar-wide{grid-template-columns:1fr}.class-management-toolbar-wide .class-search{grid-column:auto}}@media (width<=700px){.class-student-row-rich{grid-template-columns:34px minmax(0,1fr)}.class-student-row-rich>span:nth-child(n+3),.class-student-row-rich .class-student-status{grid-column:2}.class-student-row-rich .class-remove-button,.class-student-row-rich .class-remove-confirm{grid-column:1/-1}.class-saving-line{justify-content:center;width:100%;margin-right:0}}.custom-date-picker.open{z-index:1500}.custom-calendar-popover{color:#f8fafc;isolation:isolate;opacity:1;z-index:1501;background:#0f172a padding-box padding-box;border:1px solid #94a3b847;box-shadow:0 24px 58px #02081785}.custom-calendar-header,.custom-calendar-weekdays,.custom-calendar-grid,.custom-calendar-time{background:#0f172a}.custom-calendar-grid button{color:#f8fafc;background:#0f172a}.custom-calendar-grid button:hover{background:#162238}.custom-calendar-grid button.muted{color:#cbd5e194}.custom-calendar-grid button.selected{background:var(--blue);border-color:var(--blue);color:#fff}.theme-light .custom-calendar-popover{color:#111827;background:#fff;border-color:#0f172a24;box-shadow:0 24px 50px #0f172a2e}.theme-light .custom-calendar-header,.theme-light .custom-calendar-weekdays,.theme-light .custom-calendar-grid,.theme-light .custom-calendar-time{background:#fff}.theme-light .custom-calendar-grid button{color:#111827;background:#fff}.theme-light .custom-calendar-grid button:hover{background:#edf4ff}.theme-light .custom-calendar-grid button.muted{color:#64748ba3}.theme-light .custom-calendar-grid button.selected{background:var(--blue);color:#fff}.custom-calendar-popover,.solid-calendar-popover{z-index:9999!important;width:min(380px,100vw - 24px)!important;min-width:min(380px,100vw - 24px)!important;overflow:visible!important}.custom-calendar-popover .custom-calendar-header,.solid-calendar-popover .custom-calendar-header{grid-template-columns:36px minmax(0,1fr) 36px!important;align-items:center!important;gap:10px!important;display:grid!important;overflow:visible!important}.custom-calendar-popover .custom-calendar-selectors,.solid-calendar-popover .custom-calendar-selectors{grid-template-columns:minmax(158px,1fr) minmax(104px,112px)!important;align-items:center!important;gap:8px!important;min-width:0!important;display:grid!important;overflow:visible!important}.custom-calendar-select-wrap{color:var(--muted);flex-direction:column;gap:4px;min-width:0;font-size:10px;font-weight:700;display:flex;position:relative}.custom-calendar-month-dropdown{min-width:158px!important}.custom-calendar-year-dropdown{min-width:104px!important}.custom-calendar-select-wrap select{appearance:none;color:#f8fafc;cursor:pointer;font:inherit;text-overflow:clip;white-space:nowrap;background:#111827;border:1px solid #94a3b847;border-radius:10px;width:100%;min-height:38px;padding:0 30px 0 10px;font-size:12px;font-weight:700;overflow:visible;box-shadow:inset 0 1px #ffffff0a}.custom-calendar-select-wrap svg{color:var(--muted);pointer-events:none;position:absolute;bottom:11px;right:9px}.custom-calendar-select-wrap select:focus{border-color:#1677ffc7;outline:0;box-shadow:0 0 0 3px #1677ff21}.theme-light .custom-calendar-select-wrap select{color:#111827;background:#fff;border-color:#0f172a29}@media (width<=410px){.custom-calendar-popover,.solid-calendar-popover{width:calc(100vw - 20px)!important;min-width:calc(100vw - 20px)!important}.custom-calendar-popover .custom-calendar-header,.solid-calendar-popover .custom-calendar-header{grid-template-columns:34px minmax(0,1fr) 34px!important;gap:7px!important}.custom-calendar-popover .custom-calendar-selectors,.solid-calendar-popover .custom-calendar-selectors{grid-template-columns:minmax(132px,1fr) minmax(92px,98px)!important;gap:6px!important}.custom-calendar-month-dropdown{min-width:132px!important}.custom-calendar-year-dropdown{min-width:92px!important}.custom-calendar-select-wrap select{padding-left:8px;padding-right:26px;font-size:11px}}.attendance-note-actions{width:100%;margin-top:8px;position:relative}.attendance-note-actions textarea{box-sizing:border-box;resize:vertical;color:#f8fafc;background:#ffffff09;border:1px solid #94a3b824;border-radius:10px;outline:none;width:100%;min-height:44px;padding:10px 34px 10px 11px;font-family:inherit;font-size:12px;line-height:1.4;transition:all .2s}.attendance-note-actions textarea:hover{border-color:#94a3b847}.attendance-note-actions textarea:focus{background:#1677ff0b;border-color:#1677ff8c;box-shadow:0 0 0 3px #1677ff14}.attendance-note-actions textarea::placeholder{color:#7f8a9b}.attendance-note-actions button{color:#8b95a5;cursor:pointer;background:#ffffff0e;border:0;border-radius:7px;place-items:center;width:22px;height:22px;display:grid;position:absolute;top:7px;right:7px}.attendance-note-actions button:hover{color:#ff8a00;background:#ff8a001f}.student-avatar{position:relative;overflow:hidden}.student-avatar:not(.attendance-avatar):not(.student-flat-avatar){color:var(--muted);background:#94a3b81f;border-radius:9px;flex:none;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:inline-grid}.student-avatar-small:not(.attendance-avatar):not(.student-flat-avatar){width:30px;height:30px}.student-avatar-medium:not(.attendance-avatar):not(.student-flat-avatar){width:33px;height:33px}.student-avatar-large:not(.attendance-avatar):not(.student-flat-avatar){border-radius:14px;width:52px;height:52px;font-size:15px}.student-avatar img{object-fit:cover;width:100%;height:100%}.student-avatar-fallback{place-items:center;width:100%;height:100%;display:grid}.student-avatar img+.student-avatar-fallback{display:none}.student-avatar.blue:not(.attendance-avatar),.attendance-preview-avatar.blue{color:#8abbff;background:#1677ff24}.student-avatar.orange:not(.attendance-avatar),.attendance-preview-avatar.orange{color:#ffc06e;background:#ff8a0024}.student-avatar.green:not(.attendance-avatar),.attendance-preview-avatar.green{color:#8ce0aa;background:#48bb7824}.student-avatar.is-clickable{cursor:pointer}.student-avatar.is-clickable:focus-visible{outline-offset:2px;outline:2px solid #1677ff94}.attendance-preview-photo .student-avatar{border-radius:14px;width:100%;height:100%;font-size:24px}.parent-child-heading{align-items:center;gap:9px;min-width:0;display:flex}.parent-child-heading>div{min-width:0}.profile-photo-identity{align-items:center}.profile-photo-control{flex:none}.profile-photo-control input{display:none}.profile-photo-avatar.student-avatar-large{border:2px solid #ffffffb8;box-shadow:0 0 0 3px #1677ff38,0 12px 28px #0208173d;border-radius:50%!important;width:86px!important;height:86px!important;font-size:22px!important}.profile-photo-avatar.student-avatar-large:hover{box-shadow:0 0 0 3px #1677ff57,0 14px 32px #0208174d}.profile-photo-copy{min-width:0}.profile-photo-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.profile-photo-actions .text-button{min-height:28px;padding:0}.profile-photo-actions .text-button.danger{color:#ff9a9a}.profile-photo-actions .text-button.danger:hover{color:#ffb4b4}.theme-light .profile-photo-avatar.student-avatar-large{border-color:#fff;box-shadow:0 0 0 3px #1677ff29,0 12px 24px #0f172a24}.dashboard-page .quick-action strong{font-size:13px}.dashboard-page .quick-action small{font-size:11px}.announcement-page-header{margin-bottom:18px}.announcement-toolbar{grid-template-columns:minmax(280px,1.4fr) repeat(3,minmax(145px,.7fr));align-items:end;gap:10px;margin-bottom:16px;display:grid}.announcement-toolbar .custom-dropdown,.announcement-toolbar .custom-dropdown-trigger{width:100%;min-width:0}.announcement-search{margin:0}.announcement-list-panel{padding-bottom:22px}.announcement-card-list{flex-direction:column;gap:11px;margin-top:18px;display:flex}.announcement-card{animation:item-enter var(--motion-smooth,.22s) ease-out both;border:1px solid var(--border);background:#0b122038;border-radius:16px;grid-template-columns:minmax(0,1fr) auto;gap:13px;padding:15px;transition:background-color .18s,border-color .18s,box-shadow .18s,transform .18s;display:grid}.announcement-card:hover{background:#1677ff0b;border-color:#1677ff47;transform:translateY(-1px);box-shadow:0 14px 34px #02081724}.announcement-card.is-pinned{box-shadow:inset 2px 0 #1677ffb8}.announcement-card.priority-urgent{box-shadow:inset 2px 0 #f87171a6}.announcement-card-main{cursor:pointer;min-width:0}.announcement-card-main:focus-visible{outline-offset:3px;border-radius:12px;outline:2px solid #1677ff85}.announcement-card-top{justify-content:space-between;align-items:start;gap:12px;display:flex}.announcement-title-wrap{min-width:0}.announcement-title-wrap h3{color:var(--text);letter-spacing:-.02em;margin:3px 0 0;font-size:17px;font-weight:700}.announcement-pin{color:#9bc4ff;letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:5px;font-size:10px;font-weight:800;display:inline-flex}.announcement-card p{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;max-width:860px;margin:8px 0 12px;font-size:13px;line-height:1.55;display:-webkit-box;overflow:hidden}.announcement-card-badges,.announcement-detail-badges{flex-wrap:wrap;justify-content:end;align-items:center;gap:6px;display:flex}.announcement-badge{border-radius:999px;width:fit-content;padding:6px 9px;font-size:11px;font-weight:800;line-height:1;display:inline-flex}.announcement-badge.status-draft{color:#cbd5e1;background:#94a3b81f}.announcement-badge.status-published{color:#9de8b8;background:#48bb781f}.announcement-badge.status-scheduled{color:#9bc4ff;background:#1677ff1f}.announcement-badge.priority-normal{color:var(--muted);background:#94a3b81f}.announcement-badge.priority-important{color:#ffc06e;background:#ff8a0021}.announcement-badge.priority-urgent,.announcement-badge.action{color:#ffa2a2;background:#f8717121}.announcement-meta-grid{flex-wrap:wrap;gap:8px 14px;display:flex}.announcement-meta-grid span{color:var(--muted);align-items:center;gap:6px;font-size:12px;display:inline-flex}.announcement-meta-grid .action-required{color:#ffc06e}.announcement-read-row{grid-template-columns:auto minmax(90px,150px) auto;align-items:center;gap:8px;max-width:360px;margin-top:13px;display:grid}.announcement-read-row span,.announcement-read-row strong{color:var(--muted);font-size:12px;font-weight:700}.announcement-read-row i{background:#94a3b824;border-radius:99px;height:6px;display:block;overflow:hidden}.announcement-read-row b{background:linear-gradient(90deg, var(--blue), #7ab2ff);border-radius:inherit;height:100%;display:block}.announcement-card-actions{justify-content:end;align-items:center;gap:5px;display:flex}.announcement-card-actions button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:9px;align-items:center;gap:5px;min-height:34px;padding:0 8px;font-size:12px;font-weight:700;display:inline-flex}.announcement-card-actions button:hover{color:#9bc4ff;background:#1677ff1a}.announcement-modal-overlay{z-index:1300;background:#020817a3;width:100vw;min-height:100dvh;animation:.18s ease-out both directory-profile-backdrop-in;position:fixed;inset:0}.announcement-composer,.announcement-detail-modal{background:var(--card);border:1px solid var(--border);color:var(--text);overscroll-behavior:contain;z-index:1301;border-radius:20px;width:min(880px,100vw - 36px);max-height:calc(100dvh - 44px);padding:24px;animation:.18s ease-out both announcement-modal-in;position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%);box-shadow:0 26px 70px #0208175c}.announcement-detail-modal{width:min(720px,100vw - 36px)}@keyframes announcement-modal-in{0%{opacity:0;transform:translate(-50%,calc(10px - 50%))}to{opacity:1;transform:translate(-50%,-50%)}}.announcement-modal-header{justify-content:space-between;align-items:start;gap:18px;margin-bottom:18px;display:flex}.announcement-modal-header h3{color:var(--text);letter-spacing:-.035em;margin:6px 0;font-size:24px;font-weight:700}.announcement-modal-header p,.announcement-scheduled-note,.announcement-due-note{color:var(--muted);margin:0;font-size:13px}.announcement-composer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.announcement-composer-grid .wide{grid-column:1/-1}.announcement-composer-grid label{color:var(--muted);flex-direction:column;gap:7px;font-size:12px;font-weight:700;display:flex}.announcement-composer-grid input,.announcement-composer-grid textarea{border:1px solid var(--border);color:var(--text);font:inherit;background:#0b122059;border-radius:11px;outline:0;padding:11px 12px;font-size:14px}.announcement-composer-grid textarea{resize:vertical;min-height:118px}.announcement-composer-grid input:focus,.announcement-composer-grid textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #1677ff1a}.announcement-toggle-row{justify-content:end}.announcement-toggle-row button{border:1px solid var(--border);color:var(--muted);cursor:pointer;background:#94a3b81f;border-radius:999px;width:fit-content;min-height:40px;padding:0 16px;font-size:12px;font-weight:800}.announcement-toggle-row button.active{color:#9bc4ff;background:#1677ff24;border-color:#1677ff57}.announcement-attachment-field{flex-direction:column;gap:8px;display:flex}.announcement-attachment-field input{display:none}.announcement-attachment-field .secondary-button{justify-content:center;width:fit-content;margin-top:0}.announcement-attachment,.announcement-attachment-with-remove{border:1px solid var(--border);background:#0b122047;border-radius:12px;align-items:center;gap:10px;padding:9px;display:flex}.announcement-attachment img{object-fit:cover;border-radius:9px;width:48px;height:42px}.announcement-attachment>svg{color:#9bc4ff;flex:none}.announcement-attachment span{flex-direction:column;gap:3px;min-width:0;display:flex}.announcement-attachment strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.announcement-attachment small{color:var(--muted);font-size:11px}.announcement-attachment-with-remove{padding-right:7px}.announcement-attachment-with-remove .announcement-attachment{background:0 0;border:0;flex:1;padding:0}.announcement-attachment-with-remove>button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;width:30px;height:30px}.announcement-modal-actions{justify-content:end;align-items:center;gap:9px;margin-top:18px;display:flex}.announcement-modal-actions .secondary-button,.announcement-modal-actions .primary-button{margin-top:0}.announcement-error{margin:0 0 14px}.announcement-detail-message{border:1px solid var(--border);color:var(--text);background:#0b12203d;border-radius:15px;margin:16px 0;padding:16px;font-size:14px;line-height:1.65}.announcement-insights,.announcement-detail-attachment{border-top:1px solid var(--border);padding-top:16px}.announcement-insights h4,.announcement-detail-attachment h4{color:var(--text);margin:0 0 12px;font-size:15px}.announcement-insights>div{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.announcement-insights span{border:1px solid var(--border);background:#0b12203d;border-radius:13px;flex-direction:column;gap:4px;padding:13px;display:flex}.announcement-insights strong{color:var(--text);font-size:24px;line-height:1}.announcement-insights small{color:var(--muted);font-size:11px}.theme-light .announcement-card,.theme-light .announcement-composer,.theme-light .announcement-detail-modal,.theme-light .announcement-composer-grid input,.theme-light .announcement-composer-grid textarea,.theme-light .announcement-attachment,.theme-light .announcement-attachment-with-remove,.theme-light .announcement-detail-message,.theme-light .announcement-insights span{background:#fff}.theme-light .announcement-modal-overlay{background:#0f172a57}.theme-light .announcement-card:hover{background:#f8fbff}.theme-light .announcement-badge.status-draft,.theme-light .announcement-badge.priority-normal{color:#64748b}.theme-light .announcement-badge.status-published{color:#1f7a3c}.theme-light .announcement-badge.status-scheduled{color:#0d5ec7}.theme-light .announcement-badge.priority-important{color:#a45b00}.theme-light .announcement-badge.priority-urgent,.theme-light .announcement-badge.action{color:#c24141}@media (width<=1060px){.announcement-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.announcement-search{grid-column:1/-1}}@media (width<=760px){.announcement-page-header{flex-direction:column;align-items:stretch}.announcement-page-header .primary-button{justify-content:center;width:100%}.announcement-toolbar,.announcement-composer-grid{grid-template-columns:1fr}.announcement-search,.announcement-composer-grid .wide{grid-column:auto}.announcement-card{grid-template-columns:1fr}.announcement-card-actions{justify-content:stretch}.announcement-card-actions button{flex:1;justify-content:center}.announcement-card-top,.announcement-modal-header,.announcement-modal-actions{flex-direction:column;align-items:stretch}.announcement-card-badges,.announcement-detail-badges{justify-content:start}.announcement-modal-actions .secondary-button,.announcement-modal-actions .primary-button{justify-content:center;width:100%}.announcement-read-row{grid-template-columns:1fr auto}.announcement-read-row i{order:3;grid-column:1/-1}.announcement-insights>div{grid-template-columns:1fr}.announcement-composer,.announcement-detail-modal{width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}}.attendance-student-name{width:fit-content;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;margin:0;padding:0;display:inline-flex}.attendance-student-name strong{transition:color .18s,opacity .18s}.attendance-student-name:hover strong{color:#1677ff}.health-activity-section{width:100%}.health-activity-section-heading h4{color:inherit;margin:0 0 4px;font-size:15px;font-weight:700}.health-activity-section-heading p{color:#9ca3af;margin:0;font-size:13px;line-height:1.5}.health-activity-step{color:#1677ff;letter-spacing:.04em;background:#1677ff1a;border:1px solid #1677ff2e;border-radius:10px;flex:0 0 30px;justify-content:center;align-items:center;width:30px;height:30px;font-size:11px;font-weight:800;display:inline-flex}.health-activity-divider{background:#9ca3af1f;width:100%;height:1px;margin:28px 0}.health-student-picker{flex-direction:column;gap:12px;display:flex}.student-tree-search{background:#ffffff06;border:1px solid #9ca3af2e;border-radius:12px;align-items:center;gap:10px;min-height:46px;padding:0 14px;transition:border-color .18s,background .18s,box-shadow .18s;display:flex}.student-tree-search:focus-within{background:#1677ff09;border-color:#1677ff8c;box-shadow:0 0 0 3px #1677ff14}.student-tree-search svg{color:#9ca3af;flex:none}.student-tree-search input{width:100%;min-width:0;color:inherit;font:inherit;background:0 0;border:0;outline:0}.student-tree-search input::placeholder{color:#6b7280}.student-picker-filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.student-tree{min-height:72px}.student-flat-list{flex-direction:column;gap:6px;display:flex}.student-flat-row{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:12px;align-items:center;gap:11px;padding:10px 12px;transition:background .18s,border-color .18s,transform .18s;display:flex}.student-flat-row:hover{background:#1677ff0e;border-color:#1677ff1f;transform:translate(2px)}.student-flat-row.selected{background:#1677ff17;border-color:#1677ff4d}.student-flat-copy{flex-direction:column;gap:2px;min-width:0;display:flex}.student-flat-copy strong{font-size:13px;font-weight:700}.student-flat-copy small{color:#9ca3af;font-size:11px}.student-tree-empty{text-align:center;color:#6b7280;border:1px dashed #9ca3af29;border-radius:12px;margin:0;padding:18px;font-size:12px}.student-search-helper{background:#ffffff04}.selected-student-chip{background:#1677ff12;border:1px solid #1677ff38;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;min-height:48px;padding:9px 11px 9px 14px;animation:.22s healthActivityFadeIn;display:flex}.selected-student-chip>span{flex-direction:column;gap:2px;min-width:0;font-size:12px;display:flex}.selected-student-chip strong{color:#1677ff;letter-spacing:.04em;text-transform:uppercase;font-size:10px;font-weight:800}.selected-student-chip button{color:#9ca3af;cursor:pointer;background:#ffffff0f;border:0;border-radius:8px;flex:0 0 28px;justify-content:center;align-items:center;width:28px;height:28px;transition:background .18s,color .18s;display:inline-flex}.selected-student-chip button:hover{color:#fff;background:#ffffff1a}.student-assignment-note{color:#6b7280;font-size:11px}.health-care-details-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:16px;display:grid}.health-care-details-grid>*{min-width:0}.health-care-details-grid>.dropdown-field,.health-care-details-grid>.custom-date-picker{width:100%}.health-care-notes{flex-direction:column;grid-column:1/-1;gap:8px;display:flex}.health-care-notes>span{font-size:12px;font-weight:600}.health-care-notes textarea{resize:vertical;box-sizing:border-box;width:100%;min-height:110px;color:inherit;font:inherit;background:#ffffff06;border:1px solid #9ca3af2e;border-radius:12px;outline:none;padding:12px 13px;font-size:13px;line-height:1.5;transition:border-color .18s,box-shadow .18s,background .18s}.health-care-notes textarea:focus{background:#1677ff09;border-color:#1677ff8c;box-shadow:0 0 0 3px #1677ff14}.health-care-notes textarea::placeholder{color:#6b7280}.health-activity-actions{border-top:1px solid #9ca3af1f;justify-content:flex-end;margin-top:28px;padding-top:20px;display:flex}.health-activity-actions .primary-button{border-radius:11px;min-height:42px;padding:0 18px}@keyframes healthActivityFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}[data-theme=light] .student-tree-search,[data-theme=light] .health-care-notes textarea{background:#0f172a06;border-color:#0f172a1a}[data-theme=light] .student-tree-search:focus-within,[data-theme=light] .health-care-notes textarea:focus{background:#1677ff06}[data-theme=light] .student-tree-empty{border-color:#0f172a1a}[data-theme=light] .selected-student-chip{background:#1677ff0e}.health-activity-actions{border-top:1px solid #9ca3af1a;justify-content:flex-end;align-items:center;margin-top:24px;padding-top:16px;display:flex}.health-activity-actions .primary-button{color:#fff;cursor:pointer;background:#1677ff;border:0;border-radius:9px;justify-content:center;align-items:center;gap:7px;width:auto;min-width:0;min-height:38px;padding:0 14px;font-size:12px;font-weight:650;transition:transform .16s,box-shadow .16s,background .16s,opacity .16s;display:inline-flex;box-shadow:0 5px 14px #1677ff29}.health-activity-actions .primary-button:hover:not(:disabled){background:#2b83ff;transform:translateY(-1px);box-shadow:0 7px 17px #1677ff38}.health-activity-actions .primary-button:active:not(:disabled){transform:translateY(0)}.health-activity-actions .primary-button:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}.daily-care-updates-heading h3{margin-bottom:5px}.daily-care-update-filters{border-bottom:1px solid #9ca3af1a;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1fr);gap:10px;margin-bottom:24px;padding-bottom:20px;display:grid}.daily-care-update-item{min-height:78px;animation:.28s both dailyCareUpdateIn;animation-delay:var(--stagger-delay);grid-template-columns:34px minmax(0,1fr);gap:12px;display:grid}.daily-care-update-timeline{justify-content:center;display:flex;position:relative}.daily-care-update-icon{z-index:2;color:#1677ff;background:#1677ff17;border:1px solid #1677ff2e;border-radius:10px;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex;position:relative}.daily-care-update-content{min-width:0;padding:2px 0 20px}.daily-care-update-top>div{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.daily-care-update-top strong{font-size:13px;font-weight:700}.daily-care-update-activity{color:#1677ff;background:#1677ff14;border-radius:7px;align-items:center;min-height:22px;padding:0 8px;font-size:10px;font-weight:700;display:inline-flex}.daily-care-update-top time{color:#9ca3af;white-space:nowrap;flex:none;font-size:11px}.daily-care-update-meta span{opacity:.6}.daily-care-update-note{color:#9ca3af;background:#9ca3af0b;border-left:2px solid #1677ff66;border-radius:0 8px 8px 0;margin-top:9px;padding:9px 11px;font-size:11px;line-height:1.55}.daily-care-empty-state{min-height:250px}.daily-care-empty-icon{color:#1677ff;background:#1677ff14;border:1px solid #1677ff24;border-radius:13px;justify-content:center;align-items:center;width:44px;height:44px;margin-bottom:10px;display:inline-flex}@keyframes dailyCareUpdateIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}[data-theme=light] .daily-care-update-line{background:#0f172a1a}[data-theme=light] .daily-care-update-note{background:#0f172a06}[data-theme=light] .daily-care-update-meta{color:#6b7280}@media (width<=850px){.daily-care-update-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){.daily-care-update-filters{grid-template-columns:1fr}.daily-care-update-item{grid-template-columns:30px minmax(0,1fr);gap:10px}.daily-care-update-icon{border-radius:9px;width:29px;height:29px}.daily-care-update-top{flex-direction:column;gap:4px}.daily-care-update-top time{font-size:10px}}.daily-care-tabs button{color:#9ca3af;cursor:pointer;background:0 0;border:0;border-radius:10px;padding:10px 15px;transition:all .2s}.health-activity-form>.health-activity-section,.health-activity-form>.health-activity-divider,.health-activity-form>.health-activity-actions{grid-column:1/-1;min-width:0}.teacher-timeline-search,.teacher-announcement-toolbar{align-items:center;gap:10px;margin-bottom:18px;display:flex}.teacher-timeline-search{background:var(--card);border:1px solid var(--border);color:var(--muted);border-radius:11px;min-height:44px;padding:0 12px}.teacher-timeline-search input{color:var(--text);background:0 0;border:0;outline:0;width:100%;min-width:0}.teacher-timeline-search>button{color:var(--muted);cursor:pointer;background:0 0;border:0;align-items:center;display:flex}.teacher-timeline-media-button{cursor:pointer;text-align:left;background:0 0;border:0;width:100%;padding:0;display:block}.teacher-timeline-media-button:focus-visible{outline-offset:3px;border-radius:15px;outline:3px solid #1677ff73}.teacher-timeline-action-buttons .is-liked{color:#ff8a00}.teacher-timeline-modal-overlay,.teacher-announcement-overlay{z-index:90;background:#020817b8;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.teacher-timeline-modal,.teacher-announcement-detail{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow);color:var(--text);border-radius:18px;width:100%;max-width:680px;max-height:min(86vh,780px);padding:22px;overflow-y:auto}.teacher-timeline-modal>header,.teacher-announcement-detail>header{justify-content:space-between;align-items:start;gap:16px;margin-bottom:16px;display:flex}.teacher-timeline-modal>header h2,.teacher-announcement-detail>header h2{color:var(--text);margin:6px 0;font-size:20px}.teacher-timeline-modal>header time,.teacher-announcement-detail>header time{color:var(--muted);font-size:12px}.teacher-timeline-modal>header button,.teacher-announcement-detail>header button{border:1px solid var(--border);color:var(--muted);cursor:pointer;background:0 0;border-radius:9px;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.teacher-timeline-modal>p,.teacher-announcement-detail>p{color:var(--text);white-space:pre-wrap;font-size:14px;line-height:1.65}.teacher-timeline-comments{border-top:1px solid var(--border);margin-top:16px;padding-top:14px}.teacher-timeline-comments>strong{color:var(--text);font-size:12px}.teacher-timeline-comments p,.teacher-announcement-attachment{color:var(--muted);font-size:12px;line-height:1.5}.teacher-announcement-toolbar select{background:var(--card);border:1px solid var(--border);color:var(--text);border-radius:10px;min-height:42px;padding:0 12px}.teacher-announcement-search{flex:1;min-height:42px;margin:0}.teacher-announcement-list{flex-direction:column;display:flex}.teacher-announcement-card{border:0;border-bottom:1px solid var(--border);color:var(--text);cursor:pointer;text-align:left;background:0 0;align-items:flex-start;gap:13px;width:100%;padding:16px 4px;display:flex}.teacher-announcement-card:last-child{border-bottom:0}.teacher-announcement-card:hover{background:#1677ff0b}.teacher-announcement-copy{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.teacher-announcement-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:7px;font-size:10px;display:flex}.teacher-announcement-meta time{align-items:center;gap:4px;display:inline-flex}.teacher-announcement-copy strong{color:var(--text);font-size:14px;font-weight:600}.teacher-announcement-copy small{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12px;line-height:1.5;display:-webkit-box;overflow:hidden}.teacher-announcement-priority{color:var(--muted);border-radius:99px;flex:none;padding:5px 8px;font-size:10px}.teacher-announcement-priority.important,.teacher-announcement-priority.urgent{color:#ffb35c;background:#ff8a001f}.teacher-announcement-detail>p{margin:18px 0}.teacher-announcement-attachment{border-top:1px solid var(--border);margin-top:17px;padding-top:14px}.theme-light .teacher-timeline-search,.theme-light .teacher-announcement-toolbar select,.theme-light .teacher-timeline-modal,.theme-light .teacher-announcement-detail{background:#fff}.theme-light .teacher-timeline-search input,.theme-light .teacher-announcement-toolbar select{color:#111827}.theme-light .teacher-announcement-card:hover{background:#f4f8ff}@media (width<=700px){.teacher-timeline-search,.teacher-announcement-toolbar{align-items:stretch}.teacher-announcement-toolbar{flex-direction:column}.teacher-announcement-toolbar select{width:100%}.teacher-announcement-card{gap:10px;padding:14px 2px}.teacher-announcement-priority{display:none}.teacher-timeline-modal,.teacher-announcement-detail{border-radius:15px;padding:18px}.teacher-timeline-modal>header h2,.teacher-announcement-detail>header h2{font-size:18px}}.student-flat-row{cursor:pointer;border-radius:10px;align-items:center;gap:11px;width:100%;padding:10px;transition:all .2s;display:flex}.updates-eyebrow,.timeline-eyebrow,.albums-eyebrow{color:#1677ff;letter-spacing:.08em;text-transform:uppercase;margin-bottom:5px;font-size:10px;font-weight:700;display:block}.daily-care-timeline{flex-direction:column;gap:22px;max-width:980px;margin:0 auto;padding:26px;display:flex}.timeline-section-heading,.albums-section-heading{margin-bottom:2px}.timeline-eyebrow,.albums-eyebrow{color:#8abbff;letter-spacing:.1em;text-transform:uppercase;margin-bottom:7px;font-size:10px;font-weight:800;display:block}.timeline-composer{background:#ffffff06;border:1px solid #94a3b824;border-radius:16px;flex-direction:column;gap:18px;padding:18px;display:flex}.timeline-composer-media{background:#0b12203d;border:1px dashed #94a3b838;border-radius:14px;justify-content:space-between;align-items:center;gap:16px;min-width:0;padding:16px;display:flex}.timeline-composer-media>div{flex-direction:column;gap:4px;min-width:0;display:flex}.timeline-composer-media strong{color:var(--text);font-size:14px}.timeline-composer-media span{color:#9ca3af;font-size:12px}.timeline-media-upload{color:#9bc4ff;cursor:pointer;background:#1677ff1f;border:1px solid #1677ff57;border-radius:11px;justify-content:center;align-items:center;gap:8px;max-width:100%;min-height:42px;padding:0 14px;transition:all .2s;display:inline-flex}.timeline-media-upload span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.timeline-media-upload:hover{background:#1677ff2e;border-color:#1677ff94}.timeline-caption-field{margin-top:0}.timeline-caption-field textarea{min-height:118px}.timeline-create-actions{justify-content:flex-end;margin-top:0;display:flex}.timeline-feed{flex-direction:column;gap:18px;display:flex}.timeline-post{background:#ffffff06;border:1px solid #ffffff12;border-radius:18px;margin:0;padding:18px;overflow:hidden;box-shadow:0 18px 42px #0208171f}.timeline-post-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px;display:flex}.timeline-post-header>div{min-width:0}.timeline-post-header strong{color:var(--text);font-size:14px;font-weight:700;display:block}.timeline-post-header span,.timeline-post-header time{color:#9ca3af;font-size:12px}.timeline-post-header time{white-space:nowrap;flex:none}.timeline-post-caption{color:var(--text);overflow-wrap:anywhere;margin:0 0 16px;font-size:14px;line-height:1.65}.timeline-post-media-frame,.timeline-post-media-empty{background:#0b122066;border:1px solid #94a3b81f;border-radius:15px;overflow:hidden}.timeline-post-media-frame{max-height:440px}.timeline-post-media{object-fit:cover;width:100%;max-height:440px;display:block}.timeline-post-media-empty{color:#9ca3af;place-items:center;gap:8px;min-height:190px;font-size:12px;display:grid}.timeline-actions{border-top:1px solid #94a3b81f;justify-content:space-between;align-items:center;gap:14px;margin-top:16px;padding-top:14px;display:flex}.timeline-actions span,.timeline-action-buttons button{color:#9ca3af;align-items:center;gap:7px;font-size:12px;display:inline-flex}.timeline-action-buttons{justify-content:flex-start;align-items:center;gap:10px;margin-top:10px;display:flex}.timeline-action-buttons button{cursor:pointer;background:#ffffff08;border:1px solid #94a3b824;border-radius:10px;min-height:34px;padding:0 11px}.timeline-action-buttons button:hover{color:#9bc4ff;background:#1677ff1a;border-color:#1677ff61}.timeline-comments{border-top:1px solid #ffffff12;flex-direction:column;gap:8px;margin-top:14px;padding-top:14px;display:flex}.timeline-comment{color:#d1d5db;align-items:baseline;gap:8px;font-size:12px;display:flex}.timeline-comment strong{color:var(--text);white-space:nowrap;font-size:12px}.timeline-comment-form{gap:9px;margin-top:14px;display:flex}.timeline-comment-form input{min-width:0;min-height:40px;color:var(--text);background:#0b122047;border:1px solid #94a3b824;border-radius:11px;flex:1;padding:0 12px}.timeline-comment-form button{color:#9bc4ff;cursor:pointer;background:#1677ff26;border:0;border-radius:11px;width:40px;height:40px}.daily-care-albums{padding:26px}.albums-section-heading{margin-bottom:20px}.album-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.album-card{background:#ffffff06;border:1px solid #ffffff12;border-radius:18px;min-height:330px;overflow:hidden;box-shadow:0 18px 42px #0208171f}.album-cover{background:#0b122057;height:220px;position:relative;overflow:hidden}.album-cover-grid{grid-template-columns:repeat(2,1fr);gap:2px;height:100%;display:grid}.album-thumb{min-width:0;overflow:hidden}.album-cover img,.album-cover video,.album-thumb img,.album-thumb video{object-fit:cover;width:100%;height:100%;display:block}.album-cover-empty{color:#9ca3af;background:#ffffff0a;place-items:center;width:100%;height:100%;display:grid}.album-cover-overlay{color:#fff;background:linear-gradient(#0000,#000000bf);padding:35px 14px 12px;font-size:11px;position:absolute;inset:auto 0 0}.album-card-body{justify-content:space-between;align-items:center;gap:15px;padding:17px;display:flex}.album-card-info{flex-direction:column;gap:4px;display:flex}.album-card-eyebrow{color:#8abbff;letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:800}.album-card-info strong{color:var(--text);font-size:16px}.album-card-info small{color:#9ca3af;font-size:11px}.album-open-button{color:#9bc4ff;cursor:pointer;white-space:nowrap;background:#1677ff1a;border:1px solid #1677ff3d;border-radius:10px;align-items:center;gap:6px;min-height:36px;padding:0 12px;font-size:12px;font-weight:700;display:inline-flex}.album-open-button:hover{background:#1677ff29;border-color:#1677ff75}@keyframes dailyCareFadeUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (width<=850px){.daily-care-update-filters{grid-template-columns:1fr 1fr}.album-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){.daily-care-tabs{scrollbar-width:none;overflow-x:auto}.daily-care-tabs::-webkit-scrollbar{display:none}.daily-care-tabs button{white-space:nowrap}.student-picker-filters,.daily-care-update-filters{grid-template-columns:1fr}.health-activity-actions{justify-content:stretch}.health-activity-actions .primary-button{width:100%}.daily-care-update-top{flex-direction:column;gap:5px}.daily-care-timeline,.daily-care-albums{padding:20px 16px}.timeline-composer,.timeline-composer-media{padding:14px}.timeline-composer-media,.timeline-post-header,.timeline-actions{flex-direction:column;align-items:stretch}.timeline-media-upload,.timeline-create-actions .primary-button{justify-content:center;width:100%}.timeline-comment-form{align-items:stretch}.album-grid{grid-template-columns:1fr}.album-card-body{flex-direction:column;align-items:flex-start}.album-open-button{justify-content:center;width:100%}}[data-theme=light] .health-student-picker,[data-theme=light] .timeline-post,[data-theme=light] .album-card,.theme-light .health-student-picker,.theme-light .timeline-post,.theme-light .album-card{background:#fff;border-color:#e5e7eb}[data-theme=light] .timeline-composer,[data-theme=light] .timeline-composer-media,[data-theme=light] .timeline-post-media-frame,[data-theme=light] .timeline-post-media-empty,.theme-light .timeline-composer,.theme-light .timeline-composer-media,.theme-light .timeline-post-media-frame,.theme-light .timeline-post-media-empty{background:#f8fafc;border-color:#e5e7eb}[data-theme=light] .student-tree-search,.theme-light .student-tree-search{border-color:#e5e7eb}[data-theme=light] .student-flat-row:hover,.theme-light .student-flat-row:hover{background:#f8fafc}[data-theme=light] .health-activity-divider,[data-theme=light] .daily-care-update-line,[data-theme=light] .daily-care-update-note,[data-theme=light] .timeline-comments,.theme-light .health-activity-divider,.theme-light .daily-care-update-line,.theme-light .daily-care-update-note,.theme-light .timeline-comments{border-color:#e5e7eb}[data-theme=light] .daily-care-update-note,.theme-light .daily-care-update-note{color:#374151;background:#f8fafc}[data-theme=light] .timeline-comment-form input,.theme-light .timeline-comment-form input{color:#111827;background:#fff;border-color:#e5e7eb}.daily-care-page-header{margin-bottom:20px}.daily-care-page-header h2{margin-bottom:6px}.daily-care-page-header p{max-width:620px}.daily-care-notice{background:#1677ff14;border:1px solid #1677ff33;border-radius:12px;margin-bottom:16px;padding:12px 15px}.daily-care-tabs{background:#111827b3;border:1px solid #ffffff14;border-radius:14px;gap:8px;margin-bottom:20px;padding:5px;display:flex}.daily-care-tabs button{color:#9ca3af;cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:7px;padding:10px 15px;transition:all .2s;display:inline-flex}.daily-care-tabs button:hover{color:#fff;background:#ffffff0d}.daily-care-tabs button.active{color:#fff;background:#1677ff;box-shadow:0 4px 12px #1677ff2e}.daily-care-primary-tabs{width:fit-content;margin-bottom:14px;padding:6px}.daily-care-primary-tabs button{justify-content:center;min-width:136px;font-weight:700}@media (width<=560px){.daily-care-primary-tabs{width:100%}.daily-care-primary-tabs button{flex:1;min-width:max-content}}.health-activity-form{gap:0}.health-activity-section{padding:4px 0 22px}.health-activity-section-heading{margin-bottom:18px}.health-activity-section-heading>div{align-items:flex-start;gap:12px;display:flex}.health-activity-section-heading h4{margin:0 0 4px}.health-activity-section-heading p{color:#9ca3af;margin:0;font-size:13px}.health-activity-step{color:#1677ff;background:#1677ff1a;border-radius:9px;flex:0 0 30px;place-items:center;width:30px;height:30px;font-size:11px;font-weight:700;display:grid}.health-activity-divider{background:#ffffff12;height:1px;margin:0 0 22px}.health-student-picker{background:#ffffff06;border:1px solid #ffffff12;border-radius:14px;padding:14px}.student-tree-search{border:1px solid #ffffff14;border-radius:10px;align-items:center;gap:9px;margin-bottom:10px;padding:10px 12px;display:flex}.student-tree-search input{width:100%;color:inherit;background:0 0;border:0;outline:none}.student-picker-filters{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:10px;display:grid}.student-flat-list{scrollbar-width:none;max-height:250px;overflow-y:auto}.student-flat-list::-webkit-scrollbar{display:none}.student-flat-row{cursor:pointer;width:100%;color:inherit;text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:11px;padding:10px;transition:all .2s;display:flex}.student-flat-row:hover{background:#ffffff0d}.student-flat-row.selected{background:#1677ff1a}.student-flat-copy{flex-direction:column;gap:3px;display:flex}.student-flat-copy strong{font-size:13px}.student-flat-copy span{color:#9ca3af;font-size:11px}.student-tree-empty{text-align:center;color:#9ca3af;padding:18px;font-size:13px}.selected-student-chip{background:#1677ff14;border:1px solid #1677ff29;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;margin-top:10px;padding:10px 12px;display:flex}.selected-student-chip span{flex-direction:column;gap:3px;font-size:12px;display:flex}.selected-student-chip button{color:#9ca3af;cursor:pointer;background:0 0;border:0}.student-assignment-note{color:#6b7280;margin-top:9px;font-size:11px;display:block}.health-activity-actions{justify-content:flex-end;padding-top:4px;display:flex}.health-activity-actions .primary-button{min-width:160px}.daily-care-updates-heading{margin-bottom:18px}.updates-eyebrow{color:#1677ff;letter-spacing:.08em;text-transform:uppercase;margin-bottom:5px;font-size:10px;font-weight:700;display:block}.daily-care-update-filters{border-bottom:1px solid #94a3b81a;grid-template-columns:repeat(4,1fr);align-items:stretch;gap:10px;margin-bottom:22px;padding-bottom:18px;display:grid}.daily-care-update-filters .custom-dropdown{min-width:0}.daily-care-update-filters .custom-dropdown-trigger{width:100%;height:42px;min-height:42px}.daily-care-update-list{flex-direction:column;display:flex}.daily-care-update-item{animation:.35s both dailyCareFadeUp;animation-delay:var(--stagger-delay);gap:12px;display:flex}.daily-care-update-timeline{flex:0 0 32px;justify-content:center;width:32px;display:flex;position:relative}.daily-care-update-icon{z-index:1;color:#1677ff;background:#1677ff1a;border-radius:9px;place-items:center;width:30px;height:30px;display:grid;position:relative}.daily-care-update-line{background:#94a3b81f;width:1px;position:absolute;top:30px;bottom:-10px}.daily-care-update-content{flex:1;min-width:0;padding:0 0 20px}.daily-care-update-top{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.daily-care-update-top>div{min-width:0}.daily-care-update-top strong{color:var(--text);font-size:14px;font-weight:700;line-height:1.35;display:block}.daily-care-update-activity{color:#1677ff;margin-top:3px;font-size:12px;font-weight:600;line-height:1.35;display:inline-block}.daily-care-update-top time{color:#9ca3af;white-space:nowrap;font-size:11px}.daily-care-update-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:7px;margin:8px 0 0;font-size:11px;line-height:1.5;display:flex}.daily-care-update-meta span{color:#94a3b8a6}.daily-care-update-note{color:var(--text);background:#94a3b80f;border-radius:9px;margin-top:11px;padding:10px 12px;font-size:12px;line-height:1.6}.daily-care-empty-state{text-align:center;padding:50px 20px}.daily-care-empty-icon{color:#1677ff;background:#1677ff14;border-radius:12px;place-items:center;width:44px;height:44px;margin:0 auto 12px;display:grid}.daily-care-empty-state h3{margin-bottom:5px}.daily-care-empty-state p{color:#9ca3af;margin:0;font-size:13px}@media (width<=850px){.health-care-details-grid{grid-template-columns:1fr 1fr}.health-care-notes{grid-column:1/-1}.daily-care-update-filters{grid-template-columns:1fr 1fr}}@media (width<=560px){.daily-care-tabs{scrollbar-width:none;overflow-x:auto}.daily-care-tabs::-webkit-scrollbar{display:none}.daily-care-tabs button{white-space:nowrap}.student-picker-filters,.health-care-details-grid,.daily-care-update-filters{grid-template-columns:1fr}.health-care-notes{grid-column:auto}.health-activity-actions{justify-content:stretch}.health-activity-actions .primary-button{width:100%}.daily-care-update-top{flex-direction:column;gap:5px}}[data-theme=light] .daily-care-tabs{background:#f8fafc;border-color:#e5e7eb}[data-theme=light] .daily-care-tabs button{color:#6b7280}[data-theme=light] .daily-care-tabs button:hover{color:#111827;background:#eef2f7}[data-theme=light] .health-student-picker{background:#fff;border-color:#e5e7eb}[data-theme=light] .student-tree-search{border-color:#e5e7eb}[data-theme=light] .student-flat-row:hover{background:#f8fafc}[data-theme=light] .health-activity-divider,[data-theme=light] .daily-care-update-line{background:#e5e7eb}[data-theme=light] .daily-care-update-note{color:#374151;background:#f8fafc}.teacher-my-class-page{flex-direction:column;gap:24px;display:flex}.teacher-page-header{justify-content:space-between;align-items:flex-end;display:flex}.teacher-eyebrow{letter-spacing:.12em;opacity:.55;margin-bottom:6px;font-size:11px;font-weight:700;display:block}.teacher-page-header h1,.teacher-section-header h2{margin:0}.teacher-page-header p{opacity:.65;margin:7px 0 0}.teacher-class-overview{border:1px solid #8080802e;border-radius:18px;grid-template-columns:repeat(4,1fr);gap:16px;padding:24px;display:grid}.teacher-class-overview div{flex-direction:column;gap:7px;display:flex}.teacher-class-overview span{opacity:.55;font-size:12px}.teacher-class-overview strong{font-size:18px}.teacher-students-section{flex-direction:column;gap:18px;display:flex}.teacher-section-header{justify-content:space-between;align-items:center;gap:20px;display:flex}.teacher-student-search{border:1px solid #80808033;border-radius:12px;align-items:center;gap:9px;min-width:240px;padding:10px 14px;display:flex}.teacher-student-search input{width:100%;color:inherit;background:0 0;border:0;outline:0}.teacher-student-list{border:1px solid #8080802e;border-radius:18px;overflow:hidden}.teacher-student-row{border-bottom:1px solid #8080801f;align-items:center;gap:14px;padding:16px 20px;transition:background .2s;display:flex}.teacher-student-avatar{color:#1677ff;background:#1677ff1f;border-radius:50%;flex-shrink:0;place-items:center;width:38px;height:38px;font-weight:700;display:grid}.teacher-student-info{flex-direction:column;flex:1;gap:3px;display:flex}.teacher-student-info span{opacity:.55;font-size:12px}.teacher-student-status{opacity:.7;font-size:12px;font-weight:600}.teacher-empty-state{text-align:center;opacity:.65;padding:40px}@media (width<=800px){.teacher-class-overview{grid-template-columns:1fr 1fr}.teacher-section-header{flex-direction:column;align-items:stretch}.teacher-student-search{min-width:0}}@media (width<=520px){.teacher-class-overview{grid-template-columns:1fr}.teacher-student-row{padding:14px}}.teacher-class-overview{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;margin-bottom:22px;display:grid}.teacher-class-card{background:radial-gradient(circle at 90% 0%, #1677ff21, transparent 38%), var(--panel-bg,#fff);animation:.45s both teacherCardReveal;animation-delay:var(--stagger-delay,0s);border:1px solid #1677ff1f;border-radius:20px;padding:22px;position:relative;overflow:hidden;box-shadow:0 10px 30px #0f172a0d}.teacher-class-card:before{content:"";background:linear-gradient(90deg,#1677ff,#6d5dfc,#ff8a00);width:100%;height:3px;position:absolute;top:0;left:0}.teacher-class-card-top{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.teacher-class-label,.teacher-section-label{letter-spacing:.12em;text-transform:uppercase;color:#1677ff;margin-bottom:7px;font-size:10px;font-weight:800;display:block}.teacher-class-card h2{letter-spacing:-.03em;color:var(--text-primary,#111827);margin:0;font-size:26px;font-weight:800;line-height:1.1}.teacher-class-card p{color:var(--text-muted,#9ca3af);margin:7px 0 0;font-size:13px}.teacher-class-icon{color:#1677ff;background:#1677ff17;border:1px solid #1677ff1a;border-radius:13px;flex:0 0 42px;place-items:center;width:42px;height:42px;display:grid}.teacher-class-divider{background:var(--border-color,#0f172a14);height:1px;margin:20px 0}.teacher-class-meta{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.teacher-class-meta>div{min-width:0}.teacher-class-meta span{color:var(--text-muted,#9ca3af);margin-bottom:5px;font-size:11px;display:block}.teacher-class-meta strong{color:var(--text-primary,#111827);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:700;display:block;overflow:hidden}.teacher-students-panel{overflow:hidden}.teacher-students-header{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:18px;display:flex}.teacher-students-header h3{letter-spacing:-.02em;color:var(--text-primary,#111827);margin:0;font-size:20px;font-weight:800}.teacher-students-header p{color:var(--text-muted,#9ca3af);margin:5px 0 0;font-size:13px}.teacher-student-count{color:#1677ff;background:#1677ff0f;border:1px solid #1677ff1f;border-radius:999px;flex-shrink:0;align-items:center;gap:7px;padding:8px 12px;font-size:12px;font-weight:700;display:inline-flex}.teacher-student-search{align-items:center;margin-bottom:18px;display:flex;position:relative}.teacher-student-search svg{color:var(--text-muted,#9ca3af);pointer-events:none;position:absolute;left:14px}.teacher-student-search input{border:1px solid var(--border-color,#0f172a1a);background:var(--input-bg,#fff);width:100%;height:44px;color:var(--text-primary,#111827);font:inherit;box-sizing:border-box;border-radius:12px;outline:none;padding:0 14px 0 42px;font-size:13px;transition:border-color .2s,box-shadow .2s}.teacher-student-search input::placeholder{color:var(--text-muted,#9ca3af)}.teacher-student-search input:focus{border-color:#1677ff73;box-shadow:0 0 0 3px #1677ff14}.teacher-student-list{width:100%;overflow-x:auto}.teacher-student-list-head,.teacher-student-row{grid-template-columns:minmax(230px,1.8fr) minmax(120px,.9fr) 100px 110px;align-items:center;gap:18px;min-width:680px;display:grid}.teacher-student-list-head{border-bottom:1px solid var(--border-color,#0f172a14);color:var(--text-muted,#9ca3af);letter-spacing:.08em;text-transform:uppercase;padding:10px 14px;font-size:10px;font-weight:800}.teacher-student-row{border-bottom:1px solid var(--border-color,#0f172a0f);color:var(--text-primary,#111827);animation:.35s both teacherRowReveal;animation-delay:var(--stagger-delay,0s);padding:14px;font-size:13px;transition:background .2s}.teacher-student-row:last-child{border-bottom:0}.teacher-student-row:hover{background:#1677ff06}.teacher-student-person{align-items:center;gap:11px;min-width:0;display:flex}.teacher-student-person .directory-avatar{flex:0 0 38px;width:38px;height:38px;font-size:11px}.teacher-student-person>div{min-width:0}.teacher-student-person strong{color:var(--text-primary,#111827);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:700;display:block;overflow:hidden}.teacher-student-person span{color:var(--text-muted,#9ca3af);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:11px;display:block;overflow:hidden}.teacher-student-id{color:var(--text-muted,#9ca3af);font-size:12px}.theme-dark .teacher-class-card{background:radial-gradient(circle at 90% 0,#1677ff29,#0000 40%),#1f2937;border-color:#ffffff12;box-shadow:0 14px 35px #0000002e}.theme-dark .teacher-class-divider,.theme-dark .teacher-student-list-head,.theme-dark .teacher-student-row{border-color:#ffffff12}.theme-dark .teacher-student-search input{background:#111827;border-color:#ffffff14}.theme-dark .teacher-student-row:hover{background:#ffffff06}.theme-dark .teacher-student-count{background:#1677ff1a;border-color:#1677ff29}@media (width<=760px){.teacher-class-overview{grid-template-columns:1fr}.teacher-students-header{flex-direction:column;gap:12px}.teacher-student-count{align-self:flex-start}}@media (width<=520px){.teacher-class-card{border-radius:17px;padding:18px}.teacher-class-card h2{font-size:23px}.teacher-class-meta{gap:8px}.teacher-class-meta span{font-size:10px}.teacher-class-meta strong{font-size:13px}.teacher-students-header h3{font-size:18px}}@keyframes teacherCardReveal{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes teacherRowReveal{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.teacher-student-toolbar{justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.teacher-student-search-large{flex:1;align-items:center;max-width:560px;display:flex;position:relative}.teacher-student-search-large>svg{color:var(--text-muted,#9ca3af);pointer-events:none;position:absolute;left:14px}.teacher-student-search-large input{border:1px solid var(--border-color,#0f172a1a);background:var(--input-bg,#fff);width:100%;height:44px;color:var(--text-primary,#111827);font:inherit;box-sizing:border-box;border-radius:13px;outline:none;padding:0 42px;font-size:13px;transition:border-color .2s,box-shadow .2s}.teacher-student-search-large input::placeholder{color:var(--text-muted,#9ca3af)}.teacher-student-search-large input:focus{border-color:#1677ff73;box-shadow:0 0 0 3px #1677ff14}.teacher-search-clear{width:26px;height:26px;color:var(--text-muted,#9ca3af);cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;display:grid;position:absolute;right:10px}.teacher-search-clear:hover{color:var(--text-primary,#111827);background:#0f172a0f}.teacher-status-filter{border:1px solid var(--border-color,#0f172a14);background:var(--panel-bg,#fff);border-radius:12px;align-items:center;gap:5px;padding:4px;display:flex}.teacher-status-filter button{height:34px;color:var(--text-muted,#9ca3af);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:9px;padding:0 12px;font-size:11px;font-weight:700;transition:background .2s,color .2s}.teacher-status-filter button:hover{color:var(--text-primary,#111827)}.teacher-status-filter button.active{color:#fff;background:#1677ff}.teacher-directory-heading{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:20px;display:flex}.teacher-directory-heading h3{letter-spacing:-.02em;color:var(--text-primary,#111827);margin:0;font-size:20px;font-weight:800}.teacher-directory-heading p{color:var(--text-muted,#9ca3af);margin:5px 0 0;font-size:13px}.teacher-section-label{letter-spacing:.12em;text-transform:uppercase;color:#1677ff;margin-bottom:7px;font-size:10px;font-weight:800;display:block}.teacher-class-scope{color:#1677ff;white-space:nowrap;background:#1677ff0f;border:1px solid #1677ff1f;border-radius:999px;align-items:center;gap:7px;padding:8px 12px;font-size:11px;font-weight:700;display:inline-flex}.teacher-directory-table-wrap{scrollbar-width:none;width:100%;overflow-x:auto}.teacher-directory-table-wrap::-webkit-scrollbar{display:none}.teacher-directory-table-head,.teacher-directory-row{grid-template-columns:minmax(240px,1.8fr) minmax(120px,.9fr) 90px 110px 35px;align-items:center;gap:18px;min-width:720px;display:grid}.teacher-directory-table-head{border-bottom:1px solid var(--border-color,#0f172a14);color:var(--text-muted,#9ca3af);letter-spacing:.08em;text-transform:uppercase;padding:10px 14px;font-size:10px;font-weight:800}.teacher-directory-row{border:0;border-bottom:1px solid var(--border-color,#0f172a0f);width:100%;color:var(--text-primary,#111827);text-align:left;font:inherit;cursor:pointer;animation:.35s both teacherStudentReveal;animation-delay:var(--stagger-delay,0s);background:0 0;padding:14px;transition:background .2s,transform .2s}.teacher-directory-row:last-child{border-bottom:0}.teacher-directory-row:hover{background:#1677ff09}.teacher-directory-row:active{transform:scale(.998)}.teacher-directory-person{align-items:center;gap:11px;min-width:0;display:flex}.teacher-directory-person .directory-avatar{flex:0 0 40px;width:40px;height:40px;font-size:11px}.teacher-directory-person>span:last-child{min-width:0}.teacher-directory-person strong{color:var(--text-primary,#111827);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:750;display:block;overflow:hidden}.teacher-directory-person small{color:var(--text-muted,#9ca3af);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:11px;display:block;overflow:hidden}.teacher-directory-id{color:var(--text-muted,#9ca3af);font-size:12px}.teacher-class-badge{color:#1677ff;background:#1677ff12;border:1px solid #1677ff1f;border-radius:8px;justify-content:center;align-items:center;width:fit-content;min-width:38px;padding:5px 9px;font-size:11px;font-weight:800;display:inline-flex}.teacher-status-badge{border-radius:999px;justify-content:center;align-items:center;min-width:58px;padding:5px 9px;font-size:10px;font-weight:800;display:inline-flex}.teacher-status-badge.blue{color:#1677ff;background:#1677ff17}.teacher-status-badge.orange{color:#e87500;background:#ff8a001a}.teacher-status-badge.muted{color:#6b7280;background:#6b72801a}.teacher-directory-arrow{width:30px;height:30px;color:var(--text-muted,#9ca3af);border-radius:9px;place-items:center;transition:background .2s,color .2s,transform .2s;display:grid}.teacher-directory-row:hover .teacher-directory-arrow{color:#1677ff;background:#1677ff14;transform:translate(2px)}.teacher-no-students{min-height:240px}.teacher-reset-filter{color:#1677ff;font:inherit;cursor:pointer;background:#1677ff14;border:0;border-radius:9px;margin-top:10px;padding:8px 13px;font-size:12px;font-weight:700}.teacher-reset-filter:hover{background:#1677ff21}.teacher-student-overlay{z-index:1000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0f172a47;justify-content:flex-end;animation:.2s both teacherOverlayIn;display:flex;position:fixed;inset:0}.teacher-student-drawer{box-sizing:border-box;background:var(--panel-bg,#fff);border-left:1px solid var(--border-color,#0f172a14);scrollbar-width:none;width:min(440px,92vw);height:100%;padding:26px;animation:.3s both teacherDrawerIn;overflow-y:auto;box-shadow:-18px 0 50px #0f172a1f}.teacher-student-drawer::-webkit-scrollbar{display:none}.teacher-student-drawer-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.teacher-student-drawer-header h3{color:var(--text-primary,#111827);margin:0;font-size:21px;font-weight:800}.teacher-student-drawer-header button{border:1px solid var(--border-color,#0f172a14);width:34px;height:34px;color:var(--text-muted,#9ca3af);cursor:pointer;background:0 0;border-radius:10px;place-items:center;display:grid}.teacher-student-drawer-header button:hover{color:var(--text-primary,#111827);background:#0f172a0d}.teacher-student-profile{background:radial-gradient(circle at 100% 0,#1677ff17,#0000 50%),#1677ff06;border:1px solid #1677ff1a;border-radius:17px;align-items:center;gap:14px;margin-top:30px;padding:18px;display:flex}.teacher-student-profile .directory-avatar{flex:0 0 52px;width:52px;height:52px;font-size:13px}.teacher-student-profile h2{color:var(--text-primary,#111827);margin:0;font-size:19px;font-weight:800}.teacher-student-profile p{color:var(--text-muted,#9ca3af);margin:5px 0 0;font-size:12px}.teacher-student-detail-grid{border:1px solid var(--border-color,#0f172a14);background:var(--border-color,#0f172a14);border-radius:15px;grid-template-columns:1fr 1fr;gap:1px;margin-top:20px;display:grid;overflow:hidden}.teacher-student-detail-grid>div{background:var(--panel-bg,#fff);min-width:0;padding:15px}.teacher-student-detail-grid span{color:var(--text-muted,#9ca3af);text-transform:uppercase;letter-spacing:.06em;margin-bottom:5px;font-size:10px;font-weight:700;display:block}.teacher-student-detail-grid strong{color:var(--text-primary,#111827);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:700;display:block;overflow:hidden}.teacher-close-profile{color:#fff;width:100%;height:42px;font:inherit;cursor:pointer;background:#1677ff;border:0;border-radius:11px;margin-top:20px;font-size:12px;font-weight:700;transition:opacity .2s,transform .2s}.teacher-close-profile:hover{opacity:.9}.teacher-close-profile:active{transform:scale(.99)}.theme-dark .teacher-student-search-large input{background:#111827;border-color:#ffffff14}.theme-dark .teacher-status-filter{background:#1f2937;border-color:#ffffff12}.theme-dark .teacher-status-filter button:hover{color:#fff}.theme-dark .teacher-class-scope{background:#1677ff1a;border-color:#1677ff29}.theme-dark .teacher-directory-table-head,.theme-dark .teacher-directory-row{border-color:#ffffff12}.theme-dark .teacher-directory-row:hover{background:#ffffff06}.theme-dark .teacher-student-drawer{background:#1f2937;border-color:#ffffff12;box-shadow:-18px 0 50px #0000004d}.theme-dark .teacher-student-detail-grid{background:#ffffff12;border-color:#ffffff12}.theme-dark .teacher-student-detail-grid>div{background:#1f2937}.theme-dark .teacher-student-profile{background:radial-gradient(circle at 100% 0,#1677ff24,#0000 50%),#1677ff0a}.theme-dark .teacher-student-drawer-header button:hover{background:#ffffff0f}@media (width<=820px){.teacher-student-toolbar{flex-direction:column;align-items:stretch}.teacher-student-search-large{max-width:none}.teacher-status-filter{width:fit-content}.teacher-directory-heading{flex-direction:column}}@media (width<=520px){.teacher-status-filter{scrollbar-width:none;width:100%;overflow-x:auto}.teacher-status-filter::-webkit-scrollbar{display:none}.teacher-status-filter button{flex:1;min-width:70px}.teacher-student-drawer{width:100%;padding:20px}.teacher-student-detail-grid{grid-template-columns:1fr}.teacher-class-scope{text-overflow:ellipsis;max-width:100%;overflow:hidden}}@keyframes teacherStudentReveal{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@keyframes teacherOverlayIn{0%{opacity:0}to{opacity:1}}@keyframes teacherDrawerIn{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}.attendance-status-badge{border-radius:999px;flex:none;padding:5px 8px;font-size:10px;font-weight:600;display:inline-flex}.attendance-status-badge.present{color:#72aaff;background:#1677ff1f}.attendance-status-badge.late{color:#ffb35c;background:#ff8a0021}.attendance-status-badge.absent{color:#ffa2a2;background:#f871711f}.attendance-status-badge.medical{color:#8ce0aa;background:#48bb7821}.app-shell.dashboard-shell:not(.parent-app-shell){--navy:#0b1220;--canvas:#111827;--card:#1f2937;--blue:#1677ff;--orange:#ff8a00;--white:#fff;--muted:#9ca3af;--text:#f8fafc;--border:#9ca3af29;--blue-soft:#1677ff24;--orange-soft:#ff8a0029;--orange-border:#ff8a0057;--blue-border:#1677ff57;--shadow:0 18px 45px #02081733}.app-shell.dashboard-shell.theme-light:not(.parent-app-shell){--canvas:#f6f8fb;--card:#fff;--text:#111827;--muted:#64748b;--border:#0f172a1a;--blue-soft:#1677ff17;--orange-soft:#ff8a001f;--orange-border:#ff8a003d;--blue-border:#1677ff3d;--shadow:0 14px 34px #0f172a14}.app-shell.dashboard-shell:not(.parent-app-shell) .nav-item.active{box-shadow:inset 3px 0 var(--orange), 0 10px 24px #1677ff14;background:linear-gradient(90deg,#1677ff38,#ff8a0021)}.app-shell.dashboard-shell:not(.parent-app-shell) .nav-item:hover{background:linear-gradient(90deg,#ffffff12,#ff8a0014)}.app-shell.dashboard-shell:not(.parent-app-shell) .active-chevron,.app-shell.dashboard-shell:not(.parent-app-shell) .eyebrow,.app-shell.dashboard-shell:not(.parent-app-shell) .dashboard-eyebrow,.app-shell.dashboard-shell:not(.parent-app-shell) .dashboard-section .eyebrow{color:#ffb35c}.app-shell.dashboard-shell:not(.parent-app-shell) .topbar{background:linear-gradient(90deg, color-mix(in srgb, var(--canvas) 94%, transparent), #ff8a0009);border-bottom-color:color-mix(in srgb, var(--border) 72%, #ff8a0033)}.app-shell.dashboard-shell:not(.parent-app-shell) .icon-button:hover,.app-shell.dashboard-shell:not(.parent-app-shell) .topbar-user:hover,.app-shell.dashboard-shell:not(.parent-app-shell) .profile-menu-links button:hover,.app-shell.dashboard-shell:not(.parent-app-shell) .settings-link:hover{background:linear-gradient(135deg, var(--blue-soft), var(--orange-soft));border-color:var(--orange-border);color:var(--text)}.app-shell.dashboard-shell:not(.parent-app-shell) .notification-dot,.app-shell.dashboard-shell:not(.parent-app-shell) .notification-badge{background:var(--orange)}.app-shell.dashboard-shell:not(.parent-app-shell) .welcome-card,.app-shell.dashboard-shell:not(.parent-app-shell) .analytics-section{background:radial-gradient(circle at 86% 8%, #ffffff29, transparent 26%), linear-gradient(120deg, #0f4fb1 0%, var(--blue) 42%, var(--orange) 100%);border-color:#ff8a004d;box-shadow:0 20px 46px #1677ff29,0 12px 28px #ff8a001f}.app-shell.dashboard-shell:not(.parent-app-shell) .welcome-art span{background:var(--orange);color:#0b1220;box-shadow:0 12px 28px #ff8a003d}.app-shell.dashboard-shell:not(.parent-app-shell) .primary-button{background:linear-gradient(135deg, var(--blue), #0d63d8);border-color:var(--blue)}.app-shell.dashboard-shell:not(.parent-app-shell) .primary-button:hover{background:linear-gradient(135deg, #3188ff, var(--orange));border-color:var(--orange);box-shadow:0 12px 26px #ff8a0033}.app-shell.dashboard-shell:not(.parent-app-shell) .secondary-button,.app-shell.dashboard-shell:not(.parent-app-shell) .text-button{color:#ffb35c}.app-shell.dashboard-shell:not(.parent-app-shell) .secondary-button:hover,.app-shell.dashboard-shell:not(.parent-app-shell) .text-button:hover{background:var(--orange-soft);border-color:var(--orange-border);color:var(--orange)}.app-shell.dashboard-shell:not(.parent-app-shell) .dashboard-summary{border-image:linear-gradient(90deg,#1677ff73,#ff8a0073) 1}.app-shell.dashboard-shell:not(.parent-app-shell) .summary-item:nth-child(2n) .summary-icon,.app-shell.dashboard-shell:not(.parent-app-shell) .summary-item-attention .summary-icon,.app-shell.dashboard-shell:not(.parent-app-shell) .stat-card:nth-child(2n) .stat-icon,.app-shell.dashboard-shell:not(.parent-app-shell) .activity-icon.orange,.app-shell.dashboard-shell:not(.parent-app-shell) .care-icon.orange,.app-shell.dashboard-shell:not(.parent-app-shell) .announcement-icon.orange,.app-shell.dashboard-shell:not(.parent-app-shell) .class-card-icon.orange,.app-shell.dashboard-shell:not(.parent-app-shell) .modern-class-grid .class-card-icon.orange{background:var(--orange-soft);color:#ffb35c}.app-shell.dashboard-shell:not(.parent-app-shell) .summary-item:nth-child(2n) strong,.app-shell.dashboard-shell:not(.parent-app-shell) .stat-card:nth-child(2n) .stat-value,.app-shell.dashboard-shell:not(.parent-app-shell) .attendance-score strong{color:#ffb35c}.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .summary-item:nth-child(2n) strong,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .stat-card:nth-child(2n) .stat-value,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .attendance-score strong{color:#c26300}.app-shell.dashboard-shell:not(.parent-app-shell) .stat-card:nth-child(2n),.app-shell.dashboard-shell:not(.parent-app-shell) .dashboard-section:nth-child(2n),.app-shell.dashboard-shell:not(.parent-app-shell) .content-panel:nth-child(2n),.app-shell.dashboard-shell:not(.parent-app-shell) .class-card:nth-child(2n){border-color:var(--orange-border)}.app-shell.dashboard-shell:not(.parent-app-shell) .stat-card:hover,.app-shell.dashboard-shell:not(.parent-app-shell) .dashboard-section:hover,.app-shell.dashboard-shell:not(.parent-app-shell) .content-panel:hover,.app-shell.dashboard-shell:not(.parent-app-shell) .class-card:hover{border-color:color-mix(in srgb, var(--blue) 46%, var(--orange));box-shadow:var(--shadow), 0 0 0 1px #ff8a0014}.app-shell.dashboard-shell:not(.parent-app-shell) .quick-action{background:linear-gradient(135deg,#1677ff0e,#ff8a000f)}.app-shell.dashboard-shell:not(.parent-app-shell) .quick-action:nth-child(2n){border-color:var(--orange-border)}.app-shell.dashboard-shell:not(.parent-app-shell) .quick-action:nth-child(2n) .quick-action-icon{color:var(--orange)}.app-shell.dashboard-shell:not(.parent-app-shell) .quick-action:hover{background:linear-gradient(135deg, var(--blue-soft), var(--orange-soft));border-color:var(--orange-border)}.app-shell.dashboard-shell:not(.parent-app-shell) .quick-action-primary{background:linear-gradient(135deg, var(--blue), var(--orange));border-color:#0000;box-shadow:0 12px 28px #1677ff29,0 10px 24px #ff8a0024}.app-shell.dashboard-shell:not(.parent-app-shell) .attendance-progress span,.app-shell.dashboard-shell:not(.parent-app-shell) .chart-bar.attendance-bar,.app-shell.dashboard-shell:not(.parent-app-shell) .attendance-bar{background:linear-gradient(90deg, var(--blue), var(--orange))}.app-shell.dashboard-shell:not(.parent-app-shell) .late-bar,.app-shell.dashboard-shell:not(.parent-app-shell) .chart-bar.late-bar,.app-shell.dashboard-shell:not(.parent-app-shell) .attendance-dot.late,.app-shell.dashboard-shell:not(.parent-app-shell) .orange-dot{background:var(--orange)}.app-shell.dashboard-shell:not(.parent-app-shell) .status-badge.orange,.app-shell.dashboard-shell:not(.parent-app-shell) .attendance-status-badge.late,.app-shell.dashboard-shell:not(.parent-app-shell) .announcement-badge.priority-important,.app-shell.dashboard-shell:not(.parent-app-shell) .announcement-badge.priority-urgent,.app-shell.dashboard-shell:not(.parent-app-shell) .announcement-badge.action,.app-shell.dashboard-shell:not(.parent-app-shell) .teacher-announcement-priority.important,.app-shell.dashboard-shell:not(.parent-app-shell) .teacher-announcement-priority.urgent{color:#ffb35c;background:#ff8a002e;border-color:#ff8a0047}.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .status-badge.orange,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .attendance-status-badge.late,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .announcement-badge.priority-important,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .announcement-badge.priority-urgent,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .announcement-badge.action{color:#b96100;background:#ff8a0021}.app-shell.dashboard-shell:not(.parent-app-shell) .search-field:focus-within,.app-shell.dashboard-shell:not(.parent-app-shell) .student-search:focus-within,.app-shell.dashboard-shell:not(.parent-app-shell) .teacher-timeline-search:focus-within,.app-shell.dashboard-shell:not(.parent-app-shell) .custom-dropdown-trigger:focus-visible,.app-shell.dashboard-shell:not(.parent-app-shell) .custom-dropdown.open .custom-dropdown-trigger,.app-shell.dashboard-shell:not(.parent-app-shell) .form-grid input:focus,.app-shell.dashboard-shell:not(.parent-app-shell) .add-student-form input:focus,.app-shell.dashboard-shell:not(.parent-app-shell) .add-student-form select:focus{border-color:color-mix(in srgb, var(--blue) 58%, var(--orange));box-shadow:0 0 0 3px #ff8a001f,0 0 0 1px #1677ff1f}.app-shell.dashboard-shell:not(.parent-app-shell) .custom-dropdown-menu button:hover,.app-shell.dashboard-shell:not(.parent-app-shell) .custom-dropdown-menu button.active,.app-shell.dashboard-shell:not(.parent-app-shell) .custom-dropdown-menu-portal .custom-dropdown-option:hover,.app-shell.dashboard-shell:not(.parent-app-shell) .custom-dropdown-menu-portal .custom-dropdown-option.active,.app-shell.dashboard-shell:not(.parent-app-shell) .custom-calendar-grid button:hover{background:linear-gradient(135deg, var(--blue-soft), var(--orange-soft))}.app-shell.dashboard-shell:not(.parent-app-shell) .custom-dropdown-menu button.selected,.app-shell.dashboard-shell:not(.parent-app-shell) .custom-dropdown-menu-portal .custom-dropdown-option.selected,.app-shell.dashboard-shell:not(.parent-app-shell) .custom-calendar-grid button.selected{color:#fff;background:linear-gradient(135deg, var(--blue), var(--orange))!important}.app-shell.dashboard-shell:not(.parent-app-shell) .modern-table .student-row:hover,.app-shell.dashboard-shell:not(.parent-app-shell) .parent-table-row:not(.parent-table-head):hover,.app-shell.dashboard-shell:not(.parent-app-shell) .teacher-directory-row:hover,.app-shell.dashboard-shell:not(.parent-app-shell) .class-table-row:not(.class-table-head):hover,.app-shell.dashboard-shell:not(.parent-app-shell) .announcement-card:hover,.app-shell.dashboard-shell:not(.parent-app-shell) .teacher-announcement-card:hover{background:linear-gradient(90deg,#1677ff0e,#ff8a000f)}.app-shell.dashboard-shell:not(.parent-app-shell) .blue-avatar,.app-shell.dashboard-shell:not(.parent-app-shell) .student-flat-row.selected .student-flat-avatar{color:#9cc9ff;background:#1677ff29}.app-shell.dashboard-shell:not(.parent-app-shell) .orange-avatar,.app-shell.dashboard-shell:not(.parent-app-shell) .parent-avatar,.app-shell.dashboard-shell:not(.parent-app-shell) .empty-icon:nth-child(2n){color:#ffb35c;background:#ff8a002e}.app-shell.dashboard-shell:not(.parent-app-shell) .parent-profile-hero,.app-shell.dashboard-shell:not(.parent-app-shell) .class-details-hero,.app-shell.dashboard-shell:not(.parent-app-shell) .teacher-student-profile,.app-shell.dashboard-shell:not(.parent-app-shell) .dashboard-rate-panel{background:radial-gradient(circle at 100% 0,#ff8a0024,#0000 42%),#1677ff0f;border-color:#ff8a002e}.app-shell.dashboard-shell:not(.parent-app-shell) .parent-completeness b,.app-shell.dashboard-shell:not(.parent-app-shell) .profile-photo-avatar.student-avatar-large{background:linear-gradient(90deg, var(--blue), var(--orange))}.app-shell.dashboard-shell:not(.parent-app-shell) .row-actions button:hover,.app-shell.dashboard-shell:not(.parent-app-shell) .more-button:hover,.app-shell.dashboard-shell:not(.parent-app-shell) .teacher-student-drawer-header button:hover,.app-shell.dashboard-shell:not(.parent-app-shell) .teacher-timeline-modal>header button:hover,.app-shell.dashboard-shell:not(.parent-app-shell) .teacher-announcement-detail>header button:hover{background:var(--orange-soft);color:var(--orange)}.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .welcome-card,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .analytics-section{background:radial-gradient(circle at 88% 12%, #ffffff5c, transparent 28%), linear-gradient(120deg, #0f5fd3 0%, var(--blue) 46%, var(--orange) 100%)}.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .quick-action-primary{color:#fff}.app-shell.dashboard-shell:not(.parent-app-shell){--blue-strong:#1677ff;--blue-hover:#3188ff;--blue-ink:#9bc4ff;--orange-strong:#ff8a00;--orange-hover:#ffa733;--orange-ink:#ffb35c;--brand-gradient:linear-gradient(135deg, var(--blue-strong) 0%, #1d75ef 46%, var(--orange-strong) 100%);--brand-soft-gradient:linear-gradient(135deg, #1677ff1c, #ff8a0021)}.app-shell.dashboard-shell:not(.parent-app-shell) .main-content{background:radial-gradient(circle at 92% 4%, #ff8a0012, transparent 28%), radial-gradient(circle at 8% 0%, #1677ff12, transparent 25%), var(--canvas)}.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .main-content{background:radial-gradient(circle at 90% 0%, #ff8a0014, transparent 28%), radial-gradient(circle at 8% 0%, #1677ff0f, transparent 24%), var(--canvas)}.app-shell.dashboard-shell:not(.parent-app-shell) .dashboard-header,.app-shell.dashboard-shell:not(.parent-app-shell) .teacher-class-card,.app-shell.dashboard-shell:not(.parent-app-shell) .class-card-featured{background:radial-gradient(circle at 90% 10%,#ff8a0029,#0000 34%),radial-gradient(circle at 0 0,#1677ff24,#0000 36%),#1f2937b8;border-color:#ff8a0033}.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .dashboard-header,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .teacher-class-card,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .class-card-featured{background:radial-gradient(circle at 90% 10%,#ff8a001f,#0000 34%),radial-gradient(circle at 0 0,#1677ff1a,#0000 36%),#fff}.app-shell.dashboard-shell:not(.parent-app-shell) .summary-icon,.app-shell.dashboard-shell:not(.parent-app-shell) .directory-stat:nth-child(odd),.app-shell.dashboard-shell:not(.parent-app-shell) .accounts-summary-card:nth-child(odd),.app-shell.dashboard-shell:not(.parent-app-shell) .attendance-summary-item:nth-child(odd){border-color:var(--blue-border)}.app-shell.dashboard-shell:not(.parent-app-shell) .summary-item:nth-child(2n) .summary-icon,.app-shell.dashboard-shell:not(.parent-app-shell) .directory-stat:nth-child(2n),.app-shell.dashboard-shell:not(.parent-app-shell) .accounts-summary-card:nth-child(2n),.app-shell.dashboard-shell:not(.parent-app-shell) .attendance-summary-item:nth-child(2n),.app-shell.dashboard-shell:not(.parent-app-shell) .dashboard-summary-metric.orange,.app-shell.dashboard-shell:not(.parent-app-shell) .account-settings-card{border-color:var(--orange-border)}.app-shell.dashboard-shell:not(.parent-app-shell) .directory-stat:nth-child(2n) strong,.app-shell.dashboard-shell:not(.parent-app-shell) .accounts-summary-card:nth-child(2n) strong,.app-shell.dashboard-shell:not(.parent-app-shell) .attendance-summary-item:nth-child(2n) strong,.app-shell.dashboard-shell:not(.parent-app-shell) .dashboard-summary-metric.orange strong{color:var(--orange-ink)}.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .directory-stat:nth-child(2n) strong,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .accounts-summary-card:nth-child(2n) strong,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .attendance-summary-item:nth-child(2n) strong,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .dashboard-summary-metric.orange strong{color:#b96100}.app-shell.dashboard-shell:not(.parent-app-shell) .directory-stat:nth-child(2n),.app-shell.dashboard-shell:not(.parent-app-shell) .accounts-summary-card:nth-child(2n),.app-shell.dashboard-shell:not(.parent-app-shell) .attendance-summary-item:nth-child(2n),.app-shell.dashboard-shell:not(.parent-app-shell) .account-settings-card{background:radial-gradient(circle at 100% 0%, #ff8a001c, transparent 42%), var(--card)}.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .directory-stat:nth-child(2n),.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .accounts-summary-card:nth-child(2n),.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .attendance-summary-item:nth-child(2n),.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .account-settings-card{background:radial-gradient(circle at 100% 0,#ff8a0013,#0000 40%),#fff}.app-shell.dashboard-shell:not(.parent-app-shell) .teacher-class-card:before,.app-shell.dashboard-shell:not(.parent-app-shell) .announcement-read-row b,.app-shell.dashboard-shell:not(.parent-app-shell) .dashboard-summary-button,.app-shell.dashboard-shell:not(.parent-app-shell) .profile-photo-avatar.student-avatar-large{background:var(--brand-gradient)}.app-shell.dashboard-shell:not(.parent-app-shell) .daily-care-tabs button.active,.app-shell.dashboard-shell:not(.parent-app-shell) .attendance-segmented-control button.selected,.app-shell.dashboard-shell:not(.parent-app-shell) .teacher-status-filter button.active,.app-shell.dashboard-shell:not(.parent-app-shell) .announcement-toggle-row button.active{background:var(--brand-soft-gradient);border-color:var(--orange-border);color:var(--orange-ink);box-shadow:0 10px 24px #ff8a001a,0 7px 18px #1677ff14}.app-shell.dashboard-shell:not(.parent-app-shell) .student-tree-student.selected,.app-shell.dashboard-shell:not(.parent-app-shell) .student-flat-row.selected,.app-shell.dashboard-shell:not(.parent-app-shell) .health-student-picker .student-tree-student.selected,.app-shell.dashboard-shell:not(.parent-app-shell) .health-student-picker .student-flat-row.selected,.app-shell.dashboard-shell:not(.parent-app-shell) .class-student-option.selected{border-color:var(--orange-border);box-shadow:inset 2px 0 var(--orange-strong);background:linear-gradient(90deg,#1677ff21,#ff8a0021)}.app-shell.dashboard-shell:not(.parent-app-shell) .selected-student-chip,.app-shell.dashboard-shell:not(.parent-app-shell) .class-confirm-box,.app-shell.dashboard-shell:not(.parent-app-shell) .attendance-confirm,.app-shell.dashboard-shell:not(.parent-app-shell) .daily-care-notice{color:var(--orange-ink);background:#ff8a001c;border-color:#ff8a0047}.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .selected-student-chip,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .class-confirm-box,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .attendance-confirm,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .daily-care-notice{color:#b96100;background:#ff8a0017}.app-shell.dashboard-shell:not(.parent-app-shell) .daily-care-update-icon,.app-shell.dashboard-shell:not(.parent-app-shell) .health-activity-step,.app-shell.dashboard-shell:not(.parent-app-shell) .account-settings-icon,.app-shell.dashboard-shell:not(.parent-app-shell) .accounts-summary-card:nth-child(2n) .accounts-summary-icon,.app-shell.dashboard-shell:not(.parent-app-shell) .teacher-student-count,.app-shell.dashboard-shell:not(.parent-app-shell) .teacher-class-badge:nth-of-type(2n){color:var(--orange-ink);background:#ff8a0026;border-color:#ff8a003d}.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .daily-care-update-icon,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .health-activity-step,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .account-settings-icon,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .accounts-summary-card:nth-child(2n) .accounts-summary-icon,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .teacher-student-count,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .teacher-class-badge:nth-of-type(2n){color:#c26300;background:#ff8a001c}.app-shell.dashboard-shell:not(.parent-app-shell) .media-upload,.app-shell.dashboard-shell:not(.parent-app-shell) .timeline-media-upload,.app-shell.dashboard-shell:not(.parent-app-shell) .album-open-button,.app-shell.dashboard-shell:not(.parent-app-shell) .attendance-time-cell button,.app-shell.dashboard-shell:not(.parent-app-shell) .class-actions button,.app-shell.dashboard-shell:not(.parent-app-shell) .class-remove-button,.app-shell.dashboard-shell:not(.parent-app-shell) .accounts-row-actions button:hover{color:var(--orange-ink);background:#ff8a001a;border-color:#ff8a003d}.app-shell.dashboard-shell:not(.parent-app-shell) .media-upload:hover,.app-shell.dashboard-shell:not(.parent-app-shell) .timeline-media-upload:hover,.app-shell.dashboard-shell:not(.parent-app-shell) .album-open-button:hover,.app-shell.dashboard-shell:not(.parent-app-shell) .attendance-time-cell button:hover,.app-shell.dashboard-shell:not(.parent-app-shell) .class-actions button:hover,.app-shell.dashboard-shell:not(.parent-app-shell) .class-remove-button:hover,.app-shell.dashboard-shell:not(.parent-app-shell) .announcement-card-actions button:hover,.app-shell.dashboard-shell:not(.parent-app-shell) .timeline-action-buttons button:hover,.app-shell.dashboard-shell:not(.parent-app-shell) .timeline-comment-form button:hover{background:linear-gradient(135deg, var(--blue-soft), var(--orange-soft));border-color:var(--orange-border);color:var(--orange-ink)}.app-shell.dashboard-shell:not(.parent-app-shell) .timeline-comment-form button,.app-shell.dashboard-shell:not(.parent-app-shell) .health-activity-actions .primary-button,.app-shell.dashboard-shell:not(.parent-app-shell) .attendance-savebar .primary-button,.app-shell.dashboard-shell:not(.parent-app-shell) .announcement-modal-actions .primary-button,.app-shell.dashboard-shell:not(.parent-app-shell) .accounts-modal .primary-button,.app-shell.dashboard-shell:not(.parent-app-shell) .account-settings-footer .primary-button{background:var(--brand-gradient);box-shadow:0 12px 28px #1677ff21,0 10px 24px #ff8a0024}.app-shell.dashboard-shell:not(.parent-app-shell) .directory-table-row:not(.directory-table-head):hover,.app-shell.dashboard-shell:not(.parent-app-shell) .attendance-register-row:hover,.app-shell.dashboard-shell:not(.parent-app-shell) .class-mobile-card:hover,.app-shell.dashboard-shell:not(.parent-app-shell) .teacher-student-row:hover,.app-shell.dashboard-shell:not(.parent-app-shell) .teacher-directory-row:hover,.app-shell.dashboard-shell:not(.parent-app-shell) .accounts-table tbody tr:hover{background:linear-gradient(90deg,#1677ff0e,#ff8a000f)}.app-shell.dashboard-shell:not(.parent-app-shell) .announcement-card.is-pinned,.app-shell.dashboard-shell:not(.parent-app-shell) .announcement-card.priority-important,.app-shell.dashboard-shell:not(.parent-app-shell) .announcement-card.priority-urgent{box-shadow:inset 2px 0 var(--orange-strong), 0 14px 34px #0208171f}.app-shell.dashboard-shell:not(.parent-app-shell) .announcement-pin,.app-shell.dashboard-shell:not(.parent-app-shell) .announcement-meta-grid .action-required,.app-shell.dashboard-shell:not(.parent-app-shell) .updates-eyebrow,.app-shell.dashboard-shell:not(.parent-app-shell) .albums-eyebrow,.app-shell.dashboard-shell:not(.parent-app-shell) .daily-care-update-activity,.app-shell.dashboard-shell:not(.parent-app-shell) .capacity-warning,.app-shell.dashboard-shell:not(.parent-app-shell) .capacity-full,.app-shell.dashboard-shell:not(.parent-app-shell) .teacher-section-label,.app-shell.dashboard-shell:not(.parent-app-shell) .teacher-class-label{color:var(--orange-ink)}.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .announcement-pin,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .announcement-meta-grid .action-required,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .updates-eyebrow,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .albums-eyebrow,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .daily-care-update-activity,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .capacity-warning,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .capacity-full,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .teacher-section-label,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .teacher-class-label{color:#b96100}.app-shell.dashboard-shell:not(.parent-app-shell) .accounts-role.role-teacher,.app-shell.dashboard-shell:not(.parent-app-shell) .accounts-role.role-parent,.app-shell.dashboard-shell:not(.parent-app-shell) .class-status-badge.almost-full,.app-shell.dashboard-shell:not(.parent-app-shell) .class-capacity-pill,.app-shell.dashboard-shell:not(.parent-app-shell) .student-badge.orange,.app-shell.dashboard-shell:not(.parent-app-shell) .teacher-status-badge.orange{color:var(--orange-ink);background:#ff8a0024}.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .accounts-role.role-teacher,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .accounts-role.role-parent,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .class-status-badge.almost-full,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .class-capacity-pill,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .student-badge.orange,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .teacher-status-badge.orange{color:#b96100;background:#ff8a001a}.app-shell.dashboard-shell:not(.parent-app-shell) .accounts-avatar,.app-shell.dashboard-shell:not(.parent-app-shell) .account-settings-avatar,.app-shell.dashboard-shell:not(.parent-app-shell) .directory-avatar.orange,.app-shell.dashboard-shell:not(.parent-app-shell) .attendance-avatar.orange,.app-shell.dashboard-shell:not(.parent-app-shell) .class-teacher-avatar{color:var(--orange-ink);background:#ff8a0029}.app-shell.dashboard-shell:not(.parent-app-shell) .accounts-search:focus-within,.app-shell.dashboard-shell:not(.parent-app-shell) .directory-search:focus-within,.app-shell.dashboard-shell:not(.parent-app-shell) .student-tree-search:focus-within,.app-shell.dashboard-shell:not(.parent-app-shell) .health-care-notes textarea:focus,.app-shell.dashboard-shell:not(.parent-app-shell) .announcement-composer-grid input:focus,.app-shell.dashboard-shell:not(.parent-app-shell) .announcement-composer-grid textarea:focus,.app-shell.dashboard-shell:not(.parent-app-shell) .account-settings-grid input:focus,.app-shell.dashboard-shell:not(.parent-app-shell) .accounts-form-grid input:focus,.app-shell.dashboard-shell:not(.parent-app-shell) .accounts-form-grid select:focus,.app-shell.dashboard-shell:not(.parent-app-shell) .accounts-password-modal input:focus{border-color:color-mix(in srgb, var(--blue-strong) 52%, var(--orange-strong));box-shadow:0 0 0 3px #ff8a001f}.custom-dropdown-menu-portal .custom-dropdown-option:hover,.custom-dropdown-menu-portal .custom-dropdown-option.active{background:linear-gradient(135deg,#1677ff26,#ff8a0021)!important}.custom-dropdown-menu-portal .custom-dropdown-option.selected,.solid-calendar-popover .custom-calendar-grid button.selected{background:linear-gradient(135deg,#1677ff,#ff8a00)!important;border-color:#ff8a008c!important}.solid-calendar-popover .custom-calendar-header .icon-button:hover{color:#ffb35c!important;background:#ff8a0024!important;border-color:#ff8a0057!important}.app-shell.dashboard-shell:not(.parent-app-shell){--orange-surface:#ff8a0033;--orange-surface-strong:#ff8a0047;--blue-surface-strong:#1677ff3d;--brand-split-gradient:linear-gradient(120deg, #1059c7 0%, #1677ff 42%, #f18812 72%, #ff8a00 100%)}.app-shell.dashboard-shell:not(.parent-app-shell) .sidebar:after{content:"";opacity:.8;background:linear-gradient(#1677ff,#ff8a00);width:2px;position:absolute;top:24px;bottom:24px;right:0}.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .topbar{background:linear-gradient(90deg,#fffffff0,#ffffffe6 55%,#ff8a0021)}.app-shell.dashboard-shell:not(.parent-app-shell) .dashboard-header{background:radial-gradient(circle at 88% 10%,#ff8a0047,#0000 34%),radial-gradient(circle at 0 0,#1677ff3d,#0000 36%),#1f2937b8;border:1px solid #ff8a0042;border-radius:22px;padding:22px 24px;box-shadow:0 18px 42px #02081729,0 0 28px #ff8a001a}.app-shell.dashboard-shell:not(.parent-app-shell) .dashboard-summary-button{color:#fff;background:linear-gradient(135deg,#ff8a00,#1677ff);border-color:#0000;box-shadow:0 14px 30px #ff8a0033,0 10px 24px #1677ff24}.app-shell.dashboard-shell:not(.parent-app-shell) .analytics-section{color:#fff;background:radial-gradient(circle at 86% 12%,#fff3,#0000 24%),linear-gradient(120deg,#0f4fb1 0%,#1677ff 38%,#ee8815 68%,#ff8a00 100%)!important;border-color:#ff8a0061!important;box-shadow:0 24px 54px #1677ff2b,0 20px 48px #ff8a002e!important}.app-shell.dashboard-shell:not(.parent-app-shell) .analytics-section .eyebrow,.app-shell.dashboard-shell:not(.parent-app-shell) .analytics-section h3,.app-shell.dashboard-shell:not(.parent-app-shell) .analytics-section .analytics-summary strong,.app-shell.dashboard-shell:not(.parent-app-shell) .analytics-section .chart-column>strong{color:#fff}.app-shell.dashboard-shell:not(.parent-app-shell) .analytics-section .analytics-summary>span,.app-shell.dashboard-shell:not(.parent-app-shell) .analytics-section .analytics-legend span,.app-shell.dashboard-shell:not(.parent-app-shell) .analytics-section .chart-column>small,.app-shell.dashboard-shell:not(.parent-app-shell) .analytics-section .chart-value{color:#ffffffd1}.app-shell.dashboard-shell:not(.parent-app-shell) .analytics-section .status-badge.blue{color:#fff;background:#ffffff2e}.app-shell.dashboard-shell:not(.parent-app-shell) .attendance-bar{background:linear-gradient(#fff,#9bc4ff);box-shadow:0 0 18px #1677ff47}.app-shell.dashboard-shell:not(.parent-app-shell) .late-bar{background:linear-gradient(#ffd08a,#ff8a00);box-shadow:0 0 18px #ff8a0057}.app-shell.dashboard-shell:not(.parent-app-shell) .attendance-section{background:radial-gradient(circle at 100% 0,#ff8a0047,#0000 40%),linear-gradient(135deg,#ff8a0029,#111827e0 54%);border-color:#ff8a005c;box-shadow:0 16px 38px #ff8a0024}.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .attendance-section{background:radial-gradient(circle at 100% 0,#ff8a0038,#0000 40%),linear-gradient(135deg,#ff8a001f,#fff 54%)}.app-shell.dashboard-shell:not(.parent-app-shell) .attendance-score strong{color:#ffb35c;text-shadow:0 0 24px #ff8a002e}.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .attendance-score strong{color:#b96100;text-shadow:none}.app-shell.dashboard-shell:not(.parent-app-shell) .attendance-progress span{background:linear-gradient(90deg,#1677ff 0%,#ff8a00 100%);box-shadow:0 0 18px #ff8a003d}.app-shell.dashboard-shell:not(.parent-app-shell) .activity-section{background:radial-gradient(circle at 0 0,#1677ff42,#0000 38%),radial-gradient(circle at 100% 100%,#ff8a002e,#0000 38%),#1f2937d1;border-color:#1677ff47}.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .activity-section{background:radial-gradient(circle at 0 0,#1677ff24,#0000 38%),radial-gradient(circle at 100% 100%,#ff8a001f,#0000 38%),#fff}.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .quick-actions{background:radial-gradient(circle at 82% 0,#ff8a002e,#0000 34%),radial-gradient(circle at 0 100%,#1677ff1f,#0000 34%),#fff}.app-shell.dashboard-shell:not(.parent-app-shell) .quick-action{background:#1677ff21;border-color:#1677ff52;box-shadow:inset 0 1px #ffffff0a}.app-shell.dashboard-shell:not(.parent-app-shell) .quick-action-primary{border-color:#0000;box-shadow:0 16px 34px #1677ff2e,0 14px 30px #ff8a002e;background:linear-gradient(135deg,#1677ff 0%,#ff8a00 100%)!important}.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .quick-action{background:#1677ff14}.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .quick-action:nth-child(2),.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .quick-action:nth-child(4){background:#ff8a0029}.app-shell.dashboard-shell:not(.parent-app-shell) .summary-item:nth-child(2n),.app-shell.dashboard-shell:not(.parent-app-shell) .stat-card:nth-child(2n),.app-shell.dashboard-shell:not(.parent-app-shell) .student-stat.orange,.app-shell.dashboard-shell:not(.parent-app-shell) .directory-stat.orange,.app-shell.dashboard-shell:not(.parent-app-shell) .attendance-summary-item.late{background:radial-gradient(circle at 100% 0,#ff8a0057,#0000 42%),linear-gradient(135deg,#ff8a002e,#1f2937db);border-color:#ff8a0075;box-shadow:0 16px 34px #ff8a0021}.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .summary-item:nth-child(2n),.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .stat-card:nth-child(2n),.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .student-stat.orange,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .directory-stat.orange,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .attendance-summary-item.late{background:radial-gradient(circle at 100% 0,#ff8a0038,#0000 42%),linear-gradient(135deg,#ff8a001f,#fff)}.app-shell.dashboard-shell:not(.parent-app-shell) .stat-card:nth-child(2n) .stat-value,.app-shell.dashboard-shell:not(.parent-app-shell) .student-stat.orange strong,.app-shell.dashboard-shell:not(.parent-app-shell) .directory-stat.orange strong,.app-shell.dashboard-shell:not(.parent-app-shell) .attendance-summary-item.late strong{color:#ffb35c}.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .stat-card:nth-child(2n) .stat-value,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .student-stat.orange strong,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .directory-stat.orange strong,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .attendance-summary-item.late strong{color:#b96100}.app-shell.dashboard-shell:not(.parent-app-shell) .stat-card:nth-child(2n) .stat-icon,.app-shell.dashboard-shell:not(.parent-app-shell) .student-stat.orange .student-stat-icon,.app-shell.dashboard-shell:not(.parent-app-shell) .summary-item:nth-child(2n) .summary-icon{color:#ffd08a;background:#ff8a0042}.app-shell.dashboard-shell:not(.parent-app-shell) .primary-button.orange-action,.app-shell.dashboard-shell:not(.parent-app-shell) .secondary-button,.app-shell.dashboard-shell:not(.parent-app-shell) .text-button:hover,.app-shell.dashboard-shell:not(.parent-app-shell) .filter-chip,.app-shell.dashboard-shell:not(.parent-app-shell) .pagination-number.active,.app-shell.dashboard-shell:not(.parent-app-shell) .directory-pagination button.active,.app-shell.dashboard-shell:not(.parent-app-shell) .student-pagination .pagination-number.active{color:#ffb35c;background:#ff8a002e;border-color:#ff8a0061}.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .primary-button.orange-action,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .secondary-button,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .text-button:hover,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .filter-chip,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .pagination-number.active,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .directory-pagination button.active,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .student-pagination .pagination-number.active{color:#b96100;background:#ff8a0024}.app-shell.dashboard-shell:not(.parent-app-shell) .status-badge.orange,.app-shell.dashboard-shell:not(.parent-app-shell) .announcement-badge.priority-important,.app-shell.dashboard-shell:not(.parent-app-shell) .announcement-badge.action,.app-shell.dashboard-shell:not(.parent-app-shell) .attendance-status-badge.late,.app-shell.dashboard-shell:not(.parent-app-shell) .accounts-status.late,.app-shell.dashboard-shell:not(.parent-app-shell) .accounts-status.pending,.app-shell.dashboard-shell:not(.parent-app-shell) .teacher-announcement-priority.important{color:#ffd08a;background:#ff8a003d;border:1px solid #ff8a0061}.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .status-badge.orange,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .announcement-badge.priority-important,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .announcement-badge.action,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .attendance-status-badge.late,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .accounts-status.late,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .accounts-status.pending,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .teacher-announcement-priority.important{color:#b96100;background:#ff8a0029}.app-shell.dashboard-shell:not(.parent-app-shell){--orange-soft:#ff8a001c;--orange-border:#ff8a003d}.app-shell.dashboard-shell.theme-light:not(.parent-app-shell){--orange-soft:#ff8a0017;--orange-border:#ff8a0033}.app-shell.dashboard-shell:not(.parent-app-shell) .quick-actions{background:radial-gradient(circle at 82% 0,#ff8a001c,#0000 34%),radial-gradient(circle at 0 100%,#1677ff33,#0000 34%),#1f2937e6;border-color:#1677ff4d}.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .quick-actions{background:radial-gradient(circle at 82% 0,#ff8a0017,#0000 34%),radial-gradient(circle at 0 100%,#1677ff1f,#0000 34%),#fff;border-color:#1677ff29}.app-shell.dashboard-shell:not(.parent-app-shell) .quick-action:nth-child(2),.app-shell.dashboard-shell:not(.parent-app-shell) .quick-action:nth-child(4){background:#1677ff1f;border-color:#1677ff4d;box-shadow:inset 0 1px #ffffff0a}.app-shell.dashboard-shell:not(.parent-app-shell) .quick-action:nth-child(4){background:linear-gradient(135deg,#ff8a002e,#1677ff17);border-color:#ff8a0052;box-shadow:0 10px 22px #ff8a0017,inset 0 1px #ffffff0a}.app-shell.dashboard-shell:not(.parent-app-shell) .quick-action:nth-child(2) .quick-action-icon,.app-shell.dashboard-shell:not(.parent-app-shell) .quick-action:nth-child(2)>svg{color:#8cbaff}.app-shell.dashboard-shell:not(.parent-app-shell) .quick-action-primary{box-shadow:0 16px 34px #1677ff33,0 10px 22px #ff8a0014;background:linear-gradient(135deg,#1677ff 0%,#0d63d8 100%)!important}.app-shell.dashboard-shell:not(.parent-app-shell) .summary-item:nth-child(2n) strong,.app-shell.dashboard-shell:not(.parent-app-shell) .stat-card:nth-child(2n) .stat-value{color:#8cbaff}.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .summary-item:nth-child(2n) strong,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .stat-card:nth-child(2n) .stat-value{color:#0f55b8}.app-shell.dashboard-shell:not(.parent-app-shell) .stat-card:nth-child(2n) .stat-icon,.app-shell.dashboard-shell:not(.parent-app-shell) .summary-item:nth-child(2n) .summary-icon{color:#9cc9ff;background:#1677ff2e}.app-shell.dashboard-shell:not(.parent-app-shell) .summary-item-attention,.app-shell.dashboard-shell:not(.parent-app-shell) .stat-card:nth-child(4),.app-shell.dashboard-shell:not(.parent-app-shell) .student-stat.orange,.app-shell.dashboard-shell:not(.parent-app-shell) .directory-stat.orange,.app-shell.dashboard-shell:not(.parent-app-shell) .attendance-summary-item.late{background:radial-gradient(circle at 100% 0,#ff8a003d,#0000 42%),linear-gradient(135deg,#ff8a0021,#1f2937db);border-color:#ff8a0057}.brand-mark{border-radius:16px;width:52px;height:52px;font-size:14px}.app-shell.dashboard-shell:not(.parent-app-shell){--orange-soft:#ff8a001c;--orange-border:#ff8a0047;--orange-surface:#ff8a0021;--orange-surface-strong:#ff8a0033;--blue-soft:#1677ff24;--blue-border:#1677ff57;--blue-surface-strong:#1677ff4d;--brand-split-gradient:linear-gradient(135deg, #0f55c8 0%, #1677ff 68%, #ff8a00 100%)}.app-shell.dashboard-shell:not(.parent-app-shell) .sidebar{background:radial-gradient(circle at 0 8%,#1677ff47,#0000 34%),radial-gradient(circle at 100% 22%,#ff8a0029,#0000 30%),#0b1220}.app-shell.dashboard-shell:not(.parent-app-shell) .sidebar:after{opacity:.82;background:linear-gradient(#1677ff 0% 66%,#ff8a00 100%)}.app-shell.dashboard-shell:not(.parent-app-shell) .brand-mark{background:linear-gradient(135deg,#1677ff 0% 58%,#ff8a00 100%);box-shadow:0 12px 28px #1677ff33,0 8px 20px #ff8a0024}.app-shell.dashboard-shell:not(.parent-app-shell) .nav-item.active{background:linear-gradient(90deg,#1677ff4d,#ff8a0024);box-shadow:inset 3px 0 #1677ff,0 12px 28px #1677ff1f,0 7px 20px #ff8a0014}.app-shell.dashboard-shell:not(.parent-app-shell) .nav-item:nth-of-type(2n):not(.active) svg{color:#8cbaff}.app-shell.dashboard-shell:not(.parent-app-shell) .topbar{background:linear-gradient(90deg,#0b1220eb,#111827e0 58%,#1677ff26 78%,#ff8a0014);border-bottom-color:#1677ff3d;box-shadow:inset 0 -2px #1677ff24,inset 0 -3px #ff8a000f}.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .topbar{background:linear-gradient(90deg,#fffffff5,#ffffffeb 58%,#1677ff1c 78%,#ff8a0012);border-bottom-color:#1677ff24}.app-shell.dashboard-shell:not(.parent-app-shell) .dashboard-header{background:radial-gradient(circle at 88% 10%,#ff8a002e,#0000 34%),radial-gradient(circle at 0 0,#1677ff3d,#0000 36%),#1f2937b8;border-color:#1677ff47;box-shadow:0 18px 42px #02081729,0 0 28px #1677ff1a,0 12px 28px #ff8a000f}.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .dashboard-header{background:radial-gradient(circle at 88% 10%,#ff8a001c,#0000 34%),radial-gradient(circle at 0 0,#1677ff1f,#0000 36%),#fff}.app-shell.dashboard-shell:not(.parent-app-shell) .dashboard-eyebrow,.app-shell.dashboard-shell:not(.parent-app-shell) .dashboard-header time{color:#8cbaff}.app-shell.dashboard-shell:not(.parent-app-shell) .dashboard-summary-button,.app-shell.dashboard-shell:not(.parent-app-shell) .quick-action-primary,.app-shell.dashboard-shell:not(.parent-app-shell) .primary-button,.app-shell.dashboard-shell:not(.parent-app-shell) .student-modal-actions .primary-button,.app-shell.dashboard-shell:not(.parent-app-shell) .parent-modal-actions .primary-button,.app-shell.dashboard-shell:not(.parent-app-shell) .attendance-savebar .primary-button,.app-shell.dashboard-shell:not(.parent-app-shell) .announcement-modal-actions .primary-button,.app-shell.dashboard-shell:not(.parent-app-shell) .accounts-modal .primary-button,.app-shell.dashboard-shell:not(.parent-app-shell) .account-settings-footer .primary-button{background:linear-gradient(135deg,#1677ff 0%,#0f63d7 100%)!important;border-color:#1677ff!important;box-shadow:0 14px 30px #1677ff2e,0 8px 18px #ff8a000f!important}.app-shell.dashboard-shell:not(.parent-app-shell) .analytics-section{background:radial-gradient(circle at 86% 12%,#ffffff29,#0000 24%),linear-gradient(120deg,#0f4fb1 0%,#1677ff 72%,#ff8a00 100%)!important;border-color:#1677ff5c!important;box-shadow:0 24px 54px #1677ff33,0 12px 32px #ff8a001f!important}.app-shell.dashboard-shell:not(.parent-app-shell) .attendance-section,.app-shell.dashboard-shell:not(.parent-app-shell) .activity-section,.app-shell.dashboard-shell:not(.parent-app-shell) .quick-actions{background:radial-gradient(circle at 0 0,#1677ff3d,#0000 38%),radial-gradient(circle at 100% 100%,#ff8a0024,#0000 35%),#1f2937db;border-color:#1677ff42;box-shadow:0 16px 38px #1677ff17,0 10px 24px #ff8a000f}.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .attendance-section,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .activity-section,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .quick-actions{background:radial-gradient(circle at 0 0,#1677ff1f,#0000 38%),radial-gradient(circle at 100% 100%,#ff8a001a,#0000 35%),#fff;border-color:#1677ff29}.app-shell.dashboard-shell:not(.parent-app-shell) .attendance-score strong,.app-shell.dashboard-shell:not(.parent-app-shell) .summary-item:nth-child(2n) strong,.app-shell.dashboard-shell:not(.parent-app-shell) .stat-card:nth-child(2n) .stat-value{color:#8cbaff;text-shadow:0 0 18px #1677ff24}.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .attendance-score strong,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .summary-item:nth-child(2n) strong,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .stat-card:nth-child(2n) .stat-value{color:#0f55b8;text-shadow:none}.app-shell.dashboard-shell:not(.parent-app-shell) .attendance-progress{background:#1677ff29;box-shadow:inset 0 0 0 1px #1677ff24}.app-shell.dashboard-shell:not(.parent-app-shell) .attendance-progress span,.app-shell.dashboard-shell:not(.parent-app-shell) .chart-bar.attendance-bar,.app-shell.dashboard-shell:not(.parent-app-shell) .attendance-bar{background:#1677ff;box-shadow:0 0 18px #1677ff40}.app-shell.dashboard-shell:not(.parent-app-shell) .quick-action,.app-shell.dashboard-shell:not(.parent-app-shell) .quick-action:nth-child(2),.app-shell.dashboard-shell:not(.parent-app-shell) .quick-action:nth-child(4){background:#1677ff1f;border-color:#1677ff4d;box-shadow:inset 0 1px #ffffff0a}.app-shell.dashboard-shell:not(.parent-app-shell) .quick-action:nth-child(4){background:linear-gradient(135deg,#1677ff21,#ff8a0033);border-color:#ff8a005c}.app-shell.dashboard-shell:not(.parent-app-shell) .quick-action:nth-child(2) .quick-action-icon,.app-shell.dashboard-shell:not(.parent-app-shell) .quick-action:nth-child(4) .quick-action-icon,.app-shell.dashboard-shell:not(.parent-app-shell) .quick-action:nth-child(2)>svg,.app-shell.dashboard-shell:not(.parent-app-shell) .quick-action:nth-child(4)>svg{color:#8cbaff}.app-shell.dashboard-shell:not(.parent-app-shell) .quick-action:nth-child(4) .quick-action-icon,.app-shell.dashboard-shell:not(.parent-app-shell) .quick-action:nth-child(4)>svg{color:#ff8a00}.app-shell.dashboard-shell:not(.parent-app-shell) .quick-action:hover{border-color:#ff8a0061;box-shadow:0 14px 30px #1677ff17,0 8px 18px #ff8a001f}.app-shell.dashboard-shell:not(.parent-app-shell) .summary-item:nth-child(2n),.app-shell.dashboard-shell:not(.parent-app-shell) .stat-card:nth-child(2n){background:radial-gradient(circle at 100% 0,#1677ff38,#0000 42%),radial-gradient(circle at 0 100%,#ff8a001f,#0000 40%),linear-gradient(135deg,#1677ff1c,#1f2937e0);border-color:#1677ff42;box-shadow:0 14px 30px #1677ff14,0 8px 18px #ff8a000f}.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .summary-item:nth-child(2n),.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .stat-card:nth-child(2n){background:radial-gradient(circle at 100% 0,#1677ff24,#0000 42%),radial-gradient(circle at 0 100%,#ff8a0014,#0000 40%),linear-gradient(135deg,#1677ff12,#fff);border-color:#1677ff2e}.app-shell.dashboard-shell:not(.parent-app-shell) .stat-card:nth-child(2n) .stat-icon,.app-shell.dashboard-shell:not(.parent-app-shell) .summary-item:nth-child(2n) .summary-icon,.app-shell.dashboard-shell:not(.parent-app-shell) .accounts-avatar,.app-shell.dashboard-shell:not(.parent-app-shell) .account-settings-avatar,.app-shell.dashboard-shell:not(.parent-app-shell) .class-teacher-avatar{color:#9cc9ff;background:#1677ff2e}.app-shell.dashboard-shell:not(.parent-app-shell) .directory-avatar.orange,.app-shell.dashboard-shell:not(.parent-app-shell) .attendance-avatar.orange,.app-shell.dashboard-shell:not(.parent-app-shell) .student-stat.orange .student-stat-icon{color:#ff8a00;background:#ff8a0038}.app-shell.dashboard-shell:not(.parent-app-shell) .summary-item-attention,.app-shell.dashboard-shell:not(.parent-app-shell) .stat-card:nth-child(4),.app-shell.dashboard-shell:not(.parent-app-shell) .student-stat.orange,.app-shell.dashboard-shell:not(.parent-app-shell) .directory-stat.orange,.app-shell.dashboard-shell:not(.parent-app-shell) .attendance-summary-item.late{background:radial-gradient(circle at 100% 0,#ff8a003d,#0000 42%),linear-gradient(135deg,#ff8a0021,#1f2937db);border-color:#ff8a0057;box-shadow:0 12px 28px #ff8a001f}.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .summary-item-attention,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .stat-card:nth-child(4),.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .student-stat.orange,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .directory-stat.orange,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .attendance-summary-item.late{background:radial-gradient(circle at 100% 0,#ff8a0029,#0000 42%),linear-gradient(135deg,#ff8a0017,#fff);border-color:#ff8a0042}.app-shell.dashboard-shell:not(.parent-app-shell) .primary-button.orange-action,.app-shell.dashboard-shell:not(.parent-app-shell) .secondary-button,.app-shell.dashboard-shell:not(.parent-app-shell) .text-button:hover,.app-shell.dashboard-shell:not(.parent-app-shell) .filter-chip{color:#ff8a00;background:#ff8a002e;border-color:#ff8a0057}.app-shell.dashboard-shell:not(.parent-app-shell) .pagination-number.active,.app-shell.dashboard-shell:not(.parent-app-shell) .directory-pagination button.active,.app-shell.dashboard-shell:not(.parent-app-shell) .student-pagination .pagination-number.active{color:#8cbaff;background:#1677ff24;border-color:#1677ff4d}.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .primary-button.orange-action,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .secondary-button,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .text-button:hover,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .filter-chip{color:#ff8a00;background:#ff8a001f}.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .pagination-number.active,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .directory-pagination button.active,.app-shell.dashboard-shell.theme-light:not(.parent-app-shell) .student-pagination .pagination-number.active{color:#0f55b8;background:#1677ff1a}.app-shell.dashboard-shell:not(.parent-app-shell) .status-badge.orange,.app-shell.dashboard-shell:not(.parent-app-shell) .announcement-badge.priority-important,.app-shell.dashboard-shell:not(.parent-app-shell) .announcement-badge.priority-urgent,.app-shell.dashboard-shell:not(.parent-app-shell) .announcement-badge.action,.app-shell.dashboard-shell:not(.parent-app-shell) .attendance-status-badge.late,.app-shell.dashboard-shell:not(.parent-app-shell) .accounts-status.late,.app-shell.dashboard-shell:not(.parent-app-shell) .accounts-status.pending,.app-shell.dashboard-shell:not(.parent-app-shell) .teacher-announcement-priority.important,.app-shell.dashboard-shell:not(.parent-app-shell) .teacher-announcement-priority.urgent,.app-shell.dashboard-shell:not(.parent-app-shell) .student-badge.orange,.app-shell.dashboard-shell:not(.parent-app-shell) .teacher-status-badge.orange{color:#ff8a00;background:#ff8a0038;border-color:#ff8a005c}.filter-control{z-index:20;display:inline-flex;position:relative}.filter-trigger{background:linear-gradient(180deg, color-mix(in srgb, var(--card) 94%, #fff 6%), var(--card));border:1px solid color-mix(in srgb, var(--border) 88%, var(--text) 12%);color:var(--muted);cursor:pointer;white-space:nowrap;border-radius:999px;align-items:center;gap:7px;min-height:36px;padding:0 12px;font-size:12px;font-weight:800;transition:background-color .18s,border-color .18s,box-shadow .18s,color .18s,transform .18s;display:inline-flex;box-shadow:0 1px 2px #0208170d}.panel-heading-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:9px;display:flex}.filter-trigger svg{flex:none}.filter-trigger-chevron{opacity:.72;transition:transform .18s}.filter-control.open .filter-trigger-chevron{transform:rotate(180deg)}.filter-trigger:hover,.filter-trigger:focus-visible,.filter-trigger.has-active-filters{color:var(--text);border-color:#1677ff6b}.filter-trigger:focus-visible{outline:0;box-shadow:0 0 0 3px #1677ff26}.filter-trigger.has-active-filters{background:color-mix(in srgb, var(--blue) 12%, var(--card));color:var(--text);box-shadow:0 8px 20px #1677ff17}.filter-trigger:active{transform:translateY(1px)}.filter-trigger:disabled{cursor:not-allowed;opacity:.55;transform:none}.filter-panel{color:#111827;z-index:180;background:#fff;border:1px solid #0f172a1a;border-radius:18px;max-width:calc(100vw - 24px);padding:14px;animation:.16s cubic-bezier(.2,.8,.2,1) both filterPanelIn;position:fixed;box-shadow:0 18px 46px #0f172a29}.filter-panel.is-closing{animation:.14s both filterPanelOut}.filter-panel header,.filter-panel footer{justify-content:space-between;align-items:center;gap:10px;display:flex}.filter-panel header{margin-bottom:13px}.filter-panel header strong,.filter-panel header span{display:block}.filter-panel header strong{color:#111827;font-size:14px;line-height:1.2}.filter-panel header span{color:#64748b;margin-top:3px;font-size:11px}.filter-panel header button{color:#64748b;cursor:pointer;background:#fff;border:1px solid #0f172a1f;border-radius:999px;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex}.filter-panel header button:hover,.filter-panel header button:focus-visible{color:#111827;background:#f8fafc;border-color:#1677ff6b;outline:0}.filter-active-chips{flex-wrap:wrap;gap:6px;margin:-3px 0 12px;display:flex}.filter-active-chip{color:#1e293b;background:#1677ff14;border:1px solid #1677ff29;border-radius:999px;padding:5px 8px;font-size:11px;font-weight:700;line-height:1.2}.filter-fields{grid-template-columns:1fr;gap:11px;display:grid}.filter-fields .custom-dropdown,.filter-fields .custom-dropdown-trigger{width:100%}.filter-fields .custom-dropdown-trigger{min-height:40px}.filter-panel footer{border-top:1px solid #0f172a1a;margin-top:14px;padding-top:13px}.filter-clear-button,.filter-apply-button{cursor:pointer;border-radius:999px;align-items:center;gap:6px;min-height:36px;padding:0 13px;font-size:12px;font-weight:800;transition:background-color .18s,border-color .18s,color .18s,filter .18s,opacity .18s;display:inline-flex}.filter-clear-button{color:#475569;background:#fff;border:1px solid #0f172a1f}.filter-apply-button{background:var(--blue);border:1px solid var(--blue);color:#fff}.filter-clear-button:hover:not(:disabled),.filter-clear-button:focus-visible:not(:disabled){color:#111827;background:#f8fafc;border-color:#1677ff61}.filter-apply-button:hover:not(:disabled),.filter-apply-button:focus-visible:not(:disabled){filter:brightness(1.04)}.filter-clear-button:focus-visible,.filter-apply-button:focus-visible{outline:0;box-shadow:0 0 0 3px #1677ff24}.filter-clear-button:disabled,.filter-apply-button:disabled{cursor:not-allowed;opacity:.5}.theme-light .filter-trigger{background:#fff}.filter-panel .custom-dropdown{color:#111827}.filter-panel .custom-dropdown-label{color:#64748b}.filter-panel .custom-dropdown-trigger,.filter-panel .custom-dropdown.open .custom-dropdown-trigger{color:#111827!important;background:linear-gradient(#fff,#f8fafc)!important;border-color:#0f172a24!important;box-shadow:0 8px 18px #0f172a0f,inset 0 1px #fffffff2!important}.filter-panel .custom-dropdown-trigger:hover,.filter-panel .custom-dropdown-trigger:focus-visible{color:#111827!important;background:#fff!important;border-color:#1677ff57!important;box-shadow:0 0 0 3px #1677ff1a,0 8px 18px #0f172a12!important}.filter-panel .custom-dropdown-value,.filter-panel .custom-dropdown-trigger>span{color:#111827!important}.filter-panel .custom-dropdown-chevron,.filter-panel .custom-dropdown.open .custom-dropdown-chevron{color:#64748b!important}.app-shell.dashboard-shell:not(.parent-app-shell) .custom-dropdown-menu-portal.filter-dropdown-menu,.custom-dropdown-menu-portal.filter-dropdown-menu{color:#111827!important;background:#fff!important;border:1px solid #0f172a1f!important;box-shadow:0 18px 42px #0f172a29!important}.app-shell.dashboard-shell:not(.parent-app-shell) .custom-dropdown-menu-portal.filter-dropdown-menu .custom-dropdown-option,.custom-dropdown-menu-portal.filter-dropdown-menu .custom-dropdown-option{color:#111827!important;background:#fff!important}.app-shell.dashboard-shell:not(.parent-app-shell) .custom-dropdown-menu-portal.filter-dropdown-menu .custom-dropdown-option:hover,.app-shell.dashboard-shell:not(.parent-app-shell) .custom-dropdown-menu-portal.filter-dropdown-menu .custom-dropdown-option.active,.custom-dropdown-menu-portal.filter-dropdown-menu .custom-dropdown-option:hover,.custom-dropdown-menu-portal.filter-dropdown-menu .custom-dropdown-option.active{color:#0f172a!important;background:#f1f5f9!important}.app-shell.dashboard-shell:not(.parent-app-shell) .custom-dropdown-menu-portal.filter-dropdown-menu .custom-dropdown-option.selected,.custom-dropdown-menu-portal.filter-dropdown-menu .custom-dropdown-option.selected{color:#0f172a!important;background:#e8f1ff!important;border-color:#0000!important}.app-shell.dashboard-shell:not(.parent-app-shell) .custom-dropdown-menu-portal.filter-dropdown-menu .custom-dropdown-option.selected:hover,.app-shell.dashboard-shell:not(.parent-app-shell) .custom-dropdown-menu-portal.filter-dropdown-menu .custom-dropdown-option.selected.active,.custom-dropdown-menu-portal.filter-dropdown-menu .custom-dropdown-option.selected:hover,.custom-dropdown-menu-portal.filter-dropdown-menu .custom-dropdown-option.selected.active{color:#0f172a!important;background:#dbeafe!important}.custom-dropdown-menu-portal.filter-dropdown-menu .custom-dropdown-check,.custom-dropdown-menu-portal.filter-dropdown-menu .custom-dropdown-option svg{color:#1677ff!important}.custom-dropdown-menu-portal.filter-dropdown-menu .custom-dropdown-empty{color:#64748b!important;background:#fff!important}@keyframes filterPanelIn{0%{opacity:0;transform:translateY(-5px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes filterPanelOut{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-4px)scale(.985)}}@media (prefers-reduced-motion:reduce){.filter-panel,.filter-panel.is-closing,.filter-trigger,.filter-trigger-chevron{transition:none;animation:none}}@media (width<=700px){.filter-control{width:100%}.filter-trigger{justify-content:center;width:100%}.filter-panel{border-radius:20px 20px 0 0;width:auto;max-width:none;max-height:min(76vh,620px);padding:18px;animation:.18s both filterSheetIn;inset:auto 0 0;overflow-y:auto;box-shadow:0 -18px 55px #02081740}.filter-panel.is-closing{animation:.14s both filterSheetOut}.filter-panel footer{flex-direction:column-reverse;align-items:stretch}.filter-clear-button,.filter-apply-button{justify-content:center;width:100%}}@keyframes filterSheetIn{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes filterSheetOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(18px)}}.student-badge.official-class-label,.student-badge[class*=year-]{white-space:normal;max-width:100%;line-height:1.4}.official-class-guide{border:1px solid var(--border);border-radius:12px;margin-bottom:18px;padding:16px}.official-class-guide h3{color:inherit;margin:0 0 10px;font-size:14px}.official-class-guide ul{flex-wrap:wrap;gap:8px 18px;margin:0;padding:0;list-style:none;display:flex}.official-class-guide li,.official-class-guide p{font-size:12px;line-height:1.6}.official-class-guide p{margin:10px 0 0}.student-program-label{color:var(--muted);margin-top:4px;font-size:11px;line-height:1.5;display:block}.student-assignment-status{color:var(--muted);white-space:normal;margin-top:4px;font-size:10px;font-weight:400;line-height:1.4;display:block}.directory-person:has(.student-assignment-status){flex-wrap:wrap}.directory-person>.student-assignment-status{flex-basis:100%}.accounts-page,.parent-portal-page,.account-settings-page{color:var(--text)}.accounts-page-header{align-items:end}.accounts-summary-grid,.parent-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0 0 20px;display:grid}.accounts-summary-card,.parent-summary-card{background:var(--card);border:1px solid var(--border);color:var(--text);text-align:left;border-radius:17px;flex-direction:column;align-items:flex-start;min-height:142px;padding:19px;display:flex}.accounts-summary-card>span:nth-child(2),.parent-summary-card>span:nth-child(2){color:var(--muted);margin-top:13px;font-size:12px}.accounts-summary-card strong,.parent-summary-card strong{letter-spacing:-.04em;margin-top:5px;font-size:25px}.parent-summary-card{cursor:pointer;transition:all .2s}.parent-summary-card:hover{border-color:#1677ff73;transform:translateY(-2px)}.parent-summary-card small{color:var(--muted);margin-top:5px;font-size:11px}.accounts-summary-icon,.parent-summary-icon{color:#5b9cff;background:#1677ff1f;border-radius:10px;flex:none;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.accounts-summary-icon.orange,.parent-summary-icon.orange{color:var(--orange);background:#ff8a0021}.accounts-panel,.parent-content-panel{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:18px;padding:20px}.accounts-toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:18px;display:flex}.accounts-search,.parent-search{background:var(--canvas);border:1px solid var(--border);color:var(--muted);border-radius:11px;align-items:center;gap:9px;min-height:43px;padding:0 12px;display:flex}.accounts-search{flex:270px}.accounts-search input,.parent-search input{color:var(--text);background:0 0;border:0;outline:0;width:100%;min-width:0}.accounts-toolbar select,.accounts-form-grid select,.accounts-form-grid input,.accounts-password-modal input,.account-settings-grid input,.parent-panel-toolbar select{background:var(--canvas);border:1px solid var(--border);color:var(--text);border-radius:10px;width:100%;min-height:42px;padding:0 11px}.accounts-toolbar select{width:auto;min-width:145px}.accounts-table-wrap,.parent-table-wrap{overflow-x:auto}.accounts-table,.parent-table{border-collapse:collapse;text-align:left;width:100%;min-width:780px}.accounts-table th,.parent-table th{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;padding:12px 10px;font-size:10px;font-weight:600}.accounts-table td,.parent-table td{border-top:1px solid var(--border);color:var(--muted);vertical-align:middle;padding:13px 10px;font-size:12px}.accounts-person{align-items:center;gap:10px;min-width:230px;display:flex}.accounts-avatar,.parent-child-avatar{color:#5b9cff;background:#1677ff21;border-radius:50%;flex:none;justify-content:center;align-items:center;width:38px;height:38px;font-size:11px;font-weight:700;display:inline-flex}.accounts-person strong,.accounts-person small,.parent-table td strong,.parent-table td small{display:block}.accounts-person strong,.parent-table td strong{color:var(--text);font-size:12px;font-weight:600}.accounts-person small,.parent-table td small{color:var(--muted);margin-top:4px;font-size:10px}.accounts-role,.accounts-status{color:#5b9cff;white-space:nowrap;background:#1677ff1a;border-radius:99px;padding:6px 9px;font-size:10px;font-weight:600;display:inline-flex}.accounts-role.role-parent{color:#a78bfa;background:#8b5cf61f}.accounts-status.active,.accounts-status.present{color:#22a56a;background:#22c55e1f}.accounts-status.inactive,.accounts-status.absent{color:#e16a6a;background:#ef44441f}.accounts-status.late{color:#e89027;background:#ff8a0021}.accounts-status.muted{color:var(--muted);background:#94a3b81f}.accounts-assignment{max-width:210px}.accounts-row-actions{white-space:nowrap;align-items:center;gap:4px;display:flex}.accounts-row-actions button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;min-width:32px;height:32px;display:inline-flex}.accounts-row-actions button:hover{color:var(--blue);background:#1677ff17}.accounts-row-actions .accounts-toggle-status{padding:0 8px;font-size:10px}.accounts-empty{text-align:center;padding:28px!important}.accounts-modal-backdrop,.parent-modal-backdrop{z-index:100;background:#0208179e;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.accounts-modal,.parent-announcement-detail{background:var(--card);border:1px solid var(--border);color:var(--text);border-radius:19px;width:100%;max-width:620px;max-height:min(90vh,840px);padding:24px;overflow-y:auto;box-shadow:0 24px 80px #0208174d}.accounts-modal>header,.parent-announcement-detail>header{justify-content:space-between;align-items:flex-start;margin-bottom:20px;display:flex}.accounts-modal>header h3,.parent-announcement-detail h3{letter-spacing:-.03em;margin:0;font-size:21px}.accounts-modal>header p,.parent-announcement-detail>p{color:var(--muted);font-size:13px;line-height:1.65}.accounts-modal .eyebrow{margin-bottom:7px}.accounts-form-grid,.account-settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.accounts-form-grid label,.accounts-password-modal>label,.account-settings-grid label,.parent-panel-toolbar label{color:var(--muted);flex-direction:column;gap:7px;font-size:11px;font-weight:600;display:flex}.accounts-form-grid input,.accounts-form-grid select,.accounts-password-modal input,.account-settings-grid input{color:var(--text);font-size:12px}.accounts-assignment-picker{border:1px solid var(--border);border-radius:12px;flex-wrap:wrap;gap:9px 14px;margin:17px 0 0;padding:12px;display:flex}.accounts-assignment-picker legend{color:var(--muted);padding:0 5px;font-size:11px;font-weight:600}.accounts-assignment-picker label{color:var(--text);align-items:center;gap:6px;font-size:11px;display:flex}.accounts-assignment-picker label small{color:var(--muted)}.accounts-assignment-picker input{accent-color:var(--blue)}.accounts-modal>footer{border-top:1px solid var(--border);justify-content:flex-end;gap:9px;margin-top:20px;padding-top:16px;display:flex}.accounts-modal>footer .secondary-button{margin:0}.accounts-form-error,.account-settings-message.error{color:#e16a6a;font-size:12px}.account-settings-card{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:18px;padding:25px}.account-settings-heading{align-items:center;gap:12px;display:flex}.account-settings-heading h3{color:var(--text);margin:0;font-size:16px}.account-settings-heading p{color:var(--muted);margin:5px 0 0;font-size:11px}.account-settings-icon{color:#5b9cff;background:#1677ff1f;border-radius:10px;justify-content:center;align-items:center;width:38px;height:38px;display:inline-flex}.account-settings-profile{align-items:center;gap:14px;margin:22px 0;display:flex}.account-settings-avatar{color:#5b9cff;background:#1677ff26;border-radius:50%;justify-content:center;align-items:center;width:72px;height:72px;font-size:18px;font-weight:700;display:flex;overflow:hidden}.account-settings-avatar img{object-fit:cover;width:100%;height:100%}.account-image-button{cursor:pointer;margin:0;position:relative}.account-image-button input{cursor:pointer;opacity:0;width:100%;position:absolute;inset:0}.account-settings-wide{grid-column:1/-1}.account-settings-grid input:disabled{opacity:.75}.security-heading{border-top:1px solid var(--border);margin-top:25px;padding-top:23px}.password-grid{margin-top:16px}.account-settings-message{color:#22a56a;font-size:12px}.account-settings-footer{border-top:1px solid var(--border);justify-content:flex-end;margin-top:22px;padding-top:18px;display:flex}.parent-child-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;margin-bottom:20px;display:grid}.parent-child-card{background:var(--card);border:1px solid var(--border);border-radius:17px;align-items:center;gap:14px;padding:18px;display:flex}.parent-child-card .eyebrow{margin-bottom:5px}.parent-child-card h3{color:var(--text);margin:0;font-size:17px}.parent-child-card p{color:var(--muted);margin:6px 0 9px;font-size:11px}.parent-child-card .parent-child-avatar{width:48px;height:48px}.parent-card-link{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:9px;justify-content:center;align-items:center;width:34px;height:34px;margin-left:auto;display:flex}.parent-card-link:hover{color:var(--blue);background:#1677ff17}.parent-detail-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:15px;display:grid}.parent-detail-card{background:var(--card);border:1px solid var(--border);border-radius:17px;padding:22px}.parent-detail-card>.parent-child-avatar{width:52px;height:52px;margin-bottom:18px}.parent-detail-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.parent-detail-fields>div{flex-direction:column;gap:6px;min-width:0;display:flex}.parent-detail-fields small{color:var(--muted);font-size:10px}.parent-detail-fields strong{color:var(--text);font-size:12px;font-weight:600}.parent-panel-toolbar{gap:12px;margin-bottom:17px;display:flex}.parent-panel-toolbar label{min-width:210px;max-width:270px}.parent-attendance-summary{grid-template-columns:repeat(3,1fr);gap:10px;margin:0 0 18px;display:grid}.parent-attendance-summary>div{background:var(--canvas);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:8px;padding:13px;display:flex}.parent-attendance-summary span{color:var(--muted);font-size:11px}.parent-attendance-summary strong{color:var(--text);font-size:20px}.parent-readonly-note,.parent-inline-empty{color:var(--muted);margin:17px 0 0;font-size:11px}.parent-search{max-width:420px;margin-bottom:19px}.parent-section-heading{justify-content:space-between;align-items:center;margin:19px 0 8px;display:flex}.parent-section-heading h3{color:var(--text);margin:0;font-size:14px}.parent-section-heading>span{color:var(--muted);font-size:11px}.parent-section-secondary{border-top:1px solid var(--border);margin-top:23px;padding-top:20px}.parent-update-list,.parent-announcement-list{flex-direction:column;display:flex}.parent-update-card{border-bottom:1px solid var(--border);align-items:flex-start;gap:12px;padding:13px 0;display:flex}.parent-update-card>div{min-width:0}.parent-update-card strong{color:var(--text);font-size:12px}.parent-update-card p{color:var(--muted);margin:6px 0;font-size:12px;line-height:1.55}.parent-update-card small{color:var(--muted);align-items:center;gap:5px;font-size:10px;display:flex}.parent-announcement-card{border:0;border-bottom:1px solid var(--border);color:var(--muted);cursor:pointer;text-align:left;background:0 0;align-items:center;gap:13px;width:100%;padding:15px 0;display:flex}.parent-announcement-card>span:nth-child(2){flex:1;min-width:0}.parent-announcement-card small,.parent-announcement-card strong{display:block}.parent-announcement-card small{color:var(--muted);margin-bottom:6px;font-size:10px}.parent-announcement-card strong{color:var(--text);font-size:13px}.parent-announcement-card p{color:var(--muted);margin:6px 0 0;font-size:11px;line-height:1.5}.parent-announcement-card:hover strong{color:var(--blue)}.parent-announcement-detail{max-width:560px}.parent-announcement-detail>header{margin-bottom:12px}.parent-announcement-detail h3{margin-top:6px}.parent-announcement-detail>p{line-height:1.7}.parent-attachment{border-top:1px solid var(--border);padding-top:12px}.parent-empty{background:var(--card);border:1px dashed var(--border);color:var(--muted);text-align:center;border-radius:16px;flex-direction:column;grid-column:1/-1;justify-content:center;align-items:center;min-height:150px;padding:22px;display:flex}.parent-empty h3{color:var(--text);margin:10px 0 0;font-size:15px}.parent-empty p{margin:7px 0 0;font-size:12px}.login-credential-error{color:#e16a6a;margin:0 0 12px;font-size:12px}.login-demo-hint{color:var(--muted);text-align:center;margin:9px 0 0;font-size:10px;line-height:1.65}.login-demo-hint strong{color:var(--text);font-weight:600}@media (width<=900px){.accounts-table{min-width:760px}}@media (width<=700px){.accounts-page-header{align-items:flex-start}.accounts-page-header>button{width:100%}.accounts-summary-grid,.parent-summary-grid{grid-template-columns:1fr;gap:9px}.accounts-summary-card,.parent-summary-card{min-height:0;padding:15px}.accounts-toolbar{align-items:stretch}.accounts-toolbar select{flex:1;min-width:0}.accounts-panel,.parent-content-panel,.account-settings-card{border-radius:15px;padding:16px}.accounts-form-grid,.account-settings-grid{grid-template-columns:1fr}.account-settings-wide{grid-column:auto}.accounts-modal{padding:18px}.parent-panel-toolbar{flex-direction:column}.parent-panel-toolbar label{width:100%;max-width:none}.parent-detail-grid{grid-template-columns:1fr}}@media (width<=420px){.parent-child-grid{grid-template-columns:1fr}.parent-child-card{gap:10px;padding:14px}.parent-detail-fields{gap:14px 10px}.accounts-modal>footer{flex-direction:column-reverse}.accounts-modal>footer button{justify-content:center;width:100%}}.parent-app{--parent-coral:#ff7a59;--parent-mint:#20b486;--parent-sun:#f5a524;--parent-berry:#9b5de5}.parent-sidebar{background:linear-gradient(180deg, #ff7a5929, transparent 28%), var(--navy);padding-top:22px}.parent-sidebar .brand-mark{background:linear-gradient(135deg, var(--parent-coral), var(--parent-sun))}.parent-sidebar .nav-section-label{color:#ffffff7a}.parent-sidebar .nav-item{border-radius:16px;align-items:center;gap:12px;min-height:50px}.parent-sidebar .nav-item>svg:first-child{flex:0 0 22px;width:22px;height:22px}.parent-sidebar .nav-item.active{box-shadow:none;color:#fff;background:#ff8a00}.parent-sidebar .active-chevron{color:#ffd1c5}.parent-topbar{background:#111827d1}.theme-light .parent-topbar{background:#ffffffdb}.parent-app-header{justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:24px;display:flex}.parent-back-button{background:var(--card);border:1px solid var(--border);color:var(--text);cursor:pointer;border-radius:999px;align-items:center;gap:7px;min-height:36px;padding:0 13px;font-size:12px;font-weight:800;transition:border-color .18s,color .18s,opacity .18s,transform .18s;display:inline-flex}.parent-back-button:not(:disabled):hover{color:#1677ff;border-color:#1677ff7a;transform:translateY(-1px)}.parent-back-button:disabled{cursor:not-allowed;opacity:.48}.parent-page-title-area>.parent-back-button,.account-settings-page .parent-back-button{margin-bottom:13px}.parent-modal-title-stack{flex-direction:column;gap:11px;min-width:0;display:flex}.parent-modal-back-button{align-self:flex-start}.parent-app-header h2,.parent-home-hero h2,.parent-feature-child h3,.parent-chat-panel h3,.parent-payment-card h3,.parent-profile-card h3{color:var(--text);letter-spacing:0}.parent-app-header h2{margin:0;font-size:32px}.parent-app-header p{color:var(--muted);max-width:620px;margin:8px 0 0;font-size:13px;line-height:1.6}.parent-home-hero{color:#fff;background:radial-gradient(circle at 88% 12%,#ffffff52,#0000 24%),linear-gradient(135deg,#ff7a59eb,#f5a524db 46%,#20b486d1);border:1px solid #ffffff47;border-radius:26px;grid-template-columns:minmax(0,1fr) minmax(260px,360px);gap:22px;margin-bottom:20px;padding:28px;display:grid;position:relative;overflow:hidden;box-shadow:0 22px 50px #ff7a5933}.parent-home-hero h2{margin:0;font-size:clamp(31px,5vw,48px);line-height:1.04}.parent-home-hero p{max-width:590px;margin:12px 0 0;font-size:14px;line-height:1.7}.parent-hero-actions{flex-wrap:wrap;gap:10px;margin-top:22px;display:flex}.parent-hero-actions .primary-button,.parent-hero-actions .secondary-button{color:#163044;background:#fffffff0;margin:0}.parent-hero-actions .secondary-button{color:#fff;background:#fff3;border:1px solid #ffffff59}.parent-feature-child{background:#ffffff38;border:1px solid #ffffff4d;border-radius:20px;align-self:end;align-items:center;gap:13px;padding:16px;display:flex;position:relative}.parent-feature-child span,.parent-feature-child p{color:#ffffffd1;margin:0;font-size:11px;display:block}.parent-feature-child h3{color:#fff;margin:4px 0;font-size:18px}.parent-feature-child button{color:#fff;cursor:pointer;background:#ffffff3d;border:0;border-radius:12px;justify-content:center;align-items:center;width:38px;height:38px;margin-left:auto;display:flex}.parent-feature-child em{margin-top:8px}.parent-feature-avatar,.parent-profile-avatar{box-shadow:0 12px 24px #0208171f;width:68px!important;height:68px!important}.parent-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.parent-summary-card{position:relative;overflow:hidden}.parent-summary-card:active,.parent-today-list button:active,.parent-quick-grid button:active,.parent-bottom-nav button:active{transform:scale(.98)}.parent-summary-card.warm{border-color:#ff7a5938}.parent-summary-card.mint{border-color:#20b48638}.parent-summary-card.berry{border-color:#9b5de538}.parent-summary-card.sun{border-color:#f5a5243d}.parent-home-grid{grid-template-columns:minmax(0,1.35fr) minmax(290px,.65fr);gap:16px;display:grid}.parent-today-list{flex-direction:column;display:flex}.parent-today-list button,.parent-conversation-list button,.parent-notification-list button{border:0;border-bottom:1px solid var(--border);color:var(--muted);cursor:pointer;text-align:left;background:0 0;align-items:center;gap:12px;width:100%;padding:14px 0;display:flex}.parent-today-list svg{color:var(--parent-coral);flex:none}.parent-today-list span,.parent-conversation-list span,.parent-notification-list span{flex:1;min-width:0}.parent-today-list strong,.parent-conversation-list strong,.parent-notification-list strong{color:var(--text);font-size:13px;display:block}.parent-today-list small,.parent-conversation-list small,.parent-notification-list small{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:4px;font-size:11px;line-height:1.45;display:-webkit-box;overflow:hidden}.parent-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:6px;display:grid}.parent-quick-grid button{background:var(--canvas);border:1px solid var(--border);color:var(--text);cursor:pointer;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:9px;min-height:92px;display:flex}.parent-quick-grid svg{color:var(--parent-berry)}.parent-child-switcher{background:var(--card);border:1px solid var(--border);border-radius:999px;gap:4px;max-width:100%;padding:4px;display:flex;overflow-x:auto}.parent-child-switcher button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:999px;flex:none;min-height:34px;padding:0 13px;font-size:12px;font-weight:700}.parent-profile-card{border-radius:22px}.parent-profile-top{align-items:center;gap:15px;margin-bottom:20px;display:flex}.parent-profile-top h3{margin:0;font-size:22px}.parent-profile-top p{color:var(--muted);margin:6px 0 0;font-size:12px}.accounts-status.medical-leave,.accounts-status.partially-paid{color:var(--parent-berry);background:#9b5de521}.accounts-status.pending{color:#d88912;background:#f5a52424}.accounts-status.overdue{color:#e16a6a;background:#ef444421}.accounts-status.paid{color:var(--parent-mint);background:#20b48621}.parent-attendance-timeline{flex-direction:column;display:flex}.parent-attendance-timeline article{border-bottom:1px solid var(--border);grid-template-columns:auto minmax(0,1fr) auto minmax(92px,auto);align-items:center;gap:12px;padding:14px 0;display:grid}.parent-status-dot{border-radius:999px;width:12px;height:12px}.parent-status-dot.present{background:var(--parent-mint)}.parent-status-dot.late{background:var(--parent-sun)}.parent-status-dot.absent{background:#e16a6a}.parent-status-dot.medical-leave{background:var(--parent-berry)}.parent-attendance-timeline strong{color:var(--text);font-size:13px;display:block}.parent-attendance-timeline small,.parent-attendance-timeline p{color:var(--muted);margin:4px 0 0;font-size:11px}.parent-timeline-grid,.parent-album-grid,.parent-payment-list,.parent-activity-grid,.parent-more-grid{gap:13px;display:grid}.parent-activity-hero{border:1px solid var(--border);background:linear-gradient(135deg,#20b48629,#f5a52424);border-radius:24px;justify-content:space-between;align-items:center;gap:18px;margin-bottom:16px;padding:22px;display:flex}.parent-activity-hero h3{color:var(--text);letter-spacing:0;margin:0;font-size:32px}.parent-activity-hero p{color:var(--muted);margin:7px 0 0;font-size:12px}.parent-week-strip{gap:9px;display:flex}.parent-week-strip button{background:var(--card);border:1px solid var(--border);color:var(--muted);cursor:pointer;border-radius:15px;flex-direction:column;justify-content:center;align-items:center;gap:7px;min-width:54px;min-height:68px;display:flex}.parent-week-strip span{border-radius:50%;width:15px;height:15px}.parent-week-strip .present span{background:var(--parent-mint)}.parent-week-strip .late span{background:var(--parent-sun)}.parent-week-strip .absent span{background:#e16a6a}.parent-week-strip .medical-leave span{background:var(--parent-berry)}.parent-week-strip p{color:var(--muted);margin:0;font-size:12px}.parent-activity-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:16px}.parent-activity-card{background:var(--card);border:1px solid var(--border);color:var(--text);cursor:pointer;text-align:left;border-radius:20px;flex-direction:column;align-items:flex-start;min-height:166px;padding:18px;transition:all .2s;display:flex;position:relative}.parent-activity-card:hover{border-color:#ff7a5959;transform:translateY(-2px)}.parent-activity-card strong{color:var(--text);margin-top:13px;font-size:15px}.parent-activity-card small{color:var(--muted);margin-top:7px;font-size:11px;line-height:1.55}.parent-activity-card>svg{color:var(--muted);position:absolute;bottom:16px;right:16px}.parent-activity-feed{flex-direction:column;gap:12px;display:flex}.parent-activity-feed article{border-bottom:1px solid var(--border);grid-template-columns:90px minmax(0,1fr);align-items:center;gap:12px;padding:0 0 12px;display:grid}.parent-activity-feed .parent-media-preview{border-radius:14px;min-height:74px}.parent-activity-feed strong,.parent-more-grid strong,.parent-more-profile h3{color:var(--text);display:block}.parent-activity-feed small,.parent-more-grid small,.parent-more-profile p{color:var(--muted);margin-top:5px;font-size:11px;line-height:1.45;display:block}.parent-timeline-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.parent-timeline-card{background:var(--canvas);border:1px solid var(--border);border-radius:17px;overflow:hidden}.parent-media-preview{color:var(--parent-berry);background:linear-gradient(135deg,#20b48629,#9b5de524);flex-direction:column;justify-content:center;align-items:center;gap:5px;min-height:118px;display:flex}.parent-media-preview span{color:var(--muted);text-transform:uppercase;font-size:10px}.parent-timeline-card>div:last-child{padding:14px}.parent-timeline-card strong,.parent-album-card strong,.parent-gallery-grid strong{color:var(--text);font-size:13px;line-height:1.45;display:block}.parent-timeline-card p,.parent-timeline-card small,.parent-album-card small,.parent-gallery-grid p{color:var(--muted);margin:6px 0 0;font-size:11px;line-height:1.45}.parent-album-grid{grid-template-columns:repeat(auto-fill,minmax(185px,1fr))}.parent-album-card{background:var(--canvas);border:1px solid var(--border);color:var(--text);cursor:pointer;text-align:left;border-radius:17px;min-height:150px;padding:16px;transition:all .2s}.parent-album-card:hover{transform:translateY(-2px)}.parent-album-card>span{border-radius:15px;justify-content:center;align-items:center;width:58px;height:58px;margin-bottom:14px;display:flex}.parent-album-card.mint>span{color:var(--parent-mint);background:#20b48624}.parent-album-card.sun>span{color:var(--parent-sun);background:#f5a52426}.parent-album-card.berry>span{color:var(--parent-berry);background:#9b5de524}.parent-gallery-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;display:grid}.parent-gallery-grid article{background:var(--canvas);border:1px solid var(--border);border-radius:14px;padding:12px}.parent-gallery-grid article>div{color:var(--parent-coral);background:#ff7a591c;border-radius:12px;justify-content:center;align-items:center;height:88px;margin-bottom:10px;display:flex}.parent-announcement-card em,.parent-conversation-list em{color:var(--parent-coral);background:#ff7a5921;border-radius:999px;flex:none;padding:6px 9px;font-size:10px;font-style:normal;font-weight:800}.parent-announcement-list{gap:12px}.parent-announcement-card{background:var(--canvas);border:1px solid var(--border);border-radius:20px;padding:17px}.parent-announcement-card.important{background:linear-gradient(135deg,#ff7a5921,#9b5de51a);border-color:#ff7a593d}.parent-announcement-card p{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.parent-attachment{align-items:center;gap:7px;display:flex}.parent-chat-shell{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:22px;grid-template-columns:minmax(245px,.82fr) minmax(0,1.18fr);min-height:620px;display:grid;overflow:hidden}.parent-conversation-list{border-right:1px solid var(--border);padding:12px;overflow-y:auto}.parent-conversation-list button{border:1px solid #0000;border-radius:15px;margin-bottom:8px;padding:12px}.parent-conversation-list button.active{background:#9b5de51a;border-color:#9b5de533}.parent-chat-panel{flex-direction:column;min-width:0;display:flex}.parent-chat-panel>header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:18px 20px;display:flex}.parent-chat-panel h3{margin:0;font-size:18px}.parent-chat-panel header small{color:var(--muted);font-size:12px}.parent-message-thread{flex-direction:column;flex:1;gap:10px;padding:18px;display:flex;overflow-y:auto}.parent-message-thread article{background:var(--canvas);border:1px solid var(--border);border-radius:16px;max-width:min(78%,480px);padding:11px 13px}.parent-message-thread article.from-parent{background:#ff7a5924;border-color:#ff7a592e;align-self:flex-end}.parent-message-thread p{color:var(--text);margin:0;font-size:13px;line-height:1.55}.parent-message-thread small{color:var(--muted);margin-top:6px;font-size:10px;display:block}.parent-message-form{border-top:1px solid var(--border);gap:9px;padding:14px;display:flex}.parent-message-form input{background:var(--canvas);border:1px solid var(--border);color:var(--text);border-radius:14px;outline:0;flex:1;min-width:0;min-height:44px;padding:0 13px}.parent-message-form button,.parent-document-list button{background:var(--parent-coral);color:#fff;cursor:pointer;border:0;border-radius:13px;justify-content:center;align-items:center;gap:7px;min-height:44px;padding:0 14px;font-weight:700;display:flex}.parent-notification-list{gap:12px;display:grid}.parent-notification-list button.unread{background:#ff7a5914;border-radius:14px;padding-left:10px;padding-right:10px}.parent-notification-list button{background:var(--canvas);border:1px solid var(--border);border-radius:20px;padding:15px}.parent-notification-list button.message .parent-summary-icon{color:var(--parent-berry);background:#9b5de521}.parent-notification-list button.payment .parent-summary-icon{color:var(--parent-sun);background:#f5a52426}.parent-notification-list button.daily-care .parent-summary-icon{color:var(--parent-mint);background:#20b48621}.parent-notification-list button.timeline .parent-summary-icon{color:#5b9cff;background:#1677ff21}.parent-notification-list time{color:var(--muted);flex:none;font-size:11px}.parent-payment-list{margin-top:18px}.parent-wallet-card{color:#fff;background:radial-gradient(circle at 85% 20%,#ffffff47,#0000 24%),linear-gradient(135deg,#f5a524eb,#ff7a59e6);border-radius:30px;min-height:230px;margin-bottom:18px;padding:24px;box-shadow:0 22px 50px #f5a5242e}.parent-wallet-card .parent-summary-icon{color:#fff;background:#ffffff38}.parent-wallet-card small{opacity:.82;margin-top:18px;font-size:12px;font-weight:800;display:block}.parent-wallet-card strong{color:#fff;letter-spacing:0;margin:8px 0;font-size:clamp(38px,6vw,56px);line-height:1;display:block}.parent-wallet-card p{color:#ffffffdb;max-width:460px;margin:0;font-size:13px;line-height:1.55}.parent-wallet-card>div{flex-wrap:wrap;gap:9px;margin-top:18px;display:flex}.parent-wallet-card>div span{background:#ffffff2e;border:1px solid #ffffff38;border-radius:999px;padding:8px 11px;font-size:11px;font-weight:800}.parent-payment-card{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:20px;padding:20px}.parent-payment-card h3{margin:11px 0 6px;font-size:18px}.parent-payment-card p{color:var(--muted);margin:0;font-size:12px}.parent-payment-card dl{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0 0;display:grid}.parent-payment-card dt,.parent-payment-card dd{margin:0}.parent-payment-card dt{color:var(--muted);text-transform:uppercase;font-size:10px}.parent-payment-card dd{color:var(--text);margin-top:5px;font-size:13px;font-weight:700}.parent-document-list{gap:12px;display:grid}.parent-more-profile{border:1px solid var(--border);background:linear-gradient(135deg,#ff7a5921,#9b5de51f);border-radius:22px;align-items:center;gap:14px;margin-bottom:16px;padding:20px;display:flex}.parent-more-profile .avatar{background:linear-gradient(135deg, var(--parent-coral), var(--parent-sun));color:#fff;width:58px;height:58px}.parent-more-profile h3{margin:0;font-size:19px}.parent-more-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}.parent-more-grid button{background:var(--card);border:1px solid var(--border);color:var(--text);cursor:pointer;text-align:left;border-radius:18px;align-items:center;gap:12px;min-height:88px;padding:16px;transition:all .2s;display:flex}.parent-more-grid button:hover{border-color:#ff7a5959;transform:translateY(-2px)}.parent-more-grid button>span:nth-child(2){flex:1;min-width:0}.parent-document-list article{background:var(--canvas);border:1px solid var(--border);border-radius:18px;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:14px;display:grid}.parent-document-list strong{color:var(--text);font-size:13px;display:block}.parent-document-list small,.parent-document-list em{color:var(--muted);font-size:11px;font-style:normal}.parent-bottom-nav{display:none}.theme-light .parent-home-hero{box-shadow:0 20px 45px #ff7a592e}.theme-light .parent-quick-grid button,.theme-light .parent-timeline-card,.theme-light .parent-album-card,.theme-light .parent-gallery-grid article,.theme-light .parent-message-thread article,.theme-light .parent-message-form input{background:#fff}@media (width<=1000px){.parent-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.parent-home-grid,.parent-home-hero,.parent-chat-shell{grid-template-columns:1fr}.parent-activity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.parent-conversation-list{border-bottom:1px solid var(--border);border-right:0;max-height:260px}}@media (width<=700px){.parent-app{padding-bottom:72px}.parent-app-header{flex-direction:column;align-items:flex-start}.parent-app-header h2{font-size:28px}.parent-home-hero{border-radius:22px;padding:21px}.parent-topbar .menu-button{display:none!important}.parent-feature-child{align-self:stretch}.parent-summary-grid,.parent-activity-grid,.parent-payment-card dl,.parent-document-list article,.parent-attendance-timeline article{grid-template-columns:1fr}.parent-activity-hero{flex-direction:column;align-items:flex-start}.parent-week-strip{max-width:100%;padding-bottom:2px;overflow-x:auto}.parent-activity-feed article{grid-template-columns:74px minmax(0,1fr)}.parent-document-list button{width:100%}.parent-chat-shell{min-height:0}.parent-message-thread{min-height:360px}.parent-message-thread article{max-width:92%}.parent-bottom-nav{background:color-mix(in srgb, var(--card) 94%, transparent);border:1px solid var(--border);z-index:30;border-radius:22px;grid-template-columns:repeat(5,1fr);align-items:center;gap:3px;padding:6px;display:grid;position:fixed;bottom:12px;left:10px;right:10px;box-shadow:0 18px 40px #02081738}.parent-bottom-nav button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:16px;flex-direction:column;align-items:center;gap:3px;min-width:0;min-height:52px;font-size:10px;font-weight:700;display:flex}.parent-bottom-nav button.active{color:var(--parent-coral);background:#ff7a5921}}@media (width<=420px){.parent-hero-actions{flex-direction:column}.parent-hero-actions button{justify-content:center;width:100%}.parent-feature-child{align-items:flex-start}.parent-feature-avatar,.parent-profile-avatar{width:56px!important;height:56px!important}.parent-profile-top{align-items:flex-start}}.parent-home-feed{max-width:980px;margin:0 auto}.parent-story-hero{grid-template-columns:minmax(0,.95fr) minmax(280px,.65fr);min-height:360px}.parent-story-hero .parent-child-switcher{background:#ffffff2e;border-color:#ffffff47;border-radius:22px;width:fit-content;margin-top:22px;padding:8px}.parent-story-hero .parent-child-switcher button{color:#ffffffd1;gap:7px;min-height:46px;padding:4px 11px 4px 5px}.parent-story-hero .parent-child-switcher button.active{color:#183247;background:#ffffffeb}.parent-switcher-avatar{width:32px!important;height:32px!important}.parent-child-portrait-card{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:280px}.parent-child-portrait-card .parent-feature-avatar{width:112px!important;height:112px!important}.parent-child-portrait-card h3{margin-top:12px;font-size:28px}.parent-child-portrait-card button{margin:0;position:absolute;bottom:16px;right:16px}.parent-little-moments{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:22px 0;display:grid}.moment-tile{color:#173144;cursor:pointer;text-align:left;border:0;border-radius:24px;flex-direction:column;min-height:150px;padding:18px;transition:transform .2s,box-shadow .2s;display:flex;position:relative;overflow:hidden}.moment-tile:hover{transform:translateY(-3px);box-shadow:0 16px 34px #0208171f}.moment-tile span{background:#ffffffbd;border-radius:17px;justify-content:center;align-items:center;width:44px;height:44px;margin-bottom:auto;display:flex}.moment-tile small,.moment-tile em{opacity:.72;font-size:12px;font-style:normal}.moment-tile strong{margin:14px 0 5px;font-size:clamp(19px,3vw,27px);line-height:1.05}.moment-tile.attendance{background:linear-gradient(145deg,#d7f8e7,#aaf0d1)}.moment-tile.care{background:linear-gradient(145deg,#fff1c7,#ffd986)}.moment-tile.messages{background:linear-gradient(145deg,#e9ddff,#cdb7ff)}.moment-tile.fees{background:linear-gradient(145deg,#ffe1d6,#ffc2ad)}.parent-app-section-heading{margin-bottom:14px}.parent-app-section-heading span{color:var(--parent-coral);letter-spacing:.12em;text-transform:uppercase;font-size:11px;font-weight:800;display:block}.parent-app-section-heading h3{color:var(--text);letter-spacing:0;margin:4px 0 0;font-size:clamp(20px,3vw,28px)}.parent-feed-section{margin-top:24px}.parent-large-story-card{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow);color:var(--text);cursor:pointer;text-align:left;border-radius:28px;grid-template-columns:minmax(220px,.82fr) minmax(0,1fr);width:100%;padding:0;display:grid;overflow:hidden}.parent-story-media{color:#fff;background:radial-gradient(circle at 75% 18%,#ffffff70,#0000 22%),linear-gradient(135deg,#9b5de5b3,#20b486bd);flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:260px;display:flex}.parent-story-media span{color:#fffc;letter-spacing:.12em;text-transform:uppercase;font-size:11px;font-weight:800}.parent-large-story-card>div:last-child{align-self:center;padding:28px}.parent-large-story-card strong{color:var(--text);letter-spacing:0;font-size:clamp(20px,3vw,30px);line-height:1.18;display:block}.parent-large-story-card p,.parent-news-card p,.parent-message-preview-card p{color:var(--muted);margin:11px 0 0;font-size:13px;line-height:1.65}.parent-feed-split{grid-template-columns:minmax(0,.95fr) minmax(260px,.65fr);gap:16px;margin-top:22px;display:grid}.parent-news-card,.parent-message-preview-card{background:var(--card);border:1px solid var(--border);color:var(--text);cursor:pointer;text-align:left;border-radius:24px;min-height:190px;padding:20px;transition:transform .2s,border-color .2s}.parent-news-card:hover,.parent-message-preview-card:hover{border-color:#ff7a5959;transform:translateY(-2px)}.parent-news-card small,.parent-message-preview-card small{color:var(--muted);margin:14px 0 6px;font-size:11px;display:block}.parent-news-card strong,.parent-message-preview-card strong{color:var(--text);font-size:18px;line-height:1.3;display:block}.parent-floating-actions{gap:10px;margin-top:18px;display:flex;overflow-x:auto}.parent-floating-actions button{background:var(--card);border:1px solid var(--border);color:var(--text);cursor:pointer;border-radius:999px;flex:none;align-items:center;gap:8px;min-height:44px;padding:0 14px;font-size:12px;font-weight:800;display:inline-flex;position:relative}.parent-floating-actions em{background:var(--parent-coral);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:10px;font-style:normal;display:inline-flex}.parent-profile-stack{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:18px;display:grid}.parent-child-profile-page-card{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:30px;overflow:hidden}.parent-child-profile-hero{text-align:center;background:radial-gradient(circle at 80% 10%,#ffffff52,#0000 20%),linear-gradient(135deg,#ff7a592e,#20b48624);flex-direction:column;align-items:center;padding:30px 20px 24px;display:flex}.parent-child-profile-hero .parent-profile-avatar{width:116px!important;height:116px!important}.parent-child-profile-hero .accounts-status{margin-top:15px}.parent-child-profile-hero h3{color:var(--text);letter-spacing:0;margin:12px 0 5px;font-size:30px}.parent-child-profile-hero p{color:var(--muted);margin:0}.parent-child-profile-stats{background:var(--border);grid-template-columns:repeat(3,1fr);gap:1px;display:grid}.parent-child-profile-stats div{background:var(--card);text-align:center;padding:17px 10px}.parent-child-profile-stats strong{color:var(--text);font-size:18px;display:block}.parent-child-profile-stats small{color:var(--muted);margin-top:5px;font-size:10px;display:block}.parent-school-info-card{padding:22px}.parent-school-info-card h4{color:var(--text);margin:0 0 16px;font-size:17px}.parent-school-info-card dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;display:grid}.parent-school-info-card div{background:var(--canvas);border:1px solid var(--border);border-radius:14px;padding:12px}.parent-school-info-card dt,.parent-school-info-card dd{margin:0}.parent-school-info-card dt{color:var(--muted);text-transform:uppercase;font-size:10px;font-weight:800}.parent-school-info-card dd{color:var(--text);margin-top:5px;font-size:13px;font-weight:800}.parent-attendance-app{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:30px;padding:22px}.parent-current-week-attendance,.parent-monthly-attendance{margin-bottom:20px}.parent-attendance-section-heading{justify-content:space-between;align-items:flex-end;gap:14px;margin-bottom:14px;display:flex}.parent-attendance-section-heading h3{color:var(--text);margin:3px 0 0;font-size:22px}.parent-attendance-section-heading>small{color:var(--muted);text-align:right;font-size:12px;font-weight:800}.parent-week-attendance-list{border:1px solid var(--border);border-radius:22px;overflow:hidden}.parent-week-attendance-list article{background:var(--canvas);border-bottom:1px solid var(--border);grid-template-columns:minmax(120px,1.2fr) minmax(112px,auto) repeat(2,minmax(96px,auto));align-items:center;gap:12px;padding:13px 14px;display:grid}.parent-week-attendance-list article:last-child{border-bottom:0}.parent-week-attendance-list article.not-recorded{background:color-mix(in srgb, var(--canvas) 92%, var(--parent-blue) 8%)}.parent-week-attendance-list strong{color:var(--text);font-size:13px;display:block}.parent-week-attendance-list small,.parent-week-attendance-list article>span:not(.accounts-status){color:var(--muted);font-size:11px}.parent-week-attendance-list article>small:last-child{grid-column:1/-1}.parent-monthly-attendance-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.parent-monthly-attendance-card{text-align:left;transition:border-color .18s,box-shadow .18s,transform .18s;align-items:flex-start!important;gap:12px!important;min-height:142px!important;padding:15px!important}.parent-monthly-attendance-card:hover{border-color:color-mix(in srgb, var(--parent-blue) 58%, var(--border));transform:translateY(-2px);box-shadow:0 16px 34px #1677ff24}.parent-monthly-attendance-card span,.parent-monthly-attendance-card strong,.parent-monthly-attendance-card em,.parent-monthly-attendance-card small{display:block}.parent-monthly-attendance-card span{color:var(--text);font-size:13px;font-weight:900}.parent-monthly-attendance-card strong{color:var(--parent-blue);font-size:32px;line-height:1}.parent-monthly-attendance-card em,.parent-monthly-attendance-card small{color:var(--muted);font-size:11px;font-style:normal}.parent-monthly-attendance-status{align-items:center;gap:8px;margin-top:auto;display:inline-flex!important}.parent-monthly-attendance-status i{flex:none}.parent-attendance-details-sheet .parent-sheet-status{margin-bottom:18px}.parent-attendance-week-group{border-top:1px solid var(--border);padding-top:16px}.parent-attendance-week-group+.parent-attendance-week-group{margin-top:16px}.parent-attendance-week-group h4{color:var(--text);margin:0 0 8px;font-size:15px}.parent-attendance-orb{background:radial-gradient(circle,#20b48633 0 42%,#0000 43%),linear-gradient(135deg,#20b48626,#1677ff1a);border:1px solid #20b48638;border-radius:28px;flex-direction:column;justify-content:center;align-items:center;min-height:190px;margin-bottom:18px;display:flex}.parent-attendance-orb span,.parent-attendance-orb small{color:var(--muted);font-size:12px}.parent-attendance-orb strong{color:var(--text);letter-spacing:0;font-size:58px;line-height:.95}.parent-attendance-calendar{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:17px;display:grid}.parent-attendance-calendar button{background:var(--canvas);border:1px solid var(--border);color:var(--muted);cursor:pointer;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:9px;min-height:76px;display:flex}.parent-attendance-calendar i{border-radius:50%;width:18px;height:18px;display:block}.parent-attendance-calendar .present i{background:var(--parent-mint)}.parent-attendance-calendar .late i{background:var(--parent-sun)}.parent-attendance-calendar .absent i{background:#e16a6a}.parent-attendance-calendar .medical-leave i{background:var(--parent-berry)}.parent-recent-attendance article{cursor:pointer}.parent-bottom-sheet-backdrop{align-items:flex-end;padding:0}.parent-bottom-sheet{background:var(--card);border:1px solid var(--border);color:var(--text);border-radius:28px 28px 0 0;width:min(100%,680px);max-height:82vh;padding:12px 22px 24px;animation:.24s ease-out both parentSheetIn;overflow-y:auto;box-shadow:0 -24px 70px #02081757}.parent-attendance-modal-backdrop{z-index:1200;background:#0000008f;justify-content:center;align-items:center;padding:24px;inset:0}.parent-attendance-details-sheet{color:#111;overscroll-behavior:contain;background:#fff;border-radius:28px;width:min(840px,100vw - 48px);max-width:840px;max-height:calc(100dvh - 48px);padding:16px 24px 24px}.parent-attendance-details-sheet h3,.parent-attendance-details-sheet h4,.parent-attendance-details-sheet .parent-attendance-timeline strong,.parent-attendance-details-sheet .parent-sheet-status strong{color:#111}.parent-attendance-details-sheet header h3{color:#000}.parent-attendance-details-sheet .eyebrow,.parent-attendance-details-sheet .parent-attendance-timeline small,.parent-attendance-details-sheet .parent-attendance-timeline p{color:#1e3a5f}.parent-attendance-details-sheet .parent-sheet-status,.parent-attendance-details-sheet .parent-attendance-timeline article{background:#fff;border-color:#1677ff3d}.sheet-handle{background:var(--border);border-radius:999px;width:54px;height:5px;margin:0 auto 18px;display:block}.parent-bottom-sheet header{justify-content:space-between;align-items:flex-start;margin-bottom:18px;display:flex}.parent-bottom-sheet h3{color:var(--text);margin:3px 0 0;font-size:22px}.parent-sheet-status{background:var(--canvas);border:1px solid var(--border);border-radius:18px;align-items:center;gap:10px;padding:14px;display:flex}.parent-bottom-sheet dl{grid-template-columns:repeat(2,1fr);gap:10px;margin:14px 0 0;display:grid}.parent-bottom-sheet dl div{background:var(--canvas);border:1px solid var(--border);border-radius:16px;padding:13px}.parent-bottom-sheet dt,.parent-bottom-sheet dd{margin:0}.parent-bottom-sheet dt{color:var(--muted);text-transform:uppercase;font-size:10px}.parent-bottom-sheet dd{color:var(--text);margin-top:5px;font-size:16px;font-weight:800}.parent-care-journal{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:30px;padding:22px}.parent-care-timeline{flex-direction:column;gap:0;display:flex;position:relative}.parent-care-timeline:before{background:var(--border);content:"";width:2px;position:absolute;top:16px;bottom:16px;left:72px}.parent-care-timeline .parent-update-card{z-index:1;border:0;grid-template-columns:54px 38px minmax(0,1fr);gap:12px;padding:14px 0;display:grid;position:relative}.parent-care-timeline time{color:var(--muted);padding-top:10px;font-size:11px;font-weight:800}.parent-care-timeline .parent-summary-icon{background:var(--card);border:1px solid #ff8a0038}.parent-social-feed{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;display:grid}.parent-social-feed .parent-timeline-card{box-shadow:var(--shadow);border-radius:24px}.parent-social-feed .parent-media-preview{min-height:220px}.parent-social-actions{border-top:1px solid var(--border);gap:14px;margin-top:13px;padding-top:12px;display:flex}.parent-social-actions span{color:var(--muted);font-size:11px}.parent-photo-album-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px;display:grid}.parent-photo-album-grid .parent-album-card{border-radius:24px;min-height:190px}.album-mosaic{background:linear-gradient(90deg,#fff3 50%,#0000 50%) 0 0/50% 50%,linear-gradient(#0000 50%,#fff3 50%) 0 0/50% 50%,linear-gradient(135deg,#ff7a5938,#9b5de538)!important;width:100%!important;height:86px!important}@keyframes parentSheetIn{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@media (width<=1000px){.parent-story-hero,.parent-large-story-card,.parent-feed-split{grid-template-columns:1fr}.parent-little-moments{grid-template-columns:repeat(2,minmax(0,1fr))}.parent-story-media{min-height:210px}}@media (width<=700px){.parent-home-feed{max-width:none}.parent-story-hero{min-height:0}.parent-child-portrait-card{min-height:240px}.parent-child-portrait-card .parent-feature-avatar{width:92px!important;height:92px!important}.parent-little-moments{margin-left:-18px;margin-right:-18px;padding:0 18px 4px;display:flex;overflow-x:auto}.moment-tile{flex:0 0 164px}.parent-attendance-calendar{grid-template-columns:repeat(4,minmax(0,1fr))}.parent-attendance-section-heading{flex-direction:column;align-items:flex-start}.parent-attendance-section-heading>small{text-align:left}.parent-week-attendance-list article{grid-template-columns:1fr 1fr}.parent-week-attendance-list article>small:last-child{grid-column:auto}.parent-monthly-attendance-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.parent-school-info-card dl,.parent-bottom-sheet dl{grid-template-columns:1fr}.parent-attendance-modal-backdrop{padding:12px}.parent-attendance-details-sheet{border-radius:24px;width:calc(100vw - 24px);max-height:calc(100dvh - 24px);padding:14px 18px 22px}.parent-care-timeline:before{left:64px}.parent-care-timeline .parent-update-card{grid-template-columns:46px 34px minmax(0,1fr)}}.parent-main-content{min-height:100vh;padding-bottom:112px;margin-left:0!important}.parent-main-content .page-content{max-width:1120px;padding-bottom:132px}.parent-topbar{max-width:1180px;margin:0 auto;padding-left:32px;padding-right:32px}.parent-topbar .desktop-sidebar-toggle,.parent-topbar .menu-button{display:none!important}.parent-topbar .topbar-heading h1{letter-spacing:0}.parent-bottom-nav{background:color-mix(in srgb, var(--card) 82%, transparent);-webkit-backdrop-filter:blur(22px)saturate(1.35);backdrop-filter:blur(22px)saturate(1.35);border:1px solid color-mix(in srgb, var(--text) 8%, transparent);bottom:max(16px, env(safe-area-inset-bottom));z-index:80;border-radius:999px;grid-template-columns:repeat(5,1fr);align-items:center;gap:8px;width:min(100% - 32px,520px);max-width:520px;padding:8px 10px;display:grid;position:fixed;left:50%;right:auto;transform:translate(-50%);box-shadow:0 12px 36px #02081729}.parent-bottom-nav button{color:var(--muted);cursor:pointer;text-align:center;background:0 0;border:0;border-radius:999px;flex-direction:column;justify-content:center;align-items:center;gap:5px;min-width:0;min-height:60px;padding:6px 2px;font-size:11px;font-weight:600;transition:background-color .2s,color .2s,transform .2s;display:flex;position:relative}.parent-bottom-nav button svg{flex:none;width:21px;height:21px;display:block}.parent-bottom-nav button>span{white-space:nowrap;min-height:14px;line-height:1.25;display:block}.parent-bottom-nav button.active{background:color-mix(in srgb, var(--parent-coral) 12%, transparent);color:var(--parent-coral)}.parent-bottom-nav button:active{transform:scale(.96)}.parent-bottom-nav em{background:var(--parent-coral);border:2px solid var(--card);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:10px;font-style:normal;font-weight:800;display:inline-flex;position:absolute;top:4px;right:calc(50% - 25px)}.parent-more-grid .parent-more-logout{border-color:#ef44442e}.parent-more-grid .parent-more-logout .parent-summary-icon{color:#e16a6a;background:#ef44441f}@media (width<=700px){.parent-main-content,.parent-main-content .parent-app{padding-bottom:0}.parent-main-content .page-content{padding-left:max(14px, env(safe-area-inset-left));padding-right:max(14px, env(safe-area-inset-right));padding-bottom:calc(110px + env(safe-area-inset-bottom))}.parent-topbar{padding-left:18px;padding-right:18px}.parent-bottom-nav{bottom:max(10px, env(safe-area-inset-bottom));gap:3px;width:min(100% - 20px,520px);padding:7px 6px}.parent-bottom-nav button{min-height:56px;font-size:10px}}@media (prefers-reduced-motion:reduce){.parent-bottom-nav button{transition:none}}.parent-home-status-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0 14px;display:grid}.parent-home-status{background:var(--card);border:1px solid var(--border);color:var(--text);cursor:pointer;text-align:left;border-radius:18px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;min-height:76px;padding:13px 15px;display:grid}.parent-home-status small,.parent-home-status strong{display:block}.parent-home-status small,.parent-home-card-meta,.parent-home-info-card p{color:var(--muted);font-size:11px}.parent-home-status strong{color:var(--text);margin-top:3px;font-size:14px}.parent-home-content-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.parent-home-story-card,.parent-home-info-card{border:1px solid var(--border);color:var(--text);cursor:pointer;text-align:left;border-radius:22px;min-width:0;padding:19px;transition:transform .2s,box-shadow .2s}.parent-home-story-card:hover,.parent-home-info-card:hover,.parent-home-status:hover,.parent-home-message-card:hover{transform:translateY(-2px);box-shadow:0 12px 28px #18314417}.parent-home-story-card{flex-direction:column;min-height:222px;display:flex}.parent-home-story-card>small,.parent-home-info-card>small{color:var(--muted);margin:14px 0 6px;font-size:11px;display:block}.parent-home-story-card>strong,.parent-home-info-card>strong{color:var(--text);font-size:17px;line-height:1.4;display:block}.parent-home-card-meta,.parent-home-view-link{align-items:center;gap:5px;margin-top:auto;padding-top:16px;display:flex}.parent-home-art{color:#315f55;background:radial-gradient(circle at 72% 24%,#ffffff94,#0000 24%),linear-gradient(135deg,#b9ead8,#f4d7a8 58%,#eaa68e);border-radius:16px;justify-content:center;align-items:center;width:100%;height:82px;display:flex}.parent-home-info-card{flex-direction:column;min-height:204px;display:flex}.parent-home-info-card p{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:7px 0 0;line-height:1.55;display:-webkit-box;overflow:hidden}.parent-home-view-link{color:var(--parent-coral);font-size:11px;font-weight:800}.parent-unread-indicator{color:#188b69;align-items:center;gap:6px;margin-top:8px;font-size:10px;font-weight:800;display:inline-flex}.parent-unread-indicator:before{content:"";background:#20b486;border-radius:50%;width:7px;height:7px}.parent-home-message-card{background:var(--card);border:1px solid var(--border);color:var(--text);cursor:pointer;text-align:left;border-radius:20px;grid-column:1/-1;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;min-height:82px;padding:14px 17px;transition:transform .2s,box-shadow .2s;display:grid}.parent-home-message-card small,.parent-home-message-card strong,.parent-home-message-card em{display:block}.parent-home-message-card small,.parent-home-message-card em{color:var(--muted);font-size:11px;font-style:normal}.parent-home-message-card strong{color:var(--text);margin:3px 0;font-size:13px}.parent-home-message-card>svg:last-child{color:var(--muted)}.parent-child-shortcuts{border-top:1px solid var(--border);flex-wrap:wrap;gap:8px;padding:16px 20px 20px;display:flex}.parent-child-shortcuts button{background:var(--canvas);border:1px solid var(--border);color:var(--text);cursor:pointer;border-radius:999px;min-height:40px;padding:0 13px;font-size:11px;font-weight:700}.parent-care-only{max-width:900px}.parent-care-accordion{flex-direction:column;gap:12px;margin-top:18px;display:flex}.parent-care-month-group{background:var(--canvas);border:1px solid var(--border);border-radius:22px;overflow:hidden}.parent-care-group-toggle{color:var(--text);cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;width:100%;min-height:54px;padding:0 16px;font-weight:900;display:flex}.parent-care-group-toggle svg{color:var(--parent-blue);flex:none;transition:transform .18s}.parent-care-group-toggle svg.expanded{transform:rotate(90deg)}.parent-care-collapse{opacity:0;visibility:hidden;grid-template-rows:0fr;transition:grid-template-rows .24s ease-out,opacity .2s ease-out,visibility 0s linear .24s;display:grid;overflow:hidden}.parent-care-collapse.is-open{opacity:1;visibility:visible;grid-template-rows:1fr;transition:grid-template-rows .24s ease-out,opacity .2s ease-out}.parent-care-collapse-inner{min-height:0;transition:transform .24s ease-out;overflow:hidden;transform:translateY(-4px)}.parent-care-collapse.is-open>.parent-care-collapse-inner{transform:translateY(0)}.parent-care-day-list{border-top:1px solid var(--border);flex-direction:column;gap:0;padding:8px 14px 14px;display:flex}.parent-care-day-group{border-bottom:1px solid var(--border)}.parent-care-day-group:last-child{border-bottom:0}.parent-care-day-toggle{color:var(--muted);min-height:46px;padding:0;font-size:13px}.parent-care-day-group .parent-care-timeline{margin:0 0 8px}.parent-care-only .parent-care-timeline{margin-top:18px}.parent-care-only .parent-care-day-group .parent-care-timeline{margin:0 0 8px}.parent-care-only .parent-update-card{grid-template-columns:62px 42px minmax(0,1fr) auto;align-items:center;padding:16px 0}.parent-care-recorded{color:#188b69;background:#20b4861a;border-radius:999px;padding:6px 9px;font-size:10px;font-weight:700}.parent-timeline-feed{gap:18px;max-width:760px;margin:0 auto;display:grid}.parent-timeline-post{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:22px;display:block;overflow:hidden}.parent-timeline-post>header{align-items:center;gap:11px;padding:15px 17px;display:flex}.parent-teacher-avatar,.parent-chat-message-avatar{color:#315f55;background:linear-gradient(145deg,#b9ead8,#f4d7a8);border-radius:50%;flex:none;justify-content:center;align-items:center;width:42px;height:42px;font-size:11px;font-weight:800;display:inline-flex}.parent-timeline-post>header>span:nth-child(2){min-width:0}.parent-timeline-post>header strong,.parent-timeline-post>header small{display:block}.parent-timeline-post>header strong{color:var(--text);font-size:13px}.parent-timeline-post>header small,.parent-timeline-post>header time{color:var(--muted);margin-top:3px;font-size:10px}.parent-timeline-post>header time{white-space:nowrap;margin-left:auto}.parent-timeline-media{aspect-ratio:16/9;color:#265249bf;background:radial-gradient(circle at 70% 24%,#ffffff80,#0000 19%),linear-gradient(135deg,#b6e5d1,#f5d39b 55%,#d99583);flex-direction:column;justify-content:center;align-items:center;gap:8px;display:flex}.parent-timeline-media.video{background:radial-gradient(circle at 25% 30%,#ffffff8c,#0000 20%),linear-gradient(135deg,#b6dbe4,#dceac5 55%,#f2c89e)}.parent-timeline-media span{text-transform:uppercase;font-size:10px;font-weight:800}.parent-timeline-copy{padding:16px 18px 17px}.parent-timeline-copy>p{color:var(--text);margin:0;font-size:14px;line-height:1.55}.parent-timeline-post .parent-social-actions{border-top:1px solid var(--border);color:var(--muted);gap:18px;margin-top:14px;padding-top:12px;font-size:11px;display:flex}.parent-timeline-feed.parent-timeline-accordion{flex-direction:column;gap:12px;max-width:760px;margin:0 auto;display:flex}.parent-timeline-month-group{background:var(--canvas);border:1px solid var(--border);border-radius:22px;overflow:hidden}.parent-timeline-group-toggle{color:var(--text);cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;width:100%;min-height:54px;padding:0 16px;font-weight:900;display:flex}.parent-timeline-group-toggle:focus,.parent-timeline-group-toggle:focus-visible,.parent-timeline-group-toggle:active{box-shadow:none;outline:0}.parent-timeline-group-toggle svg{color:var(--parent-blue);flex:none;transition:transform .18s}.parent-timeline-group-toggle svg.expanded{transform:rotate(90deg)}.parent-timeline-day-list{border-top:1px solid var(--border);flex-direction:column;gap:0;padding:8px 14px 14px;display:flex}.parent-timeline-day-group{border-bottom:1px solid var(--border)}.parent-timeline-day-group:last-child{border-bottom:0}.parent-timeline-day-toggle{color:var(--muted);min-height:46px;padding:0;font-size:13px}.parent-timeline-day-posts{gap:18px;padding:0 0 8px;display:grid}.parent-album-months{gap:26px;max-width:1020px;margin:0 auto;display:grid}.parent-album-month .parent-app-section-heading{margin-bottom:14px}.parent-album-gallery-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:13px;display:grid}.parent-gallery-album{background:var(--card);border:1px solid var(--border);color:var(--text);cursor:pointer;text-align:left;border-radius:20px;grid-template-columns:104px minmax(0,1fr) auto;align-items:center;gap:13px;min-height:124px;padding:10px;transition:transform .2s,box-shadow .2s;display:grid}.parent-gallery-album:hover{transform:translateY(-2px);box-shadow:0 12px 28px #1831441a}.parent-gallery-cover{aspect-ratio:1;border-radius:14px;grid-template-columns:repeat(2,1fr);gap:3px;padding:3px;display:grid;overflow:hidden}.parent-gallery-cover-tile{color:#2a594bb8;background:#ffffff80;justify-content:center;align-items:center;display:flex}.parent-gallery-cover-tile:nth-child(2){background:#ffffff47}.parent-gallery-cover-tile:nth-child(3){background:#4a8e732b}.parent-gallery-cover-tile:nth-child(4){background:#eea37b47}.parent-gallery-album-copy{min-width:0}.parent-gallery-album-copy strong,.parent-gallery-album-copy small{display:block}.parent-gallery-album-copy strong{color:var(--text);font-size:13px;line-height:1.35}.parent-gallery-album-copy small{color:var(--muted);margin-top:5px;font-size:10px}.parent-gallery-album>svg{color:var(--muted);margin-right:5px}.parent-gallery-modal{max-width:760px;max-height:88vh;overflow-y:auto}.parent-gallery-grid article>.parent-gallery-media{aspect-ratio:4/3;color:#265249bf;background:linear-gradient(135deg,#b9ead8,#f4d7a8 58%,#eaa68e);border-radius:15px;justify-content:center;align-items:center;display:flex}.parent-gallery-grid article>.parent-gallery-media.video{background:linear-gradient(135deg,#b6dbe4,#dceac5 55%,#f2c89e)}.parent-messages-view{max-width:760px;margin:0 auto}.parent-teacher-picker{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:22px;padding:22px}.parent-teacher-list{gap:8px;display:grid}.parent-teacher-row{color:var(--text);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:17px;grid-template-columns:46px minmax(0,1fr) auto auto;align-items:center;gap:10px 12px;min-height:82px;padding:12px;transition:background-color .18s;display:grid}.parent-teacher-row:hover{background:var(--canvas)}.parent-teacher-row>.parent-teacher-avatar{grid-area:1/1/span 2}.parent-teacher-row>span:nth-child(2){grid-area:1/2/span 2;min-width:0}.parent-teacher-row>span:nth-child(2) strong,.parent-teacher-row>span:nth-child(2) small,.parent-teacher-row>span:nth-child(2) em{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.parent-teacher-row>span:nth-child(2) strong{color:var(--text);font-size:13px}.parent-teacher-row>span:nth-child(2) small,.parent-teacher-row>span:nth-child(2) em,.parent-teacher-row time{color:var(--muted);margin-top:4px;font-size:10px;font-style:normal}.parent-teacher-row>span:nth-child(2) em{color:var(--text);max-width:100%;font-size:11px}.parent-teacher-row>em{background:var(--parent-coral);color:#fff;border-radius:999px;grid-area:1/3;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 5px;font-size:10px;font-style:normal;font-weight:800;display:inline-flex}.parent-teacher-row time{white-space:nowrap;grid-area:2/3}.parent-teacher-row>svg{color:var(--muted);grid-area:1/4/span 2}.parent-chat-room{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:22px;flex-direction:column;max-width:760px;min-height:min(690px,100vh - 240px);margin:0 auto;display:flex;overflow:hidden}.parent-chat-header{background:color-mix(in srgb, var(--card) 94%, transparent);border-bottom:1px solid var(--border);align-items:center;gap:11px;min-height:76px;padding:12px 16px;display:flex}.parent-chat-header>button{color:var(--text);cursor:pointer;background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;gap:7px;height:42px;padding:0 12px;font-size:12px;font-weight:800;display:inline-flex}.parent-chat-header>span:last-child{min-width:0}.parent-chat-header strong,.parent-chat-header small{display:block}.parent-chat-header strong{color:var(--text);font-size:14px}.parent-chat-header small{color:var(--muted);margin-top:4px;font-size:10px}.parent-chat-room .parent-message-thread{background:radial-gradient(circle at 10% 12%, #20b4860d, transparent 26%), var(--canvas);scroll-behavior:smooth;flex:1;min-height:320px;max-height:min(62vh,600px)}.parent-chat-day-label{background:color-mix(in srgb, var(--card) 85%, transparent);border:1px solid var(--border);color:var(--muted);border-radius:999px;align-self:center;padding:6px 11px;font-size:10px}.parent-chat-room .parent-message-thread article{background:0 0;border:0;align-items:flex-end;gap:7px;max-width:88%;padding:0;display:flex}.parent-chat-room .parent-message-thread article.from-parent{align-self:flex-end}.parent-chat-message-avatar{width:26px;height:26px;font-size:8px}.parent-chat-bubble-wrap{background:var(--card);border:1px solid var(--border);border-radius:18px 18px 18px 5px;max-width:100%;padding:11px 13px}.parent-chat-room .parent-message-thread article.from-parent .parent-chat-bubble-wrap{background:#e98668;border-color:#0000;border-radius:18px 18px 5px}.parent-chat-room .parent-message-thread article.from-parent p,.parent-chat-room .parent-message-thread article.from-parent small{color:#fff}.parent-chat-room .parent-message-thread p{overflow-wrap:anywhere}.parent-chat-room .parent-message-form{background:color-mix(in srgb, var(--card) 96%, transparent);z-index:1;align-items:center;position:sticky;bottom:0}.parent-chat-room .parent-message-form input{background:var(--canvas);border-radius:999px;min-height:48px}.parent-chat-room .parent-message-form button{border-radius:50%;width:46px;height:46px;min-height:46px;padding:0}.parent-chat-room .parent-message-form button:disabled{color:#1677ff;cursor:not-allowed;background:#fff;border:1px solid #1677ff}.parent-more-profile>div:last-child small{color:var(--muted);margin-top:6px;font-size:11px;display:block}@media (width<=700px){.parent-home-content-grid{grid-template-columns:1fr}.parent-home-story-card,.parent-home-info-card{min-height:184px}.parent-home-message-card{grid-column:auto}.parent-care-only .parent-update-card{grid-template-columns:48px 36px minmax(0,1fr);align-items:start}.parent-care-recorded{grid-column:3;justify-self:start;margin-top:7px}.parent-gallery-album{grid-template-columns:88px minmax(0,1fr) auto}.parent-teacher-picker{padding:17px 12px}.parent-teacher-row{grid-template-columns:40px minmax(0,1fr) auto auto;gap:8px;padding:10px 7px}.parent-teacher-row>.parent-teacher-avatar{width:38px;height:38px}.parent-teacher-row time{font-size:9px}.parent-chat-room{border-radius:18px;min-height:calc(100dvh - 340px);margin-bottom:92px}.parent-chat-room .parent-message-thread{min-height:0;max-height:calc(100dvh - 390px)}}@media (width<=420px){.parent-home-status-row{grid-template-columns:1fr}.parent-gallery-album{grid-template-columns:72px minmax(0,1fr) auto;gap:9px}.parent-teacher-row{grid-template-columns:38px minmax(0,1fr) auto}.parent-teacher-row>em{grid-area:1/3}.parent-teacher-row time,.parent-teacher-row>svg{display:none}}.parent-main-content .page-content{max-width:1060px;padding-top:26px}.parent-app,.parent-main-content .account-settings-page{--parent-coral:#ff765f;--parent-mint:#24b982;--parent-sun:#f5b335;--parent-berry:#e26ba5;--parent-blue:#58a7e8;--parent-cream:#fff8ec}.parent-topbar .topbar-heading h1{color:#26313b!important}.parent-topbar .icon-button,.parent-topbar .topbar-user{color:#1677ff;background:#ffffffa8;border-color:#885c2c1f}.parent-app .eyebrow,.parent-main-content .account-settings-page .eyebrow{color:#e07a32;letter-spacing:.12em}.parent-app-header{background:#fffdfab8;border:1px solid #885c2c1a;border-radius:28px;align-items:center;margin-bottom:18px;padding:18px;box-shadow:0 14px 34px #a1672a14}.parent-app-header h2{color:#26313b;font-size:clamp(28px,4vw,38px)}.parent-app-header p{color:#1e3a5f;line-height:1.55}.parent-child-switcher{background:#ffffffbd;border:1px solid #885c2c1c;box-shadow:inset 0 1px #ffffffb3}.parent-child-switcher button{color:#7a828d}.parent-child-switcher button.active{color:#c95740;background:linear-gradient(135deg,#ff765f2e,#f5b33529)}.parent-home-hero{background:linear-gradient(135deg,#ffc25cf0,#ff765fdb 45%,#24b982c7);border:1px solid #ffffff85;box-shadow:0 24px 58px #ff904430}.parent-home-hero .eyebrow,.parent-home-hero h2,.parent-home-hero p{color:#fff}.parent-child-portrait-card{background:#ffffff59;border-color:#ffffff94;box-shadow:0 14px 30px #99481b1f}.parent-home-section-heading{margin:20px 0 10px}.parent-home-status,.parent-home-story-card,.parent-home-info-card,.parent-home-message-card,.parent-content-panel,.parent-teacher-picker,.parent-chat-room,.parent-timeline-post,.parent-gallery-album,.parent-child-profile-page-card,.parent-attendance-app,.parent-care-journal,.parent-wallet-card+.parent-payment-list .parent-payment-card,.parent-more-grid button,.parent-more-profile,.parent-main-content .account-settings-card{border-color:#885c2c1f;box-shadow:0 14px 36px #a1672a14}.parent-home-status,.parent-home-story-card,.parent-home-info-card,.parent-home-message-card,.parent-content-panel,.parent-teacher-picker,.parent-chat-room,.parent-timeline-post,.parent-gallery-album,.parent-payment-card,.parent-more-grid button,.parent-main-content .account-settings-card{background:#fffdfae6}.parent-home-status{border-radius:24px}.parent-home-status:hover,.parent-home-story-card:hover,.parent-home-info-card:hover,.parent-home-message-card:hover,.parent-teacher-row:hover,.parent-gallery-album:hover,.parent-more-grid button:hover{box-shadow:0 18px 42px #ff894b24}.parent-home-story-card,.parent-home-info-card{border-radius:28px}.parent-home-story-card.care{background:linear-gradient(145deg,#d8f7e7fa,#fffdfaf5 68%)}.parent-home-story-card.timeline{background:linear-gradient(145deg,#e0f1fff2,#fffdfafa 72%)}.parent-home-info-card.announcement{background:linear-gradient(145deg,#fff0bff5,#fffdfafa 72%)}.parent-home-info-card.payment{background:linear-gradient(145deg,#ffddcdf5,#fffdfafa 72%)}.parent-home-info-card.documents{background:linear-gradient(145deg,#e0f1fff2,#fffdfafa 72%)}.parent-home-info-card.notifications{background:linear-gradient(145deg,#ffe0eff2,#fffdfafa 72%)}.parent-summary-icon{color:var(--parent-blue);background:#58a7e824;border-radius:14px}.parent-home-art,.parent-timeline-media,.parent-gallery-grid article>.parent-gallery-media{color:#2f755e;background:linear-gradient(135deg,#e0f1ff,#fff0bf 54%,#ffd6c8)}.parent-timeline-media.video,.parent-gallery-grid article>.parent-gallery-media.video{background:linear-gradient(135deg,#d8f7e7,#e0f1ff 52%,#ffe0ef)}.parent-activity-hero{background:linear-gradient(135deg,#d8f7e7fa,#fff0bfeb);border-color:#885c2c1a;box-shadow:0 16px 38px #24b9821a}.parent-activity-card.attendance{background:linear-gradient(145deg,#d8f7e7f2,#fffdfaf5)}.parent-activity-card.care{background:linear-gradient(145deg,#fff0bff5,#fffdfaf5)}.parent-activity-card.timeline{background:linear-gradient(145deg,#e0f1fff2,#fffdfaf5)}.parent-activity-card.albums{background:linear-gradient(145deg,#ffe0eff2,#fffdfaf5)}.parent-child-profile-hero{background:linear-gradient(135deg,#fff0bffa,#ffddcdeb,#d8f7e7e6)}.parent-school-info-card,.parent-child-profile-stats div,.parent-child-shortcuts button,.parent-attendance-calendar button,.parent-attendance-summary>div,.parent-bottom-sheet dl div,.parent-search,.parent-document-list article,.parent-gallery-grid article{background:#ffffffb8;border-color:#885c2c1f}.parent-care-recorded{color:#158761;background:#24b98221}.parent-teacher-row{background:#ffffff8a;border:1px solid #0000;border-radius:20px}.parent-teacher-row:hover{background:#fff8ec;border-color:#ff765f29}.parent-chat-bubble-wrap{background:#fffdfa;border-color:#885c2c1f}.parent-notification-list button.unread{background:linear-gradient(135deg,#ffe0efeb,#fffdfaf5)}.parent-more-profile .avatar{color:#fff;background:linear-gradient(135deg,#ff765f,#f5b335)}.parent-bottom-nav{-webkit-backdrop-filter:blur(24px)saturate(1.5);backdrop-filter:blur(24px)saturate(1.5);background:#fffdfad1;border:1px solid #885c2c1a;border-radius:999px;gap:6px;padding:8px;box-shadow:0 18px 50px #8f541c2e}.parent-bottom-nav button{color:#1677ff;border-radius:999px;min-height:58px}.parent-bottom-nav button em{background:#e94f68;border-color:#fffdfa}.parent-main-content .account-settings-page .page-header h2,.parent-main-content .account-settings-heading h3{color:#25313b}.parent-main-content .account-settings-grid input,.parent-main-content .account-settings-grid select{background:#ffffffc7;border-color:#885c2c24}@media (width<=700px){.parent-main-content .page-content{padding-top:18px}.parent-app-header{border-radius:24px;padding:16px}.parent-home-hero{padding:22px}.parent-bottom-nav{bottom:max(10px, env(safe-area-inset-bottom));border-radius:28px}}.parent-app-shell{--canvas:#fff9e8;--card:#fff;--text:#12323f;--white:#12323f;--muted:#1e3a5f;--border:#0483942e;--shadow:0 18px 44px #0081941f}.parent-app,.parent-main-content .account-settings-page{--parent-cyan:#00bcd4;--parent-cyan-deep:#008ca3;--parent-green:#35b957;--parent-yellow:#ffd52c;--parent-blue:#1877d3;--parent-coral:#ff7043;--parent-pink:#f56aa4;--parent-mint:#35b957;--parent-sun:#ffd52c;--parent-berry:#f56aa4}.parent-app-logo{object-fit:contain;background:#ffffffd6;border:1px solid #ffffffb3;border-radius:18px;flex:none;max-width:150px;max-height:54px;padding:7px;box-shadow:0 12px 24px #0081941f}.parent-home-logo{object-fit:contain;background:#ffffffe0;border-radius:20px;max-width:220px;max-height:76px;margin-bottom:18px;padding:10px 12px;display:block;box-shadow:0 14px 30px #00617421}.parent-topbar{box-shadow:0 14px 34px #0081941a;background:#ffffffd6!important;border-bottom-color:#008ca329!important}.parent-topbar .topbar-overline{color:var(--parent-cyan-deep)}.parent-app-header{background:linear-gradient(135deg,#ffffffeb,#eafff8db),radial-gradient(circle at 88% 0,#ffd52c57,#0000 38%);border-color:#008ca329}.parent-app-header .eyebrow,.parent-home-section-heading span,.parent-app-section-heading span{color:var(--parent-cyan-deep)}.parent-home-hero{background:radial-gradient(circle at 80% 16%,#ffffff73,#0000 22%),linear-gradient(135deg,#00bcd4 0%,#1877d3 42%,#35b957 72%,#ffd52c 100%);box-shadow:0 28px 68px #0081943d}.parent-home-hero .parent-child-switcher button.active{color:#12434b;background:#ffd52ceb}.parent-child-portrait-card{background:linear-gradient(145deg,#ffffff6b,#ffffff3d);border-color:#ffffff9e}.parent-child-attendance-highlight{color:#12323f;background:#ffffffeb;border-radius:18px;grid-template-columns:minmax(0,1fr) auto;gap:3px;margin:12px 0 10px;padding:12px;display:grid;box-shadow:0 14px 28px #0061741f}.parent-child-attendance-highlight small{color:#008ca3;text-transform:uppercase;font-size:10px;font-weight:800}.parent-child-attendance-highlight strong{color:#0a7a49;letter-spacing:0;grid-row:1/span 2;font-size:28px}.parent-child-attendance-highlight span{color:#1e3a5f;font-size:11px}.parent-home-status,.parent-home-story-card,.parent-home-info-card,.parent-home-message-card,.parent-content-panel,.parent-teacher-picker,.parent-chat-room,.parent-timeline-post,.parent-gallery-album,.parent-payment-card,.parent-more-grid button,.parent-main-content .account-settings-card{border-color:#008ca326;box-shadow:0 18px 44px #0081941a}.parent-home-status:first-child,.parent-home-story-card.timeline,.parent-home-info-card.documents,.parent-activity-card.timeline{background:linear-gradient(145deg,#d9f5fff5,#fff 72%)}.parent-home-status:nth-child(2),.parent-home-story-card.care,.parent-home-info-card.notifications,.parent-activity-card.attendance{background:linear-gradient(145deg,#dcffe2f5,#fff 72%)}.parent-home-info-card.announcement,.parent-activity-card.care{background:linear-gradient(145deg,#fff182cc,#fff 72%)}.parent-home-info-card.payment,.parent-activity-card.albums{background:linear-gradient(145deg,#ffd2c2f2,#fff 72%)}.parent-home-message-card{background:linear-gradient(135deg,#00bcd41f,#fffffff0),#fff}.parent-summary-icon{color:var(--parent-cyan-deep);background:#00bcd42e}.parent-summary-icon.mint{color:#19904c;background:#35b9572e}.parent-summary-icon.sun{color:#b88600;background:#ffd52c47}.parent-summary-icon.orange{color:var(--parent-coral);background:#ff70432e}.parent-summary-icon.berry{color:var(--parent-pink);background:#f56aa42e}.parent-activity-hero,.parent-wallet-card{color:#fff;background:linear-gradient(135deg,#00bcd4,#1877d3 48%,#35b957)}.parent-activity-hero h3,.parent-activity-hero p,.parent-wallet-card strong,.parent-wallet-card p{color:#fff}.parent-week-strip button{background:#ffffffeb}.parent-timeline-media,.parent-gallery-grid article>.parent-gallery-media,.parent-home-art{color:#073944;background:linear-gradient(135deg,#00bcd4,#ffd52c 48%,#35b957)}.parent-timeline-media.video,.parent-gallery-grid article>.parent-gallery-media.video{color:#fff;background:linear-gradient(135deg,#1877d3,#00bcd4 52%,#f56aa4)}.parent-gallery-album.mint .parent-gallery-cover{background:#35b957}.parent-gallery-album.sun .parent-gallery-cover{background:#ffd52c}.parent-gallery-album.berry .parent-gallery-cover{background:#f56aa4}.parent-teacher-avatar,.parent-chat-message-avatar{color:#fff;background:linear-gradient(145deg,#00bcd4,#35b957)}.parent-chat-room .parent-message-thread{background:radial-gradient(circle at 12% 12%,#ffd52c3d,#0000 25%),linear-gradient(135deg,#e6fcfff5,#f3ffede0)}.parent-chat-room .parent-message-thread article.from-parent .parent-chat-bubble-wrap,.parent-chat-room .parent-message-form button,.parent-message-form button,.parent-document-list button{background:linear-gradient(135deg,#00bcd4,#1877d3)}.parent-more-profile{background:linear-gradient(135deg,#00bcd433,#ffd52c57,#35b9572e)}.parent-more-profile .avatar{background:linear-gradient(135deg,#00bcd4,#1877d3)}.parent-bottom-nav{background:#ffffffdb;border-color:#008ca329;box-shadow:0 18px 52px #00819430}.parent-bottom-nav button{color:#1677ff}.parent-bottom-nav button em{background:#ff4d6d}.parent-login-page{background:radial-gradient(circle at 82% 8%,#00bcd452,#0000 42%),radial-gradient(circle at 18% 88%,#ffd52c61,#0000 40%),radial-gradient(circle at 48% 18%,#35b95733,#0000 36%),linear-gradient(135deg,#fffdf0,#eafffb 52%,#fff8df)!important}.parent-login-page:before,.parent-login-page:after{display:none}.parent-login-page .login-shell{max-width:510px}.parent-login-page .login-branding{margin-bottom:24px}.parent-login-logo{object-fit:contain;background:#fff;border-radius:24px;max-width:280px;max-height:118px;margin-bottom:16px;padding:14px 18px;box-shadow:0 18px 44px #00819429}.parent-login-page .login-branding strong{color:#008ca3}.parent-login-page .login-branding b{color:#12323f}.parent-login-page .login-branding span{color:#4e6875}.parent-login-page .login-card{background:#fffffff0;border-color:#008ca329;box-shadow:0 26px 70px #00819429}.parent-login-page .login-card .login-form-topline{display:none}.parent-login-page .login-card h1{color:#12323f}.parent-login-page .login-card .login-subtitle{color:#5d7180}.parent-login-page .login-card input[type=email],.parent-login-page .login-card input[type=password],.parent-login-page .login-card input[type=text]{color:#12323f;background:#f6fffd;border-color:#008ca32e}.parent-login-page .login-card .remember,.parent-login-page .login-card form>label{color:#12323f}.parent-login-page .login-card .remember input{accent-color:#00bcd4}.parent-login-page .login-card .forgot-button{color:#008ca3}.parent-login-page .login-card .login-submit{color:#fff;background:linear-gradient(135deg,#00bcd4,#1877d3);box-shadow:0 14px 28px #00819433}.parent-login-page .login-note,.parent-login-page .login-demo-hint{color:#5d7180}@media (width<=700px){.parent-app-logo{max-width:120px;max-height:44px}.parent-home-logo{max-width:190px;max-height:64px}.parent-child-attendance-highlight{grid-template-columns:1fr}.parent-child-attendance-highlight strong{grid-row:auto}}.parent-app,.parent-app-shell .parent-app,.parent-main-content .account-settings-page{--parent-orange:#ff7a00}.parent-summary-icon.orange,.parent-home-info-card.payment .parent-summary-icon,.parent-wallet-card .parent-summary-icon,.parent-activity-card.care .parent-summary-icon,.parent-care-timeline .parent-summary-icon.orange{box-shadow:0 12px 24px #ff7a0042;background:var(--parent-orange)!important;color:#fff!important}.parent-home-info-card.payment{background:linear-gradient(145deg,#ff7a0038,#fffffff5 62%)!important;border-color:#ff7a005c!important}.parent-home-info-card.payment>strong,.parent-payment-card dd:nth-child(6),.parent-payment-card dl div:nth-child(3) dd{color:#d96200}.parent-home-info-card.payment .parent-home-view-link,.parent-wallet-card>div span:first-child{background:var(--parent-orange);color:#fff;border:0;border-radius:999px;justify-content:center;width:fit-content;padding:8px 12px;font-weight:900;display:inline-flex}.parent-wallet-card{background:radial-gradient(circle at 86% 18%, #ffffff42, transparent 22%), linear-gradient(135deg, var(--parent-orange), #ff9d00 54%, #ffd52c)!important;box-shadow:0 26px 62px #ff7a0040!important}.parent-payment-card{border-color:#ff7a0042!important}.parent-payment-card .accounts-status.pending,.parent-payment-card .accounts-status.overdue,.parent-payment-card .accounts-status.partially-paid,.parent-notification-list button.payment .parent-summary-icon{background:var(--parent-orange)!important;color:#fff!important}.parent-care-journal,.parent-care-only .parent-update-card{border-color:#ff7a0038!important}.parent-care-recorded{background:var(--parent-orange)!important;color:#fff!important}.parent-home-status:nth-child(2),.parent-home-story-card.care,.parent-activity-card.care{background:linear-gradient(145deg,#ff7a0033,#fffffff5 68%)!important;border-color:#ff7a004d!important}.parent-child-shortcuts button:hover,.parent-more-grid .parent-more-logout .parent-summary-icon,.parent-bottom-nav em{background:var(--parent-orange)!important;color:#fff!important}.parent-app .parent-home-card-meta,.parent-app .parent-home-view-link{color:#d96200}.parent-topbar{box-shadow:0 14px 34px #1677ff17;border-bottom-color:#ff8a002e!important}.parent-topbar .topbar-overline,.parent-app-header .eyebrow,.parent-home-section-heading span,.parent-app-section-heading span{color:var(--parent-orange)}.parent-home-hero{box-shadow:0 28px 68px #1677ff38,0 18px 42px #ff8a0029;background:radial-gradient(circle at 78% 14%,#ffffff6b,#0000 22%),radial-gradient(circle at 92% 82%,#ff8a0094,#0000 28%),linear-gradient(135deg,#1677ff 0% 58%,#ff8a00 100%)!important}.parent-home-hero .parent-child-switcher button.active{background:var(--parent-orange);color:#fff}.parent-child-attendance-highlight{border:1px solid #ff8a0042;box-shadow:0 14px 28px #ff8a0024}.parent-child-attendance-highlight small,.parent-child-attendance-highlight strong{color:var(--parent-orange)}.parent-home-status:first-child,.parent-home-info-card.notifications,.parent-activity-card.attendance{background:linear-gradient(145deg,#ff8a0033,#fffffff5 68%)!important;border-color:#ff8a0052!important}.parent-home-status:nth-child(2),.parent-home-story-card.care,.parent-home-info-card.documents,.parent-activity-card.care{background:linear-gradient(145deg,#1677ff21,#fffffff5 68%)!important;border-color:#1677ff3d!important}.parent-home-info-card.payment,.parent-home-info-card.announcement{background:linear-gradient(145deg,#ff8a002e,#fffffff5 66%)!important;border-color:#ff8a0052!important}.parent-home-story-card.timeline,.parent-home-message-card{background:linear-gradient(145deg,#1677ff1f,#fffffff5 70%)!important;border-color:#1677ff38!important}.parent-summary-icon,.parent-summary-icon.mint,.parent-summary-icon.berry{color:var(--parent-blue)!important;background:#1677ff24!important}.parent-summary-icon.orange,.parent-summary-icon.sun,.parent-home-status:first-child .parent-summary-icon,.parent-home-info-card.payment .parent-summary-icon,.parent-home-info-card.announcement .parent-summary-icon,.parent-home-info-card.notifications .parent-summary-icon,.parent-notification-list button.payment .parent-summary-icon,.parent-wallet-card .parent-summary-icon{box-shadow:0 12px 24px #ff8a003d;background:var(--parent-orange)!important;color:#fff!important}.parent-home-status:nth-child(2) .parent-summary-icon,.parent-home-story-card.care .parent-summary-icon,.parent-home-message-card .parent-summary-icon,.parent-home-info-card.documents .parent-summary-icon{box-shadow:0 12px 24px #1677ff2e;background:var(--parent-blue)!important;color:#fff!important}.parent-home-info-card.payment>strong,.parent-home-info-card.notifications>strong,.parent-home-info-card.announcement>strong,.parent-payment-card dd:nth-child(6),.parent-payment-card dl div:nth-child(3) dd{color:#c96400}.parent-home-card-meta,.parent-home-view-link,.parent-unread-indicator{color:#c96400!important}.parent-home-info-card.payment .parent-home-view-link,.parent-home-info-card.notifications .parent-home-view-link,.parent-wallet-card>div span:first-child,.parent-unread-indicator{border:0;border-radius:999px;justify-content:center;width:fit-content;padding:8px 12px;font-weight:900;display:inline-flex;background:var(--parent-orange)!important;color:#fff!important}.parent-activity-hero,.parent-wallet-card{background:radial-gradient(circle at 86% 18%,#ffffff47,#0000 22%),linear-gradient(135deg,#1677ff 0% 58%,#ff8a00 100%)!important;box-shadow:0 26px 62px #1677ff2e,0 18px 42px #ff8a0029!important}.parent-attendance-orb{background:conic-gradient(var(--parent-orange) 0 258deg, #1677ff38 258deg 360deg), #fffdf8;box-shadow:0 18px 38px #ff8a0029}.parent-status-dot.late,.parent-week-strip .late span,.parent-attendance-calendar .late i,.parent-care-recorded,.parent-bottom-nav em{background:var(--parent-orange)!important}.parent-care-timeline:before{background:linear-gradient(180deg, var(--parent-orange), #1677ff8c)!important}.parent-bottom-nav button.active{color:#c96400;background:linear-gradient(135deg,#ff8a002e,#1677ff24)!important}.parent-app,.parent-app-shell .parent-app,.parent-main-content .account-settings-page{--parent-blue:#1677ff;--parent-cyan:#1677ff;--parent-cyan-deep:#1677ff;--parent-orange:#ff8a00;--parent-coral:#ff8a00;--parent-sun:#ff8a00}.dashboard-shell:not(.theme-light).parent-app-shell{--canvas:#fff;--card:#fff;--text:#111;--white:#111;--muted:#1e3a5f;--border:#1677ff3d}.dashboard-shell:not(.theme-light).parent-app-shell .parent-topbar,.dashboard-shell:not(.theme-light).parent-app-shell .parent-bottom-nav{background:#fff!important;border-color:#ff8a006b!important}.parent-topbar .topbar-overline,.parent-app-header .eyebrow,.parent-home-section-heading span,.parent-app-section-heading span,.parent-child-attendance-highlight small,.parent-child-attendance-highlight strong,.parent-home-card-meta,.parent-home-view-link,.parent-payment-card dd:nth-child(6),.parent-payment-card dl div:nth-child(3) dd,.parent-home-info-card.payment>strong,.parent-home-info-card.notifications>strong,.parent-home-info-card.announcement>strong{color:#ff8a00!important}.parent-home-hero,.parent-activity-hero,.parent-wallet-card{background:linear-gradient(135deg,#1677ff 0% 55%,#ff8a00 55% 100%)!important;border-color:#ff8a00!important}.parent-child-attendance-highlight,.parent-home-status:first-child,.parent-home-info-card.payment,.parent-home-info-card.announcement,.parent-home-info-card.notifications,.parent-activity-card.attendance,.parent-activity-card.albums,.parent-payment-card,.parent-care-journal,.parent-care-only .parent-update-card{box-shadow:0 0 0 1px #ff8a00;background:var(--card)!important;border-color:#ff8a00!important}.theme-light .parent-child-attendance-highlight,.theme-light .parent-home-status:first-child,.theme-light .parent-home-info-card.payment,.theme-light .parent-home-info-card.announcement,.theme-light .parent-home-info-card.notifications,.theme-light .parent-activity-card.attendance,.theme-light .parent-activity-card.albums,.theme-light .parent-payment-card,.theme-light .parent-care-journal,.theme-light .parent-care-only .parent-update-card{background:#fff!important}.parent-home-status:first-child:before,.parent-home-info-card.payment:before,.parent-home-info-card.announcement:before,.parent-home-info-card.notifications:before,.parent-activity-card.attendance:before,.parent-activity-card.albums:before,.parent-payment-card:before,.parent-care-journal:before{background:#ff8a00!important}.parent-summary-icon.orange,.parent-summary-icon.sun,.parent-home-status:first-child .parent-summary-icon,.parent-home-info-card.payment .parent-summary-icon,.parent-home-info-card.announcement .parent-summary-icon,.parent-home-info-card.notifications .parent-summary-icon,.parent-notification-list button.payment .parent-summary-icon,.parent-wallet-card .parent-summary-icon,.parent-payment-card .accounts-status.pending,.parent-payment-card .accounts-status.overdue,.parent-payment-card .accounts-status.partially-paid,.parent-home-info-card.payment .parent-home-view-link,.parent-home-info-card.notifications .parent-home-view-link,.parent-wallet-card>div span:first-child,.parent-unread-indicator,.parent-care-recorded,.parent-bottom-nav em,.parent-status-dot.late,.parent-week-strip .late span,.parent-attendance-calendar .late i,.parent-home-hero .parent-child-switcher button.active,.parent-bottom-nav button.active,.parent-child-shortcuts button:hover,.parent-more-grid .parent-more-logout .parent-summary-icon{color:#fff!important;background:#ff8a00!important;border-color:#ff8a00!important}.parent-summary-icon,.parent-summary-icon.mint,.parent-summary-icon.berry,.parent-home-status:nth-child(2) .parent-summary-icon,.parent-home-story-card.care .parent-summary-icon,.parent-home-message-card .parent-summary-icon,.parent-home-info-card.documents .parent-summary-icon{color:#fff!important;background:#1677ff!important;border-color:#1677ff!important}.parent-attendance-orb{border:2px solid #ff8a00;background:conic-gradient(#ff8a00 0 258deg, #1677ff 258deg 360deg), var(--card)!important}.parent-care-timeline:before,.parent-attendance-progress span,.parent-progress-bar span{background:#ff8a00!important}.parent-bottom-nav button.active svg,.parent-bottom-nav button.active span,.parent-home-info-card.payment svg,.parent-home-info-card.announcement svg,.parent-home-info-card.notifications svg,.parent-home-status:first-child svg{color:#fff!important}.parent-home-status:hover,.parent-home-story-card:hover,.parent-home-info-card:hover,.parent-home-message-card:hover,.parent-teacher-row:hover,.parent-gallery-album:hover,.parent-more-grid button:hover,.parent-activity-card:hover{border-color:#ff8a00!important}.parent-app-shell{--canvas:#fff;--card:#fff;--text:#111;--white:#111;--muted:#1e3a5f;--border:#1677ff3d;background:#fffdf9 radial-gradient(at 0 0,#ffa65c29 0%,#ffc48714 30%,#0000 65%) top/100% 1120px no-repeat!important}.parent-main-content{background:0 0!important}.parent-app-header,.parent-home-status,.parent-home-story-card,.parent-home-info-card,.parent-home-message-card,.parent-content-panel,.parent-teacher-picker,.parent-chat-room,.parent-timeline-post,.parent-gallery-album,.parent-child-profile-page-card,.parent-attendance-app,.parent-care-journal,.parent-payment-card,.parent-more-grid button,.parent-more-profile,.parent-child-card,.parent-detail-card,.parent-school-info-card,.parent-child-profile-stats div,.parent-child-shortcuts button,.parent-attendance-calendar button,.parent-attendance-summary>div,.parent-bottom-sheet dl div,.parent-search,.parent-document-list article,.parent-gallery-grid article,.parent-main-content .account-settings-card{background:#fff!important;border-color:#1677ff3d!important;box-shadow:0 12px 32px #1677ff14,0 8px 22px #ff8a000f!important}.parent-child-attendance-highlight,.parent-home-status:first-child,.parent-home-info-card.payment,.parent-home-info-card.announcement,.parent-home-info-card.notifications,.parent-activity-card.attendance,.parent-activity-card.albums,.parent-payment-card,.parent-care-journal,.parent-care-only .parent-update-card{background:#fff!important;border-color:#ff8a00!important}.parent-topbar,.parent-bottom-nav,.parent-topbar .icon-button,.parent-topbar .topbar-user,.parent-child-switcher button,.parent-week-strip button,.parent-message-form input,.parent-chat-room .parent-message-form,.parent-chat-room .parent-message-thread,.parent-chat-bubble-wrap,.parent-conversation-list button,.parent-notification-list button,.parent-table td,.parent-table th{background:#fff!important;border-color:#1677ff3d!important}.parent-app,.parent-main-content .topbar-heading h1,.parent-main-content .account-settings-page{color:#111!important}.parent-main-content .account-settings-page p,.parent-main-content .account-settings-page label,.parent-topbar .profile-copy span,.parent-bottom-nav button,.parent-readonly-note,.parent-inline-empty,.parent-table td,.parent-table th{color:#1e3a5f!important}.parent-topbar .icon-button,.parent-topbar .topbar-user>svg,.parent-bottom-nav button svg,.parent-child-switcher button{color:#1677ff!important}.parent-topbar{box-sizing:border-box;border-radius:0 0 24px 24px;width:calc(100% - 64px);max-width:1060px;min-height:76px;margin:0 auto;padding:14px 24px;background:#fff!important;border:1px solid #1677ff2e!important;box-shadow:0 16px 36px #1677ff14,0 8px 24px #ff8a000d!important}.parent-topbar img{display:none!important}.parent-topbar .topbar-actions{gap:12px}.parent-topbar .icon-button,.parent-topbar .topbar-user{border-radius:16px}.parent-app-logo{max-width:195px;max-height:70px}.parent-home-logo{max-width:286px;max-height:100px}.parent-app-header-large-logo .parent-app-logo{max-width:254px;max-height:91px}@media (width<=1000px){.parent-topbar{border-radius:0 0 22px 22px;width:calc(100% - 48px);margin:0 auto;padding:12px 18px}.parent-app-header-large-logo .parent-app-logo{max-width:218px;max-height:78px}}@media (width<=700px){.parent-topbar{border-radius:0 0 20px 20px;width:calc(100% - 28px);min-height:68px;margin:0 auto;padding:10px 14px}.parent-app-logo{max-width:156px;max-height:57px}.parent-home-logo{max-width:247px;max-height:83px}.parent-app-header-large-logo .parent-app-logo{max-width:203px;max-height:74px}}.parent-app-header{text-align:center;justify-content:center!important}.parent-page-title-area{flex-direction:column;flex:100%;align-items:center;min-width:0;max-width:100%;display:flex}.parent-page-title-area>.parent-back-button{align-self:flex-start}.parent-page-title-group{justify-content:center;align-items:center;gap:18px;max-width:100%;display:inline-flex}.parent-page-title-group .parent-app-logo{flex:0 auto;margin:0}.parent-title-divider{color:#ff8a00;flex:none;font-size:30px;font-weight:800;line-height:1}.parent-page-title-group h2{margin:0}.parent-page-title-area>p,.parent-app-header>.parent-child-switcher{margin-left:auto;margin-right:auto}@media (width<=700px){.parent-page-title-group{gap:12px}.parent-title-divider{font-size:24px}}.parent-dashboard-hero{grid-template-columns:minmax(0,1fr)}.parent-dashboard-overview-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.parent-child-card-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px;display:grid}.parent-child-simple-card{color:var(--text);cursor:pointer;text-align:left;border-radius:20px;flex-direction:column;align-items:flex-start;gap:9px;min-height:260px;padding:20px;transition:border-color .18s,box-shadow .18s,transform .18s;display:flex;background:#fff!important;border:1px solid #0f172a1a!important;box-shadow:0 4px 16px #0f172a0a!important}.parent-child-simple-card:hover{transform:translateY(-2px);border-color:#0f172a33!important;box-shadow:0 6px 20px #0f172a12!important}.parent-child-simple-card.active{border-color:#0f172a33!important;box-shadow:0 6px 20px #0f172a12!important}.parent-child-simple-card .accounts-status{margin-top:8px}.parent-child-simple-card strong{color:var(--text);margin-top:4px;font-size:20px;line-height:1.2}.parent-child-simple-card small,.parent-child-simple-card p{color:var(--muted);margin:0;font-size:12px;line-height:1.45}.parent-child-view-link{color:#ff8a00;align-items:center;gap:5px;margin-top:auto;font-size:12px;font-weight:900;display:inline-flex}.parent-child-profile-backdrop{--canvas:#fff;--card:#fff;--text:#111827;--muted:#475569;--border:#0f172a1a;--white:#111827;z-index:10040;align-items:stretch;padding:24px}.parent-child-page{--canvas:#fff;--card:#fff;--text:#111827;--muted:#475569;--border:#0f172a1a}.parent-child-profile-modal{background:var(--card);border:1px solid var(--border);color:var(--text);border-radius:24px;flex-direction:column;width:100%;max-width:980px;max-height:min(92vh,860px);margin:auto;padding:24px;animation:.22s both parentProfileModalIn;display:flex;overflow-y:auto;box-shadow:0 28px 88px #02081757}.parent-child-profile-modal>header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;padding-bottom:18px;display:flex}.parent-child-profile-modal-hero{align-items:center;gap:14px;min-width:0;display:flex}.parent-child-profile-modal-hero h3{color:var(--text);letter-spacing:0;margin:3px 0;font-size:26px}.parent-child-profile-modal-hero p{color:var(--muted);margin:0;font-size:12px}.parent-child-profile-modal .icon-button,.parent-child-profile-modal .parent-back-button{color:#374151;background:#fff;border-color:#0f172a1f}.parent-child-profile-modal .eyebrow{color:#ff8a00}.parent-child-profile-modal-hero h3,.parent-profile-detail-section dd{overflow-wrap:anywhere}.parent-profile-detail-section{border-bottom:1px solid var(--border);padding:18px 0}.parent-child-profile-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.parent-child-profile-actions p{color:#166534;margin:0;font-size:13px}.parent-child-profile-modal .parent-child-profile-actions .secondary-button{border-color:var(--border);color:#374151;background:#fff}.parent-child-edit-form>p{color:var(--muted);font-size:13px;line-height:1.5}.parent-child-edit-form label{margin-bottom:8px;font-size:13px;font-weight:700;display:block}.parent-child-edit-form input,.parent-child-edit-form textarea{border:1px solid var(--border);box-sizing:border-box;color:var(--text);font:inherit;background:#fff;border-radius:8px;width:100%;max-width:100%;padding:12px}.parent-child-edit-form input:focus-visible,.parent-child-edit-form textarea:focus-visible{outline-offset:2px;outline:2px solid #ff8a00}.parent-child-edit-form .parent-child-edit-error{color:#b91c1c}.parent-child-edit-form .parent-child-profile-actions{margin-top:16px}.parent-child-edit-form fieldset{border:1px solid var(--border);border-radius:12px;min-width:0;margin:18px 0;padding:16px}.parent-child-edit-form legend{padding:0 6px;font-size:14px;font-weight:700}.parent-child-edit-form fieldset>p{color:var(--muted);margin:0 0 14px;font-size:12px;line-height:1.6}.parent-child-edit-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.parent-child-edit-field{min-width:0}.parent-child-edit-field.full-width{grid-column:1/-1}.parent-child-edit-form textarea{resize:vertical}@media (width<=700px){.parent-child-edit-grid{grid-template-columns:1fr}}.parent-profile-detail-section:last-child{border-bottom:0}.parent-profile-detail-section h4{color:var(--text);margin:0 0 13px;font-size:14px}.parent-profile-detail-section dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;display:grid}.parent-profile-detail-section dl div,.parent-child-summary-grid article{background:#fff;border:1px solid #0f172a14;border-radius:8px;padding:13px}.parent-profile-detail-section dt,.parent-child-summary-grid small{color:var(--muted);text-transform:uppercase;font-size:10px;font-weight:800}.parent-profile-detail-section dd{color:var(--text);margin:5px 0 0;font-size:13px;font-weight:700;line-height:1.45}.parent-child-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.parent-child-summary-section{margin-top:24px}.parent-child-summary-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;display:flex}.parent-child-summary-heading p{color:var(--muted);margin:5px 0 0;font-size:12px;line-height:1.45}.parent-summary-child-tabs{flex-wrap:wrap;justify-content:flex-end;gap:7px;display:flex}.parent-summary-child-tabs button{background:var(--card);border:1px solid var(--border);color:var(--muted);cursor:pointer;border-radius:999px;min-height:34px;padding:0 11px;font-size:11px;font-weight:800}.parent-summary-child-tabs button.active{color:#fff;background:#ff8a00;border-color:#ff8a00}.parent-child-summary-grid article{flex-direction:column;gap:8px;min-height:154px;display:flex}.parent-child-summary-grid strong{color:var(--text);font-size:17px;line-height:1.25}.parent-child-summary-grid p{color:var(--muted);margin:0;font-size:12px;line-height:1.5}.parent-app .parent-date-reset{color:#111827;cursor:pointer;font:inherit;background:#fff;border:1px solid #0f172a1f;border-radius:8px;justify-content:center;align-items:center;gap:7px;min-height:40px;padding:8px 12px;font-size:12px;font-weight:600;display:inline-flex}.parent-app .parent-date-reset:hover,.parent-app .parent-date-reset:focus-visible{color:#ff8a00}.parent-content-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;max-width:100%;margin-left:auto;display:flex}.parent-content-actions .filter-control{width:auto}.parent-content-actions .filter-trigger{min-height:40px}.parent-heading-actions-row,.parent-care-toolbar{flex-flow:wrap;justify-content:space-between;align-items:center;gap:14px;margin-bottom:18px;display:flex}.parent-heading-actions-row>div:first-child{min-width:0}.parent-heading-actions-row>.parent-app-section-heading,.parent-timeline-albums>.parent-heading-actions-row{margin-bottom:0}.parent-care-toolbar>.parent-search{flex:280px;min-width:min(240px,100%);max-width:none;margin-bottom:0}.parent-heading-actions-row .parent-content-actions,.parent-care-toolbar .parent-content-actions{flex:none}.parent-document-page .parent-content-panel{box-shadow:none!important;border-color:#0f172a1a!important}.parent-document-count{color:#475569;margin:14px 0 24px;font-size:12px}.parent-document-category+.parent-document-category{margin-top:26px}.parent-document-category h3{color:#111827;align-items:center;gap:10px;margin:0 0 8px;font-size:14px;display:flex}.parent-document-category h3 span{color:#64748b;font-size:12px;font-weight:400}.parent-document-page .parent-document-list{gap:0}.parent-document-page .parent-document-list article{border-radius:0;grid-template-columns:auto minmax(0,1fr) auto;padding:16px 0;box-shadow:none!important;border:0!important;border-bottom:1px solid #0f172a14!important}.parent-document-copy{overflow-wrap:anywhere;min-width:0}.parent-document-page .parent-document-copy small{color:#475569;margin-top:4px;line-height:1.5;display:block}.parent-document-action{color:#fff;background:#ff8a00;border-radius:8px;align-items:center;gap:6px;min-height:40px;padding:0 12px;font-size:12px;font-weight:600;text-decoration:none;display:inline-flex}.parent-document-unavailable{color:#64748b;font-size:11px}.parent-profile-summary-backdrop{z-index:10040;padding:16px}.parent-profile-summary-modal{--text:#111827;--muted:#475569;--white:#fff;color:#111827;background:#fff;border-radius:20px;width:100%;max-width:420px;max-height:calc(100dvh - 32px);padding:28px;animation:.18s both parentProfileModalIn;position:relative;overflow-y:auto;box-shadow:0 20px 70px #0f172a33}.parent-summary-close{color:#475569;cursor:pointer;background:#fff;border:0;border-radius:8px;justify-content:center;align-items:center;width:40px;height:40px;display:flex;position:absolute;top:12px;right:12px}.parent-summary-avatar{color:#fff;background:#ff8a00;border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;margin-bottom:20px;display:flex;overflow:hidden}.parent-summary-avatar img{object-fit:cover;width:100%;height:100%}.parent-profile-summary-modal .eyebrow{color:#ff8a00}.parent-profile-summary-modal h3{overflow-wrap:anywhere;margin:0 0 22px;font-size:22px;line-height:1.3}.parent-profile-summary-modal dl{gap:16px;margin:0 0 24px;display:grid}.parent-profile-summary-modal dt{color:#475569;font-size:11px}.parent-profile-summary-modal dd{overflow-wrap:anywhere;margin:4px 0 0;font-size:13px;line-height:1.5}.parent-profile-summary-modal .primary-button{box-shadow:none;color:#fff;background:#ff8a00;border:0;justify-content:center;width:100%}.parent-profile-logout{color:#475569;cursor:pointer;font:inherit;background:0 0;border:0;justify-content:center;align-items:center;gap:6px;width:100%;min-height:40px;margin-top:10px;font-size:12px;display:flex}@media (width<=480px){.parent-page-title-group{flex-direction:column;gap:10px}.parent-title-divider{display:none}.parent-document-page .parent-document-list article{grid-template-columns:auto minmax(0,1fr)}.parent-document-action,.parent-document-unavailable{grid-column:2;justify-self:start}}@media (prefers-reduced-motion:reduce){.parent-profile-summary-modal{animation:none}}@keyframes parentProfileModalIn{0%{opacity:0;transform:translateY(10px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width<=1000px){.parent-dashboard-overview-grid,.parent-child-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=700px){.parent-dashboard-overview-grid,.parent-child-card-grid,.parent-child-summary-grid,.parent-profile-detail-section dl{grid-template-columns:1fr}.parent-child-profile-backdrop{padding:0}.parent-child-profile-modal{height:100dvh;min-height:0;max-height:100dvh;padding:max(18px, env(safe-area-inset-top)) max(18px, env(safe-area-inset-right)) max(18px, env(safe-area-inset-bottom)) max(18px, env(safe-area-inset-left));border-radius:0}.parent-child-profile-modal>header,.parent-child-profile-modal-hero{align-items:flex-start}.parent-child-profile-modal-hero{flex-direction:column}.parent-child-summary-heading{flex-direction:column;align-items:flex-start}.parent-summary-child-tabs{justify-content:flex-start;width:100%}.parent-child-profile-modal-hero h3{font-size:22px}}.sidebar-nav{padding-right:4px;overflow-y:auto}.operations-page{color:var(--text)}.leave-application-page{gap:16px}.leave-hero{background:radial-gradient(circle at 96% 0%, #1677ff1f, transparent 34%), var(--card);border:1px solid var(--border);border-radius:22px;padding:24px}.leave-hero .primary-button span{font-size:18px;line-height:1}.leave-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:0}.leave-summary-card{min-height:126px;position:relative;overflow:hidden}.leave-summary-card small,.leave-policy-note{color:var(--muted);font-size:11px;line-height:1.45}.leave-policy-note{background:#94a3b814;border-radius:12px;align-items:flex-start;gap:9px;max-width:860px;margin:14px 0 20px;padding:10px 12px;display:flex}.leave-policy-note svg{color:#8abbff;flex:none;margin-top:1px}.leave-policy-note span{min-width:0}.leave-notice{color:#86efac;background:#22c55e1c;border-radius:12px;align-items:center;gap:8px;max-width:min(100%,520px);margin:0 0 18px;padding:10px 12px;font-size:12px;font-weight:700;line-height:1.45;display:inline-flex;box-shadow:inset 3px 0 #22c55e73}.leave-notice svg{flex:none}.leave-notice.warning{color:#ffbd68;background:#ff8a001a;box-shadow:inset 3px 0 #ff8a006b}.leave-validation-message{color:#8abbff;background:#1677ff17;border:1px solid #1677ff33;border-radius:12px;padding:11px 13px;font-size:12px}.leave-history-panel{margin-top:0}.leave-toolbar{grid-template-columns:minmax(260px,1fr) minmax(160px,.45fr) minmax(140px,.35fr) minmax(170px,.42fr);align-items:end;gap:10px;margin:16px 0 18px;display:grid}.leave-form-grid input,.leave-form-grid textarea,.leave-reject-box textarea{background:var(--canvas);border:1px solid var(--border);color:var(--text);border-radius:11px;outline:0;width:100%;min-height:42px;padding:0 11px;font-size:12px}.leave-toolbar .custom-dropdown,.leave-toolbar .custom-date-picker,.leave-form-grid .custom-dropdown,.leave-form-grid .custom-date-picker{width:100%;min-width:0}.leave-toolbar .custom-dropdown-trigger,.leave-toolbar .custom-date-trigger{min-height:42px}.leave-form-grid .custom-dropdown-label{color:var(--muted);font-size:11px;font-weight:700}.leave-date-filter{align-items:center;gap:7px;min-width:0;display:flex}.leave-date-filter .custom-date-picker{flex:auto}.leave-date-filter>button{color:var(--muted);cursor:pointer;background:0 0;border:0;flex:none;padding:8px 2px;font-size:11px;font-weight:700}.leave-date-filter>button:hover,.leave-date-filter>button:focus-visible{color:#8abbff;outline:0}.leave-form-grid textarea,.leave-reject-box textarea{resize:vertical;min-height:96px;padding:11px}.leave-form-grid input:focus,.leave-form-grid textarea:focus,.leave-reject-box textarea:focus{border-color:#1677ff8c;box-shadow:0 0 0 3px #1677ff1a}.leave-table-wrap{overflow-x:auto}.leave-table{border-collapse:collapse;width:100%;min-width:840px}.leave-table th,.leave-table td{border-top:1px solid var(--border);color:var(--muted);text-align:left;vertical-align:middle;padding:14px 10px;font-size:12px}.leave-table th{letter-spacing:.08em;text-transform:uppercase;border-top:0;font-size:10px;font-weight:700}.leave-table td strong,.leave-table td small{display:block}.leave-table td strong,.leave-mobile-card strong,.leave-detail-grid strong{color:var(--text);font-weight:700}.leave-table td small{color:var(--muted);margin-top:4px;font-size:10px}.leave-reference-button{appearance:none;color:#8abbff;cursor:pointer;font:inherit;text-align:left;text-underline-offset:3px;background:0 0;border:0;padding:0;font-weight:800;-webkit-text-decoration:underline #0000;text-decoration:underline #0000;transition:color .18s,text-decoration-color .18s;display:inline-block}.leave-reference-button:hover,.leave-reference-button:focus-visible{color:#dbeafe;outline:0;text-decoration-color:currentColor}.leave-reference-button:focus-visible{border-radius:6px;box-shadow:0 0 0 3px #1677ff2e}.leave-status{border-radius:999px;padding:6px 9px;font-size:10px;font-weight:800;display:inline-flex}.leave-status.pending{color:#ffb35c;background:#ff8a0024}.leave-status.approved{color:#84b7ff;background:#1677ff24}.leave-status.rejected{color:#fca5a5;background:#ef444421}.leave-status.cancelled{color:var(--muted);background:#94a3b821}.leave-card-list{display:none}.leave-mobile-card{border:1px solid var(--border);border-radius:15px;padding:14px}.leave-mobile-card header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.leave-mobile-card span,.leave-mobile-card p{color:var(--muted);font-size:12px}.leave-modal-backdrop{z-index:120;background:#020817ad;justify-content:center;align-items:center;padding:20px;animation:.18s both leaveOverlayIn;display:flex;position:fixed;inset:0}.leave-modal{background:var(--card);border:1px solid var(--border);color:var(--text);border-radius:22px;width:100%;max-width:720px;max-height:min(90vh,820px);padding:24px;animation:.2s both leaveModalIn;overflow-y:auto;box-shadow:0 26px 80px #02081757}.leave-modal>header,.leave-modal>footer{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.leave-modal>header h3{letter-spacing:-.03em;margin:0;font-size:22px}.leave-modal>header p{color:var(--muted);margin:7px 0 0;font-size:12px;line-height:1.55}.leave-modal>footer{border-top:1px solid var(--border);justify-content:flex-end;margin-top:20px;padding-top:16px}.leave-modal>footer .secondary-button{margin:0}.leave-modal .danger{color:#fca5a5}.leave-form-grid,.leave-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:20px;display:grid}.leave-form-grid label,.leave-dropdown-field,.leave-reject-box{color:var(--muted);flex-direction:column;gap:7px;font-size:11px;font-weight:700;display:flex}.leave-form-grid small,.leave-dropdown-field small,.leave-reject-box small{color:#fca5a5;font-size:11px}.leave-form-grid em{color:#8abbff;font-size:11px;font-style:normal}.leave-file-input{display:none}.leave-upload-control{border:1px solid var(--border);background:#94a3b80f;border-radius:13px;align-items:center;gap:10px;min-height:72px;padding:9px;transition:background-color .18s,border-color .18s,box-shadow .18s;display:flex}.leave-upload-control:hover,.leave-upload-control:focus-within{background:#1677ff12;border-color:#1677ff5c;box-shadow:0 0 0 3px #1677ff14}.leave-upload-control.invalid{background:#ef444414;border-color:#ef444457;box-shadow:0 0 0 3px #ef444414}.leave-upload-control.has-file{background:#22c55e14;border-color:#22c55e3d}.leave-upload-button{color:var(--text);cursor:pointer;text-align:left;background:0 0;border:0;flex:auto;align-items:center;gap:11px;min-width:0;padding:4px;display:flex}.leave-upload-button>svg{color:#8abbff;background:#1677ff21;border-radius:10px;flex:none;width:36px;height:36px;padding:9px}.leave-upload-button span{flex-direction:column;gap:3px;min-width:0;display:flex}.leave-upload-button strong,.leave-upload-button small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.leave-upload-button strong{color:var(--text);font-size:12px;font-weight:750}.leave-upload-button small{color:var(--muted);font-size:10px;font-weight:650}.leave-upload-button:focus-visible,.leave-upload-remove:focus-visible{outline:0}.leave-upload-remove{color:#fca5a5;cursor:pointer;background:#ef44441a;border:0;border-radius:10px;flex:none;justify-content:center;align-items:center;width:36px;height:36px;transition:background-color .18s,color .18s;display:flex}.leave-upload-remove:hover,.leave-upload-remove:focus-visible{color:#fecaca;background:#ef44442e}.leave-duration-preview,.leave-detail-grid div{border:1px solid var(--border);background:#94a3b80f;border-radius:13px;flex-direction:column;gap:7px;padding:12px;display:flex}.leave-duration-preview span,.leave-detail-grid span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:700}.leave-duration-preview strong{color:var(--text)}.leave-reason-field,.leave-upload-field,.leave-detail-wide,.leave-reject-box{grid-column:1/-1}.leave-reject-box{margin-top:16px}.theme-light .leave-hero,.theme-light .leave-modal,.theme-light .leave-form-grid input,.theme-light .leave-form-grid textarea,.theme-light .leave-reject-box textarea{background:#fff}.theme-light .leave-upload-control{background:#f8fafc}.theme-light .leave-upload-control:hover,.theme-light .leave-upload-control:focus-within{background:#1677ff0d}.theme-light .leave-upload-control.has-file{background:#16a34a12}.theme-light .leave-reference-button{color:#0f55b8}.theme-light .leave-policy-note{background:#64748b14}.theme-light .leave-notice{color:#15803d;background:#16a34a1a}.theme-light .leave-notice.warning{color:#b45309;background:#d977061a}.theme-light .leave-reference-button:hover,.theme-light .leave-reference-button:focus-visible{color:#083f91}.theme-light .leave-duration-preview,.theme-light .leave-detail-grid div{background:#f8fafc}@keyframes leaveOverlayIn{0%{opacity:0}to{opacity:1}}@keyframes leaveModalIn{0%{opacity:0;transform:translateY(14px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width<=920px){.leave-summary-grid,.leave-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.leave-search{grid-column:1/-1}}@media (width<=680px){.leave-hero,.leave-modal>header,.leave-modal>footer{flex-direction:column;align-items:stretch}.leave-summary-grid,.leave-toolbar,.leave-form-grid,.leave-detail-grid{grid-template-columns:1fr}.leave-table-wrap{display:none}.leave-card-list{flex-direction:column;gap:10px;display:flex}.leave-notice,.leave-policy-note{width:100%;max-width:none}.leave-notice{align-items:flex-start}.leave-modal{border-radius:18px;padding:18px}.leave-modal>footer button{justify-content:center;width:100%}}.operations-page-header{align-items:center}.operation-permission{color:#8cbaff;white-space:nowrap;background:#1677ff1f;border:1px solid #1677ff38;border-radius:999px;align-items:center;gap:7px;min-height:38px;padding:0 13px;font-size:12px;font-weight:700;display:inline-flex}.theme-light .operation-permission{color:#0f55b8;background:#1677ff14}.operations-summary-grid{margin-bottom:20px}.operations-panel{overflow:hidden}.operation-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:20px;display:grid}.operation-card{animation:.35s both teacherCardReveal;animation-delay:var(--stagger-delay,0s);background:radial-gradient(circle at 100% 0,#1677ff24,#0000 38%),#1118278f;border:1px solid #1677ff2e;border-radius:16px;min-height:168px;padding:17px}.theme-light .operation-card{background:radial-gradient(circle at 100% 0,#1677ff14,#0000 38%),#fff;border-color:#1677ff21;box-shadow:0 10px 28px #0f172a0b}.operation-card-top{justify-content:space-between;align-items:center;gap:10px;margin-bottom:16px;display:flex}.operation-card-top small{color:var(--muted);font-size:11px;font-weight:700}.operation-card h3{color:var(--text);margin:0 0 8px;font-size:16px;line-height:1.25}.operation-card p{color:var(--muted);margin:0;font-size:12px;line-height:1.6}.operation-meta{flex-wrap:wrap;align-items:center;gap:7px;margin-top:15px;display:flex}.operation-meta span{color:#ff8a00;background:#ff8a001f;border:1px solid #ff8a0038;border-radius:999px;padding:5px 8px;font-size:10px;font-weight:700}.manager-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:22px}.manager-summary-grid .directory-stat{min-height:118px}.manager-summary-grid .directory-stat small{color:var(--muted);font-size:11px;line-height:1.45}.manager-dashboard-grid{align-items:stretch}.operation-mini-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:18px;display:grid}.operation-mini-stat{background:#1677ff1f;border:1px solid #1677ff38;border-radius:14px;min-height:92px;padding:15px}.operation-mini-stat.orange{background:#ff8a0024;border-color:#ff8a0047}.operation-mini-stat span{color:var(--muted);margin-bottom:10px;font-size:11px;font-weight:700;display:block}.operation-mini-stat strong{color:var(--text);font-size:28px}.theme-light .operation-card,.theme-light .operation-mini-stat{background-color:#fff}.staff-directory-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.staff-directory-row{grid-template-columns:1.45fr 1fr 1.15fr .9fr .8fr 1fr;min-width:920px}.staff-attendance-head,.staff-attendance-row{grid-template-columns:1.2fr 1.08fr 1fr 1fr .9fr 1.2fr}.staff-attendance-list{margin-top:0}.staff-attendance-row{min-height:96px}.staff-attendance-row .attendance-time-cell strong{white-space:normal}.filter-panel.my-attendance-filter-panel{color:#f8fafc!important;background:#0f172a!important;border-color:#94a3b83d!important;box-shadow:0 24px 58px #02081780!important}.filter-panel.my-attendance-filter-panel header,.filter-panel.my-attendance-filter-panel footer{border-color:#94a3b82e!important}.filter-panel.my-attendance-filter-panel header strong,.filter-panel.my-attendance-filter-panel .filter-active-chip{color:#f8fafc!important}.filter-panel.my-attendance-filter-panel header span,.filter-panel.my-attendance-filter-panel .custom-dropdown-label{color:#94a3b8!important}.filter-panel.my-attendance-filter-panel header button,.filter-panel.my-attendance-filter-panel .filter-clear-button{color:#cbd5e1!important;background:#0f172aeb!important;border-color:#94a3b83d!important}.filter-panel.my-attendance-filter-panel header button:hover,.filter-panel.my-attendance-filter-panel header button:focus-visible,.filter-panel.my-attendance-filter-panel .filter-clear-button:hover:not(:disabled),.filter-panel.my-attendance-filter-panel .filter-clear-button:focus-visible:not(:disabled){color:#fff!important;background:#1e293bf5!important;border-color:#8abbff6b!important}.filter-panel.my-attendance-filter-panel .custom-dropdown-trigger,.filter-panel.my-attendance-filter-panel .custom-dropdown.open .custom-dropdown-trigger{color:#f8fafc!important;background:#0f172af5!important;border-color:#94a3b83d!important;box-shadow:inset 0 1px #ffffff0a!important}.filter-panel.my-attendance-filter-panel .custom-dropdown-value,.filter-panel.my-attendance-filter-panel .custom-dropdown-trigger>span{color:#f8fafc!important}.filter-panel.my-attendance-filter-panel .custom-dropdown-chevron{color:#94a3b8!important}.custom-dropdown-menu-portal.my-attendance-filter-dropdown{color:#f8fafc!important;background:#0f172a!important;border-color:#94a3b83d!important;box-shadow:0 24px 58px #02081780!important}.custom-dropdown-menu-portal.my-attendance-filter-dropdown .custom-dropdown-option{color:#e2e8f0!important;background:#0f172a!important}.custom-dropdown-menu-portal.my-attendance-filter-dropdown .custom-dropdown-option:hover,.custom-dropdown-menu-portal.my-attendance-filter-dropdown .custom-dropdown-option.active{color:#fff!important;background:#162238!important}.custom-dropdown-menu-portal.my-attendance-filter-dropdown .custom-dropdown-option.selected{color:#fff!important;background:#1677ff2e!important}.filter-panel-backdrop{z-index:180;background:#0208179e;animation:.16s both teacher-popup-in;position:fixed;inset:0}.filter-panel.teacher-daily-care-filter-panel{overscroll-behavior:contain;z-index:181;border-radius:18px;width:min(400px,100vw - 32px);max-height:calc(100dvh - 32px);padding:18px;animation:.16s both teacher-popup-in;inset:50% auto auto 50%;overflow-y:auto;transform:translate(-50%,-50%)}.filter-panel.teacher-daily-care-filter-panel.is-closing,.filter-panel-backdrop.is-closing{animation:.16s both teacher-popup-out}.filter-panel.teacher-daily-care-filter-panel .custom-dropdown-trigger:hover,.filter-panel.teacher-daily-care-filter-panel .custom-dropdown-trigger:focus-visible{border-color:#8abbff!important;box-shadow:0 0 0 3px #1677ff1f!important}.custom-dropdown-menu-portal.teacher-daily-care-filter-dropdown .custom-dropdown-option{border-color:#0000!important}.custom-dropdown-menu-portal.teacher-daily-care-filter-dropdown .custom-dropdown-check{color:#8abbff}.custom-dropdown-menu-portal.teacher-daily-care-filter-dropdown .custom-dropdown-empty{color:#94a3b8}@keyframes teacher-popup-in{0%{opacity:0}to{opacity:1}}@keyframes teacher-popup-out{0%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion:reduce){.filter-panel.teacher-daily-care-filter-panel,.filter-panel-backdrop,.attendance-lock-modal.my-attendance-detail-modal{animation:none}}.attendance-status-badge.not-checked-in{color:var(--muted);background:#94a3b821}.attendance-status-badge.checked-out{color:#8ce0aa;background:#48bb7821}.attendance-status-badge.checked-in{color:#8abbff;background:#1677ff1f}.teacher-attendance-summary-heading{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px}.teacher-attendance-period-controls{flex-wrap:wrap;gap:10px;width:310px;max-width:100%;margin-left:auto;display:flex}.teacher-attendance-period-controls .custom-dropdown{flex:140px;min-width:0}.teacher-status-pill{letter-spacing:.01em;border-radius:999px;align-items:center;gap:6px;padding:7px 10px;font-size:11px;font-weight:800;display:inline-flex}.teacher-status-pill.checked-in,.teacher-status-pill.present{color:#8abbff;background:#1677ff1f}.teacher-status-pill.checked-out,.teacher-status-pill.medical-leave{color:#8ce0aa;background:#48bb7821}.teacher-status-pill.late{color:#ffc06e;background:#ff8a0021}.teacher-status-pill.not-checked-in{color:var(--muted);background:#94a3b821}.teacher-today-attendance-card{grid-template-columns:minmax(0,1fr) minmax(230px,.34fr);align-items:stretch;gap:20px;margin-bottom:16px;padding:28px;display:grid;position:relative;overflow:hidden}.teacher-today-attendance-card:before{background:linear-gradient(180deg, var(--blue), #1677ff2e);content:"";border-radius:999px;width:4px;height:calc(100% - 42px);position:absolute;top:21px;left:0}.teacher-today-attendance-left{flex-direction:column;min-width:0;display:flex}.teacher-today-status-row{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px;display:flex}.teacher-today-status-row>span:not(.attendance-status-badge){color:var(--muted);font-size:12px;font-weight:700}.teacher-today-attendance-left h3{color:var(--text);letter-spacing:-.045em;margin:0;font-family:Space Grotesk,sans-serif;font-size:clamp(24px,3.2vw,34px);line-height:1.05}.teacher-today-attendance-left p{color:var(--muted);max-width:560px;margin:10px 0 0;font-size:13px;line-height:1.65}.teacher-today-attendance-tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:24px;display:grid}.teacher-today-attendance-tiles span{border:1px solid var(--border);background:#0f172a38;border-radius:12px;flex-direction:column;gap:6px;min-width:0;min-height:82px;padding:14px;display:flex}.teacher-today-action-panel{border:1px solid var(--border);background:#0f172a47;border-radius:14px;flex-direction:column;justify-content:space-between;align-self:stretch;gap:18px;min-width:0;padding:18px;display:flex}.teacher-today-action-panel>span{flex-direction:column;gap:6px;display:flex}.teacher-today-action-panel>span strong{color:var(--text);letter-spacing:-.04em;font-family:Space Grotesk,sans-serif;font-size:32px;line-height:1}.teacher-today-action-panel>span em{color:var(--muted);font-size:12px;font-style:normal;line-height:1.45}.teacher-today-note-field{flex-direction:column;gap:8px;display:flex}.teacher-today-note-field span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:800}.teacher-today-note-field textarea{border:1px solid var(--border);color:var(--text);font:inherit;resize:vertical;background:#0f172a47;border-radius:12px;outline:0;width:100%;min-height:104px;padding:11px 12px;font-size:12px;line-height:1.5}.teacher-today-note-field textarea::placeholder{color:#94a3b8b8}.teacher-today-note-field textarea:focus{border-color:#1677ff7a;box-shadow:0 0 0 3px #1677ff1f}.teacher-today-note-field textarea:disabled{cursor:default;opacity:.62}.teacher-today-action-panel .primary-button,.teacher-today-action-panel .secondary-button{justify-content:center;width:100%;margin-top:0}.teacher-today-action-panel button:disabled{cursor:default;opacity:.68;transform:none}.teacher-today-attendance-tiles span{flex-direction:column;gap:4px;min-width:0;display:flex}.teacher-today-attendance-tiles small,.teacher-today-action-panel small{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:800}.teacher-today-attendance-tiles strong{color:var(--text);font-size:13px;line-height:1.35}.teacher-attendance-summary-grid{margin-bottom:18px;grid-template-columns:repeat(4,minmax(0,1fr))!important}.teacher-attendance-stat-card{min-height:138px}.teacher-attendance-stat-card .stat-value{white-space:nowrap}.teacher-attendance-history-panel{min-width:0;padding-bottom:12px}.teacher-attendance-history-heading{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:20px}.teacher-attendance-count-pill{border:1px solid var(--border);color:var(--muted);white-space:nowrap;background:#94a3b814;border-radius:999px;padding:6px 10px;font-size:11px;font-weight:800;display:inline-flex}.teacher-attendance-history-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin-bottom:18px;display:flex}.teacher-history-period{color:var(--muted);align-items:center;gap:8px;font-size:12px;font-weight:600;display:inline-flex}.teacher-history-status-filter{flex:0 220px;min-width:0;max-width:100%}.teacher-attendance-history-table{width:100%;overflow-x:auto}.teacher-attendance-history-table:focus-visible{outline:2px solid var(--blue);outline-offset:3px}.teacher-attendance-history-table table{border-collapse:collapse;color:var(--text);table-layout:fixed;text-align:left;width:100%;min-width:840px;font-size:12px}.teacher-attendance-history-table thead th{border-bottom:1px solid var(--border);border-top:1px solid var(--border);color:var(--muted);text-transform:uppercase;white-space:nowrap;background:#94a3b80f;padding:12px 14px;font-size:10px;font-weight:700}.teacher-attendance-history-table thead th:first-child{width:20%}.teacher-attendance-history-table thead th:nth-child(2),.teacher-attendance-history-table thead th:nth-child(3){width:12%}.teacher-attendance-history-table thead th:nth-child(4){width:17%}.teacher-attendance-history-table thead th:nth-child(5){width:25%}.teacher-attendance-history-table thead th:nth-child(6){width:14%}.teacher-attendance-history-row>th,.teacher-attendance-history-row>td{border-bottom:1px solid var(--border);vertical-align:middle;padding:16px 14px;font-weight:400}.teacher-attendance-history-row:last-child>th,.teacher-attendance-history-row:last-child>td{border-bottom:0}.teacher-attendance-history-row:hover{background:#1677ff09}.teacher-history-date-button,.teacher-history-date-cell small,.teacher-history-note-cell small{display:block}.teacher-history-date-button{color:var(--text);cursor:pointer;font:inherit;text-align:left;text-underline-offset:3px;background:0 0;border:0;padding:0;font-size:12px;font-weight:600;-webkit-text-decoration:underline #94a3b880;text-decoration:underline #94a3b880;transition:color .16s,text-decoration-color .16s}.teacher-history-date-button:hover,.teacher-history-date-button:focus-visible{color:var(--blue);text-decoration-color:currentColor}.teacher-history-date-cell small,.teacher-history-note-cell small{color:var(--muted);margin-top:4px;font-size:11px;line-height:1.5}.teacher-history-time-cell{font-variant-numeric:tabular-nums;white-space:nowrap}.teacher-history-note-preview{-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;line-height:1.5;display:-webkit-box;overflow:hidden}.teacher-history-no-note{color:var(--muted)}.teacher-history-note-cell small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.teacher-history-detail-button{white-space:nowrap;justify-content:center;width:fit-content;min-height:34px;margin-top:0;padding:0 11px}.teacher-attendance-empty-state{border-top:1px solid var(--border);color:var(--muted);gap:10px;min-height:240px;padding:32px 16px}.teacher-attendance-empty-state h4{color:var(--text);margin:2px 0 0;font-size:14px}.teacher-attendance-empty-state p{max-width:360px;margin:0;font-size:12px;line-height:1.6}.teacher-attendance-empty-state .secondary-button{margin-top:6px}.teacher-attendance-action-modal{max-width:min(440px,100vw - 32px);padding-top:26px}.teacher-attendance-note-field{text-align:left;flex-direction:column;gap:8px;margin:18px 0;display:flex}.teacher-attendance-note-field span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:800}.teacher-attendance-note-field textarea{border:1px solid var(--border);color:var(--text);font:inherit;resize:vertical;background:#0f172a61;border-radius:12px;outline:0;width:100%;min-height:104px;padding:12px;line-height:1.5}.teacher-attendance-note-field textarea:focus{border-color:#1677ff7a;box-shadow:0 0 0 3px #1677ff1f}.attendance-toast-close{color:currentColor;cursor:pointer;opacity:.74;background:0 0;border:0;justify-content:center;align-items:center;margin-left:4px;padding:2px;display:inline-flex}.attendance-toast-close:hover,.attendance-toast-close:focus-visible{opacity:1}.theme-light .teacher-today-attendance-card{background:#fff}.theme-light .teacher-today-attendance-tiles span,.theme-light .teacher-today-action-panel,.theme-light .teacher-today-note-field textarea,.theme-light .teacher-attendance-note-field textarea{background:#f8fafc}.my-attendance-detail-list{border-bottom:1px solid var(--border);border-top:1px solid var(--border);grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 18px;padding:16px 0;display:grid}.my-attendance-detail-layer{z-index:10030;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.my-attendance-detail-layer .attendance-lock-overlay{z-index:0;position:absolute}.my-attendance-detail-modal{overscroll-behavior:contain;z-index:1;width:100%;max-height:min(620px,100dvh - 32px);padding-top:26px;animation-name:teacher-popup-in;position:relative;inset:auto;overflow-y:auto;transform:none}.my-attendance-modal-close{color:var(--muted);cursor:pointer;background:#94a3b81a;border:1px solid #94a3b82e;border-radius:999px;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex;position:absolute;top:18px;right:18px}.my-attendance-modal-close:hover,.my-attendance-modal-close:focus-visible{color:var(--text);background:#1677ff1f;border-color:#1677ff47;outline:0}.my-attendance-detail-list span{flex-direction:column;gap:6px;min-width:0;display:flex}.my-attendance-detail-list small{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:800}.my-attendance-detail-list strong{color:var(--text);overflow-wrap:anywhere;white-space:pre-wrap;font-size:13px;line-height:1.5}.my-attendance-detail-wide{grid-column:1/-1}@media (width<=460px){.my-attendance-detail-modal{padding:20px}.my-attendance-detail-list{grid-template-columns:1fr}}@media (width<=900px){.teacher-today-attendance-card{grid-template-columns:1fr}.teacher-today-action-panel{min-height:150px}.teacher-attendance-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}@media (width<=620px){.teacher-history-status-filter{flex-basis:100%}.teacher-today-attendance-card{padding:22px}.teacher-today-attendance-tiles,.teacher-attendance-summary-grid{grid-template-columns:1fr!important}}.operations-messages-view{max-width:760px}.operations-messages-view .parent-teacher-row,.operations-messages-view .parent-chat-header,.operations-messages-view .parent-chat-bubble-wrap,.operations-messages-view .parent-teacher-row>span:nth-child(2) strong,.operations-messages-view .parent-chat-header strong,.operations-messages-view .parent-message-thread p,.operations-messages-view .student-state h3,.operations-messages-view .parent-app-section-heading span,.operations-messages-view .parent-app-section-heading h3,.operations-messages-view .parent-teacher-avatar,.operations-messages-view .parent-chat-message-avatar,.operations-messages-view .parent-teacher-row>span:nth-child(2) small,.operations-messages-view .parent-teacher-row time,.operations-messages-view .parent-chat-header small,.operations-messages-view .parent-message-thread small,.operations-messages-view .parent-chat-day-label,.operations-messages-view .student-state p,.operations-messages-view .parent-teacher-row>span:nth-child(2) em,.operations-messages-view .parent-teacher-row>em{color:#000}.operations-messages-view .parent-chat-header{color:#fff;background:#0b1220}.operations-messages-view .parent-chat-header strong,.operations-messages-view .parent-chat-header small,.operations-messages-view .parent-chat-header>button{color:#fff}.message-category-tabs{flex-wrap:wrap;gap:7px;margin:0 0 15px;display:flex}.message-category-tabs button{background:var(--canvas);border:1px solid var(--border);color:var(--muted);cursor:pointer;border-radius:999px;min-height:36px;padding:0 13px;font-size:12px;font-weight:700}.message-category-tabs button.active{color:#fff;background:#1677ff;border-color:#1677ff}.operations-message-sender{color:#000;margin-bottom:5px;font-size:11px;display:block}.operations-messages-view .parent-chat-room .parent-message-thread article.from-parent p,.operations-messages-view .parent-chat-room .parent-message-thread article.from-parent small,.operations-messages-view .parent-chat-room .parent-message-thread article.from-parent .operations-message-sender{color:#000}.operations-readonly-chat-note{border-top:1px solid var(--border);color:#000;text-align:center;padding:14px 16px;font-size:12px}.operations-messages-view .parent-message-form input,.operations-messages-view .parent-message-form input::placeholder{color:#000}.parent-care-journal.parent-care-only{box-shadow:none!important;border-color:#0000!important}.parent-care-only .parent-care-month-group,.parent-care-only .parent-care-day-group,.parent-care-only .parent-care-group-toggle,.parent-care-only .parent-care-group-toggle:focus,.parent-care-only .parent-care-group-toggle:focus-visible,.parent-care-only .parent-care-group-toggle:active{box-shadow:none!important;outline:0!important}.parent-timeline-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;max-width:820px;margin:0 auto 18px;display:flex}.parent-timeline-date-picker{color:var(--text);border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-width:230px;min-height:44px;padding:0 14px;display:inline-flex;position:relative;background:var(--card)!important;border:1px solid #1677ff2e!important;box-shadow:0 10px 26px #1677ff12!important}.parent-timeline-date-picker span{color:var(--text);font-size:14px;font-weight:900;line-height:1}.parent-timeline-date-picker input{cursor:pointer;opacity:0;width:100%;position:absolute;inset:0}.parent-daily-feed{gap:14px;max-width:820px}.parent-app .parent-timeline-post.parent-daily-post{animation:.28s both parentTimelinePostIn;animation-delay:var(--feed-delay,0s);border-radius:18px;transition:border-color .18s,box-shadow .18s,transform .18s;background:var(--card)!important;border-color:#1677ff2e!important;box-shadow:0 14px 34px #1677ff14!important}.parent-app .parent-timeline-post.parent-daily-post:hover{transform:translateY(-2px);border-color:#1677ff5c!important;box-shadow:0 18px 42px #1677ff1f!important}.parent-daily-post>header time{flex-direction:column;align-items:flex-end;gap:3px;display:flex}.parent-daily-post>header time span:first-child{color:var(--muted);font-size:10px}.parent-daily-post>header time span:last-child{color:var(--text);font-size:12px;font-weight:900}.parent-timeline-type{color:#1677ff;text-transform:uppercase;align-items:center;gap:6px;margin-bottom:9px;font-size:11px;font-weight:900;display:inline-flex}.parent-timeline-copy h3{color:var(--text);margin:0 0 8px;font-size:17px;line-height:1.25}.parent-timeline-media-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;padding:0 18px 16px;display:grid}.parent-timeline-media-tile{aspect-ratio:16/10;color:#1677ff;text-align:center;background:linear-gradient(135deg,#1677ff29,#20b48624);border:1px solid #1677ff29;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-width:0;padding:12px;transition:transform .18s,filter .18s;display:flex;overflow:hidden}.parent-timeline-media-tile.video{background:linear-gradient(135deg,#1677ff2e,#9b5de524)}.parent-timeline-media-tile:hover{filter:saturate(1.05);transform:scale(1.01)}.parent-timeline-media-tile img{object-fit:cover;width:100%;height:100%}.parent-timeline-media-tile span{color:var(--text);font-size:11px;font-weight:800;line-height:1.35}.parent-timeline-post-footer{color:var(--muted);border-top:1px solid #1677ff24;flex-wrap:wrap;align-items:center;gap:12px;padding:13px 18px 16px;font-size:11px;display:flex}.parent-timeline-post-footer span{align-items:center;gap:5px;display:inline-flex}.parent-album-day-list{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:13px;display:grid}.parent-album-day-card{color:var(--text);cursor:pointer;text-align:left;border-radius:18px;grid-template-columns:112px minmax(0,1fr) auto;align-items:center;gap:13px;min-height:132px;padding:10px;transition:border-color .18s,box-shadow .18s,transform .18s;display:grid;background:var(--card)!important;border:1px solid #1677ff2e!important;box-shadow:0 12px 32px #1677ff12!important}.parent-album-day-card:hover{transform:translateY(-2px);border-color:#1677ff61!important;box-shadow:0 16px 36px #1677ff1c!important}.parent-album-day-cover{aspect-ratio:1;border-radius:14px;grid-template-columns:repeat(2,1fr);gap:3px;display:grid;overflow:hidden}.parent-album-thumb{color:#1677ff;background:linear-gradient(135deg,#1677ff33,#20b4862e);justify-content:center;align-items:center;display:flex}.parent-album-thumb.video{background:linear-gradient(135deg,#1677ff38,#9b5de52e)}.parent-album-thumb:first-child{grid-column:span 2}.parent-album-post-grid article small,.parent-album-post-grid article em{color:var(--muted);margin-top:6px;font-size:11px;font-style:normal;display:block}.parent-album-day-backdrop{--canvas:#fff;--card:#fff;--text:#111;--white:#111;--muted:#1e3a5f;--border:#1677ff3d;z-index:10040;padding:16px}.parent-album-day-modal{overscroll-behavior:contain;min-width:0;max-height:calc(100dvh - 32px);margin:0}@keyframes parentTimelinePostIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (width<=700px){.parent-timeline-date-picker{justify-content:center;width:100%}.parent-daily-post>header{align-items:flex-start}.parent-daily-post>header time{flex:100%;align-items:flex-start;margin-left:53px}.parent-timeline-media-grid,.parent-album-day-list{grid-template-columns:1fr}.parent-album-day-card{grid-template-columns:86px minmax(0,1fr) auto}}@media (width<=1100px){.operation-card-grid,.manager-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=700px){.operations-page-header{flex-direction:column;align-items:flex-start}.operation-card-grid,.manager-summary-grid,.operation-mini-grid,.staff-directory-filters{grid-template-columns:1fr}.operation-permission{white-space:normal}}.parent-app .parent-dashboard-overview-grid{align-items:stretch;gap:16px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))!important}.parent-app .parent-dashboard-overview-grid .parent-home-info-card{color:#111827;overflow-wrap:anywhere;text-align:left;border-radius:18px;flex-direction:column;align-items:flex-start;gap:10px;width:100%;min-height:214px;padding:20px;transition:border-color .18s,box-shadow .18s,transform .18s;display:flex;background:#fff!important;border:1px solid #e5eaf2!important;box-shadow:0 8px 24px #0f172a0e!important}.parent-app .parent-dashboard-overview-grid .parent-home-info-card:hover{transform:translateY(-2px);border-color:#cbd7e8!important;box-shadow:0 14px 34px #0f172a17!important}.parent-app .parent-dashboard-overview-grid .parent-home-info-card:focus-visible{outline:0;border-color:#3478f694!important;box-shadow:0 0 0 4px #3478f624,0 14px 34px #0f172a17!important}.parent-dashboard-card-top{align-items:center;gap:12px;width:100%;min-width:0;display:flex}.parent-app .parent-dashboard-overview-grid .parent-summary-icon{border-radius:14px;flex:0 0 42px;justify-content:center;align-items:center;width:42px;height:42px;display:inline-flex;box-shadow:none!important}.parent-app .parent-dashboard-overview-grid .parent-home-info-card.payment .parent-summary-icon{color:#fff!important;background:#3478f6!important}.parent-app .parent-dashboard-overview-grid .parent-home-info-card.documents .parent-summary-icon{color:#fff!important;background:#7955db!important}.parent-app .parent-dashboard-overview-grid .parent-home-info-card.announcement .parent-summary-icon{color:#fff!important;background:#ff8a00!important}.parent-app .parent-dashboard-overview-grid .parent-home-info-card.notifications .parent-summary-icon{color:#fff!important;background:#0dab8c!important}.parent-app .parent-dashboard-overview-grid .parent-home-info-card small{color:#111827;letter-spacing:0;text-transform:none;min-width:0;margin:0;font-size:16px;font-weight:700;line-height:1.25;display:block}.parent-app .parent-dashboard-overview-grid .parent-home-info-card>strong{letter-spacing:-.01em;max-width:100%;margin-top:4px;font-size:19px;font-weight:800;line-height:1.25;display:block;color:#0f172a!important}.parent-app .parent-dashboard-overview-grid .parent-home-info-card>p{max-width:100%;margin:0;font-size:13px;line-height:1.5;color:#64748b!important}.parent-app .parent-dashboard-overview-grid .parent-home-view-link{border:0;border-radius:0;justify-content:flex-start;align-items:center;gap:5px;width:fit-content;margin-top:auto;padding:0;font-size:12px;font-weight:800;transition:color .18s;display:inline-flex;color:#3478f6!important;background:0 0!important}.parent-app .parent-dashboard-overview-grid .parent-home-view-link svg{transition:transform .18s}.parent-app .parent-dashboard-overview-grid .parent-home-info-card:hover .parent-home-view-link svg,.parent-app .parent-dashboard-overview-grid .parent-home-info-card:focus-visible .parent-home-view-link svg{transform:translate(2px)}.parent-app .parent-dashboard-overview-grid .parent-home-info-card.documents .parent-home-view-link{color:#7955db!important}.parent-app .parent-dashboard-overview-grid .parent-home-info-card.announcement .parent-home-view-link{color:#c56a12!important}.parent-app .parent-dashboard-overview-grid .parent-home-info-card.notifications .parent-home-view-link{color:#0f8b72!important}.parent-app .parent-dashboard-overview-grid .parent-unread-indicator{border:1px solid #0f8b7229;border-radius:999px;width:fit-content;margin-top:2px;padding:5px 9px;font-size:11px;font-weight:800;line-height:1.2;display:inline-flex;color:#0f8b72!important;background:#e7f6f2!important}@media (width<=760px){.parent-app .parent-dashboard-overview-grid{gap:14px;grid-template-columns:1fr!important}.parent-app .parent-dashboard-overview-grid .parent-home-info-card{min-height:0;padding:18px}}.parent-payments-page{color:#111827}.parent-payments-page .parent-app-header,.parent-payments-page .parent-payment-overview,.parent-payments-page .parent-payment-section,.parent-payment-modal{color:#111827;background:#fff!important;border:1px solid #e5eaf2!important;box-shadow:0 10px 28px #0f172a0f!important}.parent-payments-page .parent-app-header{border-radius:22px}.parent-payment-overview{grid-template-columns:minmax(280px,.85fr) minmax(0,1.15fr);gap:16px;margin-bottom:18px;padding:18px;display:grid}.parent-payment-balance-card,.parent-payment-metrics article,.parent-child-fee-card,.parent-fee-panel,.parent-payment-history-card{border-radius:18px;background:#fff!important;border:1px solid #e5eaf2!important;box-shadow:0 8px 22px #0f172a0b!important}.parent-payment-balance-card{flex-direction:column;justify-content:center;gap:9px;min-height:220px;padding:22px;display:flex}.parent-payment-icon{color:#fff;border-radius:14px;justify-content:center;align-items:center;width:42px;height:42px;display:inline-flex}.parent-payment-icon.blue{background:#3478f6}.parent-payment-icon.purple{background:#7955db}.parent-payment-icon.orange{background:#ff8a00}.parent-payment-icon.teal{background:#0dab8c}.parent-payment-balance-card>span:not(.parent-payment-icon),.parent-payment-metrics small,.parent-child-fee-card dt,.parent-fee-list dt,.parent-payment-history-card dt,.parent-payment-modal-grid dt{color:#64748b;letter-spacing:.02em;text-transform:uppercase;font-size:11px;font-weight:800}.parent-payment-balance-card strong{color:#0f172a;letter-spacing:-.03em;font-size:clamp(38px,5vw,54px);line-height:1}.parent-payment-balance-card p,.parent-payment-section-heading small,.parent-fee-panel p,.parent-payment-history-card p,.parent-payment-history-card footer span,.parent-payment-demo-note{color:#64748b;margin:0;font-size:13px;line-height:1.55}.parent-payment-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.parent-payment-summary-metrics{margin-bottom:16px}.parent-payment-metrics article{flex-direction:column;justify-content:center;gap:7px;min-height:132px;padding:18px;display:flex}.parent-payment-metrics strong{color:#0f172a;letter-spacing:-.02em;font-size:23px}.parent-payment-metrics span{color:#64748b;font-size:12px}.parent-payment-section{border-radius:22px;margin-top:18px;padding:20px}.parent-payment-section-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.parent-payment-section-heading h3{color:#0f172a;letter-spacing:-.02em;margin:4px 0 0;font-size:20px}.parent-payment-section-heading .eyebrow{color:#3478f6}.parent-child-fee-grid,.parent-fee-structure-grid,.parent-payment-history-list,.parent-outstanding-bill-grid{gap:14px;display:grid}.parent-child-fee-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.parent-child-fee-card{padding:18px}.parent-child-fee-card>div:first-child{align-items:center;gap:12px;margin-bottom:15px;display:flex}.parent-child-fee-card>div:first-child strong{color:#0f172a;font-size:16px;display:block}.parent-child-fee-card>div:first-child small{color:#64748b;font-size:12px}.parent-child-fee-card dl,.parent-payment-history-card dl,.parent-payment-modal-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;display:grid}.parent-child-fee-card dt,.parent-child-fee-card dd,.parent-payment-history-card dt,.parent-payment-history-card dd,.parent-payment-modal-grid dt,.parent-payment-modal-grid dd{margin:0}.parent-child-fee-card dd,.parent-fee-list dd,.parent-payment-history-card dd,.parent-payment-modal-grid dd{color:#0f172a;margin-top:4px;font-size:13px;font-weight:800;line-height:1.35}.parent-fee-structure-grid{grid-template-columns:minmax(240px,.8fr) minmax(340px,1.4fr) minmax(240px,.8fr)}.parent-fee-structure-main-grid{grid-template-columns:minmax(260px,.82fr) minmax(360px,1.18fr)}.parent-supplementary-fee-grid{grid-template-columns:minmax(0,1fr)}.parent-fee-panel{padding:18px}.parent-fee-panel header{align-items:center;gap:11px;margin-bottom:14px;display:flex}.parent-fee-panel h4{color:#0f172a;margin:0;font-size:16px}.parent-fee-list{gap:10px;margin:0;display:grid}.parent-fee-list div{border-bottom:1px solid #eef2f7;justify-content:space-between;align-items:center;gap:14px;padding-bottom:10px;display:flex}.parent-fee-list div:last-child{border-bottom:0;padding-bottom:0}.parent-fee-list .total{background:#f8fafc;border:1px solid #e5eaf2;border-radius:14px;margin-top:3px;padding:12px}.parent-fee-list .total dt,.parent-fee-list .total dd{color:#0f172a}.parent-monthly-fee-list{gap:10px;display:grid}.parent-monthly-fee-list article{border:1px solid #e5eaf2;border-radius:16px;grid-template-columns:minmax(150px,1fr) repeat(2,minmax(90px,auto)) auto;align-items:center;gap:12px;padding:14px;display:grid}.parent-monthly-fee-list article.is-child-programme{border-color:#3478f66b;box-shadow:inset 3px 0 #3478f6}.parent-monthly-fee-list strong{color:#0f172a;font-size:14px;display:block}.parent-monthly-fee-list small{color:#64748b;font-size:11px;display:block}.parent-monthly-fee-list span{color:#0f172a;text-align:right;font-size:14px;font-weight:900}.parent-monthly-fee-list em{color:#fff;white-space:nowrap;background:#3478f6;border-radius:999px;justify-self:end;padding:6px 9px;font-size:10px;font-style:normal;font-weight:900}.parent-payment-status-filter{flex-wrap:wrap;justify-content:flex-end;gap:7px;display:flex}.parent-payment-status-filter button{color:#475569;cursor:pointer;background:#fff;border:1px solid #e5eaf2;border-radius:999px;min-height:34px;padding:0 12px;font-size:12px;font-weight:800;transition:background-color .18s,border-color .18s,color .18s}.parent-payment-status-filter button.active,.parent-payment-status-filter button:hover,.parent-payment-status-filter button:focus-visible{color:#fff;background:#3478f6;border-color:#3478f6;outline:0}.parent-payment-history-card{padding:18px;transition:border-color .18s,box-shadow .18s,transform .18s}.parent-payment-history-card:hover{transform:translateY(-1px);border-color:#cbd7e8!important;box-shadow:0 14px 34px #0f172a14!important}.parent-payment-history-card header{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:14px;display:flex}.parent-payment-history-card h4{color:#0f172a;margin:9px 0 5px;font-size:16px}.parent-payment-history-card header>strong{color:#0f172a;white-space:nowrap;font-size:22px}.parent-payment-history-card footer{border-top:1px solid #eef2f7;flex-wrap:wrap;align-items:center;gap:9px;margin-top:15px;padding-top:14px;display:flex}.parent-payment-history-card footer button{color:#0f172a;cursor:pointer;background:#fff;border:1px solid #e5eaf2;border-radius:999px;align-items:center;gap:6px;min-height:36px;padding:0 12px;font-size:12px;font-weight:800;display:inline-flex}.parent-payment-history-card footer button:hover,.parent-payment-history-card footer button:focus-visible{color:#3478f6;border-color:#3478f66b;outline:0}.parent-payment-action-note,.parent-bill-pending-note{color:#9a4b00;background:#fff7ed;border:1px solid #ff8a0033;border-radius:14px;margin:0 0 14px;padding:12px 13px;font-size:12px;font-weight:700;line-height:1.45}.parent-bill-pending-note{color:#475569;background:#f8fafc;border-color:#e5eaf2;margin:14px 0 0}.parent-outstanding-bill-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.parent-outstanding-bill-card{border-radius:18px;padding:18px;transition:border-color .18s,box-shadow .18s,transform .18s;background:#fff!important;border:1px solid #e5eaf2!important;box-shadow:0 8px 22px #0f172a0b!important}.parent-outstanding-bill-card:hover{transform:translateY(-1px);border-color:#ff8a0059!important;box-shadow:0 14px 34px #0f172a14!important}.parent-outstanding-bill-card header{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:15px;display:flex}.parent-outstanding-bill-card h4{color:#0f172a;margin:9px 0 5px;font-size:17px}.parent-outstanding-bill-card p{color:#64748b;margin:0;font-size:13px;line-height:1.45}.parent-outstanding-bill-card header>strong{color:#0f172a;letter-spacing:-.02em;white-space:nowrap;font-size:23px}.parent-outstanding-bill-card dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;display:grid}.parent-outstanding-bill-card dt,.parent-outstanding-bill-card dd{margin:0}.parent-outstanding-bill-card dt{color:#64748b;letter-spacing:.02em;text-transform:uppercase;font-size:11px;font-weight:800}.parent-outstanding-bill-card dd{color:#0f172a;margin-top:4px;font-size:13px;font-weight:800;line-height:1.35}.parent-outstanding-bill-card footer{border-top:1px solid #eef2f7;flex-wrap:wrap;align-items:center;gap:9px;margin-top:15px;padding-top:14px;display:flex}.parent-outstanding-bill-card footer button{color:#0f172a;cursor:pointer;background:#fff;border:1px solid #e5eaf2;border-radius:999px;align-items:center;gap:6px;min-height:36px;padding:0 12px;font-size:12px;font-weight:800;display:inline-flex}.parent-outstanding-bill-card footer button:hover,.parent-outstanding-bill-card footer button:focus-visible{color:#3478f6;border-color:#3478f66b;outline:0}.parent-outstanding-bill-card footer .parent-pay-now-button{color:#fff;background:#3478f6;border-color:#3478f6}.parent-outstanding-bill-card footer .parent-pay-now-button:hover,.parent-outstanding-bill-card footer .parent-pay-now-button:focus-visible{color:#fff;filter:brightness(1.03);border-color:#3478f6}.accounts-status.unpaid{color:#b91c1c;background:#ef44441f;border-color:#ef444438}.accounts-status.pending-verification{color:#a85500;background:#ff8a001f;border-color:#ff8a0038}.parent-payment-modal-backdrop{padding:20px}.parent-payment-modal{border-radius:22px;width:100%;max-width:680px;max-height:min(88vh,720px);margin:auto;padding:22px;overflow-y:auto}.parent-payment-modal>header{border-bottom:1px solid #eef2f7;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;padding-bottom:15px;display:flex}.parent-payment-modal h3{color:#0f172a;margin:4px 0;font-size:22px}.parent-payment-demo-note{background:#f8fafc;border:1px solid #e5eaf2;border-radius:14px;margin-top:16px;padding:13px}.parent-payment-modal-section{border-top:1px solid #eef2f7;margin-top:16px;padding-top:16px}.parent-payment-modal-section h4{color:#0f172a;margin:0 0 12px;font-size:15px}.parent-payment-record-list{gap:9px;display:grid}.parent-payment-record-list article{background:#f8fafc;border:1px solid #e5eaf2;border-radius:14px;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:8px;padding:11px;display:grid}.parent-payment-record-list strong{color:#0f172a;font-size:13px}.parent-payment-record-list small{color:#64748b;min-width:0;font-size:12px}@media (width<=1080px){.parent-payment-overview,.parent-fee-structure-grid,.parent-fee-structure-main-grid{grid-template-columns:1fr}}@media (width<=760px){.parent-payment-overview,.parent-payment-section{padding:16px}.parent-payment-metrics,.parent-child-fee-card dl,.parent-payment-history-card dl,.parent-payment-modal-grid,.parent-outstanding-bill-card dl,.parent-payment-record-list article{grid-template-columns:1fr}.parent-payment-section-heading,.parent-payment-history-card header,.parent-outstanding-bill-card header{flex-direction:column}.parent-payment-status-filter{justify-content:flex-start}.parent-monthly-fee-list article{grid-template-columns:1fr;align-items:stretch}.parent-monthly-fee-list span,.parent-monthly-fee-list em{text-align:left;justify-self:start}}.parent-payments-page .parent-app-header{padding:0;box-shadow:none!important;background:0 0!important;border:0!important}.parent-payments-page .parent-payment-section-heading .eyebrow{color:#ff8a00}.parent-total-outstanding{text-align:right;background:#fff7ed;border:1px solid #ff8a0033;border-radius:16px;min-width:190px;padding:12px 14px}.parent-total-outstanding small{color:#9a4b00;letter-spacing:.02em;text-transform:uppercase;font-size:11px;font-weight:800;display:block}.parent-total-outstanding strong{color:#0f172a;margin-top:3px;font-size:22px;line-height:1.2;display:block}.parent-outstanding-bill-card footer .parent-pay-now-button,.parent-payment-modal-actions .parent-pay-now-button{color:#fff;background:#ff8a00;border-color:#ff8a00}.parent-outstanding-bill-card footer .parent-pay-now-button:hover,.parent-outstanding-bill-card footer .parent-pay-now-button:focus-visible,.parent-payment-modal-actions .parent-pay-now-button:hover,.parent-payment-modal-actions .parent-pay-now-button:focus-visible{color:#fff;filter:none;background:#f07d00;border-color:#f07d00}.parent-outstanding-bill-card footer .parent-pay-now-button:disabled{color:#64748b;cursor:not-allowed;opacity:1;background:#f1f5f9;border-color:#e2e8f0}.accounts-status.demo-confirmed{color:#a85500;background:#ff8a001f}.parent-fee-information-section{padding:0}.parent-fee-information-toggle{color:#0f172a;cursor:pointer;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:16px;width:100%;padding:20px;display:flex}.parent-fee-information-toggle h3{color:#0f172a;letter-spacing:-.02em;margin:4px 0 0;font-size:20px}.parent-fee-information-toggle small{color:#64748b;margin-top:5px;font-size:13px;line-height:1.5;display:block}.parent-fee-information-toggle svg{color:#64748b;flex:none;transition:transform .18s,color .18s}.parent-fee-information-toggle:hover svg,.parent-fee-information-toggle:focus-visible svg{color:#ff8a00}.parent-fee-information-toggle:focus-visible{outline-offset:-3px;outline:3px solid #ff8a0038}.parent-fee-information-toggle[aria-expanded=true] svg{transform:rotate(90deg)}.parent-fee-information-content{border-top:1px solid #eef2f7;gap:14px;padding:0 20px 20px;display:grid}.parent-payment-full-note{color:#9a4b00;background:#fff7ed;border:1px solid #ff8a0038;border-radius:14px;margin:16px 0 0;padding:13px;font-size:13px;font-weight:800;line-height:1.55}.parent-payment-modal-actions{border-top:1px solid #eef2f7;flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:18px;padding-top:16px;display:flex}.parent-payment-modal-actions button{cursor:pointer;border-radius:999px;justify-content:center;align-items:center;min-height:40px;padding:0 15px;font-size:12px;font-weight:800;display:inline-flex}.parent-payment-secondary-action{color:#0f172a;background:#fff;border:1px solid #e5eaf2}.parent-payment-secondary-action:hover,.parent-payment-secondary-action:focus-visible{color:#3478f6;border-color:#cbd7e8;outline:0}@media (width<=760px){.parent-total-outstanding{text-align:left;width:100%}.parent-fee-information-toggle{align-items:flex-start;padding:16px}.parent-fee-information-content{padding:0 16px 16px}.parent-payment-modal-actions{flex-direction:column-reverse}.parent-payment-modal-actions button{width:100%}}.parent-payments-page{--payment-accent:#ff8a00;--payment-accent-dark:#9a4b00;--payment-page:#fffcf7;--payment-surface:#fff;--payment-soft:#fff3e6;--payment-soft-subtle:#fffaf5;--payment-border:#f3e4d5;--payment-divider:#f7eadd;--payment-text:#292524;--payment-muted:#78716c;--payment-ease:cubic-bezier(.22, 1, .36, 1);color:var(--payment-text);animation:parentPaymentPageIn .36s var(--payment-ease) both;background:0 0}.theme-dark .parent-payments-page,.dashboard-shell:not(.theme-light).parent-app-shell .parent-payments-page{--payment-accent:#ff8a00;--payment-accent-dark:#9a4b00;--payment-page:#fffcf7;--payment-surface:#fff;--payment-soft:#fff3e6;--payment-soft-subtle:#fffaf5;--payment-border:#f3e4d5;--payment-divider:#f7eadd;--payment-text:#292524;--payment-muted:#78716c;--payment-ease:cubic-bezier(.22, 1, .36, 1)}.parent-payments-page .parent-app-header{margin-bottom:18px}.parent-payments-page .parent-app-header h1{color:var(--payment-text)}.parent-payments-page .parent-app-header p{color:var(--payment-muted)}.parent-payment-balance-summary-card,.parent-payments-page .parent-payment-section,.parent-payment-modal{color:var(--payment-text);border-radius:20px;background:var(--payment-surface)!important;border:1px solid var(--payment-border)!important;box-shadow:0 10px 24px #92400e0e!important}.parent-payments-page .parent-app-header,.parent-payment-balance-summary-card,.parent-payments-page .parent-payment-section{animation:parentPaymentRiseIn .44s var(--payment-ease) both}.parent-payment-balance-summary-card{animation-delay:40ms}.parent-outstanding-bills-section{animation-delay:80ms}.parent-payment-history-section{animation-delay:.12s}.parent-fee-information-section{animation-delay:.16s}.parent-payment-balance-summary-card{justify-content:space-between;align-items:center;gap:18px;min-height:0;margin:0 0 14px;padding:16px 18px;display:flex}.parent-payment-summary-accent{background:var(--payment-accent);border-radius:999px;flex:0 0 6px;height:64px}.parent-payment-summary-main{flex:auto;min-width:220px}.parent-payment-balance-summary-card .eyebrow,.parent-payments-page .parent-payment-section-heading .eyebrow,.parent-payment-history-toggle .eyebrow,.parent-fee-information-toggle .eyebrow{color:var(--payment-accent)}.parent-payment-balance-summary-card strong{color:var(--payment-text);letter-spacing:0;margin-top:5px;font-size:clamp(30px,3.8vw,42px);line-height:1.04;display:block}.parent-payment-balance-summary-card p{color:var(--payment-muted);margin:6px 0 0;font-size:13px;font-weight:700}.parent-payment-summary-stats{flex:0 0 290px;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.parent-payment-summary-stats div{background:var(--payment-soft-subtle);border:1px solid var(--payment-divider);border-radius:14px;min-width:0;padding:11px 12px}.parent-payment-summary-stats span{color:var(--payment-muted);letter-spacing:.04em;text-transform:uppercase;font-size:10px;font-weight:900;display:block}.parent-payment-summary-stats strong{color:var(--payment-text);margin-top:5px;font-size:15px;line-height:1.25}.parent-payments-page .parent-payment-section{margin-top:14px;padding:18px}.parent-payments-page .parent-payment-section-heading{align-items:center;margin-bottom:14px}.parent-payments-page .parent-payment-section-heading h3,.parent-fee-information-toggle h3{color:var(--payment-text);letter-spacing:0;font-size:20px}.parent-payments-page .parent-payment-section-heading p{color:var(--payment-muted);margin:6px 0 0;font-size:13px;line-height:1.55}.parent-outstanding-bills-section{border-color:var(--payment-border)!important}.parent-outstanding-bill-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.parent-outstanding-bill-card.parent-invoice-card{animation:parentPaymentRiseIn .42s var(--payment-ease) both;min-height:304px;transition:border-color .24s var(--payment-ease), box-shadow .24s var(--payment-ease), transform .24s var(--payment-ease);border-radius:18px;flex-direction:column;padding:18px;display:flex;transform:none;background:var(--payment-surface)!important;border:1px solid var(--payment-border)!important;box-shadow:none!important}.parent-outstanding-bill-card.parent-invoice-card:first-child{animation-delay:.12s}.parent-outstanding-bill-card.parent-invoice-card:nth-child(2){animation-delay:.17s}.parent-outstanding-bill-card.parent-invoice-card:hover{transform:none;border-color:var(--payment-border)!important;box-shadow:none!important}.parent-invoice-card header{justify-content:space-between;align-items:flex-start;gap:14px;min-height:66px;margin-bottom:16px;display:flex}.parent-invoice-card header div>span{color:var(--payment-muted);letter-spacing:.04em;text-transform:uppercase;margin-top:6px;font-size:11px;font-weight:900;display:block}.parent-invoice-card h4{color:var(--payment-text);letter-spacing:0;min-height:46px;margin:0;font-size:17px;line-height:1.35;overflow:hidden}.parent-invoice-card p{color:var(--payment-muted);margin:0;font-size:13px}.parent-invoice-meta{border-top:1px solid var(--payment-divider);grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:10px;padding-top:14px;display:grid}.parent-invoice-meta div{min-width:0}.parent-invoice-meta span{color:var(--payment-muted);letter-spacing:.04em;text-transform:uppercase;font-size:10px;font-weight:900;display:block}.parent-invoice-meta strong{color:var(--payment-text);margin-top:4px;font-size:13px;line-height:1.35;display:block}.parent-payment-modal-grid div{min-width:0}.parent-invoice-total-due{background:var(--payment-soft);border:1px solid var(--payment-divider);min-height:104px;transition:background-color .22s var(--payment-ease), border-color .22s var(--payment-ease), box-shadow .22s var(--payment-ease);border-radius:16px;align-content:center;margin:18px 0 22px;padding:16px}.parent-invoice-total-due span,.parent-payment-history-row>span:before{color:var(--payment-muted);letter-spacing:.04em;text-transform:uppercase;font-size:10px;font-weight:900}.parent-invoice-total-due strong{color:var(--payment-accent-dark);overflow-wrap:anywhere;margin-top:8px;font-size:clamp(28px,4vw,38px);font-weight:900;line-height:1.05;display:block}.parent-invoice-card footer{border-top:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:auto;padding-top:0;display:grid}.parent-invoice-card footer button,.parent-payment-history-row button{min-height:40px}.parent-invoice-card footer button{background:var(--payment-surface);border:1px solid var(--payment-border);color:var(--payment-text);cursor:pointer;transition:background-color .2s var(--payment-ease), border-color .2s var(--payment-ease), color .2s var(--payment-ease), transform .14s var(--payment-ease), box-shadow .2s var(--payment-ease);white-space:nowrap;border-radius:999px;justify-content:center;padding:0 12px;font-size:12px;font-weight:900;display:inline-flex}.parent-invoice-card footer button:hover,.parent-invoice-card footer button:focus-visible{color:var(--payment-accent-dark);border-color:#ff8a005c;outline:0}.parent-invoice-card footer .parent-pay-now-button{background:var(--payment-accent);border-color:var(--payment-accent);color:#fff}.parent-invoice-card footer .parent-pay-now-button:hover,.parent-invoice-card footer .parent-pay-now-button:focus-visible{color:#fff;background:#f07d00;border-color:#f07d00;box-shadow:0 8px 18px #ff8a0033}.parent-invoice-card footer .parent-pay-now-button:disabled{background:var(--payment-soft-subtle);border-color:var(--payment-divider);color:var(--payment-muted);cursor:not-allowed}.parent-invoice-card footer button:active,.parent-payment-history-row button:active,.parent-payment-modal-actions button:active{transform:translateY(1px)}.parent-payments-page .accounts-status.unpaid{color:#9a4b00;background:#fff3e6}.parent-payments-page .accounts-status.paid{color:#166534;background:#dcfce7}.parent-payments-page .parent-payment-history-section{padding:0}.parent-payment-history-toggle{color:var(--payment-text);cursor:pointer;text-align:left;background:0 0;border:0;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:14px;width:100%;padding:16px 18px;display:grid}.parent-payment-history-toggle:focus-visible{outline-offset:-3px;outline:3px solid #ff8a003d}.parent-payment-accordion-icon{background:var(--payment-soft);color:var(--payment-accent);border-radius:14px;justify-content:center;align-items:center;width:42px;height:42px;display:inline-flex}.parent-payment-history-toggle h3{color:var(--payment-text);letter-spacing:0;margin:4px 0 0;font-size:18px}.parent-payment-history-toggle small{color:var(--payment-muted);margin-top:3px;font-size:12px;line-height:1.45;display:block}.parent-payment-history-count{background:var(--payment-soft-subtle);border:1px solid var(--payment-divider);color:var(--payment-muted);white-space:nowrap;border-radius:999px;padding:8px 11px;font-size:12px;font-weight:900}.parent-payment-history-toggle>svg{color:var(--payment-muted);transition:color .22s var(--payment-ease), transform .28s var(--payment-ease)}.parent-payment-history-toggle:hover>svg,.parent-payment-history-toggle:focus-visible>svg{color:var(--payment-accent)}.parent-payment-history-section.is-open .parent-payment-history-toggle>svg{transform:rotate(90deg)}.parent-payment-history-panel{opacity:0;max-height:0;transition:max-height .34s var(--payment-ease), opacity .24s var(--payment-ease), padding .34s var(--payment-ease), border-color .24s var(--payment-ease);border-top:0 solid #0000;padding:0 18px;overflow:hidden}.parent-payment-history-section.is-open .parent-payment-history-panel{border-top:1px solid var(--payment-divider);opacity:1;max-height:920px;padding:0 18px 16px}.parent-payment-history-table{border:1px solid var(--payment-border);border-radius:16px;margin-top:16px;overflow:hidden}.parent-payment-history-row{background:var(--payment-surface);border-top:1px solid var(--payment-divider);color:var(--payment-muted);grid-template-columns:minmax(250px,1.6fr) minmax(105px,.72fr) minmax(112px,.75fr) minmax(100px,.68fr) minmax(82px,.52fr) minmax(118px,.68fr);align-items:center;gap:12px;padding:11px 14px;font-size:12px;display:grid}.parent-payment-history-row:first-child{border-top:0}.parent-payment-history-head{background:var(--payment-soft);color:var(--payment-muted);letter-spacing:.04em;text-transform:uppercase;font-size:10px;font-weight:900}.parent-payment-history-row span{min-width:0}.parent-payment-history-row strong{color:var(--payment-text)}.parent-history-payment-cell{gap:3px;display:grid}.parent-history-payment-cell strong{line-height:1.35}.parent-history-payment-cell small{color:var(--payment-muted);font-size:11px;font-weight:800}.parent-payment-history-row button{background:var(--payment-surface);border:1px solid var(--payment-border);color:var(--payment-text);cursor:pointer;white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-size:12px;font-weight:900;transition:border-color .18s,color .18s,transform .18s;display:inline-flex}.parent-payment-history-row button:hover,.parent-payment-history-row button:focus-visible{color:var(--payment-accent-dark);border-color:#ff8a0061;outline:0;transform:translateY(-1px)}.parent-payments-page .parent-readonly-note{margin-top:12px}.parent-payments-page .parent-payment-action-note{margin-bottom:12px}.parent-payments-page .parent-fee-information-section{padding:0}.parent-payments-page .parent-fee-information-toggle{padding:16px 18px}.parent-payments-page .parent-fee-information-toggle h3{font-size:18px}.parent-payments-page .parent-fee-information-toggle small{margin-top:3px;font-size:12px}.parent-payments-page .parent-fee-information-content{opacity:0;max-height:0;transition:max-height .38s var(--payment-ease), opacity .24s var(--payment-ease), padding .38s var(--payment-ease), transform .28s var(--payment-ease);gap:14px;padding:0 18px;display:grid;overflow:hidden;transform:translateY(-4px)}.parent-payments-page .parent-fee-information-section.is-open .parent-fee-information-content{opacity:1;max-height:1700px;padding:0 18px 18px;transform:translateY(0)}.parent-payments-page .parent-fee-panel{border-radius:18px;padding:18px;box-shadow:none!important}.parent-payment-confirm-amount{background:var(--payment-soft);border:1px solid var(--payment-divider);border-radius:16px;padding:16px}.parent-payments-page .parent-payment-full-note,.parent-payments-page .parent-payment-demo-note,.parent-payments-page .parent-payment-action-note{background:var(--payment-soft);border-color:var(--payment-divider);color:var(--payment-accent-dark)}.parent-payment-confirm-amount span,.parent-payment-confirm-amount small{color:var(--payment-muted);font-size:12px;font-weight:900;display:block}.parent-payment-confirm-amount small{letter-spacing:.04em;text-transform:uppercase;margin-top:12px}.parent-payment-confirm-amount strong{color:var(--payment-text);margin-top:5px;font-size:36px;line-height:1.1;display:block}.parent-invoice-breakdown{background:var(--payment-soft-subtle);border:1px solid var(--payment-divider);border-radius:16px;margin-top:14px;padding:14px}.parent-invoice-breakdown header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.parent-invoice-breakdown h4,.parent-invoice-breakdown strong{color:var(--payment-text);margin:0;font-size:14px;line-height:1.35}.parent-invoice-breakdown dl{gap:9px;margin:0;display:grid}.parent-invoice-breakdown div{border-top:1px solid var(--payment-divider);grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;padding-top:9px;display:grid}.parent-invoice-breakdown dt,.parent-invoice-breakdown dd{margin:0}.parent-invoice-breakdown dt{color:var(--payment-muted);font-size:12px;font-weight:800;line-height:1.45}.parent-invoice-breakdown dd{color:var(--payment-text);white-space:nowrap;font-size:12px;font-weight:900}.parent-invoice-breakdown p{background:var(--payment-soft);color:var(--payment-accent-dark);border-radius:12px;margin:12px 0 0;padding:11px 12px;font-size:12px;font-weight:800;line-height:1.5}.parent-payment-modal-actions button:disabled,.parent-payment-modal .icon-button:disabled{cursor:not-allowed;opacity:.6}.theme-dark .parent-payment-demo-note,.dashboard-shell:not(.theme-light).parent-app-shell .parent-payment-demo-note,.theme-dark .parent-payment-full-note,.dashboard-shell:not(.theme-light).parent-app-shell .parent-payment-full-note,.theme-dark .parent-payment-action-note,.dashboard-shell:not(.theme-light).parent-app-shell .parent-payment-action-note{color:#9a4b00;background:#fff3e6;border-color:#f3e4d5}.parent-payments-page .parent-fee-panel header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.parent-payments-page .parent-fee-panel header h4,.parent-payments-page .parent-fee-section-heading h4{margin:0}.parent-payments-page .parent-fee-panel header small,.parent-payments-page .parent-fee-section-heading small{color:var(--payment-muted);margin-top:4px;font-size:12px;font-weight:800;display:block}.parent-payments-page .parent-fee-total-highlight{background:var(--payment-soft);border:1px solid var(--payment-divider);border-radius:15px;gap:5px;margin:12px 0 14px;padding:14px;display:grid}.parent-payments-page .parent-fee-total-highlight span{color:var(--payment-accent-dark);letter-spacing:.04em;text-transform:uppercase;font-size:11px;font-weight:950}.parent-payments-page .parent-fee-total-highlight strong{color:var(--payment-accent-dark);font-size:30px;font-weight:950;line-height:1}.parent-payments-page .parent-fee-breakdown-list div{grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.parent-payments-page .parent-fee-note{background:var(--payment-soft-subtle);border:1px solid var(--payment-divider);color:var(--payment-muted);border-radius:12px;margin:14px 0 0;padding:10px 12px;font-size:12px;font-weight:800;line-height:1.45}.parent-payments-page .parent-fee-section-heading{padding:2px 2px 0}.parent-payments-page .parent-monthly-fee-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.parent-payments-page .parent-monthly-fee-list article{min-height:168px;transition:border-color .2s var(--payment-ease), box-shadow .2s var(--payment-ease), transform .2s var(--payment-ease);border-radius:18px;grid-template-columns:minmax(0,1fr);align-items:stretch;gap:14px;padding:16px;display:grid}.parent-payments-page .parent-fee-panel,.parent-payments-page .parent-monthly-fee-list article{background:var(--payment-surface)!important;border-color:var(--payment-border)!important}.parent-payments-page .parent-fee-panel h4,.parent-payments-page .parent-fee-list dd,.parent-payments-page .parent-monthly-fee-list strong,.parent-payments-page .parent-monthly-fee-list span{color:var(--payment-text)}.parent-payments-page .parent-fee-panel p,.parent-payments-page .parent-fee-list dt,.parent-payments-page .parent-monthly-fee-list small{color:var(--payment-muted)}.parent-payments-page .parent-fee-list div{border-color:var(--payment-divider)}.parent-payments-page .parent-fee-list .total{background:var(--payment-soft-subtle);border-color:var(--payment-divider)}.parent-payments-page .parent-monthly-fee-heading strong{font-size:16px}.parent-payments-page .parent-monthly-fee-heading small{margin-top:4px}.parent-payments-page .parent-monthly-fee-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.parent-payments-page .parent-monthly-fee-price{background:var(--payment-soft);border:1px solid var(--payment-divider);text-align:left;min-width:0;transition:background-color .2s var(--payment-ease), border-color .2s var(--payment-ease);border-radius:12px;gap:4px;padding:11px;display:grid}.parent-payments-page .parent-monthly-fee-price small{color:var(--payment-accent-dark);font-weight:950}.parent-payments-page .parent-monthly-fee-price em{color:var(--payment-accent-dark);background:0 0;justify-self:start;padding:0;font-size:11px;font-style:normal;font-weight:800}.parent-payments-page .parent-supplementary-fee-list{gap:0;display:grid}.parent-payments-page .parent-supplementary-fee-list article,.parent-payments-page .parent-supplementary-total-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;display:grid}.parent-payments-page .parent-supplementary-fee-list article{border-bottom:1px solid var(--payment-divider);padding:11px 0}.parent-payments-page .parent-supplementary-fee-list article:first-child{padding-top:0}.parent-payments-page .parent-supplementary-fee-list strong,.parent-payments-page .parent-supplementary-fee-list span{color:var(--payment-text);font-size:14px;font-weight:900}.parent-payments-page .parent-supplementary-fee-list small{color:var(--payment-muted);margin-top:3px;font-size:12px;font-weight:800;display:block}.parent-payments-page .parent-supplementary-fee-list span{white-space:nowrap}.parent-payments-page .parent-supplementary-total-row{background:var(--payment-soft);border:1px solid var(--payment-divider);border-radius:12px;margin-top:12px;padding:12px}.parent-payments-page .parent-supplementary-total-row span{color:var(--payment-accent-dark);font-size:16px;font-weight:950}@media (hover:hover) and (pointer:fine){.parent-outstanding-bill-card.parent-invoice-card:hover{transform:translateY(-3px);border-color:#ff8a0052!important;box-shadow:0 14px 30px #92400e16!important}.parent-invoice-total-due:hover{background:#ffe8cc;border-color:#ff8a0047;box-shadow:inset 0 0 0 1px #ff8a0014}.parent-payments-page .parent-monthly-fee-list article:hover{transform:translateY(-2px);border-color:#ff8a0047!important;box-shadow:0 12px 28px #92400e13!important}.parent-payments-page .parent-monthly-fee-price:hover{background:#ffe8cc;border-color:#ff8a0047}}.parent-payment-modal-backdrop{animation:parentPaymentFadeIn .2s var(--payment-ease) both;filter:none;opacity:1;z-index:120;background-color:#29252485}.parent-payment-modal{animation:parentPaymentModalIn .24s var(--payment-ease) both;-webkit-backdrop-filter:none;backdrop-filter:none;filter:none;opacity:1;transform-origin:50%;z-index:1;position:relative;background:#fff!important;box-shadow:0 24px 70px #29252438!important}.parent-payment-action-note{animation:parentPaymentSuccessPulse .48s var(--payment-ease) both}@keyframes parentPaymentPageIn{0%{opacity:0}to{opacity:1}}@keyframes parentPaymentRiseIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes parentPaymentFadeIn{0%{background-color:#29252400}to{background-color:#29252485}}@keyframes parentPaymentModalIn{0%{transform:translateY(8px)scale(.98)}to{transform:translateY(0)scale(1)}}@keyframes parentPaymentSuccessPulse{0%{box-shadow:0 0 #ff8a002e}to{box-shadow:0 0 0 8px #ff8a0000}}@keyframes parentPaymentAccordionIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.parent-payments-page,.parent-payments-page .parent-app-header,.parent-payment-balance-summary-card,.parent-payments-page .parent-payment-section,.parent-outstanding-bill-card.parent-invoice-card,.parent-payment-modal-backdrop,.parent-payment-modal,.parent-payment-action-note,.parent-payments-page .parent-monthly-fee-list article{animation:none}.parent-payment-history-panel,.parent-payments-page .parent-fee-information-content{transition:none;animation:none}.parent-payment-history-toggle>svg,.parent-fee-information-toggle svg,.parent-invoice-card footer button,.parent-payment-history-row button,.parent-invoice-total-due,.parent-payments-page .parent-monthly-fee-price,.parent-payments-page .parent-monthly-fee-list article{transition:none}}@media (width<=980px){.parent-outstanding-bill-grid{grid-template-columns:1fr}.parent-payments-page .parent-monthly-fee-list{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.parent-payment-history-head{display:none}.parent-payment-history-table{border:0;border-radius:0;gap:12px;display:grid;overflow:visible}.parent-payment-history-row{border:1px solid var(--payment-border);box-shadow:none;border-radius:16px;grid-template-columns:repeat(2,minmax(0,1fr));padding:13px}.parent-payment-history-row>span{gap:4px;display:grid}.parent-payment-history-row>span:before{content:attr(data-label)}}@media (width<=760px){.parent-outstanding-bill-card.parent-invoice-card,.parent-invoice-card header,.parent-invoice-card h4{min-height:0}.parent-payment-balance-summary-card{flex-wrap:wrap;align-items:flex-start;padding:18px}.parent-payment-summary-accent{height:64px}.parent-payment-summary-main{min-width:0}.parent-payment-summary-stats{flex-basis:100%}.parent-payment-history-toggle{grid-template-columns:auto minmax(0,1fr) auto;align-items:flex-start;padding:15px 16px}.parent-payment-history-count{grid-column:2;justify-self:start;margin-top:2px}.parent-payment-history-toggle>svg{grid-area:1/3/span 2;margin-top:12px}.parent-payment-history-panel{padding:0 16px 16px}.parent-payments-page .parent-fee-panel header{align-items:flex-start}.parent-payments-page .parent-monthly-fee-list,.parent-outstanding-bill-grid,.parent-invoice-meta,.parent-payment-history-row,.parent-payments-page .parent-monthly-fee-list article{grid-template-columns:1fr}.parent-invoice-total-due{min-height:92px;margin:16px 0 18px;padding:14px}.parent-invoice-card footer{grid-template-columns:1fr;align-items:stretch}.parent-invoice-card footer button{justify-content:center;width:100%}.parent-payment-confirm-amount strong{font-size:31px}}@media (width<=560px){.parent-payments-page .parent-fee-information-toggle,.parent-payments-page .parent-fee-information-section.is-open .parent-fee-information-content{padding-left:14px;padding-right:14px}.parent-payments-page .parent-fee-panel header,.parent-payments-page .parent-supplementary-total-row{grid-template-columns:1fr}.parent-payments-page .parent-fee-panel header{display:grid}.parent-payments-page .parent-fee-total-pill{justify-self:start}.parent-payments-page .parent-monthly-fee-options,.parent-payments-page .parent-supplementary-fee-list article{grid-template-columns:1fr}.parent-payments-page .parent-supplementary-fee-list span,.parent-payments-page .parent-supplementary-total-row span{justify-self:start}}@media (width<=1023px){.parent-app-shell .custom-dropdown-menu-portal,.custom-dropdown-menu-portal.parent-filter-dropdown{max-height:min(260px, 48vh, var(--parent-dropdown-max-height,100dvh))!important}.filter-panel.parent-filter-panel{overscroll-behavior:contain;overflow-y:auto}}@media (width<=700px){.parent-main-content .page-content,.parent-app>*,.parent-main-content .account-settings-card,.parent-main-content .account-settings-grid>label{overflow-wrap:anywhere;min-width:0}.parent-app .parent-back-button,.parent-app .parent-date-reset,.parent-app .filter-trigger,.parent-app .parent-child-switcher button,.parent-app .parent-summary-child-tabs button,.parent-app .parent-document-action,.parent-main-content .account-settings-page .secondary-button,.parent-main-content .account-settings-page .primary-button{min-height:44px}.parent-main-content input,.parent-main-content textarea{min-width:0;font-size:16px}.parent-app .parent-attendance-app{padding:18px 14px}.parent-app .parent-notification-list button{grid-template-columns:auto minmax(0,1fr);gap:6px 12px;display:grid}.parent-app .parent-notification-list .parent-summary-icon{grid-row:1/span 2}.parent-app .parent-notification-list time{white-space:normal;grid-column:2}.parent-app .parent-announcement-card{grid-template-columns:auto minmax(0,1fr) auto;gap:10px;display:grid}.parent-app .parent-announcement-card>.parent-summary-icon{grid-area:1/1/span 2}.parent-app .parent-announcement-card>em{grid-column:2;justify-self:start}.parent-app .parent-announcement-card>svg{grid-area:1/3/span 2}.parent-app .parent-chat-room{margin-bottom:0}.parent-app .parent-chat-header{flex-wrap:wrap}.parent-app .parent-chat-header>span:last-child,.parent-app .parent-chat-bubble-wrap{overflow-wrap:anywhere;min-width:0}.parent-app .parent-chat-message-avatar{flex-shrink:0}.parent-app .parent-message-form{flex-shrink:0;scroll-margin-block:100px}.filter-panel.parent-filter-panel{max-height:min(76dvh,620px);padding-bottom:calc(18px + env(safe-area-inset-bottom))}.parent-modal-backdrop:not(.parent-child-profile-backdrop){padding:max(12px, env(safe-area-inset-top)) max(12px, env(safe-area-inset-right)) max(12px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left))}.parent-modal-backdrop [role=dialog]{max-height:calc(100dvh - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom));overflow-wrap:anywhere;overscroll-behavior:contain;min-width:0}.parent-child-profile-backdrop .parent-child-profile-modal{max-height:100dvh}.parent-modal-backdrop .icon-button{flex-shrink:0;min-width:44px;min-height:44px}.parent-modal-backdrop .parent-back-button,.parent-modal-backdrop .primary-button,.parent-payment-modal-actions button,.parent-filter-dropdown .custom-dropdown-option{min-height:44px}.parent-filter-panel header button{width:44px;height:44px}.parent-payment-modal-backdrop{--payment-text:#292524;--payment-muted:#78716c;--payment-soft:#fff3e6;--payment-soft-subtle:#fffaf5;--payment-border:#f3e4d5;--payment-divider:#f7eadd}}.parent-app-shell .page-transition{animation-duration:.38s}.parent-app-shell .motion-reveal{transition-duration:.38s}.parent-app-shell .motion-reveal:focus-within{opacity:1;transition-delay:0s;transform:translateY(0)}.parent-app-shell :where(button,a),.parent-modal-backdrop :where(button,a),.parent-filter-panel :where(button),.parent-filter-dropdown .custom-dropdown-option{transition:background-color .18s var(--ease-standard), border-color .18s var(--ease-standard), color .18s var(--ease-standard), box-shadow .18s var(--ease-standard), opacity .18s var(--ease-standard), transform .18s var(--ease-standard)}.parent-app-shell :is(.parent-home-info-card,.parent-activity-card,.parent-child-simple-card,.parent-summary-card,.parent-album-day-card){transition:box-shadow .22s var(--ease-standard), border-color .22s var(--ease-standard), background-color .22s var(--ease-standard), transform .22s var(--ease-standard)}.parent-modal-backdrop{animation:parent-portal-fade-in .18s var(--ease-standard) backwards}.parent-modal-backdrop>[role=dialog]{animation:parent-portal-panel-in .24s var(--ease-emphasized) backwards}.filter-panel.parent-filter-panel{animation:parent-portal-panel-in .18s var(--ease-emphasized) backwards}.filter-panel.parent-filter-panel.is-closing{animation:parent-portal-panel-out .14s var(--ease-standard) both}.parent-app-shell .custom-dropdown-menu-portal,.custom-dropdown-menu-portal.parent-filter-dropdown{animation-duration:.16s;animation-timing-function:var(--ease-emphasized)}.parent-app-shell .custom-dropdown-menu-portal.is-closing,.custom-dropdown-menu-portal.parent-filter-dropdown.is-closing{animation-duration:.14s;animation-timing-function:ease-in}@keyframes parent-portal-fade-in{0%{opacity:0}to{opacity:1}}@keyframes parent-portal-panel-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes parent-portal-panel-out{0%{opacity:1;transform:none}to{opacity:0;transform:translateY(4px)}}@media (prefers-reduced-motion:reduce){.parent-app-shell *,.parent-app-shell :before,.parent-app-shell :after,.parent-modal-backdrop,.parent-modal-backdrop *,.filter-panel.parent-filter-panel,.parent-filter-panel *,.custom-dropdown-menu-portal.parent-filter-dropdown,.parent-filter-dropdown *{transition:none!important;animation:none!important}.parent-app-shell .motion-reveal{opacity:1;transform:none}}.portal-sidebar .sidebar-top,.portal-sidebar .sidebar-profile{flex-shrink:0}.portal-sidebar .sidebar-nav{overscroll-behavior:contain;scrollbar-color:#64748b transparent;scrollbar-width:thin;flex:auto;gap:14px;min-height:0;padding:2px 4px 16px 0;overflow-x:hidden}.portal-sidebar .sidebar-overview,.portal-sidebar .sidebar-group{flex:none;min-width:0}.portal-sidebar .sidebar-group-heading{color:#9ca3af;letter-spacing:0;text-transform:uppercase;justify-content:space-between;align-items:center;gap:8px;min-height:36px;margin:0 0 4px;padding:8px 12px;font-size:10px;font-weight:600;line-height:1.5;list-style:none;display:flex}.portal-sidebar summary.sidebar-group-heading{cursor:pointer;border-radius:8px}.portal-sidebar summary.sidebar-group-heading::-webkit-details-marker{display:none}.portal-sidebar summary.sidebar-group-heading:hover{color:#f8fafc;background:#ffffff0a}.portal-sidebar .sidebar-group-heading>span{overflow-wrap:anywhere;min-width:0}.portal-sidebar .sidebar-group-heading>svg{flex:0 0 14px;transition:transform .18s;transform:rotate(-90deg)}.portal-sidebar .sidebar-group[open]>summary>svg{transform:rotate(0)}.portal-sidebar .sidebar-group-items{flex-direction:column;gap:4px;display:flex}.app-shell.dashboard-shell .sidebar.portal-sidebar .nav-item{color:#b6c1d1;gap:12px;padding:9px 12px;line-height:1.45}.portal-sidebar .nav-item>svg{flex-shrink:0}.portal-sidebar .nav-item>span{overflow-wrap:anywhere;text-align:left;flex:1;min-width:0}.app-shell.dashboard-shell .sidebar.portal-sidebar .nav-item:hover,.app-shell.dashboard-shell .sidebar.portal-sidebar .nav-item.active{color:#f8fafc}.portal-sidebar .nav-item:focus-visible,.portal-sidebar summary:focus-visible{outline-offset:-2px;outline:2px solid #8cbaff}.app-shell.dashboard-shell .sidebar.portal-sidebar .brand-lockup strong,.app-shell.dashboard-shell .sidebar.portal-sidebar .profile-copy strong{color:#f8fafc}.app-shell.dashboard-shell .sidebar.portal-sidebar .brand-lockup span,.app-shell.dashboard-shell .sidebar.portal-sidebar .profile-copy>span,.app-shell.dashboard-shell .sidebar.portal-sidebar .profile-more{color:#9ca3af}@media (width<=700px){.portal-sidebar summary.sidebar-group-heading,.app-shell.dashboard-shell .sidebar.portal-sidebar .nav-item{min-height:44px}}@media (prefers-reduced-motion:reduce){.portal-sidebar .sidebar-group-heading>svg{transition:none}}.brand-logo{object-fit:contain;max-width:100%;height:auto;display:block}.brand-lockup .sidebar-brand-logo{flex:0 86px;width:86px;min-width:0}.brand-lockup>div{min-width:0}.login-branding .login-brand-logo{width:220px;height:auto;margin:0 auto 16px}.manager-profile-page{min-width:0}.manager-profile-page .page-header{gap:16px}.manager-profile-card .account-settings-profile{flex-wrap:wrap}.manager-profile-card .account-settings-heading p{overflow-wrap:anywhere}.manager-profile-card .account-settings-grid label,.manager-profile-card .account-settings-grid input{min-width:0}.manager-profile-actions{flex-wrap:wrap;gap:10px}.manager-profile-actions .secondary-button{margin:0}.manager-profile-error{color:#e16a6a;line-height:1.5}.manager-daily-care-page .daily-care-page-header h2{color:var(--text)}.manager-daily-care-page .daily-care-page-header p{color:var(--muted)}@media (width<=700px){.manager-profile-actions>button{flex:120px;justify-content:center}}.teacher-certificates-heading{flex-wrap:wrap;align-items:flex-start;gap:16px}.teacher-certificates-heading>div{flex:240px;min-width:0}.teacher-certificates-heading .primary-button{flex-shrink:0}.teacher-certificates-session-note{color:var(--muted);align-items:flex-start;gap:8px;margin:0 0 18px;font-size:12px;line-height:1.6;display:flex}.teacher-certificates-session-note svg{flex-shrink:0;margin-top:2px}.teacher-certificates-empty{color:var(--muted);text-align:center;flex-direction:column;align-items:center;gap:10px;padding:28px 12px;display:flex}.teacher-certificates-empty strong{color:var(--text);font-size:14px}.teacher-certificates-empty p{margin:0;font-size:12px;line-height:1.6}.teacher-certificate-list{margin:0;padding:0;list-style:none}.teacher-certificate-list>li{border-top:1px solid var(--border);grid-template-columns:24px minmax(0,1fr) auto;align-items:start;gap:14px;padding:20px 0;display:grid}.teacher-certificate-list>li:last-child{padding-bottom:0}.teacher-certificate-icon{color:var(--blue);margin-top:2px}.teacher-certificate-copy{overflow-wrap:anywhere;min-width:0}.teacher-certificate-copy h4{color:var(--text);margin:0;font-size:15px;line-height:1.5}.teacher-certificate-copy>p{color:var(--muted);margin:4px 0 12px;font-size:12px}.teacher-certificate-copy dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 20px;margin:0;display:grid}.teacher-certificate-copy dt{color:var(--muted);margin-bottom:4px;font-size:11px}.teacher-certificate-copy dd{color:var(--text);margin:0;font-size:12px;line-height:1.6}.teacher-certificate-original{grid-column:1/-1}.teacher-certificate-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.teacher-certificate-actions .secondary-button{margin:0}.staff-profile-certificates .teacher-certificate-list>li{grid-template-columns:24px minmax(0,1fr)}.staff-profile-certificates .teacher-certificate-actions{grid-column:2}.teacher-certificate-notice{color:var(--text);background:#22c55e14;border-radius:8px;align-items:center;gap:9px;margin-bottom:18px;padding:10px 12px;font-size:12px;line-height:1.6;display:flex}.teacher-certificate-notice>svg{color:#22a56a;flex-shrink:0}.teacher-certificate-notice .icon-button{flex-shrink:0;margin-left:auto}.teacher-certificate-notice.is-error{background:#ef444414}.teacher-certificate-notice.is-error>svg{color:#e16a6a}.teacher-certificate-backdrop{z-index:120}.teacher-certificate-dialog{overscroll-behavior:contain;max-width:680px;max-height:calc(100dvh - 40px)}.teacher-certificate-dialog>header{gap:16px}.teacher-certificate-dialog>header h3{letter-spacing:0;overflow-wrap:anywhere;font-size:20px;line-height:1.4}.teacher-certificate-dialog>header .icon-button{flex-shrink:0}.teacher-certificate-form{border:0;min-width:0;margin:0;padding:0}.teacher-certificate-form>label,.teacher-certificate-field{color:var(--muted);flex-direction:column;gap:7px;min-width:0;font-size:11px;display:flex}.teacher-certificate-form input,.teacher-certificate-form .custom-dropdown,.teacher-certificate-form .custom-date-picker{width:100%;min-width:0}.teacher-certificate-file{grid-column:1/-1}.teacher-certificate-file .leave-upload-control{border-radius:8px}.teacher-certificate-file .leave-upload-button{min-height:44px}.teacher-certificate-file .leave-upload-button strong{overflow-wrap:anywhere;white-space:normal}.teacher-certificate-file .leave-upload-control .icon-button{flex-shrink:0}.teacher-certificate-hint{color:var(--muted);overflow-wrap:anywhere;font-size:12px;line-height:1.6}.teacher-certificate-error{color:#e16a6a;margin:0;font-size:12px;line-height:1.6}.teacher-certificate-clear-date{color:var(--blue);cursor:pointer;font:inherit;background:0 0;border:0;align-self:flex-start;min-height:32px;padding:0}.teacher-certificate-dialog-footer{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;margin-top:20px;padding-top:16px;display:flex}.teacher-certificate-dialog-footer .secondary-button{margin:0;text-decoration:none}.teacher-certificate-delete-copy{color:var(--text);overflow-wrap:anywhere;font-size:14px;line-height:1.7}.teacher-certificate-dialog-footer .teacher-certificate-danger{color:#fff;background:#d14343;border-color:#d14343}.teacher-certificate-preview{max-width:960px}.teacher-certificate-image{object-fit:contain;max-width:100%;height:auto;max-height:60dvh;margin:0 auto;display:block}.teacher-certificate-pdf{background:#fff;border:0;width:100%;height:60dvh;min-height:240px;display:block}.teacher-certificate-spinner{animation:1s linear infinite teacherCertificateSpin}@keyframes teacherCertificateSpin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.teacher-certificate-spinner{animation:none}}@media (width<=1000px){.teacher-profile-layout{grid-template-columns:minmax(0,1fr)}.teacher-profile-layout .settings-panels,.teacher-profile-layout .form-grid,.teacher-profile-layout .form-grid label{min-width:0}.teacher-profile-layout .profile-form{flex-direction:column}.teacher-profile-layout .profile-form .form-grid{grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.teacher-profile-layout .form-grid input{width:100%;min-width:0}.teacher-certificate-list>li{grid-template-columns:24px minmax(0,1fr)}.teacher-certificate-actions{grid-column:2}}@media (width<=700px){.teacher-certificates{min-width:0}.teacher-certificates-heading .primary-button{justify-content:center;width:100%}.teacher-certificate-list>li{grid-template-columns:24px minmax(0,1fr)}.teacher-certificate-actions{grid-column:2}.teacher-certificate-copy dl,.teacher-certificate-form{grid-template-columns:minmax(0,1fr)}.teacher-certificate-backdrop{padding:12px}.teacher-certificate-dialog{max-height:calc(100dvh - 24px);padding:18px}.teacher-certificate-form input{font-size:16px}.teacher-certificate-dialog .icon-button,.teacher-certificate-dialog-footer>*,.teacher-certificate-actions>*{min-height:44px}.teacher-certificate-dialog-footer>*{justify-content:center}.teacher-certificate-dialog .teacher-certificate-dialog-footer{flex-direction:column;align-items:stretch}.teacher-certificate-dialog-footer>*{flex:none;width:100%}}.portal-entry{box-sizing:border-box;color:#172b3a;background:#fff;flex-direction:column;min-height:100dvh;font-family:Plus Jakarta Sans,Inter,system-ui,sans-serif;display:flex}.portal-entry *{box-sizing:border-box}.portal-entry-header,.portal-entry-main,.portal-entry-footer{width:100%;max-width:1200px;margin:0 auto}.portal-entry-header{border-bottom:1px solid #edf0f3;justify-content:space-between;align-items:center;gap:24px;padding:22px 40px;display:flex}.portal-entry-brand{flex-direction:column;gap:6px;display:flex}.portal-entry-header .brand-logo{width:185px}.portal-entry-brand>span{color:#637285;letter-spacing:.025em;font-size:10px;font-weight:500}.portal-entry-motto{color:#637285;align-items:center;gap:10px;margin:0;font-size:12px;font-weight:500;display:flex}.portal-entry-motto>span{color:#dc6b12;font-size:22px}.portal-entry-main{flex:1;padding:0 40px}.portal-entry-hero{grid-template-columns:1.05fr 1fr;align-items:center;gap:56px;padding:60px 0 64px;display:grid}.portal-entry-eyebrow{color:#a84c0d;letter-spacing:.07em;text-transform:uppercase;align-items:center;gap:9px;margin:0 0 20px;font-size:11px;font-weight:700;display:flex}.portal-entry-eyebrow>span{background:#ef8b31;border-radius:50%;flex:0 0 6px;height:6px;margin:0 4px;box-shadow:0 0 0 5px #fff3e7}.portal-entry-intro h1{letter-spacing:-.045em;margin:0 0 23px;font-size:clamp(38px,4.2vw,58px);font-weight:700;line-height:1.15}.portal-entry-intro h1>span{color:#d8660c;display:block}.portal-entry-lead{color:#314357;margin:0 0 12px;font-size:18px;font-weight:600;line-height:1.6}.portal-entry-description{color:#637285;max-width:390px;margin:0;font-size:14px;line-height:1.85}.portal-entry-visual{isolation:isolate;min-width:0;position:relative}.portal-entry-visual:before{content:"";z-index:-1;background:#fff2e2;border-radius:30px;position:absolute;inset:16px -13px -13px 18px;transform:rotate(2deg)}.portal-entry-sun{z-index:-1;background:#fff0d0;border-radius:50%;width:90px;height:90px;position:absolute;top:-24px;right:-19px}.portal-entry-photo{aspect-ratio:1.4;object-fit:cover;border:5px solid #fff;border-radius:26px;width:100%;height:auto;display:block;box-shadow:0 12px 36px #172b3a0d}.portal-entry-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;display:grid}.portal-choice{--portal-accent:#c35a0b;--portal-soft:#fff0df;--portal-button:#cc5e09;--portal-hover:#af4b05;background:linear-gradient(155deg,#fff9f2,#fff 55%);border:1px solid #eddfd0;border-radius:22px;flex-direction:column;padding:30px;transition:border-color .2s,box-shadow .2s,transform .2s;display:flex;position:relative;box-shadow:0 6px 24px #172b3a06}.portal-choice-staff{--portal-accent:#2366b9;--portal-soft:#e8f2ff;--portal-button:#236ac2;--portal-hover:#19539c;background:linear-gradient(155deg,#f2f8ff,#fff 55%);border-color:#d9e4f0}.portal-choice:hover,.portal-choice:focus-within{border-color:var(--portal-accent);transform:translateY(-3px);box-shadow:0 12px 32px #172b3a0e}.portal-choice-heading{align-items:center;gap:17px;display:flex}.portal-choice-icon{background:var(--portal-soft);color:var(--portal-accent);border:1px solid #ffffffb3;border-radius:16px;flex:0 0 58px;justify-content:center;align-items:center;height:58px;display:flex}.portal-choice h2{letter-spacing:-.035em;margin:0 0 5px;font-size:23px;font-weight:700;line-height:1.3}.portal-choice-heading p{color:#637285;margin:0;font-size:12px;line-height:1.6}.portal-choice-welcome{color:#4b5e71;max-width:370px;margin:23px 0 26px;font-size:14px;line-height:1.8}.portal-choice-action{background:var(--portal-button);color:#fff;border:1px solid #0000;border-radius:11px;justify-content:space-between;align-items:center;gap:14px;min-height:50px;margin-top:auto;padding:14px 18px;font-size:13px;font-weight:600;text-decoration:none;transition:background .2s,box-shadow .2s,transform .15s;display:flex}.portal-choice-action:hover{background:var(--portal-hover);box-shadow:0 4px 12px #172b3a18}.portal-choice-action:focus-visible{outline:3px solid var(--portal-accent);outline-offset:4px}.portal-choice-action:active{background:var(--portal-hover);box-shadow:inset 0 2px 5px #172b3a33}.portal-entry-benefits{border-bottom:1px solid #edf0f3;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;padding:43px 0 35px;display:grid}.portal-entry-benefits>div{text-align:center;min-width:0}.portal-entry-benefits svg{color:#698394;margin-bottom:10px}.portal-entry-benefits h2{letter-spacing:-.015em;margin:0 0 5px;font-size:12px;font-weight:700;line-height:1.5}.portal-entry-benefits p{color:#637285;margin:0;font-size:10px;line-height:1.7}.portal-entry-footer{color:#637285;justify-content:space-between;align-items:center;gap:16px;padding:23px 40px;font-size:10px;display:flex}.portal-entry-footer strong{color:#35485b;font-size:11px;font-weight:600}.portal-route-pending{color:#475569;background:#fff;min-height:100vh;margin:0;padding:48px;font:14px Plus Jakarta Sans,sans-serif}.portal-entry-intro{animation:.5s cubic-bezier(.16,1,.3,1) backwards portal-entry-rise-in}.portal-entry-visual{animation:.6s cubic-bezier(.16,1,.3,1) 60ms backwards portal-entry-rise-in}.portal-choice{animation:.52s cubic-bezier(.16,1,.3,1) 80ms backwards portal-entry-rise-in}.portal-choice-staff{animation-delay:.14s}.portal-choice:focus-within{animation:none}.portal-choice-icon,.portal-choice-action svg{transition:transform .2s}.portal-choice-action:active{transform:translateY(1px)}@media (hover:hover) and (pointer:fine){.portal-choice:hover .portal-choice-icon{transform:translateY(-2px)}.portal-choice-action:hover svg{transform:translate(3px)}}@keyframes portal-entry-rise-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (width>=700px) and (width<=1000px){.portal-entry-hero{gap:30px;padding:48px 0 52px}.portal-entry-intro h1{font-size:43px}.portal-entry-lead{font-size:16px}.portal-entry-description{font-size:13px}.portal-entry-photo{aspect-ratio:1.05;object-position:20% center}.portal-choice{padding:24px}.portal-choice-heading{gap:12px}.portal-choice h2{font-size:20px}.portal-choice-icon{flex-basis:48px;height:48px}.portal-choice-heading p{font-size:11px}.portal-entry-cards{gap:20px}}@media (width<=699px){.portal-entry-header{gap:14px;padding:18px 24px}.portal-entry-header .brand-logo{width:146px}.portal-entry-brand>span{font-size:8px}.portal-entry-motto{text-align:right;max-width:115px;font-size:10px;line-height:1.7;display:block}.portal-entry-motto>span{display:none}.portal-entry-main{padding:0 24px}.portal-entry-hero{grid-template-columns:1fr;gap:30px;padding:35px 0 40px}.portal-entry-eyebrow{margin-bottom:18px;font-size:9px}.portal-entry-intro h1{margin-bottom:18px;font-size:clamp(34px,8.5vw,46px)}.portal-entry-lead{margin-bottom:9px;font-size:15px}.portal-entry-description{max-width:420px;font-size:13px}.portal-entry-visual{margin:0 4px}.portal-entry-photo{aspect-ratio:1.6;border-radius:21px}.portal-entry-sun{width:65px;height:65px;top:-15px;right:-12px}.portal-entry-visual:before{border-radius:22px;inset:10px -7px -8px 12px}.portal-entry-cards{grid-template-columns:1fr;gap:20px}.portal-choice{border-radius:19px;padding:24px}.portal-choice-heading{gap:12px}.portal-choice-icon{border-radius:13px;flex-basis:48px;height:48px}.portal-choice h2{font-size:22px}.portal-choice-heading p{font-size:11px}.portal-choice-welcome{margin:21px 0 23px;font-size:13px}.portal-entry-benefits{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 15px;padding:34px 0 28px}.portal-entry-benefits h2{font-size:11px}.portal-entry-benefits p{font-size:10px}.portal-entry-footer{padding:20px 24px}}@media (width<=359px){.portal-entry-header{padding:16px 20px}.portal-entry-main{padding:0 20px}.portal-choice{padding:21px 18px}.portal-choice h2{font-size:20px}.portal-entry-footer{flex-direction:column;align-items:flex-start;gap:6px;padding:18px 20px}}@media (prefers-reduced-motion:reduce){.portal-entry-intro,.portal-entry-visual,.portal-choice{animation:none}.portal-choice,.portal-choice-action,.portal-choice-icon,.portal-choice-action svg{transition:none}.portal-choice:hover,.portal-choice:focus-within,.portal-choice:hover .portal-choice-icon,.portal-choice-action:hover svg,.portal-choice-action:active{transform:none}}.teacher-class-dashboard{color:var(--text);gap:20px;display:grid}.teacher-class-dashboard .student-page-header{margin-bottom:0}.teacher-class-dashboard .content-panel{margin:0}.teacher-class-overview-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:16px;padding:0 22px 22px;display:grid}.teacher-class-overview-grid article{background:var(--canvas);border:1px solid var(--border);border-radius:14px;min-width:0;padding:18px}.teacher-class-dashboard h4{margin:0 0 14px;font-size:14px}.teacher-class-overview-grid dl{gap:12px;margin:0;display:grid}.teacher-class-dashboard dt{color:var(--muted);font-size:11px}.teacher-class-dashboard dd{overflow-wrap:anywhere;margin:3px 0 0;font-size:13px;font-weight:600;line-height:1.6}.teacher-class-section-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;display:flex}.teacher-class-dashboard h3{margin:0;font-size:17px}.teacher-class-section-heading span{color:var(--muted);font-size:12px}.teacher-class-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:16px;display:grid}.teacher-class-stat-grid article{padding:20px}.teacher-class-stat-grid svg{color:var(--blue);margin-bottom:12px}.teacher-class-stat-grid strong{font-size:32px;display:block}.teacher-class-stat-grid strong small{font-size:12px;font-weight:500}.teacher-class-stat-grid p,.teacher-class-recent p{color:var(--muted);font-size:12px;line-height:1.6}.teacher-class-stat-grid small{color:var(--muted);font-size:11px}.teacher-class-stat-grid dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.teacher-class-quick-actions,.teacher-class-recent{padding:22px}.teacher-class-quick-actions>div{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:16px;display:grid}.teacher-class-quick-actions button{justify-content:flex-start;min-height:48px;padding:12px}.teacher-class-quick-actions button span{text-align:left;flex:1}.teacher-class-dashboard button{white-space:normal}.teacher-class-recent ul{margin:10px 0 0;padding:0;list-style:none}.teacher-class-recent li{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;padding:14px 0;display:flex}.teacher-class-recent li:last-child{border:0;padding-bottom:0}.teacher-class-recent li>div{min-width:0}.teacher-class-recent strong{overflow-wrap:anywhere;font-size:13px}.teacher-class-recent small{color:var(--muted);font-size:11px;line-height:1.6;display:block}@media (width<=1000px){.teacher-class-quick-actions>div{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=700px){.teacher-class-stat-grid{grid-template-columns:1fr}.teacher-class-overview-grid{padding:0 16px 16px}.teacher-class-quick-actions,.teacher-class-recent{padding:18px}.teacher-class-quick-actions>div{grid-template-columns:1fr}}.staff-directory-categories{flex-wrap:wrap;max-width:100%;margin:18px 0 0}.staff-directory-categories button{gap:8px}.staff-directory-categories button>span{color:var(--muted);font-size:11px}.staff-directory-categories button:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
