/* =========================================================
   Chợ Lớn PDP Polish V1
   Scope: catalog product view only
   Purpose: consistent rounded corners and micro visual polish
   ========================================================= */

.catalog-product-view {
    --cholon-pdp-radius-xs: 6px;
    --cholon-pdp-radius-sm: 8px;
    --cholon-pdp-radius-md: 10px;
    --cholon-pdp-radius-lg: 14px;
    --cholon-pdp-radius-xl: 18px;
    --cholon-pdp-orange: #f59e0b;
    --cholon-pdp-border: #e5e7eb;
}

/* =========================================================
   1. Product media / gallery
   ========================================================= */

.catalog-product-view .product.media .fotorama__stage,
.catalog-product-view .gallery-placeholder .fotorama__stage,
.catalog-product-view .product.media .fotorama__stage__frame,
.catalog-product-view .gallery-placeholder .fotorama__stage__frame,
.catalog-product-view .product.media .fotorama__img,
.catalog-product-view .gallery-placeholder .fotorama__img,
.catalog-product-view .product.media img,
.catalog-product-view .gallery-placeholder img {
    border-radius: var(--cholon-pdp-radius-lg) !important;
}

.catalog-product-view .product.media .fotorama__stage,
.catalog-product-view .gallery-placeholder .fotorama__stage,
.catalog-product-view .product.media .fotorama__stage__shaft,
.catalog-product-view .gallery-placeholder .fotorama__stage__shaft {
    overflow: hidden !important;
    background: #fff;
}

/* Thumbnail frames */
.catalog-product-view .product.media .fotorama__nav__frame,
.catalog-product-view .gallery-placeholder .fotorama__nav__frame,
.catalog-product-view .product.media .fotorama__thumb,
.catalog-product-view .gallery-placeholder .fotorama__thumb,
.catalog-product-view .product.media .fotorama__thumb-border,
.catalog-product-view .gallery-placeholder .fotorama__thumb-border,
.catalog-product-view .product.media .fotorama__nav__frame img,
.catalog-product-view .gallery-placeholder .fotorama__nav__frame img {
    border-radius: var(--cholon-pdp-radius-sm) !important;
    overflow: hidden !important;
}

.catalog-product-view .product.media .fotorama__thumb-border,
.catalog-product-view .gallery-placeholder .fotorama__thumb-border {
    border-color: var(--cholon-pdp-orange) !important;
}

/* =========================================================
   2. Main product information blocks
   ========================================================= */

.catalog-product-view .product-info-main .box,
.catalog-product-view .product-info-main .block,
.catalog-product-view .product-info-main .fieldset,
.catalog-product-view .product-info-main .product-info-price,
.catalog-product-view .product-info-main .price-box,
.catalog-product-view .product-info-main .product-options-wrapper,
.catalog-product-view .product-info-main .product-options-bottom,
.catalog-product-view .product-info-main .product-social-links,
.catalog-product-view .product-info-main .stock,
.catalog-product-view .product-info-main .message,
.catalog-product-view .product-info-main .notice,
.catalog-product-view .product-info-main [class*="box-"],
.catalog-product-view .product-info-main [class*="card"],
.catalog-product-view .product-info-main [class*="panel"] {
    border-radius: var(--cholon-pdp-radius-lg);
}

/* Prevent over-rounding inline labels/badges inside price card */
.catalog-product-view .product-info-main .price,
.catalog-product-view .product-info-main .price-label,
.catalog-product-view .product-info-main .price-wrapper {
    border-radius: 0;
}

/* =========================================================
   3. Options / swatches / GSM boxes
   ========================================================= */

.catalog-product-view .product-info-main .product-options-wrapper .swatch-option,
.catalog-product-view .product-info-main .swatch-option,
.catalog-product-view .product-info-main .swatch-attribute-options .swatch-option,
.catalog-product-view .product-info-main .product-options-wrapper label,
.catalog-product-view .product-info-main .product-options-wrapper .label,
.catalog-product-view .product-info-main .product-options-wrapper button,
.catalog-product-view .product-info-main .product-options-wrapper .button,
.catalog-product-view .product-info-main [class*="option"] label,
.catalog-product-view .product-info-main [class*="option"] button,
.catalog-product-view .product-info-main [class*="option"] .button,
.catalog-product-view .product-info-main [class*="swatch"] label,
.catalog-product-view .product-info-main [class*="swatch"] button,
.catalog-product-view .product-info-main [class*="swatch"] .swatch-option {
    border-radius: var(--cholon-pdp-radius-sm) !important;
}

/* Keep color swatches neat but not pill-like */
.catalog-product-view .product-info-main .swatch-option.color,
.catalog-product-view .product-info-main .swatch-option.image {
    border-radius: var(--cholon-pdp-radius-sm) !important;
    overflow: hidden;
}

