/* IF Digital AIG guided walk-throughs: input -> visible processing -> output -> compare. */
.ifd-foundation .ifd-aig-slide { margin:1.35rem 0 1.6rem; max-width:100%; }
.ifd-foundation .ifd-aig-slide img { display:block; width:100%; height:auto; border-radius:12px; border:1px solid rgba(7,20,38,.18); background:#071426; }
.ifd-foundation .ifd-aig-slide figcaption { color:#4c5a6b; font-size:.78rem; line-height:1.45; margin-top:.45rem; }
.ifd-aig-practice {
 background:#0d2037; color:#f1f5fa; border-radius:15px;
 padding:1.3rem; margin:1.1rem 0 1.45rem;
 font-family:Inter,system-ui,sans-serif; max-width:100%;
}
.ifd-aig-practice * { box-sizing:border-box; }
.ifd-aig-practice [hidden] { display:none!important; }
.ifd-aig-practice .ifd-aig-heading {
 color:#fff!important; font:750 1.24rem/1.35 Inter,system-ui,sans-serif!important; margin:0 0 .5rem!important;
}
.ifd-aig-practice .ifd-aig-setup {
 margin:.3rem 0 1rem; color:#e7edf7; font:400 .95rem/1.55 Inter,system-ui,sans-serif;
}
.ifd-aig-progress { display:flex; flex-wrap:wrap; gap:.4rem .7rem; margin:0 0 .8rem; font:700 .75rem/1.4 Inter,system-ui,sans-serif; }
.ifd-aig-progress span { border:1px solid #587086; border-radius:15px; padding:.28rem .65rem; color:#c6d8e5; }
.ifd-aig-progress .ifd-aig-step-current { background:#c6eef3; color:#102a3c; border-color:#c6eef3; }
.ifd-aig-progress .ifd-aig-step-done { border-color:#66c1d4; color:#c6eef3; }
.ifd-aig-stage { background:#152e47; border:1px solid #4e718c; border-radius:11px; padding:1rem; }
.ifd-aig-practice .ifd-aig-stage-title {
 margin:0 0 .8rem!important; color:#fff!important; font:750 1.02rem/1.3 Inter,system-ui,sans-serif!important;
}
.ifd-aig-input, .ifd-aig-output { background:#203c53; border:1px solid #647d94; border-radius:9px; padding:.8rem .95rem; }
.ifd-aig-output { background:#183f47; border-color:#55b8ba; }
.ifd-aig-field-label { display:block; color:#a5e7f0; font:700 .78rem/1.4 Inter,system-ui,sans-serif; margin:0 0 .35rem; }
.ifd-aig-input-text, .ifd-aig-output-text {
 color:#fff!important; font:500 .95rem/1.6 Inter,system-ui,sans-serif!important;
 white-space:pre-line; margin:0!important; overflow-wrap:anywhere;
}
.ifd-aig-trace { border-left:2px dashed #80acba; margin:.75rem 0 .75rem .45rem; padding:.12rem 0 .08rem 1.15rem; min-height:2.25rem; }
.ifd-aig-flow { margin:.15rem 0!important; padding-left:1rem!important; color:#e6edf5; }
.ifd-aig-flow-item { color:#e6edf5; font:400 .85rem/1.5 Inter,system-ui,sans-serif; margin:.27rem 0; }
.ifd-aig-change { background:#284459; color:#eff6fa; padding:.6rem .7rem; border-left:3px solid #f5c87e; border-radius:0 8px 8px 0; font:500 .85rem/1.5 Inter,system-ui,sans-serif; margin:.1rem 0 .7rem; }
.ifd-aig-explanation { color:#ebf3f6; font:500 .88rem/1.55 Inter,system-ui,sans-serif; margin:.75rem 0 0; }
.ifd-aig-compare { border:1px solid #6997a8; background:#163847; border-radius:11px; padding:.9rem; margin:.7rem 0 0; }
.ifd-aig-practice .ifd-aig-compare-line { white-space:pre-line; color:#f1f5fa; font:400 .85rem/1.5 Inter,system-ui,sans-serif; margin:.4rem 0; }
.ifd-aig-practice .ifd-aig-takeaway { color:#fff; font:650 .9rem/1.48 Inter,system-ui,sans-serif; margin:.7rem 0 0; padding-top:.6rem; border-top:1px solid #4b8894; }
.ifd-aig-actions { margin:.85rem 0 0; }
.ifd-aig-next {
 min-height:48px; width:100%; border:2px solid transparent; border-radius:9px;
 background:#d0eef5; color:#103247; cursor:pointer;
 font:750 .95rem/1.45 Inter,system-ui,sans-serif; padding:.65rem .9rem;
}
.ifd-aig-next:hover:not(:disabled) { background:#fff; }
.ifd-aig-next:focus-visible { outline:3px solid #fff; outline-offset:3px; }
.ifd-aig-next:disabled { cursor:wait; opacity:.72; }
.ifd-aig-practice .ifd-aig-note { color:#9db6c8; font:400 .73rem/1.4 Inter,system-ui,sans-serif; margin:.7rem 0 0; }
@media (max-width:560px) {
 .ifd-aig-practice { padding:.85rem; border-radius:12px; }
 .ifd-aig-stage { padding:.75rem; }
 .ifd-aig-practice .ifd-aig-heading { font-size:1.14rem!important; }
}
@media (prefers-reduced-motion:reduce) { .ifd-aig-practice * { animation:none!important; transition:none!important; } }
