.login-view{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:.75rem}@media (min-width: 480px){.login-view{padding:1rem}}.login-card{width:100%;max-width:400px;padding:1.25rem;border-radius:8px;border:1px solid #cfd2dc;background:#f5f6fa;color:#1e1e2f}@media (min-width: 480px){.login-card{padding:2rem}}.login-brand{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.login-logo{flex-shrink:0}.login-card h1,.login-card h2,.login-card label{color:#1e1e2f}.login-card h1{margin:0 0 .25rem;font-size:1.25rem}.login-slogan{margin:0;font-size:.875rem;color:#6b7280}.login-card h2{margin:0 0 1.5rem;font-size:1rem;font-weight:400}.login-card label{display:block;margin-top:1rem;font-size:.875rem}.login-card input{width:100%;margin-top:.25rem;padding:.5rem;border-radius:4px;font-size:1rem;box-sizing:border-box;background:#fff;color:#1e1e2f;border:1px solid #cfd2dc}.login-card input::placeholder{color:#6b7280}.login-error{color:#b91c1c;background:#fee2e2;padding:8px 10px;border-radius:6px;margin-top:8px;font-size:.9rem}.login-card button,.login-button{margin-top:1.5rem;width:100%;padding:.6rem;border:none;border-radius:4px;font-size:1rem;cursor:pointer;background:#2563eb;color:#fff}.login-card button:hover:not(:disabled),.login-button:hover{background:#1d4ed8}.login-card button:disabled{opacity:.7;cursor:not-allowed}.billing-widget-actions{margin-top:.75rem}.billing-btn-activate{padding:.4rem .75rem;border:1px solid #1a1a2e;border-radius:6px;background:#1a1a2e;color:#fff;cursor:pointer;font-size:.875rem}.billing-btn-activate:hover:not(:disabled){background:#2a2a4e}.billing-btn-activate:disabled{opacity:.7;cursor:not-allowed}.billing-message{margin:.5rem 0 0;font-size:.8rem;color:#c00}.chart-widget .chart-container{min-height:120px;margin-top:.5rem}.chart-svg{width:100%;max-width:300px;height:auto}.chart-legend{margin:.5rem 0 0;padding-left:1.25rem;font-size:.875rem;color:#555}.chart-bars-inner{display:flex;align-items:flex-end;gap:.5rem;height:120px;margin-top:.5rem}.chart-bar-wrap{flex:1;display:flex;flex-direction:column;align-items:center}.chart-bar{width:100%;max-width:40px;min-height:4px;background:var(--chart-bar, #1a1a2e);border-radius:4px 4px 0 0;transition:height .2s}.chart-bar-label{font-size:.75rem;margin-top:.25rem}.chart-growth-value{font-size:2rem;font-weight:700;color:var(--chart-line, #1a1a2e)}.chart-growth-desc{margin:.25rem 0 0;font-size:.875rem;color:#666}.users-view{padding:.75rem 1rem}@media (min-width: 768px){.users-view{padding:1rem 1.5rem}}.users-view h1{margin:0 0 1rem;font-size:1.25rem}.users-error{color:#f66;margin-bottom:1rem}.users-table-wrap{overflow-x:auto}.users-table{width:100%;border-collapse:collapse;font-size:.875rem}.users-table th,.users-table td{padding:.5rem .75rem;text-align:left;border-bottom:1px solid rgba(255,255,255,.1)}.users-table th{color:#aaa;font-weight:600}.users-estado{display:inline-block;padding:.2rem .5rem;border-radius:4px}.users-estado--activo{background:#4caf504d;color:#81c784}.users-estado--inactivo{background:#9e9e9e4d;color:#bdbdbd}.users-estado--suspendido{background:#ff98004d;color:#ffb74d}.users-estado--eliminado{background:#f443364d;color:#e57373}.users-table select{padding:.25rem .5rem;border:1px solid rgba(255,255,255,.3);border-radius:4px;background:#2a2a4a;color:#eee;font-size:.875rem}.users-empty{margin-top:1rem;color:#888}.audit-view{padding:.75rem 1rem}@media (min-width: 768px){.audit-view{padding:1rem 1.5rem}}.audit-view-header{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1rem}.audit-view-header h1{margin:0;font-size:1.5rem}.audit-actions{display:flex;gap:.5rem;margin-left:auto}.audit-btn{padding:.5rem 1rem;border:1px solid #1a1a2e;border-radius:6px;background:#fff;cursor:pointer;font-size:.875rem}.audit-btn-export:hover{background:#eee}.audit-btn-pdf:disabled{opacity:.6;cursor:not-allowed}.audit-filters{display:flex;flex-wrap:wrap;gap:.75rem 1.5rem;margin-bottom:1rem;padding:.75rem;background:#f5f5f5;border-radius:8px}.audit-filters label{display:flex;flex-direction:column;gap:.25rem;font-size:.875rem}.audit-filters input,.audit-filters select{padding:.35rem .5rem;border:1px solid #ccc;border-radius:4px;min-width:120px}.audit-table-wrap{overflow-x:auto}.audit-table{width:100%;border-collapse:collapse;font-size:.875rem}.audit-table th,.audit-table td{padding:.5rem .75rem;text-align:left;border-bottom:1px solid #ddd}.audit-table th{background:#1a1a2e;color:#eee;font-weight:600}.audit-result--ok{color:#0a0}.audit-result--error{color:#c00}.audit-table-empty{padding:2rem;text-align:center;color:#666}.profile-view{padding:.75rem 1rem;max-width:640px;margin:0 auto}@media (min-width: 768px){.profile-view{padding:1rem 1.5rem}}.profile-view-header{margin-bottom:1.25rem}.profile-view-header h1{margin:0;font-size:1.5rem}.profile-loading,.profile-error{margin:1rem 0}.profile-error{color:#f66}.profile-form{display:flex;flex-direction:column;gap:1.25rem}.profile-section{padding:1rem;border:1px solid rgba(255,255,255,.15);border-radius:8px;background:#2a2a4a66}.profile-section-title{margin:0 0 .75rem;font-size:1rem;font-weight:600;color:#ccc}.profile-row{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:.75rem}.profile-radio-label{display:inline-flex;align-items:center;gap:.35rem;cursor:pointer;font-size:.9rem;color:#ddd}.profile-radio-label input{margin:0}.profile-label{display:flex;flex-direction:column;gap:.25rem;margin-bottom:.75rem}.profile-label:last-child{margin-bottom:0}.profile-label-text{font-size:.875rem;color:#aaa}.profile-input,.profile-textarea{padding:.5rem .6rem;border:1px solid rgba(255,255,255,.3);border-radius:4px;background:#2a2a4a;color:#eee;font-size:1rem}.profile-textarea{resize:vertical;min-height:80px}.profile-avatar-block{display:flex;flex-direction:column;gap:.75rem}.profile-avatar-preview{width:96px;height:96px;border-radius:8px;overflow:hidden;background:#0000004d;display:flex;align-items:center;justify-content:center}.profile-avatar-img{width:100%;height:100%;object-fit:cover}.profile-avatar-placeholder{font-size:.75rem;color:#666;text-align:center;padding:.5rem}.profile-message{margin:0;padding:.5rem .75rem;border-radius:4px;font-size:.9rem}.profile-message--success{background:#4caf5033;color:#81c784}.profile-message--error{background:#f4433633;color:#e57373}.profile-submit{align-self:flex-start;padding:.6rem 1.25rem;border:none;border-radius:6px;background:#4a6cf7;color:#fff;font-size:1rem;cursor:pointer}.profile-submit:hover:not(:disabled){background:#5a7cff}.profile-submit:disabled{opacity:.7;cursor:not-allowed}.role-templates-view{padding:.75rem 1rem}@media (min-width: 768px){.role-templates-view{padding:1rem 1.5rem}}.role-templates-header{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1rem}.role-templates-header h1{margin:0;font-size:1.5rem}.role-templates-btn-create{padding:.5rem 1rem;border:none;border-radius:6px;background:#4a6cf7;color:#fff;font-size:.9rem;cursor:pointer}.role-templates-btn-create:hover{background:#5a7cff}.role-templates-loading,.role-templates-empty,.role-templates-no-permission,.role-templates-error{margin:1rem 0}.role-templates-error{color:#f66}.role-templates-no-permission{color:#aaa}.role-templates-message{margin:.5rem 0;padding:.5rem .75rem;border-radius:4px;font-size:.9rem}.role-templates-message--success{background:#4caf5033;color:#81c784}.role-templates-message--error{background:#f4433633;color:#e57373}.role-templates-ul{list-style:none;margin:0;padding:0}.role-templates-li{padding:1rem;margin-bottom:.75rem;border:1px solid rgba(255,255,255,.15);border-radius:8px;background:#2a2a4a66}.role-templates-li-main{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.role-templates-li-name{font-weight:600;font-size:1.05rem}.role-templates-li-badge{font-size:.75rem;padding:.2rem .5rem;border-radius:4px;background:#ffffff26;color:#ccc}.role-templates-li-inuse{font-size:.75rem;color:#ffb74d}.role-templates-li-desc{margin:.35rem 0 0;font-size:.9rem;color:#aaa}.role-templates-li-meta{margin:.25rem 0 0;font-size:.8rem;color:#888}.role-templates-li-actions{margin-top:.75rem;display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.role-templates-btn{padding:.35rem .65rem;border:1px solid rgba(255,255,255,.3);border-radius:4px;background:transparent;color:#ddd;font-size:.85rem;cursor:pointer}.role-templates-btn:hover{background:#ffffff1a}.role-templates-btn-clone{color:#81c784;border-color:#81c78480}.role-templates-btn-edit{color:#64b5f6;border-color:#64b5f680}.role-templates-li-hint{font-size:.8rem;color:#888}.role-templates-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.role-templates-modal{background:#1a1a2e;border:1px solid rgba(255,255,255,.2);border-radius:8px;padding:1.5rem;max-width:480px;width:100%;max-height:90vh;overflow-y:auto}.role-templates-modal h2{margin:0 0 1rem;font-size:1.25rem}.role-templates-field{display:flex;flex-direction:column;gap:.25rem;margin-bottom:.75rem}.role-templates-field span{font-size:.875rem;color:#aaa}.role-templates-field input{padding:.5rem;border:1px solid rgba(255,255,255,.3);border-radius:4px;background:#2a2a4a;color:#eee;font-size:1rem}.role-templates-cap-list{margin:1rem 0;padding:.75rem;border:1px solid rgba(255,255,255,.15);border-radius:6px}.role-templates-cap-list legend{font-size:.9rem;color:#ccc}.role-templates-cap-item{display:flex;align-items:center;gap:.5rem;margin:.35rem 0;cursor:pointer;font-size:.9rem;color:#ddd}.role-templates-cap-item input{margin:0}.role-templates-modal-hint{margin:.5rem 0;font-size:.85rem;color:#888}.role-templates-modal-actions{margin-top:1.25rem;display:flex;gap:.75rem;justify-content:flex-end}.role-templates-modal-actions button{padding:.5rem 1rem;border:1px solid rgba(255,255,255,.3);border-radius:4px;background:transparent;color:#eee;font-size:.9rem;cursor:pointer}.role-templates-modal-actions button:hover{background:#ffffff1a}.role-templates-btn-save{background:#4a6cf7!important;border-color:#4a6cf7!important}.role-templates-btn-save:hover{background:#5a7cff!important}.administration{padding:.75rem 1rem}@media (min-width: 768px){.administration{padding:1rem 1.5rem}}.administration-header h1{margin:0 0 1rem;font-size:1.25rem}.administration-subnav{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.administration-subnav-link{padding:.4rem .75rem;font-size:.875rem;border:1px solid #ccc;background:#fff;border-radius:4px;cursor:pointer}.administration-subnav-link[aria-current=page]{background:#e0e0e0;border-color:#999}.administration-content{min-height:120px}.administration-placeholder h2{margin:0 0 .5rem;font-size:1.1rem}.administration-empty{color:#666;font-size:.875rem;margin:0}.administration-error{color:#c00;font-size:.875rem;margin:0}.administration-mock-badge{font-size:.75rem;color:#888;margin:0 0 .75rem;font-style:italic}.administration-subscriber-fields{display:grid;grid-template-columns:auto 1fr;gap:.25rem 1rem;font-size:.875rem;margin:0}.administration-subscriber-fields dt{margin:0;color:#555}.administration-subscriber-fields dd{margin:0}.administration-plan-limits{margin-top:1.5rem;padding-top:1rem;border-top:1px solid #eee}.administration-plan-limits h3{margin:0 0 .5rem;font-size:1rem}.administration-usage-indicators{margin-top:1.5rem;padding-top:1rem;border-top:1px solid #eee}.administration-usage-indicators h3{margin:0 0 .75rem;font-size:1rem}.administration-usage-list{list-style:none;margin:0;padding:0}.administration-usage-row{display:grid;grid-template-columns:1fr auto auto auto;align-items:center;gap:.5rem 1rem;font-size:.875rem;padding:.35rem 0;border-bottom:1px solid #f0f0f0}.administration-usage-row:last-child{border-bottom:0}.administration-usage-label{color:#555}.administration-usage-values{white-space:nowrap}.administration-usage-bar-wrap{width:80px;height:6px;background:#eee;border-radius:3px;overflow:hidden}.administration-usage-bar{height:100%;border-radius:3px;transition:width .2s ease}.administration-usage-ok .administration-usage-bar{background:#2e7d32}.administration-usage-warning .administration-usage-bar{background:#ed6c02}.administration-usage-reached .administration-usage-bar{background:#c62828}.administration-usage-badge{font-size:.75rem;padding:.15rem .4rem;border-radius:4px;font-weight:500}.administration-usage-ok .administration-usage-badge{background:#e8f5e9;color:#1b5e20}.administration-usage-warning .administration-usage-badge{background:#fff3e0;color:#e65100}.administration-usage-reached .administration-usage-badge{background:#ffebee;color:#b71c1c}.administration-usage-alerts{margin-top:1.5rem;padding-top:1rem;border-top:1px solid #eee}.administration-usage-alerts h3{margin:0 0 .25rem;font-size:1rem}.administration-usage-alerts-note{font-size:.8rem;color:#666;margin:0 0 .5rem}.administration-usage-alerts-list{list-style:none;margin:0;padding:0}.administration-usage-alert{display:flex;align-items:flex-start;gap:.5rem;font-size:.875rem;padding:.4rem 0;border-bottom:1px solid #f0f0f0}.administration-usage-alert:last-child{border-bottom:0}.administration-usage-alert-badge{flex-shrink:0;font-size:.7rem;padding:.15rem .4rem;border-radius:4px;font-weight:600}.administration-usage-alert-warning .administration-usage-alert-badge{background:#fff3e0;color:#e65100}.administration-usage-alert-critical .administration-usage-alert-badge{background:#ffebee;color:#b71c1c}.administration-usage-alert-metric{flex-shrink:0;color:#555;font-weight:500}.administration-usage-alert-message{color:#333}.administration-usage-history{margin-top:1.5rem;padding-top:1rem;border-top:1px solid #eee}.administration-usage-history h3{margin:0 0 .25rem;font-size:1rem}.administration-usage-history-note{font-size:.8rem;color:#666;margin:0 0 .75rem}.administration-usage-history-list{list-style:none;margin:0;padding:0}.administration-usage-history-item{margin-bottom:1rem}.administration-usage-history-item:last-child{margin-bottom:0}.administration-usage-history-label{display:block;font-size:.875rem;color:#555;margin-bottom:.25rem}.administration-history-chart{display:block;max-width:100%;color:#1976d2}.administration-users h2{margin:0 0 .75rem;font-size:1.1rem}.administration-users-table-wrap{overflow-x:auto}.administration-users-table{width:100%;border-collapse:collapse;font-size:.875rem}.administration-users-table th,.administration-users-table td{padding:.5rem .75rem;text-align:left;border-bottom:1px solid #e0e0e0}.administration-users-table th{font-weight:600;background:#f5f5f5}.administration-users-badge{display:inline-block;padding:4px 8px;border-radius:6px;font-size:12px;font-weight:600}.administration-users-badge--active{background:#e6f7ed;color:#1a7f37}.administration-users-badge--blocked{background:#fdecea;color:#b42318}.administration-users-badge--deleted{background:#f2f4f7;color:#667085}.administration-users-badge--suspended{background:#ffebee;color:#c62828}.administration-users-badge--invited{background:#f5f5f5;color:#616161}.administration-users-badge--root{font-size:10px;padding:2px 6px;margin-left:.35rem;background:#e8e8e8;color:#555;vertical-align:middle}.administration-users-muted{color:#999;font-size:.875rem}.administration-users-btn{padding:.25rem .5rem;font-size:.75rem;border-radius:4px;cursor:pointer;border:1px solid #ccc;background:#fff}.administration-users-btn--suspend{color:#c62828;border-color:#ef9a9a}.administration-users-btn--reactivate{color:#2e7d32;border-color:#a5d6a7}.administration-users-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000}.administration-users-modal{background:#fff;padding:1.25rem;border-radius:8px;max-width:360px;box-shadow:0 4px 12px #00000026}.administration-users-modal h3{margin:0 0 .5rem;font-size:1rem}.administration-users-modal p{margin:0 0 1rem;font-size:.875rem}.administration-users-modal-actions{display:flex;gap:.5rem;justify-content:flex-end}.administration-users-modal-cancel{padding:.4rem .75rem;border:1px solid #ccc;background:#fff;border-radius:4px;cursor:pointer}.administration-users-modal-confirm{padding:.4rem .75rem;border:1px solid #2e7d32;background:#e8f5e9;color:#1b5e20;border-radius:4px;cursor:pointer}.administration-users-modal-confirm:disabled{opacity:.6;cursor:not-allowed}.administration-users-modal--wide{max-width:420px}.administration-users-role-label{display:block;margin-bottom:.75rem;font-size:.875rem}.administration-users-role-select{display:block;margin-top:.25rem;padding:.35rem .5rem;min-width:160px;border:1px solid #ccc;border-radius:4px}.administration-users-btn--role{color:#1565c0;border-color:#90caf9}.administration-users-success{margin:0 0 .5rem;padding:.5rem;background:#e8f5e9;color:#2e7d32;font-size:.875rem;border-radius:4px}.administration-plans{padding:.5rem 0}.administration-plans-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.administration-plans-header h2{margin:0;font-size:1.1rem}.administration-plans-btn-create{padding:.4rem .75rem;border:1px solid #1976d2;background:#1976d2;color:#fff;border-radius:4px;cursor:pointer;font-size:.875rem}.administration-plans-loading,.administration-plans-error{margin:0;font-size:.875rem}.administration-plans-error button{margin-top:.5rem;padding:.35rem .75rem;cursor:pointer}.administration-plans-save-error{margin-bottom:.75rem;padding:.5rem;background:#ffebee;color:#c62828;font-size:.875rem;border-radius:4px}.administration-plans-table{width:100%;border-collapse:collapse;font-size:.875rem}.administration-plans-table th,.administration-plans-table td{padding:.5rem;text-align:left;border-bottom:1px solid #e0e0e0}.administration-plans-table tr.selected{background:#e3f2fd}.administration-plans-table tbody tr{cursor:pointer}.administration-plans-table .administration-plans-btn-edit,.administration-plans-table .administration-plans-btn-deactivate{margin-right:.5rem;padding:.25rem .5rem;font-size:.8rem;cursor:pointer}.administration-plans-btn-deactivate{color:#c62828;border-color:#ef9a9a;background:#fff}.administration-plans-editor{margin-top:1.5rem;padding:1rem;border:1px solid #e0e0e0;border-radius:8px;background:#fafafa}.administration-plans-editor h3,.administration-plans-editor h4{margin:0 0 .75rem;font-size:1rem}.administration-plans-editor label{display:block;margin-bottom:.5rem;font-size:.875rem}.administration-plans-editor input[type=text],.administration-plans-editor input[type=number],.administration-plans-editor select{margin-left:.5rem;padding:.35rem;border:1px solid #ccc;border-radius:4px}.administration-plans-editor button{margin-right:.5rem;margin-top:.5rem;padding:.4rem .75rem;cursor:pointer;font-size:.875rem}.administration-plans-limits{margin-top:1rem;padding-top:1rem;border-top:1px solid #e0e0e0}.administration-plans-limits-table{width:100%;border-collapse:collapse;font-size:.875rem;margin-bottom:.5rem}.administration-plans-limits-table th,.administration-plans-limits-table td{padding:.35rem;text-align:left;border-bottom:1px solid #eee}.administration-plans-limits-table input,.administration-plans-limits-table select{width:100%;max-width:200px;padding:.25rem}.administration-plans-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000}.administration-plans-modal{background:#fff;padding:1.25rem;border-radius:8px;max-width:420px;box-shadow:0 4px 20px #00000026}.administration-plans-modal h3{margin:0 0 .75rem;font-size:1.1rem}.administration-plans-modal p{margin:0 0 1rem;font-size:.9rem;color:#333}.administration-plans-modal-actions{display:flex;gap:.5rem}.administration-plans-btn-confirm{background:#c62828;color:#fff;border:none;padding:.4rem .75rem;border-radius:4px;cursor:pointer}.administration-plans-impact{margin-bottom:.75rem;padding:.5rem;background:#e3f2fd;border-radius:4px;font-size:.875rem}.administration-plans-editor-tabs{display:flex;gap:.25rem;margin-bottom:1rem}.administration-plans-editor-tabs button{padding:.35rem .75rem;border:1px solid #ccc;background:#fff;border-radius:4px;cursor:pointer;font-size:.875rem}.administration-plans-editor-tabs button.active{background:#e0e0e0;border-color:#999}.administration-plans-history{margin-top:.5rem}.administration-plans-history-table{width:100%;border-collapse:collapse;font-size:.875rem;margin-bottom:.75rem}.administration-plans-history-table th,.administration-plans-history-table td{padding:.4rem;text-align:left;border-bottom:1px solid #eee}.administration-plans-history-table tr.selected{background:#e3f2fd}.administration-plans-diff{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:.75rem}.administration-plans-diff pre{margin:0;padding:.5rem;background:#f5f5f5;border-radius:4px;font-size:.8rem;overflow:auto;max-height:200px}.administration-plans-diff strong{display:block;margin-bottom:.25rem;font-size:.875rem}.scenter{max-width:1400px;margin:0 auto;padding:1rem 1.25rem 2rem}.scenter-head h1{margin:0 0 .35rem;font-size:1.35rem}.scenter-disclaimer,.scenter-muted{color:#6b7280;font-size:.9rem;margin:0 0 1rem}.scenter-filters{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;align-items:center}.scenter-input,.scenter-select{padding:.4rem .55rem;border:1px solid #d1d5db;border-radius:6px;font-size:.9rem}.scenter-select-block{width:100%;margin-bottom:.5rem}.scenter-btn{padding:.45rem .75rem;border:1px solid #d1d5db;border-radius:6px;background:#fff;cursor:pointer;font-size:.9rem}.scenter-btn:hover:not(:disabled){background:#f3f4f6}.scenter-btn:disabled{opacity:.5;cursor:not-allowed}.scenter-btn-primary{background:#1d4ed8;color:#fff;border-color:#1d4ed8}.scenter-btn-sm{padding:.25rem .5rem;font-size:.8rem}.scenter-table-wrap{overflow-x:auto;border:1px solid #e5e7eb;border-radius:8px}.scenter-table{width:100%;border-collapse:collapse;font-size:.8rem}.scenter-table th,.scenter-table td{padding:.45rem .5rem;border-bottom:1px solid #f3f4f6;text-align:left}.scenter-table th{background:#f9fafb;font-weight:600}.scenter-pager{display:flex;gap:.5rem;align-items:center;margin-top:1rem}.scenter-alert{padding:.6rem .75rem;border-radius:6px;margin-bottom:1rem;font-size:.9rem}.scenter-alert-err{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.scenter-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;display:flex;align-items:flex-start;justify-content:center;padding:2rem 1rem;z-index:50;overflow-y:auto}.scenter-modal{background:#fff;border-radius:10px;max-width:920px;width:100%;box-shadow:0 20px 50px #00000026}.scenter-modal-head{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid #e5e7eb}.scenter-modal-head h2{margin:0;font-size:1.1rem}.scenter-modal-body{padding:1rem 1.25rem 1.5rem}.scenter-pre{background:#111827;color:#e5e7eb;padding:.75rem;border-radius:8px;overflow:auto;max-height:280px;font-size:.75rem}.scenter-pre-tiny{max-height:120px;margin-top:.35rem}.scenter-mono{font-family:ui-monospace,monospace}.scenter-actions{margin-top:1rem;padding-top:1rem;border-top:1px solid #e5e7eb}.scenter-label{display:block;font-size:.85rem;margin:.5rem 0 .25rem}.scenter-textarea{width:100%;box-sizing:border-box;padding:.5rem;border:1px solid #d1d5db;border-radius:6px;font-size:.9rem}.scenter-row{display:flex;gap:.5rem;margin-top:.75rem;flex-wrap:wrap}.scenter-preview{margin-top:1rem}.scenter-preview h4,.scenter-preview h5{margin:.5rem 0 .25rem}.scenter-audit{list-style:none;padding:0;margin:0}.scenter-reason-hint{font-size:.8rem;margin:.25rem 0 .75rem;color:#6b7280}.server-status{max-width:960px;margin:0 auto;padding:1rem 1.25rem 2rem;box-sizing:border-box}.server-status-section{margin-bottom:2rem}.server-status-section--pdf{padding-top:.5rem;border-top:1px solid #e5e7eb}.server-status-h2{margin:0 0 .35rem;font-size:1.1rem;font-weight:700;color:#111827}.server-status-h3{margin:0 0 .5rem;font-size:.85rem;font-weight:700;color:#374151;text-transform:uppercase;letter-spacing:.04em}.server-status-live-disclaimer{margin-bottom:1rem;max-width:52rem}.server-status-live-meta{font-size:.85rem;color:#4b5563;margin:0 0 1rem}.server-status-live-meta-label{font-weight:600;color:#6b7280}.server-status-live-meta-sep{color:#d1d5db}.server-status-code{font-size:.8rem;background:#f3f4f6;padding:.1rem .35rem;border-radius:4px}.server-status-alerts{margin-bottom:1rem}.server-status-alert-list{margin:0;padding-left:1.15rem;font-size:.9rem}.server-status-alert-item{margin-bottom:.35rem}.server-status-alert-item--critical{color:#991b1b}.server-status-alert-item--warning{color:#92400e}.server-status-live-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem;margin-bottom:1rem}.server-status-card{border:1px solid #e5e7eb;border-radius:8px;padding:.85rem 1rem;background:#fafafa}.server-status-card--wide{grid-column:1 / -1}.server-status-card-title{margin:0 0 .25rem;font-size:.95rem;font-weight:700;color:#111827}.server-status-card-sub{margin:0 0 .65rem;font-size:.75rem;color:#6b7280}.server-status-card-muted{margin:0;font-size:.85rem;color:#6b7280}.server-status-card-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.35rem}.server-status-card-pct{font-size:.9rem;font-weight:700;color:#111827}.server-status-badge{font-size:.65rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:.15rem .45rem;border-radius:4px}.server-status-badge--ok{color:#14532d;background:#bbf7d0}.server-status-badge--warning{color:#78350f;background:#fde68a}.server-status-badge--critical{color:#7f1d1d;background:#fecaca}.server-status-meter{height:8px;background:#e5e7eb;border-radius:4px;overflow:hidden;margin-bottom:.65rem}.server-status-meter-fill{height:100%;border-radius:4px;min-width:0;transition:width .2s ease}.server-status-meter-fill--ok{background:#22c55e}.server-status-meter-fill--warning{background:#eab308}.server-status-meter-fill--critical{background:#ef4444}.server-status-card-dl{display:grid;gap:.35rem .75rem;margin:0;font-size:.8rem}.server-status-card-dl>div{display:flex;justify-content:space-between;gap:.5rem}.server-status-card-dl dt{margin:0;color:#6b7280;font-weight:600}.server-status-card-dl dd{margin:0;text-align:right;color:#111827}.server-status-card-dl--load>div{flex-direction:column;align-items:flex-start}.server-status-card-dl--load dd{text-align:left;font-size:1rem;font-weight:600}.server-status-actions--live{margin-top:.25rem}.server-status--pdf-expanded{max-width:100%;width:100%;margin-left:auto;margin-right:auto;padding-left:clamp(.5rem,2vw,1.25rem);padding-right:clamp(.5rem,2vw,1.25rem)}.server-status h1{margin:0 0 .5rem;font-size:1.35rem}.server-status-head{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;margin-bottom:1.25rem}.server-status-tier{font-size:.7rem;font-weight:700;letter-spacing:.05em;padding:.2rem .5rem;border-radius:4px}.server-status-tier--local{color:#1e3a5f;background:#bfdbfe}.server-status-tier--production{color:#7f1d1d;background:#fecaca}.server-status-muted{color:#6b7280;font-size:.9rem;margin:0 0 1rem}.server-status-dl{display:grid;gap:.5rem 1rem;margin:0 0 1.25rem}.server-status-dl>div{display:grid;grid-template-columns:8rem 1fr;gap:.35rem .75rem;font-size:.9rem}.server-status-dl dt{margin:0;color:#6b7280;font-weight:600}.server-status-dl dd{margin:0;word-break:break-word}.server-status-actions{display:flex;flex-wrap:wrap;gap:.5rem}.server-status-btn{padding:.45rem .85rem;border-radius:6px;border:1px solid #d1d5db;background:#fff;font-size:.9rem;cursor:pointer}.server-status-btn:hover:not(:disabled){background:#f9fafb}.server-status-btn:disabled{opacity:.55;cursor:not-allowed}.server-status-btn--primary{border-color:#2563eb;background:#eff6ff;color:#1d4ed8}.server-status-alert{padding:.65rem .85rem;border-radius:6px;background:#fef2f2;border:1px solid #fecaca;color:#991b1b;font-size:.9rem}.server-status-sha{font-family:ui-monospace,monospace;font-size:.75rem}.server-status-pdf-loading{margin:1rem 0 0;padding:.75rem 1rem;border-radius:6px;background:#f3f4f6;color:#374151;font-size:.9rem}.server-status-pdf-err{margin-top:.75rem}.server-status-pdf-panel{margin-top:1.25rem;margin-left:auto;margin-right:auto;width:min(100%,calc(100vw - 2.5rem));max-width:100%;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;background:#525659;min-height:max(80vh,calc(100vh - 240px));box-shadow:0 4px 24px #0f172a14}.server-status-pdf-iframe{display:block;width:100%;min-height:max(80vh,calc(100vh - 240px));height:max(80vh,calc(100vh - 240px));border:0;background:#fff}.app{display:flex;flex-direction:column;min-height:100vh}.app-header{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;padding:1rem 1.5rem}.app-brand{display:flex;align-items:center;gap:.5rem}.app-logo{flex-shrink:0}.app-title{font-size:1rem;font-weight:600;white-space:nowrap}.app-slogan{display:none;margin-left:.25rem;font-size:.8rem;font-weight:400;color:#aaa}@media (min-width: 768px){.app-slogan{display:inline}.app-title{font-size:1.25rem}}@media (max-width: 767px){.app-header{padding:.75rem 1rem;gap:.5rem}.app-header-right{width:100%;margin-left:0;justify-content:flex-end;flex-wrap:wrap}.app-user-email{max-width:120px}}@media (max-width: 479px){.app-header{padding:.5rem .75rem}.app-title{font-size:.9rem;white-space:normal}.app-nav{width:100%;order:3;flex-wrap:wrap}.app-nav-link{font-size:.8rem;padding:.35rem .5rem}}.app-nav{display:flex;gap:.5rem}.app-nav-link{padding:.4rem .75rem;border:1px solid rgba(255,255,255,.3);border-radius:6px;background:transparent;color:#eee;cursor:pointer;font-size:.875rem}.app-nav-link:hover{background:#ffffff1a}.app-nav-link[aria-current=page]{background:#fff3}.app-role-selector{margin-left:auto;display:flex;align-items:center;gap:.5rem}.app-role-selector label{font-size:.875rem;color:#ccc}.app-role-selector select{padding:.35rem .5rem;border:1px solid rgba(255,255,255,.3);border-radius:4px;background:#2a2a4a;color:#eee;font-size:.875rem}.app-tenant-selector{display:flex;align-items:center;gap:.5rem}.app-tenant-selector label{font-size:.875rem;color:#ccc}.app-tenant-selector select{padding:.35rem .5rem;border:1px solid rgba(255,255,255,.3);border-radius:4px;background:#2a2a4a;color:#eee;font-size:.875rem}.app-tenant-loading,.app-tenant-current{font-size:.875rem;color:#aaa}.app-header-right{display:flex;align-items:center;gap:1rem;margin-left:auto}.app-user-email{font-size:.8rem;color:#aaa;max-width:180px;overflow:hidden;text-overflow:ellipsis}.app-btn-logout{padding:.35rem .6rem;border:1px solid rgba(255,255,255,.3);border-radius:4px;background:transparent;color:#eee;font-size:.8rem;cursor:pointer}.app-btn-logout:hover{background:#ffffff1a}.app-footer{margin-top:auto;padding:.75rem 1.5rem;font-size:.75rem;color:#888;border-top:1px solid rgba(255,255,255,.1)}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,sans-serif;font-size:16px;line-height:1.5}.app{min-height:100vh}.app-header{padding:1rem 1.5rem;background:#1a1a2e;color:#eee}.app-header h1{margin:0;font-size:1.25rem}.dashboard{padding:1rem}@media (min-width: 768px){.dashboard{padding:1.5rem}}.dashboard-header{margin-bottom:1.5rem}.dashboard-header h1{margin:0;font-size:1.5rem}.dashboard-grid{display:grid;grid-template-columns:1fr;gap:1rem}@media (min-width: 480px){.dashboard-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}}@media (min-width: 1024px){.dashboard-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}.dashboard-widget{padding:1rem;border:1px solid #ddd;border-radius:8px;background:#fafafa}.dashboard-widget h3{margin:0 0 .75rem;font-size:1rem}.dashboard-widget ul{margin:0;padding-left:1.25rem}.dashboard-widget li{margin-bottom:.25rem}.dashboard-widget .placeholder{margin:.5rem 0 0;font-size:.875rem;color:#666}
