:root{color-scheme:dark;--bg-base: #090b10;--bg-surface: #11141c;--bg-elevated: #171b26;--bg-input: #0d1017;--border-subtle: rgba(255, 255, 255, .08);--border-strong: rgba(255, 255, 255, .16);--text-primary: #f3f5f8;--text-secondary: #98a2b3;--text-muted: #667085;--accent: #6366f1;--accent-hover: #5558e6;--accent-ring: rgba(99, 102, 241, .35);--danger-bg: rgba(239, 68, 68, .12);--danger-border: rgba(239, 68, 68, .32);--danger-text: #fca5a5;--success: #22c55e;--warning-text: #fcd34d;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,*:before,*:after{box-sizing:border-box}html,body,#root{margin:0;min-height:100%;background-color:var(--bg-base);color:var(--text-primary)}button,input{font:inherit}.screen-center{min-height:100vh;display:grid;place-items:center}.muted-icon{color:var(--text-muted)}.spin{animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(600px circle at 50% 0%,rgba(99,102,241,.13),transparent 70%),var(--bg-base)}.auth-card{width:100%;max-width:400px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:32px 28px 24px;box-shadow:0 24px 48px -16px #000000a6}.auth-header{display:flex;flex-direction:column;align-items:center;text-align:center;margin-bottom:24px}.brand-badge{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;color:#a5b4fc;background:#6366f124;border:1px solid rgba(99,102,241,.28);margin-bottom:14px}.auth-title{margin:0;font-size:1.25rem;font-weight:600;letter-spacing:-.015em}.auth-subtitle{margin:6px 0 0;font-size:.875rem;color:var(--text-secondary)}.auth-form{display:flex;flex-direction:column;gap:16px}.alert-error{display:flex;align-items:flex-start;gap:8px;padding:10px 12px;border-radius:var(--radius-sm);background:var(--danger-bg);border:1px solid var(--danger-border);color:var(--danger-text);font-size:.85rem;line-height:1.4}.alert-error svg{flex-shrink:0;margin-top:2px}.field{display:flex;flex-direction:column;gap:6px}.field-label-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.field-label{font-size:.8125rem;font-weight:500;color:var(--text-secondary)}.caps-hint{font-size:.75rem;color:var(--warning-text)}.input-group{position:relative;display:flex;align-items:center}.field-input{width:100%;height:40px;padding:0 12px;border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:var(--bg-input);color:var(--text-primary);font-size:.9375rem;transition:border-color .15s ease,box-shadow .15s ease}.field-input::placeholder{color:var(--text-muted)}.field-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}.field-input:disabled{opacity:.6;cursor:not-allowed}.field-input-with-action{padding-right:40px}.input-action-btn{position:absolute;right:6px;width:30px;height:30px;display:grid;place-items:center;border:none;border-radius:6px;background:transparent;color:var(--text-secondary);cursor:pointer;transition:color .15s ease,background-color .15s ease}.input-action-btn:hover:not(:disabled){color:var(--text-primary);background:#ffffff0f}.input-action-btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.primary-btn{margin-top:4px;height:42px;border:none;border-radius:var(--radius-sm);background:var(--accent);color:#fff;font-size:.9375rem;font-weight:500;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;transition:background-color .15s ease,opacity .15s ease}.primary-btn:hover:not(:disabled){background:var(--accent-hover)}.primary-btn:focus-visible{outline:2px solid #a5b4fc;outline-offset:2px}.primary-btn:disabled{opacity:.55;cursor:not-allowed}.auth-footer{margin-top:22px;padding-top:16px;border-top:1px solid var(--border-subtle);text-align:center;font-size:.75rem;color:var(--text-muted)}.panel-shell{min-height:100vh;display:flex;flex-direction:column;background:var(--bg-base)}.panel-topbar{height:56px;padding:0 20px;display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--bg-surface);border-bottom:1px solid var(--border-subtle);position:sticky;top:0;z-index:10}.panel-brand{display:flex;align-items:center;gap:10px;font-weight:600;font-size:.9375rem;letter-spacing:-.01em}.panel-brand-icon{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;background:#6366f124;border:1px solid rgba(99,102,241,.25);color:#a5b4fc}.panel-actions{display:flex;align-items:center;gap:8px}.user-pill{display:inline-flex;align-items:center;gap:8px;height:32px;padding:0 10px;border-radius:999px;background:var(--bg-elevated);border:1px solid var(--border-subtle);font-size:.8125rem}.user-status-dot{width:7px;height:7px;border-radius:50%;background:var(--success)}.user-name{color:var(--text-primary);font-weight:500}.user-role{color:var(--text-muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.04em}.secondary-btn,.ghost-btn{height:32px;padding:0 12px;border-radius:var(--radius-sm);display:inline-flex;align-items:center;gap:6px;font-size:.8125rem;font-weight:500;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.secondary-btn{background:var(--bg-elevated);border:1px solid var(--border-subtle);color:var(--text-primary)}.secondary-btn:hover:not(:disabled){border-color:var(--border-strong);background:#1d2230}.ghost-btn{background:transparent;border:1px solid transparent;color:var(--text-secondary)}.ghost-btn:hover:not(:disabled){color:var(--text-primary);background:#ffffff0d}.secondary-btn:disabled,.ghost-btn:disabled{opacity:.55;cursor:not-allowed}.secondary-btn:focus-visible,.ghost-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.panel-workspace{flex:1;padding:24px 20px;display:flex;flex-direction:column;align-items:center;gap:16px}.panel-container{width:100%;max-width:920px;display:flex;flex-direction:column;gap:16px}.panel-card{width:100%;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:20px;box-shadow:0 12px 32px -16px #0000008c}.panel-card-header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.panel-card-header-between{justify-content:space-between}.panel-card-title-group{display:flex;align-items:center;gap:10px}.panel-card-icon{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;background:#6366f124;border:1px solid rgba(99,102,241,.25);color:#a5b4fc;flex-shrink:0}.panel-card-title{margin:0;font-size:.9375rem;font-weight:600;letter-spacing:-.01em}.panel-card-subtitle{margin:2px 0 0;font-size:.8125rem;color:var(--text-secondary)}.lookup-form{display:flex;flex-direction:column;gap:8px}.lookup-input-row{display:flex;align-items:center;gap:10px}.lookup-input-wrap{flex:1}.lookup-submit-btn{margin-top:0;height:40px;padding:0 18px;flex-shrink:0}.lookup-error{margin:0;font-size:.8125rem;color:var(--danger-text)}.count-badge{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 7px;border-radius:999px;background:var(--bg-elevated);border:1px solid var(--border-subtle);font-size:.75rem;font-weight:600;color:var(--text-secondary)}.preview-badge{display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:999px;background:#6366f11f;border:1px solid rgba(99,102,241,.28);color:#a5b4fc;font-size:.7rem;font-weight:500;letter-spacing:.02em}.table-scroll{width:100%;overflow-x:auto;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--bg-input)}.data-table{width:100%;border-collapse:collapse;text-align:left;font-size:.875rem}.data-table th{padding:10px 14px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);background:var(--bg-elevated);border-bottom:1px solid var(--border-subtle);white-space:nowrap}.data-table td{padding:11px 14px;border-bottom:1px solid var(--border-subtle);color:var(--text-primary);white-space:nowrap}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr:hover{background:#ffffff06}.mono-cell{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.8125rem}.id-cell{font-weight:500;color:#c7d2fe}.muted-cell{color:var(--text-secondary)}.status-pill{display:inline-flex;align-items:center;height:22px;padding:0 9px;border-radius:999px;background:#22c55e1f;border:1px solid rgba(34,197,94,.28);color:#86efac;font-size:.75rem;font-weight:500}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.panel-banner-error{width:100%;max-width:920px;padding:10px 14px;border-radius:var(--radius-sm);background:var(--danger-bg);border:1px solid var(--danger-border);color:var(--danger-text);font-size:.875rem}.empty-canvas{width:100%;max-width:920px;flex:1;min-height:calc(100vh - 104px);border-radius:var(--radius-md);border:1px dashed var(--border-subtle);background-image:radial-gradient(rgba(255,255,255,.05) 1px,transparent 1px);background-size:20px 20px;display:grid;place-items:center;padding:24px}@media(max-width:600px){.panel-topbar{padding:0 14px}.btn-label-desktop,.user-role{display:none}.panel-workspace{padding:14px}.panel-card{padding:16px}.lookup-input-row{flex-direction:column;align-items:stretch}}
