*{box-sizing:border-box}:root,[data-mode=dark],[data-mode=performance],[data-mode=fancy]{--bg:#0b1410;--card:#11201a;--surface:#152019;--panel:#0e1b15;--border:#1e2d26;--border-soft:#1a2620;--border-strong:#2e3a33;--text:#f2efe6;--text-2:#c7cfc9;--muted:#8a938e;--muted-2:#5c655f;--muted-3:#3a443d;--on-gold:#1a1410;--gold-bg:#1c1a0e;--gold-text:#e8c547;--shadow:#00000080}[data-mode=light]{--bg:#f4f1e8;--card:#fff;--surface:#f0ece1;--panel:#fbf9f2;--border:#e2dccb;--border-soft:#ece7d8;--border-strong:#d2cbb6;--text:#1a1410;--text-2:#39332b;--muted:#6c6a5e;--muted-2:#9a9788;--muted-3:#c2bca8;--on-gold:#1a1410;--gold-bg:#fbf3d2;--gold-text:#b8901e;--shadow:#00000014}html,body{background:var(--bg);-webkit-font-smoothing:antialiased;margin:0;padding:0;font-family:Inter,sans-serif;overflow-x:hidden}input,textarea,button{font-family:inherit}.app-shell{height:100dvh;padding-top:env(safe-area-inset-top);flex-direction:column;display:flex}.app-scroll{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;flex:1;overflow-y:auto}.app-scroll[data-locked=true]{overflow:hidden!important}@keyframes bpPulse{0%,to{opacity:.3}50%{opacity:1}}.bp-dots{animation:1.4s ease-in-out infinite bpPulse}@keyframes bpWobble{0%,to{transform:scale(1.08)translateY(-2px)rotate(-4deg)}50%{transform:scale(1.08)translateY(-2px)rotate(4deg)}}.bp-wobble{animation:.5s ease-in-out infinite bpWobble}@keyframes bpHeart{0%,to{transform:scale(1)}40%{transform:scale(1.12)}60%{transform:scale(1.06)}}.bp-heart{animation:1s ease-in-out infinite bpHeart}@keyframes bpGlow{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}.bp-glow{animation:3s infinite bpGlow}[data-mode=performance] *,[data-mode=performance] :before,[data-mode=performance] :after{-webkit-backdrop-filter:none!important;transition:none!important;animation:none!important}@keyframes bpRise{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}[data-mode=fancy] .bp-card{animation:.34s cubic-bezier(.22,1,.36,1) both bpRise}[data-mode=fancy] .bp-btn{transition:transform .2s cubic-bezier(.34,1.56,.64,1),filter .12s!important}[data-mode=fancy] .bp-btn:active{transform:scale(.95)!important}[data-mode=fancy] .bp-tap{transition:transform .2s cubic-bezier(.34,1.56,.64,1)!important}[data-mode=fancy] .bp-tap:active{transform:scale(.95)!important}[data-mode=fancy] .bp-glow{animation-duration:4.5s}@keyframes bpFadeIn{0%{opacity:0}to{opacity:1}}[data-mode=fancy] .app-scroll>*{animation:.28s both bpFadeIn}@media (prefers-reduced-motion:reduce){[data-mode=fancy] .bp-card,[data-mode=fancy] .app-scroll>*{animation:none!important}[data-mode=fancy] .bp-btn,[data-mode=fancy] .bp-tap{transition:none!important}}
