:root{--p-bg:#f6f8f8;--p-white:#fff;--p-ink:#172b3a;--p-muted:#4c6068;--p-line:#cad6d9;--p-green:#126b61;--p-pale:#e8f2f0;--p-red:#9d2939;--p-red-pale:#fff1f2;--surface:var(--p-white);--canvas:var(--p-bg);--text:var(--p-ink);--muted:var(--p-muted);--accent:var(--p-green);--line:var(--p-line);--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--radius:4px;--radius-button:6px;--font-ui:"Helvetica Neue","Yu Gothic","Hiragino Kaku Gothic ProN",sans-serif;--font-mono:"SFMono-Regular",Consolas,monospace;--motion:140ms cubic-bezier(.16,1,.3,1)}
*{box-sizing:border-box}body{margin:0;background:var(--canvas);color:var(--text);font:16px/1.7 var(--font-ui)}a{color:inherit}button,input{font:inherit}button,a,input{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--accent);outline-offset:3px}h1,h2,h3,p{margin:0}h1{font-size:clamp(28px,3.4vw,40px);line-height:1.3;letter-spacing:.025em;font-weight:600}h2{font-size:20px;line-height:1.4;font-weight:600}h3{font-size:20px}button{min-height:48px;border-radius:var(--radius-button)}input{min-width:0;min-height:48px;border:1px solid var(--line);border-radius:var(--radius);color:var(--text);background:var(--surface);padding:var(--space-3) var(--space-4)}input::placeholder{color:var(--muted)}[hidden]{display:none!important}.muted{color:var(--muted)}.eyebrow{font-size:13px;font-weight:600;letter-spacing:.13em;color:var(--accent);margin-bottom:var(--space-3)}.wordmark{text-decoration:none;display:inline-flex;align-items:center;gap:var(--space-4);font-size:16px;letter-spacing:.1em;font-weight:700;min-height:48px}.wordmark span{font-size:13px;font-weight:400;letter-spacing:0;color:var(--muted);border-left:1px solid var(--line);padding-left:var(--space-4)}.topbar{background:var(--surface);border-bottom:1px solid var(--line)}.topbar-inner{max-width:1160px;margin:auto;min-height:80px;padding:var(--space-4) var(--space-6);display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}.logout-link{font-size:14px;text-decoration:none;min-height:48px;display:flex;align-items:center;padding-inline:var(--space-3);color:var(--muted)}.workspace{max-width:1160px;margin:auto;padding:var(--space-8) var(--space-6) var(--space-7)}.intro{display:flex;justify-content:space-between;gap:var(--space-5);align-items:center;margin-bottom:var(--space-7)}.intro .muted{margin-top:var(--space-3)}.tool-total{display:flex;align-items:baseline;gap:var(--space-2);padding-left:var(--space-6);border-left:1px solid var(--line)}.tool-total strong{font-size:44px;font-weight:400;line-height:1}.tool-total span{font-size:13px;letter-spacing:.1em;color:var(--muted)}.directory{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.directory-controls{padding:var(--space-6);padding-bottom:var(--space-5);display:flex;align-items:center;justify-content:space-between;gap:var(--space-5)}.search-wrap{display:flex;align-items:center;gap:var(--space-2);width:340px;max-width:100%;border-bottom:1px solid var(--line)}.search-wrap svg{width:20px;height:20px;flex-shrink:0;color:var(--muted)}.search-wrap input{width:100%;border:0;padding-left:var(--space-1);background:transparent}.filters{display:flex;gap:var(--space-2);flex-wrap:wrap;padding:0 var(--space-6) var(--space-5)}.filters button{border:1px solid transparent;background:transparent;color:var(--muted);padding:var(--space-2) var(--space-4);transition:background var(--motion),color var(--motion)}.filters button[aria-pressed=true]{color:var(--accent);background:var(--p-pale);border-color:var(--accent)}.filters button:hover{background:var(--p-pale)}.list-label,.tool-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr) 32px;gap:var(--space-5);align-items:center}.list-label{font-size:13px;color:var(--muted);padding:var(--space-3) var(--space-6);border-block:1px solid var(--line);background:var(--canvas)}.tool-row{padding:var(--space-5) var(--space-6);text-decoration:none;min-height:94px;border-bottom:1px solid var(--line);transition:background var(--motion)}.tool-row:hover{background:var(--p-pale)}.tool-name{display:flex;align-items:baseline;gap:var(--space-4);min-width:0}.row-index{color:var(--muted);font:13px/1.5 var(--font-mono);min-width:20px}.tool-name strong{font-size:16px;line-height:1.7;font-weight:600;overflow-wrap:anywhere}.tool-meta{min-width:0;display:flex;flex-direction:column;gap:var(--space-1)}.category-label{font-size:13px;color:var(--accent)}.hostname{font-size:13px;line-height:1.5;font-family:var(--font-mono);color:var(--muted);overflow-wrap:anywhere}.open-icon{width:24px;height:24px;color:var(--accent)}.result-count{padding:var(--space-4) var(--space-6);font-size:13px;color:var(--muted)}.empty-state{text-align:center;padding:var(--space-7) var(--space-5)}.empty-state p{color:var(--muted);margin-block:var(--space-3) var(--space-5)}.empty-state button{padding-inline:var(--space-4);background:var(--surface);border:1px solid var(--accent);color:var(--accent)}.workspace-note{display:flex;align-items:baseline;gap:var(--space-3);margin-top:var(--space-5);font-size:14px;color:var(--muted)}.note-mark{width:6px;height:6px;flex:0 0 6px;background:var(--accent);border-radius:50%}.workspace-footer{max-width:1160px;margin:auto;padding:0 var(--space-6) var(--space-6);font-size:13px;letter-spacing:.08em;color:var(--muted);display:flex;justify-content:space-between;gap:var(--space-4)}.login-page{min-height:100svh;display:flex;flex-direction:column;justify-content:center;padding:var(--space-7) var(--space-5)}.login-panel{width:100%;max-width:500px;margin:auto;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:var(--space-7)}.login-heading{margin-block:var(--space-7) var(--space-6)}.login-heading h1{font-size:28px;overflow-wrap:anywhere}.login-heading .muted{margin-top:var(--space-3);font-size:14px}.login-panel label{display:block;font-weight:600;font-size:14px;margin-block:var(--space-5) var(--space-2)}.login-panel input:not([type=hidden]){width:100%}.password-field{position:relative}.password-field input{padding-right:var(--space-8)}.reveal{position:absolute;right:var(--space-1);top:50%;transform:translateY(-50%);min-width:52px;min-height:44px;border:0;background:transparent;color:var(--accent);font-size:14px}.primary{width:100%;margin-top:var(--space-6);border:1px solid var(--accent);background:var(--accent);color:var(--surface);padding:var(--space-3) var(--space-4);display:flex;justify-content:space-between;align-items:center;font-weight:600}.primary:hover{filter:brightness(.92)}.primary:disabled{cursor:wait;opacity:.7}.error{background:var(--p-red-pale);color:var(--p-red);border-left:3px solid var(--p-red);padding:var(--space-3) var(--space-4);font-size:14px}.security-note,.form-status{font-size:13px;line-height:1.6;color:var(--muted);margin-top:var(--space-4)}.form-status:empty{display:none}.login-footer{text-align:center;color:var(--muted);font-size:12px;letter-spacing:.1em;margin-top:var(--space-6)}.back-link{display:flex;min-height:48px;align-items:center;justify-content:center;margin-top:var(--space-3);color:var(--accent)}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0)}
@media(max-width:700px){.topbar-inner{min-height:72px;padding-inline:var(--space-4)}.wordmark{gap:var(--space-3)}.wordmark span{padding-left:var(--space-3)}.workspace{padding:var(--space-6) var(--space-4)}.intro{margin-bottom:var(--space-6)}.tool-total{padding-left:var(--space-4)}.tool-total strong{font-size:32px}.tool-total span{display:none}.directory-controls{align-items:stretch;flex-direction:column;gap:var(--space-4);padding:var(--space-5) var(--space-4)}.search-wrap{width:100%}.filters{padding-inline:var(--space-4);gap:var(--space-1)}.filters button{padding-inline:var(--space-3);font-size:14px}.list-label{display:none}.tool-row{position:relative;grid-template-columns:minmax(0,1fr) 24px;gap:var(--space-2);padding:var(--space-5) var(--space-4)}.tool-name{grid-column:1;gap:var(--space-3)}.tool-meta{grid-column:1;padding-left:var(--space-6);gap:var(--space-2)}.open-icon{grid-column:2;grid-row:1/3}.result-count{padding-inline:var(--space-4)}.workspace-note{font-size:13px}.workspace-footer{padding:var(--space-2) var(--space-4) var(--space-5);font-size:12px}.login-page{padding:var(--space-5) var(--space-4)}.login-panel{padding:var(--space-6) var(--space-5)}.login-heading h1{font-size:25px}.login-panel label{font-size:16px}.hostname{font-size:12px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
:root{--p-control-line:#6f7f86;--control-border:var(--p-control-line)}
input{border-color:var(--control-border)}
@media(max-width:700px){.logout-link,.filters button,.reveal{font-size:16px}}

@media(max-width:700px){.wordmark,.logout-link{white-space:nowrap;flex-shrink:0}.wordmark span{display:none}}
