:root{--bg:#f4f7fb;--panel:#fff;--text:#17233f;--muted:#73809a;--line:#e5eaf1;--accent:#2f6fed;--accent-soft:#edf3ff;--nav:#111b31}*{box-sizing:border-box}html,body{background:var(--bg);min-height:100%;color:var(--text);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input{font:inherit}a{color:inherit;text-decoration:none}body{min-height:100vh}.app-shell{grid-template-columns:248px 1fr;min-height:100vh;display:grid}.sidebar{background:var(--nav);color:#fff;flex-direction:column;gap:28px;padding:26px 20px;display:flex}.brand-row{align-items:center;gap:12px;display:flex}.brand-row div:last-child{gap:3px;display:grid}.brand-row span{color:#9eabc2;font-size:12px}.brand-mark{color:#fff;letter-spacing:-.03em;background:linear-gradient(135deg,#2f6fed,#6d8eff);border-radius:16px;place-items:center;width:52px;height:52px;font-weight:800;display:grid;box-shadow:0 10px 25px #2f6fed47}.brand-mark.small{border-radius:12px;width:38px;height:38px;font-size:13px}.sidebar nav{gap:7px;display:grid}.sidebar nav a{color:#b9c4d7;border-radius:11px;padding:12px 14px;font-size:14px;font-weight:600}.sidebar nav a:hover,.sidebar nav a.active{color:#fff;background:#ffffff14}.sidebar-footer{border-top:1px solid #ffffff1f;gap:4px;margin-top:auto;padding:15px;display:grid}.sidebar-footer span{color:#96a3ba;text-transform:uppercase;letter-spacing:.08em;font-size:11px}.sidebar-footer strong{font-size:14px}.content{padding:38px 42px 54px;overflow:hidden}.topbar{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:28px;display:flex}h1,h2,p{margin-top:0}h1{letter-spacing:-.035em;margin-bottom:8px;font-size:clamp(29px,3vw,42px)}h2{letter-spacing:-.02em;margin-bottom:0;font-size:20px}.eyebrow{color:#7a89a6;letter-spacing:.11em;margin-bottom:8px;font-size:11px;font-weight:800}.muted{color:var(--muted)}.top-actions{gap:10px;display:flex}.primary-button,.secondary-button,.ghost-button{cursor:pointer;border:0;border-radius:11px;font-weight:750}.primary-button{background:var(--accent);color:#fff;padding:12px 17px;box-shadow:0 8px 22px #2f6fed33}.primary-button:disabled{opacity:.6;cursor:default}.secondary-button{color:var(--text);border:1px solid var(--line);background:#fff;padding:12px 17px}.ghost-button{color:#53617a;background:#f6f8fb;padding:9px 12px}.stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:15px;display:grid}.stat-card{background:var(--panel);border:1px solid var(--line);border-radius:17px;padding:18px;box-shadow:0 7px 25px #1c2d520b}.stat-card p{color:#66748e;margin-bottom:12px;font-size:13px}.stat-card strong{letter-spacing:-.04em;margin-bottom:5px;font-size:30px;display:block}.stat-card span{color:#98a3b8;font-size:11px}.quick-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:15px 0 22px;display:grid}.quick-grid button{text-align:left;border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:15px;grid-template-rows:auto auto;grid-template-columns:36px 1fr;column-gap:10px;padding:15px;display:grid}.quick-grid button:hover{transform:translateY(-1px);box-shadow:0 9px 25px #1c2d520f}.quick-grid span{background:var(--accent-soft);width:36px;height:36px;color:var(--accent);border-radius:11px;grid-row:1/3;place-items:center;display:grid}.quick-grid strong{align-self:end;font-size:13px}.quick-grid small{color:#8b96aa;align-self:start;margin-top:3px}.dashboard-grid{grid-template-columns:1.1fr .9fr;gap:16px;display:grid}.panel{border:1px solid var(--line);background:#fff;border-radius:18px;padding:19px;box-shadow:0 7px 25px #1c2d520a}.panel-title{border-bottom:1px solid #edf0f5;justify-content:space-between;align-items:center;gap:18px;padding-bottom:14px;display:flex}.panel-title a{color:var(--accent);font-size:12px;font-weight:700}.meeting-list,.notice-list{display:grid}.meeting-row{border-bottom:1px solid #f0f2f6;align-items:center;gap:12px;padding:14px 0;display:flex}.meeting-row:last-child,.notice-row:last-child{border-bottom:0;padding-bottom:0}.time-badge{text-align:center;background:#f0f4fb;border-radius:10px;min-width:54px;padding:9px 8px;font-size:13px;font-weight:800}.grow{flex:1;gap:3px;min-width:0;display:grid}.grow strong,.notice-row strong{font-size:13px}.grow span,.notice-row span{color:#6e7b92;font-size:11px}.grow small{color:#9aa4b6;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.notice-row{border-bottom:1px solid #f0f2f6;justify-content:space-between;gap:14px;padding:15px 0;display:flex}.notice-row>div:first-child{gap:4px;display:grid}.read-meter{text-align:right;min-width:90px}.read-meter b{font-size:12px}.read-meter>div{background:#edf1f7;border-radius:99px;height:5px;margin:5px 0 3px;overflow:hidden}.read-meter i{background:var(--accent);border-radius:inherit;height:100%;display:block}.read-meter small{color:#9ba6b9;font-size:10px}.login-shell{background:radial-gradient(circle at 20% 20%,#e9f0ff 0,#0000 33%),linear-gradient(145deg,#f6f8fc,#edf2f9);place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{border:1px solid var(--line);background:#fffffff5;border-radius:22px;width:min(440px,100%);padding:36px;box-shadow:0 25px 70px #1c2d521f}.login-card .brand-mark{margin-bottom:24px}.login-card h1{font-size:31px}.login-form{gap:15px;margin-top:24px;display:grid}.login-form label{color:#4d5b74;gap:7px;font-size:12px;font-weight:750;display:grid}.login-form input{background:#fff;border:1px solid #dfe5ef;border-radius:11px;outline:none;width:100%;padding:13px 14px}.login-form input:focus{border-color:#8aacf4;box-shadow:0 0 0 3px #edf3ff}.form-error{color:#b42318;margin:0;font-size:12px}@media (max-width:1050px){.stat-grid,.quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid{grid-template-columns:1fr}}@media (max-width:780px){.app-shell{display:block}.sidebar{display:none}.content{padding:24px 17px 40px}.topbar{flex-direction:column;align-items:stretch}.top-actions{width:100%}.top-actions button{flex:1}}@media (max-width:540px){.stat-grid,.quick-grid{grid-template-columns:1fr 1fr;gap:9px}.stat-card,.quick-grid button{padding:13px}.stat-card strong{font-size:25px}.quick-grid button{grid-template-rows:auto;grid-template-columns:1fr;gap:7px}.quick-grid span{grid-row:auto}.meeting-row{align-items:flex-start}.meeting-row .ghost-button{display:none}}.auth-tabs{background:#f2f5f9;border-radius:12px;grid-template-columns:1fr 1fr;gap:6px;margin-top:24px;padding:5px;display:grid}.auth-tabs button{color:#6f7c92;cursor:pointer;background:0 0;border:0;border-radius:9px;padding:10px;font-weight:750}.auth-tabs button.active{color:var(--text);background:#fff;box-shadow:0 4px 12px #1c2d5214}.form-success{color:#157347;background:#edf8f2;border:1px solid #ccebd9;border-radius:10px;margin:0;padding:10px 12px;font-size:12px}.activate-card{max-width:470px}.code-input{letter-spacing:.04em;font-weight:750}.sidebar-logout{color:#aebbd0;cursor:pointer;background:0 0;border:0;width:fit-content;margin-top:8px;padding:0;font-size:12px}.sidebar-logout:hover{color:#fff}.quick-link{text-align:left;border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:15px;grid-template-rows:auto auto;grid-template-columns:36px 1fr;column-gap:10px;padding:15px;display:grid}.quick-link:hover{transform:translateY(-1px);box-shadow:0 9px 25px #1c2d520f}.quick-link>span{background:var(--accent-soft);width:36px;height:36px;color:var(--accent);border-radius:11px;grid-row:1/3;place-items:center;display:grid}.quick-link strong{align-self:end;font-size:13px}.quick-link small{color:#8b96aa;align-self:start;margin-top:3px}.status-pill{color:#64718a;background:#f2f5f9;border-radius:999px;padding:6px 9px;font-size:10px;font-weight:750}.empty-state{color:#8190a8;gap:5px;padding:26px 4px 12px;display:grid}.empty-state strong{color:#526078;font-size:13px}.empty-state span{font-size:12px}.simple-page{max-width:1180px;min-height:100vh;margin:0 auto;padding:38px 42px 54px}.simple-header{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:24px;display:flex}.student-table-wrap{padding:0;overflow:hidden}.student-table{border-bottom:1px solid #eef1f5;grid-template-columns:1.4fr .8fr .55fr;align-items:center;gap:16px;padding:15px 18px;font-size:13px;display:grid}.student-table:last-child{border-bottom:0}.student-table.head{color:#6c7890;text-transform:uppercase;letter-spacing:.04em;background:#f8fafd;font-size:11px}.student-table span{color:#65728a}@media (max-width:640px){.simple-page{padding:24px 16px}.simple-header{flex-direction:column;align-items:stretch}.student-table{grid-template-columns:1fr;gap:5px}.student-table.head{display:none}}.form-page{max-width:900px}.form-panel{padding:24px}.entity-form{gap:18px;display:grid}.entity-form label{color:#4d5b74;gap:7px;font-size:12px;font-weight:750;display:grid}.entity-form input,.entity-form textarea,.entity-form select{width:100%;color:var(--text);background:#fff;border:1px solid #dfe5ef;border-radius:11px;outline:none;padding:12px 13px}.entity-form textarea{resize:vertical;min-height:110px}.entity-form input:focus,.entity-form textarea:focus,.entity-form select:focus{border-color:#8aacf4;box-shadow:0 0 0 3px #edf3ff}.form-grid-2{grid-template-columns:1fr 1fr;gap:14px;display:grid}.check-row{align-items:center;width:fit-content;grid-template-columns:18px 1fr!important;gap:9px!important}.check-row input{width:16px;height:16px;padding:0}.check-row span{gap:2px;display:grid}.form-actions{justify-content:flex-end;gap:10px;padding-top:4px;display:flex}.form-info{color:#42608b;background:#eef5ff;border:1px solid #d8e7ff;border-radius:11px;margin:0;padding:11px 13px;font-size:12px}@media (max-width:640px){.form-grid-2{grid-template-columns:1fr}.form-actions{justify-content:stretch}.form-actions>*{text-align:center;flex:1}}.collection-list{padding:0;overflow:hidden}.collection-row{border-bottom:1px solid #edf0f5;justify-content:space-between;gap:24px;padding:20px;display:flex}.collection-row:last-child{border-bottom:0}.collection-row h2{margin:7px 0 6px;font-size:17px}.collection-row p{color:#69768d;max-width:680px;margin:0;font-size:13px;line-height:1.5}.collection-meta{text-align:right;align-content:center;gap:4px;min-width:150px;display:grid}.collection-meta strong,.event-date strong{font-size:12px}.collection-meta span,.event-date span{color:#8e99ad;font-size:11px}.scope-badge{color:#4269aa;text-transform:uppercase;letter-spacing:.04em;background:#eef4ff;border-radius:999px;padding:5px 8px;font-size:10px;font-weight:800;display:inline-flex}.event-date{background:#f2f6fc;border-radius:13px;align-content:center;place-items:center;gap:2px;min-width:82px;height:62px;display:grid}.family-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.family-card{gap:16px;display:grid}.family-card-head{align-items:center;gap:12px;display:flex}.family-card-head h2{margin-bottom:5px;font-size:16px}.avatar-circle{color:#3867b6;background:#eef4ff;border-radius:50%;place-items:center;width:44px;height:44px;font-size:12px;font-weight:800;display:grid}.access-pill{color:#778397;text-transform:uppercase;background:#f2f4f7;border-radius:999px;padding:4px 7px;font-size:9px;font-weight:800;display:inline-flex}.access-pill.active{color:#29734a;background:#eaf7ef}.family-contact,.children-list{color:#6c7890;gap:5px;font-size:12px;display:grid}.children-list{border-top:1px solid #edf0f5;padding-top:12px}.children-list strong{color:#47556e;text-transform:uppercase;letter-spacing:.04em;font-size:11px}@media (max-width:720px){.family-grid{grid-template-columns:1fr}.collection-row{flex-direction:column}.collection-meta{text-align:left;min-width:0}}.invite-action{justify-items:start;gap:6px;display:grid}.invite-result{border-top:1px solid #edf0f5;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding-top:12px;display:grid}.invite-result code{color:#31415d;overflow-wrap:anywhere;background:#f5f7fa;border-radius:9px;min-width:0;padding:9px 10px;font-size:10px}.invite-result small{color:#6c7890;grid-column:1/-1}.family-home{max-width:1080px;min-height:100vh;margin:0 auto;padding:36px 24px 56px}.family-topbar{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:24px;display:flex}.family-topbar .sidebar-logout{color:#6f7c92;border:1px solid var(--line);background:#fff;border-radius:10px;padding:10px 13px}.family-topbar .sidebar-logout:hover{color:var(--text)}.child-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:18px;display:grid}.child-card{border:1px solid var(--line);background:#fff;border-radius:15px;align-items:center;gap:11px;padding:15px;display:flex}.child-card>div{gap:3px;display:grid}.child-card strong{font-size:13px}.child-card small{color:#8a96aa}.child-icon{color:#3767b8;background:#eef4ff;border-radius:12px;place-items:center;width:38px;height:38px;font-weight:850;display:grid}.family-dashboard-grid{grid-template-columns:1.1fr .9fr;gap:16px;display:grid}.family-agenda{display:grid}.family-agenda-row{border-bottom:1px solid #eef1f5;gap:4px;padding:14px 0;display:grid}.family-agenda-row:last-child{border-bottom:0}.family-agenda-row strong{font-size:13px}.family-agenda-row span{color:#7b879d;font-size:11px}@media (max-width:760px){.child-grid,.family-dashboard-grid{grid-template-columns:1fr}.family-topbar{flex-direction:column;align-items:stretch}}.teacher-shell{grid-template-columns:248px 1fr;min-height:100vh;display:grid}.teacher-sidebar{color:#fff;background:#13213b;flex-direction:column;gap:28px;padding:26px 20px;display:flex}.teacher-sidebar nav{gap:7px;display:grid}.teacher-sidebar nav a{color:#bdc8da;border-radius:11px;padding:12px 14px;font-size:14px;font-weight:650}.teacher-sidebar nav a:hover,.teacher-sidebar nav a.active{color:#fff;background:#ffffff14}.teacher-sidebar .sidebar-footer{margin-top:auto}.teacher-class-list{display:grid}.teacher-class-row{border-bottom:1px solid #eef1f5;justify-content:space-between;gap:16px;padding:15px 0;display:flex}.teacher-class-row:last-child{border-bottom:0}.teacher-class-row>div{gap:3px;display:grid}.teacher-class-row strong{font-size:13px}.teacher-class-row span{color:#8995a9;font-size:11px}.teacher-class-row b{color:#4d5e79;align-self:center;font-size:11px}.teacher-stats{margin-top:4px}.notice-document{max-width:820px;margin:0 auto;padding:28px}.notice-document-meta{flex-wrap:wrap;gap:8px;margin-bottom:22px;display:flex}.ack-badge{color:#9a6114;text-transform:uppercase;letter-spacing:.04em;background:#fff4e5;border-radius:999px;padding:5px 8px;font-size:10px;font-weight:800;display:inline-flex}.notice-body{color:#3f4d65;padding:8px 0 20px;font-size:15px;line-height:1.75}.notice-body p{margin-bottom:12px}.interaction-action{border-top:1px solid #edf0f5;justify-items:start;gap:8px;padding-top:18px;display:grid}.interaction-message{color:#65758f;font-size:11px}.manager-read-summary{border-top:1px solid #edf0f5;gap:4px;padding-top:18px;display:grid}.manager-read-summary strong{font-size:13px}.manager-read-summary span{color:#7d899e;font-size:11px}.text-link{color:var(--accent);font-size:11px;font-weight:750}.notice-row.clickable{border-radius:10px;padding-left:8px;padding-right:8px}.notice-row.clickable:hover{background:#f8faff}.family-top-actions{align-items:center;gap:10px;display:flex}.family-quick-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 18px;display:grid}.family-quick-card{border:1px solid var(--line);background:#fff;border-radius:15px;gap:5px;padding:16px;display:grid}.family-quick-card:hover{transform:translateY(-1px);box-shadow:0 8px 22px #1c2d520f}.family-quick-card strong{font-size:13px}.family-quick-card span{color:#8591a5;font-size:11px;line-height:1.45}.meeting-family-list{gap:12px;display:grid}.family-meeting-card{grid-template-columns:1fr auto;align-items:center;gap:22px;display:grid}.family-meeting-main{gap:6px;display:grid}.family-meeting-main h2{margin:2px 0 0}.family-meeting-main p{color:#758198;margin:0;font-size:12px}.family-meeting-main>strong{font-size:13px}.family-meeting-main>small{color:#738099;font-size:11px}.meeting-response-box{justify-items:end;gap:8px;display:grid}.meeting-response-actions{flex-wrap:wrap;justify-content:flex-end;gap:7px;display:flex}.compact{font-size:11px;padding:8px 11px!important}.status-confirmed{color:#27734a;background:#eaf7ef}.status-reschedule_requested{color:#996019;background:#fff4e5}.notification-list{padding:0;overflow:hidden}.notification-row{background:#fff;border-bottom:1px solid #edf0f5;justify-content:space-between;gap:18px;padding:17px 19px;display:flex}.notification-row:last-child{border-bottom:0}.notification-row.unread{box-shadow:inset 3px 0 0 var(--accent);background:#f7faff}.notification-copy{gap:4px;display:grid}.notification-copy strong{font-size:13px}.notification-copy span{color:#68768e;font-size:12px}.notification-copy small{color:#9aa4b6;font-size:10px}.notification-actions{align-items:center;gap:7px;display:flex}.read-state{color:#8591a5;text-transform:uppercase;font-size:10px;font-weight:750}@media (max-width:780px){.teacher-shell{display:block}.teacher-sidebar{display:none}.family-meeting-card{grid-template-columns:1fr}.meeting-response-box{justify-items:start}.meeting-response-actions{justify-content:flex-start}.notification-row{flex-direction:column}.notification-actions{justify-content:flex-start}}@media (max-width:640px){.family-quick-grid{grid-template-columns:1fr}.family-top-actions{flex-direction:column;align-items:stretch}}.team-grid{grid-template-columns:.9fr 1.1fr;gap:16px;display:grid}.team-form-body{padding-top:18px}.staff-invite-form{margin-top:0}.team-list{display:grid}.team-row{border-bottom:1px solid #eef1f5;grid-template-columns:44px 1fr auto;align-items:center;gap:11px;padding:14px 0;display:grid}.team-row:last-child{border-bottom:0}.team-row>div:nth-child(2){gap:3px;display:grid}.team-row strong{font-size:13px}.team-row span{color:#8290a6;font-size:11px}.count-badge{color:#3b69b3;background:#eef4ff;border-radius:999px;place-items:center;min-width:30px;height:30px;padding:0 8px;font-size:11px;font-weight:800;display:grid}@media (max-width:760px){.team-grid{grid-template-columns:1fr}}.team-assignment-panel{margin-top:16px}.assignment-form{max-width:760px}.students-page{max-width:1260px}.student-table-v2{grid-template-columns:1.45fr .58fr 1.15fr .45fr}.student-row-link{color:inherit;transition:background .16s,transform .16s}.student-row-link:hover{background:#f8faff}.student-identity-cell{align-items:center;gap:12px;min-width:0;display:flex}.student-identity-cell>div{gap:3px;min-width:0;display:grid}.student-identity-cell strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.student-identity-cell small{color:#94a0b3;font-size:10px}.student-list-photo{object-fit:cover;background:#eef4ff;border:1px solid #e5eaf2;border-radius:13px;flex:none;width:42px;height:42px}.student-list-photo.student-initials{color:#3868bb;border:0;place-items:center;font-size:11px;font-weight:850;display:grid}.student-guardian-summary{gap:3px;min-width:0;display:grid}.student-guardian-summary span{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.privacy-note{color:#8a96aa;margin:11px 3px 0;font-size:10px}.student-profile-page{max-width:1260px}.student-profile-hero{justify-content:space-between;align-items:center;gap:26px;margin-bottom:14px;padding:24px;display:flex}.student-profile-main{align-items:center;gap:18px;min-width:0;display:flex}.student-profile-photo{object-fit:cover;background:#eaf1ff;border:1px solid #e1e8f4;border-radius:24px;flex:none;width:92px;height:92px}.student-profile-photo.student-initials{color:#3569c4;border:0;place-items:center;font-size:24px;font-weight:900;display:grid}.student-profile-copy{min-width:0}.student-profile-copy h1{margin-bottom:10px;font-size:clamp(28px,3.2vw,40px)}.student-profile-actions{flex-wrap:wrap;justify-content:flex-end;gap:9px;display:flex}.profile-badges{flex-wrap:wrap;gap:7px;display:flex}.profile-tabs{z-index:5;gap:5px;width:fit-content;max-width:100%;margin-bottom:22px;padding:6px;display:flex;position:sticky;top:10px;overflow-x:auto;box-shadow:0 8px 28px #1c2d5212}.profile-tabs a{white-space:nowrap;color:#66748d;border-radius:10px;padding:9px 12px;font-size:11px;font-weight:750}.profile-tabs a:hover{color:#315fae;background:#eef4ff}.profile-section{margin-bottom:26px;scroll-margin-top:80px}.profile-section-title{justify-content:space-between;align-items:flex-end;gap:18px;min-height:44px;margin-bottom:12px;display:flex}.profile-section-title h2{font-size:21px}.profile-section-title .eyebrow{margin-bottom:5px}.profile-info-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.info-card{align-content:start;gap:7px;min-height:126px;display:grid}.info-card span{color:#8490a5;text-transform:uppercase;letter-spacing:.04em;font-size:10px;font-weight:750}.info-card strong{font-size:15px;line-height:1.35}.info-card small{color:#8995aa;font-size:10px;line-height:1.45}.profile-note{margin-top:12px}.profile-note strong{margin-bottom:7px;font-size:12px;display:block}.profile-note p{color:#65738c;margin:0;font-size:12px;line-height:1.65}.photo-upload-control{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:9px;display:flex}.photo-upload-control small{color:#8b97a9;font-size:9px}.guardian-profile-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.guardian-profile-card{gap:15px;display:grid}.guardian-profile-head{align-items:center;gap:11px;display:flex}.guardian-profile-head h3{margin:0 0 4px;font-size:15px}.guardian-profile-head span{color:#7c899f;font-size:10px}.guardian-profile-card dl{gap:9px;margin:0;display:grid}.guardian-profile-card dl>div{border-top:1px solid #eef1f5;grid-template-columns:80px minmax(0,1fr);gap:12px;padding-top:9px;display:grid}.guardian-profile-card dt{color:#8a96aa;font-size:10px}.guardian-profile-card dd{color:#475570;margin:0;font-size:11px;line-height:1.55}.guardian-profile-card .address-row{grid-template-columns:80px minmax(0,1fr)}.privacy-inline{color:#98a3b5;font-size:9px}.profile-timeline{padding:0;overflow:hidden}.profile-timeline-row{border-bottom:1px solid #edf0f5;justify-content:space-between;gap:20px;padding:15px 18px;display:flex}a.profile-timeline-row:hover{background:#f8faff}.profile-timeline-row:last-child{border-bottom:0}.profile-timeline-row>div{gap:4px;min-width:0;display:grid}.profile-timeline-row strong{font-size:12px}.profile-timeline-row span{color:#748098;text-overflow:ellipsis;white-space:nowrap;max-width:720px;font-size:10px;overflow:hidden}.profile-timeline-row small{color:#8e99ad;flex:none;font-size:10px}.student-edit-page{max-width:1060px}.student-edit-page>.form-panel{margin-bottom:28px}.student-edit-form{padding-top:10px}.student-address-edit-section{scroll-margin-top:20px}.guardian-address-editor-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.guardian-address-form h3{margin:0 0 4px;font-size:15px}.guardian-address-form>div:first-of-type p{color:#7f8ba0;margin:0;font-size:10px}@media (max-width:980px){.student-table-v2{grid-template-columns:1.4fr .7fr 1fr}.student-table-v2>:last-child{display:none}.profile-info-grid{grid-template-columns:1fr 1fr}}@media (max-width:760px){.student-profile-hero{flex-direction:column;align-items:stretch}.student-profile-actions{justify-content:flex-start}.student-profile-main{align-items:flex-start}.student-profile-photo{border-radius:20px;width:72px;height:72px}.guardian-profile-grid,.guardian-address-editor-grid{grid-template-columns:1fr}.profile-section-title{flex-direction:column;align-items:flex-start}.photo-upload-control{justify-content:flex-start}}@media (max-width:640px){.student-table-v2{grid-template-columns:1fr;gap:8px}.student-table-v2>:last-child{display:block}.student-guardian-summary span{white-space:normal}.profile-info-grid{grid-template-columns:1fr}.student-profile-main{flex-direction:column}.profile-tabs{width:100%}.guardian-profile-card dl>div,.guardian-profile-card .address-row{grid-template-columns:1fr;gap:4px}.profile-timeline-row{flex-direction:column;gap:6px}.profile-timeline-row span{white-space:normal}}.notices-page-v2{max-width:1260px}.notice-summary-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:18px;display:grid}.notice-summary-card{gap:8px;min-height:110px;display:grid}.notice-summary-card span{color:#8190a7;text-transform:uppercase;letter-spacing:.06em;font-size:10px;font-weight:800}.notice-summary-card strong{letter-spacing:-.04em;font-size:29px}.notice-summary-card small{color:#8d98ac;font-size:11px;line-height:1.5}.notice-card-list{gap:14px;display:grid}.notice-card-v2{gap:16px;display:grid}.notice-card-topline{justify-content:space-between;align-items:center;gap:14px;display:flex}.notice-badges{flex-wrap:wrap;gap:7px;display:flex}.soft-badge{color:#67758d;background:#f3f6fb;border-radius:999px;padding:7px 10px;font-size:10px;font-weight:780}.notice-date-label{color:#8794a8;font-size:11px;font-weight:700}.notice-card-main{grid-template-columns:minmax(0,1.3fr) minmax(260px,.7fr);gap:18px;display:grid}.notice-card-copy{gap:10px;display:grid}.notice-card-copy h2{margin:0}.notice-card-copy p{color:#66758d;margin:0;font-size:13px;line-height:1.7}.notice-target-line{flex-wrap:wrap;gap:10px 14px;display:flex}.notice-target-line span{color:#6f7d94;font-size:11px}.notice-card-side{gap:10px;display:grid}.notice-side-box{background:#fbfcfe;border:1px solid #edf1f6;border-radius:14px;gap:6px;padding:14px;display:grid}.notice-side-box.accent{background:#f6f9ff;border-color:#dfe9ff}.notice-side-label{color:#7b88a0;text-transform:uppercase;letter-spacing:.05em;font-size:10px;font-weight:800}.notice-side-box strong{font-size:14px;line-height:1.4}.notice-side-box small{color:#8390a5;font-size:11px;line-height:1.55}.notice-card-actions{flex-wrap:wrap;gap:8px;display:flex}.notice-card-actions .secondary-button,.notice-card-actions .ghost-button{padding:10px 13px}.notice-detail-page-v2{max-width:1280px}.notice-detail-grid-v2{grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);align-items:start;gap:16px;display:grid}.notice-document-v2{gap:16px;display:grid}.notice-body-v2{padding-bottom:0}.notice-body-v2 p{color:#314058;font-size:14px;line-height:1.85}.panel-subsection{background:#fbfcfe;border:1px solid #edf1f6;border-radius:14px;padding:15px}.notice-action-callout strong{margin-bottom:7px;font-size:14px;display:block}.notice-action-callout p{color:#6a7891;margin:0;font-size:12px;line-height:1.65}.notice-side-column{gap:16px;display:grid}.compact-title{min-height:initial;margin-bottom:10px}.notice-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.compact-card{min-height:118px}.notice-related-meetings{gap:12px;display:grid}.linked-meeting-list{gap:10px;display:grid}.linked-meeting-card{background:#fcfdff;border:1px solid #edf1f6;border-radius:16px;gap:14px;padding:15px;display:grid}.linked-meeting-copy{gap:6px;display:grid}.linked-meeting-copy strong{font-size:15px}.linked-meeting-copy p{color:#65748d;margin:0;font-size:12px;line-height:1.65}.linked-meeting-copy small{color:#8693a7;font-size:11px;line-height:1.55}.linked-meeting-note{padding-top:4px}.linked-meeting-actions{gap:8px;display:grid}.linked-meeting-actions .meeting-response-box{justify-items:stretch}.linked-meeting-actions .meeting-response-actions{justify-content:flex-start}.linked-meeting-help{color:#7c889d;font-size:10px;line-height:1.6}.manager-side{align-items:start}.compact-action{width:fit-content}.manager-read-summary.enhanced{gap:5px;display:grid}.manager-read-summary.enhanced strong{font-size:15px}.manager-read-summary.enhanced span{color:#7d8aa0;font-size:11px}@media (max-width:980px){.notice-summary-strip{grid-template-columns:1fr 1fr}.notice-detail-grid-v2,.notice-card-main{grid-template-columns:1fr}}@media (max-width:680px){.notice-summary-strip,.notice-info-grid{grid-template-columns:1fr}.notice-card-topline{flex-direction:column;align-items:flex-start}.notice-card-actions{flex-direction:column}.notice-card-actions a{text-align:center;width:100%}}.form-section-heading{border-top:1px solid #edf1f6;gap:4px;padding:16px 0 4px;display:grid}.form-section-heading:first-child{border-top:0;padding-top:0}.form-section-heading strong{font-size:13px}.form-section-heading span{color:#8793a7;font-size:10px;line-height:1.5}.notice-ack-row{align-self:end;min-height:48px}.notice-ack-row input{width:auto}.entity-form label>small{color:#96a1b2;font-size:9px;font-weight:600}.kind-badge,.priority-badge,.deadline-badge{border-radius:999px;padding:7px 10px;font-size:10px;font-weight:800}.kind-badge{color:#586982;background:#eef3fa}.kind-meeting{color:#3868bb;background:#eef4ff}.kind-pedagogical{color:#4f7650;background:#f0f7ee}.kind-urgent{color:#a44444;background:#fff0f0}.kind-administrative{color:#68548c;background:#f5f2fb}.priority-badge-important{color:#91601e;background:#fff5e8}.priority-badge-urgent{color:#a23d3d;background:#ffecec}.deadline-badge{color:#3f65a5;background:#eef4ff}.deadline-badge.expired{color:#a33d3d;background:#fceaea}.notice-card-v2.priority-urgent{box-shadow:inset 4px 0 #d65a5a,0 7px 25px #1c2d520a}.notice-card-v2.priority-important{box-shadow:inset 4px 0 #d59a45,0 7px 25px #1c2d520a}.notice-side-box.danger{background:#fff7f7;border-color:#f2dada}.notice-action-inline{color:#5d6b84;background:#f7f9fc;border:1px solid #edf1f6;border-radius:12px;padding:10px 12px;font-size:11px;line-height:1.55}.notice-action-inline strong{color:#2e3d57}.detail-badges{margin-bottom:10px}.meeting-response-v2{width:100%}.reschedule-form-box{background:#f9fbff;border:1px solid #dde6f4;border-radius:14px;gap:12px;width:100%;padding:14px;display:grid}.reschedule-heading{gap:3px;display:grid}.reschedule-heading strong{font-size:13px}.reschedule-heading span{color:#7e8ba1;font-size:10px;line-height:1.5}.reschedule-grid{grid-template-columns:1.1fr 1fr .8fr;gap:9px;display:grid}.reschedule-grid label,.reschedule-note-label{color:#526078;gap:6px;font-size:10px;font-weight:750;display:grid}.reschedule-grid input,.reschedule-grid select,.reschedule-note-label textarea{width:100%;font:inherit;color:#263550;background:#fff;border:1px solid #dfe5ef;border-radius:10px;outline:none;padding:10px 11px}.reschedule-note-label textarea{resize:vertical}.reschedule-actions{flex-wrap:wrap;gap:7px;display:flex}.family-current-proposal{background:#fff8ea;border:1px solid #f1dfb7;border-radius:12px;gap:4px;padding:10px 12px;display:grid}.family-current-proposal strong{color:#77551d;font-size:11px}.family-current-proposal span{color:#775f35;font-size:11px}.family-current-proposal small{color:#8d754d;font-size:10px}.family-meeting-help{gap:5px;margin-bottom:14px;display:grid}.family-meeting-help strong{font-size:13px}.family-meeting-help span{color:#748198;font-size:11px;line-height:1.6}.family-meeting-card-v2{align-items:start}.meetings-page-v2{max-width:1260px}.meeting-manager-list{gap:12px;display:grid}.manager-meeting-card{grid-template-columns:82px minmax(0,1fr) auto;align-items:center;gap:16px;display:grid}.manager-meeting-date{background:#f2f6fc;border-radius:14px;align-content:center;place-items:center;gap:3px;min-height:74px;display:grid}.manager-meeting-date strong{text-transform:capitalize;font-size:13px}.manager-meeting-date span{color:#67758c;font-size:11px}.manager-meeting-copy{gap:6px;min-width:0;display:grid}.manager-meeting-copy h2{margin:0}.manager-meeting-copy p{color:#748198;margin:0;font-size:11px}.family-proposal-inline{color:#74572e;background:#fff7e9;border-radius:10px;margin-top:4px;padding:9px 10px;font-size:10px;line-height:1.55}.manager-meeting-actions{justify-content:flex-end;display:flex}.meeting-edit-page{max-width:980px}.family-proposal-panel{gap:10px;margin-bottom:14px;display:grid}.family-proposal-panel h2{margin:0}.family-proposal-panel>small{color:#8692a5;font-size:10px}.proposal-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;display:grid}.proposal-grid>div{background:#fbfcfe;border:1px solid #edf1f5;border-radius:12px;gap:5px;padding:11px;display:grid}.proposal-grid span{color:#8793a7;text-transform:uppercase;font-size:9px;font-weight:800}.proposal-grid strong{font-size:12px}.proposal-note{color:#665433;background:#fff9ef;border-left:3px solid #e1a84f;margin:0;padding:11px 12px;font-size:11px;line-height:1.6}@media (max-width:900px){.manager-meeting-card{grid-template-columns:70px minmax(0,1fr)}.manager-meeting-actions{grid-column:1/-1;justify-content:flex-start;padding-left:86px}.reschedule-grid,.proposal-grid{grid-template-columns:1fr 1fr}}@media (max-width:620px){.manager-meeting-card{grid-template-columns:1fr;align-items:stretch}.manager-meeting-date{place-items:start;min-height:auto;padding:10px 12px}.manager-meeting-actions{grid-column:auto;padding-left:0}.reschedule-grid,.proposal-grid{grid-template-columns:1fr}.meeting-response-actions,.reschedule-actions{flex-direction:column}.meeting-response-actions button,.reschedule-actions button{width:100%}}.agenda-page-v1{max-width:1380px}.calendar-shell-v1{gap:14px;display:grid}.calendar-toolbar{justify-content:space-between;align-items:center;gap:18px;padding:14px 16px;display:flex}.calendar-nav{align-items:center;gap:10px;display:flex}.calendar-nav>div{gap:2px;min-width:190px;display:grid}.calendar-nav span{color:#8693a8;text-transform:uppercase;letter-spacing:.06em;font-size:9px;font-weight:800}.calendar-nav strong{text-transform:capitalize;font-size:17px}.calendar-arrow{border:1px solid var(--line);cursor:pointer;color:#53617a;background:#fff;border-radius:10px;width:36px;height:36px;font-size:16px}.calendar-arrow:hover{background:#f7f9fc}.calendar-today{padding:9px 11px}.calendar-filter-row{background:#f3f6fa;border-radius:11px;gap:5px;padding:4px;display:flex}.calendar-filter{color:#718097;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:8px 11px;font-size:10px;font-weight:750}.calendar-filter.active{color:#254d91;background:#fff;box-shadow:0 3px 10px #1c2d5214}.calendar-layout-v1{grid-template-columns:minmax(0,1.6fr) minmax(300px,.55fr);align-items:start;gap:14px;display:grid}.calendar-panel-v1{padding:0;overflow:hidden}.calendar-week-head{background:#f8fafd;border-bottom:1px solid #edf0f5;grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.calendar-week-head span{text-align:center;color:#7b879c;text-transform:uppercase;letter-spacing:.06em;padding:12px 10px;font-size:9px;font-weight:850}.calendar-grid-v1{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.calendar-day-v1{text-align:left;cursor:pointer;min-height:122px;color:var(--text);background:#fff;border:1px solid #eef1f5;border-top:0;border-left:0;align-content:start;gap:7px;padding:9px;display:grid;overflow:hidden}.calendar-day-v1:nth-child(7n){border-right:0}.calendar-day-v1:hover{background:#fafcff}.calendar-day-v1.muted{color:#a8b1c1;background:#fbfcfe}.calendar-day-v1.selected{background:#f8fbff;box-shadow:inset 0 0 0 2px #87aaf6}.calendar-day-number{border-radius:999px;place-items:center;width:28px;height:28px;font-size:11px;font-weight:800;display:grid}.calendar-day-v1.today .calendar-day-number{background:var(--accent);color:#fff}.calendar-day-items{gap:4px;min-width:0;display:grid}.calendar-mini-item{white-space:nowrap;text-overflow:ellipsis;color:#536a92;background:#f2f6fd;border-radius:7px;min-width:0;padding:5px 6px;font-size:8px;line-height:1.25;display:block;overflow:hidden}.calendar-mini-item i{background:#5e83d6;border-radius:50%;width:5px;height:5px;margin-right:4px;display:inline-block}.calendar-mini-item.event{color:#557652;background:#f4f8f2}.calendar-mini-item.event i{background:#6ca56a}.calendar-day-items small{color:#8f9bad;padding-left:4px;font-size:8px}.calendar-side-v1,.calendar-day-detail{gap:14px;display:grid}.calendar-side-title{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.calendar-side-title h2{text-transform:capitalize;font-size:17px;line-height:1.35}.calendar-agenda-list{gap:8px;display:grid}.calendar-agenda-card{background:#fcfdff;border:1px solid #e9eef5;border-radius:13px;grid-template-columns:62px 1fr;gap:10px;padding:11px;display:grid}.calendar-agenda-card:hover{background:#f8fbff;border-color:#cbd9f3}.calendar-agenda-card.event:hover{background:#f9fcf8;border-color:#d5e6d3}.calendar-agenda-time{align-content:start;gap:3px;display:grid}.calendar-agenda-time strong{font-size:12px}.calendar-agenda-time span{color:#8b96a8;text-transform:uppercase;font-size:8px;font-weight:800}.calendar-agenda-copy{gap:4px;min-width:0;display:grid}.calendar-agenda-copy strong{font-size:11px}.calendar-agenda-copy span{color:#718099;font-size:9px;line-height:1.45}.calendar-agenda-copy small{color:#92711e;font-size:9px;font-weight:700}.calendar-create-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.calendar-create-actions a{text-align:center;padding:10px}.calendar-month-summary{gap:10px;display:grid}.calendar-month-summary>div{border-bottom:1px solid #eef1f5;align-items:baseline;gap:7px;padding:9px 0;display:flex}.calendar-month-summary>div strong{font-size:23px}.calendar-month-summary>div span{color:#76839a;font-size:10px}.calendar-month-summary>small{color:#8995aa;font-size:9px;line-height:1.55}.compact-empty{padding-top:8px}.push-setup-card{background:linear-gradient(135deg,#fff,#f7faff);grid-template-columns:48px 1fr auto;align-items:center;gap:14px;margin:15px 0;display:grid}.push-setup-card.compact{border:1px solid var(--line);border-radius:15px;margin:0;padding:12px}.push-setup-icon{background:#edf3ff;border-radius:15px;place-items:center;width:48px;height:48px;font-size:22px;display:grid}.push-setup-copy{gap:4px;min-width:0;display:grid}.push-setup-copy>span{color:#7c89a0;letter-spacing:.07em;font-size:9px;font-weight:850}.push-setup-copy>strong{font-size:14px}.push-setup-copy p{color:#6f7d94;margin:0;font-size:10px;line-height:1.5}.push-setup-copy small{color:#8591a6;font-size:9px;line-height:1.5}.push-setup-action{align-items:center;display:flex}.push-setup-action button{white-space:nowrap}.push-compact-ok{color:#2d714c;align-items:center;gap:6px;font-size:10px;font-weight:750;display:inline-flex}.push-compact-ok span{color:#46a46d}.meeting-notify-all{background:#fafcff;border:1px solid #e7edf5;border-radius:12px;align-items:flex-start;padding:13px}.meeting-notify-all>span{gap:3px;display:grid}.meeting-notify-all strong{color:#475570;font-size:11px}.meeting-notify-all small{color:#8190a7;font-size:9px;font-weight:500;line-height:1.5}@media (max-width:1050px){.calendar-layout-v1{grid-template-columns:1fr}.calendar-side-v1{grid-template-columns:1fr 1fr}}@media (max-width:780px){.calendar-toolbar{flex-direction:column;align-items:stretch}.calendar-filter-row{width:fit-content}.calendar-day-v1{min-height:92px;padding:6px}.calendar-mini-item{border-radius:999px;height:7px;padding:0;font-size:0}.calendar-mini-item i{display:none}.calendar-side-v1{grid-template-columns:1fr}.push-setup-card{grid-template-columns:42px 1fr}.push-setup-action{grid-column:1/-1}.push-setup-action button{width:100%}}@media (max-width:560px){.calendar-nav>div{min-width:140px}.calendar-week-head span{padding:9px 3px;font-size:8px}.calendar-day-v1{min-height:72px}.calendar-day-number{width:24px;height:24px;font-size:10px}.calendar-day-items small{display:none}}.notice-engagement-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px;display:grid}.engagement-card{gap:6px;min-height:112px;display:grid}.engagement-card>span{color:#7f8ca3;text-transform:uppercase;letter-spacing:.05em;font-size:10px;font-weight:800}.engagement-card strong{letter-spacing:-.04em;font-size:28px}.engagement-card small{color:#8a96aa;font-size:10px;line-height:1.45}.engagement-card.attention{background:#fffaf1;border-color:#f4d9a7}.locked-target-card{background:#f7faff;border:1px solid #dfe7f4;border-radius:14px;gap:5px;padding:15px;display:grid}.locked-target-card span{color:#78869e;text-transform:uppercase;font-size:10px;font-weight:800}.locked-target-card strong{font-size:14px}.locked-target-card small{color:#8995a9;font-size:10px;line-height:1.5}.edit-notify-card{background:#f6f9ff;border:1px solid #dbe6fb;border-radius:14px;padding:14px}.edit-notify-card .check-row{align-items:flex-start}.edit-notify-card .check-row span{gap:4px;display:grid}.edit-notify-card small{color:#8290a6;font-size:10px;font-weight:500;line-height:1.45}.audit-mini-panel{gap:10px;display:grid}.audit-mini-list{display:grid}.audit-mini-row{border-top:1px solid #edf0f5;justify-content:space-between;gap:12px;padding:11px 0;display:flex}.audit-mini-row>div{gap:3px;display:grid}.audit-mini-row strong{font-size:11px}.audit-mini-row span,.audit-mini-row small{color:#8490a5;font-size:9px;line-height:1.45}.audit-page{max-width:1240px}.audit-table{padding:0;overflow:hidden}.audit-table-head,.audit-table-row{grid-template-columns:150px 1fr 180px 1.6fr;align-items:center;gap:16px;padding:14px 18px;display:grid}.audit-table-head{color:#75839a;text-transform:uppercase;letter-spacing:.05em;background:#f8fafd;font-size:10px;font-weight:800}.audit-table-row{border-top:1px solid #edf0f5;font-size:11px}.audit-table-row>span{color:#718098}.audit-table-row strong{font-size:11px}.guardian-permission-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.guardian-permission-form{gap:14px;display:grid}.guardian-permission-head{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.guardian-permission-head h3{margin:0 0 4px;font-size:15px}.guardian-permission-head p{color:#8390a6;margin:0;font-size:10px}.permission-check-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.permission-check-grid label{cursor:pointer;background:#fbfcfe;border:1px solid #edf1f6;border-radius:12px;align-items:flex-start;gap:9px;padding:10px;display:flex}.permission-check-grid input{margin-top:2px}.permission-check-grid span{gap:3px;display:grid}.permission-check-grid strong{color:#46536c;font-size:10px}.permission-check-grid small{color:#8c98aa;font-size:9px;line-height:1.4}.guardian-permission-badges{flex-wrap:wrap;gap:6px;padding-top:2px;display:flex}.permission-chip{color:#79859a;background:#f3f5f8;border-radius:999px;padding:5px 7px;font-size:8px;font-weight:760}.permission-chip.yes{color:#27734a;background:#edf8f2}.permission-chip.no{color:#a24a4a;background:#fceeee}.observation-page{max-width:920px}.observation-type-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;display:grid}.observation-type{text-align:left;cursor:pointer;background:#fff;border:1px solid #e5eaf1;border-radius:13px;gap:5px;padding:12px;display:grid}.observation-type strong{font-size:11px}.observation-type span{color:#8995a8;font-size:9px;line-height:1.45}.observation-type.active{background:#f8fbff;border-color:#8fb0f4;box-shadow:0 0 0 2px #dbe7ff}.observation-timeline{gap:10px;display:grid}.observation-card{border-left-width:4px;gap:11px;display:grid}.observation-card.observation-evolution{border-left-color:#58a876}.observation-card.observation-observation{border-left-color:#4f7ed7}.observation-card.observation-attention{border-left-color:#dda02c}.observation-card.observation-occurrence{border-left-color:#c85b5b}.observation-card-head{justify-content:space-between;gap:14px;display:flex}.observation-card-head h3{margin:4px 0 0;font-size:14px}.observation-card-head small{color:#8c98aa;font-size:9px}.observation-type-label{color:#6d7a90;font-size:9px;font-weight:780}.observation-card>p{color:#55637c;margin:0;font-size:11px;line-height:1.65}.observation-action{background:#f7f9fc;border-radius:10px;gap:4px;padding:10px 12px;display:grid}.observation-action strong{text-transform:uppercase;color:#78869d;font-size:9px}.observation-action span{color:#59677f;font-size:10px;line-height:1.5}.observation-card footer{color:#929cae;border-top:1px solid #f0f2f5;justify-content:space-between;gap:10px;padding-top:8px;font-size:8px;display:flex}.teacher-feed-panel{margin:16px 0}.teacher-feed-help{color:#738098;margin:14px 0;font-size:11px;line-height:1.6}.teacher-student-feed-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;display:grid}.teacher-student-feed-card{background:#fbfcfe;border:1px solid #edf0f5;border-radius:12px;align-items:center;gap:9px;padding:10px;display:flex}.teacher-student-feed-card>span{color:#3768bb;background:#edf3ff;border-radius:10px;place-items:center;width:34px;height:34px;font-size:9px;font-weight:850;display:grid}.teacher-student-feed-card>div{gap:2px;min-width:0;display:grid}.teacher-student-feed-card strong{white-space:nowrap;text-overflow:ellipsis;font-size:10px;overflow:hidden}.teacher-student-feed-card small{color:#7890b4;font-size:9px}.coordination-attention-panel{margin:0 0 18px}.attention-total{color:#3568bd;background:#eef4ff;border-radius:999px;place-items:center;min-width:32px;height:32px;padding:0 9px;font-size:12px;font-weight:850;display:grid}.coordination-attention-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding-top:14px;display:grid}.attention-item{background:#fbfcfe;border:1px solid #edf0f5;border-radius:13px;gap:10px;padding:12px;display:flex}.attention-item>span{font-size:16px}.attention-item>div{gap:3px;display:grid}.attention-item strong{font-size:11px}.attention-item small{color:#8995a8;font-size:9px;line-height:1.45}.attention-item.danger{background:#fff7f7;border-color:#f2dede}.attention-item.warning{background:#fffaf0;border-color:#f2e1bd}.attention-item.info{background:#f7faff;border-color:#dfe8f8}.attention-student-list{border-top:1px solid #edf0f5;margin-top:12px;display:grid}.attention-student-list a{border-bottom:1px solid #f1f3f6;justify-content:space-between;gap:12px;padding:10px 2px;display:flex}.attention-student-list a>div{gap:2px;display:grid}.attention-student-list strong{font-size:10px}.attention-student-list span,.attention-student-list small{color:#8793a6;font-size:9px}@media (max-width:980px){.notice-engagement-grid{grid-template-columns:1fr 1fr}.guardian-permission-grid,.coordination-attention-grid{grid-template-columns:1fr}.teacher-student-feed-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.audit-table-head,.audit-table-row{grid-template-columns:120px 1fr 1fr}.audit-table-head>:last-child,.audit-table-row>:last-child{grid-column:2/-1}}@media (max-width:640px){.notice-engagement-grid,.permission-check-grid,.observation-type-grid,.teacher-student-feed-grid{grid-template-columns:1fr}.audit-table-head{display:none}.audit-table-row{grid-template-columns:1fr;gap:5px}.observation-card-head,.observation-card footer{flex-direction:column}}.authorization-page,.authorization-detail,.support-page,.support-detail{max-width:1240px}.authorization-list,.support-thread-list{gap:12px;display:grid}.authorization-card,.support-thread-card{justify-content:space-between;align-items:center;gap:22px;transition:transform .15s,box-shadow .15s;display:flex}.authorization-card:hover,.support-thread-card:hover{transform:translateY(-1px);box-shadow:0 10px 28px #1c2d5212}.authorization-card-copy,.support-thread-card>div:first-child{gap:7px;min-width:0;display:grid}.authorization-card-copy h2,.support-thread-card h2{margin:0;font-size:18px}.authorization-card-copy p,.support-thread-card p{color:#66758d;margin:0;font-size:11px}.authorization-card-copy small{color:#8a96aa;font-size:10px}.authorization-card-stats{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.authorization-card-stats>span{text-align:center;color:#7c899e;border:1px solid #edf1f6;border-radius:12px;gap:2px;min-width:86px;padding:10px 11px;font-size:9px;display:grid}.authorization-card-stats strong{color:var(--text);font-size:18px}.authorization-card-stats .answered{color:#2b744c;background:#edf8f2}.authorization-card-stats .pending{color:#9a6a18;background:#fff9ed}.authorization-detail-grid{grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);align-items:start;gap:16px;display:grid}.authorization-document{gap:18px;display:grid}.authorization-manager-actions{flex-wrap:wrap;align-items:center;gap:10px;padding-top:4px;display:flex}.authorization-manager-actions .form-error{flex-basis:100%}.authorization-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.authorization-facts>div{background:#fbfcfe;border:1px solid #edf1f6;border-radius:12px;gap:5px;padding:12px;display:grid}.authorization-facts span{color:#8490a5;text-transform:uppercase;font-size:9px;font-weight:800}.authorization-facts strong{font-size:11px;line-height:1.5}.authorization-results{gap:12px;display:grid}.authorization-response-list{display:grid}.authorization-response-row{border-top:1px solid #edf0f5;justify-content:space-between;gap:14px;padding:12px 0;display:flex}.authorization-response-row>div{gap:3px;display:grid}.authorization-response-row strong{font-size:11px}.authorization-response-row span,.authorization-response-row small{color:#8490a5;font-size:9px}.authorization-response-box{background:#f7faff;border:1px solid #dfe8f8;border-radius:14px;gap:9px;padding:14px;display:grid}.authorization-response-actions{flex-wrap:wrap;gap:8px;display:flex}.authorization-response-box small{color:#7d8aa0;font-size:10px;line-height:1.45}.recipient-picker{border:1px solid #e5eaf1;border-radius:14px;gap:8px;margin:0;padding:14px;display:grid}.recipient-picker legend{color:#4f5d75;padding:0 7px;font-size:11px;font-weight:800}.recipient-option{cursor:pointer;background:#fbfcfe;border:1px solid #edf1f6;border-radius:11px;align-items:flex-start;gap:10px;padding:11px;display:flex}.recipient-option.eligible{background:#f7fbf8;border-color:#dceee2}.recipient-option span{gap:2px;display:grid}.recipient-option strong{font-size:11px}.recipient-option small{color:#8490a5;font-size:9px}.status-open{color:#3568bd;background:#eef4ff}.status-closed{color:#2b744c;background:#edf8f2}.status-cancelled{color:#a33d3d;background:#fcecec}.support-thread-meta{justify-items:end;gap:8px;display:grid}.support-thread-meta small{color:#8995a8;font-size:9px}.status-waiting_family{color:#996019;background:#fff3df}.status-waiting_school{color:#3568bd;background:#eef4ff}.support-conversation{gap:18px;display:grid}.support-message-list{gap:10px;display:grid}.support-message{background:#f4f6fa;border:1px solid #e9edf4;border-radius:15px 15px 15px 4px;gap:7px;width:min(82%,720px);padding:13px 14px;display:grid}.support-message.mine{background:#edf4ff;border-color:#dce8fb;border-radius:15px 15px 4px;justify-self:end}.support-message>div{justify-content:space-between;gap:12px;display:flex}.support-message strong{font-size:10px}.support-message small{color:#8b97aa;font-size:8px}.support-message p{color:#4f5d75;white-space:pre-wrap;margin:0;font-size:11px;line-height:1.6}.support-message-form{border-top:1px solid #edf0f5;gap:10px;padding-top:16px;display:grid}.support-message-form textarea{resize:vertical;width:100%;font:inherit;border:1px solid #dfe5ef;border-radius:12px;padding:12px 13px}.support-message-form>div{justify-content:flex-end;display:flex}.support-status-control{color:#647189;align-items:center;gap:8px;font-size:10px;font-weight:750;display:flex}.support-status-control select{color:var(--text);background:#fff;border:1px solid #dfe5ef;border-radius:10px;padding:9px 10px}.coordination-attention-grid,.family-quick-grid{grid-template-columns:repeat(5,minmax(0,1fr))}@media (max-width:1100px){.coordination-attention-grid,.family-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.authorization-detail-grid{grid-template-columns:1fr}}@media (max-width:700px){.authorization-card,.support-thread-card{flex-direction:column;align-items:stretch}.authorization-card-stats{justify-content:flex-start}.support-thread-meta{justify-items:start}.authorization-facts,.family-quick-grid,.coordination-attention-grid{grid-template-columns:1fr}.support-message{width:94%}}.danger-button{color:#b42318;cursor:pointer;background:#fff5f5;border:1px solid #f0c7c7;border-radius:11px;padding:10px 13px;font-weight:750}.edit-tabs{margin-bottom:24px}.operational-record-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.operational-record-card{align-content:start}.operational-record-card.new-record{background:#fbfdff;border-style:dashed}.operational-record-card h3{margin:0;font-size:16px}.restricted-profile-form{max-width:900px}.privacy-callout{background:#f6f8fc;border:1px solid #e7ebf2;border-radius:13px;gap:4px;padding:13px 15px;display:grid}.privacy-callout strong{font-size:12px}.privacy-callout span{color:#76839a;font-size:11px;line-height:1.55}.operational-profile-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.operational-list{gap:0;margin-top:12px;display:grid}.operational-list>strong{padding-bottom:10px;font-size:12px}.operational-list>div{border-top:1px solid #eef1f5;justify-content:space-between;gap:16px;padding:10px 0;display:flex}.operational-list span{color:#65728a;font-size:11px}.operational-list b{text-align:right;font-size:11px}.observation-followup-bar{flex-wrap:wrap;align-items:center;gap:8px;padding-top:10px;display:flex}.observation-followup-bar small{color:#7c899f;font-size:10px}.follow-open{color:#a63f35;background:#fff1f0}.follow-monitoring{color:#95621b;background:#fff7e6}.follow-meeting_scheduled{color:#3465b3;background:#eef4ff}.follow-resolved{color:#27734a;background:#eaf7ef}.observation-resolution{background:#eef8f2;border:1px solid #d8eee0;border-radius:12px;gap:5px;padding:12px 14px;display:grid}.observation-resolution strong{font-size:11px}.observation-resolution span{color:#577264;font-size:11px;line-height:1.55}.observation-card footer a{color:var(--accent);margin-left:auto;font-size:10px;font-weight:800}.follow-up-grid{grid-template-columns:1fr 1fr;gap:14px;margin-bottom:16px;display:grid}.follow-up-explainer{align-content:start;gap:10px;display:grid}.follow-up-explainer p{color:#69778f;font-size:12px;line-height:1.65}.follow-up-explainer .primary-button{width:fit-content}.student-timeline-page{max-width:1080px}.timeline-summary{justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px;display:flex}.timeline-summary>div{gap:2px;display:grid}.timeline-summary strong{letter-spacing:-.04em;font-size:30px}.timeline-summary span{color:#8390a5;font-size:10px}.timeline-summary p{color:#77849a;max-width:560px;margin:0;font-size:11px;line-height:1.55}.student-master-timeline{gap:10px;padding-left:26px;display:grid;position:relative}.student-master-timeline:before{content:"";background:#e4e9f1;width:2px;position:absolute;top:10px;bottom:10px;left:12px}.timeline-master-item{border:1px solid var(--line);background:#fff;border-radius:17px;grid-template-columns:44px 1fr;gap:12px;padding:16px;transition:transform .15s,box-shadow .15s;display:grid;position:relative;box-shadow:0 7px 25px #1c2d520a}.timeline-master-item:hover{transform:translateY(-1px);box-shadow:0 10px 28px #1c2d5212}.timeline-master-icon{background:#f2f6fc;border-radius:13px;place-items:center;width:40px;height:40px;font-size:16px;display:grid}.timeline-master-top time{color:#8a96aa;font-size:10px}.timeline-master-body h2{font-size:15px}.timeline-master-body p{color:#68768e;white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:11px;line-height:1.55;overflow:hidden}.timeline-observation .timeline-master-icon{background:#fff8e8}.timeline-meeting .timeline-master-icon{background:#eef4ff}.timeline-authorization .timeline-master-icon{background:#edf8f2}.timeline-support .timeline-master-icon{background:#f3f0ff}@media (max-width:900px){.operational-record-grid,.follow-up-grid{grid-template-columns:1fr}.operational-profile-grid{grid-template-columns:1fr 1fr}}@media (max-width:640px){.operational-profile-grid{grid-template-columns:1fr}.timeline-summary{flex-direction:column;align-items:flex-start}.student-master-timeline{padding-left:0}.student-master-timeline:before{display:none}.timeline-master-item{grid-template-columns:36px 1fr;padding:13px}.timeline-master-icon{border-radius:11px;width:34px;height:34px}.timeline-master-top{flex-direction:column;align-items:flex-start;gap:5px}.timeline-master-body p{white-space:normal}}.child-card-link{cursor:pointer;transition:transform .15s,box-shadow .15s}.child-card-link:hover{transform:translateY(-1px);box-shadow:0 10px 28px #1c2d5214}.child-card-link em{color:var(--accent);margin-top:5px;font-size:10px;font-style:normal;font-weight:800;display:block}.assigned-followups{margin-bottom:16px}.teacher-assigned-list{display:grid}.teacher-assigned-list a{border-top:1px solid #edf0f5;justify-content:space-between;gap:14px;padding:13px 0;display:flex}.teacher-assigned-list a:first-child{border-top:0}.teacher-assigned-list a>div{gap:4px;display:grid}.teacher-assigned-list strong{font-size:12px}.teacher-assigned-list span{color:#6e7b92;font-size:11px}.teacher-assigned-list small{color:#8d98aa;text-align:right;font-size:10px}.case-list-panel{margin-top:22px}.case-list{gap:10px;display:grid}.case-row{border:1px solid var(--line);color:inherit;background:var(--panel);border-radius:16px;grid-template-columns:70px minmax(260px,1.7fr) minmax(150px,.8fr) minmax(130px,.7fr) auto;align-items:center;gap:16px;padding:15px 16px;text-decoration:none;display:grid}.case-row:hover{transform:translateY(-1px);box-shadow:0 10px 25px #0f172a0f}.case-row-overdue{background:snow;border-color:#fecaca}.case-number{color:var(--muted);font-size:.86rem;font-weight:800}.case-row-main,.case-row-owner,.case-row-due{gap:4px;display:grid}.case-row-main strong{font-size:.94rem}.case-row-main b{color:var(--text-soft,var(--text));font-size:.84rem;font-weight:700}.case-row-main span,.case-row-owner small,.case-row-due small{color:var(--muted);font-size:.82rem}.case-row-due small{font-weight:800}.case-row-overdue .case-row-due small{color:#b91c1c}.case-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:20px 0;display:grid}.case-layout{grid-template-columns:minmax(0,1.7fr) minmax(300px,.7fr);align-items:start;gap:20px;display:grid}.case-main-column,.case-side-column{gap:20px;display:grid}.case-side-column{position:sticky;top:20px}.case-action-list{gap:10px;margin-top:14px;display:grid}.case-action-row{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:14px 0;display:flex}.case-action-row:first-child{border-top:0}.case-action-row>div:first-child{gap:4px;display:grid}.case-action-row span,.case-action-row small{color:var(--muted)}.case-action-row.done{opacity:.65}.case-action-row.done strong{text-decoration:line-through}.case-action-row>div:last-child{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.case-create-action{border-top:1px solid var(--line);margin-top:16px;padding-top:14px}.case-create-action summary{cursor:pointer;font-weight:800}.case-create-action .entity-form{margin-top:14px}.case-inline-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.case-timeline{gap:0;margin-top:12px;display:grid}.case-timeline article{grid-template-columns:18px 1fr;gap:14px;padding:12px 0;display:grid}.case-timeline article>div:last-child{gap:4px;display:grid}.case-timeline article small{color:var(--muted)}.case-timeline article p{color:var(--text-soft,var(--muted));margin:0}.case-timeline-dot{background:#64748b;border-radius:50%;width:12px;height:12px;margin-top:5px;box-shadow:0 0 0 4px #f1f5f9}.case-timeline-dot.action{background:#2563eb}.case-timeline-dot.observation{background:#d97706}.case-timeline-dot.meeting{background:#7c3aed}.case-timeline-dot.notice{background:#059669}.case-status-open,.case-status-in_progress,.case-status-monitoring{color:#1d4ed8;background:#eff6ff}.case-status-awaiting_teacher,.case-status-awaiting_family,.case-status-meeting_scheduled{color:#c2410c;background:#fff7ed}.case-status-resolved,.case-status-closed{color:#047857;background:#ecfdf5}@media (max-width:1000px){.case-row{grid-template-columns:60px 1fr auto}.case-row-owner,.case-row-due{display:none}.case-layout{grid-template-columns:1fr}.case-side-column{position:static}.case-summary-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.case-row{grid-template-columns:1fr;gap:8px}.case-number{order:-1}.case-summary-grid{grid-template-columns:1fr}.case-action-row{flex-direction:column;align-items:flex-start}.case-inline-actions{justify-content:flex-start}}.header-action-row{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.classes-stats{margin-bottom:18px}.classes-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.class-card{padding:0;overflow:hidden}.class-card-head{justify-content:space-between;align-items:flex-start;gap:14px;padding:20px 20px 14px;display:flex}.class-card-head h2{margin:3px 0 0}.class-meta-row{color:var(--muted);border-bottom:1px solid var(--line);gap:5px;padding:0 20px 16px;font-size:13px;display:grid}.class-meta-row strong{color:var(--text)}.class-student-list{display:grid}.class-student-row{border-bottom:1px solid var(--line);color:var(--text);justify-content:space-between;align-items:center;gap:12px;padding:12px 20px;display:flex}.class-student-row:last-child{border-bottom:0}.class-student-row:hover{background:#f8faff}.class-student-row span{font-weight:650}.class-student-row small{color:var(--muted)}.unassigned-students-panel{margin-top:18px;overflow:hidden}.empty-state.compact{padding:18px 20px}@media (max-width:800px){.classes-grid{grid-template-columns:1fr}.header-action-row{justify-content:flex-start}}.teacher-photo-cta{justify-content:space-between;align-items:center;gap:18px;margin:16px 0;display:flex}.teacher-photo-cta>div{min-width:0}.teacher-photo-cta h2{margin:3px 0 0}.daily-photo-page{max-width:1180px}.daily-import-uploader,.daily-import-review{margin-bottom:18px}.ai-badge{color:#315f9e;white-space:nowrap;background:#eef5ff;border-radius:999px;padding:7px 10px;font-size:10px;font-weight:800}.daily-import-actions{grid-template-columns:minmax(220px,1fr) auto;align-items:end;gap:12px;margin-top:14px;display:grid}.daily-import-actions label{color:#5f6c83;gap:6px;font-size:11px;font-weight:700;display:grid}.daily-import-actions select{background:#fff;border:1px solid #dfe5ee;border-radius:10px;min-height:42px;padding:0 11px;font-size:13px}.form-help{color:#65758d;margin-top:10px;font-size:11px}.ai-warning{background:#fffaf0;border:1px solid #f0d9a5;border-radius:12px;gap:4px;margin:12px 0;padding:12px 14px;display:grid}.ai-warning strong{font-size:12px}.ai-warning span{color:#786748;font-size:10px}.daily-entry-list{gap:12px;margin-top:14px;display:grid}.daily-entry-card{background:#fff;border:1px solid #e5e9f0;border-radius:14px;gap:10px;padding:14px;display:grid}.daily-entry-card.skipped{opacity:.55;background:#f7f8fa}.daily-entry-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.daily-entry-head strong{font-size:12px}.daily-entry-head span{color:#75839a;background:#f2f5f9;border-radius:999px;padding:5px 8px;font-size:9px}.daily-entry-card label{color:#5b687c;gap:5px;font-size:10px;font-weight:750;display:grid}.daily-entry-card input,.daily-entry-card select,.daily-entry-card textarea{color:#17243a;width:100%;font:inherit;background:#fff;border:1px solid #dfe5ee;border-radius:9px;padding:9px 10px;font-size:12px}.daily-entry-card textarea{resize:vertical}.daily-entry-card .check-row{display:flex}.confirmation-box{background:#f4f8ff;border:1px solid #dbe8fb;border-radius:14px;flex-wrap:wrap;align-items:center;gap:12px;margin-top:14px;padding:14px;display:flex}.confirmation-box strong{font-size:12px}.confirmation-box span{color:#64748b;flex:340px;font-size:10px;line-height:1.55}@media (max-width:760px){.teacher-photo-cta{flex-direction:column;align-items:stretch}.teacher-photo-cta .primary-button{text-align:center}.daily-import-actions,.daily-entry-card .form-grid-2{grid-template-columns:1fr}.confirmation-box{flex-direction:column;align-items:stretch}}.scroll-region{scrollbar-gutter:stable;overflow-y:auto}.compact-panel-title{padding-bottom:12px}.entity-dialog{background:0 0;border:0;border-radius:18px;width:min(620px,100% - 28px);padding:0;box-shadow:0 26px 80px #14223e38}.entity-dialog::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#111b316b}.entity-dialog-card{border:1px solid var(--line);background:#fff;border-radius:18px;margin:0;padding:22px}.entity-dialog-head{border-bottom:1px solid #edf0f5;justify-content:space-between;align-items:flex-start;gap:18px;padding-bottom:14px;display:flex}.entity-dialog-head h2{margin:0}.dialog-close{color:#64718a;cursor:pointer;background:#f4f6fa;border:0;border-radius:10px;width:34px;height:34px;font-size:22px;line-height:1}.dialog-close:hover{color:var(--text);background:#eaf0f8}.dialog-actions{padding-top:0}.compact-help{margin:-3px 0 0}.class-directory-panel{padding:0;overflow:hidden}.class-directory-panel>.panel-title{padding:17px 19px 13px}.class-directory-scroll{scrollbar-gutter:stable;max-height:520px;overflow-y:auto}.class-directory-item{background:#fff;border-bottom:1px solid #edf0f5}.class-directory-item:last-child{border-bottom:0}.class-directory-item summary{cursor:pointer;grid-template-columns:minmax(220px,1fr) auto;align-items:center;gap:16px;padding:15px 19px;list-style:none;display:grid}.class-directory-item summary::-webkit-details-marker{display:none}.class-directory-item summary:hover{background:#f8faff}.class-directory-name{gap:4px;min-width:0;display:grid}.class-directory-name strong{font-size:14px}.class-directory-name span{color:#8390a5;font-size:10px}.class-directory-summary-meta{justify-content:flex-end;align-items:center;gap:10px;min-width:0;display:flex}.teacher-state{text-overflow:ellipsis;white-space:nowrap;color:#53627b;max-width:250px;font-size:10px;font-weight:700;overflow:hidden}.teacher-state.missing{color:#a17738}.details-chevron{color:#8995a9;place-items:center;width:24px;height:24px;transition:transform .16s;display:grid}.class-directory-item[open] .details-chevron{transform:rotate(180deg)}.class-directory-body{background:#fbfcfe;border-top:1px solid #eef1f5}.class-directory-body-head{color:#76839a;justify-content:space-between;gap:14px;padding:10px 19px;font-size:10px;display:flex}.class-directory-body-head strong{color:#55647e}.class-student-row.compact-row{padding-top:10px;padding-bottom:10px}.compact-scroll-list{scrollbar-gutter:stable;max-height:260px;overflow-y:auto}.guardian-directory-panel{padding:0;overflow:hidden}.guardian-directory-panel>.panel-title{padding:17px 19px 13px}.guardian-directory-scroll{scrollbar-gutter:stable;max-height:560px;overflow-y:auto}.guardian-directory-row{border-bottom:1px solid #edf0f5;grid-template-columns:minmax(210px,1.15fr) minmax(180px,1fr) minmax(210px,1.15fr) minmax(120px,.7fr);align-items:center;gap:16px;padding:14px 19px;display:grid}.guardian-directory-row:last-child{border-bottom:0}.guardian-directory-row:hover{background:#fafcff}.guardian-directory-person{align-items:center;gap:11px;min-width:0;display:flex}.guardian-directory-person>div:last-child{justify-items:start;gap:5px;min-width:0;display:grid}.guardian-directory-person strong{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:12px;overflow:hidden}.guardian-directory-contact,.guardian-directory-children{gap:4px;min-width:0;display:grid}.guardian-directory-contact span,.guardian-directory-children span{text-overflow:ellipsis;white-space:nowrap;color:#66758c;font-size:10px;overflow:hidden}.guardian-directory-contact small{color:#929db0;font-size:9px}.guardian-directory-action{justify-content:flex-end;min-width:0;display:flex}.guardian-directory-action .invite-action,.guardian-directory-action .invite-result{width:100%;max-width:230px}.row-muted-action{color:#929db0;font-size:10px}.team-active-scroll{max-height:330px}.team-invite-scroll{max-height:260px}.student-directory-scroll{max-height:620px}.student-directory-scroll .student-table.head{z-index:3;position:sticky;top:0}@media (max-width:900px){.guardian-directory-row{grid-template-columns:minmax(190px,1fr) minmax(180px,1fr)}.guardian-directory-action{justify-content:flex-start}}@media (max-width:680px){.class-directory-item summary{grid-template-columns:1fr;gap:8px}.class-directory-summary-meta{justify-content:flex-start}.teacher-state{max-width:min(250px,65vw)}.guardian-directory-row{grid-template-columns:1fr;gap:9px}.guardian-directory-action{justify-content:stretch}.guardian-directory-action .invite-action,.guardian-directory-action .invite-result{max-width:none}.entity-dialog-card{padding:18px}}.academic-page{gap:20px;display:grid}.academic-stats{margin:0}.academic-filter-panel{padding:15px 18px}.academic-filter-form{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.academic-filter-form label{color:#68758b;text-transform:uppercase;letter-spacing:.04em;gap:6px;min-width:210px;font-size:11px;font-weight:750;display:grid}.academic-filter-form select,.academic-filter-form input{border:1px solid var(--line);min-height:42px;color:var(--text);font:inherit;background:#fff;border-radius:10px;padding:9px 11px;font-size:13px}.academic-main-panel{padding-bottom:14px}.attendance-register{gap:14px;display:grid}.attendance-toolbar,.attendance-save-row,.grade-entry-toolbar,.grade-save-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;display:flex}.attendance-summary-inline{color:#65728a;flex-wrap:wrap;gap:16px;font-size:12px;display:flex}.attendance-summary-inline b{color:var(--text);font-size:14px}.attendance-list{border:1px solid var(--line);scrollbar-gutter:stable;border-radius:14px;max-height:520px;overflow-y:auto}.attendance-row{border-bottom:1px solid #edf0f5;grid-template-columns:minmax(170px,1.2fr) 160px 115px minmax(180px,1.4fr);align-items:center;gap:10px;padding:11px 13px;display:grid}.attendance-row:last-child{border-bottom:0}.attendance-row select,.attendance-row input{border:1px solid var(--line);width:100%;min-width:0;min-height:39px;color:var(--text);font:inherit;background:#fff;border-radius:9px;padding:8px 9px;font-size:12px}.attendance-student{gap:2px;min-width:0;display:grid}.attendance-student strong{font-size:13px}.attendance-student small{color:#7a879a}.attendance-time-placeholder{text-align:center;color:#a6afbd}.attendance-save-row small,.grade-save-row small{color:#738096;max-width:680px;line-height:1.45}.form-success{color:#23724b;background:#edf9f2;border:1px solid #ccebd8;border-radius:10px;padding:10px 12px;font-size:12px}.academic-history-panel{padding-bottom:12px}.academic-history-scroll{scrollbar-gutter:stable;border-top:1px solid var(--line);max-height:560px;overflow-y:auto}.academic-history-row,.performance-history-row{border-bottom:1px solid #edf0f5;justify-content:space-between;align-items:center;gap:16px;padding:13px 2px;display:flex}.academic-history-row:last-child,.performance-history-row:last-child{border-bottom:0}.academic-history-row>div,.performance-history-row>div:first-child{gap:4px;min-width:0;display:grid}.academic-history-row strong,.performance-history-row strong{font-size:13px}.academic-history-row span:not(.attendance-state),.performance-history-row span{color:#6e7b90;font-size:11px}.attendance-state{border-radius:999px;flex:none;padding:6px 9px;font-size:10px;font-weight:800}.attendance-ok{color:#2f7a4f;background:#edf8f1}.attendance-warning{color:#8c6618;background:#fff6df}.attendance-danger{color:#a33e37;background:#fff0ef}.teacher-academic-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.teacher-academic-card{align-items:center;gap:14px;text-decoration:none;display:flex}.teacher-academic-card>span{color:#35445d;background:#f0f4fa;border-radius:12px;place-items:center;width:42px;height:42px;font-size:20px;display:grid}.teacher-academic-card h2{margin:1px 0 3px;font-size:16px}.teacher-academic-card small{color:#738096}.performance-layout{grid-template-columns:minmax(250px,320px) minmax(0,1fr);align-items:start;gap:18px;display:grid}.assessment-directory{padding-bottom:10px}.assessment-scroll{scrollbar-gutter:stable;max-height:560px;overflow-y:auto}.assessment-item{border-top:1px solid #edf0f5;justify-content:space-between;gap:10px;padding:12px 3px;text-decoration:none;display:flex}.assessment-item:first-child{border-top:0}.assessment-item.active{background:#f7f9fc;border-radius:9px;margin:0 -8px;padding-left:11px;padding-right:11px}.assessment-item>div{gap:3px;min-width:0;display:grid}.assessment-item strong{color:var(--text);font-size:12px}.assessment-item span,.assessment-item small{color:#77849a;font-size:10px}.gradebook-panel{min-width:0}.grade-entry{gap:14px;display:grid}.grade-entry-toolbar>div{gap:3px;display:grid}.grade-entry-toolbar span{color:#748197;font-size:11px}.grade-list{scrollbar-gutter:stable;border:1px solid var(--line);border-radius:14px;max-height:520px;overflow-y:auto}.grade-row{border-bottom:1px solid #edf0f5;grid-template-columns:minmax(160px,1fr) 120px minmax(180px,1.3fr);align-items:center;gap:10px;padding:11px 13px;display:grid}.grade-row:last-child{border-bottom:0}.grade-row>div{gap:3px;display:grid}.grade-row strong{font-size:13px}.grade-row small{color:#78859a}.grade-row small.grade-low{color:#a54038;font-weight:750}.grade-row input{border:1px solid var(--line);width:100%;min-width:0;min-height:39px;color:var(--text);font:inherit;background:#fff;border-radius:9px;padding:8px 9px;font-size:12px}.performance-score{text-align:right;min-width:74px;gap:0!important;display:grid!important}.performance-score strong{font-size:17px}.performance-score small{color:#7c889b}.performance-score.low strong{color:#a33e37}.performance-alert-panel{padding-bottom:10px}.performance-alert-list{scrollbar-gutter:stable;max-height:300px;overflow-y:auto}.performance-alert-row{border-top:1px solid #edf0f5;justify-content:space-between;align-items:center;gap:14px;padding:11px 2px;display:flex}.performance-alert-row>div{gap:3px;display:grid}.performance-alert-row strong{font-size:12px}.performance-alert-row span{color:#748197;font-size:10px}.status-pill.success{color:#2f7a4f;background:#edf8f1}.academic-setup-section{border-top:1px solid var(--line);gap:9px;padding:13px 0;display:grid}.academic-setup-section:first-of-type{border-top:0}.inline-form-row{align-items:center;gap:8px;display:flex}.inline-form-row input{flex:1;min-width:0}@media (max-width:900px){.performance-layout{grid-template-columns:1fr}.assessment-scroll{max-height:300px}.attendance-row{grid-template-columns:1fr 145px}.attendance-row>:nth-child(3),.attendance-row>:nth-child(4){grid-column:auto}.grade-row{grid-template-columns:1fr 100px}.grade-row>:last-child{grid-column:1/-1}}@media (max-width:620px){.teacher-academic-shortcuts{grid-template-columns:1fr}.academic-filter-form{grid-template-columns:1fr;display:grid}.academic-filter-form label{min-width:0}.attendance-row{grid-template-columns:1fr;gap:7px}.attendance-time-placeholder{display:none}.grade-row{grid-template-columns:1fr}.grade-row>:last-child{grid-column:auto}.attendance-save-row,.grade-save-row{align-items:stretch}.attendance-save-row .primary-button,.grade-save-row .primary-button{width:100%}.academic-history-row,.performance-history-row,.performance-alert-row{align-items:flex-start}}.quick-attendance-toolbar{align-items:center;gap:14px}.attendance-toolbar-actions{flex-wrap:wrap;gap:8px;display:flex}.attendance-summary-good{color:#16794b}.quick-attendance-list{max-height:650px}.quick-attendance-row{grid-template-columns:minmax(190px,1fr) minmax(430px,1.8fr);align-items:center;gap:10px 18px;padding:10px 4px;display:grid}.quick-attendance-row.status-absent,.quick-attendance-row.status-justified_absence{background:#fff8f7;border-radius:10px;margin-inline:-8px;padding-inline:12px}.quick-attendance-row.status-late,.quick-attendance-row.status-early_departure{background:#fffbf1;border-radius:10px;margin-inline:-8px;padding-inline:12px}.quick-attendance-student{align-items:center;gap:10px;min-width:0;display:flex}.quick-attendance-student>div{gap:2px;min-width:0;display:grid}.attendance-number{color:#77849a;background:#f1f4f8;border-radius:8px;flex:none;place-items:center;width:28px;height:28px;font-size:10px;font-weight:800;display:grid}.attendance-quick-actions{flex-wrap:wrap;justify-content:flex-end;gap:5px;display:flex}.attendance-chip{color:#637087;font:inherit;cursor:pointer;background:#fff;border:1px solid #dfe5ee;border-radius:999px;padding:7px 9px;font-size:10px;font-weight:800}.attendance-chip:hover{border-color:#aeb9ca}.attendance-chip.active.chip-present{color:#16794b;background:#eaf8f1;border-color:#a8dfc2}.attendance-chip.active.chip-absent{color:#a53a2f;background:#fff0ee;border-color:#f4b7af}.attendance-chip.active.chip-justified_absence{color:#6e42a0;background:#f7f1ff;border-color:#d9c1f3}.attendance-chip.active.chip-late,.attendance-chip.active.chip-early_departure{color:#8a6712;background:#fff6dc;border-color:#f0d27d}.attendance-exception-details{grid-column:1/-1;align-items:end;gap:10px;padding:8px 0 2px 38px;display:flex}.attendance-exception-details label{color:#7a879a;gap:4px;font-size:9px;font-weight:800;display:grid}.attendance-exception-details input{min-height:34px}.attendance-note-field{flex:1}.attendance-save-sticky{z-index:4;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff7;border-top:1px solid #e7ebf1;margin:10px -4px -4px;padding:12px 4px 4px;position:sticky;bottom:0}.grade-row-with-media{grid-template-columns:minmax(160px,1.2fr) 92px minmax(160px,1fr) 92px}.assessment-media-button{color:#53627a;cursor:pointer;background:#fff;border:1px solid #dfe5ee;border-radius:9px;justify-content:center;align-items:center;gap:5px;min-height:36px;padding:6px 8px;display:inline-flex}.assessment-media-button strong{font-size:10px}.assessment-media-button.has-media{color:#285fae;background:#f2f7ff;border-color:#bad0f7}.assessment-media-card{width:min(860px,100vw - 32px);max-height:86vh;overflow:auto}.assessment-media-actions{flex-wrap:wrap;align-items:center;gap:12px;margin:14px 0;display:flex}.assessment-media-actions small{color:#7b8799;font-size:10px}.assessment-media-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.assessment-media-item{background:#fff;border:1px solid #e5e9ef;border-radius:12px;overflow:hidden}.assessment-media-item img{object-fit:contain;background:#f5f7fa;width:100%;height:220px;display:block}.assessment-media-loading{color:#8a95a6;background:#f5f7fa;place-items:center;height:220px;display:grid}.assessment-media-item>div{gap:8px;padding:10px;display:grid}.assessment-media-item-actions{justify-content:space-between;align-items:center;gap:8px;display:flex}.text-danger-button{color:#a33b32;font:inherit;cursor:pointer;background:0 0;border:0;font-size:10px;font-weight:800}@media (max-width:900px){.quick-attendance-row{grid-template-columns:1fr}.attendance-quick-actions{justify-content:flex-start}.attendance-exception-details{padding-left:0}.grade-row-with-media{grid-template-columns:1fr 85px}.grade-row-with-media>input:nth-of-type(2){grid-column:1/-1}.assessment-media-grid{grid-template-columns:1fr}}.ai-action-button{color:#285ca8;font:inherit;cursor:pointer;white-space:nowrap;background:#f5f8ff;border:1px solid #cdd9f3;border-radius:10px;padding:9px 12px;font-size:11px;font-weight:800}.ai-action-button:hover{background:#edf3ff;border-color:#aac0ed}.ai-action-button:disabled{opacity:.6;cursor:default}.ai-drawer-backdrop{z-index:1000;background:#111b313d;justify-content:flex-end;display:flex;position:fixed;inset:0}.ai-drawer{background:#fff;grid-template-rows:auto 1fr auto;width:min(520px,94vw);height:100%;display:grid;box-shadow:-22px 0 60px #1423412e}.ai-drawer-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:18px;padding:22px;display:flex}.ai-drawer-head h3{margin:8px 0 4px;font-size:20px}.ai-drawer-head small{color:#77849a}.ai-draft-badge{color:#315f9f;letter-spacing:.02em;background:#f2f6ff;border-radius:999px;align-items:center;padding:5px 8px;font-size:10px;font-weight:850;display:inline-flex}.ai-close{border:1px solid var(--line);color:#66758e;cursor:pointer;background:#fff;border-radius:10px;width:34px;height:34px;font-size:22px}.ai-drawer-body{padding:22px;overflow-y:auto}.ai-loading{background:#f9fbfe;border:1px dashed #ccd7e8;border-radius:13px;gap:5px;padding:18px;display:grid}.ai-loading span{color:#77849a;font-size:12px}.ai-suggestion-text{white-space:pre-wrap;gap:8px;font-size:13px;line-height:1.62;display:grid}.ai-suggestion-text p{margin:0}.ai-communication-preview>strong{font-size:16px}.ai-drawer-actions{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:flex-end;gap:8px;padding:15px 22px 20px;display:flex}.form-section-heading-with-action{justify-content:space-between;align-items:center;gap:14px;display:flex}.form-section-heading-with-action>div{gap:3px;display:grid}.student-ai-tools{margin:18px 0 28px}.student-ai-tools .panel-title{align-items:flex-end}.ai-range-label,.director-report-generator label{color:#637087;gap:5px;font-size:10px;font-weight:800;display:grid}.ai-range-label select,.director-report-generator select{min-width:110px;color:var(--text);background:#fff;border:1px solid #dfe5ee;border-radius:9px;padding:8px 9px}.ai-context-actions{flex-wrap:wrap;gap:8px;padding-top:14px;display:flex}.radar-page,.intelligence-page{max-width:1280px}.radar-list{display:grid}.radar-row{border-top:1px solid #edf0f5;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:15px 2px;display:grid}.radar-row:first-child{border-top:0}.radar-row-main{grid-template-columns:minmax(190px,.8fr) minmax(260px,1.2fr);align-items:center;gap:18px;min-width:0;display:grid}.radar-row-main h3{margin:3px 0 2px;font-size:15px}.radar-row-main small{color:#7c899d}.radar-risk-label{text-transform:uppercase;letter-spacing:.05em;border-radius:999px;width:fit-content;padding:4px 7px;font-size:9px;font-weight:850;display:inline-flex}.risk-critical .radar-risk-label{color:#a64036;background:#fff0ee}.risk-attention .radar-risk-label{color:#896514;background:#fff7df}.risk-monitor .radar-risk-label{color:#3568ad;background:#eef5ff}.radar-reasons{color:#637087;font-size:12px;line-height:1.45}.radar-row-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:7px;display:flex}.intelligence-grid{grid-template-columns:1.1fr .9fr;gap:16px;margin-bottom:16px;display:grid}.school-ai-query{gap:14px;padding-top:14px;display:grid}.ai-preset-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.ai-preset{text-align:left;color:#5f6e86;font:inherit;cursor:pointer;background:#fff;border:1px solid #e0e6ef;border-radius:10px;padding:10px;font-size:10px;font-weight:700;line-height:1.35}.ai-preset.active{color:#315f9f;background:#f2f6ff;border-color:#b9caed}.ai-question-label{color:#5f6e86;gap:6px;font-size:11px;font-weight:800;display:grid}.ai-question-label textarea{resize:vertical;width:100%;color:var(--text);font:inherit;background:#fff;border:1px solid #dfe5ee;border-radius:10px;padding:11px}.director-report-generator{flex-wrap:wrap;align-items:end;gap:10px;padding-top:14px;display:flex}.saved-reports-panel,.ai-usage-history{margin-top:16px}.saved-report-list{display:grid}.saved-report{border-top:1px solid #edf0f5}.saved-report:first-child{border-top:0}.saved-report summary{cursor:pointer;justify-content:space-between;align-items:center;gap:16px;padding:14px 2px;list-style:none;display:flex}.saved-report summary::-webkit-details-marker{display:none}.saved-report summary>div{gap:3px;display:grid}.saved-report summary span,.saved-report summary small{color:#7a879b;font-size:10px}.saved-report-body{border-left:3px solid #dbe5f7;padding:0 12px 16px;font-size:12px;line-height:1.6}.saved-report-body p{margin:4px 0}.ai-usage-list{display:grid}.ai-usage-row{border-top:1px solid #edf0f5;justify-content:space-between;gap:14px;padding:11px 2px;display:flex}.ai-usage-row:first-child{border-top:0}.ai-usage-row>div{gap:2px;display:grid}.ai-usage-row span,.ai-usage-row small{color:#8490a3;font-size:9px}.ai-usage-row>div:last-child{text-align:right}@media (max-width:900px){.intelligence-grid,.radar-row{grid-template-columns:1fr}.radar-row-main{grid-template-columns:1fr;gap:7px}.radar-row-actions{justify-content:flex-start}.ai-preset-grid{grid-template-columns:1fr}}@media (max-width:620px){.ai-drawer{width:100vw}.ai-drawer-actions>*{flex:1}.form-section-heading-with-action{flex-direction:column;align-items:flex-start}.student-ai-tools .panel-title{flex-direction:column;align-items:stretch}}.ai-inline-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:7px;display:flex}.event-filter-tabs{background:#fff;border:1px solid #e5eaf2;border-radius:14px;gap:6px;margin:0 0 18px;padding:5px;display:inline-flex}.event-filter-tabs a{color:#6f7d93;border-radius:10px;padding:9px 14px;font-size:12px;font-weight:800}.event-filter-tabs a.active{color:#244e92;background:#edf3ff}.event-row{align-items:flex-start}.event-main-copy{flex:1;min-width:0}.audience-badge{color:#7353a7;text-transform:uppercase;letter-spacing:.04em;background:#f5f1ff;border-radius:999px;padding:5px 8px;font-size:10px;font-weight:800;display:inline-flex}.event-ended{color:#697589;background:#f0f2f5}.event-low-attendance{color:#b44141;background:#fff0f0}.event-row-past{background:#fbfcfd}.event-row-past h2,.event-row-past p{color:#7b8799}.event-date-past{color:#778398;background:#f0f2f5}.event-manager-stats{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.event-manager-stats span{color:#728096;background:#fafbfd;border:1px solid #e8ecf2;border-radius:9px;align-items:baseline;gap:4px;padding:7px 9px;font-size:10px;display:inline-flex}.event-manager-stats strong{color:#152746;font-size:12px}.event-family-responses{gap:10px;margin-top:16px;display:grid}.event-family-response{background:#fafcff;border:1px solid #e7ecf4;border-radius:12px;gap:10px;padding:13px;display:grid}.event-family-response-copy{gap:2px;display:grid}.event-family-response-copy strong{color:#172a49;font-size:12px}.event-family-response-copy span{color:#768399;font-size:11px}.event-response-actions{flex-wrap:wrap;gap:7px;display:flex}.event-response-chip{color:#5d6c83;font:inherit;cursor:pointer;background:#fff;border:1px solid #dbe3ef;border-radius:999px;padding:7px 10px;font-size:10px;font-weight:800}.event-response-chip.active{color:#24569d;background:#edf4ff;border-color:#7ca5ef}.event-response-chip:disabled{opacity:.6;cursor:wait}.event-confirmation-options{border:1px solid #e2e8f1;border-radius:12px;gap:10px;padding:14px;display:grid}.event-confirmation-options legend{color:#35445e;padding:0 6px;font-size:12px;font-weight:800}.event-confirmation-options label{align-items:flex-start;gap:10px;display:flex}.event-confirmation-options input{margin-top:3px}.event-confirmation-options span{gap:2px;display:grid}.event-confirmation-options strong{font-size:12px}.event-confirmation-options small{color:#7a879c;font-size:11px}@media (max-width:720px){.event-filter-tabs{width:100%}.event-filter-tabs a{text-align:center;flex:1}.event-response-actions{grid-template-columns:1fr;display:grid}.event-response-chip{width:100%}}.attendance-locked-banner{background:#f7f9fc;border:1px solid #e2e7ef;border-radius:11px;gap:3px;margin-bottom:12px;padding:12px 14px;display:grid}.attendance-locked-banner strong{color:#33435d;font-size:12px}.attendance-locked-banner span{color:#78869a;font-size:11px;line-height:1.45}.teacher-nav-label{color:#71809a;letter-spacing:.12em;padding:13px 14px 3px;font-size:9px;font-weight:850}.teacher-today-panel{margin-top:16px}.teacher-home-focus{border-color:#dce5f2;margin-top:0;box-shadow:0 12px 30px #25416f0f}.teacher-home-focus .panel-title h2{font-size:20px}.teacher-context-stats{margin:14px 0 16px}.teacher-context-stats .stat-card{padding:16px 18px}.teacher-context-stats .stat-card strong{font-size:26px}.teacher-context-stats .stat-card span{font-size:10px}.teacher-today-date{color:#7b879a;text-transform:capitalize;font-size:11px}.teacher-today-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px;display:grid}.teacher-today-item{color:inherit;background:#fbfcfe;border:1px solid #e5eaf2;border-radius:12px;align-items:center;gap:11px;padding:14px;display:flex}.teacher-today-item>span{color:#557099;background:#eef3fb;border-radius:10px;flex:none;place-items:center;width:31px;height:31px;font-size:12px;font-weight:900;display:grid}.teacher-today-item>div{gap:3px;min-width:0;display:grid}.teacher-today-item strong{font-size:12px}.teacher-today-item small{color:#7a879b;font-size:10px;line-height:1.35}.teacher-today-item.pending>span{color:#a66a14;background:#fff4e5}.teacher-today-item.attention>span{color:#2f64af;background:#edf4ff}.teacher-today-item.done>span{color:#27734a;background:#eaf7ef}.teacher-three-shortcuts{grid-template-columns:repeat(3,minmax(0,1fr))}.teacher-support-history{border-bottom:1px solid #eef1f5;justify-content:space-between;gap:16px;padding:13px 0;display:flex}.teacher-support-history:last-child{border-bottom:0}.teacher-support-history>div{gap:3px;display:grid}.teacher-support-history strong{font-size:12px}.teacher-support-history span,.teacher-support-history small{color:#7e8a9d;font-size:10px}.success-banner{color:#246b45;background:#eff9f3;border:1px solid #cfe9d9;border-radius:11px;margin:0 0 16px;padding:12px 14px;font-size:12px;font-weight:800}.staff-mural-list,.staff-mural-card{gap:12px;display:grid}.staff-mural-card.priority-important{border-left:3px solid #e5a62e}.staff-mural-card.priority-urgent{border-left:3px solid #c95050}.staff-mural-top{justify-content:space-between;align-items:center;gap:16px;display:flex}.staff-mural-top>small{color:#8a96a8;white-space:nowrap;font-size:10px}.staff-mural-card h2{margin:0;font-size:18px}.staff-mural-body{color:#536177;white-space:pre-wrap;margin:0;font-size:13px;line-height:1.65}.staff-mural-footer{border-top:1px solid #edf0f5;justify-content:space-between;align-items:end;gap:18px;padding-top:12px;display:flex}.staff-mural-footer>div{gap:2px;display:grid}.staff-mural-footer small,.staff-mural-footer span{color:#8995a8;font-size:9px}.staff-mural-footer strong{font-size:11px}.compact-button{padding:8px 10px!important;font-size:10px!important}.teacher-class-diary{max-width:900px}.teacher-diary-list{display:grid}.teacher-diary-row{color:inherit;border-bottom:1px solid #eef1f5;grid-template-columns:22px 1fr;gap:10px;padding:12px 0;display:grid;position:relative}.teacher-diary-row:last-child{border-bottom:0}.teacher-diary-dot{background:#5b82c7;border-radius:999px;width:9px;height:9px;margin:5px auto 0;box-shadow:0 0 0 4px #edf3ff}.teacher-diary-row>div:last-child{gap:3px;display:grid}.teacher-diary-row small{color:#8b97a9;font-size:9px}.teacher-diary-row strong{font-size:12px}.teacher-diary-row span{color:#6f7d93;font-size:10px}.teacher-occurrence-page .teacher-student-feed-grid{grid-template-columns:repeat(4,minmax(0,1fr))}@media (max-width:1050px){.teacher-today-grid,.teacher-occurrence-page .teacher-student-feed-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:680px){.teacher-today-grid,.teacher-three-shortcuts,.teacher-occurrence-page .teacher-student-feed-grid{grid-template-columns:1fr}.staff-mural-top,.staff-mural-footer,.teacher-support-history{flex-direction:column;align-items:flex-start}}.staff-mural-attachment{color:#315f9f;background:#f8faff;border:1px solid #dbe4f1;border-radius:10px;align-items:center;gap:6px;width:fit-content;padding:9px 11px;font-size:11px;font-weight:800;display:inline-flex}.staff-mural-attachment:hover{background:#f0f5ff}.calendar-mini-item.assessment{color:#6f55a1;background:#f5f1ff}.calendar-mini-item.assessment i{background:#8d6fc1}.calendar-mini-item.task{color:#8a651f;background:#fff7e8}.calendar-mini-item.task i{background:#d4a342}.calendar-agenda-card.assessment{border-left:3px solid #8d6fc1}.calendar-agenda-card.task{border-left:3px solid #d4a342}.teacher-routine-complete{background:#f1faf5;border:1px solid #cfe8d9;border-radius:12px;align-items:center;gap:10px;margin-top:14px;padding:11px 13px;display:flex}.teacher-routine-complete>span{color:#26734a;background:#def2e6;border-radius:9px;place-items:center;width:28px;height:28px;font-weight:900;display:grid}.teacher-routine-complete>div{gap:2px;display:grid}.teacher-routine-complete strong{color:#245c3f;font-size:12px}.teacher-routine-complete small{color:#6f8b7a;font-size:10px}.teacher-today-item{transition:transform .14s,box-shadow .14s,border-color .14s}.teacher-today-item:hover{border-color:#d6deea;transform:translateY(-1px);box-shadow:0 8px 20px #1c2d520f}.teacher-mobile-nav{display:none}@media (max-width:900px){.teacher-shell{grid-template-columns:210px 1fr}.teacher-sidebar{padding:22px 14px}.teacher-sidebar nav a{padding:10px 11px;font-size:13px}.teacher-shell .content{padding:28px 24px 70px}.teacher-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:780px){.teacher-shell .content{padding:20px 15px 92px;overflow:visible}.teacher-shell .topbar{gap:14px;margin-bottom:18px}.teacher-shell .topbar h1{font-size:32px}.teacher-shell .top-actions{grid-template-columns:1fr 1fr;display:grid}.teacher-shell .top-actions a{text-align:center;min-width:0;padding:11px 10px}.teacher-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.teacher-stats .stat-card{padding:14px}.teacher-today-panel .panel-title{align-items:flex-start}.teacher-today-date{text-align:right;max-width:120px;line-height:1.35}.teacher-today-item{min-height:70px}.teacher-mobile-nav{z-index:40;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff5;border:1px solid #dfe5ee;border-radius:16px;grid-template-columns:repeat(5,1fr);gap:2px;padding:7px;display:grid;position:fixed;bottom:10px;left:10px;right:10px;box-shadow:0 12px 34px #1c2d5229}.teacher-mobile-nav a{color:#6c7890;border-radius:10px;place-items:center;gap:2px;min-width:0;padding:7px 3px;display:grid}.teacher-mobile-nav a.active{color:#2f6fed;background:#edf3ff}.teacher-mobile-nav span{font-size:15px;font-weight:900;line-height:1}.teacher-mobile-nav small{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:9px;font-weight:750;overflow:hidden}}@media (max-width:520px){.teacher-shell .top-actions{grid-template-columns:1fr}.teacher-stats{grid-template-columns:1fr 1fr}.teacher-stats .stat-card p{margin-bottom:8px;font-size:11px}.teacher-stats .stat-card strong{font-size:24px}.teacher-stats .stat-card span{font-size:9px;line-height:1.35}.teacher-today-panel{padding:15px}.teacher-today-panel .panel-title{flex-direction:column;gap:6px}.teacher-today-date{text-align:left;max-width:none}.teacher-routine-complete{align-items:flex-start}.teacher-mobile-nav{bottom:6px;left:6px;right:6px}}.timeline-legend{flex-wrap:wrap;gap:7px;margin:-4px 0 18px;display:flex}.timeline-legend span{color:#617087;background:#fff;border:1px solid #e5eaf1;border-radius:999px;align-items:center;gap:6px;padding:6px 9px;font-size:9px;font-weight:800;display:inline-flex}.timeline-legend span:before{content:"";background:var(--legend-color);border-radius:999px;width:7px;height:7px}.legend-observation{--legend-color:#b87921}.legend-notice{--legend-color:#2f6fed}.legend-meeting{--legend-color:#7656cf}.legend-event{--legend-color:#e28a2b}.legend-assessment{--legend-color:#2f8a58}.legend-attendance{--legend-color:#258d96}.legend-authorization{--legend-color:#d2a11e}.legend-support{--legend-color:#8793a6}.student-master-timeline{gap:0;padding-left:0;display:grid}.student-master-timeline:before{display:none}.timeline-master-item{--timeline-color:#7890b5;--timeline-soft:#f2f5fa;box-shadow:none;color:inherit;background:0 0;border:0;border-radius:0;grid-template-columns:72px 30px minmax(0,1fr);align-items:stretch;gap:0;padding:0;display:grid}.timeline-master-item:hover{box-shadow:none;transform:none}.timeline-master-date{align-self:start;justify-items:end;padding:17px 12px 0 0;line-height:1;display:grid}.timeline-master-date strong{color:#1c2e4d;letter-spacing:-.04em;font-size:23px}.timeline-master-date span{color:var(--timeline-color);letter-spacing:.07em;margin-top:3px;font-size:9px;font-weight:900}.timeline-master-date small{color:#8a96a8;margin-top:5px;font-size:9px}.timeline-master-rail{min-height:112px;position:relative}.timeline-master-rail:before{content:"";background:#e2e7ef;width:2px;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.timeline-master-rail i{z-index:1;background:var(--timeline-color);width:12px;height:12px;box-shadow:0 0 0 2px color-mix(in srgb, var(--timeline-color) 22%, white);border:3px solid #fff;border-radius:999px;position:absolute;top:25px;left:50%;transform:translate(-50%)}.timeline-master-item:first-child .timeline-master-rail:before{top:25px}.timeline-master-item:last-child .timeline-master-rail:before{bottom:calc(100% - 31px)}.timeline-master-card{border:1px solid #e2e7ef;border-left:4px solid var(--timeline-color);background:#fff;border-radius:15px;grid-template-columns:42px minmax(0,1fr);align-self:start;gap:12px;margin:7px 0 14px;padding:15px 16px;transition:transform .15s,box-shadow .15s,border-color .15s;display:grid;box-shadow:0 7px 24px #1c2d520b}.timeline-master-item:hover .timeline-master-card{transform:translateY(-1px);box-shadow:0 10px 28px #1c2d5213}.timeline-master-icon{background:var(--timeline-soft);width:40px;height:40px;color:var(--timeline-color);border-radius:12px;place-items:center;font-size:15px;font-weight:900;display:grid}.timeline-master-body{gap:6px;min-width:0;display:grid}.timeline-master-top{justify-content:flex-start;align-items:center;gap:8px;display:flex}.timeline-master-body h2{margin:0;font-size:15px}.timeline-master-body p{color:#68768e;white-space:normal;margin:0;font-size:11px;line-height:1.55}.timeline-notice{--timeline-color:#2f6fed;--timeline-soft:#edf4ff}.timeline-meeting{--timeline-color:#7656cf;--timeline-soft:#f2effd}.timeline-event{--timeline-color:#e28a2b;--timeline-soft:#fff5e9}.timeline-assessment{--timeline-color:#2f8a58;--timeline-soft:#edf8f1}.timeline-attendance{--timeline-color:#258d96;--timeline-soft:#eaf7f8}.timeline-authorization{--timeline-color:#d2a11e;--timeline-soft:#fff8df}.timeline-support{--timeline-color:#8793a6;--timeline-soft:#f1f3f6}.timeline-observation{--timeline-color:#b87921;--timeline-soft:#fff7e7}@media (max-width:640px){.timeline-legend{gap:5px}.timeline-master-item{grid-template-columns:54px 22px minmax(0,1fr)}.timeline-master-date{padding:14px 7px 0 0}.timeline-master-date strong{font-size:19px}.timeline-master-date span,.timeline-master-date small{font-size:8px}.timeline-master-rail{min-height:108px}.timeline-master-rail i{border-width:2px;width:10px;height:10px;top:22px}.timeline-master-item:first-child .timeline-master-rail:before{top:22px}.timeline-master-item:last-child .timeline-master-rail:before{bottom:calc(100% - 27px)}.timeline-master-card{border-radius:13px;grid-template-columns:34px minmax(0,1fr);gap:9px;margin:6px 0 12px;padding:13px 12px}.timeline-master-icon{border-radius:10px;width:34px;height:34px;font-size:13px}.timeline-master-body h2{font-size:14px}}.family-account-link{border:1px solid var(--line);min-height:42px;color:var(--text);background:#fff;border-radius:12px;align-items:center;gap:9px;padding:5px 10px 5px 6px;display:flex}.family-account-link:hover{box-shadow:0 6px 18px #1c2d520f}.family-account-link-avatar,.family-account-avatar{color:#3767b8;background:#eef4ff;border-radius:11px;place-items:center;font-weight:850;display:grid}.family-account-link-avatar{width:31px;height:31px;font-size:12px}.family-account-link>span:last-child{gap:1px;line-height:1.1;display:grid}.family-account-link strong{font-size:11px}.family-account-link small{color:#8390a5;font-size:9px}.family-account-page{max-width:920px}.family-account-header{align-items:flex-start}.family-account-header .text-link{margin-bottom:18px;display:inline-block}.family-access-card{grid-template-columns:52px minmax(0,1fr);align-items:center;gap:14px;margin-bottom:16px;display:grid}.family-account-avatar{border-radius:16px;width:52px;height:52px;font-size:19px}.family-access-card>div:last-child{gap:4px;min-width:0;display:grid}.family-access-card small{color:#8a96aa;letter-spacing:.08em;font-size:9px;font-weight:850}.family-access-card strong{overflow-wrap:anywhere;font-size:14px}.family-access-card span{color:#7a879b;font-size:10px;line-height:1.5}.family-account-forms{grid-template-columns:1fr 1fr;align-items:start;gap:16px;display:grid}.family-account-form{gap:14px;display:grid}.family-account-form label{color:#53617a;gap:6px;font-size:11px;font-weight:700;display:grid}.family-account-actions{justify-content:space-between;align-items:center;gap:12px;margin-top:2px}.family-account-actions>span{min-width:0}.family-account-hint{color:#8a96aa;margin-top:-7px;font-size:10px}.family-account-notifications{margin-top:16px}@media (max-width:760px){.family-account-forms{grid-template-columns:1fr}.family-account-link{flex:1;justify-content:flex-start}.family-account-actions{grid-template-columns:1fr;display:grid}.family-account-actions .primary-button{width:100%}.family-access-card{grid-template-columns:44px minmax(0,1fr)}.family-account-avatar{border-radius:13px;width:44px;height:44px}}.status-cancel_requested,.ack-danger{color:#9f3f37;background:#fff0ef}.meeting-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:16px;display:grid}.meeting-summary-card{align-content:center;gap:5px;min-height:112px;display:grid}.meeting-summary-card>span{color:#748198;text-transform:uppercase;letter-spacing:.04em;font-size:10px;font-weight:800}.meeting-summary-card>strong{font-size:28px;line-height:1}.meeting-summary-card>small{color:#8793a5;font-size:10px;line-height:1.5}.meeting-summary-card.success{background:#f7fcf9;border-color:#dceee4}.meeting-summary-card.warning{background:#fffaf0;border-color:#f0dfb9}.manager-meeting-card.needs-attention{box-shadow:inset 4px 0 #df9b3f,0 7px 25px #1c2d520a}.manager-meeting-action-stack{justify-items:end;gap:7px;display:grid}.meeting-manager-action-box{gap:7px;display:grid}.meeting-request-actions,.meeting-lifecycle-actions{flex-wrap:wrap;gap:7px;display:flex}.family-proposal-inline.cancellation{color:#7f4039;background:#fff4f2}.family-cancel-panel{background:snow;border-color:#f0d7d3;gap:10px;margin-bottom:14px;display:grid}.family-cancel-panel h2,.meeting-lifecycle-panel h2{margin:0}.family-cancel-panel>p:not(.eyebrow){color:#6f5a57;margin:0;font-size:11px;line-height:1.6}.meeting-lifecycle-panel{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;margin-top:14px;display:grid}.meeting-lifecycle-panel p{margin-top:5px}.meeting-response-state{background:#fafbfc;border:1px solid #e5e9f0;border-radius:12px;gap:3px;width:100%;padding:10px 12px;display:grid}.meeting-response-state strong{font-size:11px}.meeting-response-state span{color:#7a879b;font-size:10px;line-height:1.5}.meeting-response-state.success{background:#f5fbf7;border-color:#d8ebdf}.meeting-response-state.warning{background:#fff9ee;border-color:#eedfbf}.meeting-response-state.danger{background:#fff5f4;border-color:#efd9d6}.meeting-response-readonly{background:#f8fafd;border:1px solid #e7ecf3;border-radius:12px;justify-items:start;max-width:420px;padding:12px}.meeting-response-readonly strong{font-size:11px}.meeting-response-readonly small{color:#7b879a;font-size:10px;line-height:1.55}@media (max-width:900px){.meeting-summary-grid{grid-template-columns:1fr 1fr}.meeting-lifecycle-panel{grid-template-columns:1fr}.manager-meeting-action-stack{justify-items:start}}@media (max-width:620px){.meeting-summary-grid{grid-template-columns:1fr}.meeting-request-actions,.meeting-lifecycle-actions{flex-direction:column}.meeting-request-actions button,.meeting-lifecycle-actions button{width:100%}}.meetings-page-v3{max-width:1320px}.meeting-inbox-toolbar{gap:13px;margin-bottom:14px;padding:16px 18px;display:grid}.meeting-search-form{grid-template-columns:minmax(260px,1fr) auto auto;align-items:end;gap:9px;display:grid}.meeting-search-form label{gap:6px;display:grid}.meeting-search-form label>span{color:#66758e;text-transform:uppercase;letter-spacing:.04em;font-size:10px;font-weight:800}.meeting-search-form input{color:#17243f;background:#fff;border:1px solid #dfe6f0;border-radius:12px;outline:none;width:100%;min-height:42px;padding:0 13px}.meeting-search-form input:focus{border-color:#9db7ee;box-shadow:0 0 0 3px #3e70e814}.meeting-filter-row{flex-wrap:wrap;gap:7px;display:flex}.meeting-filter-chip{color:#58677f;background:#fff;border:1px solid #e1e7ef;border-radius:999px;align-items:center;gap:7px;min-height:34px;padding:0 11px;font-size:10px;font-weight:800;text-decoration:none;display:inline-flex}.meeting-filter-chip b{color:#60708a;background:#f0f4fa;border-radius:999px;place-items:center;min-width:19px;height:19px;padding:0 5px;font-size:9px;display:grid}.meeting-filter-chip:hover{background:#f9fbff;border-color:#cbd7e9}.meeting-filter-chip.active{color:#2156c5;background:#eef4ff;border-color:#326be6}.meeting-filter-chip.attention:not(.active){color:#9b681f;background:#fffaf1;border-color:#eed9b4}.meeting-filter-chip.attention b{color:#a66917;background:#fff0d7}.meeting-period-row{flex-wrap:wrap;align-items:center;gap:5px;padding-top:1px;display:flex}.meeting-period-row>span{color:#8a95a7;margin-right:4px;font-size:9px;font-weight:700}.meeting-period-row a{color:#6f7d93;border-radius:8px;padding:5px 9px;font-size:9px;font-weight:800;text-decoration:none}.meeting-period-row a.active{color:#2f5fad;background:#eef3fb}.meeting-list-meta{color:#8390a3;justify-content:space-between;align-items:center;gap:12px;margin:0 2px 8px;font-size:9px;display:flex}.meeting-list-meta strong{color:#53627a;font-size:10px}.meeting-manager-list.compact-list{gap:7px}.compact-meeting-row{padding:0;transition:border-color .15s,box-shadow .15s;overflow:hidden}.compact-meeting-row[open]{border-color:#cad7eb;box-shadow:0 8px 28px #23385d0f}.compact-meeting-row.needs-attention{box-shadow:inset 3px 0 #dfa049}.compact-meeting-row.needs-attention[open]{box-shadow:inset 3px 0 #dfa049,0 8px 28px #23385d0f}.compact-meeting-row summary{cursor:pointer;grid-template-columns:72px minmax(160px,.8fr) minmax(220px,1.35fr) minmax(150px,.8fr) 22px;align-items:center;gap:13px;min-height:66px;padding:10px 14px;list-style:none;display:grid}.compact-meeting-row summary::-webkit-details-marker{display:none}.compact-meeting-row summary:hover{background:#fbfcfe}.compact-meeting-date{gap:2px;display:grid}.compact-meeting-date strong{text-transform:capitalize;color:#253653;font-size:11px}.compact-meeting-date span{color:#8190a6;font-size:9px}.compact-meeting-person{gap:2px;min-width:0;display:grid}.compact-meeting-person strong{white-space:nowrap;text-overflow:ellipsis;color:#14233f;font-size:11px;overflow:hidden}.compact-meeting-person span{white-space:nowrap;text-overflow:ellipsis;color:#8390a4;font-size:9px;overflow:hidden}.compact-meeting-subject{min-width:0}.compact-meeting-subject span{white-space:nowrap;text-overflow:ellipsis;color:#5d6b80;font-size:10px;display:block;overflow:hidden}.compact-meeting-status{justify-items:start;gap:3px;display:grid}.compact-meeting-status small{color:#b27622;font-size:8px;font-weight:800}.compact-meeting-chevron{color:#8895a8;font-size:16px;transition:transform .15s}.compact-meeting-row[open] .compact-meeting-chevron{transform:rotate(180deg)}.compact-meeting-detail{background:#fcfdff;border-top:1px solid #edf1f6;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:13px 14px 14px 99px;display:grid}.compact-meeting-detail-copy{gap:7px;min-width:0;display:grid}.compact-detail-muted{margin:0;font-size:9px}@media (max-width:900px){.meeting-search-form{grid-template-columns:1fr auto}.meeting-search-form .ghost-button{grid-column:2}.compact-meeting-row summary{grid-template-columns:66px minmax(140px,1fr) minmax(150px,1fr) 22px}.compact-meeting-status{grid-column:2/4}.compact-meeting-detail{padding-left:92px}}@media (max-width:640px){.meeting-search-form{grid-template-columns:1fr}.meeting-search-form .primary-button,.meeting-search-form .ghost-button{grid-column:auto;width:100%}.meeting-list-meta{flex-direction:column;align-items:flex-start}.compact-meeting-row summary{grid-template-columns:58px minmax(0,1fr) 20px;gap:10px;min-height:74px}.compact-meeting-subject,.compact-meeting-status{grid-column:2}.compact-meeting-chevron{grid-area:1/3/span 3;align-self:center}.compact-meeting-detail{grid-template-columns:1fr;padding:12px}.manager-meeting-actions{justify-content:flex-start}}.photo-upload-grid{grid-template-columns:minmax(0,1fr) 190px auto;align-items:end;gap:14px;display:grid}.photo-upload-grid label{margin:0}.photo-upload-button{white-space:nowrap;border-radius:12px;align-self:end;min-width:190px;height:44px;padding:0 22px;width:auto!important}@media (max-width:760px){.photo-upload-grid{grid-template-columns:1fr}.photo-upload-button{width:100%!important}}.today-content{max-width:1540px}.today-topbar{margin-bottom:20px}.today-topbar h1{letter-spacing:-.035em}.today-stat-grid{margin-bottom:18px}.today-stat-card{gap:5px;transition:transform .15s,box-shadow .15s,border-color .15s;display:grid}.today-stat-card:hover{border-color:#d9e2ef;transform:translateY(-1px);box-shadow:0 12px 30px #1c2d5212}.today-main-grid{grid-template-columns:minmax(0,1.65fr) minmax(280px,.72fr);align-items:start;gap:16px;margin-bottom:20px;display:grid}.today-priority-panel{padding-bottom:10px}.today-panel-title{align-items:flex-start}.today-panel-copy{max-width:620px;margin-top:5px;font-size:11px}.today-priority-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding-top:15px;display:grid}.today-priority-group{background:#fbfcfe;border:1px solid #edf0f5;border-radius:13px;grid-template-columns:34px minmax(0,1fr) auto 14px;align-items:center;gap:10px;padding:12px 13px;transition:transform .15s,border-color .15s,box-shadow .15s;display:grid}.today-priority-group:hover{border-color:#dce4ef;transform:translateY(-1px);box-shadow:0 8px 22px #1c2d520d}.today-priority-group.danger{background:#fff8f8;border-color:#f1dede}.today-priority-group.warning{background:#fffaf2;border-color:#f0e2c6}.today-priority-group.info{background:#f7faff;border-color:#dde8f8}.today-priority-icon{color:#5f6f87;background:#fff;border:1px solid #e8edf4;border-radius:10px;place-items:center;width:32px;height:32px;font-weight:900;display:grid}.today-priority-text{gap:3px;min-width:0;display:grid}.today-priority-text strong{font-size:11px}.today-priority-text small{color:#8793a6;font-size:9px;line-height:1.45}.today-priority-value{letter-spacing:-.03em;font-size:18px}.today-priority-arrow{color:#9ba6b7;font-size:18px}.today-followups-head{border-top:1px solid #edf0f5;justify-content:space-between;align-items:flex-end;gap:16px;margin-top:20px;padding:16px 2px 9px;display:flex}.today-followups-head h3{margin:2px 0 0;font-size:14px}.today-followups-head a{color:var(--accent);font-size:10px;font-weight:750}.today-followup-list{display:grid}.today-followup-row{border-top:1px solid #f0f2f6;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:11px;padding:12px 2px;display:grid}.today-followup-dot{background:#99a5b7;border-radius:50%;width:7px;height:7px}.today-followup-row.late .today-followup-dot{background:#d65a5a;box-shadow:0 0 0 4px #fff0f0}.today-followup-main{gap:3px;min-width:0;display:grid}.today-followup-main strong{font-size:11px}.today-followup-main span{color:#7c899e;text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.today-followup-status{justify-items:end;gap:3px;display:grid}.today-followup-status small{color:#8895a8;letter-spacing:.04em;font-size:8px;font-weight:800}.today-followup-row.late .today-followup-status small{color:#bd4848}.today-followup-status span{color:var(--accent);font-size:9px;font-weight:750}.today-side-stack,.today-side-card{gap:12px;display:grid}.today-side-card-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.today-side-card h3{letter-spacing:-.02em;margin:3px 0 0;font-size:15px}.today-side-card p:not(.eyebrow){color:#7b879b;margin:0;font-size:10px;line-height:1.55}.today-side-card>a,.today-side-card-compact>a{color:var(--accent);border-top:1px solid #eef1f5;justify-content:space-between;gap:12px;padding-top:10px;font-size:10px;font-weight:800;display:flex}.today-side-signal{background:#cdd5df;border-radius:50%;width:10px;height:10px;margin-top:4px;box-shadow:0 0 0 5px #f3f5f8}.today-side-signal.active{background:#d9982f;box-shadow:0 0 0 5px #fff5df}.today-deadline-list{display:grid}.today-deadline-list a{border-top:1px solid #eef1f5;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;display:flex}.today-deadline-list a:first-child{border-top:0}.today-deadline-list a>div{gap:2px;min-width:0;display:grid}.today-deadline-list strong{font-size:10px}.today-deadline-list span{color:#8793a6;text-overflow:ellipsis;white-space:nowrap;font-size:8px;overflow:hidden}.today-deadline-list small{color:#65738a;white-space:nowrap;font-size:9px;font-weight:800}.today-side-card-compact{grid-template-columns:1fr}.today-side-card-compact h3{font-size:30px}.today-quick-section{margin:4px 0 20px}.today-section-heading{margin:0 0 10px}.today-section-heading h2{margin:3px 0 0;font-size:16px}.today-quick-grid{grid-template-columns:repeat(6,minmax(0,1fr))}@media (max-width:1180px){.today-main-grid{grid-template-columns:1fr}.today-side-stack,.today-quick-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:820px){.today-priority-groups,.today-side-stack{grid-template-columns:1fr}.today-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:540px){.today-quick-grid{grid-template-columns:1fr 1fr}.today-priority-group{grid-template-columns:32px minmax(0,1fr) auto}.today-priority-arrow{display:none}.today-followup-row{grid-template-columns:10px minmax(0,1fr)}.today-followup-status{grid-column:2;justify-items:start}}.today-followups-head-first{margin-top:10px;padding-top:10px}.today-followup-list{gap:6px;margin-top:2px}.today-followup-row{background:#fff;border:1px solid #edf0f5;border-radius:12px;padding:9px 11px;transition:transform .15s,border-color .15s,box-shadow .15s}.today-followup-row:first-child{border-top:1px solid #edf0f5}.today-followup-row:hover{border-color:#dce4ef;transform:translateY(-1px);box-shadow:0 8px 22px #1c2d520d}.today-followup-row.late{background:#fff9f9;border-color:#f0dddd}.today-other-head{border-top:1px solid #edf0f5;justify-content:space-between;align-items:baseline;gap:12px;margin-top:18px;padding:15px 2px 0;display:flex}.today-other-head span{color:#8a96a8;font-size:9px}.today-priority-groups-secondary{padding-top:10px}.today-priority-groups-secondary .today-priority-group{padding-top:10px;padding-bottom:10px}.attention-total{white-space:nowrap}@media (max-width:700px){.today-other-head{flex-direction:column;align-items:flex-start;gap:4px}}.today-meeting-list{display:grid}.today-meeting-list>a{border-top:1px solid #eef1f5;grid-template-columns:52px minmax(0,1fr);align-items:center;gap:10px;padding:9px 0;display:grid}.today-meeting-list>a:first-child{border-top:0}.today-meeting-time{color:#243b67;font-size:10px;font-weight:850}.today-meeting-list div{gap:2px;min-width:0;display:grid}.today-meeting-list strong{font-size:10px}.today-meeting-list small{color:#8793a6;text-overflow:ellipsis;white-space:nowrap;font-size:8px;overflow:hidden}.today-followup-main,.today-followup-status{gap:2px}.radar-page-refined{max-width:1320px}.radar-header{margin-bottom:18px}.radar-header .muted{max-width:620px}.radar-stats{margin-bottom:16px}.refined-radar-panel{padding-bottom:8px}.radar-panel-title{align-items:flex-start}.radar-panel-copy{max-width:620px;margin-top:5px;font-size:10px}.refined-radar-list{gap:7px;padding-top:4px;display:grid}.refined-radar-row{background:#fff;border:1px solid #e7ebf1;border-radius:14px;grid-template-columns:minmax(180px,.72fr) minmax(320px,1.35fr) auto;align-items:center;gap:18px;min-height:78px;padding:12px 13px;transition:transform .15s,border-color .15s,box-shadow .15s}.refined-radar-row:first-child{border-top:1px solid #e7ebf1}.refined-radar-row:hover{border-color:#d8e0eb;transform:translateY(-1px);box-shadow:0 8px 22px #1c2d520d}.refined-radar-row.risk-critical{background:#fff9f8;border-color:#efdcda}.refined-radar-row.risk-attention{background:#fffdf8;border-color:#eee5ce}.radar-student-block{justify-items:start;gap:3px;min-width:0;display:grid}.radar-student-block h3{margin:1px 0 0;font-size:14px;line-height:1.2}.radar-student-block small{color:#7c899d;font-size:9px}.radar-signal-block{gap:7px;min-width:0;display:grid}.radar-signal-heading{color:#8b96a8;letter-spacing:.06em;text-transform:uppercase;font-size:8px;font-weight:850}.radar-signal-chips{flex-wrap:wrap;gap:5px;display:flex}.radar-signal-chips span{color:#5f6d82;white-space:nowrap;background:#f3f6fa;border-radius:999px;align-items:center;min-height:24px;padding:4px 8px;font-size:9px;font-weight:700;display:inline-flex}.risk-critical .radar-signal-chips span{color:#8e4b45;background:#fff0ee}.risk-attention .radar-signal-chips span{color:#7b6323;background:#fff6df}.refined-radar-actions{max-width:390px}.refined-radar-actions .primary-button,.refined-radar-actions .secondary-button{white-space:nowrap}@media (max-width:1050px){.refined-radar-row{grid-template-columns:minmax(170px,.8fr) minmax(260px,1.2fr)}.refined-radar-actions{grid-column:1/-1;justify-content:flex-start;max-width:none}}@media (max-width:720px){.refined-radar-row{grid-template-columns:1fr;gap:10px}.refined-radar-actions{grid-column:auto}.radar-signal-chips span{white-space:normal}}.family-home-refined{max-width:1120px}.family-topbar-refined{margin-bottom:18px}.family-topbar-refined .muted{max-width:620px}.family-child-focus-list{gap:10px;margin-bottom:20px;display:grid}.family-child-focus{border:1px solid var(--line);background:#fff;border-radius:16px;justify-content:space-between;align-items:center;gap:18px;min-height:82px;padding:15px 17px;transition:transform .15s,border-color .15s,box-shadow .15s;display:flex}.family-child-focus:hover{border-color:#d9e1ec;transform:translateY(-1px);box-shadow:0 8px 22px #1c2d520d}.family-child-focus-main{align-items:center;gap:12px;min-width:0;display:flex}.family-child-focus-main>div{gap:3px;min-width:0;display:grid}.family-child-focus-main .eyebrow{margin:0;font-size:8px}.family-child-focus-main strong{font-size:14px}.family-child-focus-main small{color:#8290a5;font-size:10px}.family-child-focus-link{color:var(--accent);white-space:nowrap;font-size:10px;font-weight:800}.family-section-heading{justify-content:space-between;align-items:flex-end;gap:16px;margin:22px 0 10px;display:flex}.family-section-heading-first{margin-top:0}.family-section-heading h2{letter-spacing:-.02em;margin:3px 0 0;font-size:16px}.family-dashboard-grid-primary{margin-bottom:18px}.family-quick-grid-actions,.family-quick-grid-school{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:0}.family-quick-grid-actions .family-quick-card,.family-quick-grid-school .family-quick-card{align-content:start;min-height:92px}.family-quick-grid-actions .family-quick-card strong,.family-quick-grid-school .family-quick-card strong{font-size:12px}.family-quick-grid-actions .family-quick-card span,.family-quick-grid-school .family-quick-card span{font-size:10px}@media (max-width:900px){.family-quick-grid-actions,.family-quick-grid-school{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:620px){.family-child-focus{flex-direction:column;align-items:flex-start}.family-child-focus-link{white-space:normal;padding-left:50px}.family-quick-grid-actions,.family-quick-grid-school{grid-template-columns:1fr}}
