.fso-cart-rail[hidden],.fso-cart-rail .fso-rail-controls[hidden]{display:none!important}
.fso-cart-rail{box-sizing:border-box;clear:both;min-width:0;max-width:100%;width:100%;padding:22px 0;margin:22px 0 28px;border-top:1px solid #eceff2;border-bottom:1px solid #eceff2;direction:ltr}
.fso-cart-rail .fso-rail-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:17px}
.fso-cart-rail h2{font-size:20px;color:#1a2732;font-weight:800;line-height:1.4;margin:0}
.fso-cart-rail .fso-rail-controls{display:flex;gap:7px}
.fso-cart-rail .fso-rail-controls button{appearance:none;display:grid;place-items:center;border:1px solid #e1e6eb;border-radius:50%;background:#fff;color:#394857;font-size:27px;line-height:1;min-height:0;width:34px;height:34px;padding:0;cursor:pointer;box-shadow:none}
.fso-cart-rail .fso-rail-track{display:flex;flex-wrap:nowrap;gap:13px;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;scrollbar-width:thin;scroll-padding-inline:2px;padding:3px 2px 12px;max-width:100%}
.fso-cart-rail .fso-card-tile{box-sizing:border-box;display:flex;flex-direction:column;flex:0 0 clamp(178px,20%,225px);max-width:235px;min-width:0;scroll-snap-align:start;border-radius:12px;overflow:hidden;border:1px solid #e9edf0;background:#fff;box-shadow:0 2px 9px #11111108}
.fso-cart-rail .fso-card-img{display:grid;place-items:center;background:#f9fbfc;min-height:145px;padding:9px}
.fso-cart-rail .fso-card-img img{width:auto!important;max-width:100%;height:132px!important;object-fit:contain!important;margin:0 auto!important}
.fso-cart-rail .fso-card-content{display:flex;flex-direction:column;flex:1;gap:5px;padding:12px 11px 11px;min-width:0}
.fso-cart-rail .fso-card-name{color:#243242!important;font-size:12.5px;font-weight:640;text-decoration:none!important;line-height:1.55;min-height:59px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
.fso-cart-rail .fso-card-reason{margin:0;min-height:31px;line-height:1.5;font-size:10.5px;color:#328368;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.fso-cart-rail .fso-card-reason.fso-check{color:#956e36}
.fso-cart-rail .fso-card-bottom{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto;padding-top:7px}
.fso-cart-rail .fso-card-price{font-size:12px;line-height:1.5;font-weight:800;color:#182633;overflow-wrap:anywhere}
.fso-cart-rail .fso-card-price del{display:block;font-size:10px;font-weight:400;color:#949ca6}
.fso-cart-rail .fso-card-price ins{text-decoration:none}
.fso-cart-rail .fso-review{font-size:11px;padding:7px 9px}
@media(max-width:767px){.fso-cart-rail{margin:20px 0;padding:16px 0}.fso-cart-rail h2{font-size:18px}.fso-cart-rail .fso-rail-track{gap:10px}.fso-cart-rail .fso-card-tile{flex-basis:min(44vw,180px);max-width:180px}.fso-cart-rail .fso-rail-controls{display:none}.fso-cart-rail .fso-card-img{min-height:126px}.fso-cart-rail .fso-card-img img{height:114px!important}}

/* The blocks-cart mount lives adjacent to the React cart root, not inside it. */
.fso-cart-rails-mount{width:100%;max-width:100%;min-width:0;clear:both;margin:24px auto 35px;}
.fso-cart-rails-mount .fso-cart-rail:first-child{margin-top:0;}
@media(max-width:767px){.fso-cart-rails-mount{margin:24px 0 90px;} .fso-cart-rails-mount .fso-cart-rail{padding:18px 0 22px;} }
