.xb-configurator{padding:44px 4.5% 25px;max-width:1800px;margin:auto}.xb-intro{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:32px;gap:20px}.xb-intro h1{font-size:clamp(32px,3.2vw,52px);font-weight:400;letter-spacing:-.055em;margin:12px 0 10px;line-height:1.05}.xb-intro h1 em{font-family:Georgia,serif;font-weight:400}.xb-intro p{font-size:12px;color:var(--muted);margin:0}.xb-back{font-size:11px;border-bottom:1px solid var(--line);padding-bottom:5px}.xb-layout{display:grid;grid-template-columns:minmax(230px,280px) minmax(300px,1fr) minmax(210px,250px);gap:24px;align-items:start}.xb-controls,.xb-summary{padding-top:10px}.xb-control-section{margin-bottom:28px}.xb-section-label h2{font-size:10px;color:#a08b6e;letter-spacing:.03em;margin:0;font-family:Arial,sans-serif;font-weight:400;line-height:1.5}.xb-section-label h2 span{color:var(--ink);font-size:13px;margin-left:7px;font-weight:600;letter-spacing:0}.xb-section-label>span{display:block;font-size:10px;color:var(--muted);margin:8px 0 0 22px;min-height:14px}.xb-swatches{display:flex;gap:8px;margin:16px 0 12px;flex-wrap:wrap}.xb-swatch{width:29px;height:29px;border-radius:50%;background:var(--swatch);border:3px solid var(--paper);outline:1px solid #d3c8b7;padding:0;position:relative;flex-shrink:0;transition:transform .2s}.xb-swatch[aria-pressed=true]{outline:2px solid #5e4935;outline-offset:2px;transform:scale(.96)}.xb-swatch[data-knob=gold]::after{content:'';width:7px;height:7px;background:#ba9457;border:1px solid var(--paper);position:absolute;right:-1px;bottom:-1px;border-radius:50%}.xb-source-link{font-size:9px;color:var(--muted);text-decoration:underline;text-underline-offset:3px}.xb-tabs{display:flex;gap:7px;border-bottom:1px solid var(--line);padding:14px 0 10px;margin-bottom:10px}.xb-tabs button{background:none;border:0;padding:6px 10px;font-size:10px;color:var(--muted);border-radius:20px}.xb-tabs button[aria-pressed=true]{background:#e7dac6;color:var(--ink)}.xb-accessory-list{display:flex;flex-direction:column;gap:7px}.xb-accessory{border:1px solid var(--line);border-radius:7px;background:#faf5ed;overflow:hidden}.xb-accessory.selected{border-color:#a18b6d;background:#eee4d5}.xb-accessory-toggle{display:grid;grid-template-columns:34px 1fr 20px;gap:10px;align-items:center;text-align:left;border:0;background:none;width:100%;padding:12px}.xb-accessory-icon{width:32px;height:32px;display:grid;place-items:center;color:#71604b}.xb-accessory-icon svg{width:30px;height:30px;stroke:currentColor;fill:none;stroke-width:1.3}.xb-accessory-text strong{font-size:11px;font-weight:500;display:block;line-height:1.4}.xb-accessory-text small{font-size:8px;color:var(--muted);display:block;margin-top:3px;line-height:1.4}.xb-check{font-size:12px;border:1px solid #cbbca7;border-radius:50%;width:18px;height:18px;display:grid;place-items:center}.selected .xb-check{background:var(--ink);color:var(--paper);border-color:var(--ink)}.xb-accessory-colours{padding:0 12px 12px 56px}.xb-accessory-colours .xb-swatches{gap:7px;margin:6px 0 0}.xb-accessory-colours .xb-swatch{width:20px;height:20px;border-width:2px}.xb-accessory-colours p{font-size:9px;margin:0;color:var(--muted)}.xb-stage{height:clamp(520px,calc(100svh - 290px),720px);position:relative;border-radius:12px;background:radial-gradient(ellipse at 40% 35%,#f8f5ed,#e7e1d4 72%,#dcd6c9);overflow:hidden;border:1px solid #ded5c5;box-shadow:inset 0 1px 0 #ffffffaa;min-width:0}.xb-stage canvas{width:100%;height:100%;display:block;touch-action:none;cursor:grab;outline-offset:-4px}.xb-stage canvas:active{cursor:grabbing}.xb-view-toolbar{position:absolute;left:16px;top:16px;display:flex;gap:3px;z-index:2;background:#f9f6efd9;padding:4px;border:1px solid #dfd6c5;border-radius:7px}.xb-view-toolbar button{background:none;border:0;border-radius:4px;padding:7px 8px;font-size:9px;color:var(--muted)}.xb-view-toolbar button[aria-pressed=true]{background:#e5d7c1;color:var(--ink)}.xb-stage-label{position:absolute;left:18px;bottom:18px;font-size:8px;letter-spacing:.09em;display:flex;align-items:center;gap:7px}.xb-live-dot{width:5px;height:5px;border-radius:50%;background:#9c865f}.xb-stage-controls{display:flex;flex-direction:column;gap:5px;position:absolute;right:15px;bottom:44px}.xb-stage-controls button{width:30px;height:30px;background:#f9f6efd9;border:1px solid #d9cfbe;border-radius:5px;font-size:17px;display:grid;place-items:center}.xb-stage-hint{position:absolute;bottom:18px;right:15px;font-size:8px;color:#786d5e;pointer-events:none}.xb-stage-hint span{margin:0 4px}.xb-loading{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#eee8dce8;gap:12px;z-index:4;text-align:center;padding:25px}.xb-loading[hidden]{display:none}.xb-loading strong{font-size:15px;font-weight:400;font-family:Georgia,serif}.xb-loading>span:last-child{font-size:10px;color:var(--muted)}.xb-loading-ring{border:2px solid #c9baa4;border-top-color:#5d4933;border-radius:50%;width:28px;height:28px;animation:xb-spin 1s linear infinite}.xb-viewer-error{position:absolute;inset:0;background:#eee7d9;z-index:5;text-align:center;padding:50px 25px;display:flex;justify-content:center;align-items:center;flex-direction:column;font-size:12px;line-height:1.7}.xb-viewer-error[hidden]{display:none}.xb-viewer-error a{text-decoration:underline}.xb-viewer-error button{margin-top:20px;background:var(--ink);color:var(--paper);border:0;border-radius:4px;padding:10px 20px}.xb-summary{padding:17px 0 0 0}.xb-summary>.eyebrow{font-size:8px}.xb-summary h2{font-family:Georgia,serif;font-size:29px;letter-spacing:-.05em;margin:12px 0 22px}.xb-summary-machine{font-size:11px;line-height:1.8;color:var(--muted);margin:0 0 20px}.xb-summary-machine strong{font-weight:400;color:var(--ink)}.xb-summary-item{display:grid;grid-template-columns:1fr 18px;gap:8px;border-top:1px solid var(--line);padding:13px 0}.xb-summary-item strong{font-size:11px;font-weight:500;display:block}.xb-summary-item small{font-size:9px;color:var(--muted);display:flex;gap:6px;align-items:center;margin-top:7px}.xb-summary-item i{width:8px;height:8px;border-radius:50%;background:var(--swatch);border:1px solid #cabbab;display:inline-block}.xb-summary-item button{border:0;background:none;font-size:15px;padding:0;color:#91816b}.xb-summary-bottom{border-top:1px solid var(--line);margin-top:4px;padding-top:15px}.xb-summary-bottom>p:first-child{font-size:11px;margin:0 0 18px}.xb-summary-bottom .button{width:100%;font-size:10px;padding:15px 17px;gap:10px;cursor:pointer}.xb-save{background:none;border:1px solid var(--line);border-radius:3px;width:100%;padding:12px;margin-top:9px;font-size:10px}.xb-shop-link{display:block;text-align:center;font-size:10px;margin:17px 0 20px;text-decoration:underline;text-underline-offset:4px}.xb-preview-note{font-size:9px;line-height:1.8;color:var(--muted);margin:0}.xb-status{font-size:10px;line-height:1.7;margin-top:12px;color:#62513d;min-height:17px}.xb-bottom-note{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);margin-top:35px;padding-top:19px;font-size:8px;color:var(--muted);letter-spacing:.06em}.xb-configurator+footer{margin-top:30px}.xb-empty{font-size:11px;color:var(--muted);line-height:1.7;padding:12px 0 25px}.xb-removed{font-size:9px;color:var(--muted)}@keyframes xb-spin{to{transform:rotate(360deg)}}
@media(max-width:1150px){.xb-configurator{padding-left:3%;padding-right:3%}.xb-layout{grid-template-columns:220px minmax(300px,1fr);gap:20px}.xb-summary{grid-column:1/-1;display:grid;grid-template-columns:1fr 1.4fr;column-gap:35px}.xb-summary>.eyebrow,.xb-summary h2,.xb-summary-machine{grid-column:1}.xb-summary h2{margin-bottom:10px}.xb-summary-list{grid-column:1}.xb-summary-bottom{grid-column:2;grid-row:1/6;margin:0;padding-top:15px}.xb-stage{height:600px}}@media(min-width:1700px){.xb-stage{height:720px}}
@media(max-width:700px){.xb-configurator{padding:30px 5% 20px}.xb-intro{margin-bottom:22px;align-items:flex-start}.xb-intro>.xb-back{font-size:9px;white-space:nowrap;margin-top:25px}.xb-intro .eyebrow{font-size:7px;letter-spacing:.1em}.xb-intro h1{font-size:33px;max-width:260px}.xb-intro p{font-size:10px;max-width:220px;line-height:1.6}.xb-layout{display:flex;flex-direction:column;gap:25px}.xb-stage{order:0;width:100%;height:470px}.xb-controls{order:1;width:100%;padding:0}.xb-summary{order:2;display:block;width:100%;padding:22px;background:#ede2d1;border-radius:8px}.xb-summary-bottom{padding-top:20px}.xb-control-section{margin-bottom:24px}.xb-control-section:first-child{border-bottom:1px solid var(--line);padding-bottom:23px}.xb-swatches{gap:15px}.xb-swatch{width:32px;height:32px}.xb-accessory-list{display:grid;grid-template-columns:1fr 1fr;gap:9px}.xb-accessory-toggle{grid-template-columns:28px 1fr 16px;gap:7px;padding:11px 9px}.xb-accessory-text strong{font-size:10px}.xb-accessory-icon{width:26px;height:26px}.xb-accessory-text small{font-size:7px}.xb-accessory-colours{padding:0 9px 12px}.xb-accessory-colours .xb-swatches{gap:10px}.xb-accessory-colours .xb-swatch{width:22px;height:22px}.xb-bottom-note{font-size:7px;flex-wrap:wrap;gap:12px}.xb-stage-label{font-size:7px}.xb-stage-hint{font-size:7px}.xb-view-toolbar{left:12px;top:12px}.xb-view-toolbar button{font-size:9px;padding:8px}.xb-summary h2{font-size:30px}.xb-summary-list{margin-top:20px}}@media(prefers-reduced-motion:reduce){.xb-loading-ring{animation:none}}

.xb-placement{padding:0 12px 12px;border-top:1px solid #d9ccb9;margin:0 10px}.xb-placement p{font-size:9px;color:var(--muted);line-height:1.6;margin:9px 0 7px}.xb-placement-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px;font-size:9px;color:var(--muted);margin-top:10px}.xb-placement-row select{max-width:100%;font-size:10px;border:1px solid #cbbca7;border-radius:4px;background:#faf5ed;color:var(--ink);padding:7px}.xb-position-buttons{display:flex;gap:6px}.xb-position-buttons button{min-width:35px;min-height:32px;border:1px solid #cbbca7;border-radius:4px;background:#faf5ed;color:var(--ink)}
@media(min-width:701px){.xb-stage{position:sticky;top:48px}.xb-accessory-list{max-height:570px;overflow:auto;padding-right:5px;scrollbar-width:thin;scrollbar-color:#baa68a transparent}.xb-accessory{flex-shrink:0}}
@media(max-width:700px){.xb-tabs{flex-wrap:wrap;gap:3px}.xb-tabs button{padding:7px 9px}.xb-placement{padding:0 2px 10px;margin:0 7px}.xb-position-buttons{gap:4px}.xb-position-buttons button{min-width:28px}.xb-placement-row select{width:100%}.xb-stage{height:470px}}

.xb-clear{display:block;margin:0 0 12px auto;padding:4px 0;background:none;border:0;border-bottom:1px solid #cbbca7;color:var(--muted);font-size:9px;cursor:pointer}

.xb-detail-loading{position:absolute;right:16px;top:64px;z-index:2;background:#fbf7ede8;border:1px solid #cfbea3;padding:10px 12px;border-radius:6px;font-size:10px;color:#584731}.xb-detail-loading[hidden]{display:none}
.xb-custom-colour-button{display:block;margin:12px 0 3px;padding:8px 12px;border:1px solid #b6a183;border-radius:5px;background:#fffaf0;color:#453522;font-size:10px;cursor:pointer}.xb-custom-colour-panel label{display:flex;align-items:center;flex-wrap:wrap;gap:7px;font-size:10px;margin:10px 0}.xb-custom-colour-panel input[type=color]{width:46px;height:32px;padding:2px;border:1px solid #b6a183;background:#fffaf0;border-radius:4px}.xb-custom-colour-panel input[type=text]{width:82px;padding:7px;font:inherit;background:#fffaf0;border:1px solid #b6a183;border-radius:4px}.xb-custom-colour-panel button{padding:7px;font:inherit;background:#eee1ce;border:1px solid #b6a183;border-radius:4px}.xb-custom-note{font-size:10px!important;line-height:1.6!important;color:#735330!important;background:#f3e5cf;padding:10px;border-left:3px solid #ae8755;border-radius:3px}

.xb-mobile-view{display:none}
@media(max-width:700px){
 .xb-configurator,.xb-controls,.xb-summary,.xb-intro>div{min-width:0}.xb-stage{height:clamp(330px,55svh,470px)}
 .xb-view-toolbar{display:none}.xb-mobile-view{display:block;position:absolute;z-index:2;left:12px;top:12px;max-width:calc(100% - 80px);min-height:44px;font-size:16px;padding:8px 12px;background:#faf6efe8;color:#453522;border:1px solid #cbbca7;border-radius:6px}
 .xb-stage-controls button{width:44px;height:44px}.xb-stage-controls{right:12px;bottom:44px}.xb-stage-hint{right:12px;max-width:60%;text-align:right}.xb-stage-label{left:12px}
 .xb-swatches{gap:10px}.xb-swatch,.xb-accessory-colours .xb-swatch{width:44px;height:44px}.xb-accessory-colours .xb-swatches{gap:6px}
 .xb-accessory-toggle{min-height:64px}.xb-accessory-text strong{font-size:12px}.xb-accessory-text small{font-size:10px;line-height:1.5}.xb-accessory-colours p{font-size:12px}.xb-summary-item strong{font-size:13px}.xb-summary-item small{font-size:11px}
 .xb-custom-colour-button,.xb-custom-colour-panel button,.xb-tabs button,.xb-summary-item button{min-height:44px;min-width:44px}.xb-custom-colour-button{font-size:13px}
 .xb-placement-row select,.xb-custom-colour-panel input[type=text],.xb-custom-colour-panel input[type=color]{min-height:44px;font-size:16px}.xb-custom-colour-panel label,.xb-custom-note{font-size:12px!important}.xb-custom-colour-panel input[type=text]{width:100px;max-width:100%}
 .xb-custom-colour-panel label{align-items:flex-start}.xb-summary{box-sizing:border-box}.xb-detail-loading{top:66px;right:12px;left:12px;font-size:11px;text-align:center}.xb-clear{min-height:44px;font-size:11px}
}

/* A browsable, grouped accessory catalogue. */
.xb-search-label{display:block;font-size:11px;color:var(--muted);margin:18px 0 8px}#xb-accessory-search{width:100%;min-width:0;min-height:44px;border:1px solid var(--line);background:#faf6ef;border-radius:5px;padding:10px 12px;font-size:13px;color:var(--ink);box-sizing:border-box}.xb-tabs{flex-wrap:wrap;gap:6px}.xb-tabs button{min-height:38px;padding:9px 11px}.xb-results-count{font-size:10px;color:var(--muted);margin:12px 0 0}.xb-accessory-list{display:block}.xb-accessory-category{padding-top:15px;margin-top:8px;border-top:1px solid var(--line)}.xb-accessory-category h3{font-family:Arial,sans-serif;font-size:12px;font-weight:600;margin:0 0 7px;display:flex;align-items:center;justify-content:space-between;gap:10px}.xb-accessory-category h3 span{font-size:10px;color:var(--muted);font-weight:400;border:1px solid var(--line);border-radius:20px;padding:3px 7px}.xb-category-note{font-size:10px;line-height:1.6;color:var(--muted);margin:0 0 12px}.xb-category-cards{display:flex;flex-direction:column;gap:7px}
@media(max-width:700px){#xb-accessory-search{font-size:16px}.xb-tabs button{min-height:44px}.xb-accessory-list{display:block}.xb-category-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.xb-category-note{font-size:12px}.xb-accessory-category h3{font-size:14px}.xb-accessory-category{padding-top:20px;margin-top:18px}.xb-results-count{font-size:12px}}
