:root{color-scheme:light;--font-ui: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-display: "Iowan Old Style", "Palatino Linotype", Palatino, "Book Antiqua", Georgia, serif;--font-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--fs-2xs: .6875rem;--fs-xs: .75rem;--fs-sm: .8125rem;--fs-base: .875rem;--fs-md: 1rem;--fs-lg: 1.125rem;--fs-xl: 1.375rem;--fs-2xl: 1.625rem;--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-xs: 3px;--radius-sm: 5px;--radius-md: 8px;--radius-lg: 12px;--radius-pill: 999px;--dur-1: 90ms;--dur-2: .15s;--dur-3: .22s;--ease: cubic-bezier(.2, 0, 0, 1);--background-image: none;--accent: #a8482a;--accent-text: #a8482a;--accent-strong: #8d3b22;--accent-soft: #f4e4dd;--on-accent: #ffffff;--bg: #f6f4ef;--surface: #fffdf9;--surface-2: #efece4;--surface-3: #e4e0d6;--border: #e2dcd0;--border-strong: #c9c2b3;--text: #1f1d19;--text-soft: #3f3b33;--muted: #6b665c;--danger: #9c2f24;--danger-soft: #f6e3df;--success: #2f6b4f;--shadow-sm: 0 1px 2px rgb(35 33 29 / 6%);--shadow-md: 0 10px 24px -14px rgb(28 26 21 / 34%), 0 1px 3px rgb(28 26 21 / 6%);--shadow-lg: 0 24px 48px -28px rgb(20 19 16 / 42%);--card-radius: 8px;--item-gap: 16px;--font-scale: 1;--sidebar-width: 252px;--background-dim: .82;--card-min: 216px;--content-max: 1120px;--topbar-height: 56px;--icon-block: 36px}:root[data-theme=dark]{color-scheme:dark;--bg: #14130f;--surface: #1c1a16;--surface-2: #24221b;--surface-3: #2d2a22;--border: #302d26;--border-strong: #464137;--text: #f0ece2;--text-soft: #d3cdc0;--muted: #a49c8d;--accent-soft: #37241d;--danger: #e08578;--danger-soft: #3a211d;--success: #86c6a4;--shadow-sm: 0 1px 2px rgb(0 0 0 / 40%);--shadow-md: 0 10px 24px -14px rgb(0 0 0 / 70%);--shadow-lg: 0 28px 56px -30px rgb(0 0 0 / 80%)}:root[data-card-size=sm]{--card-min: 178px}:root[data-card-size=lg]{--card-min: 288px}:root[data-width=wide]{--content-max: 1340px}:root[data-width=full]{--content-max: none}:root[data-icon-size=sm]{--icon-block: 28px}:root[data-icon-size=md]{--icon-block: 36px}:root[data-icon-size=lg]{--icon-block: 44px}*,*:before,*:after{box-sizing:border-box}html{height:100%;font-size:calc(16px * var(--font-scale));-webkit-text-size-adjust:100%}body{margin:0;min-height:100%;font-family:var(--font-ui);font-size:var(--fs-base);line-height:1.55;color:var(--text);background-color:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}:root.has-background body{background-image:var(--background-image, none);background-position:center;background-size:cover;background-attachment:fixed;background-repeat:no-repeat}h1,h2,h3,h4,p,figure,blockquote,dl,dd{margin:0}ul,ol{margin:0;padding:0}img,svg,video,canvas{display:block;max-width:100%}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}a:hover{text-decoration:none}:focus-visible{outline:2px solid var(--accent-text);outline-offset:2px;border-radius:var(--radius-xs)}::selection{background:var(--accent);color:var(--on-accent)}hr{border:none;border-top:1px solid var(--border);margin:var(--space-6) 0}kbd{display:inline-block;min-width:1.35em;padding:1px 5px;border:1px solid var(--border);border-radius:var(--radius-xs);background:var(--surface-2);color:var(--muted);font-family:var(--font-ui);font-size:var(--fs-2xs);font-weight:500;line-height:1.5;text-align:center}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}.skip-link{position:absolute;left:50%;top:-64px;transform:translate(-50%);z-index:200;padding:8px 14px;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-md);box-shadow:var(--shadow-md);font-size:var(--fs-sm);transition:top var(--dur-2) var(--ease)}.skip-link:focus-visible{top:10px}@keyframes stow-fade{0%{opacity:0}}@keyframes stow-rise{0%{opacity:0;transform:translateY(6px)}}@keyframes stow-pop{0%{opacity:0;transform:translateY(4px) scale(.995)}}@keyframes stow-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.sidebar,.view,.dialog-body,.scroll-area,.board-scroll,.note-preview,.choice-scroll{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}#app{min-height:100dvh}.app-shell{display:grid;grid-template-columns:var(--sidebar-width) minmax(0,1fr);height:100dvh;background:var(--bg)}:root.has-background .app-shell{background:color-mix(in srgb,var(--bg) calc(var(--background-dim) * 100%),transparent)}:root[data-sidebar=hidden] .app-shell{grid-template-columns:0 minmax(0,1fr)}:root[data-sidebar=hidden] .sidebar{transform:translate(-100%);visibility:hidden}.app-main{display:flex;flex-direction:column;min-width:0;min-height:0}.sidebar{display:flex;flex-direction:column;padding:0 var(--space-2) var(--space-3);border-right:1px solid var(--border);background:var(--surface);overflow-y:auto;overscroll-behavior:contain;transition:transform var(--dur-3) var(--ease),visibility var(--dur-3) var(--ease)}.brand{display:flex;align-items:center;gap:10px;height:var(--topbar-height);padding:0 var(--space-2);flex:none;color:var(--text)}.brand-mark{display:grid;place-items:center;width:26px;height:26px;flex:none;color:var(--accent-text)}.brand-text{display:flex;align-items:baseline;gap:var(--space-2);min-width:0}.brand-name{font-family:var(--font-display);font-size:1.2rem;font-weight:600;letter-spacing:-.01em;line-height:1}@media(hover:none),(pointer:coarse){.nav-add.icon-btn,.tree-menu.icon-btn{opacity:1;width:30px;height:30px}.nav-link,.tree-link{min-height:40px}.tree-toggle.icon-btn{width:30px;height:32px}.sidebar{padding-inline:var(--space-2)}}.nav-section{display:flex;flex-direction:column;gap:1px;padding:var(--space-2) 0}.nav-section:first-of-type{padding-top:var(--space-1)}.nav-section-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-3) var(--space-2) var(--space-1)}.nav-section-title{font-size:var(--fs-2xs);font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}.nav-add.icon-btn,.tree-menu.icon-btn{width:22px;height:22px;color:var(--muted);opacity:0}.nav-section-head:hover .nav-add,.tree-row:hover .tree-menu,.tree-row:focus-within .tree-menu,.nav-add:focus-visible,.tree-menu:focus-visible{opacity:1}.nav-link{position:relative;display:flex;align-items:center;gap:10px;min-height:30px;padding:4px var(--space-2);border-radius:var(--radius-sm);color:var(--text-soft);font-size:var(--fs-base);transition:background-color var(--dur-1) var(--ease),color var(--dur-1) var(--ease)}.nav-link svg{flex:none;color:var(--muted);transition:color var(--dur-1) var(--ease)}.nav-link:hover{background:var(--surface-2);color:var(--text)}.nav-link.is-active{background:var(--surface-2);color:var(--text);font-weight:500}.nav-link.is-active:before,.tree-row.is-active:before{content:"";position:absolute;left:0;top:7px;bottom:7px;width:2px;border-radius:2px;background:var(--accent-text)}.nav-link.is-active svg{color:var(--accent-text)}.nav-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-count{font-size:var(--fs-2xs);font-variant-numeric:tabular-nums;color:var(--muted);letter-spacing:.01em}.nav-link.is-active .nav-count{color:var(--text-soft)}.nav-empty{padding:2px var(--space-2) var(--space-2);font-size:var(--fs-sm);color:var(--muted)}.folder-tree,.collection-list{display:flex;flex-direction:column;gap:1px}.tree-row{position:relative;display:flex;align-items:center;gap:2px;border-radius:var(--radius-sm);padding-right:2px;transition:background-color var(--dur-1) var(--ease)}.tree-row:hover,.tree-row.is-active{background:var(--surface-2)}.tree-row.is-drop-target{outline:2px dashed var(--accent-text);outline-offset:-2px}.tree-toggle.icon-btn{width:20px;height:24px;color:var(--muted)}.tree-toggle.icon-btn:hover{background:transparent;color:var(--text)}.tree-spacer{width:20px;flex:none}.tree-link{display:flex;align-items:center;gap:9px;flex:1;min-width:0;min-height:30px;padding:3px 2px;font-size:var(--fs-base);color:var(--text-soft)}.tree-row.is-active .tree-link{font-weight:500;color:var(--text)}.tree-icon{display:grid;place-items:center;flex:none;opacity:.9}.tree-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.collection-dot{width:7px;height:7px;border-radius:50%;flex:none;margin-inline:5px}.sidebar-footer{margin-top:auto;padding-top:var(--space-2);border-top:1px solid var(--border);display:flex;flex-direction:column;gap:1px}.sidebar-backdrop{display:none}.topbar{position:relative;display:flex;align-items:center;gap:var(--space-2);min-height:var(--topbar-height);padding:0 var(--space-5);border-bottom:1px solid var(--border);background:var(--surface);z-index:20}.topbar-search{position:relative;display:flex;align-items:center;flex:1;max-width:420px}.topbar-search-icon{position:absolute;left:10px;color:var(--muted);pointer-events:none;transition:color var(--dur-1) var(--ease)}.topbar-search-input{width:100%;height:32px;padding:0 34px 0 32px;border:1px solid transparent;border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text);font-size:var(--fs-base);transition:border-color var(--dur-2) var(--ease),background-color var(--dur-2) var(--ease),box-shadow var(--dur-2) var(--ease)}.topbar-search-input::placeholder{color:var(--muted)}.topbar-search-input:hover{border-color:var(--border)}.topbar-search-input:focus{outline:none;border-color:var(--accent-text);background:var(--surface);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 14%,transparent)}.topbar-search:focus-within .topbar-search-icon{color:var(--accent-text)}.topbar-search-key{position:absolute;right:7px;pointer-events:none}.topbar-search-input:focus~.topbar-search-key{display:none}.topbar-actions{display:flex;align-items:center;gap:2px;margin-left:auto}.offline-banner{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-5);background:var(--surface-2);color:var(--text-soft);font-size:var(--fs-sm);border-bottom:1px solid var(--border)}.offline-banner[hidden]{display:none}.offline-banner svg{color:var(--muted)}.selection-bar{position:relative;display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;padding:6px var(--space-5);border-bottom:1px solid var(--border);background:var(--surface-2);z-index:15;animation:stow-rise var(--dur-2) var(--ease)}.selection-bar[hidden]{display:none}.selection-count{font-size:var(--fs-sm);font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}.selection-actions{display:flex;align-items:center;gap:2px;flex-wrap:wrap}.selection-actions .btn{min-height:28px;padding:2px var(--space-2);border-color:transparent;background:transparent;color:var(--text-soft);font-size:var(--fs-sm)}.selection-actions .btn:hover{background:var(--surface-3);color:var(--text)}.selection-actions .btn-danger{color:var(--danger)}.selection-actions .btn-danger:hover{background:var(--danger-soft)}.view{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:var(--space-8) var(--space-8) var(--space-12);position:relative}.view:focus-visible{outline:none}.view.is-file-dragover:after{content:"";position:fixed;inset:0;pointer-events:none;box-shadow:inset 0 0 0 2px var(--accent-text)}.view.is-entering>.page{animation:stow-fade var(--dur-2) var(--ease)}.page{width:100%;max-width:var(--content-max);margin:0 auto;display:flex;flex-direction:column;gap:var(--space-6)}@media(max-width:1100px){.view{padding:var(--space-6) var(--space-6) var(--space-12)}}@media(max-width:900px){.app-shell,:root[data-sidebar] .app-shell{grid-template-columns:minmax(0,1fr)}.sidebar{position:fixed;inset:0 auto 0 0;width:min(82vw,300px);z-index:60;transform:translate(-100%);visibility:hidden;box-shadow:var(--shadow-lg)}.app-shell.sidebar-open .sidebar{transform:translate(0);visibility:visible}.app-shell.sidebar-open .sidebar-backdrop{display:block;position:fixed;inset:0;z-index:50;background:#14131066;border:none;animation:stow-fade var(--dur-2) var(--ease)}:root[data-sidebar=hidden] .sidebar{transform:translate(-100%);visibility:hidden}.view{padding:var(--space-5) var(--space-4) var(--space-12)}.topbar{padding:0 var(--space-3)}.topbar-search{max-width:none}.topbar-search-key{display:none}.selection-bar{padding:6px var(--space-3)}}@media(max-width:560px){.topbar{gap:var(--space-1);padding:0 var(--space-2)}.topbar-shortcuts{display:none}.topbar-actions{gap:0}.topbar-add .btn-label{display:none}.topbar-add.btn{width:32px;padding:0}.selection-bar{align-items:flex-start;gap:var(--space-2)}.selection-actions{width:100%;overflow-x:auto;flex-wrap:nowrap;padding-bottom:2px;scrollbar-width:none}.selection-actions::-webkit-scrollbar{display:none}.selection-actions .btn{flex:none}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:32px;padding:4px var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);font-size:var(--fs-base);font-weight:500;line-height:1.2;white-space:nowrap;transition:background-color var(--dur-1) var(--ease),border-color var(--dur-1) var(--ease),color var(--dur-1) var(--ease)}.btn:hover{background:var(--surface-2);border-color:var(--border-strong)}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.btn svg{flex:none;color:var(--muted);transition:color var(--dur-1) var(--ease)}.btn:hover svg{color:var(--text-soft)}.btn-primary{border-color:var(--accent-strong);background:var(--accent);color:var(--on-accent)}.btn-primary svg,.btn-primary:hover svg{color:currentColor}.btn-primary:hover{background:var(--accent-strong);border-color:var(--accent-strong)}.btn-secondary{border-color:var(--border);background:var(--surface)}.btn-secondary:hover{background:var(--surface-2);border-color:var(--border-strong)}.btn-ghost{border-color:transparent;background:transparent;color:var(--text-soft)}.btn-ghost:hover{background:var(--surface-2);color:var(--text)}.btn-danger{border-color:var(--border);background:transparent;color:var(--danger)}.btn-danger svg{color:var(--danger)}.btn-danger:hover{background:var(--danger-soft);border-color:color-mix(in srgb,var(--danger) 35%,transparent)}.btn-small{min-height:28px;padding:2px 10px;font-size:var(--fs-sm)}.icon-btn{display:inline-grid;place-items:center;width:32px;height:32px;padding:0;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--text-soft);transition:background-color var(--dur-1) var(--ease),color var(--dur-1) var(--ease)}.icon-btn:hover{background:var(--surface-2);color:var(--text)}.icon-btn.is-active,.icon-btn[aria-pressed=true]{background:var(--accent-soft);color:var(--accent-text)}.icon-btn:disabled{opacity:.4;cursor:not-allowed}.button-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.footer-start{margin-right:auto}.field{display:flex;flex-direction:column;gap:5px;min-width:0}.field-switch{gap:0}.field-label{font-size:var(--fs-sm);font-weight:500;color:var(--text-soft)}.field-label-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.field-optional{margin-left:4px;font-weight:400;color:var(--muted)}.field-message{font-size:var(--fs-xs);color:var(--muted);line-height:1.45}.field-message.is-error{color:var(--danger)}.field.has-error .input,.field.has-error .textarea,.field.has-error .select{border-color:var(--danger)}.input,.textarea,.select{width:100%;min-height:32px;padding:5px 10px;border:1px solid var(--border-strong);border-radius:var(--radius-xs);background:var(--surface);color:var(--text);font-size:var(--fs-base);transition:border-color var(--dur-2) var(--ease),box-shadow var(--dur-2) var(--ease)}.textarea{min-height:76px;resize:vertical;line-height:1.55}.input:hover,.textarea:hover,.select:hover{border-color:var(--border-strong)}.input:focus,.textarea:focus,.select:focus{outline:none;border-color:var(--accent-text);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 13%,transparent)}.input::placeholder,.textarea::placeholder,.tag-input-field::placeholder{color:var(--muted);opacity:1}.select{appearance:none;padding-right:28px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236b665c' stroke-width='1.8' stroke-linecap='round'%3E%3Cpath d='m5 9 7 7 7-7'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;background-size:14px}:root[data-theme=dark] .select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a49c8d' stroke-width='1.8' stroke-linecap='round'%3E%3Cpath d='m5 9 7 7 7-7'/%3E%3C/svg%3E")}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:var(--space-3)}.switch-field{position:relative;display:flex;align-items:center;gap:var(--space-4);min-height:40px;padding:var(--space-2) 0;cursor:pointer}.switch-text{display:flex;flex-direction:column;gap:1px;flex:1;min-width:0}.switch-label{font-size:var(--fs-base);font-weight:400;color:var(--text)}.switch-description{font-size:var(--fs-xs);color:var(--muted);line-height:1.45}.switch{position:relative;flex:none;width:34px;height:20px;border-radius:var(--radius-pill);border:1px solid var(--border-strong);background:var(--surface-3);transition:background-color var(--dur-2) var(--ease),border-color var(--dur-2) var(--ease)}.switch:after{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:var(--surface);box-shadow:var(--shadow-sm);transition:transform var(--dur-2) var(--ease)}.switch-field:hover .switch{border-color:var(--text-soft)}.switch-field input{position:absolute;width:1px;height:1px;margin:0;padding:0;border:0;opacity:0;overflow:hidden;clip-path:inset(50%)}.switch-field input:checked~.switch{background:var(--accent);border-color:var(--accent-strong)}.switch-field input:checked~.switch:after{transform:translate(14px)}.switch-field input:focus-visible~.switch{outline:2px solid var(--accent-text);outline-offset:2px}.segmented{display:inline-flex;flex-wrap:wrap;gap:1px;padding:2px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2)}.segmented-input{position:absolute;opacity:0;width:1px;height:1px}.segmented-option{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:var(--radius-xs);font-size:var(--fs-sm);color:var(--muted);cursor:pointer;transition:background-color var(--dur-1) var(--ease),color var(--dur-1) var(--ease)}.segmented-option svg{color:currentColor}.segmented-option:hover{color:var(--text)}.segmented-input:checked+.segmented-option{background:var(--surface);color:var(--text);font-weight:500;box-shadow:var(--shadow-sm)}.segmented-input:focus-visible+.segmented-option{outline:2px solid var(--accent-text);outline-offset:1px}.range-wrap{display:flex;align-items:center;gap:var(--space-2)}.range{flex:1;height:20px;accent-color:var(--accent-text)}.range-output{min-width:2.8rem;text-align:right;font-size:var(--fs-xs);font-variant-numeric:tabular-nums;color:var(--muted)}.tag-input{display:flex;flex-wrap:wrap;align-items:center;gap:4px;min-height:34px;padding:3px 6px;border:1px solid var(--border-strong);border-radius:var(--radius-xs);background:var(--surface);transition:border-color var(--dur-2) var(--ease),box-shadow var(--dur-2) var(--ease)}.tag-input:focus-within{border-color:var(--accent-text);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 13%,transparent)}.tag-input-field{flex:1;min-width:90px;min-height:24px;border:none;background:transparent;font-size:var(--fs-base)}.tag-input-field:focus{outline:none}.tag-chips{display:contents}.tag-chip{display:inline-flex;align-items:center;gap:2px;padding:1px 8px;border-radius:var(--radius-pill);background:var(--surface-2);color:var(--text-soft);font-size:var(--fs-xs);line-height:1.6;white-space:nowrap}.tag-remove.icon-btn{width:16px;height:16px;color:var(--muted)}.tag-remove.icon-btn:hover{background:var(--border);color:var(--text)}.color-field{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.color-swatches{display:flex;flex-wrap:wrap;gap:6px}.color-swatch{width:20px;height:20px;padding:0;border:2px solid transparent;border-radius:50%;box-shadow:inset 0 0 0 1px #00000024;transition:transform var(--dur-1) var(--ease),box-shadow var(--dur-1) var(--ease)}.color-swatch:hover{transform:scale(1.1)}.color-swatch[aria-pressed=true],.color-swatch.is-active{box-shadow:inset 0 0 0 1px #00000024,0 0 0 2px var(--surface),0 0 0 3px var(--text)}.color-custom{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-xs);color:var(--muted);cursor:pointer;font-variant-numeric:tabular-nums}.color-input{width:24px;height:20px;padding:0;border:1px solid var(--border);border-radius:var(--radius-xs);background:none;cursor:pointer}.color-dot{width:7px;height:7px;border-radius:50%;flex:none}.checkbox-list,.checklist{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:var(--radius-sm);max-height:320px;overflow-y:auto}.checkbox-list-item,.checklist-row{display:flex;align-items:center;gap:10px;padding:7px 10px;font-size:var(--fs-base);border-bottom:1px solid var(--border);cursor:pointer;transition:background-color var(--dur-1) var(--ease)}.checkbox-list-item:last-child,.checklist-row:last-child{border-bottom:none}.checkbox-list-item:hover,.checklist-row:hover{background:var(--surface-2)}.checkbox-list-item input,.checklist-row input{accent-color:var(--accent-text);width:14px;height:14px;flex:none}.checklist-icon{display:grid;place-items:center;color:var(--muted)}.checklist-text{min-width:0;flex:1}.checklist-title{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.checklist-row.is-done .checklist-title{text-decoration:line-through;color:var(--muted)}.empty-state{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2);max-width:42ch;padding:var(--space-8) 0 var(--space-12)}.empty-icon{display:grid;place-items:center;color:var(--muted);margin-bottom:2px}.empty-title{font-family:var(--font-display);font-size:var(--fs-xl);font-weight:600;letter-spacing:-.01em;line-height:1.25}.empty-body{color:var(--muted);font-size:var(--fs-sm);line-height:1.55}.empty-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin-top:var(--space-2)}.toolbar{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;min-height:30px}.toolbar-group{display:flex;align-items:center;gap:2px;flex-wrap:wrap}.toolbar-right{margin-left:auto}.toolbar-select{min-height:28px;max-width:15rem;padding:2px 22px 2px 8px;border:1px solid transparent;border-radius:var(--radius-sm);background-color:transparent;color:var(--text-soft);font-size:var(--fs-sm);appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236b665c' stroke-width='1.8' stroke-linecap='round'%3E%3Cpath d='m5 9 7 7 7-7'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 6px center;background-size:13px;cursor:pointer;text-overflow:ellipsis;transition:background-color var(--dur-1) var(--ease),border-color var(--dur-1) var(--ease),color var(--dur-1) var(--ease)}:root[data-theme=dark] .toolbar-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a49c8d' stroke-width='1.8' stroke-linecap='round'%3E%3Cpath d='m5 9 7 7 7-7'/%3E%3C/svg%3E")}.toolbar-select:hover{background-color:var(--surface-2);border-color:var(--border);color:var(--text)}.toolbar-select:focus-visible{outline:2px solid var(--accent-text);outline-offset:1px}.toolbar-count{font-size:var(--fs-xs);color:var(--muted);padding-inline:var(--space-1);font-variant-numeric:tabular-nums;white-space:nowrap}.toolbar .icon-btn{width:28px;height:28px}.items{display:grid;gap:var(--item-gap)}.items-grid,.items-compact{grid-template-columns:repeat(auto-fill,minmax(min(100%,var(--card-min)),1fr))}.items-grid{align-items:stretch}.items-list{grid-template-columns:minmax(0,1fr);gap:0;border-top:1px solid var(--border)}.items-gallery{grid-template-columns:repeat(auto-fill,minmax(min(100%,190px),1fr));align-items:start}.item{position:relative;display:flex;flex-direction:column;min-width:0;border:1px solid var(--border);border-radius:var(--card-radius);background:var(--surface);transition:border-color var(--dur-2) var(--ease),box-shadow var(--dur-2) var(--ease),transform var(--dur-2) var(--ease),background-color var(--dur-2) var(--ease)}:root[data-hover=lift] .item:hover{border-color:var(--border-strong);transform:translateY(-1px)}.item:has(.item-check:checked){border-color:var(--accent-text);box-shadow:0 0 0 1px var(--accent-text) inset}.item.is-selectable .item-media{cursor:pointer}.item.is-dragging{opacity:.5}.item.drop-before{box-shadow:0 -2px 0 0 var(--accent-text)}.item.drop-after{box-shadow:0 2px 0 0 var(--accent-text)}.item-open{display:block;width:100%;flex:1;min-width:0;padding:0;border:none;background:none;color:inherit;text-align:left;font:inherit}.item-open:hover .item-title-text{color:var(--accent-text)}.item-title .item-flags{margin-top:1px}.item-media{position:relative;flex:none;overflow:hidden;border-radius:calc(var(--card-radius) - 1px) calc(var(--card-radius) - 1px) 0 0;background:var(--surface-2)}.item-grid .item-media{aspect-ratio:16 / 10}.item-gallery .item-media{aspect-ratio:4 / 3}.item-thumb,.item-thumb .blob-img{width:100%;height:100%}.item-thumb img{width:100%;height:100%;object-fit:cover}.item-favicon{display:grid;place-items:center;width:100%;height:100%;padding:var(--space-2)}.item-favicon .blob-img{width:auto;height:auto;max-width:40px;max-height:40px;border-radius:var(--radius-sm);padding:4px;background:var(--surface);border:1px solid var(--border);object-fit:contain}.item-list .item-favicon .blob-img{max-width:26px;max-height:26px;padding:2px;border-radius:var(--radius-xs)}.image-placeholder{position:absolute;inset:0;display:grid;place-items:center;color:var(--border-strong);pointer-events:none}.is-loaded .image-placeholder,.is-missing .image-placeholder{display:none}.is-missing:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(135deg,transparent 0 7px,color-mix(in srgb,var(--border) 60%,transparent) 7px 8px);opacity:.5}.blob-img{opacity:0;transition:opacity var(--dur-3) var(--ease)}.is-loaded>.blob-img,.is-loaded .blob-img{opacity:1}@media(prefers-reduced-motion:reduce){.blob-img{transition:none}}.item-media.placeholder{display:grid;place-items:center}.item-icon{display:grid;place-items:center;width:var(--icon-block);height:var(--icon-block);border-radius:var(--radius-sm);color:var(--muted)}.item-monogram{display:grid;place-items:center;width:var(--icon-block);height:var(--icon-block);border-radius:var(--radius-sm);color:#fff;font-family:var(--font-display);font-size:var(--fs-md);font-weight:600}.item-domain{position:absolute;left:8px;bottom:8px;max-width:calc(100% - 16px);padding:1px 6px;border-radius:var(--radius-xs);background:color-mix(in srgb,var(--surface) 88%,transparent);color:var(--muted);font-size:var(--fs-2xs);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.item-flags{display:inline-flex;align-items:center;gap:4px;color:var(--muted);flex:none}.item-flags svg{display:block}.item-flag-favorite{color:var(--accent-text)}.item-body{display:flex;flex-direction:column;gap:3px;min-width:0;padding:10px 12px 11px}.item-title{display:flex;align-items:flex-start;gap:6px;font-size:var(--fs-base);font-weight:500;line-height:1.4;letter-spacing:-.003em}.item-title-text{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-width:0;transition:color var(--dur-1) var(--ease)}.item-description,.item-excerpt{font-size:var(--fs-xs);color:var(--muted);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}:root[data-descriptions=off] .item-description,:root[data-descriptions=off] .item-excerpt{display:none}.item-meta{display:flex;align-items:center;gap:5px;flex-wrap:wrap;margin-top:1px;font-size:var(--fs-2xs);color:var(--muted);letter-spacing:.005em}.meta-item{display:inline-flex;align-items:center;gap:4px;min-width:0}.meta-folder:before{content:"·";margin-right:1px}.item-tags{display:flex;flex-wrap:wrap;gap:6px;font-size:var(--fs-2xs);color:var(--muted)}.item-tags .tag-chip{padding:0;background:none;color:var(--muted);font-size:var(--fs-2xs)}.item-tags .tag-chip+.tag-chip:before{content:"·";margin-right:5px;color:var(--border-strong)}:root[data-tags=off] .item-tags{display:none}.tag-more{color:var(--muted)}.item-menu.icon-btn{position:absolute;top:6px;right:6px;z-index:2;width:26px;height:26px;background:color-mix(in srgb,var(--surface) 90%,transparent);border:1px solid transparent;color:var(--text-soft);opacity:0;transition:opacity var(--dur-1) var(--ease),background-color var(--dur-1) var(--ease)}.item:hover .item-menu,.item:focus-within .item-menu,.item-menu:focus-visible{opacity:1}.item-menu.icon-btn:hover{background:var(--surface);border-color:var(--border)}.item-select{position:absolute;top:8px;left:8px;z-index:3;display:grid;place-items:center;width:20px;height:20px;border-radius:var(--radius-xs);background:color-mix(in srgb,var(--surface) 90%,transparent);border:1px solid var(--border)}.item-select[hidden]{display:none}.item-check{width:13px;height:13px;accent-color:var(--accent-text)}.item-list{flex-direction:row;align-items:center;gap:var(--space-3);padding:10px 8px;border:none;border-bottom:1px solid var(--border);border-radius:0;background:transparent}.item-list:hover{background:color-mix(in srgb,var(--surface) 65%,transparent)}:root[data-hover=lift] .item-list:hover{transform:none}.items-list .item:last-child{border-bottom:none}.item-list .item-media{width:52px;height:42px;border-radius:var(--radius-xs);flex:none;background:var(--surface-2)}.item-list .item-media.mini{width:34px;height:34px;background:transparent}.item-list .item-body{display:grid;grid-template-columns:minmax(0,1fr) 8rem;align-items:baseline;gap:var(--space-3);padding:0;flex:1}.item-list .item-meta{justify-content:flex-end;flex-wrap:nowrap;margin-top:0;white-space:nowrap;overflow:hidden}.item-list .item-title{font-size:var(--fs-base)}.item-list .item-title-text{-webkit-line-clamp:1}.item-list .item-menu,.item-compact .item-menu{position:static;opacity:1;margin-left:auto;background:transparent;border-color:transparent}.item-list .item-select,.item-compact .item-select{position:static;order:3;background:transparent;border-color:transparent}.item-compact{flex-direction:row;align-items:center;gap:10px;min-height:32px;padding:4px 6px;border:none;border-radius:var(--radius-xs);background:transparent}.item-compact:hover{background:var(--surface-2)}:root[data-hover=lift] .item-compact:hover{transform:none}.item-compact .item-media{width:auto;height:auto;background:transparent;border-radius:0}.item-compact .item-media.mini{width:16px;height:16px}.item-mini-icon{display:grid;place-items:center;color:var(--muted)}.item-compact .item-body{padding:0;flex:1;flex-direction:row;align-items:baseline;gap:var(--space-2)}.item-compact .item-title{font-size:var(--fs-sm);font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.item-compact .item-title-text{-webkit-line-clamp:1}.item-compact .item-meta,.item-compact .item-tags{display:none}.item-gallery{padding:0;border-color:transparent;background:transparent}.item-gallery .item-media{border-radius:var(--radius-sm);background:var(--surface-2)}.item-gallery .item-body{padding:8px 2px 0}.item-gallery .item-description,.item-gallery .item-excerpt{display:none}.listing{display:flex;flex-direction:column;gap:var(--space-4)}.listing-footer{display:flex;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-3) 0 0;flex-wrap:wrap}.listing-count{font-size:var(--fs-xs);color:var(--muted);font-variant-numeric:tabular-nums}.page-head{display:flex;flex-direction:column;gap:var(--space-3)}.page-head-row{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.page-head-text{display:flex;flex-direction:column;gap:3px;min-width:0}.page-title{display:flex;align-items:center;gap:var(--space-2);font-family:var(--font-display);font-size:var(--fs-xl);font-weight:600;line-height:1.2;letter-spacing:-.015em}.page-subtitle{color:var(--muted);font-size:var(--fs-sm);max-width:60ch}.page-actions{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.breadcrumbs{display:flex;align-items:center;gap:4px;flex-wrap:wrap;font-size:var(--fs-xs);color:var(--muted);margin-bottom:-4px}.crumb{transition:color var(--dur-1) var(--ease)}.crumb:hover{color:var(--text)}.crumb-current{color:var(--text-soft)}.crumb-sep{display:grid;place-items:center;opacity:.55}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;padding-bottom:2px}.section-title{display:flex;align-items:baseline;gap:var(--space-2);font-family:var(--font-display);font-size:var(--fs-lg);font-weight:600;letter-spacing:-.01em}.section-count{font-family:var(--font-ui);font-size:var(--fs-xs);font-weight:400;color:var(--muted);font-variant-numeric:tabular-nums}.section-link{font-size:var(--fs-xs);color:var(--muted);transition:color var(--dur-1) var(--ease)}.section-link:hover{color:var(--text);text-decoration:underline;text-underline-offset:3px}.section{display:flex;flex-direction:column;gap:var(--space-3)}.chip-row{display:flex;flex-wrap:wrap;gap:6px}.chip{padding:3px 10px;border:1px solid var(--border);border-radius:var(--radius-pill);background:transparent;color:var(--text-soft);font-size:var(--fs-sm);transition:background-color var(--dur-1) var(--ease),border-color var(--dur-1) var(--ease)}.chip:hover{border-color:var(--border-strong);background:var(--surface-2)}.inline-note{display:flex;align-items:flex-start;gap:7px;padding:9px 11px;border-radius:var(--radius-sm);font-size:var(--fs-sm);line-height:1.5;background:var(--surface-2);color:var(--text-soft)}.inline-note-info{background:color-mix(in srgb,var(--accent) 8%,var(--surface));color:var(--text-soft)}.inline-note-warning{background:color-mix(in srgb,var(--danger) 9%,var(--surface));color:var(--text-soft)}.inline-note svg{flex:none;margin-top:2px}.inline-note-warning svg{color:var(--danger)}.inline-note-info svg{color:var(--accent-text)}.spinner{width:14px;height:14px;border:1.5px solid var(--border-strong);border-top-color:var(--accent-text);border-radius:50%;animation:stow-spin .7s linear infinite}.spinner-small{width:11px;height:11px}.summary-list{display:flex;flex-wrap:wrap;gap:4px var(--space-4);font-size:var(--fs-sm);color:var(--text-soft);font-variant-numeric:tabular-nums}.summary-warning{color:var(--danger)}.detail-list{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:3px var(--space-4);font-size:var(--fs-xs)}.detail-list dt{color:var(--muted)}.detail-list dd{color:var(--text-soft);overflow-wrap:anywhere}.inline-create{display:flex;gap:6px;align-items:center}.inline-create .input{flex:1}.dialog{padding:0;border:none;background:transparent;max-width:min(100vw - 2rem,100%);color:var(--text)}.dialog::backdrop{background:#18161266;animation:stow-fade var(--dur-2) var(--ease)}.dialog-panel{display:flex;flex-direction:column;max-height:min(86vh,880px);width:min(92vw,560px);border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-lg);overflow:hidden;animation:stow-pop var(--dur-3) var(--ease)}.dialog-sm{width:min(92vw,420px)}.dialog-lg{width:min(94vw,840px)}.dialog-header{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4) var(--space-5) var(--space-3)}.dialog-heading{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.dialog-title{font-family:var(--font-display);font-size:var(--fs-lg);font-weight:600;letter-spacing:-.01em;line-height:1.3}.dialog-description{font-size:var(--fs-sm);color:var(--muted);overflow-wrap:anywhere}.dialog-body{display:flex;flex-direction:column;gap:var(--space-4);min-height:0;padding:0 var(--space-5) var(--space-5);overflow-y:auto}.dialog-footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-5);border-top:1px solid var(--border);background:var(--surface-2);flex-wrap:wrap}.dialog-text{display:flex;align-items:flex-start;gap:7px;font-size:var(--fs-sm);color:var(--text-soft);line-height:1.55}.dialog-text svg{flex:none;margin-top:2px;color:var(--muted)}.scroll-area{max-height:46vh;overflow-y:auto;border:1px solid var(--border);border-radius:var(--radius-sm)}.choice-list{display:flex;flex-direction:column;gap:4px}.choice{display:flex;align-items:flex-start;gap:9px;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:border-color var(--dur-1) var(--ease),background-color var(--dur-1) var(--ease)}.choice:hover{background:var(--surface-2)}.choice:has(input:checked){border-color:var(--accent-text);background:color-mix(in srgb,var(--accent) 6%,var(--surface))}.choice input{accent-color:var(--accent-text);margin-top:2px;flex:none}.choice-text{display:flex;flex-direction:column;gap:1px;min-width:0}.choice-label{font-size:var(--fs-sm);font-weight:500}.choice-hint{font-size:var(--fs-xs);color:var(--muted)}.choice-danger .choice-label{color:var(--danger)}.choice-scroll{max-height:50vh;overflow-y:auto}.menu{position:fixed;z-index:120;min-width:200px;max-width:min(90vw,300px);max-height:min(70vh,460px);overflow-y:auto;overscroll-behavior:contain;padding:4px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow-md);animation:stow-pop var(--dur-1) var(--ease)}.menu-item{display:flex;align-items:center;gap:9px;width:100%;padding:6px 8px;border:none;border-radius:var(--radius-xs);background:none;color:var(--text);font-size:var(--fs-sm);text-align:left}.menu-item:hover,.menu-item:focus-visible{background:var(--surface-2)}@media(pointer:coarse){.menu-item{padding:9px;font-size:var(--fs-base)}.item-menu.icon-btn{opacity:1;width:30px;height:30px}.btn{min-height:38px;padding-inline:14px}.btn-small{min-height:34px}.icon-btn{width:38px;height:38px}.input,.select,.textarea{min-height:40px}.segmented-option{min-height:36px}.item-select{width:26px;height:26px}.item-check{width:16px;height:16px}.chip,.tag-pill{padding-block:6px}}.menu-item.is-danger{color:var(--danger)}.menu-item.is-danger:hover{background:var(--danger-soft)}.menu-item svg{flex:none;color:var(--muted)}.menu-item.is-danger svg{color:var(--danger)}.menu-icon-spacer{width:16px;flex:none}.menu-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.menu-hint{font-size:var(--fs-2xs);color:var(--muted)}.menu-check{color:var(--accent-text)}.menu-separator{height:1px;margin:4px 2px;background:var(--border)}.toast-stack{position:fixed;right:var(--space-4);bottom:var(--space-4);z-index:200;display:flex;flex-direction:column;gap:6px;max-width:min(92vw,380px)}.toast{display:flex;align-items:center;gap:var(--space-2);padding:8px 8px 8px var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);box-shadow:var(--shadow-md);font-size:var(--fs-sm);animation:stow-rise var(--dur-2) var(--ease)}.toast-error{border-left:2px solid var(--danger)}.toast-success{border-left:2px solid var(--success)}.toast>svg{flex:none}.toast-error>svg{color:var(--danger)}.toast.is-leaving{opacity:0;transform:translateY(4px);transition:opacity var(--dur-2) var(--ease),transform var(--dur-2) var(--ease)}.toast-message{flex:1;line-height:1.45;overflow-wrap:anywhere}.toast-action{flex:none;padding:3px 8px;border:1px solid var(--border-strong);border-radius:var(--radius-xs);background:var(--surface-2);font-size:var(--fs-xs);font-weight:500}.toast-action:hover{background:var(--surface-3)}.toast-close.icon-btn{width:24px;height:24px;flex:none;color:var(--muted)}.back-link{display:inline-flex;align-items:center;gap:4px;font-size:var(--fs-sm);color:var(--muted);transition:color var(--dur-1) var(--ease)}.back-link:hover{color:var(--text)}.markdown{font-size:var(--fs-base);line-height:1.68;overflow-wrap:anywhere}.markdown>*+*{margin-top:10px}.markdown h1,.markdown h2,.markdown h3{font-family:var(--font-display);line-height:1.25;margin-top:var(--space-5)}.markdown>:first-child{margin-top:0}.markdown h1{font-size:1.5rem}.markdown h2{font-size:1.2rem}.markdown h3{font-size:1.05rem}.markdown ul,.markdown ol{padding-left:1.25rem}.markdown li+li{margin-top:2px}.markdown a{color:var(--accent-text);text-decoration:underline;text-underline-offset:2px}.markdown code{font-family:var(--font-mono);font-size:.86em;padding:1px 4px;border-radius:var(--radius-xs);background:var(--surface-2)}.markdown pre{overflow-x:auto;padding:10px 12px;border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--border)}.markdown pre code{padding:0;background:none}.markdown blockquote{padding-left:12px;border-left:2px solid var(--border-strong);color:var(--muted)}.markdown hr{margin:var(--space-4) 0}.markdown table{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}.markdown th,.markdown td{border:1px solid var(--border);padding:4px 7px;text-align:left}.markdown .md-check{display:inline-block;width:1.1em;color:var(--muted);font-size:.9em}.markdown .md-task.is-done{color:var(--muted);text-decoration:line-through}.markdown .md-plain{white-space:pre-wrap}.home-page{gap:var(--space-8)}.home-section{display:flex;flex-direction:column;gap:var(--space-3)}.home-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:var(--space-8);align-items:start}.library-stats{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--border)}.stat-card{color:var(--text-soft);font-size:var(--fs-sm);font-variant-numeric:tabular-nums;text-decoration:none;transition:color var(--dur-1) var(--ease)}.stat-card:hover{color:var(--text);text-decoration:underline;text-underline-offset:3px}.stat-card-quiet{margin-left:auto;color:var(--muted)}.folder-cover{position:relative;width:100%;aspect-ratio:4 / 1.3;min-height:104px;max-height:200px;overflow:hidden;border-radius:var(--radius-md);background:var(--surface-2)}.folder-cover img,.folder-cover .blob-img{width:100%;height:100%;object-fit:cover}.folder-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:var(--space-2)}.folder-card{display:flex;align-items:center;gap:10px;padding:7px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);transition:border-color var(--dur-1) var(--ease),background-color var(--dur-1) var(--ease)}.folder-card:hover{border-color:var(--border-strong);background:color-mix(in srgb,var(--surface) 70%,var(--surface-2))}.folder-card-media{display:grid;place-items:center;width:34px;height:34px;flex:none;overflow:hidden;border-radius:var(--radius-sm)}.folder-card-image,.folder-card-image .blob-img,.folder-card-image img{width:100%;height:100%;object-fit:cover}.folder-card-icon{display:grid;place-items:center}.folder-card-text{display:flex;flex-direction:column;min-width:0;line-height:1.35}.folder-card-name{font-size:var(--fs-sm);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.folder-card-meta{font-size:var(--fs-2xs);color:var(--muted)}.collection-swatch{display:inline-block;width:8px;height:8px;border-radius:2px;flex:none}.tag-cloud{display:flex;flex-wrap:wrap;gap:var(--space-2)}.tag-pill{display:inline-flex;align-items:baseline;gap:6px;padding:4px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:transparent;color:var(--text-soft);font-size:var(--fs-sm);transition:border-color var(--dur-1) var(--ease),background-color var(--dur-1) var(--ease)}.tag-pill:hover{border-color:var(--border-strong);background:var(--surface-2);color:var(--text)}.tag-name{font-weight:400;overflow-wrap:anywhere}.tag-count{font-size:var(--fs-2xs);color:var(--muted);font-variant-numeric:tabular-nums}.note-page{gap:var(--space-5);max-width:820px}.note-header{display:flex;flex-direction:column;gap:var(--space-3);padding-bottom:var(--space-3);border-bottom:1px solid var(--border)}.note-topbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);flex-wrap:wrap}.note-actions{display:flex;align-items:center;gap:2px}.save-status{display:inline-flex;align-items:center;gap:5px;min-height:1.2rem;font-size:var(--fs-xs);color:var(--muted)}.save-status.is-error,.save-retry.btn{color:var(--danger)}.note-title{margin:0;font-size:inherit;font-weight:inherit}.note-title-input{width:100%;padding:0;border:none;border-bottom:1px solid transparent;background:transparent;font-family:var(--font-display);font-size:var(--fs-2xl);font-weight:600;letter-spacing:-.02em;line-height:1.2;transition:border-color var(--dur-2) var(--ease)}.note-title-input::placeholder{color:var(--border-strong)}.note-title-input:focus{outline:none;border-bottom-color:var(--accent-text)}.note-meta{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;font-size:var(--fs-xs);color:var(--muted)}.note-meta .inline-field{flex-direction:row;align-items:center;gap:6px}.note-meta .inline-field .field-label{font-weight:400;font-size:var(--fs-xs)}.note-meta .inline-field .select{min-height:26px;width:auto;font-size:var(--fs-xs);padding-block:1px}.meta-separator{width:1px;height:12px;background:var(--border)}.note-content{display:flex;flex-direction:column;gap:var(--space-2)}.note-toolbar{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;justify-content:space-between}.note-toolbar .inline-field{flex-direction:row;align-items:center;gap:6px;margin-left:auto}.note-toolbar .select{min-height:28px;width:auto;font-size:var(--fs-xs)}.note-toolbar .segmented{background:transparent;border-color:transparent;padding:0;gap:var(--space-1)}.note-toolbar .segmented-option{padding:2px 8px;font-size:var(--fs-sm);color:var(--muted)}.note-toolbar .segmented-option.is-active{color:var(--text);background:var(--surface-2);box-shadow:none}.note-editor-wrap:not([hidden]),.note-preview:not([hidden]){animation:stow-fade var(--dur-1) var(--ease)}.note-editor-wrap{display:flex}.note-editor{width:100%;min-height:320px;padding:var(--space-4) var(--space-5);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);font-size:var(--fs-base);line-height:1.72;resize:none;overflow:hidden;transition:border-color var(--dur-2) var(--ease),box-shadow var(--dur-2) var(--ease)}.note-editor:focus{outline:none;border-color:var(--accent-text);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 11%,transparent)}.note-preview{min-height:320px;padding:var(--space-4) var(--space-5);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface)}.note-preview:focus-visible{outline:2px solid var(--accent-text);outline-offset:2px}.empty-preview{color:var(--muted);font-size:var(--fs-sm)}.note-section{display:flex;flex-direction:column;gap:var(--space-2);padding-top:var(--space-4);border-top:1px solid var(--border)}.note-section-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);flex-wrap:wrap}.note-section-title{font-size:var(--fs-2xs);font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}.checklist-progress{font-size:var(--fs-xs);color:var(--muted);font-variant-numeric:tabular-nums}.linked-list{display:flex;flex-wrap:wrap;gap:6px}.linked-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border:1px solid var(--border);border-radius:var(--radius-sm);background:transparent;font-size:var(--fs-xs);color:var(--muted)}.linked-title{color:var(--text-soft);max-width:26ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}a.linked-title:hover{color:var(--text);text-decoration:underline;text-underline-offset:2px}.note-privacy{display:flex;align-items:center;gap:6px;font-size:var(--fs-xs);color:var(--muted)}.note-dates,.note-words{color:var(--muted);font-size:var(--fs-xs)}.note-words:before{content:"·";margin-right:6px;color:var(--border-strong)}.note-meta .note-words:only-child:before{content:none}.save-status.is-saving{color:var(--muted)}.settings-page{max-width:880px}.tabs{display:flex;gap:var(--space-1);border-bottom:1px solid var(--border);overflow-x:auto;scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}.tab{position:relative;padding:6px 10px 9px;color:var(--muted);font-size:var(--fs-sm);white-space:nowrap;transition:color var(--dur-1) var(--ease)}.tab:hover{color:var(--text)}.tab.is-current{color:var(--text);font-weight:500}.tab.is-current:after{content:"";position:absolute;left:8px;right:8px;bottom:-1px;height:2px;border-radius:2px;background:var(--accent-text)}.settings-content{display:flex;flex-direction:column;gap:var(--space-6);max-width:720px}.settings-section{display:flex;flex-direction:column;gap:var(--space-2);padding-top:var(--space-5);border-top:1px solid var(--border)}.settings-section:first-child{padding-top:0;border-top:none}.settings-section-head{display:flex;flex-direction:column;gap:2px}.settings-section-title{font-family:var(--font-display);font-size:var(--fs-md);font-weight:600;letter-spacing:-.005em}.settings-section-description{font-size:var(--fs-xs);color:var(--muted);line-height:1.5;max-width:60ch}.settings-section-body{display:flex;flex-direction:column;gap:var(--space-2);padding-top:var(--space-1)}.settings-section-body>.field{max-width:420px}.settings-section-body>.field-switch{max-width:none}.settings-section-body>.field-switch+.field-switch{border-top:1px solid var(--border)}.accent-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.accent-field{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.settings-background-preview{position:relative;display:grid;place-items:center;width:100%;max-width:360px;aspect-ratio:3 / 1;overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2)}.settings-background-preview img,.settings-background-preview .blob-img{width:100%;height:100%;object-fit:cover}.thumb-empty{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:var(--fs-xs)}.preset-row{display:flex;flex-wrap:wrap;gap:6px}.storage-usage{font-size:var(--fs-sm);color:var(--text-soft);font-variant-numeric:tabular-nums}.info-block{display:flex;flex-direction:column;gap:var(--space-1);padding-top:var(--space-3);border-top:1px solid var(--border)}.info-title{font-family:var(--font-display);font-size:var(--fs-md);font-weight:600}.info-body{font-size:var(--fs-sm);color:var(--text-soft);line-height:1.6;max-width:72ch}.plain-list{list-style:disc;padding-left:1.1rem;font-size:var(--fs-sm);color:var(--text-soft);line-height:1.6;display:flex;flex-direction:column;gap:3px}.about-page{max-width:760px}.about-identity{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4) 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.about-mark{display:grid;place-items:center;width:44px;height:44px;border-radius:var(--radius-md);background:var(--surface-2);color:var(--accent-text);flex:none}.about-name{font-family:var(--font-display);font-size:var(--fs-xl);font-weight:600;line-height:1.2}.about-meta{font-size:var(--fs-xs);color:var(--muted)}.about-links{display:flex;flex-wrap:wrap;gap:var(--space-4);font-size:var(--fs-sm)}.about-links a{color:var(--accent-text);text-decoration:underline;text-underline-offset:2px}.about-note{display:flex;align-items:flex-start;gap:6px;font-size:var(--fs-xs);color:var(--muted)}.shortcut-list{display:grid;grid-template-columns:max-content 1fr;gap:7px var(--space-4);align-items:center}.shortcut-list dt{display:flex;gap:3px;justify-content:flex-end}.shortcut-list dd{font-size:var(--fs-sm);color:var(--text-soft)}.shortcut-keys{display:inline-flex;gap:3px}.board{display:flex;flex-direction:column;gap:var(--space-2)}.board-bar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.board-hint{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-xs);color:var(--muted)}.board-actions{display:flex;gap:var(--space-1)}.board-actions .btn{font-size:var(--fs-xs);min-height:28px;padding:2px 8px}.board-scroll{overflow-x:auto;padding-bottom:var(--space-1)}.board-canvas{position:relative;min-width:760px;height:420px;border:1px solid var(--border);border-radius:var(--radius-md);background-color:var(--surface);background-image:radial-gradient(var(--border-strong) .8px,transparent .8px);background-size:24px 24px;background-position:12px 12px;padding:0}.board-card{position:absolute;margin:0;z-index:1;background:var(--surface)}.board-card:hover{z-index:2}.folder-card-media,.folder-card-image,.preview-image,.picker-thumb,.thumb-preview,.cover-preview,.icon-preview{position:relative}.board-card .item-media{aspect-ratio:auto;height:86px}.board-card .item-body{overflow:hidden}.board-card.is-dragging{z-index:5;opacity:1;box-shadow:var(--shadow-md)}.board-grip{position:absolute;top:5px;right:5px;z-index:6;display:grid;place-items:center;width:22px;height:22px;border:1px solid var(--border);border-radius:var(--radius-xs);background:color-mix(in srgb,var(--surface) 92%,transparent);color:var(--muted);cursor:grab;touch-action:none}.board-grip:hover{color:var(--text)}.board-grip:active{cursor:grabbing}.board-grip:focus-visible{outline:2px solid var(--accent-text)}.board-card .item-menu{top:auto;bottom:5px;right:5px;opacity:1}.board-guide{position:absolute;background:var(--accent);opacity:.5;pointer-events:none;z-index:0}.board-guide-x{top:0;bottom:0;width:1px}.board-guide-y{left:0;right:0;height:1px}.board-empty{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-6);border:1px dashed var(--border);border-radius:var(--radius-md);color:var(--muted);font-size:var(--fs-sm)}.file-preview{position:relative;display:flex;flex-direction:column;align-items:center;gap:var(--space-2);min-height:140px;max-height:56vh;padding:var(--space-2);overflow:auto;border-radius:var(--radius-md);background:var(--surface-2)}.preview-image{width:100%;display:grid;place-items:center}.preview-image .blob-img,.preview-image img{max-width:100%;max-height:46vh;object-fit:contain;border-radius:var(--radius-xs)}.preview-placeholder{display:grid;place-items:center;width:56px;height:56px;border-radius:var(--radius-sm);color:var(--muted)}.pdf-frame{width:100%;height:52vh;border:none;border-radius:var(--radius-xs);background:var(--surface)}.text-preview{width:100%;max-height:44vh;margin:0;padding:var(--space-3);overflow:auto;border-radius:var(--radius-xs);background:var(--surface);font-family:var(--font-mono);font-size:var(--fs-xs);line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere}.preview-caption{font-size:var(--fs-2xs);color:var(--muted)}.file-actions{justify-content:center}body.is-selecting .item .item-open{cursor:default}body.is-selecting .item:hover{border-color:var(--border-strong)}.picker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:6px;max-height:300px;overflow-y:auto;padding:2px}.picker-tile{position:relative;display:flex;flex-direction:column;gap:4px;padding:3px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);cursor:pointer;text-align:left;transition:border-color var(--dur-1) var(--ease),box-shadow var(--dur-1) var(--ease)}.picker-tile:hover{border-color:var(--border-strong)}.picker-tile.is-selected{border-color:var(--accent-text);box-shadow:0 0 0 1px var(--accent-text)}.picker-thumb{display:grid;place-items:center;aspect-ratio:1;overflow:hidden;border-radius:var(--radius-xs);background:var(--surface-2)}.picker-thumb img,.picker-thumb .blob-img{width:100%;height:100%;object-fit:cover}.picker-label{font-size:var(--fs-2xs);color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-inline:2px}.picker-check{position:absolute;top:5px;right:5px;width:16px;height:16px;border-radius:50%;border:1px solid var(--border-strong);background:var(--surface)}.picker-tile.is-selected .picker-check{background:var(--accent);border-color:var(--accent-strong)}.picker-tile.is-selected .picker-check:after{content:"";position:absolute;inset:3px;border-left:2px solid var(--on-accent);border-bottom:2px solid var(--on-accent);transform:rotate(-45deg) translateY(-1px)}.picker-toolbar{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.picker-toolbar-text{font-size:var(--fs-xs);color:var(--muted)}.picker-tools{display:flex;gap:var(--space-1);margin-left:auto}.picker-filter{max-width:100%}.picker-status{min-height:1.1rem;font-size:var(--fs-xs);color:var(--muted)}.picker-empty{padding:var(--space-6);text-align:center;font-size:var(--fs-sm);color:var(--muted)}.thumb-preview{display:grid;place-items:center;width:100%;aspect-ratio:16 / 9;overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2)}.thumb-preview img,.thumb-preview .blob-img{width:100%;height:100%;object-fit:cover}.cover-preview{display:grid;place-items:center;width:100%;aspect-ratio:4 / 1.4;overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2)}.cover-preview img,.cover-preview .blob-img{width:100%;height:100%;object-fit:cover}.editor-icon-row{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.editor-icon-actions{display:flex;flex-direction:column;gap:6px;flex:1}.icon-preview{display:grid;place-items:center;width:44px;height:44px;overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--muted);flex:none}.icon-preview img,.icon-preview .blob-img{width:100%;height:100%;object-fit:cover}.icon-grid{display:flex;flex-wrap:wrap;gap:var(--space-1)}.icon-option{display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--border);border-radius:var(--radius-xs);background:var(--surface);color:var(--muted);transition:border-color var(--dur-1) var(--ease),color var(--dur-1) var(--ease)}.icon-option:hover{color:var(--text);border-color:var(--border-strong)}.icon-option[aria-pressed=true]{border-color:var(--accent-text);color:var(--accent-text);background:var(--accent-soft)}.bookmark-picker-list{display:flex;flex-direction:column;gap:2px;max-height:50vh;overflow-y:auto}.bookmark-picker-item{display:flex;align-items:center;gap:var(--space-2);padding:6px 8px;border-radius:var(--radius-xs);cursor:pointer}.bookmark-picker-item:hover{background:var(--surface-2)}.bookmark-picker-item.is-selected{background:var(--accent-soft)}.bookmark-picker-item input{accent-color:var(--accent-text);flex:none}.bookmark-picker-text{display:flex;flex-direction:column;min-width:0;line-height:1.35}.bookmark-picker-title{font-size:var(--fs-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bookmark-picker-domain{font-size:var(--fs-2xs);color:var(--muted)}.splash{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);height:100dvh;color:var(--muted);font-size:var(--fs-sm)}.splash-mark{display:grid;place-items:center;width:40px;height:40px;color:var(--accent-text);animation:stow-fade var(--dur-3) var(--ease)}.splash-text{margin:0;color:var(--muted);font-size:var(--fs-sm);letter-spacing:.01em}.fatal{min-height:70vh;justify-content:center}.items-masonry{display:block;columns:3 220px;column-gap:var(--item-gap)}.items-masonry .item{break-inside:avoid;margin-bottom:var(--item-gap)}.item-masonry .item-media{aspect-ratio:auto;min-height:84px}.item-masonry .item-thumb img{height:auto;max-height:400px;object-fit:cover}.item-masonry .item-description,.item-masonry .item-excerpt{-webkit-line-clamp:3}.crop-stage{position:relative;display:inline-block;max-width:100%;align-self:center;overflow:hidden;border-radius:var(--radius-sm);background:var(--surface-2);touch-action:none;user-select:none}.crop-image{display:block;max-width:100%;max-height:56vh;pointer-events:none}.crop-box{position:absolute;border:2px solid var(--accent-text);border-radius:2px;box-shadow:0 0 0 9999px #14131070;cursor:move}.crop-box.is-dragging{cursor:grabbing}.crop-box:focus-visible{outline:2px solid var(--text);outline-offset:2px}.crop-handle{position:absolute;right:-7px;bottom:-7px;width:14px;height:14px;border:2px solid var(--surface);border-radius:50%;background:var(--accent);cursor:nwse-resize}.link-button{padding:0;border:0;background:none;color:var(--muted);font:inherit;font-size:var(--fs-xs);text-decoration:underline;text-underline-offset:3px;cursor:pointer;transition:color var(--dur-1) var(--ease)}.link-button:hover{color:var(--text)}@media(max-width:1024px){.home-columns{grid-template-columns:minmax(0,1fr);gap:var(--space-6)}}@media(max-width:720px){.board-canvas{min-width:660px}.item-list .item-body{grid-template-columns:minmax(0,1fr) 6.5rem}.note-title-input{font-size:1.5rem}.note-editor,.note-preview{min-height:260px;padding:var(--space-3) var(--space-4)}.about-identity{align-items:flex-start}.shortcut-list{grid-template-columns:1fr;gap:2px}.shortcut-list dt{justify-content:flex-start;margin-top:var(--space-2)}}@media(max-width:480px){.selection-bar{align-items:flex-start}.item-list .item-body{grid-template-columns:minmax(0,1fr);gap:1px}.item-list .item-meta{justify-content:flex-start}.items-grid,.items-compact{grid-template-columns:minmax(0,1fr)}.item-list .item-media{width:40px;height:36px}}
