:root{--hz-bg: #fbfbfa;--hz-surface: #ffffff;--hz-ink: #16150f;--hz-muted: #6a6960;--hz-faint: #a3a299;--hz-line: #eceae4;--hz-line-soft: #f4f2ed;--hz-on-ink: #fbfbfa;--hz-accent: #e08a00;--hz-accent-bg: #fff6e6;--hz-font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;background:var(--hz-bg)}body{font-family:var(--hz-font);color:var(--hz-ink);-webkit-font-smoothing:antialiased}input,button{font-family:inherit;font-size:14px}@keyframes hzUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.hz-root{font-family:var(--hz-font);color:var(--hz-ink)}.hz-nav-item{display:flex;align-items:center;gap:12px;padding:10px 0;cursor:pointer;color:var(--hz-muted);font-size:15px;position:relative;transition:color .25s cubic-bezier(.22,.61,.18,1),padding-left .25s cubic-bezier(.22,.61,.18,1)}.hz-nav-item:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--hz-line);flex-shrink:0;transition:all .3s cubic-bezier(.22,.61,.18,1)}.hz-nav-item:hover{color:var(--hz-ink);padding-left:4px}.hz-nav-item.on{color:var(--hz-ink);font-weight:500}.hz-nav-item.on:before{background:var(--hz-accent);box-shadow:0 0 0 4px var(--hz-accent-bg)}.hz-itemwrap{border-radius:12px;margin-bottom:2px;transition:background .15s cubic-bezier(.16,1,.3,1),transform .15s cubic-bezier(.16,1,.3,1),box-shadow .15s cubic-bezier(.16,1,.3,1)}.hz-itemwrap:hover{background:var(--hz-line-soft);transform:translateY(-1px);box-shadow:0 4px 14px -5px #14120a14}.hz-task{display:flex;align-items:center;gap:12px;padding:10px 12px}.hz-task .hz-tx{font-size:15px;color:var(--hz-ink);flex:1;line-height:1.45}.hz-task.sub .hz-tx{font-size:13.5px;color:var(--hz-muted)}.hz-time{font-size:11px;color:var(--hz-faint);font-variant-numeric:tabular-nums;flex-shrink:0;white-space:nowrap}.hz-task.done .hz-tx{color:var(--hz-faint);text-decoration:line-through;text-decoration-color:var(--hz-line)}.hz-tools{display:flex;align-items:center;gap:4px;padding:0 10px 8px 44px}.hz-tool{background:transparent;border:1px solid transparent;border-radius:100px;cursor:pointer;font-family:inherit;font-size:11.5px;font-weight:500;color:var(--hz-muted);padding:3px 9px;opacity:0;transform:translateY(4px);transition:opacity .15s cubic-bezier(.16,1,.3,1),transform .18s cubic-bezier(.16,1,.3,1),background .12s,border-color .12s,color .12s}.hz-itemwrap:hover .hz-tool,.hz-tools:focus-within .hz-tool{opacity:1;transform:none}.hz-itemwrap:hover .hz-tools button:nth-of-type(2){transition-delay:20ms}.hz-itemwrap:hover .hz-tools button:nth-of-type(3){transition-delay:40ms}.hz-itemwrap:hover .hz-tools button:nth-of-type(4){transition-delay:60ms}.hz-tool:hover{background:var(--hz-surface);border-color:var(--hz-line);color:var(--hz-ink)}.hz-tool.del:hover{background:#fff0ef;border-color:#f5bbb8;color:#d9483b}.hz-tools .sep{display:none}.hz-drag{background:none;border:none;cursor:grab;padding:0 2px;margin:0;font-size:14px;line-height:1;color:var(--hz-line);flex-shrink:0;touch-action:none;opacity:0;transform:translate(-3px);transition:opacity .15s cubic-bezier(.16,1,.3,1),color .12s,transform .15s cubic-bezier(.16,1,.3,1)}.hz-task:hover .hz-drag,.hz-drag:focus-visible{opacity:1;transform:none}.hz-drag:hover{color:var(--hz-faint)}.hz-drag:active{cursor:grabbing}.hz-itemwrap.hz-dragging{opacity:.4}@media(hover:none){.hz-drag{opacity:.55}}.hz-drop-line{height:2px;background:var(--hz-accent, #4a9d5b);border-radius:2px;transform:translateY(-1px)}.hz-drop-line:before{content:"";position:absolute;left:-4px;top:-2px;width:6px;height:6px;border-radius:50%;background:var(--hz-accent, #4a9d5b)}.hz-drop-into{border:2px solid var(--hz-accent, #4a9d5b);border-radius:8px;background:var(--hz-accent-bg, rgba(74, 157, 91, .1))}.hz-check{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;border:1.5px solid var(--hz-line);border-radius:50%;cursor:pointer;flex-shrink:0;position:relative;transition:background .15s,border-color .15s,transform .15s cubic-bezier(.16,1,.3,1);background:transparent}.hz-task:hover .hz-check{border-color:var(--hz-faint);transform:scale(1.07)}.hz-check:active{transform:scale(.9)!important;transition-duration:.07s}.hz-check:checked{background:var(--hz-ink);border-color:var(--hz-ink)}.hz-check:checked:after{content:"";position:absolute;left:5px;top:2px;width:5px;height:9px;border:1.5px solid var(--hz-on-ink);border-top:none;border-left:none;transform:rotate(45deg)}.hz-habit{display:inline-flex;align-items:center;gap:4px;flex-shrink:0}.hz-hbtn{width:22px;height:22px;padding:0;border:1.5px solid var(--hz-line);border-radius:7px;background:transparent;cursor:pointer;font-family:inherit;font-size:15px;line-height:1;color:var(--hz-muted);display:grid;place-items:center;transition:background .12s,border-color .12s,color .12s}.hz-hbtn:hover{border-color:var(--hz-faint)}.hz-hbtn:active{transform:scale(.88);transition-duration:.07s}.hz-hbtn:disabled{opacity:.5;cursor:default}.hz-hbtn.plus:hover{background:var(--hz-accent-bg);border-color:var(--hz-accent);color:var(--hz-accent)}.hz-hbtn.minus:hover{background:#fdeceb;border-color:#d9483b;color:#d9483b}.hz-hcount{font-size:13px;font-variant-numeric:tabular-nums;flex-shrink:0;font-weight:600;white-space:nowrap}.hz-hcount.up{color:var(--hz-accent)}.hz-hcount.dn{color:#d9483b}.hz-hcount:not(.up):not(.dn){color:var(--hz-faint)}.hz-history{padding:8px 12px;margin-bottom:4px;background:var(--hz-line-soft);border-radius:10px;display:flex;flex-direction:column;gap:4px;max-height:220px;overflow-y:auto}.hz-history-row{display:flex;align-items:center;gap:8px;font-size:13px}.hz-history-badge{width:20px;height:20px;border-radius:6px;flex-shrink:0;display:grid;place-items:center;font-weight:700;font-size:14px}.hz-history-badge.plus{background:var(--hz-accent-bg);color:var(--hz-accent)}.hz-history-badge.minus{background:#fdeceb;color:#d9483b}.hz-history-time{color:var(--hz-muted)}.hz-history-empty{font-size:13px;color:var(--hz-faint)}.hz-habit-chip{font-size:11px;font-weight:600;flex-shrink:0;padding:2px 7px;border-radius:20px;background:var(--hz-accent-bg);color:var(--hz-accent);max-width:130px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hz-habit-chip.dn{background:#fdeceb;color:#d9483b}.hz-habit-chip:not(.up):not(.dn){background:var(--hz-line-soft);color:var(--hz-muted)}.hz-additype{width:18px;height:18px;flex-shrink:0;border:1.5px dashed var(--hz-line);border-radius:50%;background:transparent;color:var(--hz-accent);font-size:12px;line-height:1;font-weight:700;display:grid;place-items:center}.hz-additype.habit{border-style:solid;border-color:var(--hz-accent);background:var(--hz-accent-bg)}.hz-typechip{flex-shrink:0;cursor:pointer;font-family:inherit;font-size:12px;white-space:nowrap;padding:5px 11px;border-radius:999px;border:1px solid var(--hz-line);background:var(--hz-surface);color:var(--hz-muted);transition:border-color .12s,background .12s,color .12s}.hz-typechip:hover{border-color:var(--hz-faint);color:var(--hz-ink)}.hz-typechip.habit{border-color:var(--hz-accent);background:var(--hz-accent-bg);color:var(--hz-accent);font-weight:600}.hz-version{position:fixed;top:8px;right:10px;z-index:70;font-size:10px;font-variant-numeric:tabular-nums;letter-spacing:.02em;color:var(--hz-faint);background:var(--hz-surface);padding:2px 8px;border:1px solid var(--hz-line);border-radius:999px;opacity:.6;pointer-events:none;-webkit-user-select:none;user-select:none}.hz-actions{display:flex;gap:2px;flex-shrink:0;opacity:0;transition:opacity .15s}.hz-task:hover .hz-actions,.hz-nav-item:hover .hz-actions,.hz-pick:hover .hz-actions{opacity:1}.hz-qa{background:none;border:none;cursor:pointer;font-size:15px;line-height:1;padding:3px 6px;border-radius:6px;color:var(--hz-faint);position:relative;transition:background .12s,color .12s}.hz-qa:hover{background:var(--hz-line-soft);color:var(--hz-ink)}.hz-field{background:none;border:none;outline:none;font-family:inherit;color:var(--hz-ink);letter-spacing:-.011em}.hz-field::placeholder{color:var(--hz-faint)}.hz-primary{background:var(--hz-ink);color:var(--hz-on-ink);border:none;border-radius:100px;cursor:pointer;font-family:inherit;font-weight:500;transition:transform .12s cubic-bezier(.22,.61,.18,1),opacity .2s}.hz-primary:hover{opacity:.88}.hz-primary:active{transform:scale(.97)}.hz-ghost{background:var(--hz-surface);color:var(--hz-muted);border:1px solid var(--hz-line);border-radius:100px;cursor:pointer;font-family:inherit;transition:color .2s,border-color .2s}.hz-ghost:hover{color:var(--hz-ink);border-color:var(--hz-faint)}.hz-title{display:inline-flex;align-items:center;gap:14px;max-width:100%;text-align:left;background:none;border:none;cursor:pointer;font-family:inherit;color:var(--hz-ink);font-size:clamp(28px,5vw,42px);font-weight:600;letter-spacing:-.04em;line-height:1.08;padding:6px 12px 6px 4px;margin-left:-4px;border-radius:12px;transition:background .18s ease}.hz-title:hover{background:var(--hz-line-soft)}.hz-picker{position:absolute;top:calc(100% + 12px);left:0;z-index:100;width:360px;max-width:88vw;padding:8px;background:color-mix(in srgb,var(--hz-surface) 86%,transparent);-webkit-backdrop-filter:blur(20px) saturate(1.5);backdrop-filter:blur(20px) saturate(1.5);border:1px solid var(--hz-line);border-radius:20px;box-shadow:inset 0 1px #fff9,0 24px 60px -14px #14120a4d,0 8px 22px -10px #14120a2e;transform-origin:top left;animation:hzPicker .26s cubic-bezier(.16,1,.3,1) backwards}@keyframes hzPicker{0%{opacity:0;transform:translateY(-6px) scale(.97)}to{opacity:1;transform:none}}@keyframes hzRowIn{0%{opacity:0}to{opacity:1}}.hz-picker-search{display:flex;align-items:center;gap:10px;padding:11px 14px;margin:2px 2px 8px;background:var(--hz-line-soft);border-radius:13px;transition:background .18s ease,box-shadow .18s ease}.hz-picker-search:focus-within{background:var(--hz-surface);box-shadow:0 0 0 2px var(--hz-accent-bg),inset 0 0 0 1px var(--hz-accent)}.hz-picker-search svg{color:var(--hz-faint);flex-shrink:0;transition:color .18s ease}.hz-picker-search:focus-within svg{color:var(--hz-accent)}.hz-picker-search input{flex:1;min-width:0;font-size:15px}.hz-picker-cap{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--hz-faint);padding:4px 14px 8px}.hz-picker-rows{max-height:320px;overflow-y:auto;padding:0 2px;scrollbar-width:none}.hz-picker-rows::-webkit-scrollbar{display:none}.hz-pick{display:flex;align-items:center;gap:12px;padding:11px 12px;cursor:pointer;border-radius:12px;color:var(--hz-muted);font-size:15px;position:relative;transition:background .15s ease,color .15s ease,transform .15s cubic-bezier(.22,.61,.18,1)}.hz-pick:hover,.hz-pick.kbd{background:var(--hz-line-soft);color:var(--hz-ink)}.hz-pick-dot{width:7px;height:7px;border-radius:50%;background:var(--hz-line);flex-shrink:0;transition:all .2s ease}.hz-pick.on{color:var(--hz-ink);font-weight:500;background:var(--hz-accent-bg)}.hz-pick.on:hover,.hz-pick.on.kbd{background:color-mix(in srgb,var(--hz-accent-bg) 82%,var(--hz-accent) 10%)}.hz-pick.on .hz-pick-dot{background:var(--hz-accent);box-shadow:0 0 0 3px var(--hz-accent-bg)}.hz-pick-check{color:var(--hz-accent);flex-shrink:0;opacity:0;transform:scale(.5);transition:opacity .2s ease,transform .2s cubic-bezier(.2,.8,.2,1)}.hz-pick.on .hz-pick-check{opacity:1;transform:none}.hz-pill-today{font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--hz-accent);background:var(--hz-accent-bg);padding:2px 8px;border-radius:100px;flex-shrink:0}.hz-pick.create .hz-pick-plus{width:20px;height:20px;border:1.5px dashed var(--hz-line);border-radius:7px;display:grid;place-items:center;font-size:14px;color:var(--hz-faint);flex-shrink:0;transition:all .15s ease}.hz-pick.create:hover .hz-pick-plus,.hz-pick.create.kbd .hz-pick-plus{border-color:var(--hz-accent);border-style:solid;color:var(--hz-accent)}.hz-pick.create b{color:var(--hz-ink);font-weight:600}.hz-pick-enter{margin-left:auto;font-size:12px;color:var(--hz-faint);flex-shrink:0}.hz-fab{transition:transform .16s cubic-bezier(.22,.61,.18,1),opacity .2s}.hz-fab:hover{transform:translateY(-2px);opacity:1}.hz-fab:active{transform:translateY(0) scale(.98)}@media(prefers-reduced-motion:reduce){.hz-anim,.hz-anim *{animation:none!important}}
