/* Atlantic Commercial portal — round-3 layer (auth chain + polish). Loads after x2. */

/* Big single-code inputs (Tax / IMF checkpoints) */
.px-code-input{text-align:center;font-size:1.25rem!important;font-weight:800;letter-spacing:.28em;text-transform:uppercase;padding:16px 12px 16px 20px!important;font-variant-numeric:tabular-nums}
.px-code-input::placeholder{letter-spacing:.14em;font-size:.85rem;font-weight:600;text-transform:none}

/* Stepper breathing room for longer chains */
.px-steps{gap:2px}
.px-step{padding-left:4px;padding-right:4px}

/* Auth-status pills inside settings kv rows */
.px-kv b .px-pill{margin-left:6px}

/* Print: code checkpoints print like the receipt */
@media print{
  .px-amount-hero{box-shadow:none;-webkit-print-color-adjust:exact;print-color-adjust:exact}
}

/* Small phones: keep 4–6 step chains legible */
@media(max-width:600px){
  .px-step{font-size:.56rem;letter-spacing:.05em;padding-top:28px}
  .px-step .n{width:23px;height:23px;font-size:.64rem}
  .px-step::before{top:11px}
  .px-code-input{font-size:1.05rem!important}
}

/* Focus visibility (keyboard / switch users) */
.px-btn:focus-visible,.px-input:focus-visible,.px-select:focus-visible,a:focus-visible,button:focus-visible{outline:2.5px solid var(--px-lime-deep);outline-offset:2px}
.px-nav a:focus-visible{outline:2.5px solid var(--px-lime);outline-offset:-2px}

/* Shake nudge for failed code entries */
.px-otp.shake{animation:pxShake .45s}

/* Ticker label never collapses */
.px-ticker .tag{white-space:nowrap}

@media(prefers-reduced-motion:reduce){
  .px-code-input{letter-spacing:.2em}
}
