.auth-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2)}.auth-card{background:#fff;padding:2rem;border-radius:8px;box-shadow:0 4px 6px #0000001a;text-align:center;max-width:400px;width:100%}.auth-card h2{margin-bottom:1rem;color:#333}.auth-card p{margin-bottom:2rem;color:#666}.auth-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 0;border-bottom:1px solid #eee;margin-bottom:1rem}.user-info{display:flex;align-items:center;gap:1rem}.logout-btn{padding:.5rem 1rem;font-size:.875rem}.user-profile{background:#f8f9fa;padding:1rem;border-radius:4px;margin:1rem 0}.user-profile h3{margin:0 0 .5rem;color:#333}.user-profile p{margin:0;color:#666;font-size:.875rem}.admin-summary{background:#f8f9fa;padding:1rem;border-radius:8px;margin-bottom:1rem}.admin-summary p{margin:.5rem 0;font-size:1rem}.workspace-info{background:#e3f2fd;padding:1rem;border-radius:8px;margin-bottom:1rem}.workspace-info p{margin:.5rem 0}.report-card h4{margin-top:0;color:#1976d2}.reports-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem;margin-top:1rem}.section h3{color:#333;border-bottom:2px solid #e0e0e0;padding-bottom:.5rem;margin-bottom:1rem}.tabs-container{margin-bottom:2rem}.tabs-header{display:flex;border-bottom:2px solid #ddd;margin-bottom:1rem}.tab-button{padding:1rem 1.5rem;border:none;background:transparent;cursor:pointer;font-size:1rem;transition:all .3s ease;border-bottom:3px solid transparent}.tab-button:hover{background:#f8f9fa;color:#007bff}.tab-button.active{background:#007bff;color:#fff;border-bottom:3px solid #0056b3;font-weight:700}.tabs-content{padding-top:1rem}.table-header{display:grid;gap:1rem;padding:.75rem 1rem;background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px 8px 0 0;font-weight:700;font-size:.9rem;color:#495057}.table-row{display:grid;gap:1rem;padding:.75rem 1rem;border:1px solid #dee2e6;border-top:none;align-items:center;transition:background-color .2s ease;font-size:.9rem}.table-row:hover{background-color:#e8f4fd!important}.table-row:last-child{border-radius:0 0 8px 8px}.reports-table .table-header,.reports-table .table-row{grid-template-columns:2fr 1fr 1fr auto}.admins-table .table-header,.admins-table .table-row{grid-template-columns:2fr 2fr 1fr auto}.users-table .table-header,.users-table .table-row{grid-template-columns:2fr 2fr 1fr 1fr auto}.admin-add-form,.user-add-form,.report-add-form{background:#f8f9fa;padding:1.5rem;margin-bottom:1.5rem;border:1px solid #dee2e6;border-radius:8px;box-shadow:0 2px 4px #0000001a}.admin-add-form h3,.user-add-form h3,.report-add-form h3{margin:0 0 1rem;color:#495057}.admin-add-form .form-group,.user-add-form .form-group,.report-add-form .form-group{margin-bottom:1rem}.admin-add-form label,.user-add-form label,.report-add-form label{display:block;margin-bottom:.5rem;font-weight:600;color:#495057}.admin-add-form input,.user-add-form input{width:100%;padding:.75rem;border:1px solid #ced4da;border-radius:4px;font-size:1rem;transition:border-color .3s ease}.admin-add-form input:focus,.user-add-form input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 .2rem #007bff40}.admin-add-form .form-actions,.user-add-form .form-actions,.report-add-form .form-actions{margin-top:1rem}.admin-info{margin-top:1.5rem;padding:1.5rem;background:#e8f4fd;border:1px solid #bee5eb;border-radius:8px}.admin-info h4{margin:0 0 1rem;color:#0c5460}.admin-info ul{margin-bottom:0;padding-left:1.5rem}.admin-info li{margin-bottom:.5rem;color:#0c5460}.user-info{margin-top:1.5rem;padding:1.5rem;background:#e8f4fd;border:1px solid #bee5eb;border-radius:8px}.user-info h4{margin:0 0 1rem;color:#0c5460}.user-info ul{margin-bottom:0;padding-left:1.5rem}.user-info li{margin-bottom:.5rem;color:#0c5460}.workspace-summary{background:#e8f4fd;padding:1rem;margin-bottom:1rem;border:1px solid #bee5eb;border-radius:8px}.workspace-summary h3{margin:0 0 .5rem;color:#0c5460;font-size:1.2rem}.workspace-details{margin-top:1rem;padding:1rem;background:#f0f8ff;border:1px solid #bee5eb;border-radius:8px}.workspace-details h4{margin:0 0 .5rem;color:#0c5460;font-size:1rem}.upload-form,.debug-info{background:#f8f9fa;padding:1.5rem;margin-bottom:1rem;border:1px solid #dee2e6;border-radius:8px}.debug-info h3{margin:0 0 1rem;color:#495057}.subscription-debug{background:#f0f8ff;padding:1.5rem;margin-bottom:1rem;border:1px solid #bee5eb;border-radius:8px}.subscription-debug h3{margin:0 0 1rem;color:#0c5460}.workspace-debug{background:#fff3cd;padding:1.5rem;margin-bottom:1rem;border:1px solid #ffeaa7;border-radius:8px}.workspace-debug h3{margin:0 0 1rem;color:#856404}.api-debug{background:#e8f5e8;padding:1.5rem;margin-bottom:1rem;border:1px solid #7dcea0;border-radius:8px}.api-debug h3{margin:0 0 1rem;color:#155724}.env-debug{background:#fee;padding:1.5rem;border:1px solid #fcc;border-radius:8px}.env-debug h3{margin:0 0 1rem;color:#721c24}.btn-success{background-color:#28a745;border-color:#28a745;color:#fff}.btn-success:hover{background-color:#218838;border-color:#1e7e34}.btn-warning{background-color:#ffc107;border-color:#ffc107;color:#212529}.btn-warning:hover{background-color:#e0a800;border-color:#d39e00}.btn-secondary{background-color:#6c757d;border-color:#6c757d;color:#fff}.btn-secondary:hover{background-color:#545b62;border-color:#4e555b}.admin-card.current-user{background:#e8f5e8!important;border-color:#28a745}.current-user-badge{background:#28a745;color:#fff;padding:.2rem .5rem;border-radius:12px;font-size:.8rem;margin-left:.5rem}.admin-loading,.user-loading{text-align:center;padding:2rem;color:#6c757d}.admin-error,.user-error{background:#f8d7da;color:#721c24;padding:1rem;border-radius:4px;margin-bottom:1rem;border:1px solid #f5c6cb}@media (max-width: 768px){.tabs-header{flex-direction:column}.tab-button{padding:.75rem 1rem;text-align:left;border-bottom:1px solid #ddd}.tab-button.active{border-bottom:1px solid #007bff;background:#007bff;color:#fff}.admin-add-form,.user-add-form,.report-add-form{padding:1rem}.license-summary div,.workspace-summary div{grid-template-columns:1fr}.table-header,.table-row{font-size:.8rem;padding:.5rem;gap:.5rem}@media (max-width: 600px){.reports-table .table-header,.reports-table .table-row,.admins-table .table-header,.admins-table .table-row,.users-table .table-header,.users-table .table-row{grid-template-columns:1fr}}}.btn{transition:all .3s ease;border:1px solid transparent;padding:.4rem .8rem;border-radius:4px;font-size:.9rem;cursor:pointer;text-decoration:none;display:inline-block}.btn:hover{transform:translateY(-1px);box-shadow:0 2px 4px #0003}.btn:disabled{transform:none;opacity:.6;cursor:not-allowed}.btn-primary{background-color:#007bff;border-color:#007bff;color:#fff}.btn-primary:hover{background-color:#0069d9;border-color:#0062cc}.btn-danger{background-color:#dc3545;border-color:#dc3545;color:#fff}.btn-danger:hover{background-color:#c82333;border-color:#bd2130}.alert{border-radius:8px;padding:1rem 1.5rem;margin-bottom:1rem;border:1px solid transparent}.alert-success{background-color:#d1f2eb;border-color:#7dcea0;color:#0e6b20}.alert-error{background-color:#f8d7da;border-color:#f5c6cb;color:#721c24}.section{background:#fff;padding:1.5rem;margin-bottom:1.5rem;border-radius:8px;box-shadow:0 2px 4px #0000001a}.section h2{margin:0 0 1rem;color:#495057;border-bottom:2px solid #007bff;padding-bottom:.5rem}code{font-family:Monaco,Consolas,Courier New,monospace;background-color:#f8f9fa;padding:2px 4px;border-radius:3px;font-size:.85em;color:#e83e8c}.dimension-manager{margin-top:2rem}.dimension-card{transition:transform .2s ease}.dimension-card:hover{transform:translateY(-2px)}@media (max-width: 768px){.dimensions-grid{grid-template-columns:1fr!important}.modal-content{width:95%!important}}@keyframes fillBar{0%{width:0}to{width:100%}}.usage-fill{animation:fillBar .5s ease-out}.modal-overlay{animation:fadeIn .2s ease-out}.modal-content{animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.dimension-manager.loading{animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.customer-embedding-management{padding:1.5rem;max-width:1200px;margin:0 auto}.customer-embedding-management h2{margin-bottom:1rem;color:#333}.customer-embedding-management h3{margin-bottom:.75rem;color:#495057;font-size:1.25rem}.customer-embedding-management .section{margin-bottom:2rem}.customer-embedding-management .alert{padding:.75rem 1.25rem;margin-bottom:1rem;border:1px solid transparent;border-radius:.375rem}.customer-embedding-management .alert-danger{color:#721c24;background-color:#f8d7da;border-color:#f5c6cb}.customer-embedding-management .alert-warning{color:#856404;background-color:#fff3cd;border-color:#ffeaa7}.customer-embedding-management .btn{padding:.5rem 1rem;border:none;border-radius:.375rem;cursor:pointer;font-size:.9rem;transition:all .2s}.customer-embedding-management .btn:disabled{opacity:.6;cursor:not-allowed}.customer-embedding-management .btn-primary{background-color:#007bff;color:#fff}.customer-embedding-management .btn-primary:hover:not(:disabled){background-color:#0056b3}.customer-embedding-management .btn-secondary{background-color:#6c757d;color:#fff}.customer-embedding-management .btn-secondary:hover:not(:disabled){background-color:#545b62}.customer-embedding-management .btn-danger{background-color:#dc3545;color:#fff}.customer-embedding-management .btn-danger:hover:not(:disabled){background-color:#c82333}.customer-embedding-management .btn-warning{background-color:#ffc107;color:#212529}.customer-embedding-management .btn-warning:hover:not(:disabled){background-color:#e0a800}.customer-embedding-management .btn-sm{padding:.25rem .5rem;font-size:.8rem}.customer-embedding-management .form-control{padding:.5rem;border:1px solid #ced4da;border-radius:.375rem;font-size:.9rem;flex:1}.customer-embedding-management .form-control:focus{outline:none;border-color:#80bdff;box-shadow:0 0 0 .2rem #007bff40}.customer-embedding-management .form-control:disabled{background-color:#e9ecef;opacity:1}.customer-embedding-management .switch{position:relative;display:inline-block;width:50px;height:24px}.customer-embedding-management .switch input{opacity:0;width:0;height:0}.customer-embedding-management .slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#ccc;transition:.4s}.customer-embedding-management .slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.4s}.customer-embedding-management input:checked+.slider{background-color:#28a745}.customer-embedding-management input:focus+.slider{box-shadow:0 0 1px #28a745}.customer-embedding-management input:checked+.slider:before{transform:translate(26px)}.customer-embedding-management .slider.round{border-radius:24px}.customer-embedding-management .slider.round:before{border-radius:50%}.customer-embedding-management pre{margin:0;white-space:pre-wrap;word-wrap:break-word;font-family:Consolas,Monaco,Courier New,monospace}.customer-embedding-management code{font-family:Consolas,Monaco,Courier New,monospace;font-size:.875rem}@media (max-width: 768px){.customer-embedding-management{padding:1rem}.customer-embedding-management .section{padding:1rem!important}.customer-embedding-management code{font-size:.75rem}}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh}#root{min-height:100vh;padding:20px}.container{max-width:1200px;margin:0 auto;background:#fff;border-radius:12px;box-shadow:0 20px 40px #0000001a;overflow:hidden}.header{background:linear-gradient(90deg,#4f46e5,#7c3aed);color:#fff;padding:30px;text-align:center}.header h1{font-size:2.5rem;margin-bottom:10px;font-weight:600}.header p{font-size:1.1rem;opacity:.9}.content{padding:40px}.section{margin-bottom:40px;padding:25px;border:1px solid #e5e7eb;border-radius:8px;background:#f9fafb}.section h2{color:#374151;margin-bottom:20px;font-size:1.5rem;font-weight:600}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-weight:500;color:#374151}.form-group input,.form-group select{width:100%;padding:12px;border:1px solid #d1d5db;border-radius:6px;font-size:16px;transition:border-color .2s}.form-group input:focus,.form-group select:focus{outline:none;border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e51a}.file-input{padding:20px;border:2px dashed #d1d5db;border-radius:6px;text-align:center;background:#fff;cursor:pointer;transition:all .2s}.file-input:hover{border-color:#4f46e5;background:#f8faff}.file-input.dragover{border-color:#4f46e5;background:#f0f4ff}.btn{padding:12px 24px;border:none;border-radius:6px;font-weight:500;cursor:pointer;transition:all .2s;font-size:14px;margin-right:10px;margin-bottom:0}.btn-primary{background:#4f46e5;color:#fff}.btn-primary:hover{background:#4338ca}.btn-primary:disabled{background:#9ca3af;cursor:not-allowed}.btn-danger{background:#ef4444;color:#fff}.btn-danger:hover{background:#dc2626}.btn-secondary{background:#6b7280;color:#fff}.btn-secondary:hover{background:#4b5563}.alert{padding:12px 16px;border-radius:6px;margin-bottom:20px;font-weight:500}.alert-success{background:#d1fae5;color:#065f46;border:1px solid #a7f3d0}.alert-error{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5}.alert-info{background:#dbeafe;color:#1e40af;border:1px solid #93c5fd}.loading{display:inline-block;width:20px;height:20px;border:3px solid #f3f3f3;border-top:3px solid #4f46e5;border-radius:50%;animation:spin 1s linear infinite;margin-right:10px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.reports-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;margin-top:20px}.report-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:20px;box-shadow:0 2px 4px #0000001a}.report-card h3{color:#374151;margin-bottom:10px;font-size:1.1rem}.report-card p{color:#6b7280;font-size:.9rem;margin-bottom:15px}.two-column{display:grid;grid-template-columns:1fr 1fr;gap:20px}@media (max-width: 768px){.two-column{grid-template-columns:1fr}.content,.header{padding:20px}.header h1{font-size:2rem}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0009;display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .2s ease-in}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:#fff;padding:2rem;border-radius:12px;max-width:500px;width:90%;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;animation:slideIn .3s ease-out}@keyframes slideIn{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-content h2{margin-top:0;margin-bottom:1rem;color:#374151;font-size:1.5rem}.modal-content p{margin-bottom:.75rem;color:#6b7280;line-height:1.6}.modal-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.5rem}.btn-secondary{background:#e5e7eb;color:#374151;padding:.625rem 1.25rem;border:none;border-radius:6px;font-weight:500;cursor:pointer;transition:all .2s}.btn-secondary:hover{background:#d1d5db}.btn-danger{background:#dc2626;color:#fff;padding:.625rem 1.25rem;border:none;border-radius:6px;font-weight:500;cursor:pointer;transition:all .2s}.btn-danger:hover{background:#b91c1c}.table-row{transition:background-color .2s ease}.table-row:hover{background:#e8f4fd!important}.table-row.current-user-row:hover{background:#d4edda!important}.table-container{max-height:60vh;overflow-y:auto;overflow-x:auto;border:1px solid #dee2e6;border-radius:8px;background:#fff;-webkit-overflow-scrolling:touch}.data-table{width:100%;border-collapse:collapse;font-size:.9rem}.data-table thead{position:sticky;top:0;z-index:10;background:#f8f9fa}.data-table th{padding:.75rem 1rem;text-align:left;font-weight:700;color:#495057;border-bottom:2px solid #dee2e6;background:#f8f9fa}.data-table td{padding:.75rem 1rem;border-bottom:1px solid #dee2e6;color:#495057;vertical-align:middle}.data-table tbody tr{transition:background-color .2s ease}.data-table tbody tr:nth-child(2n){background:#f8f9fa}.data-table tbody tr:nth-child(odd){background:#fff}.data-table tbody tr:hover{background:#e8f4fd!important}.data-table tbody tr.current-user-row{background:#e8f5e8!important}.data-table tbody tr.current-user-row:hover{background:#d4edda!important}.data-table td .btn{margin-bottom:0}
