@font-face{font-family:Lato;font-style:normal;font-display:swap;font-weight:400;src:url(./lato-latin-ext-400-normal.CK4GAP86.woff2) format("woff2"),url(./lato-latin-ext-400-normal.NoO0okhb.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Lato;font-style:normal;font-display:swap;font-weight:400;src:url(./lato-latin-400-normal.BEhtfm5r.woff2) format("woff2"),url(./lato-latin-400-normal.B11PyLys.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Lato;font-style:normal;font-display:swap;font-weight:700;src:url(./lato-latin-ext-700-normal.C6gwlRgY.woff2) format("woff2"),url(./lato-latin-ext-700-normal.oVW-9CSr.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Lato;font-style:normal;font-display:swap;font-weight:700;src:url(./lato-latin-700-normal.BUGMgin4.woff2) format("woff2"),url(./lato-latin-700-normal.DAdL7O4w.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Lato;font-style:normal;font-display:swap;font-weight:900;src:url(./lato-latin-ext-900-normal.BhetttCG.woff2) format("woff2"),url(./lato-latin-ext-900-normal.CjTVdnWO.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Lato;font-style:normal;font-display:swap;font-weight:900;src:url(./lato-latin-900-normal.C3uaq3BA.woff2) format("woff2"),url(./lato-latin-900-normal.CZBfLiEO.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #f5f5f5;--bg-card: #ffffff;--bg-surface: #fafafa;--bg-hover: #f0f0f0;--text: #2e2e2e;--text-secondary: #555555;--text-muted: #999999;--border: #e0e0e0;--border-subtle: #eeeeee;--danger: #d93025;--danger-bg: rgba(217, 48, 37, .08);--success: #1e8e3e;--success-bg: rgba(30, 142, 62, .08);--warning: #e37400;--warning-bg: rgba(227, 116, 0, .08);--info: var(--primary);--sans: "Lato", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--mono: "SF Mono", "Menlo", "Monaco", "Consolas", monospace;--text-xs: .72rem;--text-sm: .8rem;--text-base: .875rem;--text-md: 1rem;--text-lg: 1.125rem;--text-xl: 1.375rem;--text-2xl: 1.75rem;--leading-tight: 1.25;--leading-normal: 1.45;--leading-relaxed: 1.6;--weight-normal: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--radius: 8px;--radius-sm: 4px;--shadow-sm: 0 1px 2px rgba(0,0,0,.06), 0 1px 3px rgba(0,0,0,.04);--shadow: 0 1px 3px rgba(0,0,0,.08), 0 4px 12px rgba(0,0,0,.04);--shadow-lg: 0 2px 8px rgba(0,0,0,.08), 0 8px 24px rgba(0,0,0,.06);--transition: .15s ease}:root{--primary: #1a73e8;--primary-hover: #1565c0;--primary-bg: rgba(26, 115, 232, .08);--chrome-bg: var(--bg-card);--chrome-bg-deep: var(--bg-surface);--chrome-border: var(--border);--chrome-text: var(--text);--chrome-text-dim: var(--text-muted);--chrome-accent: var(--primary)}:root{--chrome-bg: #1e1e2e;--chrome-bg-deep: #181825;--chrome-border: #313244;--chrome-text: #cdd6f4;--chrome-text-dim: #a6adc8;--chrome-accent: #89b4fa}:root{color-scheme:light}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--sans);background:var(--bg);color:var(--text);font-size:13px;line-height:1.5;-webkit-font-smoothing:antialiased}a{color:var(--primary);text-decoration:none;transition:color var(--transition)}a:hover{color:var(--primary-hover);text-decoration:underline}h1{font-size:1.4rem;font-weight:900;letter-spacing:-.01em;margin-bottom:1rem}h2{font-size:1.05rem;font-weight:700;margin:1.5rem 0 .5rem}h3{font-size:.85rem;font-weight:700;color:var(--text-secondary);margin:1rem 0 .4rem}p{margin-bottom:.75rem}code,.mono{font-family:var(--mono);font-size:.85em}.app-layout{display:grid;grid-template-columns:160px minmax(0,1fr);grid-template-rows:40px 1fr;min-height:100vh}.topbar{grid-column:1 / -1;display:flex;align-items:center;gap:.75rem;height:40px;padding:0 1rem;position:sticky;top:0;z-index:300;background:var(--chrome-bg);border-bottom:1px solid var(--chrome-border)}.topbar-brand{width:144px;flex-shrink:0;font:900 1.1rem var(--mono);letter-spacing:-.02em;color:var(--chrome-text)}.topbar-brand:hover{color:#fff;text-decoration:none}.topbar-spacer{flex:1}.topbar-user{color:var(--chrome-text-dim);font:700 .75rem var(--mono);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-logout{color:var(--chrome-text-dim);background:transparent;border:0;box-shadow:none;padding:.2rem .5rem;font-size:.7rem;white-space:nowrap}.topbar-logout:hover{color:#fff;background:var(--chrome-border);box-shadow:none}.sidebar{background:var(--chrome-bg);display:flex;flex-direction:column;position:sticky;top:40px;height:calc(100vh - 40px);overflow-y:auto}.sidebar-section{padding:.25rem 0;border-top:1px solid var(--chrome-border)}.sidebar-group-label{padding:.75rem 1rem .25rem;color:var(--chrome-text-dim);font-size:.6rem;text-transform:uppercase;letter-spacing:.08em}.sidebar-link{display:block;padding:.4rem 1rem;border-left:3px solid transparent;color:var(--chrome-text-dim);font-size:.78rem;font-weight:700}.sidebar-link:hover{color:var(--chrome-text);background:var(--chrome-border);text-decoration:none}.sidebar-link.active{color:var(--chrome-accent);border-left-color:var(--chrome-accent);background:var(--chrome-bg-deep)}.sidebar-version{margin-top:auto;padding:.5rem 1rem;color:var(--chrome-text-dim);font:.62rem var(--mono);overflow-wrap:anywhere}.content{padding:1.25rem 1.5rem 3rem;width:100%;max-width:1440px;min-width:0}.login-backdrop{min-height:100vh;display:flex;flex-direction:column;gap:1rem;align-items:center;justify-content:center;padding:1.5rem;background:var(--chrome-bg)}.login-box{width:320px;max-width:100%;padding:2rem 2.5rem;background:var(--bg-card);border-radius:var(--radius);box-shadow:var(--shadow-lg)}.login-brand{font:900 1.5rem var(--mono);letter-spacing:-.02em;color:var(--text)}.login-subtitle{color:var(--text-secondary);font-size:.8rem;margin:.25rem 0 0}.login-box label{display:block;margin-top:1rem}.login-box input{display:block;width:100%;margin:.25rem 0}.login-btn{width:100%;padding:.55rem;margin-top:1.25rem}.login-error{background:var(--danger-bg);color:var(--danger);padding:.5rem .75rem;border-radius:var(--radius-sm);font-size:.78rem;font-weight:700;margin:.75rem 0 0}.login-note{color:var(--text-muted);font-size:.72rem;margin:1rem 0 0}.login-version,.login-loading{color:var(--chrome-text-dim);font:.7rem var(--mono)}button,.btn{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;padding:.4rem .9rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card);color:var(--text);font:700 .78rem var(--sans);cursor:pointer;box-shadow:var(--shadow-sm);white-space:nowrap;transition:background var(--transition),border-color var(--transition),box-shadow var(--transition)}button:hover,.btn:hover{background:var(--bg-hover);border-color:var(--text-muted);box-shadow:var(--shadow);text-decoration:none}.btn-primary{background:var(--primary);border-color:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-hover);border-color:var(--primary-hover)}.btn-danger{color:var(--danger);border-color:#d930254d}.btn-danger:hover{background:var(--danger-bg);border-color:var(--danger)}button:disabled{opacity:.55;cursor:default}button.link{padding:0;border:0;background:none;color:var(--primary);box-shadow:none;font-weight:700}button.link:hover{text-decoration:underline;background:none}button:focus-visible,a:focus-visible{outline:2px solid var(--primary);outline-offset:3px}label{display:block;color:var(--text-muted);font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;margin-bottom:.2rem}input,select,textarea{width:100%;padding:.45rem .6rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card);color:var(--text);font:.8rem var(--mono);min-width:0;transition:border-color var(--transition),box-shadow var(--transition)}textarea{min-height:4.5rem}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-bg)}input::placeholder,textarea::placeholder{color:var(--text-muted)}input[type=checkbox],input[type=radio]{width:auto;accent-color:var(--primary)}.field{margin-bottom:.75rem}.fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:0 1rem}.check{display:flex;gap:.4rem;align-items:center;color:var(--text);font-size:.78rem;font-weight:400;text-transform:none;letter-spacing:0;margin:0}.card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius);padding:1.25rem;margin-bottom:1rem;box-shadow:var(--shadow-sm)}.table-wrap{overflow-x:auto;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius);box-shadow:var(--shadow-sm);margin:.5rem 0 1rem}.card .table-wrap{box-shadow:none;margin-top:0}table{width:100%;border-collapse:collapse;font-size:.8rem}th,td{padding:.4rem .625rem;text-align:left;border-bottom:1px solid var(--border-subtle);vertical-align:top}th{background:var(--bg-surface);color:var(--text-muted);font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;border-bottom-color:var(--border)}tbody tr{transition:background var(--transition)}tbody tr:hover{background:var(--bg-hover)}tbody tr:last-child td{border-bottom:0}td.actions{text-align:right;white-space:nowrap}td.actions button.link+button.link{margin-left:.75rem}.tag{display:inline-block;padding:.15rem .5rem;border-radius:10px;font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;margin:0 .25rem .15rem 0;background:var(--bg-surface);color:var(--text-secondary);box-shadow:inset 0 0 0 1px var(--border)}.tag.ok{background:var(--success-bg);color:var(--success);box-shadow:none}.tag.warn{background:var(--warning-bg);color:var(--warning);box-shadow:none}.tag.bad{background:var(--danger-bg);color:var(--danger);box-shadow:none}.tag.accent{background:var(--primary-bg);color:var(--primary);box-shadow:none}.tag.call{font-family:var(--mono);text-transform:none;letter-spacing:0;font-size:.7rem}.alert{padding:.6rem .9rem;border-radius:var(--radius);margin:.6rem 0;font-size:.8rem;font-weight:700;border:1px solid transparent}.alert-error{background:var(--danger-bg);color:var(--danger);border-color:#d9302526}.alert-success{background:var(--success-bg);color:var(--success);border-color:#1e8e3e26}.alert-warning{background:var(--warning-bg);color:var(--warning);border-color:#e3740026}.secret{font:.78rem var(--mono);background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:.45rem .6rem;word-break:break-all;-webkit-user-select:all;user-select:all}.muted{color:var(--text-muted)}.small{font-size:.75rem}.row{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.spread{display:flex;gap:.5rem;align-items:center;justify-content:space-between;flex-wrap:wrap}.spread h1{margin-bottom:0}.crumb{font-size:.75rem;margin-bottom:.5rem}@media(max-width:768px){.app-layout{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto 1fr}.topbar{height:44px;gap:.5rem;padding:0 .75rem}.topbar-brand{width:auto}.sidebar{position:static;height:auto;flex-direction:row;flex-wrap:wrap;padding:.3rem}.sidebar-section{display:flex;flex-wrap:wrap;border:0;padding:0}.sidebar-group-label,.sidebar-version{display:none}.sidebar-link{padding:.4rem .65rem;border-left:0;border-bottom:2px solid transparent;font-size:.72rem}.sidebar-link.active{border-bottom-color:var(--chrome-accent)}.content{padding:1rem .75rem 2rem}.login-box{padding:1.75rem}}
