@charset "UTF-8";:root{color-scheme:light;--c-primary: #16a34a;--c-primary-dark: #15803d;--c-primary-soft: #dcfce7;--c-primary-contrast: #ffffff;--c-accent: #f59e0b;--c-bg: #f6f7f9;--c-surface: #ffffff;--c-text: #0f172a;--c-muted: #64748b;--c-border: #e2e8f0;--c-danger: #dc2626;--c-danger-soft: #fee2e2;--c-warn: #b45309;--c-warn-soft: #fef3c7;--c-protein: #3b82f6;--c-carbs: #f59e0b;--c-fat: #ec4899;--radius-sm: 10px;--radius: 16px;--radius-lg: 24px;--shadow: 0 1px 2px rgb(15 23 42 / 4%), 0 6px 24px rgb(15 23 42 / 5%);--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Display", system-ui, "Segoe UI", Roboto, sans-serif;--fw-regular: 400;--fw-medium: 500;--fw-semibold: 600;--space-1: 4px;--space-2: 8px;--space-3: 14px;--space-4: 20px;--space-5: 28px;--space-6: 40px;--topbar-h: 60px;--nav-h: 64px;--safe-bottom: env(safe-area-inset-bottom, 0px)}[data-theme=dark]{color-scheme:dark;--c-primary: #4ade80;--c-primary-dark: #22c55e;--c-primary-soft: rgb(74 222 128 / 18%);--c-primary-contrast: #0b1220;--c-bg: #0b1220;--c-surface: #151e2e;--c-text: #e5e9f0;--c-muted: #94a3b8;--c-border: #2a3648;--c-danger: #f87171;--c-danger-soft: #450a0a;--c-warn: #fbbf24;--c-warn-soft: #422006;--c-protein: #60a5fa;--c-carbs: #fbbf24;--c-fat: #f472b6;--shadow: 0 1px 2px rgb(0 0 0 / 45%), 0 4px 16px rgb(0 0 0 / 35%)}[data-accent=blue]{--c-primary: #2563eb;--c-primary-dark: #1d4ed8;--c-primary-soft: #dbeafe}[data-accent=orange]{--c-primary: #ea580c;--c-primary-dark: #c2410c;--c-primary-soft: #ffedd5}[data-accent=pink]{--c-primary: #db2777;--c-primary-dark: #be185d;--c-primary-soft: #fce7f3}[data-accent=violet]{--c-primary: #7c3aed;--c-primary-dark: #6d28d9;--c-primary-soft: #ede9fe}[data-theme=dark][data-accent=blue]{--c-primary: #60a5fa;--c-primary-dark: #3b82f6;--c-primary-soft: rgb(96 165 250 / 18%)}[data-theme=dark][data-accent=orange]{--c-primary: #fb923c;--c-primary-dark: #f97316;--c-primary-soft: rgb(251 146 60 / 18%)}[data-theme=dark][data-accent=pink]{--c-primary: #f472b6;--c-primary-dark: #ec4899;--c-primary-soft: rgb(244 114 182 / 18%)}[data-theme=dark][data-accent=violet]{--c-primary: #a78bfa;--c-primary-dark: #8b5cf6;--c-primary-soft: rgb(167 139 250 / 18%)}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--c-bg);color:var(--c-text);font-family:var(--font-sans);font-size:16px;font-weight:var(--fw-regular, 400);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%;overflow-x:clip}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:var(--fw-semibold, 600);letter-spacing:-.02em}h1{font-size:1.6rem;font-weight:var(--fw-semibold, 600);line-height:1.25}h2{font-size:1.125rem;font-weight:var(--fw-medium, 500);line-height:1.35}h3{font-size:.95rem;font-weight:var(--fw-medium, 500)}img{display:block;max-width:100%}button{font:inherit;cursor:pointer}.muted{color:var(--c-muted)}body.menu-open{overflow:hidden}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}@media(max-width:640px),(pointer:coarse){*{scrollbar-width:none;-ms-overflow-style:none}*::-webkit-scrollbar{display:none}}@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}.page{display:flex;flex-direction:column;gap:var(--space-5);padding:var(--space-5);max-width:600px;margin:0 auto;will-change:transform,opacity;animation:page-enter .3s cubic-bezier(.22,1,.36,1) forwards}@keyframes page-enter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.card{background:var(--c-surface);border-radius:var(--radius);box-shadow:var(--shadow);padding:var(--space-5)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:48px;padding:0 var(--space-5);border:1px solid transparent;border-radius:999px;font-weight:var(--fw-medium, 500);text-decoration:none;transition:transform .1s,background .15s}.btn:active{transform:scale(.98)}.btn--primary{background:var(--c-primary);color:var(--c-primary-contrast)}.btn--primary:hover{background:var(--c-primary-dark)}.btn--ghost{background:var(--c-surface);border-color:var(--c-border);color:var(--c-text)}.btn--block{width:100%}.btn--xl{min-height:60px;font-size:1.1rem}.alert{padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);background:var(--c-danger-soft);color:var(--c-danger);font-size:.95rem}.chip{display:inline-flex;align-items:center;gap:6px;padding:2px 10px;border-radius:999px;background:var(--c-bg);font-size:.8rem;font-weight:600}.skeleton{position:relative;overflow:hidden;background:var(--c-border);border-radius:var(--radius-sm)}.skeleton:after{content:"";position:absolute;inset:0;transform:translate(-100%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.65),transparent);animation:shimmer 1.4s infinite}@keyframes shimmer{to{transform:translate(100%)}}.spinner{width:18px;height:18px;border:3px solid var(--c-primary-soft);border-top-color:var(--c-primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
