@import "https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;700;800&family=Material+Symbols+Rounded:FILL@0..1&family=Space+Grotesk:wght@500;700&display=swap";.app-shell{min-height:100svh;padding:18px 14px calc(96px + var(--tg-safe-area-inset-bottom,0px));box-sizing:border-box;flex-direction:column;gap:14px;display:flex}.auth-shell{justify-content:center}.auth-card,.bottom-nav,.notice-card,.step-card,.stat-card,.list-card{-webkit-backdrop-filter:blur(18px)}.auth-card{border:1px solid var(--border);background:var(--panel);box-shadow:var(--shadow-soft);border-radius:28px;flex-direction:column;gap:14px;padding:18px;display:flex}.unauthorized-card{max-width:420px}.auth-card--loading{text-align:center;justify-content:center;align-items:center;min-height:240px}.panel-grid,.steps,.stack-list{gap:14px;display:grid}.panel-grid,.steps{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.stat-card,.step-card,.list-card,.notice-card{border:1px solid var(--border-soft);background:var(--surface);box-shadow:var(--shadow-soft);border-radius:22px;padding:14px}.accent-card{background:color-mix(in srgb, var(--accent) 94%, transparent);color:var(--accent-contrast)}.accent-card .card-label,.accent-card p{color:var(--accent-contrast-soft)}.step-card.complete{box-shadow:var(--shadow-soft), inset 0 0 0 1px #297a6c2e;border-color:#297a6c73}.profile-card{align-items:center;gap:14px;display:flex}.profile-page{gap:18px}.profile-section{gap:10px;display:grid}.profile-section__title{letter-spacing:.16em;text-transform:uppercase;color:var(--muted);padding-inline:6px;font-size:.82rem;font-weight:800}.profile-card--summary{border:1px solid var(--border-soft);background:var(--surface);min-height:138px;box-shadow:var(--shadow-soft);border-radius:34px;padding:0}.profile-card__copy{flex:auto;gap:6px;min-width:0;display:grid}.profile-card__copy strong{letter-spacing:-.05em;font-size:clamp(1.75rem,4.4vw,2.3rem);line-height:1.02}.profile-card__copy p{color:var(--muted);font-size:1.05rem}.avatar{block-size:96px;inline-size:96px;font-family:var(--heading);color:var(--accent-contrast);background:linear-gradient(#7472ff 0%,#625ff4 100%);border-radius:50%;flex:none;place-items:center;font-size:2rem;font-weight:700;display:grid;box-shadow:inset 0 1px #ffffff4d}.eyebrow,.card-label,.helper-text{color:var(--muted)}.eyebrow,.card-label{letter-spacing:.04em;text-transform:none;font-size:12px}.lead{max-width:38ch}.phone-form{gap:12px;display:grid}.phone-form label{color:var(--text-strong);font-size:14px;font-weight:700}.phone-form input{border:1px solid var(--field-border);background:var(--field-bg);min-height:52px;font:inherit;color:var(--text-strong);border-radius:16px;padding:0 16px}.phone-form input:focus-visible,.primary-button:focus-visible,.secondary-button:focus-visible,.nav-item:focus-visible,.settings-action:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}.primary-button,.secondary-button,.nav-item,.filter-chip{font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;border:0;transition:transform .18s,opacity .18s,background-color .18s,color .18s,box-shadow .18s}.primary-button,.secondary-button{border-radius:16px;min-height:52px;padding:0 18px;font-weight:700}.primary-button{color:var(--accent-contrast);background:var(--accent)}.secondary-button{color:var(--text-strong);background:var(--button-secondary-bg);border:1px solid var(--button-secondary-border)}.primary-button:disabled,.secondary-button:disabled{opacity:.65;cursor:default}.primary-button:not(:disabled):active,.secondary-button:not(:disabled):active,.nav-item:active{transform:translateY(1px)}.notice-card.danger{border-color:var(--danger-border);background:var(--danger-bg)}.settings-card{gap:12px;padding:0;display:grid;overflow:hidden}.settings-card>.card-label{padding:14px 14px 0}.settings-card--grouped{border:1px solid var(--border-soft);background:var(--surface);box-shadow:var(--shadow-soft);border-radius:30px;gap:0;overflow:hidden}.settings-card--danger{border-color:var(--border-soft);box-shadow:var(--shadow-soft);background:#fff}.settings-actions{gap:10px;display:grid}.settings-action{background:var(--surface);width:100%;min-height:74px;color:var(--text-strong);text-align:left;box-shadow:var(--shadow-soft);border:0;border-radius:28px;justify-content:space-between;align-items:center;gap:14px;padding:14px 18px;display:flex}.settings-card--grouped>.settings-action:last-child,.settings-card--grouped>.settings-actions>.settings-action:last-child{border-bottom:0}.settings-action.active{background:color-mix(in srgb, var(--accent-soft) 52%, var(--surface));box-shadow:0 16px 32px #626fab1f, inset 0 0 0 1px color-mix(in srgb, var(--accent) 12%, transparent)}.settings-action--danger{color:#e53935;background:#fff}.settings-action__lead,.settings-action__copy{align-items:center;display:flex}.settings-action__lead{gap:12px;min-width:0}.settings-action__copy{flex-direction:column;flex:auto;align-items:flex-start;gap:1px;min-width:0}.settings-action__copy strong{font-size:1rem;font-weight:700;line-height:1.2}.settings-action__copy .helper-text{font-size:.92rem}.settings-card--grouped>.settings-action{box-shadow:none;background:0 0;border-radius:0}.settings-card--danger>.settings-action--danger{background:#fff}.settings-card--danger .settings-action__copy strong{color:#e53935}.settings-card--danger .settings-action__copy .helper-text{color:#67736d}.settings-card--grouped>.settings-action+.settings-action{border-top:1px solid color-mix(in srgb, var(--border) 74%, transparent)}.settings-action__icon-shell{color:#fff;background:linear-gradient(#7574ff 0%,#6764f7 100%);border-radius:50%;flex:none;place-items:center;block-size:42px;inline-size:42px;display:grid;box-shadow:inset 0 1px #ffffff47}.settings-action__icon-shell--danger{background:linear-gradient(#ff5b57 0%,#e53935 100%)}.settings-action__icon,.settings-action__trailing{font-size:20px;line-height:1}.settings-action__trailing{color:color-mix(in srgb, var(--muted) 76%, white);flex:none}.profile-picker-backdrop{z-index:40;-webkit-backdrop-filter:blur(8px);cursor:pointer;opacity:0;background:#0d12184d;border:0;width:100%;min-height:100%;padding:0;position:fixed;inset:0}.profile-picker-backdrop.is-open{animation:.22s forwards profile-picker-backdrop-in}.profile-picker-backdrop.is-closing{pointer-events:none;animation:.18s forwards profile-picker-backdrop-out}.profile-picker-sheet{inset-inline:0;z-index:41;border:0;border-top:1px solid var(--border);background:var(--surface-strong);width:100%;min-height:min(52svh,420px);max-height:min(68svh,560px);box-shadow:var(--shadow-strong);padding:0 18px calc(18px + var(--tg-safe-area-inset-bottom,0px));border-radius:30px 30px 0 0;align-content:start;gap:14px;display:grid;position:fixed;bottom:0;overflow:auto;transform:translateY(100%)}.profile-picker-sheet.is-open{animation:.28s cubic-bezier(.2,.8,.2,1) forwards profile-picker-sheet-in}.profile-picker-sheet.is-closing{animation:.22s cubic-bezier(.4,0,.2,1) forwards profile-picker-sheet-out}.profile-picker-sheet-handle{background:color-mix(in srgb, var(--muted) 22%, transparent);border-radius:999px;width:48px;height:5px;margin:12px auto 0}.profile-picker-sheet__header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.profile-picker-sheet__description{margin-top:6px}.profile-picker-close{border:1px solid var(--button-secondary-border);background:var(--button-secondary-bg);width:42px;height:42px;color:var(--text-strong);cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:16px;flex:none;place-items:center;display:grid}.profile-picker-options{gap:10px;display:grid}.profile-picker-option{background:var(--surface);width:100%;min-height:70px;color:var(--text-strong);text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;border:0;border-radius:26px;justify-content:space-between;align-items:center;gap:14px;padding:14px 16px;transition:transform .18s,background-color .18s,box-shadow .18s;display:flex;box-shadow:0 16px 28px #626fab1a}.profile-picker-option.is-active{background:color-mix(in srgb, var(--accent-soft) 52%, var(--surface));box-shadow:0 18px 30px #626fab1f, inset 0 0 0 1px color-mix(in srgb, var(--accent) 14%, transparent)}.profile-picker-option:active{transform:translateY(1px)}.profile-picker-option__lead,.profile-picker-option__copy{align-items:center;display:flex}.profile-picker-option__lead{gap:12px;min-width:0}.profile-picker-option__copy{flex-direction:column;flex:auto;align-items:flex-start;gap:1px;min-width:0}.profile-picker-option__copy strong{font-size:1rem;font-weight:700;line-height:1.2}.profile-picker-option__copy .helper-text{color:var(--muted);font-size:.92rem}.profile-picker-option__icon-shell{color:#fff;background:linear-gradient(#7574ff 0%,#6764f7 100%);border-radius:50%;flex:none;place-items:center;block-size:42px;inline-size:42px;display:grid;box-shadow:inset 0 1px #ffffff47}.profile-picker-option__icon,.profile-picker-option__trailing{font-size:20px;line-height:1}.profile-picker-option__trailing{color:color-mix(in srgb, var(--muted) 76%, white);flex:none}.profile-picker-close:focus-visible,.profile-picker-option:focus-visible,.profile-picker-backdrop:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}:root[data-theme=dark] .auth-card,:root[data-theme=dark] .stat-card,:root[data-theme=dark] .step-card,:root[data-theme=dark] .list-card,:root[data-theme=dark] .notice-card,:root[data-theme=dark] .settings-card--grouped,:root[data-theme=dark] .profile-picker-sheet{border-color:var(--border);box-shadow:var(--shadow-soft), inset 0 0 0 1px #ffffff0a}:root[data-theme=dark] .profile-card--summary,:root[data-theme=dark] .settings-card--grouped,:root[data-theme=dark] .profile-picker-option,:root[data-theme=dark] .schedule-card{background:var(--surface)}:root[data-theme=dark] .settings-card--danger,:root[data-theme=dark] .settings-card--danger>.settings-action--danger{background:color-mix(in srgb, var(--danger-bg) 54%, var(--surface))}:root[data-theme=dark] .settings-card--danger .settings-action__copy strong{color:#ff8a80}:root[data-theme=dark] .settings-card--danger .settings-action__copy .helper-text{color:var(--muted)}:root[data-theme=dark] .settings-card--grouped>.settings-action+.settings-action{border-top-color:var(--border-soft)}:root[data-theme=dark] .profile-picker-option{box-shadow:0 16px 28px #00000047, inset 0 0 0 1px var(--border-soft)}:root[data-theme=dark] .profile-picker-option.is-active{box-shadow:0 18px 30px #0000004d, inset 0 0 0 1px color-mix(in srgb, var(--accent) 34%, var(--border))}:root[data-theme=dark] .home-link-card__badge,:root[data-theme=dark] .teacher-item__avatar,:root[data-theme=dark] .fine-badge{background:color-mix(in srgb, var(--accent-soft) 72%, var(--surface-strong))}:root[data-theme=dark] .fine-badge--warning{background:color-mix(in srgb, #ffb300 20%, var(--surface-strong));color:#ffc247}:root[data-theme=dark] .fine-badge--danger{background:color-mix(in srgb, #e53935 20%, var(--surface-strong));color:#ff8a80}.rooms-page,.room-card{gap:14px;display:grid}.rooms-page,.rooms-page__content,.filter-bar,.filter-scroll{min-width:0;max-width:100%}.room-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.filter-bar{padding:0}.filter-scroll{scrollbar-width:none;overscroll-behavior-x:contain;border-radius:20px;width:100%;padding:2px;overflow-x:auto}.filter-scroll::-webkit-scrollbar{display:none}.filter-chips{gap:10px;width:max-content;min-width:100%;display:flex}.filter-chip{border:1px solid var(--field-border);background:var(--surface-soft);color:var(--text-strong);white-space:nowrap;border-radius:999px;padding:10px 14px;font-weight:700}.filter-chip.active{color:var(--accent-contrast);background:var(--accent);box-shadow:var(--shadow-soft);border-color:#0000}.filter-chip:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}.room-card{aspect-ratio:2;text-align:center;place-items:center;padding:18px}.room-card--button{width:100%;font:inherit;color:inherit;cursor:pointer}.room-card--button:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}.room-card--button:active{transform:translateY(1px)}.room-card__name{color:var(--text-strong);font-size:clamp(1rem,3.8vw,1.35rem);line-height:1.15;display:block}.schedule-page{gap:14px;display:grid}.schedule-hero,.schedule-card__time,.schedule-card__details{gap:8px;display:grid}.schedule-hero__meta{color:var(--muted);font-size:.96rem}.schedule-card{background:var(--surface-strong);-webkit-backdrop-filter:none;grid-template-columns:minmax(92px,108px) minmax(0,1fr) auto;align-items:stretch;padding:0;display:grid}.schedule-card--button{width:100%;color:inherit;cursor:pointer;text-align:left;border:0}.schedule-card--button:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}.schedule-card--button:active{transform:translateY(1px)}.schedule-card__time{border-right:1px solid var(--border);background:var(--accent-soft);border-radius:22px 0 0 22px;align-content:center;justify-items:center;padding:18px}.schedule-card__clock{font-size:1.2rem;line-height:1}.schedule-card__details{align-content:center;min-width:0;padding:18px}.schedule-card__teacher{color:var(--text-strong);display:block}.schedule-card__trailing{color:var(--muted);place-items:center;padding:18px 18px 18px 0;display:grid}.home-link-card,.teacher-item{width:100%;color:inherit;cursor:pointer;text-align:left;border:0}.home-link-card{align-items:center;gap:14px;display:flex}.home-link-card__badge,.teacher-item__avatar{background:color-mix(in srgb, var(--accent-soft) 65%, white);block-size:52px;inline-size:52px;color:var(--accent);border-radius:18px;flex:none;place-items:center;display:grid}.teacher-item__avatar{font-family:var(--heading);border-radius:50%;font-size:1.1rem;font-weight:700}.teacher-item__avatar--large{block-size:64px;inline-size:64px;font-size:1.35rem}.home-link-card__badge .material-symbols-rounded{font-size:1.5rem}.home-link-card__copy,.teacher-item__copy,.teacher-summary__copy,.teacher-section,.teacher-section__header,.teacher-schedule-card__details,.teachers-page,.teacher-page{gap:6px;display:grid}.teachers-search{display:block}.teachers-search input{border:1px solid var(--field-border);background:var(--field-bg);width:100%;min-height:52px;font:inherit;color:var(--text-strong);box-sizing:border-box;border-radius:999px;padding:0 20px}.teachers-search input:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}.home-link-card__copy,.teacher-item__copy{flex:auto;min-width:0}.home-link-card__trailing,.teacher-item__trailing{color:var(--muted);flex:none}.teacher-item{justify-content:space-between;align-items:center;gap:12px;display:flex}.teacher-item__identity,.teacher-summary__lead,.teacher-schedule-card{align-items:center;gap:12px;display:flex}.teacher-summary__lead{align-items:flex-start}.teacher-schedule-card{justify-content:space-between}.teacher-schedule-card__time{gap:4px;min-width:72px;display:grid}.teacher-schedule-card__details{flex:auto;min-width:0}.schedule-loading-card{text-align:center;justify-items:center;gap:12px}.point-history-page,.point-history-range,.point-history-range__copy{gap:12px;display:grid}.point-history-range__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.fine-page,.fine-actions,.fine-history,.fine-rule,.fine-history__copy{gap:12px;display:grid}.fine-summary,.fine-feedback{gap:8px}.fine-rule{gap:16px}.fine-summary__lead,.fine-rule__header{align-items:center;gap:12px;display:flex}.fine-summary__copy,.fine-rule__copy{gap:4px;display:grid}.fine-badge{background:color-mix(in srgb, var(--accent-soft) 60%, white);block-size:48px;inline-size:48px;color:var(--accent);border-radius:16px;flex:none;place-items:center;display:grid}.fine-badge .material-symbols-rounded{font-size:1.35rem}.fine-badge--warning{color:#d28700;background:#fff1d1}.fine-badge--danger{color:#d32f2f;background:#fbe3e3}.fine-meta{flex-wrap:wrap;gap:10px;display:flex}.fine-meta__item{background:var(--surface-soft);min-height:36px;color:var(--text-strong);border-radius:999px;align-items:center;gap:6px;padding:0 12px;font-size:.92rem;font-weight:600;display:inline-flex}.fine-meta__item .material-symbols-rounded{color:var(--muted);font-size:1rem}.fine-field{gap:8px;display:grid}.fine-field input{border:1px solid var(--field-border);background:var(--field-bg);min-height:52px;font:inherit;color:var(--text-strong);border-radius:16px;padding:0 16px}.fine-field input:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}.fine-history__header{gap:4px;display:grid}.fine-history__header h2{font-family:var(--heading);color:var(--text-strong);margin:0;font-size:1.15rem}.fine-history__item{justify-content:space-between;align-items:center;gap:16px;display:flex}.fine-history__main{flex-direction:column;flex:auto;gap:4px;min-width:0;display:flex}.fine-history__side{flex-direction:column;flex:none;align-items:flex-end;gap:4px;display:flex}.point-history-group{flex-direction:column;gap:8px;margin-bottom:24px;display:flex}.point-history-date-header{z-index:10;justify-content:center;margin:8px 0;display:flex;position:sticky;top:8px}.point-history-date-header span{background:var(--surface);color:var(--muted);border-radius:12px;padding:4px 12px;font-size:.85rem;font-weight:500;box-shadow:0 1px 3px #0000001a}.fine-history__meta{color:var(--muted);font-size:.75rem}.fine-history__points{flex:none;font-size:1.1rem}.fine-history__points.is-negative{color:#e53935}.room-card--placeholder{aspect-ratio:auto;align-content:center;min-height:132px}@media (width<=480px){.room-grid{gap:12px}.schedule-card{grid-template-columns:minmax(76px,88px) minmax(0,1fr) auto;gap:12px}.schedule-card__time,.schedule-card__trailing{padding-right:12px}.point-history-range__grid{grid-template-columns:1fr}}.bottom-nav{inset-inline:14px;bottom:calc(14px + var(--tg-safe-area-inset-bottom,0px));border:1px solid var(--nav-border);background:var(--nav-bg);box-shadow:0 20px 38px #34435224, inset 0 1px 0 var(--nav-highlight);border-radius:32px;grid-template-columns:repeat(4,1fr);gap:4px;padding:8px 6px;display:grid;position:fixed}.nav-item{min-height:58px;color:var(--muted);letter-spacing:-.01em;background:0 0;border-radius:24px;flex-direction:column;justify-content:center;align-items:center;gap:3px;padding:3px 2px 4px;font-weight:700;display:flex}.nav-item.active{color:var(--text-strong)}.nav-indicator{background:0 0;border-radius:999px;justify-content:center;align-items:center;min-width:58px;height:32px;padding:0 14px;transition:background-color .22s,box-shadow .22s,transform .22s;display:inline-flex;box-shadow:inset 0 0 0 1px #0000}.nav-item.active .nav-indicator{background:var(--nav-active-bg);box-shadow:inset 0 0 0 1px var(--nav-active-border)}.nav-icon{font-variation-settings:"FILL" 0, "wght" 500, "GRAD" 0, "opsz" 24;font-size:24px;line-height:1;transition:font-variation-settings .22s,color .22s,transform .22s}.nav-item.active .nav-icon{color:var(--accent);font-variation-settings:"FILL" 1, "wght" 600, "GRAD" 0, "opsz" 24;transform:translateY(-1px)}.nav-label{font-size:.78rem;line-height:1}.nav-item.active .nav-label{font-weight:800}.loader{border:4px solid color-mix(in srgb, var(--accent) 18%, transparent);border-top-color:var(--accent-strong);border-radius:50%;block-size:48px;inline-size:48px;animation:1s linear infinite spin}.auth-caption{font-family:var(--heading);color:var(--text-strong);margin:0;font-size:1.125rem;font-weight:700}strong{color:var(--text-strong);display:block}.stat-card strong,.list-card strong,.step-card strong,.notice-card strong{font-size:1.05rem}@keyframes spin{to{transform:rotate(360deg)}}@keyframes profile-picker-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes profile-picker-backdrop-out{0%{opacity:1}to{opacity:0}}@keyframes profile-picker-sheet-in{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes profile-picker-sheet-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(100%)}}@media (prefers-reduced-motion:reduce){.profile-picker-backdrop.is-open,.profile-picker-backdrop.is-closing,.profile-picker-sheet.is-open,.profile-picker-sheet.is-closing{animation-duration:1ms}}@media (width<=640px){.app-shell{padding-inline:10px}.auth-card{padding:16px}.bottom-nav{padding-inline:6px;inset-inline:10px}.nav-indicator{min-width:52px;padding-inline:10px}.profile-card--summary{min-height:122px;padding:0 10px}.avatar{block-size:84px;inline-size:84px;font-size:1.75rem}.settings-action{padding-inline:16px}}:root{--bg:#edf0f3;--bg-deep:#e4e8ed;--panel:#fafcfde6;--surface:#f8fafcf5;--surface-soft:#f1f5f8e0;--surface-strong:#eff3f6f5;--border:#4d575224;--border-soft:#4d57521a;--field-border:#45585429;--field-bg:#ffffffd9;--text:#53605a;--text-strong:#15201d;--muted:#67736d;--accent:#1d5d50;--accent-strong:#2d8d7c;--accent-soft:#2e8d7c14;--accent-contrast:#f3f6f7;--accent-contrast-soft:#f3f6f7d1;--danger-bg:#fff0e8d6;--danger-border:#96412238;--focus-ring:#297a6c99;--nav-bg:#eceff1f5;--nav-border:#54615a1f;--nav-highlight:#ffffff73;--nav-active-bg:#4699893d;--nav-active-border:#2d8d7c24;--button-secondary-bg:#f0f4f7d6;--button-secondary-border:#45585429;--shadow-soft:0 16px 34px #3443521a;--shadow-strong:0 24px 46px #34435229;--sans:"Manrope", "Segoe UI", sans-serif;--heading:"Space Grotesk", "Segoe UI", sans-serif;font:16px/1.5 var(--sans);color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root[data-theme=dark]{--bg:#0f1317;--bg-deep:#171c22;--panel:#13181ed6;--surface:#151b22f5;--surface-soft:#192028e6;--surface-strong:#11161cf5;--border:#e2f4ef47;--border-soft:#e2f4ef33;--field-border:#e2f4ef3d;--field-bg:#0b0f14e6;--text:#b7c1bc;--text-strong:#eef3f0;--muted:#8d9893;--accent:#68c5b2;--accent-strong:#7ad5c2;--accent-soft:#68c5b21f;--accent-contrast:#08110f;--accent-contrast-soft:#e2f4efc7;--danger-bg:#4a211ab3;--danger-border:#e58a733d;--focus-ring:#7ad5c29e;--nav-bg:#12181ff0;--nav-border:#e2f4ef3d;--nav-highlight:#ffffff0f;--nav-active-bg:#68c5b22e;--nav-active-border:#7ad5c233;--button-secondary-bg:#181f26eb;--button-secondary-border:#e2f4ef38;--shadow-soft:0 18px 42px #00000052;--shadow-strong:0 26px 52px #0000006b}*{box-sizing:border-box}html{background:var(--bg);min-height:100%}body{background:radial-gradient(circle at top, color-mix(in srgb, var(--accent) 14%, transparent), transparent 34%), linear-gradient(180deg, var(--bg) 0%, var(--bg-deep) 100%);min-height:100svh;color:var(--text);margin:0}body:before{content:"";pointer-events:none;background:0 0;position:fixed;inset:0}#root{width:min(100%,520px);min-height:100svh;margin:0 auto;position:relative}h1,h2,h3{font-family:var(--heading);color:var(--text-strong);margin:0;line-height:1.02}h1{letter-spacing:-.06em;font-size:clamp(2.4rem,8vw,4rem)}p{margin:0}button,input{font:inherit}.material-symbols-rounded{letter-spacing:normal;text-transform:none;white-space:nowrap;word-wrap:normal;-webkit-font-smoothing:antialiased;direction:ltr;font-family:Material Symbols Rounded;font-style:normal;font-weight:400;line-height:1;display:inline-block}
