:root{--bg-primary: #0f0e17;--bg-secondary: #1a1a2e;--bg-card: rgba(30, 30, 55, .65);--bg-card-hover: rgba(42, 42, 75, .75);--bg-input: rgba(255, 255, 255, .06);--text-primary: #fffffe;--text-secondary: #a7a9be;--text-muted: #6b6d7b;--accent-purple: #7f5af0;--accent-purple-glow: rgba(127, 90, 240, .25);--accent-pink: #ff6b9d;--accent-pink-glow: rgba(255, 107, 157, .2);--accent-blue: #72c1f5;--accent-blue-glow: rgba(114, 193, 245, .2);--accent-green: #2cb67d;--accent-green-glow: rgba(44, 182, 125, .2);--accent-yellow: #ffd166;--accent-yellow-glow: rgba(255, 209, 102, .2);--accent-peach: #ff9a76;--accent-peach-glow: rgba(255, 154, 118, .2);--danger: #ef4565;--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--fs-xs: .7rem;--fs-sm: .8rem;--fs-base: .95rem;--fs-md: 1.1rem;--fs-lg: 1.35rem;--fs-xl: 1.75rem;--fs-2xl: 2.25rem;--fs-3xl: 3rem;--fw-normal: 400;--fw-medium: 500;--fw-semibold: 600;--fw-bold: 700;--fw-extrabold: 800;--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--space-2xl: 48px;--radius-sm: 8px;--radius-md: 14px;--radius-lg: 20px;--radius-xl: 28px;--radius-full: 50%;--header-height: 60px;--nav-height: 72px;--max-width: 480px;--shadow-sm: 0 2px 8px rgba(0, 0, 0, .2);--shadow-md: 0 4px 20px rgba(0, 0, 0, .3);--shadow-lg: 0 8px 40px rgba(0, 0, 0, .4);--shadow-glow-purple: 0 0 20px var(--accent-purple-glow);--shadow-glow-pink: 0 0 20px var(--accent-pink-glow);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--ease-out: cubic-bezier(.25, 1, .5, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--ease-bounce: cubic-bezier(.68, -.55, .27, 1.55);--transition-fast: .18s var(--ease-out);--transition-normal: .3s var(--ease-out);--transition-slow: .5s var(--ease-out);--transition-spring: .4s var(--ease-spring);--transition-bounce: .5s var(--ease-bounce)}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;-webkit-text-size-adjust:100%}body{font-family:var(--font-family);background:var(--bg-primary);color:var(--text-primary);line-height:1.5;min-height:100vh;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body:before,body:after{content:"";position:fixed;border-radius:50%;pointer-events:none;z-index:0;filter:blur(80px)}body:before{width:500px;height:500px;top:-15%;left:-10%;background:radial-gradient(circle,rgba(127,90,240,.15),transparent 70%);animation:orbFloat1 20s ease-in-out infinite}body:after{width:400px;height:400px;bottom:-10%;right:-10%;background:radial-gradient(circle,rgba(255,107,157,.12),transparent 70%);animation:orbFloat2 25s ease-in-out infinite}@keyframes orbFloat1{0%,to{transform:translate(0) scale(1)}33%{transform:translate(60px,40px) scale(1.1)}66%{transform:translate(-30px,80px) scale(.95)}}@keyframes orbFloat2{0%,to{transform:translate(0) scale(1)}33%{transform:translate(-50px,-30px) scale(1.05)}66%{transform:translate(40px,-60px) scale(.9)}}a{color:inherit;text-decoration:none}button{cursor:pointer;border:none;background:none;font-family:inherit;color:inherit}input,select,textarea{font-family:inherit;font-size:inherit;color:inherit}ul,ol{list-style:none}#app{position:relative;z-index:1;max-width:var(--max-width);margin:0 auto;min-height:100vh;display:flex;flex-direction:column}#app-header{position:sticky;top:0;z-index:100;display:flex;align-items:center;justify-content:space-between;height:var(--header-height);padding:0 var(--space-md);background:#0f0e17cc;backdrop-filter:blur(24px) saturate(1.6);-webkit-backdrop-filter:blur(24px) saturate(1.6);border-bottom:1px solid rgba(255,255,255,.04)}.header-left{display:flex;align-items:center;gap:var(--space-sm)}.header-logo{font-size:1.4rem;filter:drop-shadow(0 0 8px rgba(127,90,240,.5));animation:gentleBob 4s ease-in-out infinite}@keyframes gentleBob{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.header-title{font-size:var(--fs-md);font-weight:var(--fw-bold);background:linear-gradient(135deg,var(--accent-purple),var(--accent-pink));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}#bottom-nav{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:var(--max-width);z-index:100;display:flex;align-items:center;justify-content:space-around;height:var(--nav-height);padding-bottom:env(safe-area-inset-bottom,8px);background:#0f0e17e0;backdrop-filter:blur(24px) saturate(1.6);-webkit-backdrop-filter:blur(24px) saturate(1.6);border-top:1px solid rgba(255,255,255,.05)}.nav-item{display:flex;flex-direction:column;align-items:center;gap:3px;padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);transition:color var(--transition-fast),transform .3s var(--ease-spring);color:var(--text-muted);font-size:var(--fs-xs);font-weight:var(--fw-medium);position:relative}.nav-item:active{transform:scale(.9)}.nav-item:before{content:"";position:absolute;top:-1px;left:50%;transform:translate(-50%) scaleX(0);width:24px;height:3px;border-radius:2px;background:linear-gradient(90deg,var(--accent-purple),var(--accent-pink));transition:transform .35s var(--ease-spring)}.nav-item.active{color:var(--accent-purple)}.nav-item.active:before{transform:translate(-50%) scaleX(1)}.nav-item svg{transition:transform .35s var(--ease-spring),filter var(--transition-fast)}.nav-item.active svg{filter:drop-shadow(0 0 8px var(--accent-purple-glow));transform:translateY(-1px)}#page-content{flex:1;padding:var(--space-md);padding-bottom:calc(var(--nav-height) + var(--space-md))}.page-enter{animation:pageEnter .45s var(--ease-out) both}@keyframes pageEnter{0%{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUpSpring{0%{opacity:0;transform:translateY(30px) scale(.95)}60%{opacity:1;transform:translateY(-4px) scale(1.01)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes popIn{0%{opacity:0;transform:scale(.8)}50%{transform:scale(1.05)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes breathe{0%,to{box-shadow:0 0 15px var(--accent-purple-glow)}50%{box-shadow:0 0 35px var(--accent-purple-glow),0 0 70px #7f5af014}}@keyframes shimmer{0%{background-position:-200% center}to{background-position:200% center}}@keyframes wiggle{0%,to{transform:rotate(0)}20%{transform:rotate(-6deg)}40%{transform:rotate(6deg)}60%{transform:rotate(-4deg)}80%{transform:rotate(4deg)}}@keyframes successPop{0%{transform:scale(1)}30%{transform:scale(.92)}60%{transform:scale(1.08)}to{transform:scale(1)}}@keyframes ripple{0%{transform:scale(0);opacity:.5}to{transform:scale(4);opacity:0}}.stagger-in>*{animation:slideUpSpring .45s var(--ease-out) both}.stagger-in>*:nth-child(1){animation-delay:0ms}.stagger-in>*:nth-child(2){animation-delay:50ms}.stagger-in>*:nth-child(3){animation-delay:.1s}.stagger-in>*:nth-child(4){animation-delay:.15s}.stagger-in>*:nth-child(5){animation-delay:.2s}.stagger-in>*:nth-child(6){animation-delay:.25s}.stagger-in>*:nth-child(7){animation-delay:.3s}.stagger-in>*:nth-child(8){animation-delay:.35s}.stagger-in>*:nth-child(9){animation-delay:.4s}.stagger-in>*:nth-child(10){animation-delay:.45s}.card{background:var(--bg-card);border-radius:var(--radius-md);padding:var(--space-md);border:1px solid rgba(255,255,255,.05);backdrop-filter:blur(12px) saturate(1.4);-webkit-backdrop-filter:blur(12px) saturate(1.4);transition:transform .3s var(--ease-spring),background var(--transition-fast),box-shadow var(--transition-normal)}.card:hover{background:var(--bg-card-hover)}.card-glow-purple{border-color:#7f5af026;box-shadow:var(--shadow-glow-purple),inset 0 1px #ffffff0a}.card-glow-pink{border-color:#ff6b9d26;box-shadow:var(--shadow-glow-pink),inset 0 1px #ffffff0a}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:12px 24px;border-radius:var(--radius-md);font-size:var(--fs-base);font-weight:var(--fw-semibold);transition:transform .25s var(--ease-spring),box-shadow var(--transition-normal),background var(--transition-fast);position:relative;overflow:hidden;-webkit-tap-highlight-color:transparent}.btn:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.12) 45%,rgba(255,255,255,.12) 55%,transparent 65%);background-size:200% 100%;opacity:0;transition:opacity var(--transition-fast)}.btn:hover:after{opacity:1;animation:shimmer 1.5s ease infinite}.btn:active{transform:scale(.95)}.btn-primary{background:linear-gradient(135deg,var(--accent-purple),#9b6ff7);color:#fff;box-shadow:var(--shadow-glow-purple)}.btn-primary:hover{box-shadow:0 0 35px var(--accent-purple-glow),0 4px 12px #0000004d;transform:translateY(-1px)}.btn-secondary{background:var(--bg-input);border:1px solid rgba(255,255,255,.08)}.btn-secondary:hover{border-color:#ffffff26;background:#ffffff14}.btn-danger{background:linear-gradient(135deg,var(--danger),#ff6b8a);color:#fff}.btn-sm{padding:8px 16px;font-size:var(--fs-sm);border-radius:var(--radius-sm)}.btn-lg{padding:16px 32px;font-size:var(--fs-md);border-radius:var(--radius-lg)}.btn-block{width:100%}.btn-icon{width:48px;height:48px;padding:0;border-radius:var(--radius-full)}.icon-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-full);color:var(--text-secondary);transition:transform .25s var(--ease-spring),background var(--transition-fast),color var(--transition-fast)}.icon-btn:hover{background:var(--bg-input);color:var(--text-primary);transform:scale(1.1)}.icon-btn:active{transform:scale(.9)}.form-group{margin-bottom:var(--space-md)}.form-group label{display:block;font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--text-secondary);margin-bottom:var(--space-xs);text-transform:uppercase;letter-spacing:.06em}.form-group input,.form-group select,.form-group textarea{width:100%;padding:12px 16px;background:var(--bg-input);border:1.5px solid rgba(255,255,255,.06);border-radius:var(--radius-sm);color:var(--text-primary);transition:border-color .3s var(--ease-out),box-shadow .3s var(--ease-out),transform .2s var(--ease-spring)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--accent-purple);box-shadow:0 0 0 3px var(--accent-purple-glow),0 0 20px #7f5af00f;transform:scale(1.01)}.form-group input::placeholder{color:var(--text-muted)}.form-actions{display:flex;gap:var(--space-sm);margin-top:var(--space-lg)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:flex-end;justify-content:center;background:#00000080;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:fadeIn .2s ease}.modal-overlay.hidden{display:none}.modal-card{width:100%;max-width:var(--max-width);background:var(--bg-secondary);border-radius:var(--radius-xl) var(--radius-xl) 0 0;padding:var(--space-lg);padding-bottom:calc(var(--space-lg) + env(safe-area-inset-bottom,16px));border:1px solid rgba(255,255,255,.06);border-bottom:none;box-shadow:0 -8px 40px #0006;animation:modalSlideUp .4s var(--ease-spring)}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.modal-card:before{content:"";display:block;width:36px;height:4px;border-radius:2px;background:#ffffff26;margin:0 auto var(--space-md)}.modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-lg)}.modal-header h2{font-size:var(--fs-lg);font-weight:var(--fw-bold)}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-md)}.section-title{font-size:var(--fs-md);font-weight:var(--fw-bold)}.section-subtitle{font-size:var(--fs-sm);color:var(--text-secondary)}.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-sm);margin-bottom:var(--space-lg)}.stat-card{background:var(--bg-card);border-radius:var(--radius-md);padding:var(--space-md);border:1px solid rgba(255,255,255,.05);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);text-align:center;transition:transform .3s var(--ease-spring),background var(--transition-fast),box-shadow var(--transition-normal);cursor:pointer;-webkit-tap-highlight-color:transparent}.stat-card:hover{transform:translateY(-3px) scale(1.02);background:var(--bg-card-hover);box-shadow:0 8px 24px #0003}.stat-card:active{transform:scale(.97)}.stat-icon{font-size:1.6rem;margin-bottom:var(--space-xs);display:block;transition:transform .3s var(--ease-spring)}.stat-card:hover .stat-icon{transform:scale(1.15) rotate(-5deg)}.stat-value{font-size:var(--fs-xl);font-weight:var(--fw-extrabold);line-height:1.1}.stat-label{font-size:var(--fs-xs);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-top:2px}.log-list{display:flex;flex-direction:column;gap:var(--space-sm)}.log-item{display:flex;align-items:center;gap:var(--space-md);background:var(--bg-card);border-radius:var(--radius-md);padding:var(--space-md);border:1px solid rgba(255,255,255,.04);transition:transform .25s var(--ease-spring),background var(--transition-fast),box-shadow var(--transition-normal);-webkit-tap-highlight-color:transparent}.log-item:hover{background:var(--bg-card-hover);transform:translate(4px);box-shadow:-4px 0 12px #7f5af00f}.log-icon{width:44px;height:44px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:1.25rem;flex-shrink:0;transition:transform .3s var(--ease-spring)}.log-item:hover .log-icon{transform:scale(1.1) rotate(-5deg)}.log-icon.sleep{background:var(--accent-purple-glow)}.log-icon.feeding{background:var(--accent-peach-glow)}.log-icon.diaper{background:var(--accent-green-glow)}.log-info{flex:1;min-width:0}.log-title{font-size:var(--fs-base);font-weight:var(--fw-semibold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.log-detail{font-size:var(--fs-sm);color:var(--text-secondary)}.log-time{font-size:var(--fs-sm);color:var(--text-muted);flex-shrink:0;font-variant-numeric:tabular-nums}.log-delete{opacity:0;transition:opacity var(--transition-fast),transform .25s var(--ease-spring),color var(--transition-fast);color:var(--text-muted)}.log-item:hover .log-delete{opacity:1}.log-delete:hover{color:var(--danger);transform:scale(1.2)}.log-delete:active{transform:scale(.85)}.timer-display{text-align:center;padding:var(--space-xl) 0}.timer-value{font-size:3.5rem;font-weight:var(--fw-extrabold);font-variant-numeric:tabular-nums;background:linear-gradient(135deg,var(--accent-purple),var(--accent-pink));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.02em;transition:transform .3s var(--ease-spring)}.timer-label{font-size:var(--fs-sm);color:var(--text-secondary);margin-top:var(--space-xs)}.timer-actions{display:flex;align-items:center;justify-content:center;gap:var(--space-md);margin-top:var(--space-lg)}.timer-btn{width:72px;height:72px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;font-size:1.5rem;transition:transform .3s var(--ease-spring),box-shadow var(--transition-normal);-webkit-tap-highlight-color:transparent}.timer-btn:hover{transform:scale(1.08)}.timer-btn:active{transform:scale(.9)}.timer-btn.start{background:linear-gradient(135deg,var(--accent-purple),#9b6ff7);box-shadow:var(--shadow-glow-purple),0 4px 16px #0000004d}.timer-btn.start:hover{box-shadow:0 0 45px var(--accent-purple-glow),0 4px 16px #0000004d}.timer-btn.start.active{animation:breathe 2s ease-in-out infinite}.timer-btn.stop{background:linear-gradient(135deg,var(--danger),#ff6b8a);box-shadow:0 0 20px #ef456533,0 4px 16px #0000004d}.timer-btn.stop:hover{box-shadow:0 0 45px #ef45654d,0 4px 16px #0000004d}.pill-tabs{display:flex;gap:var(--space-xs);padding:4px;background:var(--bg-card);border-radius:var(--radius-md);margin-bottom:var(--space-lg);border:1px solid rgba(255,255,255,.04)}.pill-tab{flex:1;padding:10px;text-align:center;border-radius:10px;font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-secondary);transition:all .25s var(--ease-spring);-webkit-tap-highlight-color:transparent}.pill-tab.active{background:var(--accent-purple);color:#fff;box-shadow:var(--shadow-glow-purple);transform:scale(1.03)}.pill-tab:not(.active):hover{color:var(--text-primary);background:var(--bg-input)}.pill-tab:active{transform:scale(.95)}.quick-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-sm);margin-bottom:var(--space-lg)}.quick-action-btn{display:flex;flex-direction:column;align-items:center;gap:var(--space-sm);padding:var(--space-md);background:var(--bg-card);border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.05);transition:transform .3s var(--ease-spring),background var(--transition-fast),box-shadow var(--transition-normal);font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--text-secondary);-webkit-tap-highlight-color:transparent}.quick-action-btn:hover{background:var(--bg-card-hover);transform:translateY(-4px) scale(1.03);color:var(--text-primary);box-shadow:0 8px 20px #00000026}.quick-action-btn:active{transform:scale(.93)}.quick-action-btn .action-icon{width:48px;height:48px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;font-size:1.4rem;transition:transform .3s var(--ease-spring)}.quick-action-btn:hover .action-icon{animation:wiggle .5s var(--ease-spring)}.action-icon.sleep-icon{background:var(--accent-purple-glow)}.action-icon.feed-icon{background:var(--accent-peach-glow)}.action-icon.diaper-icon{background:var(--accent-green-glow)}.chart-container{background:var(--bg-card);border-radius:var(--radius-md);padding:var(--space-md);border:1px solid rgba(255,255,255,.05);margin-bottom:var(--space-lg)}.chart-title{font-size:var(--fs-base);font-weight:var(--fw-semibold);margin-bottom:var(--space-md)}.bar-chart{display:flex;align-items:flex-end;gap:6px;height:130px;padding-top:var(--space-sm)}.bar-col{flex:1;display:flex;flex-direction:column;align-items:center;height:100%;justify-content:flex-end}.bar{width:100%;max-width:32px;border-radius:8px 8px 3px 3px;position:relative;animation:barGrow .6s var(--ease-out) both;transition:transform .25s var(--ease-spring),filter var(--transition-fast)}.bar:hover{transform:scaleY(1.05) scaleX(1.1);filter:brightness(1.2)}@keyframes barGrow{0%{transform:scaleY(0);transform-origin:bottom}to{transform:scaleY(1);transform-origin:bottom}}.bar.purple{background:linear-gradient(to top,var(--accent-purple),#9b6ff7);box-shadow:0 -2px 10px #7f5af026}.bar.pink{background:linear-gradient(to top,var(--accent-pink),#ff8fb3);box-shadow:0 -2px 10px #ff6b9d26}.bar.green{background:linear-gradient(to top,var(--accent-green),#4fd1a5);box-shadow:0 -2px 10px #2cb67d26}.bar.blue{background:linear-gradient(to top,var(--accent-blue),#a5d8f8);box-shadow:0 -2px 10px #72c1f526}.bar.peach{background:linear-gradient(to top,var(--accent-peach),#ffb89a);box-shadow:0 -2px 10px #ff9a7626}.bar.yellow{background:linear-gradient(to top,var(--accent-yellow),#ffe299);box-shadow:0 -2px 10px #ffd16626}.bar-col:nth-child(1) .bar{animation-delay:0ms}.bar-col:nth-child(2) .bar{animation-delay:40ms}.bar-col:nth-child(3) .bar{animation-delay:80ms}.bar-col:nth-child(4) .bar{animation-delay:.12s}.bar-col:nth-child(5) .bar{animation-delay:.16s}.bar-col:nth-child(6) .bar{animation-delay:.2s}.bar-col:nth-child(7) .bar{animation-delay:.24s}.bar-col:nth-child(8) .bar{animation-delay:.28s}.bar-col:nth-child(9) .bar{animation-delay:.32s}.bar-col:nth-child(10) .bar{animation-delay:.36s}.bar-col:nth-child(11) .bar{animation-delay:.4s}.bar-col:nth-child(12) .bar{animation-delay:.44s}.bar-col:nth-child(13) .bar{animation-delay:.48s}.bar-col:nth-child(14) .bar{animation-delay:.52s}.bar-label{font-size:var(--fs-xs);color:var(--text-muted);margin-top:4px}.bar-value{font-size:var(--fs-xs);color:var(--text-secondary);font-weight:var(--fw-semibold);margin-bottom:2px}.empty-state{text-align:center;padding:var(--space-2xl) var(--space-lg);color:var(--text-muted);animation:fadeIn .6s ease both}.empty-state-icon{font-size:3.5rem;margin-bottom:var(--space-md);opacity:.5;animation:gentleBob 3s ease-in-out infinite}.empty-state-text{font-size:var(--fs-base);margin-bottom:var(--space-lg);line-height:1.6}.badge{display:inline-flex;align-items:center;padding:4px 12px;border-radius:20px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);animation:popIn .35s var(--ease-spring) both}.badge-purple{background:var(--accent-purple-glow);color:var(--accent-purple)}.badge-pink{background:var(--accent-pink-glow);color:var(--accent-pink)}.badge-green{background:var(--accent-green-glow);color:var(--accent-green)}.badge-blue{background:var(--accent-blue-glow);color:var(--accent-blue)}.badge-yellow{background:var(--accent-yellow-glow);color:var(--accent-yellow)}.badge-peach{background:var(--accent-peach-glow);color:var(--accent-peach)}.hidden{display:none!important}.text-center{text-align:center}.text-muted{color:var(--text-muted)}.mt-sm{margin-top:var(--space-sm)}.mt-md{margin-top:var(--space-md)}.mt-lg{margin-top:var(--space-lg)}.mb-sm{margin-bottom:var(--space-sm)}.mb-md{margin-bottom:var(--space-md)}.mb-lg{margin-bottom:var(--space-lg)}.gap-sm{gap:var(--space-sm)}.flex-between{display:flex;align-items:center;justify-content:space-between}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#fff3}.diaper-btns{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-sm);margin-bottom:var(--space-lg)}.diaper-btn{display:flex;flex-direction:column;align-items:center;gap:var(--space-sm);padding:var(--space-lg) var(--space-md);background:var(--bg-card);border:2px solid rgba(255,255,255,.06);border-radius:var(--radius-lg);font-size:var(--fs-base);font-weight:var(--fw-semibold);transition:transform .3s var(--ease-spring),border-color .2s ease,box-shadow .3s ease,background var(--transition-fast);-webkit-tap-highlight-color:transparent;position:relative;overflow:hidden}.diaper-btn:after{content:"";position:absolute;width:50px;height:50px;border-radius:var(--radius-full);background:currentColor;opacity:0;pointer-events:none;top:50%;left:50%;transform:translate(-50%,-50%) scale(0)}.diaper-btn.tapped:after{animation:ripple .5s ease-out}.diaper-btn:hover{transform:translateY(-3px) scale(1.03)}.diaper-btn:active{transform:scale(.92)}.diaper-btn .diaper-icon{font-size:2.2rem;transition:transform .3s var(--ease-spring)}.diaper-btn:hover .diaper-icon{animation:wiggle .5s var(--ease-spring)}.diaper-btn.wet{color:var(--accent-blue)}.diaper-btn.wet:hover{border-color:var(--accent-blue);box-shadow:0 0 25px var(--accent-blue-glow)}.diaper-btn.dirty{color:var(--accent-yellow)}.diaper-btn.dirty:hover{border-color:var(--accent-yellow);box-shadow:0 0 25px var(--accent-yellow-glow)}.diaper-btn.both{color:var(--accent-peach)}.diaper-btn.both:hover{border-color:var(--accent-peach);box-shadow:0 0 25px var(--accent-peach-glow)}.diaper-btn.success{animation:successPop .4s var(--ease-spring)}.side-picker{display:flex;gap:var(--space-sm);justify-content:center;margin-bottom:var(--space-md)}.side-btn{padding:10px 28px;border-radius:var(--radius-md);font-weight:var(--fw-semibold);font-size:var(--fs-base);background:var(--bg-card);border:2px solid rgba(255,255,255,.06);transition:all .25s var(--ease-spring);-webkit-tap-highlight-color:transparent}.side-btn.active{border-color:var(--accent-pink);background:var(--accent-pink-glow);color:var(--accent-pink);transform:scale(1.05);box-shadow:0 0 20px var(--accent-pink-glow)}.side-btn:not(.active):hover{border-color:#ffffff26;transform:scale(1.03)}.side-btn:active{transform:scale(.93)}.amount-input-row{display:flex;align-items:center;gap:var(--space-md);justify-content:center;margin:var(--space-lg) 0}.amount-btn{width:48px;height:48px;border-radius:var(--radius-full);background:var(--bg-card);border:1.5px solid rgba(255,255,255,.08);font-size:var(--fs-lg);font-weight:var(--fw-bold);display:flex;align-items:center;justify-content:center;transition:transform .25s var(--ease-spring),border-color var(--transition-fast),background var(--transition-fast);-webkit-tap-highlight-color:transparent}.amount-btn:hover{background:var(--bg-card-hover);border-color:var(--accent-purple);transform:scale(1.1)}.amount-btn:active{transform:scale(.85)}.amount-value{font-size:var(--fs-2xl);font-weight:var(--fw-extrabold);min-width:80px;text-align:center;font-variant-numeric:tabular-nums;transition:transform .2s var(--ease-spring)}.amount-value.bump-up{animation:bumpUp .3s var(--ease-spring)}.amount-value.bump-down{animation:bumpDown .3s var(--ease-spring)}@keyframes bumpUp{0%{transform:translateY(0)}40%{transform:translateY(-6px) scale(1.05)}to{transform:translateY(0) scale(1)}}@keyframes bumpDown{0%{transform:translateY(0)}40%{transform:translateY(6px) scale(1.05)}to{transform:translateY(0) scale(1)}}.amount-unit{font-size:var(--fs-sm);color:var(--text-secondary)}.greeting{margin-bottom:var(--space-lg);animation:slideUpSpring .5s var(--ease-out) both}.greeting-text{font-size:var(--fs-lg);font-weight:var(--fw-bold)}.greeting-sub{font-size:var(--fs-sm);color:var(--text-secondary);margin-top:2px}.summary-row{display:flex;align-items:center;justify-content:space-between;padding:var(--space-md);background:var(--bg-card);border-radius:var(--radius-md);margin-bottom:var(--space-sm);border:1px solid rgba(255,255,255,.04);transition:transform .25s var(--ease-spring),background var(--transition-fast)}.summary-row:hover{transform:translate(4px);background:var(--bg-card-hover)}.summary-label{display:flex;align-items:center;gap:var(--space-sm);font-weight:var(--fw-medium)}.summary-value{font-weight:var(--fw-bold);font-variant-numeric:tabular-nums}#login-screen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;display:flex;align-items:center;justify-content:center;background:var(--bg-primary);overflow:hidden}#login-screen.hidden{display:none}#login-screen:before,#login-screen:after{content:"";position:absolute;border-radius:50%;filter:blur(80px);pointer-events:none}#login-screen:before{width:350px;height:350px;top:10%;left:15%;background:radial-gradient(circle,rgba(127,90,240,.2),transparent 70%);animation:loginOrb1 12s ease-in-out infinite}#login-screen:after{width:300px;height:300px;bottom:15%;right:10%;background:radial-gradient(circle,rgba(255,107,157,.15),transparent 70%);animation:loginOrb2 15s ease-in-out infinite}@keyframes loginOrb1{0%,to{transform:translate(0)}50%{transform:translate(40px,30px)}}@keyframes loginOrb2{0%,to{transform:translate(0)}50%{transform:translate(-35px,-25px)}}.login-container{width:90%;max-width:380px;text-align:center;position:relative;z-index:1}.login-logo{font-size:5rem;margin-bottom:var(--space-lg);filter:drop-shadow(0 0 25px rgba(127,90,240,.4));animation:loginLogoIn .8s var(--ease-spring) both,gentleBob 4s ease-in-out .8s infinite}@keyframes loginLogoIn{0%{opacity:0;transform:translateY(-30px) scale(.5) rotate(-10deg)}to{opacity:1;transform:translateY(0) scale(1) rotate(0)}}.login-title{font-size:var(--fs-2xl);font-weight:var(--fw-extrabold);background:linear-gradient(135deg,var(--accent-purple),var(--accent-pink));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:var(--space-xs);animation:slideUpSpring .6s var(--ease-out) .15s both}.login-subtitle{font-size:var(--fs-base);color:var(--text-secondary);margin-bottom:var(--space-xl);animation:slideUpSpring .6s var(--ease-out) .25s both}#login-form{text-align:left;animation:slideUpSpring .6s var(--ease-out) .35s both}#login-form .form-group{margin-bottom:var(--space-lg)}#login-form input{padding:16px;font-size:var(--fs-md);border-radius:var(--radius-md)}.login-note{font-size:var(--fs-sm);color:var(--text-muted);margin-top:var(--space-lg);animation:fadeIn .6s ease .6s both}.settings-email-row{display:flex;align-items:center;justify-content:space-between;padding:var(--space-sm) 0}.settings-email-label{font-size:var(--fs-sm);color:var(--text-muted)}.settings-email-value{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--accent-purple);word-break:break-all}.toast{position:fixed;bottom:calc(var(--nav-height) + 16px);left:50%;transform:translate(-50%) translateY(20px);background:var(--bg-secondary);color:var(--text-primary);padding:12px 24px;border-radius:var(--radius-lg);font-size:var(--fs-sm);font-weight:var(--fw-semibold);box-shadow:0 8px 30px #00000059,0 0 0 1px #ffffff0f;z-index:500;opacity:0;pointer-events:none;animation:toastIn .4s var(--ease-spring) forwards}.toast.toast-out{animation:toastOut .3s var(--ease-out) forwards}@keyframes toastIn{0%{opacity:0;transform:translate(-50%) translateY(20px) scale(.9)}to{opacity:1;transform:translate(-50%) translateY(0) scale(1)}}@keyframes toastOut{0%{opacity:1;transform:translate(-50%) translateY(0) scale(1)}to{opacity:0;transform:translate(-50%) translateY(-10px) scale(.95)}}
