@font-face{font-family:geistSans;src:url(../media/GeistVF-s.p.0e569l9b0bre8.woff)format("woff");font-display:swap}@font-face{font-family:geistSans Fallback;src:local(Arial);ascent-override:85.83%;descent-override:20.52%;line-gap-override:9.33%;size-adjust:107.19%}.geistsans_d025f23b-module__btTCTG__className{font-family:geistSans,geistSans Fallback}.geistsans_d025f23b-module__btTCTG__variable{--font-geist-sans:"geistSans", "geistSans Fallback"}
@font-face{font-family:geistMono;src:url(../media/GeistMonoVF-s.p.1lv5tp2fpjxdz.woff)format("woff");font-display:swap}@font-face{font-family:geistMono Fallback;src:local(Arial);ascent-override:69.97%;descent-override:16.73%;line-gap-override:7.61%;size-adjust:131.49%}.geistmono_df95d851-module__CWPfka__className{font-family:geistMono,geistMono Fallback}.geistmono_df95d851-module__CWPfka__variable{--font-geist-mono:"geistMono", "geistMono Fallback"}
:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--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:.8125rem;--text-base:.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.44rem;--text-section:1rem;--text-title:.875rem;--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;--container:1120px;--gutter:40px;--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:#fdfefe;--color-paper-2:#f3f5f5;--color-paper-3:#e7ebea;--color-ink:#191e20;--color-ink-2:#3e4346;--color-muted:#5c6164;--color-rule:#e2e5e7;--color-rule-strong:#c7cbcd;--color-accent:#0b7566;--color-accent-ink:#f8fdfc;--color-focus:#0b7566;--color-error:#b32322;--color-success:#106c3e;--color-warn:#944f00;--color-shadow:#131f2512;--color-sheen:#ffffff29;--font-display:var(--font-geist-sans), ui-sans-serif, system-ui, sans-serif;--font-body:var(--font-geist-sans), ui-sans-serif, system-ui, sans-serif;--font-outlier:var(--font-body);--font-mono:var(--font-geist-mono), ui-monospace, monospace;--radius-card:12px;--radius-control:8px;--radius-tag:6px;--radius-pill:999px;--rule-hair:1px;--shadow-card:0 1px 2px var(--color-shadow), 0 8px 24px var(--color-shadow);--tracking-display:-.02em;--display-weight:600}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@supports (color:lab(0% 0 0)){:root{--color-paper:lab(99.5474% -.332654 -.0692844);--color-paper-2:lab(96.4383% -.998259 -.207758);--color-paper-3:lab(92.6218% -1.33118 -.276935);--color-ink:lab(10.7094% -1.65954 -2.31765);--color-ink-2:lab(28.1105% -1.68261 -2.32938);--color-muted:lab(40.8708% -1.69042 -2.3336);--color-rule:lab(90.7359% -.855058 -1.17236);--color-rule-strong:lab(81.4598% -1.0671 -1.46452);--color-accent-ink:lab(98.9028% -1.69387 -.0162005);--color-error:lab(40.2064% 56.6397 39.4962);--color-success:lab(39.9402% -35.288 18.2258);--color-warn:lab(41.3933% 28.3899 61.7982);--color-shadow:lab(10.7427% -3.91721 -5.69853/.07);--color-sheen:lab(100% 0 0/.16)}}@media (prefers-color-scheme:dark){:root{--color-paper:#111314;--color-paper-2:#0a0d0e;--color-paper-3:#1c2022;--color-ink:#e9ebed;--color-ink-2:#c1c5c7;--color-muted:#94999c;--color-rule:#202325;--color-rule-strong:#373b3d;--color-accent:#4fd1b8;--color-accent-ink:#041a16;--color-focus:#4fd1b8;--color-error:#f98f84;--color-success:#6ed2a0;--color-warn:#eeb154;--color-shadow:#0000004d;--color-sheen:#fff3}@supports (color:lab(0% 0 0)){:root{--color-paper:lab(5.73433% -.827871 -1.20968);--color-paper-2:lab(3.37414% -.577033 -.854093);--color-paper-3:lab(11.8626% -1.25701 -1.74445);--color-ink:lab(93.052% -.641972 -.879717);--color-ink-2:lab(79.1398% -1.06692 -1.46444);--color-muted:lab(62.9074% -1.48782 -2.04673);--color-rule:lab(13.6027% -1.25885 -1.74541);--color-rule-strong:lab(24.6267% -1.4738 -2.03903);--color-accent-ink:lab(7.5839% -9.08896 -.0775635);--color-error:lab(70.9432% 40.0704 24.4382);--color-success:lab(77.2353% -39.4865 15.5723);--color-warn:lab(76.7321% 16.4406 55.1357);--color-shadow:lab(0% 0 0/.3);--color-sheen:lab(100% 0 0/.2)}}}
*,: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}[data-slot]{background:linear-gradient(160deg, var(--color-paper-2,var(--color-paper)), var(--color-paper-3,var(--color-paper)));position:relative;overflow:hidden}[data-slot]>img{object-fit:cover;z-index:1;width:100%;height:100%;position:absolute;inset:0}[data-slot]:has(>img)>:not(img):not([data-keep]){display:none!important}@media (max-width:60rem){:root{--gutter:24px;--section-gap-s:80px;--section-gap:96px;--section-gap-l:120px}}@media (max-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-base);background:var(--color-paper-2);line-height:1.5}a{text-decoration:none}button,a,label,select{touch-action:manipulation}:focus-visible{border-radius:var(--space-2xs)}h1{max-width:none;line-height:1.25}h2{letter-spacing:-.01em;max-width:none;line-height:1.4}.portal{grid-template-columns:240px minmax(0,1fr);height:100dvh;display:grid}.portal-side{gap:var(--space-md);min-height:0;padding:var(--space-sm);flex-direction:column;display:flex}.portal-brand{gap:var(--space-xs);padding:var(--space-2xs) var(--space-xs);letter-spacing:-.01em;align-items:center;font-weight:600;display:flex}.brand-mark{color:var(--color-accent);flex:none}.portal-nav{gap:var(--space-3xs);flex-direction:column;flex:1;display:flex;overflow-y:auto}.nav-label{padding:var(--space-md) var(--space-xs) var(--space-2xs);font-size:var(--text-xs);color:var(--color-muted);font-weight:500}.nav-link{gap:var(--space-xs);min-height:32px;padding:var(--space-2xs) var(--space-xs);color:var(--color-ink-2);border-radius:var(--radius-tag);transition:background-color var(--dur-micro) ease, color var(--dur-micro) ease;align-items:center;font-weight:500;display:flex}.nav-link svg{color:var(--color-muted);flex:none}.nav-link:hover,.nav-link[aria-current=page]{color:var(--color-ink);background:var(--color-paper-3)}.nav-link[aria-current=page] svg{color:var(--color-accent)}.portal-user{gap:var(--space-xs);padding:var(--space-xs);align-items:center;display:flex}.portal-user-name{min-width:0;font-size:var(--text-sm);flex-direction:column;flex:1;line-height:1.3;display:flex}.portal-main{gap:var(--space-md);min-width:0;margin:var(--space-xs) var(--space-xs) var(--space-xs) 0;padding:var(--space-xl) max(var(--gutter), calc((100% - var(--container)) / 2)) var(--space-2xl);background:var(--color-paper);border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-card);box-shadow:0 1px 2px var(--color-shadow);flex-direction:column;display:flex;overflow-y:auto}.page-title{gap:var(--space-md);min-width:0;margin-bottom:var(--space-2xs);flex:none;justify-content:space-between;align-items:center;display:flex}.page-person{gap:var(--space-sm);align-items:center;min-width:0;display:flex}.portal-main>h2{margin-top:var(--space-lg)}.avatar{width:24px;height:24px;font-size:var(--text-xs);color:var(--color-ink-2);background:var(--color-paper-3);border-radius:var(--radius-pill);flex:none;justify-content:center;align-items:center;font-weight:500;display:inline-flex}.avatar-large{width:44px;height:44px;font-size:var(--text-md)}.person{gap:var(--space-xs);align-items:center;display:flex}.stats{border-block:var(--rule-hair) solid var(--color-rule);flex:none;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));display:grid}.stat{gap:var(--space-2xs);padding:var(--space-md);font-size:var(--text-sm);text-align:left;color:var(--color-muted);background:0 0;border:0;flex-direction:column;display:flex}.stat+.stat{border-left:var(--rule-hair) solid var(--color-rule)}.stat strong{font-size:var(--text-xl);letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--color-ink);font-weight:600;line-height:1.2}button.stat{cursor:pointer;transition:background-color var(--dur-micro) ease, box-shadow var(--dur-micro) ease}button.stat:hover{background:var(--color-paper-2)}button.stat:active{background:var(--color-paper-3)}button.stat[aria-pressed=true]{color:var(--color-ink);box-shadow:inset 0 -2px var(--color-accent)}.toolbar{gap:var(--space-sm);flex:none;justify-content:space-between;align-items:center;display:flex}.muted{color:var(--color-muted)}.mono{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-muted)}.truncate{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.text-link{text-underline-offset:3px;transition:text-decoration-color var(--dur-micro) ease;font-weight:500;-webkit-text-decoration:underline #0000;text-decoration:underline #0000}.text-link:hover{text-decoration-color:currentColor}.back-link{gap:var(--space-2xs);font-size:var(--text-sm);color:var(--color-muted);flex:none;align-self:flex-start;align-items:center;display:inline-flex}.back-link:hover{color:var(--color-ink)}.back-link:before{content:"";background:currentColor;width:12px;height:12px;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m15 18-6-6 6-6'/%3E%3C/svg%3E") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m15 18-6-6 6-6'/%3E%3C/svg%3E") 50%/contain no-repeat}.button,.panel button{min-height:32px;padding:var(--space-2xs) var(--space-sm);font-size:var(--text-sm);color:var(--color-accent-ink);background:var(--color-accent);border:var(--rule-hair) solid var(--color-accent);border-radius:var(--radius-control);box-shadow:inset 0 1px var(--color-sheen), 0 1px 2px var(--color-shadow);cursor:pointer;transition:opacity var(--dur-micro) ease, background-color var(--dur-micro) ease, transform 80ms ease;flex:none;justify-content:center;align-items:center;font-weight:500;display:inline-flex}.button:hover,.panel button:hover{opacity:.9}.button:active,.panel button:active{transform:scale(.98)}.button:disabled,.panel button:disabled{color:var(--color-muted);background:var(--color-paper-3);border-color:var(--color-rule);box-shadow:none;opacity:.55;cursor:not-allowed}.button-quiet{color:var(--color-ink);background:var(--color-paper);border-color:var(--color-rule-strong);box-shadow:0 1px 2px var(--color-shadow)}.button-quiet:hover{background:var(--color-paper-2);opacity:1}.link-button{font-size:var(--text-sm);white-space:nowrap;color:var(--color-ink-2);cursor:pointer;transition:color var(--dur-micro) ease;background:0 0;border:0;padding:0;font-weight:500}.link-button:hover{color:var(--color-accent)}.link-button:disabled{color:var(--color-muted);opacity:.55;cursor:not-allowed}.link-button-quiet{color:var(--color-muted)}.link-button-quiet:hover{color:var(--color-ink)}.link-button-danger{color:var(--color-muted)}.link-button-danger:hover{color:var(--color-error)}.badge{padding:0 var(--space-xs);font-size:var(--text-xs);white-space:nowrap;color:var(--color-ink-2);background:var(--color-paper-3);border-radius:var(--radius-tag);align-items:center;font-weight:500;line-height:20px;display:inline-flex}.badge-good{color:var(--color-success);background:color-mix(in oklab, var(--color-success) 12%, transparent)}.badge-warn{color:var(--color-warn);background:color-mix(in oklab, var(--color-warn) 14%, transparent)}.status-cell{gap:var(--space-2xs) var(--space-xs);flex-wrap:wrap;align-items:center;display:flex}.table-wrap{flex:none;overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{padding:var(--space-sm);text-align:left;vertical-align:middle;border-bottom:var(--rule-hair) solid var(--color-rule)}th{padding-block:var(--space-xs);font-size:var(--text-xs);white-space:nowrap;color:var(--color-muted);font-weight:500}th:first-child,td:first-child{padding-left:var(--space-xs)}tbody tr{transition:background-color var(--dur-micro) ease}tbody tr:hover{background:var(--color-paper-2)}tbody tr:last-child td{border-bottom:0}.row{position:relative}.row-link{white-space:nowrap;font-weight:500}.row-link:after{content:"";position:absolute;inset:0}.nowrap{white-space:nowrap}.number{text-align:right;font-variant-numeric:tabular-nums}.empty{padding:var(--space-md) var(--space-xs);color:var(--color-muted);border-block:var(--rule-hair) solid var(--color-rule);flex:none}.form{gap:var(--space-md);flex-direction:column;flex:none;max-width:440px;display:flex}.field{gap:var(--space-2xs);font-size:var(--text-sm);flex-direction:column;font-weight:500;display:flex}.field input,.field textarea,.field select,.assign-form select,.panel input{width:100%;min-height:32px;padding:var(--space-2xs) var(--space-sm);font-size:var(--text-base);color:var(--color-ink);background:var(--color-paper);border:var(--rule-hair) solid var(--color-rule-strong);border-radius:var(--radius-control);transition:border-color var(--dur-micro) ease;font-weight:400}.field textarea{padding-block:var(--space-xs);line-height:1.5}.field input:hover,.field textarea:hover,.field select:hover,.assign-form select:hover,.panel input:hover{border-color:var(--color-muted)}.field input:focus-visible,.field textarea:focus-visible,.field select:focus-visible,.assign-form select:focus-visible,.panel input:focus-visible{border-radius:var(--radius-control);outline-offset:-1px}.field input:disabled{color:var(--color-muted);background:var(--color-paper-2);opacity:.55;cursor:not-allowed}.field input[aria-invalid=true]{border-color:var(--color-error)}.field small{font-size:var(--text-xs);font-weight:400}.field-error{font-size:var(--text-sm);color:var(--color-error);font-weight:400}.form-actions{gap:var(--space-xs);flex-wrap:wrap;align-items:center;display:flex}.search{flex:1;max-width:320px;position:relative}.search svg{top:var(--space-xs);left:var(--space-xs);color:var(--color-muted);pointer-events:none;position:absolute}.search input{padding-left:32px}.profile{gap:var(--space-2xs) var(--space-xl);padding-block:var(--space-xs);flex:none;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));display:grid}.profile>div{gap:var(--space-xs);padding-block:var(--space-2xs);grid-template-columns:120px minmax(0,1fr);display:grid}.profile dt{color:var(--color-muted)}.profile dd{overflow-wrap:anywhere;margin:0}.profile-wide{grid-column:1/-1}.tabs{gap:var(--space-md);scrollbar-width:none;box-shadow:inset 0 -1px var(--color-rule);flex:none;display:flex;overflow-x:auto}.tab{padding:var(--space-xs) var(--space-3xs);white-space:nowrap;color:var(--color-muted);transition:color var(--dur-micro) ease, box-shadow var(--dur-micro) ease;font-weight:500}.tab:hover{color:var(--color-ink)}.tab-active{color:var(--color-ink);box-shadow:inset 0 -2px var(--color-accent)}.dropzone{gap:var(--space-3xs);padding:var(--space-lg) var(--space-md);text-align:center;background:var(--color-paper-2);border:var(--rule-hair) dashed var(--color-rule-strong);border-radius:var(--radius-card);cursor:pointer;transition:background-color var(--dur-micro) ease, border-color var(--dur-micro) ease;flex-direction:column;align-items:center;display:flex}.dropzone strong{font-weight:500}.dropzone:hover,.dropzone-active,.dropzone:focus-within{background:var(--color-paper-3);border-color:var(--color-accent)}.upload-results{gap:var(--space-2xs);margin:var(--space-sm) 0 0;flex-direction:column;padding:0;list-style:none;display:flex}.upload-results li{gap:var(--space-2xs) var(--space-sm);flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}.viewer{border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-control);flex:none;width:100%;height:75vh}.viewer-image{border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-control);align-self:flex-start;max-width:100%;height:auto}.summary{max-width:520px;margin-top:var(--space-3xs);font-size:var(--text-sm);color:var(--color-muted)}.message{padding-block:var(--space-sm) var(--space-md);border-bottom:var(--rule-hair) solid var(--color-rule);flex:none}.message .muted{font-size:var(--text-sm)}.message strong{font-weight:500}.message pre{margin:var(--space-sm) 0 0;padding:var(--space-sm) var(--space-md);font:inherit;white-space:pre-wrap;overflow-wrap:anywhere;background:var(--color-paper-2);border-radius:var(--radius-control)}.import-steps,.template-editor{gap:var(--space-md);margin-bottom:var(--space-lg);flex-direction:column;flex:none;display:flex}.import-steps .dropzone{margin-top:var(--space-xs)}.template-columns{gap:var(--space-lg);flex:none;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));align-items:start;display:grid}.template-columns .form{max-width:none}.assigned-list{gap:var(--space-2xs);margin:0 0 var(--space-xs);flex-direction:column;padding:0;list-style:none;display:flex}.assigned-list:empty{display:none}.assigned-list li{gap:var(--space-2xs) var(--space-sm);flex-wrap:wrap;align-items:center;display:flex}.assign-form{gap:var(--space-xs);flex-wrap:wrap;align-items:center;display:flex}.assign-form select{width:auto;max-width:240px}.panel{gap:var(--space-md);width:calc(100% - var(--space-xl));max-width:380px;padding:var(--space-lg);color:var(--color-ink);background:var(--color-paper);border-radius:var(--radius-card);box-shadow:var(--shadow-card);flex-direction:column;margin:16vh auto 0;display:flex}.panel h1{font-size:var(--text-lg)}.panel label{gap:var(--space-2xs);font-size:var(--text-sm);flex-direction:column;font-weight:500;display:flex}.panel input,.panel button{min-height:36px}.panel [role=alert]{font-size:var(--text-sm);color:var(--color-error)}.skeleton{gap:var(--space-md);flex-direction:column;display:flex}.skeleton span{background:var(--color-paper-3);border-radius:var(--space-2xs);height:16px;animation:1.2s ease-in-out infinite pulse}.skeleton span:first-child{width:180px;height:24px;margin-bottom:var(--space-sm)}@keyframes pulse{50%{opacity:.45}}@media (max-width:800px){.portal{grid-template-rows:auto 1fr;grid-template-columns:minmax(0,1fr);height:auto;min-height:100dvh}.portal-side{gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);flex-flow:wrap;justify-content:space-between;align-items:center}.portal-nav{scrollbar-width:none;flex-direction:row;flex:1 0 100%;order:3;overflow-x:auto}.nav-label{display:none}.nav-link{white-space:nowrap}.portal-user{padding:0}.portal-user .avatar,.portal-user-name{display:none}.portal-main{padding:var(--space-lg) var(--space-md) var(--space-2xl);border-width:var(--rule-hair) 0 0;box-shadow:none;border-radius:0;margin:0;overflow-y:visible}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.stat:nth-child(odd){border-left:0}.stat:nth-child(n+3){border-top:var(--rule-hair) solid var(--color-rule)}th:first-child,td:first-child{background:var(--color-paper);position:sticky;left:0}.field input,.field textarea,.field select,.assign-form select,.panel input{font-size:var(--text-md)}}@media (pointer:coarse){.button,.nav-link,.tab{min-height:44px}.tab{align-items:center;display:inline-flex}.link-button{min-height:32px}}
