.rmo-pc {
 --pc-primary:#504ea0;
 --pc-dark:#433f8f;
 clear:both;
 margin:22px 0;
 color:#252532;
 font-family:inherit;
 font-size:14px;
 line-height:1.5;
 scroll-margin-top:220px;
}
.rmo-pc * { box-sizing:border-box; }
.rmo-pc [hidden] { display:none!important; }
.rmo-pc p,.rmo-pc h2 { margin:0; padding:0; }
/* Use the theme's Shipping/Specifications accordion card, heading and chevron. */
.rmo-pc > .accordion-item { margin-bottom:0; background:#fff; }
.rmo-pc .accordion-button { font-weight:400; }
.rmo-pc .accordion-button:not(.collapsed) { border-bottom:1px solid #ddd; }
.rmo-pc__body { padding:20px; }
.rmo-pc__heading { display:flex; gap:12px; align-items:center; justify-content:space-between; margin-bottom:15px; }
.rmo-pc__fallback { margin-bottom:15px; }
.rmo-pc__fallback label { display:block; margin-bottom:5px; font-size:14px; }
.rmo-pc__fallback select { width:100%; max-width:100%; }
.rmo-pc input,.rmo-pc select,.rmo-pc button { font-family:inherit; }
.rmo-pc select { padding:7px 9px; border:1px solid #ccc; border-radius:6px; min-height:36px; color:#252532; background:#fff; font-size:14px; }
.rmo-pc__unit { position:relative; flex-shrink:0; }
.rmo-pc__unit:before { content:""; position:absolute; left:8px; top:50%; transform:translateY(-50%); width:14px; height:14px; pointer-events:none; background:center/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23504ea0' stroke-width='1.8'%3E%3Crect x='3' y='7' width='18' height='10' rx='2'/%3E%3Cpath d='M7 7v4m5-4v6m5-6v4'/%3E%3C/svg%3E"); }
.rmo-pc__unit select { padding-left:27px; max-width:103px; }
.rmo-pc .rmo-pc__coverage { font-size:12px; color:#666; }
.rmo-pc__measurements { display:grid; grid-template-columns:minmax(0,1fr) 16px minmax(0,1fr); align-items:end; gap:8px; }
.rmo-pc__measurements>span { padding-bottom:10px; text-align:center; color:#727185; }
.rmo-pc__measurements label { display:block; font-size:14px; font-weight:600; margin-bottom:5px; }
.rmo-pc__measurements input { width:100%; height:42px; border:1px solid #ccc; background:#fff; border-radius:6px; padding:8px 10px; font-size:16px; color:#252532; }
.rmo-pc__controls { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-top:13px; }
.rmo-pc__controls label { display:flex; align-items:center; gap:8px; font-size:14px; }
.rmo-pc__controls select { width:64px; }
.rmo-pc .rmo-pc__button { display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:42px; padding:10px 16px; border:1px solid var(--pc-primary); border-radius:6px; background:var(--pc-primary); color:#fff; text-decoration:none; font-size:14px; font-weight:700; line-height:1.35; cursor:pointer; }
.rmo-pc .rmo-pc__button:hover { background:var(--pc-dark); border-color:var(--pc-dark); color:#fff; }
.rmo-pc button:disabled { opacity:.55; cursor:not-allowed; }
.rmo-pc :focus-visible { outline:3px solid var(--pc-primary); outline-offset:3px; }
.rmo-pc .accordion-button:focus-visible { outline-offset:-4px; }
.rmo-pc .rmo-pc__status:not(:empty) { font-size:12px; margin-top:12px; color:#8a3929; }
.rmo-pc__result { margin-top:15px; padding:15px; background:#fff; border:1px solid #ddd; border-radius:8px; }
.rmo-pc__totals { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:start; gap:12px; }
.rmo-pc__quantity { font-size:23px; line-height:1.25; color:var(--pc-primary); font-weight:700; }
.rmo-pc__price { font-size:23px; line-height:1.25; font-weight:700; text-align:right; color:var(--pc-primary); }
.rmo-pc__price small { font-size:12px; display:block; font-weight:400; color:#666; margin-top:3px; }
.rmo-pc .rmo-pc__summary { font-size:12px; color:#666; margin:10px 0; }
.rmo-pc .rmo-pc__saving { font-size:12px; color:var(--pc-primary); font-weight:600; margin:5px 0; }
.rmo-pc__result .rmo-pc__button { width:100%; margin-top:10px; }
.rmo-pc__result details { font-size:12px; color:#666; margin-top:12px; }
.rmo-pc__result summary { cursor:pointer; }
.rmo-pc__result details ul { padding-left:16px; margin:8px 0; }
.rmo-pc .rmo-pc__note { font-size:12px; color:#666; line-height:1.5; margin-top:13px; }
.rmo-pc .rmo-pc__compare { display:flex; align-items:center; justify-content:center; gap:12px; min-height:42px; padding:10px 16px; margin-top:13px; border:1px solid var(--pc-primary); border-radius:6px; background:var(--pc-primary); color:#fff; font-size:14px; font-weight:700; line-height:1.35; text-decoration:none; }
.rmo-pc .rmo-pc__compare:hover { background:var(--pc-dark); border-color:var(--pc-dark); color:#fff; text-decoration:none; }
@media(max-width:480px) {
 .rmo-pc__body { padding:16px 20px; }
 .rmo-pc__heading { gap:8px; }
 .rmo-pc__controls { flex-wrap:wrap; }
 .rmo-pc__controls label { gap:6px; }
 .rmo-pc__quantity,.rmo-pc__price { font-size:20px; }
}
