:root{color:#17212f;font-synthesis:none;background:#f3f6f9;font-family:Inter,Segoe UI,sans-serif;font-size:14px}*{box-sizing:border-box}body{margin:0;font-size:1rem;line-height:1.35}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{max-width:1400px;margin:0 auto;padding:18px}.topbar,.header-actions,.brand,.page-heading,.form-grid,.entitlements label{align-items:center;display:flex}.topbar,.page-heading{justify-content:space-between;gap:14px}.brand{color:#174d7d;gap:10px}.brand div{display:grid}.brand span,small{color:#607080;font-size:.78rem}.header-actions{gap:6px}.topbar{border-bottom:1px solid #d5dee8;padding-bottom:16px}nav{flex-wrap:wrap;gap:5px;padding:12px 0;display:flex}nav button,.secondary,.primary,.danger{color:#29425a;background:#fff;border:1px solid #b9c7d6;border-radius:6px;justify-content:center;align-items:center;gap:6px;padding:7px 10px;font-weight:600;display:inline-flex}nav button.active,.primary{color:#fff;background:#17659e;border-color:#17659e}.wide{width:100%}.workspace{gap:14px;display:grid}.page-heading h1,.page-heading p,h2{margin:0}.page-heading p{color:#526273;margin-top:5px}.two-columns{grid-template-columns:minmax(0,2fr) minmax(300px,1fr);gap:14px;display:grid}.card{background:#fff;border:1px solid #d5dee8;border-radius:8px;padding:14px;overflow:auto;box-shadow:0 4px 14px #0a27400a}.card h2{align-items:center;gap:7px;margin-bottom:11px;font-size:1.05rem;display:flex}.form{gap:10px;display:grid}.form label{color:#31475c;gap:4px;font-weight:600;display:grid}.form input,.form select,.form textarea,select{color:#17212f;background:#fff;border:1px solid #b9c7d6;border-radius:5px;padding:7px}.form textarea{resize:vertical}.form-grid{flex-wrap:wrap;align-items:end;gap:10px}.form-grid label{flex:1;min-width:180px}.license-form{margin-top:14px}.entitlements{grid-template-columns:repeat(auto-fit,minmax(235px,1fr));gap:6px;display:grid}.entitlements label{border:1px solid #d8e0e8;border-radius:5px;align-items:flex-start;gap:7px;padding:6px;font-weight:400}.entitlements span{display:grid}.entitlements small{margin-top:2px}fieldset{border:1px solid #d5dee8;border-radius:6px}legend{font-weight:700}table{border-collapse:collapse;width:100%;font-size:.88rem}th,td{text-align:left;vertical-align:top;border-bottom:1px solid #e1e7ed;padding:7px}th{text-transform:uppercase;letter-spacing:.04em;color:#526273;background:#f7f9fb;font-size:.74rem}code{overflow-wrap:anywhere;font-size:.75rem}.table-link{text-align:left;color:#174d7d;background:0 0;border:0;padding:0;display:block}.table-link:hover strong{text-decoration:underline}.notice{color:#725a15;background:#fff7db;border:1px solid #edd991;border-radius:6px;max-width:1400px;margin:0 auto 10px;padding:9px 12px}.notice.success{color:#1d6634;background:#eaf8ef;border-color:#b9e1c5}.notice.error{color:#982f2f;background:#fff0f0;border-color:#efbbbb}.loading{align-items:center;gap:7px;padding:10px;display:flex}.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.key-warning{color:#a14b18;font-weight:600}.login-shell{place-items:center;min-height:100vh;padding:18px;display:grid}.login-card{text-align:center;background:#fff;border:1px solid #d5dee8;border-radius:10px;gap:13px;width:min(440px,100%);padding:26px;display:grid;box-shadow:0 8px 26px #0a27401a}.login-card .brand{justify-content:center}.login-card p,.login-card aside{color:#526273}.login-card form{text-align:left;gap:10px;display:grid}.login-card label{gap:4px;font-weight:600;display:grid}.login-card input{border:1px solid #b9c7d6;border-radius:5px;padding:8px}.login-card aside{text-align:left;background:#f5f8fb;border-radius:5px;padding:8px;font-size:.8rem}.link-button{text-decoration:none}@media (width<=760px){.app-shell{padding:12px}.topbar,.page-heading{flex-direction:column;align-items:flex-start}.two-columns{grid-template-columns:1fr}.header-actions{flex-wrap:wrap}table{min-width:700px}}.license-table .state-column{width:13%}.license-table .entitlements-column{width:12%}.serial-cell{min-width:0}.serial-value{align-items:center;gap:5px;min-width:0;display:flex}.serial-value strong,.entitlements-cell{overflow-wrap:anywhere}.icon-button{color:#526273;background:0 0;border:1px solid #0000;border-radius:5px;flex:none;justify-content:center;align-items:center;padding:4px;display:inline-flex}.icon-button:hover{color:#17659e;background:#edf4fa;border-color:#c7d9e8}.license-actions{flex-wrap:wrap;gap:5px;display:flex}.table-action{color:#29425a;background:#fff;border:1px solid #c7d4df;border-radius:5px;align-items:center;gap:4px;padding:5px 7px;font-size:.78rem;font-weight:600;display:inline-flex}.table-action:hover{background:#edf4fa}.table-action.danger-action{color:#9a3838;border-color:#e4b5b5}.table-action.success-action{color:#1d713d;border-color:#b9dfc5}.status-badge{color:#526273;background:#eef2f5;border-radius:999px;margin-top:3px;padding:2px 7px;font-size:.72rem;font-weight:700;display:inline-block}.status-badge.active{color:#1d713d;background:#e4f6ea}.status-badge.deactivated{color:#9a5a16;background:#fff0df}.entitlement-fieldset{padding:10px}.entitlement-groups{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:9px;display:grid}.entitlement-group{background:#fbfcfd;border:1px solid #d8e0e8;border-radius:7px;padding:9px}.entitlement-group-header{justify-content:space-between;align-items:center;gap:8px;margin-bottom:7px;display:flex}.entitlement-group-header div{display:grid}.entitlement-group-header small{margin-top:2px}.entitlement-options{gap:5px;display:grid}.entitlement-option{border-radius:5px;align-items:center;gap:8px;padding:5px 4px;font-weight:400!important;display:flex!important}.entitlement-option:hover{background:#f0f5f9}.entitlement-option>span:last-child{display:grid}.entitlement-option small{margin-top:1px}.switch{flex:none;align-items:center;width:38px;height:22px;position:relative;display:inline-flex!important}.switch input{opacity:0;width:1px;height:1px;position:absolute}.switch-slider{cursor:pointer;background:#c7d1db;border-radius:999px;transition:background .18s;position:absolute;inset:0}.switch-slider:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .18s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #17212f45}.switch input:checked+.switch-slider{background:#1d7cb7}.switch input:checked+.switch-slider:after{transform:translate(16px)}.switch input:focus-visible+.switch-slider{outline-offset:2px;outline:3px solid #9dc9e8}.compact-switch{gap:6px;width:auto;height:22px;padding-right:2px}.compact-switch .switch-slider{width:38px;height:22px;position:relative;inset:auto}.switch-label{color:#526273;font-size:.76rem;font-weight:600}.modal-backdrop{z-index:20;background:#102b3f80;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.modal-card{background:#fff;border:1px solid #c7d5e1;border-radius:10px;width:min(560px,100%);max-height:calc(100vh - 36px);padding:18px;overflow:auto;box-shadow:0 18px 60px #102b3f45}.modal-card header{justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:14px;display:flex}.modal-card header h2{margin-bottom:4px}.modal-card header p{color:#526273;margin:0}.confirmation-modal{gap:10px;display:grid}.confirmation-modal>p{color:#31475c;margin:0}.modal-actions{justify-content:flex-end;gap:7px;margin-top:5px;display:flex}.edit-modal{gap:12px}.edit-modal .entitlement-fieldset{margin-top:2px}.edit-modal.form label{min-width:0}.edit-modal .form-grid{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.modal-card .secondary{background:#fff}@media (width<=760px){.app-shell{padding:12px}.topbar,.page-heading{flex-direction:column;align-items:flex-start}.two-columns{grid-template-columns:1fr}.header-actions{flex-wrap:wrap}.edit-modal .form-grid{grid-template-columns:1fr}.modal-actions{flex-wrap:wrap}.modal-actions button{flex:1}table{min-width:700px}}.license-table{min-width:1260px}.license-table .serial-column{width:19%}.license-table .edition-column{width:8%}.license-table .mode-column{width:7%}.license-table .installations-column,.license-table .tenants-column{width:6%}.license-table .actions-column{width:15%}.license-table .serial-cell{white-space:nowrap}.read-only-fieldset{background:#f7f9fb}.read-only-fieldset .entitlement-option,.read-only-fieldset .switch-label{color:#728192}.read-only-fieldset .switch-slider{opacity:.78}.switch input:disabled+.switch-slider{cursor:not-allowed}.audit-toolbar{justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;display:flex}.audit-toolbar-left{color:#526273;flex-wrap:wrap;align-items:center;gap:6px;font-size:.84rem;display:flex}.item-count-badge,.page-badge{color:#174d7d;background:#eaf1f7;border-radius:999px;justify-content:center;align-items:center;min-width:30px;padding:3px 8px;font-weight:700;display:inline-flex}.result-nav-button{padding:5px 7px}.audit-page-size{color:#526273!important;align-items:center!important;gap:6px!important;font-weight:600!important;display:inline-flex!important}.audit-page-size select{padding:4px 6px}.danger{color:#fff;background:#b94242;border-color:#b94242}.danger:hover{background:#963737}.form input[readonly]{color:#667586;background:#f1f4f7}@media (width<=760px){.audit-toolbar{flex-direction:column;align-items:flex-start}.audit-toolbar-left{width:100%}}.app-shell{width:100%;max-width:none;margin:0;padding:18px clamp(12px,2vw,32px)}.notice{max-width:none}.license-table{table-layout:auto;min-width:1260px}.license-table .serial-column,.license-table .actions-column{width:1%}.license-table .customer-column{width:10%}.license-table .edition-column,.license-table .mode-column{width:7%}.license-table .validity-column{width:9%}.license-table .installations-column,.license-table .tenants-column,.license-table .users-column{width:5%}.license-table .document-types-column,.license-table .documents-column{width:7%}.license-table .modules-column{width:auto}.license-table th,.license-table td{white-space:nowrap}.license-table .customer-column,.license-table .entitlements-cell{white-space:normal;overflow-wrap:anywhere}.license-table .serial-cell,.license-table .actions-column{white-space:nowrap}.status-badge{align-items:center;display:inline-flex}.status-badge.inactive{color:#9a5a16;background:#fff0df}.status-badge.revoked{color:#982f2f;background:#fff0f0}.status-select{color:#29425a;background:#fff;border:1px solid #b9c7d6;border-radius:999px;min-width:116px;padding:4px 28px 4px 9px;font-weight:700}.audit-action{color:#40566b;overflow-wrap:anywhere;background:#eef2f5;border-radius:999px;max-width:100%;padding:2px 7px;font-size:.76rem;font-weight:700;display:inline-flex}.card{max-width:100%}@media (width<=760px){.status-select{min-width:108px}.card{padding:11px}.audit-action{white-space:normal}}.mfa-dialog{width:min(560px,95vw);max-height:90vh;overflow-y:auto}.mfa-dialog form{gap:10px;display:grid}.mfa-dialog.form input:not([type=checkbox]){width:100%;min-height:34px;font:inherit}.mfa-dialog .compact-switch{gap:8px;width:auto;height:auto;min-height:22px}.mfa-dialog .compact-switch .switch-slider{flex:0 0 38px}.mfa-dialog .switch-label{min-width:0}.mfa-qr{width:240px;height:240px;margin:12px auto;display:block}.mfa-secret{overflow-wrap:anywhere;flex-wrap:wrap;align-items:center;gap:8px;display:flex}.mfa-recovery-codes{border:1px solid #d7deea;border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:12px;display:grid}.mfa-recovery-codes code{overflow-wrap:anywhere;font-size:13px}
