:root{--bg-primary: rgb(13, 13, 26);--bg-elevated: rgb(20, 20, 38);--bg-glass: rgb(26, 26, 51);--text-primary: #ffffff;--text-secondary: rgba(255, 255, 255, .7);--text-tertiary: rgba(255, 255, 255, .5);--neon-blue-1: rgb(0, 128, 255);--neon-blue-2: rgb(0, 230, 255);--neon-pink-1: rgb(255, 51, 153);--neon-pink-2: rgb(230, 77, 230);--neon-green-1: rgb(0, 230, 102);--neon-green-2: rgb(102, 255, 51);--neon-purple-1: rgb(153, 51, 255);--neon-purple-2: rgb(204, 102, 255);--neon-orange-1: rgb(255, 102, 0);--neon-orange-2: rgb(255, 204, 0);--neon-cyan-1: rgb(0, 230, 230);--neon-cyan-2: rgb(0, 179, 204);--neon-red-1: rgb(255, 51, 51);--neon-red-2: rgb(255, 128, 0);--card-radius: 24px;--card-padding: 20px;--card-spacing: 16px;--card-blur: 20px;--card-glass-opacity: .15;--card-border-width: 1.5px;--glow-intensity: .8;--glow-primary-radius: 20px;--glow-secondary-radius: 40px;--glow-tertiary-radius: 60px;--spring-response: .4s;--spring-damping: .7;--glow-pulse-duration: 2s;--completion-duration: .5s;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--font-family: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 9999px;--ring-size: 56px;--ring-stroke-width: 6px;--container-max-width: 600px}[data-color="0080FF"]{--habit-color: rgb(0, 128, 255);--habit-glow: rgba(0, 128, 255, .6)}[data-color=FF3399]{--habit-color: rgb(255, 51, 153);--habit-glow: rgba(255, 51, 153, .6)}[data-color="00E666"]{--habit-color: rgb(0, 230, 102);--habit-glow: rgba(0, 230, 102, .6)}[data-color="9933FF"]{--habit-color: rgb(153, 51, 255);--habit-glow: rgba(153, 51, 255, .6)}[data-color=FF6600]{--habit-color: rgb(255, 102, 0);--habit-glow: rgba(255, 102, 0, .6)}[data-color="00E6E6"]{--habit-color: rgb(0, 230, 230);--habit-glow: rgba(0, 230, 230, .6)}[data-color=FF3333]{--habit-color: rgb(255, 51, 51);--habit-glow: rgba(255, 51, 51, .6)}[data-color=FF6347]{--habit-color: rgb(255, 99, 71);--habit-glow: rgba(255, 99, 71, .6)}[data-color="32CD32"]{--habit-color: rgb(50, 205, 50);--habit-glow: rgba(50, 205, 50, .6)}[data-color="9370DB"]{--habit-color: rgb(147, 112, 219);--habit-glow: rgba(147, 112, 219, .6)}[data-color="06b6d4"]{--habit-color: rgb(0, 191, 255);--habit-glow: rgba(0, 191, 255, .6)}[data-color=ef4444]{--habit-color: rgb(255, 51, 51);--habit-glow: rgba(255, 51, 51, .6)}[data-color="22c55e"]{--habit-color: rgb(0, 230, 102);--habit-glow: rgba(0, 230, 102, .6)}[data-color="8b5cf6"]{--habit-color: rgb(147, 112, 219);--habit-glow: rgba(147, 112, 219, .6)}[data-color=f59e0b]{--habit-color: rgb(255, 102, 0);--habit-glow: rgba(255, 102, 0, .6)}[data-color=FF4500]{--habit-color: rgb(255, 69, 0);--habit-glow: rgba(255, 69, 0, .6)}.neon-card{position:relative;border-radius:var(--card-radius);padding:var(--card-padding);overflow:hidden;transition:transform var(--spring-response) cubic-bezier(.4,0,.2,1);background:linear-gradient(135deg,rgba(var(--neon-r, 0),var(--neon-g, 128),var(--neon-b, 255),.35),rgba(var(--neon-r, 0),var(--neon-g, 128),var(--neon-b, 255),.15)),var(--bg-glass);backdrop-filter:blur(var(--card-blur));-webkit-backdrop-filter:blur(var(--card-blur));border:none}.neon-card:active{transform:scale(.96)}.neon-card:before{content:"";position:absolute;inset:0;border-radius:var(--card-radius);padding:1.5px;background:linear-gradient(135deg,rgba(var(--neon-r, 0),var(--neon-g, 128),var(--neon-b, 255),.9),rgba(var(--neon-r, 0),var(--neon-g, 128),var(--neon-b, 255),.5));-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:.7;pointer-events:none;transition:opacity .3s ease}.neon-card.completed:before{opacity:1}.neon-card{box-shadow:0 2px 8px #0000004d,0 4px 20px rgba(var(--neon-r, 0),var(--neon-g, 128),var(--neon-b, 255),.5),0 8px 40px rgba(var(--neon-r, 0),var(--neon-g, 128),var(--neon-b, 255),.3),0 12px 60px rgba(var(--neon-r, 0),var(--neon-g, 128),var(--neon-b, 255),.15);transition:transform var(--spring-response) cubic-bezier(.4,0,.2,1),box-shadow .3s ease}.neon-card.completed{box-shadow:0 2px 8px #0000004d,0 4px 20px rgba(var(--neon-r, 0),var(--neon-g, 128),var(--neon-b, 255),.7),0 8px 40px rgba(var(--neon-r, 0),var(--neon-g, 128),var(--neon-b, 255),.45),0 12px 60px rgba(var(--neon-r, 0),var(--neon-g, 128),var(--neon-b, 255),.25)}.glow-pulse{animation:glow-pulse var(--glow-pulse-duration) ease-in-out infinite}.neon-progress-ring{position:relative;width:var(--ring-size);height:var(--ring-size)}.neon-progress-ring svg{width:100%;height:100%;shape-rendering:geometricPrecision}.neon-progress-ring .ring-track{fill:none;stroke:#ffffff1f;stroke-linecap:round}.neon-progress-ring .ring-progress{fill:none;stroke-linecap:round;transition:stroke-dashoffset .35s ease}.neon-progress-ring .ring-value{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:16px;font-weight:700;color:var(--text-primary)}.neon-toggle-indicator{width:48px;height:48px;border-radius:50%;border:3px solid rgba(255,255,255,.3);display:flex;align-items:center;justify-content:center;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative}.neon-toggle-indicator.completed{background:var(--habit-color, var(--neon-blue-1));border-color:var(--habit-color, var(--neon-blue-1));box-shadow:0 0 15px rgba(var(--neon-r, 0),var(--neon-g, 128),var(--neon-b, 255),.8),0 0 30px rgba(var(--neon-r, 0),var(--neon-g, 128),var(--neon-b, 255),.5),inset 0 0 12px #ffffff4d}.neon-toggle-indicator .check-icon{color:#fff;opacity:0;transform:scale(.5);transition:all .3s cubic-bezier(.4,0,.2,1)}.neon-toggle-indicator.completed .check-icon{opacity:1;transform:scale(1)}.streak-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;background:linear-gradient(135deg,#ff66004d,#ff33334d);border-radius:var(--radius-full);font-size:12px;font-weight:600;color:var(--text-primary)}.streak-badge .flame-icon,.streak-badge.tier-1 .flame-icon{color:#f60;filter:drop-shadow(0 0 4px rgba(255,102,0,.8))}.streak-badge.tier-2 .flame-icon{color:#f33;filter:drop-shadow(0 0 6px rgba(255,51,51,.9))}.streak-badge.tier-3 .flame-icon{color:#f0f;filter:drop-shadow(0 0 8px rgba(255,0,255,1))}.neon-button{padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-lg);font-size:16px;font-weight:600;color:var(--text-primary);background:linear-gradient(135deg,var(--neon-blue-1),var(--neon-blue-2));border:none;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 20px #0080ff66}.neon-button:active{transform:scale(.98);box-shadow:0 2px 10px #0080ff4d}.neon-button.secondary{background:var(--bg-elevated);border:1px solid rgba(255,255,255,.2);box-shadow:none}.neon-button.danger{background:linear-gradient(135deg,var(--neon-red-1),var(--neon-red-2));box-shadow:0 4px 20px #f336}.neon-input{background:var(--bg-elevated);border:1px solid rgba(255,255,255,.15);border-radius:var(--radius-md);padding:var(--spacing-md);color:var(--text-primary);font-size:16px;width:100%;transition:border-color .2s,box-shadow .2s}.neon-input:focus{outline:none;border-color:var(--neon-blue-1);box-shadow:0 0 0 3px #0080ff33}.neon-input::placeholder{color:var(--text-tertiary)}.glow-burst{position:absolute;inset:-2px;border-radius:calc(var(--card-radius) + 2px);background:linear-gradient(135deg,var(--habit-color, var(--neon-blue-1)),color-mix(in srgb,var(--habit-color, var(--neon-blue-2)) 70%,white));opacity:0;pointer-events:none}.glow-burst.active{animation:glow-burst-effect .4s ease-out forwards}.neon-background{position:fixed;inset:0;background:var(--bg-primary);z-index:-1}.neon-background:before{content:"";position:absolute;top:0;left:0;right:0;height:40vh;background:radial-gradient(ellipse 80% 50% at 50% 0%,rgba(0,128,255,.15) 0%,rgba(153,51,255,.08) 40%,transparent 70%);pointer-events:none}.neon-card:focus-visible,.neon-button:focus-visible,.neon-input:focus-visible{outline:2px solid var(--text-primary);outline-offset:2px}@keyframes glow-pulse{0%,to{opacity:.6}50%{opacity:.9}}@keyframes completion-bounce{0%{transform:scale(1)}30%{transform:scale(1.08)}50%{transform:scale(.95)}70%{transform:scale(1.02)}to{transform:scale(1)}}@keyframes glow-burst-effect{0%{transform:scale(1);opacity:.8}to{transform:scale(1.15);opacity:0}}@keyframes flame-flicker{0%,to{filter:blur(0px) brightness(1);transform:scale(1) rotate(0)}25%{filter:blur(.5px) brightness(1.1);transform:scale(1.05) rotate(-2deg)}50%{filter:blur(0px) brightness(1.15);transform:scale(1.1) rotate(0)}75%{filter:blur(.5px) brightness(1.05);transform:scale(1.05) rotate(2deg)}}@keyframes spring-in{0%{transform:scale(.9);opacity:0}70%{transform:scale(1.02)}to{transform:scale(1);opacity:1}}@keyframes fade-in-up{0%{transform:translateY(10px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-4px)}20%,40%,60%,80%{transform:translate(4px)}}@keyframes checkmark-draw{0%{stroke-dashoffset:24}to{stroke-dashoffset:0}}@keyframes ring-progress-fill{0%{stroke-dashoffset:var(--ring-circumference, 157)}}@keyframes modal-slide-up{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes modal-fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-fade-out{0%{opacity:1}to{opacity:0}}@keyframes modal-slide-down{0%{transform:translateY(0);opacity:1}to{transform:translateY(100%);opacity:0}}@keyframes modal-scale-up{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}@keyframes modal-scale-down{0%{transform:scale(1);opacity:1}to{transform:scale(.9);opacity:0}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-completion{animation:completion-bounce .4s cubic-bezier(.4,0,.2,1)}.animate-glow-burst{animation:glow-burst-effect .4s ease-out forwards}.animate-flame{animation:flame-flicker 1.5s ease-in-out infinite}.animate-spring-in{animation:spring-in .4s cubic-bezier(.4,0,.2,1)}.animate-fade-in-up{animation:fade-in-up .3s ease-out}.animate-shake{animation:shake .5s ease-in-out}.animate-spin{animation:spin 1s linear infinite}.stagger-animation>*{opacity:0;animation:fade-in-up .3s ease-out forwards}.stagger-animation>*:nth-child(1){animation-delay:0ms}.stagger-animation>*:nth-child(2){animation-delay:50ms}.stagger-animation>*:nth-child(3){animation-delay:.1s}.stagger-animation>*:nth-child(4){animation-delay:.15s}.stagger-animation>*:nth-child(5){animation-delay:.2s}.stagger-animation>*:nth-child(6){animation-delay:.25s}.stagger-animation>*:nth-child(7){animation-delay:.3s}.stagger-animation>*:nth-child(8){animation-delay:.35s}.stagger-animation>*:nth-child(9){animation-delay:.4s}.stagger-animation>*:nth-child(10){animation-delay:.45s}.transition-all{transition:all var(--spring-response) cubic-bezier(.4,0,.2,1)}.transition-transform{transition:transform var(--spring-response) cubic-bezier(.4,0,.2,1)}.transition-opacity{transition:opacity .2s ease}.transition-colors{transition:background-color .2s ease,border-color .2s ease,color .2s ease}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background-color:var(--bg-primary);color:var(--text-primary);font-family:var(--font-family);min-height:100vh;line-height:1.5}button{background:none;border:none;cursor:pointer;font-family:inherit;color:inherit}a{color:inherit;text-decoration:none}.app-container{padding:var(--spacing-lg) var(--spacing-md);max-width:var(--container-max-width);margin:0 auto;min-height:100vh;position:relative}.header{display:flex;flex-direction:column;gap:var(--spacing-xs);margin-bottom:var(--spacing-lg)}.header-date{font-size:14px;font-weight:500;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.header-title{font-size:32px;font-weight:700;color:#fff}.header-row{display:flex;justify-content:space-between;align-items:center}.add-habit-btn{width:40px;height:40px;border-radius:var(--radius-full);background:var(--bg-elevated);border:1px solid rgba(255,255,255,.15);display:flex;align-items:center;justify-content:center;color:var(--text-primary);transition:all .2s ease}.add-habit-btn:active{transform:scale(.95);background:var(--bg-glass)}.habit-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.habit-card{display:flex;justify-content:space-between;align-items:center;-webkit-user-select:none;user-select:none;cursor:pointer}.habit-card-content{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.habit-title-row{display:flex;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap}.habit-title{font-size:18px;font-weight:700;color:var(--text-primary)}.habit-subtitle{font-size:14px;color:var(--text-secondary);font-weight:400}.habit-indicator{flex-shrink:0;margin-left:var(--spacing-md)}.trend-page{padding-bottom:var(--spacing-xl)}.trend-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.back-button{display:flex;align-items:center;gap:var(--spacing-xs);color:var(--neon-blue-1);font-size:16px;font-weight:500;padding:var(--spacing-sm);margin-left:calc(-1 * var(--spacing-sm));border-radius:var(--radius-md);transition:background-color .2s}.back-button:active{background-color:#0080ff1a}.trend-page h2{font-size:24px;font-weight:700;margin-bottom:var(--spacing-lg);background:linear-gradient(135deg,var(--habit-color, var(--neon-blue-1)),var(--text-primary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.stat-card{background:var(--bg-elevated);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-lg);padding:var(--spacing-md);text-align:center;display:flex;flex-direction:column;gap:var(--spacing-sm);align-items:center;justify-content:center}.stat-label{font-size:12px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.stat-value{font-size:32px;font-weight:700;display:flex;align-items:center;gap:var(--spacing-sm)}.section-title{font-size:18px;font-weight:600;margin-bottom:var(--spacing-md);color:var(--text-primary)}.chart-container{background:var(--bg-elevated);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-lg);padding:var(--spacing-md);margin-bottom:var(--spacing-lg)}.history-list{display:flex;flex-direction:column}.history-item{display:flex;justify-content:space-between;padding:var(--spacing-md) 0;border-bottom:1px solid rgba(255,255,255,.1);font-size:16px}.history-item:last-child{border-bottom:none}.history-date{color:var(--text-secondary)}.history-val{font-weight:600;color:var(--text-primary)}.modal-overlay{position:fixed;inset:0;background-color:#000000b3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;display:flex;align-items:flex-start;justify-content:center;padding-top:40px;animation:modal-fade-in .2s ease-out}.modal-content{background-color:var(--bg-elevated);width:100%;max-width:600px;min-height:50vh;max-height:94vh;border-radius:var(--radius-xl) var(--radius-xl) 0 0;padding:var(--spacing-lg);display:flex;flex-direction:column;position:relative;border:1px solid rgba(255,255,255,.1);animation:modal-slide-up .3s cubic-bezier(.4,0,.2,1);overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.modal-action-btn{font-size:16px;color:var(--neon-blue-1);font-weight:500;padding:var(--spacing-sm)}.modal-action-btn:active{opacity:.7}.modal-action-btn.danger{color:var(--neon-red-1)}.modal-title{font-size:28px;font-weight:700;margin-bottom:var(--spacing-lg);color:var(--text-primary)}.modal-body{display:flex;flex-direction:column;gap:var(--spacing-lg);flex:1}.input-group{margin-bottom:var(--spacing-md)}.input-label{font-size:12px;text-transform:uppercase;color:var(--text-secondary);margin-bottom:var(--spacing-sm);display:block;letter-spacing:.05em}.input-row{background-color:var(--bg-glass);border-radius:var(--radius-md);padding:var(--spacing-md);display:flex;justify-content:space-between;align-items:center;border:1px solid rgba(255,255,255,.1)}.input-text{font-size:16px;color:var(--text-primary)}.text-input{background:transparent;border:none;font-size:16px;color:var(--text-primary);width:100%;outline:none}.text-input::placeholder{color:var(--text-tertiary)}.stepper{display:flex;background-color:var(--bg-elevated);border-radius:var(--radius-sm);padding:2px;border:1px solid rgba(255,255,255,.1)}.stepper-btn{width:40px;height:32px;display:flex;align-items:center;justify-content:center;font-size:18px;color:var(--neon-blue-1);border-right:1px solid rgba(255,255,255,.1)}.stepper-btn:last-child{border-right:none}.stepper-btn:active{background-color:#0080ff33}.stepper-value{min-width:40px;text-align:center;font-size:16px;font-weight:600;display:flex;align-items:center;justify-content:center}.danger-btn{background-color:var(--bg-glass);color:var(--neon-red-1);width:100%;padding:var(--spacing-md);border-radius:var(--radius-md);font-size:16px;font-weight:500;margin-top:auto;border:1px solid rgba(255,51,51,.3)}.danger-btn:active{background-color:#f333}.ctx-menu-backdrop{position:fixed;inset:0;background:#00000080;z-index:998;animation:modal-fade-in .15s ease-out}.ctx-menu{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);background:var(--bg-elevated);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:var(--radius-lg);padding:0;min-width:250px;z-index:999;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 10px 40px #00000080,0 0 0 1px #ffffff1a;animation:ctx-menu-spring-in .2s cubic-bezier(.4,0,.2,1)}@keyframes ctx-menu-spring-in{0%{transform:translate(-50%,-50%) scale(.9);opacity:0}70%{transform:translate(-50%,-50%) scale(1.02);opacity:1}to{transform:translate(-50%,-50%) scale(1);opacity:1}}.ctx-menu-item{padding:var(--spacing-md);display:flex;justify-content:space-between;align-items:center;font-size:16px;color:var(--text-primary);border-bottom:1px solid rgba(255,255,255,.1);background:none;width:100%;text-align:left}.ctx-menu-item:last-child{border-bottom:none}.ctx-menu-item:active{background-color:#ffffff1a}.ctx-menu-item.danger{color:var(--neon-red-1)}.color-picker-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:var(--spacing-sm)}.color-picker-item{aspect-ratio:1;border-radius:var(--radius-full);cursor:pointer;transition:transform .2s,box-shadow .2s;border:2px solid transparent}.color-picker-item:active{transform:scale(.95)}.color-picker-item.selected{border-color:#fff;box-shadow:0 0 12px var(--item-color)}.type-toggle-group{display:flex;gap:var(--spacing-sm)}.type-toggle-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-md);background:var(--bg-glass);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md);color:var(--text-secondary);font-size:14px;font-weight:500;transition:all .2s ease}.type-toggle-btn:active{transform:scale(.98)}.type-toggle-btn.active{background:#0080ff33;border-color:var(--neon-blue-1);color:var(--neon-blue-1);box-shadow:0 0 12px #0080ff4d}.delete-confirm-modal{background:var(--bg-elevated);border-radius:var(--radius-xl);padding:var(--spacing-xl);max-width:320px;width:90%;text-align:center;border:1px solid rgba(255,51,51,.3);box-shadow:0 10px 40px #00000080,0 0 20px #f333;animation:spring-in .2s cubic-bezier(.4,0,.2,1)}.delete-confirm-icon{width:64px;height:64px;border-radius:var(--radius-full);background:#ff333326;color:var(--neon-red-1);display:flex;align-items:center;justify-content:center;margin:0 auto var(--spacing-md)}.delete-confirm-title{font-size:20px;font-weight:700;color:var(--text-primary);margin-bottom:var(--spacing-sm)}.delete-confirm-message{font-size:14px;color:var(--text-secondary);line-height:1.5;margin-bottom:var(--spacing-lg)}.delete-confirm-message strong{color:var(--text-primary)}.delete-confirm-actions{display:flex;gap:var(--spacing-sm)}.delete-confirm-btn{flex:1;padding:var(--spacing-md);border-radius:var(--radius-md);font-size:16px;font-weight:600;transition:all .2s ease}.delete-confirm-btn.cancel{background:var(--bg-glass);border:1px solid rgba(255,255,255,.15);color:var(--text-primary)}.delete-confirm-btn.cancel:active{background:#ffffff1a}.delete-confirm-btn.delete{background:#f333;border:1px solid rgba(255,51,51,.5);color:var(--neon-red-1)}.delete-confirm-btn.delete:active{background:#ff33334d}.workout-page{min-height:100vh;padding-bottom:100px}.workout-header{margin-bottom:var(--spacing-md)}.workout-day-tabs{display:flex;gap:var(--spacing-xs);margin-bottom:var(--spacing-lg);overflow-x:auto;padding-bottom:var(--spacing-xs)}.workout-day-tab{flex:1;min-width:80px;padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-glass);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md);color:var(--text-secondary);font-size:14px;font-weight:500;display:flex;flex-direction:column;align-items:center;gap:4px;transition:all .2s ease;position:relative}.workout-day-tab.selected{background:#ff450033;border-color:var(--neon-orange-1, #FF4500);color:var(--neon-orange-1, #FF4500);box-shadow:0 0 12px #ff45004d}.tab-today-dot{width:6px;height:6px;background:var(--neon-orange-1, #FF4500);border-radius:var(--radius-full)}.workout-title-section{margin-bottom:var(--spacing-lg)}.workout-title{font-size:28px;font-weight:700;color:var(--text-primary);margin-bottom:var(--spacing-xs)}.workout-subtitle{font-size:14px;color:var(--text-secondary)}.warmup-section,.exercises-section{margin-bottom:var(--spacing-lg)}.section-header{font-size:14px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--spacing-sm)}.warmup-card{padding:var(--spacing-md)}.warmup-list{list-style:none;display:flex;flex-direction:column;gap:var(--spacing-sm)}.warmup-item{font-size:14px;color:var(--text-primary);padding-left:var(--spacing-md);position:relative}.warmup-item:before{content:"•";position:absolute;left:0;color:var(--neon-orange-1, #FF4500)}.exercise-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.exercise-card{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);width:100%;text-align:left}.exercise-index{width:28px;height:28px;border-radius:var(--radius-full);background:var(--neon-orange-1, #FF4500);color:#fff;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.exercise-thumbnail{width:50px;height:50px;border-radius:var(--radius-md);background:#ff450026;color:var(--neon-orange-1, #FF4500);display:flex;align-items:center;justify-content:center;flex-shrink:0}.exercise-info{flex:1;min-width:0}.exercise-name{font-size:15px;font-weight:600;color:var(--text-primary);margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.exercise-sets-reps{font-size:13px;color:var(--neon-orange-1, #FF4500);font-weight:500}.exercise-chevron{color:var(--text-tertiary);flex-shrink:0}.workout-complete-section{position:fixed;bottom:0;left:0;right:0;padding:var(--spacing-md);background:linear-gradient(transparent,var(--bg-primary) 30%)}.complete-workout-btn{width:100%;max-width:var(--container-max-width);margin:0 auto;display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);background:var(--neon-orange-1, #FF4500);border-radius:var(--radius-lg);color:#fff;font-size:16px;font-weight:600;transition:all .2s ease;box-shadow:0 4px 20px #ff450066}.complete-workout-btn:active{transform:scale(.98)}.complete-workout-btn.completed{background:var(--neon-green-1, #00E666);box-shadow:0 4px 20px #00e66666}.rest-day-view{display:flex;flex-direction:column;gap:var(--spacing-lg)}.rest-day-card{padding:var(--spacing-xl);text-align:center}.rest-day-icon{width:80px;height:80px;margin:0 auto var(--spacing-md);background:#00e66626;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;color:var(--neon-green-1, #00E666)}.rest-day-title{font-size:24px;font-weight:700;color:var(--text-primary);margin-bottom:var(--spacing-sm)}.rest-day-message{font-size:14px;color:var(--text-secondary);line-height:1.5}.next-workout-preview{margin-top:var(--spacing-md)}.next-workout-header{display:flex;align-items:center;gap:var(--spacing-sm);font-size:14px;color:var(--text-secondary);margin-bottom:var(--spacing-sm)}.next-workout-info{padding:var(--spacing-md)}.next-workout-name{font-size:18px;font-weight:600;color:var(--text-primary);margin-bottom:var(--spacing-xs)}.next-workout-when{font-size:14px;color:var(--neon-orange-1, #FF4500)}.rest-day-tips{padding:var(--spacing-md)}.tips-title{font-size:14px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--spacing-sm)}.tips-list{list-style:none;display:flex;flex-direction:column;gap:var(--spacing-sm)}.tips-list li{font-size:14px;color:var(--text-primary);padding-left:var(--spacing-md);position:relative}.tips-list li:before{content:"✓";position:absolute;left:0;color:var(--neon-green-1, #00E666)}.exercise-detail-page{min-height:100vh}.exercise-header{margin-bottom:var(--spacing-md)}.exercise-image-container{margin-bottom:var(--spacing-lg)}.image-carousel{position:relative;width:100%;border-radius:var(--radius-lg);overflow:hidden;background:var(--bg-elevated);outline:none}.image-carousel:focus-visible{box-shadow:0 0 0 2px var(--neon-blue-1)}.carousel-viewport{position:relative;width:100%;height:240px;overflow:hidden;touch-action:pan-y pinch-zoom}.carousel-slide{position:absolute;top:0;left:0;width:100%;height:100%;transition:transform .3s ease-out;display:flex;align-items:center;justify-content:center;background:var(--bg-primary)}.carousel-slide img{width:100%;height:100%;object-fit:cover;-webkit-user-select:none;user-select:none}.carousel-slide.active{z-index:1}.carousel-error{display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:var(--text-tertiary);font-size:14px}.carousel-nav{position:absolute;top:50%;transform:translateY(-50%);width:36px;height:36px;border-radius:var(--radius-full);background:#00000080;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;display:flex;align-items:center;justify-content:center;z-index:2;opacity:0;transition:opacity .2s,background .2s}.image-carousel:hover .carousel-nav,.image-carousel:focus-within .carousel-nav{opacity:1}.carousel-nav:hover{background:#000000b3}.carousel-nav:active{transform:translateY(-50%) scale(.95)}.carousel-nav-prev{left:var(--spacing-sm)}.carousel-nav-next{right:var(--spacing-sm)}.carousel-indicators{position:absolute;bottom:var(--spacing-sm);left:50%;transform:translate(-50%);display:flex;gap:var(--spacing-xs);z-index:2}.carousel-dot{width:8px;height:8px;border-radius:var(--radius-full);background:#fff6;transition:background .2s,transform .2s}.carousel-dot.active{background:#fff;transform:scale(1.2);box-shadow:0 0 8px #ffffff80}.carousel-dot:hover{background:#ffffffb3}.image-carousel-placeholder{width:100%;height:200px;background:var(--bg-elevated);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;color:var(--text-tertiary);border:1px solid rgba(255,255,255,.1)}.placeholder-icon{color:var(--neon-orange-1, #FF4500);opacity:.5}.exercise-detail-content{display:flex;flex-direction:column;gap:var(--spacing-lg)}.exercise-detail-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-md)}.exercise-detail-title{font-size:24px;font-weight:700;color:var(--text-primary);flex:1}.exercise-detail-badge{background:var(--neon-orange-1, #FF4500);color:#fff;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-md);font-size:14px;font-weight:600;white-space:nowrap}.detail-section{padding-bottom:var(--spacing-md);border-bottom:1px solid rgba(255,255,255,.1)}.detail-section:last-child{border-bottom:none}.detail-section-title{font-size:14px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--spacing-sm);display:flex;align-items:center;gap:var(--spacing-xs)}.muscle-tags,.equipment-tags{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.muscle-tag,.equipment-tag{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:13px;font-weight:500}.muscle-tag.primary{background:#ff450033;color:var(--neon-orange-1, #FF4500)}.muscle-tag.secondary{background:var(--bg-glass);color:var(--text-secondary)}.equipment-tag{background:#0080ff26;color:var(--neon-blue-1)}.instructions-list{list-style:none;display:flex;flex-direction:column;gap:var(--spacing-md)}.instruction-item{display:flex;gap:var(--spacing-md);align-items:flex-start}.instruction-number{width:24px;height:24px;border-radius:var(--radius-full);background:var(--bg-elevated);color:var(--neon-orange-1, #FF4500);font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.instruction-text{font-size:14px;color:var(--text-primary);line-height:1.5}.safety-section{background:#ffc1071a;border:1px solid rgba(255,193,7,.3);border-radius:var(--radius-lg);padding:var(--spacing-md);margin-top:var(--spacing-md)}.safety-section .detail-section-title{color:#ffc107}.safety-list{list-style:none;display:flex;flex-direction:column;gap:var(--spacing-sm)}.safety-item{font-size:14px;color:var(--text-primary);padding-left:var(--spacing-md);position:relative}.safety-item:before{content:"⚠";position:absolute;left:0;font-size:12px}@media(min-width:768px){.habit-list{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-lg)}.stats-grid{grid-template-columns:repeat(4,1fr)}}@media(min-width:1024px){.app-container{max-width:800px}.modal-content{max-height:80vh;min-height:auto;border-radius:var(--radius-xl);margin-top:10vh}.modal-overlay{padding-top:0;align-items:center}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.text-center{text-align:center}.flex-center{display:flex;align-items:center;justify-content:center}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}.gap-lg{gap:var(--spacing-lg)}.trend-title{font-size:28px;font-weight:700;margin-bottom:var(--spacing-lg)}.neon-stat-card{position:relative;overflow:hidden;transition:transform .2s ease,box-shadow .3s ease}.neon-stat-card:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.05) 0%,transparent 50%,rgba(255,255,255,.02) 100%);pointer-events:none}.neon-stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 20px #0000004d,0 0 20px var(--stat-glow-color, rgba(0, 128, 255, .2))}.stat-number{background:linear-gradient(135deg,var(--text-primary),var(--text-secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.stat-icon{transition:transform .3s ease}.neon-stat-card:hover .stat-icon{transform:scale(1.1)}.neon-chart-container{position:relative;overflow:hidden}.neon-chart-container:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(ellipse at center,rgba(0,128,255,.05) 0%,transparent 70%);pointer-events:none;opacity:0;transition:opacity .3s ease}.neon-chart-container:hover:before{opacity:1}.weekly-chart{width:100%}*:focus-visible{outline:2px solid var(--neon-blue-1);outline-offset:2px}*:focus:not(:focus-visible){outline:none}button:focus-visible,.back-button:focus-visible,.add-habit-btn:focus-visible{outline:2px solid var(--neon-blue-1);outline-offset:2px;box-shadow:0 0 12px #0080ff66}.habit-card:focus-visible,.neon-card:focus-visible{outline:2px solid var(--habit-color, var(--neon-blue-1));outline-offset:2px;box-shadow:0 0 16px var(--habit-glow, rgba(0, 128, 255, .4))}.stat-card:focus-visible{outline:2px solid var(--stat-glow-color, var(--neon-blue-1));outline-offset:2px}.text-input:focus,.text-input:focus-visible{outline:none;box-shadow:none}.input-row:focus-within{border-color:#ffffff40}.modal-action-btn:focus-visible{outline:2px solid var(--neon-blue-1);outline-offset:2px;border-radius:var(--radius-sm)}.skip-link{position:absolute;top:-100px;left:50%;transform:translate(-50%);padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-elevated);color:var(--neon-blue-1);border-radius:var(--radius-md);z-index:9999;transition:top .2s ease}.skip-link:focus{top:var(--spacing-md)}@media(max-width:374px){.stats-grid{grid-template-columns:1fr}.stat-value{font-size:24px}.trend-title{font-size:22px}}@media(min-width:768px){.trend-page{padding:var(--spacing-xl)}.trend-title{font-size:32px}.chart-container{padding:var(--spacing-lg)}.history-list{display:grid;grid-template-columns:repeat(2,1fr);gap:0 var(--spacing-lg)}.history-item{border-bottom:1px solid rgba(255,255,255,.1)}}@media(min-width:1024px){.trend-page{max-width:900px;margin:0 auto;padding:var(--spacing-xl) var(--spacing-lg)}.chart-container{min-height:280px}.history-list{grid-template-columns:repeat(3,1fr)}.stat-card{cursor:default}}@media(min-width:1280px){.trend-page{max-width:1000px}.stats-grid{gap:var(--spacing-lg)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.animate-flame,.animate-glow-pulse,.animate-completion-bounce{animation:none!important}}@media(prefers-contrast:high){.stat-card,.chart-container,.neon-card{border-width:2px;border-color:var(--text-primary)}.stat-label{color:var(--text-primary)}}.swipeable-habit-container{position:relative}.swipeable-card-wrapper{position:relative;z-index:1;will-change:transform}.swipeable-card-wrapper.animate{transition:transform .3s cubic-bezier(.4,0,.2,1)}.swipe-actions{position:absolute;top:0;right:0;bottom:0;display:flex;z-index:0;border-radius:var(--radius-lg);overflow:hidden;opacity:0;pointer-events:none;transition:opacity .15s ease-out}.swipeable-habit-container.swiping .swipe-actions,.swipeable-habit-container.swiped-open .swipe-actions{opacity:1;pointer-events:auto}.swipe-action-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;width:70px;height:100%;border:none;cursor:pointer;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.03em;transition:opacity .2s,transform .2s}.swipe-action-btn:active{opacity:.8;transform:scale(.95)}.swipe-action-btn.edit{background:var(--neon-blue-1, #0080FF);color:#fff}.swipe-action-btn.delete{background:var(--neon-red-1, #FF3333);color:#fff}.swipe-backdrop{position:fixed;inset:0;z-index:0;background:transparent}.swipeable-habit-container{user-select:none;-webkit-user-select:none}@keyframes swipe-hint{0%,to{transform:translate(0)}50%{transform:translate(-30px)}}.swipe-hint{animation:swipe-hint 1.5s ease-in-out 2}@media(min-width:768px){.swipe-action-btn{width:80px;font-size:12px}}
