/* GCM-only presentation; original model renderers and controls stay intact. */
.gcm-view-tabs { display:flex; gap:8px; margin:16px 0 10px; flex-wrap:wrap; }
.gcm-view-tabs button { min-height:44px; padding:10px 18px; border:1px solid #5a6570; border-radius:6px; background:#202932; color:#e9f1f7; font:inherit; font-size:13px; cursor:pointer; }
.gcm-view-tabs button[aria-pressed="true"] { border-color:#139bff; background:#086fc1; color:#fff; }
.gcm-view-tabs button:focus-visible { outline:3px solid #57b6ff; outline-offset:3px; }
.gcm-selected .canvas-stage.front-view-stage { aspect-ratio:3 / 2; height:auto; min-height:0; margin-top:0; background:#fff; border-radius:6px; }
.gcm-selected .canvas-stage.front-view-stage #cartCanvas { display:block; width:100%; height:100%; max-width:100%; max-height:100%; object-fit:contain; object-position:center; position:absolute; inset:0; }
.gcm-selected .stage-watermark { display:none; }
.gcm-selected .personalization-live[data-material="body"] .personalization-live-media { aspect-ratio:3 / 2; height:auto; max-height:min(30svh,260px); background:#fff; }
.gcm-selected .personalization-live[data-material="body"] canvas { object-fit:contain; object-position:center; }
.gcm-selected .personalization-live .gcm-view-tabs { margin:2px 0 6px; }
.gcm-selected .personalization-live .gcm-view-tabs button { min-height:44px; padding:7px 14px; }
.gcm-selected .price-line strong { font-size:clamp(22px,2.5vw,30px); letter-spacing:-.5px; }
.gcm-pending-note { padding:16px; margin:18px 0; border:1px solid #3e6789; border-radius:6px; background:#122534; color:#dcebf6; font-size:13px; line-height:1.65; }
.gcm-review { margin-bottom:20px; }
.gcm-review-heading { display:flex; justify-content:space-between; align-items:center; gap:16px; flex-wrap:wrap; }
.gcm-review-heading h3 { margin:6px 0; font-size:24px; }
.gcm-review-heading>span { font-size:13px; }
.gcm-review-stage { position:relative; aspect-ratio:3 / 2; background:#fff; overflow:hidden; border-radius:6px; }
.gcm-review-stage canvas { width:100%; height:100%; object-fit:contain; display:block; }
.gcm-view-status { position:absolute; top:10px; left:10px; right:10px; background:#ffffffee; color:#152534; padding:12px; font-size:13px; }
.gcm-review-actions { display:flex; gap:8px; margin:12px 0; }
.gcm-review-materials { margin:20px 0; }
.gcm-review-wheel { margin-top:20px; }
.gcm-contact-link { display:inline-block; color:#38a8ff; margin:10px 0; }
.gcm-model-page .model-main-photo .model-photo { background:#fff; border-radius:6px; }
.gcm-model-page .model-showcase { grid-template-columns:minmax(0,1fr); }
.gcm-model-page .model-gallery-grid { grid-template-columns:repeat(2,minmax(0,1fr)); grid-template-rows:auto; }
.gcm-model-page .model-gallery-button,.gcm-model-page .model-gallery-button:first-child { grid-column:auto; grid-row:auto; display:block; }
.gcm-model-page .model-gallery-button .model-photo { aspect-ratio:3 / 2; height:auto; background:#fff; }
.gcm-model-page .model-photo img { transform:none; object-fit:contain; }
@media (min-width:761px) and (max-width:1400px) and (any-pointer:coarse) {
 .gcm-selected .color-comparison { grid-template-columns:minmax(0,1fr); }
 .gcm-selected .color-comparison .front-view-stage,.gcm-selected .color-comparison .preview-caption,.gcm-selected .color-comparison .gcm-view-tabs { grid-column:1 / -1; grid-row:auto; }
 .gcm-selected .color-comparison #seatPreview { grid-column:1 / -1; grid-row:auto; }
}
@media (max-width:600px) {
 .gcm-model-page .model-gallery-grid { grid-template-columns:minmax(0,1fr); }
 .gcm-selected .review-lines>div { grid-template-columns:minmax(80px,1fr) minmax(0,1.5fr); }
 .gcm-selected .mobile-bar b { font-size:18px; }
}
/* Included equipment is informational: never a set of chargeable checkboxes. */
.gcm-included { margin:24px 0; min-width:0; }
.gcm-included h2 { font-size:24px; line-height:1.2; letter-spacing:-.5px; }
.gcm-included h3 { font-size:21px; line-height:1.3; margin-bottom:12px; }
.gcm-equipment-group { margin-top:10px; border:1px solid #3c5264; border-radius:6px; overflow:hidden; background:#12202b; color:#e7eff5; }
.gcm-equipment-group summary { padding:14px 16px; cursor:pointer; font-size:14px; font-weight:700; min-height:48px; }
.gcm-equipment-group summary:focus-visible { outline:3px solid #58b7ff; outline-offset:-3px; }
.gcm-equipment-group ul { list-style:none; margin:0; padding:0 16px 8px; }
.gcm-equipment-group li { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:10px 16px; padding:12px 0; border-top:1px solid #304555; font-size:13px; line-height:1.5; }
.gcm-equipment-group li strong { font-weight:500; }
.gcm-equipment-group li>span { color:#8ed5b9; font-size:11px; white-space:normal; }
.gcm-equipment-group li p { margin:6px 0 0; font-size:11px; color:#bdcbd7; line-height:1.5; }
.gcm-model-page .gcm-included { margin-top:0; }
@media(max-width:600px){
 .gcm-equipment-group li { grid-template-columns:minmax(0,1fr); gap:5px; font-size:14px; }
 .gcm-equipment-group li>span { font-size:12px; }
 .gcm-included h2 { font-size:22px; }
}
