/* CRATER workshop layout: only enhanced medal forms, never the shop/cart globally. */
body.crater-configured-medal #page #content div.product.type-product.crm-layout-ready {
    --crm-ink: #f5f0e6; --crm-gold: #f0cd78; --crm-muted: #d8d2c5;
    --crm-panel: #15120c; --crm-field: #090908; --crm-line: #75602c;
    display: grid !important; grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr) !important;
    align-items: start !important; gap: 24px 32px !important;
}
body.crater-configured-medal #page #content div.product.type-product.crm-layout-ready > :is(.summary,.woocommerce-product-gallery) {
    min-width: 0 !important; width: 100% !important; max-width: none !important;
    float: none !important; margin: 0 !important; grid-column: auto !important;
}
body.crater-configured-medal #page #content div.product.type-product.crm-layout-ready > .summary {
    padding: clamp(20px, 2.5vw, 32px) !important;
}
body.crater-configured-medal #page #content .crm-layout-ready .summary h1.product_title {
    max-width: none !important; font-size: clamp(28px, 3vw, 42px) !important;
    line-height: 1.15 !important; margin: 12px 0 16px !important;
    letter-spacing: -0.02em !important; word-break: normal !important;
    color: var(--crm-ink) !important;
}
body.crater-configured-medal #page #content .crm-layout-ready .woocommerce-product-details__short-description p {
    margin: 12px 0 !important; font-size: 15px !important; line-height: 1.5 !important;
}
body.crater-configured-medal #page #content .crm-layout-ready .summary > .price {
    font-size: 26px !important; line-height: 1.3 !important; margin: 8px 0 !important;
}
body.crater-configured-medal #page #content .crm-layout-ready .woocommerce-product-gallery__image img {
    width: 100% !important; max-height: 300px !important; object-fit: contain !important;
}
body.crater-configured-medal #page #content .crm-layout-ready .flex-control-thumbs img {
    max-height: 64px !important; object-fit: contain !important;
}
body.crater-configured-medal #page #content .crm-layout-ready > .crm-layout-form {
    grid-column: 1 / -1 !important; box-sizing: border-box !important;
    display: block !important; width: 100% !important; max-width: none !important;
    min-width: 0 !important; margin: 0 !important; padding: 24px !important;
    border: 1px solid var(--crm-line) !important; border-radius: 14px !important;
    background: var(--crm-panel) !important; color: var(--crm-ink) !important;
    box-shadow: none !important; overflow: visible !important;
    font: 16px/1.5 Montserrat, "Segoe UI", Arial, sans-serif !important;
}
body.crater-configured-medal #page #content .crm-layout-form .variations {
    width: auto !important; max-width: 100% !important; margin: 0 0 16px !important;
    border: 0 !important; background: transparent !important;
}
body.crater-configured-medal #page #content .crm-layout-form .variations :is(th,td) {
    border: 0 !important; background: transparent !important; padding: 0 16px 0 0 !important;
    color: var(--crm-ink) !important; vertical-align: middle !important;
}
body.crater-configured-medal #page #content .crm-layout-form .variations select {
    box-sizing: border-box; width: min(300px, 100%); min-height: 46px;
    border: 1px solid var(--crm-line); border-radius: 8px; padding: 10px 32px 10px 12px;
    color: var(--crm-ink); background: var(--crm-field); font: inherit; font-size: 16px;
}
body.crater-configured-medal #page #content .crm-layout-form :is(.single_variation_wrap,.woocommerce-variation-add-to-cart) {
    display: block !important; width: 100% !important; min-width: 0 !important;
}
body.crater-configured-medal #page #content .crm-layout-form .crm-config {
    padding: 0 !important; margin: 0 !important; border: 0 !important;
    border-radius: 0 !important; background: transparent !important; box-shadow: none !important;
}
body.crater-configured-medal #page #content .crm-layout-form .crm-config h3 {
    font: 600 21px/1.3 Montserrat, "Segoe UI", Arial, sans-serif !important;
    color: var(--crm-gold) !important; margin: 0 0 6px !important;
}
body.crater-configured-medal #page #content .crm-layout-form .crm-intro { margin: 0 0 16px !important; }
body.crater-configured-medal #page #content .crm-layout-form .crm-options-grid {
    display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; align-items: start;
}
body.crater-configured-medal #page #content .crm-layout-form .crm-step {
    min-width: 0; border: 1px solid var(--crm-line); border-radius: 10px; padding: 14px;
}
body.crater-configured-medal #page #content .crm-layout-form .crm-step-heading {
    display: block; min-height: 44px; cursor: pointer; list-style: none;
    color: var(--crm-gold); font: 600 16px/1.4 Montserrat, "Segoe UI", Arial, sans-serif;
}
body.crater-configured-medal #page #content .crm-layout-form .crm-step-heading::-webkit-details-marker { display: none; }
body.crater-configured-medal #page #content .crm-layout-form .crm-step-value {
    display: block; color: var(--crm-muted); font-size: 12px; font-weight: 400;
    line-height: 1.5; margin-top: 4px; overflow-wrap: anywhere;
}
body.crater-configured-medal #page #content .crm-layout-form .crm-step[open] > .crm-step-heading .crm-step-value { display: none; }
body.crater-configured-medal #page #content .crm-layout-form .crm-step fieldset {
    border: 0 !important; margin: 0 !important; padding: 0 !important;
}
/* Keep the fieldset name available to assistive technology after adding summary. */
body.crater-configured-medal #page #content .crm-layout-form .crm-step legend {
    position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden;
    clip-path: inset(50%); white-space: nowrap;
}
body.crater-configured-medal #page #content .crm-layout-form .crm-config label { margin: 10px 0 6px !important; }
body.crater-configured-medal #page #content .crm-layout-form .crm-config :is(select,textarea) {
    padding: 10px !important; font-size: 16px !important; min-height: 46px !important;
}
body.crater-configured-medal #page #content .crm-layout-form .crm-config .crm-choice-detail { display: none !important; }
body.crater-configured-medal #page #content .crm-layout-form .crm-selected img {
    width: 44px !important; height: 44px !important; flex-basis: 44px !important;
}
body.crater-configured-medal #page #content .crm-layout-form .crm-selected { padding: 8px !important; }
body.crater-configured-medal #page #content .crm-layout-form .crm-config #crm-text-help {
    font-size: 12px !important; line-height: 1.5 !important; margin: 12px 0 !important;
}
body.crater-configured-medal #page #content .crm-layout-form .crm-purchase {
    position: sticky; bottom: 12px; z-index: 20; display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto; gap: 16px !important; align-items: center;
    padding: 14px !important; margin: 16px 0 0 !important;
    border: 1px solid var(--crm-line) !important; border-radius: 10px;
    background: var(--crm-field); box-shadow: 0 8px 24px #0006;
}
body.crater-configured-medal #page #content .crm-layout-form .crm-purchase-price { display: grid; gap: 3px; }
body.crater-configured-medal #page #content .crm-layout-form .crm-purchase .crm-unit { font-size: 20px !important; line-height: 1.3 !important; }
body.crater-configured-medal #page #content .crm-layout-form .crm-purchase :is(.crm-breakdown,.crm-quantity-total) { font-size: 12px !important; }
body.crater-configured-medal #page #content .crm-layout-form .crm-purchase-actions { display: flex; align-items: center; gap: 10px; }
body.crater-configured-medal #page #content .crm-layout-form .crm-purchase .quantity { width: 70px !important; margin: 0 !important; float: none !important; }
body.crater-configured-medal #page #content .crm-layout-form .crm-purchase .qty { width: 100% !important; min-height: 48px !important; padding: 8px !important; font-size: 16px !important; }
body.crater-configured-medal #page #content .crm-layout-form .crm-purchase .single_add_to_cart_button {
    width: auto !important; min-height: 48px !important; padding: 12px 20px !important;
    margin: 0 !important; font-size: 15px !important; line-height: 1.4 !important;
    white-space: normal !important; color: #090908 !important; background: #f0cd78 !important;
}
body.crater-configured-medal #page #content .crm-layout-form :is(summary,select,textarea,button,input):focus-visible {
    outline: 2px solid var(--crm-gold) !important; outline-offset: 3px !important;
}
body.crater-configured-medal #page #content .crm-layout-ready > :is(.woocommerce-tabs,.related.products) { grid-column: 1 / -1 !important; }
@media (max-width: 900px) {
    body.crater-configured-medal #page #content div.product.type-product.crm-layout-ready { gap: 16px !important; }
    body.crater-configured-medal #page #content .crm-layout-form .crm-options-grid { grid-template-columns: minmax(0, 1fr); gap: 10px; }
    body.crater-configured-medal #page #content .crm-layout-form .crm-step-heading { position: relative; padding-right: 28px; }
    body.crater-configured-medal #page #content .crm-layout-form .crm-step-heading::after { content: '+'; position: absolute; right: 0; top: 0; font-size: 24px; }
    body.crater-configured-medal #page #content .crm-layout-form .crm-step[open] > summary::after { content: '−'; }
}
@media (max-width: 600px) {
    body.crater-configured-medal #page #content div.product.type-product.crm-layout-ready { grid-template-columns: minmax(0, 1fr) !important; }
    body.crater-configured-medal #page #content div.product.type-product.crm-layout-ready > .woocommerce-product-gallery { max-width: 360px !important; margin-inline: auto !important; }
    body.crater-configured-medal #page #content .crm-layout-ready .woocommerce-product-gallery__image img { max-height: 230px !important; }
    body.crater-configured-medal #page #content div.product.type-product.crm-layout-ready > .summary { padding: 16px !important; }
    body.crater-configured-medal #page #content .crm-layout-ready > .crm-layout-form { padding: 14px !important; }
    body.crater-configured-medal #page #content .crm-layout-form .crm-purchase { grid-template-columns: minmax(0, 1fr); gap: 10px !important; bottom: 8px; }
    body.crater-configured-medal #page #content .crm-layout-form .crm-purchase-actions { display: grid; grid-template-columns: 70px minmax(0, 1fr); }
    body.crater-configured-medal #page #content .crm-layout-form .crm-purchase .single_add_to_cart_button { width: 100% !important; }
}
@media (prefers-reduced-motion: reduce) {
    body.crater-configured-medal #page #content .crm-layout-form * { scroll-behavior: auto !important; transition: none !important; }
}