/* Selected/active option state */
.catalog-product-view .product-info-main .swatch-option.selected,
.catalog-product-view .product-info-main .swatch-option.active,
.catalog-product-view .product-info-main [class*="option"] .selected,
.catalog-product-view .product-info-main [class*="option"] .active {
    border-radius: var(--cholon-pdp-radius-sm) !important;
}

/* =========================================================
   4. Inputs / selects / qty
   ========================================================= */

.catalog-product-view .product-info-main input[type="text"],
.catalog-product-view .product-info-main input[type="number"],
.catalog-product-view .product-info-main input[type="email"],
.catalog-product-view .product-info-main input[type="tel"],
.catalog-product-view .product-info-main select,
.catalog-product-view .product-info-main textarea,
.catalog-product-view .product-info-main .input-text,
.catalog-product-view .product-info-main .qty,
.catalog-product-view .product-info-main .field.qty .control,
.catalog-product-view .product-info-main .box-tocart .control,
.catalog-product-view .product-info-main .qty-wrapper {
    border-radius: var(--cholon-pdp-radius-sm) !important;
}

/* Do not visually distort checkbox/radio */
.catalog-product-view .product-info-main input[type="checkbox"],
.catalog-product-view .product-info-main input[type="radio"] {
    border-radius: initial !important;
}

/* =========================================================
   5. Buttons / CTAs
   ========================================================= */

.catalog-product-view .product-info-main button,
.catalog-product-view .product-info-main .button,
.catalog-product-view .product-info-main .action,
.catalog-product-view .product-info-main .action.primary,
.catalog-product-view .product-info-main .action.secondary,
.catalog-product-view .product-info-main #product-addtocart-button,
.catalog-product-view .product-info-main .action.primary.tocart,
.catalog-product-view .product-info-main button.tocart,
.catalog-product-view .product-info-main .box-tocart .action.tocart {
    border-radius: var(--cholon-pdp-radius-md) !important;
}

.catalog-product-view .product-info-main #product-addtocart-button,
.catalog-product-view .product-info-main .action.primary.tocart,
.catalog-product-view .product-info-main button.tocart,
.catalog-product-view .product-info-main .box-tocart .action.tocart {
    min-height: 44px;
    font-weight: 800;
    box-shadow: 0 8px 18px rgba(245, 158, 11, 0.18);
    transition: transform .16s ease, box-shadow .16s ease, filter .16s ease;
}

.catalog-product-view .product-info-main #product-addtocart-button:hover,
.catalog-product-view .product-info-main .action.primary.tocart:hover,
.catalog-product-view .product-info-main button.tocart:hover,
.catalog-product-view .product-info-main .box-tocart .action.tocart:hover {
    transform: translateY(-1px);
    box-shadow: 0 11px 22px rgba(245, 158, 11, 0.24);
}

/* =========================================================
   6. Tabs / benefit boxes / custom PDP widgets
   ========================================================= */

.catalog-product-view .product-info-main .product.data.items .item.title,
.catalog-product-view .product-info-main .product.data.items .item.content,
.catalog-product-view .product-info-main [class*="tab"],
.catalog-product-view .product-info-main [class*="benefit"],
.catalog-product-view .product-info-main [class*="promo"],
.catalog-product-view .product-info-main [class*="shipping"],
.catalog-product-view .product-info-main [class*="support"],
.catalog-product-view .product-info-main [class*="consult"],
.catalog-product-view .product-info-main [class*="hotline"],
.catalog-product-view .product-info-main [class*="quick"],
.catalog-product-view .product-info-main [class*="feature"] {
    border-radius: var(--cholon-pdp-radius-md);
}

/* =========================================================
   7. Product detail below fold
   ========================================================= */

.catalog-product-view .product.info.detailed .data.item.content,
.catalog-product-view .product.info.detailed .product.data.items > .item.content,
.catalog-product-view .product.info.detailed .additional-attributes-wrapper,
.catalog-product-view .product.info.detailed table,
.catalog-product-view .product.info.detailed .block,
.catalog-product-view .product.info.detailed .box,
.catalog-product-view .product.info.detailed [class*="card"],
.catalog-product-view .product.info.detailed [class*="panel"],
.catalog-product-view .product.info.detailed img,
.catalog-product-view .product.info.detailed iframe,
.catalog-product-view .product.info.detailed video {
    border-radius: var(--cholon-pdp-radius-lg);
}

/* Cards outside product-info-main but still on PDP */
.catalog-product-view .column.main [class*="card"],
.catalog-product-view .column.main [class*="box"],
.catalog-product-view .column.main [class*="panel"],
.catalog-product-view .column.main [class*="video"],
.catalog-product-view .column.main [class*="review"] {
    border-radius: var(--cholon-pdp-radius-lg);
}

