:root{--bg: #0e1413;--surface: #16211f;--surface-2: #1d2b29;--line: #2a3937;--text: #e8f0ee;--dim: #8ca3a0;--accent: #86efd5;--accent-ink: #0d1413;--gold: #e8a33d;--danger: #f08a6e;--radius: 10px;--header-h: 56px}*{box-sizing:border-box}html,body{margin:0;overflow-x:hidden}body{background:var(--bg);color:var(--text);font:16px/1.65 system-ui,-apple-system,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%}button,input,textarea,select{font:inherit;color:inherit}input,textarea{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:9px 12px;font-size:16px;width:auto}.center{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px}.login h1{margin:0;font-size:40px;letter-spacing:-.02em}.muted{color:var(--dim)}.error{color:var(--danger)}.hint{color:var(--dim);font-size:13px;margin-top:24px}code{font-family:ui-monospace,Menlo,monospace;font-size:.9em}.app{min-height:100dvh;display:flex;flex-direction:column}header{display:flex;align-items:center;gap:12px;height:var(--header-h);padding:0 16px;padding-top:env(safe-area-inset-top);height:calc(var(--header-h) + env(safe-area-inset-top));border-bottom:1px solid var(--line);background:var(--surface);position:sticky;top:0;z-index:30}.brand{font-weight:700}header nav{display:flex;gap:2px;margin-left:auto}header nav a{color:var(--dim);text-decoration:none;padding:6px 12px;border-radius:999px;white-space:nowrap}header nav a.active{color:var(--accent-ink);background:var(--accent)}main{flex:1;padding:20px 16px 48px}.page{max-width:720px;margin:0 auto}.page-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.page-head h2{margin:0 auto 0 0;font-size:22px}button{cursor:pointer;border:1px solid var(--line);background:var(--accent);color:var(--accent-ink);font-weight:600;padding:9px 14px;border-radius:var(--radius);white-space:nowrap}button:disabled{opacity:.45;cursor:default}button.ghost{background:transparent;color:var(--dim);border-color:transparent}button.ghost:hover{color:var(--text)}button.icon{padding:6px 10px;font-size:18px;line-height:1}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.todos{list-style:none;margin:16px 0;padding:0;display:flex;flex-direction:column;gap:4px}.todos li{display:flex;align-items:center;gap:8px;padding:10px 12px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.todos label{display:flex;align-items:center;gap:12px;flex:1;cursor:pointer;min-width:0}.todos label span{overflow-wrap:anywhere}.todos input[type=checkbox]{width:22px;height:22px;accent-color:var(--accent);flex-shrink:0;padding:0}.todos li.done span{color:var(--dim);text-decoration:line-through}.add{display:flex;gap:8px;margin-top:12px}.add input{flex:1;min-width:0}.docs{display:grid;grid-template-columns:260px minmax(0,1fr);gap:32px;max-width:1140px;margin:0 auto}.drawer-toggle,.scrim{display:none}.docs aside{position:sticky;top:calc(var(--header-h) + env(safe-area-inset-top) + 20px);align-self:start;max-height:calc(100dvh - var(--header-h) - 60px);display:flex;flex-direction:column;gap:8px;min-width:0}.repo-tabs{display:flex;gap:6px}.repo-tabs button{flex:1;min-width:0;background:var(--surface);color:var(--dim);display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 6px;font-size:14px}.repo-tabs button.active{background:var(--accent);color:var(--accent-ink)}.ro{font-size:11px;font-weight:700;color:var(--gold);border:1px solid var(--gold);border-radius:4px;padding:0 4px;flex-shrink:0}.filter{width:100%}.tree-scroll{overflow-y:auto;overflow-x:hidden;flex:1}.tree{list-style:none;margin:0;padding:0}.tree button{width:100%;text-align:left;background:transparent;border:none;padding:6px 8px;font-weight:400;font-size:14px;border-radius:6px;overflow-wrap:anywhere;white-space:normal}.tree button.folder{color:var(--text);font-weight:600;display:flex;align-items:center;gap:6px}.tree button.file{color:var(--dim)}.tree button:hover{background:var(--surface-2)}.tree button.file.active{color:var(--accent-ink);background:var(--accent)}.caret{display:inline-block;transition:transform .15s ease;font-size:10px;flex-shrink:0}.caret.open{transform:rotate(90deg)}.docs article{min-width:0}.doc-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding-bottom:12px;border-bottom:1px solid var(--line);margin-bottom:20px}.doc-head code{margin-right:auto;color:var(--dim);overflow-wrap:anywhere}.doc-head .actions{display:flex;gap:6px}.docs textarea{width:100%;min-height:60vh;font-family:ui-monospace,Menlo,monospace;font-size:15px}.md{max-width:72ch;overflow-wrap:anywhere}.md>*:first-child{margin-top:0}.md h1{font-size:28px;line-height:1.3;margin:32px 0 12px}.md h2{font-size:22px;line-height:1.35;margin:32px 0 10px;padding-bottom:6px;border-bottom:1px solid var(--line)}.md h3{font-size:18px;margin:24px 0 8px}.md p,.md li{line-height:1.75}.md ul,.md ol{padding-left:22px}.md pre{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px;overflow-x:auto}.md :not(pre)>code{background:var(--surface);padding:1px 5px;border-radius:4px}.md table{border-collapse:collapse;display:block;overflow-x:auto;max-width:100%}.md th,.md td{border:1px solid var(--line);padding:6px 10px;text-align:left;white-space:nowrap}.md blockquote{margin:16px 0;padding:8px 16px;border-left:3px solid var(--accent);background:var(--surface);border-radius:0 var(--radius) var(--radius) 0;color:var(--dim)}.md blockquote p{margin:4px 0}.md a{color:var(--accent)}.md img{max-width:100%;height:auto}.md hr{border:none;border-top:1px solid var(--line);margin:32px 0}.hits{list-style:none;margin:16px 0;padding:0;display:flex;flex-direction:column;gap:8px}.hits li{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:10px 12px}.hit-head{display:flex;align-items:center;gap:8px;margin-bottom:4px;flex-wrap:wrap}.hit-head code{color:var(--dim);overflow-wrap:anywhere}.hits p{margin:0;font-size:14px;overflow-wrap:anywhere}.tag{font-size:11px;font-weight:700;padding:1px 6px;border-radius:4px;background:var(--accent);color:var(--accent-ink)}.tag.company{background:var(--gold)}@media(max-width:860px){.docs{grid-template-columns:minmax(0,1fr);gap:0}.drawer-toggle{display:inline-flex;background:var(--surface);color:var(--text);margin-bottom:16px}.docs aside{position:fixed;top:0;left:0;bottom:0;width:min(84vw,320px);max-height:none;z-index:50;background:var(--surface);border-right:1px solid var(--line);padding:16px;padding-top:calc(16px + env(safe-area-inset-top));transform:translate(-100%);transition:transform .2s ease}.docs aside.open{transform:translate(0)}.scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:#0000008c}.md{max-width:none}.md h1{font-size:24px}.md h2{font-size:20px}}@media(prefers-reduced-motion:reduce){.docs aside,.caret{transition:none}}
