/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after{--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}::backdrop{--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.fixed{position:fixed}.relative{position:relative}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.contents{display:contents}.table{display:table}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--ink:#10231d;--forest:#123e30;--green:#0b8f62;--mint:#dff5e9;--cream:#f5f3eb;--line:#dfe6df;--muted:#66756e}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;background:#f6f7f3;min-height:100%}body{min-height:100%;color:var(--ink);font-family:var(--font-geist-sans),Arial,sans-serif;-webkit-tap-highlight-color:transparent;background:#f6f7f3;margin:0}button,input,textarea{font:inherit}button{cursor:pointer;touch-action:manipulation}.loading-view{background:#f4f8f3;place-content:center;justify-items:center;gap:12px;min-height:100vh;display:grid}.loading-logo,.brand-mark,.mobile-logo b,.logo-pill b{color:#fff;background:var(--green);border-radius:15px;place-items:center;width:44px;height:44px;font-size:22px;font-weight:900;display:grid;box-shadow:0 10px 30px #0b8f6233}.loading-view strong{font-size:24px}.loading-view span{color:var(--muted)}.school-gate{color:#fff;background:radial-gradient(circle at 20% 10%,#ff6f2d35,#0000 30%),radial-gradient(circle at 85% 25%,#286eff48,#0000 34%),linear-gradient(145deg,#120329,#25105c 58%,#071d5f);place-items:center;min-height:100vh;padding:28px;display:grid}.school-gate>section{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#110525bf;border:1px solid #ffffff24;border-radius:28px;width:min(100%,470px);padding:38px;box-shadow:0 30px 90px #0700168f}.gate-logo{align-items:center;gap:12px;margin-bottom:46px;font-size:21px;font-weight:900;display:flex}.gate-logo b{color:#26103f;background:linear-gradient(135deg,#ff7b2d,#ffce38);border-radius:14px;place-items:center;width:42px;height:42px;display:grid}.school-gate .eyebrow{color:#ffbd43}.school-gate h1{letter-spacing:-.055em;margin:0 0 13px;font-size:42px}.school-gate p{color:#ddd3f2;margin:0 0 28px;line-height:1.65}.school-gate form{gap:15px;display:grid}.school-gate label{gap:8px;font-size:13px;font-weight:800;display:grid}.school-gate input{color:#fff;letter-spacing:.06em;background:#ffffff10;border:1px solid #ffffff32;border-radius:15px;outline:0;width:100%;padding:15px}.school-gate input:focus{border-color:#ff9a35;box-shadow:0 0 0 4px #ff8c2c22}.school-gate form>button{color:#201039;background:linear-gradient(135deg,#ff7b2d,#ffd13d);border:0;border-radius:15px;padding:15px 20px;font-weight:900}.school-gate small{color:#bfb2db;text-align:center;margin-top:24px;display:block}.auth-shell{background:#f7f5fb;grid-template-columns:1.08fr .92fr;min-height:100vh;display:grid}.auth-story{color:#fff;background:#140629 url(/snackshare-auth-hero.png) 50%/cover no-repeat;flex-direction:column;justify-content:space-between;padding:48px 58px;display:flex;position:relative;overflow:hidden}.auth-story:before{content:"";background:linear-gradient(90deg,#0e0425f5 0%,#150736d1 49%,#1c05462e 100%),linear-gradient(#0000 56%,#0c041f9e);position:absolute;inset:0}.auth-story:after{content:"";mix-blend-mode:screen;background:radial-gradient(circle at 8% 15%,#ff6b2c2d,#0000 31%),radial-gradient(circle at 75% 24%,#266dff29,#0000 35%);position:absolute;inset:0}.auth-story>*{z-index:1;position:relative}.story-top{justify-content:space-between;align-items:center;gap:20px;display:flex}.logo-pill{align-items:center;gap:12px;font-size:18px;font-weight:850;display:flex}.logo-pill b{color:#24103e;background:linear-gradient(135deg,#ff7b2d,#ffcc31);border-radius:13px;width:38px;height:38px;box-shadow:0 10px 28px #ff6b2744}.logo-pill img,.mobile-logo img{object-fit:contain;background:#ffffffed;border:1px solid #ffffff35;border-radius:14px;width:48px;height:48px;padding:4px}.school-pill,.light-pill{background:#ffffff10;border:1px solid #ffffff2b;border-radius:999px;padding:9px 13px;font-size:12px;font-weight:700}.auth-story h1{letter-spacing:-.066em;text-shadow:0 8px 32px #09001888;max-width:600px;margin:16px 0 24px;font-size:clamp(50px,5.6vw,80px);line-height:.91}.auth-story p{color:#f0eaff;text-shadow:0 3px 18px #090018a0;max-width:560px;margin:0;font-size:18px;line-height:1.7}.eyebrow{color:#0a7b54;letter-spacing:.17em;text-transform:uppercase;margin-bottom:10px;font-size:11px;font-weight:850;display:block}.eyebrow.light{color:#86ddb5}.auth-story .eyebrow.light{color:#ffbd43}.story-points{color:#f3edff;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#13042b99;border:1px solid #ffffff24;border-radius:16px;gap:24px;width:max-content;max-width:100%;padding:13px 16px;font-size:12px;font-weight:750;display:flex;box-shadow:0 14px 40px #0700136b}.auth-panel{place-items:center;padding:48px;display:grid}.auth-card{width:min(100%,460px)}.mobile-logo{display:none}.auth-card h2{letter-spacing:-.045em;margin:0 0 12px;font-size:40px}.auth-card>p,.lead{color:var(--muted);margin:0 0 32px;line-height:1.7}.auth-card form,.share-form{gap:19px;display:grid}.auth-card label,.share-form label{color:#2b3b34;gap:8px;font-size:13px;font-weight:750;display:grid}.auth-card input,.share-form input,.share-form textarea{width:100%;color:var(--ink);background:#fff;border:1px solid #dbe3dc;border-radius:15px;outline:0;padding:14px 15px;transition:all .2s}.auth-card input:focus,.share-form input:focus,.share-form textarea:focus{border-color:#25a876;box-shadow:0 0 0 4px #25a87618}.change-school{color:#6e5b93;background:0 0;border:0;margin:0 0 28px;padding:0;font-size:12px;font-weight:800}.auth-card form>button,.primary-button,.share-form>.primary-button{background:linear-gradient(135deg,var(--school-accent,#5c2be8),#2f69f5);color:#fff;border:0;border-radius:15px;padding:15px 20px;font-weight:800;box-shadow:0 12px 28px #4e35d938}.auth-card form>button:disabled,.primary-button:disabled{opacity:.55}.mode-switch{width:100%;color:var(--school-accent,#5125ce);background:0 0;border:0;margin-top:18px;font-weight:750}.privacy-note{color:#6a6978;background:#fff;border:1px solid #e1dcef;border-radius:14px;margin-top:32px;padding:14px;line-height:1.55;display:block}.auth-error,.auth-message,.setup-note{border-radius:13px;padding:12px 14px;font-size:13px}.auth-error{color:#a12c2c;background:#fff0ef}.auth-message{color:#076847;background:#e7f7ef}.app-shell{grid-template-columns:250px 1fr;min-height:100vh;display:grid}.sidebar{color:#fff;background:var(--forest);flex-direction:column;height:100vh;padding:30px 20px 22px;display:flex;position:sticky;top:0}.brand{letter-spacing:-.03em;align-items:center;gap:12px;font-size:20px;font-weight:900;display:flex}.brand-mark{border-radius:13px;width:38px;height:38px;font-size:18px}.sidebar nav{gap:7px;margin-top:48px;display:grid}.nav-item{color:#cfe5da;text-align:left;background:0 0;border:0;border-radius:13px;align-items:center;gap:13px;width:100%;padding:12px 13px;font-size:14px;font-weight:680;display:flex}.nav-item span{text-align:center;width:20px;font-size:18px}.nav-item:hover,.nav-item.active{color:#fff;background:#ffffff17}.side-impact{background:#ffffff0a;border:1px solid #ffffff16;border-radius:17px;margin-top:auto;margin-bottom:20px;padding:17px;display:grid}.side-impact strong{font-size:36px}.side-impact small{color:#b7d2c5}.profile-chip{color:#fff;text-align:left;background:0 0;border:0;border-top:1px solid #ffffff18;align-items:center;gap:10px;padding:18px 2px 0;display:flex}.profile-chip>span:first-child{color:#126043;background:#d9f4e5;border-radius:50%;place-items:center;width:37px;height:37px;font-weight:900;display:grid}.profile-chip>span:last-child{display:grid}.profile-chip strong{text-overflow:ellipsis;white-space:nowrap;max-width:150px;font-size:12px;overflow:hidden}.profile-chip small{color:#9fbdb0}.main-panel{min-width:0}.mobile-header,.bottom-nav{display:none}.page-wrap{width:min(1220px,100%);margin:0 auto;padding:50px 48px 80px}.page-wrap.narrow{width:min(850px,100%)}.page-heading{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:34px;display:flex}.page-heading h1,.page-wrap>h1{letter-spacing:-.052em;margin:0;font-size:42px}.page-heading p{color:var(--muted);margin:9px 0 0}.primary-button{white-space:nowrap}.dashboard-actions{align-items:center;gap:9px;display:flex}.share-product-button{white-space:nowrap;color:#5d2ab7;background:#fff;border:1px solid #d9cfeb;border-radius:15px;padding:14px 17px;font-size:12px;font-weight:850}.share-product-button:hover{background:#f7f1ff}.share-confirmation{color:#0b6d4e;background:#e4f6ed;border-radius:999px;width:max-content;max-width:100%;margin:-20px 0 20px auto;padding:8px 11px;font-size:10px;font-weight:800}.setup-note{color:#6b5108;background:#fff5d7;border:1px solid #eedda5;margin:20px 48px 0}.hero-card{color:#fff;background:linear-gradient(120deg,#0f5138,#137d55);border-radius:30px;grid-template-columns:1.25fr .75fr;min-height:340px;padding:42px;display:grid;position:relative;overflow:hidden;box-shadow:0 22px 60px #174e3726}.hero-card:before{content:"";border:1px solid #ffffff18;border-radius:50%;width:320px;height:320px;position:absolute;top:-120px;right:-85px;box-shadow:0 0 0 45px #ffffff08,0 0 0 90px #ffffff08}.hero-card>div:first-child{z-index:2;position:relative}.hero-card h2{letter-spacing:-.052em;max-width:650px;margin:22px 0 15px;font-size:42px;line-height:1.03}.hero-card p{color:#d6ebdf;max-width:570px;line-height:1.7}.hero-card button{color:#0d5138;background:#e9f7ef;border:0;border-radius:14px;align-items:center;gap:16px;margin-top:28px;padding:13px 18px;font-weight:800;display:flex}.hero-visual{min-height:240px;position:relative}.plate{color:#135039;background:#f4f0df;border:18px solid #ffffff26;border-radius:50%;place-items:center;width:170px;height:170px;font-size:54px;font-weight:950;display:grid;position:absolute;bottom:6px;right:24px;box-shadow:0 25px 40px #052c1d55}.plate small{text-transform:uppercase;letter-spacing:.1em;margin-top:-24px;font-size:12px;font-weight:800}.fruit{z-index:2;filter:drop-shadow(0 12px 10px #052c1d50);font-size:48px;position:absolute}.fruit-one{top:20px;right:125px;transform:rotate(-10deg)}.fruit-two{top:78px;right:10px;transform:rotate(12deg)}.fruit-three{top:125px;right:190px;transform:rotate(-18deg)}.stat-grid{grid-template-columns:repeat(3,1fr);gap:16px;margin:22px 0 50px;display:grid}.stat-card{border:1px solid var(--line);background:#fff;border-radius:20px;min-height:145px;padding:22px;display:grid}.stat-card span{color:var(--muted);font-size:13px;font-weight:700}.stat-card strong{letter-spacing:-.05em;margin:10px 0 4px;font-size:39px}.stat-card small{color:#718078}.stat-card.green{border-top:4px solid #25a876}.stat-card.amber{border-top:4px solid #e8a63f}.stat-card.blue{border-top:4px solid #4f80c8}.section-heading{justify-content:space-between;align-items:end;gap:18px;margin-bottom:18px;display:flex}.section-heading h2{letter-spacing:-.04em;margin:0;font-size:29px}.section-heading button{color:#08734f;background:0 0;border:0;font-weight:800}.snack-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.snack-card{border:1px solid var(--line);background:#fff;border-radius:20px;min-width:0;overflow:hidden}.snack-emoji{background:linear-gradient(135deg,#e4f4e8,#f7efd6);place-items:center;min-height:135px;font-size:60px;display:grid}.snack-card>div:last-child{padding:18px}.availability,.status{color:#08734f;text-transform:uppercase;letter-spacing:.08em;background:#e4f5ec;border-radius:999px;padding:5px 9px;font-size:10px;font-weight:850;display:inline-block}.snack-card h3{margin:12px 0 5px;font-size:18px}.snack-card p{min-height:42px;color:var(--muted);margin:0;font-size:13px;line-height:1.55}.card-meta{color:#6c7a73;justify-content:space-between;align-items:center;gap:12px;margin-top:18px;font-size:12px;display:flex}.card-meta button,.empty-state button{color:#0a6c4b;background:#fff;border:1px solid #cddbd3;border-radius:10px;padding:8px 11px;font-size:12px;font-weight:800}.empty-state{text-align:center;background:#fbfcf9;border:1px dashed #cddbd3;border-radius:22px;grid-column:1/-1;justify-items:center;padding:52px 20px;display:grid}.empty-state>span{font-size:48px}.empty-state h3{margin:12px 0 7px}.empty-state p{max-width:430px;color:var(--muted);margin:0 0 18px}.empty-state.compact{padding:38px}.empty-state.compact>span{font-size:30px}.page-wrap.narrow>.lead{max-width:650px}.share-form{border:1px solid var(--line);background:#fff;border-radius:24px;margin-top:34px;padding:28px;box-shadow:0 16px 50px #183b2d0b}.form-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.safety-box{color:#315247;background:#eaf6ef;border-radius:16px;gap:7px;padding:17px;font-size:13px;display:grid}.safety-box strong{margin-bottom:3px}.form-error{color:#a12c2c}.request-list{gap:12px;margin-top:30px;display:grid}.request-list>article{border:1px solid var(--line);background:#fff;border-radius:17px;justify-content:space-between;align-items:center;gap:20px;padding:18px 20px;display:flex}.request-list>article>div{gap:4px;display:grid}.request-list>article span{color:var(--muted);font-size:12px}.status.pending{color:#835f07;background:#fff2c9}.status.approved,.status.completed{color:#08734f;background:#e4f5ec}.status.declined{color:#9a2f2f;background:#ffe8e7}.impact-panel{color:#fff;text-align:center;background:linear-gradient(135deg,#0e4b34,#169a68);border-radius:28px;justify-items:center;margin:34px 0 20px;padding:54px 24px;display:grid}.impact-icon{font-size:46px}.impact-panel strong{letter-spacing:-.08em;margin:12px 0 0;font-size:80px;line-height:1}.impact-panel h2{margin:8px 0}.impact-panel p{color:#d8eee3;margin:0}.principles{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.principles article{border:1px solid var(--line);background:#fff;border-radius:18px;padding:20px}.principles article>span{color:#15996a;letter-spacing:.14em;font-size:11px;font-weight:900}.principles h3{margin:16px 0 8px}.principles p{color:var(--muted);margin:0;font-size:13px;line-height:1.55}.approved-school-list{gap:12px;margin-top:24px;display:grid}.approved-school-list article{border:1px solid var(--line);background:#fff;border-radius:17px;justify-content:space-between;align-items:center;gap:20px;padding:18px 20px;display:flex}.approved-school-list article>div{gap:4px;display:grid}.approved-school-list article span{color:var(--muted);font-size:12px}.approved-school-list .status{color:#08734f}.meal-grid{grid-template-columns:repeat(3,1fr);gap:18px;margin-top:32px;display:grid}.meal-card{border:1px solid var(--line);background:#fff;border-radius:24px;flex-direction:column;min-height:310px;padding:24px;display:flex;box-shadow:0 14px 44px #183b2d0b}.meal-type{color:#714b06;letter-spacing:.12em;text-transform:uppercase;background:#fff0c7;border-radius:999px;align-self:flex-start;padding:7px 10px;font-size:10px;font-weight:900}.meal-type.lunch{color:#075b41;background:#ddf5e9}.meal-type.dinner{color:#4e3b87;background:#ece6ff}.meal-card h2{letter-spacing:-.035em;margin:22px 0 8px;font-size:25px}.meal-card>p{color:var(--muted);margin:0;line-height:1.6}.choice-buttons{gap:10px;margin-top:auto;padding-top:28px;display:grid}.choice-buttons button{color:#0d694a;background:#fff;border:1px solid #cedbd4;border-radius:12px;padding:12px;font-weight:800}.choice-buttons button:last-child{color:#5d3e98;background:#f7f3ff;border-color:#e0d8f2}.choice-buttons button:disabled{opacity:.55}.choice-state{color:#0b6548;text-align:center;background:#e5f6ed;border-radius:14px;margin-top:auto;padding:14px;font-size:13px;font-weight:850}.choice-state.share{color:#5b3d8d;background:#f1ecff}.request-actions{align-items:center;gap:10px;display:flex}.request-actions button{color:#0a6c4b;background:#fff;border:1px solid #d6ded8;border-radius:10px;padding:7px 10px;font-size:11px;font-weight:800}.messages-layout{border:1px solid var(--line);background:#fff;border-radius:24px;grid-template-columns:280px 1fr;min-height:590px;margin-top:28px;display:grid;overflow:hidden;box-shadow:0 18px 56px #183b2d0d}.thread-list{border-right:1px solid var(--line);background:#f7f9f5;flex-direction:column;gap:5px;padding:13px;display:flex}.thread-list button{color:var(--ink);text-align:left;background:0 0;border:0;border-radius:13px;gap:5px;padding:13px;display:grid}.thread-list button.active{background:#fff;box-shadow:0 7px 20px #173b2c12}.thread-list small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.chat-panel{grid-template-rows:auto 1fr auto auto;min-width:0;display:grid}.chat-panel>header{border-bottom:1px solid var(--line);gap:3px;padding:18px 22px;display:grid}.chat-panel>header span{color:var(--muted);font-size:12px}.chat-log{flex-direction:column;gap:10px;padding:22px;display:flex;overflow-y:auto}.chat-bubble{color:#233b32;background:#eef2ee;border-radius:17px 17px 17px 5px;align-self:flex-start;max-width:min(78%,520px);padding:11px 14px}.chat-bubble.mine{color:#fff;background:#167c58;border-radius:17px 17px 5px;align-self:flex-end}.chat-bubble p{margin:0 0 5px;line-height:1.5}.chat-bubble small{opacity:.72;font-size:9px}.empty-chat{color:var(--muted);text-align:center;margin:auto}.chat-form{border-top:1px solid var(--line);grid-template-columns:1fr auto;gap:10px;padding:15px;display:grid}.chat-form input{border:1px solid #d5ded8;border-radius:13px;outline:0;min-width:0;padding:12px 14px}.chat-form input:focus{border-color:#24a776;box-shadow:0 0 0 4px #24a77616}.chat-form button{color:#fff;background:#137b56;border:0;border-radius:13px;padding:0 18px;font-weight:850}.chat-panel>.form-error{margin:0;padding:0 16px 12px}body{background:radial-gradient(circle at 8% 8%,#ffb23e20,#0000 23%),radial-gradient(circle at 94% 14%,#6c42ff1c,#0000 27%),linear-gradient(150deg,#fffaf3,#f6f4ff 48%,#eef7ff)}.auth-panel{background:radial-gradient(circle at 86% 11%,#ff8f3d2b,#0000 25%),radial-gradient(circle at 10% 88%,#6c43ff26,#0000 28%),linear-gradient(145deg,#fffaf5,#f7f3ff 52%,#eef6ff);position:relative;overflow:hidden}.auth-panel:before,.auth-panel:after{content:"";filter:blur(2px);pointer-events:none;border-radius:50%;position:absolute}.auth-panel:before{opacity:.22;background:linear-gradient(135deg,#ff9c41,#ff4e7a);width:150px;height:150px;top:20%;right:-65px}.auth-panel:after{opacity:.2;background:linear-gradient(135deg,#4c5fff,#9b4dff);width:120px;height:120px;bottom:13%;left:-58px}.auth-card{z-index:1;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffc9;border:1px solid #ffffffd9;border-radius:28px;padding:38px;position:relative;box-shadow:0 28px 85px #3c226f20,inset 0 1px #fff}.auth-card input{background:#ffffffdf;border-color:#ded9eb;box-shadow:0 5px 18px #4d347309}.privacy-note{background:linear-gradient(135deg,#fff,#faf7ff);border-color:#e6ddf6}.app-shell{background:radial-gradient(circle at 88% 4%,#ffad3920,#0000 22%),radial-gradient(circle at 65% 90%,#7148ff18,#0000 30%),linear-gradient(145deg,#fffaf5,#f8f6ff 48%,#eff7ff)}.sidebar{background:linear-gradient(#1d063de8,#281064f0 52%,#0c2a50f2),url(/snackshare-auth-hero.png) 50%/cover no-repeat;overflow:hidden;box-shadow:12px 0 45px #28104b22}.sidebar:before{content:"";pointer-events:none;background:radial-gradient(circle at 15% 15%,#ff7d302c,#0000 25%),radial-gradient(circle at 90% 60%,#296eff35,#0000 35%);position:absolute;inset:0}.sidebar>*{z-index:1;position:relative}.brand-mark{color:#25103f;background:linear-gradient(135deg,#ff7b2d,#ffd83d);box-shadow:0 10px 26px #ff74394c}.nav-item{color:#eee8ff}.nav-item:hover,.nav-item.active{background:linear-gradient(90deg,#ffffff24,#ffffff0c);transform:translate(2px)}.nav-item.active{box-shadow:inset 3px 0 #ffb23e,0 8px 24px #0800162c}.nav-badge{color:#24103e;background:#ffd05a;border-radius:999px;place-items:center;min-width:19px;height:19px;margin-left:auto;padding:0 5px;font-size:9px;display:grid}.side-impact{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(145deg,#ffffff1c,#ffffff08);border-color:#ffffff2e;box-shadow:0 16px 35px #07001930}.side-impact .eyebrow{color:#ffd261}.side-impact small,.profile-chip small{color:#d7cdec}.profile-chip>span:first-child{color:#311059;background:linear-gradient(135deg,#ffbe42,#ff7b58)}.mobile-header{background:linear-gradient(120deg,#250747,#3d1b83 55%,#174f84)}.mobile-header-actions{align-items:center;gap:8px;display:flex}.mobile-alerts{color:#fff;background:#ffffff12;border:1px solid #ffffff38;border-radius:10px;place-items:center;width:37px;height:37px;font-size:19px;display:grid;position:relative}.mobile-alerts b,.bottom-badge{color:#29113d;background:#ffd05a;border-radius:999px;place-items:center;min-width:16px;height:16px;padding:0 4px;font-size:8px;font-weight:900;display:grid;position:absolute}.mobile-alerts b{top:-5px;right:-5px}.bottom-nav button>span{position:relative}.bottom-badge{top:-6px;right:-10px}.meal-toast{z-index:30;color:#25143c;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);text-align:left;background:#fffdfdf2;border:1px solid #d9cdf3;border-radius:18px;gap:3px;width:min(350px,100vw - 32px);padding:15px 18px;display:grid;position:fixed;top:22px;right:24px;box-shadow:0 22px 64px #2d145844}.meal-toast span{color:#7141d0;letter-spacing:.15em;text-transform:uppercase;font-size:9px;font-weight:900}.meal-toast strong{font-size:14px}.meal-toast small{color:#6e4cb6;margin-top:3px;font-weight:800}.alert-permission{background:linear-gradient(135deg,#fbf8ff,#eef5ff);border:1px solid #ddd2ef;border-radius:22px;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;margin:26px 0;padding:22px;display:grid}.alert-permission.granted{background:linear-gradient(135deg,#effbf5,#eef7ff);border-color:#bce7d4}.alert-bell{color:#fff;background:linear-gradient(135deg,#ff735c,#9a4ee9,#3478ee);border-radius:17px;place-items:center;width:52px;height:52px;font-size:25px;display:grid;box-shadow:0 12px 30px #6139bf2e}.alert-permission strong{font-size:17px;display:block}.alert-permission p{color:#6a6473;margin:5px 0 0;font-size:12px;line-height:1.55}.alert-permission>span{color:#5a3c86;background:#fff;border-radius:999px;padding:7px 10px;font-size:10px;font-weight:850}.alert-feed{gap:14px;display:grid}.alert-feed>article{background:#fff;border:1px solid #e5dcef;border-radius:22px;grid-template-columns:110px 1fr auto;align-items:center;gap:20px;padding:13px;display:grid;overflow:hidden;box-shadow:0 12px 40px #331c5f0d}.alert-feed img,.alert-placeholder{object-fit:cover;border-radius:15px;width:110px;height:90px}.alert-placeholder{background:linear-gradient(135deg,#fff0d5,#eee3ff);place-items:center;font-size:40px;display:grid}.alert-feed article span{color:#7740c9;letter-spacing:.12em;text-transform:uppercase;font-size:9px;font-weight:900}.alert-feed h2{margin:6px 0 5px;font-size:20px}.alert-feed p{color:#6f6978;margin:0;font-size:12px;line-height:1.5}.alert-feed article>button{color:#643db2;background:#fbf8ff;border:1px solid #d9ceeb;border-radius:11px;padding:10px 12px;font-size:11px;font-weight:850}.main-panel{background:0 0;min-width:0}.page-heading h1,.page-wrap>h1{color:#1d1531}.eyebrow{color:#6940d7}.hero-card{background:linear-gradient(118deg,#32105f 0%,#5d24be 52%,#1765ce 100%);box-shadow:0 28px 72px #3f227234}.hero-card:after{content:"";pointer-events:none;background:radial-gradient(circle at 85% 25%,#ffb52c5c,#0000 22%),radial-gradient(circle at 55% 105%,#ff5b7d42,#0000 32%);position:absolute;inset:0}.hero-card p{color:#f0e9ff}.hero-card button{color:#311258;background:linear-gradient(135deg,#fff4cf,#ffcb56);box-shadow:0 12px 28px #1c0b3b35}.hero-visual{z-index:2}.plate{color:#421573;background:linear-gradient(145deg,#fff9de,#ffd87a);border-color:#ffffff3b;box-shadow:0 25px 45px #18053566}.overview-hero{background:linear-gradient(90deg,#1b073ef2 0%,#2e0e61d9 48%,#22105347 72%,#1105261f),url(/snackshare-overview-hero.png) 50%/cover no-repeat;grid-template-columns:1fr}.overview-hero>div:first-child{max-width:650px}.overview-hero .hero-visual{display:none}.overview-hero:after{background:radial-gradient(circle at 20% 105%,#ff5b7d35,#0000 35%)}.page-photo-banner{color:#fff;background-position:50%;background-size:cover;border-radius:26px;align-items:flex-end;min-height:220px;margin:28px 0 30px;padding:28px;display:flex;position:relative;overflow:hidden;box-shadow:0 22px 60px #39216427}.page-photo-banner:after{content:"";background:linear-gradient(90deg,#16042ed4,#2410575f 60%,#0000);position:absolute;inset:0}.page-photo-banner>div{z-index:1;gap:7px;max-width:530px;display:grid;position:relative}.page-photo-banner span{color:#ffd26b;letter-spacing:.14em;text-transform:uppercase;font-size:10px;font-weight:900}.page-photo-banner strong{letter-spacing:-.035em;font-size:28px;line-height:1.12}.meals-page-photo{background-image:url(/snackshare-meals-hero.png)}.community-page-photo{background-image:url(/snackshare-community-hero.png);background-position:50% 56%}.stat-card,.snack-card,.meal-card,.share-form,.principles article,.approved-school-list article,.request-list>article,.messages-layout{border-color:#e8e1f1;box-shadow:0 16px 44px #3b256810}.stat-card{position:relative;overflow:hidden}.stat-card:after{content:"";opacity:.16;border-radius:50%;width:90px;height:90px;position:absolute;bottom:-38px;right:-34px}.stat-card.green{background:linear-gradient(145deg,#fff,#ebfbf4)}.stat-card.green:after{background:#22bd83}.stat-card.amber{background:linear-gradient(145deg,#fff,#fff5de)}.stat-card.amber:after{background:#ffae2f}.stat-card.blue{background:linear-gradient(145deg,#fff,#edf3ff)}.stat-card.blue:after{background:#536eff}.snack-card{transition:transform .2s,box-shadow .2s}.snack-card:hover{transform:translateY(-4px);box-shadow:0 22px 50px #3f256c1f}.snack-emoji{background:radial-gradient(circle at 72% 25%,#ffce5075,#0000 26%),linear-gradient(135deg,#eee7ff,#fff0db)}.meal-card:first-child{background:linear-gradient(160deg,#fff8e5,#fff)}.meal-card:nth-child(2){background:linear-gradient(160deg,#eafbf3,#fff)}.meal-card:nth-child(3){background:linear-gradient(160deg,#f1eaff,#fff)}.primary-button,.share-form>.primary-button{background:linear-gradient(135deg,#6a35d9,#376cf4 58%,#16a5c8);box-shadow:0 12px 30px #5634c434}.empty-state{background:linear-gradient(145deg,#fff,#faf6ff);border-color:#d9cfea}.impact-panel{background:linear-gradient(135deg,#351064,#6928c4 50%,#1e72d2);box-shadow:0 24px 60px #4020662e}.thread-list{background:linear-gradient(#faf7ff,#f4f7ff)}.thread-list button.active{box-shadow:0 8px 24px #49287218}.chat-bubble.mine{background:linear-gradient(135deg,#6b34d7,#3970ef)}.bottom-nav button.active{color:#6130cb;background:#f0e8ff}.loading-logo,.brand-mark{object-fit:cover;background:0 0;box-shadow:0 10px 30px #5424b43b}.loading-logo{border-radius:18px;width:58px;height:58px}.brand-mark{padding:0}.school-pill{align-items:center;gap:8px;display:flex}.school-pill img{object-fit:contain;background:#fff;border-radius:7px;width:24px;height:24px;padding:2px}.school-gate{background:#120329;grid-template-columns:1.12fr .88fr;place-items:stretch stretch;height:100svh;min-height:560px;padding:0;display:grid;overflow:hidden}.school-gate>section{width:auto;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;border-radius:0;padding:56px}.school-gate .gate-showcase{background:linear-gradient(90deg,#13042cef,#1b0756b8 55%,#2d0a791f),linear-gradient(#0000 52%,#13042cb8),url(/snackshare-auth-hero.png) 50%/cover no-repeat;flex-direction:column;justify-content:space-between;min-height:0;display:flex;position:relative;overflow:hidden}.gate-showcase:after{content:"";pointer-events:none;background:radial-gradient(circle at 83% 20%,#3478ff3d,#0000 25%),radial-gradient(circle at 18% 82%,#ff704638,#0000 27%);position:absolute;inset:0}.gate-showcase>*{z-index:1;position:relative}.gate-brand{align-items:center;gap:13px;font-size:22px;display:flex}.gate-brand img{border-radius:16px;width:50px;height:50px;box-shadow:0 12px 35px #0a001d77}.gate-copy{max-width:690px}.gate-copy h2{color:#fff;letter-spacing:-.065em;max-width:620px;margin:14px 0 20px;font-size:clamp(52px,5.3vw,82px);line-height:.91}.gate-copy p{color:#efe8ff;max-width:570px;margin:0;font-size:18px;line-height:1.7}.gate-tags{flex-wrap:wrap;gap:10px;display:flex}.gate-tags span{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#1b073ba6;border:1px solid #ffffff2b;border-radius:999px;padding:10px 14px;font-size:12px;font-weight:800;box-shadow:0 12px 30px #08001845}.school-gate .gate-card{color:#21162f;background:radial-gradient(circle at 88% 8%,#ff9a3a2e,#0000 25%),radial-gradient(circle at 8% 92%,#7044ff25,#0000 27%),linear-gradient(145deg,#fffaf4,#f5f1ff 56%,#edf6ff);flex-direction:column;justify-content:center;min-width:0;display:flex}.gate-card .gate-logo{color:#241637;margin-bottom:64px}.gate-logo img{border-radius:15px;width:48px;height:48px;box-shadow:0 12px 30px #4e2a7d32}.gate-card .eyebrow{color:#6a38d0}.gate-card h1{color:#21162f;font-size:clamp(40px,4vw,58px)}.gate-card p{color:#6e6579;max-width:470px}.gate-card form{max-width:500px}.gate-card label{color:#31253f}.gate-card input{color:#21162f;background:#ffffffcf;border-color:#ddd3ed;box-shadow:0 10px 32px #4d27750d}.gate-card input:focus{border-color:#7544e8;box-shadow:0 0 0 4px #7044e81c}.gate-card form>button{color:#fff;background:linear-gradient(135deg,#ff783d,#ef4e82 38%,#7940e5 72%,#276cf3);box-shadow:0 16px 38px #6533c63b}.gate-card small{color:#796e85;text-align:left;max-width:500px}.meal-card{padding:0;overflow:hidden}.meal-photo{background:linear-gradient(135deg,#eee7ff,#fff0db);place-items:center;height:205px;display:grid;position:relative;overflow:hidden}.meal-photo img{object-fit:cover;width:100%;height:100%;transition:transform .35s}.meal-card:hover .meal-photo img{transform:scale(1.04)}.meal-photo>span:not(.meal-type){filter:drop-shadow(0 15px 18px #40206c2a);font-size:72px}.meal-photo .meal-type{position:absolute;bottom:16px;left:16px;box-shadow:0 8px 22px #2d17442b}.meal-content{flex-direction:column;flex:1;padding:22px 24px 24px;display:flex}.meal-content h2{margin:0 0 8px}.meal-content>p{color:var(--muted);margin:0;line-height:1.6}.manage-meals{width:min(1320px,100%)}.meal-publisher{margin-bottom:34px}.meal-date{max-width:260px}.meal-editor-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.meal-editor{background:linear-gradient(155deg,#fff,#fbf8ff);border:1px solid #e6ddf0;border-radius:20px;align-content:start;gap:14px;min-width:0;padding:18px;display:grid}.meal-editor.snack{box-shadow:inset 0 4px #ffae35}.meal-editor.lunch{box-shadow:inset 0 4px #31be87}.meal-editor.dinner{box-shadow:inset 0 4px #7950e7}.meal-editor-title{align-items:center;gap:11px;display:flex}.meal-editor-title>span{background:#f4ecff;border-radius:13px;place-items:center;width:42px;height:42px;font-size:22px;display:grid}.meal-editor-title>div{gap:3px;display:grid}.meal-editor-title small,.upload-help{color:var(--muted);font-size:10px}.meal-editor-preview{object-fit:cover;border-radius:14px;width:100%;height:145px}.meal-editor input[type=file]{padding:10px;font-size:11px}.image-or{text-align:center;background:#e5ddec;height:1px;margin:3px 0;position:relative}.image-or span{color:#8b7b99;text-transform:uppercase;background:#fdfbff;padding:0 8px;font-size:10px;font-weight:850;position:relative;top:-8px}.manager-panel{background:linear-gradient(145deg,#fff,#f8f4ff);border:1px solid #e4dbef;border-radius:24px;grid-template-columns:.72fr 1.28fr;gap:28px;padding:28px;display:grid;box-shadow:0 18px 50px #45266f11}.manager-panel h2{margin:0 0 8px;font-size:29px}.manager-panel p{color:var(--muted);margin:0;line-height:1.65}.member-list{align-content:start;gap:9px;display:grid}.member-list article{background:#fff;border:1px solid #e6dfef;border-radius:14px;justify-content:space-between;align-items:center;gap:15px;padding:13px;display:flex}.member-list article>div{gap:3px;display:grid}.member-list article span{color:var(--muted);font-size:11px}.manager-toggle{color:#6331c5;background:#f7f2ff;border:1px solid #d6caeb;border-radius:10px;padding:8px 10px;font-size:11px;font-weight:800}.manager-toggle.active{color:#943b52;background:#fff1f4;border-color:#f0cad2}.users-admin{width:min(1280px,100%)}.users-heading{justify-content:space-between;align-items:flex-end;gap:28px;display:flex}.users-heading h1{letter-spacing:-.052em;margin:0;font-size:42px}.users-heading .lead{max-width:720px;margin:10px 0 0}.school-filter{color:#4f3f64;gap:7px;min-width:240px;font-size:11px;font-weight:850;display:grid}.school-filter select{color:#2d2040;background:#fff;border:1px solid #ddd3eb;border-radius:12px;padding:12px 14px}.platform-admin-note{color:#39245f;background:linear-gradient(135deg,#f8f3ff,#fff9ef);border:1px solid #d8caf0;border-radius:18px;align-items:flex-start;gap:15px;margin:24px 0 0;padding:18px 20px;display:flex}.platform-admin-note>span{color:#fff;background:linear-gradient(135deg,#6634d8,#ee557f);border-radius:12px;flex:none;place-items:center;width:38px;height:38px;display:grid}.platform-admin-note div{gap:4px;display:grid}.platform-admin-note p{color:var(--muted);margin:0;font-size:12px;line-height:1.55}.user-summary{grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:14px;margin:24px 0 22px;display:grid}.user-summary>div{background:linear-gradient(145deg,#fff,#faf7ff);border:1px solid #e3dbec;border-radius:18px;gap:4px;padding:21px;display:grid;box-shadow:0 12px 34px #45266f0b}.user-summary strong{color:#5228a4;font-size:32px;line-height:1}.user-summary span{color:var(--muted);font-size:12px;font-weight:720}.user-directory{background:#fff;border:1px solid #e2d9ec;border-radius:24px;overflow:hidden;box-shadow:0 20px 60px #45266f10}.user-directory>header{background:linear-gradient(120deg,#fff,#f9f5ff);border-bottom:1px solid #ebe5f1;justify-content:space-between;align-items:center;gap:20px;padding:22px 24px;display:flex}.user-directory>header>div{gap:4px;display:grid}.user-directory h2{margin:0;font-size:24px}.user-directory header span{color:var(--muted);font-size:11px}.user-search{background:#fff;border:1px solid #ddd3e9;border-radius:12px;align-items:center;gap:8px;width:min(360px,100%);padding:0 12px;display:flex}.user-search>span{color:#7454a2;font-size:18px}.user-search input{background:0 0;border:0;outline:0;width:100%;padding:11px 0}.admin-role-message{margin:16px 20px 0}.user-list{display:grid}.user-list article{border-bottom:1px solid #eee9f3;grid-template-columns:46px minmax(210px,1.3fr) minmax(150px,.8fr) auto minmax(140px,.65fr);align-items:center;gap:14px;padding:15px 24px;display:grid}.user-list article:last-child{border-bottom:0}.user-avatar{color:#fff;background:linear-gradient(135deg,#6b37dc,#ef4f87);border-radius:14px;place-items:center;width:42px;height:42px;font-weight:900;display:grid}.user-identity{gap:3px;min-width:0;display:grid}.user-identity strong,.user-identity span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.user-identity span,.user-school,.user-joined{color:var(--muted);font-size:11px}.user-role{color:#5f387c;text-align:center;white-space:nowrap;background:#f2eaff;border-radius:999px;padding:7px 10px;font-size:10px;font-weight:850}.user-role.school_admin,.user-role.admin{color:#145e49;background:#ddf7ec}.user-role.meal_manager{color:#845114;background:#fff1cc}.platform-admin-action{color:#5b2abb;background:#f7f2ff;border:1px solid #d6c9eb;border-radius:10px;padding:9px 11px;font-size:10px;font-weight:850}.platform-admin-action.remove{color:#96394e;background:#fff2f4;border-color:#efc9d1}.platform-admin-action:disabled{cursor:wait;opacity:.6}.access-protected{color:#4f7a69;text-align:center;font-size:10px;font-weight:850}.user-summary{grid-template-columns:repeat(auto-fit,minmax(135px,1fr))}.user-list.owner-actions article{grid-template-columns:46px minmax(170px,1.1fr) minmax(115px,.65fr) auto minmax(110px,.5fr) minmax(178px,.7fr)}.user-list article{transition:opacity .2s,background .2s}.user-list article.user-removed{opacity:.67;background:#faf8fb}.user-list article.user-removed .user-avatar{filter:grayscale()}.user-role.removed{color:#7c4d57;background:#f7e7ea}.user-access-actions{gap:7px;display:grid}.user-access-actions button{width:100%}.user-access-actions small{color:#8b6870;text-align:center;font-size:9px;line-height:1.35}.user-access-action{color:#96394e;background:#fff2f4;border:1px solid #efc9d1;border-radius:10px;padding:9px 11px;font-size:10px;font-weight:850}.user-access-action.restore{color:#17654e;background:#eafaf4;border-color:#bfe6d7}.user-access-action:disabled{cursor:wait;opacity:.6}.school-details{min-width:0}.school-key-row{align-items:center;gap:9px;margin-top:10px;display:flex}.school-key-row code{color:#4d2a7b;background:#f8f3ff;border:1px solid #e2d8ef;border-radius:9px;min-width:220px;padding:8px 10px;font-size:11px}.school-key-row button{color:#6030c3;background:0 0;border:0;font-size:11px;font-weight:800}.school-key-editor{background:#fbf8ff;border:1px solid #ded1f3;border-radius:14px;gap:9px;margin-top:12px;padding:14px;display:grid}.school-key-editor label{color:#3a2853;gap:6px;font-size:11px;font-weight:800;display:grid}.school-key-editor input{color:#231838;background:#fff;border:1px solid #d8cbea;border-radius:10px;width:100%;padding:11px 12px}.school-key-editor small{color:#756783;font-size:10px}.school-key-editor>div{gap:8px;display:flex}.primary-button.compact,.secondary-button.compact{border-radius:10px;padding:9px 12px;font-size:11px}.secondary-button{color:#543775;background:#fff;border:1px solid #d9cde9;font-weight:800}.school-actions{justify-items:end;gap:10px;display:grid}.danger-button{color:#9a3348;background:#fff2f4;border:1px solid #efc7cd;border-radius:10px;padding:8px 10px;font-size:11px;font-weight:800}.schools-admin{width:min(1320px,100%)}.schools-admin>.lead{max-width:850px}.billing-guardrail{color:#382251;background:linear-gradient(135deg,#faf6ff,#fffaf0);border:1px solid #dcd1ee;border-radius:18px;align-items:flex-start;gap:14px;margin:22px 0 28px;padding:18px 20px;display:flex}.billing-guardrail>span{color:#fff;background:linear-gradient(135deg,#6431ce,#f05b79);border-radius:13px;flex:none;place-items:center;width:40px;height:40px;font-size:19px;font-weight:950;display:grid}.billing-guardrail div{gap:4px;display:grid}.billing-guardrail p{color:var(--muted);margin:0;font-size:12px;line-height:1.55}.school-admin-notice{margin:18px 0 0}.approved-school-list .school-admin-card{align-items:stretch;gap:0;padding:0;display:grid;overflow:hidden}.school-card-header{justify-content:space-between;align-items:flex-start;gap:20px;padding:21px 23px;display:flex}.school-card-header .school-details{gap:4px;display:grid}.school-card-header .school-details>strong{font-size:19px}.school-card-header .status.removed{color:#8c4855;background:#f7e8eb}.school-billing-panel{background:linear-gradient(135deg,#fbf8ff,#fffdf7);border-top:1px solid #ece6f2;border-bottom:1px solid #ece6f2;gap:18px;padding:22px 23px;display:grid}.billing-panel-heading{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.billing-panel-heading h2{color:#3d226f;letter-spacing:-.04em;margin:5px 0 3px;font-size:31px}.billing-panel-heading p{color:var(--muted);margin:0;font-size:12px}.billing-state{white-space:nowrap;border-radius:999px;padding:8px 11px;font-weight:850;font-size:10px!important}.billing-state.disconnected{background:#fff0d1;color:#8c4b16!important}.billing-state.active{background:#dff8ed;color:#13644b!important}.billing-editor{grid-template-columns:1.15fr .9fr .9fr;gap:13px;display:grid}.billing-editor label{color:#46345c;gap:7px;font-size:11px;font-weight:850;display:grid}.billing-editor input,.billing-editor select{color:#2b1a40;background:#fff;border:1px solid #dbd1e8;border-radius:11px;width:100%;padding:11px 12px}.billing-editor input:disabled,.billing-editor select:disabled{color:#81758b;background:#f4f1f6}.billing-totals{grid-template-columns:repeat(3,minmax(120px,1fr)) auto;align-items:end;gap:11px;display:grid}.billing-totals>div{background:#fff;border:1px solid #e5dcec;border-radius:13px;gap:3px;padding:12px 13px;display:grid}.billing-totals span{color:var(--muted);font-size:10px!important}.billing-totals strong{color:#3f256e;font-size:17px}.billing-totals>small{max-width:180px;color:var(--muted);font-size:10px;line-height:1.4}.school-users-panel{display:grid}.school-users-toggle{color:#3b2853;text-align:left;background:#fff;border:0;justify-content:space-between;align-items:center;gap:20px;width:100%;padding:17px 23px;display:flex}.school-users-toggle:hover{background:#fcf9ff}.school-users-toggle>span{align-items:baseline;gap:5px;display:flex}.school-users-toggle>span>strong{color:#5d2cb9;font-size:22px}.school-users-toggle small{color:var(--muted);font-weight:650}.school-users-toggle>b{color:#6030bd;font-size:11px}.school-user-list{background:#fdfbff;border-top:1px solid #eee7f3;display:grid}.school-user-row{border-bottom:1px solid #eee8f3;grid-template-columns:42px 1fr auto;align-items:center;gap:12px;padding:13px 23px;display:grid}.school-user-row:last-child{border-bottom:0}.school-user-row>div{gap:3px;min-width:0;display:grid}.school-user-row>div strong,.school-user-row>div small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.school-user-row>div small{color:var(--muted)}.school-user-row>b{color:#5a3678;background:#f0e8fa;border-radius:999px;padding:6px 9px;font-size:9px}.school-user-row.removed{opacity:.62}.school-user-row.removed>b{color:#8b4553;background:#f7e7ea}.paystack-connect-panel{background:linear-gradient(135deg,#f5fbf8,#f8fbff);border:1px solid #d9e4df;border-radius:16px;gap:15px;padding:18px;display:grid}.paystack-connect-panel h3{color:#173f32;margin:4px 0 3px;font-size:19px}.paystack-connect-panel p{color:var(--muted);margin:0;font-size:11px;line-height:1.55}.paystack-fields{grid-template-columns:1.15fr .75fr .9fr auto;align-items:end;gap:12px;display:grid}.paystack-fields label,.payment-link-ready label{color:#345346;gap:7px;font-size:11px;font-weight:850;display:grid}.paystack-fields input,.payment-link-ready input{color:#173f32;background:#fff;border:1px solid #cfded7;border-radius:11px;width:100%;padding:11px 12px}.paystack-estimate{background:#fff;border:1px solid #cfe1d8;border-radius:13px;gap:3px;padding:10px 12px;display:grid}.paystack-estimate span{color:#557468;font-weight:750;font-size:9px!important}.paystack-estimate strong{color:#0e6047;font-size:17px}.paystack-estimate small,.payment-note{color:#687c75;font-size:9px;line-height:1.45}.payment-link-ready{border-top:1px solid #d9e7e0;grid-template-columns:1fr auto;align-items:end;gap:11px;padding-top:14px;display:grid}.payment-link-ready input{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px}.portal-transition{color:#fff;background:radial-gradient(circle at 50% 50%,var(--school-accent),#130329 62%,#070018);place-items:center;min-height:100vh;display:grid;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.portal-transition{background:radial-gradient(circle at 50% 50%,color-mix(in srgb,var(--school-accent) 68%,#2a0a67),#130329 62%,#070018)}}.portal-glow{background:var(--school-accent);filter:blur(90px);opacity:.22;border-radius:50%;width:460px;height:460px;animation:1.6s ease-in-out infinite alternate portal-breathe;position:absolute}.portal-rings{width:350px;height:350px;position:absolute}.portal-rings span{border:1px solid #ffffff30;border-radius:50%;animation:1.9s ease-out infinite portal-ring;position:absolute;inset:0}.portal-rings span:nth-child(2){animation-delay:.4s}.portal-rings span:nth-child(3){animation-delay:.8s}.portal-content{z-index:2;text-align:center;justify-items:center;max-width:720px;padding:32px;display:grid;position:relative}.portal-content>img,.portal-letter{object-fit:contain;background:#fff;border:2px solid #ffffff78;border-radius:30px;width:112px;height:112px;padding:9px;animation:1.1s cubic-bezier(.2,.8,.2,1) both portal-logo;box-shadow:0 25px 70px #05001185}.portal-letter{color:#4f22aa;place-items:center;font-size:48px;font-weight:950;display:grid}.portal-content>span{color:#ffd167;letter-spacing:.16em;text-transform:uppercase;margin-top:28px;font-size:11px;font-weight:900}.portal-content h1{letter-spacing:-.055em;margin:10px 0;font-size:clamp(38px,5vw,68px)}.portal-content p{color:#e8dff8;margin:0}.portal-progress{background:#ffffff20;border-radius:999px;width:min(330px,70vw);height:5px;margin-top:28px;overflow:hidden}.portal-progress i{border-radius:inherit;transform-origin:0;background:linear-gradient(90deg,#ffbc3f,#ff5c76,#8c55ff,#3b8cff);width:100%;height:100%;animation:1.8s ease-in-out both portal-progress;display:block}@keyframes portal-ring{0%{opacity:0;transform:scale(.45)}32%{opacity:.6}to{opacity:0;transform:scale(1.45)}}@keyframes portal-logo{0%{opacity:0;transform:scale(.6)rotate(-8deg)}to{opacity:1;transform:scale(1)rotate(0)}}@keyframes portal-progress{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes portal-breathe{0%{opacity:.16;transform:scale(.85)}to{opacity:.3;transform:scale(1.12)}}@media (max-width:980px){.school-gate{grid-template-rows:42% 58%;grid-template-columns:1fr}.school-gate .gate-showcase{min-height:0;padding:26px 30px}.gate-copy h2{font-size:46px}.gate-copy p,.gate-tags{display:none}.school-gate .gate-card{min-height:0;padding:28px}.gate-card .gate-logo{margin-bottom:24px}.gate-card p{margin-bottom:18px}.gate-card small{margin-top:14px}.auth-shell{grid-template-columns:1fr}.auth-story{display:none}.mobile-logo{align-items:center;gap:11px;margin-bottom:38px;font-size:19px;font-weight:900;display:flex}.mobile-logo img{border-radius:12px;width:40px;height:40px}.app-shell{grid-template-columns:1fr}.sidebar{display:none}.mobile-header{color:#fff;background:var(--forest);padding:18px 22px;display:flex}.bottom-nav{z-index:10;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffffeb;border:1px solid #dbe2dc;border-radius:18px;grid-auto-columns:1fr;grid-auto-flow:column;padding:7px;display:grid;position:fixed;bottom:12px;left:12px;right:12px;box-shadow:0 14px 40px #173b2c35}.bottom-nav button{color:#718078;background:0 0;border:0;border-radius:12px;justify-items:center;gap:3px;padding:7px 3px;display:grid}.bottom-nav button.active{color:#08734f;background:#e7f5ed}.bottom-nav span{font-size:18px}.bottom-nav small{font-size:9px;font-weight:750}.page-wrap{padding:36px 22px 105px}.setup-note{margin:16px 22px 0}.hero-card{grid-template-columns:1fr}.hero-visual{display:none}.snack-grid{grid-template-columns:repeat(2,1fr)}.meal-editor-grid,.manager-panel{grid-template-columns:1fr}.users-heading{flex-direction:column;align-items:flex-start}.school-filter{width:100%}.user-summary{grid-template-columns:repeat(2,1fr)}.user-list article,.user-list.owner-actions article{grid-template-columns:46px minmax(0,1fr) auto}.user-school,.user-joined,.platform-admin-action,.access-protected{grid-column:2/-1;justify-self:start}.bottom-nav{grid-auto-columns:minmax(72px,1fr);overflow-x:auto}.meal-grid{grid-template-columns:1fr}.messages-layout{grid-template-columns:220px 1fr}.billing-editor{grid-template-columns:1fr 1fr}.billing-totals{grid-template-columns:repeat(3,1fr)}.billing-totals>.primary-button,.billing-totals>small{grid-column:1/-1;justify-self:start}.paystack-fields{grid-template-columns:1fr 1fr}.paystack-fields>.primary-button{justify-self:start}.app-shell{height:100svh;min-height:0;overflow:hidden}.main-panel{flex-direction:column;height:100svh;display:flex;overflow:hidden}.mobile-header{flex:none;justify-content:space-between;align-items:center}.mobile-logout{color:#fff;background:#ffffff12;border:1px solid #ffffff38;border-radius:10px;padding:8px 11px;font-size:11px;font-weight:800}.main-panel>.page-wrap{overscroll-behavior:contain;scrollbar-width:thin;flex:auto;height:auto;overflow-y:auto}.main-panel>.setup-note,.bottom-nav{flex:none}.auth-shell,.school-gate,.portal-transition{overscroll-behavior:none}}@media (max-width:620px){.school-gate{grid-template-rows:34% 66%;min-height:520px}.school-gate .gate-showcase{min-height:0;padding:20px 22px}.gate-copy h2{font-size:34px}.gate-brand img{width:40px;height:40px}.school-gate .gate-card{min-height:0;padding:20px 22px}.gate-card .gate-logo{display:none}.gate-card h1{font-size:34px}.gate-card p{font-size:13px;line-height:1.45}.gate-card input,.gate-card form>button{padding:12px 14px}.auth-panel{padding:22px 16px}.page-heading{flex-direction:column;align-items:flex-start}.page-heading h1,.page-wrap>h1{font-size:35px}.hero-card{border-radius:24px;min-height:0;padding:28px 24px}.hero-card h2{font-size:33px}.stat-grid,.snack-grid,.principles,.form-grid{grid-template-columns:1fr}.stat-card{min-height:125px}.snack-card{grid-template-columns:105px 1fr;display:grid}.snack-emoji{min-height:100%}.snack-emoji img{height:100%}.request-list>article,.approved-school-list article,.member-list article{flex-direction:column;align-items:flex-start}.school-actions{justify-items:start}.school-key-row{flex-wrap:wrap}.school-key-row code{min-width:100%}.story-points{flex-wrap:wrap}.messages-layout{grid-template-columns:1fr}.thread-list{border-right:0;border-bottom:1px solid var(--line);max-height:180px;overflow-y:auto}.chat-panel{min-height:450px}.chat-bubble{max-width:88%}.user-summary{grid-template-columns:1fr 1fr}.user-directory>header{flex-direction:column;align-items:stretch}.user-search{width:100%}.user-list article,.user-list.owner-actions article{grid-template-columns:42px 1fr;padding:14px 16px}.user-role{grid-column:2;justify-self:start}.user-school,.user-joined,.platform-admin-action,.access-protected{grid-column:2}.dashboard-actions{width:100%}.dashboard-actions button{flex:1 1 0;padding:13px 11px}.share-confirmation{margin:-19px 0 18px}.school-card-header,.billing-panel-heading{flex-direction:column;align-items:stretch}.school-card-header,.school-billing-panel{padding:18px}.billing-editor,.billing-totals,.paystack-fields,.payment-link-ready{grid-template-columns:1fr}.billing-totals>.primary-button,.billing-totals>small,.paystack-fields>.primary-button,.payment-link-ready>.secondary-button{grid-column:auto;width:100%}.school-users-toggle{align-items:flex-start;padding:15px 18px}.school-users-toggle>span{flex-wrap:wrap}.school-user-row{grid-template-columns:38px 1fr;padding:12px 18px}.school-user-row>b{grid-column:2;justify-self:start}.auth-shell{height:100svh;min-height:0;overflow:hidden}.auth-panel{height:100%;padding:16px;overflow-y:auto}.auth-card{padding:10px 18px 16px}.mobile-logo{margin-bottom:18px}.change-school{margin-bottom:14px}.auth-card h2{font-size:31px}.auth-card>p{margin-bottom:17px;line-height:1.5}.auth-card form{gap:12px}.auth-card input{padding:12px 13px}.auth-card form>button{padding:13px 16px}.mode-switch{margin-top:11px;font-size:13px}.privacy-note{margin-top:14px;padding:11px;font-size:11px}.meal-toast{top:74px;right:16px}.alerts-page .page-heading{gap:16px}.alert-permission{grid-template-columns:auto 1fr;padding:16px}.alert-permission>span{grid-column:1/-1;justify-self:start}.alert-feed>article{grid-template-columns:82px 1fr;gap:13px}.alert-feed img,.alert-placeholder{width:82px;height:76px}.alert-feed article>button{grid-column:1/-1;width:100%}.mobile-header .brand span{font-size:17px}}.loading-logo,.brand-mark,.logo-pill img,.mobile-logo img,.gate-brand img,.gate-logo img{object-fit:contain;box-shadow:none;background:0 0;border:0;border-radius:0;padding:0}.loading-logo{width:112px;height:112px}.brand-mark{width:48px;height:48px}.logo-pill img,.mobile-logo img{width:68px;height:68px}.gate-brand img,.gate-logo img{width:112px;height:112px}.gate-brand strong,.gate-logo span{display:none}@media (max-width:620px){.brand-mark{width:42px;height:42px}.gate-brand img{width:78px;height:78px}}@media (max-width:980px){.user-access-actions{grid-column:2/-1;justify-self:start;width:min(220px,100%)}}.gate-links{justify-content:space-between;align-items:center;gap:16px;margin-top:15px;display:flex}.gate-about-link,.gate-download-link{color:#6732c8;font-size:12px;font-weight:850;text-decoration:none}.gate-download-link{color:#0b7654}.gate-about-link:hover,.gate-download-link:hover{text-decoration:underline}.about-founder{color:#211238;background:#f8f5ff;min-height:100%}.about-founder.public{min-height:100vh}.about-founder.embedded{width:100%;height:100%;overflow-y:auto}.about-topbar{justify-content:space-between;align-items:center;gap:22px;width:min(1240px,100% - 56px);margin:0 auto;padding:24px 0;display:flex}.about-brand{color:#251149;align-items:center;gap:12px;font-size:20px;font-weight:950;text-decoration:none;display:flex}.about-brand img{object-fit:contain;width:58px;height:58px}.about-enter{color:#5b2bb9;background:#ffffffc9;border:1px solid #ddd2ee;border-radius:13px;padding:11px 16px;font-size:12px;font-weight:850;text-decoration:none}.about-main{width:min(1240px,100%);margin:0 auto;padding:34px 48px 80px}.about-founder.embedded .about-main{padding-top:50px}.about-hero{color:#fff;background:radial-gradient(circle at 90% 15%,#347fff7a,#0000 26%),radial-gradient(circle at 10% 95%,#ff654d4f,#0000 29%),linear-gradient(135deg,#16042f,#3b126f 48%,#3120a3);border-radius:34px;grid-template-columns:minmax(0,1.12fr) minmax(330px,.88fr);align-items:center;min-height:570px;padding:64px;display:grid;position:relative;overflow:hidden;box-shadow:0 34px 90px #35136235}.about-hero:after{content:"";pointer-events:none;background-image:linear-gradient(#ffffff0b 1px,#0000 1px),linear-gradient(90deg,#ffffff0b 1px,#0000 1px);background-size:42px 42px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#000,#0000);mask-image:linear-gradient(90deg,#000,#0000)}.about-hero-copy,.founder-visual{z-index:1;position:relative}.about-kicker{color:#ffc95a;letter-spacing:.16em;text-transform:uppercase;font-size:11px;font-weight:950}.about-hero h1{letter-spacing:-.066em;max-width:700px;margin:15px 0 20px;font-size:clamp(48px,6vw,82px);line-height:.94}.about-intro{color:#eee7ff;max-width:690px;margin:0;font-size:19px;line-height:1.7}.about-actions{flex-wrap:wrap;align-items:center;gap:18px;margin-top:30px;display:flex}.about-actions a,.about-vision a{color:#291246;background:linear-gradient(135deg,#ffe89b,#ffb938);border-radius:14px;padding:14px 20px;font-size:13px;font-weight:900;text-decoration:none;box-shadow:0 14px 34px #10002044}.about-actions span{color:#d9d0ee;font-size:11px;font-weight:750}.founder-visual{place-items:center;min-height:380px;display:grid}.founder-orbit{border:1px solid #ffffff2b;border-radius:50%;position:absolute}.orbit-one{width:330px;height:330px;animation:18s linear infinite founder-spin}.orbit-two{border-style:dashed;width:245px;height:245px;animation:13s linear infinite reverse founder-spin}.founder-monogram{color:#fff;letter-spacing:-.08em;background:linear-gradient(145deg,#ff6b3d,#ec3f86 42%,#7545ef 76%,#2c78f4);border:2px solid #ffffff70;border-radius:58px;place-items:center;width:190px;height:190px;font-size:92px;font-weight:950;display:grid;position:relative;transform:rotate(-4deg);box-shadow:0 28px 80px #08001680,inset 0 1px #ffffff70}.founder-card{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#17052dbd;border:1px solid #ffffff38;border-radius:17px;gap:4px;padding:15px 18px;display:grid;position:absolute;bottom:20px;right:4px;box-shadow:0 20px 50px #08001466}.founder-card strong{font-size:14px}.founder-card span{color:#d7cced;font-size:10px}.about-story-grid{grid-template-columns:1fr 1fr;gap:18px;margin:22px 0;display:grid}.about-story{background:#fff;border:1px solid #e3d9ef;border-radius:28px;min-height:300px;padding:38px;box-shadow:0 18px 55px #3b1f660f}.about-story.accent{background:linear-gradient(145deg,#fff9e7,#fff 65%)}.about-story>span,.about-vision span{color:#6b38cf;letter-spacing:.14em;text-transform:uppercase;font-size:10px;font-weight:950}.about-story h2{color:#26133e;letter-spacing:-.045em;max-width:480px;margin:18px 0 15px;font-size:36px;line-height:1.02}.about-story p{color:#6b6275;margin:0;font-size:15px;line-height:1.75}.about-values{color:#fff;background:linear-gradient(135deg,#25104e,#5b24ab 56%,#2e6ad4);border-radius:30px;grid-template-columns:.78fr 1.22fr;gap:45px;margin:22px 0;padding:46px;display:grid}.about-values h2{letter-spacing:-.05em;max-width:430px;margin:14px 0 0;font-size:41px;line-height:1}.about-value-list{gap:12px;display:grid}.about-value-list article{background:#ffffff0e;border:1px solid #ffffff25;border-radius:18px;grid-template-columns:42px 1fr;column-gap:14px;padding:17px;display:grid}.about-value-list b{color:#30124f;background:#ffd064;border-radius:13px;grid-row:1/3;place-items:center;width:42px;height:42px;font-size:20px;display:grid}.about-value-list strong{font-size:14px}.about-value-list p{color:#ddd4ed;margin:5px 0 0;font-size:11px;line-height:1.5}.about-vision{background:#fff;border:1px solid #e2d9ec;border-radius:30px;grid-template-columns:1fr 1fr;min-height:400px;display:grid;overflow:hidden;box-shadow:0 22px 65px #39205e16}.about-vision img{object-fit:cover;width:100%;height:100%;min-height:400px}.about-vision>div{flex-direction:column;justify-content:center;align-items:flex-start;padding:48px;display:flex}.about-vision h2{color:#26123f;letter-spacing:-.05em;margin:15px 0 14px;font-size:40px;line-height:1.02}.about-vision p{color:#6e6478;margin:0 0 25px;font-size:15px;line-height:1.7}@keyframes founder-spin{to{transform:rotate(360deg)}}@media (max-width:980px){.about-founder.embedded{flex:auto;overflow-y:auto}.about-main,.about-founder.embedded .about-main{padding:32px 22px 110px}.about-hero{grid-template-columns:1fr;min-height:0;padding:42px 32px}.founder-visual{min-height:330px}.founder-card{right:10%}.about-values{grid-template-columns:1fr}}@media (max-width:620px){.gate-about-link{margin-top:9px}.about-topbar{width:calc(100% - 32px);padding:14px 0}.about-brand img{width:45px;height:45px}.about-brand span{font-size:17px}.about-enter{padding:9px 11px;font-size:10px}.about-main,.about-founder.embedded .about-main{padding:18px 15px 96px}.about-hero{border-radius:24px;padding:34px 23px}.about-hero h1{font-size:45px}.about-intro{font-size:16px}.founder-visual{min-height:290px}.orbit-one{width:260px;height:260px}.orbit-two{width:205px;height:205px}.founder-monogram{border-radius:48px;width:156px;height:156px;font-size:76px}.founder-card{bottom:4px;right:0}.about-story-grid,.about-vision{grid-template-columns:1fr}.about-story{min-height:0;padding:27px}.about-story h2{font-size:31px}.about-values{gap:28px;padding:30px 24px}.about-values h2{font-size:35px}.about-vision img{height:250px;min-height:250px}.about-vision>div{padding:30px 25px}.about-vision h2{font-size:34px}}.app-device-tools{z-index:90;right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));align-items:center;gap:8px;display:flex;position:fixed}.connection-pill,.install-app-button{color:#fff;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#241048e8;border:1px solid #ffffff35;border-radius:999px;min-height:42px;padding:10px 14px;font-size:11px;font-weight:850;box-shadow:0 14px 36px #1d073d3d}.connection-pill{color:#fff1cf;background:#713618ed;align-items:center;gap:7px;display:flex}.connection-pill i{background:#ffc85a;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #ffc85a22}.install-app-button{align-items:center;gap:7px;text-decoration:none;display:flex}.install-app-button:hover{background:#35156a;transform:translateY(-1px)}.install-app-button span{color:#2a1247;background:#ffd05a;border-radius:7px;place-items:center;width:20px;height:20px;font-size:16px;display:grid}.install-help-backdrop{z-index:120;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#120526b8;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.install-help{color:#211238;background:#fff;border:1px solid #e5dbf1;border-radius:28px;justify-items:start;width:min(100%,460px);padding:34px;display:grid;position:relative;box-shadow:0 34px 100px #0d021e82}.install-help>img{object-fit:contain;width:92px;height:92px;margin-bottom:16px}.install-help h2{letter-spacing:-.045em;margin:0 0 12px;font-size:32px;line-height:1.02}.install-help p{color:#655b70;margin:0;line-height:1.65}.install-help>small{color:#7d7287;margin:16px 0 22px;line-height:1.5}.install-help>.primary-button{justify-self:stretch}.install-help-close{color:#5b4d68;background:#f2edf7;border:0;border-radius:50%;place-items:center;width:38px;height:38px;font-size:24px;display:grid;position:absolute;top:16px;right:16px}.offline-launch{color:#fff;background:radial-gradient(circle at 15% 12%,#ff713b40,#0000 28%),radial-gradient(circle at 88% 30%,#2d72ff4a,#0000 32%),linear-gradient(145deg,#14042d,#3a176e 56%,#142e63);place-items:center;min-height:100svh;padding:32px;display:grid}.offline-launch>section{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#13052bc2;border:1px solid #ffffff28;border-radius:30px;justify-items:start;width:min(100%,560px);padding:42px;display:grid;box-shadow:0 30px 90px #09001775}.offline-launch img{object-fit:contain;width:110px;height:110px;margin-bottom:20px}.offline-launch .eyebrow{color:#ffd05a}.offline-launch h1{letter-spacing:-.055em;margin:0 0 16px;font-size:clamp(38px,6vw,60px);line-height:.98}.offline-launch p{color:#e2d9ee;margin:0 0 24px;line-height:1.65}.offline-launch button{color:#271144;background:linear-gradient(135deg,#ffe18a,#ffad37);border:0;border-radius:14px;padding:14px 22px;font-weight:900}.offline-launch small{color:#bfb1d3;margin-top:20px}.mobile-menu-backdrop,.mobile-more-menu{display:none}@media (max-width:980px){.bottom-nav{grid-auto-flow:initial;grid-auto-columns:initial;padding-bottom:max(7px,env(safe-area-inset-bottom));grid-template-columns:repeat(5,minmax(0,1fr));overflow:visible}.bottom-nav button{min-width:0;min-height:48px}.mobile-menu-backdrop{z-index:18;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#12052670;border:0;display:block;position:fixed;inset:0}.mobile-more-menu{z-index:20;left:max(12px,env(safe-area-inset-left));right:max(12px,env(safe-area-inset-right));bottom:calc(84px + env(safe-area-inset-bottom));background:#fffdfd;border:1px solid #e4dbec;border-radius:24px;gap:18px;padding:20px;display:grid;position:fixed;box-shadow:0 24px 70px #200b3b52}.mobile-more-menu header{justify-content:space-between;align-items:center;gap:16px;display:flex}.mobile-more-menu header>div{display:grid}.mobile-more-menu header .eyebrow{margin-bottom:3px}.mobile-more-menu header strong{color:#281541;font-size:19px}.mobile-more-menu header>button{color:#5e5269;background:#f2edf5;border:0;border-radius:50%;place-items:center;width:38px;height:38px;font-size:24px;display:grid}.mobile-more-menu>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.mobile-more-menu>div>button{color:#4e4257;text-align:left;background:#faf8fc;border:1px solid #ece5f0;border-radius:14px;grid-template-columns:30px 1fr auto;align-items:center;gap:9px;min-height:52px;padding:10px 12px;display:grid;position:relative}.mobile-more-menu>div>button.active{color:#5427ac;background:#f1e9fd;border-color:#d7c7ef}.mobile-more-menu>div>button>span{text-align:center;font-size:20px}.mobile-more-menu>div>button>strong{font-size:12px}.mobile-more-menu>div>button>b{color:#351550;background:#ffd05a;border-radius:999px;place-items:center;min-width:20px;height:20px;font-size:9px;display:grid}.app-device-tools{bottom:calc(92px + env(safe-area-inset-bottom))}}@media (max-width:620px){.app-device-tools{right:10px;bottom:calc(90px + env(safe-area-inset-bottom))}.connection-pill,.install-app-button{min-height:38px;padding:8px 11px;font-size:10px}.install-help{border-radius:24px;padding:28px 23px}.install-help h2{font-size:29px}.offline-launch{padding:18px}.offline-launch>section{border-radius:24px;padding:30px 24px}.offline-launch img{width:88px;height:88px}.mobile-more-menu{padding:17px}.mobile-more-menu>div{grid-template-columns:1fr 1fr}}@media (display-mode:standalone) and (max-width:980px){.mobile-header{padding-top:calc(18px + env(safe-area-inset-top));padding-left:max(22px,env(safe-area-inset-left));padding-right:max(22px,env(safe-area-inset-right))}.school-gate,.auth-shell,.portal-transition,.offline-launch{padding-top:env(safe-area-inset-top);padding-left:max(0px,env(safe-area-inset-left));padding-right:max(0px,env(safe-area-inset-right))}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.download-page{color:#25143c;background:radial-gradient(circle at 8% 8%,#ffbd4f33,#0000 23%),radial-gradient(circle at 90% 28%,#5f80ff30,#0000 27%),#faf8fd;min-height:100vh;padding-bottom:70px}.download-topbar{justify-content:space-between;align-items:center;gap:20px;width:min(1240px,100% - 48px);margin:0 auto;padding:22px 0;display:flex}.download-brand{color:#271341;align-items:center;gap:11px;font-size:20px;font-weight:950;text-decoration:none;display:flex}.download-brand img{object-fit:contain;width:56px;height:56px}.download-topbar>a:last-child{color:#5b2bb9;background:#ffffffc9;border:1px solid #dfd3ea;border-radius:13px;padding:11px 16px;font-size:12px;font-weight:850;text-decoration:none}.download-hero{color:#fff;background:radial-gradient(circle at 82% 15%,#397eff65,#0000 27%),radial-gradient(circle at 8% 92%,#ff654b55,#0000 29%),linear-gradient(135deg,#170430,#471778 52%,#2939a0);border-radius:36px;grid-template-columns:1.15fr .85fr;align-items:center;gap:50px;width:min(1240px,100% - 48px);min-height:600px;margin:16px auto 22px;padding:64px;display:grid;position:relative;overflow:hidden;box-shadow:0 35px 95px #32105d36}.download-hero:after{content:"";pointer-events:none;background-image:linear-gradient(#ffffff0b 1px,#0000 1px),linear-gradient(90deg,#ffffff0b 1px,#0000 1px);background-size:42px 42px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#000,#0000);mask-image:linear-gradient(90deg,#000,#0000)}.download-hero>div{z-index:1;position:relative}.download-hero .eyebrow{color:#ffd05a}.download-hero h1{letter-spacing:-.066em;max-width:760px;margin:15px 0 20px;font-size:clamp(48px,6.2vw,82px);line-height:.94}.download-hero p{color:#eee8f9;max-width:680px;margin:0;font-size:19px;line-height:1.7}.download-hero>div:first-child>button{color:#281245;background:linear-gradient(135deg,#ffe696,#ffb83e);border:0;border-radius:15px;margin-top:30px;padding:15px 22px;font-weight:900;box-shadow:0 15px 38px #12002055}.download-hero>div:first-child>button:disabled{color:#e6ddf2;box-shadow:none;background:#ffffff18}.download-hero>div:first-child>small{color:#cfc4df;margin-top:14px;display:block}.download-device{color:#2e1550;text-align:center;background:radial-gradient(circle at 50% 5%,#ffb13d48,#0000 26%),linear-gradient(165deg,#f9f5ff,#e9def6);border:8px solid #16052c;border-radius:50px;flex-direction:column;justify-self:center;align-items:center;width:min(310px,90%);min-height:510px;padding:42px 24px 30px;display:flex;transform:rotate(4deg);box-shadow:0 35px 80px #09001685,inset 0 0 0 1px #fff}.device-speaker{background:#19052d;border-radius:999px;width:78px;height:7px;position:absolute;top:15px}.download-device>img{object-fit:contain;width:180px;height:180px;margin:25px 0 12px}.download-device>strong{letter-spacing:-.05em;font-size:32px;line-height:1.02}.download-device>div{grid-template-columns:repeat(3,1fr);gap:10px;width:100%;margin-top:auto;display:grid}.download-device i{background:linear-gradient(160deg,#6940cb,#402096);border-radius:16px;height:62px}.download-device i:nth-child(2){background:linear-gradient(160deg,#ffbd43,#ff7b31)}.download-device i:nth-child(3){background:linear-gradient(160deg,#3389f5,#2854bc)}.download-options{grid-template-columns:repeat(3,1fr);gap:15px;width:min(1240px,100% - 48px);margin:0 auto;display:grid}.download-options article{background:#ffffffd9;border:1px solid #e6ddec;border-radius:27px;grid-template-columns:52px 1fr;align-items:start;gap:14px;min-height:235px;padding:28px;display:grid;box-shadow:0 18px 55px #2d155812}.download-options article>span{color:#fff;background:linear-gradient(135deg,#6331c2,#2f6ef2);border-radius:17px;place-items:center;width:52px;height:52px;font-size:25px;display:grid}.download-options article>div small{color:#7b6a8b;letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:850}.download-options h2{letter-spacing:-.035em;margin:5px 0 9px;font-size:24px}.download-options p{color:#6c6374;margin:0;font-size:12px;line-height:1.65}.download-options article>b,.download-options article>button{color:#796887;text-transform:uppercase;letter-spacing:.08em;background:#faf7fc;border:1px solid #e1d7e9;border-radius:999px;grid-column:1/-1;place-self:end start;padding:8px 11px;font-size:9px}.download-options article.available{background:linear-gradient(145deg,#f2fbf7,#fff);border-color:#cfe6dc}.download-options article.available>span{background:linear-gradient(135deg,#0b9165,#2076b7)}.download-options article>button{color:#fff;background:#0b825d;border:0;font-weight:850}.download-trust{grid-template-columns:repeat(3,1fr);gap:30px;width:min(1160px,100% - 64px);margin:65px auto 0;display:grid}.download-trust>div{grid-template-columns:38px 1fr;column-gap:12px;display:grid}.download-trust span{color:#5e2cba;background:#eee4fa;border-radius:12px;grid-row:1/3;place-items:center;width:38px;height:38px;font-size:10px;font-weight:950;display:grid}.download-trust strong{font-size:14px}.download-trust p{color:#746a7c;margin:6px 0 0;font-size:11px;line-height:1.55}.download-help{z-index:120;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#130628ba;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.download-help>section{background:#fff;border-radius:27px;width:min(100%,470px);padding:34px;position:relative;box-shadow:0 35px 100px #0b021a80}.download-help>section>button:first-child{color:#5b4b66;background:#f2edf5;border:0;border-radius:50%;place-items:center;width:38px;height:38px;font-size:24px;display:grid;position:absolute;top:14px;right:14px}.download-help h2{letter-spacing:-.045em;margin:0 0 13px;font-size:32px}.download-help p{color:#675d70;margin:0 0 22px;line-height:1.65}.download-help .eyebrow{color:#6b38c1;margin:0 0 9px;display:block}.download-help ol{color:#4e4058;gap:13px;margin:0;padding-left:22px;display:grid}.download-help li{padding-left:3px;font-size:12px;line-height:1.55}.download-help li strong{color:#28163d;font-size:13px;display:block}.download-help aside{color:#6b5126;background:#fff8e8;border:1px solid #efd59c;border-radius:14px;margin:20px 0;padding:13px 15px;font-size:11px;line-height:1.55}.download-help-actions{gap:10px;display:flex}.download-help-actions a,.download-help-actions button{text-align:center;border:0;border-radius:12px;flex:1;padding:12px 14px;font-size:11px;font-weight:900;text-decoration:none}.download-help-actions a{color:#fff;background:#0b825d}.download-help-actions button{color:#55316f;background:#eee8f4}.apple-help-link{color:#5c2db5;text-align:center;margin-top:14px;font-size:10px;font-weight:850;display:block}.download-options article>button.mac-install-help{color:#5b2bb9;letter-spacing:0;text-transform:none;background:0 0;border:0;grid-column:1/-1;justify-self:start;margin-top:-3px;padding:0;font-size:10px;font-weight:850;text-decoration:underline}@media (max-width:980px){.download-hero{grid-template-columns:1fr;padding:46px 36px}.download-device{min-height:460px}.download-options{grid-template-columns:1fr}.download-options article{min-height:0}.download-trust{grid-template-columns:1fr}}@media (max-width:620px){.download-topbar{width:calc(100% - 30px);padding:14px 0}.download-brand img{width:45px;height:45px}.download-brand span{font-size:17px}.download-topbar>a:last-child{padding:9px 11px;font-size:10px}.download-hero{border-radius:25px;width:calc(100% - 24px);min-height:0;padding:35px 23px}.download-hero h1{font-size:44px}.download-hero p{font-size:16px}.download-device{border-radius:42px;width:250px;min-height:410px}.download-device>img{width:145px;height:145px}.download-options{width:calc(100% - 24px)}.download-options article{border-radius:22px;padding:22px}.download-trust{width:calc(100% - 38px);margin-top:45px}.download-help{padding:10px}.download-help>section{max-height:calc(100vh - 20px);padding:29px 23px;overflow-y:auto}.download-help-actions{flex-direction:column}}.download-primary{color:#281245;background:linear-gradient(135deg,#ffe696,#ffb83e);border-radius:15px;margin-top:30px;padding:15px 22px;font-weight:900;text-decoration:none;display:inline-flex;box-shadow:0 15px 38px #12002055}.download-primary:hover{transform:translateY(-2px)}.desktop-preview{border-width:7px;border-radius:28px;width:min(500px,96%);min-height:390px;padding:62px 34px 28px;position:relative;transform:rotate(2deg)}.desktop-preview .desktop-titlebar{background:#f3edf8;border-bottom:1px solid #d7cee2;align-items:center;gap:8px;height:42px;padding:0 16px;display:flex;position:absolute;top:0;left:0;right:0}.desktop-preview .desktop-titlebar i{background:#ff655d;border-radius:50%;width:11px;height:11px}.desktop-preview .desktop-titlebar i:nth-child(2){background:#ffbd44}.desktop-preview .desktop-titlebar i:nth-child(3){background:#2ccc63}.desktop-preview .desktop-titlebar b{color:#675674;margin-left:8px;font-size:11px}.desktop-preview>img{width:145px;height:145px;margin:5px 0 8px}.desktop-preview>strong{font-size:29px}.desktop-preview>div{margin-top:32px}.download-section-heading{width:min(1240px,100% - 48px);margin:70px auto 22px}.download-section-heading .eyebrow{color:#6840bb}.download-section-heading h2{color:#28143e;letter-spacing:-.055em;margin:8px 0 10px;font-size:clamp(34px,4.2vw,54px)}.download-section-heading p{color:#75687f;max-width:720px;margin:0;line-height:1.65}.desktop-downloads article{min-height:300px;position:relative}.desktop-downloads article.recommended:before{content:"Best for this computer";color:#07563e;letter-spacing:.07em;text-transform:uppercase;background:#c9f4df;border-radius:999px;padding:6px 9px;font-size:8px;font-weight:950;position:absolute;top:17px;right:17px}.download-options article>a{color:#fff;background:#0b825d;border-radius:12px;grid-column:1/-1;place-self:end start;padding:12px 15px;font-size:11px;font-weight:900;text-decoration:none}.download-options article>a:hover{background:#076a4b;transform:translateY(-1px)}.desktop-downloads article>b{justify-self:end;margin-top:-36px}.installer-note{color:#563d16;background:#fff8e7;border:1px solid #ead4a0;border-radius:18px;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;width:min(1180px,100% - 64px);margin:20px auto 0;padding:18px 20px;display:grid}.installer-note strong{white-space:nowrap}.installer-note p{color:#6d5b3c;margin:0;font-size:11px;line-height:1.55}.installer-note a{color:#5d2db8;font-size:10px;font-weight:850}.mobile-heading{margin-top:78px}.store-options{grid-template-columns:repeat(2,1fr)}.store-options article{min-height:230px}@media (max-width:980px){.desktop-preview{width:min(520px,96%)}.store-options{grid-template-columns:1fr}.desktop-downloads article{min-height:0}.installer-note{grid-template-columns:1fr}.desktop-downloads article>b{justify-self:start;margin-top:0}}@media (max-width:620px){.download-section-heading{width:calc(100% - 30px);margin-top:52px}.download-section-heading h2{font-size:37px}.desktop-preview{border-radius:24px;width:100%;min-height:330px}.desktop-downloads article.recommended:before{grid-column:1/-1;justify-self:start;position:static}.installer-note{width:calc(100% - 30px)}.download-primary{justify-content:center;width:100%}}html.native-app .gate-links{display:none}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
