:root{--brand-primary:#2563eb;--brand-on-primary:#fff}@media (prefers-color-scheme:dark){:root{--brand-primary:#60a5fa;--brand-on-primary:#0b1220}}:root{--bp-sm:40rem;--bp-md:64rem;--radius-sm:6px;--radius-md:10px;--radius:var(--radius-md);--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--surface-muted:color-mix(in srgb, var(--border) 35%, var(--bg));--danger:#b91c1c;--danger-bg:color-mix(in srgb, var(--danger) 12%, transparent);--success:#15803d;--success-bg:color-mix(in srgb, var(--success) 12%, transparent);--info:var(--accent);--focus-ring:2px solid color-mix(in srgb, var(--accent) 55%, var(--text-h))}@media (prefers-color-scheme:dark){:root{--danger:#f87171;--success:#4ade80;--danger-bg:color-mix(in srgb, var(--danger) 12%, transparent);--success-bg:color-mix(in srgb, var(--success) 12%, transparent);--focus-ring:2px solid color-mix(in srgb, var(--accent) 55%, var(--text-h))}}.ui-button{justify-content:center;align-items:center;gap:var(--space-2);min-height:2.5rem;padding:var(--space-2) var(--space-5);font:inherit;letter-spacing:.02em;border-radius:var(--radius-sm);cursor:pointer;border:1px solid #0000;font-weight:500;transition:background .15s,border-color .15s,opacity .15s;display:inline-flex}.ui-button:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 35%, transparent);outline:none}.ui-button:disabled{opacity:.55;cursor:not-allowed}.ui-button--primary{color:var(--on-accent);background:var(--accent);border-color:color-mix(in srgb, var(--accent) 70%, var(--accent-strong-mix) 30%)}.ui-button--primary:hover:not(:disabled){filter:brightness(1.06)}.ui-button--ghost{color:var(--text-h);border-color:var(--border);background:0 0}.ui-button--ghost:hover:not(:disabled){background:var(--surface-muted)}.ui-input-wrap{gap:var(--space-2);text-align:left;flex-direction:column;min-width:0;display:flex}.ui-input-label{font-size:var(--text-label);font-weight:var(--text-xs-weight);line-height:var(--text-label-line);letter-spacing:var(--text-label-track);color:var(--text-h)}.ui-input{box-sizing:border-box;width:100%;padding:var(--space-3) var(--space-3);font:inherit;color:var(--text-h);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);display:block}.ui-input:focus{border-color:var(--accent-border);box-shadow:0 0 0 1px var(--accent-border);outline:none}.ui-input--error{border-color:var(--danger)}.ui-input-hint{font-size:var(--text-ui-tight);line-height:var(--text-ui-tight-line);letter-spacing:var(--text-ui-tight-track);color:var(--danger);margin:0}.ui-alert{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--text-sm);line-height:var(--text-sm-line);letter-spacing:var(--text-sm-track);text-align:left;border:1px solid var(--border);overflow-wrap:anywhere;word-break:break-word;margin:0}.ui-alert--error{color:var(--danger);background:var(--danger-bg);border-color:color-mix(in srgb, var(--danger) 35%, var(--border))}.ui-alert--success{color:var(--success);background:var(--success-bg);border-color:color-mix(in srgb, var(--success) 35%, var(--border))}.ui-alert--info{color:var(--text-h);background:var(--accent-bg);border-color:var(--accent-border)}.ui-password-field{width:100%;min-width:0;max-width:100%;display:block;position:relative}.ui-password-field__input{padding-right:2.875rem}.ui-password-field__toggle{right:max(.35rem, env(safe-area-inset-right,0px));box-sizing:border-box;min-width:2.375rem;min-height:2.375rem;font:inherit;color:var(--text-h);background:var(--bg);border-radius:var(--radius-sm);cursor:pointer;touch-action:manipulation;border:none;justify-content:center;align-items:center;margin:0;padding:.25rem;line-height:0;transition:background .15s;display:inline-flex;position:absolute;top:50%;transform:translateY(-50%)}.ui-password-field__toggle-icon{justify-content:center;align-items:center;display:flex}.ui-password-field__toggle-icon svg{flex-shrink:0}.ui-password-field__toggle:hover:not(:disabled){background:var(--surface-muted)}.ui-password-field__toggle:disabled{opacity:.55;cursor:not-allowed}.ui-password-field__toggle:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 35%, transparent);outline:none}@media (width<=40rem){.ui-password-field__input{padding-right:3.5rem}.ui-password-field__toggle{min-width:44px;min-height:44px;padding:var(--space-2)}}:root{--accent:var(--brand-primary);--on-accent:var(--brand-on-primary);--bg:#f8fafc;--border:#e2e8f0;--text:#475569;--text-h:#0f172a;--muted:color-mix(in srgb, var(--text) 72%, var(--border) 28%);--code-bg:#f1f5f9;--accent-bg:color-mix(in srgb, var(--accent) 10%, transparent);--accent-border:color-mix(in srgb, var(--accent) 50%, transparent);--accent-strong-mix:var(--text-h);--social-bg:#e2e8f099;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--color-error:var(--danger);--font-body:system-ui, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-heading:system-ui, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono:ui-monospace, "Cascadia Code", Consolas, "Liberation Mono", monospace;--sans:var(--font-body);--heading:var(--font-heading);--mono:var(--font-mono);--text-root:18px;--text-root-line:1.45;--text-root-track:.18px;--text-body:1rem;--text-body-line:1.45;--text-body-track:var(--text-root-track);--text-sm:.9375rem;--text-sm-line:1.4;--text-sm-track:0;--text-xs:.875rem;--text-xs-line:1.4;--text-xs-track:0;--text-xs-weight:500;--text-label:var(--text-xs);--text-label-line:1.35;--text-label-track:var(--text-xs-track);--text-ui-tight:.8125rem;--text-ui-tight-line:1.35;--text-ui-tight-track:0;--text-micro:.75rem;--text-micro-line:1.35;--text-code:.833333rem;--text-code-line:1.35;--text-code-padding-y:.25rem;--text-code-padding-x:.5rem;--heading-xl:1.5rem;--heading-xl-line:1.18;--heading-xl-track:-.02em;--heading-xl-weight:500;--heading-lg:1.375rem;--heading-lg-line:1.22;--heading-lg-track:-.02em;--heading-md:1.25rem;--heading-md-line:1.18;--heading-md-track:-.01em;--heading-md-weight:500;--heading-page-toolbar:var(--heading-md);--heading-page-toolbar-line:var(--heading-md-line);--heading-page-toolbar-track:var(--heading-md-track);font:var(--text-root) / var(--text-root-line) var(--font-body);letter-spacing:var(--text-root-track);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{--text-root:16px}}@media (prefers-color-scheme:dark){:root{--text:#94a3b8;--text-h:#f1f5f9;--muted:color-mix(in srgb, var(--text) 65%, var(--bg) 35%);--bg:#0f172a;--border:#334155;--code-bg:#1e293b;--accent-strong-mix:var(--text-h);--accent-bg:color-mix(in srgb, var(--accent) 15%, transparent);--accent-border:color-mix(in srgb, var(--accent) 50%, transparent);--social-bg:#1e293b8c;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px;--color-error:var(--danger)}}html{width:100%;max-width:100%}#root{box-sizing:border-box;flex-direction:column;width:100%;min-width:0;max-width:100%;min-height:100svh;margin:0;display:flex}body{width:100%;min-width:0;max-width:100%;font-family:var(--font-body);margin:0}h1,h2{font-family:var(--font-heading);font-weight:var(--heading-md-weight);color:var(--text-h)}h1{font-size:var(--heading-xl);line-height:var(--heading-xl-line);letter-spacing:var(--heading-xl-track);font-weight:var(--heading-xl-weight);margin:0 0 var(--space-4)}h2{font-size:var(--heading-md);line-height:var(--heading-md-line);letter-spacing:var(--heading-md-track);margin:0 0 var(--space-2)}p{margin:0}code,.counter{font-family:var(--font-mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{font-size:var(--text-code);line-height:var(--text-code-line);padding:var(--text-code-padding-y) var(--text-code-padding-x);background:var(--code-bg)}:root{--brand-logo-height:1.875rem;--brand-logo-height-compact:1.625rem}.brand-logo{color:var(--text-h);height:var(--brand-logo-height);flex-shrink:0;justify-content:center;align-items:center;line-height:0;display:inline-flex}.brand-logo svg{width:auto;max-width:100%;height:100%;display:block}.brand-logo__img{aspect-ratio:1;object-fit:contain;width:auto;max-width:100%;height:100%;display:block}.admin-shell{background:var(--bg);flex-direction:column;min-height:100svh;display:flex}.admin-shell__header{justify-content:space-between;align-items:center;gap:var(--space-4);min-width:0;padding:max(var(--space-3), env(safe-area-inset-top,0px)) max(var(--space-6), env(safe-area-inset-right,0px)) var(--space-3) max(var(--space-6), env(safe-area-inset-left,0px));border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--surface-muted) 50%, var(--bg));flex-direction:row;display:flex}.admin-shell__brand{overflow-wrap:anywhere;align-items:center;gap:var(--space-3);min-width:0;color:var(--text-h);flex-shrink:0;margin:0;font-size:1.0625rem;font-weight:600;line-height:1.22;display:flex}.admin-shell__brand .brand-logo{height:var(--brand-logo-height-compact)}.admin-shell__actions{justify-content:flex-end;align-items:center;gap:var(--space-3);flex-wrap:wrap;min-width:0;display:flex}.admin-shell__actions .ui-button{flex-shrink:0}.admin-shell__back-link{font-size:var(--text-xs);color:var(--text);line-height:1.3;text-decoration:none}.admin-shell__back-link:hover{color:var(--text-h);text-decoration:underline}.admin-shell__back-link:focus-visible{outline:var(--focus-ring);outline-offset:2px;border-radius:var(--radius-sm)}.admin-shell__body{flex:1;min-height:0;display:flex}.admin-shell__sidebar{gap:var(--space-1);padding:var(--space-6) var(--space-4);border-right:1px solid var(--border);background:color-mix(in srgb, var(--surface-muted) 30%, var(--bg));flex-direction:column;flex-shrink:0;width:13rem;display:flex}.admin-shell__nav-link{padding:var(--space-2) var(--space-3);font-size:var(--text-xs);color:var(--text);border-radius:var(--radius-sm);line-height:1.3;text-decoration:none;display:block}.admin-shell__nav-link:hover{background:var(--surface-muted);color:var(--text-h)}.admin-shell__nav-link.active{background:color-mix(in srgb, var(--accent) 12%, transparent);color:var(--accent);font-weight:500}.admin-shell__nav-link:focus-visible{outline:var(--focus-ring);outline-offset:2px}.admin-shell__main{padding:var(--space-6) max(var(--space-6), env(safe-area-inset-right,0px)) max(var(--space-6), env(safe-area-inset-bottom,0px)) var(--space-6);box-sizing:border-box;flex:1;min-width:0}.admin-invite-box{margin-bottom:var(--space-5);padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius);background:color-mix(in srgb, var(--surface-muted) 25%, var(--bg));max-width:28rem}.admin-invite-box p:first-child{margin-top:0}.admin-invite-row{gap:var(--space-3);flex-wrap:wrap;align-items:flex-end;display:flex}.admin-invite-row .ui-input-wrap{flex:12rem;min-width:0}.admin-invite-error{color:var(--color-error);font-size:var(--text-ui-tight);line-height:var(--text-ui-tight-line)}.admin-users-table-wrapper{border:1px solid var(--border);border-radius:var(--radius);overflow-x:auto}.admin-users-table{border-collapse:collapse;width:100%;font-size:var(--text-xs);color:var(--text)}.admin-users-table th,.admin-users-table td{padding:var(--space-3) var(--space-4);text-align:left;border-bottom:1px solid var(--border)}.admin-users-table thead th{color:var(--text-h);background:color-mix(in srgb, var(--surface-muted) 50%, var(--bg));font-weight:600}.admin-users-table tbody tr:last-child td{border-bottom:none}.admin-users-table tbody tr:hover td{background:color-mix(in srgb, var(--surface-muted) 30%, transparent)}.admin-users-table__actions{gap:var(--space-2);flex-wrap:wrap;align-items:center;display:flex}.admin-users-table__action-link{font-size:var(--text-xs);color:var(--accent);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);text-decoration:none}.admin-users-table__action-link:hover{text-decoration:underline}.admin-users-table__action-link:focus-visible{outline:var(--focus-ring);outline-offset:2px}.admin-users-table__action-error{font-size:var(--text-micro);line-height:var(--text-micro-line);color:var(--color-error)}@media (width<=48rem){.admin-shell__header{gap:var(--space-2);flex-wrap:wrap}.admin-shell__actions{width:100%}.admin-shell__body{flex-direction:column}.admin-shell__sidebar{border-right:none;border-bottom:1px solid var(--border);width:100%;padding:var(--space-3) max(var(--space-4), env(safe-area-inset-left,0px));flex-flow:wrap}}@media (width<=40rem){.admin-shell__header{align-items:stretch;gap:var(--space-3);padding-left:max(var(--space-4), env(safe-area-inset-left,0px));padding-right:max(var(--space-4), env(safe-area-inset-right,0px));flex-direction:column}.admin-shell__actions{flex-direction:column;justify-content:flex-start;align-items:stretch}.admin-shell__actions .ui-button,.admin-shell__back-link{text-align:center;box-sizing:border-box;justify-content:center;align-items:center;width:100%;min-height:2.75rem;display:inline-flex}.admin-shell__back-link{padding-block:var(--space-2)}.admin-shell__main{padding:var(--space-4) max(var(--space-4), env(safe-area-inset-right,0px)) max(var(--space-4), env(safe-area-inset-bottom,0px)) max(var(--space-4), env(safe-area-inset-left,0px))}}.app-shell__placeholder{color:var(--text);margin:0;line-height:1.5}.app-shell__page-title{margin:0 0 var(--space-4);font-size:var(--heading-page-toolbar);line-height:var(--heading-page-toolbar-line);letter-spacing:var(--heading-page-toolbar-track);color:var(--text-h);font-weight:600}.app-shell__form{gap:var(--space-4);box-sizing:border-box;flex-direction:column;width:100%;max-width:24rem;display:flex}.app-shell__form-actions{gap:var(--space-3);flex-wrap:wrap;align-items:center;display:flex}@media (width<=40rem){.app-shell__page-title{font-size:calc(var(--heading-page-toolbar) * .9);line-height:calc(var(--heading-page-toolbar-line) * 1.02)}.app-shell__form-actions{flex-direction:column;align-items:stretch}}.app-shell__muted{margin:0 0 var(--space-4);font-size:var(--text-xs);letter-spacing:var(--text-xs-track);color:var(--muted);max-width:36rem;line-height:1.55}.app-shell__code{font-size:.85em}.app-shell__checkbox-row{align-items:flex-start;gap:var(--space-2);font-size:var(--text-xs);cursor:pointer;line-height:1.4;display:flex}.app-shell__checkbox-row input{flex-shrink:0;margin-top:.2em}.app-shell{background:var(--bg);flex-direction:column;min-height:100svh;display:flex}.app-shell__header{justify-content:space-between;align-items:center;gap:var(--space-4);min-width:0;padding:max(var(--space-3), env(safe-area-inset-top,0px)) max(var(--space-6), env(safe-area-inset-right,0px)) var(--space-3) max(var(--space-6), env(safe-area-inset-left,0px));border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--surface-muted) 50%, var(--bg));flex-direction:row;display:flex}.app-shell__brand{overflow-wrap:anywhere;align-items:center;gap:var(--space-3);min-width:0;font-family:var(--font-heading);letter-spacing:-.015em;color:var(--text-h);flex-shrink:0;margin:0;font-size:1.0625rem;font-weight:600;line-height:1.22;display:flex}.app-shell__brand .brand-logo{height:var(--brand-logo-height-compact)}.app-shell__nav{justify-content:flex-end;align-items:center;gap:var(--space-3);flex-wrap:wrap;min-width:0;max-width:100%;display:flex}.app-shell__nav .ui-button{flex-shrink:0}.app-shell__nav-link{font-size:var(--text-xs);color:var(--text);line-height:1.3;text-decoration:none}.app-shell__nav-link:hover{color:var(--text-h);text-decoration:underline}.app-shell__nav-link:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-sm)}.app-shell__main{padding:var(--space-6) max(var(--space-6), env(safe-area-inset-right,0px)) max(var(--space-6), env(safe-area-inset-bottom,0px)) max(var(--space-6), env(safe-area-inset-left,0px));box-sizing:border-box;flex:1;width:100%;min-width:0;max-width:56rem;margin:0 auto}@media (width<=48rem){.app-shell__header{gap:var(--space-2);flex-wrap:wrap}.app-shell__nav{width:100%}}@media (width<=40rem){.app-shell__header{align-items:stretch;gap:var(--space-3);padding-left:max(var(--space-4), env(safe-area-inset-left,0px));padding-right:max(var(--space-4), env(safe-area-inset-right,0px));flex-direction:column}.app-shell__nav{flex-direction:column;justify-content:flex-start;align-items:stretch}.app-shell__nav .ui-button,.app-shell__nav-link{text-align:center;box-sizing:border-box;justify-content:center;align-items:center;width:100%;min-height:2.75rem;display:inline-flex}.app-shell__nav-link{padding-block:var(--space-2)}.app-shell__main{padding:var(--space-4) max(var(--space-4), env(safe-area-inset-right,0px)) max(var(--space-4), env(safe-area-inset-bottom,0px)) max(var(--space-4), env(safe-area-inset-left,0px))}}.auth-layout{width:100%;min-width:0;max-width:100%;min-height:100svh;padding:max(var(--space-6), env(safe-area-inset-top,0px)) max(var(--space-6), env(safe-area-inset-right,0px)) max(var(--space-6), env(safe-area-inset-bottom,0px)) max(var(--space-6), env(safe-area-inset-left,0px));box-sizing:border-box;background:linear-gradient(160deg, color-mix(in srgb, var(--accent) 8%, var(--bg)) 0%, var(--bg) 45%);flex-direction:column;flex:1 0 auto;justify-content:center;align-items:center;display:flex}.auth-layout__masthead{align-items:center;gap:var(--space-3);margin-bottom:var(--space-6);display:flex}.auth-layout__masthead-title{font-family:var(--font-heading);font-size:var(--heading-lg);line-height:var(--heading-lg-line);letter-spacing:var(--heading-lg-track);color:var(--text-h);margin:0;font-weight:600}.auth-layout__card{box-sizing:border-box;width:min(100%,26rem);min-width:17.5rem;max-width:26rem;padding:var(--space-8);border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg);box-shadow:var(--shadow);margin-inline:auto}.auth-layout__title{margin:0 0 var(--space-2);font-size:var(--heading-lg);line-height:var(--heading-lg-line);color:var(--text-h);text-align:center;font-weight:600}.auth-layout__subtitle{margin:0 0 var(--space-6);font-size:var(--text-sm);color:var(--text);text-align:center;line-height:var(--text-sm-line);letter-spacing:var(--text-sm-track)}.auth-layout__form{gap:var(--space-4);flex-direction:column;min-width:0;display:flex}.auth-layout__footer{margin-top:var(--space-5);font-size:var(--text-xs);text-align:center}.auth-layout__footer a{color:var(--accent);text-decoration:none}.auth-layout__footer a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (width<=40rem){.auth-layout{padding:max(var(--space-4), env(safe-area-inset-top,0px)) max(var(--space-4), env(safe-area-inset-right,0px)) max(var(--space-4), env(safe-area-inset-bottom,0px)) max(var(--space-4), env(safe-area-inset-left,0px))}.auth-layout__card{padding:var(--space-4)}.auth-layout__masthead{gap:var(--space-2);margin-bottom:var(--space-4);text-align:center;flex-direction:column}}
