/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:"Poppins", ui-sans-serif, system-ui, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--radius-sm:10px;--radius-md:14px;--radius-lg:20px;--radius-xl:28px;--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:"Poppins", ui-sans-serif, system-ui, sans-serif;--default-mono-font-family:var(--font-mono);--color-accent:var(--accent);--color-success:var(--success);--color-lavender:var(--lavender);--color-butter:var(--butter);--color-mint:var(--mint);--color-peach:var(--peach);--color-sky:var(--sky);--color-on-pastel:var(--on-pastel)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.isolate{isolation:isolate}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.flex-shrink,.shrink{flex-shrink:1}.flex-grow,.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.flex-wrap{flex-wrap:wrap}.rounded{border-radius:.25rem}.rounded-full{border-radius:2147483647px}.border{border-style:var(--tw-border-style);border-width:1px}.bg-lavender{background-color:var(--lavender)}.bg-surface{background-color:var(--surface)}.font-sans{font-family:Poppins,ui-sans-serif,system-ui,sans-serif}.text-ink-muted{color:var(--ink-muted)}.lowercase{text-transform:lowercase}.ordinal{--tw-ordinal:ordinal;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.line-through{text-decoration-line:line-through}.underline{text-decoration-line:underline}.accent-ink{accent-color:var(--ink)}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-in{--tw-ease:var(--ease-in);transition-timing-function:var(--ease-in)}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/poppins-latin-400-normal-cpxAROuN.woff2)format("woff2"),url(/assets/poppins-latin-400-normal-BOb3E3N0.woff)format("woff")}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/poppins-latin-500-normal-C8OXljZJ.woff2)format("woff2"),url(/assets/poppins-latin-500-normal-DGXqpDMm.woff)format("woff")}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/poppins-latin-600-normal-zEkxB9Mr.woff2)format("woff2"),url(/assets/poppins-latin-600-normal-BJdTmd5m.woff)format("woff")}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/poppins-latin-700-normal-Qrb0O0WB.woff2)format("woff2"),url(/assets/poppins-latin-700-normal-BVuQR_eA.woff)format("woff")}:root,[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#1c1d21;--surface:#2a2b30;--surface-raised:#34353b;--line:#3a3b42;--line-strong:#80818a;--ink:#f5f5f4;--ink-muted:#a1a1aa;--accent:#fdb833;--on-accent:#1c1d21;--accent-ink:#fdb833;--accent-soft:#3a3020;--accent-edge:#fdb833;--ring:#fdb833;--lavender:#c7a9e6;--butter:#e8cf86;--mint:#a6dcb0;--peach:#eeb39b;--sky:#a3c8ea;--on-pastel:#1c1d21;--success:#6fd08c;--danger:#ff8a7a;--danger-soft:#3a2323;--on-danger:#1c1d21;--scrim:#0009;--shadow-card:0 0 0 1px #ffffff08;--shadow-float:0 8px 32px #00000073}[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f4f3ef;--surface:#fff;--surface-raised:#eceae4;--line:#e2e0d9;--line-strong:#7f7e79;--ink:#1c1d21;--ink-muted:#5e5f66;--accent:#fdb833;--on-accent:#1c1d21;--accent-ink:#8a5c00;--accent-soft:#fcebc4;--accent-edge:#8a5c00;--ring:#8a5c00;--lavender:#e2c8fb;--butter:#fce7a6;--mint:#c4f1cb;--peach:#ffd2bd;--sky:#c3e1fb;--on-pastel:#1c1d21;--success:#1b7035;--danger:#b42318;--danger-soft:#fde8e6;--on-danger:#fff;--scrim:#1c1d2173;--shadow-card:0 1px 2px #1c1d210f, 0 4px 16px #1c1d210d;--shadow-float:0 8px 32px #1c1d2124}:root{--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-12:48px;--radius-sm:10px;--radius-md:14px;--radius-lg:20px;--radius-xl:28px;--radius-full:9999px;--layout-nav-bar:72px;--layout-nav-rail:88px;--layout-sidebar:256px;--layout-detail:380px;--layout-content-max:1280px;--layout-tap:44px;--font-sans:"Poppins", ui-sans-serif, system-ui, sans-serif}.display-lg{letter-spacing:-.01em;font-size:34px;font-weight:600;line-height:40px}.display{letter-spacing:-.01em;font-size:26px;font-weight:600;line-height:32px}.title{font-size:20px;font-weight:600;line-height:28px}.heading{font-size:17px;font-weight:600;line-height:24px}.body{font-size:15px;font-weight:400;line-height:22px}.body-strong{font-size:15px;font-weight:500;line-height:22px}.body-sm{font-size:13px;font-weight:400;line-height:18px}.label{font-size:13px;font-weight:500;line-height:16px}.button{font-size:15px;font-weight:600;line-height:20px}.caption{font-size:11px;font-weight:500;line-height:14px}body{font-family:var(--font-sans);background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0}.zn-demo-unused{padding:var(--space-4);gap:var(--space-3);flex-wrap:wrap;align-items:center;display:flex}.zn-stack-unused{padding:var(--space-4);gap:var(--space-3);flex-direction:column;max-width:420px;display:flex}.zn-icon{flex:none;display:block}:where(.zn-btn,.zn-chip,.zn-icon-btn,.zn-check,.zn-switch,.zn-date,.zn-cat,.zn-nav-item,.zn-task-body,.zn-search-filter):focus-visible{outline:2px solid var(--ring);outline-offset:2px}.zn-btn{font:inherit;text-align:center;vertical-align:middle;box-sizing:border-box;justify-content:center;align-items:center;gap:var(--space-2);border-radius:var(--radius-full);cursor:pointer;white-space:nowrap;border:1px solid #0000;padding-block:0;font-weight:600;line-height:20px;transition:background .15s,transform .1s;display:inline-flex}.zn-btn:active{transform:scale(.98)}.zn-btn:disabled{opacity:.45;cursor:not-allowed}.zn-btn--sm{height:36px;padding:0 var(--space-4);font-size:13px}.zn-btn--md{height:44px;padding:0 var(--space-5);font-size:15px}.zn-btn--lg{height:52px;padding:0 var(--space-6);font-size:16px}.zn-btn--icon-only.zn-btn--sm{width:36px;padding:0}.zn-btn--icon-only.zn-btn--md{width:44px;padding:0}.zn-btn--icon-only.zn-btn--lg{width:52px;padding:0}.zn-btn--lead-icon.zn-btn--sm{padding-inline-start:calc(var(--space-4) - 2px)}.zn-btn--lead-icon.zn-btn--md{padding-inline-start:calc(var(--space-5) - 2px)}.zn-btn--lead-icon.zn-btn--lg{padding-inline-start:calc(var(--space-6) - 2px)}.zn-btn--block{width:100%}.zn-btn--primary{background:var(--accent);color:var(--on-accent)}@media (hover:hover) and (pointer:fine){.zn-btn--primary:hover{filter:brightness(1.05)}}.zn-btn--secondary{background:var(--surface-raised);color:var(--ink)}.zn-btn--outline{color:var(--ink);border-color:var(--line-strong);background:0 0}.zn-btn--ghost{color:var(--ink);background:0 0}@media (hover:hover) and (pointer:fine){.zn-btn--ghost:hover,.zn-btn--outline:hover,.zn-btn--secondary:hover{background:var(--surface-raised);filter:brightness(1.08)}}.zn-btn--danger{color:var(--danger);border-color:var(--danger);background:0 0}.zn-btn-label{padding-bottom:1px;line-height:20px;display:block}.zn-btn--sm .zn-btn-label{line-height:18px}.zn-field{flex-direction:column;gap:6px;display:flex}.zn-field-label{color:var(--ink-muted);font-size:13px;font-weight:500;line-height:16px}.zn-field-opt{font-size:11px;font-weight:400}.zn-field-control{align-items:center;display:flex;position:relative}.zn-input{font:inherit;color:var(--ink);box-sizing:border-box;background:0 0;border:0;outline:0;width:100%;font-size:15px;line-height:22px}@media (pointer:coarse){.zn-input,.zn-textarea,.zn-search-input{font-size:16px}}.zn-input::placeholder{color:var(--ink-muted)}.zn-field--line .zn-input{border-bottom:1px solid var(--line-strong);border-radius:0;padding:6px 28px 8px 0}.zn-field--line .zn-input:focus{border-bottom-color:var(--ring);box-shadow:0 1px 0 0 var(--ring)}.zn-field--filled .zn-input{padding:12px var(--space-4);background:var(--surface-raised);border-radius:var(--radius-md);border:1px solid #0000}.zn-field--filled .zn-input:focus{border-color:var(--ring);box-shadow:0 0 0 1px var(--ring)}.zn-textarea{resize:vertical;min-height:72px}.zn-field-trail{color:var(--ink-muted);pointer-events:none;position:absolute;right:4px}.zn-field--filled .zn-field-trail{right:var(--space-4)}.zn-field-hint{color:var(--ink-muted);margin:0;font-size:12px}.zn-field-hint.is-error{color:var(--danger)}.zn-input[aria-invalid=true]{border-color:var(--danger)!important}.zn-switch{border-radius:var(--radius-full);background:var(--line-strong);cursor:pointer;border:0;flex:none;width:44px;height:26px;padding:0;transition:background .15s;position:relative}.zn-switch-thumb{background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .18s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #00000040}.zn-switch.is-on{background:var(--accent);box-shadow:inset 0 0 0 1.5px var(--accent-edge)}.zn-switch.is-on .zn-switch-thumb{transform:translate(18px)}.zn-switch-row{justify-content:space-between;align-items:center;gap:var(--space-3);cursor:pointer;min-height:44px;display:flex}.zn-switch-label{align-items:center;gap:var(--space-2);color:var(--ink);font-size:15px;display:flex}.zn-chip{font:inherit;box-sizing:border-box;height:36px;padding:0 var(--space-4);align-items:center;gap:var(--space-1);border-radius:var(--radius-full);border:1px solid var(--line-strong);color:var(--ink);cursor:pointer;white-space:nowrap;background:0 0;font-size:13px;font-weight:500;line-height:18px;transition:background .12s ease-out,transform .1s ease-out;display:inline-flex}.zn-chip:active{transform:scale(.96)}@media (hover:hover) and (pointer:fine){.zn-chip:hover{background:var(--surface-raised)}}.zn-chip.is-selected{background:var(--accent);border-color:var(--accent-edge);color:var(--on-accent)}.zn-search{align-items:center;gap:var(--space-2);height:52px;padding:0 6px 0 var(--space-4);border-radius:var(--radius-full);border:1px solid var(--line-strong);background:0 0;display:flex}.zn-search:focus-within{border-color:var(--ring);box-shadow:0 0 0 1px var(--ring)}.zn-search-icon{color:var(--ink-muted)}.zn-search-input{min-width:0;font:inherit;color:var(--ink);background:0 0;border:0;outline:0;flex:1;font-size:15px}.zn-search-input::placeholder{color:var(--ink-muted)}.zn-search-input::-webkit-search-cancel-button{display:none}.zn-search-filter{background:var(--accent);width:40px;height:40px;color:var(--on-accent);cursor:pointer;border:0;border-radius:50%;place-items:center;display:grid}.zn-task{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-2) var(--space-3) var(--space-4);background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);box-sizing:border-box;min-height:64px;display:flex}.zn-task.is-selected{outline:2px solid var(--accent);outline-offset:-2px}.zn-check{border:1.5px solid var(--line-strong);width:22px;height:22px;color:var(--on-accent);cursor:pointer;background:0 0;border-radius:50%;flex:none;place-items:center;padding:0;transition:border-color .15s ease-out,transform .1s ease-out;display:grid;position:relative}.zn-check:active{transform:scale(.9)}.zn-check:after{content:"";position:absolute;inset:-11px}.zn-task.is-done .zn-check{border-color:var(--accent-edge)}.zn-task-body{text-align:left;min-width:0;font:inherit;color:inherit;cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:0;flex-direction:column;flex:1;gap:2px;padding:0;display:flex}.zn-task-title{text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:500;line-height:22px;overflow:hidden}.zn-task.is-done .zn-task-title{color:var(--ink-muted);text-decoration:line-through}.zn-task-meta{align-items:center;gap:var(--space-2);color:var(--ink-muted);flex-wrap:wrap;font-size:13px;line-height:18px;display:flex}.zn-task-tag{padding:0 var(--space-2);border-radius:var(--radius-full);background:var(--accent-soft);color:var(--accent-ink);font-size:11px;font-weight:500;line-height:18px}.zn-task-note{align-items:center;gap:3px;display:inline-flex}.zn-icon-btn{width:40px;height:40px;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;place-items:center;transition:background .15s ease-out,transform .1s ease-out;display:grid}.zn-icon-btn:active{background:var(--surface-raised);transform:scale(.96)}@media (hover:hover) and (pointer:fine){.zn-icon-btn:hover{background:var(--surface-raised)}}.zn-cat{font:inherit;aspect-ratio:1;width:100%;min-width:136px;max-height:180px;padding:var(--space-4);box-sizing:border-box;border-radius:var(--radius-xl);color:var(--on-pastel);cursor:pointer;text-align:left;border:0;flex-direction:column;align-items:flex-start;gap:2px;transition:transform .15s;display:flex;position:relative;overflow:hidden}@media (hover:hover) and (pointer:fine){.zn-cat:hover{transform:translateY(-2px)}}.zn-cat--lavender{background:var(--lavender)}.zn-cat--butter{background:var(--butter)}.zn-cat--mint{background:var(--mint)}.zn-cat--peach{background:var(--peach)}.zn-cat--sky{background:var(--sky)}.zn-cat-title{font-size:15px;font-weight:600;line-height:20px}.zn-cat-count{opacity:.8;font-size:12px;line-height:16px}.zn-cat-art{right:var(--space-4);bottom:var(--space-4);position:absolute}.zn-progress-card{gap:var(--space-4);padding:var(--space-4) var(--space-2) var(--space-4) var(--space-4);background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);align-items:flex-start;display:flex}.zn-progress-icon{border:1.5px solid var(--ink);width:48px;height:48px;color:var(--ink);border-radius:50%;flex:none;place-items:center;margin-top:4px;display:grid}.zn-progress-body{flex:1;min-width:0}.zn-progress-title{margin:0;font-size:15px;font-weight:600;line-height:22px}.zn-progress-meta,.zn-progress-desc{color:var(--ink-muted);margin:2px 0 0;font-size:13px;line-height:18px}.zn-progress-desc{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.zn-progress-row{align-items:center;gap:var(--space-3);margin-top:var(--space-3);display:flex}.zn-progress-track{border-radius:var(--radius-full);background:var(--surface-raised);flex:1;height:8px;overflow:hidden}.zn-progress-fill{border-radius:inherit;background:var(--accent);height:100%;transition:width .3s}.zn-progress-value{color:var(--accent-ink);min-width:36px;font-size:13px;font-weight:600}.zn-dates{gap:var(--space-2);padding:var(--space-2) 0;scroll-snap-type:x mandatory;scrollbar-width:none;touch-action:pan-y;overscroll-behavior-x:contain;align-items:center;display:flex;overflow-x:auto}.zn-dates::-webkit-scrollbar{display:none}.zn-date{font:inherit;scroll-snap-align:center;border-radius:var(--radius-full);background:var(--surface-raised);width:48px;height:64px;color:var(--ink);cursor:pointer;border:0;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:2px;transition:height .15s;display:flex}.zn-date-num{font-size:17px;font-weight:600;line-height:20px}.zn-date-wd{color:var(--ink-muted);font-size:11px;font-weight:500;line-height:14px}.zn-date.is-today:not(.is-selected){box-shadow:inset 0 0 0 1.5px var(--accent-ink)}.zn-date.is-selected{background:var(--accent);width:56px;height:80px;color:var(--on-accent);box-shadow:inset 0 0 0 1.5px var(--accent-edge)}.zn-date.is-selected .zn-date-wd{color:var(--on-accent)}@media (width>=768px){.zn-dates{justify-content:space-between}.zn-date{width:56px}.zn-date.is-selected{width:64px}}.zn-nav{background:var(--surface);box-sizing:border-box}.zn-nav-list{margin:0;padding:0;list-style:none;display:flex}.zn-nav-item{color:var(--ink-muted);border-radius:var(--radius-md);align-items:center;font-size:11px;font-weight:500;text-decoration:none;transition:color .12s ease-out,transform .1s ease-out;display:flex}.zn-nav-item:active{transform:scale(.94)}@media (hover:hover) and (pointer:fine){.zn-nav-item:hover{color:var(--ink)}}.zn-nav-item.is-active{color:var(--ink);font-weight:600}.zn-nav-brand{padding:var(--space-2) var(--space-3) var(--space-6);font-size:20px;font-weight:700;display:none}.zn-nav--fixed{z-index:20;position:fixed}.zn-nav--bar,.zn-nav--auto{width:100%;height:calc(var(--layout-nav-bar) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);border-radius:var(--radius-xl) var(--radius-xl) 0 0;box-shadow:var(--shadow-float)}.zn-nav--fixed.zn-nav--bar,.zn-nav--fixed.zn-nav--auto{bottom:0;left:0;right:0}.zn-nav--bar .zn-nav-list,.zn-nav--auto .zn-nav-list{height:var(--layout-nav-bar);justify-content:space-around;align-items:center}.zn-nav--bar .zn-nav-item,.zn-nav--auto .zn-nav-item{flex-direction:column;justify-content:center;gap:4px;min-width:56px;min-height:48px}.zn-nav--rail{width:var(--layout-nav-rail);height:100%;padding:var(--space-6) 0;box-shadow:none;border-right:1px solid var(--line);border-radius:0}.zn-nav--rail .zn-nav-list{align-items:center;gap:var(--space-2);flex-direction:column;height:auto}.zn-nav--rail .zn-nav-item{flex-direction:column;justify-content:center;gap:4px;width:64px;min-height:60px}.zn-nav--rail .zn-nav-item.is-active{background:var(--accent-soft)}.zn-nav--sidebar{width:var(--layout-sidebar);height:100%;padding:var(--space-6) var(--space-4);box-shadow:none;border-right:1px solid var(--line);border-radius:0}.zn-nav--sidebar .zn-nav-brand{display:block}.zn-nav--sidebar .zn-nav-list{gap:var(--space-1);flex-direction:column;height:auto}.zn-nav--sidebar .zn-nav-item{gap:var(--space-3);min-height:48px;padding:0 var(--space-3);flex-direction:row;font-size:15px}.zn-nav--sidebar .zn-nav-item.is-active{background:var(--accent-soft);font-weight:600}.zn-nav-pill{z-index:-1;border-radius:var(--radius-md);background:var(--accent-soft);position:absolute;inset:0}.nav-icon .nav-icon-on,.zn-nav-item.is-active .nav-icon .nav-icon-off{display:none}@media (hover:hover) and (pointer:fine){.zn-nav-item:hover .nav-icon .nav-icon-off{display:none}}.zn-nav-item.is-active .nav-icon .nav-icon-on{display:inline}@media (hover:hover) and (pointer:fine){.zn-nav-item:hover .nav-icon .nav-icon-on{display:inline}}.app-side .zn-nav-item,.app-bottom .zn-nav-item{isolation:isolate;position:relative}@media (width>=768px){.zn-nav--auto{width:var(--layout-nav-rail);height:100%;padding:var(--space-6) 0;box-shadow:none;border-right:1px solid var(--line);border-radius:0}.zn-nav--fixed.zn-nav--auto{height:100dvh;position:sticky;top:0}.zn-nav--auto .zn-nav-list{align-items:center;gap:var(--space-2);flex-direction:column;height:auto}.zn-nav--auto .zn-nav-item{width:64px;min-height:60px}}@media (width>=1024px){.zn-nav--auto{width:var(--layout-sidebar);padding:var(--space-6) var(--space-4)}.zn-nav--auto .zn-nav-brand{display:block}.zn-nav--auto .zn-nav-list{align-items:stretch;gap:var(--space-1)}.zn-nav--auto .zn-nav-item{gap:var(--space-3);width:auto;min-height:48px;padding:0 var(--space-3);flex-direction:row;font-size:15px}.zn-nav--auto .zn-nav-item.is-active{font-weight:600}}.zn-shell{min-height:100%;max-width:var(--layout-content-max);margin:0 auto}.zn-shell-main{min-width:0;padding:var(--space-4) var(--space-4) calc(var(--layout-nav-bar) + var(--space-6));box-sizing:border-box}.zn-shell-aside{display:none}.zn-shell--rail{grid-template-columns:var(--layout-nav-rail) 1fr;display:grid}.zn-shell--rail .zn-shell-main{padding:var(--space-6)}.zn-shell--sidebar{grid-template-columns:var(--layout-sidebar) 1fr;display:grid}.zn-shell--sidebar.has-aside{grid-template-columns:var(--layout-sidebar) 1fr var(--layout-detail)}.zn-shell--sidebar .zn-shell-main{padding:var(--space-8)}.zn-shell--sidebar .zn-shell-aside{padding:var(--space-8) var(--space-6);border-left:1px solid var(--line);background:var(--surface);display:block}@media (width>=768px){.zn-shell--auto{grid-template-columns:var(--layout-nav-rail) 1fr;display:grid}.zn-shell--auto .zn-shell-main{padding:var(--space-6)}}@media (width>=1024px){.zn-shell--auto{grid-template-columns:var(--layout-sidebar) 1fr}.zn-shell--auto.has-aside{grid-template-columns:var(--layout-sidebar) 1fr var(--layout-detail)}.zn-shell--auto .zn-shell-main{padding:var(--space-8)}.zn-shell--auto .zn-shell-aside{padding:var(--space-8) var(--space-6);border-left:1px solid var(--line);background:var(--surface);display:block}}html{scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent}.zn-scroll{scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent;scrollbar-gutter:stable;overscroll-behavior:contain;overflow:auto}@media (hover:hover) and (pointer:fine){.zn-scroll:hover{scrollbar-color:var(--accent) transparent}}::-webkit-scrollbar{width:12px;height:12px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background-color:var(--line-strong);border-radius:var(--radius-full);background-clip:padding-box;border:3px solid #0000;min-height:40px}::-webkit-scrollbar-thumb:hover{background-color:var(--accent)}::-webkit-scrollbar-thumb:active{background-color:var(--accent)}::-webkit-scrollbar-corner{background:0 0}.zn-scroll-x-hidden{scrollbar-width:none;scroll-snap-type:x proximity;touch-action:pan-y;overscroll-behavior-x:contain;overflow-x:auto}.zn-scroll-x-hidden::-webkit-scrollbar{display:none}.zn-btn--primary:active{filter:brightness(.95)}.zn-btn.is-loading{cursor:progress;opacity:.8}.zn-btn:disabled:active{transform:none}.zn-spinner{box-sizing:border-box;border:2px solid;border-right-color:#0000;border-radius:50%;width:16px;height:16px;animation:.8s linear infinite zn-spin}@keyframes zn-spin{to{transform:rotate(360deg)}}.zn-chip:disabled,.zn-switch:disabled,.zn-icon-btn:disabled,.zn-date:disabled{opacity:.45;cursor:not-allowed}@media (hover:hover) and (pointer:fine){.zn-chip:disabled:hover{background:0 0}.zn-chip.is-selected:hover{filter:brightness(1.05);background:var(--accent)}}.zn-input:disabled{opacity:.5;cursor:not-allowed}@media (hover:hover) and (pointer:fine){.zn-task:hover{background:var(--surface-raised)}.zn-check:hover{border-color:var(--accent)}.zn-date:not(.is-selected):hover{background:var(--line)}.zn-btn--danger:hover{background:var(--danger-soft);filter:none}}.zn-btn--danger-solid{background:var(--danger);color:var(--on-danger)}@media (hover:hover) and (pointer:fine){.zn-btn--danger-solid:hover{filter:brightness(1.06)}}.zn-alert{align-items:flex-start;gap:var(--space-3);padding:14px 8px 14px var(--space-4);color:var(--ink);border:1px solid;border-radius:16px;font-size:14px;line-height:20px;display:flex}.zn-alert-icon{padding-top:1px;display:inline-flex}.zn-alert-body{flex:1;min-width:0}.zn-alert-title{font-weight:600;display:block}.zn-alert .zn-btn{margin:-6px 0}.zn-alert--danger{background:var(--danger-soft);border-color:var(--danger)}.zn-alert--danger .zn-alert-icon{color:var(--danger)}.zn-alert--warning{background:var(--accent-soft);border-color:var(--accent-ink)}.zn-alert--warning .zn-alert-icon{color:var(--accent-ink)}.zn-alert--success{background:var(--surface);border-color:var(--success)}.zn-alert--success .zn-alert-icon{color:var(--success)}.zn-alert--info{background:var(--surface);border-color:var(--line-strong)}.zn-alert--info .zn-alert-icon{color:var(--ink-muted)}.zn-menu{box-sizing:border-box;background:var(--surface-raised);min-width:232px;box-shadow:var(--shadow-float);border-radius:16px;flex-direction:column;padding:6px;display:flex}.zn-menu-item{align-items:center;gap:var(--space-3);width:100%;min-height:44px;padding:0 var(--space-3);font:inherit;color:var(--ink);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:10px;font-size:14px;transition:background .12s ease-out;display:flex}.zn-menu-item:active{background:var(--line)}@media (hover:hover) and (pointer:fine){.zn-menu-item:hover{background:var(--line)}}.zn-menu-item:focus-visible{outline:2px solid var(--ring);outline-offset:-2px}.zn-menu-item:disabled{opacity:.45;cursor:not-allowed}.zn-menu-item.is-danger{color:var(--danger)}@media (hover:hover) and (pointer:fine){.zn-menu-item.is-danger:hover{background:var(--danger-soft)}}.zn-menu-kbd{font:inherit;color:var(--ink-muted);margin-left:auto;font-size:12px}.zn-menu-sep{background:var(--line);height:1px;margin:6px 4px}.zn-dialog{box-sizing:border-box;gap:var(--space-3);width:420px;max-width:100%;padding:var(--space-6);border-radius:var(--radius-xl);background:var(--surface);box-shadow:var(--shadow-float);color:var(--ink);flex-direction:column;display:flex}.zn-dialog-icon{background:var(--danger-soft);width:48px;height:48px;color:var(--danger);border-radius:50%;place-items:center;display:grid}.zn-dialog-icon--accent{background:var(--accent-soft);color:var(--accent-ink)}.zn-dialog-title{margin:4px 0 0;font-size:20px;font-weight:600;line-height:28px}.zn-dialog-text{color:var(--ink-muted);margin:0;font-size:14px;line-height:20px}.zn-dialog-actions{gap:var(--space-2);margin-top:var(--space-2);flex-wrap:wrap;justify-content:flex-end;display:flex}.zn-scrim{background:var(--scrim);position:absolute;inset:0}.zn-dialog--wide{width:520px}.zn-dialog-head{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.zn-dialog-head .zn-dialog-title{margin:0}.zn-dialog-body{gap:var(--space-4);flex-direction:column;display:flex}.zn-sheet{box-sizing:border-box;gap:var(--space-4);padding:var(--space-6);background:var(--surface);color:var(--ink);box-shadow:var(--shadow-float);flex-direction:column;display:flex}.zn-sheet--bottom{border-radius:var(--radius-xl) var(--radius-xl) 0 0;width:100%;padding-top:var(--space-3);max-height:90%}.zn-sheet--right{border-radius:var(--radius-xl) 0 0 var(--radius-xl);width:380px;max-width:100%;height:100%}.zn-sheet-grip{border-radius:var(--radius-full);background:var(--line-strong);align-self:center;width:40px;height:4px}.zn-popover{box-sizing:border-box;min-width:260px;padding:var(--space-4);background:var(--surface-raised);color:var(--ink);box-shadow:var(--shadow-float);gap:var(--space-3);border-radius:20px;flex-direction:column;display:flex}.zn-tooltip-wrap{display:inline-flex;position:relative}.zn-tooltip{white-space:nowrap;background:var(--ink);color:var(--bg);pointer-events:none;border-radius:8px;padding:6px 10px;font-size:12px;font-weight:500;line-height:16px;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)}.zn-tooltip kbd{font:inherit;opacity:.8;margin-left:6px}.zn-swatch{cursor:pointer;border:2px solid #0000;border-radius:50%;width:36px;height:36px;padding:0;box-shadow:inset 0 0 0 1px #1c1d211f}.zn-swatch.is-selected{border-color:var(--ring);box-shadow:inset 0 0 0 3px var(--surface)}.zn-swatch:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.zn-illo{flex:none;display:block}.zn-empty{text-align:center;padding:var(--space-8) var(--space-4);flex-direction:column;align-items:center;gap:8px;display:flex}.zn-empty-title{color:var(--ink);margin:8px 0 0;font-size:17px;font-weight:600;line-height:24px}.zn-empty-text{max-width:300px;color:var(--ink-muted);margin:0;font-size:14px;line-height:20px}.zn-empty-actions{gap:var(--space-2);margin-top:var(--space-2);flex-wrap:wrap;justify-content:center;display:flex}.zn-skeleton{background:var(--surface-raised);border-radius:var(--radius-sm);display:block;position:relative;overflow:hidden}.zn-skeleton:after{content:"";background:linear-gradient(90deg,#0000,#ffffff0f,#0000);animation:1.4s ease-in-out infinite zn-shimmer;position:absolute;inset:0;transform:translate(-100%)}[data-theme=light] .zn-skeleton:after{background:linear-gradient(90deg,#0000,#ffffffb3,#0000)}@keyframes zn-shimmer{to{transform:translate(100%)}}.zn-toast{align-items:center;gap:var(--space-3);box-sizing:border-box;width:100%;max-width:420px;min-height:52px;padding:0 6px 0 var(--space-4);background:var(--surface-raised);color:var(--ink);box-shadow:var(--shadow-float);border-radius:16px;font-size:14px;line-height:20px;animation:.2s ease-out zn-toast-in;display:flex;position:relative;overflow:hidden}.zn-toast-icon{color:var(--ink-muted);display:inline-flex}.zn-toast--success .zn-toast-icon{color:var(--success)}.zn-toast--error{background:var(--danger-soft)}.zn-toast--error .zn-toast-icon{color:var(--danger)}.zn-toast-msg{flex:1;min-width:0}.zn-toast-action{font:inherit;color:var(--accent-ink);cursor:pointer;background:0 0;border:0;border-radius:10px;height:40px;padding:0 12px;font-weight:600}@media (hover:hover) and (pointer:fine){.zn-toast-action:hover{background:var(--accent-soft)}}.zn-toast-action:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.zn-toast-timer{background:var(--accent);transform-origin:0;width:100%;height:3px;animation:linear forwards zn-toast-timer;position:absolute;bottom:0;left:0}.zn-toast--error .zn-toast-timer{background:var(--danger)}@media (hover:hover) and (pointer:fine){.zn-toast:hover .zn-toast-timer{animation-play-state:paused}}.zn-toast:focus-within .zn-toast-timer,.zn-toast:active .zn-toast-timer{animation-play-state:paused}@keyframes zn-toast-timer{0%{transform:scaleX(1)}to{transform:scaleX(0)}}@keyframes zn-toast-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.zn-toaster{gap:var(--space-2);z-index:50;flex-direction:column-reverse;width:min(420px,100% - 32px);display:flex}.zn-toaster--bottom-center{left:50%;bottom:calc(var(--layout-nav-bar) + 16px);position:fixed;transform:translate(-50%)}.zn-toaster--bottom-left{left:calc(var(--layout-sidebar) + 32px);position:fixed;bottom:32px}.zn-toaster--static{position:relative}@media (prefers-reduced-motion:reduce){.zn-btn,.zn-cat,.zn-switch,.zn-switch-thumb,.zn-date,.zn-progress-fill{transition:none}.zn-spinner,.zn-skeleton:after,.zn-toast{animation:none}.zn-toast-timer{animation:none;transform:scaleX(.5)}}.zn-tooltip-anchor{display:contents}.zn-tooltip{z-index:70;border-radius:var(--radius-sm);background:var(--ink);max-width:260px;color:var(--bg);white-space:nowrap;pointer-events:none;box-shadow:var(--shadow-float);align-items:center;gap:8px;padding:6px 10px;font-size:12px;font-weight:500;line-height:16px;animation:.15s ease-out zn-tip-in;display:flex;position:fixed;bottom:auto;transform:none}.zn-tooltip .zn-tooltip-kbd{opacity:1;box-sizing:border-box;border:1px solid var(--line-strong);min-width:18px;height:18px;color:var(--bg);border-radius:6px;place-items:center;margin:0;padding:0 5px;font-family:inherit;font-size:11px;font-weight:600;display:inline-grid}@keyframes zn-tip-in{0%{opacity:0}}@media (prefers-reduced-motion:reduce){.zn-tooltip{animation:none}}.zn-seg{border-radius:var(--radius-full);background:var(--surface-raised);gap:4px;padding:4px;display:inline-flex}.zn-seg-item{border-radius:var(--radius-full);height:36px;color:var(--ink-muted);font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0 12px;font-size:13px;font-weight:500;transition:background .15s ease-out,color .15s ease-out;display:inline-flex;position:relative}.zn-seg-item:active{color:var(--ink)}.zn-seg-item:after{content:"";position:absolute;inset:-4px 0}@media (hover:hover) and (pointer:fine){.zn-seg-item:hover{color:var(--ink)}}.zn-seg-item[aria-pressed=true]{background:var(--accent);color:var(--on-accent);font-weight:600}.zn-seg-item:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.zn-picker{text-align:left;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;min-height:38px;display:block;overflow:hidden}.zn-picker:focus-visible{border-bottom-color:var(--ring);box-shadow:0 1px 0 0 var(--ring)}.zn-picker-ph{color:var(--ink-muted)}.zn-popover{box-sizing:border-box;min-width:260px;max-width:calc(100vw - 24px);padding:var(--space-4);background:var(--surface-raised);color:var(--ink);box-shadow:var(--shadow-float);gap:var(--space-3);max-height:var(--radix-popover-content-available-height);border-radius:20px;outline:0;flex-direction:column;display:flex;overflow-y:auto}*,:before,:after{box-sizing:border-box}html,body{min-height:100%}html{background:var(--bg);background-color:var(--bg);overscroll-behavior:none;-webkit-tap-highlight-color:transparent}body{background:var(--bg);color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;font-synthesis:none;margin:0}button,a,[role=button],summary,label{touch-action:manipulation}button,[role=button],summary,.zn-btn,.zn-chip,.zn-nav-item,.zn-menu-item,.zn-seg-item,.zn-toast-action,.dw-stage,.task-row-actions,.task-action,.note-card-delete,.habit-check,.habit-row-link,.zn-swatch,.quick-add-btn,.folder-card,.folder-tab,.pk-opt,.skip-link{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;background:var(--accent);color:var(--on-accent);border-radius:12px;padding:10px 16px;font-weight:600;text-decoration:none;position:absolute;top:-60px;left:16px}.skip-link:focus{top:16px}.link{color:var(--accent-ink);font-size:13px;font-weight:600;text-decoration:none}@media (hover:hover) and (pointer:fine){.link:hover{text-decoration:underline}}.hide-scroll{scrollbar-width:none}.hide-scroll::-webkit-scrollbar{display:none}.md p{margin:0 0 8px}.md ul,.md ol{margin:0 0 8px;padding-left:20px}.md li.task-list-item{margin-left:-20px;list-style:none}.md a{color:var(--accent-ink)}.md h1,.md h2,.md h3{margin:12px 0 6px;font-size:17px;line-height:24px}@keyframes row-out{to{opacity:0;transform:translate(12px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.app-modal{z-index:60;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.app-modal-panel{overscroll-behavior:contain;background:var(--surface);width:100%;max-height:92vh;color:var(--ink);padding:12px 20px calc(24px + env(safe-area-inset-bottom));box-shadow:var(--shadow-float);border-radius:28px 28px 0 0;flex-direction:column;gap:16px;animation:.25s ease-out sheet-in;display:flex;position:relative;overflow-y:auto}.app-grip{flex-shrink:0;align-self:center}@media (width>=768px){.app-modal{align-items:center}.app-modal-panel{border-radius:28px;width:min(560px,100% - 48px);padding:24px;animation:.2s ease-out dialog-in}.app-grip{display:none}}.app-modal--right{justify-content:flex-end;align-items:stretch}.app-modal--right .app-modal-panel{border-radius:28px 0 0 28px;width:min(400px,100%);height:100%;max-height:none;padding:24px;animation:.25s ease-out right-in}.app-modal--right .app-grip{display:none}@keyframes sheet-in{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:none}}@keyframes dialog-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:none}}@keyframes right-in{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:none}}.app-shell{min-height:100dvh}.app-main{min-width:0;padding:16px 16px calc(var(--layout-nav-bar) + 32px)}.app-side{display:none}@media (width>=768px){.app-shell{grid-template-columns:var(--layout-nav-rail) minmax(0, 1fr);display:grid}.app-main{padding:24px}.app-side{display:flex}}@media (width>=1024px){.app-shell{grid-template-columns:var(--layout-sidebar) minmax(0, 1fr)}.app-main{padding:32px 40px}}.app-content{width:100%;max-width:1120px;margin:0 auto}.app-sidebar-extra{display:none}@media (width>=1024px){.app-sidebar-extra{display:flex}}.app-bottom{z-index:30;transition:transform .28s cubic-bezier(.2,.8,.2,1);position:fixed;bottom:0;left:0;right:0}.app-bottom.is-hidden{transform:translateY(110%)}@media (prefers-reduced-motion:reduce){.app-bottom{transition:none}}@media (width>=768px){.app-bottom{display:none}}.only-phone{display:initial}@media (width>=768px){.only-phone{display:none!important}}.from-tablet{display:none!important}@media (width>=768px){.from-tablet{display:initial!important}}.tasks-layout{display:block}@media (width>=1024px){.tasks-layout{grid-template-columns:minmax(0, 1fr) var(--layout-detail);align-items:start;gap:32px;display:grid}.tasks-layout.detail-only-mobile>.tasks-list{display:block}}.tasks-pane{display:none}@media (width>=1024px){.tasks-pane{background:var(--surface);border-radius:28px;padding:12px 6px 12px 0;display:block;position:sticky;top:32px;overflow:hidden}.tasks-pane-scroll{max-height:calc(100dvh - 88px);padding:12px 12px 12px 24px;overflow-y:auto}.tasks-pane-scroll::-webkit-scrollbar-button{display:none}}@media (width<=1023.98px){.tasks-layout.has-detail>.tasks-list{display:none}.tasks-layout.has-detail>.tasks-detail-mobile{display:block}}.tasks-detail-mobile{display:none}.folder-card{height:160px;color:var(--on-pastel);flex-direction:column;text-decoration:none;transition:transform .15s;display:flex}@media (hover:hover) and (pointer:fine){.folder-card:hover{transform:translateY(-2px)}}.folder-tab{filter:brightness(.88);border-radius:12px 12px 0 0;flex-shrink:0;width:50%;height:16px}.folder-body{border-radius:0 20px 20px;flex-direction:column;flex:1;justify-content:space-between;padding:16px;display:flex}.task-row-exit{animation:.25s ease-in forwards row-out}.home-grid{gap:32px;display:grid}@media (width>=1024px){.home-grid{grid-template-columns:minmax(0,1fr) 320px;align-items:start}}.cards-grid{grid-template-columns:1fr;gap:16px;display:grid}@media (width>=640px){.cards-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.folder-row{scroll-snap-type:x proximity;grid-auto-columns:150px;grid-auto-flow:column;gap:12px;margin-right:-16px;padding-right:16px;display:grid;overflow-x:auto}.folder-row>*{scroll-snap-align:start}@media (width>=768px){.folder-row{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));grid-auto-flow:row;margin:0;padding:0;overflow:visible}}.notes-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}@media (width>=900px){.notes-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}}@media (width>=1280px){.notes-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.zn-toaster{left:50%;bottom:calc(var(--layout-nav-bar) + 16px);z-index:70;position:fixed;transform:translate(-50%)}@media (width>=768px){.zn-toaster{left:calc(var(--layout-nav-rail) + 24px);bottom:24px;transform:none}}@media (width>=1024px){.zn-toaster{left:calc(var(--layout-sidebar) + 32px)}}.folders-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}@media (width>=768px){.folders-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr))}}.profile-grid{gap:20px;display:grid}@media (width>=1024px){.profile-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}}.grow{flex:1}@media (width>=1024px){.app-side .zn-nav-item{justify-content:flex-start!important}}.app-side .zn-nav--auto .app-brand{justify-content:center;align-items:center;gap:10px;padding:4px 0 20px;display:flex!important}@media (width>=1024px){.app-side .zn-nav--auto .app-brand{padding:var(--space-2) var(--space-3) var(--space-6);justify-content:flex-start}}.home-grid.no-aside{grid-template-columns:minmax(0,1fr)!important}@media (width<=1023.98px){.tasks-layout.has-detail>.tasks-list{display:none!important}}.zn-input:focus-visible,.zn-search-input:focus-visible,#quick-add:focus-visible,textarea:focus-visible,#note-title:focus-visible{outline:none}#scratch-body:focus{box-shadow:0 0 0 2px var(--ring)}.confirm-word{color:var(--danger);letter-spacing:.04em;font-weight:700}.app-modal-panel:focus{outline:none}input:-webkit-autofill{-webkit-text-fill-color:var(--ink);caret-color:var(--ink);-webkit-box-shadow:0 0 0 1000px var(--surface-raised) inset;box-shadow:0 0 0 1000px var(--surface-raised) inset;transition:background-color 9999s ease-out}input:-webkit-autofill:hover{-webkit-text-fill-color:var(--ink);caret-color:var(--ink);-webkit-box-shadow:0 0 0 1000px var(--surface-raised) inset;box-shadow:0 0 0 1000px var(--surface-raised) inset;transition:background-color 9999s ease-out}input:-webkit-autofill:focus{-webkit-text-fill-color:var(--ink);caret-color:var(--ink);-webkit-box-shadow:0 0 0 1000px var(--surface-raised) inset;box-shadow:0 0 0 1000px var(--surface-raised) inset;transition:background-color 9999s ease-out}textarea:-webkit-autofill{-webkit-text-fill-color:var(--ink);caret-color:var(--ink);-webkit-box-shadow:0 0 0 1000px var(--surface-raised) inset;box-shadow:0 0 0 1000px var(--surface-raised) inset;transition:background-color 9999s ease-out}select:-webkit-autofill{-webkit-text-fill-color:var(--ink);caret-color:var(--ink);-webkit-box-shadow:0 0 0 1000px var(--surface-raised) inset;box-shadow:0 0 0 1000px var(--surface-raised) inset;transition:background-color 9999s ease-out}@media (width<=767.98px){html{scrollbar-width:none}html::-webkit-scrollbar{display:none}}.splash{z-index:200;background:var(--bg);place-items:center;transition:opacity .4s;display:grid;position:fixed;inset:0}.splash.is-leaving{opacity:0;pointer-events:none}.splash-inner{flex-direction:column;align-items:center;animation:.5s both splash-in;display:flex;position:relative}.splash-name{text-align:center;letter-spacing:-.01em;color:var(--ink);margin-top:6px;font-size:26px;font-weight:700;position:absolute;top:100%;left:-50%;right:-50%}.logo-mark--animated{overflow:visible}.logo-mark--animated .logo-drop{transform-box:fill-box;transform-origin:50% 0;animation:1.9s ease-in infinite honey-drop}@keyframes honey-drop{0%{opacity:0;transform:translateY(-4px)scale(.3)}22%{opacity:1;transform:translateY(0)scale(1)}62%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(20px)scale(1)}}@keyframes splash-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.splash,.splash-inner,.logo-mark--animated .logo-drop{transition:none!important;animation:none!important}}.note-title{font:inherit;color:inherit;background:0 0;border:0;outline:0;width:100%;padding:4px 0;font-size:clamp(22px,4vw,28px);font-weight:700;line-height:1.25}.note-title::placeholder,.note-body::placeholder{color:inherit;opacity:.55}.note-title:focus-visible,.note-body:focus-visible{outline:none}.note-card-editor{transition:box-shadow .2s}.note-card-editor:has(.note-title:focus-visible,.note-body:focus-visible){box-shadow:0 0 0 1.5px var(--line-strong), var(--shadow-card)!important}.note-body{font:inherit;color:inherit;resize:none;background:0 0;border:0;width:100%;padding:0;font-size:16px;line-height:26px;overflow:hidden}.note-mode,.note-tool{font:inherit;cursor:pointer;min-height:44px;color:inherit;background:0 0;border:1px solid;border-radius:9999px;padding:0 16px;font-size:13px;font-weight:600}.note-mode{opacity:.75;border-color:#0000}.note-mode.is-on{background:var(--on-accent);color:var(--accent);opacity:1}.note-mode:focus-visible,.note-tool:focus-visible,.md-check:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.note-swatch-ink{color:var(--ink)}.note-delete{align-self:flex-start}.md{overflow-wrap:anywhere;font-size:16px;line-height:26px}.md>:first-child{margin-top:0}.md>:last-child{margin-bottom:0}.md h1,.md h2,.md h3{margin:20px 0 8px;font-weight:700;line-height:1.25}.md h1{font-size:24px}.md h2{font-size:20px}.md h3{font-size:17px}.md p,.md ul,.md ol,.md blockquote,.md pre{margin:0 0 12px}.md ul,.md ol{padding-left:24px}.md ul{list-style:outside}.md ol{list-style:decimal}.md ul.contains-task-list{padding-left:0;list-style:none}.md li.task-list-item{margin:4px 0;display:block}.md li.task-list-item:has(.md-check.is-on){opacity:.65;text-decoration:line-through}.md-check{vertical-align:middle;width:24px;height:24px;color:inherit;cursor:pointer;background:0 0;border:2px solid;border-radius:8px;place-items:center;margin-right:10px;padding:0;display:inline-grid;position:relative}.md-check:after{content:"";position:absolute;inset:-10px}.md-check.is-on{background:var(--on-accent);border-color:var(--on-accent);color:var(--accent)}.md a{color:inherit;text-decoration:underline}.md code{background:#1c1d211f;border-radius:6px;padding:2px 6px;font-size:.9em}.md pre{background:#1c1d211f;border-radius:12px;padding:12px 14px;overflow-x:auto}.md pre code{background:0 0;padding:0}.md blockquote{opacity:.85;border-left:3px solid;padding-left:14px}.md table{border-collapse:collapse;width:100%;margin-bottom:12px}.md th,.md td{text-align:left;border:1px solid;padding:6px 10px}.phone-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}@media (width>=768px){.phone-header{display:none}}.note-card-delete{cursor:pointer;opacity:.7;background:0 0;border:0;border-radius:10px;place-items:center;width:32px;height:32px;display:grid;position:absolute;top:8px;right:8px}.note-card-delete:after{content:"";position:absolute;inset:-6px}@media (hover:hover) and (pointer:fine){.note-card-delete:hover{opacity:1;background:#00000014}}.note-card-delete:focus-visible{opacity:1;background:#00000014}.note-card:has(.note-card-delete) a>span:first-child{padding-right:24px}.zn-task.task-row{padding-right:12px}.task-row-actions{flex:none;align-items:center;gap:4px;transition:opacity .15s ease-out;display:flex}.task-action.zn-icon-btn{width:36px;height:36px;color:var(--ink-muted);border-radius:12px;text-decoration:none;transition:background .15s ease-out,color .15s ease-out;position:relative}@media (hover:hover) and (pointer:fine){.task-action.zn-icon-btn:hover{background:var(--surface);color:var(--ink)}}.task-action.zn-icon-btn[aria-expanded=true]{background:var(--surface);color:var(--ink)}@media (hover:hover) and (pointer:fine){.task-card .task-action.zn-icon-btn:hover{background:var(--surface-raised)}}.task-card .task-action.zn-icon-btn[aria-expanded=true]{background:var(--surface-raised)}.task-action.zn-icon-btn:after{content:"";position:absolute;inset:-4px}@media (pointer:coarse){.task-row-actions{gap:8px}}@media (hover:hover) and (pointer:fine){.task-row .task-row-actions{opacity:0}.task-row:hover .task-row-actions,.task-row:focus-within .task-row-actions{opacity:1}.task-row:has([aria-expanded=true]) .task-row-actions{opacity:1}}@media (prefers-reduced-motion:reduce){.task-row-actions,.task-action.zn-icon-btn{transition:none}}.task-priority{align-items:center;gap:3px;font-weight:500;display:inline-flex}.task-priority--high{color:var(--danger)}.task-priority--low{color:var(--ink-muted)}.tasks-head{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.tasks-head .zn-seg{margin-left:auto}.task-grid{grid-template-columns:minmax(0,1fr);gap:12px;display:grid}@media (width>=768px){.task-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1024px){.task-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.task-card{border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-card);flex-direction:column;transition:background .15s ease-out;display:flex;position:relative;overflow:hidden}@media (hover:hover) and (pointer:fine){.task-card:hover{background:var(--surface-raised)}}.task-card.is-selected{outline:2px solid var(--accent);outline-offset:-2px}.task-card:has(.task-card-link:focus-visible){outline:2px solid var(--ring);outline-offset:2px}.task-card-band{flex:none;height:8px}.task-card-body{box-sizing:border-box;flex-direction:column;gap:10px;min-height:120px;padding:12px 12px 16px 16px;display:flex}.task-card-top{justify-content:space-between;align-items:center;display:flex}.task-card-top>*{z-index:1;position:relative}.task-card-link{color:var(--ink);-webkit-line-clamp:3;outline:none;-webkit-box-orient:vertical;font-size:15px;font-weight:600;line-height:21px;text-decoration:none;display:-webkit-box;overflow:hidden}.task-card-link:after{content:"";position:absolute;inset:0}.task-card.is-done .task-card-link{color:var(--ink-muted);text-decoration:line-through}.task-card.is-done .zn-check{border-color:var(--accent-edge)}.task-card-meta{color:var(--ink-muted);flex-wrap:wrap;align-items:center;gap:4px 8px;margin-top:auto;font-size:13px;line-height:18px;display:flex}@media (prefers-reduced-motion:reduce){.task-card{transition:none}}.app-modal-panel--alert{text-align:center}.app-modal-panel--alert>.zn-dialog-icon{align-self:center}.app-modal-panel--alert .zn-dialog-head{justify-content:center}.app-modal-panel--alert .zn-dialog-body{text-align:left}.app-modal-panel--alert .zn-dialog-actions{justify-content:center}@media (width<=767.98px){.app-modal-panel--alert .zn-dialog-actions{flex-direction:column}.app-modal-panel--alert .zn-dialog-actions>.zn-btn{width:100%;margin:0}}.quick-add-field{background:var(--surface);border:1px solid var(--line);height:56px;box-shadow:var(--shadow-card);border-radius:9999px;align-items:center;gap:8px;padding:0 8px 0 20px;transition:box-shadow .15s ease-out;display:flex}.quick-add-field:focus-within{border-color:var(--ring);box-shadow:0 0 0 1px var(--ring), var(--shadow-card)}.quick-add-input{min-width:0;height:44px;font:inherit;color:var(--ink);background:0 0;border:0;outline:0;flex:1;font-size:16px}.quick-add-input::placeholder{color:var(--ink-muted)}.quick-add-btn{background:var(--accent);min-width:40px;height:40px;color:var(--on-accent);font:inherit;cursor:pointer;border:0;border-radius:9999px;flex-shrink:0;justify-content:center;align-items:center;gap:6px;padding:0 18px 0 14px;font-size:15px;font-weight:600;display:inline-flex;position:relative}.quick-add-btn:after{content:"";border-radius:inherit;position:absolute;inset:-2px}@media (hover:hover) and (pointer:fine){.quick-add-btn:hover{filter:brightness(1.05)}}.quick-add-btn:focus-visible{outline:2px solid var(--ring);outline-offset:2px}@media (width<=767.98px){.quick-add-btn{width:40px;padding:0}.quick-add-btn-label{display:none}}.quick-add-hint{color:var(--ink-muted);margin:-2px 0 0;padding-left:20px;font-size:13px;line-height:18px;display:none}@media (hover:hover) and (pointer:fine){.quick-add-hint{display:block}}@media (prefers-reduced-motion:reduce){.quick-add-field{transition:none}}.task-priority--pill{border-radius:var(--radius-full);background:var(--surface);padding:4px 10px;font-size:12px;font-weight:600;line-height:16px}.welcome{z-index:65;justify-content:center;align-items:stretch;display:flex;position:fixed;inset:0}.welcome-scrim{display:none;position:fixed}.welcome-panel{background:var(--bg);width:100%;color:var(--ink);padding:calc(40px + env(safe-area-inset-top)) 20px calc(24px + env(safe-area-inset-bottom));flex-direction:column;justify-content:center;animation:.3s ease-out welcome-in;display:flex;position:relative;overflow-y:auto}.welcome-panel:focus{outline:none}.welcome-body{flex-direction:column;gap:24px;width:100%;max-width:440px;margin:0 auto;display:flex}.welcome-intro{flex-direction:column;gap:8px;display:flex}.welcome-text{color:var(--ink-muted);margin:0;font-size:15px;line-height:22px}.welcome-theme{flex-direction:column;gap:8px;display:flex}.welcome-actions{flex-direction:column;gap:8px;margin-top:8px;display:flex}.welcome-go{width:100%}.welcome-caption{color:var(--ink-muted);text-align:center;margin:-8px 0 0;font-size:13px;line-height:18px}@media (width>=768px){.welcome{align-items:center}.welcome-scrim{display:block}.welcome-panel{background:var(--surface);width:min(520px,100% - 48px);max-height:calc(100dvh - 48px);box-shadow:var(--shadow-float);border-radius:28px;padding:32px;animation:.2s ease-out dialog-in}.welcome-actions{flex-direction:row-reverse;justify-content:flex-start}.welcome-go{width:auto}.welcome-caption{text-align:left}}@keyframes welcome-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.welcome-panel{animation:none}}.color-picker{flex-direction:column;gap:8px;display:flex}.color-picker-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.color-picker-swatches{flex-wrap:wrap;gap:10px;display:flex}.color-swatch{width:44px;height:44px;color:var(--on-pastel);place-items:center;display:grid}.color-add{border:1.5px dashed var(--line-strong);background:var(--surface-raised);width:44px;height:44px;color:var(--ink);cursor:pointer;border-radius:50%;place-items:center;padding:0;transition:background-color .15s ease-out;display:grid}@media (hover:hover) and (pointer:fine){.color-add:hover{background:var(--surface);border-style:solid}}.color-add[aria-expanded=true]{background:var(--surface);border-style:solid}.color-add:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.color-popover{width:100%;min-width:0;max-width:360px;margin-top:4px;animation:.15s ease-out color-popover-in}@keyframes color-popover-in{0%{opacity:0;transform:translateY(4px)}}.color-popover-title{margin:0;font-size:15px;font-weight:600;line-height:20px}.color-popover-body{align-items:center;gap:14px;display:flex}.color-preview{width:52px;height:52px;color:var(--on-pastel);box-shadow:inset 0 0 0 1px var(--line);border-radius:50%;flex:none;place-items:center;font-size:17px;font-weight:600;display:grid}.color-popover-slider{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.color-hue{appearance:none;border-radius:var(--radius-full);cursor:pointer;width:100%;height:44px;margin:0;padding:14px 0;background-clip:content-box!important}.color-hue::-webkit-slider-runnable-track{border-radius:var(--radius-full);background:0 0;height:16px}.color-hue::-moz-range-track{border-radius:var(--radius-full);background:0 0;height:16px}.color-hue::-webkit-slider-thumb{appearance:none;background:var(--surface);border:3px solid var(--on-pastel);width:26px;height:26px;box-shadow:0 0 0 2px var(--surface);border-radius:50%;margin-top:-5px}.color-hue::-moz-range-thumb{background:var(--surface);border:3px solid var(--on-pastel);width:20px;height:20px;box-shadow:0 0 0 2px var(--surface);border-radius:50%}.color-hue:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.color-check{color:var(--ink-muted);align-items:center;gap:6px;margin:0;font-size:13px;line-height:18px;display:flex}.color-check svg{color:var(--success)}.color-popover-actions{justify-content:flex-end;gap:8px;display:flex}@media (prefers-reduced-motion:reduce){.color-popover{animation:none}.color-add{transition:none}}.zn-toast .zn-toast-msg{flex-direction:column;gap:1px;padding:10px 0;display:flex}.toast-title{font-weight:600}.toast-detail{color:var(--ink-muted);font-size:13px;font-weight:400;line-height:18px}.zn-toast.zn-toast--rich{border-radius:20px;padding-left:10px}.zn-toaster .zn-toast{animation:none}.toast-badge{border-radius:50%;flex-shrink:0;place-items:center;width:38px;height:38px;display:grid}.toast-badge--check{background:var(--accent);color:var(--on-accent)}.toast-badge--trash{background:var(--surface);color:var(--ink)}.toast-badge--alert{background:var(--danger-soft);color:var(--danger)}.toast-badge--flame{background:var(--peach);color:var(--on-pastel)}.splash.is-flying{pointer-events:none}.app-main.app-enter .app-content{animation:.5s cubic-bezier(.2,.8,.2,1) .12s both app-enter}@keyframes app-enter{0%{opacity:0}to{opacity:1;transform:none}}.app-content{view-transition-name:page}.app-bottom{view-transition-name:app-bottom}::view-transition-group(app-bottom){animation:none}::view-transition-old(app-bottom){mix-blend-mode:normal;animation:none}::view-transition-new(app-bottom){mix-blend-mode:normal;animation:none}::view-transition-old(root){animation:none}::view-transition-new(root){animation:none}@media (prefers-reduced-motion:no-preference){::view-transition-old(page){animation:.16s ease-in both vt-out}::view-transition-new(page){animation:.3s cubic-bezier(.2,.8,.2,1) 60ms both vt-in}}@media (prefers-reduced-motion:no-preference) and (width<=767px){::view-transition-old(page){animation:.12s linear both vt-fade-out}::view-transition-new(page){animation:.2s ease-out both vt-fade-in}}@keyframes vt-fade-out{to{opacity:0}}@keyframes vt-fade-in{0%{opacity:0}}@media (prefers-reduced-motion:reduce){::view-transition-old(page){animation:none}::view-transition-new(page){animation:none}.app-main.app-enter .app-content{animation:none}}@keyframes vt-out{to{opacity:0;transform:translateY(-4px)}}@keyframes vt-in{0%{opacity:0;transform:translateY(10px)}}.tick-honey{pointer-events:none;border-radius:50%;position:absolute;inset:0;overflow:hidden}.tick-honey-wave{width:200%;height:150%;position:absolute;bottom:0;left:0}.tick-honey-full{position:absolute;inset:0}.tick-check{display:block;position:relative}.tick-sparks,.tick-spark-arm{pointer-events:none;width:0;height:0;position:absolute;top:50%;left:50%}.tick-spark-arm{top:0;left:0}.tick-sparks{z-index:1}.tick-spark-arm svg{display:block;overflow:visible}.dw{border-radius:var(--radius-xl);background:var(--surface);flex-direction:column;gap:12px;padding:16px;display:flex;position:relative}.dw-head{justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex;position:relative}.dw-date-btn{border-radius:var(--radius-full);background:var(--surface-raised);min-width:0;height:40px;color:var(--ink);font-family:var(--font-sans);cursor:pointer;border:0;align-items:center;gap:6px;padding:0 12px 0 14px;font-size:15px;font-weight:600;display:flex}.dw-date-btn>span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.dw-date-btn>svg{flex:none}@media (hover:hover) and (pointer:fine){.dw-date-btn:hover{background:var(--line)}}.dw-date-btn:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.dw-head-actions{flex:none;align-items:center;gap:8px;display:flex}.dw-arrow.zn-icon-btn{background:var(--surface-raised);border-radius:12px;width:36px;height:36px}.dw-arrow--prev>svg{transform:rotate(180deg)}.dw-head-actions .dw-arrow{display:none}@media (width>=768px){.dw{padding:20px}.dw-head-actions .dw-arrow{display:grid}}.dw-stage{border-radius:var(--radius-lg);background:var(--bg);perspective:900px;touch-action:pan-y;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;cursor:grab;height:108px;position:relative;overflow:hidden}.dw-stage:active{cursor:grabbing}@media (width>=768px){.dw-stage{height:116px}}.dw-cyl{transform-style:preserve-3d;will-change:transform;position:absolute;top:50%;left:50%}.dw-cyl:focus-visible{outline:none}.dw-card,.dw-end{box-sizing:border-box;border-radius:var(--radius-md);backface-visibility:hidden;height:76px;margin-top:-38px;position:absolute;top:0;left:0}.dw-card{color:var(--ink);cursor:pointer;outline:none;flex-direction:column;justify-content:center;align-items:center;gap:3px;transition:color .18s ease-out;display:flex}.dw-card>span:not(.dw-face){position:relative}.dw-face{border-radius:var(--radius-md);background:var(--surface-raised);transition:transform .18s ease-out,background-color .18s ease-out;position:absolute;inset:0}.dw-card.is-today:not(.is-selected) .dw-face{box-shadow:inset 0 0 0 2px var(--accent-ink)}.dw-card.is-selected{color:var(--on-accent)}.dw-card.is-selected .dw-face{background:var(--accent);box-shadow:inset 0 0 0 1.5px var(--accent-edge);transform:scaleY(1.21)}.dw-card:focus-visible .dw-face{outline:2px solid var(--ring);outline-offset:3px}.dw-day{font-size:18px;font-weight:600;line-height:22px}.dw-wd{opacity:.8;font-size:11px;font-weight:500;line-height:14px}.dw-dot{border-radius:50%;width:5px;height:5px}.dw-card.has-tasks .dw-dot{background:var(--accent-ink)}.dw-card.is-selected.has-tasks .dw-dot{background:var(--on-accent)}.dw-end{border:1.5px dashed var(--line-strong);color:var(--ink-muted);text-align:center;place-items:center;padding:0 10px;font-size:12px;line-height:16px;display:grid}.dw-fade{pointer-events:none;background:linear-gradient(90deg, var(--bg) 0%, transparent 16%, transparent 84%, var(--bg) 100%);position:absolute;inset:0}.dw-stage--flat{perspective:none}.dw-stage--flat .dw-cyl{transform-style:flat;will-change:auto}.dw-cal{box-sizing:border-box;color:var(--ink);background:var(--surface-raised);box-shadow:var(--shadow-float);flex-direction:column;gap:12px;display:flex}.dw-cal--pop{z-index:30;border-radius:var(--radius-lg);transform-origin:0 0;width:344px;padding:16px;position:absolute;top:calc(100% + 8px);left:0}.dw-cal-layer{z-index:60;align-items:flex-end;display:flex;position:fixed;inset:0}.dw-cal--sheet{width:100%;padding:12px 20px calc(20px + env(safe-area-inset-bottom));border-radius:var(--radius-xl) var(--radius-xl) 0 0;background:var(--surface);gap:16px;position:relative}.dw-cal-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.dw-cal-title{margin:0;font-size:17px;font-weight:600;line-height:24px}.dw-cal-nav{gap:8px;display:flex}.dw-cal--sheet .dw-arrow.zn-icon-btn{width:44px;height:44px}.dw-cal-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.dw-cal--sheet .dw-cal-grid{gap:6px}.dw-cal-wd{color:var(--ink-muted);text-align:center;font-size:11px;font-weight:500;line-height:14px}.dw-cal-day{border-radius:var(--radius-sm);height:40px;color:var(--ink);font-family:var(--font-sans);cursor:pointer;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:2px;font-size:14px;font-weight:400;display:flex;position:relative}.dw-cal--sheet .dw-cal-day{height:44px;font-size:15px}@media (hover:hover) and (pointer:fine){.dw-cal-day:hover{background:var(--surface)}.dw-cal--sheet .dw-cal-day:hover{background:var(--surface-raised)}}.dw-cal-day:focus-visible{outline:2px solid var(--ring);outline-offset:1px}.dw-cal-day.is-today{color:var(--accent-ink);box-shadow:inset 0 0 0 1.5px var(--accent-ink);font-weight:600}.dw-cal-day.is-selected{background:var(--accent);color:var(--on-accent);box-shadow:inset 0 0 0 1.5px var(--accent-edge);font-weight:600}@media (hover:hover) and (pointer:fine){.dw-cal-day.is-selected:hover{background:var(--accent);color:var(--on-accent);box-shadow:inset 0 0 0 1.5px var(--accent-edge);font-weight:600}}.dw-cal-dot{border-radius:50%;width:4px;height:4px}.dw-cal-day.has-tasks .dw-cal-dot,.dw-cal-dot.is-legend{background:var(--accent-ink)}.dw-cal-day.is-selected .dw-cal-dot{background:var(--on-accent)}.dw-cal-dot.is-legend{vertical-align:middle;margin-right:4px;display:inline-block}.dw-cal-foot{color:var(--ink-muted);justify-content:space-between;align-items:center;gap:8px;font-size:12px;display:flex}.habit-list{gap:12px;display:grid}@media (width>=1024px){.habit-list{grid-template-columns:repeat(2,minmax(0,1fr))}}.habit-row{border-radius:var(--radius-lg);background:var(--surface);min-height:72px;box-shadow:var(--shadow-card);color:var(--ink);align-items:center;gap:12px;min-width:0;padding:8px 14px;display:flex}.habit-row-link{min-width:0;min-height:44px;color:inherit;border-radius:14px;flex:1;align-items:center;gap:12px;text-decoration:none;display:flex}.habit-row-link:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.habit-row-icon{border:1.5px solid var(--ink);border-radius:50%;flex-shrink:0;place-items:center;width:44px;height:44px;display:grid}.habit-row-icon svg{transition:fill .18s ease-out,stroke .18s ease-out}@media (hover:hover) and (pointer:fine){.habit-row:hover .habit-row-icon svg{fill:var(--accent);stroke:var(--accent-ink)}}.habit-row-link:focus-visible .habit-row-icon svg{fill:var(--accent);stroke:var(--accent-ink)}.habit-row-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.habit-row-name{text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:500;line-height:20px;overflow:hidden}.habit-row-meta{color:var(--ink-muted);align-items:center;gap:8px;min-width:0;font-size:12px;line-height:16px;display:flex}.habit-row-meta>span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.habit-row-streak{color:var(--accent-ink);white-space:nowrap;align-items:center;gap:2px;font-weight:600;display:inline-flex;overflow:hidden}.habit-row.is-archived .habit-row-icon{border-color:var(--line-strong);color:var(--ink-muted)}.habit-check{border:1.5px solid var(--line-strong);width:44px;height:44px;color:var(--on-accent);cursor:pointer;background:0 0;border-radius:50%;flex-shrink:0;place-items:center;padding:0;transition:background-color .18s ease-out,border-color .18s ease-out;display:grid}@media (hover:hover) and (pointer:fine){.habit-check:hover{border-color:var(--accent-edge)}}.habit-check:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.habit-row.is-done .habit-check{background:var(--accent);border-color:var(--accent)}.habit-dots{gap:4px;margin-top:6px;display:flex}.habit-dot{width:18px;height:18px;color:var(--ink-muted);background:var(--surface-raised);border-radius:50%;place-items:center;font-size:10px;font-weight:600;line-height:1;display:grid}.habit-dot.is-off{border:1px dashed var(--line-strong);background:0 0}.habit-dot.is-done{background:var(--accent);color:var(--on-accent);border:0}.habit-dot.is-today{box-shadow:0 0 0 1.5px var(--accent-edge)}.habit-home-row{scroll-snap-type:x proximity;grid-auto-columns:minmax(280px,1fr);grid-auto-flow:column;gap:12px;margin-right:-16px;padding:2px 16px 4px 0;display:grid;overflow-x:auto}.habit-home-row>*{scroll-snap-align:start}@media (width>=768px){.habit-home-row{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));grid-auto-flow:row;margin:0;padding:0;overflow:visible}}.habit-hero-icon{background:var(--accent-soft);border:1.5px solid var(--accent-edge);width:64px;height:64px;color:var(--ink);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.habit-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.habit-stat{border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-card);flex-direction:column;gap:4px;min-width:0;padding:14px;display:flex}.habit-stat-icon{color:var(--accent-ink);display:inline-flex}.habit-stat-value{font-size:20px;font-weight:600;line-height:28px}.habit-stat-label{color:var(--ink-muted);font-size:12px;line-height:16px}.habit-card{border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-card);flex-direction:column;gap:10px;padding:16px;display:flex}.heatmap{grid-template-columns:auto repeat(12,minmax(0,30px));justify-content:start;gap:4px;display:grid}.heatmap-rows,.heatmap-col{grid-template-rows:16px repeat(7,1fr);gap:4px;display:grid}.heatmap-col{min-width:0}.heatmap-rows span,.heatmap-month{color:var(--ink-muted);white-space:nowrap;font-size:11px;line-height:16px}.heatmap-rows span{align-self:center;padding-right:4px}.heatmap-month{overflow:visible}.heatmap-cell{aspect-ratio:1;color:var(--on-accent);border-radius:5px;place-items:center;display:grid}.heatmap-cell.is-done{background:var(--accent)}.heatmap-cell.is-missed{background:var(--surface-raised)}.heatmap-cell.is-off{border:1px dashed var(--line-strong)}.heatmap-cell.is-future{background:0 0}.heatmap-cell.is-before{border:1px solid var(--line)}.heatmap-cell.is-today{box-shadow:0 0 0 2px var(--ring)}.heatmap-legend{color:var(--ink-muted);flex-wrap:wrap;gap:16px;font-size:12px;display:flex}.heatmap-legend>span{align-items:center;gap:6px;display:inline-flex}.heatmap-legend .heatmap-cell{width:16px}@media (prefers-reduced-motion:reduce){.habit-check{transition:none}}.celebrate-canvas{z-index:80;pointer-events:none;position:fixed;inset:0}.celebrate-seal{z-index:80;pointer-events:none;align-content:center;place-items:center;gap:8px;display:grid;position:fixed;inset:0}.celebrate-seal-glow{background:radial-gradient(circle, var(--accent-soft) 0%, var(--bg) 42%, transparent 70%);border-radius:50%;width:340px;height:340px;margin:-170px 0 0 -170px;position:absolute;top:50%;left:50%}.celebrate-seal-mark{width:168px;height:168px;position:relative;overflow:visible}.celebrate-seal-text{color:var(--ink);margin:0;font-size:20px;font-weight:600;line-height:28px;position:relative}.ai-panel{background:var(--surface-raised);border-radius:16px;flex-direction:column;gap:10px;margin-top:8px;padding:14px;display:flex}.ai-panel--idle{background:0 0;align-items:flex-start;padding:0}.ai-panel-title{color:var(--ink);align-items:center;gap:8px;margin:0;font-size:14px;font-weight:600;display:flex}.ai-panel-title svg,.ai-btn svg{color:var(--accent-ink);flex:none}.ai-btn{min-height:44px}.ai-chips{flex-wrap:wrap;gap:8px;display:flex}.zn-chip.ai-chip{text-align:left;white-space:normal;height:auto;min-height:44px;padding-top:8px;padding-bottom:8px}.ai-actions{flex-wrap:wrap;gap:8px;display:flex}.ai-footnote{color:var(--ink-muted);margin:0;font-size:12px;line-height:16px}.ai-row{align-items:flex-start;gap:12px;min-height:44px;display:flex}.ai-row .zn-check{margin-top:11px}.ai-row .zn-check[aria-checked=true]{background:var(--accent);border-color:var(--accent-edge);color:var(--on-accent)}.ai-row-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.ai-row-input{width:100%;min-height:44px;font:inherit;color:var(--ink);border:0;border-bottom:1px solid var(--line);background:0 0;padding:8px 0;font-size:16px}.ai-row-input:focus-visible{border-bottom-color:var(--ring);box-shadow:0 1px 0 var(--ring);outline:none}.ai-row-meta{color:var(--ink-muted);flex-wrap:wrap;gap:12px;font-size:12px;display:flex}.ai-row-meta>span{align-items:center;gap:4px;display:inline-flex}.ai-row-meta .ai-row-high{color:var(--danger)}.offline-banner{z-index:55;left:calc(12px + env(safe-area-inset-left));right:calc(12px + env(safe-area-inset-right));top:calc(12px + env(safe-area-inset-top));background:var(--surface);color:var(--ink);box-shadow:var(--shadow-float);border:1px solid var(--line);border-radius:20px;align-items:center;gap:12px;padding:10px 14px;display:flex;position:fixed}.offline-banner .zn-illo{flex:none;width:56px;height:auto}.offline-banner-text{min-width:0;color:var(--ink-muted);flex-direction:column;flex:1;gap:2px;font-size:13px;line-height:18px;display:flex}.offline-banner-text strong{color:var(--ink);font-size:14px}@media (width<=479px){.offline-banner{flex-wrap:wrap;row-gap:8px}.offline-banner .zn-illo{width:48px}.offline-banner-text{flex-basis:calc(100% - 60px)}.offline-banner .zn-btn{margin-left:60px}}@media (width>=768px){.offline-banner{left:auto;right:calc(24px + env(safe-area-inset-right));top:calc(24px + env(safe-area-inset-top,0px) + env(titlebar-area-height,0px));max-width:480px}}.app-main{padding-top:calc(16px + env(safe-area-inset-top));padding-left:calc(16px + env(safe-area-inset-left));padding-right:calc(16px + env(safe-area-inset-right));padding-bottom:calc(var(--layout-nav-bar) + 32px + env(safe-area-inset-bottom))}.zn-toaster{bottom:calc(var(--layout-nav-bar) + 16px + env(safe-area-inset-bottom))}@media (width>=768px){.app-main{padding:calc(24px + env(safe-area-inset-top)) calc(24px + env(safe-area-inset-right)) calc(24px + env(safe-area-inset-bottom)) 24px}.app-side{padding-top:env(safe-area-inset-top);padding-left:env(safe-area-inset-left);padding-bottom:env(safe-area-inset-bottom)}.zn-toaster{bottom:calc(24px + env(safe-area-inset-bottom))}}@media (width>=1024px){.app-main{padding:calc(32px + env(safe-area-inset-top)) calc(40px + env(safe-area-inset-right)) calc(32px + env(safe-area-inset-bottom)) 40px}}.pwa-titlebar{display:none}@media (display-mode:window-controls-overlay){.pwa-titlebar{z-index:90;top:env(titlebar-area-y,0);left:env(titlebar-area-x,0);width:env(titlebar-area-width,100%);height:env(titlebar-area-height,0);-webkit-app-region:drag;app-region:drag;display:block;position:fixed}.app-main{padding-top:calc(32px + env(titlebar-area-height,0px))}.app-side{padding-top:env(titlebar-area-height,0px)}}.legal{max-width:720px;padding:24px var(--space-4,16px) 64px;color:var(--ink);margin:0 auto;line-height:1.65}.legal h2{margin:28px 0 8px;font-size:18px;font-weight:600}.legal p,.legal li{color:var(--ink-muted)}.legal strong{color:var(--ink);font-weight:600}.legal ul{flex-direction:column;gap:6px;padding-left:20px;list-style:outside;display:flex}.legal a{color:var(--ink);text-underline-offset:3px;text-decoration:underline}.legal-brand{align-items:center;gap:10px;font-size:20px;font-weight:700;display:inline-flex;text-decoration:none!important}.legal-meta{font-size:13px}.pk-body{flex-direction:column;gap:12px;min-width:0;display:flex}.pk-label{color:var(--ink-muted);font-size:13px;font-weight:500;line-height:16px}.pk-chips{flex-wrap:wrap;gap:8px;display:flex}.pk-days{justify-content:space-between;gap:4px;display:flex}.pk-day{box-sizing:border-box;width:40px;height:40px;font:inherit;border:1px solid var(--line-strong);color:var(--ink);cursor:pointer;background:0 0;border-radius:50%;flex-shrink:0;place-items:center;padding:0;font-size:13px;font-weight:600;transition:background-color .15s,border-color .15s;display:grid}.pk-day[aria-checked=true]{background:var(--accent);border:1.5px solid var(--accent-edge);color:var(--on-accent)}.pk-day:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.pk-error{color:var(--danger);margin:0;font-size:12px}.pk-note{background:var(--accent-soft);color:var(--ink);border-radius:16px;align-items:flex-start;gap:10px;padding:12px 14px;display:flex}.pk-note-icon{color:var(--accent-ink);padding-top:2px;display:inline-flex}.pk-note-text{flex-direction:column;gap:2px;font-size:13px;font-weight:500;line-height:19px;display:flex}.pk-note-text small{color:var(--ink-muted);font-size:12px;font-weight:400;line-height:16px}.pk-inline{align-items:flex-end;gap:12px;display:flex}.pk-inline .zn-field{width:96px}.pk-actions{justify-content:flex-end;gap:12px;margin-top:4px;display:flex}.pk-opts{flex-direction:column;gap:2px;margin:0 -6px;display:flex}.pk-opt{min-height:44px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:12px;align-items:center;gap:12px;width:100%;padding:0 12px;font-size:14px;display:flex}@media (hover:hover) and (pointer:fine){.pk-opt:hover{background:var(--line)}}.pk-opt:focus-visible{outline:2px solid var(--ring);outline-offset:-2px}.pk-opt[aria-checked=true]{background:var(--accent-soft);font-weight:600}.pk-opt-main{flex:1;min-width:0}.pk-opt-side{color:var(--ink-muted);font-size:12px;font-weight:400}.pk-opt-check{color:var(--accent-ink);justify-content:center;width:18px;display:inline-flex}.pk-times{flex-wrap:wrap;align-items:flex-end;gap:16px;display:flex}.task-chip{color:var(--ink-muted);white-space:nowrap;align-items:center;gap:4px;display:inline-flex}.task-chip--soft{color:var(--accent-ink);font-weight:600}.task-chip--warn{color:var(--ink-muted)}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}
