.rs-shell{padding:22px!important;margin-bottom:18px;border:1px solid #d6dfe1!important;background:#fff!important;color:#253940}.rs-shell h3{margin:0 0 14px;font-size:18px}.rs-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.rs-tabs.rs-two{grid-template-columns:repeat(2,minmax(0,1fr))}.rs-tab,.rs-set,.rs-count-button{font:inherit;cursor:pointer;color:#31444a;background:#f2f5f5;border:1px solid #c8d4d7;border-radius:12px;text-align:left;transition:background .15s,border-color .15s}.rs-tab{padding:18px;min-height:95px}.rs-tab strong,.rs-tab small,.rs-set small{display:block}.rs-tab strong{font-size:16px;margin-bottom:7px}.rs-tab small,.rs-set small{font-size:12px;line-height:1.6}.rs-tab:hover,.rs-set:hover,.rs-count-button:hover{border-color:#a95530;background:#fff6f0}.rs-tab.is-selected,.rs-set.is-selected,.rs-count-button.is-selected{border:2px solid #a4522e;background:#fbe9dd;color:#5e321f;box-shadow:0 0 0 2px #a4522e12}.rs-tab:focus-visible,.rs-set:focus-visible,.rs-count-button:focus-visible,.rs-panel input:focus-visible{outline:3px solid #397e89;outline-offset:3px}.rs-count{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.rs-count-button{padding:11px 18px;text-align:center}.rs-sets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.rs-set{padding:16px;background:#fafbfb;overflow:hidden}.rs-set svg{display:block;width:100%;max-height:155px}.rs-set-title{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:8px 0}.rs-set-title>span{font-size:12px}.rs-panels{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0}.rs-panel{min-width:0;border:1px solid #bbced0;border-radius:10px;background:#f0f7f6;padding:14px}.rs-panel legend{font-weight:700;padding:0 6px}.rs-panel p{font-size:11px;min-height:34px}.rs-panel label{display:grid;gap:6px;font-size:12px;margin:10px 0}.rs-panel input{width:100%;box-sizing:border-box;min-height:44px;padding:9px;border:1px solid #aabdc1;border-radius:7px;background:#fff;font:inherit;font-size:15px}.rs-panel.is-unused{background:#f0f1f2;border-color:#d8dde0;color:#6b7479}.rs-panel.is-unused input{background:#e6e9eb;color:#6b7479}.rs-panel input[readonly]{background:#e5eeed}.rs-check{display:flex;align-items:center;gap:9px;min-height:44px}.rs-check input{width:18px;height:18px}.rs-note{padding:12px 14px;background:#eef4f5;border-left:3px solid #628f98;font-size:13px;line-height:1.6}.rs-error{padding:14px;background:#fff0ec;color:#962f17;border:1px solid #d79c8a;border-radius:8px}.rs-prices>div{display:flex;justify-content:space-between;gap:14px;padding:10px 0;border-bottom:1px solid #e0e7e8}.rs-prices dd{margin:0;white-space:nowrap}.rs-prices .rs-grand{font-weight:800;font-size:17px}.rs-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}.rs-native [hidden]{display:none!important}.rs-price-table{width:100%;border-collapse:collapse}.rs-price-table td,.rs-price-table th{padding:12px;border-bottom:1px solid #dce4e6;text-align:left}.rs-price-table input[type=number]{min-width:100px;width:120px;padding:10px;border:1px solid #b9c9cd;border-radius:7px}.rs-price-table input[type=checkbox]{width:18px;height:18px}.rs-scroll{overflow:auto;max-height:620px}.rs-settings-footer{display:flex;gap:12px;align-items:center;margin-top:15px;flex-wrap:wrap}.rs-admin .rs-tabs{margin:15px 0}.rs-admin [role=status]{font-weight:600}.rs-sets svg text{font-size:14px}@media(max-width:900px){.rs-panels{grid-template-columns:repeat(2,minmax(0,1fr))}.rs-tabs{grid-template-columns:1fr}.rs-tab{min-height:75px}}@media(max-width:540px){.rs-shell{padding:16px!important}.rs-sets,.rs-panels,.rs-tabs.rs-two{grid-template-columns:1fr}.rs-panel.is-unused{display:none}.rs-set-title{align-items:flex-start}.rs-actions .btn{width:100%;min-height:46px}.rs-prices>div{font-size:12px}.rs-prices .rs-grand{font-size:14px}}

.rs-shortcut{margin:-4px 0 18px;display:flex;justify-content:flex-end}
.rs-shortcut .btn{white-space:normal;text-align:center}
.rs-pairs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.rs-pairs .rs-tab{min-height:68px;padding:13px 16px}
.rs-panels.rs-one-panel{grid-template-columns:minmax(250px,380px)}
@media(max-width:900px){.rs-pairs{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){.rs-pairs,.rs-panels.rs-one-panel{grid-template-columns:1fr}.rs-shortcut{justify-content:stretch}.rs-shortcut .btn{width:100%}}

/* Roller colour-family registration and filtering (no price impact). */
.rs-colour-filter-label{font-size:12px;font-weight:700;color:#32484c;white-space:nowrap}
#rs-colour-family{min-width:190px;max-width:300px;min-height:44px;padding:9px 12px;border:1px solid #b6c8cb;border-radius:9px;background:#fff;color:#283f45;font:inherit;font-size:13px}
#rs-colour-family:focus-visible{outline:3px solid #397e89;outline-offset:2px}
.rs-matches{font-size:12px;color:#647b81;white-space:nowrap}
@media(max-width:760px){#rs-colour-family{width:100%;max-width:none}.rs-colour-filter-label{align-self:flex-start}}

/* Restrained Crafttech Roller selection palette. Original diagrams and layout preserved. */
.rs-shell{border-color:#d8e5e7!important;box-shadow:0 8px 22px rgba(31,58,65,.045)}
.rs-tab,.rs-set,.rs-count-button{background:#f7fafb;border:1px solid #d0dfe2;color:#27424a;box-shadow:0 2px 7px rgba(29,56,64,.025);transition:background .16s,border-color .16s,box-shadow .16s}
.rs-tab:hover,.rs-set:hover,.rs-count-button:hover{border-color:#6e9ba0;background:#f0f7f7}
.rs-tab.is-selected,.rs-set.is-selected,.rs-count-button.is-selected{background:#eaf4f3;border:2px solid #3d7b7b;color:#173e44;box-shadow:0 0 0 3px rgba(61,123,123,.08),0 5px 15px rgba(22,69,74,.065)}
.rs-tab.is-selected strong,.rs-set.is-selected strong{color:#173e44}
.rs-set.is-selected{border-color:#3d7b7b}
.rs-panel{background:#f3f9f8;border-color:#cbddde}
.rs-count-button{font-weight:650}

/* Crafttech raised navigation shortcut: deliberately scoped so catalogue tiles remain unchanged. */
.rs-shortcut{margin:3px 0 24px;display:flex;justify-content:flex-end}
.rs-shortcut .rs-shortcut-cta{
  display:inline-flex;align-items:center;justify-content:center;gap:17px;
  width:auto;min-height:54px;padding:13px 21px;
  border:1px solid #27616b!important;border-bottom:3px solid #17424a!important;border-radius:13px;
  background:linear-gradient(165deg,#e9f6f5 0%,#d2e9e8 58%,#bddcdb 100%)!important;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.96),inset 0 -1px 0 rgba(23,69,74,.15),0 5px 0 #9cbdbb,0 9px 19px rgba(24,72,79,.16);
  color:#143d46!important;font-size:16px;font-weight:800;line-height:1.35;letter-spacing:.005em;
  text-align:center;text-shadow:0 1px 0 rgba(255,255,255,.7);
  cursor:pointer;white-space:normal;transition:background .16s,box-shadow .16s,transform .16s;
}
.rs-shortcut .rs-shortcut-cta:hover{
  background:linear-gradient(165deg,#f0fbfa,#c2e2df)!important;
  transform:translateY(-2px);box-shadow:inset 0 2px 0 #fff,0 7px 0 #95b8b5,0 13px 22px rgba(24,72,79,.20);
}
.rs-shortcut .rs-shortcut-cta:active{transform:translateY(3px);box-shadow:inset 0 2px 4px rgba(24,72,79,.12),0 2px 0 #8eaeab,0 4px 9px rgba(24,72,79,.1)}
.rs-shortcut .rs-shortcut-cta:focus-visible{outline:3px solid #276b78;outline-offset:4px}
.rs-shortcut-arrow{font-size:22px;line-height:1;font-weight:800}
@media(max-width:540px){.rs-shortcut .rs-shortcut-cta{width:100%;min-height:54px;padding:12px 15px;font-size:15px}}
@media(prefers-reduced-motion:reduce){.rs-shortcut .rs-shortcut-cta{transition:none}.rs-shortcut .rs-shortcut-cta:hover{transform:none}}


/* Selected Roller tabs and set cards carry the same clear confirmation as option tiles. */
.rs-tab.is-selected,.rs-set.is-selected,.rs-count-button.is-selected{position:relative;padding-right:42px}
.rs-tab.is-selected::after,.rs-set.is-selected::after,.rs-count-button.is-selected::after{content:'✓';position:absolute;right:14px;top:12px;color:#087b68;font-size:20px;font-weight:800}
.rs-custom-chain{margin-top:16px;max-width:520px}.rs-custom-chain label{display:block;font-weight:700;margin-bottom:8px}.rs-custom-chain input{width:100%;max-width:280px;padding:12px;border:1px solid #9dbabc;border-radius:8px;font:inherit}.rs-custom-chain [role=status]{color:#962f17}

/* Admin-configured hardware colour swatches inside the existing catalogue choice tiles. */
.choice-tile .rs-hardware-swatch{display:block;width:46px;height:46px;margin:0 auto 7px;border:1px solid #bfcbd0;border-radius:7px;box-shadow:inset 0 1px 2px rgba(0,0,0,.08);flex-shrink:0}
.choice-tile[aria-pressed="true"] .rs-hardware-swatch{outline:2px solid #2d7d83;outline-offset:3px}

/* Progressive dual/linked draft summary: distinct from saved cart, no new price logic. */
.rs-live-complete{display:grid;gap:12px}
.rs-live-layer{border:1px solid #d9e5e7;border-radius:10px;padding:12px;background:#fbfdfd;display:grid;gap:7px}
.rs-live-section-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.rs-live-section-head strong{margin-right:auto;font-size:13px}
.rs-live-edit{border:1px solid #a8c3c8;border-radius:8px;background:#fff;color:#215363;padding:6px 11px;cursor:pointer;font:inherit;font-weight:700;font-size:12px}
.rs-live-edit:hover,.rs-live-edit:focus-visible{background:#eaf4f5;outline-offset:2px}
.rs-live-field{display:flex;justify-content:space-between;gap:10px;font-size:12px}
.rs-live-field span{color:#526b70}
.rs-live-field strong{text-align:right;overflow-wrap:anywhere}
.rs-live-status{background:#e8f3f1;border-radius:12px;padding:2px 8px;font-size:10px;font-weight:700}
.rs-live-pending{display:grid;gap:7px;padding:12px;background:#eef4f5;border-radius:10px;font-size:12px}
.rs-live-pending span{color:#536b72}
@media(max-width:1050px){.rs-live-complete{position:static}}

/* Incomplete rear layer is visibly unavailable but remains readable. */
.rs-count-button.rs-layer-locked,.rs-live-edit.rs-layer-locked{opacity:.42;filter:grayscale(.65);cursor:not-allowed;box-shadow:none;pointer-events:none}
.rs-count-button.rs-layer-locked::after{content:none}

/* One shared arrangement summary with front/rear comparison columns. */
.rs-live-table-scroll{overflow-x:hidden;max-width:100%;border:1px solid #d9e5e7;border-radius:10px}
.rs-live-table{border-collapse:collapse;width:100%;font-size:12px;min-width:0;table-layout:fixed}
.rs-live-table th,.rs-live-table td{padding:9px 7px;border-bottom:1px solid #e5eced;vertical-align:top;text-align:left;overflow-wrap:anywhere}
.rs-live-table th:first-child{width:40%;font-weight:600;color:#536b72;font-size:10px;white-space:nowrap;overflow-wrap:normal;word-break:normal;letter-spacing:0}
.rs-live-table thead th{background:#f0f6f6;color:#23474e;font-weight:700}
.rs-live-table thead th:not(:first-child){width:auto}
.rs-live-table tbody tr:last-child>*{border-bottom:0}
.rs-live-table .rs-live-shared td{font-weight:600;background:#fafdfd}
.rs-live-column-head{display:flex;flex-direction:column;gap:5px;align-items:flex-start}
.rs-live-column-head .rs-live-edit{padding:4px 9px}
@media(max-width:540px){.rs-live-table{font-size:11px}.rs-live-table th,.rs-live-table td{padding:8px 5px}.rs-live-table th:first-child{width:43%;font-size:9px}}

/* Existing right-hand order summary: subtle emphasis, no layout or pricing changes. */
#rs-arrangement-live.rs-live-complete{
 background:#edf5f5;border:1px solid #adc9cc;border-left:3px solid #5b8c91;
 border-radius:12px;padding:12px 10px;box-shadow:0 5px 15px rgba(34,77,85,.08);
 min-width:0;
}
#rs-arrangement-live .live-head{padding-bottom:9px;border-bottom:1px solid #cfdee0}
#rs-arrangement-live .live-head strong{color:#1a454c;font-weight:800}
#rs-arrangement-live .rs-live-table-scroll,
#rs-arrangement-live .rs-live-price-breakdown{background:#fff}
#rs-arrangement-live .rs-live-price-breakdown{border:1px solid #cfdee0;border-radius:9px;padding:9px;min-width:0}
#rs-arrangement-live .rs-live-final-total{
 background:#dfefed;color:#153e46;font-weight:850;border-radius:7px;
 padding:9px 8px;margin-top:4px;
}

/* Grouped Roller desktop summary: configurations and prices share one visual row. */
@media(min-width:1350px){
 #rs-arrangement-live.rs-live-complete{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:10px;align-items:start}
 #rs-arrangement-live .live-head,#rs-arrangement-live>p{grid-column:1/-1}
 #rs-arrangement-live .rs-live-table-scroll{grid-column:1;min-width:0}
 #rs-arrangement-live .rs-live-price-breakdown,#rs-arrangement-live .rs-live-pending{grid-column:2;min-width:0}
 #rs-arrangement-live .rs-live-table th,#rs-arrangement-live .rs-live-table td{padding:7px 5px}
 #rs-arrangement-live .rs-live-table th:first-child{width:39%;font-size:9px;white-space:normal}
 #rs-arrangement-live .rs-live-price-row{gap:5px}
}

/* Keep configuration labels readable and amounts aligned without horizontal scrolling. */
#rs-arrangement-live .rs-live-table th:first-child{white-space:normal;overflow-wrap:anywhere}
#rs-arrangement-live .rs-live-price-row{display:flex;justify-content:space-between;align-items:baseline;gap:8px}
#rs-arrangement-live .rs-live-price-row span{min-width:0;overflow-wrap:anywhere}
#rs-arrangement-live .rs-live-price-row strong{flex-shrink:0;white-space:nowrap;text-align:right}
@media(max-width:1349px){#rs-arrangement-live.rs-live-complete{grid-template-columns:minmax(0,1fr)}#rs-arrangement-live .rs-live-table-scroll,#rs-arrangement-live .rs-live-price-breakdown,#rs-arrangement-live .rs-live-pending{min-width:0}}

/* Inline Roller option charges: one configuration table, no separate pricing pane. */
#rs-arrangement-live.rs-live-complete{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}
#rs-arrangement-live .live-head,#rs-arrangement-live>p,#rs-arrangement-live .rs-live-table-scroll,#rs-arrangement-live .rs-inline-total,#rs-arrangement-live .rs-live-pending{grid-column:1/-1;min-width:0}
#rs-arrangement-live .rs-inline-option{display:flex;justify-content:space-between;align-items:baseline;gap:7px;min-width:0}
#rs-arrangement-live .rs-inline-option span{min-width:0;overflow-wrap:anywhere}
#rs-arrangement-live .rs-inline-amount{white-space:nowrap;text-align:right;font-variant-numeric:tabular-nums;color:#163d46;font-size:11px}
#rs-arrangement-live .rs-inline-total{border-top:1px solid #cfdee0;padding:12px 4px 0;display:grid;gap:8px}
#rs-arrangement-live .rs-inline-total>div{display:flex;justify-content:space-between;align-items:baseline;gap:8px}
#rs-arrangement-live .rs-inline-final{background:#dfefed;padding:10px;border-radius:8px;font-size:16px;font-weight:800}
@media(min-width:1350px){#rs-arrangement-live.rs-live-complete{grid-template-columns:minmax(0,1fr)}#rs-arrangement-live .rs-live-table-scroll{grid-column:1/-1}}

/* Compact responsive review controls. Existing native step behaviour is unchanged. */
#rs-control-groups{padding:clamp(10px,1.5vw,16px)}
#rs-control-groups h3{font-size:clamp(15px,1.15vw,18px);line-height:1.3;margin:0 0 5px}
#rs-control-groups .hint{font-size:clamp(12px,1vw,14px);line-height:1.45;margin:0 0 10px}
#rs-control-groups .rs-count{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:8px}
#rs-control-groups .rs-count-button{min-width:0;padding:10px 12px;text-align:left;min-height:54px;line-height:1.3}
#rs-control-groups .rs-count-button strong{font-size:clamp(13px,1.05vw,15px)}
#rs-control-groups .rs-count-button small{font-size:12px;display:block;margin-top:3px}
#rs-review .rs-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
#rs-review #rs-confirm-current{min-height:44px}
@media(max-width:600px){#rs-control-groups .rs-count{grid-template-columns:1fr 1fr;gap:7px}#rs-control-groups .rs-count-button{padding:9px 8px}#rs-review .rs-actions>*{flex:1 1 130px}#rs-review #rs-confirm-current{flex-basis:100%}}

/* Dual fabric orientation appears before the existing native selection steps. */
.rs-layer-context{padding:16px 18px;margin:0 0 14px;background:#eef6f5;border:1px solid #b6d0d0;border-left:4px solid #398080;border-radius:10px}
.rs-layer-context h3{margin:0 0 6px;font-size:20px;color:#173f45}
.rs-layer-context .hint{margin:0;line-height:1.5;font-size:13px;color:#456168}
@media(max-width:600px){.rs-layer-context{padding:12px}.rs-layer-context h3{font-size:18px}}

/* Guide changes without altering the approved cards or stored options. */
.rs-native .rs-needs-attention,#rs-measurements.rs-needs-attention,#rs-selectors.rs-needs-attention{outline:2px solid #c27b21;outline-offset:2px;box-shadow:0 0 0 5px rgba(194,123,33,.09)}
#rs-control-groups .rs-count-button.rs-needs-attention{border-color:#c27b21;box-shadow:0 0 0 2px rgba(194,123,33,.14)}
#rs-go-to-missing{margin:10px 0;min-height:44px;border-color:#c27b21}
@media(prefers-reduced-motion:reduce){.rs-needs-attention{scroll-behavior:auto}}
