:root{--vz-primary:#4f46e5;--vz-primary-hover:#4338ca;--vz-primary-active:#3730a3;--vz-primary-soft:#eef2ff;--vz-primary-soft-border:#c7d2fe;--vz-on-primary:#fff;--vz-accent:var(--vz-primary);--vz-bg:#f8fafc;--vz-surface:#fff;--vz-surface-sunken:#f1f5f9;--vz-border:#e2e8f0;--vz-border-strong:#cbd5e1;--vz-text:#0f172a;--vz-text-soft:#334155;--vz-text-muted:#64748b;--vz-text-placeholder:#94a3b8;--vz-success-bg:#dcfce7;--vz-success-text:#166534;--vz-warning-bg:#fef3c7;--vz-warning-text:#92400e;--vz-danger-bg:#fee2e2;--vz-danger-text:#991b1b;--vz-danger:#dc2626;--vz-danger-hover:#b91c1c;--vz-info-bg:var(--vz-primary-soft);--vz-info-text:var(--vz-primary-active);--vz-neutral-bg:#f1f5f9;--vz-neutral-text:#475569;--vz-font-body:var(--font-instrument-sans), ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--vz-font-display:var(--font-manrope), ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--vz-text-xs:.75rem;--vz-text-sm:.8125rem;--vz-text-md:.9375rem;--vz-text-lg:1.125rem;--vz-text-xl:1.375rem;--vz-text-2xl:1.75rem;--vz-radius-sm:6px;--vz-radius:8px;--vz-radius-lg:12px;--vz-radius-pill:999px;--vz-shadow-sm:0 1px 2px #0f172a0d;--vz-shadow-md:0 4px 12px #0f172a14;--vz-shadow-lg:0 16px 40px #0f172a29;--vz-focus-ring:0 0 0 2px var(--vz-surface), 0 0 0 4px var(--vz-primary);--vz-space-1:4px;--vz-space-2:8px;--vz-space-3:12px;--vz-space-4:16px;--vz-space-5:20px;--vz-space-6:24px;--vz-space-8:32px;--vz-duration:.15s}.vz-sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.vz-root{font-family:var(--vz-font-body);color:var(--vz-text)}.vz-display{font-family:var(--vz-font-display);letter-spacing:-.01em;font-weight:700}.vz-btn{justify-content:center;align-items:center;gap:var(--vz-space-2);min-height:36px;padding:0 var(--vz-space-4);font:600 var(--vz-text-sm)/1 var(--vz-font-body);border-radius:var(--vz-radius);cursor:pointer;white-space:nowrap;transition:background-color var(--vz-duration), border-color var(--vz-duration), color var(--vz-duration);border:1px solid #0000;text-decoration:none;display:inline-flex}.vz-btn:focus-visible{box-shadow:var(--vz-focus-ring);outline:none}.vz-btn[aria-disabled=true],.vz-btn:disabled{opacity:.55;cursor:not-allowed}.vz-btn--sm{min-height:30px;padding:0 var(--vz-space-3);font-size:var(--vz-text-xs)}.vz-btn--lg{min-height:44px;padding:0 var(--vz-space-5);font-size:var(--vz-text-md)}.vz-btn--primary{background:var(--vz-primary);color:var(--vz-on-primary)}.vz-btn--primary:hover:not(:disabled){background:var(--vz-primary-hover)}.vz-btn--primary:active:not(:disabled){background:var(--vz-primary-active)}.vz-btn--secondary{background:var(--vz-surface);color:var(--vz-text-soft);border-color:var(--vz-border-strong)}.vz-btn--secondary:hover:not(:disabled){background:var(--vz-surface-sunken)}.vz-btn--ghost{color:var(--vz-text-soft);background:0 0}.vz-btn--ghost:hover:not(:disabled){background:var(--vz-surface-sunken)}.vz-btn--danger{background:var(--vz-danger);color:#fff}.vz-btn--danger:hover:not(:disabled){background:var(--vz-danger-hover)}.vz-btn--danger-outline{background:var(--vz-surface);color:var(--vz-danger-text);border-color:#fca5a5}.vz-btn--danger-outline:hover:not(:disabled),.vz-btn--danger-outline:active:not(:disabled),.vz-btn--danger-outline:focus-visible{background:var(--vz-danger-bg);color:var(--vz-danger-text);border-color:var(--vz-danger)}.vz-btn--icon{width:36px;padding:0}.vz-btn svg{flex-shrink:0}.vz-spinner{border:2px solid;border-right-color:#0000;border-radius:50%;width:14px;height:14px;animation:.7s linear infinite vz-spin}@keyframes vz-spin{to{transform:rotate(360deg)}}.vz-card{background:var(--vz-surface);border:1px solid var(--vz-border);border-radius:var(--vz-radius-lg);box-shadow:var(--vz-shadow-sm)}.vz-card--pad{padding:var(--vz-space-5)}.vz-card__header{justify-content:space-between;align-items:center;gap:var(--vz-space-3);margin-bottom:var(--vz-space-4);display:flex}.vz-card__title{font:700 var(--vz-text-md)/1.3 var(--vz-font-display);color:var(--vz-text);margin:0}.vz-stat{padding:var(--vz-space-4)}.vz-stat__label{font-size:var(--vz-text-sm);color:var(--vz-text-muted)}.vz-stat{min-width:0;container-type:inline-size}.vz-stat__value{margin-top:var(--vz-space-1);font:700 clamp(1.125rem, 13cqi, 1.75rem)/1.15 var(--vz-font-display);color:var(--vz-text);overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.vz-stat__hint{margin-top:var(--vz-space-1);font-size:var(--vz-text-xs);color:var(--vz-text-muted)}.vz-stat--warning .vz-stat__value{color:var(--vz-warning-text)}.vz-page-header{justify-content:space-between;align-items:flex-end;gap:var(--vz-space-4);margin-bottom:var(--vz-space-6);flex-wrap:wrap;display:flex}.vz-page-header__title{font:700 var(--vz-text-2xl)/1.15 var(--vz-font-display);letter-spacing:-.01em;color:var(--vz-text);margin:0}.vz-page-header__description{margin:var(--vz-space-1) 0 0;font-size:var(--vz-text-md);color:var(--vz-text-muted)}.vz-page-header__actions{align-items:flex-end;gap:var(--vz-space-2);flex-wrap:wrap;display:flex}.vz-badge{align-items:center;gap:var(--vz-space-1);font:600 var(--vz-text-xs)/1.6 var(--vz-font-body);white-space:nowrap;cursor:default;-webkit-user-select:none;user-select:none;border-radius:4px;padding:1px 7px;display:inline-flex}.vz-badge--info{color:var(--vz-info-text);background:#e0e7ff}.vz-badge--success{background:var(--vz-success-bg);color:var(--vz-success-text)}.vz-badge--warning{background:var(--vz-warning-bg);color:var(--vz-warning-text)}.vz-badge--danger{background:var(--vz-danger-bg);color:var(--vz-danger-text)}.vz-badge--neutral{background:var(--vz-neutral-bg);color:var(--vz-neutral-text)}.vz-field{flex-direction:column;gap:6px;display:flex}.vz-label{font:600 var(--vz-text-sm)/1.3 var(--vz-font-body);color:var(--vz-text-soft)}.vz-label__optional{color:var(--vz-text-muted);font-weight:400}.vz-label__required{color:var(--vz-danger-text)}.vz-input,.vz-select,.vz-textarea{width:100%;min-height:40px;padding:0 var(--vz-space-3);font:400 var(--vz-text-md)/1.4 var(--vz-font-body);color:var(--vz-text);background:var(--vz-surface);border:1px solid var(--vz-border-strong);border-radius:var(--vz-radius);transition:border-color var(--vz-duration), box-shadow var(--vz-duration)}.vz-textarea{padding:var(--vz-space-2) var(--vz-space-3);resize:vertical;min-height:88px}.vz-input::placeholder,.vz-textarea::placeholder{color:var(--vz-text-placeholder)}.vz-input:focus,.vz-select:focus,.vz-textarea:focus{border-color:var(--vz-primary);box-shadow:0 0 0 3px var(--vz-primary-soft-border);outline:none}.vz-input[aria-invalid=true],.vz-select[aria-invalid=true],.vz-textarea[aria-invalid=true]{border-color:var(--vz-danger)}.vz-hint{font-size:var(--vz-text-xs);color:var(--vz-text-muted)}.vz-error{gap:var(--vz-space-1);font-size:var(--vz-text-xs);color:var(--vz-danger-text);align-items:center;display:flex}.vz-alert{gap:var(--vz-space-3);padding:var(--vz-space-3) var(--vz-space-4);border-radius:var(--vz-radius);font-size:var(--vz-text-sm);border:1px solid #0000;align-items:flex-start;display:flex}.vz-alert--success{background:var(--vz-success-bg);color:var(--vz-success-text)}.vz-alert--warning{background:var(--vz-warning-bg);color:var(--vz-warning-text)}.vz-alert--danger{background:var(--vz-danger-bg);color:var(--vz-danger-text)}.vz-alert--info{background:var(--vz-info-bg);color:var(--vz-info-text)}.vz-dialog{border-radius:var(--vz-radius-lg);background:var(--vz-surface);width:min(480px,100vw - 32px);max-height:calc(100vh - 48px);color:var(--vz-text);box-shadow:var(--vz-shadow-lg);font-family:var(--vz-font-body);border:none;padding:0}.vz-dialog--wide{width:min(720px,100vw - 32px)}.vz-dialog::backdrop{background:#0f172a73}.vz-dialog__inner{max-height:inherit;flex-direction:column;display:flex}.vz-dialog__header{justify-content:space-between;align-items:flex-start;gap:var(--vz-space-3);padding:var(--vz-space-5) var(--vz-space-5) 0;display:flex}.vz-dialog__title{font:700 var(--vz-text-lg)/1.3 var(--vz-font-display);margin:0}.vz-dialog__description{margin:var(--vz-space-1) 0 0;font-size:var(--vz-text-sm);color:var(--vz-text-muted)}.vz-dialog__body{padding:var(--vz-space-4) var(--vz-space-5);overflow-y:auto}.vz-dialog__footer{justify-content:flex-end;gap:var(--vz-space-2);padding:var(--vz-space-4) var(--vz-space-5);border-top:1px solid var(--vz-border);display:flex}.vz-toasts{z-index:1000;right:var(--vz-space-4);bottom:var(--vz-space-4);gap:var(--vz-space-2);pointer-events:none;flex-direction:column;max-width:min(380px,100vw - 32px);display:flex;position:fixed}.vz-toast{pointer-events:auto;align-items:flex-start;gap:var(--vz-space-3);padding:var(--vz-space-3) var(--vz-space-4);border-radius:var(--vz-radius);background:var(--vz-text);color:#fff;box-shadow:var(--vz-shadow-lg);font:500 var(--vz-text-sm)/1.4 var(--vz-font-body);animation:.18s ease-out vz-toast-in;display:flex}.vz-toast__icon{flex-shrink:0;margin-top:1px}.vz-toast--success .vz-toast__icon{color:#86efac}.vz-toast--error .vz-toast__icon{color:#fca5a5}.vz-toast__message{flex:1}.vz-toast__action{color:#c7d2fe;font:600 var(--vz-text-sm) var(--vz-font-body);cursor:pointer;background:0 0;border:none;padding:0}.vz-toast__close{color:#cbd5e1;cursor:pointer;background:0 0;border:none;padding:0;line-height:0}.vz-toast__action:focus-visible,.vz-toast__close:focus-visible{outline-offset:2px;border-radius:4px;outline:2px solid #c7d2fe}@keyframes vz-toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.vz-menu{z-index:1001;min-width:180px;padding:var(--vz-space-1);background:var(--vz-surface);border:1px solid var(--vz-border);border-radius:var(--vz-radius);box-shadow:var(--vz-shadow-md);font-family:var(--vz-font-body);position:fixed}.vz-menu__item{align-items:center;gap:var(--vz-space-2);width:100%;padding:var(--vz-space-2) var(--vz-space-3);border-radius:var(--vz-radius-sm);color:var(--vz-text-soft);font:500 var(--vz-text-sm)/1.3 var(--vz-font-body);text-align:left;cursor:pointer;background:0 0;border:none;text-decoration:none;display:flex}.vz-menu__item:hover,.vz-menu__item:focus-visible{background:var(--vz-surface-sunken);color:var(--vz-text);outline:none}.vz-menu__item--danger{color:var(--vz-danger-text)}.vz-menu__separator{height:1px;margin:var(--vz-space-1) 0;background:var(--vz-border)}.vz-empty{text-align:center;align-items:center;gap:var(--vz-space-2);padding:var(--vz-space-8) var(--vz-space-5);flex-direction:column;display:flex}.vz-empty__icon{border-radius:var(--vz-radius-lg);background:var(--vz-primary-soft);width:44px;height:44px;color:var(--vz-primary);place-items:center;display:grid}.vz-empty__title{margin:var(--vz-space-2) 0 0;font:700 var(--vz-text-md)/1.3 var(--vz-font-display);color:var(--vz-text)}.vz-empty__description{max-width:360px;font-size:var(--vz-text-sm);color:var(--vz-text-muted);margin:0}.vz-empty__action{margin-top:var(--vz-space-3)}.vz-skeleton{border-radius:var(--vz-radius-sm);background:linear-gradient(90deg,#f1f5f9 0%,#e2e8f0 50%,#f1f5f9 100%) 0 0/200% 100%;animation:1.4s ease-in-out infinite vz-shimmer;display:block}@keyframes vz-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.vz-table-wrap{overflow-x:auto}.vz-table{border-collapse:collapse;width:100%;font-size:var(--vz-text-sm)}.vz-table th{padding:var(--vz-space-3) var(--vz-space-4);text-align:left;font-weight:600;font-size:var(--vz-text-xs);color:var(--vz-text-muted);background:var(--vz-surface);border-bottom:1px solid var(--vz-border);white-space:nowrap}.vz-table td{padding:var(--vz-space-3) var(--vz-space-4);border-bottom:1px solid var(--vz-surface-sunken);color:var(--vz-text-soft);vertical-align:middle}.vz-table tr:last-child td{border-bottom:none}.vz-table tbody tr:hover td{background:#fafbff}.vz-table__link{color:var(--vz-primary);font-weight:600;text-decoration:none}.vz-table__link:hover{text-decoration:underline}.vz-table__link:focus-visible{box-shadow:var(--vz-focus-ring);border-radius:4px;outline:none}.vz-btn,.vz-menu__item,.vz-toast__action,.vz-toast__close{box-shadow:none;letter-spacing:normal;outline:none;width:auto;margin:0;font-weight:600;transform:none}.vz-btn--block{width:100%}.vz-btn--icon{width:36px}.vz-btn--icon.vz-btn--sm{width:30px}.vz-btn:hover:not(:disabled),.vz-btn:active:not(:disabled),.vz-menu__item:hover,.vz-menu__item:active:not(:disabled),.vz-toast__action:hover,.vz-toast__action:active:not(:disabled),.vz-toast__close:hover,.vz-toast__close:active:not(:disabled){box-shadow:none;transform:none}.vz-btn:focus-visible:not(:disabled),.vz-menu__item:focus-visible{outline:none}.vz-btn:focus-visible{box-shadow:var(--vz-focus-ring)}.vz-menu__item,.vz-toast__action,.vz-toast__close{min-height:0}.vz-menu__item{width:100%}.vz-btn--primary,.vz-btn--primary:hover:not(:disabled),.vz-btn--primary:active:not(:disabled),.vz-btn--primary:focus-visible{color:var(--vz-on-primary)}.vz-btn--primary:focus-visible{background:var(--vz-primary)}.vz-btn--secondary:hover:not(:disabled),.vz-btn--secondary:active:not(:disabled),.vz-btn--secondary:focus-visible{color:var(--vz-text)}.vz-btn--secondary:focus-visible{background:var(--vz-surface)}.vz-btn--secondary:active:not(:disabled){background:var(--vz-border)}.vz-btn--ghost:hover:not(:disabled),.vz-btn--ghost:active:not(:disabled),.vz-btn--ghost:focus-visible{color:var(--vz-text)}.vz-btn--ghost:focus-visible{background:0 0}.vz-btn--ghost:active:not(:disabled){background:var(--vz-border)}.vz-btn--danger,.vz-btn--danger:hover:not(:disabled),.vz-btn--danger:active:not(:disabled),.vz-btn--danger:focus-visible{color:#fff}.vz-btn--danger:focus-visible{background:var(--vz-danger)}.vz-menu__item:hover,.vz-menu__item:focus-visible{background:var(--vz-surface-sunken);color:var(--vz-text)}.vz-menu__item--danger:hover,.vz-menu__item--danger:focus-visible{background:var(--vz-danger-bg);color:var(--vz-danger-text)}.vz-toast__action:hover,.vz-toast__action:focus-visible{color:#e0e7ff;background:0 0}.vz-toast__close:hover,.vz-toast__close:focus-visible{color:#fff;background:0 0}.vz-table__link:hover,.vz-table__link:focus-visible{color:var(--vz-primary-hover)}.vz-input,.vz-select,.vz-textarea{box-shadow:none;margin:0}.vz-input:focus,.vz-select:focus,.vz-textarea:focus{background:var(--vz-surface)}.vz-label{margin:0;display:inline-block}.vz-input[type=file]{min-height:40px;font-size:var(--vz-text-sm);color:var(--vz-text-muted);cursor:pointer;padding:6px 8px}.vz-input[type=file]::file-selector-button{border-radius:var(--vz-radius-sm);border:1px solid var(--vz-border-strong);background:var(--vz-surface);min-height:26px;color:var(--vz-text-soft);font:600 var(--vz-text-sm)/1 var(--vz-font-body);cursor:pointer;margin-right:10px;padding:0 12px}.vz-input[type=file]::file-selector-button:hover{background:var(--vz-surface-sunken);color:var(--vz-text)}.vz-dialog,.vz-menu,.vz-toasts{text-align:left;letter-spacing:normal}.vz-dialog h2,.vz-dialog p{text-align:left}@media (prefers-reduced-motion:reduce){.vz-btn,.vz-input,.vz-select,.vz-textarea{transition:none}.vz-spinner,.vz-skeleton,.vz-toast{animation:none}}.vz-date{position:relative}.vz-date .vz-date__input{padding-right:44px}.vz-date__button{border-radius:var(--vz-radius-sm);width:34px;height:34px;min-height:0;box-shadow:none;color:var(--vz-text-muted);cursor:pointer;background:0 0;border:none;place-items:center;margin:0;padding:0;display:grid;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.vz-date__button:hover{background:var(--vz-surface-sunken);color:var(--vz-text)}.vz-date__button:focus-visible{box-shadow:var(--vz-focus-ring);outline:none}.vz-date__button[aria-expanded=true]{color:var(--vz-primary)}.vz-calendar{z-index:40;width:300px;max-width:calc(100vw - 32px);padding:var(--vz-space-3);background:var(--vz-surface);border:1px solid var(--vz-border);border-radius:var(--vz-radius-lg);box-shadow:var(--vz-shadow-lg);font-family:var(--vz-font-body);text-align:left;position:absolute;top:calc(100% + 6px);left:0}.vz-calendar__head{justify-content:space-between;align-items:center;gap:var(--vz-space-2);margin-bottom:var(--vz-space-2);display:flex}.vz-calendar__title{font:700 var(--vz-text-md) / 1.3 var(--vz-font-display);color:var(--vz-text);margin:0}.vz-calendar__nav{border:1px solid var(--vz-border);border-radius:var(--vz-radius);background:var(--vz-surface);width:32px;height:32px;min-height:0;box-shadow:none;color:var(--vz-text-soft);cursor:pointer;place-items:center;margin:0;padding:0;display:grid}.vz-calendar__nav:hover:not(:disabled){background:var(--vz-surface-sunken)}.vz-calendar__nav:disabled{opacity:.4;cursor:not-allowed}.vz-calendar__nav:focus-visible{box-shadow:var(--vz-focus-ring);outline:none}.vz-calendar__weekdays,.vz-calendar__row{grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;display:grid}.vz-calendar__weekdays{margin-bottom:4px}.vz-calendar__weekdays span{text-align:center;font:600 var(--vz-text-xs) / 1.8 var(--vz-font-body);color:var(--vz-text-muted)}.vz-calendar__grid{gap:2px;display:grid}.vz-calendar__day{border-radius:var(--vz-radius);width:100%;height:36px;min-height:0;box-shadow:none;font:500 var(--vz-text-sm) / 1 var(--vz-font-body);color:var(--vz-text);cursor:pointer;background:0 0;border:1px solid #0000;margin:0;padding:0}.vz-calendar__day:hover{background:var(--vz-surface-sunken)}.vz-calendar__day:focus-visible{box-shadow:var(--vz-focus-ring);outline:none}.vz-calendar__day[data-outside]{color:var(--vz-text-placeholder)}.vz-calendar__day[data-today]{border-color:var(--vz-primary-soft-border);color:var(--vz-primary-active);font-weight:700}.vz-calendar__day[data-selected]{background:var(--vz-primary);border-color:var(--vz-primary);color:var(--vz-on-primary);font-weight:700}.vz-calendar__day[aria-disabled=true]{color:var(--vz-text-placeholder);cursor:not-allowed;background:0 0;text-decoration:line-through}.vz-calendar__foot{margin-top:var(--vz-space-2);padding-top:var(--vz-space-2);border-top:1px solid var(--vz-border);justify-content:space-between;display:flex}.vz-calendar__link{border-radius:var(--vz-radius-sm);min-height:0;box-shadow:none;font:600 var(--vz-text-sm) / 1 var(--vz-font-body);color:var(--vz-primary);cursor:pointer;background:0 0;border:none;margin:0;padding:6px 8px}.vz-calendar__link:hover{background:var(--vz-primary-soft)}.vz-calendar__link:focus-visible{box-shadow:var(--vz-focus-ring);outline:none}
