:root{--color-primary: #176b52;--color-primary-container: #d7f3e7;--color-on-primary: #ffffff;--color-secondary: #b45309;--color-secondary-container: #fef0c7;--color-background: #f7f9f8;--color-surface: #ffffff;--color-surface-muted: #eff3f1;--color-on-surface: #17211d;--color-on-surface-muted: #60706a;--color-outline: #cfd8d4;--color-error: #b42318;--color-error-container: #fee4e2;--color-warning: #b54708;--color-info: #175cd3;--color-success: #067647;--shadow-floating: 0 12px 30px rgba(23, 33, 29, .1);--space-xs: 4px;--space-sm: 8px;--space-md: 12px;--space-lg: 16px;--space-xl: 20px;--space-2xl: 24px;--space-3xl: 32px;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px}:root{--admin-canvas: color-mix( in srgb, var(--color-background) 78%, var(--color-secondary-container) );--admin-line: color-mix( in srgb, var(--color-outline) 50%, var(--color-surface) );--admin-soft: color-mix( in srgb, var(--color-surface-muted) 55%, var(--color-surface) );--admin-forest: color-mix( in srgb, var(--color-primary) 44%, var(--color-on-surface) );--admin-green-soft: color-mix( in srgb, var(--color-primary-container) 46%, var(--color-surface) );--admin-blue-soft: color-mix( in srgb, var(--color-info) 8%, var(--color-surface) );--admin-rose-soft: color-mix( in srgb, var(--color-error-container) 48%, var(--color-surface) );--admin-amber-soft: color-mix( in srgb, var(--color-secondary-container) 52%, var(--color-surface) );--admin-shadow: 0 8px 28px color-mix(in srgb, var(--color-on-surface) 7%, transparent);--admin-focus: 0 0 0 3px color-mix(in srgb, var(--color-primary) 20%, transparent)}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:var(--admin-canvas);color:var(--color-on-surface);font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif;font-size:14px;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{transition:color .16s,background .16s,border-color .16s,box-shadow .16s}button{cursor:pointer}a{color:inherit;text-decoration:none}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}svg{flex-shrink:0}h1,h2,h3,p{margin-top:0}h1,h2,h3,strong{font-weight:600}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-60px;left:20px;padding:12px;background:var(--color-surface);z-index:100}.skip-link:focus{top:10px}.muted,.sub{color:var(--color-on-surface-muted)}.mono,code{font-family:ui-monospace,SFMono-Regular,monospace;font-size:12px}.nowrap{white-space:nowrap}.button{min-height:40px;padding:0 16px;border:1px solid transparent;border-radius:8px;display:inline-flex;justify-content:center;align-items:center;gap:8px;font-size:13px;font-weight:500;white-space:nowrap}.button.primary{background:var(--color-primary);color:var(--color-on-primary)}.button.primary:hover{background:var(--admin-forest)}.button.secondary{background:var(--color-surface);border-color:var(--admin-line);color:var(--color-on-surface-muted)}.button.secondary:hover{border-color:var(--color-primary);color:var(--color-primary)}.button.danger{color:var(--color-error);background:var(--color-surface);border-color:color-mix(in srgb,var(--color-error) 35%,var(--admin-line))}.button.danger:hover{color:var(--color-on-error);background:var(--color-error);border-color:var(--color-error)}.button.compact{min-height:32px;padding:0 12px;color:var(--color-primary);background:var(--admin-green-soft)}.button.compact:hover{background:var(--color-primary-container)}.icon-button{width:40px;height:40px;display:inline-grid;place-items:center;border:1px solid var(--admin-line);border-radius:8px;color:var(--color-on-surface-muted);background:var(--color-surface)}.icon-button:hover{color:var(--color-primary);background:var(--admin-green-soft)}label{display:grid;gap:9px;font-size:13px;font-weight:500}input,select,textarea{min-height:40px;border:1px solid var(--admin-line);background:var(--color-surface);color:var(--color-on-surface);border-radius:8px;padding:0 12px;min-width:0}textarea{min-height:96px;padding:11px 12px;resize:vertical;line-height:1.6}input::placeholder{color:var(--color-on-surface-muted);opacity:.85}input:focus,select:focus,textarea:focus{border-color:var(--color-primary);outline:none;box-shadow:var(--admin-focus)}.eyebrow{font-size:10px;letter-spacing:1.8px;font-weight:600;color:var(--color-on-surface-muted)}.brand{display:flex;align-items:center;gap:11px}.brand-symbol{width:42px;height:42px;border-radius:13px 13px 13px 4px;display:grid;place-items:center;background:var(--color-primary);color:var(--color-on-primary)}.brand strong{font-size:20px;letter-spacing:1.2px}.brand small{font-size:9px;letter-spacing:1.8px;color:var(--color-on-surface-muted);margin-top:5px;display:block}.brand.inverse{color:var(--color-on-primary)}.brand.inverse small{color:var(--color-primary-container)}.brand.inverse .brand-symbol{background:var(--color-primary-container);color:var(--admin-forest)}.shell{display:grid;grid-template-columns:228px minmax(0,1fr);min-height:100vh}.sidebar{height:100vh;position:sticky;top:0;padding:30px 18px 16px;background:var(--color-surface);border-right:1px solid var(--admin-line);display:flex;flex-direction:column;overflow-y:auto}.sidebar>.brand{margin:0 8px 32px}.workspace-label{display:flex;gap:10px;align-items:center;padding:12px;background:var(--admin-soft);border-radius:9px;margin-bottom:22px}.workspace-label>div{display:grid;gap:5px}.workspace-label strong{font-size:12px}.workspace-label small{font-size:10px;color:var(--color-on-surface-muted)}.workspace-mark{color:var(--color-primary)}.nav-group{margin-bottom:22px}.nav-group>p{font-size:10px;letter-spacing:1px;color:var(--color-on-surface-muted);margin:0 12px 9px}.nav-group a{display:flex;gap:12px;align-items:center;min-height:44px;padding:0 13px;border-radius:8px;margin:3px 0;color:var(--color-on-surface-muted);font-size:13px}.nav-group a:hover{background:var(--admin-soft);color:var(--color-primary)}.nav-group a.active{background:var(--color-primary);color:var(--color-on-primary);font-weight:500}.nav-arrow{margin-left:auto;opacity:0}.active .nav-arrow{opacity:.8}.sidebar-note{margin-top:auto;display:flex;gap:10px;align-items:flex-start;padding:20px 12px;color:var(--color-primary)}.sidebar-note span{font-size:11px;line-height:1.9;color:var(--color-on-surface-muted)}.sidebar-note strong{font-weight:400}.account{border-top:1px solid var(--admin-line);padding-top:16px;display:grid;grid-template-columns:35px 1fr 32px;gap:10px;align-items:center}.avatar,.top-avatar{display:grid;place-items:center;border-radius:50%;background:var(--color-secondary-container);color:var(--color-secondary);width:35px;height:35px;font-size:12px;font-weight:600}.account strong{font-size:12px}.account small{display:block;margin-top:4px;font-size:10px;color:var(--color-on-surface-muted)}.account .icon-button{width:32px;border:0}.workspace{min-width:0;display:flex;flex-direction:column}.topbar{min-height:72px;padding:0 34px;display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid var(--admin-line);background:var(--color-surface)}.breadcrumbs{display:flex;align-items:center;gap:12px;font-size:12px;color:var(--color-on-surface-muted)}.breadcrumbs strong{color:var(--color-on-surface)}.topbar-right{display:flex;gap:12px;align-items:center;color:var(--color-on-surface-muted);font-size:12px}.top-avatar{margin-left:12px;width:31px;height:31px}.topbar-divider{width:1px;height:20px;background:var(--admin-line);margin-right:8px}.nav-search{display:flex;align-items:center;gap:8px;position:relative}.nav-search input{border:0;width:142px;background:transparent;font-size:12px;padding-left:0}.nav-search-results{position:absolute;z-index:20;top:43px;right:0;width:220px;padding:6px;background:var(--color-surface);box-shadow:var(--admin-shadow);border:1px solid var(--admin-line);border-radius:10px}.nav-search-results a{display:flex;padding:12px;align-items:center;gap:10px}.nav-search-results a:hover{background:var(--admin-green-soft)}.nav-search-results a svg:last-child{margin-left:auto}.nav-search-results p{margin:12px}.mobile-bar{display:none}.page{width:100%;max-width:1600px;padding:32px 34px 24px;margin:0 auto;flex:1}.page-head{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:30px}.page-head h1{margin:0 0 10px;font-size:26px;letter-spacing:-.5px}.page-head p{margin:0;font-size:12px;color:var(--color-on-surface-muted);line-height:1.7}.page-actions{display:flex;gap:10px}.overview-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.overview-heading .eyebrow{display:flex;align-items:center;gap:9px;font-size:10px;letter-spacing:1px}.eyebrow i{height:3px;width:3px;border-radius:50%;background:var(--color-outline)}.updated{display:flex;align-items:center;gap:6px;font-size:10px;color:var(--color-on-surface-muted)}.live-dot{width:5px;height:5px;background:var(--color-success);border-radius:50%}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:24px}.metric{border:1px solid var(--admin-line);background:var(--color-surface);padding:19px 20px 15px;border-radius:12px}.metric-top{display:flex;justify-content:space-between;align-items:center;color:var(--color-on-surface-muted);font-size:12px}.metric-icon{display:grid;place-items:center;width:33px;height:33px;border-radius:10px;background:var(--admin-green-soft);color:var(--color-primary)}.metric.blue .metric-icon{background:var(--admin-blue-soft);color:var(--color-info)}.metric.amber .metric-icon{background:var(--admin-amber-soft);color:var(--color-secondary)}.metric.rose .metric-icon{background:var(--admin-rose-soft);color:var(--color-error)}.metric-value{font-size:35px;line-height:1.4;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:-1px;margin:7px 0 12px}.metric-value small{margin-left:7px;font-size:11px;letter-spacing:0;color:var(--color-on-surface-muted);font-weight:400}.metric-note{display:flex;align-items:center;gap:6px;color:var(--color-on-surface-muted);font-size:10px;border-top:1px solid var(--admin-line);padding-top:11px}.metric-dot{width:4px;height:4px;border-radius:50%;background:var(--color-on-surface-muted)}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(295px,1fr);gap:22px}.dashboard-main,.dashboard-rail{min-width:0;display:flex;flex-direction:column;gap:22px}.section{background:var(--color-surface);border:1px solid var(--admin-line);border-radius:12px}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:23px 24px 0}.section-heading h2{font-size:15px;margin:0}.section-heading p{font-size:11px;color:var(--color-on-surface-muted);margin:7px 0 0;line-height:1.6}.section-heading>svg{color:var(--color-on-surface-muted)}.text-link{display:inline-flex;align-items:center;gap:3px;color:var(--color-primary);font-size:11px;white-space:nowrap}.text-link:hover{text-decoration:underline}.attendance-visual{padding:28px 34px;display:flex;align-items:center;justify-content:space-around;gap:40px}.attendance-ring{width:174px;height:174px;padding:12px;border-radius:50%;flex-shrink:0;background:conic-gradient(var(--color-primary) var(--progress),var(--admin-soft) 0)}.attendance-ring>div{height:100%;background:var(--color-surface);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px}.attendance-ring span{font-size:10px;color:var(--color-on-surface-muted)}.attendance-ring strong{font-size:35px;line-height:1.2;font-variant-numeric:tabular-nums}.attendance-ring small{font-size:15px;margin-left:2px;font-weight:400}.attendance-breakdown{min-width:150px;flex:1;max-width:240px}.breakdown-row{display:flex;justify-content:space-between;align-items:center;margin:16px 0;font-size:12px}.breakdown-row>span{display:flex;align-items:center;gap:9px;color:var(--color-on-surface-muted)}.breakdown-row strong{font-size:15px}.breakdown-row small{margin-left:8px;color:var(--color-on-surface-muted);font-size:10px;font-weight:400}.legend{width:7px;height:7px;border-radius:2px;background:var(--color-primary)}.legend-1{background:var(--color-secondary)}.legend-2{background:var(--color-info)}.legend-3{background:var(--color-on-surface-muted)}.legend-4{background:var(--color-error)}.section-footnote{border-top:1px solid var(--admin-line);padding:12px 24px;color:var(--color-on-surface-muted);display:flex;gap:7px;align-items:center;font-size:10px;line-height:1.7}.class-list{padding:8px 24px}.class-row{display:flex;gap:13px;align-items:center;padding:22px 0;border-bottom:1px solid var(--admin-line)}.class-row:last-child{border:0}.class-icon{width:40px;height:40px;border-radius:11px;display:grid;place-items:center;color:var(--color-primary);background:var(--admin-green-soft)}.class-icon.amber{color:var(--color-secondary);background:var(--admin-amber-soft)}.class-info{flex:1;min-width:0}.class-info strong{font-size:12px}.class-info>span{display:block;font-size:10px;color:var(--color-on-surface-muted);margin-top:6px}.class-teacher{display:grid;gap:6px;min-width:60px}.class-teacher span{font-size:10px;color:var(--color-on-surface-muted)}.class-teacher strong{font-size:11px}.class-capacity{width:80px;margin-left:16px;font-size:10px;color:var(--color-on-surface-muted)}.class-capacity strong{color:var(--color-on-surface);font-size:13px}.class-capacity meter{width:100%;height:9px;margin-top:5px;appearance:none}.class-capacity meter::-webkit-meter-bar{border:0;background:var(--admin-soft);height:4px;border-radius:4px}.class-capacity meter::-webkit-meter-optimum-value{background:var(--color-primary)}.count-label{padding:4px 9px;border-radius:5px;color:var(--color-secondary);background:var(--admin-amber-soft);font-size:10px}.todo-list{padding:10px 20px 5px}.todo-row{display:flex;gap:10px;align-items:center;border-bottom:1px solid var(--admin-line);padding:17px 0}.todo-row:last-child{border:0}.todo-row:hover strong{color:var(--color-primary)}.task-icon{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;background:var(--admin-green-soft);color:var(--color-primary)}.task-icon.danger{background:var(--admin-rose-soft);color:var(--color-error)}.task-icon.amber{background:var(--admin-amber-soft);color:var(--color-secondary)}.task-icon.blue{background:var(--admin-blue-soft);color:var(--color-info)}.todo-row>div{flex:1}.todo-row strong{font-size:12px}.todo-row small{display:block;font-size:10px;color:var(--color-on-surface-muted);line-height:1.6;margin-top:5px}.task-count{font-size:17px;font-weight:600}.todo-row>svg{color:var(--color-on-surface-muted)}.feed{margin:0 24px;padding:20px 0;display:flex;gap:10px;border-bottom:1px solid var(--admin-line)}.feed:last-child{border:0}.feed-dot{width:6px;height:6px;border-radius:50%;background:var(--color-primary);margin-top:5px;flex-shrink:0}.feed strong{font-size:12px}.feed p{font-size:11px;color:var(--color-on-surface-muted);line-height:1.8;margin:6px 0}.feed small{font-size:10px;color:var(--color-on-surface-muted)}.notification-section .empty{min-height:194px}.care-note{display:flex;gap:15px;background:var(--admin-green-soft);border:1px solid color-mix(in srgb,var(--color-primary-container) 65%,var(--color-surface));padding:24px;border-radius:12px;color:var(--color-primary)}.care-note strong{font-size:13px}.care-note p{font-size:11px;line-height:1.9;color:var(--color-on-surface-muted);margin:9px 0 14px}.care-note a{display:inline-flex;align-items:center;gap:7px;font-size:11px}.care-note a:hover{text-decoration:underline}.quick-section .section-heading{padding:0 0 16px}.quick-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--admin-line);border-radius:10px;background:var(--color-surface)}.quick-links a{padding:18px 14px;display:flex;gap:8px;align-items:center;border-right:1px solid var(--admin-line);font-size:11px}.quick-links a:last-child{border:0}.quick-links a>svg:first-child{color:var(--color-primary)}.quick-links a>svg:last-child{margin-left:auto;color:var(--color-on-surface-muted)}.quick-links a:hover{background:var(--admin-green-soft)}.workspace-footer{padding:18px 34px 24px;display:flex;justify-content:space-between;color:var(--color-on-surface-muted);font-size:10px}.workspace-footer>span:first-child{display:flex;gap:6px;align-items:center}.record-summary{display:flex;align-items:center;gap:25px;margin:0 0 24px;padding:22px 24px;background:var(--color-surface);border:1px solid var(--admin-line);border-radius:11px}.summary-icon{color:var(--color-primary);background:var(--admin-green-soft);width:48px;height:48px;display:grid;place-items:center;border-radius:12px}.record-summary>div{display:grid;gap:10px;min-width:130px;padding-right:35px;border-right:1px solid var(--admin-line)}.record-summary>div:last-child{border:0}.record-summary>div>span{color:var(--color-on-surface-muted);font-size:11px}.record-summary strong{font-size:21px;font-variant-numeric:tabular-nums}.data-section{background:var(--color-surface);border-radius:12px;border:1px solid var(--admin-line);overflow:hidden}.data-section-heading{padding:22px 24px 0;display:flex;justify-content:space-between;align-items:center}.data-section-heading h2{font-size:15px;margin:0;display:flex;align-items:center;gap:9px}.data-section-heading h2>span{font-size:11px;font-weight:400;padding:3px 7px;background:var(--admin-soft);border-radius:5px;color:var(--color-on-surface-muted)}.data-section-heading>span{display:inline-flex;gap:5px;font-size:10px;color:var(--color-on-surface-muted)}.filter-bar{padding:20px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px}.search{position:relative;width:310px;max-width:100%}.search>svg{position:absolute;top:12px;left:12px;color:var(--color-on-surface-muted)}.search input{padding:0 34px 0 38px;font-size:12px;background:var(--admin-soft);border-color:transparent}.search input:focus{border-color:var(--color-primary)}.search-clear{position:absolute;right:3px;top:3px;width:34px;height:34px;border:0;background:transparent;color:var(--color-on-surface-muted);display:grid;place-items:center}.filter-controls{display:flex;gap:10px;align-items:center}.filter-select{position:relative;display:flex;align-items:center}.filter-select>svg{position:absolute;left:11px;pointer-events:none;color:var(--color-on-surface-muted)}.filter-select select,.filter-select input{font-size:12px;padding-left:34px}.sort-button{font-size:12px}.sort-button.selected{color:var(--color-primary);background:var(--admin-green-soft)}.table-wrap{overflow-x:auto}.table-wrap table{border-collapse:collapse;width:100%;min-width:820px;font-size:12px}.table-wrap th{font-size:11px;font-weight:500;color:var(--color-on-surface-muted);background:var(--admin-soft);padding:14px 22px;text-align:left;white-space:nowrap;border-top:1px solid var(--admin-line);border-bottom:1px solid var(--admin-line)}.table-wrap td{border-bottom:1px solid var(--admin-line);padding:20px 22px;line-height:1.65;vertical-align:middle}.table-wrap tr:last-child td{border-bottom:0}.table-wrap tbody tr:hover{background:color-mix(in srgb,var(--admin-green-soft) 40%,var(--color-surface))}.sub{display:block;font-size:10px;margin-top:5px;word-break:break-all}.person{display:flex;align-items:center;gap:10px;min-width:115px}.person-avatar{width:35px;height:35px;flex-shrink:0;display:grid;place-items:center;border-radius:11px;background:var(--admin-green-soft);color:var(--color-primary);font-size:10px}.person small{display:block;font-size:10px;color:var(--color-on-surface-muted);margin-top:4px}.table-detail{border:1px solid var(--admin-line);background:var(--color-surface);color:var(--color-on-surface-muted);height:36px;width:36px;border-radius:8px;display:grid;place-items:center}.table-detail:hover{color:var(--color-primary);border-color:var(--color-primary)}.action-cell{width:65px;text-align:right!important}.table-footer{padding:17px 24px;border-top:1px solid var(--admin-line);color:var(--color-on-surface-muted);font-size:11px;display:flex;justify-content:space-between;align-items:center;gap:12px}.table-footer strong{color:var(--color-on-surface)}.pagination{display:flex;gap:10px;align-items:center}.pagination .icon-button{width:30px;height:30px}.page-number{color:var(--color-on-surface)}.badge{display:inline-flex;align-items:center;gap:6px;padding:3px 8px;font-size:10px;border-radius:5px;background:var(--admin-soft);color:var(--color-on-surface-muted);line-height:1.8;overflow-wrap:anywhere}.badge i{width:4px;height:4px;border-radius:50%;background:currentColor;flex-shrink:0}.badge.success{background:var(--admin-green-soft);color:var(--color-success)}.badge.danger{background:var(--admin-rose-soft);color:var(--color-error)}.badge.amber{background:var(--admin-amber-soft);color:var(--color-secondary)}.badge.blue{background:var(--admin-blue-soft);color:var(--color-info)}.class-tag{font-size:11px;background:var(--admin-soft);padding:5px 9px;border-radius:4px;white-space:nowrap}.money{font-variant-numeric:tabular-nums;font-weight:600}.money.paid{color:var(--color-primary)}.long-text{display:block;max-width:240px;min-width:130px}.time-cell{display:flex;gap:6px;align-items:center;font-variant-numeric:tabular-nums}.time-cell svg{color:var(--color-on-surface-muted)}.care-alert{display:flex;gap:7px;align-items:flex-start;font-size:11px;color:var(--color-error);max-width:240px}.care-alert svg{margin-top:2px}.safety-strip{padding:16px 20px;border-radius:9px;background:var(--admin-green-soft);border:1px solid var(--color-primary-container);color:var(--color-primary);display:flex;align-items:center;gap:10px;margin-bottom:22px}.safety-strip>span{font-size:12px;font-weight:600}.safety-strip p{font-size:12px;color:var(--color-on-surface-muted);margin:0}.safety-strip .strip-tag{margin-left:auto;font-weight:400;font-size:10px}.view-tabs{display:flex;gap:28px;padding:0 24px;border-bottom:1px solid var(--admin-line)}.view-tabs button{padding:18px 0 15px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--color-on-surface-muted);font-size:13px}.view-tabs button.active{color:var(--color-primary);border-bottom-color:var(--color-primary);font-weight:600}.empty,.state{min-height:220px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center;padding:28px}.empty>span{width:46px;height:46px;border-radius:50%;background:var(--admin-soft);display:grid;place-items:center;color:var(--color-on-surface-muted);margin-bottom:4px}.empty strong,.state strong{font-size:12px;color:var(--color-on-surface-muted)}.empty p,.state>span{font-size:11px;margin:0;color:var(--color-on-surface-muted);line-height:1.7}.state>svg{color:var(--color-primary)}.state-error>svg{color:var(--color-error)}.state .button{margin-top:8px}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.boot{display:flex;gap:22px;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;color:var(--color-on-surface-muted);font-size:12px}.boot .brand{margin-bottom:20px}.detail-dialog{width:550px;max-width:calc(100vw - 32px);max-height:calc(100vh - 48px);padding:0;border:1px solid var(--admin-line);border-radius:16px;color:var(--color-on-surface);background:var(--color-surface);box-shadow:var(--admin-shadow)}.detail-dialog::backdrop{background:color-mix(in srgb,var(--color-on-surface) 35%,transparent);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.detail-dialog>header{padding:26px;display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid var(--admin-line)}.detail-dialog h2{margin:12px 0 0;font-size:23px}.detail-dialog header p{margin:7px 0 0;font-size:12px;color:var(--color-on-surface-muted)}.dialog-body{padding:0 26px 26px}.detail-fields{margin:0}.detail-fields>div{padding:16px 0;border-bottom:1px solid var(--admin-line);display:grid;grid-template-columns:100px minmax(0,1fr);gap:18px}.detail-fields dt{font-size:12px;color:var(--color-on-surface-muted)}.detail-fields dd{margin:0;font-size:12px;overflow-wrap:anywhere;line-height:1.8}.detail-fields .long-text{max-width:none}.detail-note{margin-top:20px;padding:16px;border-radius:8px;background:var(--admin-rose-soft);font-size:12px;color:var(--color-error)}.detail-note h3{font-size:12px}.detail-note p:last-child{margin:0}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}.dialog-intro{font-size:13px;line-height:1.8;color:var(--color-on-surface-muted);margin:22px 0}.form-error{display:flex;align-items:center;gap:8px;border-radius:7px;padding:12px;background:var(--admin-rose-soft);color:var(--color-error);font-size:12px;line-height:1.6;margin-top:16px}.success-message{display:flex;gap:8px;padding:12px 24px;color:var(--color-success);background:var(--admin-green-soft);font-size:12px}.auth-shell{display:grid;grid-template-columns:1fr 1fr;min-height:100vh}.auth-brand{background:var(--admin-forest);color:var(--color-on-primary);display:flex;flex-direction:column;padding:45px 56px 30px;overflow:hidden}.auth-story{margin:auto 0;padding:62px 12px 20px}.auth-story .eyebrow{color:var(--color-primary-container);font-size:11px;letter-spacing:3px}.auth-story h1{font-size:48px;font-weight:500;line-height:1.5;letter-spacing:1px;margin:22px 0}.auth-story p{color:var(--color-primary-container);opacity:.85;font-size:13px;line-height:2}.auth-art{height:250px;position:relative;margin-top:20px;max-width:450px}.art-ring{width:230px;height:230px;border:1px solid color-mix(in srgb,var(--color-primary-container) 20%,transparent);border-radius:50%;position:absolute;left:60px;top:10px}.art-ring:after{content:"";position:absolute;inset:23px;border:1px solid color-mix(in srgb,var(--color-primary-container) 14%,transparent);border-radius:50%}.art-leaf{position:absolute;left:85px;top:30px;width:185px;height:185px;background:color-mix(in srgb,var(--color-primary) 50%,transparent);border-radius:95px 95px 12px;display:grid;place-items:center;color:var(--color-primary-container);transform:rotate(-12deg)}.art-leaf svg{width:108px;height:108px;transform:rotate(12deg)}.art-tag{position:absolute;padding:14px 18px;display:flex;gap:9px;align-items:center;border-radius:9px;font-size:11px;border:1px solid color-mix(in srgb,var(--color-primary-container) 25%,transparent);background:var(--admin-forest)}.art-tag svg{width:16px}.tag-safety{left:0;top:37px}.tag-growth{left:208px;top:170px;background:var(--color-secondary-container);color:var(--color-secondary)}.auth-brand-footer{font-size:10px;color:var(--color-primary-container);display:flex;justify-content:space-between;opacity:.75;gap:18px}.auth-form-area{display:flex;flex-direction:column;background:var(--color-surface);padding:45px 60px 30px}.auth-topline{font-size:12px;text-align:right;color:var(--color-on-surface-muted)}.auth-topline span{font-size:9px;letter-spacing:1.5px;margin-left:10px}.login-panel{width:100%;max-width:355px;margin:auto;padding:50px 0;display:flex;flex-direction:column;gap:24px}.login-heading{margin-bottom:12px}.login-heading .eyebrow{color:var(--color-primary);font-size:10px}.login-heading h2{font-size:30px;margin:15px 0 12px}.login-heading p{font-size:13px;color:var(--color-on-surface-muted)}.login-panel input{min-height:48px;border-radius:8px;background:var(--admin-soft);border-color:transparent;font-size:13px}.password-field{position:relative;display:grid}.password-field input{padding-right:48px}.password-toggle{position:absolute;right:2px;top:2px;height:44px;width:44px;border:0;background:transparent;color:var(--color-on-surface-muted);display:grid;place-items:center}.login-submit{min-height:48px;margin-top:6px}.login-help{display:flex;justify-content:center;gap:6px;align-items:center;font-size:11px;color:var(--color-on-surface-muted)}.auth-footer{font-size:10px;text-align:center;color:var(--color-on-surface-muted)}.login-panel .form-error{margin:0}@media(min-width:1600px){.metrics{gap:22px}.metric{padding:24px}.metric-value{font-size:40px}.attendance-visual{padding:35px}.attendance-ring{width:190px;height:190px}}@media(max-width:1200px){.shell{grid-template-columns:205px minmax(0,1fr)}.sidebar{padding-left:12px;padding-right:12px}.page{padding:26px 24px}.topbar{padding:0 24px}.topbar-right time{display:none}.topbar-right>svg{display:none}.dashboard-grid{grid-template-columns:minmax(0,1.4fr) minmax(280px,1fr);gap:16px}.dashboard-main,.dashboard-rail{gap:16px}.attendance-visual{gap:18px;padding:25px 22px}.attendance-ring{width:150px;height:150px}.attendance-breakdown{min-width:100px}.class-teacher{display:none}.class-capacity{margin-left:0}.quick-links{grid-template-columns:repeat(2,1fr)}.quick-links a:nth-child(2){border-right:0}.quick-links a:nth-child(-n+2){border-bottom:1px solid var(--admin-line)}.metric{padding:15px}.metric-note{font-size:9px}.page-head .button{padding:0 12px}.auth-brand,.auth-form-area{padding:36px}.auth-story h1{font-size:40px}.auth-brand-footer span{display:none}}@media(max-width:1020px){.page-head{align-items:flex-start}.page-actions{flex-wrap:wrap;justify-content:flex-end}.dashboard-grid{grid-template-columns:1fr}.dashboard-rail{display:grid;grid-template-columns:1fr 1fr;align-items:start}.care-note{grid-column:1 / -1}.metrics{grid-template-columns:repeat(2,1fr)}.class-teacher{display:grid}.quick-links{grid-template-columns:repeat(4,1fr)}.quick-links a:nth-child(2){border-right:1px solid var(--admin-line)}.quick-links a:nth-child(-n+2){border-bottom:0}.record-summary{gap:18px}.record-summary>div{min-width:0;padding-right:18px;flex:1}.record-summary strong{font-size:18px}.summary-icon{display:none}.filter-bar{flex-wrap:wrap}.search{flex:1;min-width:220px}.filter-controls{flex-wrap:wrap}.auth-art{transform:scale(.9);transform-origin:left center}}@media(max-width:760px){.shell{display:block}.sidebar,.topbar{display:none}.mobile-bar{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--admin-line);background:var(--color-surface)}.mobile-bar .brand strong{font-size:16px}.mobile-bar .brand small{display:none}.mobile-bar .brand-symbol{width:32px;height:34px;border-radius:9px 9px 9px 3px}.mobile-bar select{font-size:12px;width:125px}.mobile-bar .icon-button{width:32px;border:0}.mobile-navigation{margin-left:auto}.page{padding:25px 18px}.page-head{display:block;margin-bottom:25px}.page-head h1{font-size:24px}.page-head p{line-height:1.8}.page-actions{margin-top:18px;justify-content:flex-start}.page-actions:empty{display:none}.page-actions .button{min-height:42px}.metrics{gap:12px}.metric{padding:14px}.metric-value{font-size:30px}.metric-top{font-size:11px}.metric-note{line-height:1.6;min-height:34px;align-items:flex-start}.metric-dot{margin-top:5px;flex-shrink:0}.dashboard-rail{display:flex}.section-heading{padding:20px 18px 0}.section-heading h2{font-size:15px}.section-heading p{font-size:10px}.attendance-visual{padding:24px 20px;gap:22px}.attendance-ring{width:144px;height:144px;padding:10px}.attendance-ring strong{font-size:30px}.attendance-breakdown{min-width:100px}.breakdown-row{font-size:11px}.class-list{padding:6px 18px}.class-teacher{display:none}.class-capacity{width:66px}.class-info span{font-size:9px}.class-icon{width:34px;height:36px}.class-row{gap:10px}.quick-links{grid-template-columns:repeat(2,1fr)}.quick-links a:nth-child(-n+2){border-bottom:1px solid var(--admin-line)}.quick-links a:nth-child(2){border-right:0}.workspace-footer{padding:0 18px 24px}.workspace-footer>span:last-child{display:none}.record-summary{gap:12px;padding:18px 14px}.record-summary>div{padding-right:10px}.record-summary>div span{font-size:10px}.record-summary strong{font-size:17px;overflow-wrap:anywhere}.data-section-heading{padding:20px 16px 0}.data-section-heading>span{display:none}.filter-bar{padding:18px 16px;gap:12px}.filter-controls{width:100%}.filter-select{flex:1}.filter-select select{width:100%}.sort-button{flex-shrink:0}.table-footer{padding:14px 16px;flex-wrap:wrap;font-size:10px}.pagination{margin-left:auto;gap:7px}.pagination>span:first-child{display:none}.safety-strip{padding:14px;gap:8px;flex-wrap:wrap}.safety-strip p{font-size:11px;width:100%;padding-left:27px}.safety-strip .strip-tag{display:none}.auth-shell{grid-template-columns:1fr}.auth-brand{padding:28px;min-height:240px}.auth-brand>.brand strong{font-size:18px}.auth-story{padding:36px 0 0}.auth-story h1{font-size:31px;margin:16px 0}.auth-story h1 br{display:none}.auth-story p{font-size:12px}.auth-art,.auth-brand-footer{display:none}.auth-form-area{padding:28px}.auth-topline{display:none}.login-panel{padding:12px 0 35px;max-width:440px;gap:20px}.login-heading{margin-bottom:0}.login-heading h2{font-size:25px}.auth-footer{line-height:1.8}.detail-dialog{max-height:calc(100dvh - 32px)}.detail-dialog header{padding:22px}.dialog-body{padding:0 22px 22px}.detail-fields>div{grid-template-columns:80px minmax(0,1fr);gap:10px}}.page-head p,.metric-top,.todo-row strong,.class-info strong{font-size:13px}.metric-note,.section-heading p,.attendance-ring span,.section-footnote,.todo-row small,.class-info>span,.class-teacher span,.class-teacher strong,.feed p,.feed small,.care-note p,.record-summary>div>span,.table-wrap th,.person small,.badge,.care-alert,.table-footer,.detail-fields dt,.auth-footer{font-size:12px}.table-wrap table,.detail-fields dd,.quick-links a{font-size:13px}.updated,.workspace-label small,.account small,.nav-group>p{font-size:11px}.metric-note{line-height:1.7}.sidebar>.brand,.workspace-label,.account{flex-shrink:0}.attendance-ring span{text-align:center}@media(max-height:860px)and (min-width:761px){.sidebar{padding-top:20px}.sidebar>.brand{margin-bottom:20px}.workspace-label{margin-bottom:16px}.nav-group{margin-bottom:14px}.nav-group a{min-height:40px}.sidebar-note{display:none}.account{margin-top:auto}}@media(max-width:400px){.attendance-visual{padding-left:14px;padding-right:14px;gap:16px}.attendance-ring{width:130px;height:130px}.attendance-ring span{font-size:11px}.metric-top{font-size:12px}.metric-note{font-size:11px}.mobile-bar{gap:8px;padding-inline:14px}}.onboarding-dialog{width:680px}.enrollment-dialog{width:780px}.enrollment-dialog>header p{display:flex;align-items:center;gap:9px}.enrollment-stepper{grid-template-columns:repeat(4,1fr)}.enrollment-stepper li{display:block}.enrollment-stepper li:after{display:none}.enrollment-stepper button{width:100%;border:0;background:transparent;color:inherit;padding:0;display:flex;align-items:center;gap:8px;font-size:12px}.enrollment-stepper button:after{content:"";height:1px;flex:1;background:var(--admin-line)}.enrollment-stepper li:last-child button:after{display:none}.enrollment-stepper button>span{width:27px;height:27px;border-radius:50%;display:grid;place-items:center;background:var(--admin-soft)}.enrollment-stepper .active button>span{background:var(--color-primary);color:var(--color-on-primary)}.enrollment-stepper .done button>span{background:var(--admin-green-soft);color:var(--color-primary)}.enrollment-form{min-height:330px}.enrollment-options{display:grid;gap:24px}.service-registration-options>label,.service-registration-options .service-month{display:grid;gap:7px;color:var(--color-on-surface-muted);font-size:11px;font-weight:600}.service-registration-options>label select,.service-registration-options .service-month input{width:100%;min-height:42px;border:1px solid var(--admin-line);border-radius:7px;padding:9px 11px;color:var(--color-on-surface);background:var(--color-surface)}.service-registration-options fieldset{margin:0;padding:16px;border:1px solid var(--admin-line);border-radius:8px}.service-registration-options legend{padding:0 7px;color:var(--color-on-surface-muted);font-size:11px}.service-registration-options fieldset>small{display:block;margin-top:10px;color:var(--color-on-surface-muted);font-size:10px}.service-registration-options .service-month{width:min(240px,100%);margin-top:14px}.service-quote{display:grid;grid-template-columns:1fr auto;gap:5px 16px;padding:16px;border-radius:9px;background:var(--admin-soft)}.service-quote span,.service-quote small{color:var(--color-on-surface-muted)}.service-quote strong{color:var(--color-primary);font-size:20px}.service-quote small{grid-column:1 / -1;font-size:10px}.package-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.package-options button{min-height:112px;padding:16px;border:1px solid var(--admin-line);border-radius:9px;background:var(--color-surface);color:var(--color-on-surface);display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;text-align:left}.package-options button svg,.package-options button span{color:var(--color-primary)}.package-options button small{grid-column:2 / -1;color:var(--color-on-surface-muted)}.package-options button.selected{border-color:var(--color-primary);background:var(--admin-green-soft);box-shadow:var(--admin-focus)}.weekday-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.weekday-grid label{min-height:42px;border:1px solid var(--admin-line);border-radius:7px;display:grid;place-items:center;font-size:12px;font-weight:400;cursor:pointer}.weekday-grid label.selected{border-color:var(--color-primary);color:var(--color-primary);background:var(--admin-green-soft)}.weekday-grid input{position:absolute;opacity:0;pointer-events:none}.final-review,.case-locked{display:flex;gap:12px;padding:15px;border-radius:9px;background:var(--admin-green-soft);color:var(--color-primary)}.final-review p{margin:5px 0 0;color:var(--color-on-surface-muted);line-height:1.6;font-size:12px}.case-locked{margin-bottom:20px;align-items:center}.enrollment-actions>span{flex:1}.enrollment-success{text-align:center;padding:30px 16px 4px}.enrollment-success>span{color:var(--color-success)}.enrollment-success h3{margin:14px 0 8px}.enrollment-success dl{margin:25px auto 0;max-width:520px;text-align:left}.enrollment-success dl>div{display:grid;grid-template-columns:150px 1fr;gap:15px;padding:12px 0;border-bottom:1px solid var(--admin-line)}.enrollment-success dt{color:var(--color-on-surface-muted)}.enrollment-success dd{margin:0}.activation-code{font:600 14px ui-monospace,monospace;overflow-wrap:anywhere}.sensitive-note{padding:12px;border-radius:7px;background:var(--admin-amber-soft);color:var(--color-on-surface-muted);font-size:11px}.enrollment-create{margin-bottom:24px;padding:20px 24px;display:flex;justify-content:space-between;align-items:center;gap:20px;border:1px solid var(--admin-line);border-radius:11px;background:var(--color-surface)}.enrollment-create>div{display:flex;align-items:center;gap:13px}.enrollment-create>div:first-child>svg{color:var(--color-primary)}.enrollment-create p{margin:5px 0 0;color:var(--color-on-surface-muted);font-size:11px}.enrollment-create select{width:280px}.enrollment-page-error{margin:0 0 16px}.enrollment-page-error .button{margin-left:auto}.enrollment-queue .table-wrap table{min-width:980px}.enrollment-queue .action-cell{width:110px}.row-action{min-width:72px;min-height:34px;padding:0 12px;border:1px solid var(--admin-line);border-radius:7px;color:var(--color-primary);background:var(--color-surface);font-size:12px;white-space:nowrap}.row-action:hover{border-color:var(--color-primary);background:var(--admin-green-soft)}.onboarding-dialog .dialog-body{padding-top:24px}.stepper{list-style:none;margin:0 0 28px;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.stepper li{position:relative;display:flex;align-items:center;gap:8px;color:var(--color-on-surface-muted);font-size:12px}.stepper li:after{content:"";height:1px;flex:1;background:var(--admin-line)}.stepper li:last-child:after{display:none}.stepper li>span{width:27px;height:27px;border-radius:50%;display:grid;place-items:center;flex-shrink:0;background:var(--admin-soft);color:var(--color-on-surface-muted);font-size:11px}.stepper li.active{color:var(--color-primary);font-weight:600}.stepper li.active>span{background:var(--color-primary);color:var(--color-on-primary)}.stepper li.done>span{background:var(--admin-green-soft);color:var(--color-primary)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.onboarding-stack,.class-choice{display:grid;gap:22px}.onboarding-stack fieldset{border:1px solid var(--admin-line);border-radius:10px;padding:16px;margin:0}.onboarding-stack legend{padding:0 7px;color:var(--color-on-surface-muted);font-size:12px}.permission-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.check-option,.consent-check{display:flex;align-items:center;gap:9px;font-weight:400}.check-option input,.consent-check input{width:18px;height:18px;min-height:0;margin:0;accent-color:var(--color-primary);flex-shrink:0}.consent-check{align-items:flex-start;border-radius:9px;padding:14px;background:var(--admin-soft)}.consent-check span{display:grid;gap:5px}.consent-check small{color:var(--color-on-surface-muted);font-weight:400;line-height:1.6}.programs-page{gap:22px}.program-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--admin-line);border-radius:8px;background:var(--color-surface);overflow:hidden}.program-metrics>div{min-width:0;padding:20px;display:grid;grid-template-columns:26px minmax(0,1fr);gap:5px 10px;border-right:1px solid var(--admin-line)}.program-metrics>div:last-child{border-right:0}.program-metrics svg{grid-row:span 3;color:var(--color-primary);margin-top:2px}.program-metrics span,.program-metrics small{color:var(--color-on-surface-muted);font-size:11px}.program-metrics strong{font-size:20px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.program-tabs{display:inline-flex;align-self:flex-start;padding:3px;border:1px solid var(--admin-line);border-radius:7px;background:var(--admin-soft)}.program-tabs button{min-width:108px;height:34px;border:0;border-radius:5px;color:var(--color-on-surface-muted);background:transparent;font-size:12px}.program-tabs button[aria-selected=true]{color:var(--color-primary);background:var(--color-surface);box-shadow:0 1px 4px color-mix(in srgb,var(--color-on-surface) 8%,transparent);font-weight:600}.program-workspace,.program-quote,.program-list{border:1px solid var(--admin-line);border-radius:8px;background:var(--color-surface)}.program-workspace,.program-quote{padding:24px}.program-workspace>header,.program-quote>header,.program-list>header{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.program-list>header{padding:22px 24px 18px}.program-workspace h2,.program-quote h2,.program-list h2,.program-modal h2{margin:4px 0 5px;font-size:17px}.program-workspace header p{margin:0;color:var(--color-on-surface-muted);font-size:12px}.section-kicker{color:var(--color-primary);font-size:10px;font-weight:600}.price-rule{color:var(--color-primary);font-size:11px;line-height:1.8;text-align:right}.program-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:22px}.program-form-grid label,.program-options label,.program-modal label{display:grid;gap:7px;color:var(--color-on-surface-muted);font-size:11px;font-weight:600}.program-form-grid input,.program-form-grid select,.program-options input,.program-modal input,.program-modal textarea{width:100%;min-height:42px;border:1px solid var(--admin-line);border-radius:7px;padding:9px 11px;color:var(--color-on-surface);background:var(--color-surface)}.program-form-grid .wide-field{grid-column:span 2}.program-options{margin:20px 0 0;border:1px solid var(--admin-line);border-radius:8px;padding:16px}.program-options legend{padding:0 7px;color:var(--color-on-surface-muted);font-size:11px}.program-choice-row{display:flex;flex-wrap:wrap;gap:8px}.program-choice-row button{min-height:38px;display:inline-flex;align-items:center;gap:6px;border:1px solid var(--admin-line);border-radius:6px;padding:8px 12px;color:var(--color-on-surface-muted);background:var(--color-surface);font-size:12px}.program-choice-row button[aria-pressed=true]{color:var(--color-primary);border-color:var(--color-primary);background:var(--admin-green-soft)}.program-options>small{display:block;margin-top:10px;color:var(--color-on-surface-muted);font-size:10px}.program-options .month-field{width:min(240px,100%);margin-top:14px}.program-submit{display:flex;justify-content:flex-end;margin-top:20px}.program-success{display:flex;align-items:center;gap:8px;padding:12px 14px;border-radius:7px;color:var(--color-success);background:var(--admin-green-soft);font-size:12px}.quote-lines{margin-top:18px;border-top:1px solid var(--admin-line)}.quote-lines>div,.quote-total>div{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 0;border-bottom:1px solid var(--admin-line)}.quote-lines span{font-size:12px}.quote-lines small{display:block;margin-top:4px;color:var(--color-on-surface-muted);font-size:10px}.quote-total{margin:10px 0 18px auto;width:min(380px,100%)}.quote-total dt,.quote-total dd{margin:0;font-size:12px}.quote-payable dd{color:var(--color-primary);font-size:20px;font-weight:600}.program-quote>.button{margin-left:auto}.program-empty{padding:38px 24px;border-top:1px solid var(--admin-line);color:var(--color-on-surface-muted);text-align:center;font-size:12px}.session-list{border-top:1px solid var(--admin-line)}.session-row{display:grid;grid-template-columns:145px minmax(0,1fr) auto;gap:22px;align-items:center;padding:19px 24px;border-bottom:1px solid var(--admin-line)}.session-row:last-child{border-bottom:0}.session-time{display:grid;gap:5px}.session-time strong{font-size:12px}.session-time span,.session-main p,.roster-names{color:var(--color-on-surface-muted);font-size:11px}.session-main>div{display:flex;align-items:center;gap:9px}.session-main h3{margin:0;font-size:14px}.session-main p{margin:6px 0}.roster-names{display:flex;align-items:center;gap:6px}.session-actions{display:flex;align-items:center;gap:7px}.program-modal{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:20px;background:color-mix(in srgb,var(--color-on-surface) 35%,transparent)}.program-modal>div{width:min(480px,100%);border-radius:8px;padding:22px;background:var(--color-surface);box-shadow:var(--admin-shadow)}.program-modal header,.program-modal footer{display:flex;justify-content:space-between;align-items:center;gap:10px}.program-modal p{margin:10px 0 18px;color:var(--color-on-surface-muted);font-size:12px}.program-modal textarea{min-height:100px;resize:vertical}.program-modal footer{justify-content:flex-end;margin-top:20px}.program-settings-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:18px}.program-count{color:var(--color-on-surface-muted);font-size:11px}.program-group-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:0 24px 24px}.program-group-grid>article{min-width:0;border:1px solid var(--admin-line);border-radius:8px;padding:16px;background:var(--color-surface)}.program-group-grid>article.inactive{opacity:.68;background:var(--admin-soft)}.program-group-grid article>header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px}.program-group-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:7px;color:var(--color-primary);background:var(--admin-green-soft)}.program-group-grid h3,.program-group-grid p{margin:0}.program-group-grid h3{font-size:14px}.program-group-grid header p,.program-members p{margin-top:4px;color:var(--color-on-surface-muted);font-size:10px}.program-group-grid dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:15px 0}.program-group-grid dl>div{padding:10px;border-radius:7px;background:var(--admin-soft)}.program-group-grid dt{color:var(--color-on-surface-muted);font-size:10px}.program-group-grid dd{margin:4px 0 0;font-size:12px;font-weight:600}.program-members{min-height:78px;padding-top:12px;border-top:1px solid var(--admin-line)}.program-members>strong{display:flex;align-items:center;gap:6px;font-size:11px}.program-members>div{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}.program-members span{padding:6px 8px;border-radius:6px;color:var(--color-on-surface);background:var(--admin-soft);font-size:11px}.program-members span small{margin-left:5px;color:var(--color-on-surface-muted)}.program-group-grid article>footer{display:flex;justify-content:flex-end;margin-top:12px}.program-active-toggle{grid-template-columns:auto 1fr!important;align-items:center;margin-top:14px}.program-active-toggle input{width:17px;min-height:17px}.student-program-section{margin-top:22px;border-top:1px solid var(--admin-line);padding-top:20px}.student-program-section>header{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:13px}.student-program-section h3,.student-program-section p{margin:0}.student-program-section h3{font-size:14px}.student-program-section header p{margin-top:4px;color:var(--color-on-surface-muted);font-size:11px}.student-program-list{display:grid;gap:8px}.student-program-list article{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:12px;border-radius:8px;background:var(--admin-soft)}.student-program-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:7px;color:var(--color-primary);background:var(--color-surface)}.student-program-list article>div:nth-child(2){display:grid;gap:3px}.student-program-list strong{font-size:12px}.student-program-list span,.student-program-list small{color:var(--color-on-surface-muted);font-size:10px}.student-program-state{display:grid;justify-items:end;gap:5px}@media(max-width:980px){.program-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.program-metrics>div:nth-child(2){border-right:0}.program-metrics>div:nth-child(-n+2){border-bottom:1px solid var(--admin-line)}.program-settings-grid,.program-group-grid{grid-template-columns:1fr}}@media(max-width:640px){.program-metrics,.program-form-grid{grid-template-columns:1fr}.program-metrics>div{border-right:0;border-bottom:1px solid var(--admin-line)}.program-metrics>div:last-child{border-bottom:0}.program-form-grid .wide-field{grid-column:auto}.program-workspace,.program-quote{padding:18px}.program-workspace>header,.program-quote>header,.program-list>header{flex-direction:column}.price-rule{text-align:left}.program-tabs{width:100%}.program-tabs button{flex:1}.session-row{grid-template-columns:1fr;gap:10px;padding:17px 18px}.session-actions{justify-content:flex-start}.program-group-grid{padding:0 18px 18px}.student-program-section>header{flex-direction:column}.student-program-list article{grid-template-columns:auto minmax(0,1fr)}.student-program-state{grid-column:2;justify-items:start}}.onboarding-review{border:1px solid var(--admin-line);border-radius:10px;padding:18px;background:var(--admin-soft)}.onboarding-review h3{margin-bottom:14px;font-size:14px}.onboarding-review dl,.activation-delivery dl{margin:0;display:grid;gap:12px}.onboarding-review dl>div,.activation-delivery dl>div{display:grid;grid-template-columns:95px minmax(0,1fr);gap:12px;font-size:12px}.onboarding-review dt,.activation-delivery dt{color:var(--color-on-surface-muted)}.onboarding-review dd,.activation-delivery dd{margin:0;overflow-wrap:anywhere}.onboarding-success{display:grid;gap:18px}.onboarding-success h3{margin:0 0 7px;font-size:18px}.onboarding-success p{margin:0;color:var(--color-on-surface-muted);font-size:12px}.success-icon{width:50px;height:50px;border-radius:14px;display:grid;place-items:center;color:var(--color-success);background:var(--admin-green-soft)}.activation-delivery{display:grid;gap:18px;border:1px solid var(--color-secondary-container);border-radius:10px;padding:18px;background:var(--admin-amber-soft)}.activation-delivery>div:first-child{display:grid;gap:6px}.activation-delivery>div:first-child span,.account-linked span{color:var(--color-on-surface-muted);font-size:12px;line-height:1.6}.activation-delivery dd{display:flex;align-items:center;gap:10px}.activation-delivery code{color:var(--color-on-surface);font-size:13px;word-break:break-all;-webkit-user-select:all;user-select:all}.activation-delivery .icon-button{width:34px;height:34px;flex-shrink:0}.account-linked{display:flex;gap:12px;align-items:flex-start;border-radius:10px;padding:16px;color:var(--color-primary);background:var(--admin-green-soft)}.account-linked div{display:grid;gap:5px}.parent-accounts-section{margin-top:24px;padding-top:22px;border-top:1px solid var(--admin-line)}.parent-accounts-section>header{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:14px}.parent-accounts-section>header h3{margin:0 0 5px;font-size:15px}.parent-accounts-section>header p{margin:0;color:var(--color-on-surface-muted);font-size:12px}.parent-account-panel{padding:16px;border:1px solid var(--admin-line);border-radius:10px;background:var(--admin-soft)}.parent-account-panel+.parent-account-panel{margin-top:12px}.parent-account-panel>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.parent-account-panel>header>div{display:grid;gap:4px}.guardian-panel-actions{display:flex!important;grid-template-columns:none!important;align-items:center;gap:8px!important}.guardian-panel-actions .icon-button{width:32px;height:32px}.parent-account-panel>header span:not(.badge){color:var(--color-on-surface-muted);font-size:12px}.parent-account-panel .state{min-height:120px;padding:22px}.parent-account-facts{display:grid;gap:9px;margin:0}.parent-account-facts>div{display:grid;grid-template-columns:105px minmax(0,1fr);gap:12px;font-size:12px}.parent-account-facts dt{color:var(--color-on-surface-muted)}.parent-account-facts dd{margin:0;overflow-wrap:anywhere}.relationship-permissions{display:flex;flex-wrap:wrap;gap:7px;margin-top:13px}.relationship-permissions span{display:inline-flex;align-items:center;gap:4px;padding:5px 8px;border-radius:5px;color:var(--color-primary);background:var(--admin-green-soft);font-size:11px}.compact-account-state{margin-top:15px;padding:13px}.account-guidance{margin:14px 0 0;color:var(--color-on-surface-muted);font-size:12px;line-height:1.7}.account-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:15px}.account-actions .button,.invitation-confirm .button{min-height:36px}.invitation-confirm{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:9px;margin-top:12px;padding:12px;border-radius:8px;color:var(--color-error);background:var(--admin-rose-soft)}.invitation-confirm>div{display:grid;gap:4px}.invitation-confirm span{font-size:11px;line-height:1.5}.invitation-delivery{margin-top:15px;background:var(--color-surface)}.relationship-revoke-trigger{margin-top:16px;padding:0;border:0;color:var(--color-error);background:transparent;font-size:12px;text-decoration:underline;text-underline-offset:3px}.relationship-confirm{display:grid;gap:14px;margin-top:15px;padding:14px;border:1px solid color-mix(in srgb,var(--color-error) 30%,transparent);border-radius:8px;background:var(--admin-rose-soft)}.relationship-confirm>div:first-child{display:grid;gap:5px;color:var(--color-error)}.relationship-confirm span{font-size:11px;line-height:1.6}.relationship-confirm label{font-size:12px}.relationship-confirm .dialog-actions{margin-top:0}.guardian-form{display:grid;gap:18px;padding-top:22px}.guardian-form fieldset{border:1px solid var(--admin-line);border-radius:9px;padding:16px;margin:0}.guardian-form legend{padding:0 7px;color:var(--color-on-surface-muted);font-size:12px}.guardian-identity{padding:13px;border-radius:8px;background:var(--admin-soft)}.guardian-success{padding-top:22px}.student-lifecycle-section{margin-top:22px;padding:18px;border-radius:10px;background:var(--admin-soft)}.student-lifecycle-section>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.student-lifecycle-section h3,.student-lifecycle-section h4{margin:0;font-size:14px}.student-lifecycle-section header p{margin:5px 0 0;color:var(--color-on-surface-muted);font-size:12px}.student-lifecycle-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:16px}.student-lifecycle-actions .button.compact.danger{color:var(--color-error);background:var(--color-error-container);border-color:transparent}.student-history{display:grid;gap:0;margin-top:18px;padding-top:16px;border-top:1px solid var(--admin-line)}.student-history h4{margin-bottom:7px}.student-history>div{display:grid;grid-template-columns:minmax(110px,.7fr) minmax(150px,1.4fr) auto;gap:12px;padding:9px 0;border-bottom:1px solid var(--admin-line);font-size:12px}.student-history>div:last-child{border-bottom:0}.student-history span,.student-history small{color:var(--color-on-surface-muted)}.student-management-dialog{width:620px}.student-management-form{display:grid;gap:18px;padding-top:22px}.student-profile-grid .full-field{grid-column:1 / -1}.lifecycle-warning{display:flex;gap:11px;padding:14px;border-radius:9px;color:var(--color-primary);background:var(--admin-green-soft)}.lifecycle-warning.danger{color:var(--color-error);background:var(--color-error-container)}.lifecycle-warning div{display:grid;gap:5px}.lifecycle-warning span{font-size:12px;line-height:1.7}@media(max-width:620px){.form-grid,.permission-grid{grid-template-columns:1fr}.stepper{gap:5px}.stepper li{font-size:10px;gap:5px}.stepper li:after{display:none}.onboarding-review dl>div,.activation-delivery dl>div{grid-template-columns:1fr;gap:5px}.activation-delivery dd{align-items:flex-start}.parent-account-panel>header,.account-actions,.parent-accounts-section>header{align-items:stretch;flex-direction:column}.guardian-panel-actions{justify-content:space-between}.parent-account-facts>div,.invitation-confirm{grid-template-columns:1fr}.student-lifecycle-section>header,.student-lifecycle-actions{align-items:stretch;flex-direction:column}.student-history>div{grid-template-columns:1fr;gap:4px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.stepper.enrollment-stepper{grid-template-columns:repeat(4,minmax(0,1fr))}@media(max-width:760px){.enrollment-create{align-items:stretch;flex-direction:column}.enrollment-create>div{width:100%}.enrollment-create>div:last-child{align-items:stretch;flex-direction:column}.enrollment-create select,.enrollment-create .button{width:100%}.enrollment-stepper{grid-template-columns:repeat(4,minmax(0,1fr))}.enrollment-stepper button{justify-content:center;font-size:0}.enrollment-stepper button:after{display:none}.enrollment-stepper button>span{font-size:11px}.package-options{grid-template-columns:1fr}.weekday-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.enrollment-actions{flex-wrap:wrap}.enrollment-actions>span{display:none}.enrollment-actions .button{flex:1 1 130px}}.homework-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(116px,1fr));gap:10px;margin-top:12px}.homework-gallery a{aspect-ratio:1;overflow:hidden;border:1px solid var(--color-border, #dfe5e2);border-radius:8px;background:#f4f7f5}.homework-gallery img{width:100%;height:100%;display:block;object-fit:cover}.homework-coverage{padding:20px;border-top:3px solid var(--color-primary, #25705f);background:var(--color-surface, #fff)}.homework-coverage>header,.homework-coverage-metrics,.homework-missing>div{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.homework-coverage>header{justify-content:space-between}.homework-coverage h2{margin:0 0 4px;font-size:17px}.homework-coverage p{margin:0;color:var(--color-text-muted, #64736f);font-size:13px}.homework-coverage-body{margin-top:18px;display:grid;gap:16px}.homework-coverage-metrics{margin:0}.homework-coverage-metrics div{min-width:110px;padding-right:18px;border-right:1px solid var(--color-border, #dfe5e2)}.homework-coverage-metrics dt{color:var(--color-text-muted, #64736f);font-size:12px}.homework-coverage-metrics dd{margin:4px 0 0;font-size:19px;font-weight:800}.homework-missing{display:grid;gap:9px}.homework-missing>strong{font-size:13px}.homework-missing span{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border-radius:7px;background:var(--color-warning-container, #fff4d6);font-size:13px}.homework-missing small{color:var(--color-text-muted, #64736f)}.homework-missing .complete{background:var(--color-success-container, #e8f5ef);color:var(--color-success, #27745e)}.page-head-actions{display:flex;gap:10px;align-items:center}.teacher-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:22px 0}.teacher-metrics>div{display:grid;grid-template-columns:auto 1fr;column-gap:10px;align-items:center;padding:18px;border:1px solid var(--admin-line);border-radius:16px;background:var(--color-surface);box-shadow:var(--admin-shadow)}.teacher-metrics svg{grid-row:span 3;color:var(--color-primary)}.teacher-metrics span,.teacher-metrics small{color:var(--color-on-surface-variant)}.teacher-metrics strong{font-size:24px;line-height:1.1}.teacher-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.teacher-card{border:1px solid var(--admin-line);border-radius:18px;padding:18px;background:var(--color-surface);box-shadow:var(--admin-shadow)}.teacher-card.inactive{opacity:.72}.teacher-card>header{display:flex;align-items:center;gap:12px}.teacher-card>header>div:nth-child(2){flex:1}.teacher-card h3{margin:0 0 4px}.teacher-card p{margin:0;color:var(--color-on-surface-variant)}.teacher-avatar{width:42px;height:42px;display:grid;place-items:center;border-radius:14px;color:var(--color-primary);background:var(--admin-green-soft)}.teacher-card dl{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0}.teacher-card dl div{padding:10px 12px;border-radius:12px;background:var(--admin-soft)}.teacher-card dt{font-size:12px;color:var(--color-on-surface-variant)}.teacher-card dd{margin:5px 0 0;font-weight:600}.teacher-course-list{border-top:1px solid var(--admin-line);padding-top:14px}.teacher-course-list>strong{display:flex;gap:6px;align-items:center}.teacher-course-list>div{display:grid;gap:7px;margin-top:10px}.teacher-course-list span{display:grid;gap:2px;padding:8px 10px;border-radius:10px;background:var(--admin-soft)}.teacher-course-list small{color:var(--color-on-surface-variant)}.teacher-classes{border-top:1px solid var(--admin-line);padding-top:14px}.teacher-classes strong{display:flex;gap:6px;align-items:center}.teacher-classes>div{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.teacher-classes button{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--admin-line);border-radius:999px;padding:7px 10px;color:var(--color-on-surface-variant);background:var(--color-surface)}.teacher-classes button.selected{border-color:var(--color-primary);color:var(--color-primary);background:var(--admin-green-soft)}.teacher-classes button:disabled{cursor:not-allowed}.teacher-classes small{display:block;color:var(--color-on-surface-variant);line-height:1.5}.teacher-card footer{display:flex;justify-content:flex-end;margin-top:16px}.teacher-security-note{display:flex;gap:8px;align-items:flex-start;margin:14px 0;padding:10px 12px;border-radius:10px;color:var(--color-on-surface-variant);background:var(--admin-amber-soft);font-size:13px;line-height:1.5}@media(max-width:900px){.teacher-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-grid{grid-template-columns:1fr}}@media(max-width:560px){.page-head-actions{width:100%}.page-head-actions .button{flex:1}.teacher-metrics{grid-template-columns:1fr 1fr}}
