:root{--color-primary:#0080ff;--color-secondary:#ff006e;--color-tertiary:#0ff;--color-background:#121123;--color-deep-black:#1a1a2e;--color-surface:#24203f;--color-surface-raised:#2d2750;--color-purple:#5d34d0;--color-silver:silver;--color-text:#f3eaf7;--color-muted:#9691ad;--color-danger:#ff4d83;--color-success:#50e3a4;--spacing-4:4px;--spacing-8:8px;--spacing-12:12px;--spacing-16:16px;--spacing-20:20px;--spacing-24:24px;--spacing-32:32px;--spacing-40:40px;--radius-sm:4px;--radius-base:8px;--border-subtle:#c0c0c033;--border-blue:#0080ff8c;--shadow-card:0 2px 12px #0000003d;--shadow-neon:0 0 20px #0080ff29;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:Cascadia Code,SFMono-Regular,Consolas,Liberation Mono,monospace}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{background:var(--color-background);overscroll-behavior-y:contain;min-width:320px}body{background:radial-gradient(circle at 85% -10%, #5d34d052, transparent 34rem), linear-gradient(180deg, var(--color-deep-black), var(--color-background));min-width:320px;min-height:100dvh;color:var(--color-text);overscroll-behavior-y:contain;margin:0;font-family:inherit;font-size:16px;font-weight:400;line-height:1.6;overflow-x:hidden}body:before{z-index:200;pointer-events:none;content:"";opacity:.46;background:repeating-linear-gradient(#0000 0 3px,#0000001c 4px);position:fixed;inset:0}button,input{font:inherit}button{touch-action:manipulation}button:focus-visible,input:focus-visible,[role=button]:focus-visible{outline:2px solid var(--color-tertiary);outline-offset:2px}.app-shell{min-height:100dvh;position:relative}.app-shell:after{z-index:-1;content:"";border:1px solid #00ffff1f;border-radius:50%;width:360px;height:360px;position:fixed;bottom:-80px;right:-120px;box-shadow:0 0 0 48px #0080ff06,0 0 0 96px #ff006e05}.hero{gap:var(--spacing-24);width:min(100%,1280px);min-height:286px;padding:calc(var(--spacing-24) + env(safe-area-inset-top)) max(var(--spacing-24), env(safe-area-inset-right)) var(--spacing-32) max(var(--spacing-24), env(safe-area-inset-left));border-bottom:1px solid var(--border-blue);background:linear-gradient(135deg,#0080ff1a,#0000 42%),linear-gradient(315deg,#ff006e1a,#0000 46%),#1a1a2ed6;grid-template-columns:minmax(0,1fr) auto;margin:0 auto;display:grid;position:relative;overflow:hidden}.hero:after{content:"";border:1px solid #0ff3;border-radius:50%;width:320px;height:220px;position:absolute;bottom:-114px;right:-12%;transform:rotate(-12deg);box-shadow:0 0 36px #0080ff21}.hero-grid{transform-origin:top;background-image:linear-gradient(#00ffff1f 1px,#0000 1px),linear-gradient(90deg,#00ffff1f 1px,#0000 1px);background-size:28px 28px;position:absolute;inset:48% -20% -80%;transform:perspective(320px)rotateX(58deg);-webkit-mask-image:linear-gradient(#0000,#000 34%);mask-image:linear-gradient(#0000,#000 34%)}.hero-status{z-index:1;align-items:center;gap:var(--spacing-8);padding-bottom:var(--spacing-12);color:var(--color-silver);letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid #c0c0c026;grid-column:1/-1;font-size:11px;font-weight:500;line-height:1.2;display:flex;position:relative}.status-light{background:var(--color-success);border-radius:50%;width:7px;height:7px;box-shadow:0 0 10px #50e3a4cc}.hero-index{color:var(--color-tertiary);margin-left:auto}.hero-copy{z-index:1;align-self:end;min-width:0;position:relative}.hero-kicker{margin:0 0 var(--spacing-8);color:var(--color-secondary);letter-spacing:.12em;text-transform:uppercase;font-size:12px;font-weight:500}.hero h1{width:min-content;margin:0 0 var(--spacing-12);color:var(--color-text);letter-spacing:-.08em;text-shadow:3px 2px #0080ffb3,-2px -1px #ff006ea6;font-size:clamp(2.25rem,10vw,4rem);font-weight:700;line-height:.9;position:relative}.hero h1:after{color:var(--color-tertiary);content:attr(data-text);clip-path:inset(56% 0 25%);opacity:.38;animation:5.8s step-end infinite signal-shift;position:absolute;inset:0;overflow:hidden;transform:translate(2px)}.tagline{max-width:42ch;color:var(--color-silver);margin:0;font-size:14px;line-height:1.5}.hero-counter{z-index:1;min-width:116px;padding:var(--spacing-12) var(--spacing-16);border-radius:var(--radius-base);box-shadow:var(--shadow-neon);background:#121123ad;border:1px solid #0ff6;align-self:end;display:grid;position:relative}.hero-counter span,.hero-counter small{color:var(--color-muted);letter-spacing:.08em;text-transform:uppercase;font-size:9px;line-height:1.4}.hero-counter strong{margin:var(--spacing-4) 0;color:var(--color-tertiary);font-size:34px;line-height:1}.page{width:min(100%,560px);padding:var(--spacing-32) max(var(--spacing-24), env(safe-area-inset-right)) calc(var(--spacing-40) + env(safe-area-inset-bottom)) max(var(--spacing-24), env(safe-area-inset-left));margin:0 auto}#add-form{align-items:end;gap:var(--spacing-12);margin-bottom:var(--spacing-40);grid-template-columns:minmax(0,1fr) auto;display:grid}.schedule-selector{gap:var(--spacing-8);border:0;grid-column:1/-1;min-width:0;margin:0;padding:0;display:grid}.schedule-selector legend{color:var(--color-silver);letter-spacing:.08em;text-transform:uppercase;padding:0;font-size:12px;font-weight:500}.schedule-mode{gap:var(--spacing-8);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.weekday-toggles{gap:var(--spacing-8);grid-template-columns:repeat(auto-fit,minmax(44px,1fr));display:grid}.schedule-mode button,.weekday-toggles button{min-height:44px;padding:var(--spacing-8);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-silver);font:inherit;cursor:pointer;transition:border-color .16s ease-out,background-color .16s ease-out,color .16s ease-out,box-shadow .16s ease-out}.weekday-toggles button{min-width:44px}.schedule-mode button.selected,.weekday-toggles button.selected{border-color:var(--color-tertiary);background:var(--color-tertiary);color:var(--color-deep-black);font-weight:700;box-shadow:inset 0 0 0 1px #00000057,0 0 14px #00ffff38}.field-hint,.form-error{color:var(--color-muted);margin:0;font-size:13px}.form-error{padding:var(--spacing-12);border-radius:var(--radius-base);color:#ff91b4;border:1px solid #ff4d835c;grid-column:1/-1}.add-field{gap:var(--spacing-8);min-width:0;display:grid}.add-field label{color:var(--color-silver);letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:500}#add-form input{min-width:0;height:52px;padding:var(--spacing-12) var(--spacing-16);border:1px solid var(--border-subtle);border-radius:var(--radius-base);color:var(--color-text);caret-color:var(--color-tertiary);background:#24203fe6;transition:border-color .2s ease-out,background-color .2s ease-out}#add-form input::placeholder{color:#7e7895}#add-form input:focus{border-color:var(--color-tertiary);background:var(--color-surface)}#add-form>button[type=submit],.complete-button,.details-state button{justify-content:center;align-items:center;gap:var(--spacing-8);min-height:52px;padding:var(--spacing-12) var(--spacing-16);border-radius:var(--radius-base);background:var(--color-primary);color:var(--color-deep-black);cursor:pointer;border:0;font-weight:700;transition:transform .2s ease-out,background-color .2s ease-out,box-shadow .2s ease-out;display:inline-flex;box-shadow:0 4px 12px #00000038}#add-form>button[type=submit]:hover,.complete-button:not(:disabled):hover,.details-state button:hover{background:#1979d8;transform:translateY(-1px);box-shadow:0 6px 14px #00000047}#add-form>button[type=submit]:active,.complete-button:not(:disabled):active,.details-state button:active{transform:translateY(1px)}#add-form>button[type=submit]:disabled{cursor:default;opacity:.42}#add-form button:focus-visible,.schedule-mode button:focus-visible,.weekday-toggles button:focus-visible{outline:2px solid var(--color-tertiary);outline-offset:2px}#add-form>button[type=submit] svg{fill:none;stroke:currentColor;stroke-linecap:square;stroke-width:2px;width:20px;height:20px}.habit-section{gap:var(--spacing-16);display:grid}.section-heading{justify-content:space-between;align-items:end;gap:var(--spacing-16);padding-bottom:var(--spacing-12);border-bottom:1px solid var(--border-subtle);display:flex}.section-heading>div{gap:2px;display:grid}.section-heading span,.calendar-heading>div>span{color:var(--color-secondary);letter-spacing:.12em;text-transform:uppercase;font-size:10px;font-weight:500}.section-heading h2{margin:0;font-size:20px;line-height:1.3}.section-heading .section-count{color:var(--color-tertiary);letter-spacing:0;font-size:18px}#habits{gap:var(--spacing-8);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}#habits .habit-row{border:1px solid var(--border-subtle);border-radius:var(--radius-base);min-height:64px;box-shadow:var(--shadow-card);background:#ff006e2e;animation:.42s ease-out both item-enter;position:relative;overflow:hidden}#habits .habit-row:nth-child(2){animation-delay:80ms}#habits .habit-row:nth-child(3){animation-delay:.16s}#habits .habit-row:nth-child(4){animation-delay:.24s}#habits .habit-row:nth-child(n+5){animation-delay:.32s}.habit-content{z-index:1;align-items:center;gap:var(--spacing-12);min-height:64px;padding:var(--spacing-12) var(--spacing-16);border-radius:inherit;background:linear-gradient(90deg, #0080ff12, transparent 50%), var(--color-surface);cursor:pointer;touch-action:pan-y;will-change:transform;transition:transform .18s cubic-bezier(.2,.8,.2,1),background-color .2s ease-out;display:flex;position:relative}.habit-content:hover{background:linear-gradient(90deg, #0080ff1f, transparent 58%), var(--color-surface-raised)}.habit-content:active{transition:none}.habit-row.action-visible .habit-content{border-radius:var(--radius-base) 0 0 var(--radius-base)}.habit-state{border:1px solid var(--border-blue);border-radius:var(--radius-sm);will-change:transform;background:#0080ff14;flex:none;place-items:center;width:30px;height:30px;transition:transform .18s cubic-bezier(.2,.8,.2,1);display:grid}.habit-state span{background:var(--color-primary);border-radius:50%;width:7px;height:7px;box-shadow:0 0 10px #0080ffcc}.habit-text{pointer-events:none;-webkit-user-select:none;user-select:none;touch-action:manipulation;will-change:transform;flex:1;gap:2px;min-width:0;transition:transform .18s cubic-bezier(.2,.8,.2,1);display:grid}.habit-title{overflow-wrap:anywhere;color:var(--color-text);font-size:15px;font-weight:500}.habit-schedule{overflow-wrap:anywhere;color:var(--color-muted);font-size:12px;line-height:1.3}.habit-content:active .habit-state,.habit-content:active .habit-text{transition:none}.habit-open-icon{width:24px;height:24px;color:var(--color-muted);flex:none;place-items:center;display:grid}.habit-open-icon svg{fill:none;stroke:currentColor;stroke-linecap:square;stroke-linejoin:miter;stroke-width:1.8px;width:18px;height:18px}#habits .habit-row.done{border-color:#50e3a44d}#habits .habit-row.done .habit-state{background:#50e3a414;border-color:#50e3a485}#habits .habit-row.done .habit-state span{background:var(--color-success);box-shadow:0 0 10px #50e3a4b8}#habits .habit-row.done .habit-title{color:var(--color-muted);-webkit-text-decoration:line-through #50e3a499;text-decoration:line-through #50e3a499}.inline-alert{margin:0 0 var(--spacing-16);padding:var(--spacing-12) var(--spacing-16);border-radius:var(--radius-base);color:#ff91b4;overflow-wrap:anywhere;background:#ff4d8314;border:1px solid #ff4d835c}.inline-alert button{margin-left:var(--spacing-8);color:var(--color-text);font:inherit;cursor:pointer;background:0 0;border:0;font-weight:700;text-decoration:underline}.list-loading{color:var(--color-muted);margin:0;font-size:13px}.delete-btn{z-index:0;border-radius:0 var(--radius-base) var(--radius-base) 0;background:var(--color-secondary);width:76px;color:var(--color-text);cursor:pointer;opacity:0;border:0;place-items:center;padding:0;transition:opacity .12s ease-out,background-color .2s ease-out;display:grid;position:absolute;inset:0 0 0 auto}.habit-row.action-visible .delete-btn,.delete-btn:focus-visible{opacity:1}.delete-btn:hover,.delete-btn:active{background:#d91a65}.delete-btn:disabled{cursor:default}.delete-btn svg{fill:none;stroke:currentColor;stroke-linecap:square;stroke-linejoin:miter;stroke-width:1.8px;width:23px;height:23px}.delete-btn:focus-visible{outline-color:var(--color-text);outline-offset:-5px}.empty-state{min-height:260px;padding:var(--spacing-32);border-radius:var(--radius-base);box-shadow:var(--shadow-card);background:linear-gradient(135deg,#0080ff14,#0000 54%),#24203fa3;border:1px dashed #00ffff52;justify-items:start;display:grid}.empty-icon{border-radius:var(--radius-base);width:48px;height:48px;color:var(--color-tertiary);box-shadow:var(--shadow-neon);border:1px solid #0ff6;place-items:center;margin-bottom:auto;display:grid}.empty-icon svg{fill:none;stroke:currentColor;stroke-linecap:square;stroke-linejoin:miter;stroke-width:1.5px;width:26px;height:26px}.empty-code{margin:var(--spacing-24) 0 var(--spacing-4);color:var(--color-secondary);letter-spacing:.12em;font-size:11px}.empty-state h2{margin:0 0 var(--spacing-8);font-size:20px}.empty-state>p:last-child{max-width:38ch;color:var(--color-muted);margin:0;font-size:14px}.habit-details-page{width:min(100%,560px);min-height:100dvh;padding-bottom:calc(var(--spacing-40) + env(safe-area-inset-bottom));margin:0 auto}.details-header{min-height:164px;padding:calc(var(--spacing-12) + env(safe-area-inset-top)) max(var(--spacing-24), env(safe-area-inset-right)) var(--spacing-16) max(var(--spacing-24), env(safe-area-inset-left));border-bottom:1px solid var(--border-blue);background:linear-gradient(145deg, #0080ff24, transparent 52%), linear-gradient(315deg, #ff006e1a, transparent 44%), var(--color-deep-black);position:relative;overflow:hidden}.details-header:after{content:"";border:1px solid #00ffff2b;border-radius:50%;width:184px;height:184px;position:absolute;bottom:-96px;right:-52px;box-shadow:0 0 0 28px #0080ff06}.back-button{z-index:1;align-items:center;gap:var(--spacing-8);min-height:40px;padding:var(--spacing-8) var(--spacing-12);border:1px solid var(--border-subtle);border-radius:var(--radius-base);color:var(--color-silver);cursor:pointer;background:#24203fb8;font-size:13px;font-weight:500;transition:border-color .2s ease-out,color .2s ease-out,background-color .2s ease-out;display:inline-flex;position:relative}.back-button:hover{border-color:var(--color-primary);background:var(--color-surface);color:var(--color-text)}.back-button svg{fill:none;stroke:currentColor;stroke-linecap:square;stroke-linejoin:miter;stroke-width:1.8px;width:20px;height:20px}.details-title-block{z-index:1;margin-top:var(--spacing-12);position:relative}.details-eyebrow{margin-bottom:var(--spacing-4);color:var(--color-secondary);letter-spacing:.12em;text-transform:uppercase;font-size:11px;font-weight:500;display:block}.details-title-block h1{overflow-wrap:anywhere;max-width:14ch;color:var(--color-text);letter-spacing:-.05em;text-shadow:2px 1px #0080ffa6;margin:0;font-size:clamp(26px,7.5vw,34px);font-weight:700;line-height:1.06}.details-content{gap:var(--spacing-16);min-width:0;padding:var(--spacing-16) var(--spacing-24) var(--spacing-24);animation:.42s ease-out both page-enter;display:grid}.details-schedule{gap:var(--spacing-4);min-width:0;padding:var(--spacing-16) var(--spacing-20);border-radius:var(--radius-base);background:#0080ff14;border:1px solid #00ffff47;display:grid}.details-schedule>span{color:var(--color-muted);letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:500}.details-schedule strong{overflow-wrap:anywhere;color:var(--color-text);font-size:16px}.habit-calendar{padding:var(--spacing-20);border:1px solid var(--border-subtle);border-radius:var(--radius-base);background:linear-gradient(145deg, #5d34d01a, transparent 45%), var(--color-surface);box-shadow:var(--shadow-card)}.calendar-heading{justify-content:space-between;align-items:end;gap:var(--spacing-12);margin-bottom:var(--spacing-20);padding-bottom:var(--spacing-12);border-bottom:1px solid var(--border-subtle);display:flex}.calendar-heading>div{gap:2px;display:grid}.calendar-heading h2{margin:0;font-size:17px;line-height:1.3}.calendar-range{color:var(--color-silver);letter-spacing:.02em;white-space:nowrap;text-transform:uppercase;font-size:10px;font-weight:500}.calendar-grid{gap:var(--spacing-8);grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.calendar-weekdays{margin-bottom:var(--spacing-8);color:var(--color-silver);text-align:center;text-transform:uppercase;font-size:11px;font-weight:500}.calendar-days{row-gap:var(--spacing-16)}.calendar-day{aspect-ratio:1;border-radius:var(--radius-sm);color:#c9c4d8;background:#121123d1;border:1px solid #c0c0c03d;place-items:center;min-width:0;font-size:12px;font-weight:600;display:grid;position:relative}.calendar-date-number,.calendar-state-marker,.calendar-month-label{z-index:1}.calendar-date-number{position:relative}.calendar-day.month-start{border-left:2px solid var(--color-tertiary);box-shadow:-4px 0 10px #00ffff1f}.calendar-month-label{color:var(--color-tertiary);letter-spacing:.06em;text-transform:uppercase;font-size:7px;font-weight:700;line-height:1;position:absolute;top:2px;left:50%;transform:translate(-50%)}.calendar-day.month-start .calendar-date-number{transform:translateY(5px)}.calendar-day.state-completed{border-color:var(--color-tertiary);color:var(--color-deep-black);background:#00ffffb3;box-shadow:0 0 10px #00ffff3d}.calendar-day.state-missed_scheduled{border:2px solid var(--color-secondary);color:#ff91b4}.calendar-day.state-pending{border:2px solid var(--color-primary);color:var(--color-primary)}.calendar-day.state-not_scheduled{color:var(--color-muted);border-style:dashed;border-color:#c0c0c06b}.calendar-state-marker{color:currentColor;font-size:11px;font-weight:700;line-height:1;position:absolute;bottom:1px;right:3px}.marker-slash{width:12px;height:12px;bottom:2px;right:2px}.marker-slash:before{content:"";border-top:2px solid;width:14px;position:absolute;top:5px;left:-1px;transform:rotate(-45deg)}.marker-dot{font-size:8px}.calendar-day.today:after{z-index:0;border:2px solid var(--color-silver);content:"";pointer-events:none;border-radius:6px;position:absolute;inset:-4px;box-shadow:0 0 8px #c0c0c057}.calendar-legend{gap:var(--spacing-8);margin:var(--spacing-20) 0 0;padding:var(--spacing-12);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:#1211236b;grid-template-columns:repeat(2,minmax(0,1fr));list-style:none;display:grid}.calendar-legend-item{align-items:center;gap:var(--spacing-8);min-width:0;color:var(--color-silver);font-size:11px;line-height:1.3;display:flex}.calendar-legend-item .calendar-state-marker{border:1px solid #c0c0c052;border-radius:4px;flex:0 0 18px;place-items:center;width:18px;height:18px;display:grid;position:relative;bottom:auto;right:auto}.calendar-legend-item.state-completed .calendar-state-marker{border-color:var(--color-tertiary);color:var(--color-deep-black);background:#00ffffb3}.calendar-legend-item.state-missed_scheduled .calendar-state-marker{border:2px solid var(--color-secondary);color:#ff91b4}.calendar-legend-item.state-pending .calendar-state-marker{border:2px solid var(--color-primary);color:var(--color-primary)}.calendar-legend-item.state-not_scheduled:before{box-sizing:border-box;content:"";border:1px dashed #c0c0c06b;border-radius:4px;flex:0 0 18px;width:18px;height:18px}.calendar-legend-item.state-not_scheduled{color:var(--color-muted)}.streak-card{align-items:center;gap:var(--spacing-16);padding:var(--spacing-20);border-radius:var(--radius-base);background:linear-gradient(105deg, #ff006e1a, transparent 58%), var(--color-surface);box-shadow:var(--shadow-card);border:1px solid #ff006e45;display:flex}.streak-marker{border-radius:var(--radius-base);width:44px;height:44px;color:var(--color-secondary);border:1px solid #ff006e80;flex:none;place-items:center;display:grid}.streak-marker svg{fill:none;stroke:currentColor;stroke-linecap:square;stroke-width:1.7px;width:25px;height:25px}.streak-card div{gap:2px;min-width:0;display:grid}.streak-label{color:var(--color-muted);letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:500}.streak-card strong{overflow-wrap:anywhere;font-size:19px;line-height:1.3}.complete-button,.details-state button{width:100%;min-height:56px}.complete-button.completed{color:var(--color-success);box-shadow:none;cursor:default;background:#50e3a41f;border:1px solid #50e3a475}.complete-button:disabled:not(.completed){opacity:.66}.details-error{padding:var(--spacing-12) var(--spacing-16);border-radius:var(--radius-base);color:#ff91b4;background:#ff4d8314;border:1px solid #ff4d835c;margin:0;font-size:13px}.details-state,.details-skeleton{justify-items:stretch;gap:var(--spacing-16);padding:var(--spacing-32) var(--spacing-24);text-align:center;display:grid}.details-state{justify-items:center}.error-icon{border-radius:var(--radius-base);width:52px;height:52px;color:var(--color-danger);border:1px solid #ff4d8375;place-items:center;display:grid}.error-icon svg{fill:none;stroke:currentColor;stroke-linecap:square;stroke-linejoin:miter;stroke-width:1.7px;width:28px;height:28px}.details-state p,.details-skeleton p{color:var(--color-muted);margin:0;font-size:13px}.details-state button{width:auto}.skeleton{border:1px solid var(--border-subtle);border-radius:var(--radius-base);background:var(--color-surface);display:block;position:relative;overflow:hidden}.skeleton:after{content:"";background:linear-gradient(90deg,#0000,#00ffff17,#0000);animation:1.4s ease-out infinite shimmer;position:absolute;inset:0;transform:translate(-100%)}.skeleton-calendar{height:258px}.skeleton-streak{height:86px}.skeleton-button{height:56px}@keyframes signal-shift{0%,92%,to{transform:translate(2px)}93%{transform:translate(-3px)}94%{transform:translate(4px)}95%{transform:translate(1px)}}@keyframes item-enter{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes page-enter{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer{to{transform:translate(100%)}}@media (width<=480px){.hero{gap:var(--spacing-12);min-height:192px;padding-top:calc(var(--spacing-12) + env(safe-area-inset-top));padding-bottom:var(--spacing-16);grid-template-columns:minmax(0,1fr) 104px}.hero-status{padding-bottom:var(--spacing-8)}.hero-kicker{margin-bottom:var(--spacing-4)}.hero h1{margin-bottom:var(--spacing-8);font-size:clamp(2rem,9vw,2.5rem)}.tagline{font-size:13px;line-height:1.35}.hero-counter{min-width:104px;padding-inline:var(--spacing-12)}.page{padding-top:var(--spacing-16)}#add-form{margin-bottom:var(--spacing-24);grid-template-columns:minmax(0,1fr)}#add-form button{width:100%}.empty-state{min-height:180px;padding:var(--spacing-20)}.empty-icon{width:40px;height:40px}.empty-code{margin-top:var(--spacing-12)}}@media (width<=560px){.details-header{min-height:132px}.details-content{gap:var(--spacing-12);padding-top:var(--spacing-12);padding-bottom:var(--spacing-20)}.details-schedule{padding:var(--spacing-12) var(--spacing-16)}.complete-button{min-height:52px}.habit-calendar{padding:var(--spacing-16)}.calendar-heading{margin-bottom:var(--spacing-12);padding-bottom:var(--spacing-8)}.calendar-days{row-gap:10px}.calendar-day{aspect-ratio:1.14}.calendar-legend{margin-top:var(--spacing-12);padding:var(--spacing-8);gap:6px}.calendar-legend-item{gap:6px}.streak-card{gap:var(--spacing-12);padding:var(--spacing-16)}.streak-marker{width:40px;height:40px}}@media (width<=360px){.hero,.page,.details-header,.details-content,.details-state,.details-skeleton{padding-right:var(--spacing-16);padding-left:var(--spacing-16)}.hero{column-gap:var(--spacing-12);grid-template-columns:minmax(0,1fr) 88px}.hero-counter{min-width:88px;padding-inline:var(--spacing-8)}.hero-counter strong{font-size:28px}.habit-calendar{padding-inline:var(--spacing-16)}.calendar-grid{gap:6px}.calendar-heading{flex-direction:column;align-items:start}.calendar-legend{padding:var(--spacing-8);gap:6px}.calendar-legend-item{overflow-wrap:anywhere;gap:6px;font-size:10px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
