.kh-preview-tools { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 8px; margin-top: 12px; }
.kh-preview-tools .kh-caption { margin: 0; }
.kh-expand { font: inherit; font-size: 13px; font-weight: 650; color: #6b3215; min-height: 44px; padding: 8px 14px; background: #fff7ef; border: 1px solid #dcb697; border-radius: 8px; cursor: pointer; }
.evidence-page .kh-preview-note { font-size: 12px; color: #62636a; line-height: 1.6; margin-top: 6px; }
.product-viewing { overflow: hidden; }
.product-viewer { width: min(1360px, calc(100% - 32px)); height: calc(100dvh - 32px); max-width: none; max-height: none; margin: auto; padding: 0; border: 1px solid #dcc4b2; border-radius: 16px; background: #fffaf6; color: #111827; overflow: hidden; }
.product-viewer[open] { display: flex; flex-direction: column; }
.product-viewer::backdrop { background: #111827bd; backdrop-filter: blur(8px); }
.product-viewer-bar { display: flex; align-items: center; justify-content: space-between; padding: 12px 20px; gap: 12px; border-bottom: 1px solid #e7d4c5; font-size: 14px; }
.product-viewer :is(.product-viewer-bar, .product-zoom) button { min-width: 44px; min-height: 44px; border: 1px solid #d9bba3; background: #fff; border-radius: 8px; padding: 8px 12px; font: inherit; font-size: 13px; color: inherit; cursor: pointer; }
.product-viewer :is(.product-viewer-bar, .product-zoom) button:disabled { opacity: .45; cursor: default; }
.product-zoom { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; padding: 12px 20px 0; }
.product-zoom output { font-size: 12px; font-variant-numeric: tabular-nums; min-width: 38px; text-align: center; }
.product-pan-hint { font-size: 12px; color: #62636a; margin: 12px 20px; }
.product-viewport { flex: 1; overflow: auto; min-height: 0; overscroll-behavior: contain; background: radial-gradient(ellipse at 20% 10%, #fff2de, transparent 70%), #edbd9b; padding: 20px; }
.product-canvas { position: relative; margin-inline: auto; }
.product-viewer .kh-product-panel { position: absolute; inset: 0 auto auto 0; transform-origin: top left; min-height: 0; max-width: none; }
.product-viewer .pw { --w-text-faint: #9ca3af; --w-stone: #9ca3af; }
.product-viewer .pw p { color: var(--w-text); }
.product-viewer .msg-seat { opacity: 1; }
.product-viewer .msg-seat .ql { color: #9ca3af; }
.product-viewer .wcov { background: #fffaf6; }
.product-viewer .wcov-role--you { color: #873e17; }
.product-viewer .fit { width: 100%; height: auto !important; }
.product-viewer .fit-inner { position: relative; width: 100% !important; transform: none !important; }
@media (max-width: 600px) {
  .product-viewer { width: 100%; height: 100dvh; border-radius: 0; border: 0; }
  .product-viewer-bar, .product-zoom { padding-inline: 12px; }
  .product-zoom { gap: 6px; }
  .product-zoom button { padding-inline: 9px; font-size: 12px; }
  .product-viewport { padding: 12px; }
}
