:root{--bg:#f4f5fa;--surface:#fff;--surface-2:#f0f1f8;--hover:#e7e9f4;--text:#1b1d2a;--muted:#71768a;--border:#e3e5ef;--accent:#5b5bd6;--accent-soft:#e8e8fb;--accent-text:#fff;--danger:#d6404f;--danger-soft:#fde8ea;--border-strong:color-mix(in srgb, var(--text) 32%, transparent);--mark:#fff2a8;--shadow:0 1px 2px #1416320f, 0 4px 14px #1416320f;--radius:14px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--nc-red-bg:#fde4e4;--nc-red:#f28b8b;--nc-orange-bg:#ffeadb;--nc-orange:#f5a566;--nc-yellow-bg:#fff6cc;--nc-yellow:#efcf4a;--nc-green-bg:#def5e3;--nc-green:#6fcf86;--nc-teal-bg:#d8f3f0;--nc-teal:#52c7bb;--nc-blue-bg:#e0ecff;--nc-blue:#6ea2f5;--nc-purple-bg:#ece4fb;--nc-purple:#a486e8;--nc-pink-bg:#fde2ef;--nc-pink:#ee86b8;--nc-gray-bg:#e9eaee;--nc-gray:#a3a8b5}:root[data-theme=dark]{--bg:#12131a;--surface:#1a1c26;--surface-2:#222532;--hover:#2b2f3f;--text:#e9eaf2;--muted:#9297ab;--border:#2b2e3d;--accent:#8f8ff5;--accent-soft:#2d2f55;--accent-text:#12131a;--danger:#ff7480;--danger-soft:#4a2229;--mark:#6b5b12;--shadow:0 1px 2px #0006, 0 6px 18px #0000004d;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--nc-red-bg:#4a2429;--nc-red:#d9737b;--nc-orange-bg:#4a3222;--nc-orange:#dc9052;--nc-yellow-bg:#453e1d;--nc-yellow:#cdb43c;--nc-green-bg:#1f3d2b;--nc-green:#57b573;--nc-teal-bg:#1c3c3a;--nc-teal:#45b0a5;--nc-blue-bg:#1f3151;--nc-blue:#5b8fe0;--nc-purple-bg:#35294f;--nc-purple:#9077d6;--nc-pink-bg:#4a2540;--nc-pink:#d4739f;--nc-gray-bg:#33363f;--nc-gray:#8b90a0}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#12131a;--surface:#1a1c26;--surface-2:#222532;--hover:#2b2f3f;--text:#e9eaf2;--muted:#9297ab;--border:#2b2e3d;--accent:#8f8ff5;--accent-soft:#2d2f55;--accent-text:#12131a;--danger:#ff7480;--danger-soft:#4a2229;--mark:#6b5b12;--shadow:0 1px 2px #0006, 0 6px 18px #0000004d;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--nc-red-bg:#4a2429;--nc-red:#d9737b;--nc-orange-bg:#4a3222;--nc-orange:#dc9052;--nc-yellow-bg:#453e1d;--nc-yellow:#cdb43c;--nc-green-bg:#1f3d2b;--nc-green:#57b573;--nc-teal-bg:#1c3c3a;--nc-teal:#45b0a5;--nc-blue-bg:#1f3151;--nc-blue:#5b8fe0;--nc-purple-bg:#35294f;--nc-purple:#9077d6;--nc-pink-bg:#4a2540;--nc-pink:#d4739f;--nc-gray-bg:#33363f;--nc-gray:#8b90a0}}.nc-red{--nc:var(--nc-red-bg);--nc-strong:var(--nc-red)}.nc-orange{--nc:var(--nc-orange-bg);--nc-strong:var(--nc-orange)}.nc-yellow{--nc:var(--nc-yellow-bg);--nc-strong:var(--nc-yellow)}.nc-green{--nc:var(--nc-green-bg);--nc-strong:var(--nc-green)}.nc-teal{--nc:var(--nc-teal-bg);--nc-strong:var(--nc-teal)}.nc-blue{--nc:var(--nc-blue-bg);--nc-strong:var(--nc-blue)}.nc-purple{--nc:var(--nc-purple-bg);--nc-strong:var(--nc-purple)}.nc-pink{--nc:var(--nc-pink-bg);--nc-strong:var(--nc-pink)}.nc-gray{--nc:var(--nc-gray-bg);--nc-strong:var(--nc-gray)}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;font:15px/1.55 system-ui,-apple-system,Segoe UI,Roboto,Noto Color Emoji,Apple Color Emoji,Segoe UI Emoji,sans-serif}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0;border-radius:10px;padding:6px 10px;transition:background .12s,transform 50ms,filter .12s}button:hover{background:var(--hover)}button:active{transform:scale(.97)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:1px}button.primary{background:var(--accent);color:var(--accent-text);box-shadow:0 2px 8px color-mix(in srgb, var(--accent) 35%, transparent);padding:8px 14px;font-weight:600}button.primary:hover{filter:brightness(1.07);background:var(--accent)}button.danger{color:var(--danger);font-weight:600}button.danger:hover{background:var(--danger-soft)}button:disabled{opacity:.45;cursor:default;box-shadow:none}button.link,.link-btn{color:var(--accent);text-align:center;background:0 0;padding:6px;font-size:14px}.btn{background:var(--surface-2);color:var(--text);border-radius:10px;padding:8px 14px;font-weight:600;text-decoration:none;display:inline-block}.btn:hover{background:var(--hover)}input,select,textarea{background:var(--surface-2);border:1px solid #0000;border-radius:10px;outline:none;padding:9px 12px;transition:border-color .12s,background .12s,box-shadow .12s}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}::selection{background:var(--accent-soft)}mark{background:var(--mark);color:inherit;border-radius:3px;padding:0 1px}kbd{background:var(--surface-2);border:1px solid var(--border);border-bottom-width:2px;border-radius:6px;padding:0 6px;font:12px/1.6 ui-monospace,monospace}hr{border:0;border-top:1px solid var(--border);margin:6px 0}.muted{color:var(--muted)}.small{font-size:12px}.pad{padding:12px 16px}.spacer{flex:1}.ellipsis{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.error{color:var(--danger);font-size:14px}.ok-msg{color:#2f9e5a;font-size:14px}.emoji{text-align:center;flex:none;width:1.4em;display:inline-block}.big{margin-bottom:4px;font-size:44px;line-height:1.2}.seg{background:var(--surface-2);border-radius:10px;gap:2px;padding:2px;display:inline-flex}.seg button{border-radius:8px;padding:6px 12px}.seg button.on{background:var(--surface);box-shadow:var(--shadow);font-weight:600}.seg.mini button{padding:3px 9px;font-size:13px}.login-wrap{background:radial-gradient(circle at 20% 10%, var(--accent-soft), transparent 55%), var(--bg);place-items:center;min-height:100%;padding:16px;display:grid}.login{background:var(--surface);width:100%;max-width:360px;box-shadow:var(--shadow);border:1px solid var(--border);border-radius:20px;flex-direction:column;gap:12px;padding:28px;display:flex}.login h1{letter-spacing:-.02em;margin:0;font-size:28px}.login p{margin:0 0 6px}.app{grid-template-columns:270px 350px 1fr;height:100%;display:grid}.pane{border-right:1px solid var(--border);background:var(--surface);flex-direction:column;min-width:0;min-height:0;display:flex}.pane-cats{background:var(--surface-2)}.pane-list{background:var(--bg)}.pane-note{background:var(--surface);border-right:0}.pane-head{align-items:center;gap:8px;min-height:58px;padding:12px 14px;display:flex}.brand{letter-spacing:-.01em;align-items:center;gap:8px;font-size:17px;display:flex}.logo{background:linear-gradient(135deg, var(--accent), #9b7bf0);color:#fff;border-radius:9px;place-items:center;width:28px;height:28px;font-weight:800;display:inline-grid}.list-title{align-items:center;min-width:0;font-size:17px;display:flex}.back{display:none}.sidebar{flex:1;padding:4px 0 24px;overflow-y:auto}.section-title{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);justify-content:space-between;align-items:center;padding:16px 16px 6px;font-size:11px;font-weight:600;display:flex}.cat{border-radius:10px;align-items:center;gap:2px;margin:1px 8px;padding-right:6px;transition:background .1s,box-shadow .1s;display:flex}.cat:hover{background:var(--hover)}.cat.active{background:var(--accent-soft);color:var(--accent);font-weight:600}.cat.active .count{color:inherit;opacity:.75}.cat.drop{background:var(--accent-soft);box-shadow:inset 0 0 0 2px var(--accent)}.cat button:hover{background:0 0}.twisty{text-align:center;width:20px;color:var(--muted);flex:none;padding:0}.cat-name{text-align:left;flex:1;align-items:center;gap:6px;min-width:0;padding:7px 4px;display:flex}.cat-name .ellipsis{flex:1}.count{color:var(--muted);font-size:12px;font-weight:500}.cat-actions{flex:none;display:none}.cat:hover .cat-actions{display:flex}.cat-actions button{padding:2px 6px;font-size:13px}.cat-actions button:hover{background:#7f7f7f38}.search{padding:4px 14px 8px}.search input{background:var(--surface);border-color:var(--border);width:100%}.list-tools{align-items:center;gap:8px;padding:0 14px 8px;display:flex}.list-tools select{background:var(--surface);border-color:var(--border);padding:4px 8px;font-size:13px}.notes{flex-direction:column;flex:1;align-content:start;gap:10px;margin:0;padding:4px 12px 16px;list-style:none;display:flex;overflow-y:auto}.notes.grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;display:grid}.notes li{min-width:0}.note-card{text-align:left;border-radius:var(--radius);background:var(--nc,var(--surface));border:1px solid var(--border);border-left:5px solid var(--nc-strong,var(--border));width:100%;height:100%;box-shadow:var(--shadow);align-items:stretch;padding:0;transition:transform .1s,box-shadow .12s,filter .12s;display:flex;overflow:hidden}.note-card:hover{background:var(--nc,var(--surface));filter:brightness(.98);transform:translateY(-1px)}.note-card.active{outline:2px solid var(--accent);outline-offset:1px}.note-card.is-dragging{opacity:.45}.note-card .cover{object-fit:cover;background:var(--surface-2);flex:none;order:2;width:76px;min-height:76px}.note-body{flex:1;min-width:0;padding:12px 14px}.note-title{text-overflow:ellipsis;white-space:nowrap;font-weight:650;overflow:hidden}.note-preview{color:color-mix(in srgb, var(--text) 62%, transparent);overflow-wrap:anywhere;max-height:2.9em;margin-top:2px;font-size:13px;overflow:hidden}.note-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:4px 10px;margin-top:6px;font-size:12px;display:flex}.chip{background:color-mix(in srgb, var(--text) 8%, transparent);border-radius:999px;padding:0 8px}.notes.grid .note-card{border-left-width:1px;border-top:5px solid var(--nc-strong,var(--border));flex-direction:column}.notes.grid .note-card .cover{order:0;width:100%;height:100px;min-height:0}.notes.grid .note-preview{max-height:4.4em}.pane-list.dragging .notes{cursor:grabbing}.empty-list{text-align:center;color:var(--muted);padding:32px 20px}.empty-list p{margin:4px 0 14px}.editor{background:var(--nc,var(--surface));flex-direction:column;height:100%;padding:0 32px 32px;transition:background .2s;display:flex;overflow-y:auto}.editor-bar{background:var(--nc,var(--surface));z-index:2;align-items:center;gap:8px;padding:14px 0 8px;display:flex;position:sticky;top:0}.editor-bar select{background:color-mix(in srgb, var(--surface) 65%, transparent);min-width:0;max-width:280px}.status{color:var(--muted);white-space:nowrap;margin-left:auto;font-size:12px}.status.error{color:var(--danger)}.color-row{flex-wrap:wrap;align-items:center;gap:8px;padding:4px 0 10px;display:flex}.swatch{background:var(--nc-strong);width:24px;height:24px;box-shadow:inset 0 0 0 2px var(--surface);border:2px solid #0000;border-radius:50%;padding:0}.swatch:hover{background:var(--nc-strong);transform:scale(1.12)}.swatch.on{border-color:var(--text)}.swatch.none{background:var(--surface);border:2px dashed var(--muted);box-shadow:none}.swatch.none:hover{background:var(--surface)}.swatch.none.on{border-style:solid;border-color:var(--text)}.title{letter-spacing:-.015em;box-shadow:none;background:0 0;border:0;padding:6px 0;font-size:28px;font-weight:700}.expense-toggle{border:1px solid var(--border);background:var(--surface);border-radius:999px;margin:2px 0 12px;padding:4px 12px;font-size:13px}.expenses-box{border:1px solid var(--border);background:var(--surface-2);border-radius:12px;flex-direction:column;gap:8px;margin:2px 0 14px;padding:10px 12px;display:flex}.expenses-box-head{font-size:13px;font-weight:600}.expense-line{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.expense-line input{border-radius:8px;padding:5px 10px;font-size:13px}.expense-line input[type=number]{width:100px}.expense-line input[type=text]{flex:1;min-width:120px}.expense-line .x{color:var(--muted);background:0 0;border:0;padding:4px 8px}.expense-line .x:hover{color:var(--danger)}.expense-add-more{color:var(--accent);background:0 0;border:0;align-self:flex-start;padding:2px 0;font-size:13px}.title:focus{box-shadow:none;border:0}.toolbar{background:color-mix(in srgb, var(--surface) 55%, transparent);border-radius:12px;flex-wrap:wrap;align-items:center;gap:2px;width:fit-content;max-width:100%;margin:2px 0 6px;padding:4px;display:flex}.toolbar button{min-width:32px;padding:4px 8px;font-size:14px}.toolbar .sep{background:var(--border);width:1px;height:18px;margin:0 4px}.note-box{border:1px solid var(--border-strong);background:var(--nc,var(--surface));border-radius:14px;margin:6px 0 4px;transition:border-color .12s,box-shadow .12s;position:relative}.note-box:hover{border-color:color-mix(in srgb, var(--text) 45%, transparent)}.note-box:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.body{resize:vertical;width:100%;height:clamp(300px,48vh,640px);min-height:160px;box-shadow:none;border:0;border-radius:14px;padding:14px 16px;font-size:16px;line-height:1.7;display:block}.body:focus{box-shadow:none;border:0}.preview{overflow-wrap:anywhere;border-radius:14px;height:clamp(300px,48vh,640px);padding:12px 16px;font-size:16px;overflow-y:auto}.scroll-shadows{--cover:var(--nc,var(--surface));--edge:color-mix(in srgb, var(--accent) 55%, transparent);background-color:var(--cover);background-image:linear-gradient(var(--cover) 30%, transparent), linear-gradient(transparent, var(--cover) 70%), radial-gradient(farthest-side at 50% 0, var(--edge), transparent), radial-gradient(farthest-side at 50% 100%, var(--edge), transparent);scrollbar-width:thin;scrollbar-color:color-mix(in srgb, var(--text) 40%, transparent) transparent;background-position:top,bottom,top,bottom;background-repeat:no-repeat;background-size:100% 36px,100% 36px,100% 14px,100% 14px;background-attachment:local,local,scroll,scroll}.scroll-shadows::-webkit-scrollbar{width:10px}.scroll-shadows::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--text) 35%, transparent);background-clip:padding-box;border:2px solid #0000;border-radius:99px}.more-below{background:var(--accent);color:var(--accent-text);border-radius:99px;padding:4px 12px;font-size:12px;font-weight:700;animation:1.6s ease-in-out infinite bob;position:absolute;bottom:12px;left:50%;transform:translate(-50%);box-shadow:0 4px 14px #00000047}.more-below:hover{background:var(--accent);filter:brightness(1.08)}@keyframes bob{0%,to{transform:translate(-50%)}50%{transform:translate(-50%,3px)}}.md>:first-child{margin-top:0}.md h1,.md h2,.md h3{letter-spacing:-.01em;margin:1.1em 0 .4em;line-height:1.25}.md h1{font-size:1.6em}.md h2{font-size:1.3em}.md h3{font-size:1.1em}.md p{margin:.6em 0;line-height:1.7}.md ul,.md ol{margin:.5em 0;padding-left:1.4em}.md ul.tasks{padding-left:0;list-style:none}.md li.task label{cursor:pointer;align-items:flex-start;gap:8px;display:flex}.md li.task input{width:17px;height:17px;accent-color:var(--accent);flex:none;margin-top:.35em}.md li.task.done span{color:var(--muted);text-decoration:line-through}.md blockquote{border-left:4px solid var(--nc-strong,var(--accent));color:color-mix(in srgb, var(--text) 75%, transparent);background:color-mix(in srgb, var(--text) 5%, transparent);border-radius:0 10px 10px 0;margin:.7em 0;padding:2px 14px}.md code{background:color-mix(in srgb, var(--text) 10%, transparent);border-radius:6px;padding:1px 6px;font:.9em ui-monospace,Cascadia Code,Consolas,monospace}.md pre{background:color-mix(in srgb, var(--text) 8%, transparent);border-radius:12px;padding:12px 14px;overflow-x:auto}.md pre code{background:0 0;padding:0}.md a{color:var(--accent)}.md hr{margin:1em 0}.images-head{align-items:center;gap:10px;margin-top:18px;display:flex}.images-head h4{margin:0;font-size:14px}.images-head .seg{margin-left:auto}.images{flex-wrap:wrap;gap:12px;margin-top:10px;display:flex}.images figure{min-width:0;margin:0;position:relative}.images .thumb{cursor:zoom-in;border-radius:12px;padding:0;display:block}.images .thumb:hover{filter:brightness(.96);background:0 0}.images img{border:1px solid var(--border);object-fit:cover;box-shadow:var(--shadow);background:var(--surface-2);border-radius:12px;display:block}.images.size-s img{width:auto;max-width:200px;height:110px}.images.size-m img{width:auto;max-width:100%;height:240px}.images.size-l figure{flex:100%}.images.size-l img{object-fit:contain;background:color-mix(in srgb, var(--text) 6%, transparent);width:100%;height:auto;max-height:75vh}.images figure .x{color:#fff;opacity:0;background:#0009;border-radius:8px;padding:0 8px;font-size:12px;transition:opacity .12s;position:absolute;top:8px;right:8px}.images figure:hover .x,.images figure .x:focus-visible{opacity:1}.add-image{border:2px dashed var(--border);width:110px;height:110px;color:var(--muted);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:2px;font-size:13px;display:flex}.add-image span{font-size:24px;line-height:1}.images.size-m .add-image{height:240px}.meta{margin-top:18px;font-size:12px}.empty{text-align:center;align-content:center;place-items:center;height:100%;padding:20px;display:grid}.empty p{margin:2px 0}.fab{right:max(18px, env(safe-area-inset-right));bottom:calc(18px + env(safe-area-inset-bottom));z-index:8;width:58px;height:58px;color:var(--accent-text);background:linear-gradient(135deg, var(--accent), color-mix(in srgb, var(--accent) 62%, #d16bff));box-shadow:0 6px 18px color-mix(in srgb, var(--accent) 45%, transparent), 0 2px 6px #00000040;border-radius:50%;place-items:center;padding:0;font-size:30px;font-weight:300;line-height:1;transition:transform .15s,box-shadow .15s,filter .15s;display:grid;position:fixed}.fab:hover{background:linear-gradient(135deg, var(--accent), color-mix(in srgb, var(--accent) 62%, #d16bff));filter:brightness(1.08);transform:translateY(-2px)rotate(90deg)}.fab:active{transform:scale(.94)}.fab:focus-visible{outline:3px solid var(--accent-soft);outline-offset:3px}.sheet{max-width:480px}.sheet-grip{background:var(--border-strong);border-radius:99px;width:44px;height:5px;margin:-8px auto 0;display:none}.emoji-toggle{border:1px dashed var(--border-strong);cursor:pointer}.qa-field{flex-direction:column;gap:4px;display:flex}.qa-content{resize:vertical;min-height:110px;line-height:1.6}.lock-screen{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:6px;min-height:240px;padding:24px 0;display:flex}.lock-screen h3{margin:0;font-size:20px}.lock-screen p{margin:0 0 10px}.lock-screen form{flex-wrap:wrap;justify-content:center;gap:8px;width:100%;max-width:360px;display:flex}.lock-screen form input{flex:1;min-width:160px}.lock-chip{padding:4px 8px}.lock-chip.open{opacity:.75}.lock-chip:not(.open){cursor:default}.trash-banner{background:var(--danger-soft);border-radius:12px;flex-wrap:wrap;align-items:center;gap:8px;margin:4px 0 8px;padding:10px 12px;display:flex}.menu-wrap{position:relative}.menu-back{z-index:3;position:fixed;inset:0}.menu{z-index:4;background:var(--surface);border:1px solid var(--border);min-width:220px;box-shadow:var(--shadow), 0 12px 32px #0000002e;border-radius:12px;flex-direction:column;padding:6px;display:flex;position:absolute;top:calc(100% + 4px);right:0}.menu button{text-align:left;padding:8px 10px}.menu button.danger{color:var(--danger)}.modal-back{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:10;background:#0a0c1880;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal{background:var(--surface);border-radius:20px;flex-direction:column;gap:14px;width:100%;max-width:460px;max-height:92vh;padding:22px;display:flex;overflow-y:auto;box-shadow:0 20px 60px #00000059}.modal h2{margin:0;font-size:19px}.modal h3{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0 0 8px;font-size:13px}.modal-name{align-items:center;gap:10px;display:flex}.modal-name input{flex:1}.modal-preview{background:var(--accent-soft);border-radius:12px;flex:none;place-items:center;width:44px;height:44px;font-size:24px;display:grid}.modal-actions{justify-content:flex-end;gap:8px;display:flex}.expenses-modal{max-width:420px}.expenses-modal header{align-items:center;gap:8px;display:flex}.expenses-month-bar{justify-content:center;align-items:center;gap:12px;font-size:15px;display:flex}.expenses-month-bar button{padding:4px 10px}.expenses-total{text-align:center;padding:6px 0;font-size:16px}.expenses-cats{border-top:1px solid var(--border);flex-direction:column;gap:6px;padding:8px 0;display:flex}.expenses-cats li{align-items:center;gap:8px;font-size:13px;display:flex}.expenses-items{flex-direction:column;gap:4px;max-height:260px;display:flex;overflow-y:auto}.expenses-items button{text-align:left;border-radius:10px;align-items:center;gap:8px;width:100%;padding:8px 10px;font-size:13px;display:flex}.expenses-items button:hover{background:var(--hover)}.emoji-picker{flex-direction:column;gap:10px;min-height:0;display:flex}.emoji-custom{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.emoji-input{text-align:center;width:64px;padding:6px;font-size:20px}.emoji-scroll{border:1px solid var(--border);border-radius:12px;max-height:260px;padding:8px 10px;overflow-y:auto}.emoji-group{text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin:8px 0 4px;font-size:11px;font-weight:600}.emoji-grid{grid-template-columns:repeat(auto-fill,minmax(38px,1fr));gap:2px;display:grid}.emoji-btn{text-align:center;border-radius:9px;padding:4px 0;font-size:21px}.emoji-btn.on{background:var(--accent-soft);outline:2px solid var(--accent)}.settings{gap:18px;max-width:500px}.settings-head{justify-content:space-between;align-items:center;display:flex}.stats{grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:12px;display:grid}.stats div{background:var(--surface-2);text-align:center;border-radius:12px;flex-direction:column;padding:10px 6px;display:flex}.stats b{font-size:17px}.stats span{color:var(--muted);font-size:11px}.admin-badge{background:var(--accent-soft);color:var(--accent);letter-spacing:0;text-transform:none;border-radius:99px;margin-left:8px;padding:2px 8px;font-size:11px;font-weight:700}.login .hint{margin:-4px 0 2px}.quota{flex-direction:column;gap:6px;margin-bottom:14px;display:flex}.quota-bar{background:var(--surface-2);border-radius:99px;height:8px;overflow:hidden}.quota-bar div{background:var(--accent);border-radius:99px;height:100%;transition:width .3s}.quota-bar div.full{background:var(--danger)}.pw-form{flex-direction:column;gap:8px;display:flex}.shortcuts{gap:6px;margin:0;display:grid}.shortcuts div{justify-content:space-between;gap:12px;font-size:14px;display:flex}.shortcuts dt{color:var(--muted);font-family:ui-monospace,monospace;font-size:13px}.shortcuts dd{text-align:right;margin:0}.toasts{left:50%;bottom:max(20px, env(safe-area-inset-bottom));z-index:30;pointer-events:none;flex-direction:column;gap:8px;width:min(92vw,420px);display:flex;position:fixed;transform:translate(-50%)}.toast{pointer-events:auto;color:#fff;background:#232634;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:11px 14px;font-size:14px;animation:.18s ease-out toast-in;display:flex;box-shadow:0 8px 28px #00000059}.toast button{color:#a9a9ff;padding:2px 8px;font-weight:700}.toast button:hover{background:#ffffff1a}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.lightbox{z-index:40;color:#fff;background:#06070cf0;flex-direction:column;display:flex;position:fixed;inset:0}.lb-top{align-items:center;gap:6px;padding:10px 12px;display:flex}.lb-top button,.lb-btn{color:#fff;border-radius:10px;padding:6px 10px;font-size:15px;text-decoration:none}.lb-top button:hover,.lb-btn:hover{background:#ffffff24}.lb-count{font-variant-numeric:tabular-nums;opacity:.85}.lb-name{opacity:.6;max-width:38vw;margin-left:8px;font-size:13px}.lb-zoom{opacity:.7;text-align:center;font-variant-numeric:tabular-nums;min-width:42px;font-size:12px}.lb-stage{touch-action:pan-y;-webkit-user-select:none;user-select:none;flex:1;grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr);place-items:center;min-height:0;display:grid;position:relative;overflow:hidden}.lb-stage.zoomed{cursor:grab;touch-action:none}.lb-stage img{object-fit:contain;will-change:transform;width:auto;min-width:0;max-width:100%;height:auto;min-height:0;max-height:100%;transition:opacity .15s}.lb-nav{color:#fff;background:#ffffff14;border-radius:14px;width:52px;height:72px;font-size:40px;line-height:1;position:absolute;top:50%;transform:translateY(-50%)}.lb-nav:hover{background:#fff3}.lb-nav.prev{left:10px}.lb-nav.next{right:10px}.lb-spinner{border:3px solid #ffffff40;border-top-color:#fff;border-radius:50%;width:34px;height:34px;animation:.8s linear infinite spin;position:absolute}@keyframes spin{to{transform:rotate(360deg)}}.lb-strip{justify-content:center;gap:8px;padding:10px 12px;display:flex;overflow-x:auto}.lb-strip button{opacity:.55;border:2px solid #0000;border-radius:8px;flex:none;padding:0}.lb-strip button.on{opacity:1;border-color:#fff}.lb-strip img{object-fit:cover;border-radius:6px;width:58px;height:44px;display:block}@media (width<=900px){.app{grid-template-columns:1fr}.pane{border-right:0;display:none}.app[data-view=cats] .pane-cats,.app[data-view=list] .pane-list,.app[data-view=note] .pane-note{display:flex}.back{display:inline-block}.cat-actions{display:flex}.cat{margin:2px 10px}.cat-name{padding:10px 4px}.editor{padding:0 16px 24px}.editor-bar{flex-wrap:wrap}.editor-bar select{max-width:46vw}.images.size-m img{height:200px}.images figure .x{opacity:1}.modal{padding:18px}.stats{grid-template-columns:repeat(2,1fr)}.lb-nav{width:44px;height:60px;font-size:32px}.lb-name{display:none}.notes.grid{grid-template-columns:repeat(2,1fr)}.app[data-view=note] .fab{display:none}.fab:hover{transform:none}.sheet-back{place-items:end center;padding:0}.sheet{max-width:none;max-height:94vh;padding-bottom:calc(18px + env(safe-area-inset-bottom));border-radius:22px 22px 0 0;animation:.2s ease-out sheet-up}.sheet-grip{display:block}}@keyframes sheet-up{0%{opacity:.6;transform:translateY(40px)}to{opacity:1;transform:none}}@media (width>=901px){.pane-list .pane-head .back{display:none}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
