:root{--thm-light-default-bg:#fff;--thm-light-default-text:#222;--thm-light-default-text-bold:#000;--thm-light-default-border:#eee;--thm-light-default-hr:#ccc;--thm-light-default-ultra-dim:#f3f3f3;--thm-light-default-color-l:35%;--thm-light-default-hl:#4a90d9;--thm-light-default-md-mark:#87b5d9;--thm-light-default-fg-blur:#b8b8b8;--thm-light-default-hl-blur:#9ec4e2;--thm-light-default-cm-selection:#22222226;--thm-light-default-cm-sel-focus:#2223;--thm-light-default-cm-code-bg:#2222220a;--thm-light-warm-bg:#fdf6e3;--thm-light-warm-text:#657b83;--thm-light-warm-text-bold:#073642;--thm-light-warm-border:#e8dfc8;--thm-light-warm-hr:#c8bfa0;--thm-light-warm-ultra-dim:#f0ead8;--thm-light-warm-color-l:40%;--thm-light-warm-hl:#cb8a3e;--thm-light-warm-md-mark:#c09a6f;--thm-light-warm-fg-blur:#b4afa2;--thm-light-warm-hl-blur:#d4bc98;--thm-light-warm-cm-selection:#657b8326;--thm-light-warm-cm-sel-focus:#657b8333;--thm-light-warm-cm-code-bg:#657b830a;--thm-light-cool-bg:#eef4fb;--thm-light-cool-text:#4a6278;--thm-light-cool-text-bold:#1e3a50;--thm-light-cool-border:#ccdae6;--thm-light-cool-hr:#a8c0d4;--thm-light-cool-ultra-dim:#dfe7ef;--thm-light-cool-color-l:38%;--thm-light-cool-hl:#3a7abf;--thm-light-cool-md-mark:#6e9fc8;--thm-light-cool-fg-blur:#a4b6c8;--thm-light-cool-hl-blur:#82b0d8;--thm-light-cool-cm-selection:#4a627826;--thm-light-cool-cm-sel-focus:#4a627833;--thm-light-cool-cm-code-bg:#4a62780a;--thm-dark-default-bg:#000;--thm-dark-default-text:#ddd;--thm-dark-default-text-bold:#fff;--thm-dark-default-border:#222;--thm-dark-default-hr:#444;--thm-dark-default-ultra-dim:#111;--thm-dark-default-color-l:70%;--thm-dark-default-hl:#5ba3e8;--thm-dark-default-md-mark:#7ab5e0;--thm-dark-default-fg-blur:#686868;--thm-dark-default-hl-blur:#4d7eae;--thm-dark-default-cm-selection:#dddddd26;--thm-dark-default-cm-sel-focus:#ddd3;--thm-dark-default-cm-code-bg:#dddddd0a;--thm-dark-warm-bg:#1a1410;--thm-dark-warm-text:#baa892;--thm-dark-warm-text-bold:#d5c5a8;--thm-dark-warm-border:#302622;--thm-dark-warm-hr:#504038;--thm-dark-warm-ultra-dim:#261e1a;--thm-dark-warm-color-l:65%;--thm-dark-warm-hl:#d4955a;--thm-dark-warm-md-mark:#c4a078;--thm-dark-warm-fg-blur:#7d6e60;--thm-dark-warm-hl-blur:#9a7050;--thm-dark-warm-cm-selection:#baa89226;--thm-dark-warm-cm-sel-focus:#baa89233;--thm-dark-warm-cm-code-bg:#baa8920a;--thm-dark-cool-bg:#1e2a3a;--thm-dark-cool-text:#b8c9d9;--thm-dark-cool-text-bold:#dce8f0;--thm-dark-cool-border:#2d3f52;--thm-dark-cool-hr:#3d5570;--thm-dark-cool-ultra-dim:#243242;--thm-dark-cool-color-l:65%;--thm-dark-cool-hl:#5b9fd4;--thm-dark-cool-md-mark:#7ab2d8;--thm-dark-cool-fg-blur:#6a8090;--thm-dark-cool-hl-blur:#4d7ea4;--thm-dark-cool-cm-selection:#b8c9d926;--thm-dark-cool-cm-sel-focus:#b8c9d933;--thm-dark-cool-cm-code-bg:#b8c9d90a;--bg:var(--thm-light-default-bg);--text:var(--thm-light-default-text);--text-bold:var(--thm-light-default-text-bold);--border:var(--thm-light-default-border);--hr:var(--thm-light-default-hr);--ultra-dim:var(--thm-light-default-ultra-dim);--color-l:var(--thm-light-default-color-l);--hl:var(--thm-light-default-hl);--md-mark:var(--thm-light-default-md-mark);--fg-blur:var(--thm-light-default-fg-blur);--hl-blur:var(--thm-light-default-hl-blur);--cm-selection:var(--thm-light-default-cm-selection);--cm-sel-focus:var(--thm-light-default-cm-sel-focus);--cm-code-bg:var(--thm-light-default-cm-code-bg);--cm-fg:var(--text);--cm-hl:var(--hl);--cm-text-bold:var(--text-bold);--cm-md-mark:var(--md-mark)}:root.focus-mode{--cm-fg:var(--fg-blur);--cm-hl:var(--hl-blur);--cm-text-bold:var(--fg-blur);--cm-md-mark:var(--fg-blur)}@media (prefers-color-scheme:light){:root.theme-light-default{--bg:var(--thm-light-default-bg);--text:var(--thm-light-default-text);--text-bold:var(--thm-light-default-text-bold);--border:var(--thm-light-default-border);--hr:var(--thm-light-default-hr);--ultra-dim:var(--thm-light-default-ultra-dim);--color-l:var(--thm-light-default-color-l);--hl:var(--thm-light-default-hl);--md-mark:var(--thm-light-default-md-mark);--fg-blur:var(--thm-light-default-fg-blur);--hl-blur:var(--thm-light-default-hl-blur);--cm-selection:var(--thm-light-default-cm-selection);--cm-sel-focus:var(--thm-light-default-cm-sel-focus);--cm-code-bg:var(--thm-light-default-cm-code-bg)}:root.theme-light-warm{--bg:var(--thm-light-warm-bg);--text:var(--thm-light-warm-text);--text-bold:var(--thm-light-warm-text-bold);--border:var(--thm-light-warm-border);--hr:var(--thm-light-warm-hr);--ultra-dim:var(--thm-light-warm-ultra-dim);--color-l:var(--thm-light-warm-color-l);--hl:var(--thm-light-warm-hl);--md-mark:var(--thm-light-warm-md-mark);--fg-blur:var(--thm-light-warm-fg-blur);--hl-blur:var(--thm-light-warm-hl-blur);--cm-selection:var(--thm-light-warm-cm-selection);--cm-sel-focus:var(--thm-light-warm-cm-sel-focus);--cm-code-bg:var(--thm-light-warm-cm-code-bg)}:root.theme-light-cool{--bg:var(--thm-light-cool-bg);--text:var(--thm-light-cool-text);--text-bold:var(--thm-light-cool-text-bold);--border:var(--thm-light-cool-border);--hr:var(--thm-light-cool-hr);--ultra-dim:var(--thm-light-cool-ultra-dim);--color-l:var(--thm-light-cool-color-l);--hl:var(--thm-light-cool-hl);--md-mark:var(--thm-light-cool-md-mark);--fg-blur:var(--thm-light-cool-fg-blur);--hl-blur:var(--thm-light-cool-hl-blur);--cm-selection:var(--thm-light-cool-cm-selection);--cm-sel-focus:var(--thm-light-cool-cm-sel-focus);--cm-code-bg:var(--thm-light-cool-cm-code-bg)}}@media (prefers-color-scheme:dark){:root,:root.theme-dark-default{--bg:var(--thm-dark-default-bg);--text:var(--thm-dark-default-text);--text-bold:var(--thm-dark-default-text-bold);--border:var(--thm-dark-default-border);--hr:var(--thm-dark-default-hr);--ultra-dim:var(--thm-dark-default-ultra-dim);--color-l:var(--thm-dark-default-color-l);--hl:var(--thm-dark-default-hl);--md-mark:var(--thm-dark-default-md-mark);--fg-blur:var(--thm-dark-default-fg-blur);--hl-blur:var(--thm-dark-default-hl-blur);--cm-selection:var(--thm-dark-default-cm-selection);--cm-sel-focus:var(--thm-dark-default-cm-sel-focus);--cm-code-bg:var(--thm-dark-default-cm-code-bg)}:root.theme-dark-warm{--bg:var(--thm-dark-warm-bg);--text:var(--thm-dark-warm-text);--text-bold:var(--thm-dark-warm-text-bold);--border:var(--thm-dark-warm-border);--hr:var(--thm-dark-warm-hr);--ultra-dim:var(--thm-dark-warm-ultra-dim);--color-l:var(--thm-dark-warm-color-l);--hl:var(--thm-dark-warm-hl);--md-mark:var(--thm-dark-warm-md-mark);--fg-blur:var(--thm-dark-warm-fg-blur);--hl-blur:var(--thm-dark-warm-hl-blur);--cm-selection:var(--thm-dark-warm-cm-selection);--cm-sel-focus:var(--thm-dark-warm-cm-sel-focus);--cm-code-bg:var(--thm-dark-warm-cm-code-bg)}:root.theme-dark-cool{--bg:var(--thm-dark-cool-bg);--text:var(--thm-dark-cool-text);--text-bold:var(--thm-dark-cool-text-bold);--border:var(--thm-dark-cool-border);--hr:var(--thm-dark-cool-hr);--ultra-dim:var(--thm-dark-cool-ultra-dim);--color-l:var(--thm-dark-cool-color-l);--hl:var(--thm-dark-cool-hl);--md-mark:var(--thm-dark-cool-md-mark);--fg-blur:var(--thm-dark-cool-fg-blur);--hl-blur:var(--thm-dark-cool-hl-blur);--cm-selection:var(--thm-dark-cool-cm-selection);--cm-sel-focus:var(--thm-dark-cool-cm-sel-focus);--cm-code-bg:var(--thm-dark-cool-cm-code-bg)}}:root{--accent:var(--hl);--font-serif:serif;--font-sans:sans-serif;--font-mono:"Jetbrains Mono", "Cascadia Mono", "Cascadia Code", Consolas, Menlo, "Fira Code", "Fira Mono", monospace;--typo-ff:sans-serif;--typo-fs:16px;--typo-preview-fs:13px;--typo-lh:1.5;--typo-indent:0;--typo-fw:400;--typo-fw-bold:700;--fs-xs:10px;--fs-sm:12px;--fs-base:14px;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:24px;--sp-6:32px;--r:6px;--z-sticky:5;--z-toolbar:10;--z-sidebar:20;--z-dropdown:30;--z-sidebar-mobile:40;--z-toggle:50;--z-modal:70;--z-toast:90;--btn-min:28px;--sidebar-nav-fs:12px;--color-l:35%}*{box-sizing:border-box;tab-size:4}body{background-color:var(--bg);color:var(--text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;margin:0;padding:0;font-size:16px;line-height:1.5}button,input,select,textarea{color:var(--text)}span.icon{align-items:center;display:inline-flex}span.icon>svg{width:1em;height:1em;font-size:1.25em}b,strong,h1,h2,h3,h4,h5,h6{color:var(--text-bold);font-weight:700}a{color:inherit;border-bottom:1px solid #0000;text-decoration:none}a:hover{border-bottom-color:var(--text-bold);color:var(--text-bold)}.page-body{padding:var(--sp-4);max-width:720px;margin:0 auto}@media (width<=768px){.page-body{padding-top:64px}}.separator-line{border:none;border-top:1px solid var(--border);margin:var(--sp-3) 0}.main-layout{min-height:100dvh;display:flex;position:relative}.content{background-color:var(--bg);flex:1}.sidebar{border-right:1px solid var(--border);background-color:var(--bg);height:100dvh;z-index:var(--z-sidebar);flex-direction:column;font-size:.875em;display:flex;position:sticky;top:0}.sidebar a:hover{color:inherit}.sidebar-nav{justify-content:flex-end;align-items:center;padding-left:44px;display:flex;position:relative;&:after{content:"";bottom:0;left:var(--sp-3);right:var(--sp-3);background:var(--border);height:1px;position:absolute}}.sidebar-content{flex:1;overflow-y:auto}.resizer{cursor:col-resize;z-index:21;touch-action:none;background:0 0;width:4px;height:100dvh;margin-left:-2px;position:sticky;top:0}.resizer:before{content:"";position:absolute;inset:0 -6px}.resizer:hover{background:var(--border)}.sidebar-toggle{width:44px;height:44px;z-index:var(--z-toggle);background:0 0;border:none;border-radius:0;justify-content:center;align-items:center;padding:0;display:flex;position:fixed;top:0;left:0;&:hover{background:0 0}&>.btn-pad{border-radius:var(--r);justify-content:center;align-items:center;width:32px;height:32px;display:flex}&:hover>.btn-pad,&.active>.btn-pad{background:var(--border)}}@media (width<=768px){.sidebar{z-index:var(--z-sidebar-mobile);position:fixed;top:0;left:0;width:100vw!important}}button,a.btn-skeleton,a.btn-border,a.btn-primary{justify-content:center;align-items:center;gap:var(--sp-1);padding:var(--sp-1) var(--sp-2);min-height:var(--btn-min);min-width:var(--btn-min);border-radius:var(--r);cursor:pointer;border:1px solid #0000;line-height:1;text-decoration:none;display:inline-flex}button{color:inherit;font:inherit;background:0 0}a:is(.btn-skeleton,.btn-border,.btn-primary,.btn-danger-solid){color:inherit;border-bottom:none;&:hover{color:inherit;border-bottom:none}}:is(button,.btn-primary,.btn-danger-solid,.btn-border):disabled,a:is(.btn-skeleton,.btn-border,.btn-primary)[disabled]{opacity:.5;cursor:not-allowed;pointer-events:none}button:not(:disabled):hover,a:is(.btn-skeleton,.btn-border):not([disabled]):hover{background:var(--border)}.btn-border{border:1px solid var(--border);border-radius:var(--r)}.btn-primary,a.btn-primary{background:var(--text);color:var(--bg);padding:var(--sp-2) var(--sp-4);border-color:#0000}.btn-primary:not(:disabled):hover,a.btn-primary:not([disabled]):hover{background:var(--text-bold);color:var(--bg)}.btn-danger{color:red}.btn-danger-solid{color:#fff;background:#c00;border-color:#0000}.btn-danger-solid:not(:disabled):hover,a.btn-danger-solid:not([disabled]):hover{color:#fff;background:#a00}.btn-sm{padding:2px var(--sp-2);font-size:var(--fs-sm)}.btn-secondary{border-color:var(--border);padding:var(--sp-2) var(--sp-4)}.ghost{background:0 0!important;border-color:#0000!important}.ghost:hover,.ghost:focus,.ghost:focus-within{border-color:var(--border)!important;background:var(--bg)!important}input[type=text],input[type=number],select{padding:var(--sp-2) var(--sp-3);border:1px solid var(--border);border-radius:var(--r);background:var(--bg);color:var(--text);font:inherit;min-height:var(--btn-min);box-sizing:border-box}input[type=checkbox]{appearance:none;border:1.5px solid var(--border);background:var(--bg);cursor:pointer;border-radius:3px;flex-shrink:0;place-content:center;width:1.25em;height:1.25em;display:inline-grid}input[type=checkbox]:before{content:"";clip-path:polygon(14% 44%,0 65%,50% 100%,100% 16%,80% 0%,43% 62%);background:var(--text);width:.65em;height:.65em;transform:scale(0)}input[type=checkbox]:checked{background:var(--text);border-color:var(--text)}input[type=checkbox]:checked:before{background:var(--bg);transform:scale(1)}.dropdown{display:inline-flex;position:relative}.dropdown-menu{z-index:var(--z-dropdown);background:var(--bg);border:1px solid var(--border);border-radius:var(--r);flex-direction:column;min-width:120px;display:flex;position:absolute;top:100%;left:0;&.dropdown-menu--right{left:auto;right:0}&.dropdown-menu--up{top:auto;bottom:100%}& .dropdown-item-check{color:var(--hl);margin-left:auto}& .dropdown-item{justify-content:flex-start;align-items:center;gap:var(--sp-1);width:100%;padding:var(--sp-1) var(--sp-3);white-space:nowrap;display:flex;&:hover{background:var(--border)}&.dropdown-item--danger{color:red}}}.dropdown-separator{background:var(--border);height:1px;margin:var(--sp-1) 0}.tag{height:18px;font-size:var(--fs-xs);white-space:nowrap;border-radius:999px;align-items:center;padding:0 6px;font-weight:500;display:inline-flex}.tag--removable{cursor:pointer;&:hover{border:1px solid var(--border)}}.app-error-banner{z-index:var(--z-toast);justify-content:space-between;align-items:center;gap:var(--sp-4);padding:var(--sp-2) var(--sp-4);background:var(--color-danger,#c0392b);color:#fff;font-size:var(--fs-sm);display:flex;position:fixed;top:0;left:0;right:0}.app-error-banner-msg{flex:1}.app-error-banner-actions{gap:var(--sp-2);flex-shrink:0;display:flex}.page-header{align-items:center;gap:var(--sp-4);margin-bottom:var(--sp-2);display:flex}.page-header h1{margin:0}.page-toolbar{gap:var(--sp-2);margin-bottom:var(--sp-5);flex-wrap:wrap;display:flex}.page-stats{gap:var(--sp-4);margin-bottom:var(--sp-6);font-size:var(--fs-base);opacity:.7;display:flex}.empty-state{text-align:center;opacity:.4;padding:48px;font-style:italic}.danger-zone{border-radius:var(--r);padding:var(--sp-4);gap:var(--sp-2);border:1px solid #c00;flex-direction:column;display:flex}.danger-zone-title{color:#c00;margin:0;font-weight:700}.danger-zone-desc{font-size:var(--fs-sm);opacity:.7;margin:0}.hint{font-size:var(--fs-sm);opacity:.6;margin:var(--sp-1) 0 0}.shortcut-table{border-collapse:collapse;font-size:var(--fs-base)}.shortcut-table td{padding:var(--sp-1) var(--sp-4) var(--sp-1) 0}.shortcut-table td:last-child{opacity:.8;padding-right:0}.shortcut-table kbd{padding:2px var(--sp-2);border:1px solid var(--border);border-radius:var(--r);font-family:var(--font-mono);font-size:var(--fs-sm);white-space:nowrap;display:inline-block}.btn-pad{align-items:center;gap:var(--sp-1);border-radius:var(--r);display:flex}.sb-icon-btn{flex-shrink:0;justify-content:center;align-items:center;min-width:44px;min-height:44px;padding:0;display:flex;&:hover{background:0 0}&>.btn-pad{justify-content:center;align-items:center;width:32px;height:32px;display:flex}&:hover>.btn-pad{background:var(--border)}}.sb-icon-btn--sm{min-width:0;min-height:0;padding:5px;&>.btn-pad{width:26px;height:26px}}.sb-icon-btn--active>.btn-pad{background:var(--border)}.sb-nav-btn{min-height:44px;color:inherit;font:inherit;white-space:nowrap;background:0 0;border-bottom:none;align-items:stretch;padding:0;text-decoration:none;display:flex;&:hover{background:0 0}&>.btn-pad{padding:6px var(--sp-3);align-self:center;margin:2px}&:hover>.btn-pad{background:var(--border);color:var(--text-bold)}}.sb-nav-btn--active>.btn-pad{background:var(--border);color:var(--text-bold)}.tree-view{user-select:none;-webkit-touch-callout:none;overscroll-behavior:contain;flex-direction:column;height:100%;display:flex;overflow-y:auto}.tree-no-project{align-items:center;gap:var(--sp-2);padding:var(--sp-4);text-align:center;flex-direction:column;display:flex}.tree-no-project-label{font-size:var(--fs-sm);opacity:.6}.tree-color-input{cursor:pointer;background:0 0;border:none;width:20px;height:20px;padding:0}.tree-color-clear{font-size:var(--fs-xs);opacity:.5;padding:0 2px}.sb-header{background:var(--bg);min-height:44px;z-index:var(--z-sticky);padding:0 var(--sp-2) 0 var(--sp-3);align-items:center;gap:var(--sp-1);display:flex;position:sticky;top:0}.sidebar-project-header{border-bottom:1px solid var(--border);flex-direction:column;align-items:stretch;gap:0;padding:0}.sidebar-project-header-row{align-items:stretch;min-height:44px;display:flex}.tree-project-link{min-width:0;min-height:44px;color:inherit;flex:1;align-items:stretch;text-decoration:none;display:flex;overflow:hidden;&:hover{background:0 0}&>.btn-pad{min-width:0;padding:0 var(--sp-2);font-size:var(--fs-sm);flex:1;align-items:center;margin:2px 2px 2px 4px;font-weight:700;display:flex;overflow:hidden;&>.tree-project-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}}&:hover>.btn-pad,&.active>.btn-pad{background:var(--border)}}.tree-project-header-btns{flex-shrink:0;align-items:center;display:flex}.tree-trash-section{margin-top:var(--sp-2)}.tree-trash-header{align-items:center;gap:var(--sp-1);padding:var(--sp-2) var(--sp-3);text-align:left;opacity:.6;width:100%;display:flex;&:hover{background:var(--border);opacity:.8}}.tree-trash-label{font-size:var(--fs-sm);flex:1}.tree-trash-count{font-size:var(--fs-sm);opacity:.7;background:var(--border);padding:0 var(--sp-2);border-radius:999px}.tree-trash-empty-msg{padding:var(--sp-2) var(--sp-5);font-size:var(--fs-sm);opacity:.5;font-style:italic}.tree-trash-empty-btn{flex-shrink:0;margin-left:auto}.project-list{flex-direction:column;height:100%;display:flex;overflow:hidden}.project-list-header{gap:var(--sp-1);padding:0 var(--sp-2) 0 var(--sp-3)}.project-list-filter{min-width:0;padding:var(--sp-1) var(--sp-2);font-size:var(--fs-base);border:1px solid var(--border);border-radius:var(--r);background:var(--bg);color:var(--text);flex:1}.project-list-items{flex:1;overflow-y:auto}.project-list-new-btn{width:100%;min-height:44px;font-size:var(--fs-sm);opacity:.7;background:0 0;align-items:stretch;padding:0;display:flex;position:relative;&:hover{background:0 0}&>.btn-pad{padding:0 var(--sp-4);flex:1;align-items:center;margin:2px}&:hover>.btn-pad{background:var(--border)}&:after{content:"";bottom:0;left:var(--sp-3);right:var(--sp-3);background:var(--border);height:1px;position:absolute}}.project-list-item{cursor:pointer;align-items:stretch;min-height:44px;display:flex;&:hover{background:0 0}&>.btn-pad{min-width:0;padding:var(--sp-2) var(--sp-3);margin:2px var(--sp-1);flex-direction:column;flex:1;justify-content:center;align-items:flex-start;gap:2px}&:hover>.btn-pad{background:var(--border)}&--inactive{opacity:.5;&:hover{opacity:1}}}.project-list-item-label{font-size:var(--fs-base);white-space:nowrap;text-overflow:ellipsis;width:100%;font-weight:700;overflow:hidden}.project-list-item-meta{font-size:var(--fs-xs);opacity:.5;align-items:center;gap:6px;display:flex}.search-panel{border-bottom:1px solid var(--border);padding:var(--sp-2);gap:var(--sp-1);flex-direction:column;display:flex}.search-input-row{gap:var(--sp-1);display:flex}.search-input{padding:var(--sp-1) var(--sp-2);font-size:var(--fs-base);border:1px solid var(--border);border-radius:var(--r);background:var(--bg);color:var(--text);flex:1}.circular-progress-svg{pointer-events:none;display:block;transform:rotate(-90deg)}.circular-progress-bg{opacity:.15}.sl-filter-container{min-width:0;padding:var(--sp-1) var(--sp-2);flex-direction:column;flex:1;display:flex}.sl-filter-wrap{align-items:center;gap:var(--sp-1);min-width:0;padding:2px 4px;display:flex}.sl-filter-input{font:inherit;font-size:var(--fs-sm);min-width:0;color:inherit;background:0 0;border:none;outline:none;flex:1}.sl-filter-btn{flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;padding:0;font-size:12px;display:flex}.sl-filter-count{font-size:var(--fs-sm);opacity:.5;padding:2px var(--sp-2);text-align:right}.sl-selection-bar{font-size:var(--fs-sm);padding:2px var(--sp-2);background:var(--border);justify-content:space-between;align-items:center;gap:var(--sp-2);display:flex;position:relative}.sl-list{overscroll-behavior:contain;user-select:none;flex:1;padding:0 0 10rem;overflow-y:auto}.sl-item{cursor:pointer;-webkit-user-drag:none;min-height:52px;padding:var(--sp-2);align-items:stretch;gap:var(--sp-1);border-radius:var(--r);border-bottom:1px solid var(--ultra-dim);margin:0 4px;transition:transform .15s ease-out,opacity .15s ease-out;display:flex;position:relative;@media (hover:hover){&:hover{background:var(--border)}}}.sl-item:active{opacity:.75;transition-delay:60ms;transform:scale(.96)}.sl-item--active{background:var(--border)}.sl-item--selected{outline:2px solid var(--hl);outline-offset:-2px}.sl-item--trash{opacity:.65}.sl-item--dragging,.sl-item--ghost{opacity:.4}.sl-item--chosen{background:var(--color-hover);outline:1px solid var(--hl);outline-offset:-1px}.sl-item--open{z-index:var(--z-dropdown)}.sl-item--active .sl-item-actions,.sl-item--open .sl-item-actions{visibility:visible}@media (hover:hover){.sl-item:hover .sl-item-actions{visibility:visible}}.sl-item-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.sl-item-tags{flex-wrap:wrap;gap:4px;display:flex}.sl-item-preview{font-size:var(--fs-sm);color:var(--text);-webkit-line-clamp:2;line-clamp:2;white-space:pre-line;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.sl-item-preview--empty{color:var(--hr);font-style:italic}.sl-item-preview--loading{color:var(--hr)}.sl-item-preview__heading{font-weight:700}.sl-item-date{font-size:var(--fs-xs);color:var(--hr);margin-top:var(--sp-1)}.sl-item-actions{right:var(--sp-1);visibility:hidden;align-items:center;display:flex;position:absolute;top:50%;transform:translateY(-50%);& .sb-icon-btn{min-height:unset;padding:2px}& .dropdown-menu{z-index:var(--z-dropdown)}}.sl-item-wrap{position:relative}.sl-drop-line{background:var(--accent);border-radius:1px;height:2px;margin:0 4px;&--top{position:absolute;top:-1px;left:0;right:0}}.tag-editor-v2{width:100%;max-width:720px;margin:0 auto;padding:0 1rem}.tag-list{flex-wrap:wrap;align-items:center;gap:4px;min-height:24px;display:flex}.tag-del{opacity:.5;margin-left:2px;.tag:hover &{opacity:1}}.tag--clickable{cursor:pointer;&:hover{filter:brightness(1.15)}}.tag--more{background:var(--border);border-radius:var(--r);cursor:pointer;font-size:var(--fs-sm);border:1px dashed var(--border-dark);opacity:.7;padding:2px 6px;&:hover{opacity:1}}.sl-tag-dropdown{padding:var(--sp-2);flex-wrap:wrap;gap:6px;max-width:280px;max-height:240px;display:flex;overflow-y:auto}.tag--edit{background:var(--border);border-radius:var(--r);cursor:pointer;opacity:.7;font-size:var(--fs-sm);border:1px dashed var(--border-dark);justify-content:center;align-items:center;padding:2px 6px;display:flex;&:hover{opacity:1;background:var(--border-dark)}}.tag-editor-row{align-items:center;gap:6px;width:100%;padding:6px 0;display:flex;&+&{border-top:1px solid var(--border)}}.tag-editor-current{flex-wrap:wrap;min-height:32px}.tag-editor-empty{font-size:var(--fs-sm);opacity:.45}.tag-editor-suggestions{flex-wrap:nowrap;overflow:hidden}.tag-editor-label{font-size:var(--fs-sm);opacity:.55;white-space:nowrap;flex-shrink:0}.tag-editor-suggestions-list{scrollbar-width:none;flex-wrap:nowrap;gap:4px;display:flex;overflow-x:auto;&::-webkit-scrollbar{display:none}}.tag-editor-input-row{flex-wrap:nowrap}.tag-input{min-width:0;color:inherit;border:1px solid var(--border);border-radius:var(--r);font:inherit;font-size:var(--fs-sm);background:0 0;outline:none;flex:1;padding:3px 8px;&:focus{border-color:var(--accent)}}.tag-input--invalid{border-color:var(--danger,#e55)!important}.pj-name-input{border:none;border-bottom:2px solid var(--accent);color:inherit;background:0 0;outline:none;flex:1;padding:0 0 2px;font-size:1.4rem;font-weight:600}.stats-table{border-collapse:collapse;width:100%;font-size:.8rem}.stats-table th,.stats-table td{text-align:right;border-bottom:1px solid var(--c-border);padding:4px 8px}.stats-table th:first-child,.stats-table td:first-child{text-align:left}.stats-table th{opacity:.5;font-weight:600}.stats-table-label{text-overflow:ellipsis;white-space:nowrap;max-width:120px;font-family:var(--font-mono,monospace);opacity:.7;font-size:.75rem;overflow:hidden}.stats-table-total td{border-top:2px solid var(--c-border);border-bottom:none;font-weight:600}.v0-card{margin-bottom:var(--sp-5);border:1px solid var(--border);border-radius:var(--r);overflow:hidden}.v0-card-header{padding:var(--sp-3) var(--sp-4);background:var(--border);align-items:center;gap:var(--sp-2);display:flex}.v0-card-body{padding:var(--sp-3) var(--sp-4)}.v0-sheet-item{margin-bottom:var(--sp-4)}.v0-sheet-label{font-size:var(--fs-sm);opacity:.7;margin-bottom:var(--sp-1);font-weight:600}.v0-sheet-content{background:var(--border);padding:var(--sp-3);border-radius:var(--r);font-size:var(--fs-sm);white-space:pre-wrap;word-break:break-word;max-height:300px;margin:0;overflow:auto}.pj-name-label{cursor:text;flex:1;margin:0;font-size:1.4rem}.pj-section-title{margin-top:2rem;margin-bottom:.5rem;font-size:1rem}.pj-section-count{opacity:.6;font-size:.75rem;font-weight:400}.pj-tag-list{flex-direction:column;gap:4px;margin-bottom:2rem;display:flex}.pj-tag-row{align-items:center;gap:8px;padding:4px 0;display:flex;& .tag{min-width:80px}}.pj-tag-count{opacity:.7;font-size:12px}.pj-tag-actions{align-items:center;gap:6px;margin-left:auto;display:flex}.pj-num-input{width:80px}.page-header-title{flex:1;margin:0;font-size:1.2rem}.search-results-list{gap:var(--sp-3);margin-top:var(--sp-4);flex-direction:column;display:flex}.search-result-item{gap:var(--sp-2);padding:var(--sp-4);border:1px solid var(--border);border-radius:var(--r);cursor:pointer;flex-direction:column;display:flex}.search-result-item:hover{background:var(--border)}.search-result-header{align-items:center;gap:var(--sp-2);display:flex;& .tag-list{gap:4px;display:flex}}.search-result-preview{font-size:var(--fs-sm);opacity:.8;word-break:break-all;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.export-preview-container{position:relative}.export-preview{background:var(--bg);padding:var(--sp-6) 0;border-top:1px solid var(--border);font-size:var(--fs-base);word-break:break-word;line-height:1.6;&.export-preview--plain{white-space:pre-wrap}}.scroll-to-top-btn{bottom:var(--sp-6);right:var(--sp-6);z-index:var(--z-sticky);background:var(--bg);border:1px solid var(--border);position:fixed;box-shadow:0 2px 8px #0000001a}.compare-page{gap:var(--sp-2);padding:var(--sp-4);flex-direction:column;display:flex}.compare-header{align-items:center;gap:var(--sp-2);padding-bottom:var(--sp-2);border-bottom:1px solid var(--border);display:flex}.compare-title{text-overflow:ellipsis;white-space:nowrap;flex:1;font-weight:700;overflow:hidden}.compare-loading{text-align:center;color:var(--text);opacity:.6}.compare-list{gap:var(--sp-1);flex-direction:column;font-family:monospace;display:flex}.compare-chunk{border-radius:4px;overflow:hidden}.compare-chunk--removed{background:#c0392b1f;border-left:3px solid #c0392b99}.compare-chunk--added{background:#27ae601f;border-left:3px solid #27ae6099}.compare-chunk--kept.compare-chunk--removed{background:#c0392b38}.compare-chunk--kept.compare-chunk--added{background:#27ae6038}.compare-chunk--discarded{opacity:.35}.compare-chunk-text{padding:var(--sp-2) var(--sp-3);white-space:pre-wrap;word-break:break-word;margin:0;font-size:.9em;line-height:1.5}.compare-chunk-btns{gap:var(--sp-1);padding:var(--sp-1) var(--sp-2);border-top:1px solid var(--border);display:flex}.btn-active{background:var(--hl);color:var(--bg);border-color:var(--hl)}.typo{font-family:var(--typo-ff);font-size:var(--typo-fs);font-weight:var(--typo-fw);line-height:var(--typo-lh);& p{margin:var(--typo-paragraph-spacing,.5em) 0;text-indent:var(--typo-indent,0);line-height:1.5}& h1,& h2,& h3,& h4,& h5,& h6{color:var(--text-bold);line-height:1.4;font-weight:var(--typo-fw-bold)}& h1{margin:1.2em 0 .4em;font-size:1.8em;font-weight:900}& h2{margin:1em 0 .4em;font-size:1.5em;font-weight:900}& h3{margin:.8em 0 .3em;font-size:1.4em;font-weight:800}& h4{margin:.8em 0 .3em;font-size:1.3em}& ul,& ol{margin:1em 0;padding-left:2.5em}& li p{text-indent:0;margin:.2em 0}& ul{list-style-type:disc}& ol{list-style-type:decimal}& blockquote{border-left:4px solid var(--border);margin:1.5em 0;padding:.25em 0 .25em .25em;font-style:italic}& code{background:var(--border);font-family:var(--font-mono);border-radius:3px;padding:.2em .4em;font-size:.9em}& pre{background:var(--border);font-family:var(--font-mono);border-radius:5px;margin:1.5em 0;padding:1.5em;line-height:1.4;overflow-x:auto}& img{max-width:80%;height:auto;display:block}& a{color:var(--hl);cursor:pointer;text-decoration:underline}& hr{border:none;border-top:1px solid var(--hr);margin:1.5em 0}}.typo--preview{font-size:var(--typo-preview-fs)}.editor-toolbar{background:var(--bg);z-index:var(--z-toolbar);padding:var(--sp-2) var(--sp-4);gap:var(--sp-1);flex-wrap:wrap;align-items:center;min-height:44px;display:flex;position:sticky;top:0;&:after{content:"";bottom:0;left:var(--sp-4);right:var(--sp-4);background:var(--border);height:1px;position:absolute}.main-layout.sidebar-closed &{padding-left:52px}& .separator{background:var(--border);width:1px;height:16px;margin:0 1px}& button.bold{background:var(--border)}}.editor-tool-overlay-anchor{top:var(--sp-2);height:0;z-index:var(--z-toolbar);position:sticky}.editor-tool-overlay{right:var(--sp-2);padding:var(--sp-1) var(--sp-2);align-items:center;gap:var(--sp-1);border-radius:var(--r);background:var(--bg);border:1px solid var(--border);display:flex;position:absolute;top:0}.editor-tool-status{align-items:center;gap:var(--sp-2);font-family:var(--font-mono);padding:2px var(--sp-1);display:flex}.editor-tool-btn{padding:2px var(--sp-2);border-radius:var(--r);cursor:pointer;font-size:var(--fs-xs);justify-content:center;align-items:center;min-width:1.5rem;line-height:1;display:flex}.editor-tool-btn:hover{background:var(--border)}.editor-tool-charcount{font-size:var(--fs-xs)}.editor-section-marker{align-items:center;gap:var(--sp-4);cursor:text;padding:0 1em;display:flex;position:relative}.editor-section-marker--start{border-bottom:1px solid var(--ultra-dim);flex-direction:column;align-items:stretch;margin-bottom:1rem;padding-top:45dvh}.editor-section-marker--start:before{bottom:0}.editor-section-marker--end{border-top:1px solid var(--ultra-dim);align-items:flex-end;margin-top:1rem;padding-bottom:45dvh}.editor-section-marker--end:after{top:0}.editor-section-label{letter-spacing:.1em;color:var(--ultra-dim);white-space:nowrap;background:var(--bg);padding:0 var(--sp-2);z-index:1;font-size:.625rem;line-height:1;position:relative}.editor-sod-line{align-items:center;gap:var(--sp-4);width:100%;padding-top:var(--sp-2);display:flex}.editor-section-marker .separator-line{border-color:var(--ultra-dim);align-self:center;margin:0}.cm-editor-wrap{max-width:720px;min-height:10svh;margin:0 auto;padding:0 1rem}.cm-editor-wrap .cm-editor{outline:none}.cm-editor-wrap .cm-placeholder{opacity:.35;pointer-events:none;font-style:italic}.cm-editor-wrap .cm-content{color:var(--cm-fg)}.cm-editor-wrap .cm-activeLine{color:var(--text);--cm-hl:var(--hl);--cm-text-bold:var(--text-bold);--cm-md-mark:var(--md-mark);background:0 0!important}.modal-overlay{z-index:var(--z-modal);justify-content:center;align-items:flex-start;padding:5vh 2%;display:flex;position:fixed;inset:0;overflow-y:auto}.modal-body{background:var(--bg);border:2px solid var(--border);border-radius:var(--r);padding:var(--sp-5);gap:var(--sp-4);width:min(480px,100%);color:var(--text);flex-direction:column;display:flex;&>h3{margin:0}}.modal-actions{justify-content:flex-end;gap:var(--sp-2);display:flex}.backup-token-box{padding:var(--sp-2) var(--sp-3);border:1px solid var(--border);border-radius:var(--r);font-size:var(--fs-sm);gap:var(--sp-1);flex-direction:column;display:flex}.backup-token-actions{gap:var(--sp-1);flex-shrink:0;display:flex}.backup-expiry{font-size:var(--fs-xs,.75em);opacity:.6}.backup-show-all-label{align-items:center;gap:var(--sp-2);font-size:var(--fs-sm);cursor:pointer;display:flex}.backup-list-hint{font-size:var(--fs-sm);opacity:.6;margin:0}.backup-file-btn{text-align:left;gap:var(--sp-1);flex-direction:column;width:100%;display:flex}.backup-file-meta{font-size:var(--fs-xs,.75em);opacity:.6}.backup-file-name{word-break:break-all}.modal-input{width:100%}.flex{display:flex}.flex-column{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-1{flex:1}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.gap-1{gap:1px}.gap-2{gap:2px}.gap-4{gap:var(--sp-1)}.gap-8{gap:var(--sp-2)}.gap-12{gap:var(--sp-3)}.gap-16{gap:var(--sp-4)}.w-full{width:100%}.min-w-0{min-width:0}.max-w-240{max-width:240px}.max-w-720{contain:inline-size;width:min(100%,720px);max-width:720px}.overflow-y-auto{overflow-y:auto}.text-sm{font-size:var(--fs-sm)}.text-center{text-align:center}.italic{font-style:italic}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.m-0{margin:0}.m-auto{margin:0 auto}.mt-1{margin-top:var(--sp-1)}.mt-32{margin-top:var(--sp-6)}.p-16{padding:var(--sp-4)}.py-2{padding-top:2px;padding-bottom:2px}@media (width<=768px){.hidden-mobile{display:none!important}}.analysis-header{margin-bottom:var(--sp-6);min-width:0}.analysis-header h1{text-overflow:ellipsis;white-space:nowrap;min-width:0;margin:0;overflow:hidden}.analysis-options{gap:var(--sp-4);margin-bottom:var(--sp-4);font-size:var(--fs-sm);display:flex}.analysis-summary-grid{gap:var(--sp-4);margin-bottom:var(--sp-4);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));display:grid}.summary-item{padding:var(--sp-3) var(--sp-4);font-size:var(--fs-sm);flex-direction:column;display:flex}.summary-item .label{opacity:.6;font-size:var(--fs-xs);margin-bottom:var(--sp-1)}.summary-item .value{font-weight:700;font-size:var(--fs-lg)}.summary-item .value-group{gap:var(--sp-2);font-weight:700;font-size:var(--fs-md);display:flex}.analysis-loading{padding:var(--sp-6);opacity:.5}.analysis-table-wrap{padding:0 var(--sp-4);margin:0 -16px;overflow-x:auto}.analysis-table{border-collapse:collapse;width:100%;font-size:var(--fs-sm);table-layout:fixed}.analysis-table th,.analysis-table td{padding:var(--sp-2) var(--sp-1);border-bottom:1px solid var(--border)}.analysis-table th:not(:first-child),.analysis-table td:not(:first-child){text-align:right;white-space:nowrap;width:80px}.analysis-table th{text-align:left}.analysis-table tbody tr{opacity:.8}.analysis-table tbody tr.is-group{opacity:1;font-weight:700}.analysis-table .cell-name{align-items:center;gap:var(--sp-1);display:flex;overflow:hidden}.analysis-table .cell-name .label-text{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}@media (width<=480px){.analysis-table{font-size:12px}.analysis-table th:not(:first-child),.analysis-table td:not(:first-child){width:25%}}.cm-panels{color:inherit!important;background:0 0!important;border:none!important}.cm-panels-top{padding:var(--sp-2) var(--sp-2) 0}.cm-search.cm-panel{background:var(--bg)!important;border:1px solid var(--border)!important;border-radius:var(--r)!important;padding:var(--sp-2) var(--sp-3)!important;align-items:center!important;gap:var(--sp-1) var(--sp-2)!important;font-family:var(--font-sans)!important;flex-wrap:wrap!important;display:flex!important}.cm-search.cm-panel input.cm-textfield{all:unset;padding:var(--sp-1) var(--sp-3);border:1px solid var(--border);border-radius:var(--r);background:var(--bg);color:var(--text);font:inherit;font-size:var(--fs-sm);min-height:var(--btn-min);box-sizing:border-box;min-width:120px}.cm-search.cm-panel input.cm-textfield:focus{border-color:var(--hl);outline:none}.cm-search.cm-panel button.cm-button{all:unset;padding:var(--sp-1) var(--sp-2);min-height:var(--btn-min);border:1px solid var(--border);border-radius:var(--r);color:var(--text);font:inherit;font-size:var(--fs-sm);cursor:pointer;white-space:nowrap;box-sizing:border-box;background:0 0;justify-content:center;align-items:center;display:inline-flex}.cm-search.cm-panel button.cm-button:hover{background:var(--border)}.cm-search.cm-panel button[name=close]{all:unset;width:var(--btn-min);height:var(--btn-min);border-radius:var(--r);color:var(--text);cursor:pointer;justify-content:center;align-items:center;margin-left:auto;font-size:1rem;display:inline-flex}.cm-search.cm-panel button[name=close]:hover{background:var(--border)}.cm-search.cm-panel label{align-items:center;gap:var(--sp-1);font-size:var(--fs-sm);color:var(--text);cursor:pointer;user-select:none;display:inline-flex}.cm-search.cm-panel br{content:"";flex-basis:100%;height:0}.sldt-active{z-index:var(--z-toast)!important}
