:root{--space-3xs:2px;--space-2xs:4px;--space-xs:8px;--space-sm:12px;--space-md:16px;--space-lg:24px;--space-xl:40px;--space-2xl:64px;--space-3xl:96px;--space-4xl:144px;--text-xs:.75rem;--text-sm:.875rem;--text-md:1rem;--text-lg:1.2rem;--text-xl:1.44rem;--text-2xl:1.728rem;--text-3xl:2.074rem;--text-display-s:1.44rem;--text-display:1.728rem;--text-section:1.2rem;--text-title:1rem;--text-lead:1rem;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.7, 0, .84, 0);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--dur-micro:.12s;--dur-short:.22s;--dur-long:.42s;--color-error:#ff8a80;--color-success:#71f6ba;--container:1440px;--gutter:64px;--gap-columns:32px;--section-gap-s:120px;--section-gap:144px;--section-gap-l:176px;--z-base:1;--z-raised:10;--z-dropdown:100;--z-sticky:200;--z-sticky-nav:300;--z-modal:400;--z-toast:500;--z-tooltip:600;--color-paper:#001e2b;--color-paper-2:#112733;--color-paper-3:#023430;--color-ink:#e8edeb;--color-ink-2:#c5d2cd;--color-muted:#96a3a8;--color-rule:#1c3442;--color-field:#5c6c75;--color-hover:#0a2a37;--color-accent:#00684a;--color-accent-ink:#fff;--color-accent-hover:#00784f;--color-accent-line:#00a35c;--color-focus:#0498ec;--color-leaf:#00ed64;--color-link:#3aa8f0;--color-warn:#ffc010;--color-warn-paper:#2b2711;--color-warn-line:#5c4d10;--color-danger:#ff8a80;--color-danger-paper:#2e1416;--color-danger-line:#8c3a35;--color-chip:#0b3a38;--color-chip-ink:#b1ddc9;--color-disabled:#1a2c36;--color-disabled-ink:#96a3a8;--color-scrim:#000a10b8;--font-display:Georgia, "Times New Roman", ui-serif, serif;--font-body:"Euclid Circular A", "Helvetica Neue", Helvetica, Arial, ui-sans-serif, system-ui, sans-serif;--font-outlier:var(--font-body);--font-mono:"Source Code Pro", ui-monospace, Consolas, monospace;--display-weight:400;--radius-card:8px;--radius-control:6px;--radius-pill:999px;--rule-hair:1px;--shadow-card:none;--tracking-display:-.01em;--side-width:232px;--page-max:1160px;--control-h:36px;--control-h-sm:32px}*,:before,:after{box-sizing:border-box}html,body{overflow-x:clip}html{scrollbar-color:var(--color-muted) var(--color-paper);scroll-padding-top:var(--space-3xl)}body{background:var(--color-paper);color:var(--color-ink);font-family:var(--font-body);font-size:var(--text-md);-webkit-font-smoothing:antialiased;caret-color:var(--color-accent);margin:0;line-height:1.55}::selection{background:color-mix(in oklab, var(--color-accent) 22%, transparent);color:var(--color-ink)}:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}a{color:inherit;text-underline-offset:.16em;text-decoration-thickness:1px}h1,h2,h3{font-family:var(--font-display);font-weight:var(--display-weight,700);font-synthesis:none;letter-spacing:var(--tracking-display);overflow-wrap:break-word;text-wrap:balance;min-width:0;margin:0;line-height:1.05}h1{max-width:20ch;font-size:var(--text-display)}h2{max-width:30ch;font-size:var(--text-section)}h3{max-width:40ch;font-size:var(--text-title);line-height:1.2}.lead{font-size:var(--text-lead);max-width:52ch;line-height:1.45}p{text-wrap:pretty;margin:0}p:not([class]){max-width:65ch}img,video{max-width:100%;height:auto;display:block}svg{display:block}[hidden]{display:none!important}button,input,select,textarea{font:inherit}.container{width:100%;max-width:var(--container);padding-inline:var(--gutter);box-sizing:border-box;margin-inline:auto}.num,.figure,td.num{font-variant-numeric:tabular-nums}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (width<=60rem){:root{--gutter:24px;--section-gap-s:80px;--section-gap:96px;--section-gap-l:120px}}@media (width<=40rem){:root{--gutter:16px;--section-gap-s:56px;--section-gap:72px;--section-gap-l:96px;--gap-columns:16px}}@media (prefers-reduced-motion:reduce){:not(.keep-motion),:not(.keep-motion):before,:not(.keep-motion):after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}body{font-size:var(--text-md);line-height:1.5}a{color:var(--color-link)}code,.mono{font-family:var(--font-mono);font-size:var(--text-sm);overflow-wrap:anywhere}.shell{grid-template-columns:var(--side-width) minmax(0, 1fr);min-height:100vh;display:grid}.side{background:var(--color-paper);border-right:var(--rule-hair) solid var(--color-rule);flex-direction:column;height:100vh;display:flex;position:sticky;top:0}.brand{align-items:center;gap:var(--space-xs);padding:var(--space-md);border-bottom:var(--rule-hair) solid var(--color-rule);color:var(--color-ink);font-weight:700;text-decoration:none;display:flex}.brand svg{width:20px;height:20px;fill:var(--color-leaf)}.nav{padding:var(--space-xs) 0;flex-direction:column;margin:0;list-style:none;display:flex}.nav a{padding:var(--space-xs) var(--space-md);min-height:40px;color:var(--color-ink);border-left:3px solid #0000;text-decoration:none;display:block}.nav a:hover{background:var(--color-hover)}.nav a:active{background:var(--color-paper-2)}.nav a[aria-current=page]{background:var(--color-paper-3);border-left-color:var(--color-leaf);font-weight:700}.nav a:focus-visible{outline-offset:-2px}.side-foot{padding:var(--space-md);border-top:var(--rule-hair) solid var(--color-rule);gap:var(--space-xs);font-size:var(--text-sm);color:var(--color-muted);flex-direction:column;margin-top:auto;display:flex}.side-foot b{color:var(--color-ink);font-weight:600}.content{min-width:0}.page{max-width:var(--page-max);padding:var(--space-lg) var(--space-xl) var(--space-2xl);margin-inline:auto}.page-head{justify-content:space-between;align-items:flex-start;gap:var(--space-lg);margin-bottom:var(--space-lg);display:flex}.page-head h1{font-size:var(--text-display);max-width:none;line-height:1.15}.page-head p{color:var(--color-ink-2);margin-top:var(--space-xs);max-width:64ch}.page-head .actions{gap:var(--space-xs);flex-shrink:0;display:flex}section+section{margin-top:var(--space-xl)}.section-head{justify-content:space-between;align-items:baseline;gap:var(--space-md);margin-bottom:var(--space-sm);display:flex}.section-head h2{font-family:var(--font-body);font-weight:700;font-size:var(--text-lg);letter-spacing:0}.section-head p{color:var(--color-muted);font-size:var(--text-sm)}button,.btn{justify-content:center;align-items:center;gap:var(--space-2xs);min-height:var(--control-h);padding:0 var(--space-md);border-radius:var(--radius-control);border:var(--rule-hair) solid var(--color-field);background:var(--color-paper-2);color:var(--color-ink);font-weight:600;font-size:var(--text-sm);cursor:pointer;white-space:nowrap;transition:background-color var(--dur-micro) var(--ease-out), border-color var(--dur-micro) var(--ease-out);text-decoration:none;display:inline-flex;position:relative}button:after,.btn:after{content:"";position:absolute;inset:-6px -2px}button:hover,.btn:hover{background:var(--color-hover);border-color:var(--color-muted)}button:active,.btn:active{background:var(--color-paper)}button.primary{background:var(--color-accent);border-color:var(--color-accent-line);color:var(--color-accent-ink)}button.primary:hover{background:var(--color-accent-hover)}button.primary:active{background:var(--color-accent);border-color:var(--color-leaf)}button.danger{color:var(--color-danger);border-color:var(--color-danger-line)}button.danger:hover{background:var(--color-danger-paper)}button.sm{min-height:var(--control-h-sm);padding:0 var(--space-sm)}button.link{color:var(--color-link);min-height:var(--control-h-sm);background:0 0;border-color:#0000;justify-content:flex-start;padding:0;font-weight:600}button.link:hover{background:0 0;text-decoration:underline}button:disabled,button[aria-disabled=true]{background:var(--color-disabled);border-style:dashed;border-color:var(--color-field);color:var(--color-disabled-ink);cursor:not-allowed}button[aria-busy=true]{cursor:progress}.row-actions{gap:var(--space-xs);flex-wrap:nowrap;justify-content:flex-end;display:flex}.field{gap:var(--space-2xs);margin-bottom:var(--space-md);flex-direction:column;max-width:30rem;display:flex}.field label,.label{font-weight:700;font-size:var(--text-sm)}.help{color:var(--color-muted);font-size:var(--text-sm);min-height:1lh}input,select{min-height:var(--control-h);padding:0 var(--space-sm);border:var(--rule-hair) solid var(--color-field);border-radius:var(--radius-control);background:var(--color-paper-2);width:100%;color:var(--color-ink);font-size:var(--text-md)}input:hover,select:hover{border-color:var(--color-muted)}input:focus-visible,select:focus-visible{outline:2px solid var(--color-focus);outline-offset:-1px}input:disabled{background:var(--color-disabled);color:var(--color-disabled-ink);cursor:not-allowed;border-style:dashed}input::placeholder{color:var(--color-field)}input[type=checkbox]{width:18px;height:18px;min-height:18px;accent-color:var(--color-accent);margin-top:var(--space-3xs);flex-shrink:0;padding:0}.check{gap:var(--space-xs);max-width:60ch;margin-bottom:var(--space-md);align-items:flex-start;display:flex}.inline{gap:var(--space-xs);flex-wrap:wrap;align-items:flex-start;display:flex}.inline select{width:9rem}.inline input{width:14rem}.form-actions{gap:var(--space-xs);margin-top:var(--space-md);display:flex}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}th,td{text-align:left;padding:var(--space-sm) var(--space-xs);border-bottom:var(--rule-hair) solid var(--color-rule);vertical-align:top}th{color:var(--color-ink-2);white-space:nowrap;border-bottom-color:var(--color-field);font-weight:700}td.name{font-weight:600;font-size:var(--text-md);color:var(--color-ink)}td.actions{white-space:nowrap;width:1%}td .sub{color:var(--color-muted);font-size:var(--text-sm);margin-top:var(--space-3xs);font-weight:400;display:block}tbody tr:hover{background:var(--color-hover)}.state{font-weight:600}.state.ok{color:var(--color-success)}.state.idle{color:var(--color-warn)}.state.sys{color:var(--color-ink-2)}.chip{background:var(--color-chip);color:var(--color-chip-ink);padding:0 var(--space-xs);margin:0 var(--space-2xs) var(--space-2xs) 0;font-size:var(--text-sm);border-radius:4px;line-height:1.6;display:inline-block}.none{color:var(--color-muted)}.stats{gap:var(--space-md);margin:0 0 var(--space-xl);padding:var(--space-md) 0;border-top:var(--rule-hair) solid var(--color-rule);border-bottom:var(--rule-hair) solid var(--color-rule);grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr));display:grid}.stats div{min-width:0}.stats dt{color:var(--color-muted);font-size:var(--text-sm);white-space:nowrap}.stats dd{margin:var(--space-2xs) 0 0;font-size:var(--text-xl);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-weight:700}.facts{gap:var(--space-xs) var(--space-lg);grid-template-columns:max-content minmax(0,1fr);margin:0;display:grid}.facts dt{color:var(--color-muted)}.facts dd{margin:0}.note{background:var(--color-paper-2);border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-card);padding:var(--space-sm) var(--space-md);color:var(--color-ink-2);font-size:var(--text-sm)}.note.warn{background:var(--color-warn-paper);border-color:var(--color-warn-line);color:var(--color-warn)}.alert{background:var(--color-danger-paper);border:var(--rule-hair) solid var(--color-danger-line);border-radius:var(--radius-card);padding:var(--space-sm) var(--space-md);color:var(--color-danger);gap:var(--space-md);margin-bottom:var(--space-md);flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}.empty{border:var(--rule-hair) dashed var(--color-field);border-radius:var(--radius-card);padding:var(--space-lg);color:var(--color-ink-2)}.empty b{color:var(--color-ink);margin-bottom:var(--space-2xs);display:block}.empty p+.btn,.empty p+button{margin-top:var(--space-sm)}.skeleton td span{background:var(--color-paper-2);border-radius:4px;height:14px;display:block}.ok-text{color:var(--color-success)}.err-text{color:var(--color-danger)}.steps{gap:var(--space-lg);margin:0 0 var(--space-lg);color:var(--color-muted);font-size:var(--text-sm);flex-wrap:wrap;padding:0;list-style:none;display:flex}.steps li{align-items:center;gap:var(--space-xs);display:flex}.steps .n{border:var(--rule-hair) solid currentColor;font-variant-numeric:tabular-nums;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;display:inline-flex}.steps [aria-current=step]{color:var(--color-ink);font-weight:700}.steps [aria-current=step] .n{color:var(--color-leaf)}.result{margin:0 0 var(--space-md);gap:var(--space-2xs);flex-direction:column;padding:0;list-style:none;display:flex}.secret{background:var(--color-paper);border:var(--rule-hair) dashed var(--color-accent-line);border-radius:var(--radius-control);padding:var(--space-sm);margin:var(--space-xs) 0}.secret .label{color:var(--color-muted);margin-bottom:var(--space-2xs);font-weight:400;display:block}.secret .mono{margin-bottom:var(--space-xs);display:block}.scrim{background:var(--color-scrim);padding:var(--space-md);z-index:var(--z-modal);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.dialog{background:var(--color-paper-2);border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-card);padding:var(--space-lg);width:100%;max-width:36rem;max-height:90vh;overflow:auto}.dialog:focus{outline:none}.dialog h2{font-family:var(--font-body);font-weight:700;font-size:var(--text-lg);letter-spacing:0;margin-bottom:var(--space-sm);max-width:none}.dialog p+p,.dialog p+.note,.dialog .note+p{margin-top:var(--space-sm)}.dialog ol,.dialog ul{padding-left:var(--space-lg);margin:var(--space-sm) 0;gap:var(--space-xs);flex-direction:column;display:flex}.dialog .form-actions{margin-top:var(--space-lg)}.dialog .field{max-width:none}.login{max-width:22rem;padding:var(--space-lg);background:var(--color-paper-2);border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-card);margin:14vh auto 0}.login .brand{padding:0 0 var(--space-lg);border:0}.login .field{max-width:none}.login button{width:100%}.pager{align-items:center;gap:var(--space-sm);margin-top:var(--space-md);color:var(--color-muted);font-size:var(--text-sm);display:flex}@media (width<=60rem){.shell{grid-template-columns:minmax(0,1fr)}.side{border-right:0;border-bottom:var(--rule-hair) solid var(--color-rule);height:auto;position:static}.nav{flex-direction:row;padding:0;overflow-x:auto}.nav a{white-space:nowrap;border-bottom:3px solid #0000;border-left:0}.nav a[aria-current=page]{border-bottom-color:var(--color-leaf)}.side-foot{flex-direction:row;justify-content:space-between;align-items:center}.page{padding:var(--space-md) var(--space-md) var(--space-xl)}.page-head{flex-direction:column}}@media (width<=40rem){table.stack thead{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}table.stack,table.stack tbody,table.stack tr,table.stack td{width:auto;display:block}table.stack tr{padding:var(--space-sm) 0;border-bottom:var(--rule-hair) solid var(--color-rule)}table.stack td{padding:var(--space-2xs) 0;align-items:flex-start;gap:var(--space-2xs) var(--space-sm);border:0;flex-wrap:wrap;display:flex}table.stack td:before{content:attr(data-label);color:var(--color-muted);font-size:var(--text-sm);flex:0 0 8rem;font-weight:400}table.stack td .sub{padding-left:calc(8rem + var(--space-sm));flex-basis:100%}.section-head{gap:var(--space-2xs);flex-direction:column}table.stack td.name{font-size:var(--text-md)}table.stack td.actions{white-space:normal;width:auto}table.stack .row-actions{flex-wrap:wrap;justify-content:flex-start}table.stack .skeleton td:before{content:none}.table-wrap{overflow-x:visible}.inline input,.inline select,.inline button{width:100%}.facts{gap:var(--space-2xs);grid-template-columns:minmax(0,1fr)}}
