@font-face{font-family:Noto Sans SC;font-style:normal;font-weight:300;font-display:swap;src:url(/fonts/NotoSansSC-300.ttf)format("truetype")}@font-face{font-family:Noto Sans SC;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/NotoSansSC-400.ttf)format("truetype")}@font-face{font-family:Noto Sans SC;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/NotoSansSC-500.ttf)format("truetype")}@font-face{font-family:Noto Sans SC;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/NotoSansSC-700.ttf)format("truetype")}@font-face{font-family:ZCOOL KuaiLe;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ZCOOLKuaiLe.ttf)format("truetype")}:root{--color-primary:#ff8c42;--color-primary-light:#ffb380;--color-primary-dark:#e67332;--color-secondary:#4caf50;--color-secondary-light:#81c784;--color-secondary-dark:#388e3c;--color-accent:#64b5f6;--color-accent-light:#90caf9;--color-bg-primary:#fff9f5;--color-bg-secondary:#fff5eb;--color-bg-card:#fff;--color-bg-dark:#2d2d2d;--color-text-primary:#3d3d3d;--color-text-secondary:#7a7a7a;--color-text-light:#a0a0a0;--color-text-white:#fff;--color-success:#66bb6a;--color-warning:#ffa726;--color-error:#ef5350;--color-motivational:#ff6b6b;--color-days-lived:#ff8c42;--color-days-remaining:#4caf50;--color-parent-time:#e91e63;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--space-3xl:64px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--radius-full:9999px;--shadow-sm:0 2px 4px #0000000d;--shadow-md:0 4px 12px #00000014;--shadow-lg:0 8px 24px #0000001f;--shadow-glow:0 0 20px #ff8c424d;--font-primary:"Noto Sans SC", -apple-system, BlinkMacSystemFont, sans-serif;--font-display:"ZCOOL KuaiLe", "Noto Sans SC", cursive;--font-mono:"JetBrains Mono", monospace;--text-xs:12px;--text-sm:14px;--text-base:16px;--text-lg:18px;--text-xl:20px;--text-2xl:24px;--text-3xl:30px;--text-4xl:36px;--text-5xl:48px;--text-hero:72px}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;font-size:16px}body{font-family:var(--font-primary);background:var(--color-bg-primary);color:var(--color-text-primary);min-height:100vh;line-height:1.6;overflow-x:hidden}#root{min-height:100vh}.app-container{background:var(--color-bg-primary);max-width:428px;min-height:100vh;box-shadow:var(--shadow-lg);margin:0 auto;position:relative}@media (width>=769px){body{padding:var(--space-lg) 0;background:linear-gradient(135deg,#fff9f5 0%,#ffe4d0 100%);justify-content:center;display:flex}.app-container{border-radius:var(--radius-xl);overflow:hidden;box-shadow:0 0 60px #00000026}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes bounce{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}@keyframes countUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes heartBeat{0%{transform:scale(1)}25%{transform:scale(1.3)}50%{transform:scale(1)}75%{transform:scale(1.3)}to{transform:scale(1)}}@keyframes progressFill{0%{width:0}}.animate-fade-in{animation:.3s ease-out fadeIn}.animate-slide-up{animation:.4s ease-out slideUp}.animate-slide-down{animation:.4s ease-out slideDown}.animate-bounce{animation:.3s ease-in-out bounce}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--color-primary-light);border-radius:var(--radius-full)}
