@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400&family=Atkinson+Hyperlegible:ital,wght@0,400;0,700;1,400&family=Caveat:wght@400;600&display=swap";:root{--paper:#F7F3EA;--paper-raised:#FDFAF2;--paper-deep:#EFE9DB;--ink:#2E2A24;--ink-soft:#5F584C;--ink-faint:#8A8172;--sage:#5C6E53;--sage-deep:#49573F;--sage-tint:#E6EBE0;--rose:#C98A7D;--rose-deep:#B0715F;--rose-tint:#F3E5E0;--gold:#C9A227;--gold-deep:#A98518;--gold-tint:#F4ECD4;--line:#E2DAC9;--line-strong:#CFC5AE;--surface-page:var(--paper);--surface-card:var(--paper-raised);--surface-sunken:var(--paper-deep);--text-body:var(--ink);--text-soft:var(--ink-soft);--text-faint:var(--ink-faint);--text-on-action:#FBF9F2;--action:var(--sage);--action-hover:var(--sage-deep);--action-quiet:var(--sage-tint);--love:var(--rose);--love-quiet:var(--rose-tint);--seal:var(--gold);--seal-quiet:var(--gold-tint);--border:var(--line);--border-strong:var(--line-strong);--focus-ring:0 0 0 3px rgba(92,110,83,.35)}:root{--font-display:"Cormorant Garamond",Georgia,"Times New Roman",serif;--font-body:"Atkinson Hyperlegible","Segoe UI",system-ui,sans-serif;--font-script:"Caveat","Segoe Script",cursive;--text-hero:clamp(44px,6vw,62px);--text-title:38px;--text-heading:30px;--text-lg:24px;--text-base:20px;--text-small:18px;--text-teleprompter:28px;--leading-tight:1.15;--leading-body:1.6;--weight-body:400;--weight-bold:700;--weight-display:500}html{color-scheme:light}body{font-family:var(--font-body);font-size:var(--text-base);line-height:var(--leading-body);color:var(--text-body);background:var(--surface-page);accent-color:var(--sage)}h1,h2,h3{font-family:var(--font-display);font-weight:var(--weight-display);line-height:var(--leading-tight);color:var(--text-body)}a{color:var(--sage-deep);text-decoration:underline;text-underline-offset:3px}a:hover{color:var(--ink)}:root{--space-1:6px;--space-2:12px;--space-3:18px;--space-4:24px;--space-5:36px;--space-6:48px;--space-7:72px;--space-8:96px;--measure:34em;--tap-min:60px}:root{--radius-soft:14px;--radius-card:20px;--radius-pill:999px;--shadow-card:0 1px 2px rgba(46,42,36,.05),0 6px 20px rgba(46,42,36,.07);--shadow-lift:0 2px 4px rgba(46,42,36,.06),0 12px 32px rgba(46,42,36,.1);--ease-gentle:cubic-bezier(.33,0,.2,1);--duration:.25s;--breath:5s}@keyframes breathe{0%,to{transform:scaleY(.88);opacity:.85}50%{transform:scaleY(1);opacity:1}}@keyframes breathe-glow{0%,to{opacity:.55}50%{opacity:1}}@keyframes speak{0%{transform:scaleY(.28)}to{transform:scaleY(1)}}@keyframes echo{0%{transform:translateY(-50%) scale(1);opacity:.45}to{transform:translateY(-50%) scale(2.6,1.9);opacity:0}}@keyframes ink-in{0%{opacity:0;filter:blur(3px)}to{opacity:1;filter:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--surface-page);color:var(--text-body);font:400 var(--text-base, 20px)/1.6 var(--font-body);-webkit-font-smoothing:antialiased;overscroll-behavior:none}#root{display:flex;flex-direction:column;max-width:520px;margin:0 auto}button{font-family:inherit}.k-nav{display:flex;align-items:center;padding:8px 12px calc(24px + env(safe-area-inset-bottom,0px));background:var(--surface-card);border-top:1px solid var(--border)}.k-nav button{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 0;border:none;border-radius:14px;background:transparent;color:var(--text-soft);cursor:pointer;position:relative;transition:background var(--duration) var(--ease-gentle),color var(--duration) var(--ease-gentle)}.k-nav button[data-active=true]{background:var(--action-quiet);color:var(--sage-deep)}.k-nav .k-badge{position:absolute;top:2px;right:24px;min-width:18px;height:18px;border-radius:999px;background:var(--rose);color:var(--text-on-action);font:700 11px/18px var(--font-body);text-align:center}.k-screen{flex:1;display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-4);overflow-y:auto}.k-title{margin:0;font:500 var(--text-heading, 30px)/1.15 var(--font-display)}.k-soft{color:var(--text-soft)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important}}