/* =========================================================
   8. Tier prices
   ========================================================= */

.catalog-product-view .product-info-main .prices-tier,
.catalog-product-view .product-info-main .tier-prices,
.catalog-product-view .product-info-main .product-pricing {
    margin-top: 12px;
    color: #334155;
    font-size: 13px;
    line-height: 1.55;
}

.catalog-product-view .product-info-main .prices-tier .price,
.catalog-product-view .product-info-main .tier-prices .price,
.catalog-product-view .product-info-main .product-pricing .price {
    color: #dc2626;
    font-weight: 800;
}

/* =========================================================
   9. Mobile
   ========================================================= */

@media (max-width: 767px) {
    .catalog-product-view {
        --cholon-pdp-radius-sm: 7px;
        --cholon-pdp-radius-md: 9px;
        --cholon-pdp-radius-lg: 12px;
        --cholon-pdp-radius-xl: 15px;
    }

    .catalog-product-view .product-info-main #product-addtocart-button,
    .catalog-product-view .product-info-main .action.primary.tocart,
    .catalog-product-view .product-info-main button.tocart {
        min-height: 42px;
    }
}

/* =========================================================
   Chợ Lớn PDP Polish V1.0.1
   Radius coverage patch for Magento/theme generated widgets
   ========================================================= */

/* Swatch tooltip / option tooltip */
.catalog-product-view .swatch-option-tooltip,
.catalog-product-view .swatch-option-tooltip .title,
.catalog-product-view .swatch-option-tooltip .corner,
.catalog-product-view .swatch-option-tooltip-layered,
.catalog-product-view .swatch-option-tooltip-layered .title,
.catalog-product-view [class*="tooltip"],
.catalog-product-view [class*="Tooltip"] {
    border-radius: var(--cholon-pdp-radius-sm) !important;
}

/* Tooltip image/color preview */
.catalog-product-view .swatch-option-tooltip .image,
.catalog-product-view .swatch-option-tooltip .image img,
.catalog-product-view .swatch-option-tooltip .title,
.catalog-product-view .swatch-option-tooltip-layered .image,
.catalog-product-view .swatch-option-tooltip-layered .image img {
    border-radius: var(--cholon-pdp-radius-sm) !important;
    overflow: hidden !important;
}

/* Custom option rows and theme-generated option wrappers */
.catalog-product-view .product-info-main .field.choice,
.catalog-product-view .product-info-main .options-list .field,
.catalog-product-view .product-info-main .product-options-wrapper .field,
.catalog-product-view .product-info-main .product-options-wrapper .control,
.catalog-product-view .product-info-main .swatch-attribute,
.catalog-product-view .product-info-main .swatch-attribute-options,
.catalog-product-view .product-info-main .swatch-opt,
.catalog-product-view .product-info-main .super-attribute-select,
.catalog-product-view .product-info-main .product-custom-option {
    border-radius: var(--cholon-pdp-radius-sm) !important;
}

/* Option label boxes */
.catalog-product-view .product-info-main .product-options-wrapper .field.choice label,
.catalog-product-view .product-info-main .product-options-wrapper .options-list label,
.catalog-product-view .product-info-main .swatch-attribute-options .swatch-option,
.catalog-product-view .product-info-main .swatch-option.text,
.catalog-product-view .product-info-main .swatch-option.color,
.catalog-product-view .product-info-main .swatch-option.image {
    border-radius: var(--cholon-pdp-radius-sm) !important;
    overflow: hidden !important;
}

/* Selected option should keep clean rounded border */
.catalog-product-view .product-info-main .swatch-option.selected,
.catalog-product-view .product-info-main .swatch-option:hover,
.catalog-product-view .product-info-main .product-options-wrapper .field.choice:hover,
.catalog-product-view .product-info-main .product-options-wrapper label:hover {
    border-radius: var(--cholon-pdp-radius-sm) !important;
}

/* Qty stepper: minus/input/plus group */
.catalog-product-view .product-info-main .box-tocart .field.qty,
.catalog-product-view .product-info-main .box-tocart .control,
.catalog-product-view .product-info-main .qty-wrapper,
.catalog-product-view .product-info-main .qty-control,
.catalog-product-view .product-info-main .qty-changer,
.catalog-product-view .product-info-main .qty-inc,
.catalog-product-view .product-info-main .qty-dec,
.catalog-product-view .product-info-main .minus,
.catalog-product-view .product-info-main .plus {
    border-radius: var(--cholon-pdp-radius-sm) !important;
    overflow: hidden;
}

