:root{color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#f6f7f9;color:#252c31;--se-ink: #20272d;--se-muted: #6f7880;--se-border: #e1e5e8;--se-surface: #ffffff;--se-surface-soft: #f7f9fa;--se-primary: #218652;--se-primary-dark: #176c40;--se-primary-soft: #edf8f1;--se-blue: #3478d4;--se-amber: #d98a1d;--se-red: #d64550;--se-shadow: 0 1px 2px rgba(21, 27, 31, .035)}*{box-sizing:border-box;letter-spacing:0}html{min-width:320px}body{margin:0;min-width:320px;background:#f6f7f9;color:var(--se-ink);-webkit-font-smoothing:antialiased}a{color:inherit}button,input,textarea,select{font:inherit}button,a,input,textarea,select{outline-offset:2px}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid #2baa62}.app-shell .app-main .workspace{display:grid;gap:18px;min-width:0}.app-shell .app-main .page-header{align-items:center;display:flex;gap:20px;justify-content:space-between;min-height:52px}.app-shell .app-main .page-header>div{min-width:0}.app-shell .app-main .eyebrow{color:#24814a;font-size:10px;font-weight:750;margin:0 0 7px;text-transform:uppercase}.app-shell .app-main .page-header h1,.app-shell .app-main .page-header h2{color:var(--se-ink);font-size:23px;font-weight:680;line-height:1.25;margin:0}.app-shell .app-main .page-header p:not(.eyebrow){color:var(--se-muted);font-size:12px;line-height:1.5;margin:7px 0 0}.app-shell .app-main button{align-items:center;background:var(--se-primary);border:1px solid var(--se-primary);border-radius:7px;color:#fff;cursor:pointer;display:inline-flex;font-size:12px;font-weight:700;justify-content:center;min-height:38px;padding:0 14px;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.app-shell .app-main button:hover:not(:disabled){background:var(--se-primary-dark);border-color:var(--se-primary-dark)}.app-shell .app-main button:disabled{cursor:not-allowed;opacity:.5}.app-shell .app-main button.secondary,.app-shell .app-main .row-actions button{background:#fff;border-color:#d8dde1;color:#455058}.app-shell .app-main button.secondary:hover:not(:disabled),.app-shell .app-main .row-actions button:hover:not(:disabled){background:#f4f6f7;border-color:#c6cdd2;color:#20282d}.app-shell .app-main button.danger,.app-shell .app-main .row-actions button.danger{background:#fff5f5;border-color:#f1c9cd;color:#bd2635}.app-shell .app-main button.danger:hover:not(:disabled),.app-shell .app-main .row-actions button.danger:hover:not(:disabled){background:#ffeaec;border-color:#e9aeb4;color:#a81f2d}.app-shell .app-main .metrics{display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr))}.app-shell .app-main .metrics article{background:var(--se-surface);border:1px solid var(--se-border);border-radius:8px;box-shadow:var(--se-shadow);min-height:86px;padding:15px 17px;position:relative}.app-shell .app-main .metrics article:before{background:var(--se-primary);content:"";height:3px;left:17px;position:absolute;top:0;width:34px}.app-shell .app-main .metrics article:nth-child(2):before{background:var(--se-blue)}.app-shell .app-main .metrics article:nth-child(3):before{background:var(--se-amber)}.app-shell .app-main .metrics article:nth-child(4):before{background:#6e62c9}.app-shell .app-main .metrics span{color:#778189;font-size:11px;font-weight:650}.app-shell .app-main .metrics strong{color:var(--se-ink);display:block;font-size:24px;font-weight:680;line-height:1;margin-top:10px}.app-shell .app-main .content-grid{display:grid;gap:16px}.app-shell .app-main .content-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.app-shell .app-main .panel{align-content:start;background:var(--se-surface);border:1px solid var(--se-border);border-radius:8px;box-shadow:var(--se-shadow);gap:15px;min-width:0;padding:18px}.app-shell .app-main form.panel>.panel-heading{grid-column:1/-1}.app-shell .app-main .panel-heading{align-items:flex-start;border-bottom:1px solid #edf0f2;display:flex;gap:14px;justify-content:space-between;margin:-2px 0 1px;padding-bottom:15px}.app-shell .app-main .panel-heading h2,.app-shell .app-main .panel-heading h3{color:var(--se-ink);font-size:16px;font-weight:680;line-height:1.3;margin:0}.app-shell .app-main .panel-heading p{color:var(--se-muted);font-size:11px;line-height:1.5;margin:5px 0 0}.app-shell .app-main .panel-heading>small{align-items:center;background:#f0f2f4;border-radius:6px;color:#5c666d;display:inline-flex;font-size:11px;font-weight:700;min-height:27px;padding:0 9px}.app-shell .app-main label{color:#414b52;display:grid;font-size:11px;font-weight:650;gap:7px}.app-shell .app-main input,.app-shell .app-main select,.app-shell .app-main textarea{background:#fbfcfc;border:1px solid #d7dce0;border-radius:7px;color:#242c31;font-size:12px;min-height:40px;padding:9px 11px;transition:background-color .15s ease,border-color .15s ease,box-shadow .15s ease;width:100%}.app-shell .app-main textarea{min-height:96px;resize:vertical}.app-shell .app-main input:hover,.app-shell .app-main select:hover,.app-shell .app-main textarea:hover{border-color:#bfc7cc}.app-shell .app-main input:focus,.app-shell .app-main select:focus,.app-shell .app-main textarea:focus{background:#fff;border-color:#35a866;box-shadow:0 0 0 3px #35a8661c;outline:0}.app-shell .app-main input::placeholder,.app-shell .app-main textarea::placeholder{color:#a2aab0}.app-shell .app-main .date-form{align-items:end;display:grid;gap:9px;grid-template-columns:minmax(150px,1fr) auto}.app-shell .app-main .alert{border:1px solid;border-radius:8px;font-size:12px;font-weight:650;margin:0;padding:12px 14px}.app-shell .app-main .alert.error,.app-shell .app-main .error{background:#fff2f3;border-color:#f4c9cd;color:#b52535}.app-shell .app-main .alert.success,.app-shell .app-main .success{background:#edf9f1;border-color:#cdebd8;color:#197644}.app-shell .app-main .table-wrap{border:1px solid #e2e6e9;border-radius:7px;overflow-x:auto}.app-shell .app-main table{border-collapse:collapse;min-width:680px;width:100%}.app-shell .app-main th,.app-shell .app-main td{border-bottom:1px solid #e8ebed;padding:11px 12px;text-align:left;vertical-align:middle}.app-shell .app-main tr:last-child td{border-bottom:0}.app-shell .app-main th{background:#f7f8f9;color:#69737a;font-size:10px;font-weight:750;text-transform:uppercase}.app-shell .app-main td{color:#354047;font-size:12px;line-height:1.45}.app-shell .app-main tbody tr{transition:background-color .12s ease}.app-shell .app-main tbody tr:hover{background:#fafbfb}.app-shell .app-main td strong,.app-shell .app-main td span{display:block}.app-shell .app-main td span{color:#7d878e;font-size:10px;margin-top:3px}.app-shell .app-main .status{align-items:center;background:#eef2f4;border:1px solid #e0e5e8;border-radius:6px;color:#4e5960;display:inline-flex;font-size:9px;font-weight:750;line-height:1;margin:0 4px 3px 0;min-height:25px;padding:0 8px;white-space:nowrap}.app-shell .app-main .status.active,.app-shell .app-main .status.soft{background:#edf9f1;border-color:#d4eddd;color:#197644}.app-shell .app-main .status.suspended{background:#fff2f3;border-color:#f4d1d4;color:#b52535}.app-shell .app-main .row-actions,.app-shell .app-main .actions{display:flex;flex-wrap:wrap;gap:6px}.app-shell .app-main .row-actions button,.app-shell .app-main .actions button{font-size:10px;min-height:32px;padding:0 10px}.app-shell .app-main .list,.app-shell .app-main .plan-list,.app-shell .app-main .class-list,.app-shell .app-main .request-list{display:grid;gap:0}.app-shell .app-main .list article,.app-shell .app-main .plan-list article,.app-shell .app-main .class-list article,.app-shell .app-main .request-list article{background:transparent;border:0;border-bottom:1px solid #edf0f2;border-radius:0;box-shadow:none;padding:13px 2px}.app-shell .app-main .list article:last-child,.app-shell .app-main .plan-list article:last-child,.app-shell .app-main .class-list article:last-child,.app-shell .app-main .request-list article:last-child{border-bottom:0}.app-shell .app-main .empty{color:#899198;font-size:12px}app-families-shell .workspace,app-students-shell .workspace{background:#fff;border:1px solid var(--se-border);border-left:4px solid var(--se-primary);border-radius:8px;box-shadow:var(--se-shadow);max-width:880px;padding:30px}app-families-shell .workspace h1,app-students-shell .workspace h1{color:var(--se-ink);font-size:26px;font-weight:680}app-families-shell .workspace p,app-students-shell .workspace p{line-height:1.6}@media(max-width:1180px){.app-shell .app-main .metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.app-shell .app-main .content-grid.two{grid-template-columns:1fr}}@media(max-width:760px){.app-shell .app-main .workspace{gap:16px}.app-shell .app-main .page-header{align-items:stretch;flex-direction:column;min-height:0}.app-shell .app-main .page-header h1,.app-shell .app-main .page-header h2{font-size:21px}.app-shell .app-main .page-header>button{align-self:flex-start}.app-shell .app-main .metrics{gap:10px}.app-shell .app-main .metrics article{min-height:98px;padding:16px}.app-shell .app-main .metrics article:before{left:16px}.app-shell .app-main .metrics strong{font-size:25px;margin-top:13px}.app-shell .app-main .panel{padding:16px}.app-shell .app-main form.panel,.app-shell .app-main .inline-form,.app-shell .app-main .date-form{grid-template-columns:1fr}.app-shell .app-main .wide{grid-column:auto}.app-shell .app-main .table-wrap{margin-left:-16px;margin-right:-16px;border-left:0;border-radius:0;border-right:0}}
