.dashboard-root{--dash-canvas:#f3f6f9;--dash-paper:#ffffff;--dash-ink:#172033;--dash-muted:#667085;--dash-line:#dbe2ea;--dash-soft:#e9eef5;min-height:100dvh;background:var(--dash-canvas);color:var(--dash-ink)}.dashboard-root .bg-brand-600.text-white{color:rgb(var(--brand-on-primary))}.dashboard-root :is(.text-brand-600,.text-brand-700):not(.bg-brand-600){color:rgb(var(--brand-text))}.dashboard-main{max-width:1540px}.dashboard-search-region{max-width:1440px}.dashboard-search-trigger{max-width:720px;transition:border-color .15s ease,background-color .15s ease,box-shadow .15s ease}.dashboard-search-trigger:hover{border-color:rgb(var(--brand-600)/.34);background:#f9fbfd}.dashboard-search-dialog{box-shadow:0 24px 70px rgb(23 32 51/.24);animation:dashboard-search-enter .18s cubic-bezier(.16,1,.3,1)}.dashboard-search-backdrop{animation:dashboard-search-backdrop .14s ease-out}.dashboard-root .dashboard-search-dialog input,.dashboard-root .dashboard-search-dialog input:focus,.dashboard-root .dashboard-search-dialog input:focus-visible{border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;outline:none!important}.dashboard-search-input-row{transition:background-color .15s ease}.dashboard-search-input-row:focus-within{background:rgb(var(--brand-50)/.38)}.dashboard-search-result.is-active{color:rgb(var(--brand-text))}.dashboard-search-result.is-active>span:first-child{background:rgb(var(--brand-600));color:rgb(var(--brand-on-primary))}@keyframes dashboard-search-enter{0%{transform:translateY(10px) scale(.985);opacity:.6}to{transform:translateY(0) scale(1);opacity:1}}@keyframes dashboard-search-backdrop{0%{opacity:0}to{opacity:1}}.dashboard-root :is(a,button,input,select,textarea):focus-visible{outline:3px solid rgb(var(--brand-600)/.28);outline-offset:2px}.dashboard-root .rounded-card{border-radius:14px}.dashboard-overview,.dashboard-page-header{max-width:1440px;margin-inline:auto}.dashboard-page-header{position:relative;margin-bottom:20px}@media (min-width:768px){.dashboard-page-header{margin-bottom:28px}}.dashboard-overview-header:after,.dashboard-page-header:after{content:"";position:absolute;inset-inline:0;bottom:0;height:1px;background:var(--dash-line)}.dashboard-overview-header,.dashboard-page-header{position:relative}.dashboard-page-title,.dashboard-title{color:var(--dash-ink);letter-spacing:-.025em;text-wrap:balance}.dashboard-kicker{display:inline-flex;align-items:center;min-height:28px;padding-inline:10px;border-radius:999px;background:rgb(var(--brand-50))}.dashboard-panel{border:1px solid var(--dash-line);background:var(--dash-paper)}.dashboard-panel>div:first-child h2{color:var(--dash-ink);letter-spacing:-.01em}.dashboard-metric{position:relative;overflow:hidden;border:1px solid var(--dash-line);min-height:146px;transition:border-color .16s ease,transform .16s ease}.dashboard-metric:after{content:"";position:absolute;inset-inline:16px;bottom:0;height:3px;border-radius:3px 3px 0 0;background:rgb(var(--brand-600));opacity:.72}.dashboard-button,.dashboard-quick-action{box-shadow:none;transition:transform .15s ease,background-color .15s ease,border-color .15s ease}.dashboard-button:hover,.dashboard-quick-action:hover{transform:translateY(-1px)}.dashboard-button-primary,.dashboard-quick-action.is-primary{box-shadow:0 5px 14px rgb(var(--brand-700)/.18)}.dashboard-button-secondary:hover,.dashboard-icon-button:hover{border-color:rgb(var(--brand-600)/.35);background:rgb(var(--brand-50))}.dashboard-root :is(input:not([type=checkbox]):not([type=radio]),select,textarea){border-color:var(--dash-line);background-color:#fff;border-radius:12px;transition:border-color .15s ease,box-shadow .15s ease}.dashboard-root :is(input:not([type=checkbox]):not([type=radio]),select,textarea):focus{border-color:rgb(var(--brand-600));box-shadow:0 0 0 3px rgb(var(--brand-600)/.12);outline:none}.dashboard-field{min-width:0}.dashboard-field>label{line-height:1.35}.dashboard-field-help{max-width:62ch;line-height:1.45}.dashboard-field.has-error :is(input,select,textarea){border-color:#dc2626}.dashboard-root table{border-color:var(--dash-line)}.dashboard-root thead{background:#edf2f7;color:#475467}.dashboard-root tbody tr{transition:background-color .14s ease}.dashboard-root tbody tr:hover{background:#f7f9fb}.dashboard-root :is(form,section,div).rounded-card.border.bg-white{border-color:var(--dash-line)}.dashboard-root form.rounded-card.border.bg-white{padding:clamp(16px,2vw,22px)}.dashboard-root a.rounded-card.border.bg-white,.dashboard-root li>a.rounded-card.border{transition:border-color .15s ease,background-color .15s ease,transform .15s ease}.dashboard-root a.rounded-card.border.bg-white:hover,.dashboard-root li>a.rounded-card.border:hover{border-color:rgb(var(--brand-600)/.32);background:#f9fbfd;transform:translateY(-1px)}.dashboard-root section>div>h2,.dashboard-root section>h2{color:var(--dash-ink);letter-spacing:-.01em}.dashboard-root label{color:#344054}.dashboard-root [aria-disabled=true],.dashboard-root button:disabled{cursor:not-allowed;opacity:.58}.app-empty-state{min-height:240px;border:1px dashed #c8d2df;border-radius:14px;background:#f8fafc}.app-empty-state-icon{display:grid;width:72px;height:72px;place-items:center;border-radius:18px;background:rgb(var(--brand-50));color:rgb(var(--brand-600))}.conversation-row{position:relative;min-height:84px}.conversation-row.is-unread{background:rgb(var(--brand-50)/.58);border-color:rgb(var(--brand-600)/.24)}.conversation-row.is-unread:before{content:"";position:absolute;inset-block:14px;left:0;width:3px;border-radius:0 3px 3px 0;background:rgb(var(--brand-600))}.conversation-unread{box-shadow:0 0 0 4px rgb(var(--brand-600)/.1)}.message-thread{padding:16px 2px}.message-bubble{border-radius:16px;box-shadow:0 4px 12px rgb(23 32 51/.06)}.message-line.is-own .message-bubble{border-bottom-right-radius:5px}.message-line:not(.is-own) .message-bubble{border-bottom-left-radius:5px}.message-composer{position:sticky;bottom:76px;z-index:20}.message-composer-bar{box-shadow:0 10px 30px rgb(23 32 51/.12)}.message-composer-bar textarea{min-height:48px;max-height:160px;border:0!important;background:transparent!important;box-shadow:none!important;resize:none}.message-attach:hover{background:rgb(var(--brand-50));color:rgb(var(--brand-700))}.student-directory-tools>.relative{flex:1}.student-row{position:relative}.student-row:after{content:"›";margin-left:2px;color:#98a2b3;font-size:22px;line-height:1}.student-row>span{margin-left:auto}.student-filters button{transition:background-color .15s ease,border-color .15s ease,color .15s ease}.roll-call-summary{width:-moz-fit-content;width:fit-content;border-radius:999px;background:#e8eef5;padding:7px 12px}.roll-call-list{overflow:hidden;border-color:var(--dash-line)}.roll-call-row{transition:background-color .15s ease}.roll-call-row.is-absent{background:#faf8ff}.roll-call-row.is-present .attendance-toggle:first-of-type{background:rgb(var(--brand-600));color:#fff;box-shadow:none}.roll-call-row.is-absent .attendance-toggle:last-of-type{background:#6d4cc7;color:#fff;box-shadow:none}.attendance-toggle:hover{transform:translateY(-1px)}.gradebook-table{border-color:var(--dash-line)}.gradebook-head{background:#eaf0f6}.gradebook-row:nth-child(odd){background:#fbfcfd}.gradebook-row:focus-within{background:rgb(var(--brand-50)/.55)}.payment-ledger-row{position:relative;border-color:var(--dash-line);transition:border-color .15s ease,background-color .15s ease,transform .15s ease}.payment-ledger-row:hover{border-color:rgb(var(--brand-600)/.32);background:#f9fbfd;transform:translateY(-1px)}.announcement-card{position:relative;border-color:var(--dash-line)}.announcement-card.is-new{background:rgb(var(--brand-50)/.45);border-color:rgb(var(--brand-600)/.24)}.announcement-card.is-new:before{content:"";position:absolute;top:18px;right:18px;width:7px;height:7px;border-radius:50%;background:rgb(var(--brand-600))}.event-roster-head{background:#eaf0f6}.event-roster-row:nth-child(odd){background:#fbfcfd}.event-roster-row:focus-within{background:rgb(var(--brand-50)/.45)}.dashboard-nav{box-shadow:0 -8px 28px rgb(23 32 51/.08)}.dashboard-nav-link{position:relative;transition:background-color .15s ease,color .15s ease,transform .15s ease}.dashboard-nav-link:active{transform:scale(.98)}.dashboard-nav-alert,.dashboard-role{border-color:var(--dash-line)!important}.dashboard-nav-monogram{background:rgb(var(--brand-600));color:#fff}@media (min-width:768px){.dashboard-main,.dashboard-search-region{margin-left:15rem;width:calc(100% - 15rem)}.dashboard-nav{box-shadow:12px 0 32px rgb(23 32 51/.06)}.dashboard-nav-link.is-active:before{content:"";position:absolute;left:-12px;width:4px;height:24px;border-radius:0 4px 4px 0;background:rgb(var(--brand-nav-active))}.dashboard-root .md\:grid-cols-2,.dashboard-root .xl\:grid-cols-4{align-items:start}}@media (max-width:767px){.dashboard-nav-inner{overscroll-behavior-inline:contain;scroll-snap-type:x proximity}.dashboard-nav-link{scroll-snap-align:center}.dashboard-overview-header:after,.dashboard-page-header:after{inset-inline:16px}.dashboard-quick-actions{position:sticky;top:8px;z-index:10}.message-composer{bottom:70px}.app-empty-state{min-height:210px}}@media (max-width:480px){.gradebook-head,.gradebook-row{grid-template-columns:minmax(0,1fr) 88px}.gradebook-head>:last-child,.gradebook-row>:last-child{display:none}.gradebook-row{gap:8px;padding-inline:12px}}@media (prefers-reduced-motion:reduce){.dashboard-root *,.dashboard-root :after,.dashboard-root :before{scroll-behavior:auto!important;transition-duration:.01ms!important}.dashboard-search-backdrop,.dashboard-search-dialog{animation:none}}