:root{--color-bg: #0a0a0a;--color-surface: #141414;--color-text-primary: #ffffff;--color-text-secondary: #8a8a8a;--color-accent: #3b82f6;--color-border: #262626;--color-hover: #1f1f1f;--color-accent-rgb: 59, 130, 246;--color-accent-faded: rgba(var(--color-accent-rgb), .12)}[data-theme=ocean]{--color-bg: #0a1628;--color-surface: #132337;--color-text-primary: #e0f2fe;--color-text-secondary: #7dd3fc;--color-accent: #06b6d4;--color-border: #1e3a5f;--color-hover: #1a2e47;--color-accent-rgb: 6, 182, 212;--color-accent-faded: rgba(var(--color-accent-rgb), .12)}[data-theme=forest]{--color-bg: #0f1a0f;--color-surface: #1a2e1a;--color-text-primary: #e7f5e7;--color-text-secondary: #86efac;--color-accent: #22c55e;--color-border: #2d4a2d;--color-hover: #243b24;--color-accent-rgb: 34, 197, 94;--color-accent-faded: rgba(var(--color-accent-rgb), .12)}[data-theme=sunset]{--color-bg: #1a0f0a;--color-surface: #2e1a13;--color-text-primary: #fff1e6;--color-text-secondary: #fdba74;--color-accent: #f97316;--color-border: #4a2d1e;--color-hover: #3b2418;--color-accent-rgb: 249, 115, 22;--color-accent-faded: rgba(var(--color-accent-rgb), .12)}[data-theme=purple]{--color-bg: #14081f;--color-surface: #1f0f2e;--color-text-primary: #f3e8ff;--color-text-secondary: #c084fc;--color-accent: #a855f7;--color-border: #3d2152;--color-hover: #2e1a3d;--color-accent-rgb: 168, 85, 247;--color-accent-faded: rgba(var(--color-accent-rgb), .12)}[data-theme=rose]{--color-bg: #1f0a14;--color-surface: #2e1320;--color-text-primary: #ffe4f0;--color-text-secondary: #fda4af;--color-accent: #f43f5e;--color-border: #4a1e2e;--color-hover: #3b1824;--color-accent-rgb: 244, 63, 94;--color-accent-faded: rgba(var(--color-accent-rgb), .12)}*{margin:0;padding:0;box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Inter,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--color-bg);color:var(--color-text-primary)}.timer-display{font-family:SF Mono,Monaco,Cascadia Code,Roboto Mono,Consolas,monospace;font-size:8rem;font-weight:300;letter-spacing:-.03em;color:var(--color-text-primary);text-align:center;line-height:1;-webkit-user-select:none;user-select:none}@media (max-width: 768px){.timer-display{font-size:5rem}}@media (max-width: 480px){.timer-display{font-size:3.5rem}}.sidebar{background-color:var(--color-surface);border-right:1px solid var(--color-border);display:flex;flex-direction:column;align-items:center;padding:2rem 0;width:80px;position:fixed;height:100vh;left:0;top:0;z-index:100}.sidebar-logo{font-size:1.5rem;font-weight:700;margin-bottom:3rem;color:var(--color-text-primary)}.sidebar-nav{display:flex;flex-direction:column;gap:1rem;width:100%;align-items:center}.sidebar-nav-item{width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:12px;background:transparent;border:none;cursor:pointer;transition:all .2s ease;color:var(--color-text-secondary)}.sidebar-nav-item:hover{background-color:var(--color-hover);color:var(--color-text-primary)}.sidebar-nav-item.active{background-color:var(--color-accent);color:#fff}.sidebar-nav-item:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,label:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.hover-lift{transition:transform .2s ease}.hover-lift:hover{transform:translateY(-4px)}.upload-label:hover{border-color:var(--color-accent);background-color:var(--color-bg)}.main-content{background-color:var(--color-bg);min-height:100vh;margin-left:80px;position:relative}.page-transition-enter{opacity:0;transform:translateY(20px)}.page-transition-enter-active{opacity:1;transform:translateY(0);transition:opacity .3s ease,transform .3s ease}.page-transition-exit{opacity:1;transform:translateY(0)}.page-transition-exit-active{opacity:0;transform:translateY(-20px);transition:opacity .3s ease,transform .3s ease}.page-content{animation:fadeInUp .4s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.timer-page,.timer-page .timer-overlay,.timer-page .timer-container{animation:fadeInCenter .35s ease-out}@keyframes fadeInCenter{0%{opacity:0}to{opacity:1}}.status-controls{position:fixed;top:2rem;right:2rem;display:flex;gap:.5rem;z-index:50}.status-button{width:48px;height:48px;border-radius:12px;background-color:var(--color-surface);border:1px solid var(--color-border);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;color:var(--color-text-secondary)}.status-button:hover{background-color:var(--color-hover);border-color:var(--color-accent);color:var(--color-text-primary)}.status-button.active{background-color:var(--color-accent);border-color:var(--color-accent);color:#fff}.session-controls{display:flex;gap:1.5rem;justify-content:center;margin-top:3rem}.session-button-icon{width:72px;height:72px;border-radius:50%;border:none;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;position:relative;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);padding:0}.session-button-icon svg{position:relative;z-index:1;margin-left:2px}.session-button-icon:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;padding:1px;background:linear-gradient(135deg,#ffffff1a,#ffffff0d);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;opacity:.6}.session-button-icon.session-button-primary{background:linear-gradient(135deg,rgba(var(--color-accent-rgb),.3),rgba(var(--color-accent-rgb),.15));color:var(--color-accent);box-shadow:0 8px 32px rgba(var(--color-accent-rgb),.3)}.session-button-icon.session-button-primary:hover{background:linear-gradient(135deg,rgba(var(--color-accent-rgb),.4),rgba(var(--color-accent-rgb),.25));transform:translateY(-4px) scale(1.05);box-shadow:0 12px 48px rgba(var(--color-accent-rgb),.45)}.session-button-icon.session-button-primary:active{transform:translateY(-2px) scale(1.02)}.session-button-icon.session-button-secondary{background:linear-gradient(135deg,rgba(var(--color-accent-rgb),.12),rgba(var(--color-accent-rgb),.06));color:var(--color-accent);border:1px solid rgba(var(--color-accent-rgb),.25);box-shadow:0 6px 20px rgba(var(--color-accent-rgb),.18)}.session-button-icon.session-button-secondary:hover{background:linear-gradient(135deg,rgba(var(--color-accent-rgb),.18),rgba(var(--color-accent-rgb),.1));border-color:var(--color-accent);color:var(--color-accent);transform:translateY(-4px) scale(1.05);box-shadow:0 10px 32px rgba(var(--color-accent-rgb),.28)}.session-button-icon.session-button-secondary:active{transform:translateY(-2px) scale(1.02)}.timer-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:80vh;padding:2rem;animation:timerFade .2s ease-out}.timer-label{font-size:.875rem;font-weight:500;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.1em;margin-bottom:2rem}.content-centered{max-width:800px;margin:0 auto;padding:2rem}.timer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:2rem;animation:overlayFade .22s ease-out}@keyframes overlayFade{0%{opacity:0;transform:scale(.995)}to{opacity:1;transform:scale(1)}}@keyframes timerFade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.mode-toggle-button{font:inherit;padding:.45rem .9rem;border-radius:10px;border:1px solid var(--color-border);background-color:var(--color-surface);color:var(--color-text-primary);cursor:pointer;transition:all .2s ease}.mode-toggle-button:hover{background-color:var(--color-hover);border-color:var(--color-accent);color:var(--color-text-primary)}.mode-toggle-button.active{background-color:var(--color-accent);color:#fff;border-color:var(--color-accent);box-shadow:0 8px 24px var(--color-accent-faded)}.mode-toggle-icon{width:48px;height:48px;border-radius:12px}.mode-toggle-icon svg{margin-left:0!important}.Polaris-Button{background:transparent!important;border:none!important;box-shadow:none!important}h1,h2,h3,h4,h5,h6{color:var(--color-text-primary);font-weight:600}p{color:var(--color-text-secondary)}@media (max-width: 768px){.sidebar{width:64px}.main-content{margin-left:64px}.status-controls{top:1rem;right:1rem}.session-button{min-width:120px;height:48px}}.chart-container{grid-column:span 2;padding:2rem;background-color:var(--color-surface);border-radius:20px;border:1px solid var(--color-border)}.chart-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.chart-title{font-size:1.25rem;margin:0;margin-bottom:.25rem;color:var(--color-accent)}.chart-subtitle{font-size:.875rem;color:var(--color-text-secondary);margin:0}.growth-badge{padding:.5rem 1rem;border-radius:12px;font-size:.875rem;font-weight:600}.growth-badge.positive{background-color:#10b9811a;color:#10b981}.growth-badge.negative{background-color:#ef44441a;color:#ef4444}.stat-card{padding:1.5rem;background-color:var(--color-surface);border-radius:16px;border:1px solid var(--color-border);transition:transform .2s,border-color .2s}.stat-card:hover{transform:translateY(-4px)}.stat-card-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}.stat-card-icon{font-size:1.25rem}.stat-card-label{font-size:.75rem;color:var(--color-text-secondary);text-transform:uppercase;font-weight:600}.stat-card-value{font-size:2rem;font-weight:700;color:var(--color-text-primary);margin-bottom:.25rem}.stat-card-subtext{font-size:.75rem;color:var(--color-text-secondary)}.milestone{padding:1rem;border-radius:12px;border:1px solid var(--color-border);transition:all .2s}.milestone.achieved{background-color:#10b9811a;border-color:#10b9814d}.milestone:not(.achieved){background-color:#ffffff05}.milestone-header{display:flex;justify-content:space-between;align-items:start;margin-bottom:.5rem}.milestone-title{font-size:.875rem;font-weight:600;margin-bottom:.25rem}.milestone.achieved .milestone-title{color:#10b981}.milestone-description{font-size:.75rem;color:var(--color-text-secondary)}.milestone-trophy{font-size:1.5rem}.progress-bar{width:100%;height:4px;background-color:#ffffff0d;border-radius:2px;overflow:hidden;margin-top:.5rem}.progress-fill{height:100%;background-color:var(--color-accent);border-radius:2px;transition:width .5s ease}@media (min-width: 1100px){.only-desktop{display:block}.hide-desktop{display:none!important}}@media (max-width: 1099px){.only-desktop{display:none!important}.hide-desktop{display:block}}
