.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background-color:#f5f5f5}.login-card{background:#fff;padding:40px;border-radius:10px;box-shadow:0 2px 10px #0000001a;width:100%;max-width:400px}.login-card h1{margin:0 0 30px;text-align:center;color:#1a1a2e;font-size:1.5rem}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:5px;color:#333;font-weight:500}.form-group input{width:100%;padding:12px;border:1px solid #ddd;border-radius:5px;font-size:1rem;box-sizing:border-box}.form-group input:focus{outline:none;border-color:#1a1a2e}.error-message{background-color:#fee2e2;color:#dc2626;padding:12px;border-radius:5px;margin-bottom:20px;text-align:center}.submit-button{width:100%;padding:12px;background-color:#1a1a2e;color:#fff;border:none;border-radius:5px;font-size:1rem;cursor:pointer;transition:background-color .2s}.submit-button:hover:not(:disabled){background-color:#16213e}.submit-button:disabled{opacity:.7;cursor:not-allowed}.layout{display:flex;min-height:100vh}.sidebar{width:250px;background-color:#1a1a2e;color:#fff;padding:20px}.logo h2{margin:0 0 30px;font-size:1.5rem;text-align:center}.nav-items{list-style:none;padding:0;margin:0}.nav-items li{margin-bottom:5px}.nav-items a{display:block;padding:12px 15px;color:#ccc;text-decoration:none;border-radius:5px;transition:all .2s}.nav-items a:hover,.nav-items a.active{background-color:#16213e;color:#fff}.main-content{flex:1;display:flex;flex-direction:column}.header{height:60px;background-color:#fff;border-bottom:1px solid #e0e0e0;display:flex;align-items:center;justify-content:flex-end;padding:0 20px}.header-right{display:flex;align-items:center}.user-menu-container{position:relative}.user-menu-button{background:none;border:1px solid #ddd;padding:8px 16px;border-radius:5px;cursor:pointer}.user-menu-dropdown{position:absolute;top:100%;right:0;background:#fff;border:1px solid #ddd;border-radius:5px;box-shadow:0 2px 10px #0000001a;z-index:100}.user-menu-dropdown button{display:block;width:100%;padding:10px 20px;border:none;background:none;cursor:pointer;text-align:left}.user-menu-dropdown button:hover{background-color:#f5f5f5}.content{flex:1;padding:20px;background-color:#f5f5f5;overflow-y:auto}.dashboard h1{margin:0 0 30px;color:#1a1a2e}.stat-card{background:#fff;padding:24px;border-radius:10px;box-shadow:0 2px 5px #0000000d}.stat-value{margin:10px 0 0;font-size:2rem;font-weight:700;color:#1a1a2e}.tenants-page{background:#fff;padding:24px;border-radius:10px}.btn-primary:hover{background-color:#16213e}.filters input{flex:1;padding:10px;border:1px solid #ddd;border-radius:5px}.tenant-list table{width:100%;border-collapse:collapse}.tenant-list th,.tenant-list td{padding:12px;text-align:left;border-bottom:1px solid #eee}.tenant-list th{font-weight:600;color:#666}.tenant-row{cursor:pointer}.tenant-row:hover{background-color:#f9f9f9}.status-archived{background-color:#e5e7eb;color:#374151}.pagination{display:flex;justify-content:center;align-items:center;gap:16px;margin-top:20px;padding-top:20px;border-top:1px solid #eee}.pagination button{padding:8px 16px;border:1px solid #ddd;background:#fff;border-radius:5px;cursor:pointer}.pagination button:disabled{opacity:.5;cursor:not-allowed}.create-tenant-page{background:#fff;padding:24px;border-radius:10px;max-width:600px}.create-tenant-page h1{margin:0 0 24px}.tenant-form .form-group{margin-bottom:20px}.tenant-form label{display:block;margin-bottom:5px;font-weight:500}.tenant-form input,.tenant-form select{width:100%;padding:10px;border:1px solid #ddd;border-radius:5px;box-sizing:border-box}.tenant-form small{color:#666;font-size:.85rem}.form-actions{display:flex;gap:12px;margin-top:24px}.btn-primary:disabled{opacity:.7}.tenant-detail-page{background:#fff;padding:24px;border-radius:10px}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.back-button{background:none;border:none;color:#666;cursor:pointer;padding:0;margin-bottom:8px}.info-panel{max-width:600px}.info-row{display:flex;padding:12px 0;border-bottom:1px solid #eee}.info-row .label{width:150px;color:#666;font-weight:500}.edit-form{max-width:400px}.form-group input,.form-group textarea{width:100%;padding:10px;border:1px solid #ddd;border-radius:5px;box-sizing:border-box}.members-panel table{width:100%;border-collapse:collapse}.members-panel th,.members-panel td{padding:12px;text-align:left;border-bottom:1px solid #eee}.members-panel th{font-weight:600;color:#666}.status-suspended{background-color:#fee2e2;color:#dc2626}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:20px}.approvals-page{background:#fff;padding:24px;border-radius:10px}.approvals-page h1{margin:0 0 24px}.no-data{color:#666;text-align:center;padding:40px}.pending-list{display:flex;flex-direction:column;gap:16px}.pending-card{display:flex;justify-content:space-between;align-items:center;padding:20px;border:1px solid #eee;border-radius:8px}.pending-card h3{margin:0 0 4px}.tenant-meta{margin:0;color:#666;font-size:.9rem}.actions{display:flex;gap:12px}.form-group textarea{width:100%;padding:10px;border:1px solid #ddd;border-radius:5px;box-sizing:border-box}.billing-page{background:#fff;padding:24px;border-radius:10px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:20px}.invoice-list table,.plan-list table,.usage-table table{width:100%;border-collapse:collapse}.invoice-list th,.invoice-list td,.plan-list th,.plan-list td,.usage-table th,.usage-table td{padding:12px;text-align:left;border-bottom:1px solid #eee}.invoice-list th,.plan-list th,.usage-table th{font-weight:600;color:#666}.invoice-list tr{cursor:pointer}.invoice-list tr:hover{background-color:#f9f9f9}.status-paid,.status-active{background-color:#dcfce7;color:#166534}.status-overdue{background-color:#fee2e2;color:#dc2626}.status-cancelled,.status-inactive{background-color:#e5e7eb;color:#374151}.plans-header{display:flex;justify-content:flex-end;margin-bottom:20px}.invoice-detail{margin-top:20px;padding:20px;border:1px solid #eee;border-radius:8px}.invoice-detail h3{margin:0 0 16px}.invoice-total{text-align:right;margin-top:16px;padding-top:16px;border-top:1px solid #eee}.usage-chart{padding:40px;border:1px dashed #ddd;text-align:center;color:#666;margin-bottom:20px;border-radius:8px}.form-group input,.form-group select{width:100%;padding:10px;border:1px solid #ddd;border-radius:5px;box-sizing:border-box}.messaging-page{background:#fff;padding:24px;border-radius:10px}.messaging-page h1{margin:0 0 24px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:20px}.message-list table,.template-list table{width:100%;border-collapse:collapse}.message-list th,.message-list td,.template-list th,.template-list td{padding:12px;text-align:left;border-bottom:1px solid #eee}.message-list th,.template-list th{font-weight:600;color:#666}.template-row{cursor:pointer}.template-row:hover{background-color:#f9f9f9}.status-sent{background-color:#dcfce7;color:#166534}.status-failed{background-color:#fee2e2;color:#dc2626}.templates-header{display:flex;justify-content:flex-end;margin-bottom:20px}.template-edit{margin-top:20px;padding:20px;border:1px solid #eee;border-radius:8px}.broadcast-panel{max-width:600px}.form-actions{display:flex;gap:12px;margin-top:16px}.analytics-page{background:#fff;padding:24px;border-radius:10px}.header-actions{display:flex;gap:16px;align-items:center}.date-range{display:flex;border:1px solid #ddd;border-radius:5px;overflow:hidden}.date-range button{padding:8px 16px;border:none;background:#fff;cursor:pointer;border-right:1px solid #ddd}.date-range button:last-child{border-right:none}.date-range button.active{background-color:#1a1a2e;color:#fff}.stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:20px;margin-bottom:30px}.stat-value{margin:10px 0 0;font-size:1.8rem;font-weight:700;color:#1a1a2e}.chart-container{margin-bottom:30px}.chart-container h3{margin:0 0 16px}.chart-placeholder{height:300px;border:1px dashed #ddd;display:flex;align-items:center;justify-content:center;color:#666;border-radius:8px}.btn-secondary:hover{background-color:#f9f9f9}.moderation-page{background:#fff;padding:24px;border-radius:10px}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.page-header h1{margin:0}.stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:20px;margin-bottom:24px}.stat-card{padding:20px;border:1px solid #eee;border-radius:8px}.stat-card h3{margin:0;color:#666;font-size:.9rem;font-weight:500}.stat-value{margin:10px 0 0;font-size:1.5rem;font-weight:700;color:#1a1a2e}.stat-subtitle{color:#666;font-size:.85rem}.stat-card.warning{border-color:#f59e0b}.stat-card.danger{border-color:#dc2626}.stat-card.success{border-color:#10b981}.section{margin-top:24px}.section h2{margin:0 0 16px;font-size:1.1rem}.filters{display:flex;gap:16px;margin-bottom:20px;flex-wrap:wrap}.filters select{padding:10px;border:1px solid #ddd;border-radius:5px;min-width:150px}.queue-table table,.takedown-table table,.sanctions-table table,.policy-table table,.hash-table table,.keyword-table table,.compliance-table table{width:100%;border-collapse:collapse}.queue-table th,.queue-table td,.takedown-table th,.takedown-table td,.sanctions-table th,.sanctions-table td,.policy-table th,.policy-table td,.hash-table th,.hash-table td,.keyword-table th,.keyword-table td,.compliance-table th,.compliance-table td{padding:12px;text-align:left;border-bottom:1px solid #eee}.queue-table th,.takedown-table th,.sanctions-table th,.policy-table th,.hash-table th,.keyword-table th,.compliance-table th{font-weight:600;color:#666}.queue-table tr,.takedown-table tr{cursor:pointer}.queue-table tr:hover,.takedown-table tr:hover{background-color:#f9f9f9}.status-pending{background-color:#fef3c7;color:#92400e}.status-inReview,.status-reviewing,.status-investigating{background-color:#dbeafe;color:#1e40af}.status-resolved,.status-active{background-color:#dcfce7;color:#166534}.status-escalated,.status-appealed{background-color:#fce7f3;color:#9d174d}.status-received{background-color:#e0e7ff;color:#3730a3}.status-actioned{background-color:#d1fae5;color:#065f46}.status-counterNotice{background-color:#fef3c7;color:#92400e}.status-rejected,.status-overturned{background-color:#fee2e2;color:#dc2626}.status-expired,.status-dismissed,.status-inactive{background-color:#e5e7eb;color:#374151}.priority-badge{display:inline-block;padding:4px 8px;border-radius:12px;font-size:.85rem}.priority-low{background-color:#e5e7eb;color:#374151}.priority-medium{background-color:#fef3c7;color:#92400e}.priority-high{background-color:#fed7aa;color:#9a3412}.priority-critical{background-color:#fee2e2;color:#dc2626}.bulk-actions{display:flex;gap:12px;margin-bottom:16px;align-items:center}.bulk-actions span{color:#666;font-size:.9rem}.btn-small{padding:6px 12px;background-color:#1a1a2e;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.85rem}.btn-small.danger{background-color:#dc2626}.btn-small.secondary{background-color:#fff;color:#333;border:1px solid #ddd}.no-data{text-align:center;color:#666;padding:20px}.error-message{background-color:#fee2e2;color:#dc2626;padding:12px;border-radius:5px;margin-bottom:20px}.modal{background:#fff;padding:24px;border-radius:10px;width:100%;max-width:500px;max-height:80vh;overflow-y:auto}.form-group{margin-bottom:16px}.policy-card{padding:20px;border:1px solid #eee;border-radius:8px;margin-bottom:16px}.policy-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.policy-card-header h3{margin:0}.policy-details{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;margin-top:12px}.policy-detail-item{font-size:.9rem}.policy-detail-item .label{color:#666;font-weight:500}.policy-detail-item .value{color:#1a1a2e}.toggle-switch{position:relative;width:44px;height:24px}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;inset:0;background-color:#ccc;border-radius:24px;transition:.3s}.toggle-slider:before{content:"";position:absolute;height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;border-radius:50%;transition:.3s}.toggle-switch input:checked+.toggle-slider{background-color:#1a1a2e}.toggle-switch input:checked+.toggle-slider:before{transform:translate(20px)}.subsection{margin-top:32px;padding-top:24px;border-top:1px solid #eee}.subsection h2{margin:0 0 16px;font-size:1.1rem}.subsection-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.subsection-header h2{margin:0}.compliance-score{font-size:2rem;font-weight:700}.compliance-score.good{color:#10b981}.compliance-score.warning{color:#f59e0b}.compliance-score.danger{color:#dc2626}.report-actions{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:24px}.checkbox-cell{width:40px}.checkbox-cell input[type=checkbox]{width:16px;height:16px;cursor:pointer}.marketplace-admin-page{padding:24px}.marketplace-admin-page h1{margin-bottom:16px}.marketplace-section{margin-top:16px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.section-header h3{margin:0}.stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:16px;margin-bottom:24px}.stat-card{background:var(--bg-secondary, #f8f9fa);border-radius:8px;padding:16px;text-align:center}.stat-value{font-size:1.5rem;font-weight:700;color:var(--text-primary, #1a1a2e)}.stat-label{font-size:.85rem;color:var(--text-secondary, #6b7280);margin-top:4px}.analytics-tables{display:grid;grid-template-columns:1fr 1fr;gap:24px}.analytics-table-section h4{margin-bottom:8px}.app-name-cell,.publisher-name-cell{display:flex;align-items:center;gap:8px}.app-icon-small,.publisher-logo-small{width:24px;height:24px;border-radius:4px;object-fit:cover}.empty-state{text-align:center;color:var(--text-secondary, #6b7280);padding:24px}.settlement-config-panel .section{margin-bottom:24px}.settlement-config-panel h3{margin:0 0 12px}.settlement-config-panel h4{margin:16px 0 8px}.settlement-config-panel .hint{margin:0 0 8px;color:#888;font-size:13px}.settlement-config-panel .provider-multi-select{display:flex;flex-wrap:wrap;gap:12px}.settlement-config-panel .provider-multi-select.disabled{opacity:.5}.settlement-config-panel .provider-multi-select label{display:flex;align-items:center;gap:6px}.settings-page{background:#fff;padding:24px;border-radius:10px}.settings-page h1{margin:0 0 24px}.tabs{display:flex;gap:0;border-bottom:1px solid #ddd;margin-bottom:24px}.tabs button{padding:12px 24px;border:none;background:none;cursor:pointer;color:#666;border-bottom:2px solid transparent;margin-bottom:-1px}.tabs button.active{color:#1a1a2e;border-bottom-color:#1a1a2e;font-weight:500}.form-group{margin-bottom:16px;max-width:400px}.form-group label{display:block;margin-bottom:5px;font-weight:500}.form-group input,.form-group select,.form-group textarea{width:100%;padding:10px;border:1px solid #ddd;border-radius:5px;box-sizing:border-box}.btn-primary{padding:10px 20px;background-color:#1a1a2e;color:#fff;border:none;border-radius:5px;cursor:pointer}.btn-secondary{padding:10px 20px;background-color:#fff;color:#333;border:1px solid #ddd;border-radius:5px;cursor:pointer}.btn-danger{padding:10px 20px;background-color:#dc2626;color:#fff;border:none;border-radius:5px;cursor:pointer}.btn-small{padding:6px 12px;font-size:.85rem}.panel-header{display:flex;justify-content:flex-end;margin-bottom:20px}.email-panel{min-height:100px}.template-list{display:flex;flex-direction:column;gap:8px;margin-bottom:20px;min-height:50px}.template-item{padding:12px;border:1px solid #eee;border-radius:5px;cursor:pointer}.template-item:hover{background-color:#f9f9f9}.template-edit{padding:20px;border:1px solid #eee;border-radius:8px}.template-edit h3{margin:0 0 16px}.api-keys-list table,.webhook-list table,.audit-log-list table{width:100%;border-collapse:collapse}.api-keys-list th,.api-keys-list td,.webhook-list th,.webhook-list td,.audit-log-list th,.audit-log-list td{padding:12px;text-align:left;border-bottom:1px solid #eee}.api-keys-list th,.webhook-list th,.audit-log-list th{font-weight:600;color:#666}.new-key-display{background-color:#fef3c7;padding:16px;border-radius:8px;margin-bottom:20px}.new-key-display p{margin:0 0 8px}.new-key-display code{display:block;padding:12px;background-color:#1a1a2e;color:#fff;border-radius:4px;margin-bottom:12px;word-break:break-all}.status-badge{display:inline-block;padding:4px 8px;border-radius:12px;font-size:.85rem}.status-active{background-color:#dcfce7;color:#166534}.status-inactive{background-color:#e5e7eb;color:#374151}.filters{display:flex;gap:16px;margin-bottom:20px}.filters select{padding:10px;border:1px solid #ddd;border-radius:5px;min-width:200px}.checkbox-group{display:flex;flex-direction:column;gap:8px}.checkbox-group label{display:flex;align-items:center;gap:8px;cursor:pointer}.checkbox-group input[type=checkbox]{width:auto}.success-message{background-color:#dcfce7;color:#166534;padding:12px;border-radius:5px;margin-bottom:20px}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background:#fff;padding:24px;border-radius:10px;width:100%;max-width:400px}.modal h2{margin:0 0 16px}.modal p{margin:0 0 16px;color:#666}.modal-actions{display:flex;gap:12px;justify-content:flex-end}.error-page{display:flex;align-items:center;justify-content:center;min-height:60vh;padding:2rem}.error-content{text-align:center;max-width:500px}.error-code{font-size:6rem;font-weight:700;color:var(--color-primary, #3b82f6);margin:0;line-height:1}.error-title{font-size:1.5rem;font-weight:600;color:var(--color-text-primary, #1f2937);margin:1rem 0 .5rem}.error-message{font-size:1rem;color:var(--color-text-secondary, #6b7280);margin:0 0 2rem;line-height:1.5}.error-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.error-button{padding:.75rem 1.5rem;border-radius:.375rem;font-size:.875rem;font-weight:500;cursor:pointer;text-decoration:none;transition:all .2s}.error-button.primary{background-color:var(--color-primary, #3b82f6);color:#fff;border:none}.error-button.primary:hover{background-color:var(--color-primary-hover, #2563eb)}.error-button.secondary{background-color:transparent;color:var(--color-text-secondary, #6b7280);border:1px solid var(--color-border, #e5e7eb)}.error-button.secondary:hover{background-color:var(--color-bg-hover, #f9fafb);color:var(--color-text-primary, #1f2937)}.error-details{text-align:left;margin:1.5rem 0;padding:1rem;background-color:var(--color-bg-secondary, #f9fafb);border-radius:.375rem;border:1px solid var(--color-border, #e5e7eb)}.error-details summary{cursor:pointer;font-weight:500;color:var(--color-text-secondary, #6b7280)}.error-details pre{margin:.5rem 0 0;padding:.5rem;background-color:var(--color-bg-primary, #ffffff);border-radius:.25rem;font-size:.75rem;overflow-x:auto;white-space:pre-wrap;word-break:break-all}.error-stack{color:var(--color-error, #ef4444)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5}.loading{min-height:100vh;display:flex;align-items:center;justify-content:center;font-size:1.2rem;color:#666}