/* Advisory / promo banners / quick spec cards in the main column */
.catalog-product-view .column.main .cholon-pdp-advisory,
.catalog-product-view .column.main .cholon-pdp-advisory-sidebar,
.catalog-product-view .column.main .cholon-pdp-quick-specs,
.catalog-product-view .column.main .cholon-pdp-video-hub,
.catalog-product-view .column.main [class*="cholon-pdp"],
.catalog-product-view .column.main [class*="advisory"],
.catalog-product-view .column.main [class*="quick-spec"],
.catalog-product-view .column.main [class*="promo"],
.catalog-product-view .column.main [class*="consult"],
.catalog-product-view .column.main [class*="dealer"],
.catalog-product-view .column.main [class*="wholesale"] {
    border-radius: var(--cholon-pdp-radius-lg) !important;
}

/* Inner cards inside Chợ Lớn custom modules */
.catalog-product-view .column.main [class*="cholon-pdp"] *,
.catalog-product-view .product-info-main [class*="cholon-pdp"] * {
    border-radius: inherit;
}

/* But do not force text/icon spans to inherit radius unnecessarily */
.catalog-product-view .column.main [class*="cholon-pdp"] span,
.catalog-product-view .column.main [class*="cholon-pdp"] strong,
.catalog-product-view .column.main [class*="cholon-pdp"] em,
.catalog-product-view .column.main [class*="cholon-pdp"] i,
.catalog-product-view .product-info-main [class*="cholon-pdp"] span,
.catalog-product-view .product-info-main [class*="cholon-pdp"] strong,
.catalog-product-view .product-info-main [class*="cholon-pdp"] em,
.catalog-product-view .product-info-main [class*="cholon-pdp"] i {
    border-radius: 0;
}

/* Product detail / quick table below buy box */
.catalog-product-view .product.info.detailed,
.catalog-product-view .product.info.detailed .data.item.content,
.catalog-product-view .product.info.detailed .product.data.items,
.catalog-product-view .product.info.detailed .item.content,
.catalog-product-view .product.info.detailed table,
.catalog-product-view .product.info.detailed th,
.catalog-product-view .product.info.detailed td,
.catalog-product-view .column.main .additional-attributes-wrapper,
.catalog-product-view .column.main .additional-attributes {
    border-radius: var(--cholon-pdp-radius-lg) !important;
}

/* Clip visual containers where background/border exists */
.catalog-product-view .column.main [class*="card"],
.catalog-product-view .column.main [class*="box"],
.catalog-product-view .column.main [class*="panel"],
.catalog-product-view .column.main [class*="wrapper"],
.catalog-product-view .product-info-main [class*="card"],
.catalog-product-view .product-info-main [class*="box"],
.catalog-product-view .product-info-main [class*="panel"],
.catalog-product-view .product-info-main [class*="wrapper"] {
    overflow: hidden;
}

/* Preserve native shapes */
.catalog-product-view input[type="checkbox"],
.catalog-product-view input[type="radio"],
.catalog-product-view .fotorama__fullscreen-icon,
.catalog-product-view .fotorama__arr,
.catalog-product-view .fotorama__nav__shaft,
.catalog-product-view .fotorama__stage__shaft {
    border-radius: initial !important;
}

/* =========================================================
   Chợ Lớn PDP Polish V1.0.4
   Preserve tier price readability after text polish
   ========================================================= */

.catalog-product-view .product-info-main .prices-tier,
.catalog-product-view .product-info-main .tier-prices,
.catalog-product-view .product-info-main .product-pricing {
    font-size: 14px;
    line-height: 1.65;
    color: #334155;
    margin-top: 12px;
    margin-bottom: 18px;
}

.catalog-product-view .product-info-main .prices-tier li,
.catalog-product-view .product-info-main .tier-prices li,
.catalog-product-view .product-info-main .product-pricing li,
.catalog-product-view .product-info-main .prices-tier .item,
.catalog-product-view .product-info-main .tier-prices .item,
.catalog-product-view .product-info-main .product-pricing .item {
    margin-bottom: 3px;
}

.catalog-product-view .product-info-main .prices-tier .price,
.catalog-product-view .product-info-main .tier-prices .price,
.catalog-product-view .product-info-main .product-pricing .price,
.catalog-product-view .product-info-main .prices-tier strong,
.catalog-product-view .product-info-main .tier-prices strong,
.catalog-product-view .product-info-main .product-pricing strong {
    color: #dc2626;
    font-weight: 800;
}

.catalog-product-view .product-info-main .prices-tier .benefit,
.catalog-product-view .product-info-main .tier-prices .benefit,
.catalog-product-view .product-info-main .product-pricing .benefit,
.catalog-product-view .product-info-main .prices-tier .percent,
.catalog-product-view .product-info-main .tier-prices .percent,
.catalog-product-view .product-info-main .product-pricing .percent {
    color: #dc2626;
    font-weight: 700;
}
