.error-boundary{min-height:100vh;display:flex;align-items:center;justify-content:center;background-color:#f7fafc;padding:20px}.error-boundary-content{max-width:600px;width:100%;background:#fff;border-radius:12px;padding:48px;box-shadow:0 4px 6px #0000001a;text-align:center}.error-icon{color:#ef4444;margin-bottom:24px}.error-boundary-content h1{font-size:28px;font-weight:700;color:#1a202c;margin:0 0 16px}.error-message{font-size:16px;color:#4a5568;margin:0 0 32px;line-height:1.6}.error-details{text-align:left;margin:24px 0;padding:16px;background-color:#f7fafc;border-radius:8px;border:1px solid #e2e8f0}.error-details summary{cursor:pointer;font-weight:600;color:#2d3748;margin-bottom:12px}.error-details pre{font-size:12px;color:#4a5568;overflow-x:auto;white-space:pre-wrap;word-wrap:break-word;margin:8px 0}.error-actions{display:flex;gap:12px;justify-content:center}.error-actions .btn{padding:12px 24px;font-size:15px;font-weight:600;border:none;border-radius:8px;cursor:pointer;transition:all .2s}.error-actions .btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.error-actions .btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.error-actions .btn-secondary{background:#fff;color:#4a5568;border:2px solid #e2e8f0}.error-actions .btn-secondary:hover{background-color:#f7fafc;border-color:#cbd5e0}.toast-container{position:fixed;top:20px;right:20px;z-index:9999;display:flex;flex-direction:column;gap:12px;max-width:400px;pointer-events:none}.toast{display:flex;align-items:center;gap:12px;padding:16px;border-radius:8px;box-shadow:0 4px 12px #00000026;background-color:#fff;border-left:4px solid;pointer-events:auto;animation:slideIn .3s ease-out;min-width:300px;max-width:400px}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.toast-success{border-left-color:#10b981}.toast-success .toast-icon{color:#10b981}.toast-error{border-left-color:#ef4444}.toast-error .toast-icon{color:#ef4444}.toast-warning{border-left-color:#f59e0b}.toast-warning .toast-icon{color:#f59e0b}.toast-info{border-left-color:#3b82f6}.toast-info .toast-icon{color:#3b82f6}.toast-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center}.toast-message{flex:1;font-size:14px;line-height:1.5;color:#1f2937;word-break:break-word}.toast-close{flex-shrink:0;background:none;border:none;padding:4px;cursor:pointer;color:#6b7280;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.toast-close:hover{background-color:#f3f4f6;color:#374151}.toast-close:focus{outline:2px solid #3b82f6;outline-offset:2px}@media(max-width:640px){.toast-container{top:10px;right:10px;left:10px;max-width:none}.toast{min-width:auto;max-width:none}}.admin-login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px}[data-theme=dark] .admin-login-container{background:linear-gradient(135deg,#4c5fd5,#5a3d8a)}.admin-login-card{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;max-width:440px;width:100%;padding:40px}[data-theme=dark] .admin-login-card{background:#1f2937;box-shadow:0 20px 60px #00000080}.admin-login-header{text-align:center;margin-bottom:32px}.admin-login-header h1{font-size:28px;font-weight:700;color:#1a202c;margin:0 0 8px}[data-theme=dark] .admin-login-header h1{color:#f9fafb}.admin-login-header p{font-size:14px;color:#718096;margin:0}[data-theme=dark] .admin-login-header p{color:#9ca3af}.admin-login-form{margin-bottom:24px}.form-group label{display:block;font-size:14px;font-weight:600;color:#2d3748;margin-bottom:8px}[data-theme=dark] .form-group label{color:#e5e7eb}.form-group input{width:100%;padding:12px 16px;font-size:15px;border:2px solid #e2e8f0;border-radius:8px;transition:all .2s;box-sizing:border-box;background-color:#fff;color:#1a202c}[data-theme=dark] .form-group input{background-color:#374151;border-color:#4b5563;color:#f9fafb}.form-group input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}[data-theme=dark] .form-group input:focus{border-color:#818cf8;box-shadow:0 0 0 3px #818cf833}.form-group input:disabled{background-color:#f7fafc;cursor:not-allowed}[data-theme=dark] .form-group input:disabled{background-color:#1f2937}.form-group input::placeholder{color:#a0aec0}[data-theme=dark] .form-group input::placeholder{color:#6b7280}.password-input-wrapper{position:relative}.password-input-wrapper input{padding-right:48px}.password-toggle{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;color:#718096;transition:color .2s}[data-theme=dark] .password-toggle{color:#9ca3af}.password-toggle:hover{color:#2d3748}[data-theme=dark] .password-toggle:hover{color:#e5e7eb}.password-toggle:focus{outline:none}.btn{width:100%;padding:12px 24px;font-size:15px;font-weight:600;border:none;border-radius:8px;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.alert{padding:12px 16px;border-radius:8px;font-size:14px;display:flex;align-items:flex-start;gap:12px;margin-top:16px}.alert svg{flex-shrink:0;margin-top:2px}.alert-success{background-color:#f0fdf4;color:#166534;border:1px solid #bbf7d0}.alert-error{background-color:#fef2f2;color:#991b1b;border:1px solid #fecaca}.admin-login-footer{margin-top:24px;padding-top:24px;border-top:1px solid #e2e8f0;text-align:center}[data-theme=dark] .admin-login-footer{border-top-color:#4b5563}.admin-login-footer p{font-size:13px;color:#718096;margin:0;display:flex;align-items:center;justify-content:center;gap:8px}[data-theme=dark] .admin-login-footer p{color:#9ca3af}.admin-login-footer svg{flex-shrink:0}.admin-dashboard{padding:32px;max-width:1200px;margin:0 auto}.dashboard-header{margin-bottom:40px;display:flex;justify-content:space-between;align-items:center}.dashboard-header h1{font-size:32px;font-weight:700;color:#1a202c;margin:0 0 8px}.dashboard-header p{font-size:16px;color:#718096;margin:0}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px;margin-bottom:40px}.dashboard-card{background:#fff;border-radius:12px;padding:32px;box-shadow:0 1px 3px #0000001a;transition:all .3s;text-decoration:none;color:inherit;position:relative;overflow:hidden;border:2px solid transparent}.dashboard-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--card-color);transform:scaleX(0);transition:transform .3s}.dashboard-card:hover{transform:translateY(-4px);box-shadow:0 12px 24px #00000026;border-color:var(--card-color)}.dashboard-card:hover:before{transform:scaleX(1)}.card-icon{margin-bottom:16px}.dashboard-card h3{font-size:20px;font-weight:600;color:#1a202c;margin:0 0 8px}.dashboard-card p{font-size:14px;color:#718096;margin:0 0 16px;line-height:1.6}.card-arrow{color:var(--card-color);opacity:0;transform:translate(-8px);transition:all .3s}.dashboard-card:hover .card-arrow{opacity:1;transform:translate(0)}.dashboard-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px}.info-card{background:#fff;border-radius:12px;padding:24px;box-shadow:0 1px 3px #0000001a}.info-card h3{font-size:18px;font-weight:600;color:#1a202c;margin:0 0 16px}.info-card p{font-size:14px;color:#4a5568;line-height:1.6;margin:0}.info-card ul{margin:0;padding-left:20px}.info-card li{font-size:14px;color:#4a5568;line-height:1.8;margin-bottom:8px}.info-card li:last-child{margin-bottom:0}@media(max-width:768px){.admin-dashboard{padding:20px}.dashboard-header h1{font-size:24px}.dashboard-grid,.dashboard-info{grid-template-columns:1fr}}.spinner{border-radius:50%;border-style:solid;border-color:#e5e7eb;border-top-color:#3b82f6;animation:spin 1s linear infinite}.spinner-small{width:16px;height:16px;border-width:2px}.spinner-medium{width:32px;height:32px;border-width:3px}.spinner-large{width:48px;height:48px;border-width:4px}.spinner-message{font-size:14px;color:#6b7280;text-align:center;margin:0}.loading-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background-color:#fffc;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:10;border-radius:inherit}.loading-overlay-content{display:flex;flex-direction:column;align-items:center;gap:16px;padding:24px;background-color:#fff;border-radius:8px;box-shadow:0 4px 12px #0000001a}.progress-bar{width:100%;height:8px;background-color:#e5e7eb;border-radius:4px;overflow:hidden}.progress-bar-fill{height:100%;background-color:#3b82f6;transition:width .3s ease;border-radius:4px}.progress-text{font-size:12px;color:#6b7280;text-align:center;margin-top:8px}.tenant-list{padding:2rem;max-width:1400px;margin:0 auto}.tenant-list-header{margin-bottom:2rem}.tenant-list-header .header-content{display:flex;justify-content:space-between;align-items:flex-start;gap:2rem}.tenant-list-header h1{font-size:2rem;font-weight:600;color:#1a202c;margin-bottom:.5rem}.tenant-list-header p{color:#718096;font-size:1rem}.btn-create-tenant{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background-color:#3b82f6;color:#fff;border:none;border-radius:.5rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-create-tenant:hover{background-color:#2563eb;box-shadow:0 4px 6px #2563eb33}.btn-create-tenant:active{background-color:#1d4ed8}.tenant-filters{display:flex;gap:1rem;margin-bottom:2rem;flex-wrap:wrap}.error-message svg{flex-shrink:0}.tenant-list .loading-state .spinner{margin-bottom:1rem}.tenant-table-container{background:#fff;border-radius:.5rem;box-shadow:0 1px 3px #0000001a;overflow-x:auto}.tenant-table{width:100%;border-collapse:collapse}.tenant-table thead{background-color:#f7fafc;border-bottom:2px solid #e2e8f0}.tenant-table th{padding:1rem;text-align:left;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#4a5568;white-space:nowrap}.tenant-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s}.tenant-table th.sortable:hover{background-color:#edf2f7}.sort-indicator{margin-left:.5rem;color:#667eea}.tenant-table tbody tr{border-bottom:1px solid #e2e8f0;transition:background-color .2s}.tenant-row{cursor:pointer}.tenant-row:hover{background-color:#f7fafc}.tenant-table td{padding:1rem;font-size:.875rem;color:#2d3748}.tenant-name{font-weight:500;color:#1a202c}.tenant-email{color:#718096}.status-badge,.tier-badge{display:inline-block;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:500;text-transform:capitalize}.status-trial{background-color:#bee3f8;color:#2c5282}.status-cancelled{background-color:#e2e8f0;color:#4a5568}.tier-solo{background-color:#e6fffa;color:#234e52}.tier-team{background-color:#fef5e7;color:#744210}.tier-facility{background-color:#fce7f3;color:#702459}.tenant-mrr{font-weight:500;color:#2f855a}.tenant-users,.tenant-storage{color:#4a5568}.tenant-date{color:#718096;font-size:.8125rem}.tenant-payment{font-size:.8125rem}.payment-amount{color:#718096;margin-top:.25rem}.health-score{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;font-weight:600;font-size:.875rem}.health-good{background-color:#c6f6d5;color:#22543d}.health-medium{background-color:#fef5e7;color:#744210}.health-poor{background-color:#fed7d7;color:#742a2a}@media(max-width:1024px){.tenant-table-container{overflow-x:scroll}.tenant-table{min-width:1200px}}@media(max-width:768px){.tenant-list{padding:1rem}.tenant-filters{flex-direction:column}.filter-group{min-width:100%}}.tenant-detail{padding:2rem;max-width:1400px;margin:0 auto}.tenant-detail-loading,.tenant-detail-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;color:var(--text-secondary, #718096)}.tenant-detail-error svg{margin-bottom:1rem;color:var(--error-text, #e53e3e)}.tenant-detail-error h2{font-size:1.5rem;color:var(--text-primary, #2d3748);margin-bottom:1rem}.back-button{padding:.75rem 1.5rem;background-color:var(--primary-color, #667eea);color:#fff;border:none;border-radius:.5rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:background-color .2s}.back-button:hover{background-color:var(--primary-hover, #5568d3)}.tenant-detail-header{margin-bottom:2rem}.back-link{display:inline-flex;align-items:center;color:var(--primary-color, #667eea);text-decoration:none;font-size:.875rem;font-weight:500;margin-bottom:1rem;background:none;border:none;cursor:pointer;transition:color .2s}.back-link:hover{color:var(--primary-hover, #5568d3)}.header-content{display:flex;justify-content:space-between;align-items:flex-start;gap:2rem}.header-info h1{font-size:2rem;font-weight:600;color:var(--text-primary, #1a202c);margin-bottom:.5rem}.tenant-owner{color:var(--text-secondary, #718096);font-size:1rem;margin-bottom:1rem}.header-badges{display:flex;gap:.5rem}.header-actions{display:flex;gap:.75rem}.action-button{padding:.75rem 1.5rem;border:none;border-radius:.5rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.action-button:disabled{opacity:.5;cursor:not-allowed}.activate-button{background-color:#48bb78;color:#fff}.activate-button:hover:not(:disabled){background-color:#38a169}.suspend-button{background-color:#f56565;color:#fff}.suspend-button:hover:not(:disabled){background-color:#e53e3e}.adjust-button{background-color:var(--primary-color, #667eea);color:#fff}.adjust-button:hover:not(:disabled){background-color:var(--primary-hover, #5568d3)}.delete-button{background-color:#dc2626;color:#fff}.delete-button:hover:not(:disabled){background-color:#b91c1c}.tenant-detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.detail-card{background:var(--card-bg, white);border-radius:.5rem;box-shadow:var(--card-shadow, 0 1px 3px rgba(0, 0, 0, .1));border:1px solid var(--card-border, transparent);padding:1.5rem}.detail-card.full-width{grid-column:1 / -1}.detail-card h2{font-size:1.25rem;font-weight:600;color:var(--text-primary, #1a202c);margin-bottom:1.5rem}.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.detail-item{display:flex;flex-direction:column;gap:.5rem}.detail-label{font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary, #718096)}.detail-value{font-size:1rem;color:var(--text-primary, #2d3748);font-weight:500}.detail-value.mrr{color:var(--success-text, #2f855a);font-size:1.25rem}.detail-value.health-score-good{color:var(--success-text, #2f855a)}.detail-value.health-score-medium{color:var(--warning-text, #d69e2e)}.detail-value.health-score-poor{color:var(--error-text, #e53e3e)}.metrics-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.metric-item{display:flex;align-items:center;gap:1rem;padding:1rem;background-color:var(--surface-secondary, #f7fafc);border-radius:.5rem}.metric-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:.5rem;flex-shrink:0}.metric-content{flex:1}.metric-value{font-size:1.5rem;font-weight:600;color:var(--text-primary, #1a202c)}.metric-label{font-size:.875rem;color:var(--text-secondary, #718096);margin-top:.25rem}.billing-table-container{overflow-x:auto}.billing-table{width:100%;border-collapse:collapse}.billing-table thead{background-color:var(--table-header-bg, #f7fafc);border-bottom:2px solid var(--table-border, #e2e8f0)}.billing-table th{padding:.75rem 1rem;text-align:left;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary, #4a5568)}.billing-table td{padding:.75rem 1rem;font-size:.875rem;color:var(--text-primary, #2d3748);border-bottom:1px solid var(--table-border, #e2e8f0)}.transaction-type,.transaction-status{display:inline-block;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:500;text-transform:capitalize}.type-payment{background-color:var(--success-bg, #c6f6d5);color:var(--success-text, #22543d)}.type-refund{background-color:var(--error-bg, #fed7d7);color:var(--error-text, #742a2a)}.type-credit{background-color:var(--info-bg, #bee3f8);color:var(--info-text, #2c5282)}.type-adjustment{background-color:var(--warning-bg, #fef5e7);color:var(--warning-text, #744210)}.status-success{background-color:var(--success-bg, #c6f6d5);color:var(--success-text, #22543d)}.status-failed{background-color:var(--error-bg, #fed7d7);color:var(--error-text, #742a2a)}.status-pending{background-color:var(--warning-bg, #fef5e7);color:var(--warning-text, #744210)}.amount-positive{color:var(--success-text, #2f855a);font-weight:500}.amount-negative{color:var(--error-text, #e53e3e);font-weight:500}.feature-flags-list{display:flex;flex-direction:column;gap:.75rem}.feature-flag-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background-color:var(--surface-secondary, #f7fafc);border-radius:.375rem}.flag-name{font-size:.875rem;color:var(--text-primary, #2d3748);font-weight:500}.flag-status{padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:500}.flag-status.enabled{background-color:var(--success-bg, #c6f6d5);color:var(--success-text, #22543d)}.flag-status.disabled{background-color:var(--surface-secondary, #e2e8f0);color:var(--text-secondary, #4a5568)}.activity-list{display:flex;flex-direction:column;gap:1rem}.activity-item{display:flex;gap:1rem;padding-bottom:1rem;border-bottom:1px solid var(--border-primary, #e2e8f0)}.activity-item:last-child{border-bottom:none;padding-bottom:0}.activity-time{font-size:.75rem;color:var(--text-secondary, #718096);white-space:nowrap;min-width:120px}.activity-content{flex:1}.activity-action{font-size:.875rem;color:var(--text-primary, #2d3748);font-weight:500;margin-bottom:.25rem}.activity-user{font-size:.75rem;color:var(--text-secondary, #718096)}.activity-details{font-size:.75rem;color:var(--text-secondary, #4a5568);margin-top:.25rem}.empty-message{color:var(--text-secondary, #718096);font-size:.875rem;text-align:center;padding:2rem}.modal-overlay{position:fixed;inset:0;background-color:var(--modal-overlay, rgba(0, 0, 0, .5));display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:var(--modal-bg, white);border-radius:.5rem;padding:2rem;max-width:500px;width:90%;max-height:90vh;overflow-y:auto}.modal-content h2{font-size:1.5rem;font-weight:600;color:var(--text-primary, #1a202c);margin-bottom:1rem}.modal-content p{color:var(--text-secondary, #718096);margin-bottom:1rem}.form-group label{font-size:.875rem;font-weight:500;color:var(--text-primary, #2d3748)}.modal-textarea,.modal-input,.modal-select{width:100%;padding:.75rem;border:1px solid var(--input-border, #e2e8f0);border-radius:.375rem;font-size:.875rem;font-family:inherit;transition:border-color .2s;background-color:var(--input-bg, white);color:var(--text-primary, #333)}.modal-textarea:focus,.modal-input:focus,.modal-select:focus{outline:none;border-color:var(--input-focus-border, #667eea);box-shadow:0 0 0 3px #667eea1a}.modal-textarea{resize:vertical;min-height:100px}.cancel-button{background-color:var(--surface-secondary, #e2e8f0);color:var(--text-primary, #4a5568)}.cancel-button:hover:not(:disabled){background-color:var(--surface-hover, #cbd5e0)}.confirm-button{background-color:var(--primary-color, #667eea);color:#fff}.confirm-button:hover:not(:disabled){background-color:var(--primary-hover, #5568d3)}.delete-modal{max-width:450px}.modal-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}.modal-header h2{margin:0}.delete-warning{background-color:var(--error-bg, #fef2f2);border:1px solid var(--error-bg, #fecaca);border-radius:.375rem;padding:1rem;color:var(--error-text, #991b1b);font-size:.875rem;margin-bottom:1rem}.delete-instruction{font-size:.875rem;color:var(--text-primary, #2d3748);margin-bottom:1rem}.delete-confirmation-input{margin-bottom:1.5rem;border-color:var(--error-bg, #fecaca)}.delete-confirmation-input:focus{border-color:#dc2626;box-shadow:0 0 0 3px #dc26261a}.delete-confirm-button{background-color:#dc2626;color:#fff}.delete-confirm-button:hover:not(:disabled){background-color:#b91c1c}.delete-confirm-button:disabled{background-color:var(--error-bg, #fecaca);cursor:not-allowed}@media(max-width:1024px){.tenant-detail-grid,.detail-grid,.metrics-grid{grid-template-columns:1fr}.header-content{flex-direction:column}.header-actions{width:100%}.action-button{flex:1}}@media(max-width:768px){.tenant-detail,.detail-card{padding:1rem}}.tenant-tabs{display:flex;gap:0;margin-bottom:1.5rem;border-bottom:2px solid var(--border-primary, #e2e8f0)}.tab-button{padding:.75rem 1.5rem;background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;font-size:.875rem;font-weight:500;color:var(--text-secondary, #718096);cursor:pointer;transition:all .2s}.tab-button:hover{color:var(--text-primary, #4a5568);background-color:var(--surface-secondary, #f7fafc)}.tab-button.active{color:var(--primary-color, #667eea);border-bottom-color:var(--primary-color, #667eea)}.tab-content{animation:fadeIn .2s ease-in-out}.tab-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;color:var(--text-secondary, #718096)}.data-table-container{overflow-x:auto}.data-table{width:100%;border-collapse:collapse}.data-table thead{background-color:var(--table-header-bg, #f7fafc);border-bottom:2px solid var(--table-border, #e2e8f0)}.data-table th{padding:.75rem 1rem;text-align:left;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary, #4a5568)}.data-table td{padding:.75rem 1rem;font-size:.875rem;color:var(--text-primary, #2d3748);border-bottom:1px solid var(--table-border, #e2e8f0)}.data-table tbody tr:hover{background-color:var(--table-row-hover, #f7fafc)}.user-name,.client-name{font-weight:500}.role-badges{display:flex;flex-wrap:wrap;gap:.25rem}.role-badge{display:inline-block;padding:.125rem .5rem;background-color:var(--info-bg, #e0e7ff);color:var(--info-text, #3730a3);border-radius:9999px;font-size:.75rem;font-weight:500}.status-pill{display:inline-block;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:500;text-transform:capitalize}.status-pill.status-active{background-color:var(--success-bg, #c6f6d5);color:var(--success-text, #22543d)}.status-pill.status-inactive,.status-pill.status-invited{background-color:var(--warning-bg, #fef5e7);color:var(--warning-text, #744210)}.status-pill.status-suspended{background-color:var(--error-bg, #fed7d7);color:var(--error-text, #742a2a)}.status-badge.status-active{background-color:var(--success-bg, #c6f6d5);color:var(--success-text, #22543d)}.status-badge.status-trial{background-color:var(--info-bg, #bee3f8);color:var(--info-text, #2c5282)}.status-badge.status-suspended{background-color:var(--error-bg, #fed7d7);color:var(--error-text, #742a2a)}.status-badge.status-cancelled{background-color:var(--surface-secondary, #e2e8f0);color:var(--text-secondary, #4a5568)}.tier-badge{display:inline-block;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:500;text-transform:capitalize}.tier-badge.tier-solo{background-color:var(--info-bg, #e0e7ff);color:var(--info-text, #3730a3)}.tier-badge.tier-team{background-color:var(--warning-bg, #fef5e7);color:var(--warning-text, #744210)}.tier-badge.tier-facility{background-color:#fce7f3;color:#702459}.spinner{width:40px;height:40px;border:3px solid var(--border-primary, #e2e8f0);border-top-color:var(--primary-color, #667eea);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}@keyframes spin{to{transform:rotate(360deg)}}.delete-row-button{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:none;border:1px solid var(--border-primary, #e2e8f0);border-radius:.375rem;color:var(--text-secondary, #718096);cursor:pointer;transition:all .2s}.delete-row-button:hover{background-color:var(--error-bg, #fee2e2);border-color:var(--error-bg, #fecaca);color:var(--error-text, #dc2626)}.delete-target-info{background-color:var(--surface-secondary, #f7fafc);border-radius:.375rem;padding:1rem;margin-bottom:1.5rem}.delete-target-info p{margin:.25rem 0;font-size:.875rem;color:var(--text-primary, #2d3748)}.delete-target-info p strong{color:var(--text-secondary, #718096);font-weight:500;margin-right:.5rem}.create-tenant{max-width:800px;margin:0 auto;padding:40px 20px}.create-tenant-header{margin-bottom:40px}.create-tenant-header h1{font-size:28px;font-weight:600;color:#1f2937;margin:0 0 8px}.create-tenant-header p{font-size:16px;color:#6b7280;margin:0}.create-tenant-form{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:32px;box-shadow:0 1px 3px #0000001a}.form-section{margin-bottom:32px}.form-section:last-of-type{margin-bottom:0}.form-section h2{font-size:18px;font-weight:600;color:#1f2937;margin:0 0 20px;padding-bottom:12px;border-bottom:1px solid #e5e7eb}.form-group{margin-bottom:20px}.form-group label{display:block;font-size:14px;font-weight:500;color:#374151;margin-bottom:8px}.form-group input[type=text],.form-group input[type=email],.form-group select{width:100%;padding:10px 12px;font-size:14px;border:1px solid #d1d5db;border-radius:6px;background-color:#fff;color:#1f2937;transition:border-color .2s,box-shadow .2s}.form-group input[type=text]:focus,.form-group input[type=email]:focus,.form-group select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-group input:disabled,.form-group select:disabled{background-color:#f3f4f6;color:#9ca3af;cursor:not-allowed}.form-help{font-size:13px;color:#6b7280;margin:6px 0 0}.form-group-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px}.color-input-wrapper{display:flex;align-items:center;gap:12px}.form-group input[type=color]{width:50px;height:40px;padding:2px;border:1px solid #d1d5db;border-radius:6px;cursor:pointer}.color-value{font-size:13px;color:#6b7280;font-family:Monaco,Courier New,monospace;background-color:#f3f4f6;padding:4px 8px;border-radius:4px}.form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:32px;padding-top:20px;border-top:1px solid #e5e7eb}.btn{padding:10px 20px;font-size:14px;font-weight:500;border:none;border-radius:6px;cursor:pointer;transition:all .2s}.btn-primary{background-color:#3b82f6;color:#fff}.btn-primary:hover:not(:disabled){background-color:#2563eb;box-shadow:0 4px 6px #2563eb33}.btn-secondary{background-color:#e5e7eb;color:#374151}.btn-secondary:hover:not(:disabled){background-color:#d1d5db}@media(max-width:640px){.create-tenant{padding:20px 16px}.create-tenant-form{padding:20px}.form-group-row{grid-template-columns:1fr}.form-actions{flex-direction:column-reverse}.form-actions .btn{width:100%}}.user-management{padding:2rem;max-width:1600px;margin:0 auto}.user-management-header{margin-bottom:2rem}.user-management-header h1{font-size:2rem;font-weight:600;color:#1a202c;margin-bottom:.5rem}.user-management-header p{color:#718096;font-size:1rem}.user-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:2rem}.filter-group{flex:1;min-width:200px}.search-input,.filter-select{width:100%;padding:.75rem 1rem;border:1px solid #e2e8f0;border-radius:.5rem;font-size:.875rem;transition:all .2s}.search-input:focus,.filter-select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.error-message{display:flex;align-items:center;gap:.75rem;padding:1rem;background-color:#fee;border:1px solid #fcc;border-radius:.5rem;color:#c53030;margin-bottom:1rem}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;color:#718096}.user-management .loading-state .spinner{margin-bottom:1rem}.user-table-container{background:#fff;border-radius:.5rem;box-shadow:0 1px 3px #0000001a;overflow-x:auto}.user-table{width:100%;border-collapse:collapse}.user-table thead{background-color:#f7fafc;border-bottom:2px solid #e2e8f0}.user-table th{padding:1rem;text-align:left;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#4a5568;white-space:nowrap}.user-table tbody tr{border-bottom:1px solid #e2e8f0;transition:background-color .2s}.user-table tbody tr:hover{background-color:#f7fafc}.user-table td{padding:1rem;font-size:.875rem;color:#2d3748}.user-info{display:flex;flex-direction:column;gap:.25rem}.user-name{font-weight:500;color:#1a202c}.user-email{font-size:.8125rem;color:#718096}.tenant-info{display:flex;flex-direction:column;gap:.25rem}.tenant-name{font-weight:500;color:#2d3748}.tenant-id{font-size:.75rem;color:#a0aec0;font-family:monospace}.role-badge{display:inline-block;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:500;background-color:#e6fffa;color:#234e52}.status-active{background-color:#c6f6d5;color:#22543d}.status-inactive{background-color:#e2e8f0;color:#4a5568}.status-invited{background-color:#bee3f8;color:#2c5282}.status-suspended{background-color:#fed7d7;color:#742a2a}.last-login{color:#718096;font-size:.8125rem}.activity-metrics{display:flex;flex-direction:column;gap:.25rem;font-size:.75rem}.metric-item{display:flex;gap:.5rem}.metric-label{color:#718096}.metric-value{color:#2d3748;font-weight:500}.action-buttons{display:flex;gap:.5rem}.action-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:.375rem;cursor:pointer;transition:all .2s}.view-logs-btn{background-color:#e6fffa;color:#234e52}.view-logs-btn:hover{background-color:#b2f5ea}.activate-btn{background-color:#c6f6d5;color:#22543d}.activate-btn:hover{background-color:#9ae6b4}.deactivate-btn{background-color:#fef5e7;color:#744210}.deactivate-btn:hover{background-color:#feebc8}.suspend-btn{background-color:#fed7d7;color:#742a2a}.suspend-btn:hover{background-color:#fc8181}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;color:#718096}.empty-state svg{margin-bottom:1rem;opacity:.5}.empty-state h3{font-size:1.25rem;font-weight:600;color:#2d3748;margin-bottom:.5rem}.pagination-button{padding:.5rem 1rem;background-color:#fff;border:1px solid #e2e8f0;border-radius:.375rem;font-size:.875rem;font-weight:500;color:#4a5568;cursor:pointer;transition:all .2s}.pagination-button:hover:not(:disabled){background-color:#f7fafc;border-color:#cbd5e0}.pagination-info{font-size:.875rem;color:#718096}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:.5rem;padding:2rem;max-width:500px;width:90%;max-height:90vh;overflow-y:auto}.modal-content.large-modal{max-width:1200px}.modal-header h2{font-size:1.5rem;font-weight:600;color:#1a202c}.close-button{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:none;border:none;font-size:2rem;color:#718096;cursor:pointer;transition:color .2s}.close-button:hover{color:#2d3748}.modal-content h2{font-size:1.5rem;font-weight:600;color:#1a202c;margin-bottom:1rem}.modal-content p{color:#718096;margin-bottom:1rem}.modal-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;color:#718096}.access-logs-table-container{overflow-x:auto;max-height:500px;overflow-y:auto}.access-logs-table{width:100%;border-collapse:collapse}.access-logs-table thead{background-color:#f7fafc;border-bottom:2px solid #e2e8f0;position:sticky;top:0}.access-logs-table th{padding:.75rem 1rem;text-align:left;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#4a5568}.access-logs-table td{padding:.75rem 1rem;font-size:.875rem;color:#2d3748;border-bottom:1px solid #e2e8f0}.log-action{font-weight:500;color:#1a202c}.log-resource{color:#667eea;font-family:monospace;font-size:.8125rem}.log-ip{font-family:monospace;font-size:.8125rem;color:#718096}.log-agent{font-size:.75rem;color:#a0aec0;max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modal-form{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.form-group label{font-size:.875rem;font-weight:500;color:#2d3748}.modal-textarea{width:100%;padding:.75rem;border:1px solid #e2e8f0;border-radius:.375rem;font-size:.875rem;font-family:inherit;resize:vertical;min-height:100px;transition:border-color .2s}.modal-textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.modal-actions{display:flex;gap:.75rem;justify-content:flex-end}.modal-button{padding:.75rem 1.5rem;border:none;border-radius:.375rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.modal-button:disabled{opacity:.5;cursor:not-allowed}.cancel-button{background-color:#e2e8f0;color:#4a5568}.cancel-button:hover:not(:disabled){background-color:#cbd5e0}.confirm-button{background-color:#667eea;color:#fff}.confirm-button:hover:not(:disabled){background-color:#5568d3}.empty-message{text-align:center;color:#718096;padding:2rem}@media(max-width:1024px){.user-table-container{overflow-x:scroll}.user-table{min-width:1200px}}@media(max-width:768px){.user-management{padding:1rem}.user-filters{grid-template-columns:1fr}}.subscription-tier-manager{padding:24px;max-width:1400px;margin:0 auto}.manager-header{margin-bottom:32px}.manager-header h2{margin:0 0 8px;font-size:24px;font-weight:600;color:var(--text-primary, #1a1a2e)}.manager-header .description{color:var(--text-secondary, #666);margin:0 0 16px}.header-actions{display:flex;gap:12px}.loading-state,.empty-state{text-align:center;padding:48px;background:var(--surface-secondary, #f8f9fa);border-radius:8px;color:var(--text-secondary, #666)}.empty-state p{margin-bottom:16px}.tiers-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:24px}.tier-card{background:var(--card-bg, white);border:1px solid var(--border-primary, #e0e0e0);border-radius:12px;padding:24px;transition:box-shadow .2s,transform .2s}.tier-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.tier-card.inactive{opacity:.7;background:var(--surface-secondary, #f8f9fa)}.tier-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.tier-header h3{margin:0;font-size:20px;font-weight:600;color:var(--text-primary, #1a1a2e)}.status-badge{padding:4px 12px;border-radius:20px;font-size:12px;font-weight:500}.status-badge.active{background:#e8f5e9;color:#2e7d32}.status-badge.inactive{background:#fafafa;color:#757575}.tier-price{font-size:32px;font-weight:700;color:var(--text-primary, #1a1a2e);margin-bottom:20px}.tier-price .period{font-size:14px;font-weight:400;color:var(--text-secondary, #666)}.tier-details{border-top:1px solid var(--border-primary, #eee);padding-top:16px}.detail-section{margin-bottom:16px}.detail-section h4{font-size:12px;font-weight:600;text-transform:uppercase;color:var(--text-tertiary, #888);margin:0 0 8px}.detail-section ul{list-style:none;padding:0;margin:0}.detail-section li{padding:4px 0;font-size:14px;color:var(--text-secondary, #444);display:flex;flex-wrap:wrap;align-items:baseline;gap:4px}.detail-section li strong{color:var(--text-primary, #1a1a2e)}.pricing-note{font-size:11px;color:var(--text-tertiary, #888);margin-left:4px}.feature-list li{display:flex;align-items:center;gap:8px}.feature-list li.enabled{color:#2e7d32}.feature-list li.disabled{color:#bdbdbd}.stripe-info{margin-top:12px;padding-top:12px;border-top:1px solid #eee}.stripe-info small{color:#888;font-family:monospace;font-size:11px}.tier-actions{display:flex;gap:8px;margin-top:16px;padding-top:16px;border-top:1px solid #eee}.delete-confirm{display:flex;align-items:center;gap:8px}.delete-confirm span{font-size:13px;color:#d32f2f}.modal-overlay{position:fixed;inset:0;background:var(--modal-overlay, rgba(0, 0, 0, .5));display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-content{background:var(--modal-bg, white);border-radius:12px;max-width:700px;width:100%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;border:1px solid var(--border-primary, #eee)}.tier-edit-modal{max-width:900px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--border-primary, #eee)}.modal-header h3{margin:0;font-size:20px;font-weight:600;color:var(--text-primary, #1a1a2e)}.close-btn{background:none;border:none;font-size:24px;cursor:pointer;color:var(--text-secondary, #666);padding:0;line-height:1;transition:color .2s}.close-btn:hover{color:var(--text-primary, #333)}.modal-tabs{display:flex;border-bottom:1px solid var(--border-primary, #eee);padding:0 24px;background:var(--surface-secondary, #f8f9fa)}.tab-btn{padding:12px 20px;border:none;background:none;font-size:14px;font-weight:500;color:var(--text-secondary, #666);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:all .2s}.tab-btn:hover{color:var(--text-primary, #333)}.tab-btn.active{color:var(--primary-color, #4a90d9);border-bottom-color:var(--primary-color, #4a90d9);background:var(--modal-bg, white)}.modal-body{padding:24px;overflow-y:auto;flex:1}.tab-content{animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.tab-description{color:var(--text-secondary, #666);margin:0 0 20px;font-size:14px}.modal-footer{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-top:1px solid var(--border-primary, #eee);background:var(--surface-secondary, #f8f9fa)}.footer-price{font-size:14px;color:var(--text-secondary, #666)}.footer-price strong{font-size:18px;color:var(--text-primary, #1a1a2e)}.footer-actions{display:flex;gap:12px}.form-section{margin-bottom:24px}.form-section h4{font-size:14px;font-weight:600;color:var(--text-primary, #1a1a2e);margin:0 0 16px;padding-bottom:8px;border-bottom:1px solid var(--border-primary, #eee)}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;margin-bottom:16px}.form-group{display:flex;flex-direction:column}.form-group label{font-size:13px;font-weight:500;color:var(--text-secondary, #555);margin-bottom:6px}.form-group input[type=text],.form-group input[type=number]{padding:10px 12px;border:1px solid var(--input-border, #ddd);border-radius:6px;font-size:14px;background-color:var(--input-bg, white);color:var(--text-primary, #333);transition:border-color .2s,box-shadow .2s}.form-group input:focus{outline:none;border-color:var(--input-focus-border, #4a90d9);box-shadow:0 0 0 3px #4a90d91a}.checkbox-group label{display:flex;align-items:center;gap:8px;cursor:pointer;color:var(--text-secondary, #555)}.checkbox-group input[type=checkbox]{width:18px;height:18px;cursor:pointer}.slider-config{background:var(--surface-secondary, #f8f9fa);border-radius:8px;padding:16px;margin-bottom:16px}.slider-row{margin-bottom:16px;display:flex;flex-direction:column;gap:12px}.slider-row-header{display:flex;justify-content:space-between;align-items:center}.slider-row label{display:block;font-size:14px;color:var(--text-secondary, #555);margin:0}.slider-row label strong{color:var(--text-primary, #1a1a2e);font-size:16px}.slider-row-input{width:80px;padding:8px 10px;border:1px solid var(--input-border, #ddd);border-radius:4px;font-size:14px;background-color:var(--input-bg, white);color:var(--text-primary, #333)}.slider-row-input:focus{outline:none;border-color:var(--input-focus-border, #4a90d9);box-shadow:0 0 0 3px #4a90d91a}.slider-row input[type=range]{width:100%;height:10px;border-radius:5px;background:linear-gradient(to right,var(--border-primary, #ddd) 0%,var(--border-primary, #ddd) 100%);outline:none;-webkit-appearance:none;cursor:pointer}.slider-row input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:24px;height:24px;border-radius:50%;background:var(--primary-color, #4a90d9);cursor:pointer;box-shadow:0 2px 6px #0000004d;border:2px solid white;transition:all .2s}.slider-row input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.1);box-shadow:0 2px 8px #0006}.slider-row input[type=range]::-moz-range-thumb{width:24px;height:24px;border-radius:50%;background:var(--primary-color, #4a90d9);cursor:pointer;border:2px solid white;box-shadow:0 2px 6px #0000004d;transition:all .2s}.slider-row input[type=range]::-moz-range-thumb:hover{transform:scale(1.1);box-shadow:0 2px 8px #0006}.slider-row input[type=range]::-moz-range-track{background:transparent;border:none}.slider-row input[type=range]::-moz-range-progress{background:var(--primary-color, #4a90d9);height:10px;border-radius:5px}.pricing-config{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.pricing-config .form-group{margin-bottom:0}.pricing-config .form-group label{font-size:12px}.pricing-config .form-group input{padding:8px 10px;font-size:13px}.feature-pricing-list{display:flex;flex-direction:column;gap:16px}.feature-pricing-item{background:var(--surface-secondary, #f8f9fa);border-radius:8px;padding:16px;border:1px solid var(--border-primary, #eee)}.feature-header{margin-bottom:12px}.feature-toggle-main{display:flex;align-items:center;gap:10px;cursor:pointer;margin-bottom:4px}.feature-toggle-main input[type=checkbox]{width:18px;height:18px;cursor:pointer}.feature-name{font-size:15px;font-weight:600;color:var(--text-primary, #1a1a2e)}.feature-description{font-size:13px;color:var(--text-secondary, #666);margin-left:28px;display:block}.feature-pricing-options{display:flex;flex-direction:column;gap:8px;margin-left:28px;padding-top:8px;border-top:1px solid var(--border-primary, #e0e0e0)}.pricing-option{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--text-secondary, #555);cursor:pointer}.pricing-option input[type=radio]{width:16px;height:16px;cursor:pointer}.addon-price-input{width:80px;padding:6px 10px;border:1px solid var(--input-border, #ddd);border-radius:4px;font-size:14px;background-color:var(--input-bg, white);color:var(--text-primary, #333);margin-left:8px}.addon-price-input:disabled{background:var(--surface-secondary, #f0f0f0);color:var(--text-tertiary, #999)}.price-preview{background:linear-gradient(135deg,var(--surface-secondary, #f8f9fa) 0%,var(--primary-light, #e8f4fd) 100%);border-radius:8px;padding:16px;margin-top:24px;border:1px solid var(--border-primary, #eee)}.price-preview h4{margin:0 0 12px;font-size:14px;font-weight:600;color:var(--text-primary, #1a1a2e)}.preview-breakdown{display:flex;flex-direction:column;gap:8px}.preview-line{display:flex;justify-content:space-between;font-size:14px;color:var(--text-secondary, #555)}.preview-line.addon{color:var(--text-secondary, #666);font-size:13px;padding-left:12px}.preview-line.total{font-weight:600;color:var(--text-primary, #1a1a2e);font-size:16px;padding-top:8px;margin-top:8px;border-top:1px solid var(--border-primary, #ddd)}.btn{padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s,transform .1s}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--primary-color, #4a90d9);color:#fff}.btn-primary:hover:not(:disabled){background:var(--primary-hover, #3a7bc8)}.btn-secondary{background:var(--surface-secondary, #e0e0e0);color:var(--text-primary, #333)}.btn-secondary:hover:not(:disabled){background:var(--border-secondary, #d0d0d0)}.btn-danger{background:#d32f2f;color:#fff}.btn-danger:hover:not(:disabled){background:#b71c1c}.btn-sm{padding:6px 12px;font-size:13px}@media(max-width:768px){.subscription-tier-manager{padding:16px}.tiers-grid,.form-row{grid-template-columns:1fr}.pricing-config{grid-template-columns:repeat(2,1fr)}.header-actions{flex-direction:column}.modal-tabs{overflow-x:auto;padding:0 16px}.tab-btn{padding:12px 16px;white-space:nowrap}.modal-footer{flex-direction:column;gap:12px}.footer-actions{width:100%;justify-content:flex-end}}[data-theme=dark] .subscription-tier-manager{background:var(--bg-primary, #111827)}[data-theme=dark] .manager-header h2{color:var(--text-primary, #f9fafb)}[data-theme=dark] .manager-header .description{color:var(--text-secondary, #d1d5db)}[data-theme=dark] .loading-state,[data-theme=dark] .empty-state{background:var(--surface-secondary, #374151);color:var(--text-secondary, #9ca3af)}[data-theme=dark] .empty-state p{color:var(--text-secondary, #9ca3af)}[data-theme=dark] .tiers-grid{background:transparent}[data-theme=dark] .tier-card{background:var(--card-bg, #1f2937);border-color:var(--border-primary, #374151);box-shadow:0 1px 3px #0000004d}[data-theme=dark] .tier-card:hover{box-shadow:0 4px 12px #00000080}[data-theme=dark] .tier-card.inactive{background:var(--surface-secondary, #374151)}[data-theme=dark] .tier-header h3{color:var(--text-primary, #f9fafb)}[data-theme=dark] .status-badge.active{background:#064e3b;color:#a7f3d0}[data-theme=dark] .status-badge.inactive{background:var(--surface-secondary, #374151);color:var(--text-secondary, #9ca3af)}[data-theme=dark] .tier-price{color:var(--text-primary, #f9fafb)}[data-theme=dark] .tier-price .period{color:var(--text-secondary, #9ca3af)}[data-theme=dark] .tier-details{border-top-color:var(--border-primary, #374151)}[data-theme=dark] .detail-section h4{color:var(--text-tertiary, #9ca3af)}[data-theme=dark] .detail-section li{color:var(--text-secondary, #d1d5db)}[data-theme=dark] .detail-section li strong{color:var(--text-primary, #f9fafb)}[data-theme=dark] .pricing-note{color:var(--text-tertiary, #9ca3af)}[data-theme=dark] .feature-list li.enabled{color:#a7f3d0}[data-theme=dark] .feature-list li.disabled{color:var(--text-tertiary, #6b7280)}[data-theme=dark] .stripe-info small{color:var(--text-tertiary, #9ca3af)}[data-theme=dark] .tier-actions{border-top-color:var(--border-primary, #374151)}[data-theme=dark] .delete-confirm span{color:#fecaca}[data-theme=dark] .modal-overlay{background:var(--modal-overlay, rgba(0, 0, 0, .7))}[data-theme=dark] .modal-content{background:var(--modal-bg, #1f2937);border-color:var(--border-primary, #374151)}[data-theme=dark] .modal-header{border-bottom-color:var(--border-primary, #374151)}[data-theme=dark] .modal-header h3{color:var(--text-primary, #f9fafb)}[data-theme=dark] .close-btn{color:var(--text-secondary, #9ca3af)}[data-theme=dark] .close-btn:hover{color:var(--text-primary, #f9fafb)}[data-theme=dark] .modal-tabs{border-bottom-color:var(--border-primary, #374151);background:var(--surface-secondary, #374151)}[data-theme=dark] .tab-btn{color:var(--text-secondary, #9ca3af)}[data-theme=dark] .tab-btn:hover{color:var(--text-primary, #f9fafb)}[data-theme=dark] .tab-btn.active{color:var(--primary-color, #818cf8);border-bottom-color:var(--primary-color, #818cf8);background:var(--modal-bg, #1f2937)}[data-theme=dark] .modal-body{background:var(--modal-bg, #1f2937)}[data-theme=dark] .tab-description{color:var(--text-secondary, #9ca3af)}[data-theme=dark] .modal-footer{border-top-color:var(--border-primary, #374151);background:var(--surface-secondary, #374151)}[data-theme=dark] .footer-price{color:var(--text-secondary, #9ca3af)}[data-theme=dark] .footer-price strong{color:var(--text-primary, #f9fafb)}[data-theme=dark] .form-section h4{color:var(--text-primary, #f9fafb);border-bottom-color:var(--border-primary, #374151)}[data-theme=dark] .form-group label{color:var(--text-secondary, #d1d5db)}[data-theme=dark] .form-group input[type=text],[data-theme=dark] .form-group input[type=number]{background-color:var(--input-bg, #374151);border-color:var(--input-border, #4b5563);color:var(--text-primary, #f9fafb)}[data-theme=dark] .form-group input::placeholder{color:var(--text-tertiary, #6b7280)}[data-theme=dark] .form-group input:focus{border-color:var(--input-focus-border, #818cf8);box-shadow:0 0 0 3px #818cf833}[data-theme=dark] .checkbox-group label{color:var(--text-secondary, #d1d5db)}[data-theme=dark] .slider-config{background:var(--surface-secondary, #374151);border-color:var(--border-primary, #4b5563)}[data-theme=dark] .slider-row label{color:var(--text-secondary, #d1d5db)}[data-theme=dark] .slider-row label strong{color:var(--text-primary, #f9fafb)}[data-theme=dark] .slider-row-input{background-color:var(--input-bg, #374151);border-color:var(--input-border, #4b5563);color:var(--text-primary, #f9fafb)}[data-theme=dark] .slider-row-input:focus{border-color:var(--input-focus-border, #818cf8);box-shadow:0 0 0 3px #818cf833}[data-theme=dark] .slider-row input[type=range]{background:linear-gradient(to right,var(--border-secondary, #4b5563) 0%,var(--border-secondary, #4b5563) 100%)}[data-theme=dark] .slider-row input[type=range]::-webkit-slider-thumb{background:var(--primary-color, #818cf8);border-color:var(--modal-bg, #1f2937);box-shadow:0 2px 8px #00000080}[data-theme=dark] .slider-row input[type=range]::-moz-range-thumb{background:var(--primary-color, #818cf8);border-color:var(--modal-bg, #1f2937);box-shadow:0 2px 8px #00000080}[data-theme=dark] .slider-row input[type=range]::-moz-range-progress{background:var(--primary-color, #818cf8)}[data-theme=dark] .pricing-config .form-group label{color:var(--text-secondary, #d1d5db)}[data-theme=dark] .pricing-config .form-group input{background-color:var(--input-bg, #374151);border-color:var(--input-border, #4b5563);color:var(--text-primary, #f9fafb)}[data-theme=dark] .feature-pricing-item{background:var(--surface-secondary, #374151);border-color:var(--border-primary, #4b5563)}[data-theme=dark] .feature-name{color:var(--text-primary, #f9fafb)}[data-theme=dark] .feature-description{color:var(--text-secondary, #9ca3af)}[data-theme=dark] .feature-pricing-options{border-top-color:var(--border-primary, #4b5563)}[data-theme=dark] .pricing-option{color:var(--text-secondary, #d1d5db)}[data-theme=dark] .addon-price-input{background-color:var(--input-bg, #374151);border-color:var(--input-border, #4b5563);color:var(--text-primary, #f9fafb)}[data-theme=dark] .addon-price-input:disabled{background:var(--surface-secondary, #1f2937);color:var(--text-tertiary, #6b7280)}[data-theme=dark] .price-preview{background:linear-gradient(135deg,var(--surface-secondary, #374151) 0%,var(--primary-light, #1e3a5f) 100%);border-color:var(--border-primary, #4b5563)}[data-theme=dark] .price-preview h4{color:var(--text-primary, #f9fafb)}[data-theme=dark] .preview-line{color:var(--text-secondary, #d1d5db)}[data-theme=dark] .preview-line.addon{color:var(--text-secondary, #9ca3af)}[data-theme=dark] .preview-line.total{color:var(--text-primary, #f9fafb);border-top-color:var(--border-primary, #4b5563)}[data-theme=dark] .btn-primary{background:var(--primary-color, #818cf8);color:#fff}[data-theme=dark] .btn-primary:hover:not(:disabled){background:var(--primary-hover, #6366f1)}[data-theme=dark] .btn-secondary{background:var(--surface-secondary, #4b5563);color:var(--text-primary, #f9fafb)}[data-theme=dark] .btn-secondary:hover:not(:disabled){background:var(--border-secondary, #6b7280)}.feature-list-simple{display:flex;flex-direction:column;gap:1rem}.feature-item-simple{display:flex;align-items:center;justify-content:space-between;padding:1rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:4px}.feature-toggle{display:flex;align-items:center;gap:1rem;cursor:pointer;flex:1}.feature-toggle input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:var(--primary-color)}.feature-info{display:flex;flex-direction:column;gap:.25rem}.feature-name{font-weight:600;color:var(--text-primary)}.feature-description{font-size:.85rem;color:var(--text-secondary)}.addon-badge{padding:.25rem .75rem;background:#a855f71a;color:#a855f7;border-radius:20px;font-size:.75rem;font-weight:600;white-space:nowrap}.included-badge{padding:.25rem .75rem;background:#22c55e1a;color:#22c55e;border-radius:20px;font-size:.75rem;font-weight:600;white-space:nowrap}.extras-info-box{margin-top:1.5rem;padding:1rem;background:#3b82f60d;border:1px solid rgba(59,130,246,.2);border-radius:4px}.extras-info-box h4{margin:0 0 .5rem;font-size:.95rem;color:var(--text-primary)}.extras-info-box p{margin:0;font-size:.9rem;color:var(--text-secondary);line-height:1.5}.extra-note{margin:.5rem 0 0;font-size:.85rem;color:var(--text-secondary);font-style:italic}.extras-manager{padding:2rem;max-width:1400px;margin:0 auto}.manager-header{margin-bottom:2rem}.manager-header h2{font-size:1.75rem;margin:0 0 .5rem;color:var(--text-primary)}.manager-header .description{color:var(--text-secondary);margin:0 0 1.5rem;font-size:.95rem}.manager-header .header-actions{display:flex;gap:1rem;flex-wrap:wrap}.loading-state,.empty-state{text-align:center;padding:3rem 2rem;background:var(--bg-secondary);border-radius:8px;color:var(--text-secondary)}.empty-state{display:flex;flex-direction:column;align-items:center;gap:1.5rem}.empty-state p{margin:0;font-size:1.1rem}.extras-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;margin-bottom:2rem}.extra-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding:1.5rem;display:flex;flex-direction:column;gap:1rem;transition:all .2s ease}.extra-card:hover{border-color:var(--primary-color);box-shadow:0 2px 8px #0000001a}.extra-card.inactive{opacity:.6}.extra-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.extra-header h3{margin:0;font-size:1.1rem;color:var(--text-primary)}.category-badge{display:inline-block;padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:600;white-space:nowrap}.category-badge.resource{background:#3b82f61a;color:#3b82f6}.category-badge.feature{background:#a855f71a;color:#a855f7}.category-badge.usage{background:#22c55e1a;color:#22c55e}.extra-type{color:var(--text-secondary)}.extra-type small{font-size:.85rem}.extra-description{margin:0;color:var(--text-secondary);font-size:.9rem;line-height:1.4}.extra-pricing{display:flex;align-items:baseline;gap:.5rem;font-size:1.25rem;color:var(--text-primary)}.extra-pricing strong{font-size:1.5rem;color:var(--primary-color)}.extra-pricing .period{color:var(--text-secondary);font-size:.9rem}.extra-resource-config,.extra-tiers{padding:.75rem;background:var(--bg-primary);border-radius:4px;color:var(--text-secondary)}.extra-resource-config small,.extra-tiers small{font-size:.8rem}.extra-actions{display:flex;gap:.5rem;margin-top:auto}.extra-actions .btn{flex:1}.delete-confirm{display:flex;gap:.5rem;align-items:center;width:100%}.delete-confirm span{font-size:.9rem;color:var(--text-secondary);white-space:nowrap}.delete-confirm .btn{flex:1;padding:.5rem;font-size:.85rem}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:var(--bg-primary);border-radius:8px;max-width:600px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 10px 40px #0003}.extra-edit-modal{max-width:700px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--border-color);position:sticky;top:0;background:var(--bg-primary);z-index:10}.modal-header h3{margin:0;font-size:1.25rem;color:var(--text-primary)}.close-btn{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-secondary);padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease}.close-btn:hover{background:var(--bg-secondary);color:var(--text-primary)}.modal-body{padding:1.5rem;display:flex;flex-direction:column;gap:1.5rem}.form-section{display:flex;flex-direction:column;gap:1rem}.form-section h4{margin:0;font-size:1rem;color:var(--text-primary);font-weight:600}.section-note{margin:0;font-size:.85rem;color:var(--text-secondary);font-style:italic}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.9rem;font-weight:500;color:var(--text-primary)}.form-group input,.form-group select,.form-group textarea{padding:.75rem;border:1px solid var(--border-color);border-radius:4px;background:var(--bg-secondary);color:var(--text-primary);font-family:inherit;font-size:.95rem;transition:all .2s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #3b82f61a}.form-group textarea{resize:vertical;min-height:80px}.tier-checkboxes{display:flex;flex-direction:column;gap:.75rem}.checkbox-label{display:flex;align-items:center;gap:.75rem;cursor:pointer;font-size:.95rem;color:var(--text-primary);-webkit-user-select:none;user-select:none}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--primary-color)}.modal-footer{display:flex;gap:1rem;padding:1.5rem;border-top:1px solid var(--border-color);background:var(--bg-secondary);position:sticky;bottom:0;justify-content:flex-end}.modal-footer .btn{min-width:120px}.btn{padding:.75rem 1.5rem;border:none;border-radius:4px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;gap:.5rem}.btn-primary{background:var(--primary-color);color:#fff}.btn-primary:hover:not(:disabled){background:var(--primary-color-dark);transform:translateY(-1px);box-shadow:0 2px 8px #3b82f64d}.btn-secondary{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color)}.btn-secondary:hover:not(:disabled){background:var(--border-color);border-color:var(--text-secondary)}.btn-danger{background:#ef4444;color:#fff}.btn-danger:hover:not(:disabled){background:#dc2626;transform:translateY(-1px);box-shadow:0 2px 8px #ef44444d}.btn-sm{padding:.5rem 1rem;font-size:.85rem}@media(max-width:768px){.extras-manager{padding:1rem}.extras-grid{grid-template-columns:1fr}.modal-content{width:95%;max-height:95vh}.form-row{grid-template-columns:1fr}.modal-footer{flex-direction:column-reverse}.modal-footer .btn{width:100%}}@media(prefers-color-scheme:dark){.extra-card{background:#1e293b;border-color:#334155}.extra-card:hover{border-color:#3b82f6}.form-group input,.form-group select,.form-group textarea{background:#0f172a;border-color:#334155;color:#f1f5f9}.modal-content{background:#0f172a}}.subscriptions-page{min-height:100vh;background:var(--bg-primary)}.page-header{padding:2rem 2rem 1rem;border-bottom:1px solid var(--border-color);background:var(--bg-secondary)}.page-header h1{margin:0 0 .5rem;font-size:2rem;color:var(--text-primary)}.page-description{margin:0;color:var(--text-secondary);font-size:1rem}.page-tabs{display:flex;gap:.5rem;padding:1rem 2rem 0;background:var(--bg-primary);border-bottom:2px solid var(--border-color)}.tab-button{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:transparent;border:none;border-bottom:3px solid transparent;color:var(--text-secondary);font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s ease;position:relative;top:2px}.tab-button:hover{color:var(--text-primary);background:var(--bg-secondary)}.tab-button.active{color:var(--primary-color);border-bottom-color:var(--primary-color);background:var(--bg-secondary)}.tab-icon{font-size:1.2rem}.page-content{background:var(--bg-primary)}.page-content .subscription-tier-manager,.page-content .extras-manager{padding-top:0}@media(max-width:768px){.page-header{padding:1.5rem 1rem 1rem}.page-header h1{font-size:1.5rem}.page-tabs{padding:.75rem 1rem 0;overflow-x:auto}.tab-button{padding:.5rem 1rem;font-size:.9rem;white-space:nowrap}}.admin-portal{display:flex;min-height:100vh;background-color:#f7fafc}[data-theme=dark] .admin-portal{background-color:#111827}.admin-sidebar{width:240px;background:linear-gradient(180deg,#1a202c,#2d3748);color:#fff;display:flex;flex-direction:column;position:fixed;top:0;left:0;bottom:0;z-index:100}.sidebar-header{padding:1.25rem;border-bottom:1px solid rgba(255,255,255,.1);display:flex;align-items:center;justify-content:space-between}.sidebar-logo{display:flex;align-items:center;gap:.5rem;text-decoration:none;color:#fff}.logo-icon{font-size:1.5rem}.logo-text{font-size:1.125rem;font-weight:600}.sidebar-badge{font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;background-color:#805ad5;color:#fff;padding:.25rem .5rem;border-radius:4px}.sidebar-nav{flex:1;padding:1rem 0;overflow-y:auto}.nav-link{display:flex;align-items:center;gap:.75rem;padding:.75rem 1.25rem;color:#ffffffb3;text-decoration:none;font-size:.9rem;font-weight:500;transition:all .2s;border-left:3px solid transparent}.nav-link:hover{color:#fff;background-color:#ffffff0d}.nav-link.active{color:#fff;background-color:#ffffff1a;border-left-color:#805ad5}.nav-icon{font-size:1.1rem;width:1.5rem;text-align:center}.nav-label{flex:1}.sidebar-footer{padding:1rem 1.25rem;border-top:1px solid rgba(255,255,255,.1)}.user-info{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.user-avatar{font-size:1.25rem}.user-email{font-size:.8rem;color:#fffc;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btn-logout{width:100%;padding:.5rem 1rem;font-size:.875rem;font-weight:500;background-color:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2);border-radius:6px;cursor:pointer;transition:all .2s}.btn-logout:hover{background-color:#fff3;border-color:#ffffff4d}.admin-main{flex:1;margin-left:240px;min-height:100vh}@media(max-width:768px){.admin-sidebar{width:60px}.sidebar-header{padding:1rem .5rem;justify-content:center}.logo-text,.sidebar-badge{display:none}.nav-link{padding:.75rem;justify-content:center}.nav-label{display:none}.nav-icon{width:auto}.sidebar-footer{padding:.75rem .5rem}.user-info{justify-content:center}.user-email{display:none}.btn-logout{padding:.5rem;font-size:.75rem}.admin-main{margin-left:60px}}:root,[data-theme=light]{--bg-primary: #ffffff;--bg-secondary: #f8fafc;--bg-tertiary: #f1f5f9;--bg-elevated: #ffffff;--surface-primary: #ffffff;--surface-secondary: #f9fafb;--surface-hover: #f3f4f6;--text-primary: #111827;--text-secondary: #6b7280;--text-tertiary: #9ca3af;--border-primary: #e5e7eb;--border-secondary: #d1d5db;--primary-color: #667eea;--primary-hover: #5568d3;--primary-light: #eff6ff;--card-bg: #ffffff;--card-border: #e5e7eb;--card-shadow: 0 1px 3px rgba(0, 0, 0, .1);--input-bg: #ffffff;--input-border: #d1d5db;--input-focus-border: #667eea;--table-header-bg: #f9fafb;--table-row-hover: #f9fafb;--table-border: #e5e7eb;--modal-bg: #ffffff;--modal-overlay: rgba(0, 0, 0, .5);--success-bg: #d1fae5;--success-text: #065f46;--warning-bg: #fef3c7;--warning-text: #92400e;--error-bg: #fee2e2;--error-text: #991b1b;--info-bg: #dbeafe;--info-text: #1e40af}[data-theme=dark]{--bg-primary: #111827;--bg-secondary: #1f2937;--bg-tertiary: #374151;--bg-elevated: #1f2937;--surface-primary: #1f2937;--surface-secondary: #374151;--surface-hover: #374151;--text-primary: #f9fafb;--text-secondary: #d1d5db;--text-tertiary: #9ca3af;--border-primary: #374151;--border-secondary: #4b5563;--primary-color: #818cf8;--primary-hover: #6366f1;--primary-light: #1e3a5f;--card-bg: #1f2937;--card-border: #374151;--card-shadow: 0 1px 3px rgba(0, 0, 0, .3);--input-bg: #374151;--input-border: #4b5563;--input-focus-border: #818cf8;--table-header-bg: #374151;--table-row-hover: #374151;--table-border: #4b5563;--modal-bg: #1f2937;--modal-overlay: rgba(0, 0, 0, .7);--success-bg: #064e3b;--success-text: #a7f3d0;--warning-bg: #78350f;--warning-text: #fde68a;--error-bg: #7f1d1d;--error-text: #fecaca;--info-bg: #1e3a5f;--info-text: #bfdbfe}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spinner,.loading-spinner{border-radius:50%;border-style:solid;border-color:#e5e7eb;border-top-color:#3b82f6;animation:spin 1s linear infinite}.spinner-small,.loading-spinner-small{width:16px;height:16px;border-width:2px}.spinner,.loading-spinner,.spinner-medium,.loading-spinner-medium{width:32px;height:32px;border-width:3px}.spinner-lg,.loading-spinner-lg{width:40px;height:40px;border-width:4px}.spinner-large,.loading-spinner-large{width:48px;height:48px;border-width:4px}.loading-spinner-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;gap:16px}.loading-spinner-fullscreen{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background-color:#ffffffe6;z-index:9998}.loading-spinner-content{display:flex;flex-direction:column;align-items:center;gap:16px}.loading-state{text-align:center;padding:3rem;color:var(--text-secondary, #6b7280)}.loading-state .spinner,.loading-state .loading-spinner{margin:0 auto 1rem}.spinner-message,.loading-message{font-size:14px;color:var(--text-secondary, #6b7280);text-align:center;margin:0}.loading-button{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:all .2s}.loading-button.loading{cursor:not-allowed;opacity:.7}.button-spinner{display:inline-flex;align-items:center}.button-text-loading{opacity:.7}.loading-overlay-wrapper{position:relative}.loading-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background-color:var(--modal-overlay, rgba(255, 255, 255, .8));-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:10;border-radius:inherit}.loading-overlay-content{display:flex;flex-direction:column;align-items:center;gap:16px;padding:24px;background-color:var(--card-bg, white);border-radius:8px;box-shadow:var(--card-shadow, 0 4px 12px rgba(0, 0, 0, .1))}.progress-container{width:100%;max-width:400px;margin:16px 0}.progress-bar{width:100%;height:8px;background-color:var(--border-primary, #e5e7eb);border-radius:4px;overflow:hidden}.progress-bar-fill{height:100%;background-color:var(--primary-color, #3b82f6);transition:width .3s ease;border-radius:4px}.progress-text{font-size:12px;color:var(--text-secondary, #6b7280);text-align:center;margin-top:8px}.empty-state{text-align:center;padding:3rem;color:var(--text-secondary, #6b7280)}.empty-state-icon{color:var(--text-tertiary, #d1d5db);margin-bottom:1rem}.empty-state-title{font-size:1.125rem;font-weight:600;color:var(--text-primary, #374151);margin:0 0 .5rem}.empty-state-description{font-size:.875rem;color:var(--text-tertiary, #9ca3af);margin:0}@media(prefers-reduced-motion:reduce){.spinner,.loading-spinner,.spinner-small,.loading-spinner-small,.spinner-lg,.spinner-large,.spinner-medium,.loading-spinner-lg,.loading-spinner-large,.loading-spinner-medium{animation:none}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.5rem 1rem;border:none;border-radius:.375rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;text-decoration:none;white-space:nowrap}.btn:disabled{opacity:.5;cursor:not-allowed}.btn:focus{outline:2px solid #667eea;outline-offset:2px}.btn-sm{padding:.375rem .75rem;font-size:.8125rem}.btn-lg{padding:.75rem 1.5rem;font-size:1rem}.btn-primary{background-color:#667eea;color:#fff}.btn-primary:hover:not(:disabled){background-color:#5568d3}.btn-secondary{background-color:var(--surface-secondary, #e2e8f0);color:var(--text-primary, #4a5568)}.btn-secondary:hover:not(:disabled){background-color:var(--surface-hover, #cbd5e0)}.btn-danger{background-color:#ef4444;color:#fff}.btn-danger:hover:not(:disabled){background-color:#dc2626}.btn-outline{background-color:transparent;border:1px solid var(--border-primary, #e2e8f0);color:var(--text-primary, #4a5568)}.btn-outline:hover:not(:disabled){background-color:var(--surface-secondary, #f7fafc);border-color:var(--border-secondary, #cbd5e0)}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:500;text-transform:capitalize}.status-active{background-color:var(--success-bg, #c6f6d5);color:var(--success-text, #22543d)}.status-inactive{background-color:var(--surface-secondary, #e2e8f0);color:var(--text-primary, #4a5568)}.status-trial{background-color:var(--info-bg, #bee3f8);color:var(--info-text, #2c5282)}.status-suspended{background-color:var(--error-bg, #fed7d7);color:var(--error-text, #742a2a)}.status-invited{background-color:var(--info-bg, #bee3f8);color:var(--info-text, #2c5282)}.error-message,.alert-error{display:flex;align-items:center;gap:.75rem;padding:1rem;background-color:var(--error-bg, #fee);border:1px solid var(--error-bg, #fcc);border-radius:.5rem;color:var(--error-text, #c53030);font-size:.875rem}.success-message,.alert-success{display:flex;align-items:center;gap:.75rem;padding:1rem;background-color:var(--success-bg, #f0fff4);border:1px solid var(--success-bg, #9ae6b4);border-radius:.5rem;color:var(--success-text, #22543d);font-size:.875rem}.warning-message,.alert-warning{display:flex;align-items:center;gap:.75rem;padding:1rem;background-color:var(--warning-bg, #fffff0);border:1px solid var(--warning-bg, #faf089);border-radius:.5rem;color:var(--warning-text, #744210);font-size:.875rem}.modal-overlay{position:fixed;inset:0;background-color:var(--modal-overlay, rgba(0, 0, 0, .5));display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:var(--modal-bg, white);border-radius:.5rem;padding:2rem;max-width:500px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.modal-content.modal-lg{max-width:800px}.modal-content.modal-xl{max-width:1200px}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.modal-header h2{font-size:1.5rem;font-weight:600;color:var(--text-primary, #1a202c);margin:0}.modal-close,.close-button{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:none;border:none;font-size:1.5rem;color:var(--text-secondary, #718096);cursor:pointer;transition:color .2s;border-radius:.25rem}.modal-close:hover,.close-button:hover{color:var(--text-primary, #2d3748);background-color:var(--surface-secondary, #f7fafc)}.modal-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.5rem}.pagination{display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:2rem;padding:1rem}.pagination-button{padding:.5rem 1rem;background-color:var(--card-bg, white);border:1px solid var(--border-primary, #e2e8f0);border-radius:.375rem;font-size:.875rem;font-weight:500;color:var(--text-primary, #4a5568);cursor:pointer;transition:all .2s}.pagination-button:hover:not(:disabled){background-color:var(--surface-secondary, #f7fafc);border-color:var(--border-secondary, #cbd5e0)}.pagination-button:disabled{opacity:.5;cursor:not-allowed}.pagination-info{font-size:.875rem;color:var(--text-secondary, #718096)}.table-container{background:var(--card-bg, white);border-radius:.5rem;box-shadow:var(--card-shadow, 0 1px 3px rgba(0, 0, 0, .1));overflow-x:auto}.table{width:100%;border-collapse:collapse}.table thead{background-color:var(--table-header-bg, #f7fafc);border-bottom:2px solid var(--table-border, #e2e8f0)}.table th{padding:1rem;text-align:left;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary, #4a5568);white-space:nowrap}.table td{padding:1rem;font-size:.875rem;color:var(--text-primary, #2d3748);border-bottom:1px solid var(--table-border, #e2e8f0)}.table tbody tr{transition:background-color .2s}.table tbody tr:hover{background-color:var(--table-row-hover, #f7fafc)}.form-group{margin-bottom:1rem}.form-label{display:block;margin-bottom:.5rem;font-size:.875rem;font-weight:500;color:var(--text-primary, #2d3748)}.form-input,.form-select,.form-textarea{width:100%;padding:.75rem 1rem;border:1px solid var(--input-border, #e2e8f0);border-radius:.5rem;font-size:.875rem;transition:all .2s;background-color:var(--input-bg, white);color:var(--text-primary, #333)}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--input-focus-border, #667eea);box-shadow:0 0 0 3px #667eea1a}.form-textarea{min-height:100px;resize:vertical}@media(max-width:768px){.modal-content{margin:.5rem;max-height:calc(100vh - 1rem)}.pagination{flex-wrap:wrap}.hide-mobile{display:none}}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box}
