/* Small, optional additions to the existing shopping flow. */
.smart-complements{grid-column:1/-1;min-width:0;margin:12px 0 18px;padding:15px;background:#f1f7f2;border:1px solid #dce9df;border-radius:20px;color:#233c2b;text-align:left}
.smart-complements-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}
.smart-complements-head h3{font-size:17px;line-height:1.3;margin:0 0 4px}
.smart-complements-head p{font-size:13px;line-height:1.45;margin:0;color:#536b5b}
.smart-dismiss{border:0;background:transparent;color:#536b5b;width:44px;height:44px;flex:none;font-size:24px;border-radius:50%;cursor:pointer}
.smart-complements-rail{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x proximity;padding:0 0 6px}
.smart-complement{flex:1 0 145px;max-width:220px;display:flex;flex-direction:column;align-items:stretch;padding:12px;background:#fff;border:1px solid #e1eae3;border-radius:15px;scroll-snap-align:start;min-width:0}
.smart-product-picture{height:62px;display:grid;place-items:center;margin-bottom:8px;font-size:36px}
.smart-product-picture img{width:100%;height:62px;object-fit:contain}
.smart-product-picture [hidden],.habitual-img [hidden]{display:none!important}
.smart-product-copy{flex:1;min-width:0}
.smart-product-copy b,.smart-product-copy span,.smart-product-copy small,.smart-product-copy strong{display:block}
.smart-product-copy small{font-size:12px;line-height:1.35;color:#617365;margin-bottom:6px}
.smart-product-copy b{font-size:14px;line-height:1.35;margin-bottom:5px;overflow-wrap:anywhere}
.smart-product-copy span{font-size:12px;line-height:1.4;color:#617365}
.smart-product-copy strong{font-size:15px;line-height:1.4;margin:8px 0 10px;color:#20603f}
.smart-add{min-height:44px;border:1px solid #cadbce;background:#fff;color:#236342;border-radius:11px;padding:9px;font-size:14px;font-weight:700;cursor:pointer}
.smart-add:disabled{background:#edf5ef;color:#3d634b;border-color:transparent;cursor:default}
.smart-price-note{font-size:12px;line-height:1.4;color:#617365;margin:7px 0 0}
.smart-habitual-home{width:100%;display:grid;grid-template-columns:40px minmax(0,1fr) 22px;gap:12px;align-items:center;text-align:left;background:#eef6ef;color:#235537;border:1px solid #dbe9df;border-radius:20px;padding:16px;margin:16px 0 8px;cursor:pointer}
.smart-habitual-icon{font-size:30px;line-height:1}
.smart-habitual-home b,.smart-habitual-home small,.smart-habitual-home em{display:block}
.smart-habitual-home b{font-size:16px;line-height:1.35}
.smart-habitual-home small{font-size:13px;line-height:1.45;margin-top:3px;color:#526b5b}
.smart-habitual-home em{font-size:13px;font-style:normal;font-weight:700;margin-top:7px}
.smart-habitual-home>span:last-child{font-size:23px}
.smart-habitual-empty{background:#fafbf9}
.smart-habitual-intro{padding:16px;background:#f2f7f3;border-radius:18px;margin-bottom:16px}
.smart-habitual-intro h3{font-size:19px;margin:0 0 8px;line-height:1.3}
.smart-habitual-intro p{font-size:14px;line-height:1.55;margin:0 0 14px;color:#52655a}
.smart-habitual-intro small{display:block;font-size:12px;line-height:1.5;color:#52655a;margin-top:10px}
.smart-habitual-row{display:grid;grid-template-columns:48px minmax(0,1fr);gap:10px;align-items:center}
.smart-habitual-row .habitual-img{width:48px;height:48px}
.smart-habitual-row .habitual-main strong{font-size:14px;line-height:1.4}
.smart-habitual-row .habitual-main small{display:block;font-size:12px;line-height:1.45;margin-top:4px;color:#617365}
.smart-habitual-quantity{grid-column:2;display:flex;gap:14px;align-items:center;justify-content:flex-end}
.smart-habitual-quantity button{min-width:44px;min-height:44px;font-size:16px;border:1px solid #cadbce;border-radius:11px;background:#fff;color:#236342;cursor:pointer}
.smart-habitual-quantity .smart-add{font-size:14px;padding:9px 20px}
.smart-habitual-quantity b{font-size:15px}
.smart-add:focus-visible,.smart-dismiss:focus-visible,.smart-habitual-home:focus-visible,.smart-habitual-quantity button:focus-visible{outline:3px solid #28764a;outline-offset:3px}
@media(min-width:620px){.smart-habitual-row{grid-template-columns:58px minmax(0,1fr) auto}.smart-habitual-quantity{grid-column:3}.smart-complement{flex-basis:0;max-width:none}}
