:root{--font-family:"Inter", system-ui, sans-serif;--font-family-heading:"Plus Jakarta Sans", system-ui, sans-serif;--color-brand:#5b5ef7;--color-brand-hover:#4547e0;--color-brand-light:#ededfd;--color-ok:#22c55e;--color-degraded:#f59e0b;--color-error:#ef4444;--color-ok-bg:#f0fdf4;--color-degraded-bg:#fffbeb;--color-error-bg:#fef2f2;--pico-primary:var(--color-brand);--pico-primary-hover:var(--color-brand-hover);--pico-primary-focus:rgba(91,94,247,.25);--pico-primary-inverse:#fff;--pico-background-color:#f8f8ff;--pico-card-background-color:#fff;--pico-card-border-color:#e8e8f0;--section-gap:3rem}[data-theme=dark]{--color-brand-light:rgba(91,94,247,.15);--color-ok-bg:rgba(34,197,94,.12);--color-degraded-bg:rgba(245,158,11,.12);--color-error-bg:rgba(239,68,68,.12);--pico-background-color:#12121a;--pico-card-background-color:#1c1c28;--pico-card-border-color:#2a2a3c}body{font-family:var(--font-family)}h1,h2,h3,h4,h5,h6{font-family:var(--font-family-heading);letter-spacing:-.02em;font-weight:700}header{border-bottom:1px solid var(--pico-card-border-color);margin-bottom:var(--section-gap);padding-block:1rem}.brand{font-family:var(--font-family-heading);color:var(--color-brand);letter-spacing:-.02em;font-size:1.15rem}.theme-toggle{padding:.35rem .9rem;font-size:.85rem}.hero{text-align:center;padding-block:3rem 2rem}.hero h1{margin-bottom:.5rem;font-size:clamp(2rem,5vw,3.5rem);font-weight:800}.hero p{color:var(--pico-muted-color);font-size:1.15rem}.health-card{flex-direction:column;gap:1rem;max-width:36rem;display:flex}.health-status{border-radius:var(--pico-border-radius);border:1px solid var(--pico-card-border-color);padding:1.25rem 1.5rem}.health-status.status-ok{background-color:var(--color-ok-bg);border-color:var(--color-ok)}.health-status.status-degraded{background-color:var(--color-degraded-bg);border-color:var(--color-degraded)}.health-status.status-error{background-color:var(--color-error-bg);border-color:var(--color-error)}.health-status header{border:none;align-items:center;gap:.6rem;margin-bottom:.75rem;padding:0;display:flex}.status-dot{background-color:currentColor;border-radius:50%;flex-shrink:0;width:.65rem;height:.65rem;display:inline-block}.status-ok .status-dot{color:var(--color-ok)}.status-degraded .status-dot{color:var(--color-degraded)}.status-error .status-dot{color:var(--color-error)}.health-status dl{grid-template-columns:auto 1fr;gap:.35rem 1.5rem;margin:0;display:grid}.health-status dl div{display:contents}.health-status dt{color:var(--pico-muted-color);text-transform:uppercase;letter-spacing:.04em;font-size:.85rem;font-weight:600}.health-status dd{margin:0;font-size:.95rem}.app-nav{border-bottom:1px solid var(--pico-card-border-color)}.app-nav .nav-user{color:var(--pico-muted-color);font-weight:600}.login-wrap{justify-content:center;align-items:flex-start;padding-top:8vh;display:flex}.login-card{width:100%;max-width:26rem}.login-head{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.login-error{color:var(--color-error);background:var(--color-error-bg);border-radius:var(--pico-border-radius);margin:.5rem 0;padding:.5rem .75rem}.doc-toolbar{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.doc-search{flex:18rem;margin:0}.doc-toolbar-actions{align-items:center;gap:.75rem;display:flex}.doc-toolbar-actions button.active,.view-toggle button.active{background:var(--color-brand);border-color:var(--color-brand);color:#fff}.view-toggle{display:inline-flex}.view-toggle button{border-radius:0;margin:0}.view-toggle button:first-child{border-top-left-radius:var(--pico-border-radius);border-bottom-left-radius:var(--pico-border-radius)}.view-toggle button:last-child{border-top-right-radius:var(--pico-border-radius);border-bottom-right-radius:var(--pico-border-radius)}.doc-layout{grid-template-columns:15rem 1fr;align-items:start;gap:1.5rem;display:grid}@media (width<=48rem){.doc-layout{grid-template-columns:1fr}}.doc-facets{flex-direction:column;gap:1.25rem;display:flex}.facet{border:1px solid var(--pico-card-border-color);border-radius:var(--pico-border-radius);margin:0;padding:.75rem 1rem}.facet legend{text-transform:uppercase;letter-spacing:.04em;color:var(--pico-muted-color);font-size:.8rem;font-weight:600}.facet select{margin:0}.facet-date{font-size:.85rem}.tag-chips{flex-wrap:wrap;gap:.4rem;display:flex}.tag-chip{border:1px solid var(--tag-color,var(--pico-card-border-color));width:auto;color:var(--pico-color);background:0 0;border-radius:999px;margin:0;padding:.2rem .65rem;font-size:.8rem}.tag-chip.active{background:var(--tag-color,var(--color-brand));color:#fff}.facet-clear{margin:0}.bulk-bar{border-radius:var(--pico-border-radius);background:var(--color-brand-light);flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1rem;padding:.6rem 1rem;display:flex}.bulk-bar select,.bulk-bar button{width:auto;margin:0}.bulk-count{font-weight:600}.bulk-delete{background:var(--color-error);border-color:var(--color-error);color:#fff}.doc-count{color:var(--pico-muted-color);margin-bottom:.75rem;font-size:.9rem}.doc-grid{grid-template-columns:repeat(auto-fill,minmax(11rem,1fr));gap:1rem;display:grid}.doc-card{border:1px solid var(--pico-card-border-color);border-radius:var(--pico-border-radius);background:var(--pico-card-background-color);margin:0;padding:0;position:relative;overflow:hidden}.doc-card.selected{border-color:var(--color-brand);box-shadow:0 0 0 2px var(--color-brand)}.doc-card .doc-select{margin:0;position:absolute;top:.4rem;left:.4rem}.doc-thumb{object-fit:cover;background:var(--color-brand-light);width:100%;height:9rem;display:block}.doc-card-meta{flex-direction:column;gap:.15rem;padding:.6rem .75rem;display:flex}.doc-title{text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;line-height:1.3;overflow:hidden}.doc-date{color:var(--pico-muted-color);font-size:.78rem}.doc-table{width:100%;margin:0}.doc-table tr.selected{background:var(--color-brand-light)}.doc-status{text-transform:uppercase;letter-spacing:.03em;color:var(--pico-muted-color);font-size:.75rem}.doc-status.status-failed{color:var(--color-error)}.doc-status.status-processing{color:var(--color-degraded)}.doc-error{color:var(--color-error);background:var(--color-error-bg);border-radius:var(--pico-border-radius);padding:.5rem .75rem}.doc-pager{justify-content:center;align-items:center;gap:1rem;margin-top:1.5rem;display:flex}.doc-pager button{width:auto;margin:0}.doc-pager-label{color:var(--pico-muted-color);font-size:.85rem}.doc-detail-back{margin-bottom:1rem}.doc-detail-head{flex-wrap:wrap;align-items:baseline;gap:1rem;margin-bottom:1rem;display:flex}.doc-detail-head h1{margin:0}.doc-detail-status{align-items:center;gap:.75rem;margin-bottom:1.5rem;display:inline-flex}.doc-detail-status-hint{color:var(--pico-muted-color);font-size:.85rem}.detail-layout{grid-template-columns:1.2fr 1fr;align-items:start;gap:1.5rem;display:grid}@media (width<=60rem){.detail-layout{grid-template-columns:1fr}}.doc-viewer{flex-direction:column;gap:.75rem;display:flex}.doc-viewer-pane{border:1px solid var(--pico-card-border-color);border-radius:var(--pico-border-radius);background:var(--pico-card-background-color);min-height:28rem;overflow:hidden}.doc-viewer-img{width:100%;height:auto;display:block}.doc-viewer-frame{border:0;width:100%;height:38rem}.doc-viewer-actions{flex-wrap:wrap;gap:.75rem;display:flex}.doc-viewer-actions a{width:auto;margin:0}.doc-edit{flex-direction:column;gap:.25rem;display:flex}.doc-edit-tags{margin:.5rem 0}.doc-edit-bool{align-items:center;gap:.5rem;display:flex}.doc-edit-actions{align-items:center;gap:1rem;margin-top:1rem;display:flex}.doc-edit-actions button{width:auto;margin:0}.doc-edit-saved{color:var(--color-ok);font-size:.85rem}.suggestion-banner{background:var(--color-brand-light);border:1px solid var(--color-brand);border-radius:var(--pico-border-radius);flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1.5rem;padding:.75rem 1rem;display:flex}.suggestion-label{font-weight:600}.suggestion-chips{flex-wrap:wrap;flex:auto;gap:.5rem;display:flex}.suggestion-chip{border-radius:1rem;width:auto;margin:0;padding:.25rem .75rem;font-size:.85rem}.suggestion-actions{gap:.5rem;display:flex}.suggestion-actions button{width:auto;margin:0}.upload-page{max-width:48rem;margin:0 auto}.upload-head{margin-bottom:1.5rem}.upload-sub{color:var(--pico-muted-color);margin:0}.upload-dropzone{text-align:center;border:2px dashed var(--pico-card-border-color);border-radius:var(--pico-border-radius);background:var(--pico-card-background-color);cursor:pointer;justify-content:center;align-items:center;min-height:12rem;padding:2rem;transition:border-color .15s,background .15s;display:flex}.upload-dropzone:hover,.upload-dropzone.dragging{border-color:var(--color-brand);background:var(--color-brand-light)}.upload-dropzone-inner{pointer-events:none;flex-direction:column;gap:.35rem;display:flex}.upload-dropzone-inner strong{font-family:var(--font-family-heading);font-size:1.1rem}.upload-dropzone-inner span{color:var(--pico-muted-color);font-size:.9rem}.upload-input{display:none}.upload-list{flex-direction:column;gap:.5rem;margin:1.5rem 0 0;padding:0;list-style:none;display:flex}.upload-item{background:var(--pico-card-background-color);border:1px solid var(--pico-card-border-color);border-radius:var(--pico-border-radius);justify-content:space-between;align-items:center;gap:1rem;padding:.6rem .9rem;display:flex}.upload-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.upload-badge{white-space:nowrap;border-radius:1rem;flex:none;padding:.2rem .7rem;font-size:.8rem;font-weight:600}.upload-badge.is-uploading,.upload-badge.is-processing,.upload-badge.is-slow{color:var(--color-degraded);background:var(--color-degraded-bg);animation:1.4s ease-in-out infinite upload-pulse}.upload-badge.is-done{color:var(--color-ok);background:var(--color-ok-bg)}.upload-badge.is-failed{color:var(--color-error);background:var(--color-error-bg)}@keyframes upload-pulse{0%,to{opacity:1}50%{opacity:.55}}@media (prefers-reduced-motion:reduce){.upload-badge.is-uploading,.upload-badge.is-processing,.upload-badge.is-slow{animation:none}}.manage-nav{border-bottom:1px solid var(--pico-card-border-color);flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem;padding-bottom:.75rem;display:flex}.manage-nav a{border-radius:var(--pico-border-radius);color:var(--pico-muted-color);padding:.3rem .7rem;text-decoration:none}.manage-nav a:hover{background:var(--color-brand-light)}.manage-nav a[aria-current]{background:var(--color-brand);color:#fff}.manage-head{margin-bottom:1.25rem}.manage-head h2{margin-bottom:.25rem}.manage-blurb{color:var(--pico-muted-color);max-width:48rem;font-size:.9rem}.manage-layout{grid-template-columns:minmax(16rem,22rem) 1fr;align-items:start;gap:1.5rem;display:grid}@media (width<=48rem){.manage-layout{grid-template-columns:1fr}}.manage-form-panel{border:1px solid var(--pico-card-border-color);border-radius:var(--pico-border-radius);background:var(--pico-card-background-color);padding:1rem 1.1rem;position:sticky;top:1rem}.manage-form h3{margin-top:0;margin-bottom:.75rem}.manage-form label{margin-bottom:.6rem;font-size:.9rem;display:block}.manage-form .manage-check{flex-direction:row-reverse;justify-content:flex-end;align-items:center;gap:.5rem;display:flex}.manage-form .manage-check input{width:auto;margin:0}.manage-matching{border:1px solid var(--pico-card-border-color);border-radius:var(--pico-border-radius);margin:.5rem 0 .75rem;padding:.5rem .75rem}.manage-matching legend{text-transform:uppercase;letter-spacing:.03em;color:var(--pico-muted-color);padding:0 .4rem;font-size:.8rem}.manage-note{color:var(--pico-muted-color);margin-bottom:.75rem;font-size:.82rem}.manage-form-actions{gap:.5rem;margin-top:.25rem;display:flex}.manage-form-actions button{width:auto;margin:0}.manage-error{color:var(--color-error);background:var(--color-error-bg);border-radius:var(--pico-border-radius);margin:0 0 .6rem;padding:.4rem .6rem;font-size:.85rem}.manage-table{width:100%;margin:0}.manage-table .manage-actions-col{white-space:nowrap;text-align:right;width:1%}.manage-row-actions{white-space:nowrap;text-align:right}.manage-row-actions button{width:auto;margin:0 0 0 .4rem;padding:.2rem .7rem;font-size:.82rem}.manage-delete{background:var(--color-error);border-color:var(--color-error);color:#fff}.manage-empty,.manage-table .manage-error{color:var(--pico-muted-color);text-align:center;padding:1.25rem}.manage-table .manage-error{color:var(--color-error)}.manage-color-cell{font-variant-numeric:tabular-nums;align-items:center;gap:.5rem;display:flex}.manage-swatch{border:1px solid var(--pico-card-border-color);background:var(--swatch,transparent);border-radius:3px;width:1rem;height:1rem;display:inline-block}.manage-template{word-break:break-all;font-size:.82rem}.manage-check-grid{border:1px solid var(--pico-card-border-color);border-radius:var(--pico-border-radius);grid-template-columns:repeat(auto-fill,minmax(13rem,1fr));gap:.1rem .75rem;margin:.5rem 0 .75rem;padding:.5rem .75rem;display:grid}.manage-check-grid legend{text-transform:uppercase;letter-spacing:.03em;color:var(--pico-muted-color);padding:0 .4rem;font-size:.8rem}.manage-permissions-cell{color:var(--pico-muted-color);font-size:.85rem}.account{max-width:32rem}.account-form{border:1px solid var(--pico-card-border-color);border-radius:var(--pico-border-radius);margin-top:1rem;padding:1rem 1.25rem}.account-warning{color:var(--color-error);background:var(--color-error-bg);border-radius:var(--pico-border-radius);margin:0;padding:.6rem .8rem}.account-success{color:var(--pico-ins-color,#2e7d32);margin:0 0 .6rem;font-size:.9rem}