:root{--surface-base:#0b1020;--surface-raised:#111827;--surface-overlay:#1f2937;--surface-floating:#273244;--surface-hover:#ffffff0a;--surface-active:#ffffff14;--text-primary:#f8fafc;--text-secondary:#cbd5e1;--text-muted:#94a3b8;--text-inverse:#0b1020;--intent-primary:#3b82f6;--intent-primary-hover:#2563eb;--intent-primary-soft:#3b82f624;--intent-success:#10b981;--intent-success-soft:#10b98124;--intent-warning:#f59e0b;--intent-warning-soft:#f59e0b24;--intent-danger:#ef4444;--intent-danger-hover:#dc2626;--intent-danger-soft:#ef444424;--intent-info:#06b6d4;--intent-info-soft:#06b6d424;--intent-neutral-soft:#94a3b824;--border-subtle:#94a3b829;--border-strong:#94a3b852;--border-focus:#60a5fa;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--font-sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--font-mono:ui-monospace,"SF Mono",Menlo,Consolas,monospace;--text-xs:12px;--text-sm:13px;--text-base:14px;--text-md:16px;--text-lg:20px;--text-xl:28px;--leading-tight:1.25;--leading-normal:1.55;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-pill:999px;--shadow-sm:0 1px 2px #00000059;--shadow-md:0 4px 12px #0006;--shadow-lg:0 16px 40px #00000080;--transition-fast:120ms ease;--transition-base:220ms ease;--z-sticky:100;--z-scrim:150;--z-sidebar:200;--z-overlay:900;--z-modal:1000;--z-toast:1100;--sidebar-width:248px;--sidebar-width-collapsed:72px;--header-height:64px;--content-max-width:1440px;--tap-target:44px;--bg:var(--surface-base);--color-bg-primary:var(--surface-base);--detail-bg:var(--surface-base);--card:var(--surface-raised);--bg-card:var(--surface-raised);--color-bg-card:var(--surface-raised);--color-bg-secondary:var(--surface-raised);--detail-card:var(--surface-raised);--color-bg-tertiary:var(--surface-overlay);--color-bg-input:var(--surface-overlay);--bg-hover:var(--surface-overlay);--border:var(--border-subtle);--border-color:var(--border-subtle);--color-border-primary:var(--border-subtle);--detail-border:var(--border-subtle);--color-border-secondary:var(--border-strong);--color-border-focus:var(--border-focus);--text-main:var(--text-primary);--color-text-primary:var(--text-primary);--color-text-secondary:var(--text-secondary);--muted:var(--text-muted);--color-text-tertiary:var(--text-muted);--color-text-disabled:var(--text-muted);--accent:var(--intent-primary);--accent-blue:var(--intent-primary);--primary-blue:var(--intent-primary);--color-accent-primary:var(--intent-primary);--color-accent-hover:var(--intent-primary-hover);--accent-cyan:var(--intent-info);--color-accent-success:var(--intent-success);--color-accent-warning:var(--intent-warning);--color-accent-error:var(--intent-danger);--font-size-xs:var(--text-xs);--font-size-sm:var(--text-sm);--font-size-base:var(--text-base);--font-size-lg:var(--text-md);--font-size-xl:var(--text-lg);--font-size-2xl:var(--text-lg);--font-size-3xl:var(--text-xl);--font-weight-normal:var(--weight-regular);--font-weight-medium:var(--weight-medium);--font-weight-semibold:var(--weight-semibold);--font-weight-bold:var(--weight-bold);--space-xs:var(--space-1);--space-sm:var(--space-2);--space-md:var(--space-4);--space-lg:var(--space-5);--space-xl:var(--space-6);--space-2xl:var(--space-7);--space-12:var(--space-3);--space-16:var(--space-4);--space-24:var(--space-5);--space-32:var(--space-6);--space-40:var(--space-7);--space-48:var(--space-7);--space-64:var(--space-8);--radius-full:var(--radius-pill);--shadow-xl:var(--shadow-lg);--transition-normal:var(--transition-base);--input-height:var(--tap-target);--badge-size:24px;--height-badge:24px}*,:after,:before{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#0b1020;background:var(--surface-base);color:#f8fafc;color:var(--text-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-family:var(--font-sans);font-size:14px;font-size:var(--text-base);line-height:1.55;line-height:var(--leading-normal);margin:0}#root,body{overflow-x:hidden}h1,h2,h3,h4{color:#f8fafc;color:var(--text-primary);line-height:1.25;line-height:var(--leading-tight);margin:0}button,input,select,textarea{color:inherit;font:inherit}a{color:#3b82f6;color:var(--intent-primary)}:focus-visible{border-radius:6px;border-radius:var(--radius-sm);outline:2px solid #60a5fa;outline:2px solid var(--border-focus);outline-offset:2px}.sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.skip-link{background:#3b82f6;background:var(--intent-primary);border-radius:8px;border-radius:var(--radius-md);color:#fff;font-weight:600;font-weight:var(--weight-semibold);left:16px;left:var(--space-4);padding:12px 16px;padding:var(--space-3) var(--space-4);position:absolute;top:-100px;transition:top .12s ease;transition:top var(--transition-fast);z-index:1100;z-index:var(--z-toast)}.skip-link:focus{top:16px;top:var(--space-4)}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}.table-scroll{-webkit-overflow-scrolling:touch;overflow-x:auto;width:100%}.stack{display:flex;flex-direction:column;gap:16px;gap:var(--space-4)}.row,.row-wrap{align-items:center;display:flex;gap:12px;gap:var(--space-3)}.row-wrap{flex-wrap:wrap}@media (prefers-contrast:high){:root{--color-border-primary:#fff;--color-border-secondary:#fff;--color-text-secondary:#fff}}.ui-btn{align-items:center;border:1px solid #0000;border-radius:var(--radius-md);cursor:pointer;display:inline-flex;font-weight:var(--weight-semibold);gap:var(--space-2);justify-content:center;line-height:1;transition:background var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast),opacity var(--transition-fast);white-space:nowrap}.ui-btn:disabled{cursor:not-allowed;opacity:.55}.ui-btn:not(:disabled):active{transform:translateY(1px)}.ui-btn--sm{font-size:var(--text-sm);min-height:34px;padding:0 var(--space-3)}.ui-btn--md{font-size:var(--text-base);min-height:40px;padding:0 var(--space-4)}.ui-btn--lg{font-size:var(--text-md);min-height:48px;padding:0 var(--space-5)}.ui-btn--full{width:100%}.ui-btn--icon-only{height:var(--tap-target);min-width:var(--tap-target);padding:0;width:var(--tap-target)}.ui-btn--icon-only.ui-btn--sm{height:36px;min-width:36px;width:36px}.ui-btn--primary{background:var(--intent-primary);color:#fff}.ui-btn--primary:not(:disabled):hover{background:var(--intent-primary-hover)}.ui-btn--secondary{background:var(--surface-overlay);border-color:var(--border-subtle);color:var(--text-primary)}.ui-btn--secondary:not(:disabled):hover{background:var(--surface-floating);border-color:var(--border-strong)}.ui-btn--ghost{background:#0000;color:var(--text-secondary)}.ui-btn--ghost:not(:disabled):hover{background:var(--surface-hover);color:var(--text-primary)}.ui-btn--danger{background:var(--intent-danger);color:#fff}.ui-btn--danger:not(:disabled):hover{background:var(--intent-danger-hover)}.ui-field{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-4)}.ui-field__label{color:var(--text-secondary);font-size:var(--text-sm);font-weight:var(--weight-medium)}.ui-field__required{color:var(--intent-danger);margin-left:2px}.ui-field__control{align-items:center;display:flex;position:relative}.ui-field__input{background:var(--surface-overlay);border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-primary);min-height:var(--tap-target);padding:0 var(--space-3);transition:border-color var(--transition-fast),background var(--transition-fast);width:100%}.ui-field__input::placeholder{color:var(--text-muted)}.ui-field__input:hover:not(:disabled){border-color:var(--border-strong)}.ui-field__input:focus{background:var(--surface-floating);border-color:var(--border-focus);outline:none}.ui-field__input:disabled{cursor:not-allowed;opacity:.6}.ui-field__input--with-icon{padding-left:var(--space-7)}.ui-field__icon{left:var(--space-3);pointer-events:none}.ui-field__icon,.ui-field__toggle{color:var(--text-muted);position:absolute}.ui-field__toggle{align-items:center;background:#0000;border:none;border-radius:var(--radius-sm);cursor:pointer;display:flex;height:40px;justify-content:center;right:var(--space-1);width:40px}.ui-field__toggle:hover{background:var(--surface-hover);color:var(--text-primary)}.ui-field__hint{color:var(--text-muted)}.ui-field__error,.ui-field__hint{font-size:var(--text-xs);margin:0}.ui-field__error{align-items:center;color:var(--intent-danger);display:flex;gap:var(--space-2)}.ui-field--error .ui-field__input{border-color:var(--intent-danger)}.ui-modal__overlay{align-items:center;animation:ui-fade-in var(--transition-base);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#030712b8;display:flex;inset:0;justify-content:center;padding:var(--space-4);position:fixed;z-index:var(--z-modal)}.ui-modal{animation:ui-modal-in var(--transition-base);background:var(--surface-raised);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;max-height:calc(100vh - var(--space-7));width:100%}.ui-modal--sm{max-width:420px}.ui-modal--md{max-width:560px}.ui-modal--lg{max-width:760px}.ui-modal--xl{max-width:1040px}.ui-modal__header{align-items:flex-start;border-bottom:1px solid var(--border-subtle);display:flex;gap:var(--space-4);justify-content:space-between;padding:var(--space-5)}.ui-modal__title{font-size:var(--text-lg);font-weight:var(--weight-semibold)}.ui-modal__description{color:var(--text-muted);font-size:var(--text-sm);margin:var(--space-2) 0 0}.ui-modal__close{align-items:center;background:#0000;border:none;border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;display:flex;flex-shrink:0;height:var(--tap-target);justify-content:center;width:var(--tap-target)}.ui-modal__close:hover{background:var(--surface-hover);color:var(--text-primary)}.ui-modal__body{flex:1 1;overflow-y:auto;padding:var(--space-5)}.ui-modal__footer{border-top:1px solid var(--border-subtle);display:flex;gap:var(--space-3);justify-content:flex-end;padding:var(--space-4) var(--space-5)}.ui-confirm__message{color:var(--text-secondary);margin:0}.ui-confirm__challenge{background:var(--intent-danger-soft);border:1px solid var(--intent-danger);border-radius:var(--radius-md);margin-top:var(--space-5);padding:var(--space-4)}.ui-confirm__challenge-text{color:var(--text-secondary);font-size:var(--text-sm);margin:0 0 var(--space-3)}.ui-confirm__challenge .ui-field{margin-bottom:0}@media (max-width:768px){.ui-modal__overlay{align-items:flex-end;padding:0}.ui-modal{border-radius:var(--radius-xl) var(--radius-xl) 0 0;max-height:92vh;max-width:100%}.ui-modal__footer{flex-direction:column-reverse}.ui-modal__footer .ui-btn{width:100%}}.ui-toasts{flex-direction:column;max-width:min(400px,calc(100vw - var(--space-6)));pointer-events:none;position:fixed;right:var(--space-4);top:var(--space-4);z-index:var(--z-toast)}.ui-toast,.ui-toasts{display:flex;gap:var(--space-3)}.ui-toast{align-items:flex-start;animation:ui-toast-in var(--transition-base);background:var(--surface-floating);border:1px solid var(--border-subtle);border-left-width:3px;border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:var(--space-3) var(--space-4);pointer-events:auto}.ui-toast--success{border-left-color:var(--intent-success)}.ui-toast--error{border-left-color:var(--intent-danger)}.ui-toast--warning{border-left-color:var(--intent-warning)}.ui-toast--info{border-left-color:var(--intent-info)}.ui-toast--success .ui-toast__icon{color:var(--intent-success)}.ui-toast--error .ui-toast__icon{color:var(--intent-danger)}.ui-toast--warning .ui-toast__icon{color:var(--intent-warning)}.ui-toast--info .ui-toast__icon{color:var(--intent-info)}.ui-toast__icon{flex-shrink:0;margin-top:2px}.ui-toast__content{flex:1 1;min-width:0}.ui-toast__title{font-size:var(--text-sm);font-weight:var(--weight-semibold);margin:0 0 2px}.ui-toast__text{color:var(--text-secondary);font-size:var(--text-sm);margin:0;overflow-wrap:anywhere}.ui-toast__close{background:#0000;border:none;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;flex-shrink:0;height:28px;width:28px}.ui-toast__close:hover{background:var(--surface-hover);color:var(--text-primary)}@media (max-width:768px){.ui-toasts{bottom:var(--space-4);left:var(--space-3);max-width:none;right:var(--space-3);top:auto}}.demo-banner{align-items:flex-start;background:var(--intent-warning-soft);border:1px solid var(--intent-warning);border-radius:var(--radius-md);color:var(--text-secondary);display:flex;font-size:var(--text-sm);gap:var(--space-3);line-height:var(--leading-normal);margin-bottom:var(--space-5);padding:var(--space-3) var(--space-4)}.demo-banner strong{color:var(--text-primary)}.tmp-pass{display:flex;flex-direction:column;gap:var(--space-4)}.tmp-pass__intro{align-items:flex-start;background:var(--intent-warning-soft);border-radius:var(--radius-md);color:var(--text-secondary);display:flex;font-size:var(--text-sm);gap:var(--space-2);margin:0;padding:var(--space-3)}.tmp-pass__reason{color:var(--text-muted);font-size:var(--text-sm);margin:0}.tmp-pass__field{display:flex;flex-direction:column;gap:var(--space-2)}.tmp-pass__label{color:var(--text-muted);font-size:var(--text-xs);letter-spacing:.05em;text-transform:uppercase}.tmp-pass__value{color:var(--text-primary);font-family:var(--font-mono);font-size:var(--text-base);overflow-wrap:anywhere}.tmp-pass__secret{align-items:center;background:var(--surface-overlay);border:1px solid var(--border-subtle);border-radius:var(--radius-md);display:flex;gap:var(--space-2);padding:var(--space-2) var(--space-3)}.tmp-pass__secret .tmp-pass__value{flex:1 1;letter-spacing:1px}.tmp-pass__action{align-items:center;background:#0000;border:none;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;display:flex;flex-shrink:0;height:36px;justify-content:center;width:36px}.tmp-pass__action:hover{background:var(--surface-hover);color:var(--text-primary)}.tmp-pass__copied{color:var(--intent-success);font-size:var(--text-xs)}.ui-badge{align-items:center;border-radius:var(--radius-pill);display:inline-flex;font-weight:var(--weight-medium);gap:var(--space-2);white-space:nowrap}.ui-badge--sm{font-size:var(--text-xs);padding:2px var(--space-2)}.ui-badge--md{font-size:var(--text-xs);padding:var(--space-1) var(--space-3)}.ui-badge__dot{background:currentColor;border-radius:50%;height:6px;width:6px}.ui-badge--neutral{background:var(--intent-neutral-soft);color:var(--text-secondary)}.ui-badge--primary{background:var(--intent-primary-soft);color:#93c5fd}.ui-badge--success{background:var(--intent-success-soft);color:#6ee7b7}.ui-badge--warning{background:var(--intent-warning-soft);color:#fcd34d}.ui-badge--danger{background:var(--intent-danger-soft);color:#fca5a5}.ui-badge--info{background:var(--intent-info-soft);color:#67e8f9}.ui-skeleton-group{display:flex;flex-direction:column;gap:var(--space-3);width:100%}.ui-skeleton{animation:ui-shimmer 1.4s infinite;background:linear-gradient(90deg,var(--surface-overlay) 25%,var(--surface-floating) 50%,var(--surface-overlay) 75%);background-size:200% 100%;border-radius:var(--radius-sm);display:block}.ui-skeleton--text{height:14px;width:100%}.ui-skeleton--title{height:24px;width:40%}.ui-skeleton--circle{border-radius:50%;height:40px;width:40px}.ui-skeleton--rect{border-radius:var(--radius-md);height:120px;width:100%}.ui-state{align-items:center;display:flex;flex-direction:column;gap:var(--space-3);justify-content:center;padding:var(--space-7) var(--space-4);text-align:center}.ui-state--loading{align-items:stretch;text-align:left}.ui-state__skeletons{display:flex;flex-direction:column;gap:var(--space-4);width:100%}.ui-state__icon{color:var(--text-muted);font-size:34px}.ui-state--error .ui-state__icon{color:var(--intent-warning)}.ui-state__title{font-size:var(--text-md);font-weight:var(--weight-semibold)}.ui-state__description{color:var(--text-muted);font-size:var(--text-sm);margin:0;max-width:44ch}@keyframes ui-fade-in{0%{opacity:0}to{opacity:1}}@keyframes ui-modal-in{0%{opacity:0;transform:translateY(8px) scale(.99)}to{opacity:1;transform:none}}@keyframes ui-toast-in{0%{opacity:0;transform:translateX(16px)}to{opacity:1;transform:none}}@keyframes ui-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.btn-danger,.btn-primary,.btn-secondary{align-items:center;border:1px solid #0000;border-radius:var(--radius-md);cursor:pointer;display:inline-flex;font-weight:var(--weight-semibold);gap:var(--space-2);justify-content:center;min-height:var(--tap-target);padding:0 var(--space-4);transition:background var(--transition-fast),border-color var(--transition-fast);white-space:nowrap}.btn-primary{background:var(--intent-primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--intent-primary-hover)}.btn-secondary{background:var(--surface-overlay);border-color:var(--border-subtle);color:var(--text-primary)}.btn-secondary:hover:not(:disabled){background:var(--surface-floating);border-color:var(--border-strong)}.btn-danger{background:var(--intent-danger);color:#fff}.btn-danger:hover:not(:disabled){background:var(--intent-danger-hover)}.btn-danger:disabled,.btn-primary:disabled,.btn-secondary:disabled{cursor:not-allowed;opacity:.55}.btn-icon{align-items:center;background:#0000;border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;display:inline-flex;height:var(--tap-target);justify-content:center;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast);width:var(--tap-target)}.btn-icon:hover{background:var(--surface-hover);border-color:var(--border-strong);color:var(--text-primary)}.btn-icon.edit:hover{color:var(--intent-primary)}.btn-icon.view:hover{color:var(--intent-info)}.btn-icon.reset:hover{color:var(--intent-warning)}.btn-icon.toggle:hover{color:var(--intent-info)}.btn-icon.delete:hover{border-color:var(--intent-danger);color:var(--intent-danger)}.btn-icon.suspend:hover{border-color:var(--intent-warning);color:var(--intent-warning)}.btn-icon.labelled{font-size:var(--text-sm);font-weight:var(--weight-medium);gap:var(--space-2);height:auto;min-height:var(--tap-target);padding:0 var(--space-3);white-space:nowrap;width:auto}.btn-close,.modal-close{align-items:center;background:#0000;border:none;border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;display:inline-flex;flex-shrink:0;font-size:var(--text-lg);height:var(--tap-target);justify-content:center;line-height:1;transition:background var(--transition-fast),color var(--transition-fast);width:var(--tap-target)}.btn-close:hover,.modal-close:hover{background:var(--surface-hover);color:var(--text-primary)}.page-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:var(--space-4);justify-content:space-between;margin-bottom:var(--space-5)}.page-header h1,.page-title{color:var(--text-primary);font-size:var(--text-xl);font-weight:var(--weight-bold)}.modal-overlay{align-items:center;background:#030712b8;display:flex;inset:0;justify-content:center;padding:var(--space-4);position:fixed;z-index:var(--z-modal)}.modal{background:var(--surface-raised);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);max-height:calc(100vh - var(--space-7));max-width:560px;overflow-y:auto;padding:var(--space-5);width:100%}.modal.large{max-width:860px}.modal-header{align-items:flex-start;border-bottom:1px solid var(--border-subtle);display:flex;gap:var(--space-4);justify-content:space-between;margin-bottom:var(--space-4);padding-bottom:var(--space-4)}.modal-header h2,.modal-header h3{font-size:var(--text-lg);font-weight:var(--weight-semibold)}.modal-actions,.modal-footer{border-top:1px solid var(--border-subtle);display:flex;gap:var(--space-3);justify-content:flex-end;margin-top:var(--space-5);padding-top:var(--space-4)}.form-group{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-4)}.form-group label{color:var(--text-secondary);font-size:var(--text-sm);font-weight:var(--weight-medium)}.form-group input,.form-group select,.form-group textarea{background:var(--surface-overlay);border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-primary);min-height:var(--tap-target);padding:var(--space-2) var(--space-3);transition:border-color var(--transition-fast),background var(--transition-fast);width:100%}.form-group textarea{min-height:96px;resize:vertical}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-muted)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{background:var(--surface-floating);border-color:var(--border-focus);outline:none}.filter-select option,.form-group select option{background:var(--surface-overlay);color:var(--text-primary)}.form-note{color:var(--text-muted);font-size:var(--text-sm);margin:0 0 var(--space-4)}.form-note.important{background:var(--intent-primary-soft);border-radius:var(--radius-md);color:var(--text-secondary);padding:var(--space-3) var(--space-4)}input:-webkit-autofill,input:-webkit-autofill:focus,input:-webkit-autofill:hover,select:-webkit-autofill,textarea:-webkit-autofill{-webkit-text-fill-color:var(--text-primary);box-shadow:inset 0 0 0 1000px var(--surface-overlay);caret-color:var(--text-primary);-webkit-transition:background-color 5000s ease-in-out 0s;transition:background-color 5000s ease-in-out 0s}.filters{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-bottom:var(--space-5)}.search-box{align-items:center;display:flex;flex:1 1 260px;position:relative}.search-box svg{color:var(--text-muted);left:var(--space-3);pointer-events:none;position:absolute}.search-box input{background:var(--surface-overlay);border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-primary);min-height:var(--tap-target);padding:0 var(--space-3) 0 var(--space-7);width:100%}.search-box input::placeholder{color:var(--text-muted)}.filter-select{background:var(--surface-overlay);border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;min-height:var(--tap-target);padding:0 var(--space-3)}.no-data{color:var(--text-muted);padding:var(--space-7) var(--space-4);text-align:center}.error-message{background:var(--intent-danger-soft);border:1px solid var(--intent-danger);border-radius:var(--radius-md);color:var(--text-primary);font-size:var(--text-sm);margin-bottom:var(--space-4);padding:var(--space-3) var(--space-4)}@media (max-width:768px){.page-header{align-items:flex-start;flex-direction:column}.page-header .btn-primary{width:100%}.modal{max-height:92vh}.modal-actions,.modal-footer{flex-direction:column-reverse}.modal-actions button,.modal-footer button{width:100%}}code,kbd,pre,samp{font-family:var(--font-mono)}.app-shell{background:var(--surface-base);min-height:100vh}.app-body{display:flex;min-height:calc(100vh - var(--header-height))}.app-header{align-items:center;background:var(--surface-raised);border-bottom:1px solid var(--border-subtle);display:flex;gap:var(--space-4);height:var(--header-height);justify-content:space-between;padding:0 var(--space-4);position:-webkit-sticky;position:sticky;top:0;z-index:var(--z-sticky)}.app-header__left,.app-header__right{align-items:center;display:flex;gap:var(--space-3);min-width:0}.app-header__brand{color:var(--text-primary);font-size:var(--text-lg);font-weight:var(--weight-bold);letter-spacing:.06em}.app-header__collapse,.app-header__menu{align-items:center;background:#0000;border:none;border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;display:flex;height:var(--tap-target);justify-content:center;transition:background var(--transition-fast),color var(--transition-fast);width:var(--tap-target)}.app-header__collapse:hover,.app-header__menu:hover{background:var(--surface-hover);color:var(--text-primary)}.app-header__menu{display:none}.app-header__user{align-items:flex-end;display:flex;flex-direction:column;line-height:1.2;min-width:0}.app-header__name{font-size:var(--text-sm);font-weight:var(--weight-medium);max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-header__role{color:var(--text-muted);font-size:var(--text-xs)}.app-header__avatar{align-items:center;background:var(--intent-primary);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-weight:var(--weight-semibold);height:36px;justify-content:center;width:36px}.app-header__logout{align-items:center;background:#0000;border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;display:inline-flex;gap:var(--space-2);min-height:var(--tap-target);padding:0 var(--space-3);transition:background var(--transition-fast),color var(--transition-fast)}.app-header__logout:hover{background:var(--surface-hover);border-color:var(--border-strong);color:var(--text-primary)}.app-nav{background:var(--surface-raised);border-right:1px solid var(--border-subtle);flex-shrink:0;padding:var(--space-4) var(--space-3);transition:width var(--transition-base);width:var(--sidebar-width)}.app-nav__head{align-items:center;display:none;justify-content:space-between;margin-bottom:var(--space-4);padding:0 var(--space-2)}.app-nav__brand{font-size:var(--text-lg);font-weight:var(--weight-bold);letter-spacing:.06em}.app-nav__close{background:#0000;border:none;border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;height:var(--tap-target);width:var(--tap-target)}.app-nav__list{display:flex;flex-direction:column;gap:var(--space-1);list-style:none;margin:0;padding:0}.app-nav__link{align-items:center;border-radius:var(--radius-md);color:var(--text-secondary);display:flex;gap:var(--space-3);min-height:var(--tap-target);padding:0 var(--space-3);text-decoration:none;transition:background var(--transition-fast),color var(--transition-fast)}.app-nav__link:hover{background:var(--surface-hover);color:var(--text-primary)}.app-nav__link--active{background:var(--intent-primary-soft);box-shadow:inset 3px 0 0 var(--intent-primary);color:var(--text-primary)}.app-nav__icon{flex-shrink:0;text-align:center;width:18px}.app-nav__text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-content{flex:1 1;max-width:var(--content-max-width);min-width:0;padding:var(--space-5);width:100%}.app-scrim{animation:ui-fade-in var(--transition-fast);background:#03071299;inset:0;position:fixed;z-index:var(--z-scrim)}.app-shell--collapsed .app-nav{width:var(--sidebar-width-collapsed)}.app-shell--collapsed .app-nav__text{display:none}.app-shell--collapsed .app-nav__link{justify-content:center;padding:0}@media (max-width:1023px){.app-nav{bottom:0;left:0;overflow-y:auto;position:fixed;top:0;transform:translateX(-100%);transition:transform var(--transition-base);width:min(280px,84vw);z-index:var(--z-sidebar)}.app-nav--open{box-shadow:var(--shadow-lg);transform:translateX(0)}.app-header__menu,.app-nav__head{display:flex}.app-header__collapse{display:none}.app-shell--collapsed .app-nav{width:min(280px,84vw)}.app-shell--collapsed .app-nav__text{display:inline}.app-shell--collapsed .app-nav__link{justify-content:flex-start;padding:0 var(--space-3)}.app-content{padding:var(--space-4)}}@media (max-width:768px){.app-header{gap:var(--space-2);padding:0 var(--space-3)}.app-header__logout-text,.app-header__user{display:none}.app-header__logout{justify-content:center;padding:0;width:var(--tap-target)}.app-content{padding:var(--space-3)}}.login-page{display:flex;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;height:100vh;overflow:hidden}.login-overlay{display:none}@keyframes gradientBG{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}.login-image{flex-shrink:0;height:100vh;object-fit:cover;width:auto}.login-wrapper{align-items:flex-start;animation:fadeInUp .6s ease;background:linear-gradient(135deg,#0f2027,#203a43 50%,#2c5364);display:flex;flex:1 1;justify-content:center;overflow-y:auto;padding:40px}.login-form{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#ffffff1a;border:1px solid #fff3;border-radius:20px;box-shadow:0 8px 32px #0000004d,0 0 80px #00c6ff1a;color:#fff;margin-bottom:20px;margin-top:20px;max-width:450px;padding:45px 35px;transition:transform .3s ease,box-shadow .3s ease;width:100%}.login-form:hover{box-shadow:0 12px 40px #0006,0 0 100px #00c6ff26;transform:translateY(-5px)}.login-header{margin-bottom:35px;text-align:center}.login-header h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#00c6ff,#0072ff);-webkit-background-clip:text;background-clip:text;font-size:28px;font-weight:700;margin:0 0 10px;text-shadow:0 0 30px #00c6ff4d}.login-header h2{color:#fff;font-size:24px;font-weight:600;margin:0 0 8px}.login-header p{color:#ffffffb3;font-size:14px;font-weight:300;margin:0}.input-row{grid-gap:15px;display:grid;gap:15px;grid-template-columns:1fr 1fr}.input-group{margin-bottom:25px}.input-group label{color:#ffffffe6;display:block;font-size:14px;font-weight:500;letter-spacing:.3px;margin-bottom:8px}.input-group input{background:#ffffff1a;border:1px solid #fff3;border-radius:10px;box-sizing:border-box;color:#fff;font-size:15px;padding:14px 18px;transition:all .3s ease;width:100%}.input-group input:focus{background:#ffffff26;border-color:#00c6ff99;box-shadow:0 0 0 3px #00c6ff1a;outline:none}.input-group input::placeholder{color:#ffffff80}.select-input{background:#ffffff1a;border:1px solid #fff3;border-radius:10px;box-sizing:border-box;color:#fff;cursor:pointer;font-size:15px;padding:14px 18px;transition:all .3s ease;width:100%}.select-input:focus{background:#ffffff26;border-color:#00c6ff99;box-shadow:0 0 0 3px #00c6ff1a;outline:none}.select-input option{background:#1e293b;color:#fff}.input-group input:-webkit-autofill,.input-group input:-webkit-autofill:focus,.input-group input:-webkit-autofill:hover{-webkit-text-fill-color:#fff;-webkit-box-shadow:inset 0 0 0 1000px #ffffff1a;-webkit-transition:background-color 5000s ease-in-out 0s;transition:background-color 5000s ease-in-out 0s}.login-button{background:linear-gradient(135deg,#00c6ff,#0072ff);border:none;border-radius:10px;box-shadow:0 4px 15px #0072ff4d;color:#fff;cursor:pointer;font-size:16px;font-weight:600;letter-spacing:.5px;margin-top:10px;padding:14px;transition:all .3s ease;width:100%}.login-button:hover:not(:disabled){background:linear-gradient(135deg,#0072ff,#00c6ff);box-shadow:0 6px 20px #0072ff66;transform:translateY(-2px)}.login-button:active:not(:disabled){transform:translateY(0)}.login-button:disabled{cursor:not-allowed;opacity:.6}.error-message{animation:shake .3s ease;background:#ef444433;border:1px solid #ef444466;border-radius:8px;color:#fecaca;font-size:14px;margin-bottom:20px;padding:12px 16px;text-align:center}@keyframes shake{0%,to{transform:translateX(0)}25%{transform:translateX(-10px)}75%{transform:translateX(10px)}}.login-footer{border-top:1px solid #ffffff1a;margin-top:25px;padding-top:20px;text-align:center}.login-footer p{color:#ffffffb3;font-size:14px;margin:0}.login-footer a{color:#00c6ff;font-weight:600;text-decoration:none;transition:color .3s ease}.login-footer a:hover{color:#0072ff;text-decoration:underline}@media (max-width:1024px){.login-image{display:none}.login-wrapper{padding:20px}}@media (max-width:768px){.login-form{padding:35px 25px}.login-header h1{font-size:24px}.login-header h2{font-size:20px}}.App{background-color:#000;font-family:Inter,sans-serif;overflow:hidden;text-align:center}.App,.App-header{min-height:100vh;position:relative}.App-header{align-items:center;animation:subtleGradient 20s ease infinite;background:linear-gradient(135deg,#000,#111827,#000);background-size:200% 200%;box-shadow:inset 0 0 50px #00000080;color:#fff;display:flex;flex-direction:column;justify-content:center;z-index:1}.App-header:before{animation:floatParticles 30s linear infinite;background-image:radial-gradient(circle at 30% 70%,#3b82f61a 0,#0000 50%),radial-gradient(circle at 70% 30%,#14b8a61a 0,#0000 50%);bottom:0;content:"";left:0;mix-blend-mode:overlay;pointer-events:none;position:absolute;right:0;top:0;z-index:0}.App-header p,h1{animation:fadeInUp 1.5s ease-out forwards;letter-spacing:1px;opacity:0;text-shadow:0 0 10px #3b82f633;z-index:2}h1{animation-delay:.6s;color:#fff;font-family:Inter,sans-serif;font-size:calc(2.5rem + 4vw);font-weight:700;margin:2rem 0 1rem}.App-header p{animation-delay:1s;color:#9ca3af;font-size:calc(1rem + 1vw);line-height:1.6;max-width:600px}.App-link{background:linear-gradient(135deg,#111827,#1f2937);border:1px solid #3b82f64d;border-radius:8px;box-shadow:0 4px 15px #00000080;color:#fff;font-size:1.3rem;font-weight:600;margin-top:3rem;overflow:hidden;padding:1rem 3rem;position:relative;text-decoration:none;transition:all .4s ease;z-index:2}.App-link:before{background:linear-gradient(90deg,#0000,#14b8a633,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .6s ease;width:100%}.App-link:hover{border-color:#3b82f6;box-shadow:0 8px 30px #3b82f666;transform:translateY(-3px)}.App-link:hover:before{left:100%}@keyframes subtleGradient{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}@keyframes floatParticles{0%{opacity:.8;transform:translateY(0) translateX(0)}50%{opacity:1;transform:translateY(-20px) translateX(20px)}to{opacity:.8;transform:translateY(0) translateX(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){h1{font-size:3rem}.App-link{font-size:1.1rem;padding:.8rem 2rem}}
/*# sourceMappingURL=main.939c9432.css.map*/