:host{display:block;min-height:100vh;background:var(--surface);color:var(--on-surface)}.teacher-shell{display:grid;grid-template-columns:16.5rem minmax(0,1fr);min-height:100vh;background:var(--surface)}.teacher-sidebar{display:flex;flex-direction:column;gap:2rem;padding:2rem 1.25rem;background:var(--surface-container-low)}.teacher-sidebar__brand{display:flex;align-items:center;gap:.9rem;padding:.5rem .75rem;color:inherit;text-decoration:none}.teacher-sidebar__logo{width:8.4rem;height:auto}.teacher-sidebar__brand-copy p{margin:.125rem 0 0;color:#53433e73;font-size:.7rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.teacher-sidebar__nav{display:grid;gap:.4rem}.teacher-sidebar__link{display:flex;align-items:center;gap:1rem;width:100%;border-radius:1.75rem;padding:1rem 1.1rem;color:#1b1c1999;text-align:left;transition:background .2s ease,color .2s ease,transform .2s ease}.teacher-sidebar__link:hover{background:#ffffff80}.teacher-sidebar__link--active{background:var(--surface-container-lowest);color:var(--primary);box-shadow:inset -3px 0 0 var(--primary),var(--shadow-sunlight)}.teacher-sidebar__link .material-symbols-outlined{font-size:1.35rem}.teacher-sidebar__link span:last-child{font-family:Manrope,sans-serif;font-size:.95rem;font-weight:700;letter-spacing:-.02em}.teacher-main{min-width:0;background:var(--surface)}.teacher-topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1.85rem 2.25rem 1.5rem;background:#fbf9f4cc;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px)}.teacher-topbar__intro{min-width:0}.teacher-topbar__eyebrow{display:inline-block;margin-bottom:.45rem;color:var(--primary);font-size:.8rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.teacher-topbar__title{margin:0;font-family:Manrope,sans-serif;font-size:clamp(2.2rem,4vw,3.25rem);line-height:.98;font-weight:900;letter-spacing:-.05em;color:var(--primary)}.teacher-topbar__right{display:flex;align-items:center;gap:1.5rem}.teacher-topnav{display:flex;align-items:center;gap:1.8rem}.teacher-topnav__link{color:#1b1c19b3;font-family:Manrope,sans-serif;font-size:1rem;font-weight:600;transition:color .2s ease}.teacher-topnav__link:hover{color:var(--primary)}.teacher-topnav__link--active{color:var(--primary);font-weight:800}.teacher-topbar__actions{display:flex;align-items:center;gap:.9rem}.teacher-notifications{position:relative}.teacher-icon-button{display:inline-flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;border-radius:9999px;color:#1b1c19b8;transition:background .2s ease}.teacher-icon-button:hover{background:var(--surface-container-low)}.teacher-icon-button--notification{position:relative}.teacher-icon-button__badge{position:absolute;top:.2rem;right:.15rem;display:inline-flex;align-items:center;justify-content:center;min-width:1.1rem;height:1.1rem;border-radius:9999px;padding:0 .2rem;background:var(--primary);color:var(--on-primary);font-family:Manrope,sans-serif;font-size:.68rem;font-weight:800;line-height:1}.teacher-notification-panel{position:absolute;top:calc(100% + .8rem);right:0;z-index:30;width:min(25rem,100vw - 2rem);border-radius:2rem;padding:1rem;background:#fffffff5;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);box-shadow:0 24px 48px #1b1c191a}.teacher-notification-panel__header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}.teacher-notification-panel__header h3{margin:0;font-family:Manrope,sans-serif;font-size:1.25rem;font-weight:800;letter-spacing:-.03em}.teacher-notification-panel__header p{margin:.2rem 0 0;color:var(--on-surface-variant);font-size:.9rem}.teacher-notification-list{display:grid;gap:.65rem;max-height:22rem;overflow-y:auto}.teacher-notification-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:.85rem;width:100%;border-radius:1.5rem;padding:.95rem;background:var(--surface-container-low);text-align:left;transition:transform .2s ease,background .2s ease}.teacher-notification-item:hover{transform:translateY(-1px)}.teacher-notification-item--unread{background:#ffdbcf8c}.teacher-notification-item__icon{display:inline-flex;align-items:center;justify-content:center;width:2.35rem;height:2.35rem;border-radius:9999px;background:var(--surface-container-lowest);color:var(--primary);box-shadow:0 0 0 1px #d9c2ba38}.teacher-notification-item[data-tone=secondary] .teacher-notification-item__icon{color:var(--secondary)}.teacher-notification-item[data-tone=tertiary] .teacher-notification-item__icon{color:var(--tertiary)}.teacher-notification-item__copy{display:grid;gap:.25rem}.teacher-notification-item__copy strong{color:var(--on-surface);font-family:Manrope,sans-serif;font-size:.98rem;font-weight:800;letter-spacing:-.02em}.teacher-notification-item__copy span{color:var(--on-surface-variant);line-height:1.5}.teacher-notification-item__copy small{color:#53433e8c;font-size:.82rem;font-weight:700}.teacher-notification-item__dot{width:.55rem;height:.55rem;border-radius:50%;margin-top:.45rem;background:var(--primary)}.teacher-profile-button{position:relative;display:inline-flex;align-items:center;justify-content:center;overflow:hidden;width:3rem;height:3rem;border-radius:9999px;background:var(--surface-container-lowest);box-shadow:0 0 0 2px #cc7e6147}.teacher-profile-button__image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.teacher-profile-button__fallback,.teacher-settings-card__avatar-fallback{display:grid;place-items:center;width:100%;height:100%;color:var(--primary);font-family:Manrope,sans-serif;font-size:.95rem;font-weight:800;letter-spacing:-.03em;background:var(--surface-container-low)}.teacher-content{padding:0 2.25rem 2.5rem}.teacher-panel-grid{display:grid;grid-template-columns:minmax(0,1fr) 21rem;gap:2rem}.teacher-panel-grid__main{min-width:0}.teacher-section-header{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;margin-bottom:1.5rem}.teacher-section-header__title{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.teacher-section-header__actions{display:flex;align-items:center;gap:.85rem}.teacher-section-header__title h2{margin:0;font-family:Manrope,sans-serif;font-size:2.05rem;font-weight:800;letter-spacing:-.03em}.teacher-class-picker{display:inline-flex;align-items:center;gap:.85rem;border-radius:9999px;padding:.45rem .5rem .45rem 1rem;background:var(--surface-container-lowest);box-shadow:var(--shadow-sunlight)}.teacher-class-picker span{color:var(--primary);font-family:Manrope,sans-serif;font-size:.78rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.teacher-class-picker select{border:0;border-radius:9999px;padding:.55rem .85rem;background:var(--surface-container-low);color:var(--on-surface);font-family:Manrope,sans-serif;font-size:.95rem;font-weight:700;outline:none}.teacher-section-header__stats{display:flex;align-items:center;gap:.85rem;flex-wrap:wrap}.teacher-pill{display:inline-flex;align-items:center;gap:.55rem;border-radius:9999px;padding:.7rem 1rem;font-family:Manrope,sans-serif;font-size:.95rem;font-weight:700}.teacher-pill--present{background:var(--secondary-container);color:var(--on-secondary-container)}.teacher-pill--absent{background:var(--surface-container-lowest);color:var(--on-surface-variant)}.teacher-pill__dot{width:.45rem;height:.45rem;border-radius:50%;background:var(--secondary)}.teacher-children-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.35rem}.teacher-round-add{position:relative;display:inline-flex;align-items:center;justify-content:center;width:3rem;height:3rem;border-radius:9999px;background:var(--surface-container-lowest);color:var(--primary);box-shadow:var(--shadow-sunlight);transition:transform .2s ease,box-shadow .2s ease}.teacher-round-add:after{content:attr(data-tooltip);position:absolute;top:calc(100% + .65rem);right:0;border-radius:9999px;padding:.5rem .8rem;background:var(--surface-container-lowest);color:var(--primary);font-family:Manrope,sans-serif;font-size:.78rem;font-weight:700;white-space:nowrap;box-shadow:var(--shadow-sunlight);opacity:0;pointer-events:none;transform:translateY(-4px);transition:opacity .2s ease,transform .2s ease}.teacher-round-add:hover{transform:translateY(-1px);box-shadow:0 24px 40px #1b1c1914}.teacher-round-add:hover:after{opacity:1;transform:translateY(0)}.child-card{position:relative;display:flex;flex-direction:column;gap:1.15rem;min-height:13.5rem;border-radius:2.2rem;padding:1.5rem;background:var(--surface-container-lowest);box-shadow:var(--shadow-sunlight);transition:transform .2s ease,box-shadow .2s ease}.child-card:hover{transform:translateY(-2px)}.child-card--selected{box-shadow:0 0 0 2px #8f4c332e,var(--shadow-sunlight)}.child-card__header{display:grid;grid-template-columns:4.2rem minmax(0,1fr) auto;align-items:center;gap:1rem;text-align:left}.child-card__avatar{position:relative;overflow:hidden;width:4.2rem;height:4.2rem;border-radius:1.45rem;background:var(--surface-container-low)}.child-card__avatar-image,.teacher-detail-panel__avatar-image,.attendance-row__avatar-image,.children-list__avatar-image,.teacher-settings-card__avatar-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform-origin:center}.child-card__avatar-fallback,.teacher-detail-panel__avatar-fallback,.attendance-row__avatar-fallback,.children-list__avatar-fallback{display:grid;place-items:center;width:100%;height:100%;color:var(--primary);font-family:Manrope,sans-serif;font-weight:800;background:var(--surface-container-low)}.child-card__copy h3{margin:0;font-family:Manrope,sans-serif;font-size:1.25rem;font-weight:800;letter-spacing:-.03em}.child-card__copy p{margin:.2rem 0 0;color:var(--on-surface-variant);font-size:.95rem}.child-card__selected-icon{color:var(--primary);font-size:1.7rem}.child-card__actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}.child-action{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.4rem;min-height:4.8rem;border-radius:1.55rem;background:var(--surface-container-low);color:var(--on-surface-variant);transition:transform .2s ease,background .2s ease,color .2s ease}.child-action:hover{transform:translateY(-2px)}.child-action span:last-child{font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.child-action--meal.child-action--active{background:#f5e2a1b3;color:var(--tertiary)}.child-action--rest.child-action--active,.child-action--change.child-action--active{background:var(--secondary-container);color:var(--secondary)}.teacher-timeline-card,.teacher-empty-card,.teacher-settings-card,.teacher-side-form,.teacher-view,.calendar-card,.attendance-row,.children-list__item,.activity-list__item{background:var(--surface-container-lowest);box-shadow:var(--shadow-sunlight)}.teacher-timeline-card{margin-top:1.8rem;border-radius:var(--radius-xl);padding:2rem 2.2rem}.teacher-timeline-card--standalone{margin-top:0}.teacher-timeline-card__header{display:flex;align-items:center;gap:.9rem;margin-bottom:1.75rem}.teacher-timeline-card__header .material-symbols-outlined{color:var(--primary);font-size:2rem}.teacher-timeline-card__header h3{margin:0;font-family:Manrope,sans-serif;font-size:1.8rem;font-weight:800;letter-spacing:-.03em}.teacher-timeline{position:relative;display:grid;gap:1.5rem}.teacher-timeline:before{content:"";position:absolute;left:.65rem;top:.5rem;bottom:.5rem;width:2px;background:linear-gradient(to bottom,rgba(143,76,51,.28),rgba(204,126,97,.1),transparent)}.teacher-timeline__item{position:relative;display:grid;grid-template-columns:1.4rem minmax(0,1fr) max-content;gap:1rem;align-items:start}.teacher-timeline__dot{width:.7rem;height:.7rem;border-radius:50%;margin-top:.45rem;background:var(--primary);box-shadow:0 0 0 5px #f5f3ee}.teacher-timeline__item[data-tone=neutral] .teacher-timeline__dot{background:var(--primary-container)}.teacher-timeline__item[data-tone=muted] .teacher-timeline__dot{background:#d9c2bab3}.teacher-timeline__copy h4{margin:0 0 .35rem;font-family:Manrope,sans-serif;font-size:1.1rem;font-weight:800;letter-spacing:-.02em}.teacher-timeline__copy p{margin:0;color:var(--on-surface-variant);line-height:1.6}.teacher-timeline__time{flex-shrink:0;border-radius:9999px;padding:.5rem .9rem;background:#cc7e612e;color:var(--primary);font-family:Manrope,sans-serif;font-size:.95rem;font-weight:700;white-space:nowrap}.teacher-timeline__item[data-tone=neutral] .teacher-timeline__time{background:var(--surface-container-low);color:var(--on-surface-variant)}.teacher-timeline__item[data-tone=muted]{opacity:.5}.teacher-detail-panel{position:sticky;top:6rem;align-self:start;display:flex;flex-direction:column;gap:1.35rem;border-radius:var(--radius-xl);padding:2rem 1.8rem;background:var(--surface-container-lowest);box-shadow:0 24px 48px #1b1c1914}.teacher-detail-panel__header{display:flex;flex-direction:column;align-items:center;text-align:center}.teacher-detail-panel__avatar{position:relative;overflow:hidden;width:5.4rem;height:5.4rem;border-radius:1.7rem;margin-bottom:1rem;background:var(--surface-container-low);box-shadow:var(--shadow-sunlight)}.teacher-detail-panel__header h3{margin:0;font-family:Manrope,sans-serif;font-size:2rem;font-weight:900;letter-spacing:-.04em}.teacher-detail-panel__header p{margin:.35rem 0 0;color:var(--on-surface-variant)}.teacher-detail-section{display:grid;gap:.8rem}.teacher-detail-section label{color:var(--on-surface-variant);font-family:Manrope,sans-serif;font-size:.86rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.teacher-detail-section__heading{display:flex;align-items:center;justify-content:space-between;gap:1rem}.teacher-inline-link{color:var(--primary);font-family:Manrope,sans-serif;font-size:.9rem;font-weight:700}.teacher-amount-row{display:flex;flex-wrap:wrap;gap:.5rem}.teacher-amount-chip{border-radius:9999px;padding:.75rem .95rem;background:var(--surface-container-low);color:#53433e8c;font-family:Manrope,sans-serif;font-size:.82rem;font-weight:700;text-transform:uppercase}.teacher-amount-chip--active{background:#f5e2a1e6;color:var(--tertiary)}.teacher-course-tags,.teacher-chip-grid{display:flex;flex-wrap:wrap;gap:.5rem}.teacher-course-tag,.teacher-chip-button{border-radius:9999px;padding:.55rem .85rem;background:var(--surface-container-low);color:var(--on-surface-variant);font-weight:700}.teacher-chip-button{transition:background .2s ease,color .2s ease}.teacher-chip-button--active{background:var(--secondary-container);color:var(--secondary)}.teacher-detail-text,.teacher-card-empty{margin:0;color:var(--on-surface-variant);line-height:1.6}.teacher-change-list{display:grid;gap:.6rem}.teacher-change-list__item{display:flex;align-items:center;justify-content:space-between;gap:1rem;border-radius:1rem;padding:.75rem .9rem;background:var(--surface-container-low)}.teacher-change-list__time{color:var(--primary);font-family:Manrope,sans-serif;font-weight:800}.teacher-change-list__value{color:var(--on-surface-variant);font-weight:700}.teacher-mood-row{display:flex;flex-wrap:wrap;gap:.65rem}.teacher-mood-button{display:flex;flex-direction:column;align-items:center;gap:.35rem;min-width:3.8rem;border-radius:1.35rem;padding:.8rem .55rem;background:var(--surface-container-low);transition:transform .2s ease,background .2s ease}.teacher-mood-button:hover{transform:translateY(-2px)}.teacher-mood-button--active{background:var(--secondary-container)}.teacher-mood-button span{font-size:1.35rem}.teacher-mood-button small{color:var(--on-surface-variant);font-size:.72rem;font-weight:700;text-transform:uppercase}.teacher-textarea,.teacher-field input,.teacher-field textarea,.teacher-field select{width:100%;border:0;border-radius:1.3rem;padding:1rem;background:var(--surface-container-low);color:var(--on-surface);outline:none;transition:box-shadow .2s ease,background .2s ease}.teacher-textarea:focus,.teacher-field input:focus,.teacher-field textarea:focus,.teacher-field select:focus{box-shadow:0 0 0 1px #8f4c332e,var(--shadow-sunlight);background:var(--surface-container-lowest)}.teacher-info-list{display:grid;gap:.45rem}.teacher-info-list p{margin:0;color:var(--on-surface-variant);line-height:1.55}.teacher-save-button{display:inline-flex;align-items:center;justify-content:center;gap:.75rem;width:100%;border-radius:1.8rem;padding:1.15rem 1.3rem;background:var(--primary);color:var(--on-primary);font-family:Manrope,sans-serif;font-size:1.1rem;font-weight:800;box-shadow:0 16px 32px #8f4c332e}.teacher-save-note{margin:0;color:#53433e6b;font-size:.8rem;line-height:1.5;text-align:center}.teacher-view{border-radius:var(--radius-xl);padding:1.75rem}.teacher-view--communications{display:grid;gap:1.5rem}.communications-layout{display:grid;grid-template-columns:20rem minmax(0,1fr);gap:1.25rem;min-height:36rem}.communications-thread-list,.communications-chat{border-radius:2rem;padding:1.25rem;background:var(--surface-container-low)}.communications-thread-list{display:grid;grid-template-rows:auto minmax(0,1fr);gap:1rem}.communications-thread-list__header h3,.communications-chat__header h3{margin:0;font-family:Manrope,sans-serif;font-size:1.25rem;font-weight:800;letter-spacing:-.03em}.communications-thread-list__header p,.communications-chat__header p,.communications-composer__actions p{margin:.25rem 0 0;color:var(--on-surface-variant);line-height:1.55}.communications-thread-list__items{display:grid;gap:.85rem;align-content:start}.communication-thread-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.65rem;align-items:center}.communication-thread-card--active .communication-thread{box-shadow:0 0 0 2px #8f4c3329,var(--shadow-sunlight)}.communication-thread{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:.9rem;width:100%;border-radius:1.6rem;padding:1rem;background:var(--surface-container-lowest);text-align:left;box-shadow:var(--shadow-sunlight);transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.communication-thread:hover{transform:translateY(-1px)}.communication-thread--unread{background:#ffdbcf75}.communication-thread__avatar{display:grid;place-items:center;width:2.9rem;height:2.9rem;border-radius:1rem;background:var(--surface-container-low);color:var(--primary);font-family:Manrope,sans-serif;font-size:1rem;font-weight:800;text-transform:uppercase}.communication-thread__copy{display:grid;gap:.2rem}.communication-thread__row{display:flex;align-items:baseline;justify-content:space-between;gap:1rem}.communication-thread__row strong{font-family:Manrope,sans-serif;font-size:1rem;font-weight:800;letter-spacing:-.02em}.communication-thread__row small{color:#53433e94;font-size:.8rem;font-weight:700;white-space:nowrap}.communication-thread__copy span,.communication-thread__copy p{margin:0;color:var(--on-surface-variant);line-height:1.5}.communication-thread__copy span{font-size:.85rem;font-weight:700}.communication-thread__copy p{font-size:.9rem}.communication-thread__dot{width:.6rem;height:.6rem;border-radius:50%;margin-top:.25rem;background:var(--primary)}.communication-thread-card__delete{display:inline-flex;align-items:center;justify-content:center;width:2.65rem;height:2.65rem;border-radius:9999px;background:#ffdad6d9;color:var(--error);transition:transform .2s ease,background .2s ease}.communication-thread-card__delete:hover{transform:translateY(-1px);background:#ffdad6}.communications-chat{display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:1rem;min-width:0;background:var(--surface-container-lowest);box-shadow:var(--shadow-sunlight)}.communications-chat__header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.communications-chat__subject{display:inline-flex;align-items:center;border-radius:9999px;padding:.55rem .85rem;background:#cc7e6129;color:var(--primary);font-family:Manrope,sans-serif;font-size:.84rem;font-weight:800;white-space:nowrap}.communications-messages{display:grid;gap:.85rem;align-content:start;max-height:26rem;overflow-y:auto;padding-right:.15rem}.communication-bubble{max-width:42rem;border-radius:1.75rem;padding:1rem 1.1rem;background:var(--surface-container-low)}.communication-bubble--teacher{margin-left:auto;background:#ffdbcf94}.communication-bubble__meta{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:.45rem}.communication-bubble__meta strong{font-family:Manrope,sans-serif;font-size:.95rem;font-weight:800;letter-spacing:-.02em}.communication-bubble__meta small{color:#53433e8c;font-size:.78rem;font-weight:700;white-space:nowrap}.communication-bubble p{margin:0;color:var(--on-surface);line-height:1.65}.communications-composer{display:grid;gap:.9rem}.communications-composer__actions{display:flex;align-items:center;justify-content:space-between;gap:1rem}.button[disabled]{opacity:.48;cursor:not-allowed;transform:none}.teacher-view--split{display:grid;grid-template-columns:minmax(0,1fr) 24rem;gap:1.8rem}.teacher-view__main{min-width:0}.attendance-list,.children-list,.activity-list{display:grid;gap:1rem}.attendance-row,.children-list__item,.activity-list__item{display:flex;align-items:center;justify-content:space-between;gap:1rem;border-radius:1.8rem;padding:1.2rem 1.35rem}.attendance-row__identity,.children-list__identity{display:flex;align-items:center;gap:1rem;text-align:left}.attendance-row__avatar,.children-list__avatar{position:relative;overflow:hidden;width:3.8rem;height:3.8rem;border-radius:1.35rem;background:var(--surface-container-low)}.attendance-row__identity h3,.children-list__identity h3,.activity-list__item h3,.calendar-card h3,.teacher-empty-card h3,.teacher-side-form__header h3,.teacher-settings-card h3{margin:0;font-family:Manrope,sans-serif;font-size:1.15rem;font-weight:800;letter-spacing:-.03em}.attendance-row__identity p,.children-list__identity p,.children-list__chips span,.activity-list__item p,.calendar-card p,.teacher-empty-card p,.teacher-side-form__header p{margin:.2rem 0 0;color:var(--on-surface-variant);line-height:1.55}.attendance-row__actions{display:flex;align-items:center;gap:.6rem}.attendance-toggle{border-radius:9999px;padding:.75rem 1rem;background:var(--secondary-container);color:var(--secondary);font-family:Manrope,sans-serif;font-weight:800}.attendance-toggle--muted{background:var(--surface-container-low);color:#53433ea6}.attendance-toggle:not(.attendance-toggle--active){opacity:.5}.teacher-side-form{border-radius:var(--radius-lg);padding:1.5rem}.teacher-side-form__header{margin-bottom:1.35rem}.teacher-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.teacher-field{display:grid;gap:.55rem}.teacher-field--full{grid-column:1/-1}.teacher-field span,.teacher-settings-group label{color:var(--on-surface-variant);font-family:Manrope,sans-serif;font-size:.82rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.children-list__chips{display:flex;flex-wrap:wrap;gap:.6rem}.children-list__chips span{border-radius:9999px;padding:.55rem .8rem;background:var(--surface-container-low);font-size:.85rem;font-weight:700}.teacher-inline-actions{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:flex-end}.classroom-list{display:grid;gap:1rem}.classroom-card{display:grid;gap:1.1rem;border-radius:var(--radius-lg);padding:1.35rem;background:var(--surface-container-lowest);box-shadow:var(--shadow-sunlight)}.classroom-card--selected{box-shadow:0 0 0 2px #8f4c332e,var(--shadow-sunlight)}.classroom-card__main{text-align:left}.classroom-card__main h3{margin:0;font-family:Manrope,sans-serif;font-size:1.35rem;font-weight:800;letter-spacing:-.03em}.classroom-card__main p{margin:.35rem 0 0;color:var(--on-surface-variant)}.classroom-card__meta{display:flex;flex-wrap:wrap;gap:.75rem}.activity-list__item span{border-radius:9999px;padding:.5rem .8rem;background:#cc7e612e;color:var(--primary);font-family:Manrope,sans-serif;font-weight:800}.activity-list__item{display:grid;gap:1rem}.activity-list__content{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.teacher-settings-card{display:grid;gap:1.5rem;border-radius:var(--radius-lg);padding:1.5rem}.teacher-settings-card__profile{display:flex;align-items:center;gap:1rem}.teacher-settings-card__avatar{position:relative;overflow:hidden;width:4.6rem;height:4.6rem;border-radius:1.45rem;background:var(--surface-container-low)}.teacher-settings-card__profile p{margin:.25rem 0 0;color:var(--on-surface-variant)}.teacher-settings-group{display:grid;gap:.8rem}.teacher-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;border-radius:1.4rem;padding:.95rem 1rem;background:var(--surface-container-low);color:var(--on-surface-variant);font-weight:700}.teacher-toggle-row--active{background:var(--secondary-container);color:var(--secondary)}.calendar-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.calendar-card{display:grid;gap:.85rem;border-radius:var(--radius-lg);padding:1.5rem}.calendar-card__day{display:inline-flex;justify-content:center;width:fit-content;border-radius:9999px;padding:.5rem .8rem;background:#cc7e612e;color:var(--primary);font-family:Manrope,sans-serif;font-size:.85rem;font-weight:800}.calendar-card[data-type=meeting] .calendar-card__day{background:var(--secondary-container);color:var(--secondary)}.calendar-card[data-type=deadline] .calendar-card__day{background:#f5e2a1b3;color:var(--tertiary)}.teacher-empty-card{display:grid;gap:.85rem;border-radius:var(--radius-lg);padding:1.75rem}.teacher-empty-card--panel{min-height:18rem;place-items:center;text-align:center}.teacher-empty-card--info{margin-top:1.25rem}.teacher-modal{width:min(100%,36rem);max-height:min(90vh,46rem);overflow-y:auto;border-radius:var(--radius-xl);padding:1.8rem;background:var(--surface-container-lowest);box-shadow:0 24px 48px #1b1c191a}.teacher-modal--wide{width:min(100%,58rem)}.teacher-modal__body h2{margin:0;font-family:Manrope,sans-serif;font-size:2rem;font-weight:800;letter-spacing:-.03em}.teacher-modal__body p{margin:.8rem 0 0;color:var(--on-surface-variant);line-height:1.6}.teacher-modal__option-grid,.teacher-modal__amount-grid{display:grid;gap:.8rem;margin-top:1.6rem}.teacher-modal__option-grid,.teacher-modal__option-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-modal__amount-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.teacher-modal__option,.teacher-modal__amount{border-radius:1.4rem;padding:1rem .9rem;background:var(--surface-container-low);color:var(--on-surface-variant);font-family:Manrope,sans-serif;font-weight:800;text-align:center}.teacher-modal__option--active,.teacher-modal__amount--active{background:var(--secondary-container);color:var(--secondary)}.teacher-modal__amount--active{background:#f5e2a1cc;color:var(--tertiary)}.teacher-modal__actions{display:flex;flex-wrap:wrap;gap:1rem;margin-top:1.8rem}.photo-editor{display:grid;gap:1rem}.photo-editor__upload{display:grid;justify-items:start;gap:.35rem;border-radius:1.8rem;padding:1.15rem 1.2rem;background:var(--surface-container-low);color:var(--on-surface-variant);cursor:pointer}.photo-editor__upload input{display:none}.photo-editor__upload .material-symbols-outlined{color:var(--primary)}.photo-editor__upload strong{font-family:Manrope,sans-serif;font-size:1rem;font-weight:800;color:var(--on-surface)}.photo-editor__upload small{line-height:1.55}.photo-editor__preview{position:relative;overflow:hidden;min-height:10.5rem;border-radius:2.2rem;background:linear-gradient(180deg,#f5f3ee,#f0eee9)}.photo-editor__preview-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform-origin:center}.photo-editor__empty{display:grid;place-items:center;gap:.45rem;min-height:10.5rem;color:#53433e8c;text-align:center}.photo-editor__empty .material-symbols-outlined{font-size:2rem;color:var(--primary)}.photo-editor__empty p{margin:0;font-weight:700}.photo-editor__controls{display:grid;gap:.85rem}.photo-editor__controls input[type=range]{padding:0;background:transparent;box-shadow:none}.guardian-grid{display:grid;gap:1rem}.guardian-card{display:grid;gap:1rem;border-radius:2rem;padding:.9rem;background:var(--surface-container-low)}.guardian-card h3{margin:0;font-family:Manrope,sans-serif;font-size:1rem;font-weight:800;letter-spacing:-.02em}.guardian-card .teacher-field input,.guardian-card .teacher-field select{background:var(--surface-container-lowest);box-shadow:0 0 0 1px #d9c2ba3d}.guardian-card .teacher-field input::placeholder{color:#53433e6b}.teacher-settings-note{margin:0;color:var(--on-surface-variant);line-height:1.55}@media(max-width:1279px){.teacher-panel-grid,.teacher-view--split,.communications-layout,.calendar-grid{grid-template-columns:1fr}.teacher-detail-panel{position:static}}@media(max-width:1023px){.teacher-shell{grid-template-columns:1fr}.teacher-sidebar{gap:1rem;padding-bottom:1rem}.teacher-sidebar__nav{grid-template-columns:repeat(4,minmax(0,1fr))}.teacher-sidebar__link{justify-content:center;padding:.9rem .75rem}.teacher-sidebar__link span:last-child{display:none}.teacher-topbar{padding-top:1.25rem}}@media(max-width:767px){.teacher-sidebar,.teacher-topbar,.teacher-content{padding-left:1rem;padding-right:1rem}.teacher-sidebar__brand{justify-content:center}.teacher-sidebar__logo{width:7.2rem}.teacher-sidebar__nav{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-topbar{flex-direction:column;align-items:flex-start}.teacher-topbar__right{width:100%;flex-direction:column;align-items:stretch}.teacher-topnav{justify-content:space-between;gap:1rem;overflow-x:auto}.teacher-topbar__actions{justify-content:space-between}.communications-chat__header,.communications-composer__actions{flex-direction:column;align-items:flex-start}.teacher-notification-panel{position:fixed;top:5.6rem;left:1rem;right:1rem;width:auto}.teacher-section-header,.teacher-section-header__title{flex-direction:column;align-items:flex-start}.teacher-children-grid,.teacher-form-grid,.teacher-modal__amount-grid{grid-template-columns:1fr}.child-card__actions{grid-template-columns:repeat(3,minmax(0,1fr))}.teacher-timeline__item{grid-template-columns:1.4rem minmax(0,1fr)}.teacher-timeline__time{justify-self:start;margin-left:2.4rem}.teacher-modal{padding:1.25rem}.teacher-modal__option-grid,.teacher-modal__option-grid--two{grid-template-columns:1fr}.communication-thread,.communications-chat{padding:1rem}.teacher-save-button{font-size:1rem}}.director-shell{display:grid;grid-template-columns:16rem minmax(0,1fr);min-height:100vh;background:var(--surface)}.director-sidebar{position:sticky;top:0;display:flex;flex-direction:column;gap:2rem;height:100vh;padding:2rem 1rem;background:var(--surface-container-low)}.director-sidebar__brand{display:flex;flex-direction:column;align-items:flex-start;gap:.35rem;padding:.3rem .55rem;color:inherit;text-decoration:none}.director-sidebar__logo{width:7.6rem;height:auto}.director-sidebar__brand-copy{display:grid;gap:.18rem}.director-sidebar__brand-copy p{margin:0;color:#53433e8c;font-size:.96rem;font-weight:500}.director-sidebar__profile-label{color:var(--primary);font-family:Manrope,sans-serif;font-size:.9rem;font-weight:800}.director-sidebar__nav{display:grid;gap:.5rem}.director-sidebar__footer{margin-top:auto;padding:0 .5rem}.director-sidebar__cta{display:inline-flex;align-items:center;justify-content:center;gap:.75rem;width:100%;border-radius:9999px;padding:1rem 1.25rem;background:var(--gradient-primary);color:var(--on-primary);font-family:Manrope,sans-serif;font-weight:800;box-shadow:var(--shadow-sunlight)}.director-sidebar__link{display:flex;align-items:center;gap:.9rem;width:100%;border-radius:9999px;padding:.92rem 1rem;color:#1b1c1999;text-align:left;transition:background .2s ease,color .2s ease,transform .2s ease}.director-sidebar__link:hover{background:#ffffff8c}.director-sidebar__link--active{background:var(--surface-container-lowest);color:var(--primary);box-shadow:inset -4px 0 0 var(--primary),0 12px 24px #1b1c1908}.director-sidebar__link span:last-child{font-family:Manrope,sans-serif;font-size:.94rem;font-weight:700}.director-main{min-width:0}.director-topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1rem 2.5rem;background:#fbf9f4cc;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px)}.director-topbar__brand-mobile{display:none}.director-topbar__logo-mobile{width:7rem;height:auto}.director-page-header{display:grid;gap:.35rem}.director-page-header h1{margin:0;font-family:Manrope,sans-serif;font-size:clamp(3rem,4.5vw,4.1rem);line-height:.98;font-weight:900;letter-spacing:-.06em}.director-page-header p{margin:0;color:var(--on-surface-variant);font-size:1.05rem;line-height:1.6}.director-main .children-list__item{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1.5rem;border-radius:var(--radius-xl);padding:1.6rem 1.75rem}.director-main .children-list__identity{align-items:flex-start}.director-main .children-list__copy{display:grid;gap:.8rem}.director-main .children-list__details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem 1.5rem}.director-main .children-list__detail{display:grid;gap:.22rem}.director-main .children-list__detail span{color:var(--on-surface-variant);font-family:Manrope,sans-serif;font-size:.78rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.director-main .children-list__detail strong{color:var(--on-surface);font-size:.98rem;font-weight:700;line-height:1.5}.director-topbar__right{display:flex;align-items:center;justify-content:space-between;gap:2rem;width:100%}.director-topnav{display:flex;flex-wrap:wrap;gap:2.35rem}.director-topnav__link{color:#1b1c19b8;font-family:Manrope,sans-serif;font-size:1rem;font-weight:500;transition:color .2s ease}.director-topnav__link:hover,.director-topnav__link--active{color:var(--primary)}.director-topbar__actions{display:flex;align-items:center;gap:1rem}.director-notifications{position:relative}.director-content{display:grid;gap:2.35rem;width:100%;margin:0;padding:0 2.5rem 3rem}.director-dashboard,.director-tab-layout{display:grid;gap:2.25rem}.director-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}.director-stat-card,.director-overview-card,.director-register-card,.director-surface-card{border-radius:var(--radius-lg);background:var(--surface-container-lowest);box-shadow:none}.director-stat-card{display:grid;gap:1.4rem;min-height:9rem;padding:1.7rem 1.8rem}.director-stat-card__top{display:flex;align-items:center;justify-content:space-between;gap:1rem}.director-stat-card__top .material-symbols-outlined{color:var(--primary);font-size:1.45rem}.director-stat-card p{margin:0 0 .45rem;color:var(--on-surface-variant);font-weight:600}.director-stat-card h3{margin:0;font-family:Manrope,sans-serif;font-size:3rem;line-height:1;font-weight:900;letter-spacing:-.06em}.director-stat-chip,.director-status-pill{display:inline-flex;align-items:center;justify-content:center;border-radius:9999px;padding:.42rem .9rem;font-family:Manrope,sans-serif;font-size:.74rem;font-weight:800;letter-spacing:.02em}.director-stat-chip--success{background:var(--secondary-container);color:var(--secondary)}.director-stat-chip--neutral{background:var(--surface-container-low);color:var(--on-surface-variant)}.director-stat-chip--warm,.director-status-pill--soft{background:#ffb59a5c;color:var(--primary)}.director-overview-card,.director-register-card,.director-surface-card{padding:1.8rem}.director-overview-card{padding:0;background:transparent}.director-register-card{background:var(--surface-container-low);border-radius:var(--radius-xl)}.director-section-headline{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.45rem}.director-section-headline--compact{margin-bottom:1rem}.director-section-headline h2{margin:0;font-family:Manrope,sans-serif;font-size:2rem;font-weight:900;letter-spacing:-.05em}.director-overview-actions{display:flex;align-items:center;gap:.9rem}.director-inline-badge{display:inline-grid;place-items:center;min-width:1.4rem;height:1.4rem;margin-left:.45rem;border-radius:9999px;background:#8f4c331f;color:var(--primary);font-size:.72rem;font-weight:800}.director-link-button{color:var(--primary);font-family:Manrope,sans-serif;font-size:1rem;font-weight:800}.director-table-shell{overflow-x:auto;border-radius:var(--radius-xl);background:var(--surface-container-low)}.director-class-table{width:100%;min-width:48rem;border-collapse:collapse}.director-class-table thead th{padding:1.5rem 1.7rem;color:var(--on-surface-variant);font-family:Manrope,sans-serif;font-size:.98rem;font-weight:700;letter-spacing:-.01em;text-align:left}.director-class-table tbody tr{background:#ffffff85}.director-class-table tbody tr+tr td{border-top:1px solid rgba(217,194,186,.12)}.director-class-table td{padding:1.45rem 1.7rem;vertical-align:middle}.director-class-table__row{cursor:pointer;transition:background .18s ease}.director-class-table__row:hover{background:#ffffffeb}.director-class-table__name{color:var(--primary);font-family:Manrope,sans-serif;font-size:1.02rem;font-weight:800}.director-avatar-chip{display:inline-flex;align-items:center;gap:.7rem}.director-avatar-chip__image{width:2rem;height:2rem;border-radius:9999px;object-fit:cover}.director-avatar-chip--large{align-items:flex-start}.director-avatar-chip__badge{display:grid;place-items:center;flex:0 0 auto;width:2.25rem;height:2.25rem;border-radius:9999px;background:#cc7e612e;color:var(--primary);font-family:Manrope,sans-serif;font-size:.78rem;font-weight:900}.director-status-pill[data-status=open]{background:var(--secondary-container);color:var(--secondary)}.director-status-pill[data-status=full]{background:#f5e2a1bf;color:var(--tertiary)}.director-register-card .teacher-panel-grid{gap:1.5rem}.director-register-page{display:grid;gap:1.5rem}.director-tab-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem}.director-tab-grid--single{grid-template-columns:1fr}.director-list-stack,.director-menu-list,.director-schedule-list{display:grid;gap:1rem}.director-management-row,.director-menu-card,.director-schedule-card{border-radius:var(--radius-lg);padding:1.2rem 1.25rem;background:var(--surface-container-lowest);box-shadow:0 10px 24px #1b1c1908}.director-management-row{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.director-management-row__copy{display:grid;gap:.2rem}.director-management-row__copy h3,.director-menu-card__grid strong,.director-schedule-card__copy h3{margin:0;font-family:Manrope,sans-serif;font-size:1.1rem;font-weight:800;letter-spacing:-.03em}.director-management-row__copy p,.director-management-row__copy small,.director-menu-card__grid p,.director-menu-card__notes,.director-schedule-card__copy p{margin:0;color:var(--on-surface-variant);line-height:1.55}.director-menu-card{display:grid;gap:1rem}.director-menu-card__header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.director-menu-card__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.director-menu-card__grid div{display:grid;gap:.3rem}.director-schedule-card{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.director-schedule-card__copy{display:grid;gap:.7rem}.director-schedule-card__aside{display:grid;justify-items:end;gap:.75rem}.director-settings-card{background:var(--surface-container-lowest);box-shadow:var(--shadow-sunlight)}.director-subscription-card{gap:1rem}.director-subscription-card__status{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.director-subscription-card__copy{display:grid;gap:.55rem}.director-subscription-card__copy h4,.director-subscription-card__meta strong{margin:0;font-family:Manrope,sans-serif;font-size:1.05rem;font-weight:800;letter-spacing:-.03em}.director-subscription-card__copy p,.director-subscription-card__hint,.director-subscription-card__meta span{margin:0;color:var(--on-surface-variant);line-height:1.55}.director-subscription-card__badge{display:inline-flex;align-items:center;justify-content:center;border-radius:9999px;padding:.65rem 1rem;background:#e4e2ddc7;color:var(--on-surface);font-size:.83rem;font-weight:800;white-space:nowrap}.director-subscription-card__badge--primary{background:#ffdbcfd1;color:var(--primary)}.director-subscription-card__badge--secondary{background:#c9e8cbd1;color:var(--secondary)}.director-subscription-card__badge--tertiary{background:#f5e2a1c7;color:var(--tertiary)}.director-subscription-card__meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.director-subscription-card__meta div{display:grid;gap:.3rem;border-radius:1.45rem;padding:.95rem 1rem;background:#ffffff94}.director-subscription-card__meta span{font-size:.8rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.director-subscription-card__action{display:inline-flex;align-items:center;justify-content:center;gap:.65rem;width:100%;border-radius:9999px;padding:1rem 1.2rem;background:linear-gradient(135deg,#8f4c33,#cc7e61);color:#fff;font-family:Manrope,sans-serif;font-size:.95rem;font-weight:800;box-shadow:var(--shadow-sunlight)}.director-subscription-card__action:disabled{cursor:progress;opacity:.74}.director-subscription-card__action--secondary{background:#ffffffad;color:var(--primary)}.director-subscription-card__stack{display:grid;gap:.85rem}.teacher-contact-card{display:grid;gap:1rem;padding:1.15rem;border-radius:1.6rem;background:#ffffffb8}.teacher-contact-card h3{margin:0;font-family:Manrope,sans-serif;font-size:1.05rem;font-weight:800;letter-spacing:-.03em}@media(max-width:1180px){.director-shell,.director-stats,.director-tab-grid{grid-template-columns:1fr}.director-shell{min-height:auto}.director-sidebar{position:static;height:auto}}@media(max-width:900px){.director-sidebar__nav{grid-template-columns:repeat(5,minmax(0,1fr))}.director-sidebar__link{justify-content:center;padding:.9rem .6rem}.director-sidebar__link span:last-child{display:none}.director-topbar,.director-content{padding-left:1rem;padding-right:1rem}.director-topbar,.director-topbar__right,.director-section-headline,.director-management-row,.director-menu-card__header,.director-schedule-card,.director-subscription-card__status{flex-direction:column;align-items:flex-start}.director-content{width:100%}.director-topnav{gap:.8rem}.director-menu-card__grid,.director-subscription-card__meta{grid-template-columns:1fr}.director-schedule-card__aside{justify-items:start}.director-main .children-list__item,.director-main .children-list__details{grid-template-columns:1fr}}@media(max-width:720px){.director-topbar__brand-mobile{display:inline-flex;align-items:center}.director-sidebar__brand-copy{display:none}.director-sidebar__logo{width:6.6rem}.director-topnav{display:none}.director-class-table{min-width:46rem}}:root{--on-background: #1b1c19;--surface-tint: #8f4c33;--on-primary-fixed: #380d00;--secondary-fixed-dim: #b0ceb2;--secondary-fixed: #cceace;--outline-variant: #d9c2ba;--primary: #8f4c33;--on-surface: #1b1c19;--tertiary-fixed: #f5e2a1;--primary-container: #cc7e61;--outline: #86736d;--background: #fbf9f4;--primary-fixed-dim: #ffb59a;--tertiary-container: #bcab6f;--error-container: #ffdad6;--tertiary: #6b5e2a;--surface-bright: #fbf9f4;--error: #ba1a1a;--surface-dim: #dbdad5;--secondary: #4a654e;--inverse-surface: #30312e;--surface-container: #f0eee9;--on-tertiary: #ffffff;--on-secondary-container: #4e6952;--on-primary-fixed-variant: #72351e;--on-tertiary-container: #4b3f0d;--on-primary-container: #4e1b05;--on-error: #ffffff;--inverse-on-surface: #f2f1ec;--inverse-primary: #ffb59a;--on-secondary-fixed-variant: #334d38;--primary-fixed: #ffdbcf;--on-secondary: #ffffff;--surface-variant: #e4e2dd;--on-surface-variant: #53433e;--on-primary: #ffffff;--on-secondary-fixed: #07200f;--surface-container-highest: #e4e2dd;--on-tertiary-fixed: #221b00;--on-error-container: #93000a;--surface-container-lowest: #ffffff;--tertiary-fixed-dim: #d8c687;--on-tertiary-fixed-variant: #524614;--secondary-container: #c9e8cb;--surface-container-high: #eae8e3;--surface-container-low: #f5f3ee;--surface: #fbf9f4;--radius-default: 1rem;--radius-lg: 2rem;--radius-xl: 3rem;--shadow-sunlight: 0 20px 40px rgba(27, 28, 25, .04);--shadow-soft: 0 16px 32px rgba(27, 28, 25, .06);--gradient-primary: linear-gradient(135deg, #8f4c33 0%, #cc7e61 100%)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--surface);color:var(--on-background);font-family:Inter,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button,input,textarea{font:inherit}button{border:0;background:transparent;padding:0;cursor:pointer}img{display:block;max-width:100%}::selection{background:var(--primary-container);color:var(--on-primary)}.material-symbols-outlined{font-family:Material Symbols Outlined;font-style:normal;font-weight:400;display:inline-flex;align-items:center;justify-content:center;line-height:1;font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24}.material-symbols-outlined--filled{font-variation-settings:"FILL" 1,"wght" 400,"GRAD" 0,"opsz" 24}.landing-shell,.auth-shell{min-height:100vh;background:var(--surface);color:var(--on-surface)}.topbar{position:sticky;top:0;z-index:40;display:flex;align-items:center;justify-content:space-between;gap:1rem;width:100%;padding:1rem 2rem;background:#fbf9f4cc;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px)}.topbar__brand{display:inline-flex;align-items:center}.topbar__logo{width:126px;height:auto}.topbar__actions{display:flex;align-items:center;gap:1rem}.topbar__actions--public{gap:.75rem}.topbar__button{padding:.7rem 1.2rem;font-size:.9rem}.topbar__plain-link{display:inline-flex;align-items:center;justify-content:center;padding:.875rem 1rem;color:var(--primary);font-family:Manrope,sans-serif;font-size:.95rem;font-weight:700;text-decoration:none;transition:opacity .2s ease}.topbar__plain-link:hover{opacity:.72}.icon-button{display:grid;place-items:center;color:var(--primary);transition:transform .2s ease,opacity .2s ease,background .2s ease}.icon-button:hover{opacity:.7}.icon-button--footer:hover{opacity:1;transform:scale(1.08)}.hero{position:relative;overflow:hidden;min-height:auto;padding:3rem 2rem 7rem}.hero__content,.hero__visual,.trust-section__inner,.testimonial-section,.cta-section,.site-footer{max-width:80rem;margin:0 auto}.hero{display:grid;gap:3rem;align-items:start}.hero__content{position:relative;z-index:1;width:100%}.eyebrow{display:inline-block;margin-bottom:1.5rem;color:transparent;text-transform:uppercase;font-size:.75rem;font-weight:600;letter-spacing:.16em;font-family:Inter,sans-serif;background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text}.hero__title,.section-intro__title,.role-card__title,.testimonial-card__text,.cta-card__title{margin:0;font-family:Manrope,sans-serif}.hero__title{font-size:clamp(3rem,6vw,5.5rem);line-height:1.05;font-weight:800;letter-spacing:-.04em}.hero__title span{color:var(--primary)}.hero__description{max-width:32rem;margin:2rem 0 3rem;color:var(--on-surface-variant);font-size:1.25rem;line-height:1.75}.hero__actions,.cta-card__actions,.modal-card__actions{display:flex;flex-wrap:wrap;gap:1rem}.hero__payments{display:grid;gap:.95rem;margin-top:1.6rem}.hero__payments-label{color:var(--on-surface-variant);font-size:.95rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.hero__payments-list{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;overflow:visible}.hero__payment-logo{display:block;flex:0 0 auto;width:auto;max-width:9rem;height:1.2rem;opacity:.9}.hero__payment-logo--apple{height:1.35rem}.button{display:inline-flex;align-items:center;justify-content:center;border-radius:9999px;padding:1rem 2.5rem;font-family:Manrope,sans-serif;font-weight:700;text-decoration:none;transition:transform .15s ease,background .2s ease,color .2s ease,border-color .2s ease}.button:active{transform:scale(.98)}.button--primary{background:var(--gradient-primary);color:var(--on-primary);box-shadow:var(--shadow-sunlight)}.button--secondary{background:var(--surface-container-high);color:var(--primary)}.button--light{background:var(--surface-container-lowest);color:var(--primary);box-shadow:var(--shadow-sunlight)}.button--ghost{border:1px solid rgba(255,255,255,.3);color:var(--on-primary)}.button--ghost:hover{background:#ffffff1a}.hero__visual{position:relative;max-width:34rem;margin:0 auto}.hero__media-card{position:relative;z-index:1;overflow:hidden;aspect-ratio:1/1;border-radius:var(--radius-lg);background:var(--surface-container-lowest);box-shadow:var(--shadow-sunlight)}.hero__image{width:100%;height:100%;object-fit:cover}.floating-card{position:absolute;z-index:2;background:var(--surface-container-lowest);box-shadow:var(--shadow-sunlight)}.floating-card--sleep{bottom:-2.5rem;left:-2.5rem;max-width:15rem;padding:1.5rem;border-radius:var(--radius-default)}.floating-card__header{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.status-chip{display:inline-flex;align-items:center;border-radius:9999px;padding:.375rem .75rem;font-size:.75rem;font-weight:600}.status-chip--rest{background:var(--secondary-container);color:var(--on-secondary-container)}.floating-card__title{margin:0;color:var(--on-surface);font-family:Manrope,sans-serif;font-size:1.125rem;font-weight:700}.floating-card__meta{margin:.25rem 0 0;color:var(--on-surface-variant);font-size:.875rem}.floating-card--moment{top:-1.5rem;right:-1.5rem;padding:1.25rem 1.5rem;border-radius:var(--radius-default);transition:transform .2s ease}.floating-card--moment:hover{transform:translateY(-2px)}.floating-card__moment-row{display:flex;align-items:center;gap:.5rem}.floating-card__moment-label{font-family:Manrope,sans-serif;font-weight:700;color:var(--primary)}.hero__glow{position:absolute;top:0;right:0;z-index:0;width:37.5rem;height:37.5rem;border-radius:50%;background:#8f4c330d;filter:blur(48px);transform:translate(50%,-50%)}.auth-hero{display:grid;gap:2rem;max-width:80rem;margin:0 auto;padding:4.5rem 2rem 6rem}.auth-hero__intro{max-width:36rem}.auth-hero__title{margin:0;font-family:Manrope,sans-serif;font-size:clamp(3rem,5.4vw,4.8rem);line-height:1.02;font-weight:800;letter-spacing:-.04em}.auth-hero__description{max-width:34rem;margin:1.5rem 0 0;color:var(--on-surface-variant);font-size:1.125rem;line-height:1.65}.auth-panel{border-radius:var(--radius-xl);padding:2.25rem;background:var(--surface-container-lowest);box-shadow:var(--shadow-sunlight)}.auth-options{display:grid;gap:1rem}.auth-figure-picker{margin-top:1.5rem;border-radius:var(--radius-lg);padding:1.25rem;background:var(--surface-container-low)}.auth-figure-picker__label{margin:0 0 .9rem;color:var(--on-surface-variant);font-family:Manrope,sans-serif;font-size:.82rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.auth-figure-picker__options{display:flex;flex-wrap:wrap;gap:.75rem}.auth-figure-picker__chip{border-radius:9999px;padding:.8rem 1rem;background:var(--surface-container-lowest);color:#53433eb3;font-family:Manrope,sans-serif;font-size:.92rem;font-weight:700;box-shadow:var(--shadow-sunlight)}.auth-figure-picker__chip--active{background:var(--secondary-container);color:var(--secondary)}.auth-option{padding:1.5rem;border-radius:var(--radius-lg);background:var(--surface-container-low);text-align:left;transition:transform .2s ease,background .2s ease,box-shadow .2s ease}.auth-option:hover{transform:translateY(-2px)}.auth-option--active{background:var(--surface-container-lowest);box-shadow:0 0 0 1px #8f4c3329,var(--shadow-sunlight)}.auth-option__header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}.auth-option__icon,.auth-option__check{color:var(--primary)}.auth-option__icon{font-size:2rem}.auth-option__check{font-size:1.35rem}.auth-option__title{margin:0 0 .75rem;font-family:Manrope,sans-serif;font-size:1.5rem;font-weight:700;letter-spacing:-.03em}.auth-option__description,.auth-option__detail{margin:0;color:var(--on-surface-variant);line-height:1.6}.auth-option__detail{margin-top:.875rem;font-size:.95rem}.auth-panel__footer{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;margin-top:2rem;padding-top:2rem}.auth-panel__summary-label{margin:0;color:#53433eb3;font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.12em}.auth-panel__summary-value{margin:.375rem 0 0;font-family:Manrope,sans-serif;font-size:1.75rem;font-weight:800;letter-spacing:-.03em}.auth-panel__actions{display:flex;gap:1rem}.roles-section{padding:6rem 2rem;background:var(--surface-container-low)}.roles-section__inner{max-width:80rem;margin:0 auto}.section-intro{max-width:none;margin:0 0 5rem}.section-intro__title{margin-bottom:1.5rem;color:var(--on-surface);font-size:clamp(2.5rem,4vw,3rem);line-height:1.06;font-weight:700;letter-spacing:-.035em}.section-intro__description{margin:0;color:var(--on-surface-variant);max-width:none;font-size:1.125rem;line-height:1.55}.roles-grid{display:grid;grid-template-columns:1fr;gap:2rem}.role-card{border-radius:var(--radius-xl);padding:2.5rem;box-shadow:var(--shadow-sunlight)}.role-card__copy{max-width:34rem}.role-card--admin,.role-card--parent,.role-card--cook{background:var(--surface-container-lowest)}.role-card--admin{display:flex;flex-direction:column;justify-content:space-between;gap:2rem}.role-card--teacher{display:flex;flex-direction:column;justify-content:space-between;background:var(--primary);color:var(--on-primary);min-height:29.75rem}.role-card__icon{margin-bottom:1.5rem;font-size:2.25rem;color:var(--primary)}.role-card--teacher .role-card__icon{color:var(--primary-fixed)}.role-card__title{margin-bottom:1rem;font-size:1.875rem;line-height:1.2;font-weight:700;letter-spacing:-.03em}.role-card__body{margin:0;max-width:31rem;color:var(--on-surface-variant);font-size:1.125rem;line-height:1.55}.role-card--admin .role-card__body{max-width:29rem}.role-card--teacher .role-card__body{color:#fffc;max-width:16rem}.role-card--parent .role-card__body{max-width:16rem}.role-card--cook .role-card__body{max-width:26rem}.role-card__checklist{display:grid;gap:1rem;margin:2rem 0 0;padding:0;list-style:none}.role-card__checklist li{display:flex;align-items:center;gap:.75rem;font-size:1rem;font-weight:500}.role-card__checklist .material-symbols-outlined{font-size:.875rem}.role-card__media{display:block;overflow:hidden;width:100%;margin-top:auto;border-radius:var(--radius-lg);height:12rem}.role-card__media--small{height:10rem}.role-card__image{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.role-card__media:hover .role-card__image{transform:scale(1.05)}.role-card--cook{display:flex;flex-direction:column;gap:2.5rem}.role-card__cook-copy{flex:1}.role-card__mini-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.mini-panel{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:10.25rem;border-radius:var(--radius-lg);background:var(--surface-container-low);color:var(--on-surface);font-weight:700;text-align:center}.mini-panel .material-symbols-outlined{margin-bottom:.5rem;color:var(--primary)}.trust-section{padding:6rem 2rem}.trust-section__title{margin:0 0 3rem;color:#8f4c3399;font-family:Manrope,sans-serif;font-size:.875rem;font-weight:700;text-transform:uppercase;letter-spacing:.2em;text-align:center}.trust-section__logos{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:3rem 6rem;opacity:.4;filter:grayscale(1)}.trust-section__logo{font-family:Manrope,sans-serif;font-size:1.5rem;font-weight:700;color:var(--on-surface)}.testimonial-section{padding:0 2rem 6rem}.testimonial-carousel{position:relative;max-width:73rem;margin:0 auto;padding:0 4.5rem}.testimonial-carousel__viewport{overflow:hidden;max-width:64rem;margin:0 auto}.testimonial-carousel__track{display:flex;transition:transform .45s ease;will-change:transform}.testimonial-card{position:relative;flex:0 0 100%;max-width:100%;margin:0;border-radius:var(--radius-lg);padding:3rem 3rem 2.75rem;background:var(--surface-container-lowest);box-shadow:var(--shadow-sunlight);text-align:center}.testimonial-carousel__arrow{position:absolute;top:50%;display:inline-flex;align-items:center;justify-content:center;width:3rem;height:3rem;border-radius:9999px;background:var(--surface-container-lowest);color:var(--primary);box-shadow:var(--shadow-sunlight);transform:translateY(-50%);z-index:2;transition:transform .2s ease,background .2s ease}.testimonial-carousel__arrow--prev{left:0}.testimonial-carousel__arrow--next{right:0}.testimonial-carousel__arrow:hover{transform:translateY(calc(-50% - 2px));background:var(--surface-container-low)}.testimonial-carousel__arrow .material-symbols-outlined{font-size:1.25rem}.testimonial-card__quote{position:absolute;top:2rem;left:50%;transform:translate(-50%);font-size:4rem;color:#8f4c331a}.testimonial-card__text{position:relative;z-index:1;margin:0 0 2.5rem;color:var(--on-surface);font-size:clamp(1.5rem,3vw,2rem);line-height:1.5;font-weight:500}.testimonial-card__author{display:flex;flex-direction:column;align-items:center}.testimonial-card__avatar{overflow:hidden;width:4rem;height:4rem;border-radius:50%;margin-bottom:1rem}.testimonial-card__avatar-image{width:100%;height:100%;object-fit:cover}.testimonial-card__initials{display:grid;place-items:center;width:100%;height:100%;color:var(--primary);font-family:Manrope,sans-serif;font-size:1.125rem;font-weight:800;letter-spacing:.04em;background:#cc7e612e}.testimonial-card__initials[data-tone=sage]{color:var(--secondary);background:#b0ceb247}.testimonial-card__initials[data-tone=sand]{color:var(--tertiary);background:#f5e2a17a}.testimonial-card__name{margin:0;color:var(--on-surface);font-family:Manrope,sans-serif;font-weight:700}.testimonial-card__role{margin:.25rem 0 0;color:var(--on-surface-variant)}.testimonial-carousel__dots{display:flex;align-items:center;justify-content:center;gap:.625rem;margin-top:1.5rem}.testimonial-carousel__dot{width:.65rem;height:.65rem;border-radius:9999px;background:#8f4c3329;transition:width .2s ease,transform .2s ease,background .2s ease}.testimonial-carousel__dot--active{width:1.75rem;background:var(--primary)}.cta-section{padding:0 2rem 6rem}.cta-card{position:relative;overflow:hidden;max-width:80rem;margin:0 auto;border-radius:var(--radius-lg);padding:3rem;background:var(--gradient-primary);box-shadow:var(--shadow-sunlight);color:var(--on-primary);text-align:center}.cta-card__content{position:relative;z-index:1}.cta-card__title{margin-bottom:2rem;font-size:clamp(2.5rem,5vw,4rem);line-height:1.05;font-weight:800}.cta-card__description{max-width:40rem;margin:0 auto 3rem;color:#ffffffe6;font-size:1.25rem;line-height:1.7}.cta-card__actions{justify-content:center}.cta-card__orb{position:absolute;width:16rem;height:16rem;border-radius:50%;filter:blur(48px)}.cta-card__orb--left{left:-6rem;bottom:-6rem;background:#ffffff1a}.cta-card__orb--right{top:-6rem;right:-6rem;background:#cc7e614d}.site-footer{padding:5rem 2rem;background:var(--surface)}.site-footer__grid{display:grid;grid-template-columns:1fr;gap:3rem}.site-footer__brand-name{display:inline-block;margin-bottom:1.5rem;color:var(--primary);font-size:1.5rem;font-weight:900;letter-spacing:-.06em}.site-footer__brand-copy{max-width:16rem;margin:0;color:var(--on-surface-variant);line-height:1.7}.site-footer__title{margin:0 0 1.5rem;color:var(--on-surface);font-family:Manrope,sans-serif;font-size:1rem;font-weight:700}.site-footer__links{display:flex;flex-direction:column;gap:1rem;color:var(--on-surface-variant)}.site-footer__links button{align-self:flex-start;display:inline-flex;align-items:center;color:inherit;transition:color .2s ease}.site-footer__links button:hover,.site-footer__bottom-links button:hover{color:var(--primary)}.site-footer__follow-link{display:inline-flex;align-items:center;gap:.55rem}.site-footer__instagram-icon{width:1.1rem;height:1.1rem;flex:0 0 auto}.site-footer__bottom{display:flex;flex-direction:column;gap:1rem;align-items:center;justify-content:space-between;margin-top:5rem;padding-top:2rem;color:#53433e99;font-size:.875rem;text-align:center}.site-footer__bottom-links{display:flex;gap:2rem}.site-footer__bottom-links button{color:inherit}.modal-overlay{position:fixed;inset:0;z-index:80;display:flex;align-items:center;justify-content:center;padding:1.5rem;background:#1b1c194d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.modal-card{position:relative;width:min(100%,42rem);border-radius:var(--radius-lg);padding:2rem;background:var(--surface-container-lowest);box-shadow:var(--shadow-soft)}.modal-card--form{width:min(100%,40rem)}.modal-card--school{width:min(100%,48rem)}.modal-card--info{width:min(100%,54rem)}.modal-card__close{position:absolute;top:1rem;right:1rem;display:grid;place-items:center;width:2.5rem;height:2.5rem;border-radius:9999px;color:var(--on-surface-variant);background:var(--surface-container-low)}.modal-card__eyebrow{margin:0 0 .75rem;color:var(--primary);font-family:Manrope,sans-serif;font-size:.8rem;font-weight:800;text-transform:uppercase;letter-spacing:.18em}.modal-card__title{margin:0;color:var(--on-surface);font-family:Manrope,sans-serif;font-size:2rem;line-height:1.15}.modal-card__description{margin:1rem 0 0;color:var(--on-surface-variant);line-height:1.8}.modal-preview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:2rem 0}.modal-preview-grid--stacked{grid-template-columns:repeat(2,minmax(0,1fr))}.modal-preview-grid__item{display:grid;gap:.7rem;align-content:start;min-height:8rem;border-radius:1.5rem;padding:1.15rem;background:var(--surface-container-low);color:var(--on-surface)}.modal-preview-grid__item .material-symbols-outlined{color:var(--primary)}.modal-preview-grid__item p{margin:0;color:var(--on-surface-variant);font-weight:700;line-height:1.45}.modal-preview-tile{display:flex;align-items:center;justify-content:center;min-height:7rem;border-radius:1.5rem;padding:1rem;background:var(--surface-container-low);color:var(--on-surface);font-family:Manrope,sans-serif;font-weight:700;text-align:center}.lead-form{display:grid;gap:1rem;margin-top:2rem}.lead-form__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.lead-form__field{display:grid;gap:.5rem}.lead-form__field span{color:var(--on-surface-variant);font-family:Manrope,sans-serif;font-size:.95rem;font-weight:700}.lead-form__field input,.lead-form__field textarea{width:100%;border:0;border-radius:1.5rem;padding:1rem 1.25rem;background:var(--surface-container-low);color:var(--on-surface);outline:none;transition:box-shadow .2s ease,transform .2s ease}.lead-form__field input:focus,.lead-form__field textarea:focus{box-shadow:0 0 0 1px #8f4c3333,var(--shadow-sunlight);transform:translateY(-1px)}.lead-form__error{border-radius:1.25rem;margin:0;padding:.9rem 1rem;background:var(--error-container);color:var(--error);font-size:.9rem;font-weight:750;line-height:1.45}.pricing-choice{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:2rem 0}.pricing-card{display:grid;gap:.5rem;min-height:15rem;border-radius:var(--radius-lg);padding:1.4rem;background:var(--surface-container-low);color:var(--on-surface);text-align:left;box-shadow:inset 0 0 0 1px #d9c2ba33;transition:background .2s ease,box-shadow .2s ease,transform .2s ease}.pricing-card:hover,.pricing-card--selected{background:var(--surface-container-lowest);box-shadow:inset 0 0 0 2px #8f4c3333,var(--shadow-sunlight);transform:translateY(-2px)}.pricing-card--highlight{background:#f5e2a16b}.pricing-card__label{width:fit-content;border-radius:9999px;padding:.45rem .7rem;background:#8f4c331a;color:var(--primary);font-family:Manrope,sans-serif;font-size:.75rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.pricing-card strong{color:var(--on-surface);font-family:Manrope,sans-serif;font-size:3rem;line-height:1;letter-spacing:-.06em}.pricing-card small{color:var(--primary);font-weight:800}.pricing-card p{margin:.5rem 0 0;color:var(--on-surface-variant);line-height:1.6}.pricing-card__detail{font-size:.95rem}.payment-methods-panel{display:flex;flex-wrap:wrap;gap:.55rem;margin:-.75rem 0 .9rem}.payment-methods-panel__item{border-radius:9999px;padding:.55rem .85rem;background:var(--surface-container-low);color:var(--on-surface-variant);font-family:Manrope,sans-serif;font-size:.78rem;font-weight:900}.payment-methods-panel__logo{display:block;width:auto;max-width:6.5rem;height:1rem;opacity:.9}.payment-methods-panel__logo--apple{height:1.15rem}.plan-summary-banner{display:grid;gap:.45rem;margin:1.75rem 0 .75rem;border-radius:1.75rem;padding:1.25rem 1.35rem;background:var(--surface-container-low)}.plan-summary-banner__label{color:var(--primary);font-family:Manrope,sans-serif;font-size:.72rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.plan-summary-banner strong{color:var(--on-surface);font-family:Manrope,sans-serif;font-size:1.15rem;font-weight:800}.plan-summary-banner p{margin:0;color:var(--on-surface-variant);line-height:1.55}.payment-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem;margin:2rem 0 1rem}.payment-option-card{display:grid;grid-template-columns:auto 1fr;gap:.35rem .9rem;align-items:center;border-radius:1.75rem;padding:1.1rem;background:var(--surface-container-low);color:var(--on-surface);text-align:left;box-shadow:inset 0 0 0 1px #d9c2ba2e;transition:background .2s ease,box-shadow .2s ease,transform .2s ease}.payment-option-card:hover,.payment-option-card--selected{background:var(--surface-container-lowest);box-shadow:inset 0 0 0 2px #8f4c3338,var(--shadow-sunlight);transform:translateY(-2px)}.payment-option-card .material-symbols-outlined{grid-row:span 2;display:grid;width:3rem;height:3rem;place-items:center;border-radius:1rem;background:#8f4c331a;color:var(--primary)}.payment-option-card strong{font-family:Manrope,sans-serif;font-size:1rem;line-height:1.2}.payment-option-card small{color:var(--on-surface-variant);line-height:1.45}.modal-card__fineprint{margin:0 0 1.25rem;color:#53433ebf;font-size:.82rem;font-weight:650;line-height:1.55}.modal-card__fineprint--info{margin-bottom:0}.pricing-table{display:grid;gap:1rem;margin:2rem 0 1.5rem}.pricing-table__row{display:grid;gap:.8rem;border-radius:var(--radius-lg);padding:1.35rem 1.45rem;background:var(--surface-container-low);box-shadow:inset 0 0 0 1px #d9c2ba2e}.pricing-table__row--highlight{background:#f5e2a152}.pricing-table__plan{margin:0 0 .35rem;color:var(--primary);font-family:Manrope,sans-serif;font-size:.76rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.pricing-table__summary{color:var(--on-surface);font-family:Manrope,sans-serif;font-size:1.18rem;line-height:1.35}.pricing-table__detail{margin:0;color:var(--on-surface-variant);line-height:1.6}.button:disabled{cursor:not-allowed;opacity:.58;transform:none}.toast{position:fixed;right:1.5rem;bottom:6rem;z-index:90;width:min(100% - 3rem,22rem);border-radius:1.5rem;padding:1rem 1.25rem;background:var(--surface-container-lowest);box-shadow:var(--shadow-soft)}.toast h4{margin:0;color:var(--on-surface);font-family:Manrope,sans-serif;font-size:1rem;font-weight:800}.toast p{margin:.5rem 0 0;color:var(--on-surface-variant);font-size:.95rem;line-height:1.6}.text-primary{color:var(--primary)}.text-secondary{color:var(--secondary)}@media(min-width:768px){.hero{grid-template-columns:repeat(2,minmax(0,1fr))}.auth-hero{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);align-items:start}.auth-options{grid-template-columns:repeat(3,minmax(0,1fr))}.roles-grid{grid-template-columns:repeat(12,minmax(0,1fr));align-items:stretch}.role-card--admin{grid-column:span 8;min-height:29.75rem}.role-card--teacher{grid-column:span 4}.role-card--parent{grid-column:span 4;min-height:21rem}.role-card--cook{grid-column:span 8;flex-direction:row;align-items:stretch;min-height:21rem}.role-card__mini-grid{flex:0 0 16rem}.section-intro__title,.section-intro__description{white-space:nowrap}.testimonial-card{min-height:32rem}.site-footer__grid{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr) minmax(0,1fr)}.pricing-table__row{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center}.site-footer__bottom{flex-direction:row;text-align:left}}@media(min-width:1024px){.topbar{padding:1rem 2rem}.hero{min-height:auto;padding:2.6rem 2rem 7.8rem}}@media(max-width:767px){.topbar,.hero,.auth-hero,.roles-section,.trust-section,.testimonial-section,.cta-section,.site-footer{padding-left:1rem;padding-right:1rem}.topbar__logo{width:112px}.topbar{flex-wrap:wrap}.topbar__actions--public{width:100%;justify-content:flex-end;flex-wrap:wrap}.topbar__button{padding:.65rem 1rem}.topbar__plain-link{padding:.75rem .25rem}.hero__description{font-size:1rem;line-height:1.7}.hero{min-height:auto;padding-top:2.35rem;padding-bottom:7.4rem}.hero__actions,.cta-card__actions,.modal-card__actions{flex-direction:column}.button{width:100%;justify-content:center;text-align:center}.floating-card--sleep{left:.5rem;bottom:-1.25rem}.floating-card--moment{top:.75rem;right:.75rem}.role-card,.cta-card,.testimonial-card,.modal-card{padding:1.5rem}.section-intro{margin-bottom:3rem}.section-intro__title{font-size:2.5rem;white-space:normal}.section-intro__description{white-space:normal}.role-card__title{font-size:1.75rem}.auth-hero{padding-top:2.35rem;padding-bottom:4.5rem}.auth-panel{padding:1.5rem}.auth-panel__footer,.auth-panel__actions{flex-direction:column;align-items:stretch}.auth-panel__actions .button{width:100%}.testimonial-carousel{padding:0;text-align:center}.testimonial-carousel__arrow{position:static;transform:none}.testimonial-carousel__arrow:hover{transform:translateY(-2px)}.testimonial-carousel__arrow--prev,.testimonial-carousel__arrow--next{margin-top:1rem}.testimonial-carousel__arrow--prev{margin-right:.5rem}.testimonial-carousel__arrow--next{margin-left:.5rem}.testimonial-carousel__dots{margin-top:1rem}.testimonial-card__quote{top:1.5rem;font-size:3rem}.testimonial-card__text{font-size:1.35rem;line-height:1.55}.modal-preview-grid,.lead-form__grid,.pricing-choice,.payment-choice-grid{grid-template-columns:1fr}.site-footer__bottom-links{flex-wrap:wrap;justify-content:center}}
