:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--color-bg:var(--lightningcss-light,#fff)var(--lightningcss-dark,#0b0e14);--color-surface:var(--lightningcss-light,#f4f6fa)var(--lightningcss-dark,#161b28);--color-border:var(--lightningcss-light,#d5dbe6)var(--lightningcss-dark,#262d3d);--color-text:var(--lightningcss-light,#1a2233)var(--lightningcss-dark,#e6e9f0);--color-heading:var(--lightningcss-light,#0b1220)var(--lightningcss-dark,#fff);--color-muted:var(--lightningcss-light,#5b667a)var(--lightningcss-dark,#9aa4b8);--color-accent:var(--lightningcss-light,#0f766e)var(--lightningcss-dark,#4fd1c5);--color-on-accent:var(--lightningcss-light,#fff)var(--lightningcss-dark,#06231f);--color-link:var(--lightningcss-light,#1d5fbf)var(--lightningcss-dark,#63b3ed);--color-ok:var(--lightningcss-light,#18794e)var(--lightningcss-dark,#3dd68c);--color-bad:var(--lightningcss-light,#c62a2f)var(--lightningcss-dark,#ff9592);--color-warn:var(--lightningcss-light,#8a5a00)var(--lightningcss-dark,#ffc46b);--color-warn-bg:var(--lightningcss-light,#fff3d6)var(--lightningcss-dark,#3a2c0b);--color-focus:var(--lightningcss-light,#1d5fbf)var(--lightningcss-dark,#8ec8ff);--shadow-popover:0 8px 24px var(--lightningcss-light,#0f172a24)var(--lightningcss-dark,#00000080);--font-sans:system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--text-xs:.75rem;--text-sm:.875rem;--text-md:1rem;--text-lg:1.25rem;--text-xl:1.75rem;--leading:1.5;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-6:1.5rem;--space-8:2rem;--space-12:3rem;--radius-sm:4px;--radius-md:8px;--radius-full:999px;--content-width:64rem;--control-height:2.5rem;--focus-ring:2px solid var(--color-focus);font-family:var(--font-sans);font-size:100%;line-height:var(--leading);color:var(--color-text);background:var(--color-bg);-webkit-text-size-adjust:100%}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}*,:before,:after{box-sizing:border-box}body{overflow-wrap:anywhere;margin:0}h1,h2,h3{margin:0 0 var(--space-4);color:var(--color-heading);line-height:1.25}h1{font-size:var(--text-xl)}h3{font-size:var(--text-md)}h2{font-size:var(--text-lg)}p{margin:0 0 var(--space-4)}a{color:var(--color-link)}code{font-family:var(--font-mono);font-size:.9em}:focus-visible{outline:var(--focus-ring);outline-offset:2px}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.button{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--control-height);padding:0 var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);color:var(--color-text);font:inherit;cursor:pointer;font-weight:500;text-decoration:none;display:inline-flex}.button:hover{background:var(--color-surface)}.button-primary{border-color:var(--color-accent);background:var(--color-accent);color:var(--color-on-accent)}.button-primary:hover{background:var(--color-accent);filter:brightness(1.08)}.skip-link{top:var(--space-2);left:var(--space-2);z-index:20;padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);background:var(--color-accent);color:var(--color-on-accent);font-weight:600;position:absolute;transform:translateY(-200%)}.skip-link:focus{transform:none}.shell{flex-direction:column;min-height:100dvh;display:flex}.shell-header{z-index:10;border-bottom:1px solid var(--color-border);background:var(--color-bg);position:sticky;top:0}.shell-bar{align-items:center;gap:var(--space-2) var(--space-4);max-width:var(--content-width);padding:var(--space-3) var(--space-4);flex-wrap:wrap;margin:0 auto;display:flex}.brand{align-items:center;gap:var(--space-2);min-height:var(--control-height);color:var(--color-heading);font-size:var(--text-md);letter-spacing:-.01em;white-space:nowrap;font-weight:700;text-decoration:none;display:inline-flex}.brand-mark{background:var(--color-accent);border-radius:3px;width:.75rem;height:.75rem}.shell-nav ul{gap:var(--space-1);margin:0;padding:0;list-style:none;display:flex}.shell-nav a{min-height:var(--control-height);padding:0 var(--space-3);border-radius:var(--radius-md);color:var(--color-muted);align-items:center;font-weight:500;text-decoration:none;display:inline-flex}.shell-nav a:hover{background:var(--color-surface);color:var(--color-text)}.shell-nav a[aria-current=page]{color:var(--color-heading);box-shadow:inset 0 -2px 0 var(--color-accent);border-end-end-radius:0;border-end-start-radius:0}.shell-search{flex:12rem;min-width:0;max-width:24rem;margin-left:auto}.shell-search input{width:100%;min-height:var(--control-height);padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font:inherit}.shell-search input::placeholder{color:var(--color-muted)}.shell-main{width:100%;max-width:var(--content-width);padding:var(--space-8) var(--space-4) var(--space-12);flex:1;margin:0 auto}.shell-main:focus{outline:none}.shell-search{position:relative}.search-popover{top:calc(100% + var(--space-2));z-index:15;padding:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);box-shadow:var(--shadow-popover);position:absolute;left:0;right:0}.search-popover ul{margin:0;padding:0;list-style:none}.search-option{gap:var(--space-1);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);cursor:pointer;flex-direction:column;display:flex}.search-option:hover{background:var(--color-surface)}.search-option[aria-selected=true]{background:var(--color-surface);outline:var(--focus-ring);outline-offset:-2px}.search-option-title{color:var(--color-heading);font-weight:600}.search-option-all{color:var(--color-link);font-size:var(--text-sm)}.search-nothing{padding:var(--space-2) var(--space-3);color:var(--color-muted);font-size:var(--text-sm);margin:0}.search-summary{color:var(--color-muted)}.shell-footer{border-top:1px solid var(--color-border);color:var(--color-muted);font-size:var(--text-xs);text-align:center}.shell-footer p{max-width:var(--content-width);padding:var(--space-2) var(--space-4);margin:0 auto}@media (width<=40rem){.shell-search{flex-basis:100%;order:5;max-width:none}.user-menu{margin-left:auto}.shell-main{padding-top:var(--space-6)}}.user-menu{position:relative}.brand+.user-menu{margin-left:auto}.user-menu-button{max-width:14rem;padding:0 var(--space-3) 0 var(--space-1);border-radius:var(--radius-full)}.user-menu-avatar{border-radius:var(--radius-full);background:var(--color-accent);width:2rem;height:2rem;color:var(--color-on-accent);font-size:var(--text-sm);text-transform:uppercase;flex:none;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.user-menu-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}@media (width<=30rem){.shell-bar{column-gap:var(--space-2)}.shell-nav a{padding:0 var(--space-2)}.user-menu-button{padding-right:var(--space-1)}.user-menu-name{display:none}}.user-menu-popover{top:calc(100% + var(--space-2));z-index:15;width:max-content;min-width:14rem;max-width:min(20rem, calc(100vw - 2 * var(--space-4)));padding:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);box-shadow:var(--shadow-popover);position:absolute;right:0}.user-menu-identity{padding:var(--space-2) var(--space-3) var(--space-3);border-bottom:1px solid var(--color-border);color:var(--color-muted);font-size:var(--text-sm);margin:0}.user-menu-identity strong{color:var(--color-heading);font-size:var(--text-md);display:block}.user-menu-item{width:100%;min-height:var(--control-height);margin-top:var(--space-2);padding:0 var(--space-3);border-radius:var(--radius-sm);color:var(--color-text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;display:flex}.user-menu-item:hover,.user-menu-item:focus-visible{background:var(--color-surface)}.badge{margin-left:var(--space-2);padding:0 var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-full);color:var(--color-accent);font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase;vertical-align:middle;font-weight:600;display:inline-block}.state{align-items:center;gap:var(--space-2);padding:var(--space-12) var(--space-4);border:1px dashed var(--color-border);border-radius:var(--radius-md);color:var(--color-muted);text-align:center;flex-direction:column;display:flex}.state>*{max-width:32rem;margin:0}.state-title{color:var(--color-heading);font-size:var(--text-lg);font-weight:600}.state-actions{justify-content:center;gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.state-error{border-style:solid;border-color:var(--color-bad)}.state-error .state-title{color:var(--color-bad)}.spinner{border:3px solid var(--color-border);border-top-color:var(--color-accent);border-radius:var(--radius-full);width:1.5rem;height:1.5rem;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.spinner{animation-duration:4s}}.page-header{margin-bottom:var(--space-6)}.page-header p{color:var(--color-muted)}.notice{padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-left:4px solid var(--color-muted);border-radius:var(--radius-md);background:var(--color-surface)}.notice-bad{border-left-color:var(--color-bad)}.page-section{margin-bottom:var(--space-12)}.tag{padding:0 var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-heading);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.02em;white-space:nowrap;flex:none;font-weight:600;text-decoration:none;display:inline-block}a.tag:hover{border-color:var(--color-accent)}.report-date{color:var(--color-muted);font-size:var(--text-sm);white-space:nowrap}.report-list{border-top:1px solid var(--color-border);margin:0;padding:0;list-style:none}.report-row{justify-content:space-between;align-items:baseline;gap:var(--space-1) var(--space-4);padding:var(--space-3) 0;border-bottom:1px solid var(--color-border);flex-wrap:wrap;display:flex}.report-row-title{min-width:0;color:var(--color-heading);flex:16rem;font-weight:600;text-decoration:none}.report-row-title:hover{color:var(--color-link);text-decoration:underline}.report-row-meta{align-items:baseline;gap:var(--space-3);display:inline-flex}.breadcrumb ol{gap:var(--space-2);margin:0 0 var(--space-3);color:var(--color-muted);font-size:var(--text-sm);flex-wrap:wrap;padding:0;list-style:none;display:flex}.breadcrumb li+li:before{content:"/";margin-right:var(--space-2)}.topic-header h1{margin-bottom:var(--space-2)}.topic-header-facts{align-items:baseline;gap:var(--space-3);font-size:var(--text-sm);flex-wrap:wrap;margin:0;display:flex}.report-format{color:var(--color-muted);font-size:var(--text-sm)}.shell:has(.reader){height:100dvh}.shell-main:has(.reader){flex-direction:column;max-width:none;min-height:0;padding:0;display:flex}.reader{flex-direction:column;flex:1;min-height:0;display:flex}.reader-bar{width:100%;max-width:var(--content-width);padding:var(--space-3) var(--space-4);margin:0 auto}.reader-bar .breadcrumb ol{margin-bottom:var(--space-1)}.reader-title{margin-bottom:var(--space-1);font-size:var(--text-lg)}.reader-meta{justify-content:space-between;align-items:baseline;gap:var(--space-1) var(--space-4);flex-wrap:wrap;display:flex}.reader-steps{gap:var(--space-4);font-size:var(--text-sm);display:flex}.reader-step[aria-disabled=true]{color:var(--color-muted);opacity:.6}.reader-frame{border:0;border-top:1px solid var(--color-border);background:var(--color-bg);flex:1;width:100%;min-height:0;display:block}.filter{gap:var(--space-2);margin-bottom:var(--space-6);flex-wrap:wrap;display:flex}.chip{align-items:center;gap:var(--space-2);min-height:var(--control-height);padding:0 var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-full);background:var(--color-bg);color:var(--color-text);font:inherit;cursor:pointer;font-weight:500;display:inline-flex}.chip:hover{background:var(--color-surface)}.chip[aria-pressed=true],.chip[aria-current=page]{border-color:var(--color-accent);background:var(--color-accent);color:var(--color-on-accent)}a.chip{text-decoration:none}.chip-count{font-size:var(--text-sm);opacity:.75}.topic-group{margin-bottom:var(--space-8)}.topic-group h3{margin-bottom:var(--space-3);color:var(--color-muted);letter-spacing:.04em;text-transform:uppercase;font-weight:600}.topic-grid{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}@media (width>=40rem){.topic-grid{grid-template-columns:repeat(auto-fill,minmax(14rem,1fr))}}.topic-card{align-items:flex-start;gap:var(--space-1);height:100%;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);flex-direction:column;text-decoration:none;display:flex}.topic-card:hover{border-color:var(--color-accent);background:var(--color-surface)}.topic-card-label{color:var(--color-heading);font-weight:600}.topic-card-count{color:var(--color-muted);font-size:var(--text-sm)}.form{gap:var(--space-4);flex-direction:column;display:flex}.field{gap:var(--space-1);flex-direction:column;display:flex}div.field>label.field{gap:var(--space-1)}.field-label{color:var(--color-heading);font-size:var(--text-sm);font-weight:600}.input{width:100%;min-height:var(--control-height);padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);color:var(--color-text);font:inherit}.input-code{min-height:3.5rem;font-family:var(--font-mono);font-size:var(--text-xl);letter-spacing:.3em;text-align:center;font-weight:700}.button:disabled{cursor:default;opacity:.55}.button-wide{width:100%}.button-link{color:var(--color-link);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.button-link:disabled{color:var(--color-muted);cursor:default;text-decoration:none}.divider{align-items:center;gap:var(--space-3);margin:var(--space-4) 0;color:var(--color-muted);font-size:var(--text-sm);display:flex}.divider:before,.divider:after{content:"";border-top:1px solid var(--color-border);flex:1}.admin-nav{margin-bottom:var(--space-6);border-bottom:1px solid var(--color-border);overflow-x:auto}.admin-nav ul{gap:var(--space-1);margin:0;padding:0;list-style:none;display:flex}.admin-nav a{min-height:var(--control-height);padding:0 var(--space-3);color:var(--color-muted);white-space:nowrap;align-items:center;font-weight:500;text-decoration:none;display:inline-flex}.admin-nav a:hover{color:var(--color-text)}.admin-nav a[aria-current=page]{color:var(--color-heading);box-shadow:inset 0 -2px 0 var(--color-accent)}.stat-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(min(100%,18rem),1fr));display:grid}.stat-card{padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md)}.stat-card h2{margin-bottom:var(--space-3);font-size:var(--text-md)}.stat-card dl{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;display:grid}.stat{flex-direction:column-reverse;display:flex}.stat dt{color:var(--color-muted);font-size:var(--text-sm)}.stat dd{color:var(--color-heading);font-size:var(--text-xl);margin:0;font-weight:700;line-height:1.2}.table-scroll{border:1px solid var(--color-border);border-radius:var(--radius-md);overflow-x:auto}.table{border-collapse:collapse;width:100%;min-width:44rem;font-size:var(--text-sm)}.table th,.table td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border);text-align:left;vertical-align:top;overflow-wrap:normal}.table th{background:var(--color-surface);color:var(--color-muted);white-space:nowrap;font-weight:600}.table tr:last-child td{border-bottom:0}.table .nowrap{white-space:nowrap}.table code{overflow-wrap:anywhere}.status{padding:0 var(--space-2);border-radius:var(--radius-full);font-size:var(--text-xs);white-space:nowrap;border:1px solid;font-weight:600;display:inline-block}.status-published{color:var(--color-ok)}.status-draft{color:var(--color-muted)}.status-archived{color:var(--color-bad)}.textarea{height:auto;min-height:calc(var(--control-height) * 2.5);padding-block:var(--space-2);font-family:var(--font-mono);font-size:var(--text-sm);resize:vertical;line-height:1.5}.add-result{margin-top:var(--space-6)}.usage-totals{gap:var(--space-4);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));margin:0;display:grid}.table-compact{min-width:0}.table .row-note{color:var(--color-muted);font-size:var(--text-xs);font-weight:400;display:block}.table .numeric{text-align:right;font-variant-numeric:tabular-nums}.table .usage-bar-cell{width:45%}.usage-bar{height:var(--space-3);border-radius:var(--radius-sm);background:var(--color-accent);display:block}.usage-periods{padding:0;list-style:none}.narrowed{gap:var(--space-2);margin:0 0 var(--space-4);flex-wrap:wrap;padding:0;list-style:none;display:flex}.narrowed li{align-items:center;gap:var(--space-3);min-height:var(--control-height);padding:0 var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-full);background:var(--color-surface);overflow-wrap:anywhere;display:inline-flex}.table .row-aside{font-size:var(--text-sm);font-weight:400}.export-actions{margin-top:var(--space-6)}.sub-nav{margin-bottom:var(--space-6)}.sub-nav ul{gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.sub-nav a{min-height:var(--control-height);padding:0 var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-full);color:var(--color-muted);align-items:center;font-weight:500;text-decoration:none;display:inline-flex}.sub-nav a:hover{color:var(--color-text)}.sub-nav a[aria-current=page]{border-color:var(--color-accent);color:var(--color-heading)}.status-user-active{color:var(--color-ok)}.status-user-suspended{color:var(--color-bad)}.session-current{margin-left:var(--space-2)}.sessions-actions,.table-scroll+.confirm{margin-top:var(--space-4)}.table-action{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.check{align-items:center;gap:var(--space-2);display:flex}.add-result .notice{margin-bottom:var(--space-4)}.status-token-active{color:var(--color-ok)}.status-token-expired,.status-token-revoked{color:var(--color-muted)}.token-created{margin-bottom:var(--space-6)}.token-created p{margin-top:0}.token-value{font-family:var(--font-mono,monospace);font-size:var(--text-sm)}.gaps{gap:var(--space-1);margin:var(--space-1) 0 0;flex-wrap:wrap;padding:0;list-style:none;display:flex}.gap{padding:0 var(--space-2);border-radius:var(--radius-sm);background:var(--color-warn-bg);color:var(--color-warn);font-size:var(--text-xs);white-space:nowrap;font-weight:600}.table th[scope=row]{color:inherit;white-space:normal;background:0 0;font-weight:600}.table .table-check{vertical-align:middle;width:1%}.bulk{margin-bottom:var(--space-3);color:var(--color-muted);font-size:var(--text-sm)}.preview-facts{gap:var(--space-3) var(--space-8);margin:0 0 var(--space-4);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.preview-facts dt{color:var(--color-muted)}.preview-facts dd{margin:0}.preview-note{color:var(--color-muted);font-size:var(--text-sm)}.preview-actions{margin-bottom:var(--space-4)}.preview-frame{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);width:100%;height:80vh;display:block}.edit .form,.edit-form{max-width:32rem}.edit-form{margin-top:var(--space-8);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md)}.edit-form h2{font-size:var(--text-md);margin:0}.form-actions{align-items:center;gap:var(--space-3) var(--space-4);flex-wrap:wrap;display:flex}.danger{max-width:32rem;margin-top:var(--space-12);padding:var(--space-4);border:1px solid var(--color-bad);border-radius:var(--radius-md)}.danger h2{font-size:var(--text-md)}.danger p{margin:0}.button-danger{border-color:var(--color-bad);background:var(--color-bad);color:var(--color-bg)}.button-danger:hover{background:var(--color-bad);filter:brightness(1.08)}.upload-forms{gap:var(--space-6);margin-bottom:var(--space-8);grid-template-columns:repeat(auto-fit,minmax(min(100%,20rem),1fr));display:grid}.upload-form{padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);align-content:start}.upload-form h2{font-size:var(--text-md);margin:0}.upload-form .button{align-self:flex-start}.form-hint{color:var(--color-muted);font-size:var(--text-sm);margin:0}.input-file{max-width:100%;font:inherit;font-size:var(--text-sm)}.upload-counts{gap:var(--space-2) var(--space-6);flex-wrap:wrap;display:flex}.upload-outcome{white-space:nowrap;font-weight:600}.upload-created strong,.upload-updated strong,.upload-outcome.upload-created,.upload-outcome.upload-updated{color:var(--color-ok)}.upload-rejected strong,.upload-outcome.upload-rejected{color:var(--color-bad)}.upload-outcome.upload-unchanged{color:var(--color-muted)}.page-header .button{margin-top:var(--space-2)}.filters{align-items:flex-end;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.filters .field{flex:8.5rem;max-width:16rem}.filters .filters-search{flex-basis:16rem;max-width:24rem}.filters-actions{align-items:center;gap:var(--space-4);min-height:var(--control-height);display:flex}.pager{justify-content:space-between;align-items:center;gap:var(--space-3);margin-top:var(--space-4);color:var(--color-muted);font-size:var(--text-sm);display:flex}.pager-steps{gap:var(--space-4);display:flex}.acknowledgement{max-width:36rem;margin:0 auto}.acknowledgement ul{gap:var(--space-3);margin:0 0 var(--space-6);padding-left:var(--space-6);flex-direction:column;display:flex}.acknowledgement .notice{margin-bottom:var(--space-4)}.acknowledgement-actions{align-items:center;gap:var(--space-3) var(--space-6);flex-wrap:wrap;display:flex}.acknowledgement-version{margin:var(--space-6) 0 0;color:var(--color-muted);font-size:var(--text-xs)}.login{max-width:24rem;margin:var(--space-8) auto 0}.login-actions{margin-top:var(--space-6);font-size:var(--text-sm)}.login-actions p{margin:0 0 var(--space-2)}.login-wait{color:var(--color-muted)}.login-footnote{margin-top:var(--space-6);color:var(--color-muted);font-size:var(--text-sm);text-align:center}
