.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;font-family:Arial,sans-serif}.modal-content{background-color:#fff;padding:24px;border-radius:8px;width:100%;max-width:500px;box-shadow:0 10px 25px #00000080}.modal-content h2,.modal-content h3{margin:0 0 20px;font-size:20px;font-weight:700;color:#333}.modal-content p{margin-bottom:16px;color:#333}.modal-content form{display:flex;flex-direction:column;gap:16px}.modal-content label{display:flex;flex-direction:column;gap:8px;font-weight:500;color:#333;margin-bottom:6px}.modal-content input,.modal-content select,.modal-content textarea{padding:8px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;font-family:Arial,sans-serif;width:100%}.modal-content input:disabled,.modal-content textarea:disabled,.modal-content select:disabled{background-color:#f5f5f5;color:#999;cursor:not-allowed;border-color:#ddd}.modal-content textarea{min-height:100px;resize:vertical}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}.modal-actions button{padding:10px 16px;font-size:14px;font-weight:700;border-radius:6px;cursor:pointer;border:none}.modal-actions .cancel-button{background-color:#f4f4f4;color:#333}.modal-actions .cancel-button:hover{background-color:#e0e0e0}.modal-actions .confirm-button{background-color:#1f80e0;color:#fff}.modal-actions .confirm-button:hover{background-color:#176dc2}.modal-actions .delete-button{background-color:#e74c3c;color:#fff}.modal-actions .delete-button:hover{background-color:#c0392b}.submit-button{background:#1f80e0;color:#fff}.submit-button:hover{background-color:#176dc2}.save-button{background:#1f80e0;color:#fff}.save-button:hover{background-color:#176dc2}.delete-confirm-button{background-color:#e74c3c;color:#fff}.delete-confirm-button:hover{background-color:#c0392b}.admin-container,.admin-content,.admin-page,.dashboard-container,.applications-main,.tokens-main,.studies-main,.users-main,.endpoints-main,.providers-main{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.dashboard-container{min-height:100vh;background-color:#f5f5f5}.applications-main,.tokens-main,.studies-main,.users-main,.endpoints-main,.providers-main{max-width:1200px;margin:0 auto;padding:20px}.header-section{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px;gap:20px}.page-title{font-size:28px;font-weight:600;color:#333;margin:0 0 8px}.page-description{color:#666;margin:0;font-size:16px}.header-actions{display:flex;gap:12px;align-items:center}.search-box{position:relative}.search-box input{padding:10px 16px;border:1px solid #ddd;border-radius:6px;font-size:14px;min-width:300px;background-color:#fff}.search-box input:focus{outline:none;border-color:#1f80e0;box-shadow:0 0 0 2px #1f80e01a}.stats-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}.stat-card{background-color:#fff;padding:20px;border-radius:8px;box-shadow:0 1px 3px #0000001a;border:1px solid #e5e7eb}.stat-card h3{font-size:14px;color:#666;margin:0 0 8px;font-weight:500}.stat-value{font-size:24px;font-weight:700;color:#1f80e0;margin:0}.table-wrapper{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;overflow:hidden;border:1px solid #e5e7eb}.applications-table,.tokens-table,.studies-table,.users-table,.endpoints-table,.providers-table{width:100%;border-collapse:collapse;font-size:14px}.applications-table th,.tokens-table th,.studies-table th,.users-table th,.endpoints-table th,.providers-table th{background-color:#f8f9fa;padding:12px 16px;text-align:left;font-weight:600;color:#374151;border-bottom:1px solid #e5e7eb;font-size:13px;text-transform:uppercase;letter-spacing:.5px}.applications-table td,.tokens-table td,.studies-table td,.users-table td,.endpoints-table td,.providers-table td{padding:12px 16px;border-bottom:1px solid #f3f4f6;vertical-align:middle}.applications-table tr:hover,.tokens-table tr:hover,.studies-table tr:hover,.users-table tr:hover,.endpoints-table tr:hover,.providers-table tr:hover{background-color:#f9fafb}.sortable-header{display:inline-flex;align-items:center;gap:4px;cursor:pointer;user-select:none}.sort-icons{display:flex;flex-direction:column;font-size:10px;line-height:10px;color:#aaa}.sort-icons span.active{color:#1f80e0;font-weight:700}.add-button{background-color:#1f80e0;color:#fff;padding:10px 16px;border:none;border-radius:6px;font-weight:600;cursor:pointer;font-size:14px;transition:background-color .2s ease}.add-button:hover{background-color:#176dc2}.add-button:disabled{background-color:#ccc;cursor:not-allowed}.cancel-button{background-color:#f8f9fa;color:#495057;padding:10px 16px;border:1px solid #dee2e6;border-radius:6px;font-weight:500;cursor:pointer;font-size:14px;transition:all .2s ease}.cancel-button:hover{background-color:#e9ecef;border-color:#ced4da;color:#212529}.confirm-button,.save-button,.submit-button{background-color:#1f80e0;color:#fff;padding:10px 16px;border:none;border-radius:6px;font-weight:600;cursor:pointer;font-size:14px;transition:background-color .2s ease}.confirm-button:hover,.save-button:hover,.submit-button:hover{background-color:#176dc2}.delete-button,.delete-confirm-button{background-color:#dc3545;color:#fff;padding:10px 16px;border:none;border-radius:6px;font-weight:600;cursor:pointer;font-size:14px;transition:background-color .2s ease}.delete-button:hover,.delete-confirm-button:hover{background-color:#c82333}.icon-edit-button,.icon-delete-button,.icon-copy-button,.icon-manage-button,.icon-launch-button,.icon-stats-button{background:none;border:none;font-size:16px;cursor:pointer;padding:4px;margin-left:8px;border-radius:4px;transition:all .2s ease}.icon-edit-button{color:#4f46e5}.icon-edit-button:hover{color:#1f2937;background-color:#f3f4f6}.icon-delete-button{color:#e74c3c}.icon-delete-button:hover{color:#c82333;background-color:#fef2f2}.icon-copy-button{color:#6b7280}.icon-copy-button:hover{color:#374151;background-color:#f3f4f6}.icon-manage-button{color:#1f80e0}.icon-manage-button:hover{color:#176dc2;background-color:#eff6ff}.icon-launch-button{color:#28a745}.icon-launch-button:hover{color:#218838;background-color:#f0f9f0}.icon-stats-button{color:#6f42c1}.icon-stats-button:hover{color:#5a2d91;background-color:#f3f0ff}.icon-edit-button:disabled,.icon-delete-button:disabled,.icon-copy-button:disabled,.icon-manage-button:disabled,.icon-launch-button:disabled,.icon-stats-button:disabled{color:#ccc;cursor:not-allowed}.icon-edit-button:disabled:hover,.icon-delete-button:disabled:hover,.icon-copy-button:disabled:hover,.icon-manage-button:disabled:hover,.icon-launch-button:disabled:hover,.icon-stats-button:disabled:hover{background-color:transparent}.copy-button{background:none;border:none;color:#666;cursor:pointer;padding:.25rem;border-radius:4px;transition:all .2s ease;flex-shrink:0}.copy-button:hover{background-color:#f0f0f0;color:#333}.status-badge{padding:4px 8px;border-radius:12px;font-size:12px;font-weight:600;display:inline-block}.status-badge.active{background:#e6ffed;color:#22863a}.status-badge.inactive{background:#ffecec;color:#b30000}.status-toggle-button{border:none;cursor:pointer;transition:all .2s ease;font-size:12px;font-weight:600;padding:4px 8px;border-radius:12px}.status-toggle-button:hover{transform:scale(1.05);box-shadow:0 2px 4px #0000001a}.status-toggle-button.active:hover{background:#d4edda}.status-toggle-button.inactive:hover{background:#f8d7da}.switch-row{display:flex;align-items:center;gap:12px;margin-bottom:8px}.switch{position:relative;display:inline-block;width:38px;height:22px}.switch-input{opacity:0;width:0;height:0}.switch-slider{position:absolute;cursor:pointer;inset:0;background:#ccc;border-radius:22px;transition:background .2s}.switch-slider:before{content:"";position:absolute;left:3px;top:3px;width:16px;height:16px;background:#fff;border-radius:50%;transition:transform .2s}.switch-input:checked+.switch-slider{background:#1f80e0}.switch-input:checked+.switch-slider:before{transform:translate(16px)}.switch-text{font-weight:600;font-size:15px;color:#333}.switch-text.disabled{color:#999;font-style:italic}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background:#fff;padding:24px;border-radius:8px;box-shadow:0 4px 6px #0000001a;max-width:500px;width:90%;max-height:90vh;overflow-y:auto}.modal-content h2{margin-top:0;margin-bottom:20px;color:#333;font-size:20px;font-weight:700}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:4px;font-weight:600;color:#374151;font-size:14px}.form-group input,.form-group textarea,.form-group select{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;box-sizing:border-box;background-color:#fff}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:#1f80e0;box-shadow:0 0 0 2px #1f80e01a}.form-group textarea{resize:vertical;min-height:80px}.form-group input:disabled,.form-group textarea:disabled,.form-group select:disabled{background-color:#f5f5f5;color:#999;cursor:not-allowed;border-color:#ddd}.checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer}.checkbox-label input[type=checkbox]{width:auto;margin:0}.info-panel{background-color:#d1ecf1;border:1px solid #bee5eb;border-radius:6px;padding:12px;margin-top:8px}.info-panel p{margin:0;color:#0c5460;font-size:14px;line-height:1.4}.warning-panel{background-color:#fff3cd;border:1px solid #ffeaa7;border-radius:6px;padding:12px;margin-top:8px}.warning-panel p{margin:0;color:#856404;font-size:14px;line-height:1.4}.error-box{background-color:#fee2e2;border:1px solid #fecaca;color:#dc2626;padding:16px;border-radius:8px;margin:20px 0}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}.text-right{text-align:right}.no-data{text-align:center;padding:20px;color:#666}.loader{text-align:center;padding:40px;color:#666;font-size:16px}.application-id,.client-id,.token-id{font-family:monospace;font-size:.9em;color:#666;word-break:break-all}.application-id-container,.client-id-container,.token-id-container{display:flex;align-items:center;gap:.5rem}@media (max-width: 768px){.header-section,.header-actions{flex-direction:column;align-items:stretch}.search-box input{min-width:auto;width:100%}.stats-cards{grid-template-columns:1fr}.modal-actions{flex-direction:column}.modal-actions button{width:100%}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-spinner{border:4px solid #f3f3f3;border-top:4px solid #1f80e0;border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite;margin:40px auto}
