/* Final scoped layer: no sideways step scrolling, including the five-step software flow. */
:is(#configApp,#softwareApp) :is(#configSteps,#softwareSteps).config-steps {
 display:block; overflow:visible; padding:0; margin:0 0 28px; scroll-margin-top:140px;
 border:0; background:none; scroll-snap-type:none;
}
:is(#configSteps,#softwareSteps) .step-overview { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:12px; }
:is(#configSteps,#softwareSteps) .step-current { display:flex; align-items:center; gap:12px; min-width:0; }
:is(#configSteps,#softwareSteps) .step-current-number { display:grid; place-items:center; width:40px; height:40px; flex:0 0 40px; border-radius:14px; color:#004370; background:linear-gradient(130deg,#ffe9a5,#ffcf65); font-weight:800; }
:is(#configSteps,#softwareSteps) .step-current-copy { display:flex; flex-direction:column; gap:3px; min-width:0; }
:is(#configSteps,#softwareSteps) .step-current-copy small { color:#496a81; font-size:12px; font-weight:700; }
:is(#configSteps,#softwareSteps) .step-current-copy strong { color:#123e5b; font-size:17px; line-height:1.35; }
:is(#configApp,#softwareApp) :is(#configSteps,#softwareSteps) .step-toggle { display:none; }
:is(#configSteps,#softwareSteps) .step-progress { display:grid; grid-template-columns:repeat(var(--step-count),minmax(0,1fr)); gap:5px; margin:0 0 16px; }
:is(#configSteps,#softwareSteps) .step-progress span { height:5px; border-radius:5px; background:#d5e3ec; }
:is(#configSteps,#softwareSteps) .step-progress .step-before { background:#97c961; }
:is(#configSteps,#softwareSteps) .step-progress .step-now { background:#006799; }
:is(#configSteps,#softwareSteps) .step-grid { display:grid; grid-template-columns:repeat(var(--step-count),minmax(0,1fr)); gap:8px; }
:is(#configApp,#softwareApp) :is(#configSteps,#softwareSteps) .step-item {
 display:flex; flex-direction:column; align-items:center; justify-content:center; gap:8px; min-width:0; min-height:88px;
 padding:12px 8px; border:1px solid #c7dce9; border-radius:16px; background:linear-gradient(150deg,#f8fcff,#eaf3fa); color:#335b74;
 font-size:13px; line-height:1.35; font-weight:700; box-shadow:none; transform:none; flex:none; text-align:center; white-space:normal;
}
:is(#configApp,#softwareApp) :is(#configSteps,#softwareSteps) .step-item span { font-size:inherit; line-height:inherit; overflow-wrap:normal; }
:is(#configApp,#softwareApp) :is(#configSteps,#softwareSteps) .step-item b { width:28px; height:28px; flex:0 0 28px; border:1px solid #82a5bd; background:#fff; color:#335b74; font-size:14px; font-weight:700; }
:is(#configApp,#softwareApp) :is(#configSteps,#softwareSteps) .step-item[aria-current=step] {
 color:#fff; border-color:#006d9c; background:linear-gradient(135deg,#08658c,#063d63); box-shadow:0 5px 12px #003f7215;
}
:is(#configApp,#softwareApp) :is(#configSteps,#softwareSteps) .step-item[aria-current=step] b { background:#d8edb2; border-color:#d8edb2; color:#163f5b; }
:is(#configApp,#softwareApp) :is(#configSteps,#softwareSteps) .step-item:hover { border-color:#0073a4; }
:is(#configApp,#softwareApp) :is(#configSteps,#softwareSteps) button:focus-visible { outline:3px solid #de9c00; outline-offset:3px; }
@media(min-width:701px) and (max-width:1100px){
 #configSteps .step-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
 #softwareSteps .step-grid { grid-template-columns:repeat(5,minmax(0,1fr)); }
}
@media(max-width:700px){
 :is(#configApp,#softwareApp) :is(#configSteps,#softwareSteps).config-steps { padding:16px; border:1px solid #c3dce9; border-radius:20px; background:linear-gradient(135deg,#f9fcff,#e9f3fa); margin-bottom:22px; scroll-margin-top:85px; box-shadow:0 5px 18px #003f7208; }
 :is(#configSteps,#softwareSteps) .step-overview { margin-bottom:12px; gap:8px; }
 :is(#configSteps,#softwareSteps) .step-current { gap:9px; }
 :is(#configSteps,#softwareSteps) .step-current-number { width:34px; height:34px; flex-basis:34px; border-radius:12px; }
 :is(#configSteps,#softwareSteps) .step-current-copy strong { font-size:15px; }
 :is(#configApp,#softwareApp) :is(#configSteps,#softwareSteps) .step-toggle { display:flex; flex-direction:row; align-items:center; justify-content:center; gap:6px; padding:8px 10px; min-height:44px; min-width:0; flex:none; border:1px solid #b6d1e0; border-radius:14px; background:#f6fbff; color:#075582; font-size:12px; line-height:1.35; font-weight:700; white-space:normal; box-shadow:none; }
 :is(#configSteps,#softwareSteps) .step-toggle svg { width:16px; height:16px; flex:0 0 16px; stroke:currentColor; stroke-width:2; fill:none; }
 :is(#configSteps,#softwareSteps).steps-open .step-toggle svg { transform:rotate(180deg); }
 :is(#configSteps,#softwareSteps) .step-progress { margin:0; gap:4px; }
 :is(#configSteps,#softwareSteps) .step-grid { display:none; }
 :is(#configSteps,#softwareSteps).steps-open .step-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin-top:16px; }
 :is(#configApp,#softwareApp) :is(#configSteps,#softwareSteps) .step-item { flex-direction:row; justify-content:flex-start; gap:8px; min-height:56px; padding:10px; text-align:left; font-size:12px; }
 :is(#configApp,#softwareApp) :is(#configSteps,#softwareSteps) .step-item b { width:25px; height:25px; flex-basis:25px; font-size:12px; }
}
@media(max-width:360px){
 :is(#configApp,#softwareApp) :is(#configSteps,#softwareSteps).config-steps { padding:12px; }
 :is(#configSteps,#softwareSteps) .step-current-number { display:none; }
 :is(#configApp,#softwareApp) :is(#configSteps,#softwareSteps) .step-item { flex-direction:column; justify-content:center; min-height:74px; padding:9px 7px; gap:6px; text-align:center; }
}
@media print { :is(#configApp,#softwareApp) :is(#configSteps,#softwareSteps).config-steps { display:none!important; } }
