@font-face{font-family:Geist;src:url(/assets/geist.woff2)format("woff2");font-display:swap;font-weight:100 900}:root{color:var(--ink);background:var(--paper);font-synthesis:none;--paper:#fbf8f2;--surface:#fff;--sunken:#f3efe6;--ink:#061c51;--muted:#4e5b78;--line:#e3e5ec;--blue:#0050d3;--yellow:#fdc720;--red:#e62322;--green:#117a47;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:Geist,system-ui,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,.button,.file-button{border:1px solid var(--line);background:var(--surface);min-height:48px;color:var(--ink);cursor:pointer;text-align:center;border-radius:14px;justify-content:center;align-items:center;gap:8px;padding:12px 16px;font-weight:650;line-height:1.3;text-decoration:none;display:inline-flex}button:active,.button:active{transform:translateY(1px)}button:disabled{opacity:.5;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--blue);outline-offset:3px}.primary{background:var(--red);border-color:var(--red);color:#fff;box-shadow:0 3px #b3161b}.secondary{background:var(--blue);border-color:var(--blue);color:#fff}.plain{background:0 0;border-color:#0000}.full{width:100%;margin:8px 0}.grow{flex:1;min-width:0}a{color:var(--blue)}h1{letter-spacing:-1.3px;margin:12px 0 24px;font-size:clamp(28px,6vw,38px);font-weight:850;line-height:1.08}h2{letter-spacing:-.5px;margin:0;font-size:21px;font-weight:800}h3{margin:12px 0 8px;font-size:19px;line-height:1.3}p{margin:10px 0;line-height:1.55}small,.muted{color:var(--muted);line-height:1.5}small{font-size:13px;display:block}.eyebrow{letter-spacing:1.1px;color:var(--muted);margin:24px 0 12px;font-size:12px;font-weight:750}.app-shell{max-width:1100px;min-height:100dvh;margin:auto}.app-header{padding:14px 20px;padding-top:max(14px,env(safe-area-inset-top));border-bottom:1px solid var(--line);background:var(--paper);z-index:20;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.brand{letter-spacing:-.6px;color:var(--ink);align-items:center;gap:10px;font-size:21px;font-weight:850;text-decoration:none;display:flex}.brand img{border-radius:10px;width:36px;height:36px}.account-button{border:1px solid var(--line);width:48px;height:48px;color:var(--ink);border-radius:50%;place-items:center;font-size:30px;text-decoration:none;display:grid}main{padding:20px 20px calc(110px + env(safe-area-inset-bottom));max-width:800px;margin:auto}.bottom-nav{z-index:30;background:var(--surface);border:1px solid var(--line);width:min(100%,800px);padding:8px 8px max(8px,env(safe-area-inset-bottom));border-bottom:0;border-radius:22px 22px 0 0;grid-template-columns:repeat(4,1fr);display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.bottom-nav a{color:var(--muted);border-radius:16px;flex-direction:column;align-items:center;gap:4px;min-height:58px;padding:8px 2px;font-size:12px;font-weight:650;text-decoration:none;display:flex;position:relative}.bottom-nav a.active{background:var(--yellow);color:var(--ink)}.bottom-nav b{background:var(--red);color:#fff;border-radius:99px;min-width:18px;padding:2px 4px;font-size:10px;position:absolute;top:4px;right:14%}.row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.spread{justify-content:space-between}.card{background:var(--surface);border:1px solid var(--line);overflow-wrap:anywhere;border-radius:20px;margin:12px 0;padding:16px}.card .card{background:var(--paper);box-shadow:none}.section-title{justify-content:space-between;align-items:center;gap:12px;margin:28px 0 12px;display:flex}.badge{background:var(--sunken);color:var(--muted);border-radius:9px;padding:5px 8px;font-size:12px;font-weight:700;display:inline-block}.badge.green{color:var(--green);background:#e7f5ed}.badge.blue{color:var(--blue);background:#e6edff}.form{flex-direction:column;gap:16px;margin:14px 0;display:flex}label{flex-direction:column;gap:7px;font-size:14px;font-weight:650;line-height:1.4;display:flex}input,select,textarea{border:1px solid var(--line);background:var(--surface);min-height:48px;color:var(--ink);border-radius:12px;width:100%;max-width:100%;padding:12px;font-size:16px}input[type=date],input[type=month],input[type=time]{min-width:0}textarea{resize:vertical;min-height:86px;line-height:1.5}.check{flex-direction:row;align-items:center;gap:10px;min-height:44px;font-weight:500;display:flex}.check input{width:22px;height:22px;min-height:22px;accent-color:var(--blue);flex:none}.choices{border:1px solid var(--line);border-radius:12px;flex-direction:column;max-height:260px;padding:4px;display:flex;overflow-y:auto}.pills{scrollbar-width:none;overscroll-behavior-x:contain;gap:8px;margin:8px 0 12px;padding:4px 0 12px;display:flex;overflow-x:auto}.pills>*{background:var(--surface);border:1px solid var(--line);min-height:44px;color:var(--ink);border-radius:99px;flex-shrink:0;align-items:center;padding:10px 15px;font-size:14px;text-decoration:none;display:flex}.pills .selected{background:var(--ink);color:var(--paper);border-color:var(--ink)}summary{cursor:pointer;min-height:36px;font-weight:750;line-height:1.4}details[open]>summary{border-bottom:1px solid var(--line);padding-bottom:12px}.details-body{padding-top:10px}.tile-grid{grid-template-columns:1fr 1fr;gap:12px;margin:22px 0;display:grid}.tile-grid a{background:var(--blue);color:#fff;border-radius:22px;flex-direction:column;justify-content:space-between;gap:18px;min-height:118px;padding:20px;font-size:17px;font-weight:750;text-decoration:none;display:flex}.tile-grid a:nth-child(4n+2){background:var(--yellow);color:var(--ink)}.tile-grid a:nth-child(4n+3){background:var(--surface);color:var(--ink);border:1px solid var(--line)}.tile-grid a:nth-child(4n){background:var(--ink);color:var(--paper)}.tile-grid a span{font-size:13px;font-weight:500}.facts{grid-template-columns:repeat(3,1fr);gap:10px;margin:20px 0;display:grid}.facts>div{background:var(--paper);border-radius:14px;padding:12px 8px}dt{color:var(--muted);font-size:12px}dd{margin:6px 0 0;font-size:18px;font-weight:750}.facts strong{font-size:28px}.child-heading{align-items:center;gap:16px;margin:12px 0 24px;display:flex}.child-heading h1{margin:0}.child-heading p{color:var(--muted);margin:6px 0 0}.avatar{background:var(--yellow);border-radius:22px;flex-shrink:0;place-items:center;width:64px;height:64px;font-size:28px;font-weight:850;display:grid}.avatar.small{border-radius:16px;width:44px;height:44px;font-size:20px}.summary-strip{align-items:center;gap:12px;padding:18px 0;display:flex}.summary-strip strong{letter-spacing:-1px;font-size:34px}.quick-actions{flex-wrap:wrap;gap:6px;margin:14px 0;display:flex}.quick-actions button{min-width:44px;padding:10px;font-size:14px}.loading{color:var(--muted);justify-content:center;align-items:center;gap:12px;padding:48px;display:flex}.spinner{border:3px solid var(--line);border-top-color:var(--blue);border-radius:50%;width:22px;height:22px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.empty{text-align:center;color:var(--muted);padding:40px 20px;line-height:1.6}.thread-loop{border:3px solid var(--red);border-radius:50% 50% 40% 60%;width:44px;height:50px;margin:0 auto 20px;display:block;transform:rotate(18deg)}.error{color:#9b2020;background:#fff0ed;border-radius:14px;margin:12px 0;padding:14px;font-size:14px;line-height:1.5}.error button{margin-top:8px;display:block}.success{color:var(--green);margin:8px 0;font-size:14px;display:block}.offline{background:var(--yellow);color:#061c51;z-index:19;padding:12px 20px;font-size:14px;line-height:1.4;position:sticky;top:77px}.install-banner{background:var(--sunken);justify-content:space-between;align-items:center;gap:12px;padding:8px 20px;font-size:13px;display:flex}.install-banner button{min-height:40px;font-size:13px}.menu-list,.list{flex-direction:column;gap:8px;display:flex}.menu-list a{background:var(--surface);min-height:60px;color:var(--ink);border:1px solid var(--line);border-radius:16px;justify-content:space-between;align-items:center;padding:18px;font-weight:650;text-decoration:none;display:flex}.membership{text-align:left;justify-content:space-between;gap:20px;width:100%;margin:10px 0;display:flex}.membership span{color:var(--muted);font-size:13px}.conversation-row{border-bottom:1px solid var(--line);color:var(--ink);align-items:center;gap:12px;padding:16px 4px;text-decoration:none;display:flex}.conversation-row p{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:6px 0 0;font-size:14px;display:-webkit-box;overflow:hidden}.messages{flex-direction:column;gap:12px;margin:20px 0;display:flex}.message{background:var(--surface);border:1px solid var(--line);border-radius:18px 18px 18px 4px;align-self:flex-start;width:100%;max-width:92%;padding:14px}.message.mine{background:#eaf0ff;border-radius:18px 18px 4px;align-self:flex-end}.message strong{font-size:13px}.message small{font-size:11px}.prewrap{white-space:pre-wrap;overflow-wrap:anywhere}.message-menu summary{color:var(--muted);min-height:32px;padding-top:8px;font-size:12px}.composer{background:var(--paper);padding:16px 0}.composer form{flex-direction:column;gap:10px;display:flex}.gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:20px 0;display:grid}.photo{aspect-ratio:1;background:var(--sunken);color:var(--muted);border-radius:16px;place-items:center;font-size:13px;display:grid;overflow:hidden}.photo img{object-fit:cover;width:100%;height:100%}.photo.large{aspect-ratio:auto;min-height:240px}.photo.large img{object-fit:contain;height:auto;max-height:80dvh}.upload{padding:12px 0}.file-button{font-size:14px;position:relative;overflow:hidden}.file-button input{opacity:0;cursor:pointer;position:absolute;inset:0}.pdf{border:0;width:100%;height:65dvh}.table-scroll{max-width:100%;margin:16px 0;overflow:auto}table{border-collapse:collapse;width:100%;font-size:14px}th,td{border-bottom:1px solid var(--line);text-align:left;white-space:nowrap;padding:12px}th{font-weight:700}.login{max-width:450px;min-height:100dvh;margin:auto;padding:38px 24px}.login .brand{margin-bottom:70px;font-size:25px}.login-copy h1{letter-spacing:-2px;font-size:44px}.login-copy p{color:var(--muted)}.login .form{margin:28px 0}.oauth{flex-direction:column;gap:10px;margin-bottom:24px;display:flex}footer{color:var(--muted);flex-wrap:wrap;justify-content:center;gap:20px;padding:30px 0 10px;font-size:12px;display:flex}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;background:var(--surface);padding:16px;position:fixed;top:-80px}.skip-link:focus{top:0}@media (width>=850px){.app-header{padding-left:32px;padding-right:32px}main{padding-top:30px}.login{padding-top:70px}.gallery{grid-template-columns:repeat(3,1fr)}.tile-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=360px){main{padding-left:14px;padding-right:14px}.facts{grid-template-columns:1fr 1fr}.row>label{flex:100%}.tile-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}button:active,.button:active{transform:none}}@font-face{font-family:Figtree;src:url(/assets/Figtree-Black.ttf)format("truetype");font-weight:900;font-display:swap}h1,h2,h3,.native-brand,.date-tile>strong,.parent-name>label,.count-tile>strong,.hub-portrait,.hub-tile b{letter-spacing:-.02em;font-family:Figtree,Geist,sans-serif;font-weight:900}h1{margin:6px 0 16px;font-size:30px;line-height:1.15}h2{font-size:22px}h3{font-size:20px}main{max-width:680px;padding-top:12px}.app-header{border:0;max-width:680px;min-height:66px;margin:auto;padding:12px 20px 4px;position:relative}.native-brand{color:var(--ink);letter-spacing:-.04em;white-space:nowrap;font-size:20px;line-height:.96;display:inline-flex}.native-brand.stacked{flex-direction:column;align-items:flex-start}.brand-first{align-items:flex-start;display:flex;position:relative}.brand-second{margin-top:-.1em;padding-left:.28em}.sprout{flex-shrink:0;width:.95em;height:.95em;margin-left:.04em;display:inline-block;transform:translateY(-.18em)}.native-brand.inline{flex-direction:row;align-items:center;gap:.28em}.native-brand.inline .sprout{transform:none}.account-button{background:var(--sunken);border:0;border-radius:50%;width:40px;height:40px;min-height:40px}.account-button svg{display:block}.role-director .account-button,.role-administrator .account-button{border:1px solid var(--line);background:var(--surface)}.bottom-nav{--nav-backdrop:var(--paper);border:0;border-top:1px solid var(--line);background:var(--paper);width:min(100%,680px);padding:9px 6px max(16px,env(safe-area-inset-bottom));border-radius:0;grid-template-columns:repeat(5,minmax(0,1fr));min-height:78px}.bottom-nav a{color:var(--ink);gap:7px;min-height:52px;padding:4px 0;font-size:12px;font-weight:550}.bottom-nav a>span{font-size:12px;line-height:1.2}.bottom-nav a.active{color:var(--blue);background:0 0}.bottom-nav a.active:after{content:"";background:var(--blue);border-radius:4px;width:23px;height:3px;position:absolute;bottom:-5px}.bottom-nav b{font-size:10px;top:-2px;right:13%}.role-guardian .bottom-nav{width:min(100% - 96px,320px);bottom:calc(14px + env(safe-area-inset-bottom));background:color-mix(in srgb,var(--paper) 85%,transparent);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid color-mix(in srgb,var(--surface) 65%,transparent);border-radius:40px;grid-template-columns:repeat(3,1fr);min-height:62px;padding:4px;box-shadow:0 12px 35px #061c5114}.role-guardian .bottom-nav a{border-radius:32px;min-height:54px;padding:7px 6px 5px}.role-guardian .bottom-nav a.active{--nav-backdrop:var(--sunken);background:var(--sunken)}.role-guardian .bottom-nav a.active:after{display:none}.role-director .bottom-nav,.role-administrator .bottom-nav{width:min(100% - 30px,640px);bottom:calc(12px + env(safe-area-inset-bottom));border:1px solid var(--line);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:color-mix(in srgb,var(--paper) 80%,transparent);border-radius:40px;min-height:68px;padding:6px 8px}.role-director .bottom-nav a.active,.role-administrator .bottom-nav a.active{background:var(--sunken);border-radius:30px}.role-director .bottom-nav a.active:after,.role-administrator .bottom-nav a.active:after{display:none}.login{max-width:440px;padding:24px 20px}.login-logo{margin-bottom:30px;padding-top:0}.login-logo .native-brand{font-size:20px}.login-copy h1{letter-spacing:-.02em;margin:0 0 10px;font-size:30px}.login-copy p{margin:0;font-size:17px;line-height:1.4}.login .form{gap:16px;margin:28px 0 0}.login .form label{gap:12px;font-size:16px;font-weight:700}.login input{border-radius:15px;height:54px;padding:14px;font-size:18px}.login .primary{border-radius:16px;height:54px;font-size:18px;box-shadow:0 4px #b3161b}.login .primary:disabled{background:var(--red);color:#fff;opacity:.6;box-shadow:0 -4px #ff8b8b}.login-divider{color:var(--muted);align-items:center;gap:14px;margin:27px 0 22px;font-size:14px;font-weight:600;display:flex}.login-divider:before,.login-divider:after{content:"";background:var(--line);flex:1;height:1px}.oauth{gap:12px;margin:0}.oauth button{border:1px solid #7b8080;border-radius:13px;height:48px;font-family:Arial,system-ui,sans-serif;font-size:18px;font-weight:500}.oauth .google-login{color:#242424;background:#fff}.google-login img{object-fit:contain;width:21px;height:21px;margin-right:4px}.oauth .apple-login{color:#fff;background:#000;border-color:#000}.login-links{justify-content:space-between;gap:15px;margin:34px 22px 12px;font-size:16px;font-weight:750;display:flex}.login-links a{text-decoration:none}.login footer{padding-top:35px}.parent-name{text-align:center;margin:0 0 22px}.parent-name>label{flex-direction:row;justify-content:center;align-items:center;font-size:38px;line-height:1.2;display:inline-flex;position:relative}.parent-name>label>span{align-items:center;gap:8px;display:flex}.parent-name select,.group-heading select{opacity:0;cursor:pointer;position:absolute;inset:0}.parent-name p{flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;margin:12px 0 0;font-size:15px;display:flex}.parent-name p>span{color:var(--muted)}.status-dot{background:var(--muted);border-radius:50%;flex-shrink:0;width:9px;height:9px;display:inline-block}.status-dot.green{background:#149e5e}.native-day-summary{border:1px solid var(--line);background:var(--surface);border-radius:20px;align-items:center;gap:16px;padding:14px;display:flex}.date-tile{border-right:1px solid var(--line);flex-direction:column;justify-content:center;align-self:stretch;align-items:center;min-width:60px;padding-right:16px;display:flex}.date-tile>strong{font-size:40px;line-height:1.1}.date-tile>span{margin-top:5px;font-size:14px;font-weight:700}.summary-facts{min-width:0;font-size:15px}.summary-facts>strong{font-size:16px}.summary-facts p{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px;margin:5px 0;line-height:1.3;display:flex}.summary-facts b{color:var(--ink);font-weight:650}.summary-facts svg{color:var(--muted);flex-shrink:0}.summary-facts p:first-of-type svg{color:#149e5e}.child-hub{aspect-ratio:1.1;width:100%;max-width:320px;margin:16px auto 18px;position:relative}.hub-thread{width:100%;height:100%;position:absolute;inset:0}.hub-portrait{aspect-ratio:1;background:var(--yellow);z-index:1;border-radius:50%;width:46%;padding:9px;display:flex;position:absolute;top:25%;left:27%}.hub-portrait>span{background:var(--surface);color:var(--blue);border-radius:50%;place-items:center;width:100%;height:100%;font-size:48px;display:grid}.hub-tile{aspect-ratio:1;width:30%;color:var(--ink);z-index:2;flex-direction:column;justify-content:center;align-items:center;gap:9px;text-decoration:none;display:flex;position:absolute}.hub-tile b{letter-spacing:-.3px;font-family:Geist,sans-serif;font-size:16px;font-weight:750}.hub-tile.blue{color:#fff;background:#0050d3}.hub-tile.red{color:#fff;background:#e62322}.hub-tile.yellow{color:#061c51;background:#fdc720}.hub-tile.white{background:var(--surface);border:1px solid var(--line);box-shadow:0 5px 15px #061c5108}.hub-tile.white svg{color:#0050d3}.hub-tile.arch{border-radius:50% 50% 6px 6px;top:2%;left:0}.hub-tile.circle{border-radius:50%;top:0;right:0}.hub-tile.square{border-radius:28px;bottom:3%;left:0}.hub-tile.quarter{border-radius:7px 100% 7px 7px;bottom:0;right:0}.native-list-row{color:var(--ink);align-items:center;gap:12px;min-height:62px;padding:13px 0;text-decoration:none;display:flex}.native-list-row.card{padding:12px 14px}.native-list-row strong{font-size:16px;line-height:1.3;display:block}.native-list-row small{margin-top:4px;font-size:15px;font-weight:450}.native-icon-box{background:var(--sunken);width:40px;height:40px;color:var(--ink);border-radius:13px;flex-shrink:0;place-items:center;display:grid}.native-icon-box.danger{color:#d32024;background:#ffeded}.group-heading{max-width:100%;display:inline-block;position:relative}.group-heading h1{align-items:center;gap:10px;margin:7px 0 10px;display:flex}.native-date{min-height:44px;color:var(--muted);flex-direction:row;align-items:center;gap:8px;font-size:16px;font-weight:650;display:flex;position:relative}.native-date span:first-letter,.director-date:first-letter{text-transform:uppercase}.native-date svg{color:var(--blue);flex-shrink:0}.native-date input{opacity:0;cursor:pointer;position:absolute;inset:0}.attendance-tiles{grid-template-columns:1fr 1fr;gap:8px;margin:25px 0 16px;display:grid}.count-tile{border:0;border-radius:14px 110px 14px 14px;justify-content:flex-start;align-items:baseline;gap:8px;height:94px;padding:14px 16px 12px;text-decoration:none;display:flex}.count-tile.blue{color:#fff;background:#0050d3}.count-tile.yellow{color:#061c51;background:#fdc720;border-radius:110px 14px 14px}.count-tile>strong{font-size:52px;line-height:1.1}.count-tile>span{font-size:17px;font-weight:750}.save-status{align-items:center;gap:8px;margin:14px 0;font-size:15px;font-weight:650;display:flex}.theme-row{margin:4px 0 15px;padding:4px 0}.theme-row small{margin:0 0 3px;font-size:12px;font-weight:600}.day-progress{scrollbar-width:none;gap:0;padding:14px 0 6px;display:flex;position:relative;overflow-x:auto}.day-progress:before{content:"";background:var(--line);width:100%;height:2px;position:absolute;top:27px;left:0}.day-progress button{z-index:1;background:0 0;border:0;flex-direction:column;gap:8px;min-width:82px;padding:0 8px;font-size:13px;display:flex}.progress-dot{border:2px solid var(--muted);background:var(--surface);color:#061c51;border-radius:50%;place-items:center;width:26px;height:26px;display:grid}.progress-dot.complete{background:#149e5e;border-color:#149e5e}.progress-dot.current{box-shadow:inset 0 0 0 5px var(--surface);background:#0050d3;border-color:#0050d3}.day-progress small{font-size:12px}.group-actions{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:14px 0;display:grid}.group-actions button{background:var(--sunken);border:0;border-radius:17px;flex-direction:column;justify-content:flex-start;gap:8px;min-height:111px;padding:12px 3px;font-size:13px;display:flex}.action-symbol{place-items:center;width:42px;height:42px;display:grid}.action-symbol.green{color:#061c51;background:#149e5e;border-radius:50%}.action-symbol.blue{color:#fff;background:#0050d3;border-radius:50% 50% 5px 5px}.action-symbol.red{color:#fff;background:#e62322;border-radius:13px}.action-symbol.yellow{color:#061c51;background:#fdc720;border-radius:5px 100% 5px 5px}.group-actions small{margin-top:auto;font-size:13px}.teacher-home .menu-list button{border:0;border-bottom:1px solid var(--line);text-align:left;background:0 0;border-radius:0;justify-content:space-between;padding:14px 0;display:flex}.teacher-home .menu-list a{border:0;border-bottom:1px solid var(--line);background:0 0;border-radius:0;padding:14px 0}.director-date{color:var(--muted);margin:3px 0 8px;font-size:14px;font-weight:650}.branch-picker{margin:24px 0 28px;font-size:15px}.branch-picker select{height:62px;color:var(--blue);border-radius:20px;padding:17px 22px;font-size:18px;font-weight:400}.attention-list .native-list-row:not(:last-child){border-bottom:1px solid var(--line)}.attention-list{padding:0 14px}.red-count{color:#fff;background:#e62322;border-radius:50%;place-items:center;width:29px;height:29px;font-size:16px;display:grid}.teacher-home .card{margin:18px 0}.teacher-home .primary{min-height:44px;font-size:16px}.teacher-home h2{font-size:20px}.back{padding-left:0;font-size:16px}.app-shell .install-banner{border-radius:12px;margin:4px 20px;font-size:12px}.app-shell .install-banner button{font-size:12px}@media (width>=850px){.native-brand{font-size:24px}.login{padding-top:40px}.login .native-brand{font-size:20px}.parent-name{margin-top:8px}.teacher-home .attendance-tiles{max-width:480px}.child-hub{max-width:320px}}@media (width<=360px){.summary-facts{font-size:13px}.native-day-summary{gap:10px;padding:12px}.date-tile{min-width:48px;padding-right:10px}.hub-tile b{font-size:14px}.group-actions{gap:5px}.group-actions button{font-size:12px}.count-tile{padding:14px 10px}.count-tile>strong{font-size:46px}.count-tile>span{font-size:15px}.login-links{margin-left:0;margin-right:0;font-size:14px}}.pills .selected{color:#fff;background:#0050d3;border-color:#0050d3}.conversation-search{margin:8px 0 16px}.conversation-search input{border-radius:15px;height:50px;font-size:17px}.conversation-row{border:1px solid var(--line);background:var(--surface);border-radius:20px;align-items:flex-start;margin:6px 0;padding:16px}.conversation-row.group-conversation{background:#fff4cc;border-color:#fff4cc}.conversation-row .avatar{color:#0050d3;background:#e6edff}.conversation-row.group-conversation .avatar{color:#061c51;background:#fdc720}.conversation-row strong{font-size:17px}.conversation-row small{margin-top:4px;font-size:13px}.conversation-row p{color:var(--ink);margin-top:9px;font-weight:600}.conversation-row .badge.blue{color:#fff;background:#0050d3;border-radius:20px}.secondary{box-shadow:0 3px #003a9e}.native-brand{font-size:20px}.confirmation-dialog{border:1px solid var(--line);background:var(--surface);max-width:min(440px,100vw - 40px);color:var(--ink);border-radius:24px;padding:24px;box-shadow:0 20px 80px #0003}.confirmation-dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#061c5166}.confirmation-dialog p{margin:16px 0 24px}.confirmation-dialog .row{justify-content:flex-end}.confirmation-dialog button{flex:1}.multiselect-field{border:0;min-width:0;margin:0;padding:0}.multiselect-field legend{margin-bottom:7px;padding:0;font-size:14px;font-weight:650}.multiselect-field .check{cursor:pointer;padding:4px 8px}:root{--royal-fill:#0050d3;--teacher-sheet:#0050d3;--teacher-ink:#fff;--teacher-muted:#d6e2ff;--blue-tint:#e5ecfb;--red-tint:#feedeb;--yellow-tint:#fff3cc;--green-tint:#e2f3e9;--red-ink:#d32024;--tertiary:#646c82;--nav-height:82px;--spring-out:linear(0,.28 12%,.64 28%,.89 47%,1.02 68%,1 100%)}h2,h3{letter-spacing:0;font-family:Geist,system-ui,sans-serif;font-size:20px;font-weight:700}button,.button,.file-button{min-height:54px;transition:transform .24s var(--spring-out),opacity .12s ease-out;transform-origin:50%;border-radius:16px;font-weight:700}button:active,.button:active{transition-duration:.12s;transform:translateY(3px)scale(.97)}.plain{box-shadow:none}.primary{box-shadow:0 4px #b3161b}.secondary{background:var(--royal-fill);box-shadow:0 4px #003a9e}input,select,textarea{border-radius:14px}.bottom-nav{grid-template-columns:repeat(var(--nav-count,5),minmax(0,1fr))}.pushed-header{max-width:680px;color:var(--ink);grid-template-columns:52px 1fr 52px;align-items:center;gap:8px;min-height:64px;margin:auto;padding:12px 20px 8px;display:grid}.pushed-header strong{text-align:center;font-size:17px;font-weight:650}.native-back{background:var(--surface);width:44px;height:44px;min-height:44px;color:var(--ink);border-radius:50%;padding:9px;box-shadow:0 5px 18px #061c5108}.pushed-screen main>h1:first-child,.pushed-screen main>.back:first-child{display:none}.native-list-group{background:var(--surface);border:1px solid var(--line);border-radius:20px;margin:10px 0 28px;padding:0 16px}.native-list-group .native-list-row{min-height:72px}.native-list-group .native-list-row:not(:last-child){border-bottom:1px solid var(--line)}.native-list-row:active{opacity:.6;transform:none}.quiet-section-title{color:var(--muted);margin:26px 0 10px;font:600 15px/1.4 Geist,system-ui,sans-serif}.one-action-screen .pushed-header{background:var(--teacher-sheet);color:#fff;max-width:680px}.one-action-screen .native-back{color:#fff;background:0 0}.one-action-screen main{padding:0 0 calc(180px + env(safe-area-inset-bottom));background:var(--teacher-sheet)}.native-thread{pointer-events:none;overflow:visible}.draw-thread path{stroke-dasharray:1;stroke-dashoffset:1px;animation:thread-draw var(--draw-ms,.35s) ease-out forwards}.confirm-thread{animation:.97s linear forwards thread-confirm}.motion-reduced.draw-thread path{stroke-dashoffset:0;animation:.2s ease-out motion-fade}.painted-loading{vertical-align:middle;justify-content:center;align-items:center;gap:12px;display:inline-flex}.painted-loading svg{flex-shrink:0;overflow:visible}.loader-track{fill:none;stroke:currentColor;stroke-opacity:.14;stroke-width:4px}.painted-stroke,.painted-wet{fill:none;stroke:currentColor;stroke-width:4px;stroke-linecap:round;stroke-dasharray:16 101;stroke-dashoffset:0;animation:1.62s ease-in-out infinite paint-breath}.painted-wet{stroke:#f96943;stroke-width:2px;opacity:.8;stroke-dasharray:8 101;transform-origin:20px 20px;animation:1.62s ease-in-out infinite paint-wet;transform:rotate(-14deg)}.painted-head{transform-origin:20px 20px;animation:1.05s linear infinite paint-head}.clock-paused *{animation-play-state:paused!important}.clock-paused .painted-head{animation:none;transform:rotate(-124deg)}.clock-paused .painted-stroke{stroke-dasharray:62 101;animation:none}.clock-paused .painted-wet{stroke-dasharray:32 101;animation:none}.warm-loading{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:14px;min-height:100dvh;padding:24px;display:flex}.warm-loading p{max-width:310px;font-size:16px}.tangled-loader{width:180px;height:180px;position:relative}.tangled-loader img{object-fit:contain;width:100%;height:150px}.tangled-loader svg{width:150px;height:35px;position:absolute;bottom:0;left:15px;overflow:visible}.tangled-loader path{fill:none;stroke:var(--red);stroke-width:2.5px;stroke-linecap:round;stroke-dasharray:.4 1;animation:1.8s linear infinite tangled-run}.clock-paused .tangled-loader path{stroke-dasharray:1;stroke-dashoffset:0;animation:none}.native-empty{text-align:center;color:var(--muted);padding:32px 16px}.native-empty h2{color:var(--ink);margin:14px 0 8px}.native-empty p{max-width:390px;margin:auto;font-size:16px;line-height:1.5}.empty-art{width:190px;margin:auto;position:relative}.empty-art>img{object-fit:contain;transform-origin:bottom;width:170px;height:170px;animation:3s ease-in-out infinite idle-breath}.empty-art>.native-thread{position:absolute;bottom:-4px;right:-10px}.launch-moment{z-index:500;background:var(--paper);cursor:pointer;outline:none;flex-direction:column;justify-content:center;align-items:center;gap:20px;transition:opacity .12s ease-out;display:flex;position:fixed;inset:0}.launch-moment .native-brand{font-size:34px}.launch-moment.fading{opacity:0;pointer-events:none}.delight-cue{bottom:var(--nav-height);pointer-events:none;z-index:80;opacity:0;justify-content:center;align-items:flex-end;width:min(400px,100vw);height:300px;display:flex;position:fixed;left:50%;overflow:hidden;transform:translate(-50%)}.cue-person{transform-origin:bottom;flex:none;width:148.148px;height:210px;position:relative}.cue-person>img{object-fit:contain;width:100%;height:100%}.cue-card-mark{width:34.5%;height:15.52%;position:absolute;top:75.13%;left:29.5%;overflow:visible}.cue-check{fill:none;stroke:var(--red);stroke-width:3.5px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1px}.cue-dayCompleted>img,.cue-parentWave>img{z-index:2;width:auto;height:170px;position:relative}.cue-parentWave>img{height:140px}.reduced-cue{animation:.9s linear forwards cue-opacity}.reduced-cue.cue-dayCompleted{animation-duration:1.2s}.reduced-cue.cue-parentWave{animation-duration:.6s}.reduced-cue>img{height:140px}.cue-static-check{color:var(--red);padding-bottom:12px;font-size:30px}.confetti{pointer-events:none;position:absolute;inset:0}.confetti>i{opacity:0;border-radius:2px;width:6px;height:10px;animation:1.2s linear forwards confetti-burst;position:absolute;top:40%;left:50%}.native-modal-backdrop{z-index:120;background:#061c5159;justify-content:center;align-items:flex-end;padding:16px;display:flex;position:fixed;inset:0}.native-help-sheet,.native-name-sheet{background:var(--paper);border-radius:28px;width:100%;max-width:560px;max-height:90dvh;padding:24px 20px;animation:.3s cubic-bezier(.32,.72,0,1) native-sheet-in;position:relative;overflow:auto;box-shadow:0 18px 70px #0003}.sheet-close{min-height:44px;margin-left:auto;padding:8px 12px;display:block}.native-help-sheet h1,.native-name-sheet h1{margin:12px 0;font-size:30px;line-height:1.15}.native-help-sheet h2{margin:24px 0 8px}.native-name-sheet form{margin-top:24px}.native-name-sheet p{color:var(--muted)}.native-login .login-copy p{font-size:16px;font-weight:400}.native-login .form label{font-size:15px;font-weight:600}.native-login input{font-size:17px}.native-login .login-links{gap:4px;margin:16px 0 0}.native-login .login-links button{min-height:44px;padding:10px 4px;font-size:16px;font-weight:600}.native-login footer{padding-top:20px}.login-step{animation:form-step-in .4s var(--spring-out)}.login-primary-wrap{position:relative}.login-primary-wrap .native-thread{position:absolute;top:-10px;right:0}.native-login .form{gap:14px;margin-top:24px}.native-login .full{margin:4px 0}.otp-field{margin:6px 0;position:relative}.otp-row{height:58px;position:relative}.otp-row>input{color:#0000;caret-color:#0000;width:100%;height:58px;box-shadow:none;z-index:1;background:0 0;border:0;padding:0;position:absolute;inset:0}.otp-row>input:focus-visible{outline:none}.otp-cards{pointer-events:none;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;height:58px;display:grid;position:relative}.otp-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;place-items:center;height:58px;font:600 26px/1 Geist,system-ui,sans-serif;transition:border-color .2s ease-out;display:grid;overflow:hidden}.otp-card>i{background:var(--line);border-radius:50%;width:4px;height:4px}.otp-active-ring{border:1.5px solid var(--blue);opacity:0;width:calc(16.6667% - 8.33333px);height:58px;transform:translateX(calc(var(--slot,0)*(100% + 10px))) scale(.94);transition:transform .24s linear(0,.28 15%,.65 35%,.92 65%,1),opacity .18s ease-out;border-radius:14px;position:absolute;top:0;left:0}.otp-active-ring.visible{opacity:1;transform:translateX(calc(var(--slot,0)*(100% + 10px))) scale(1)}.otp-digit{animation:.22s cubic-bezier(.22,1,.36,1) keycap-drop}.otp-row.has-error{animation:.45s linear otp-nudge}.otp-row.has-error .otp-card{border-color:var(--red-ink)}.otp-row.is-complete .otp-card{border-color:var(--blue);transition-delay:var(--settle-delay)}.otp-help>p{color:var(--muted);margin:0 0 4px;font-size:14px}.otp-help button{text-align:left;min-height:44px;box-shadow:none;justify-content:flex-start;padding:8px 0;font-size:15px;font-weight:600;display:flex}.otp-help button:disabled{opacity:.55;cursor:default}.native-introduction{z-index:130;background:var(--paper);color:var(--ink);animation:native-sheet-in .4s var(--spring-out);flex-direction:column;display:flex;position:fixed;inset:0;overflow:hidden}.native-introduction>header{justify-content:space-between;align-items:center;width:100%;max-width:560px;min-height:60px;margin:auto;padding:8px 20px 4px;display:flex}.native-introduction>header>span{color:var(--muted);font-variant-numeric:tabular-nums;font-size:14px;font-weight:600}.intro-scroll{flex:1;min-height:0;overflow:auto}.intro-page{text-align:center;max-width:520px;animation:intro-page-in .4s var(--spring-out);margin:auto;padding:8px 20px 24px}.intro-art{isolation:isolate;height:min(29dvh,280px);min-height:180px;max-height:280px;margin:4px 0 28px;position:relative}.intro-art>img{object-fit:contain;z-index:2;width:100%;height:100%;position:absolute;inset:0}.intro-circle{background:var(--yellow);border-radius:50%;width:calc(min(29dvh,280px)/1.21951);height:calc(min(29dvh,280px)/1.21951);position:absolute;top:calc(min(29dvh,280px)/50);left:calc(50% - min(29dvh,280px)/1.88679)}.intro-quarter{background:var(--royal-fill);border-radius:100% 0 0;width:calc(min(29dvh,280px)/2.77778);height:calc(min(29dvh,280px)/2.77778);position:absolute;top:0;right:0}.intro-art>.native-thread{z-index:1;position:absolute;bottom:-2%;left:-5%}.intro-bell{background:var(--royal-fill);color:#fff;border-radius:50%;place-items:center;width:calc(min(29dvh,280px)/1.6129);height:calc(min(29dvh,280px)/1.6129);display:grid;position:absolute;top:12%;left:50%;transform:translate(-50%)}.intro-bell svg{transform-origin:50% 20%;width:48%;height:48%;animation:.6s cubic-bezier(.22,1,.36,1) bell-bounce}.intro-page h1{letter-spacing:-.02em;margin:0 0 16px;font-size:30px;line-height:1.15}.intro-page>p{color:var(--muted);margin:0;font-size:17px;line-height:1.42}.intro-permission{flex-direction:column;gap:6px;margin:24px 0 0;display:flex}.intro-permission strong{font-size:16px}.intro-permission small{font-size:14px}.intro-footer{padding:16px 20px max(20px,env(safe-area-inset-bottom));width:100%;max-width:460px;color:var(--ink);margin:0 auto;font-size:16px;display:block}.intro-progress{justify-content:center;gap:6px;margin:0 0 16px;display:flex}.intro-progress i{background:var(--line);width:8px;height:8px;transition:width .26s var(--spring-out),background .26s ease-out;border-radius:8px}.intro-progress .selected{background:var(--royal-fill);width:22px}.intro-next{justify-content:space-between;align-items:center;gap:16px;display:flex}.intro-next>.primary{width:55%;max-width:220px}.intro-next>.plain{font-size:16px}.intro-footer .full{margin:0 0 8px}.intro-footer .plain{color:var(--blue)}@keyframes thread-draw{to{stroke-dashoffset:0}}@keyframes thread-confirm{0%,78%{opacity:1}to{opacity:0}}@keyframes motion-fade{0%{opacity:0}to{opacity:1}}@keyframes paint-head{0%{transform:rotate(-90deg)}to{transform:rotate(270deg)}}@keyframes paint-breath{0%,to{stroke-dasharray:16 101}50%{stroke-dasharray:62 101}}@keyframes paint-wet{0%,to{stroke-dasharray:8 101}50%{stroke-dasharray:32 101}}@keyframes tangled-run{0%{stroke-dashoffset:1px}to{stroke-dashoffset:-.4px}}@keyframes idle-breath{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}@keyframes cue-opacity{0%{opacity:0}16.7%,83.3%{opacity:1}to{opacity:0}}@keyframes confetti-burst{0%{opacity:1;transform:translate(0,0) rotate(var(--turn))}25%{opacity:.75;transform:translate(calc(var(--dx)*.25),calc(var(--up)*.25 + 9.375px)) rotate(calc(var(--turn) + 37.5deg))}50%{opacity:.5;transform:translate(calc(var(--dx)*.5),calc(var(--up)*.5 + 37.5px)) rotate(calc(var(--turn) + 75deg))}75%{opacity:.25;transform:translate(calc(var(--dx)*.75),calc(var(--up)*.75 + 84.375px)) rotate(calc(var(--turn) + 112.5deg))}to{opacity:0;transform:translate(var(--dx),calc(var(--up) + 150px)) rotate(calc(var(--turn) + 150deg))}}@keyframes native-sheet-in{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes form-step-in{0%{filter:blur(4px);opacity:0;transform:translateY(10px)}to{filter:blur();opacity:1;transform:translateY(0)}}@keyframes keycap-drop{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@keyframes otp-nudge{0%,to{transform:translate(0)}12.5%{transform:translate(4.375px)}37.5%{transform:translate(-3.125px)}62.5%{transform:translate(1.875px)}87.5%{transform:translate(-.625px)}}@keyframes intro-page-in{0%{opacity:0;transform:translate(18px)}to{opacity:1;transform:translate(0)}}@keyframes bell-bounce{0%{transform:rotate(0)scale(1)}25%{transform:rotate(-13deg)scale(1.08)}55%{transform:rotate(10deg)scale(1.03)}80%{transform:rotate(-3deg)}to{transform:rotate(0)scale(1)}}@media (height<=640px){.intro-art{height:180px;min-height:180px}.intro-page h1{font-size:26px}.intro-footer{padding-top:8px}.intro-page{padding-top:0}}@media (prefers-reduced-motion:reduce){button:active,.button:active{opacity:.85;transform:none}.native-thread.draw-thread path{stroke-dashoffset:0;animation:.2s ease-out motion-fade!important}.confirm-thread{animation:.97s linear thread-confirm!important}.otp-row,.otp-digit,.intro-bell svg,.login-step,.intro-page,.native-introduction,.native-help-sheet,.native-name-sheet{filter:none!important;animation:none!important}.otp-active-ring{transition:none!important}.idle-breath{animation:none!important}.reduced-cue{animation:.9s linear cue-opacity!important}.reduced-cue.cue-dayCompleted{animation-duration:1.2s!important}.reduced-cue.cue-parentWave{animation-duration:.6s!important}.painted-head,.painted-stroke,.painted-wet{animation:none!important}.painted-head{transform:rotate(-124deg)}.painted-stroke{stroke-dasharray:62 101}.painted-wet{stroke-dasharray:32 101}.tangled-loader path{stroke-dasharray:1;animation:none!important}}.native-login input:focus-visible{border-color:var(--blue);box-shadow:none;outline:none}.native-login input{font-weight:400}.otp-row.has-error .otp-active-ring{border-color:var(--red-ink)}.plain-action{padding:0 20px 24px}.pushed-screen main:has(.plain-action){padding-left:0;padding-right:0}.action-scope{gap:12px;margin:0 0 20px;display:flex}.action-scope>label{flex:1;min-width:0;font-size:12px;font-weight:600}.action-scope select,.action-scope input{height:44px;min-height:44px;font-size:14px;font-weight:400}.teacher-blue-sheet{background:var(--teacher-sheet);color:var(--teacher-ink);text-align:center;padding:6px 20px 60px}.teacher-blue-sheet .action-scope{max-width:520px;margin:0 auto 20px}.teacher-blue-sheet .action-scope>label{color:var(--teacher-muted);text-align:left}.teacher-blue-sheet .action-scope input,.teacher-blue-sheet .action-scope select{color:#fff;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#ffffff1f;border:1px solid #ffffff59}.teacher-blue-sheet option{color:var(--ink);background:var(--surface)}.native-segments{scrollbar-width:none;overscroll-behavior-x:contain;gap:8px;max-width:100%;padding:4px 0;display:flex;overflow-x:auto}.native-segments>button{background:var(--surface);min-height:44px;color:var(--ink);border:1px solid var(--line);box-shadow:none;white-space:nowrap;border-radius:30px;flex-shrink:0;padding:10px 14px;font-size:15px;font-weight:600}.native-segments>button.selected{background:var(--royal-fill);color:#fff;border-color:var(--royal-fill)}.native-segments.on-blue>button{color:var(--teacher-ink);border-color:var(--teacher-muted);background:0 0}.native-segments.on-blue>button.selected{background:var(--yellow);color:#061c51;border-color:var(--yellow)}.teacher-blue-sheet>.native-segments{max-width:520px;margin:0 auto 18px}.hero-question{color:#fff;letter-spacing:-.02em;max-width:450px;margin:16px auto 12px;font-family:Figtree,Geist,sans-serif;font-size:40px;font-weight:900;line-height:1.1}.hero-number{color:#fff;font-variant-numeric:tabular-nums;margin:8px 0;font:900 72px/1.1 Figtree,Geist,sans-serif}.hero-phrase{color:var(--teacher-muted);margin:8px 0 18px;font-size:16px;font-weight:600}.meal-arc{aspect-ratio:1.9;outline-offset:8px;max-width:320px;margin:0 auto;padding:0;position:relative}.meal-arc>svg{touch-action:pan-y;width:100%;height:100%;display:block}.arc-track{stroke:#d6e2ff59}.arc-fill{stroke:var(--yellow)}.arc-ticks{pointer-events:none;position:absolute;inset:0}.arc-ticks>button{pointer-events:auto;min-width:44px;min-height:44px;color:var(--teacher-muted);box-shadow:none;white-space:nowrap;background:0 0;border:0;padding:8px 3px;font-size:15px;position:absolute;transform:translate(-50%,-50%)}.arc-ticks>button.selected{color:#fff;font-weight:800}.arc-ticks>button:active{transform:translate(-50%,-50%)scale(.97)}.teacher-paper-sheet{background:var(--paper);border-radius:28px 28px 0 0;min-height:35vh;margin-top:-28px;padding:24px 20px 28px;position:relative}.teacher-paper-sheet>h2{margin:0 0 12px;font:600 17px/1.4 Geist,system-ui,sans-serif}.present-avatar-strip{gap:6px;margin-bottom:12px;display:flex;overflow-x:auto}.initials-avatar{background:var(--blue-tint);width:44px;height:44px;color:var(--ink);pointer-events:none;border-radius:50%;flex-shrink:0;place-items:center;font:900 17px/1 Figtree,Geist,sans-serif;display:grid}.initials-avatar.small{width:34px;height:34px;font-size:13px}.native-child-row{padding:14px 0}.child-row-title{align-items:center;gap:10px;display:flex}.child-row-title strong{font-size:16px;font-weight:600;line-height:1.4}.child-row-title small{margin-top:3px;font-size:13px}.attendance-toggle{width:44px;height:44px;min-height:44px;box-shadow:none;background:0 0;border:0;padding:9px;position:relative}.attendance-toggle:before{content:"";border:2px solid var(--tertiary);border-radius:50%;position:absolute;inset:11px}.attendance-toggle.present{color:#061c51}.attendance-toggle.present:before{z-index:0;background:#149e5e;border-color:#149e5e}.attendance-toggle.present{text-shadow:0 0 #061c51;font-size:23px}.child-row-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:7px;margin-left:44px;display:flex}.child-row-actions .check{min-height:44px;font-size:12px}.child-row-actions>a{font-size:13px;font-weight:600}.attendance-group-buttons{flex-wrap:wrap;gap:8px;padding-top:14px;display:flex}.attendance-group-buttons>button{white-space:nowrap;flex:1}.exception-toggle{flex-direction:row;align-items:center;gap:6px;max-width:105px;min-height:44px;font-size:12px;display:flex}.exception-toggle input{width:20px;height:20px;min-height:20px;accent-color:var(--royal-fill);flex:none}.native-child-row.excluded{background:var(--sunken);border-radius:14px;margin:0 -8px;padding-left:8px;padding-right:8px}.individual-measurement{flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;display:flex}.individual-measurement .native-segments{flex:1}.individual-measurement .native-segments>button{min-height:44px;padding:8px 9px;font-size:13px}.individual-measurement>button{min-height:44px;padding:8px 12px;font-size:13px}.duration-stepper{justify-content:center;align-items:center;gap:16px;margin:18px 0;display:flex}.duration-stepper>button{width:56px;height:56px;min-height:56px;color:var(--royal-fill);box-shadow:none;background:#fff;border:0;border-radius:50%;padding:0;font-size:26px;font-weight:900}.duration-stepper>input{color:inherit;text-align:center;font-variant-numeric:tabular-nums;appearance:textfield;background:0 0;border:0;width:min(210px,50%);height:64px;min-height:64px;padding:0;font:900 56px/1 Figtree,Geist,sans-serif}.duration-stepper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.duration-stepper input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.individual-measurement .duration-stepper{flex:1;gap:4px;margin:0}.individual-measurement .duration-stepper>input{border:1px solid var(--line);background:var(--surface);width:65px;height:44px;min-height:44px;color:var(--ink);border-radius:13px;font:700 20px/1 Geist,system-ui,sans-serif}.individual-measurement .duration-stepper>button{background:var(--sunken);width:44px;height:44px;min-height:44px;color:var(--ink);font-size:22px}.native-save-bar{z-index:35;left:50%;bottom:var(--nav-height);background:var(--paper);border-top:1px solid var(--line);width:min(100%,680px);box-shadow:0 -10px 20px color-mix(in srgb,var(--paper) 85%,transparent);padding:12px 20px 16px;position:fixed;transform:translate(-50%)}.native-save-bar>strong{font-size:16px;line-height:1.4;display:block}.native-save-bar>small{font-size:13px}.save-bar-button{position:relative}.save-bar-button>.native-thread{position:absolute;top:-10px;right:0}.native-save-bar button{margin-bottom:0}.native-result{color:#fff;background:#061c51;border-radius:16px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin:12px 0;padding:10px 14px;display:flex}.native-result>span{font-size:15px;font-weight:600}.native-result button{color:var(--yellow);box-shadow:none;background:0 0;border:0;min-height:44px;padding:8px;font-size:15px}.native-result .success{color:#fff}.native-editor{margin:12px 0 20px}.native-editor>h2{margin:24px 0 10px;font-size:17px}.native-editor .native-list-group{margin-bottom:20px;padding:14px 16px}.native-editor label{margin:8px 0 16px;font-size:15px;font-weight:600}.native-editor label:last-child{margin-bottom:0}.native-editor input,.native-editor select,.native-editor textarea{font-size:16px;font-weight:400}.native-editor .check{flex-direction:row;gap:10px;min-height:52px;margin:0;font-weight:400;display:flex}.native-editor fieldset{border:1px solid var(--line);min-width:0}.native-editor legend{float:left;width:100%;padding:0 0 12px;font:600 17px/1.4 Geist,system-ui,sans-serif}.native-editor textarea{background:0 0;border:0;min-height:120px;padding:0;font-size:16px;line-height:1.4}.native-editor .counter{text-align:right;font-variant-numeric:tabular-nums;margin-top:7px;font-size:12px}.native-editor .native-list-group>small{font-size:13px}.photo-composer>img{object-fit:contain;background:var(--sunken);border-radius:14px;width:100%;max-height:300px}.photo-preview-empty{color:var(--muted);background:var(--sunken);border-radius:14px;align-items:center;gap:10px;margin-bottom:12px;padding:18px;display:flex}.photo-composer .row{margin:10px 0}.photo-composer .file-button{min-height:44px;padding:9px 12px;font-size:14px;position:relative}.photo-composer .file-button input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.native-warning,.read-only-notice{background:var(--yellow-tint);color:var(--ink);border-radius:14px;padding:14px;font-size:14px;line-height:1.45}.teacher-blue-sheet .read-only-notice{color:#fff;background:#ffffff1c}.native-receipt{text-align:center;padding:30px 0}.native-receipt>img{object-fit:contain;max-width:220px;height:160px;margin-bottom:20px}.native-receipt h1{font-size:30px}.native-receipt p{color:var(--muted);font-size:16px}.completion-review{padding:20px}.completion-review h1{font-size:26px}.completion-review p{font-size:16px}.compact{min-height:44px;padding:8px 12px}@media (width<=360px){.hero-question{font-size:34px}.hero-number{font-size:64px}.native-segments>button{padding:10px 12px;font-size:14px}.duration-stepper{gap:12px}.duration-stepper>input{font-size:48px}.child-row-actions{margin-left:0}.individual-measurement{gap:4px}}@media (prefers-reduced-motion:reduce){.meal-arc *,.duration-stepper input{transition:none!important;animation:none!important}}.teacher-paper-sheet .child-measurements{padding:0 14px}.native-child-row.excluded .child-row-title small{color:var(--red-ink)}.native-child-row.excluded{border-left:3px solid var(--red);background:0 0;border-radius:0;margin:0;padding-left:10px;padding-right:0}.native-child-row.excluded .exception-toggle{color:var(--red-ink)}.native-child-row .individual-measurement{padding-left:44px}.native-child-row .individual-measurement .native-segments{flex-wrap:wrap;flex-basis:100%;gap:5px;width:100%;overflow:visible}.individual-measurement .native-segments>button{flex:1;min-width:44px;padding:9px 3px}.native-child-row .individual-measurement>.plain{margin-left:auto}.attendance-toggle.present{background:var(--green-tint);border-radius:50%}.attendance-toggle.present:before{display:none}.initials-avatar.avatar-arch{border-radius:50% 50% 6px 6px}.initials-avatar.avatar-square{border-radius:12px}.initials-avatar.tone-yellow{background:var(--yellow-tint)}.initials-avatar.tone-red{background:var(--red-tint)}.native-teacher-home .group-actions strong{overflow-wrap:normal;word-break:normal;white-space:nowrap;font-size:13px}.native-teacher-home .group-actions button{min-height:100px}.native-day-rail strong{word-break:normal;overflow-wrap:normal;white-space:nowrap;font-size:12px}.native-day-rail button{min-width:84px}.native-day-rail:before{background:var(--red);height:2px}.native-teacher-home .home-day-tasks>h2,.native-teacher-home .home-children>h2{margin:28px 0 10px}.home-day-tasks .native-list-row{text-align:left;width:100%;box-shadow:none;background:0 0;border:0;border-radius:0;justify-content:flex-start;padding:12px 0}.home-day-tasks .native-list-row:not(:last-child){border-bottom:1px solid var(--line)}.home-day-tasks .native-list-row small{font-size:13px;font-weight:400}.home-day-tasks .native-list-row:active{opacity:.6;transform:none}.exceptions-disclosure{justify-content:flex-start;gap:8px;min-height:44px;padding:8px 0;font-size:15px}.exceptions-disclosure small{font-size:12px}.exceptions-disclosure svg:last-child{margin-left:auto}.home-exceptions{border:0;margin:0;padding:6px 0}.home-exceptions .check{flex-wrap:wrap;min-height:48px;font-size:14px}.home-exceptions small{flex-basis:100%;margin-left:32px}.native-teacher-home progress{width:100%;height:7px;accent-color:var(--green);margin-top:12px}.native-teacher-home .home-children{scroll-margin-top:14px}.native-teacher-home .native-list-group{padding:0 14px}.native-teacher-home .native-child-row{padding:9px 0}.native-teacher-home .native-child-row strong{font-size:15px}.native-teacher-home .count-tile{height:92px}.native-teacher-home .day-progress small{font-size:11px}.teacher-paper-sheet .individual-measurement{padding-left:0}.teacher-value-pill{border:1.5px solid var(--blue);height:34px;min-height:34px;color:var(--blue);white-space:nowrap;box-shadow:none;border-radius:30px;flex-shrink:0;padding:0 12px;font-size:14px;font-weight:700}.teacher-value-pill.filled{background:var(--royal-fill);color:#fff;border-color:var(--royal-fill)}.exclude-button{width:44px;height:44px;min-height:44px;color:var(--muted);box-shadow:none;background:0 0;border:0;flex-shrink:0;padding:12px}.exclude-button>svg{width:20px;height:20px}.exclude-button.excluded{color:var(--red-ink);padding:4px;font-size:26px}.measurement-menu-backdrop{z-index:200;background:#061c5118;position:fixed;inset:0}.measurement-menu{background:var(--surface);border:1px solid var(--line);transform-origin:90% 0;border-radius:16px;width:190px;padding:8px 0;animation:.18s cubic-bezier(.22,1,.36,1) measurement-menu-in;position:absolute;overflow:hidden;box-shadow:0 15px 50px #061c5133}.measurement-menu>strong{color:var(--muted);padding:8px 14px;font-size:12px;line-height:1.3;display:block}.measurement-menu .menu-option{text-align:left;width:100%;min-height:44px;box-shadow:none;background:0 0;border:0;border-radius:0;justify-content:space-between;padding:10px 14px;font-size:16px;font-weight:400;display:flex}.measurement-menu .menu-option:not(:last-child){border-bottom:1px solid var(--line)}.measurement-menu .destructive{color:var(--red-ink);font-size:14px}.measurement-menu .duration-stepper{gap:2px;margin:0;padding:8px}.measurement-menu .duration-stepper>input{width:54px;height:44px;min-height:44px;font-size:22px}.measurement-menu .duration-stepper>button{background:var(--sunken);width:44px;height:44px;min-height:44px;color:var(--ink)}.child-row-title .teacher-value-pill{margin-left:4px}.child-measurements .child-row-title .grow{min-width:70px}.native-child-row .child-row-title{gap:10px}.native-child-row .child-row-title>small{font-size:13px}.teacher-paper-sheet .present-avatar-strip{margin-top:12px}.teacher-paper-sheet>p.muted{display:none}.native-child-row:not(:last-child){border-bottom:1px solid var(--line)}.teacher-paper-sheet .native-list-group{margin-top:20px;padding:0}.teacher-paper-sheet .native-child-row{min-height:64px;padding:10px 6px 10px 16px}.teacher-paper-sheet .native-child-row:not(:last-child){border-bottom:0;position:relative}.teacher-paper-sheet .native-child-row:not(:last-child):after{content:"";background:var(--line);height:1px;position:absolute;bottom:0;left:68px;right:0}.teacher-paper-sheet .native-child-row.excluded{border-left:4px solid var(--red);padding-left:12px}.teacher-blue-sheet{padding-top:6px}.teacher-paper-sheet>.native-result{margin-top:20px}@keyframes measurement-menu-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.measurement-menu{animation:none}}.pushed-header{z-index:50;background:var(--paper);position:sticky;top:0}.one-action-screen .pushed-header{background:#123a9c}.teacher-save-summary{align-items:center;gap:12px;font-size:16px;font-weight:600;display:flex}.teacher-save-summary .native-icon-box{width:40px;height:40px}.teacher-paper-sheet>h2{font-size:17px;font-weight:700}.measurement-menu .menu-option:active{background:var(--sunken);transform:none}.one-action-screen .native-back{background:#5ba1ff;border:1px solid #83c6ff}.demo-controls{z-index:90;background:var(--paper,#fff9ed);border-bottom:1px solid #ded8ca;gap:4px;padding:8px 16px;display:grid;position:sticky;top:0}.demo-controls>span{font-size:12px}.demo-controls .pills{flex-wrap:wrap;margin:0}
