:root{--bg: #0e0e0b;--card: #14140f;--fg: #f5f4ec;--muted: #b8b7ab;--dim: #6a6a5c;--accent: #c8f542;--accent-fg: #0e0e0b;--border: #2a2a22;--border-strong: #3a3a30;--danger: #ff5c2b;--ok: #c8f542;--sans: "Archivo", Helvetica, system-ui, sans-serif;--mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;color-scheme:dark}*{box-sizing:border-box}body{margin:0;font:15px/1.6 var(--sans);background:var(--bg);color:var(--fg)}::selection{background:var(--accent);color:var(--accent-fg)}summary{list-style:none}summary::-webkit-details-marker{display:none}#app{max-width:760px;margin:0 auto;padding:24px 20px 48px}header.bar{display:flex;align-items:center;gap:12px;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid var(--border)}header.bar .mark{display:block;height:24px;width:auto}header.bar .mark+h1{margin-left:-3px}header.bar h1{font-size:20px;font-weight:900;letter-spacing:-.02em;margin:0;flex:1}header.bar .status{font-family:var(--mono);font-size:12px;color:var(--dim)}.card{background:var(--card);border:1px solid var(--border);padding:24px;margin-bottom:20px}.card h2{font-size:18px;font-weight:800;letter-spacing:-.01em;margin:0 0 4px}label{display:block;font-family:var(--mono);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.18em;color:var(--dim);margin:16px 0 6px}input[type=text],input[type=password],input[type=url],input[type=search]{width:100%;padding:11px 14px;border:1px solid var(--border-strong);border-radius:0;font:15px/1.4 var(--sans);background:var(--bg);color:var(--fg)}input::placeholder{color:var(--dim)}input:focus{outline:1px solid var(--accent);outline-offset:-2px;border-color:var(--accent)}button{font-family:var(--sans);font-size:14px;font-weight:800;letter-spacing:.01em;padding:11px 20px;border:1px solid var(--accent);border-radius:0;background:var(--accent);color:var(--accent-fg);cursor:pointer}button:hover{background:#d4ff5c;border-color:#d4ff5c}button.secondary{background:transparent;color:var(--fg);border-color:var(--border-strong)}button.secondary:hover{color:var(--accent);border-color:var(--accent)}button:disabled{opacity:.45;cursor:progress}button:disabled:hover{background:var(--accent);border-color:var(--accent)}button.secondary:disabled:hover{background:transparent;border-color:var(--border-strong)}.row{display:flex;gap:10px;align-items:flex-end}.row>*{flex:1}.row>button{flex:0 0 auto}.msg{font-family:var(--mono);font-size:12px;padding:10px 14px;border:1px solid;margin-top:14px}.msg.error{border-color:var(--danger);color:var(--danger);background:#ff5c2b14}.msg.ok{border-color:var(--ok);color:var(--ok);background:#c8f54214}ul.bookmarks,ul.tree{list-style:none;margin:0;padding:0}ul.tree ul.tree{margin-left:7px;padding-left:15px;border-left:1px solid var(--border)}ul.tree>li+li,ul.bookmarks>li+li{border-top:1px solid var(--border)}li.bookmark{padding:12px 0}ul.bookmarks>li{padding:14px 0}.bookmark a,.bookmark .url{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bookmark a{color:var(--fg);text-decoration:none;font-weight:700}.bookmark a:hover{color:var(--accent)}.bookmark .url{font-family:var(--mono);color:var(--dim);font-size:12px;margin-top:2px}.bookmark .crumb{font-family:var(--mono);font-size:11px;color:var(--dim);margin-bottom:4px}.bookmark .tags{font-family:var(--mono);font-size:12px;color:var(--muted);margin-top:4px}li.folder>details>summary{display:flex;align-items:center;gap:10px;padding:12px 0;cursor:pointer}li.folder>details>summary:focus-visible{outline:1px solid var(--accent);outline-offset:2px}li.folder .twist{font-family:var(--mono);font-size:16px;line-height:1;color:var(--accent);transition:transform .15s ease}li.folder>details[open]>summary .twist{transform:rotate(45deg)}li.folder .name{font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}li.folder .n{font-family:var(--mono);font-size:11px;color:var(--dim);margin-left:auto}li.folder>details>ul.tree{padding-bottom:6px}.empty{color:var(--dim);padding:24px 0;text-align:center}ul.tree ul.tree>li.empty{padding:10px 0;text-align:left;font-size:13px}.count{font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.18em;color:var(--dim);margin:12px 0}@media (max-width: 560px){#app{padding:20px 16px 40px}header.bar{flex-wrap:wrap;row-gap:8px}header.bar h1{flex:1 0 auto}header.bar .status{order:10;flex-basis:100%}header.bar button{padding:9px 14px;font-size:13px}.row{flex-wrap:wrap}.row>*{flex-basis:100%}.row>button{flex:1 0 100%;margin-top:4px}}
