.kind-card{display:block;cursor:pointer;margin:0;height:100%}
.kind-card input{position:absolute;opacity:0}
.kind-card>span{display:flex;flex-direction:column;gap:.15rem;border:1.5px solid var(--border);border-radius:12px;padding:.9rem 1rem;background:#fff;transition:all .15s;height:100%}
.kind-card i{font-size:1.4rem;color:var(--iswe-navy)}
.kind-card b{color:var(--iswe-navy)}
.kind-card small{color:var(--muted);font-size:.78rem;line-height:1.4}
.kind-card input:checked+span{border-color:var(--iswe-navy);box-shadow:0 0 0 3px rgba(33,57,101,.12);background:#f6f8fd}
.kind-card input:focus-visible+span{outline:2px solid var(--iswe-red);outline-offset:2px}
.st-approved,.st-provisioning{background:#e2f8fb;color:#00697d;border:1px solid #a9e6ef}
.st-completed{background:#e6f8e2;color:#1a7a0f;border:1px solid #b9e8ad}
.st-declined,.st-failed{background:#fdecea;color:#b01a02;border:1px solid #f7c1b9}
.chg{color:var(--warn)} .chg b{color:var(--iswe-navy)}
.nav-link.border-0{font-family:inherit} #sidebar form .nav-link{margin:1px .6rem;width:calc(100% - 1.2rem)!important;color:rgba(255,255,255,.82)}
.steps{list-style:none;margin:0;padding:.4rem 0}
.step{display:flex;gap:.7rem;padding:.55rem 1.1rem;align-items:flex-start;font-size:.86rem}
.step>i{font-size:1.05rem;margin-top:.1rem;color:#b6bfd0}
.step.s-pending>i::before{content:"\f287"} .step.s-skipped>i::before{content:"\f287"}
.step.s-done>i{color:var(--ok)} .step.s-done>i::before{content:"\f26a"}
.step.s-failed>i{color:var(--danger)} .step.s-failed>i::before{content:"\f623"}
.step.s-running{background:#f2f8ff} .step.s-running>i{color:var(--iswe-navy)} .step.s-running>i::before{content:"\f130";display:inline-block;animation:spin 1s linear infinite}
.step.s-pending{color:var(--muted)}
@keyframes spin{to{transform:rotate(360deg)}}
#deploy-overlay{position:fixed;inset:0;z-index:2000;background:rgba(22,39,74,.72);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:1rem}
#deploy-overlay.d-none{display:none!important}
.ov-card{background:#fff;border-radius:18px;max-width:460px;width:100%;padding:2rem 1.8rem;text-align:center;box-shadow:0 24px 70px rgba(0,0,0,.35)}
.ov-card h3{font-size:1.15rem;font-weight:800;color:var(--iswe-navy);margin:1.1rem 0 .4rem}
.ov-card p{font-size:.84rem}
.ov-spin{position:relative;width:92px;height:92px;margin:0 auto}
.ov-spin img{position:absolute;inset:16px;width:60px;height:60px;object-fit:contain;border-radius:8px}
.ov-spin .ring{position:absolute;inset:0;border-radius:50%;border:4px solid #e9edf5;border-top-color:var(--iswe-red);border-right-color:var(--iswe-navy);animation:spin 1.1s linear infinite}
.ov-bar{height:8px!important;margin:1rem 0 .5rem}.ov-bar .progress-bar{background:var(--iswe-navy);transition:width .5s ease}
.ov-now{font-size:.82rem;font-weight:600;color:var(--iswe-navy);min-height:1.3em}
.ov-actions{margin-top:1.1rem;display:flex;gap:.5rem;justify-content:center}
.ov-ok .ring{border-color:var(--iswe-green);animation:none} .ov-err .ring{border-color:var(--iswe-red);animation:none}
.cred-row{display:flex;justify-content:space-between;gap:.6rem;padding:.35rem 0;border-bottom:1px solid var(--border-soft);font-size:.84rem}
@media (prefers-reduced-motion:reduce){.ring,.step.s-running>i::before{animation-duration:3s}}
