/* Keryex Admin v1.9.3 — production XP role reconciliation UI */
.kx-rank-reconcile{margin:14px 0 18px;background:linear-gradient(142deg,#0b2344,#091b34 77%);border:1px solid rgba(84,143,219,.27);border-radius:14px;padding:20px;box-shadow:0 8px 28px rgba(0,0,0,.13);color:#e9f2ff}
.kx-reconcile-head,.kx-reconcile-controls,.kx-reconcile-previewbar,.kx-reconcile-progress-head{display:flex;align-items:center;justify-content:space-between;gap:18px}.kx-reconcile-heading{display:flex;gap:13px;align-items:center}.kx-reconcile-icon{height:42px;width:42px;border-radius:12px;display:grid;place-items:center;background:#123f77;border:1px solid #235996;color:#89c5ff;font-size:25px;font-weight:600;flex-shrink:0}.kx-reconcile-heading .eyebrow{font-size:10px;font-weight:800;letter-spacing:.12em;color:#80b5ef}.kx-reconcile-heading h2{font-size:18px;margin:4px 0 4px;letter-spacing:-.02em;font-weight:750}.kx-reconcile-heading p{font-size:12px;color:#9cb3ce;margin:0;line-height:1.5}.kx-reconcile-pill{font-size:11px;font-weight:700;white-space:nowrap;border-radius:99px;border:1px solid #28517c;padding:8px 12px;background:#0c2a4b;color:#b4d5fa}.kx-reconcile-pill[data-kind="running"]{color:#d4e8ff;background:#174d82}.kx-reconcile-pill[data-kind="success"]{color:#8ddabb;background:#103c35;border-color:#2c8069}.kx-reconcile-pill[data-kind="error"]{color:#ffbcba;border-color:#814452;background:#421f31}.kx-reconcile-controls{margin-top:18px;border:1px solid rgba(88,145,213,.21);background:rgba(2,13,26,.29);padding:14px 15px;border-radius:11px;flex-wrap:wrap}.kx-reconcile-option{display:flex;flex-direction:column;gap:4px;flex:1;min-width:190px}.kx-reconcile-option strong{font-size:12px}.kx-reconcile-option small{font-size:11px;line-height:1.4;color:#94aecb}.kx-reconcile-switch{display:inline-flex;position:relative;width:41px;height:23px;flex-shrink:0}.kx-reconcile-switch input{position:absolute;opacity:0;width:100%;height:100%;cursor:pointer}.kx-reconcile-switch span{width:41px;height:23px;display:block;border-radius:99px;background:#33475f;box-shadow:inset 0 0 0 1px #56708b;transition:background .2s}.kx-reconcile-switch span:after{content:"";position:absolute;width:17px;height:17px;left:3px;top:3px;border-radius:50%;background:#dbe9fc;transition:transform .2s}.kx-reconcile-switch input:checked+span{background:#1778f4}.kx-reconcile-switch input:checked+span:after{transform:translateX(18px);background:#fff}.kx-reconcile-switch input:focus-visible+span{outline:2px solid #99c8ff;outline-offset:3px}.kx-reconcile-toolbar{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.kx-reconcile-toolbar button,.kx-reconcile-previewbar button,.kx-sync-member-shortcut{min-height:37px;border-radius:8px;font-size:12px;font-weight:700;box-shadow:none;transition:background .15s,border-color .15s,transform .15s}.kx-reconcile-toolbar button:enabled:hover,.kx-reconcile-previewbar button:enabled:hover,.kx-sync-member-shortcut:enabled:hover{transform:translateY(-1px)}.kx-reconcile-toolbar button:disabled,.kx-reconcile-previewbar button:disabled{opacity:.5;cursor:not-allowed}.kx-reconcile-message{font-size:12px;min-height:18px;color:#91aac5;margin-top:12px}.kx-reconcile-message[data-kind="error"]{color:#ffb0ae}.kx-reconcile-message[data-kind="success"]{color:#87dab7}.kx-reconcile-summary{margin-top:16px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.kx-reconcile-summary>div{background:#071b33;border:1px solid rgba(87,144,210,.18);border-radius:9px;padding:13px 14px;display:grid;gap:7px}.kx-reconcile-summary small{letter-spacing:.08em;color:#7e9fbe;font-size:9px;font-weight:800}.kx-reconcile-summary strong{font-size:24px;line-height:1.1;font-weight:800;letter-spacing:-.035em;font-variant-numeric:tabular-nums}.kx-reconcile-previewbar{margin-top:15px}.kx-reconcile-previewbar strong{font-size:12px}.kx-reconcile-previewbar small{display:block;color:#8ea8c5;font-size:11px;margin-top:4px;line-height:1.4}.kx-reconcile-changes{display:grid;gap:7px;margin-top:10px;max-height:225px;overflow:auto}.kx-reconcile-change{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:10px 12px;border:1px solid rgba(77,124,182,.2);background:#071b32;border-radius:8px}.kx-reconcile-change strong{font-size:12px}.kx-reconcile-change small{display:block;color:#839cb8;font-size:10px;margin-top:3px}.kx-reconcile-tags{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.kx-reconcile-tag{display:inline-flex;border-radius:5px;padding:4px 7px;background:#163c58;color:#bde6ff;font-size:10px}.kx-reconcile-tag.remove{background:#462938;color:#ffbbb9}.kx-reconcile-finish{font-size:12px;margin-top:10px;color:#a7bfda}.kx-reconcile-errors{font-size:11px;line-height:1.5;white-space:pre-wrap;padding:9px 12px;border-radius:8px;background:#341e2f;color:#ffc0c1;margin-top:10px;max-height:160px;overflow:auto}.kx-reconcile-progress-head{margin:18px 0 8px;font-size:12px}.kx-reconcile-progress-head span{color:#9ab7d5;font-variant-numeric:tabular-nums}.kx-rank-reconcile progress{height:10px;width:100%;appearance:none;border:none;border-radius:999px;overflow:hidden;background:#152e4b}.kx-rank-reconcile progress::-webkit-progress-bar{background:#152e4b;border-radius:999px}.kx-rank-reconcile progress::-webkit-progress-value{background:linear-gradient(90deg,#176bef,#47a7ff);border-radius:999px}.kx-rank-reconcile progress::-moz-progress-bar{background:#2589f5}.kx-sync-member-shortcut{display:block;width:100%;margin:8px 0 0}.kx-rank-reconcile [hidden],.kx-rank-reconcile *[hidden]{display:none!important}
@media(max-width:1100px){.kx-reconcile-controls{align-items:center}.kx-reconcile-toolbar{width:100%}.kx-reconcile-toolbar button{flex:1}}
@media(max-width:650px){.kx-rank-reconcile{padding:15px}.kx-reconcile-head{align-items:flex-start;flex-direction:column}.kx-reconcile-heading h2{font-size:17px}.kx-reconcile-controls{gap:12px}.kx-reconcile-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.kx-reconcile-toolbar{flex-direction:column;align-items:stretch}.kx-reconcile-toolbar button{width:100%;flex:auto}.kx-reconcile-previewbar{align-items:stretch;flex-direction:column}.kx-reconcile-previewbar button{width:100%}.kx-reconcile-change{align-items:flex-start;flex-direction:column}.kx-reconcile-tags{justify-content:flex-start}}
