.modal-backdrop[data-v-9ee3c889]{z-index:var(--z-modal,1000);padding:var(--space-4);background-color:var(--color-overlay,#1018288c);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-dialog[data-v-9ee3c889]{background-color:var(--color-surface,#fff);color:var(--color-text);border-radius:var(--radius-lg,12px);box-shadow:var(--shadow-lg,0 12px 32px #1018283d);inline-size:100%;max-block-size:calc(100vh - 2 * var(--space-6));flex-direction:column;display:flex;overflow:hidden}.size-sm[data-v-9ee3c889]{max-inline-size:400px}.size-md[data-v-9ee3c889]{max-inline-size:560px}.size-lg[data-v-9ee3c889]{max-inline-size:760px}.size-xl[data-v-9ee3c889]{max-inline-size:1000px}.modal-header[data-v-9ee3c889]{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-6);border-block-end:1px solid var(--color-border);display:flex}.modal-title[data-v-9ee3c889]{font-size:var(--font-size-lg,1.125rem);font-weight:var(--font-weight-semibold,600)}.modal-close[data-v-9ee3c889]{cursor:pointer;font-size:var(--font-size-xl,1.25rem);color:var(--color-text-muted);background:0 0;border:none;line-height:1}.modal-body[data-v-9ee3c889]{padding:var(--space-6);overflow-y:auto}.modal-footer[data-v-9ee3c889]{justify-content:flex-end;gap:var(--space-2);padding:var(--space-4) var(--space-6);border-block-start:1px solid var(--color-border);display:flex}@media (width<=47.99rem),(pointer:coarse) and (width<=63.99rem){.modal-backdrop[data-v-9ee3c889]{align-items:stretch;padding:0}.modal-dialog[data-v-9ee3c889]{border-radius:0;block-size:100dvh;max-block-size:100dvh;max-inline-size:none}.modal-close[data-v-9ee3c889]{min-inline-size:var(--tap-min);min-block-size:var(--tap-min);justify-content:center;align-items:center;display:inline-flex}.modal-body[data-v-9ee3c889]{flex:auto}.modal-footer[data-v-9ee3c889]{background:var(--color-surface);padding-block-end:max(var(--space-4), env(safe-area-inset-bottom,0));position:sticky;inset-block-end:0}}.modal-fade-enter-active[data-v-9ee3c889],.modal-fade-leave-active[data-v-9ee3c889]{transition:opacity var(--transition-base,.15s ease)}.modal-fade-enter-from[data-v-9ee3c889],.modal-fade-leave-to[data-v-9ee3c889]{opacity:0}.admin-page{gap:var(--space-6);max-inline-size:min(100%, var(--content-max-width));flex-direction:column;display:flex}.admin-kicker{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted);margin:0}.admin-header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);flex-wrap:wrap;display:flex}.admin-header>:first-child{min-inline-size:0}.admin-header-actions{gap:var(--space-2);flex-wrap:wrap;align-items:center;display:flex}.admin-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);margin:0}.admin-section-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);margin:0}.admin-card-title{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);margin:0}.admin-lede{margin:var(--space-2) 0 0;color:var(--color-text-muted);line-height:var(--line-height-base);max-inline-size:60ch}.admin-meta{font-size:var(--font-size-xs);color:var(--color-text-muted)}.admin-toolbar{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.admin-cards{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(18rem,1fr));display:grid}.admin-card{gap:var(--space-3);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);flex-direction:column;min-inline-size:0;display:flex}.admin-page :is(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:var(--focus-ring-width) solid var(--color-focus-ring);outline-offset:var(--focus-ring-offset)}.admin-error{gap:var(--space-2);border:1px solid var(--color-danger);border-radius:var(--radius-md);background:var(--color-danger-soft);padding:var(--space-3) var(--space-4);color:var(--color-text);line-height:var(--line-height-base);flex-direction:column;align-items:flex-start;display:flex}.admin-error-title{font-weight:var(--font-weight-semibold);color:var(--color-danger-text)}.admin-empty{align-items:center;gap:var(--space-3);text-align:center;border:1px dashed var(--color-control-border);border-radius:var(--radius-lg);padding:var(--space-10) var(--space-6);background:var(--color-surface);flex-direction:column;display:flex}.admin-empty h2{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);margin:0}.admin-empty p{max-inline-size:60ch;color:var(--color-text-muted);line-height:var(--line-height-base);margin:0}.admin-empty-actions{gap:var(--space-2);flex-wrap:wrap;justify-content:center;display:flex}.is-busy,[aria-busy=true]{cursor:progress;opacity:.7}.admin-skeleton{block-size:var(--space-4);border-radius:var(--radius-sm);background-color:var(--color-surface-sunken);background-image:linear-gradient(90deg, var(--color-surface-sunken) 0%, var(--color-surface-hover) 50%, var(--color-surface-sunken) 100%);background-size:200% 100%;inline-size:100%;animation:1.4s linear infinite admin-skeleton-shimmer;display:block}.admin-skeleton+.admin-skeleton{margin-block-start:var(--space-2)}.admin-skeleton.w-half{inline-size:50%}.admin-skeleton.w-quarter{inline-size:25%}@keyframes admin-skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.admin-table{border-collapse:collapse;inline-size:100%;font-size:var(--font-size-sm)}.admin-table th{text-align:start;padding:var(--density-row-y) var(--density-cell-x);border-block-end:2px solid var(--color-border);color:var(--color-text-muted);font-weight:var(--font-weight-semibold);white-space:nowrap}.admin-table td{padding:var(--density-row-y) var(--density-cell-x);border-block-end:1px solid var(--color-border);vertical-align:top;line-height:var(--line-height-base)}.admin-table tbody tr:hover{background:var(--color-surface-hover)}.admin-table .col-actions{text-align:end;white-space:nowrap}.admin-table .num{font-variant-numeric:tabular-nums}.cell-muted{color:var(--color-text-muted)}.scope-chip{padding:0 var(--space-2);border-radius:var(--radius-full);border:1px solid var(--color-border);font-size:var(--font-size-xs);color:var(--color-text-muted);display:inline-block}.scope-chip.space{border-color:var(--color-primary);color:var(--color-primary)}.badge-on{color:var(--color-success-text)}.badge-off{color:var(--color-text-muted)}.admin-form{gap:var(--space-4);flex-direction:column;display:flex}.admin-form.cols-2{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));align-items:start;display:grid}.admin-form.cols-2 .span-2{grid-column:1/-1}.admin-field{gap:var(--space-1);flex-direction:column;min-inline-size:0;display:flex}.admin-field>span{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text)}.admin-field input,.admin-field textarea,.admin-field select{border:1px solid var(--color-control-border);border-radius:var(--radius-md);padding:var(--space-2);min-block-size:var(--control-height);background:var(--color-surface-raised);color:var(--color-text);font:inherit;transition:border-color var(--transition-fast), background-color var(--transition-fast)}.admin-field textarea{min-block-size:calc(var(--control-height) * 2);line-height:var(--line-height-base)}.admin-field input::placeholder,.admin-field textarea::placeholder{color:var(--color-text-muted)}.admin-field input:hover:not(:disabled),.admin-field textarea:hover:not(:disabled),.admin-field select:hover:not(:disabled){border-color:var(--color-text)}.admin-field input:disabled,.admin-field textarea:disabled,.admin-field select:disabled{background:var(--color-surface-sunken);color:var(--color-text-muted);cursor:not-allowed}.admin-field input:read-only,.admin-field textarea:read-only{background:var(--color-surface-sunken)}.admin-field :is(input,textarea,select)[aria-invalid=true]{border-color:var(--color-danger)}.admin-field-help{font-size:var(--font-size-xs);color:var(--color-text-muted);line-height:var(--line-height-base)}.admin-field-error{font-size:var(--font-size-sm);color:var(--color-danger-text);line-height:var(--line-height-base)}.admin-form-actions{justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap;display:flex}.btn-primary,.btn-secondary{justify-content:center;align-items:center;gap:var(--space-2);min-block-size:var(--control-height);border-radius:var(--radius-md);padding:var(--space-2) var(--space-4);cursor:pointer;font:inherit;font-weight:var(--font-weight-medium);white-space:nowrap;transition:background-color var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast);display:inline-flex}.btn-primary{border:1px solid var(--color-primary);background:var(--color-primary);color:var(--color-primary-contrast)}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.btn-primary:active:not(:disabled){background:var(--color-primary-active);border-color:var(--color-primary-active)}.btn-primary:disabled{opacity:.55;cursor:not-allowed}.btn-secondary{border:1px solid var(--color-control-border);background:var(--color-surface-raised);color:var(--color-text)}.btn-secondary:hover:not(:disabled){background:var(--color-surface-hover);border-color:var(--color-text)}.btn-secondary:active:not(:disabled){background:var(--color-surface-sunken)}.btn-secondary:disabled{opacity:.55;cursor:not-allowed}.btn-link{color:var(--color-primary);cursor:pointer;font:inherit;font-size:var(--font-size-sm);background:0 0;border:none;padding:0}.btn-link+.btn-link{margin-inline-start:var(--space-3)}.btn-link.danger{color:var(--color-danger-text)}.btn-link:hover:not(:disabled){color:var(--color-primary-hover);text-decoration:underline}.btn-link.danger:hover:not(:disabled){color:var(--color-danger-text)}.btn-link:disabled{opacity:.55;cursor:not-allowed;text-decoration:none}.btn-icon{inline-size:var(--control-height);block-size:var(--control-height);border:1px solid var(--color-control-border);border-radius:var(--radius-md);background:var(--color-surface-raised);color:var(--color-text);cursor:pointer;font:inherit;transition:background-color var(--transition-fast), border-color var(--transition-fast);justify-content:center;align-items:center;padding:0;display:inline-flex}.btn-icon:hover:not(:disabled){background:var(--color-surface-hover)}.btn-icon:disabled{opacity:.55;cursor:not-allowed}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;block-size:1px;inline-size:1px;position:absolute;overflow:hidden}.admin-scroll-x{position:relative;overflow-x:auto}@media (width<=47.99rem){.admin-page{padding-inline:var(--space-4)}.content .admin-page{padding-inline:0}.admin-header{flex-direction:column;align-items:stretch}.admin-header .admin-toolbar,.admin-header-actions{inline-size:100%}.admin-header-actions>*{flex:auto}.admin-form-actions{flex-direction:column-reverse;align-items:stretch}.btn-primary,.btn-secondary{min-block-size:var(--tap-min);inline-size:100%}.btn-icon{inline-size:var(--tap-min);block-size:var(--tap-min)}.btn-link{min-block-size:var(--tap-min);align-items:center;display:inline-flex}.admin-field input,.admin-field textarea,.admin-field select{min-block-size:var(--control-height-lg);font-size:var(--font-size-base)}.admin-form.cols-2{grid-template-columns:1fr}.admin-table.stacks thead{clip:rect(0 0 0 0);block-size:1px;inline-size:1px;position:absolute;overflow:hidden}.admin-table.stacks tr{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3);background:var(--color-surface);margin-block-end:var(--space-3);display:grid}.admin-table.stacks tbody tr:hover{background:var(--color-surface)}.admin-table.stacks td{gap:var(--space-3);padding:var(--space-1) 0;border:0;grid-template-columns:max-content 1fr;display:grid}.admin-table.stacks td:before{content:attr(data-label);color:var(--color-text-muted);font-size:var(--font-size-sm)}.admin-table.stacks .col-actions{text-align:start}}@media (prefers-reduced-motion:reduce){.admin-skeleton{background-image:none;animation:none}.btn-primary,.btn-secondary,.btn-icon,.admin-field input,.admin-field textarea,.admin-field select{transition:none}}
