.bottom-nav[data-v-7c76c166]{z-index:100;height:calc(var(--bottom-nav-height) + env(safe-area-inset-bottom,0));padding-bottom:env(safe-area-inset-bottom,0);background:var(--color-surface);border-top:1px solid var(--color-border);justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 12px #8813370f}.nav-item[data-v-7c76c166]{min-width:64px;min-height:48px;padding:var(--space-xs) var(--space-sm);color:var(--color-text-muted);transition:color var(--transition-fast);flex-direction:column;justify-content:center;align-items:center;gap:2px;display:flex}.nav-item.active[data-v-7c76c166]{color:var(--color-primary)}.nav-label[data-v-7c76c166]{font-size:.6875rem;font-weight:600}.app-layout[data-v-49a252b7]{min-height:100dvh;padding-bottom:calc(var(--bottom-nav-height) + env(safe-area-inset-bottom,0))}.app-layout.no-nav[data-v-49a252b7]{padding-bottom:0}:root{--color-primary:#e11d48;--color-on-primary:#fff;--color-secondary:#fb7185;--color-accent:#2563eb;--color-background:#fff1f2;--color-foreground:#881337;--color-muted:#f0ecf2;--color-border:#fecdd3;--color-destructive:#dc2626;--color-ring:#e11d48;--color-surface:#fff;--color-text:#1e293b;--color-text-muted:#64748b;--color-success:#16a34a;--color-warning:#f59e0b;--color-ball-red:#e11d48;--color-ball-blue:#2563eb;--color-ball-pl:#7c3aed;--font-heading:"Fredoka", system-ui, sans-serif;--font-body:"Nunito", system-ui, sans-serif;--space-xs:.25rem;--space-sm:.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--radius-full:9999px;--shadow-sm:0 1px 2px #8813370f;--shadow-md:0 4px 12px #8813371a;--shadow-lg:0 10px 24px #8813371f;--shadow-xl:0 20px 40px #88133726;--transition-fast:.15s ease;--transition-base:.2s ease;--transition-slow:.3s ease;--header-height:56px;--bottom-nav-height:64px;--max-width:640px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;font-size:16px}body{font-family:var(--font-body);background:var(--color-background);color:var(--color-text);-webkit-font-smoothing:antialiased;min-height:100dvh;line-height:1.5}#app{min-height:100dvh}.page{padding-top:env(safe-area-inset-top,0px)}h1,h2,h3,h4{font-family:var(--font-heading);color:var(--color-foreground);line-height:1.25}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}button{cursor:pointer;background:0 0;border:none;font-family:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--color-ring);outline-offset:2px}input,select,textarea{font-family:inherit;font-size:1rem}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse-soft{0%,to{opacity:1}50%{opacity:.6}}
