html,body,#root{height:100%}[hidden]{display:none!important}img{max-width:100%}:root{--bg:#fff;--bg-soft:#f7f7f5;--bg-hover:#efefed;--fg:#37352f;--fg-muted:#787774;--fg-faint:#b4b2ad;--border:#e9e9e7;--border-strong:#d3d1cb;--accent:#2383e2;--accent-soft:#e7f0fb;--danger:#e03e3e;--ins-bg:#dcf4e3;--ins-fg:#1f6f3f;--del-bg:#fbe1e1;--del-fg:#a32d2d;--tag-1:#e8e3f3;--tag-2:#e0ecf7;--tag-3:#fbe9d9;--tag-4:#e3f1e5;--tag-5:#f5e2ea;--shadow:0 8px 32px #0f0f0f1f, 0 0 0 1px #0f0f0f0d;--font:ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;--mono:ui-monospace, "SF Mono", Menlo, Consolas, monospace;--radius:6px;--sidebar:224px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#191919;--bg-soft:#202020;--bg-hover:#2c2c2c;--fg:#d4d4d4;--fg-muted:#9b9b9b;--fg-faint:#5f5f5f;--border:#2f2f2f;--border-strong:#454545;--accent:#529cca;--accent-soft:#1f2f3d;--danger:#ff6b6b;--ins-bg:#1c3a28;--ins-fg:#8fd3a5;--del-bg:#44201f;--del-fg:#f0a0a0;--tag-1:#3b3350;--tag-2:#2b3b4b;--tag-3:#4a3627;--tag-4:#2b3f2f;--tag-5:#4a2d3a;--shadow:0 8px 32px #00000080, 0 0 0 1px #ffffff0f;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#191919;--bg-soft:#202020;--bg-hover:#2c2c2c;--fg:#d4d4d4;--fg-muted:#9b9b9b;--fg-faint:#5f5f5f;--border:#2f2f2f;--border-strong:#454545;--accent:#529cca;--accent-soft:#1f2f3d;--danger:#ff6b6b;--ins-bg:#1c3a28;--ins-fg:#8fd3a5;--del-bg:#44201f;--del-fg:#f0a0a0;--tag-1:#3b3350;--tag-2:#2b3b4b;--tag-3:#4a3627;--tag-4:#2b3f2f;--tag-5:#4a2d3a;--shadow:0 8px 32px #00000080, 0 0 0 1px #ffffff0f;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{height:100%}body{background:var(--bg);color:var(--fg);font-family:var(--font);margin:0;font-size:14px;line-height:1.5}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.app{min-height:100%;display:flex}.sidebar{width:var(--sidebar);background:var(--bg-soft);border-right:1px solid var(--border);top:env(safe-area-inset-top,0px);flex-direction:column;flex:none;gap:2px;height:100vh;padding:14px 10px;display:flex;position:sticky}.brand{align-items:center;gap:8px;padding:6px 10px 14px;font-weight:600;display:flex}.brand .logo{background:var(--fg);width:20px;height:20px;color:var(--bg);border-radius:4px;place-items:center;font-size:12px;font-weight:700;display:grid}.nav{flex-direction:column;gap:1px;display:flex}.nav a{color:var(--fg-muted);border-radius:4px;align-items:center;gap:8px;padding:5px 10px;font-weight:500;text-decoration:none;display:flex}.nav a:hover,.nav a.active{background:var(--bg-hover);color:var(--fg)}.nav .count{color:var(--fg-faint);font-variant-numeric:tabular-nums;margin-left:auto;font-size:12px}.sidebar .foot{color:var(--fg-faint);margin-top:auto;padding:10px;font-size:12px;line-height:1.4}.main{flex-direction:column;flex:1;min-width:0;display:flex}.page{width:100%;max-width:1400px;padding-block:28px 48px;padding-inline:40px}.page-head{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:18px;display:flex}h1{letter-spacing:-.01em;text-wrap:balance;margin:0;font-size:26px;font-weight:700}h2{margin:0 0 10px;font-size:16px;font-weight:600}.spacer{flex:1}.toolbar{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:16px;display:flex}.toolbar .sep{background:var(--border);width:1px;height:20px;margin:0 2px}.search,.btn.dd-btn,.search-date{border:1px solid var(--border);background:var(--bg);border-radius:7px;align-items:center;gap:7px;height:32px;padding:0 10px;transition:border-color .12s,box-shadow .12s,background .12s;display:inline-flex}.search{flex:260px;min-width:260px;max-width:420px}.search:focus-within,.search-date:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.search input,.search-date input{background:0 0;border:0;outline:0;width:100%;min-width:0;padding:0}.search input::placeholder{color:var(--fg-faint)}.search svg,.search-date svg,.dd-btn svg{color:var(--fg-faint);flex:none;width:15px;height:15px}.search-date{min-width:0}.search-date .pre{color:var(--fg-faint);font-size:12px}.btn.dd-btn{color:var(--fg-muted);font-weight:500}.btn.dd-btn:hover{background:var(--bg-soft);border-color:var(--border-strong);color:var(--fg)}.btn.dd-btn.on{background:var(--accent-soft);color:var(--fg);border-color:#0000}.btn.dd-btn.on svg{color:var(--fg-muted)}.btn.dd-btn .cnt{background:var(--fg);color:var(--bg);text-align:center;border-radius:999px;min-width:16px;padding:0 6px;font-size:11px;line-height:16px}.active-filters{flex-wrap:wrap;align-items:center;gap:6px;min-height:22px;margin:-6px 0 14px;display:flex}.active-filters .clear{color:var(--fg-faint);background:0 0;border:0;border-radius:4px;padding:2px 6px;font-size:12px}.active-filters .clear:hover{color:var(--fg);background:var(--bg-hover)}.btn{border-radius:var(--radius);border:1px solid var(--border);background:var(--bg);color:var(--fg);align-items:center;gap:6px;padding:5px 10px;font-weight:500;line-height:1.3;display:inline-flex}.btn:hover{background:var(--bg-hover)}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.primary:hover{filter:brightness(.95)}.btn.ghost{color:var(--fg-muted);border-color:#0000}.btn.ghost:hover{color:var(--fg)}.btn.danger{color:var(--danger)}.btn.sm{padding:3px 8px;font-size:13px}.btn.icon{justify-content:center;width:26px;height:26px;padding:4px}.chips{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.chip{border:1px solid var(--border);background:var(--bg);color:var(--fg-muted);border-radius:999px;padding:2px 10px;font-size:13px}.chip.on{background:var(--fg);color:var(--bg);border-color:var(--fg)}.dd{position:relative}.dd-pop{background:var(--bg);border:1px solid var(--border);box-shadow:var(--shadow);z-index:6;border-radius:9px;flex-direction:column;gap:1px;min-width:260px;max-height:340px;padding:6px;display:flex;position:absolute;top:38px;left:0;overflow:auto}.dd-pop .findwrap{border:1px solid var(--border);background:var(--bg-soft);border-radius:7px;align-items:center;gap:8px;height:32px;margin:2px 2px 6px;padding:0 10px;transition:border-color .12s,box-shadow .12s,background .12s;display:flex}.dd-pop .findwrap:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);background:var(--bg)}.dd-pop .findwrap svg{width:14px;height:14px;color:var(--fg-faint);flex:none}.dd-pop .findwrap input.find,.dd-pop .findwrap input.find:focus,.dd-pop .findwrap input.find:hover{box-shadow:none;background:0 0;border:0;border-radius:0;width:100%;height:100%;padding:0;font-size:13.5px;outline:0!important}.dd-pop input.find::placeholder{color:var(--fg-faint)}.dd-pop label{cursor:pointer;border-radius:5px;align-items:center;gap:9px;padding:5px 8px;display:flex}.dd-pop label:hover{background:var(--bg-hover)}.dd-pop label input{accent-color:var(--fg);width:14px;height:14px;margin:0}.dd-pop label .dot{border-radius:50%;flex:none;width:8px;height:8px}.dd-pop .dd-sep{border-top:1px solid var(--border);margin:4px 0}.dd-pop .seg{align-self:flex-start;margin:2px 6px 4px}.dd-pop .hintrow{color:var(--fg-faint);padding:4px 8px;font-size:12px}.tag .x{color:var(--fg-faint);cursor:pointer;vertical-align:1px;background:0 0;border:0;margin-left:3px;padding:0 1px;font-size:10px;line-height:1}.pill{border-radius:999px;padding:1px 7px;font-size:11px;font-weight:500;line-height:1.5;display:inline-block}.pill.in_progress{background:var(--tag-2)}.pill.done{background:var(--tag-4)}.col-head[draggable=true]{cursor:grab;-webkit-user-drag:element;border-radius:6px}.col-head[draggable=true]:hover{background:var(--bg-hover)}.col-head .grip{color:var(--fg-faint);padding:0 2px}.col.col-dragging{opacity:.5}.col.col-over{outline:2px solid var(--accent);outline-offset:-2px}.srclist{flex-direction:column;gap:6px;display:flex}.srclist .imgrow .n{color:var(--fg-faint);font-variant-numeric:tabular-nums;text-align:right;width:18px}.dd-pop label.single input{accent-color:var(--fg)}.tag .x:hover{color:var(--fg)}.seg{border:1px solid var(--border);border-radius:var(--radius);font-size:13px;display:inline-flex;overflow:hidden}.seg button{color:var(--fg-muted);background:0 0;border:0;padding:3px 10px}.seg button.on{background:var(--bg-hover);color:var(--fg)}.tag{background:var(--tag-1);color:var(--fg);white-space:nowrap;border-radius:4px;padding:1px 7px;font-size:12px;line-height:1.4;display:inline-block}.tag.c2{background:var(--tag-2)}.tag.c3{background:var(--tag-3)}.tag.c4{background:var(--tag-4)}.tag.c5{background:var(--tag-5)}.grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;display:grid}.card{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);cursor:pointer;flex-direction:column;gap:6px;min-width:0;padding:10px 12px;transition:background .12s,border-color .12s;display:flex}.card:hover{background:var(--bg-soft);border-color:var(--border-strong)}.card .title{color:var(--fg-faint);font-size:11.5px;font-weight:600}.card .q{-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:13.5px;line-height:1.4;display:-webkit-box;overflow:hidden}.card .a{color:var(--fg-muted);white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;overflow:hidden}.card .a b{color:var(--fg-faint);font-weight:500}.card .meta{flex-wrap:wrap;align-items:center;gap:6px;margin-top:2px;display:flex}.card .pack{color:var(--fg-faint);white-space:nowrap;text-overflow:ellipsis;max-width:45%;margin-left:auto;font-size:11.5px;overflow:hidden}.card .pos{color:var(--fg-faint);font-variant-numeric:tabular-nums;font-size:11.5px}.card.dragging{opacity:.4}.empty{color:var(--fg-muted);text-align:center;padding:40px 0}.board-wrap{padding-bottom:12px;overflow-x:auto}.board{align-items:flex-start;gap:14px;min-width:min-content;display:flex}.col{background:var(--bg-soft);border-radius:8px;flex-direction:column;flex:none;gap:8px;width:548px;padding:8px;display:flex}.col.over{outline:2px dashed var(--border-strong);outline-offset:-2px}.col-head{align-items:flex-start;gap:6px;padding:6px 6px 4px;display:flex}.col-head .title{flex-direction:column;flex:1;gap:5px;min-width:0;font-weight:600;display:flex}.col-head .name{align-items:center;gap:6px;display:flex}.col-head .name span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.col-head .n{color:var(--fg-faint);font-variant-numeric:tabular-nums;background:var(--bg);border:1px solid var(--border);border-radius:999px;flex:none;padding:0 6px;font-size:12px;font-weight:500;line-height:16px}.col-head .facts{color:var(--fg-muted);flex-wrap:wrap;align-items:center;gap:10px;font-size:12px;font-weight:400;display:flex}.col-head .facts .fact{white-space:nowrap;align-items:center;gap:4px;display:inline-flex}.col-head .facts svg{width:13px;height:13px;color:var(--fg-faint)}.col-head .facts .meter{gap:2px;display:inline-flex}.col-head .facts .meter i{background:var(--border-strong);border-radius:1px;width:5px;height:8px;display:block}.col-head .facts .meter i.on{background:var(--fg-muted)}.col-head .person{color:var(--fg-muted);align-items:center;gap:6px;font-size:12px;font-weight:400;display:inline-flex}.col-head.unassigned .title{color:var(--fg-muted)}.avatar{width:20px;height:20px;color:var(--fg);letter-spacing:.02em;border-radius:50%;flex:none;place-items:center;font-size:9.5px;font-weight:600;display:inline-grid}.col-body{grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:8px;min-height:40px;display:grid}.col .card{background:var(--bg)}.drop-line{border-top:2px solid var(--accent);border-radius:2px;height:0;margin:-5px 0}.col-add{color:var(--fg-muted);border:1px dashed var(--border-strong);border-radius:var(--radius);text-align:center;background:0 0;padding:6px;font-size:13px}.col-add:hover{background:var(--bg-hover);color:var(--fg)}.menu{position:relative}.menu-list{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);z-index:5;flex-direction:column;min-width:190px;padding:4px;display:flex;position:absolute;top:30px;right:0}.menu-list button{text-align:left;background:0 0;border:0;border-radius:4px;padding:6px 10px}.menu-list button:hover{background:var(--bg-hover)}.menu-list button.danger{color:var(--danger)}.backdrop{z-index:20;background:#0f0f0f73;justify-content:center;align-items:flex-start;padding:48px 16px;display:flex;position:fixed;inset:0;overflow:auto}.modal{background:var(--bg);width:100%;max-width:760px;box-shadow:var(--shadow);border-radius:10px;flex-direction:column;min-height:320px;display:flex}.modal-head{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:8px;padding:12px 16px;display:flex}.modal-head .crumb{color:var(--fg-muted);font-size:13px}.tabs{gap:2px;display:flex}.tabs button{color:var(--fg-muted);background:0 0;border:0;border-radius:4px;padding:4px 10px;font-weight:500}.tabs button.on{background:var(--bg-hover);color:var(--fg)}.modal-body{padding:20px 28px 28px}.modal-foot{border-top:1px solid var(--border);color:var(--fg-muted);flex-wrap:wrap;align-items:center;gap:8px;padding:10px 16px;font-size:13px;display:flex}.doc{max-width:62ch;font-size:15px;line-height:1.6}.doc p{margin:0 0 10px}.doc .label{color:var(--fg-muted)}.doc .handout{background:var(--bg-soft);border-left:3px solid var(--border-strong);border-radius:0 4px 4px 0;margin:0 0 12px;padding:8px 12px}.doc .handout img{border-radius:4px;max-width:100%;margin-top:6px;display:block}.doc .answer{margin-top:14px}.doc a{color:var(--accent);text-underline-offset:2px;text-decoration:underline}.doc .ver{color:var(--fg-faint);margin-bottom:8px;font-size:12px}.read{grid-template-columns:minmax(0,1fr) 280px;align-items:start;gap:28px;display:grid}.read.no-notes{grid-template-columns:minmax(0,1fr)}.rail{border-left:1px solid var(--border);padding-left:20px;position:sticky;top:0}.rail h2{color:var(--fg-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:8px;font-size:12px}.rail .note{flex-direction:column;gap:2px;padding:8px 0}.rail .note .meta{color:var(--fg-faint);flex-wrap:wrap;gap:6px;font-size:12px;display:flex}.rail .note .meta b{color:var(--fg-muted);font-weight:500}@media (width<=900px){.read{grid-template-columns:minmax(0,1fr)}.rail{border-left:0;border-top:1px solid var(--border);padding-top:12px;padding-left:0;position:static}}.props{grid-template-columns:110px 1fr;gap:6px 12px;margin-top:18px;font-size:13px;display:grid}.props .k{color:var(--fg-muted)}.form{gap:18px;display:grid}.form-section{gap:12px;display:grid}.form-section h3{letter-spacing:.06em;text-transform:uppercase;color:var(--fg-faint);border-bottom:1px solid var(--border);margin:0;padding-bottom:6px;font-size:11px;font-weight:600}.field{gap:5px;display:grid}.field label{color:var(--fg-muted);font-size:12.5px;font-weight:500}.field label .hint{font-weight:400}.field input,.field textarea,.field select{border:1px solid var(--border);background:var(--bg);border-radius:7px;width:100%;padding:7px 10px;transition:border-color .12s,box-shadow .12s}.field input:hover,.field textarea:hover{border-color:var(--border-strong)}.field input:focus,.field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:0}.field textarea{resize:vertical;min-height:64px;line-height:1.5}.field ::placeholder{color:var(--fg-faint)}.field .static{border:1px solid var(--border);background:var(--bg-soft);color:var(--fg-muted);border-radius:7px;padding:7px 10px}.edit-grid{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:28px;display:grid}.edit-main{gap:18px;min-width:0;display:grid}.edit-side{border-left:1px solid var(--border);gap:18px;min-width:0;padding-left:24px;display:grid;position:sticky;top:0}.edit-side .imgrow input{font-size:13px}@media (width<=900px){.edit-grid{grid-template-columns:minmax(0,1fr)}.edit-side{border-left:0;border-top:1px solid var(--border);padding-top:14px;padding-left:0;position:static}}.dd.block{display:block}.dd.block .dd-btn{width:100%;color:var(--fg);justify-content:flex-start;height:34px;font-weight:400}.dd.block .dd-btn .lbl{text-align:left;white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.dd.block .dd-btn.placeholder{color:var(--fg-faint)}.dd.block .dd-pop{min-width:100%;right:0}.row2{grid-template-columns:1fr 1fr;gap:12px;display:grid}.imglist{flex-direction:column;gap:6px;display:flex}.imgrow{align-items:center;gap:6px;display:flex}.imgrow .thumb{background:var(--bg-hover);width:40px;height:30px;color:var(--fg-faint);border-radius:3px;flex:none;place-items:center;font-size:10px;display:grid}.imgrow input{flex:1;min-width:0}.imgrow .thumb{border:1px solid var(--border)}.actions{justify-content:flex-end;gap:8px;margin-top:6px;display:flex}.hist{grid-template-columns:200px 1fr;gap:20px;display:grid}.vlist{flex-direction:column;gap:2px;display:flex}.vlist button{text-align:left;background:0 0;border:0;border-radius:4px;flex-direction:column;padding:6px 10px;display:flex}.vlist button:hover{background:var(--bg-hover)}.vlist button.on{background:var(--accent-soft)}.vlist .t{color:var(--fg-muted);font-size:12px}.diff{font-size:14.5px;line-height:1.6}.diff .fld{margin-bottom:12px}.diff .fld .k{color:var(--fg-muted);margin-bottom:2px;font-size:12px}.diff .same{color:var(--fg-faint)}ins{background:var(--ins-bg);color:var(--ins-fg);border-radius:2px;padding:0 1px;text-decoration:none}del{background:var(--del-bg);color:var(--del-fg);border-radius:2px;padding:0 1px}.diff-head{color:var(--fg-muted);flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;font-size:13px;display:flex}.diff-head select{border:1px solid var(--border);background:var(--bg);border-radius:4px;padding:2px 6px}.table{border-collapse:collapse;width:100%}.table.narrow{max-width:560px}.list{border:1px solid var(--border);border-radius:9px;max-width:560px;overflow:hidden}.list .row{border-top:1px solid var(--border);align-items:center;gap:10px;min-height:42px;padding:7px 10px 7px 12px;display:flex}.list .row:first-child{border-top:0}.list .row:hover{background:var(--bg-soft)}.list .row input{background:0 0;border:1px solid #0000;border-radius:5px;min-width:0;padding:3px 7px}.list .row input:hover{border-color:var(--border)}.list .row input:focus{border-color:var(--accent);background:var(--bg);box-shadow:0 0 0 3px var(--accent-soft);outline:0}.list .row .grow{flex:1}.list .row .count{color:var(--fg-faint);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:12px}.list .row .acts{opacity:0;gap:2px;transition:opacity .12s;display:flex}.list .row:hover .acts,.list .row:focus-within .acts{opacity:1}.list .add{border-top:1px solid var(--border);background:var(--bg-soft);align-items:center;gap:8px;padding:6px 10px 6px 12px;display:flex}.list .add input{background:0 0;border:1px solid #0000;border-radius:5px;flex:1;min-width:0;padding:3px 7px}.list .add input:focus{border-color:var(--accent);background:var(--bg);box-shadow:0 0 0 3px var(--accent-soft);outline:0}.list .add .plus{color:var(--fg-faint);text-align:center;width:20px;font-size:16px;line-height:1}.list .add .btn{opacity:0;transition:opacity .12s}.list .add:focus-within .btn{opacity:1}.page-sub{color:var(--fg-muted);max-width:60ch;margin:-8px 0 16px}.table th{text-align:left;color:var(--fg-muted);border-bottom:1px solid var(--border);padding:6px 8px;font-size:12px;font-weight:500}.table td{border-bottom:1px solid var(--border);vertical-align:middle;padding:7px 8px}.table tr:hover td{background:var(--bg-soft)}.table .r{text-align:right;white-space:nowrap}.table input{background:0 0;border:1px solid #0000;border-radius:4px;width:100%;padding:2px 6px}.table input:hover,.table input:focus{border-color:var(--border);background:var(--bg)}.link{color:var(--accent);cursor:pointer;text-decoration:none}.link:hover{text-decoration:underline}.inline-add{gap:8px;max-width:480px;margin-top:10px;display:flex}.inline-add input{border:1px solid var(--border);border-radius:var(--radius);flex:1;min-width:0;padding:5px 9px}.sess-q{border:1px solid var(--border);border-radius:var(--radius);margin-bottom:8px}.sess-q summary{cursor:pointer;align-items:center;gap:10px;padding:10px 12px;list-style:none;display:flex}.sess-q summary::-webkit-details-marker{display:none}.sess-q summary .n{color:var(--fg-faint);font-variant-numeric:tabular-nums;width:20px}.sess-q summary .txt{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.sess-q summary .notes-n{color:var(--fg-muted);font-size:12px}.sess-q .body{border-top:1px solid var(--border);padding:4px 16px 14px 42px}.note{border-top:1px solid var(--border);gap:10px;padding:8px 0;display:flex}.note:first-of-type{border-top:0}.note .when{color:var(--fg-faint);font-size:12px}.note-form{flex-wrap:wrap;align-items:flex-start;gap:8px;margin-top:10px;display:flex}.note-form textarea{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);resize:vertical;flex:1;min-width:200px;min-height:36px;padding:5px 8px}.kv{color:var(--fg-muted);flex-wrap:wrap;gap:18px;margin-bottom:18px;font-size:13px;display:flex}.kv b{color:var(--fg);font-weight:500}.toast{left:50%;bottom:calc(24px + env(safe-area-inset-bottom,0px));background:var(--fg);color:var(--bg);box-shadow:var(--shadow);z-index:30;border-radius:6px;max-width:calc(100% - 32px);padding:8px 14px;font-size:13px;position:fixed;transform:translate(-50%)}.hint{color:var(--fg-faint);font-size:12px}@media (width<=760px){.app{flex-direction:column}.sidebar{flex-direction:row;align-items:center;gap:6px;width:auto;height:auto;padding:8px 12px;position:static;overflow-x:auto}.brand{padding:0 6px 0 0}.nav{flex-direction:row}.nav a{white-space:nowrap;padding:4px 8px}.nav .count,.sidebar .foot{display:none}.page{padding-block:18px 32px;padding-inline:16px}.hist,.row2{grid-template-columns:1fr}.modal-body{padding:16px}.backdrop{padding:16px 8px}}.login{place-items:center;min-height:100%;padding:24px 16px;display:grid}.login-card{border:1px solid var(--border);background:var(--bg);border-radius:12px;gap:14px;width:100%;max-width:360px;padding:28px 28px 24px;display:grid;box-shadow:0 1px 2px #0f0f0f0a}.login-card .brand{padding:0 0 2px;font-size:16px}.login-hint{color:var(--fg-muted);margin:0}.login-error{color:var(--danger);font-size:13px}.login-card .btn.primary{justify-content:center;height:36px}.linkish{color:var(--fg-faint);cursor:pointer;background:0 0;border:0;margin-top:6px;padding:0;font-size:12px}.linkish:hover{color:var(--fg);text-decoration:underline}
