.companion-widget[hidden]{display:none!important}
.companion-widget{margin:20px 0;padding:16px;border:1px solid #eedfcd;border-radius:10px;background:#fffaf3;color:#3e4549;font-size:13px;line-height:1.4}
.companion-widget__header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}
.companion-widget__heading{font-size:15px;font-weight:700}
.companion-widget__price{padding:4px 8px;border-radius:6px;background:#fff0d3;color:#824d00;font-size:12px;font-weight:600;white-space:nowrap}
.companion-widget__pair{display:grid;grid-template-columns:minmax(0,1fr) 20px minmax(0,1fr);gap:6px;align-items:center}
.companion-widget__product{align-self:stretch;padding:10px;background:#fff;border:1px solid #ece7df;border-radius:8px;min-width:0}
.companion-widget__label{display:block;margin-bottom:8px;color:#747474;font-size:11px;line-height:1.3}
.companion-widget__product-content{display:flex;gap:8px;align-items:center}
.companion-widget__picture{width:42px;height:72px;flex:0 0 42px;display:flex;align-items:center;justify-content:center}
.companion-widget__picture img{width:42px;height:72px;object-fit:contain}
.companion-widget__placeholder{display:block;width:20px;height:50px;border:1px solid #dedede;border-radius:5px;background:#f3f3f3}
.companion-widget__details{min-width:0}
.companion-widget .companion-widget__name{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-size:12px;font-weight:600;line-height:1.35;color:#3e4549;text-decoration:none;overflow-wrap:anywhere}
.companion-widget .companion-widget__name:hover{color:#d90920;text-decoration:underline}
.companion-widget__status{display:block;margin-top:7px;color:#828282;font-size:11px}
.companion-widget__status--added{color:#27773c;font-weight:600}
.companion-widget__applied{display:block;margin-top:3px;color:#27773c;font-size:10px}
.companion-widget__plus{text-align:center;font-size:22px;color:#ba9070;font-weight:400}
.companion-widget .companion-widget__terms{margin:10px 0 12px;font-size:12px;color:#6e6e6e}
.companion-widget__actions{min-height:38px;display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.companion-widget .companion-widget__button{margin:0;padding:10px 14px;border:1px solid #e30613;border-radius:6px;background:#e30613;color:#fff;font:inherit;font-weight:600;line-height:1.3;cursor:pointer;text-align:center;min-height:38px}
.companion-widget .companion-widget__button:hover{background:#c9000d}
.companion-widget .companion-widget__button:disabled{cursor:wait;background:#f7e7e3;border-color:#efc6c0;color:#9c443e}
.companion-widget__success{color:#27773c;font-size:13px;font-weight:600}
.companion-widget .companion-widget__basket{color:#d90920;font-size:12px;font-weight:600;white-space:nowrap;text-decoration:none}
.companion-widget .companion-widget__basket:hover{text-decoration:underline}
.companion-widget .companion-widget__message{margin:9px 0 0;color:#696969;font-size:12px}
.companion-widget__message:empty{display:none}
.companion-widget a:focus-visible,.companion-widget button:focus-visible{outline:2px solid #bc6400;outline-offset:3px}
@media(max-width:480px){.companion-widget{padding:12px}.companion-widget__header{align-items:flex-start;flex-direction:column;gap:5px}.companion-widget__pair{gap:4px;grid-template-columns:minmax(0,1fr) 16px minmax(0,1fr)}.companion-widget__product{padding:8px}.companion-widget__product-content{flex-direction:column;align-items:flex-start;gap:6px}.companion-widget__picture{align-self:center;flex-basis:72px}.companion-widget .companion-widget__name{-webkit-line-clamp:3}.companion-widget__actions{align-items:flex-start;flex-direction:column}.companion-widget .companion-widget__button{width:100%}}
.companion-widget__spinner{flex:0 0 auto;width:1rem;height:1rem;margin-right:8px;vertical-align:-2px;border-width:2px;color:#b57451}
.companion-widget__message .companion-widget__spinner{display:inline-block}
.companion-widget__skeleton-line{display:block;width:100%;height:9px;margin:6px 0;border-radius:4px;background:#eee8df}
.companion-widget__skeleton-line--short{width:65%}
.companion-widget[data-initial-skeleton="1"] .companion-widget__details{flex:1}
.companion-widget__initial-status{display:flex;align-items:center;min-height:74px}
@media(prefers-reduced-motion:reduce){.companion-widget .spinner-border{animation:none}}
