:root{color-scheme:light dark;--sky-top: #ffdcc6;--sky-mid: #f8cad6;--sky-bottom: #d3e7f6;--sky-glow: transparent;--cloud-near: rgba(255, 255, 255, .72);--cloud-far: rgba(255, 255, 255, .55);--cloud-far-blur: 6px;--stars-opacity: 0;--grain-opacity: .05;--field-a: #a7ae7e;--field-b: #8e9867;--field-opacity: .25;--furrow: rgba(78, 84, 44, .32);--tree: #e2b23a;--tree-opacity: .8;--veil-top: rgba(255, 248, 240, .15);--veil-bottom: rgba(255, 248, 240, .55);--balloon-yellow: #f6c21b;--balloon-red: #e2452f;--balloon-navy: #1f2a6b;--balloon-violet: #6b3fa0;--balloon-ink: #2b2622;--glass: rgba(255, 255, 255, .62);--glass-strong: rgba(255, 255, 255, .86);--glass-border: rgba(255, 255, 255, .5);--glass-blur: blur(14px) saturate(1.2);--glass-shadow: 0 1px 1px rgba(122, 62, 79, .05), 0 22px 50px -26px rgba(122, 62, 79, .38);--paper: #fff8f2;--paper-2: rgba(255, 255, 255, .42);--paper-3: rgba(255, 255, 255, .7);--ink: #2b2622;--ink-soft: #5e5550;--ink-faint: #635a56;--rose: #e36b6b;--rose-deep: #9e3843;--rose-soft: #fbdcdd;--sage: #7fa083;--sage-deep: #3f6447;--sage-soft: #dcebdd;--butter: #f3d36b;--butter-deep: #755600;--butter-soft: #fcefc2;--danger: #a3322f;--danger-soft: #f9dedc;--line: rgba(43, 38, 34, .12);--line-strong: rgba(43, 38, 34, .24);--surface: var(--glass);--surface-raised: var(--glass-strong);--overlay: rgba(43, 30, 50, .38);--shadow-1: 0 1px 2px rgba(122, 62, 79, .06), 0 10px 26px -16px rgba(122, 62, 79, .3);--shadow-2: var(--glass-shadow);--shadow-3: 0 12px 24px rgba(60, 30, 50, .1), 0 44px 90px -30px rgba(60, 30, 50, .45);--r-sm: 8px;--r: 14px;--r-lg: 22px;--r-pill: 999px;--s-1: 4px;--s-2: 8px;--s-3: 12px;--s-4: 16px;--s-5: 20px;--s-6: 24px;--s-7: 32px;--s-8: 40px;--s-9: 56px;--s-10: 80px;--font-display: "Fraunces", "Iowan Old Style", "Palatino Linotype", Georgia, serif;--font-body: "Nunito Sans", "Avenir Next", "Segoe UI", system-ui, sans-serif;--fs-xs: .75rem;--fs-sm: .875rem;--fs-md: 1rem;--fs-lg: 1.125rem;--fs-xl: 1.375rem;--fs-2xl: 1.75rem;--fs-3xl: 2.25rem;--fs-4xl: clamp(2.5rem, 2rem + 2.5vw, 3.5rem);--fs-hero: clamp(3.25rem, 2.2rem + 5vw, 6rem);--lh-tight: 1.1;--lh-snug: 1.3;--lh-body: 1.55;--ease: ease-in-out;--t-fast: .15s;--t: .2s;--t-slow: .3s;--page-max: 1120px;--gutter: 16px;--touch: 44px;--focus-ring: 0 0 0 3px var(--paper), 0 0 0 5px var(--rose)}@media(min-width:720px){:root{--gutter: 28px}}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--sky-top: #1d1b3a;--sky-mid: #2c1f44;--sky-bottom: #3b2347;--sky-glow: rgba(122, 62, 79, .45);--cloud-near: rgba(255, 255, 255, .06);--cloud-far: rgba(255, 255, 255, .04);--stars-opacity: 1;--grain-opacity: .06;--field-a: #17152e;--field-b: #0f0e22;--field-opacity: .85;--furrow: rgba(255, 255, 255, .035);--tree: #e2b23a;--tree-opacity: .18;--balloon-ink: #1a1430;--veil-top: rgba(15, 12, 30, .55);--veil-bottom: rgba(15, 12, 30, .8);--glass: rgba(30, 26, 50, .55);--glass-strong: rgba(36, 30, 58, .9);--glass-border: rgba(255, 255, 255, .12);--glass-shadow: 0 1px 1px rgba(0, 0, 0, .2), 0 26px 60px -30px rgba(0, 0, 0, .7);--paper: #1d1b3a;--paper-2: rgba(255, 255, 255, .06);--paper-3: rgba(255, 255, 255, .11);--ink: #f6f1f8;--ink-soft: #d6cce0;--ink-faint: #b7aac6;--rose: #ef8a8f;--rose-deep: #ffb3b8;--rose-soft: #4d2733;--sage: #93b596;--sage-deep: #bfe0c2;--sage-soft: #24382b;--butter: #e8c95a;--butter-deep: #f6dc8a;--butter-soft: #3d3418;--danger: #ffa7a0;--danger-soft: #4a2328;--line: rgba(255, 255, 255, .1);--line-strong: rgba(255, 255, 255, .2);--overlay: rgba(8, 6, 20, .6);--shadow-1: 0 1px 2px rgba(0, 0, 0, .3), 0 10px 26px -16px rgba(0, 0, 0, .6);--shadow-3: 0 12px 24px rgba(0, 0, 0, .35), 0 44px 90px -30px rgba(0, 0, 0, .8)}}:root[data-theme=dark]{--sky-top: #1d1b3a;--sky-mid: #2c1f44;--sky-bottom: #3b2347;--sky-glow: rgba(122, 62, 79, .45);--cloud-near: rgba(255, 255, 255, .06);--cloud-far: rgba(255, 255, 255, .04);--stars-opacity: 1;--grain-opacity: .06;--field-a: #17152e;--field-b: #0f0e22;--field-opacity: .85;--furrow: rgba(255, 255, 255, .035);--tree: #e2b23a;--tree-opacity: .18;--balloon-ink: #1a1430;--veil-top: rgba(15, 12, 30, .55);--veil-bottom: rgba(15, 12, 30, .8);--glass: rgba(30, 26, 50, .55);--glass-strong: rgba(36, 30, 58, .9);--glass-border: rgba(255, 255, 255, .12);--glass-shadow: 0 1px 1px rgba(0, 0, 0, .2), 0 26px 60px -30px rgba(0, 0, 0, .7);--paper: #1d1b3a;--paper-2: rgba(255, 255, 255, .06);--paper-3: rgba(255, 255, 255, .11);--ink: #f6f1f8;--ink-soft: #d6cce0;--ink-faint: #b7aac6;--rose: #ef8a8f;--rose-deep: #ffb3b8;--rose-soft: #4d2733;--sage: #93b596;--sage-deep: #bfe0c2;--sage-soft: #24382b;--butter: #e8c95a;--butter-deep: #f6dc8a;--butter-soft: #3d3418;--danger: #ffa7a0;--danger-soft: #4a2328;--line: rgba(255, 255, 255, .1);--line-strong: rgba(255, 255, 255, .2);--overlay: rgba(8, 6, 20, .6);--shadow-1: 0 1px 2px rgba(0, 0, 0, .3), 0 10px 26px -16px rgba(0, 0, 0, .6);--shadow-3: 0 12px 24px rgba(0, 0, 0, .35), 0 44px 90px -30px rgba(0, 0, 0, .8)}@media(prefers-reduced-motion:reduce){:root{--t-fast: 0ms;--t: 0ms;--t-slow: 0ms}}:root[data-theme=light]{color-scheme:light}:root[data-theme=dark]{color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}body{margin:0;min-height:100dvh;background:var(--sky-mid);color:var(--ink);font-family:var(--font-body);font-size:var(--fs-md);line-height:var(--lh-body);font-optical-sizing:auto;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;padding-bottom:env(safe-area-inset-bottom)}#root{position:relative;z-index:1;min-height:100dvh;display:flex;flex-direction:column}h1,h2,h3,h4{font-family:var(--font-display);font-variation-settings:"SOFT" 60,"opsz" 72;font-optical-sizing:auto;font-weight:500;line-height:var(--lh-tight);letter-spacing:-.015em;margin:0;color:var(--ink)}h1{font-size:var(--fs-4xl);font-weight:400}h2{font-size:var(--fs-2xl)}h3{font-size:var(--fs-xl)}h4{font-size:var(--fs-lg)}p{margin:0}a{color:var(--rose-deep);text-decoration-color:color-mix(in srgb,var(--rose) 50%,transparent);text-underline-offset:.18em;transition:color var(--t) var(--ease),text-decoration-color var(--t) var(--ease)}a:hover{text-decoration-color:var(--rose)}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}:focus{outline:none}:focus-visible{outline:none;box-shadow:var(--focus-ring);border-radius:var(--r-sm)}::selection{background:var(--rose-soft);color:var(--ink)}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.muted{color:var(--ink-soft)}.faint{color:var(--ink-faint)}.small{font-size:var(--fs-sm)}.tiny{font-size:var(--fs-xs)}.serif{font-family:var(--font-display);font-variation-settings:"SOFT" 60}.ital{font-style:italic}.nowrap{white-space:nowrap}.shell{display:flex;flex-direction:column;min-height:100dvh}.masthead{position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--paper) 88%,transparent);backdrop-filter:blur(10px) saturate(1.1);-webkit-backdrop-filter:blur(10px) saturate(1.1);border-bottom:1px solid var(--line)}.masthead__inner{max-width:var(--page-max);margin:0 auto;padding:var(--s-3) var(--gutter);display:flex;align-items:center;gap:var(--s-4);flex-wrap:wrap}.brand{display:inline-flex;align-items:center;gap:var(--s-3);text-decoration:none;color:var(--ink);min-height:var(--touch)}.brand__mark{width:34px;height:34px;display:grid;place-items:center;background:var(--ink);color:var(--paper);border-radius:10px;box-shadow:var(--shadow-1)}.brand__name{font-family:var(--font-display);font-variation-settings:"SOFT" 80,"opsz" 24;font-size:var(--fs-lg);font-weight:500;letter-spacing:-.01em;white-space:nowrap}.brand__name em{font-style:italic;font-weight:400;color:var(--rose-deep)}.nav{display:flex;gap:var(--s-1);margin-left:auto;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;order:3;flex-basis:100%;padding-bottom:2px}.nav::-webkit-scrollbar{display:none}@media(min-width:720px){.nav{order:0;flex-basis:auto}}.nav__link{display:inline-flex;align-items:center;min-height:var(--touch);padding:0 var(--s-4);border-radius:var(--r-pill);color:var(--ink-soft);text-decoration:none;font-weight:600;font-size:var(--fs-sm);white-space:nowrap;transition:background var(--t) var(--ease),color var(--t) var(--ease)}.nav__link:hover{color:var(--ink);background:var(--paper-2)}.nav__link.is-active{color:var(--ink);background:var(--paper-3)}.nav__link.is-active:after{content:"";width:5px;height:5px;border-radius:50%;background:var(--rose);margin-left:var(--s-2)}.heartbeat{display:inline-flex;align-items:center;gap:var(--s-2);font-size:var(--fs-xs);color:var(--ink-soft);min-height:var(--touch);margin-left:auto}@media(min-width:720px){.heartbeat{margin-left:0}}.heartbeat__dot{width:9px;height:9px;border-radius:50%;background:var(--sage);box-shadow:0 0 color-mix(in srgb,var(--sage) 50%,transparent);animation:pulse 2.4s var(--ease) infinite}.heartbeat__dot.is-down{background:var(--rose);animation:none}@keyframes pulse{0%{box-shadow:0 0 color-mix(in srgb,var(--sage) 55%,transparent)}70%{box-shadow:0 0 0 8px transparent}to{box-shadow:0 0 0 0 transparent}}.page{flex:1;width:100%;max-width:var(--page-max);margin:0 auto;padding:var(--s-6) var(--gutter) var(--s-10)}@media(min-width:720px){.page{padding-top:var(--s-8)}}.page-head{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--s-3) var(--s-5);margin-bottom:var(--s-6)}.page-head__kicker{font-size:var(--fs-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--rose-deep);font-weight:700;margin-bottom:var(--s-2)}.page-head__lede{color:var(--ink-soft);max-width:48ch;margin-top:var(--s-2)}.page-head__actions{margin-left:auto;display:flex;gap:var(--s-2);flex-wrap:wrap}.footer{border-top:1px solid var(--line);padding:var(--s-6) var(--gutter) calc(var(--s-6) + env(safe-area-inset-bottom));text-align:center;color:var(--ink-faint);font-size:var(--fs-sm);font-family:var(--font-display);font-style:italic;font-variation-settings:"SOFT" 100}.footer b{color:var(--rose);font-weight:500}.btn{--btn-bg: var(--surface);--btn-fg: var(--ink);--btn-bd: var(--line-strong);display:inline-flex;align-items:center;justify-content:center;gap:var(--s-2);min-height:var(--touch);padding:0 var(--s-5);border-radius:var(--r-pill);border:1px solid var(--btn-bd);background:var(--btn-bg);color:var(--btn-fg);font-weight:700;font-size:var(--fs-sm);line-height:1;text-decoration:none;white-space:nowrap;box-shadow:var(--shadow-1);transition:transform var(--t-fast) var(--ease),background var(--t) var(--ease),border-color var(--t) var(--ease),box-shadow var(--t) var(--ease),opacity var(--t) var(--ease)}.btn:hover{background:var(--paper-2);border-color:var(--ink-faint)}.btn:active{transform:translateY(1px) scale(.99)}.btn:disabled,.btn[aria-disabled=true]{opacity:.55;cursor:not-allowed;transform:none}.btn--primary{--btn-bg: var(--ink);--btn-fg: var(--paper);--btn-bd: var(--ink)}.btn--primary:hover{background:color-mix(in srgb,var(--ink) 88%,var(--rose));border-color:transparent}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .btn--primary{--btn-bg: var(--ink);--btn-fg: var(--paper)}}:root[data-theme=dark] .btn--primary{--btn-bg: var(--ink);--btn-fg: var(--paper)}.btn--rose{--btn-bg: var(--rose);--btn-fg: #fff;--btn-bd: var(--rose)}.btn--rose:hover{background:var(--rose-deep);border-color:var(--rose-deep)}.btn--ghost{--btn-bg: transparent;--btn-bd: transparent;box-shadow:none;color:var(--ink-soft)}.btn--ghost:hover{background:var(--paper-2);color:var(--ink);border-color:transparent}.btn--danger{--btn-bg: transparent;--btn-fg: var(--danger);--btn-bd: color-mix(in srgb, var(--danger) 45%, transparent)}.btn--danger:hover{background:var(--danger-soft);border-color:var(--danger)}.btn--sm{min-height:36px;padding:0 var(--s-4);font-size:var(--fs-xs)}.btn--icon{width:var(--touch);padding:0}.btn--block{width:100%}.btn .spinner{width:14px;height:14px;border-radius:50%;border:2px solid currentColor;border-right-color:transparent;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.link-btn{background:none;border:0;padding:0;color:var(--rose-deep);text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--rose) 50%,transparent);text-underline-offset:.18em;font-weight:600;min-height:var(--touch);display:inline-flex;align-items:center}.chip{--chip-bg: var(--paper-3);--chip-fg: var(--ink-soft);display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:var(--r-pill);background:var(--chip-bg);color:var(--chip-fg);font-size:var(--fs-xs);font-weight:700;letter-spacing:.01em;line-height:1.4;white-space:nowrap;transition:background var(--t) var(--ease),color var(--t) var(--ease)}.chip--sage{--chip-bg: var(--sage-soft);--chip-fg: var(--sage-deep)}.chip--butter{--chip-bg: var(--butter-soft);--chip-fg: var(--butter-deep)}.chip--rose{--chip-bg: var(--rose-soft);--chip-fg: var(--rose-deep)}.chip--danger{--chip-bg: var(--danger-soft);--chip-fg: var(--danger)}.chip--ink{--chip-bg: var(--ink);--chip-fg: var(--paper)}.chip--muted{--chip-bg: transparent;--chip-fg: var(--ink-faint);box-shadow:inset 0 0 0 1px var(--line)}.chip__dot{width:6px;height:6px;border-radius:50%;background:currentColor}.chip__dot.is-live{animation:blink 1.6s var(--ease) infinite}@keyframes blink{50%{opacity:.25}}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow-1);padding:var(--s-5)}.card--raised{box-shadow:var(--shadow-2)}.card--paper{background:var(--paper-2);border-color:transparent;box-shadow:none}.card__title{display:flex;align-items:baseline;gap:var(--s-3);margin-bottom:var(--s-3)}.stack{display:flex;flex-direction:column;gap:var(--s-4)}.stack--tight{gap:var(--s-2)}.stack--loose{gap:var(--s-7)}.row{display:flex;align-items:center;gap:var(--s-3);flex-wrap:wrap}.row--between{justify-content:space-between}.grow{flex:1;min-width:0}.divider{border:0;border-top:1px solid var(--line);margin:var(--s-4) 0}.toggle{--w: 48px;--h: 28px;display:inline-flex;align-items:center;gap:var(--s-3);min-height:var(--touch);background:none;border:0;padding:0;text-align:left;color:var(--ink)}.toggle__track{position:relative;width:var(--w);height:var(--h);border-radius:var(--r-pill);background:var(--line-strong);transition:background var(--t) var(--ease);flex:none}.toggle__thumb{position:absolute;top:3px;left:3px;width:calc(var(--h) - 6px);height:calc(var(--h) - 6px);border-radius:50%;background:#fff;box-shadow:0 1px 3px #00000040;transition:transform var(--t) var(--ease)}.toggle[aria-checked=true] .toggle__track{background:var(--sage)}.toggle[aria-checked=true] .toggle__thumb{transform:translate(calc(var(--w) - var(--h)))}.toggle--rose[aria-checked=true] .toggle__track{background:var(--rose)}.toggle--big{--w: 68px;--h: 38px}.toggle:disabled{opacity:.55;cursor:not-allowed}.toggle__label{font-weight:600}.toggle__hint{display:block;font-size:var(--fs-sm);color:var(--ink-soft);font-weight:400}.reformer{position:relative;width:100%;max-width:260px;height:22px;margin:0 auto}.reformer__rail{position:absolute;left:0;right:0;bottom:4px;height:3px;border-radius:2px;background:var(--line-strong)}.reformer__rail:before,.reformer__rail:after{content:"";position:absolute;bottom:-6px;width:4px;height:7px;background:var(--ink-faint);border-radius:1px}.reformer__rail:before{left:2px}.reformer__rail:after{right:2px}.reformer__spring{position:absolute;left:0;bottom:8px;height:4px;width:20%;background:repeating-linear-gradient(90deg,var(--ink-faint) 0 2px,transparent 2px 5px);opacity:.8;animation:springStretch 1.8s var(--ease) infinite alternate;transform-origin:left center}.reformer__carriage{position:absolute;bottom:6px;left:0;width:56px;height:12px;border-radius:6px 6px 4px 4px;background:var(--rose);box-shadow:0 2px 0 var(--rose-deep);animation:carriageGlide 1.8s var(--ease) infinite alternate}.reformer__carriage:before{content:"";position:absolute;top:-5px;left:10px;width:30px;height:6px;border-radius:3px 3px 0 0;background:color-mix(in srgb,var(--rose) 70%,white)}@keyframes carriageGlide{0%{transform:translate(18%)}to{transform:translate(calc(204px - 18%))}}@keyframes springStretch{0%{transform:scaleX(1)}to{transform:scaleX(3.9)}}.loading{display:grid;gap:var(--s-4);justify-items:center;padding:var(--s-9) var(--s-4);color:var(--ink-soft);font-family:var(--font-display);font-style:italic;font-variation-settings:"SOFT" 100}.loading-bar{position:fixed;top:0;left:0;right:0;height:2px;z-index:30;overflow:hidden;pointer-events:none}.loading-bar:before{content:"";position:absolute;inset:0;width:30%;background:var(--rose);animation:slideBar 1.2s var(--ease) infinite}@keyframes slideBar{0%{transform:translate(-100%)}to{transform:translate(340%)}}.confetti{position:fixed;inset:0;pointer-events:none;z-index:60;overflow:hidden}.confetti__bit{position:absolute;top:-12px;left:var(--x);width:8px;height:14px;border-radius:2px;background:var(--c);opacity:0;animation:confettiFall 1.6s cubic-bezier(.2,.7,.3,1) var(--d) forwards}@keyframes confettiFall{0%{opacity:1;transform:translateZ(0) rotate(0)}to{opacity:0;transform:translate3d(var(--dx),100vh,0) rotate(var(--rot))}}@media(prefers-reduced-motion:reduce){.confetti{display:none}}.sheet-backdrop{position:fixed;inset:0;z-index:50;background:var(--overlay);display:flex;align-items:flex-end;justify-content:center;animation:fadeIn var(--t) var(--ease);padding:0}.sheet{width:100%;max-height:92dvh;background:var(--surface-raised);border-radius:var(--r-lg) var(--r-lg) 0 0;box-shadow:var(--shadow-3);display:flex;flex-direction:column;animation:sheetUp var(--t-slow) var(--ease);border:1px solid var(--line);border-bottom:0}.sheet__handle{width:40px;height:4px;border-radius:2px;background:var(--line-strong);margin:var(--s-3) auto 0}.sheet__header{padding:var(--s-4) var(--s-5) var(--s-3);display:flex;align-items:flex-start;gap:var(--s-3)}.sheet__header h2{font-size:var(--fs-xl)}.sheet__sub{color:var(--ink-soft);font-size:var(--fs-sm);margin-top:2px}.sheet__body{padding:var(--s-2) var(--s-5) var(--s-5);overflow-y:auto;-webkit-overflow-scrolling:touch}.sheet__footer{padding:var(--s-3) var(--s-5) calc(var(--s-5) + env(safe-area-inset-bottom));border-top:1px solid var(--line);display:flex;gap:var(--s-2);flex-wrap:wrap;justify-content:flex-end}@media(min-width:720px){.sheet-backdrop{align-items:center;padding:var(--s-6)}.sheet{max-width:560px;max-height:86dvh;border-radius:var(--r-lg);border-bottom:1px solid var(--line);animation:popIn var(--t) var(--ease)}.sheet__handle{display:none}.sheet__footer{padding-bottom:var(--s-5)}}@keyframes fadeIn{0%{opacity:0}}@keyframes sheetUp{0%{transform:translateY(24px);opacity:.6}}@keyframes popIn{0%{transform:translateY(8px) scale(.985);opacity:0}}.toasts{position:fixed;left:50%;bottom:calc(var(--s-5) + env(safe-area-inset-bottom));transform:translate(-50%);z-index:70;display:flex;flex-direction:column;gap:var(--s-2);width:min(92vw,420px);pointer-events:none}.toast{pointer-events:auto;background:var(--ink);color:var(--paper);padding:var(--s-3) var(--s-4);border-radius:var(--r);box-shadow:var(--shadow-2);display:flex;align-items:center;gap:var(--s-3);font-size:var(--fs-sm);animation:toastIn var(--t-slow) var(--ease)}.toast--error{background:var(--danger);color:#fff}.toast--success{background:var(--sage-deep);color:#fff}.toast__close{margin-left:auto;background:none;border:0;color:inherit;opacity:.7;width:32px;height:32px;border-radius:50%}.toast__close:hover{opacity:1}@keyframes toastIn{0%{transform:translateY(12px);opacity:0}}.audio{display:grid;gap:var(--s-3)}.audio__row{display:flex;align-items:center;gap:var(--s-3)}.audio__btn{flex:none;width:var(--touch);height:var(--touch);border-radius:50%;border:0;background:var(--rose);color:#fff;display:grid;place-items:center;box-shadow:var(--shadow-1);transition:transform var(--t-fast) var(--ease),background var(--t) var(--ease)}.audio__btn:hover{background:var(--rose-deep)}.audio__btn:active{transform:scale(.96)}.audio__btn--sm{width:36px;height:36px;box-shadow:none}.audio__bar{flex:1;height:var(--touch);display:flex;align-items:center;background:none;border:0;padding:0;cursor:pointer}.audio__track{position:relative;width:100%;height:6px;border-radius:3px;background:var(--paper-3);overflow:hidden}.audio__fill{position:absolute;inset:0 auto 0 0;background:var(--rose);border-radius:3px;transition:width .12s linear}.audio__time{font-variant-numeric:tabular-nums;font-size:var(--fs-xs);color:var(--ink-soft);flex:none;min-width:7ch;text-align:right}.audio__script{font-family:var(--font-display);font-style:italic;font-variation-settings:"SOFT" 100,"opsz" 16;color:var(--ink-soft);font-size:var(--fs-md);line-height:1.5}.armed{display:flex;align-items:center;gap:var(--s-4);padding:var(--s-4) var(--s-5);border-radius:var(--r-lg);border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-1);transition:background var(--t-slow) var(--ease),border-color var(--t-slow) var(--ease);flex-wrap:wrap}.armed--on{background:linear-gradient(135deg,var(--sage-soft),var(--surface) 70%);border-color:color-mix(in srgb,var(--sage) 45%,transparent)}.armed--off{background:linear-gradient(135deg,var(--butter-soft),var(--surface) 70%);border-color:color-mix(in srgb,var(--butter) 60%,transparent)}.armed__text{flex:1;min-width:200px}.armed__title{font-family:var(--font-display);font-variation-settings:"SOFT" 60,"opsz" 24;font-size:var(--fs-xl);font-weight:500}.armed__sub{color:var(--ink-soft);font-size:var(--fs-sm);margin-top:2px}.hero{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--s-3) var(--s-5);margin-bottom:var(--s-6)}.hero h1{font-variation-settings:"SOFT" 80,"opsz" 144}.hero h1 .wave{display:inline-block;font-family:var(--font-body)}.hero__meta{display:flex;gap:var(--s-2);flex-wrap:wrap;align-items:center;margin-left:auto}.hero__date{font-family:var(--font-display);font-style:italic;color:var(--ink-soft);font-variation-settings:"SOFT" 100}.week{margin-top:var(--s-7)}.week__nav{display:flex;align-items:center;gap:var(--s-3);margin-bottom:var(--s-4)}.week__nav h2{flex:1;font-size:var(--fs-2xl)}.week__range{display:block;font-family:var(--font-body);font-size:var(--fs-sm);color:var(--ink-soft);font-weight:400;letter-spacing:0}.week__grid{display:grid;gap:var(--s-3);grid-template-columns:1fr}@media(min-width:600px){.week__grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:960px){.week__grid{grid-template-columns:repeat(7,1fr);gap:var(--s-2)}}.day{position:relative;display:flex;flex-direction:column;gap:var(--s-3);padding:var(--s-4);border-radius:var(--r);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-1);text-align:left;color:inherit;width:100%;min-height:120px;transition:transform var(--t) var(--ease),box-shadow var(--t) var(--ease),border-color var(--t) var(--ease)}button.day:hover{transform:translateY(-2px);box-shadow:var(--shadow-2);border-color:var(--line-strong)}.day--today{border-color:var(--rose);box-shadow:0 0 0 1px var(--rose),var(--shadow-1)}.day--past{opacity:.72}.day--weekend{background:var(--paper-2)}.day__head{display:flex;align-items:baseline;gap:var(--s-2)}.day__dow{font-family:var(--font-display);font-variation-settings:"SOFT" 60,"opsz" 24;font-size:var(--fs-lg);font-weight:500}.day__date{color:var(--ink-faint);font-size:var(--fs-sm)}.day__today{margin-left:auto;font-size:var(--fs-xs);color:var(--rose-deep);font-weight:700;letter-spacing:.08em;text-transform:uppercase}.day__body{display:grid;gap:var(--s-2)}.day__plan{display:grid;gap:6px}.day__title{font-weight:700;font-size:var(--fs-sm);line-height:var(--lh-snug)}.day__meta{color:var(--ink-soft);font-size:var(--fs-sm)}.day__caption{color:var(--ink-faint);font-size:var(--fs-xs)}.day__none{color:var(--ink-faint);font-family:var(--font-display);font-style:italic;font-variation-settings:"SOFT" 100}@media(min-width:960px){.day{min-height:190px;padding:var(--s-3)}.day__dow{font-size:var(--fs-md)}.day__title,.day__meta{font-size:var(--fs-xs)}}.note-card{display:grid;gap:var(--s-4);background:linear-gradient(160deg,var(--rose-soft),var(--surface) 65%);border-color:color-mix(in srgb,var(--rose) 35%,transparent)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .note-card{background:linear-gradient(160deg,var(--rose-soft),var(--surface) 70%)}}:root[data-theme=dark] .note-card{background:linear-gradient(160deg,var(--rose-soft),var(--surface) 70%)}.home-grid{display:grid;gap:var(--s-5);margin-top:var(--s-7)}@media(min-width:900px){.home-grid{grid-template-columns:3fr 2fr;align-items:start}}.status-list{display:grid;gap:var(--s-3)}.status-list dt{font-size:var(--fs-xs);color:var(--ink-faint);text-transform:uppercase;letter-spacing:.1em;font-weight:700}.status-list dd{margin:2px 0 0}.status-list__item{display:grid}.status-list__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--s-3)}.empty{display:grid;justify-items:center;gap:var(--s-3);text-align:center;padding:var(--s-8) var(--s-5);border:1px dashed var(--line-strong);border-radius:var(--r-lg);background:var(--paper-2)}.empty__art{color:var(--rose)}.empty h3{font-variation-settings:"SOFT" 100,"opsz" 36}.empty p{color:var(--ink-soft);max-width:40ch}.field{display:grid;gap:6px}.field__label{font-weight:700;font-size:var(--fs-sm)}.field__hint{color:var(--ink-faint);font-size:var(--fs-xs)}.field__error{color:var(--danger);font-size:var(--fs-sm);font-weight:600}.input,.select{width:100%;min-height:var(--touch);padding:0 var(--s-4);border-radius:var(--r);border:1px solid var(--line-strong);background:var(--surface-raised);color:var(--ink);transition:border-color var(--t) var(--ease),box-shadow var(--t) var(--ease)}.input:hover,.select:hover{border-color:var(--ink-faint)}.input:focus-visible,.select:focus-visible{border-color:var(--rose);box-shadow:0 0 0 3px color-mix(in srgb,var(--rose) 25%,transparent);border-radius:var(--r)}.input--invalid{border-color:var(--danger)}.select{appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path d='M1 1l5 5 5-5' fill='none' stroke='%236B625B' stroke-width='1.8' stroke-linecap='round'/></svg>");background-repeat:no-repeat;background-position:right var(--s-4) center;padding-right:calc(var(--s-4) * 2 + 12px)}.input--sm{max-width:140px}.form-grid{display:grid;gap:var(--s-4)}@media(min-width:560px){.form-grid--2{grid-template-columns:1fr 1fr}}.form-actions{display:flex;gap:var(--s-2);flex-wrap:wrap;align-items:center}.pills{display:flex;flex-wrap:wrap;gap:var(--s-2)}.pill{min-height:40px;min-width:var(--touch);padding:0 var(--s-4);border-radius:var(--r-pill);border:1px solid var(--line-strong);background:var(--surface-raised);color:var(--ink-soft);font-weight:700;font-size:var(--fs-sm);transition:background var(--t) var(--ease),color var(--t) var(--ease),border-color var(--t) var(--ease),transform var(--t-fast) var(--ease)}.pill:hover{border-color:var(--ink-faint);color:var(--ink)}.pill:active{transform:scale(.97)}.pill[aria-pressed=true],.pill[aria-checked=true],.pill.is-on{background:var(--ink);border-color:var(--ink);color:var(--paper)}.pill--rose[aria-pressed=true],.pill--rose.is-on{background:var(--rose);border-color:var(--rose);color:#fff}.pill--sm{min-height:34px;padding:0 var(--s-3);font-size:var(--fs-xs)}.pill:disabled{opacity:.5;cursor:not-allowed}.chips-input{display:flex;flex-wrap:wrap;gap:var(--s-2);align-items:center;min-height:var(--touch);padding:6px var(--s-3);border-radius:var(--r);border:1px solid var(--line-strong);background:var(--surface-raised)}.chips-input:focus-within{border-color:var(--rose);box-shadow:0 0 0 3px color-mix(in srgb,var(--rose) 25%,transparent)}.chips-input input{flex:1;min-width:120px;border:0;background:none;min-height:30px}.chips-input input:focus-visible{box-shadow:none}.chips-input .chip button{background:none;border:0;padding:0;margin-left:2px;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;color:inherit}.chips-input .chip button:hover{background:color-mix(in srgb,currentColor 15%,transparent)}.checkbox{display:flex;align-items:center;gap:var(--s-3);min-height:var(--touch);cursor:pointer}.checkbox input{appearance:none;width:22px;height:22px;border-radius:7px;border:1.5px solid var(--line-strong);background:var(--surface-raised);display:grid;place-items:center;flex:none;transition:background var(--t) var(--ease),border-color var(--t) var(--ease);margin:0}.checkbox input:checked{background:var(--rose);border-color:var(--rose)}.checkbox input:checked:after{content:"";width:6px;height:11px;border:solid #fff;border-width:0 2px 2px 0;transform:translateY(-1px) rotate(45deg)}.checkbox input:disabled{opacity:.5}.rule{display:flex;align-items:center;gap:var(--s-4);padding:var(--s-4) var(--s-5);flex-wrap:wrap}.rule__main{flex:1;min-width:200px}.rule__sentence{font-family:var(--font-display);font-variation-settings:"SOFT" 60,"opsz" 24;font-size:var(--fs-lg);font-weight:500;line-height:var(--lh-snug)}.rule__sentence .muted{font-weight:400}.rule__label{color:var(--ink-faint);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.1em;font-weight:700;margin-bottom:4px}.rule--off .rule__sentence{color:var(--ink-faint);text-decoration:line-through;text-decoration-color:color-mix(in srgb,var(--ink-faint) 50%,transparent)}.rule__actions{display:flex;gap:var(--s-1);align-items:center}.date-group{margin-top:var(--s-6)}.date-group__head{position:sticky;top:calc(var(--touch) + var(--s-5) + 46px);z-index:5;display:flex;align-items:baseline;gap:var(--s-3);padding:var(--s-2) 0;background:color-mix(in srgb,var(--paper) 92%,transparent);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}@media(min-width:720px){.date-group__head{top:calc(var(--touch) + var(--s-5) + 2px)}}.date-group__head h2{font-size:var(--fs-xl)}.date-group__list{display:grid;gap:var(--s-2);margin-top:var(--s-2)}.class-row{display:grid;grid-template-columns:auto 1fr;gap:var(--s-2) var(--s-4);align-items:center;padding:var(--s-3) var(--s-4);border-radius:var(--r);background:var(--surface);border:1px solid var(--line);transition:border-color var(--t) var(--ease),background var(--t) var(--ease)}.class-row:hover{border-color:var(--line-strong)}.class-row--ineligible{opacity:.6;background:var(--paper-2)}.class-row__time{font-family:var(--font-display);font-variation-settings:"SOFT" 60,"opsz" 24;font-size:var(--fs-lg);font-weight:500;font-variant-numeric:tabular-nums;min-width:4.5em}.class-row__main{min-width:0}.class-row__title{font-weight:700;font-size:var(--fs-sm)}.class-row__meta{color:var(--ink-soft);font-size:var(--fs-sm);display:flex;gap:var(--s-2);flex-wrap:wrap;align-items:center}.class-row__actions{grid-column:1 / -1;display:flex;gap:var(--s-2);justify-content:flex-end;flex-wrap:wrap}@media(min-width:720px){.class-row{grid-template-columns:auto 1fr auto}.class-row__actions{grid-column:auto}}.class-row--pick{cursor:pointer;text-align:left;width:100%;color:inherit}.class-row--pick:hover:not(:disabled){background:var(--paper-2)}.class-row--pick:disabled{cursor:not-allowed}.class-row--chosen{border-color:var(--sage);box-shadow:0 0 0 1px var(--sage)}.filters{display:flex;gap:var(--s-2);flex-wrap:wrap;align-items:center;margin-top:var(--s-2)}.settings{display:grid;gap:var(--s-6)}@media(min-width:900px){.settings{grid-template-columns:200px 1fr;gap:var(--s-8);align-items:start}}.settings__toc{display:none;position:sticky;top:calc(var(--touch) + var(--s-6) + 4px);flex-direction:column;gap:2px}@media(min-width:900px){.settings__toc{display:flex}}.settings__toc a{color:var(--ink-soft);text-decoration:none;padding:var(--s-2) var(--s-3);border-radius:var(--r-sm);font-size:var(--fs-sm);font-weight:600}.settings__toc a:hover{background:var(--paper-2);color:var(--ink)}.settings__sections{display:grid;gap:var(--s-6);min-width:0}.section{padding:var(--s-5)}.section__head{display:flex;align-items:baseline;gap:var(--s-3);margin-bottom:var(--s-4)}.section__head h2{font-size:var(--fs-xl)}.section__desc{color:var(--ink-soft);font-size:var(--fs-sm);margin-top:2px}.section--danger{border-color:color-mix(in srgb,var(--danger) 35%,transparent);background:linear-gradient(160deg,var(--danger-soft),var(--surface) 60%)}.kv{display:grid;grid-template-columns:auto 1fr;gap:var(--s-2) var(--s-4);font-size:var(--fs-sm)}.kv dt{color:var(--ink-faint)}.kv dd{margin:0;font-weight:600;word-break:break-all}.copy-row{display:flex;gap:var(--s-2);align-items:center}.copy-row .input{flex:1;font-size:var(--fs-xs);font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.steps{margin:var(--s-2) 0 0;padding-left:1.2em;color:var(--ink-soft);font-size:var(--fs-sm)}.feed{display:grid;gap:0;position:relative}.event{display:grid;grid-template-columns:20px 1fr;gap:var(--s-3);padding:var(--s-3) 0;position:relative}.event:not(:last-child):before{content:"";position:absolute;left:9px;top:30px;bottom:-6px;width:2px;background:var(--line)}.event__dot{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;margin-top:2px;background:var(--paper-3);color:var(--ink-soft)}.event__dot:after{content:"";width:8px;height:8px;border-radius:50%;background:currentColor}.event--success .event__dot{background:var(--sage-soft);color:var(--sage-deep)}.event--warn .event__dot{background:var(--butter-soft);color:var(--butter-deep)}.event--error .event__dot{background:var(--danger-soft);color:var(--danger)}.event__body{min-width:0;display:grid;gap:4px}.event__msg{font-size:var(--fs-sm);overflow-wrap:anywhere}.event--error .event__msg{color:var(--danger)}.event__meta{display:flex;gap:var(--s-2);align-items:center;flex-wrap:wrap;color:var(--ink-faint);font-size:var(--fs-xs)}.event__meta time{cursor:help;text-decoration:underline dotted;text-underline-offset:.2em}.event__audio{margin-top:var(--s-1)}.login{min-height:100dvh;display:grid;place-items:center;padding:var(--gutter);position:relative}.login__card{width:min(100%,400px);padding:var(--s-7) var(--s-6);display:grid;gap:var(--s-5);animation:popIn var(--t-slow) var(--ease)}.login__brand{display:grid;gap:var(--s-3);justify-items:center;text-align:center}.login__brand .brand__mark{width:56px;height:56px;border-radius:16px}.login__brand h1{font-size:var(--fs-3xl);font-variation-settings:"SOFT" 90,"opsz" 72}.login__brand p{color:var(--ink-soft);font-family:var(--font-display);font-style:italic;font-variation-settings:"SOFT" 100}.shake{animation:shake .32s var(--ease)}@keyframes shake{10%,90%{transform:translate(-1px)}20%,80%{transform:translate(2px)}30%,50%,70%{transform:translate(-4px)}40%,60%{transform:translate(4px)}}.callout{padding:var(--s-3) var(--s-4);border-radius:var(--r);background:var(--butter-soft);color:var(--butter-deep);font-size:var(--fs-sm);font-weight:600;display:flex;gap:var(--s-2);align-items:flex-start}.callout--danger{background:var(--danger-soft);color:var(--danger)}.callout--sage{background:var(--sage-soft);color:var(--sage-deep)}.callout--info{background:var(--paper-2);color:var(--ink-soft)}.callout svg{flex:none;margin-top:2px}.tooltip{position:relative;display:inline-flex}.tooltip[data-tip]:hover:after,.tooltip[data-tip]:focus-within:after{content:attr(data-tip);position:absolute;left:0;top:calc(100% + 6px);z-index:10;background:var(--ink);color:var(--paper);padding:6px 10px;border-radius:var(--r-sm);font-size:var(--fs-xs);font-weight:500;white-space:normal;width:max-content;max-width:260px;box-shadow:var(--shadow-2)}.sr-status{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.list-plain{list-style:none;margin:0;padding:0}.tabbar{position:fixed;left:0;right:0;bottom:0;z-index:25;display:grid;grid-template-columns:repeat(5,1fr);background:color-mix(in srgb,var(--surface) 92%,transparent);backdrop-filter:blur(12px) saturate(1.1);-webkit-backdrop-filter:blur(12px) saturate(1.1);border-top:1px solid var(--line);padding:6px var(--s-2) calc(6px + env(safe-area-inset-bottom));box-shadow:0 -8px 24px -16px #2b262240}.tabbar__item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:52px;border-radius:var(--r);border:0;background:none;color:var(--ink-faint);text-decoration:none;font-size:11px;font-weight:700;letter-spacing:.01em;transition:color var(--t) var(--ease),background var(--t) var(--ease)}.tabbar__item:hover{color:var(--ink-soft)}.tabbar__item.is-active{color:var(--rose-deep);background:var(--rose-soft)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .tabbar__item.is-active{color:var(--rose)}}:root[data-theme=dark] .tabbar__item.is-active{color:var(--rose)}@media(min-width:720px){.tabbar{display:none}}@media(max-width:719.98px){.nav{display:none}.page{padding-bottom:calc(var(--s-10) + 64px)}.footer{padding-bottom:calc(var(--s-6) + 72px + env(safe-area-inset-bottom))}.toasts{bottom:calc(var(--s-4) + 76px + env(safe-area-inset-bottom))}}.more-link{display:flex;align-items:center;gap:var(--s-4);padding:var(--s-3) var(--s-3);min-height:60px;border-radius:var(--r);text-decoration:none;color:var(--ink);transition:background var(--t) var(--ease)}.more-link:hover{background:var(--paper-2)}.more-link__icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:var(--paper-3);color:var(--ink-soft);flex:none}.more-link__title{display:block;font-weight:700}.more-link__sub{display:block;font-size:var(--fs-sm);color:var(--ink-soft)}.welcome{min-height:100dvh;display:flex;flex-direction:column}.welcome__top{display:flex;align-items:center;justify-content:space-between;gap:var(--s-4);padding:var(--s-3) var(--gutter);max-width:720px;width:100%;margin:0 auto}.welcome__progress{display:flex;align-items:center;gap:var(--s-3)}.welcome__count{font-family:var(--font-display);font-style:italic;font-variation-settings:"SOFT" 100;color:var(--ink-soft);font-size:var(--fs-sm)}.welcome__dots{display:flex;gap:6px}.welcome__dots li{width:22px;height:6px;border-radius:3px;background:var(--line-strong);transition:background var(--t-slow) var(--ease),width var(--t-slow) var(--ease)}.welcome__dots li.is-done{background:var(--sage)}.welcome__dots li.is-current{background:var(--rose);width:34px}.welcome__main{flex:1;display:flex;align-items:center;width:100%;max-width:720px;margin:0 auto;padding:var(--s-6) var(--gutter) var(--s-8)}.welcome__step{width:100%;display:grid;gap:var(--s-5);animation:popIn var(--t-slow) var(--ease)}.welcome__step h1{font-variation-settings:"SOFT" 90,"opsz" 144}.welcome__lede{color:var(--ink-soft);font-size:var(--fs-lg);max-width:54ch}.welcome__form{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:var(--s-5);box-shadow:var(--shadow-2)}.welcome__success{font-size:var(--fs-lg);padding:var(--s-5);border-radius:var(--r-lg);animation:popIn var(--t-slow) var(--ease)}.welcome__skip{text-align:center;margin-top:calc(var(--s-2) * -1)}.welcome__skip .link-btn{color:var(--ink-faint);text-decoration-color:var(--line-strong);font-weight:600}.welcome__summary{display:grid;gap:var(--s-2);background:var(--paper-2);border-color:transparent}.welcome__summary-main{font-family:var(--font-display);font-variation-settings:"SOFT" 60,"opsz" 36;font-size:var(--fs-xl);font-weight:500;line-height:var(--lh-snug)}.welcome__note{color:var(--ink-soft);font-family:var(--font-display);font-style:italic;font-variation-settings:"SOFT" 100;font-size:var(--fs-lg);max-width:54ch}.hero__sub{margin-top:var(--s-2);color:var(--ink-soft);font-family:var(--font-display);font-style:italic;font-variation-settings:"SOFT" 100,"opsz" 24;font-size:var(--fs-lg)}.tag-pill{display:inline-flex;align-items:center;justify-content:center;min-height:24px;min-width:var(--touch);padding:0 10px;border-radius:var(--r-pill);border:0;background:var(--rose-soft);color:var(--rose-deep);font-family:var(--font-body);font-style:normal;font-size:var(--fs-xs);font-weight:800;letter-spacing:.08em;vertical-align:middle;transition:transform var(--t-fast) var(--ease),background var(--t) var(--ease)}.tag-pill:hover{background:color-mix(in srgb,var(--rose-soft) 70%,var(--rose))}.tag-pill:active{transform:scale(.94)}.tag-pill--lg{min-height:32px;padding:0 14px;font-size:var(--fs-sm)}.footer--floating{position:absolute;left:0;right:0;bottom:0;border:0}.footer--bare{border:0}.streak{display:inline-flex;align-items:center;margin-left:var(--s-3);padding:2px 10px;border-radius:var(--r-pill);background:var(--butter-soft);color:var(--butter-deep);font-family:var(--font-body);font-size:var(--fs-xs);font-weight:800;letter-spacing:.02em;vertical-align:middle;animation:popIn var(--t-slow) var(--ease)}.lost{max-width:480px;margin:var(--s-9) auto;display:grid;gap:var(--s-4);justify-items:start;padding:var(--s-7)}.pbj{position:fixed;inset:0;z-index:65;display:grid;place-items:center;padding:var(--gutter);background:color-mix(in srgb,var(--rose-soft) 55%,transparent);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:fadeIn var(--t-slow) var(--ease)}.pbj__card{width:min(100%,440px);display:grid;gap:var(--s-4);padding:var(--s-6);border-radius:var(--r-lg);animation:popIn var(--t-slow) var(--ease)}.pbj__msg{font-family:var(--font-display);font-variation-settings:"SOFT" 90,"opsz" 36;font-size:var(--fs-xl);line-height:var(--lh-snug)}.confetti__bit--svg{width:auto;height:auto;background:none;border-radius:0;display:inline-flex}.pbj__card{position:relative}.pbj__close{position:absolute;top:var(--s-3);right:var(--s-3)}.pbj__art{display:grid;place-items:center;padding-top:var(--s-2)}.pbj__art svg{width:min(220px,70vw);height:auto;overflow:visible}.jar{transform-box:fill-box;transform-origin:50% 100%;animation:jarBob 2.6s var(--ease) infinite}.jar--jelly{animation-delay:-1.3s}.jar-heart{transform-box:fill-box;transform-origin:center;animation:heartBeat 2.6s var(--ease) infinite}@keyframes jarBob{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-3px) rotate(1.2deg)}}@keyframes heartBeat{0%,to{transform:scale(1)}50%{transform:scale(1.18)}}@media(prefers-reduced-motion:reduce){.jar,.jar-heart{animation:none}}.hero__greeting{cursor:default}.whisper{margin-top:var(--s-1);color:var(--rose-deep);font-family:var(--font-display);font-style:italic;font-variation-settings:"SOFT" 100,"opsz" 16;font-size:var(--fs-sm);animation:whisper 4s var(--ease) forwards}@keyframes whisper{0%{opacity:0;transform:translateY(2px)}8%,75%{opacity:1;transform:translateY(0)}to{opacity:0}}.welcome--note .welcome__main{max-width:600px}.note{gap:var(--s-6)}.note__player{display:grid;justify-items:start}.audio__btn--big{width:76px;height:76px;box-shadow:var(--shadow-2)}.note__script{display:grid;gap:var(--s-3);min-height:120px}.note__line{font-family:var(--font-display);font-variation-settings:"SOFT" 90,"opsz" 36;font-size:var(--fs-xl);line-height:var(--lh-snug);animation:lineIn var(--t-slow) var(--ease)}.note__hint{font-family:var(--font-display);font-style:italic;font-variation-settings:"SOFT" 100}@keyframes lineIn{0%{opacity:0;transform:translateY(4px)}}.signature{margin:calc(var(--s-3) * -1) 0 var(--s-4);color:var(--ink-faint);font-family:var(--font-display);font-style:italic;font-variation-settings:"SOFT" 100,"opsz" 16;font-size:var(--fs-sm);animation:fadeIn var(--t-slow) var(--ease)}.tour{position:fixed;inset:0;z-index:80}.tour__spot{position:fixed;border-radius:var(--r-lg);box-shadow:0 0 0 9999px var(--overlay),0 0 0 2px var(--rose),var(--shadow-3);pointer-events:none;transition:top var(--t-slow) var(--ease),left var(--t-slow) var(--ease),width var(--t-slow) var(--ease),height var(--t-slow) var(--ease)}.tour__card{position:fixed;left:var(--gutter);right:var(--gutter);bottom:calc(var(--s-4) + 72px + env(safe-area-inset-bottom));top:auto!important;transform:none!important;display:grid;gap:var(--s-2);padding:var(--s-5);border-radius:var(--r-lg);animation:popIn var(--t-slow) var(--ease)}@media(min-width:720px){.tour__card{left:50%;right:auto;bottom:auto;width:min(420px,calc(100vw - 2 * var(--gutter)));margin-left:-210px;top:var(--tour-top, 50%)!important;transform:var(--tour-transform, none)!important}}.tour__count{font-size:var(--fs-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--rose-deep);font-weight:700}.tour__card h2{font-size:var(--fs-xl)}.tour__body{color:var(--ink-soft)}.tour__actions{display:flex;align-items:center;gap:var(--s-2);margin-top:var(--s-2)}.help{display:grid;gap:var(--s-6);max-width:64ch}.help__section{display:grid;gap:var(--s-2)}.help__section h2{font-size:var(--fs-xl)}.help__section p{color:var(--ink-soft)}.help__list{display:grid;gap:var(--s-3);color:var(--ink-soft)}.help__list li{display:flex;gap:var(--s-3);align-items:flex-start;flex-wrap:wrap}.help__list .chip{flex:none;margin-top:3px}.help__dl{display:grid;grid-template-columns:auto 1fr;gap:var(--s-2) var(--s-4);margin:0}.help__dl dt{font-weight:800;letter-spacing:.06em;font-size:var(--fs-sm)}.help__dl dd{margin:0;color:var(--ink-soft)}.desk{box-shadow:none}.desk__title{font-size:var(--fs-lg);color:var(--ink-soft);margin-bottom:var(--s-3)}@media(min-width:960px){.day__title,.day__meta{font-size:var(--fs-sm)}}.tabbar__item--lin{color:var(--ink-soft)}.tabbar__lin{display:grid;place-items:center;width:40px;height:40px;margin-top:-14px;border-radius:50%;background:var(--ink);color:var(--paper);box-shadow:var(--shadow-2);transition:background var(--t) var(--ease),transform var(--t-fast) var(--ease)}.tabbar__item--lin.is-active{background:transparent;color:var(--rose-deep)}.tabbar__item--lin.is-active .tabbar__lin{background:var(--rose);color:#fff}.tabbar__item--lin:active .tabbar__lin{transform:scale(.95)}.talk{display:flex;flex-direction:column;min-height:calc(100dvh - 180px)}.talk__head{margin-bottom:var(--s-4)}.talk__off{display:grid;gap:var(--s-1);margin-bottom:var(--s-4)}.thread{flex:1;display:flex;flex-direction:column;gap:var(--s-3);padding-bottom:var(--s-4)}.thread__empty{color:var(--ink-faint);font-family:var(--font-display);font-style:italic;font-variation-settings:"SOFT" 100;text-align:center;padding:var(--s-8) var(--s-4)}.bubble{position:relative;max-width:min(85%,560px);padding:var(--s-3) var(--s-4);border-radius:var(--r-lg);display:grid;gap:var(--s-2);animation:popIn var(--t-slow) var(--ease)}.bubble--me{align-self:flex-end;background:var(--rose-soft);color:var(--ink);border-bottom-right-radius:6px}.bubble--lin{align-self:flex-start;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-1);border-bottom-left-radius:6px}.bubble--error{align-self:flex-start;background:var(--danger-soft);color:var(--danger);font-weight:600;font-size:var(--fs-sm)}.bubble__who{font-size:var(--fs-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--rose-deep);font-weight:800}.bubble__text{white-space:pre-wrap;overflow-wrap:anywhere}.bubble__actions{display:flex;flex-wrap:wrap;gap:6px}.bubble__audio{max-width:320px}.bubble__time{font-size:var(--fs-xs);color:var(--ink-faint);justify-self:end}.typing{display:inline-flex;gap:5px;padding:6px 0}.typing i{width:7px;height:7px;border-radius:50%;background:var(--ink-faint);animation:typingDot 1.2s var(--ease) infinite}.typing i:nth-child(2){animation-delay:.15s}.typing i:nth-child(3){animation-delay:.3s}@keyframes typingDot{0%,60%,to{opacity:.35;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}.composer-wrap{position:sticky;bottom:calc(72px + env(safe-area-inset-bottom));display:grid;gap:var(--s-3);padding-top:var(--s-2);background:linear-gradient(to top,var(--paper) 70%,transparent)}@media(min-width:720px){.composer-wrap{bottom:var(--s-4)}}.suggestions{display:flex;gap:var(--s-2);overflow-x:auto;scrollbar-width:none;padding-bottom:2px}.suggestions::-webkit-scrollbar{display:none}.suggestions .pill{flex:none}.composer{display:flex;align-items:flex-end;gap:var(--s-2);padding:6px 6px 6px var(--s-4);border-radius:26px;border:1px solid var(--line-strong);background:var(--surface-raised);box-shadow:var(--shadow-2);transition:border-color var(--t) var(--ease),box-shadow var(--t) var(--ease)}.composer:focus-within{border-color:var(--rose);box-shadow:0 0 0 3px color-mix(in srgb,var(--rose) 22%,transparent),var(--shadow-2)}.composer__field{flex:1;min-height:40px;max-height:140px;padding:9px 0;border:0;background:none;resize:none;line-height:1.4;field-sizing:content}.composer__field:focus-visible{box-shadow:none}.composer__btn{flex:none;width:40px;height:40px;border-radius:50%;border:0;display:grid;place-items:center;background:var(--paper-3);color:var(--ink-soft);transition:background var(--t) var(--ease),color var(--t) var(--ease),transform var(--t-fast) var(--ease)}.composer__btn:disabled{opacity:.5;cursor:not-allowed}.composer__send:not(:disabled){background:var(--ink);color:var(--paper)}.composer__btn:active:not(:disabled){transform:scale(.94)}.composer__mic.is-on{background:var(--rose);color:#fff;animation:micPulse 1.4s var(--ease) infinite}@keyframes micPulse{0%{box-shadow:0 0 color-mix(in srgb,var(--rose) 55%,transparent)}70%{box-shadow:0 0 0 12px transparent}to{box-shadow:0 0 0 0 transparent}}@media(prefers-reduced-motion:reduce){.composer__mic.is-on{animation:none;box-shadow:0 0 0 4px color-mix(in srgb,var(--rose) 35%,transparent)}.typing i{animation:none;opacity:.6}}.ask{margin-top:var(--s-7);display:flex;align-items:center;gap:var(--s-2);padding:6px 6px 6px var(--s-5);border-radius:var(--r-pill);border:1px solid var(--line-strong);background:var(--surface-raised);box-shadow:var(--shadow-1);transition:border-color var(--t) var(--ease),box-shadow var(--t) var(--ease)}.ask:focus-within{border-color:var(--rose);box-shadow:0 0 0 3px color-mix(in srgb,var(--rose) 22%,transparent),var(--shadow-1)}.ask__input{flex:1;min-height:40px;border:0;background:none;font-size:var(--fs-md)}.ask__input:focus-visible{box-shadow:none}.ask__send{flex:none;width:40px;height:40px;border-radius:50%;border:0;display:grid;place-items:center;background:var(--ink);color:var(--paper);transition:opacity var(--t) var(--ease),transform var(--t-fast) var(--ease)}.ask__send:disabled{opacity:.4;cursor:not-allowed}.ask__send:active:not(:disabled){transform:scale(.94)}.talk__play{display:grid;gap:var(--s-2);margin-bottom:var(--s-4)}.checkbox--consent{align-items:flex-start;min-height:0;font-size:var(--fs-sm);color:var(--ink-soft);line-height:var(--lh-body)}.checkbox--consent input{margin-top:2px}.device-qr{justify-self:center;padding:var(--s-3);background:#fff;border-radius:var(--r);box-shadow:var(--shadow-1);line-height:0}.device-qr img{width:220px;height:220px;image-rendering:pixelated}.welcome__count{white-space:nowrap}@media(max-width:420px){.welcome__top{gap:var(--s-3)}.welcome__dots{gap:4px}.welcome__dots li{width:12px}.welcome__dots li.is-current{width:20px}}.connect-card{display:flex;align-items:center;gap:var(--s-4);flex-wrap:wrap;margin-bottom:var(--s-4);padding:var(--s-4) var(--s-5);border-radius:var(--r-lg);background:var(--rose-soft);color:var(--ink)}.connect-card__text{flex:1;min-width:220px;font-family:var(--font-display);font-variation-settings:"SOFT" 80,"opsz" 24;font-size:var(--fs-lg);line-height:var(--lh-snug)}.skills{margin-top:var(--s-8);max-width:720px}.skills h2{font-size:var(--fs-2xl)}.skills__sub{margin-top:var(--s-2);color:var(--ink-soft);font-family:var(--font-display);font-style:italic;font-variation-settings:"SOFT" 100,"opsz" 16}.skills__list{margin-top:var(--s-5);border-top:1px solid var(--line)}.skill{display:grid;grid-template-columns:36px 1fr auto;gap:var(--s-4);align-items:center;padding:var(--s-4) 0;border-bottom:1px solid var(--line)}.skill__mark{color:var(--ink);display:grid;place-items:center}.skill__name{font-weight:700}.skill__detail{color:var(--ink-soft);font-size:var(--fs-sm)}.skill__on{display:inline-flex;align-items:center;gap:6px;color:var(--sage-deep);font-weight:700;font-size:var(--fs-sm)}.skill__dot{width:8px;height:8px;border-radius:50%;background:var(--sage)}.skill__setup{display:inline-flex;align-items:center;min-height:var(--touch);font-weight:800;font-size:var(--fs-sm)}.skill__soon{font-size:var(--fs-xs);color:var(--ink-faint);font-style:italic;font-family:var(--font-display);font-variation-settings:"SOFT" 100}.skill--soon .skill__mark,.skill--soon .skill__name,.skill--unavailable .skill__mark,.skill--unavailable .skill__name{color:var(--ink-faint)}.sky{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden;background:linear-gradient(180deg,var(--sky-top) 0%,var(--sky-mid) 50%,var(--sky-bottom) 100%)}.sky__glow{position:absolute;inset:0;background:radial-gradient(130% 55% at 50% 108%,var(--sky-glow),transparent 70%)}.sky__stars{position:absolute;inset:0;opacity:var(--stars-opacity)}.sky__star{position:absolute;border-radius:50%;background:#fff;opacity:.75}.sky__star--twinkle{animation:twinkle 6s ease-in-out infinite}@keyframes twinkle{0%,to{opacity:.85}50%{opacity:.2}}.sky__layer{position:absolute;inset:0}.sky__cloud{position:absolute;height:auto;fill:var(--cloud-near);animation:cloudDrift 95s linear infinite;will-change:transform}.sky__layer--far .sky__cloud{fill:var(--cloud-far);filter:blur(var(--cloud-far-blur));animation-duration:120s}@keyframes cloudDrift{0%{transform:translate(-150vw)}to{transform:translate(150vw)}}.sky__fields{position:absolute;left:0;right:0;bottom:0;width:100%;height:36vh;opacity:var(--field-opacity)}.sky__furrows path{stroke:var(--furrow);stroke-width:1.2;stroke-linecap:round;vector-effect:non-scaling-stroke}.sky__trees circle{fill:var(--tree);opacity:var(--tree-opacity)}.sky__tree-shadow{fill:#3c321438}.sky__grain{position:absolute;inset:0;opacity:var(--grain-opacity);mix-blend-mode:multiply;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='220'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.9 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");background-size:220px 220px}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .sky__grain{mix-blend-mode:screen}}:root[data-theme=dark] .sky__grain{mix-blend-mode:screen}[data-tab-hidden] .ambient,[data-tab-hidden] .heartbeat__dot{animation-play-state:paused!important}@media(prefers-reduced-motion:reduce){.ambient,.sky__cloud,.sky__star--twinkle{animation:none!important}}.masthead,.tabbar{background:var(--glass);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-color:var(--glass-border)}.card,.armed,.week-panel,.bubble--lin,.composer,.ask,.class-row,.welcome__form,.login__card,.empty,.date-group__head,.connect-card,.cal-account{background:var(--glass);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow)}.card--paper{background:var(--paper-2);box-shadow:none}.empty{border-style:solid}.date-group__head{border-radius:var(--r);padding-left:var(--s-3);padding-right:var(--s-3);box-shadow:none}.sheet{background:var(--glass-strong);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-color:var(--glass-border)}.btn:not(.btn--primary):not(.btn--rose):not(.btn--danger):not(.btn--ghost){--btn-bg: var(--glass-strong);--btn-bd: var(--glass-border)}.armed--on{background:linear-gradient(135deg,color-mix(in srgb,var(--sage-soft) 75%,transparent),var(--glass) 70%)}.armed--off{background:linear-gradient(135deg,color-mix(in srgb,var(--butter-soft) 75%,transparent),var(--glass) 70%)}.note-card{position:relative;background:linear-gradient(160deg,color-mix(in srgb,var(--rose-soft) 70%,transparent),var(--glass) 65%)}.connect-card{background:linear-gradient(135deg,color-mix(in srgb,var(--rose-soft) 80%,transparent),var(--glass) 75%)}.composer-wrap{background:none}.callout--info{background:var(--paper-3)}.brand__balloon{display:inline-block;transition:transform .9s cubic-bezier(.22,.9,.3,1)}.brand__balloon.is-rising{transform:translateY(-12px);transition-duration:.5s}.balloon-bob{display:inline-block;animation:bob 6s ease-in-out infinite}@keyframes bob{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.brand__name{font-family:var(--font-display);font-variation-settings:"SOFT" 100,"opsz" 48;font-size:1.6rem;font-weight:500;letter-spacing:-.02em;line-height:1}.login__balloon{justify-self:center}.login__brand h1{font-size:var(--fs-hero);font-weight:300;line-height:.95}.hero{margin:var(--s-6) 0 var(--s-8)}.hero h1{font-size:var(--fs-hero);font-weight:300;line-height:.95;letter-spacing:-.035em;font-variation-settings:"SOFT" 100,"opsz" 144}.hero__sub{font-size:var(--fs-xl);margin-top:var(--s-3);max-width:30ch}@media(min-width:720px){.hero{margin:var(--s-9) 0 var(--s-9)}}.week-panel{border-radius:var(--r-lg);padding:var(--s-2);gap:0}.week-panel .day{background:transparent;border:0;box-shadow:none;border-radius:var(--r);min-height:0}.week-panel .day+.day{border-top:1px solid var(--line);border-radius:0}.week-panel .day--today{background:var(--paper-3);box-shadow:inset 0 0 0 1.5px var(--rose);border-radius:var(--r)}.week-panel .day--today+.day{border-top-color:transparent}.week-panel .day--weekend{background:transparent}.week-panel button.day:hover{transform:none;background:var(--paper-2);box-shadow:none}@media(min-width:600px)and (max-width:959.98px){.week-panel .day+.day{border-top:0}}@media(min-width:960px){.week-panel .day{min-height:200px}.week-panel .day+.day{border-top:0;border-left:1px solid var(--line);border-radius:0}.week-panel .day--today+.day{border-left-color:transparent}}.note-card__plane{position:absolute;top:var(--s-4);right:var(--s-4);color:var(--ink-soft);--plane-fill: var(--glass-strong);animation:planeIn .8s cubic-bezier(.22,.9,.3,1) .2s both}@keyframes planeIn{0%{opacity:0;transform:translate(-48px,18px) rotate(-10deg)}}.thread{position:relative;overflow-x:clip}.plane-fly{position:absolute;left:-28px;bottom:56px;z-index:2;color:var(--ink-soft);--plane-fill: var(--glass-strong);pointer-events:none;animation:planeFly .52s ease-in-out forwards}@keyframes planeFly{0%{opacity:0;transform:translateY(10px) rotate(4deg)}15%{opacity:1}85%{opacity:1}to{opacity:0;transform:translate(min(96vw,1100px),-22px) rotate(-6deg)}}.bubble--arrive{animation:popIn var(--t-slow) var(--ease) .26s both}.toast__plane{flex:none;--plane-fill: transparent}.toast--sent{background:var(--sage-deep);color:#fff}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .toast--sent,:root:not([data-theme=light]) .toast--success,:root:not([data-theme=light]) .toast--error{color:#14121f}}:root[data-theme=dark] .toast--sent,:root[data-theme=dark] .toast--success,:root[data-theme=dark] .toast--error{color:#14121f}@media(prefers-reduced-motion:reduce){.plane-fly{display:none}.note-card__plane,.bubble--arrive{animation:none}}.note__balloon{justify-self:center;transition:transform .7s linear;margin-bottom:var(--s-2)}.welcome__dots li.is-done{background:var(--balloon-navy)}.welcome__dots li.is-current{background:var(--balloon-red)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .welcome__dots li.is-done{background:var(--sage)}}:root[data-theme=dark] .welcome__dots li.is-done{background:var(--sage)}.streak{background:var(--balloon-yellow);color:var(--balloon-navy)}.bubble__link{color:var(--rose-deep);font-weight:700;overflow-wrap:anywhere}.ics-pill{display:inline-flex;align-items:center;gap:6px;min-height:32px;margin:2px;padding:0 12px;border-radius:var(--r-pill);background:var(--sage-soft);color:var(--sage-deep);font-size:var(--fs-sm);font-weight:800;text-decoration:none;vertical-align:middle}.ics-pill:hover{background:color-mix(in srgb,var(--sage-soft) 80%,var(--sage))}.cal-accounts{display:grid;gap:var(--s-2)}.cal-account{display:grid;grid-template-columns:auto 1fr;grid-template-areas:"label email" "default action";gap:var(--s-2) var(--s-3);align-items:center;padding:var(--s-3);border-radius:var(--r);box-shadow:none}.cal-account__label{grid-area:label;appearance:none;min-height:32px;padding:0 12px;border-radius:var(--r-pill);border:0;font-weight:800;font-size:var(--fs-xs);letter-spacing:.04em;background:var(--paper-3);color:var(--ink);cursor:pointer}.cal-account__label--work{background:var(--balloon-navy);color:#fff}.cal-account__label--personal{background:var(--balloon-yellow);color:var(--balloon-navy)}.cal-account__email{grid-area:email;display:grid;min-width:0;overflow-wrap:anywhere}.cal-account__default{grid-area:default;display:inline-flex;align-items:center;gap:6px;min-height:var(--touch);cursor:pointer}.cal-account__default input{accent-color:var(--rose);width:18px;height:18px}.cal-account .btn{grid-area:action;justify-self:end}@media(min-width:640px){.cal-account{grid-template-columns:auto 1fr auto auto;grid-template-areas:"label email default action"}}.skills__list{border-top-color:var(--line-strong)}.skill{border-bottom-color:var(--line-strong)}.photo{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none}.photo__stage{position:absolute;inset:0;background-size:cover;background-position:center;transform-origin:50% 50%;animation:kenBurns 45s ease-in-out infinite alternate;will-change:transform}@keyframes kenBurns{0%{transform:scale(1.06) translate(0)}to{transform:scale(1.12) translate(-2%,-1.5%)}}.photo__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .9s ease-in-out}.photo__img.is-loaded{opacity:1}.photo__cutout{position:absolute}.photo__cutout-drift{animation:cutoutDrift 60s ease-in-out infinite alternate}.photo__cutout-bob{display:block;width:100%;height:auto;animation:cutoutBob 8s ease-in-out infinite}@keyframes cutoutDrift{0%{transform:translate(0)}to{transform:translate(3vw)}}@keyframes cutoutBob{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.photo__veil{position:absolute;inset:0;background:linear-gradient(180deg,var(--veil-top),var(--veil-bottom))}@media(prefers-reduced-motion:reduce){.photo__stage,.photo__cutout-drift,.photo__cutout-bob{animation:none!important}.photo__stage{transform:scale(1.06)}.photo__img{transition:none}}.has-photo .hero,.has-photo .week__nav,.has-photo .signature,.has-photo .skills,.has-photo .welcome__step:not(.note),.has-photo .note{background:var(--glass);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--r-lg);box-shadow:var(--glass-shadow);padding:var(--s-5)}.has-photo .signature{padding:var(--s-2) var(--s-4);border-radius:var(--r-pill);display:inline-block}.has-photo .week__nav{padding:var(--s-3)}.has-photo .footer{background:var(--glass);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur)}.segmented{display:inline-flex;padding:4px;gap:4px;border-radius:var(--r-pill);background:var(--paper-3);border:1px solid var(--glass-border)}.segmented__opt{min-height:40px;min-width:72px;padding:0 var(--s-4);border:0;border-radius:var(--r-pill);background:transparent;color:var(--ink-soft);font-weight:700;font-size:var(--fs-sm);transition:background var(--t) var(--ease),color var(--t) var(--ease),box-shadow var(--t) var(--ease)}.segmented__opt:hover{color:var(--ink)}.segmented__opt[aria-checked=true]{background:var(--ink);color:var(--paper);box-shadow:var(--shadow-1)}.theme-toggle{display:none}@media(min-width:720px){.theme-toggle{display:inline-flex}}.practice-ribbon{position:fixed;left:10px;bottom:calc(84px + env(safe-area-inset-bottom));z-index:95;padding:4px 10px;border-radius:var(--r-pill);background:var(--balloon-navy);color:#fff;font-size:var(--fs-xs);font-weight:800;letter-spacing:.06em;text-transform:uppercase;box-shadow:var(--shadow-1);opacity:.92;pointer-events:none}@media(min-width:720px){.practice-ribbon{bottom:12px}}.qc{margin:var(--s-5) 0 var(--s-4);padding:var(--s-6) var(--s-5) var(--s-5);border-radius:var(--r-lg);background:var(--glass);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);display:grid;gap:var(--s-3)}@media(min-width:720px){.qc{margin-top:var(--s-8);padding:var(--s-7) var(--s-7) var(--s-6)}}.qc__hello{font-size:var(--fs-2xl);font-weight:400;letter-spacing:-.02em;font-variation-settings:"SOFT" 100,"opsz" 48}.qc__kicker{font-size:var(--fs-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--rose-deep);font-weight:700;margin-top:var(--s-2)}.qc__title{font-size:clamp(2rem,1.5rem + 2.6vw,3.25rem);font-weight:300;line-height:1.02;letter-spacing:-.03em;font-variation-settings:"SOFT" 100,"opsz" 144;max-width:18ch}.qc__composer{display:flex;align-items:center;gap:var(--s-3);margin-top:var(--s-3);padding:var(--s-2) var(--s-2) var(--s-2) var(--s-2);border-radius:40px;background:var(--glass-strong);border:1px solid var(--line-strong);transition:border-color var(--t) var(--ease),box-shadow var(--t) var(--ease)}.qc__composer:focus-within{border-color:var(--rose);box-shadow:0 0 0 3px color-mix(in srgb,var(--rose) 22%,transparent)}.qc__mic{flex:none;width:64px;height:64px;border-radius:50%;border:0;display:grid;place-items:center;color:#fff;background:var(--balloon-red);box-shadow:0 0 0 6px color-mix(in srgb,var(--balloon-red) 16%,transparent),var(--shadow-1);touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;transition:transform var(--t-fast) var(--ease),box-shadow var(--t) var(--ease)}.qc__mic:active{transform:scale(.96)}.qc__mic.is-on{animation:micHalo 1.4s ease-in-out infinite}@keyframes micHalo{0%,to{box-shadow:0 0 0 6px color-mix(in srgb,var(--balloon-red) 22%,transparent),var(--shadow-1)}50%{box-shadow:0 0 0 16px color-mix(in srgb,var(--balloon-red) 8%,transparent),var(--shadow-1)}}@media(prefers-reduced-motion:reduce){.qc__mic.is-on{animation:none;box-shadow:0 0 0 10px color-mix(in srgb,var(--balloon-red) 22%,transparent),var(--shadow-1)}}.qc__field{flex:1;min-width:0;min-height:56px;max-height:180px;padding:14px 4px;border:0;background:none;resize:none;font-size:var(--fs-lg);line-height:1.4;field-sizing:content}.qc__field:focus-visible{box-shadow:none}.qc__send{flex:none;width:44px;height:44px;border-radius:50%;border:0;display:grid;place-items:center;background:var(--ink);color:var(--paper);transition:opacity var(--t) var(--ease),transform var(--t-fast) var(--ease)}.qc__send:disabled{opacity:.35;cursor:not-allowed}.qc__chips{display:flex;gap:var(--s-2);flex-wrap:wrap}.qc__reply{position:relative;display:grid;gap:var(--s-2);margin-top:var(--s-2);padding:var(--s-4) var(--s-5);border-radius:var(--r-lg);background:var(--glass-strong);border:1px solid var(--glass-border)}.qc__reply--in{animation:popIn var(--t-slow) var(--ease) .24s both}.qc__reply--error{background:var(--danger-soft);color:var(--danger);font-weight:600;display:flex;align-items:center;justify-content:space-between;gap:var(--s-3);flex-wrap:wrap}.qc__plane{position:absolute;top:-12px;right:var(--s-5);color:var(--ink-soft);--plane-fill: var(--glass-strong);animation:planeIn .7s cubic-bezier(.22,.9,.3,1) both}.qc__text{font-size:var(--fs-lg);overflow-wrap:anywhere}.qc__continue{justify-self:start;font-weight:800;font-size:var(--fs-sm);min-height:var(--touch);display:inline-flex;align-items:center}@media(prefers-reduced-motion:reduce){.qc__reply--in,.qc__plane{animation:none}}.home-meta{display:flex;gap:var(--s-2);flex-wrap:wrap;margin-bottom:var(--s-4)}.has-photo .home-meta .chip--muted{background:var(--glass-strong)}.tip{display:grid;gap:var(--s-3);margin-bottom:var(--s-4);padding:var(--s-4) var(--s-5);border-radius:var(--r-lg);background:linear-gradient(135deg,color-mix(in srgb,var(--butter-soft) 85%,transparent),var(--glass) 75%);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border)}.tip a:not(.btn){font-weight:800;white-space:nowrap}.tip__actions{display:flex;gap:var(--s-2);flex-wrap:wrap}.input--pin{font-size:var(--fs-xl);letter-spacing:.3em;text-align:center}.input--pin::placeholder{font-size:var(--fs-md);letter-spacing:normal}.login__locked{color:var(--ink-soft);font-size:var(--fs-sm);font-weight:600}.footer__links{margin-top:var(--s-2);font-family:var(--font-body);font-style:normal;font-size:var(--fs-xs)}.footer__links a{color:var(--ink-soft);display:inline-flex;align-items:center;min-height:32px;padding:0 4px}.privacy-points{margin:0 0 var(--s-3);padding-left:1.2em;display:grid;gap:var(--s-2);color:var(--ink-soft)}.later-note{animation:fadeIn var(--t-slow) var(--ease)}.op-health{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s-4) var(--s-5);margin:0}@media(min-width:720px){.op-health{grid-template-columns:repeat(4,minmax(0,1fr))}}.op-health dt{font-size:var(--fs-xs);color:var(--ink-faint);text-transform:uppercase;letter-spacing:.1em;font-weight:700}.op-health dd{margin:6px 0 0}.op-health__num{font-family:var(--font-display);font-size:var(--fs-2xl);font-variation-settings:"SOFT" 60,"opsz" 48}.operator .brand .chip{margin-left:var(--s-2)}.op-note{min-height:200px;padding:var(--s-3) var(--s-4);line-height:var(--lh-body);resize:vertical}.next__caption{margin-top:var(--s-3);display:inline-block;padding:4px 12px;border-radius:var(--r-pill);background:var(--paper-3);color:var(--ink-soft);font-size:var(--fs-sm);font-style:italic;font-family:var(--font-display);font-variation-settings:"SOFT" 100,"opsz" 16}.journey{display:grid;grid-template-columns:52px 1fr;gap:var(--s-3);margin-top:var(--s-6)}@media(min-width:720px){.journey{grid-template-columns:120px 1fr;gap:var(--s-6)}}.journey__rail{position:relative}.journey__rail:before{content:"";position:absolute;top:0;bottom:0;left:50%;border-left:2px dashed var(--line-strong)}.journey__sticky{position:sticky;top:calc(var(--touch) + 40px);height:60vh;display:flex;justify-content:center;align-items:flex-start}.journey__balloon{--journey-travel: 30vh;display:inline-block;transition:transform .12s linear;will-change:transform}@media(min-width:720px){.journey__balloon{--journey-travel: 44vh}.journey__balloon svg{width:64px;height:80px}}@media(prefers-reduced-motion:reduce){.journey__balloon{transform:none!important;transition:none}}.journey__stages{display:grid;gap:var(--s-7)}.stage{padding:var(--s-5);border-radius:var(--r-lg);background:var(--glass);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow)}@media(min-width:720px){.stage{padding:var(--s-6) var(--s-7)}}.stage__head{display:flex;gap:var(--s-3);align-items:center;margin-bottom:var(--s-4)}.stage__mark{color:var(--ink);flex:none}.stage__head h2{font-size:var(--fs-2xl)}.stage__sub{color:var(--ink-soft);font-size:var(--fs-sm)}.stage__items{display:grid;gap:var(--s-4);border-top:1px solid var(--line);padding-top:var(--s-4)}.stage__name{font-weight:800}.stage__line{color:var(--ink-soft);font-family:var(--font-display);font-style:italic;font-variation-settings:"SOFT" 100,"opsz" 16;font-size:var(--fs-lg);line-height:var(--lh-snug)}.stage--next,.stage--someday{background:color-mix(in srgb,var(--glass) 80%,transparent)}.stage--someday .stage__item{opacity:.92}.next__close{margin:var(--s-9) auto var(--s-6);max-width:34ch;text-align:center;display:grid;gap:var(--s-3);justify-items:center;padding:var(--s-6);border-radius:var(--r-lg);background:var(--glass);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border)}.next__signature{font-family:var(--font-display);font-weight:300;font-size:clamp(1.75rem,1.3rem + 2vw,2.5rem);line-height:1.1;letter-spacing:-.02em;font-variation-settings:"SOFT" 100,"opsz" 144}.next__soft{color:var(--ink-soft)}.skills__next{display:inline-flex;align-items:center;min-height:var(--touch);margin-top:var(--s-3);font-weight:800}.demo-ribbon{display:inline-flex;align-items:center;padding:3px 10px;border-radius:var(--r-pill);background:var(--balloon-yellow);color:var(--balloon-navy);font-size:var(--fs-xs);font-weight:800;letter-spacing:.02em;white-space:nowrap}.lin-avatar{flex:none;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--glass-strong);border:1px solid var(--glass-border);box-shadow:var(--shadow-1)}.qc-bubble{position:relative;display:flex;gap:var(--s-3);align-items:flex-start;max-width:min(100%,620px)}.qc-bubble__body{display:grid;gap:var(--s-2);min-width:0;padding:var(--s-3) var(--s-4);border-radius:var(--r-lg);border-top-left-radius:6px;background:var(--glass-strong);border:1px solid var(--glass-border)}.qc-opener{margin-top:var(--s-3)}.qc-opener .qc__text{font-family:var(--font-display);font-variation-settings:"SOFT" 100,"opsz" 36;font-size:clamp(1.25rem,1.05rem + 1vw,1.6rem);line-height:1.3}.qc-opener .qc__plane{top:-14px;right:auto;left:44px}.qc-thread{display:flex;flex-direction:column;gap:var(--s-3);margin-top:var(--s-2)}.qc-bubble--me{align-self:flex-end;padding:var(--s-3) var(--s-4);border-radius:var(--r-lg);border-bottom-right-radius:6px;background:var(--rose-soft);color:var(--ink)}.qc-bubble--arrive .qc-bubble__body{animation:popIn var(--t-slow) var(--ease) .24s both}.qc-bubble--error{align-items:center;justify-content:space-between;flex-wrap:wrap;padding:var(--s-3) var(--s-4);border-radius:var(--r-lg);background:var(--danger-soft);color:var(--danger);font-weight:600}.qc-thread .qc__continue{align-self:flex-start}.qc__chip{min-height:32px;padding:0 var(--s-3);font-size:var(--fs-xs)}@media(prefers-reduced-motion:reduce){.qc-bubble--arrive .qc-bubble__body{animation:none}}.audio__track{background:var(--line-strong)}
