:root{--color-transparent:transparent;--color-current:currentColor;--color-neutral-50:oklch(98.92% .0092 106.57);--color-neutral-100:oklch(96.01% .0083 106.57);--color-neutral-200:oklch(90.62% .0067 106.57);--color-neutral-300:oklch(82.32% .0045 106.57);--color-neutral-400:oklch(70.7% .0019 106.57);--color-neutral-500:oklch(59.09% .0001 106.57);--color-neutral-600:oklch(49.13% .0025 279.4);--color-neutral-700:oklch(40% .0069 279.4);--color-neutral-800:oklch(31.71% .012 279.4);--color-neutral-900:oklch(24.24% .0171 279.4);--color-neutral-950:oklch(15.94% .0233 279.4);--color-primary-50:oklch(97.5% .014 55.17);--color-primary-100:oklch(94.5% .032 55.17);--color-primary-200:oklch(89.5% .062 55.17);--color-primary-300:oklch(83.5% .098 55.17);--color-primary-400:oklch(77.5% .14 55.17);--color-primary-500:oklch(75.89% .1663 55.17);--color-primary-600:oklch(64.5% .1594 55.17);--color-primary-700:oklch(55.5% .1371 55.17);--color-primary-800:oklch(45.5% .1124 55.17);--color-primary-900:oklch(35% .0865 55.17);--color-success-500:oklch(55% .13 150);--color-success-100:oklch(95% .03 150);--color-danger-500:oklch(52% .19 27);--color-danger-100:oklch(95% .035 27);--color-surface:var(--color-neutral-50);--color-surface-raised:oklch(100% 0 0);--color-surface-sunken:var(--color-neutral-100);--color-surface-inverse:var(--color-neutral-950);--color-ink:var(--color-neutral-950);--color-ink-secondary:var(--color-neutral-700);--color-ink-muted:var(--color-neutral-600);--color-ink-inverse:var(--color-neutral-50);--color-ink-accent:var(--color-primary-700);--color-line:var(--color-neutral-200);--color-line-strong:var(--color-neutral-300);--color-line-inverse:oklch(100% 0 0/.16);--color-accent:var(--color-primary-500);--color-accent-hover:var(--color-primary-400);--color-accent-pressed:var(--color-primary-600);--color-accent-contrast:var(--color-neutral-950);--color-accent-subtle:var(--color-primary-100);--color-focus-ring:var(--color-primary-600);--color-success:var(--color-success-500);--color-success-surface:var(--color-success-100);--color-danger:var(--color-danger-500);--color-danger-surface:var(--color-danger-100);--font-weight-medium:500;--font-weight-bold:700;--font-sans:"area-inktrap", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--text-display:clamp(2.75rem, 1.6667rem + 4.622vw, 6rem);--text-display--line-height:.95;--text-display--letter-spacing:-.03em;--text-display--font-weight:700;--text-h1:clamp(2.25rem, 1.6667rem + 2.489vw, 4rem);--text-h1--line-height:1.02;--text-h1--letter-spacing:-.025em;--text-h1--font-weight:700;--text-h2:clamp(1.75rem, 1.4167rem + 1.422vw, 2.75rem);--text-h2--line-height:1.08;--text-h2--letter-spacing:-.02em;--text-h2--font-weight:700;--text-h3:clamp(1.375rem, 1.2083rem + .711vw, 1.875rem);--text-h3--line-height:1.2;--text-h3--letter-spacing:-.015em;--text-h3--font-weight:700;--text-h4:clamp(1.125rem, 1.0417rem + .356vw, 1.375rem);--text-h4--line-height:1.3;--text-h4--letter-spacing:-.01em;--text-h4--font-weight:700;--text-body-lg:clamp(1.125rem, 1.0625rem + .267vw, 1.3125rem);--text-body-lg--line-height:1.6;--text-body-lg--letter-spacing:-.005em;--text-body-lg--font-weight:500;--text-body:clamp(1rem, .9583rem + .178vw, 1.125rem);--text-body--line-height:1.65;--text-body--letter-spacing:0em;--text-body--font-weight:500;--text-body-sm:clamp(.9375rem, .9167rem + .089vw, 1rem);--text-body-sm--line-height:1.6;--text-body-sm--letter-spacing:0em;--text-body-sm--font-weight:500;--text-caption:clamp(.8125rem, .7917rem + .089vw, .875rem);--text-caption--line-height:1.5;--text-caption--letter-spacing:.005em;--text-caption--font-weight:500;--text-overline:clamp(.75rem, .7292rem + .089vw, .8125rem);--text-overline--line-height:1.4;--text-overline--letter-spacing:.09em;--text-overline--font-weight:700;--measure-tight:44ch;--measure:68ch;--measure-wide:82ch;--spacing:.25rem;--space-section-sm:clamp(2rem, 1.5rem + 1.5vw, 3rem);--space-section:clamp(2.75rem, 2rem + 2.5vw, 4.5rem);--space-section-lg:clamp(3.5rem, 2.5rem + 3.5vw, 6rem);--space-gutter:clamp(1.25rem, .75rem + 2.2vw, 3rem);--breakpoint-xs:31.25rem;--breakpoint-sm:46.875rem;--breakpoint-md:71.875rem;--breakpoint-lg:84.375rem;--breakpoint-xl:93.75rem;--container-narrow:34rem;--container-text:44rem;--container-default:78rem;--container-wide:90rem;--radius-none:0;--radius-sm:.25rem;--radius-md:.5rem;--radius-lg:.875rem;--radius-pill:62.4375rem;--shadow-overlay:0 1px 2px oklch(15.94% .0233 279.4/.04), 0 8px 24px oklch(15.94% .0233 279.4/.08);--shadow-popover:0 1px 2px oklch(15.94% .0233 279.4/.05), 0 16px 48px oklch(15.94% .0233 279.4/.12);--z-base:0;--z-raised:10;--z-sticky:100;--z-nav:200;--z-dropdown:300;--z-overlay:800;--z-modal:900;--z-toast:1000;--duration-instant:80ms;--duration-fast:.16s;--duration-base:.24s;--duration-slow:.4s;--duration-slower:.64s;--ease-standard:cubic-bezier(.2, 0, 0, 1);--ease-entrance:cubic-bezier(0, 0, 0, 1);--ease-exit:cubic-bezier(.3, 0, 1, 1);--ease-linear:linear;--reveal-distance:.75rem;--reveal-stagger:70ms;--reveal-duration:var(--duration-slow);--reveal-ease:var(--ease-entrance)}@media (prefers-reduced-motion:reduce){:root{--duration-instant:.01ms;--duration-fast:.01ms;--duration-base:.01ms;--duration-slow:.01ms;--duration-slower:.01ms;--reveal-distance:0rem;--reveal-stagger:0s;--reveal-duration:.01ms}}:root{--color-skeleton:var(--color-surface-sunken);--color-skeleton-sheen:oklch(100% 0 0/.6);--color-backdrop:oklch(15.94% .0233 279.4/.4);--duration-shimmer:1.6s}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--spacing) * 20)}body{background-color:var(--color-surface);color:var(--color-ink);font-family:var(--font-sans);font-size:var(--text-body);font-weight:var(--font-weight-medium);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-synthesis-weight:none;font-synthesis-style:none;margin:0;line-height:1.65}h1,h2,h3{font-weight:var(--font-weight-bold);text-wrap:balance;margin:0}h1{font-size:var(--text-h2);line-height:var(--text-h2--line-height);letter-spacing:var(--text-h2--letter-spacing)}p{text-wrap:pretty;margin:0}img,svg{max-width:100%;display:block}input,button,textarea,select{font:inherit;color:inherit;letter-spacing:inherit}a{color:var(--color-ink-accent);text-underline-offset:.15em}:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px;border-radius:var(--radius-sm)}:focus:not(:focus-visible){outline:none}::selection{background-color:var(--color-accent);color:var(--color-accent-contrast)}.container{width:100%;max-width:var(--container-default);padding-inline:var(--space-gutter);margin-inline:auto}main.container{padding-block:calc(var(--spacing) * 8) var(--space-section)}.stack>*+*{margin-top:calc(var(--spacing) * 5)}.page-head{justify-content:space-between;align-items:center;gap:calc(var(--spacing) * 4);margin-bottom:calc(var(--spacing) * 6);flex-wrap:wrap;display:flex}.page-head--center{justify-content:center}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{top:calc(var(--spacing) * 2);left:var(--space-gutter);z-index:var(--z-toast);padding:calc(var(--spacing) * 2) calc(var(--spacing) * 4);border-radius:var(--radius-pill);background:var(--color-surface-raised);position:absolute;translate:0 -200%}.skip-link:focus{translate:0}.site-header{z-index:var(--z-nav);border-bottom:1px solid var(--color-line);background-color:color-mix(in oklab, var(--color-surface) 85%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);position:sticky;top:0}.site-header__inner{align-items:center;gap:calc(var(--spacing) * 3) calc(var(--spacing) * 6);min-height:calc(var(--spacing) * 16);padding-block:calc(var(--spacing) * 2);flex-wrap:wrap;display:flex}.site-header__logo{color:var(--color-accent)}.site-header__logo svg{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}.site-nav{gap:calc(var(--spacing) * 5);display:flex}.site-nav a{color:var(--color-ink-secondary);font-size:var(--text-body-sm);font-weight:var(--font-weight-bold);text-decoration:none}.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--color-ink)}.site-nav a[aria-current=page]{text-decoration:underline;-webkit-text-decoration-color:var(--color-accent);text-decoration-color:var(--color-accent);text-underline-offset:.4em;text-decoration-thickness:2px}.site-header__auth{align-items:center;gap:calc(var(--spacing) * 3);color:var(--color-ink-muted);font-size:var(--text-body-sm);margin-left:auto;display:flex}.button{justify-content:center;align-items:center;gap:calc(var(--spacing) * 2);height:calc(var(--spacing) * 11);padding:0 calc(var(--spacing) * 6);border-radius:var(--radius-pill);font-size:var(--text-body-sm);font-weight:var(--font-weight-bold);white-space:nowrap;-webkit-user-select:none;user-select:none;cursor:pointer;transition:background-color var(--duration-fast) var(--ease-standard), color var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard), scale var(--duration-fast) var(--ease-standard);border:1px solid #0000;text-decoration:none;display:inline-flex}.button:active{scale:.98}.button:disabled,.button[aria-disabled=true]{pointer-events:none;opacity:.5}.button--sm{height:calc(var(--spacing) * 9);padding:0 calc(var(--spacing) * 4)}.button--primary{background-color:var(--color-accent);color:var(--color-accent-contrast)}.button--primary:hover{background-color:var(--color-accent-hover)}.button--primary:active{background-color:var(--color-accent-pressed)}.button--secondary{border-color:var(--color-line-strong);color:var(--color-ink);background-color:#0000}.button--secondary:hover,.button--ghost:hover{background-color:var(--color-surface-sunken)}.button--ghost{color:var(--color-ink);background-color:#0000}.button--danger{background-color:var(--color-danger);color:var(--color-ink-inverse)}.button--danger:hover{filter:brightness(.9)}.field{gap:calc(var(--spacing) * 2);flex-direction:column;display:flex}.field__label{color:var(--color-ink);font-size:var(--text-body-sm);font-weight:var(--font-weight-bold)}.field__hint{color:var(--color-ink-muted);font-size:var(--text-caption);line-height:var(--text-caption--line-height)}.control{width:100%;padding:calc(var(--spacing) * 3) calc(var(--spacing) * 4);border:1px solid var(--color-line-strong);border-radius:var(--radius-md);background-color:var(--color-surface-raised);color:var(--color-ink);font-size:var(--text-body);transition:border-color var(--duration-fast) var(--ease-standard), background-color var(--duration-fast) var(--ease-standard)}.control:hover{border-color:var(--color-ink-muted)}:is(.control:user-invalid,.control[aria-invalid=true]){border-color:var(--color-danger)}.control:disabled{cursor:not-allowed;opacity:.6;background-color:var(--color-surface-sunken)}.control--short{width:calc(var(--spacing) * 28)}.fieldset{gap:calc(var(--spacing) * 3);border:0;margin:0;padding:0;display:grid}.fieldset--columns{grid-template-columns:repeat(auto-fill, minmax(min(100%, calc(var(--spacing) * 48)), 1fr))}.fieldset legend{margin-bottom:calc(var(--spacing) * 3);padding:0}.check{align-items:flex-start;gap:calc(var(--spacing) * 3);display:flex}.check input{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5);margin:calc(var(--spacing) * 1) 0 0;accent-color:var(--color-accent);flex-shrink:0}.check label{color:var(--color-ink-secondary);font-size:var(--text-body-sm)}.table-scroll{overscroll-behavior-x:contain;position:relative;overflow-x:auto}.table{border-collapse:collapse;width:100%;font-size:var(--text-body-sm)}.table th,.table td{padding:calc(var(--spacing) * 3) calc(var(--spacing) * 4) calc(var(--spacing) * 3) 0;border-bottom:1px solid var(--color-line);text-align:left;vertical-align:top}.table thead th{border-bottom-color:var(--color-line-strong);color:var(--color-ink-muted);font-size:var(--text-overline);font-weight:var(--font-weight-bold);line-height:var(--text-overline--line-height);letter-spacing:var(--text-overline--letter-spacing);text-transform:uppercase;white-space:nowrap}.table tr>:first-child{z-index:var(--z-raised);background-color:var(--color-surface);white-space:nowrap;position:sticky;left:0}.dialog .table tr>:first-child{background-color:var(--color-surface-raised)}.table td{min-width:calc(var(--spacing) * 28)}.inline-input{width:100%;min-width:calc(var(--spacing) * 20);field-sizing:content;margin:calc(var(--spacing) * -1) 0 calc(var(--spacing) * -1) calc(var(--spacing) * -2);padding:calc(var(--spacing) * 1) calc(var(--spacing) * 2);border-radius:var(--radius-md);font-weight:inherit;transition:background-color var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard);background:0 0;border:1px solid #0000}.inline-input:hover{border-color:var(--color-line-strong)}.inline-input:focus{border-color:var(--color-line-strong);background-color:var(--color-surface-raised)}.inline-input--number{width:calc(3ch + var(--spacing) * 3 + 2px);min-width:0;padding-right:calc(var(--spacing) * 1);text-align:right;appearance:textfield}.inline-input--number::-webkit-inner-spin-button{appearance:none}.inline-percent{align-items:baseline;display:inline-flex}.pills{gap:calc(var(--spacing) * 1.5);flex-wrap:wrap;display:flex}.pill{height:calc(var(--spacing) * 7);padding-inline:calc(var(--spacing) * 3);border:1px solid var(--color-line);border-radius:var(--radius-pill);background-color:var(--color-surface-sunken);font-size:var(--text-caption);white-space:nowrap;align-items:center;display:inline-flex}.pill__remove{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4);margin-inline:calc(var(--spacing) * 1) calc(var(--spacing) * -1);border-radius:var(--radius-pill);color:var(--color-ink-muted);cursor:pointer;opacity:0;transition:opacity var(--duration-fast) var(--ease-standard);background:0 0;border:0;place-items:center;padding:0;line-height:1;display:inline-grid}.pill:hover .pill__remove,.pill__remove:focus-visible{opacity:1}.pill__remove:hover{background-color:var(--color-danger);color:var(--color-ink-inverse)}@media (hover:none){.pill__remove{opacity:1}}.pill--add{width:calc(var(--spacing) * 7);border-style:dashed;border-color:var(--color-line-strong);color:var(--color-ink-secondary);font-size:var(--text-body-sm);text-align:center;text-align-last:center;appearance:none;cursor:pointer;background-color:#0000;justify-content:center;padding:0}.pill--add:hover{border-color:var(--color-ink-muted);color:var(--color-ink)}.row-actions{justify-content:flex-end;gap:calc(var(--spacing) * 2);display:flex}.dialog{width:min(100% - 2 * var(--space-gutter), var(--container-narrow));max-height:calc(100dvh - 2 * var(--space-gutter));padding:calc(var(--spacing) * 6);border:1px solid var(--color-line);border-radius:var(--radius-lg);background-color:var(--color-surface-raised);color:var(--color-ink);box-shadow:var(--shadow-popover);opacity:0;transition:opacity var(--duration-base) var(--ease-standard), scale var(--duration-base) var(--ease-standard), display var(--duration-base) allow-discrete, overlay var(--duration-base) allow-discrete;overflow:auto;scale:.98}.dialog[open]{opacity:1;scale:1}@starting-style{.dialog[open]{opacity:0;scale:.98}}.dialog::backdrop{background-color:var(--color-backdrop);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);opacity:0;transition:opacity var(--duration-base) var(--ease-standard), display var(--duration-base) allow-discrete, overlay var(--duration-base) allow-discrete}.dialog[open]::backdrop{opacity:1}@starting-style{.dialog[open]::backdrop{opacity:0}}.dialog--wide{width:min(100% - 2 * var(--space-gutter), var(--container-default))}.dialog__title{margin-bottom:calc(var(--spacing) * 5);font-size:var(--text-h4);line-height:var(--text-h4--line-height);letter-spacing:var(--text-h4--letter-spacing)}.dialog__actions{justify-content:flex-end;gap:calc(var(--spacing) * 3);margin-top:calc(var(--spacing) * 6);flex-wrap:wrap;display:flex}.skeleton{border-radius:var(--radius-sm);background-color:var(--color-skeleton);color:#0000;-webkit-user-select:none;user-select:none;pointer-events:none;position:relative;overflow:hidden}.skeleton:after{content:"";background-image:linear-gradient(90deg, transparent, var(--color-skeleton-sheen), transparent);animation:skeleton-shimmer var(--duration-shimmer) var(--ease-standard) infinite;position:absolute;inset:0;translate:-100%}.skeleton--line{height:1rem;display:block}@keyframes skeleton-shimmer{to{translate:100%}}@media (prefers-reduced-motion:reduce){.skeleton:after{animation:none;display:none}}.status{color:var(--color-ink-secondary);font-size:var(--text-body-sm)}.error{color:var(--color-danger);font-size:var(--text-body-sm);font-weight:var(--font-weight-bold)}.empty{padding-block:var(--space-section-sm);color:var(--color-ink-secondary)}
