.notification-center{z-index:80;font-family:Poppins,Inter,ui-sans-serif,system-ui,sans-serif;position:fixed;bottom:24px;right:24px}.notification-center-trigger{color:#fff;cursor:pointer;background:#294b35;border:1px solid #20433421;border-radius:18px;place-items:center;width:52px;height:52px;display:grid;position:relative;box-shadow:0 12px 34px #142d213d}.notification-center-trigger>svg{fill:none;stroke:currentColor;stroke-width:1.9px;stroke-linecap:round;stroke-linejoin:round;width:25px;height:25px}.notification-center-trigger>b{color:#fff;background:#d94f46;border-radius:20px;place-items:center;min-width:21px;height:21px;padding:0 5px;font-size:10px;display:grid;position:absolute;top:-5px;right:-5px}.notification-center-panel{background:#fffdf9;border:1px solid #20433421;border-radius:24px;width:min(390px,100vw - 28px);max-height:min(590px,100vh - 100px);position:absolute;bottom:62px;right:0;overflow:hidden;box-shadow:0 24px 70px #142d2138}.notification-center-panel>header{border-bottom:1px solid #ebe7de;justify-content:space-between;align-items:center;padding:20px 20px 15px;display:flex}.notification-center-panel header small{color:#b06e3f;letter-spacing:.14em;font-size:9px;font-weight:800}.notification-center-panel h2{color:#294b35;margin:3px 0 0;font:700 22px/1.2 Georgia,serif}.notification-center-panel header button{cursor:pointer;background:#f3f4ee;border:0;border-radius:11px;width:34px;height:34px;font-size:22px}.notification-center-list{max-height:480px;padding:9px;overflow:auto}.notification-center-list>button{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:16px;grid-template-columns:36px minmax(0,1fr) 10px;gap:10px;width:100%;height:auto;padding:13px;display:grid;position:relative}.notification-center-list>button:hover{background:#f5f6f0}.notification-center-list>button.notification-unread{background:#f0f4e9}.notification-center-list>button>span{color:#356245;background:#e5efe5;border-radius:12px;place-items:center;width:34px;height:34px;display:grid}.notification-center-list strong{color:#263027;font-size:12px;display:block}.notification-center-list p{color:#667068;overflow-wrap:anywhere;margin:3px 0;font-size:11px;line-height:1.4}.notification-center-list time{color:#8a918a;font-size:9px}.notification-center-list i{background:#d94f46;border-radius:50%;width:7px;height:7px;margin-top:6px}.notification-center-empty{text-align:center;color:#667068;padding:42px 18px}.notification-center-empty span,.notification-center-empty strong,.notification-center-empty small{display:block}.notification-center-empty span{color:#568066;font-size:24px}.notification-center-empty strong{color:#294b35;margin-top:8px}.notification-center-empty small{margin-top:3px}@media (max-width:700px){.notification-center{bottom:92px;right:14px}.notification-center-trigger{border-radius:16px;width:48px;height:48px}.notification-center-panel{bottom:58px}.notification-center-list{max-height:calc(100vh - 190px)}}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--text-sm:.875rem;--text-xl:1.25rem;--text-2xl:1.5rem;--leading-tight:1.25;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.block{display:block}.contents{display:contents}.grid{display:grid}.hidden{display:none}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}.view-header>div:first-child>p:first-child,.student-header>div:first-child>p:first-child,.family-alerts>.family-content>header>div>p:first-child,.pickup-content>header>div:first-child>p:first-child,.appointment-content>header>div:first-child>p:first-child,.documents-content>header>div:first-child>p:first-child,.grades-page .grades-header>div:first-child>p:first-child,.accounts-page .accounts-header>div:first-child>p:first-child,.teacher-agenda .teacher-agenda-content>header>div:first-child>p:first-child{color:#d7844c;letter-spacing:.15em;text-transform:uppercase;margin:0 0 5px;font-family:Poppins,Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;font-size:10px;font-weight:850;line-height:1.4}.pickup-home-link{color:var(--forest);background:#edf2eb;border:1px solid #dce6d9;border-radius:16px;grid-template-columns:38px 1fr auto;align-items:center;gap:10px;margin:-5px 0 14px;padding:12px 14px;text-decoration:none;display:grid}.pickup-home-link>span{background:#fff;border-radius:50%;place-items:center;width:34px;height:34px;font-size:18px;display:grid}.pickup-home-link strong,.pickup-home-link small{display:block}.pickup-home-link strong{font-size:12px}.pickup-home-link small{color:var(--muted);margin-top:2px;font-size:10px}.pickup-home-link>b{font-size:19px}:root{--cream:#f7f3ea;--paper:#fffdf9;--forest:#294b35;--sage:#91a36d;--terra:#d7844c;--coral:#ee665d;--ink:#263027;--muted:#70766f;--line:#ece8de;--shadow:0 24px 80px #2d372421}*{box-sizing:border-box}html{background:#f3eee4}body{color:var(--ink);margin:0;font-family:Poppins,Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif}button{font:inherit;color:inherit}button:focus-visible{outline-offset:3px;outline:3px solid #d7844c73}.app-bg{background:radial-gradient(circle at 15% 10%,#fff9ed 0,#0000 30%),radial-gradient(circle at 90% 85%,#e5eadb 0,#0000 32%),#f4efe6;grid-template-columns:minmax(290px,420px) minmax(390px,520px);justify-content:center;align-items:center;gap:28px;min-height:100vh;padding:42px;display:grid}.brand-panel,.phone-shell{min-height:790px;box-shadow:var(--shadow);border:1px solid #fffc;border-radius:42px;overflow:hidden}.brand-panel{text-align:center;background:linear-gradient(155deg,#fffdf8 5%,#f7f2e6 66%);flex-direction:column;justify-content:center;align-items:center;display:flex;position:relative}.leaf{opacity:.14;background:radial-gradient(ellipse at center,var(--forest) 0 10%,transparent 11%) 0 0/54px 34px;width:190px;height:120px;position:absolute;transform:rotate(-25deg)}.leaf-one{top:35px;left:-20px}.leaf-two{bottom:190px;right:-40px;transform:rotate(145deg)}.school-mark{color:var(--forest);z-index:2;flex-direction:column;align-items:center;gap:24px;display:flex;position:relative}.school-mark .crest{border:7px solid var(--forest);border-radius:10px 10px 60px 60px;flex-direction:column;justify-content:center;align-items:center;width:124px;height:142px;display:flex;transform:scaleX(.82)}.school-mark .crest span{font-size:70px;line-height:.8;transform:rotate(180deg)}.school-mark .crest i{border-top:5px double var(--forest);width:62px;margin-top:9px}.school-mark strong,.school-mark b{text-transform:uppercase;letter-spacing:.18em;font-family:Georgia,serif;display:block}.school-mark strong{font-size:23px;font-weight:500}.school-mark b{letter-spacing:.08em;margin-top:4px;font-size:40px}.brand-line{color:var(--forest);margin:24px 0;font:26px Georgia,serif}.brand-line:after{content:"";background:#c99a54;border-radius:4px;width:45px;height:3px;margin:22px auto;display:block}.landscape{height:210px;position:absolute;inset:auto 0 0;overflow:hidden}.landscape i{background:#9aa07b;border-radius:50% 50% 0 0;width:130%;height:230px;position:absolute;bottom:-120px;left:-15%;transform:rotate(7deg)}.landscape i:nth-child(2){background:#607150;bottom:-150px;left:12%;transform:rotate(-7deg)}.landscape i:nth-child(3){background:#39563e;bottom:-180px;left:-28%;transform:rotate(4deg)}.powered{color:#fff;z-index:3;font-size:12px;position:absolute;bottom:26px}.powered span{color:#e6a16f;font-size:16px}.phone-shell{background:#fffdf9f5;align-self:center;width:100%;min-height:790px;padding-bottom:84px;position:relative}.mobile-brand{display:none}.screen{padding:36px 30px 28px;animation:.25s fade}.screen.home-screen{padding-top:32px}@keyframes fade{0%{opacity:.4;transform:translateY(5px)}to{opacity:1;transform:none}}.view-header{justify-content:space-between;align-items:flex-start;margin-bottom:10px;display:flex}.view-header p,.eyebrow{color:var(--terra);text-transform:uppercase;letter-spacing:.14em;margin:0 0 3px;font-size:11px;font-weight:800}.view-header h1{color:var(--forest);margin:0;font:700 31px/1.15 Georgia,serif}.notification{cursor:pointer;background:0 0;border:0;padding:2px 8px;font-size:28px;position:relative}.notification b{color:#fff;background:#ef4339;border-radius:20px;padding:2px 6px;font-size:10px;position:absolute;top:0;right:0}.welcome{color:var(--muted);max-width:370px;margin:5px 0 20px;font-size:14px;line-height:1.5}.student-card{border:1px solid var(--line);background:#fff;border-radius:22px;grid-template-columns:58px 1fr auto;align-items:center;gap:13px;padding:15px;display:grid;box-shadow:0 8px 24px #30382712}.student-card.small{grid-template-columns:48px 1fr;margin:16px 0}.avatar{color:#fff;background:linear-gradient(145deg,#e1b98e,#8c5a3b);border:4px solid #eef0de;border-radius:50%;place-items:center;width:58px;height:58px;font-size:14px;font-weight:800;display:grid}.small .avatar{width:48px;height:48px}.student-copy strong,.student-copy span{display:block}.student-copy strong{font-size:15px}.student-copy span{color:var(--muted);margin-top:3px;font-size:12px}.status-pill{color:#3f6b37;background:#e8f0df;border-radius:20px;padding:6px 9px;font-size:11px;font-weight:700}.status-pill i{background:#5f994d;border-radius:50%;width:7px;height:7px;margin-right:3px;display:inline-block}.quick-grid{grid-template-columns:1fr 1fr;gap:12px;margin:17px 0;display:grid}.quick{text-align:left;cursor:pointer;border:0;border-radius:20px;flex-direction:column;min-height:128px;padding:16px;transition:all .2s;display:flex;position:relative}.quick:hover{transform:translateY(-2px);box-shadow:0 8px 18px #363c2b14}.quick span{font-size:28px}.quick strong{margin-top:10px;font-size:13px}.quick small{color:var(--muted);margin-top:3px;font-size:11px}.sage-bg{background:#eef1e5}.coral-bg{background:#fff0eb}.amber-bg{background:#fff4e5}.lilac-bg{background:#f4eff8}.badge{color:#fff;background:#ef4339;border-radius:20px;padding:3px 7px;font-size:10px;position:absolute;top:12px;right:12px}.today-card{border:1px solid var(--line);background:#fff;border-radius:20px;margin-top:12px;padding:16px}.today-card>div:first-child{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.today-card>div:first-child span{text-transform:uppercase;color:var(--terra);font-size:11px;font-weight:800}.today-card>div:first-child strong{font-size:12px}.today-event{border-top:1px solid var(--line);grid-template-columns:44px 1fr auto;align-items:center;gap:10px;padding:10px 0;display:grid}.today-event i{color:var(--forest);font-size:12px;font-style:normal}.today-event p{margin:0}.today-event p strong,.today-event p small{display:block}.today-event p strong{font-size:12px}.today-event p small{color:var(--muted);margin-top:2px;font-size:10px}.today-event>b{text-transform:uppercase;color:#4d7a45;background:#eaf2e4;border-radius:10px;padding:4px 6px;font-size:9px}.notice-banner{text-align:left;cursor:pointer;width:100%;color:var(--forest);background:#eef1e6;border:0;border-radius:16px;align-items:center;gap:11px;margin-top:14px;padding:13px 15px;display:flex}.notice-banner>span{flex:1}.notice-banner strong,.notice-banner small{display:block}.notice-banner strong{font-size:11px}.notice-banner small{color:var(--muted);margin-top:2px;font-size:9px}.date-switcher{border:1px solid var(--line);background:#fff;border-radius:14px;grid-template-columns:45px 1fr 45px;align-items:center;width:86%;margin:20px auto 12px;display:grid;overflow:hidden;box-shadow:0 6px 20px #373e2d0f}.date-switcher button{cursor:pointer;background:#fff;border:0;padding:10px}.date-switcher span{text-align:center;font-size:12px}.timeline{border:1px solid var(--line);background:#fff;border-radius:20px;margin-top:12px;padding:8px 17px}.timeline-row{grid-template-columns:39px 1fr auto;align-items:center;gap:13px;min-height:72px;display:grid;position:relative}.timeline-row:not(:last-child){border-bottom:1px solid var(--line)}.timeline-row strong,.timeline-row small{display:block}.timeline-row strong{font-size:13px}.timeline-row small{color:var(--muted);margin-top:2px;font-size:10px}.timeline-row time{color:var(--forest);font-size:12px;font-weight:700}.event-icon{color:#fff;z-index:2;background:#869c65;border-radius:50%;place-items:center;width:34px;height:34px;display:grid}.event-book{background:#796b9b}.event-meal{background:#de7943}.event-check{background:#658549}.connector{background:#ddd9c9;width:2px;height:38px;position:absolute;top:50px;left:16px}.trust-card,.info-strip{background:#f0f2e7;border-radius:16px;align-items:center;gap:11px;margin-top:17px;padding:14px;display:flex}.trust-card>span{color:var(--forest);font-size:24px}.trust-card strong,.trust-card small,.info-strip strong,.info-strip small{display:block}.trust-card strong,.info-strip strong{font-size:11px}.trust-card small,.info-strip small{color:var(--muted);margin-top:3px;font-size:9px}.week-tabs{grid-template-columns:repeat(5,1fr);gap:4px;margin:12px 0;display:grid}.week-tabs button{cursor:pointer;background:0 0;border:0;border-radius:20px;padding:8px 2px;font-size:12px}.week-tabs button.active{color:var(--forest);background:#e8ecd6;font-weight:800}.class-list{flex-direction:column;gap:7px;display:flex}.class-row{text-align:left;cursor:pointer;background:#fff;border:1px solid #f0ede7;border-radius:14px;grid-template-columns:62px 1fr 36px;align-items:center;padding:9px;display:grid}.class-row:hover{border-color:#d6ddc8}.class-row time{font-size:11px}.class-row strong,.class-row small{display:block}.class-row strong{font-size:12px}.class-row small{color:var(--muted);margin-top:2px;font-size:10px}.class-row>span,.message-icon{border-radius:50%;place-items:center;width:33px;height:33px;display:grid}.purple{color:#6f5b98;background:#eee7f6}.green{color:#4e8248;background:#e7f2e3}.sage{color:#68824e;background:#edf0e3}.blue{color:#547aac;background:#e6eef8}.orange{color:#dc7542;background:#fff0e3}.pink{color:#bd6182;background:#fbe9f0}.info-strip{color:var(--terra);background:#fff3ea}.filters{scrollbar-width:none;gap:7px;padding:10px 0 14px;display:flex;overflow-x:auto}.filters button{white-space:nowrap;border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:20px;padding:7px 11px;font-size:10px}.filters button.active{background:var(--forest);color:#fff;border-color:var(--forest)}.message-list{flex-direction:column;gap:10px;display:flex}.message-card{text-align:left;border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:18px;grid-template-columns:42px 1fr auto;gap:11px;padding:14px;display:grid;position:relative;box-shadow:0 5px 18px #2d36260a}.message-card div>strong,.message-card div>small{display:block}.message-card div>strong{font-size:13px}.message-card div>small{color:var(--muted);font-size:10px}.message-card p{margin:7px 0 0;font-size:11px;line-height:1.45}.message-card time{color:var(--muted);font-size:9px}.unread{background:#ef4339;border-radius:50%;width:7px;height:7px;position:absolute;top:31px;right:13px}.profile-hero{text-align:center;padding:20px 0}.parent-avatar{color:#fff;background:linear-gradient(145deg,#d7a779,#845846);border:6px solid #f1eadf;border-radius:50%;place-items:center;width:84px;height:84px;margin:auto;font-size:20px;font-weight:800;display:grid}.profile-hero h2{color:var(--forest);margin:10px 0 2px;font:700 23px Georgia,serif}.profile-hero p{color:var(--muted);margin:0;font-size:12px}.profile-section{margin-top:17px}.profile-section h3{text-transform:uppercase;letter-spacing:.12em;color:var(--muted);font-size:11px}.profile-section>button{text-align:left;border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:14px;grid-template-columns:32px 1fr auto;align-items:center;gap:10px;width:100%;margin-top:8px;padding:13px;display:grid}.profile-section button div strong,.profile-section button div small{display:block}.profile-section button div strong{font-size:12px}.profile-section button div small{color:var(--muted);font-size:9px}.profile-section button>b{color:var(--forest);font-size:9px}.powered-card{text-align:center;color:var(--muted);margin-top:30px;font-size:10px}.bottom-nav{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-top:1px solid var(--line);z-index:5;background:#fffffff5;grid-template-columns:repeat(5,1fr);height:78px;padding:9px 13px 8px;display:grid;position:absolute;bottom:0;left:0;right:0}.bottom-nav button{color:#6d716b;cursor:pointer;background:0 0;border:0;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:3px;display:flex;position:relative}.bottom-nav button span{font-size:19px}.bottom-nav button small{font-size:9px}.bottom-nav button.active{color:var(--forest);background:#f2f4e9;font-weight:800}.bottom-nav button i{color:#fff;background:#ef4339;border-radius:20px;padding:2px 5px;font-size:8px;font-style:normal;position:absolute;top:-2px;right:17px}.modal-backdrop{-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);z-index:20;background:#19221b7a;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.panic-modal{text-align:center;background:#fffdf9;border-radius:30px;width:min(430px,100%);padding:33px;animation:.25s pop;position:relative;box-shadow:0 30px 90px #23282047}@keyframes pop{0%{opacity:0;transform:scale(.96)translateY(8px)}to{opacity:1;transform:none}}.modal-close{color:#777;cursor:pointer;background:0 0;border:0;font-size:28px;position:absolute;top:14px;right:18px}.panic-rings{background:#ee665d26;border-radius:50%;place-items:center;width:145px;height:145px;margin:5px auto 22px;display:grid;box-shadow:0 0 0 18px #ee665d14,0 0 0 35px #ee665d0a}.panic-rings span{color:#fff;background:linear-gradient(145deg,#f37970,#e65048);border-radius:50%;place-items:center;width:105px;height:105px;font-size:46px;display:grid;box-shadow:0 12px 30px #dd4b4459}.panic-modal h2{color:var(--forest);max-width:340px;margin:5px auto 12px;font:700 27px/1.2 Georgia,serif}.panic-modal>p:not(.eyebrow){color:var(--muted);font-size:13px;line-height:1.55}.privacy-note{text-align:left;background:#f4f5ee;border-radius:14px;gap:10px;margin:18px 0;padding:13px;display:flex}.privacy-note strong,.privacy-note small{display:block}.privacy-note strong{font-size:11px}.privacy-note small{color:var(--muted);font-size:9px}.panic-primary,.panic-cancel{cursor:pointer;border:0;border-radius:14px;width:100%;padding:13px;font-weight:800}.panic-primary{background:var(--coral);color:#fff;box-shadow:0 8px 20px #ee665d40}.panic-primary.safe{background:var(--forest)}.panic-cancel{color:var(--muted);background:0 0;margin-top:6px}.success-ring{color:#4e7b45;background:#e7f0df;border-radius:50%;place-items:center;width:110px;height:110px;margin:8px auto 22px;font-size:48px;display:grid}.response-time{background:#f0f2e7;border-radius:14px;margin:17px 0;padding:13px}.response-time span,.response-time strong{display:block}.response-time span{color:var(--muted);font-size:10px}.response-time strong{color:var(--forest);margin-top:3px;font-size:13px}.toast{color:#fff;z-index:30;white-space:nowrap;background:#263b2d;border-radius:30px;padding:12px 18px;font-size:12px;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 10px 35px #00000038}@media (max-width:820px){.app-bg{background:var(--paper);padding:0;display:block}.brand-panel{display:none}.phone-shell{width:100%;min-height:100vh;box-shadow:none;border:0;border-radius:0;padding-top:52px}.mobile-brand{border-bottom:1px solid var(--line);height:52px;color:var(--forest);z-index:4;background:#fffdf9;align-items:center;gap:9px;padding:0 22px;font-family:Georgia,serif;font-size:13px;display:flex;position:absolute;top:0;left:0;right:0}.school-mark.compact{display:block}.school-mark.compact .crest{border-width:2px;border-radius:3px 3px 12px 12px;width:28px;height:31px}.school-mark.compact .crest span{font-size:16px}.school-mark.compact .crest i{border-top-width:1px;width:14px;margin-top:2px}.screen{padding:27px 20px 26px}.bottom-nav{position:fixed}.toast{white-space:normal;text-align:center;max-width:calc(100% - 30px);bottom:92px}}@media (max-width:390px){.quick{min-height:116px;padding:13px}.screen{padding-left:16px;padding-right:16px}.view-header h1{font-size:27px}.status-pill{font-size:9px}.panic-modal{padding:28px 22px}.brand-panel,.phone-shell{min-height:100vh}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.integration-docs{min-height:100vh;color:var(--ink);background:radial-gradient(circle at 90% 0,#e4ead9,#0000 35%),#f6f1e8;padding:55px 24px}.docs-wrap{max-width:1080px;margin:auto}.back-link{color:var(--forest);font-size:13px;font-weight:700;text-decoration:none}.docs-kicker{color:var(--terra);letter-spacing:.16em;text-transform:uppercase;margin:45px 0 8px;font-size:11px;font-weight:900}.integration-docs h1{color:var(--forest);max-width:760px;margin:0;font:700 clamp(35px,6vw,64px)/1 Georgia,serif}.docs-lead{color:var(--muted);max-width:720px;margin:22px 0 36px;font-size:18px;line-height:1.6}.setup-card{background:var(--forest);color:#fff;border-radius:24px;grid-template-columns:58px 1fr;gap:20px;margin:24px 0;padding:28px;display:grid}.setup-card>span{background:#ffffff1f;border-radius:50%;place-items:center;width:50px;height:50px;font:700 18px Georgia,serif;display:grid}.setup-card h2{margin:2px 0 12px;font:700 21px Georgia,serif}.setup-card p,.setup-card li{color:#dce6db;font-size:13px;line-height:1.6}.setup-card ul{padding-left:18px}.setup-card code{background:#ffffff1f;border-radius:5px;padding:2px 6px}.endpoint-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.endpoint-card{border:1px solid var(--line);background:#fffdf9;border-radius:22px;padding:22px;overflow:hidden;box-shadow:0 10px 35px #2d37240f}.endpoint-head{align-items:center;gap:10px;display:flex}.endpoint-head span{color:var(--forest);background:#e8efe0;border-radius:8px;padding:5px 8px;font-size:9px;font-weight:900}.endpoint-head h2{color:var(--forest);margin:0;font:700 20px Georgia,serif}.url-code{color:var(--terra);white-space:nowrap;padding:13px 0;font-size:10px;display:block;overflow:auto}.endpoint-card pre{color:#eef3e8;background:#29382d;border-radius:13px;margin:0;padding:16px;font:11px/1.6 ui-monospace,SFMono-Regular,Menlo,monospace;overflow:auto}.status-box{border:1px solid var(--line);background:#fff;border-radius:18px;justify-content:space-between;align-items:center;gap:20px;margin-top:18px;padding:20px;display:flex}.status-box strong,.status-box small{display:block}.status-box small{color:var(--muted);margin-top:3px;font-size:11px}.status-box a{background:var(--terra);color:#fff;border-radius:12px;padding:10px 14px;font-size:11px;font-weight:800;text-decoration:none}@media (max-width:720px){.integration-docs{padding:34px 16px}.endpoint-grid,.setup-card{grid-template-columns:1fr}.status-box{flex-direction:column;align-items:flex-start}}.family-load{text-align:center;min-height:620px;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;padding:40px;display:flex}.family-load>span{width:68px;height:68px;color:var(--forest);background:#eef2e8;border-radius:22px;place-items:center;font-size:30px;display:grid}.family-load>strong{color:var(--forest);margin:17px 0 7px;font:700 21px Georgia,serif}.family-load>small{max-width:300px;line-height:1.5}.family-load>a{background:var(--forest);color:#fff;border-radius:12px;margin-top:18px;padding:10px 15px;font-size:11px;font-weight:800;text-decoration:none}.family-load.error>span{color:#a9423b;background:#fff0ee}.student-switcher{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;justify-content:space-between;align-items:center;gap:12px;margin:-4px 0 10px;font-size:9px;font-weight:800;display:flex}.student-switcher select{border:1px solid var(--line);max-width:230px;color:var(--forest);text-transform:none;letter-spacing:0;background:#fff;border-radius:10px;padding:8px 10px;font-size:10px}.family-calm{text-align:left;color:#3f6b37;cursor:pointer;background:#eaf2e4;border:0;border-radius:16px;align-items:center;gap:10px;width:100%;margin-top:12px;padding:12px 14px;display:flex}.family-calm>span{color:#fff;background:#5f994d;border-radius:50%;place-items:center;width:29px;height:29px;display:grid}.family-calm>div{flex:1}.family-calm strong,.family-calm small{display:block}.family-calm strong{font-size:11px}.family-calm small{color:#668063;margin-top:2px;font-size:9px}.family-empty-line{border-top:1px solid var(--line);color:var(--muted);margin:0;padding:14px 2px 4px;font-size:10px}.family-empty{text-align:center;min-height:210px;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;padding:30px;display:flex}.family-empty>span{width:52px;height:52px;color:var(--forest);background:#eef2e8;border-radius:17px;place-items:center;font-size:24px;display:grid}.family-empty strong{color:var(--forest);margin:12px 0 5px;font:700 16px Georgia,serif}.family-empty small{max-width:260px;line-height:1.5}.messages-empty{border:1px solid var(--line);background:#fff;border-radius:20px;margin-top:45px}.status-pill.status-late{color:#9b5c2c;background:#fff0dd}.status-pill.status-departed{color:#52697d;background:#e8eef3}.status-pill.status-absent{color:#9d4c45;background:#f9e8e6}.status-pill.status-expected,.status-pill.status-unknown{color:#6f756e;background:#f1f0eb}.event-late{background:#d88a42}.family-student-link{background:0 0!important;border:0!important;margin:0!important;padding:0!important}.family-student-link .student-card{text-align:left;width:100%;margin:8px 0}.profile-link{text-align:left;border:1px solid var(--line);width:100%;color:inherit;background:#fff;border-radius:14px;grid-template-columns:32px 1fr auto;align-items:center;gap:10px;margin-top:8px;padding:13px;text-decoration:none;display:grid}.profile-link div strong,.profile-link div small{display:block}.profile-link div strong{font-size:12px}.profile-link div small{color:var(--muted);font-size:9px}.profile-link>b{color:var(--forest);font-size:9px}.metric-filter-card{transition:border-color .18s,box-shadow .18s,transform .18s;position:relative;overflow:hidden}.metric-filter-card>button{all:unset;box-sizing:border-box;cursor:pointer;width:100%;display:block}.metric-filter-card>button:focus-visible{outline-offset:4px;border-radius:10px;outline:3px solid #d4af3773}.metric-filter-card i{color:#66717b;letter-spacing:.04em;text-transform:uppercase;margin-top:8px;font-size:8px;font-style:normal;font-weight:850;display:block}.metric-filter-card:hover{transform:translateY(-1px);box-shadow:0 9px 24px #0a1a2f17}.metric-filter-card.metric-filter-active{box-shadow:0 0 0 2px #d4af372e;background:#fffaf0!important;border-color:#d4af37!important}.metric-filter-active[role=button]{cursor:pointer;box-shadow:0 0 0 2px #d4af372e;background:#fffaf0!important;border-color:#d4af37!important}[class*=metrics]>article[role=button]{cursor:pointer;transition:border-color .18s,box-shadow .18s,transform .18s}[class*=metrics]>article[role=button]:hover{transform:translateY(-1px);box-shadow:0 9px 24px #0a1a2f17}[class*=metrics]>article[role=button]:focus-visible{outline-offset:4px;outline:3px solid #d4af3773}.metric-filter-card.metric-filter-active i{color:#7a5d08}.metric-filter-context{color:#625323;background:#fffaf0;border:1px solid #ead99b;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;margin:-5px 0 14px;padding:9px 12px;font-size:10px;display:flex}.metric-filter-context button{color:#fff;font:inherit;cursor:pointer;background:#0a1a2f;border:0;border-radius:9px;padding:7px 10px;font-weight:800}@media (max-width:520px){.metric-filter-card i{font-size:9px}.metric-filter-context{flex-direction:column;align-items:flex-start}.metric-filter-context button{width:100%}}.profile-switch-link{text-underline-offset:4px;opacity:.68!important;background:0 0!important;border-color:#0000!important;padding:7px 9px!important;font-size:9px!important;text-decoration:underline!important}.profile-switch-link:hover{opacity:1!important;background:#ffffffa6!important}.teacher-agenda .teacher-agenda-nav{background:linear-gradient(160deg,#0a1a2f,#334155)}.teacher-home .accounts-sidebar:has(.school-navigation[data-role=teacher]){background:linear-gradient(160deg,#0a1a2f,#334155)}.accounts-sidebar:has(.school-navigation[data-role=teacher]){background:linear-gradient(160deg,#0a1a2f,#334155)}.grades-sidebar:has(.school-navigation[data-role=teacher]){background:linear-gradient(160deg,#0a1a2f,#334155)}.push-enrollment{z-index:90;color:#243b2d;background:#fff;border:1px solid #2446322e;border-radius:18px;grid-template-columns:42px 1fr auto;align-items:center;gap:12px;width:min(390px,100vw - 30px);padding:14px 15px;display:grid;position:fixed;bottom:20px;right:20px;box-shadow:0 18px 55px #12261b2e}.push-enrollment>span{color:#315b3c;background:#e9f2e9;border-radius:13px;place-items:center;width:42px;height:42px;font-size:21px;display:grid}.push-enrollment strong,.push-enrollment small{display:block}.push-enrollment strong{font-size:13px}.push-enrollment small{color:#69746c;margin-top:3px;font-size:11px;line-height:1.35}.push-enrollment button{color:#fff;cursor:pointer;background:#315b3c;border:0;border-radius:11px;padding:10px 13px;font:700 11px/1 inherit}.push-enrollment button:disabled{opacity:.6;cursor:wait}@media (max-width:560px){.push-enrollment{grid-template-columns:38px 1fr;bottom:82px;right:15px}.push-enrollment>span{width:38px;height:38px}.push-enrollment button{grid-column:1/-1;width:100%}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}:root{--font-display:"Lora", Georgia, "Times New Roman", serif;--font-interface:"Inter", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--text-2xs:.625rem;--text-xs:.75rem;--text-sm:.875rem;--text-md:1rem;--text-lg:1.25rem;--text-xl:1.5rem;--text-2xl:clamp(1.75rem, 2.7vw, 2.25rem);--text-display:clamp(2.25rem, 5vw, 4rem);--leading-tight:1.15;--leading-body:1.55;--type-label:800 var(--text-2xs)/1.4 var(--font-interface);--type-body:400 var(--text-sm)/var(--leading-body) var(--font-interface);--type-section-title:700 var(--text-xl)/1.2 var(--font-display);--type-page-title:700 var(--text-2xl)/var(--leading-tight) var(--font-display);--school-primary:#294b35;--school-accent:#d7844c;--school-navigation:#294b35;--school-background:#f7f4ec;--school-surface:#fffdfa;--school-ink:#263027;--school-muted:#70766f;--school-border:#e7e2d8;--school-primary-soft:color-mix(in srgb, var(--school-primary) 10%, white);--school-accent-soft:color-mix(in srgb, var(--school-accent) 12%, white);--forest:var(--school-primary);--terra:var(--school-accent);--cream:var(--school-background);--paper:var(--school-surface);--ink:var(--school-ink);--muted:var(--school-muted);--line:var(--school-border);--adm-forest:var(--school-primary);--adm-terra:var(--school-accent);--school-shell-background:var(--school-background)}html,body,button,input,select,textarea{font-family:var(--font-interface)}body{background:var(--school-background);color:var(--school-ink)}:where(h1,h2,.page-title,.section-title){color:var(--school-primary);font-family:var(--font-display)!important}:where(h1,.page-title){font-size:var(--text-2xl);line-height:var(--leading-tight)}:where(h2,.section-title){font-size:var(--text-xl);line-height:1.2}:where(p,li,label,input,select,textarea,button){line-height:var(--leading-body)}:where(.accounts-sidebar,.teacher-agenda-nav,.grades-sidebar){background:var(--school-navigation)!important}:where(.accounts-page,.teacher-agenda,.grades-page,.family-responsive){--school-shell-background:var(--school-background)}:where(.accounts-page>.accounts-content,.teacher-agenda>.teacher-agenda-content,.grades-page .grades-content){background:var(--school-background)!important}:where(.accounts-header,.view-header,.student-header,.grades-header,.teacher-agenda-content>header) h1{font:var(--type-page-title)!important;color:var(--school-primary)!important}:where(.accounts-header,.view-header,.student-header,.grades-header,.teacher-agenda-content>header) p:first-child,:where(.eyebrow,.section-kicker){letter-spacing:.15em;text-transform:uppercase;color:var(--school-accent)!important;font:var(--type-label)!important}:where(.school-navigation a.active){color:#fff}:where(.school-navigation a.active i){color:var(--school-navigation)!important}:where(button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible){outline:3px solid color-mix(in srgb, var(--school-accent) 48%, transparent);outline-offset:3px}@supports not (color:color-mix(in srgb, white, black)){:root{--school-primary-soft:#edf2eb;--school-accent-soft:#fff2e8}}
