:root{--ink: #0E0D0B;--char: #15130F;--slate: #201D17;--slate-2: #2A251D;--line: rgba(243, 236, 220, .08);--line-strong: rgba(243, 236, 220, .16);--cream: #F3ECDC;--cream-mute: #C9C0AD;--cream-dim: #837B6A;--cream-faint: #5A5447;--accent: #F5E356;--accent-soft: #B8A836;--accent-glow: rgba(245, 227, 86, .18);--flame: #FF6B2B;--flame-glow: rgba(255, 107, 43, .22);--sage: #8FA88A;--rose: #C98A7A;--radius-sm: 6px;--radius-md: 12px;--radius-lg: 20px;--radius-xl: 28px;--font-display: "Instrument Serif", "Cormorant Garamond", Georgia, serif;--font-ui: "Inter", -apple-system, system-ui, sans-serif;--font-mono: "JetBrains Mono", "SF Mono", ui-monospace, monospace}[data-theme=cream]{--ink: #F3ECDC;--char: #EDE3D0;--slate: #E4D7BD;--slate-2: #D9C8A8;--line: rgba(20, 18, 14, .1);--line-strong: rgba(20, 18, 14, .2);--cream: #1A1712;--cream-mute: #4A4236;--cream-dim: #76705F;--cream-faint: #A89F89;--accent-glow: rgba(138, 116, 52, .22);--flame-glow: rgba(196, 72, 20, .24)}[data-accent=lemon]{--accent: #F5E356;--accent-soft: #B8A836;--accent-glow: rgba(245, 227, 86, .22)}[data-accent=copper]{--accent: #C97A4C;--accent-soft: #8A5434;--accent-glow: rgba(201, 122, 76, .2)}[data-accent=saffron]{--accent: #E0A03D;--accent-soft: #9E6F26;--accent-glow: rgba(224, 160, 61, .22)}[data-accent=gold]{--accent: #C9A84C;--accent-soft: #8A7434;--accent-glow: rgba(201, 168, 76, .18)}*{box-sizing:border-box}html,body,#root{margin:0;padding:0;height:100%;background:var(--ink);font-family:var(--font-ui);color:var(--cream);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overscroll-behavior:none}#root{display:flex;flex-direction:column;min-height:100dvh}.app-shell{width:100%;max-width:480px;min-height:100dvh;margin:0 auto;background:var(--ink);display:flex;flex-direction:column;position:relative;overflow-x:hidden}.h-display{font-family:var(--font-display);font-weight:400;letter-spacing:-.01em;line-height:1.02}.h-eyebrow{font-family:var(--font-ui);font-size:10.5px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--cream-dim)}.mono{font-family:var(--font-mono)}::-webkit-scrollbar{width:0;height:0}.btn{font-family:var(--font-ui);font-size:15px;font-weight:500;padding:14px 20px;border-radius:999px;border:1px solid var(--line-strong);background:transparent;color:var(--cream);cursor:pointer;transition:background .16s ease,border-color .16s ease,transform 80ms ease;display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn:active{transform:scale(.97)}.btn-primary{background:var(--accent);color:#0e0d0b;border-color:var(--accent);font-weight:600;letter-spacing:.01em}.btn-primary:hover{background:color-mix(in oklab,var(--accent),white 8%)}.btn-ghost:hover{background:var(--line)}.chip{display:inline-flex;align-items:center;gap:6px;padding:6px 11px;border-radius:999px;border:1px solid var(--line-strong);font-size:11.5px;font-weight:500;letter-spacing:.02em;color:var(--cream-mute);background:#f3ecdc06}.tile{position:relative;overflow:hidden;border-radius:var(--radius-lg);border:1px solid var(--line);background:var(--slate)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}@keyframes pulse-ring{0%{transform:scale(.9);opacity:.8}70%{transform:scale(1.6);opacity:0}to{transform:scale(1.6);opacity:0}}@keyframes pulse-dot{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.15);opacity:.7}}@keyframes pulse-soft{0%,to{opacity:1}50%{opacity:.55}}@keyframes wave{0%,to{transform:scaleY(.4)}50%{transform:scaleY(1)}}@keyframes fade-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes dot-bounce{0%,80%,to{opacity:.2;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}.fade-up{animation:fade-up .38s cubic-bezier(.2,.7,.3,1) both}.fade{animation:fade .28s ease both}.orb-core{position:relative;display:inline-flex;align-items:center;justify-content:center}.orb-core:before{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border-radius:999px;border:1px solid var(--accent);animation:pulse-ring 1.8s ease-out infinite}.orb-dot{width:8px;height:8px;border-radius:999px;background:var(--accent);animation:pulse-dot 1.8s ease-in-out infinite}.wave{display:inline-flex;align-items:center;gap:3px;height:20px}.wave span{display:block;width:2px;height:100%;background:var(--accent);border-radius:1px;transform-origin:center;animation:wave 1s ease-in-out infinite}.wave span:nth-child(1){animation-delay:0s}.wave span:nth-child(2){animation-delay:.1s}.wave span:nth-child(3){animation-delay:.2s}.wave span:nth-child(4){animation-delay:.1s}.wave span:nth-child(5){animation-delay:0s}.typing{display:inline-flex;gap:4px;align-items:center}.typing span{width:5px;height:5px;border-radius:999px;background:var(--cream-mute);animation:dot-bounce 1.2s ease-in-out infinite}.typing span:nth-child(2){animation-delay:.15s}.typing span:nth-child(3){animation-delay:.3s}.hr{height:1px;background:var(--line);border:0;margin:0}.input{width:100%;background:var(--slate);border:1px solid var(--line-strong);color:var(--cream);font-family:var(--font-ui);font-size:14px;padding:14px 16px;border-radius:var(--radius-md);outline:none;transition:border-color .16s ease}.input:focus{border-color:var(--accent)}.input::placeholder{color:var(--cream-dim)}.carousel{overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}.carousel::-webkit-scrollbar{display:none}
