:root{--bg: #0b0b0c;--bg-2: #121214;--bg-3: #17171a;--line: #26262b;--fg: #f5f5f7;--fg-2: #a1a1aa;--fg-3: #6b6b73;--accent: #6d6afe;--accent-2: #2dd4bf;--warn: #f5a524;--danger: #f43f5e;--radius: 10px;--mono: ui-monospace, "SF Mono", "JetBrains Mono", Menlo, Consolas, monospace;--sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Inter, Roboto, sans-serif;color-scheme:dark}@media(prefers-color-scheme:light){:root:not([data-theme=dark]){--bg: #fbfbfd;--bg-2: #ffffff;--bg-3: #f2f2f5;--line: #e3e3e8;--fg: #17171a;--fg-2: #56565e;--fg-3: #8b8b94;color-scheme:light}}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--fg);font-family:var(--sans);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;overflow:hidden}button,input,select,textarea{font:inherit;color:inherit}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--line);border-radius:6px;border:3px solid transparent;background-clip:content-box}.win{display:grid;grid-template-rows:38px 1fr 26px;height:100%}.titlebar{-webkit-app-region:drag;user-select:none;display:flex;align-items:center;gap:10px;padding:0 12px;background:var(--bg-2);border-bottom:1px solid var(--line)}.lights{display:flex;gap:8px}.lights i{width:12px;height:12px;border-radius:50%;display:block}.lights i:nth-child(1){background:#ff5f57}.lights i:nth-child(2){background:#febc2e}.lights i:nth-child(3){background:#28c840}.titlebar h1{font-size:13px;font-weight:600;margin:0;letter-spacing:-.01em}.titlebar .sub{color:var(--fg-3);font-size:12px}.titlebar .grow{flex:1}.titlebar .act{-webkit-app-region:no-drag}.body{display:grid;grid-template-columns:216px 1fr;min-height:0}.body.wide{grid-template-columns:260px 1fr}.body.solo{grid-template-columns:1fr}.sidebar{background:var(--bg-2);border-right:1px solid var(--line);padding:12px 10px;overflow-y:auto;min-height:0}.sidebar h2{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--fg-3);margin:14px 8px 6px;font-weight:600}.sidebar h2:first-child{margin-top:0}.nav{display:flex;flex-direction:column;gap:1px}.nav button{display:flex;align-items:center;gap:9px;width:100%;text-align:left;padding:7px 9px;border:0;border-radius:8px;background:transparent;color:var(--fg-2);cursor:pointer;font-size:13px}.nav button:hover{background:var(--bg-3);color:var(--fg)}.nav button[aria-current=true]{background:var(--bg-3);color:var(--fg);font-weight:500}.nav button .dot{width:6px;height:6px;border-radius:50%;background:var(--accent);flex:none}.nav button .tail{margin-left:auto;color:var(--fg-3);font-size:11px;font-variant-numeric:tabular-nums}.main{overflow:auto;min-height:0;padding:20px 24px}.main.flush{padding:0}.statusbar{display:flex;align-items:center;gap:14px;padding:0 12px;background:var(--bg-2);border-top:1px solid var(--line);color:var(--fg-3);font-size:11px;font-family:var(--mono)}.statusbar .grow{flex:1}.statusbar b{color:var(--fg-2);font-weight:500}.card{background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius);padding:14px 16px}.grid{display:grid;gap:12px}.row{display:flex;align-items:center;gap:10px}.btn{border:1px solid var(--line);background:var(--bg-3);color:var(--fg);padding:6px 12px;border-radius:8px;cursor:pointer;font-size:13px}.btn:hover{border-color:var(--fg-3)}.btn.pri{background:var(--accent);border-color:var(--accent);color:#fff}.btn.pri:hover{filter:brightness(1.1)}.btn:disabled{opacity:.45;cursor:not-allowed}.inp{background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:7px 10px;width:100%;outline:0}.inp:focus{border-color:var(--accent)}.tag{font-size:11px;padding:2px 7px;border-radius:999px;background:var(--bg-3);color:var(--fg-2);border:1px solid var(--line)}.tag.ok{color:var(--accent-2);border-color:color-mix(in srgb,var(--accent-2) 40%,transparent)}.tag.warn{color:var(--warn);border-color:color-mix(in srgb,var(--warn) 40%,transparent)}.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}.muted{color:var(--fg-2)}.dim{color:var(--fg-3)}h3{margin:0 0 4px;font-size:15px;font-weight:600}.empty{color:var(--fg-3);text-align:center;padding:48px 0}.ribbon{-webkit-app-region:no-drag;display:flex;align-items:center;gap:8px;font-size:11px;color:var(--fg-3);background:var(--bg-3);border:1px solid var(--line);padding:3px 9px;border-radius:999px}.ribbon a{color:var(--accent);text-decoration:none}.ribbon a:hover{text-decoration:underline}.cm-host,.cm-host .cm-editor{height:100%}.cm-host .cm-editor{font-size:13px}.cm-host .cm-scroller{font-family:var(--mono)}.cm-host .cm-editor.cm-focused{outline:none}
