@charset "UTF-8";:root{color-scheme:light;--accent:#2563eb;--accent-contrast:#ffffff;--accent-link:var(--accent);--accent-soft:rgba(37,99,235,0.1);--accent-soft:color-mix(in srgb,var(--accent)12%,transparent);--accent-line:rgba(37,99,235,0.35);--accent-line:color-mix(in srgb,var(--accent)40%,transparent);--bg:#f5f6f8;--bg-elevated:#ffffff;--bg-sunken:#eceef2;--bg-hover:#f1f3f6;--fg:#16181d;--fg-muted:#565c69;--fg-subtle:#8b91a1;--border:#d9dde4;--border-strong:#c2c8d2;--radius:10px;--radius-sm:6px;--radius-pill:999px;--shadow-sm:0 1px 2px rgba(16,18,23,0.07);--shadow:0 1px 2px rgba(16,18,23,0.06),0 10px 28px -14px rgba(16,18,23,0.28);--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2.5rem;--font-sans:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--font-mono:ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,"Liberation Mono",monospace;--text-xs:0.75rem;--text-sm:0.8125rem;--text-base:0.9375rem;--text-lg:1.0625rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--danger:#b3242a;--warning:#b06f00;--success:#14653a;--info:#0b5394;--danger-fg:#a01f26;--warning-fg:#8a5300;--success-fg:#12683a;--info-fg:#0b5394;--danger-bg:#fdf0f0;--warning-bg:#fff6e5;--success-bg:#eaf7ef;--info-bg:#eaf2fb;--danger-border:#f0cdcd;--warning-border:#f0dcb4;--success-border:#c6e6d2;--info-border:#c6ddf3;--focus-ring:0 0 0 3px rgba(37,99,235,0.38);--focus-ring:0 0 0 3px color-mix(in srgb,var(--accent)40%,transparent);--focus-width:2px;--sidebar-width:15.5rem;--control-height:2.375rem;--overlay:rgba(12,14,18,0.5);--transition:140ms ease}[data-theme="dark"]{color-scheme:dark;--accent-link:#8ab4f8;--accent-link:color-mix(in srgb,var(--accent)62%,#ffffff);--accent-soft:rgba(96,165,250,0.16);--accent-soft:color-mix(in srgb,var(--accent)20%,transparent);--accent-line:rgba(96,165,250,0.45);--accent-line:color-mix(in srgb,var(--accent)52%,transparent);--bg:#101218;--bg-elevated:#171a21;--bg-sunken:#0b0d12;--bg-hover:#1e222b;--fg:#e7e9ee;--fg-muted:#a3aab8;--fg-subtle:#6f7684;--border:#2b3039;--border-strong:#3a414d;--shadow-sm:0 1px 2px rgba(0,0,0,0.5);--shadow:0 1px 2px rgba(0,0,0,0.4),0 12px 30px -16px rgba(0,0,0,0.75);--danger:#b23b41;--warning:#a06a10;--success:#1c7a46;--info:#1a5f9e;--danger-fg:#ff9d9d;--warning-fg:#f0be6a;--success-fg:#7fd7a1;--info-fg:#93c5f2;--danger-bg:#2a1618;--warning-bg:#2a2113;--success-bg:#12271c;--info-bg:#12222f;--danger-border:#4a2429;--warning-border:#4a3a1c;--success-border:#23452f;--info-border:#224055;--focus-ring:0 0 0 3px rgba(96,165,250,0.5);--focus-ring:0 0 0 3px color-mix(in srgb,var(--accent-link)48%,transparent);--overlay:rgba(0,0,0,0.65)}@media(prefers-color-scheme:dark){:root:not([data-theme="light"]){color-scheme:dark;--accent-link:#8ab4f8;--accent-link:color-mix(in srgb,var(--accent)62%,#ffffff);--accent-soft:rgba(96,165,250,0.16);--accent-soft:color-mix(in srgb,var(--accent)20%,transparent);--accent-line:rgba(96,165,250,0.45);--accent-line:color-mix(in srgb,var(--accent)52%,transparent);--bg:#101218;--bg-elevated:#171a21;--bg-sunken:#0b0d12;--bg-hover:#1e222b;--fg:#e7e9ee;--fg-muted:#a3aab8;--fg-subtle:#6f7684;--border:#2b3039;--border-strong:#3a414d;--shadow-sm:0 1px 2px rgba(0,0,0,0.5);--shadow:0 1px 2px rgba(0,0,0,0.4),0 12px 30px -16px rgba(0,0,0,0.75);--danger:#b23b41;--warning:#a06a10;--success:#1c7a46;--info:#1a5f9e;--danger-fg:#ff9d9d;--warning-fg:#f0be6a;--success-fg:#7fd7a1;--info-fg:#93c5f2;--danger-bg:#2a1618;--warning-bg:#2a2113;--success-bg:#12271c;--info-bg:#12222f;--danger-border:#4a2429;--warning-border:#4a3a1c;--success-border:#23452f;--info-border:#224055;--focus-ring:0 0 0 3px rgba(96,165,250,0.5);--focus-ring:0 0 0 3px color-mix(in srgb,var(--accent-link)48%,transparent);--overlay:rgba(0,0,0,0.65)}}*,*::before,*::after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{margin:0;min-height:100vh;background:var(--bg);color:var(--fg);font-family:var(--font-sans);font-size:var(--text-base);line-height:1.55;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,p,figure,blockquote,dl,dd{margin:0}ul,ol{margin:0;padding-left:1.15rem}img,svg,video{max-width:100%;height:auto}hr{height:1px;margin:var(--space-5)0;border:0;background:var(--border)}code,kbd,samp,pre{font-family:var(--font-mono);font-size:0.9em}pre{overflow-x:auto;padding:var(--space-3)var(--space-4);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-sunken)}a{color:var(--accent-link);text-decoration:none;text-underline-offset:0.15em}a:hover{text-decoration:underline}::selection{background:var(--accent-soft)}h1,h2,h3,h4{font-weight:600;line-height:1.25;letter-spacing:-0.011em;color:var(--fg)}h1{font-size:var(--text-3xl)}h2{font-size:var(--text-2xl)}h3{font-size:var(--text-xl)}h4{font-size:var(--text-lg)}h1+.muted,h2+.muted,h3+.muted{margin-top:var(--space-1)}.muted{color:var(--fg-muted)}.small{font-size:var(--text-sm)}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:0.875em}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}:where(a,button,input,select,textarea,summary,[tabindex],[contenteditable]):focus-visible{outline:var(--focus-width)solid var(--accent);outline-offset:2px}:where(a,button,input,select,textarea,summary,[tabindex]):focus:not(:focus-visible){outline:none}.skip-link{position:absolute;top:var(--space-2);left:var(--space-2);z-index:200;padding:var(--space-2)var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-elevated);box-shadow:var(--shadow);color:var(--fg);font-size:var(--text-sm);font-weight:600;transform:translateY(-200%);transition:transform var(--transition)}.skip-link:focus,.skip-link:focus-visible{transform:translateY(0)}.app{display:grid;grid-template-columns:minmax(0,1fr);grid-template-areas:"sidebar" "topbar" "main" "footer";grid-template-rows:auto auto 1fr auto;min-height:100vh}.sidebar{grid-area:sidebar;position:sticky;top:0;z-index:30;display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)var(--space-3);padding:var(--space-3)var(--space-4);background:var(--bg-elevated);border-bottom:1px solid var(--border)}.sidebar-brand{display:flex;align-items:center;gap:var(--space-2);min-width:0;color:var(--fg);font-size:var(--text-lg);font-weight:650;letter-spacing:-0.015em}.sidebar-brand:hover{text-decoration:none}.sidebar-nav{display:flex;flex:1 1 100%;gap:var(--space-1);min-width:0;margin:0;padding:0 0 2px;overflow-x:auto;scrollbar-width:thin}.sidebar-nav a{display:block;flex:0 0 auto;padding:var(--space-2)var(--space-3);border-radius:var(--radius-sm);color:var(--fg-muted);font-size:var(--text-sm);font-weight:500;white-space:nowrap;transition:background var(--transition),color var(--transition)}.sidebar-nav a:hover{background:var(--bg-hover);color:var(--fg);text-decoration:none}.sidebar-nav a.is-active{background:var(--accent-soft);color:var(--accent-link);font-weight:600}.topbar{grid-area:topbar;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3)var(--space-4);background:var(--bg-elevated);border-bottom:1px solid var(--border)}.topbar-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin-left:auto}.segmented{display:inline-flex;align-items:stretch;border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden;background:var(--bg-sunken)}.segmented-item{display:inline-flex;align-items:center;justify-content:center;padding:0 8px;min-height:30px;min-width:32px;border:0;background:transparent;color:var(--fg-muted);cursor:pointer;font:inherit;line-height:1}.segmented-item+.segmented-item{border-left:1px solid var(--border)}.segmented-item:hover{color:var(--fg);background:var(--bg-elevated)}.segmented-item[aria-pressed="true"]{background:var(--accent);color:var(--accent-contrast)}.segmented-item:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.main{grid-area:main;min-width:0}.content{width:100%;max-width:88rem;margin:0 auto;padding:var(--space-5)var(--space-4)}.content>*+*{margin-top:var(--space-5)}.main>*+*{margin-top:var(--space-5)}.page-header{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--space-3)var(--space-4);padding-bottom:var(--space-3);border-bottom:1px solid var(--border)}.page-header h1,.page-header h2{font-size:var(--text-2xl)}.page-header .muted{font-size:var(--text-sm)}.page-header-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);align-self:center;margin-left:auto;flex:1 1 auto;min-width:0;justify-content:flex-end}.footer{grid-area:footer;padding:var(--space-4);border-top:1px solid var(--border);color:var(--fg-muted);font-size:var(--text-xs)}.footer a{color:var(--fg-muted);text-decoration:underline}.app--auth{display:block;min-height:100vh}.app--auth .content{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-4);min-height:100vh;max-width:none;padding:var(--space-6)var(--space-4)}.app--auth .main{width:100%;max-width:27rem}.login-shell{width:100%}.login-head{justify-content:center}.login-foot{justify-content:space-between;flex-wrap:nowrap;gap:var(--space-3);padding:var(--space-3)var(--space-4)}.login-foot .inline{display:inline-flex;align-items:center;margin:0}.login-foot .version{margin-left:auto}.app--auth .footer{width:100%;max-width:27rem;margin:0;padding:0;text-align:center;border-top:0}@media(max-width:30rem){.app--auth .content{padding:var(--space-5)var(--space-3)}}@media(min-width:60rem){.app:not(.app--auth){grid-template-columns:var(--sidebar-width)minmax(0,1fr);grid-template-rows:auto 1fr auto;grid-template-areas:"sidebar topbar" "sidebar main" "sidebar footer"}.sidebar{flex-direction:column;flex-wrap:nowrap;align-items:stretch;gap:var(--space-5);height:100vh;padding:var(--space-5)var(--space-3);border-right:1px solid var(--border);border-bottom:0;overflow-y:auto}.sidebar-brand{padding:0 var(--space-2)}.sidebar-nav{flex:1 1 auto;flex-direction:column;gap:2px;overflow:visible;padding:0}.sidebar-nav a{width:100%;padding:var(--space-2)var(--space-3)}.topbar{position:sticky;top:0;padding:var(--space-3)var(--space-5)}.content{padding:var(--space-5)var(--space-6)var(--space-6)}.footer{padding:var(--space-4)var(--space-6)}}.brand-logo{display:block;width:auto;height:auto;max-width:11rem;max-height:3rem;object-fit:contain}.login-head .brand-logo{max-width:16rem;max-height:4.5rem}.brand-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.brand-accent{color:var(--accent-link)}.card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);overflow:hidden}.card-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2)var(--space-3);padding:var(--space-4);border-bottom:1px solid var(--border);font-size:var(--text-lg);font-weight:600}.card-header h2,.card-header h3,.card-header h4{font-size:var(--text-lg)}.card-body{padding:var(--space-4)}.card-body>*+*{margin-top:var(--space-4)}.card-body>.pagination{margin-top:var(--space-5)}.card-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3)var(--space-4);background:var(--bg-sunken);border-top:1px solid var(--border)}.card-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-5);align-items:start}.session-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}.table-heading{padding:0;color:var(--fg-muted);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:0.05em}.signin-group>*+*{margin-top:var(--space-2)}.card-body>.signin-group+.signin-group{margin-top:var(--space-5)}.login-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-3)}@media(min-width:42rem){.login-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-4)}}.login-cell{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.login-cell-label{color:var(--fg-muted);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:0.05em}.login-cell-value{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:var(--text-sm);overflow-wrap:anywhere}.session-detail>*+*{margin-top:var(--space-2)}.session-detail>.table-wrap,.session-detail>.session-hint{margin-top:var(--space-4)}.session-count{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-2);margin:0}.session-count-label{color:var(--fg-muted);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:0.05em}.session-count-value{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:var(--text-xl);font-weight:600;line-height:1.1}.session-count-sep{color:var(--fg-muted);margin:0 var(--space-1)}.stat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}.stat{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-4);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.stat-value{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:var(--text-2xl);font-weight:600;line-height:1.2;color:var(--fg);overflow-wrap:anywhere}.stat-label{margin-top:var(--space-1);color:var(--fg-muted);font-size:var(--text-xs);font-weight:500;text-transform:uppercase;letter-spacing:0.06em}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--control-height);padding:0 var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--bg-elevated);color:var(--fg);font-family:inherit;font-size:var(--text-sm);font-weight:550;line-height:1.2;text-align:center;text-decoration:none;white-space:nowrap;cursor:pointer;transition:background var(--transition),border-color var(--transition),color var(--transition),box-shadow var(--transition),opacity var(--transition)}.btn:hover{background:var(--bg-hover);text-decoration:none}.btn:active{transform:translateY(0.5px)}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast);box-shadow:var(--shadow-sm)}.btn-primary:hover{background:var(--accent);border-color:var(--accent);filter:brightness(1.06)}.btn-secondary{background:var(--bg-sunken);border-color:var(--border);color:var(--fg)}.btn-secondary:hover{background:var(--bg-hover);border-color:var(--border-strong)}.btn-danger{background:var(--danger);border-color:var(--danger);color:#fff}.btn-danger:hover{background:var(--danger);border-color:var(--danger);filter:brightness(1.08)}.btn-sm{min-height:1.875rem;padding:0 var(--space-2);gap:var(--space-1);font-size:var(--text-xs)}.btn-block{display:flex;width:100%}.btn[disabled],.btn:disabled,.btn[aria-disabled="true"]{opacity:0.55;cursor:not-allowed;box-shadow:none;filter:none}.btn-group{display:inline-flex;flex-wrap:wrap;gap:var(--space-2)}.form{display:grid;gap:var(--space-4)}.form-row{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-4);align-items:start}.form-field{min-width:0}.usage{margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--border)}.usage-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--space-2)}.usage-label{font-size:var(--text-sm);font-weight:600}.usage-value{font-size:var(--text-sm);font-variant-numeric:tabular-nums}.usage-bar{position:relative;overflow:hidden;height:0.5rem;margin-top:var(--space-2);background:var(--bg-sunken);border-radius:999px}.usage-fill{display:block;height:100%;background:var(--accent);border-radius:999px}.usage-fill.is-warn{background:#b45309}.usage-fill.is-high{background:var(--danger)}.usage-note{margin:var(--space-2)0 0;font-size:var(--text-xs);color:var(--fg-muted)}.date-time{display:grid;grid-template-columns:minmax(0,1fr)7.5rem;gap:var(--space-2);align-items:center}.date-time .select{text-align:left}.form-actions{grid-column:1 / -1}.form-label{display:block;margin-bottom:var(--space-1);font-size:var(--text-sm);font-weight:600;color:var(--fg)}.form-label .muted,.form-label .small{font-weight:400}.form-hint{margin-top:var(--space-1);color:var(--fg-muted);font-size:var(--text-xs);line-height:1.45}.form-error{margin-top:var(--space-1);color:var(--danger-fg);font-size:var(--text-xs);font-weight:550}.form-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-2);padding-top:var(--space-4);border-top:1px solid var(--border)}.form>.form-actions:first-child{margin-top:0;padding-top:0;border-top:0}.fieldset{min-width:0;margin:0;padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius)}.fieldset>legend{padding:0 var(--space-2);font-size:var(--text-sm);font-weight:600}.input,.select,select,textarea,input[type="text"],input[type="email"],input[type="password"],input[type="search"],input[type="url"],input[type="tel"],input[type="number"],input[type="date"],input[type="datetime-local"],input[type="time"]{display:block;width:100%;min-height:var(--control-height);padding:var(--space-2)var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--bg-elevated);color:var(--fg);font-family:inherit;font-size:var(--text-sm);line-height:1.4;transition:border-color var(--transition),box-shadow var(--transition),background var(--transition)}textarea{min-height:6rem;resize:vertical}.select,select{appearance:none;-webkit-appearance:none;padding-right:2rem;background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%);background-position:calc(100% - 1.05rem)55%,calc(100% - 0.7rem)55%;background-size:0.35rem 0.35rem,0.35rem 0.35rem;background-repeat:no-repeat;cursor:pointer}.input:hover,.select:hover,select:hover,textarea:hover,input:hover:not([type="checkbox"]):not([type="radio"]){border-color:var(--fg-muted)}.input:focus-visible,.select:focus-visible,select:focus-visible,textarea:focus-visible,input:focus-visible{border-color:var(--accent);box-shadow:var(--focus-ring)}.input::placeholder,textarea::placeholder,input::placeholder{color:var(--fg-muted);opacity:0.85}.input[disabled],.select[disabled],select[disabled],textarea[disabled],input[disabled]{background:var(--bg-sunken);color:var(--fg-muted);cursor:not-allowed;opacity:0.85}.input[aria-invalid="true"],select[aria-invalid="true"],textarea[aria-invalid="true"]{border-color:var(--danger)}.checkbox,.radio{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-1)0;font-size:var(--text-sm);cursor:pointer}input[type="checkbox"],input[type="radio"]{flex:0 0 auto;width:1.05rem;height:1.05rem;margin:0.15rem 0 0;accent-color:var(--accent);cursor:pointer}.radio-group{display:flex;flex-wrap:wrap;gap:var(--space-2)var(--space-4)}.radio-group.is-stacked{flex-direction:column;gap:var(--space-1)}td.nowrap-cell,th.nowrap-cell{white-space:nowrap}.table-wrap{width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm)}table.table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}table.table caption{padding:var(--space-3)var(--space-4);color:var(--fg-muted);font-size:var(--text-xs);text-align:left}table.table thead th{position:sticky;top:0;z-index:1;padding:var(--space-3)var(--space-4);background:var(--bg-sunken);border-bottom:1px solid var(--border);color:var(--fg-muted);font-size:var(--text-xs);font-weight:600;text-align:left;text-transform:uppercase;letter-spacing:0.05em;white-space:nowrap}table.table tbody td,table.table tbody th{padding:var(--space-3)var(--space-4);border-top:1px solid var(--border);vertical-align:middle;text-align:left}table.table tbody tr:first-child td{border-top:0}table.table tbody tr:hover{background:var(--bg-hover)}td.num,th.num{text-align:right;font-family:var(--font-mono);font-variant-numeric:tabular-nums;white-space:nowrap}td.nowrap,th.nowrap{white-space:nowrap}th.sortable{cursor:pointer;user-select:none;-webkit-user-select:none}th.sortable a{color:inherit;text-decoration:none;font:inherit;letter-spacing:inherit}th.sortable a:hover{color:var(--fg)}th.sortable::after{content:"\2195";margin-left:var(--space-1);font-size:0.9em;opacity:0.45}th.sortable:hover{color:var(--fg)}th.sortable[aria-sort="ascending"]::after{content:"\2191";opacity:1}th.sortable[aria-sort="descending"]::after{content:"\2193";opacity:1}.table-empty{padding:var(--space-6)var(--space-4);color:var(--fg-muted);font-size:var(--text-sm);text-align:center}.table-actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2);white-space:nowrap}.statement-row{cursor:pointer}.statement-row:hover>td{background:var(--bg-hover)}.statement-row:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.statement-row[aria-expanded="true"]>td{background:var(--bg-hover)}.statement-caret{display:inline-block;width:1em;margin-right:var(--space-1);color:var(--fg-muted);font-size:var(--text-lg);line-height:1;vertical-align:-0.08em}.statement-caret::before{content:"\25B8"}.statement-row[aria-expanded="true"] .statement-caret::before{content:"\25BE"}.statement-detail>td{padding:var(--space-3)var(--space-4)var(--space-4);background:var(--bg-sunken);border-top:1px solid var(--border)}.statement-detail-body{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-2)var(--space-3)}.statement-detail-label{font-size:var(--text-xs);font-weight:650;letter-spacing:0.04em;text-transform:uppercase;color:var(--fg-muted)}.statement-detail-empty{color:var(--fg-muted);font-size:var(--text-sm)}.count-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.6rem;padding:0 var(--space-2);border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--bg-sunken);color:var(--fg);font-size:var(--text-xs);font-weight:650;font-variant-numeric:tabular-nums}.count-badge.is-zero{color:var(--fg-muted);border-style:dashed;background:transparent}a.tag{text-decoration:none}a.tag:hover{background:var(--accent-soft);border-color:var(--accent-line);color:var(--fg)}.table-actions form{display:inline-flex;margin:0}.badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:0.1rem var(--space-2);border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--bg-sunken);color:var(--fg-muted);font-size:var(--text-xs);font-weight:600;line-height:1.6;white-space:nowrap}.badge-success{background:var(--success-bg);border-color:var(--success-border);color:var(--success-fg)}.badge-warning{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-fg)}.badge-danger{background:var(--danger-bg);border-color:var(--danger-border);color:var(--danger-fg)}.badge-neutral{background:var(--bg-sunken);border-color:var(--border);color:var(--fg-muted)}.pill{display:inline-flex;align-items:center;gap:var(--space-1);padding:0.05rem var(--space-2);border-radius:var(--radius-sm);background:var(--accent-soft);color:var(--accent-link);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:600;white-space:nowrap}.tag-list{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1)var(--space-2);margin:0;padding:0;list-style:none}.tag-list li{display:inline-flex;align-items:center}.checkbox-list{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin:0;padding:0}.checkbox-list .checkbox{gap:var(--space-2);margin:0;padding:var(--space-1)var(--space-3);border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--bg-sunken);font-size:var(--text-sm);line-height:1.4}.checkbox-list .checkbox:hover{background:var(--bg-hover);border-color:var(--border-strong)}.checkbox-list .checkbox:has(input:checked){background:var(--accent-soft);border-color:var(--accent-line);color:var(--fg)}.checkbox-list .checkbox input{margin-top:0}.alert{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-3)var(--space-4);border:1px solid var(--border);border-left-width:3px;border-radius:var(--radius-sm);background:var(--bg-elevated);color:var(--fg);font-size:var(--text-sm)}.alert-success{background:var(--success-bg);border-color:var(--success-border);border-left-color:var(--success);color:var(--success-fg)}.alert-warning{background:var(--warning-bg);border-color:var(--warning-border);border-left-color:var(--warning);color:var(--warning-fg)}.alert-danger{background:var(--danger-bg);border-color:var(--danger-border);border-left-color:var(--danger);color:var(--danger-fg)}.alert-info{background:var(--info-bg);border-color:var(--info-border);border-left-color:var(--info);color:var(--info-fg)}.alert a{color:inherit;text-decoration:underline}.flash{position:sticky;top:0;z-index:15;margin-bottom:var(--space-4);padding:var(--space-3)var(--space-4);border:1px solid var(--accent-line);border-radius:var(--radius-sm);background:var(--accent-soft);color:var(--fg);font-size:var(--text-sm);font-weight:550;box-shadow:var(--shadow-sm);animation:flash-in 200ms ease-out}.toast{position:fixed;right:var(--space-4);bottom:var(--space-4);z-index:100;max-width:min(22rem,calc(100vw - 2 * var(--space-4)));padding:var(--space-3)var(--space-4);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:var(--radius-sm);background:var(--bg-elevated);color:var(--fg);font-size:var(--text-sm);box-shadow:var(--shadow);animation:toast-in 200ms ease-out}.toast+.toast{margin-top:var(--space-2)}.toast.is-success{border-left-color:var(--success)}.toast.is-danger{border-left-color:var(--danger)}dialog{width:100%;max-width:min(34rem,calc(100vw - 2 * var(--space-4)));max-height:calc(100vh - 2 * var(--space-5));padding:0;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-elevated);color:var(--fg);box-shadow:var(--shadow);overflow:auto}dialog::backdrop{background:var(--overlay)}dialog[open]{animation:dialog-in 160ms ease-out}.dialog{display:flex;flex-direction:column}.dialog-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4);border-bottom:1px solid var(--border);font-size:var(--text-lg);font-weight:600}.dialog-header h2,.dialog-header h3{font-size:var(--text-lg)}.dialog-body{padding:var(--space-4);overflow-y:auto}.dialog-body>*+*{margin-top:var(--space-4)}.dialog-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3)var(--space-4);background:var(--bg-sunken);border-top:1px solid var(--border)}.confirm-input{display:block;width:100%;padding:var(--space-2)var(--space-3);border:1px solid var(--danger);border-radius:var(--radius-sm);background:var(--bg-elevated);color:var(--fg);font-family:var(--font-mono);font-size:var(--text-sm);letter-spacing:0.04em}.confirm-input:focus-visible{border-color:var(--danger);box-shadow:0 0 0 3px var(--danger-bg)}.progress{position:relative;width:100%;height:0.5rem;overflow:hidden;border-radius:var(--radius-pill);background:var(--bg-sunken);box-shadow:inset 0 0 0 1px var(--border)}.progress-bar{height:100%;width:0;border-radius:inherit;background:var(--accent);transition:width 260ms ease}.progress-bar.is-success{background:var(--success)}.progress-bar.is-warning{background:var(--warning)}.progress-bar.is-danger{background:var(--danger)}.progress.is-lg{height:0.75rem}.progress-label{display:flex;justify-content:space-between;gap:var(--space-3);margin-top:var(--space-1);color:var(--fg-muted);font-size:var(--text-xs)}.empty-state{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-6)var(--space-4);border:1px dashed var(--border);border-radius:var(--radius);background:var(--bg-elevated);color:var(--fg-muted);text-align:center}.empty-state h3,.empty-state h4{color:var(--fg)}.spinner{display:none;width:1em;height:1em;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;vertical-align:-0.125em;animation:spin 640ms linear infinite}.search-box{display:flex;align-items:center;gap:var(--space-2);min-width:0;max-width:26rem;flex:1 1 18rem}.search-box .input{flex:1 1 auto;width:auto;min-width:0}.pagination{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin:0;padding:0;list-style:none}.pagination a,.pagination span{display:inline-flex;align-items:center;justify-content:center;min-width:2rem;min-height:2rem;padding:0 var(--space-2);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-elevated);color:var(--fg-muted);font-size:var(--text-sm);font-variant-numeric:tabular-nums}.pagination a:hover{background:var(--bg-hover);color:var(--fg);text-decoration:none}.pagination a.is-active{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast);font-weight:600}.pagination span[aria-disabled="true"],.pagination .is-disabled{opacity:0.5;cursor:not-allowed}.password-field{position:relative;display:flex;align-items:center;gap:var(--space-2)}.password-field .input{font-family:var(--font-mono);letter-spacing:0.02em}.password-field .btn{flex:0 0 auto}.copy-button{flex:0 0 auto;min-height:1.75rem;padding:0 var(--space-2);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-sunken);color:var(--fg-muted);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:600;cursor:pointer;transition:background var(--transition),color var(--transition)}.copy-button:hover{background:var(--bg-hover);color:var(--fg)}.copy-button.is-copied{background:var(--success-bg);border-color:var(--success-border);color:var(--success-fg)}.key-value{display:grid;grid-template-columns:minmax(0,12rem)minmax(0,1fr);gap:var(--space-2)var(--space-4);margin:0;font-size:var(--text-sm)}.key-value dt{color:var(--fg-muted)}.key-value dd{margin:0;overflow-wrap:anywhere}.inline-form{display:inline-flex;align-items:center;gap:var(--space-2);margin:0}.cluster{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.stack>*+*{margin-top:var(--space-3)}.htmx-indicator{display:none}.htmx-request .htmx-indicator,.htmx-request.htmx-indicator{display:inline-flex}.htmx-request .spinner,.spinner.htmx-request{display:inline-block}.btn.htmx-request,.btn.is-loading{position:relative;cursor:progress;opacity:0.8;pointer-events:none}.btn.htmx-request::after,.btn.is-loading::after{content:"";width:0.85em;height:0.85em;margin-left:var(--space-2);border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:spin 640ms linear infinite}.htmx-swapping{opacity:0.5;transition:opacity 120ms ease-out}.htmx-added{animation:fade-in 160ms ease-out}.htmx-settling{opacity:1}.htmx-response-error{color:var(--danger-fg)}@media(min-width:42rem){.form-row{grid-template-columns:repeat(2,minmax(0,1fr))}.form-row.is-3{grid-template-columns:repeat(3,minmax(0,1fr))}.form-field.is-full{grid-column:1 / -1}}@media(max-width:47.99rem){.col-optional{display:none}table.table thead th,table.table tbody td,table.table tbody th{padding:var(--space-2)var(--space-3)}.content,.card-body,.card-header,.card-footer{padding-left:var(--space-3);padding-right:var(--space-3)}.page-header-actions,.topbar-actions{width:100%;margin-left:0}.page-header-actions .btn,.topbar-actions .btn{flex:1 1 auto}.stat-grid{gap:var(--space-3)}.toast{left:var(--space-3);right:var(--space-3);max-width:none}.key-value{grid-template-columns:minmax(0,1fr);gap:var(--space-1)}}@media(min-width:52rem){.stat-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(min-width:80rem){table.table{font-size:var(--text-base)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fade-in{from{opacity:0}to{opacity:1}}@keyframes flash-in{from{opacity:0;transform:translateY(-0.25rem)}to{opacity:1;transform:none}}@keyframes toast-in{from{opacity:0;transform:translateY(0.5rem)}to{opacity:1;transform:none}}@keyframes dialog-in{from{opacity:0;transform:translateY(-0.35rem)scale(0.99)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:0.001ms;animation-iteration-count:1;transition-duration:0.001ms;scroll-behavior:auto}.spinner,.btn.htmx-request::after,.btn.is-loading::after{animation-duration:1.2s}}@media print{:root,:root:not([data-theme="light"]){--bg:#fff;--bg-elevated:#fff;--bg-sunken:#fff;--fg:#000;--fg-muted:#333;--border:#bbb;--shadow:none;--shadow-sm:none}.sidebar,.topbar,.page-header-actions,.footer,.toast,.flash,.skip-link,.btn,.copy-button,.spinner,.htmx-indicator{display:none}.app{display:block}.content{max-width:none;padding:0}.card,.stat,.table-wrap,.alert{box-shadow:none;break-inside:avoid}table.table thead th{background:#fff;border-bottom:1px solid #000}a[href]::after{content:" (" attr(href)")";font-size:0.8em;color:#333}}@media(max-width:30rem){.date-time{grid-template-columns:minmax(0,1fr)}}.footer{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)var(--space-4)}.service-status{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1)var(--space-4);margin:0;padding:0;list-style:none}.service-status-item{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--fg-muted)}.service-status-dot{width:0.5rem;height:0.5rem;border-radius:50%;background:var(--fg-muted);flex:0 0 auto}.service-status-item.is-up .service-status-dot{background:var(--success)}.service-status-item.is-down .service-status-dot{background:var(--danger)}.service-status-item.is-unknown .service-status-dot{background:transparent;border:1px solid var(--border-strong)}.service-status-item.is-down{color:var(--danger)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}.nav-heading{margin:1.3rem 0 var(--space-2);padding:0 var(--space-3);color:var(--fg-subtle);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:0.06em}.sidebar-nav>.nav-heading:first-of-type{margin-top:var(--space-3)}.sidebar-nav a{display:flex;align-items:center;gap:var(--space-3)}.nav-icon{flex:0 0 auto;opacity:0.85}.sidebar-nav a.is-active .nav-icon{opacity:1}.usage-inline{display:inline-flex;align-items:center;gap:var(--space-2);justify-content:flex-end}.usage-inline-value{font-family:var(--font-mono);font-variant-numeric:tabular-nums;white-space:nowrap}.usage-inline-value.is-warn{color:#b45309}.usage-inline-value.is-high{color:var(--danger);font-weight:600}.usage-inline-bar{display:inline-block;width:3.5rem;height:0.375rem;border-radius:var(--radius-pill);background:var(--bg-sunken);border:1px solid var(--border);overflow:hidden;flex:0 0 auto}.usage-inline-bar>.usage-fill{display:block;height:100%;border-radius:var(--radius-pill)}.usage-inline-note{color:var(--fg-muted);font-size:var(--text-xs)}.ip-link{font-family:var(--font-mono);font-size:var(--text-xs);color:inherit;text-decoration:none;border-bottom:1px dotted var(--border-strong)}.ip-link:hover{color:var(--accent);border-bottom-color:var(--accent)}.audit-detail td{padding-top:0;padding-bottom:var(--space-3);border-top:0}.audit-detail-text{display:block;color:var(--fg-muted);font-family:var(--font-mono);font-size:var(--text-xs);word-break:break-word}.card-header-hint{display:block;margin-top:var(--space-1);color:var(--fg-muted);font-size:var(--text-xs);font-weight:400;text-transform:none;letter-spacing:0}.statement-detail-row{margin-top:var(--space-4)}.sort-hint{margin-left:var(--space-2);color:var(--fg-subtle);font-weight:400;text-transform:none;letter-spacing:0}.help-intro{margin:0 0 var(--space-4);font-size:var(--text-md)}.help-toc{margin-top:var(--space-5)}.help-toc ol{margin:var(--space-2)0 0;padding-left:var(--space-5)}.help-toc li{margin-bottom:var(--space-2)}.help-toc .muted{display:block;font-size:var(--text-sm);padding-left:var(--space-2)}.help-topic{scroll-margin-top:var(--space-5)}.help-topic .card-body>*+*{margin-top:var(--space-3)}.help-fields{display:grid;grid-template-columns:max-content 1fr;gap:var(--space-2)var(--space-4);margin:0}.help-fields dt{color:var(--fg-muted);font-size:var(--text-sm)}.help-fields dd{margin:0;font-family:var(--font-mono);overflow-wrap:anywhere}.help-steps{margin:0;padding-left:var(--space-5)}.help-steps li{margin-bottom:var(--space-2)}.card-header-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center}.hint{color:var(--fg-muted);font-size:var(--text-xs);font-style:italic}.stat-link{display:inline-flex;align-items:center;gap:var(--space-1);color:inherit;text-decoration:none}.stat-link:hover{color:var(--accent);text-decoration:underline}.stat-link .nav-icon{width:0.85em;height:0.85em;opacity:1}