/**
 * ISC Product Configurator — Styles v2.1
 * Updated color palette per brand guidelines
 * EF1=#00669B  EF2=#811C14  EM=#73431D  CTA=#FFDD00  Text=#474747  Sale=#C10000
 */

/* ── Reset & Base ── */
.isc-conf { max-width: 780px; margin: 0 auto; padding: 20px 0; font-family: 'Inter', -apple-system, sans-serif; color: #474747; line-height: 1.6; }
.isc-conf *, .isc-conf *::before, .isc-conf *::after { box-sizing: border-box; }

/* ── Header ── */
.isc-conf-header { text-align: center; margin-bottom: 24px; }
.isc-conf-title { font-family: 'Lora', 'Georgia', serif; font-size: 28px; font-weight: 600; color: #73431D; margin: 0 0 6px; }
.isc-conf-subtitle { font-size: 15px; color: #6B6560; margin: 0; }

/* ── Year Tabs (single etapa) ── */
.isc-conf-tabs { display: flex; gap: 6px; justify-content: center; flex-wrap: wrap; margin-bottom: 28px; align-items: center; }
.isc-conf-tab { padding: 10px 22px; border: 1px solid #D5CFC7; border-radius: 6px; font-size: 14px; font-family: inherit; font-weight: 500; cursor: pointer; transition: all 0.2s; background: #FDFCFA; color: #474747; }
.isc-conf-tab:hover { background: #F0EBE3; border-color: #B5AFA6; }
.isc-conf-tab.active { background: #73431D; color: #fff; border-color: #73431D; }

/* ── Etapa-colored tabs (etapa="all" — grouped rows) ── */
.isc-conf-tabs-grouped { flex-direction: column; align-items: stretch; gap: 8px; }
.isc-conf-tab-row { display: flex; gap: 6px; align-items: center; justify-content: center; flex-wrap: wrap; }
.isc-conf-tab-group-label { font-size: 11px; font-weight: 600; min-width: 160px; text-align: right; padding-right: 10px; flex-shrink: 0; user-select: none; }

/* EI — Verde */
.isc-conf-tab-ei-label { color: #2D6A4F; }
.isc-conf-tab-ei { border-color: #2D6A4F; color: #2D6A4F; }
.isc-conf-tab-ei:hover { background: rgba(45, 106, 79, 0.06); border-color: #2D6A4F; }
.isc-conf-tab-ei.active { background: #2D6A4F; color: #fff; border-color: #2D6A4F; }

/* EF1 — Azul */
.isc-conf-tab-ef1-label { color: #00669B; }
.isc-conf-tab-ef1 { border-color: #00669B; color: #00669B; }
.isc-conf-tab-ef1:hover { background: rgba(0, 102, 155, 0.06); border-color: #00669B; }
.isc-conf-tab-ef1.active { background: #00669B; color: #fff; border-color: #00669B; }

/* EF2 — Vinho */
.isc-conf-tab-ef2-label { color: #811C14; }
.isc-conf-tab-ef2 { border-color: #811C14; color: #811C14; }
.isc-conf-tab-ef2:hover { background: rgba(129, 28, 20, 0.06); border-color: #811C14; }
.isc-conf-tab-ef2.active { background: #811C14; color: #fff; border-color: #811C14; }

/* EM — Marrom */
.isc-conf-tab-em-label { color: #73431D; }
.isc-conf-tab-em { border-color: #73431D; color: #73431D; }
.isc-conf-tab-em:hover { background: rgba(115, 67, 29, 0.06); border-color: #73431D; }
.isc-conf-tab-em.active { background: #73431D; color: #fff; border-color: #73431D; }

/* ── Per-etapa color theming for single-etapa shortcodes ── */
/* EI — Verde */
.isc-conf[data-etapa="ei"] .isc-conf-title { color: #2D6A4F; }
.isc-conf[data-etapa="ei"] .isc-conf-tab.active { background: #2D6A4F; border-color: #2D6A4F; }
.isc-conf[data-etapa="ei"] .isc-conf-disc-dot { background: #2D6A4F; }
.isc-conf[data-etapa="ei"] .isc-conf-section-label { color: #2D6A4F; }
.isc-conf[data-etapa="ei"] .isc-conf-extra-card.selected { border-color: #2D6A4F; }
.isc-conf[data-etapa="ei"] .isc-conf-extra-card.selected .isc-conf-extra-check { background: #2D6A4F; border-color: #2D6A4F; }
.isc-conf[data-etapa="ei"] .isc-conf-extra-coverage { color: #2D6A4F; }
.isc-conf[data-etapa="ei"] .isc-conf-plat-card.selected { border-color: #2D6A4F; }
.isc-conf[data-etapa="ei"] .isc-conf-plat-badge.complete { background: rgba(45, 106, 79, 0.1); color: #2D6A4F; }
.isc-conf[data-etapa="ei"] .isc-conf-plat-price-hero { color: #2D6A4F; }
.isc-conf[data-etapa="ei"] .isc-conf-total-value { color: #2D6A4F; }
.isc-conf[data-etapa="ei"] .isc-conf-base-price { color: #2D6A4F; }
.isc-conf[data-etapa="ei"] .isc-conf-base-meta { background: rgba(45, 106, 79, 0.04); }
.isc-conf[data-etapa="ei"] .isc-conf-cta-cart { color: #2D6A4F; border-color: #2D6A4F; }
.isc-conf[data-etapa="ei"] .isc-conf-child-count { color: #2D6A4F; }
.isc-conf[data-etapa="ei"] .isc-conf-child-btn:hover { border-color: #2D6A4F; }

/* EF1 — Azul */
.isc-conf[data-etapa="ef1"] .isc-conf-title { color: #00669B; }
.isc-conf[data-etapa="ef1"] .isc-conf-tab.active { background: #00669B; border-color: #00669B; }
.isc-conf[data-etapa="ef1"] .isc-conf-disc-dot { background: #00669B; }
.isc-conf[data-etapa="ef1"] .isc-conf-section-label { color: #00669B; }
.isc-conf[data-etapa="ef1"] .isc-conf-extra-card.selected { border-color: #00669B; }
.isc-conf[data-etapa="ef1"] .isc-conf-extra-card.selected .isc-conf-extra-check { background: #00669B; border-color: #00669B; }
.isc-conf[data-etapa="ef1"] .isc-conf-extra-coverage { color: #00669B; }
.isc-conf[data-etapa="ef1"] .isc-conf-plat-card.selected { border-color: #00669B; }
.isc-conf[data-etapa="ef1"] .isc-conf-plat-badge.complete { background: rgba(0, 102, 155, 0.1); color: #00669B; }
.isc-conf[data-etapa="ef1"] .isc-conf-plat-price-hero { color: #00669B; }
.isc-conf[data-etapa="ef1"] .isc-conf-total-value { color: #00669B; }
.isc-conf[data-etapa="ef1"] .isc-conf-base-price { color: #00669B; }
.isc-conf[data-etapa="ef1"] .isc-conf-base-meta { background: rgba(0, 102, 155, 0.04); }
.isc-conf[data-etapa="ef1"] .isc-conf-cta-cart { color: #00669B; border-color: #00669B; }
.isc-conf[data-etapa="ef1"] .isc-conf-child-count { color: #00669B; }
.isc-conf[data-etapa="ef1"] .isc-conf-child-btn:hover { border-color: #00669B; }

/* EF2 — Vinho */
.isc-conf[data-etapa="ef2"] .isc-conf-title { color: #811C14; }
.isc-conf[data-etapa="ef2"] .isc-conf-tab.active { background: #811C14; border-color: #811C14; }
.isc-conf[data-etapa="ef2"] .isc-conf-disc-dot { background: #811C14; }
.isc-conf[data-etapa="ef2"] .isc-conf-section-label { color: #811C14; }
.isc-conf[data-etapa="ef2"] .isc-conf-extra-card.selected { border-color: #811C14; }
.isc-conf[data-etapa="ef2"] .isc-conf-extra-card.selected .isc-conf-extra-check { background: #811C14; border-color: #811C14; }
.isc-conf[data-etapa="ef2"] .isc-conf-extra-coverage { color: #811C14; }
.isc-conf[data-etapa="ef2"] .isc-conf-plat-card.selected { border-color: #811C14; }
.isc-conf[data-etapa="ef2"] .isc-conf-plat-badge.complete { background: rgba(129, 28, 20, 0.1); color: #811C14; }
.isc-conf[data-etapa="ef2"] .isc-conf-plat-price-hero { color: #811C14; }
.isc-conf[data-etapa="ef2"] .isc-conf-total-value { color: #811C14; }
.isc-conf[data-etapa="ef2"] .isc-conf-base-price { color: #811C14; }
.isc-conf[data-etapa="ef2"] .isc-conf-base-meta { background: rgba(129, 28, 20, 0.04); }
.isc-conf[data-etapa="ef2"] .isc-conf-cta-cart { color: #811C14; border-color: #811C14; }
.isc-conf[data-etapa="ef2"] .isc-conf-child-count { color: #811C14; }
.isc-conf[data-etapa="ef2"] .isc-conf-child-btn:hover { border-color: #811C14; }

/* EM stays default (marrom #73431D) — no overrides needed */

/* ── Body ── */
.isc-conf-body { background: #FDFCFA; border: 1px solid #E5DFD7; border-radius: 12px; padding: 28px 24px; }

/* ── Sections ── */
.isc-conf-section { margin-bottom: 24px; }
.isc-conf-section:last-child { margin-bottom: 0; }
.isc-conf-section-label { font-size: 12px; font-weight: 600; color: #73431D; text-transform: uppercase; letter-spacing: 0.6px; margin-bottom: 12px; padding-bottom: 8px; border-bottom: 1px solid #E5DFD7; }

/* ── Base Grid ── */
.isc-conf-base-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; }
.isc-conf-disc-item { display: flex; align-items: center; gap: 8px; padding: 7px 12px; border-radius: 6px; font-size: 13px; color: #474747; background: #F5F2ED; }
.isc-conf-disc-dot { width: 8px; height: 8px; border-radius: 50%; background: #73431D; flex-shrink: 0; }
.isc-conf-base-info { font-size: 12px; color: #8B8278; text-align: center; margin-top: 10px; font-style: italic; }

/* ── Extras Grid ── */
.isc-conf-extras-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.isc-conf-extra-card { border: 1px solid #D5CFC7; border-radius: 10px; padding: 14px; cursor: pointer; transition: all 0.2s; position: relative; background: #FDFCFA; user-select: none; }
.isc-conf-extra-card:hover { border-color: #B5AFA6; }
.isc-conf-extra-card.selected { border-color: #73431D; background: rgba(115, 67, 29, 0.03); }
.isc-conf-extra-name { font-size: 15px; font-weight: 600; color: #474747; margin-bottom: 2px; }
.isc-conf-extra-coverage { font-size: 11px; color: #73431D; font-weight: 500; margin-bottom: 3px; font-style: italic; }
.isc-conf-extra-price { font-size: 13px; color: #8B8278; }
.isc-conf-extra-price.isc-conf-not-configured { color: #C10000; font-style: italic; }
.isc-conf-extra-check { position: absolute; top: 12px; right: 12px; width: 22px; height: 22px; border-radius: 50%; border: 1.5px solid #C5BFB6; display: flex; align-items: center; justify-content: center; font-size: 12px; color: transparent; transition: all 0.2s; background: #FDFCFA; }
.isc-conf-extra-card.selected .isc-conf-extra-check { background: #73431D; border-color: #73431D; color: #fff; }
.isc-conf-extras-info { font-size: 12px; color: #8B8278; text-align: center; margin-top: 10px; font-style: italic; }

/* ── Platform Grid ── */
.isc-conf-platform-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-bottom: 10px; }
.isc-conf-plat-card { border: 1px solid #D5CFC7; border-radius: 10px; padding: 16px; cursor: pointer; transition: all 0.2s; background: #FDFCFA; user-select: none; }
.isc-conf-plat-card:hover { border-color: #B5AFA6; }
.isc-conf-plat-card.selected { border-color: #73431D; border-width: 2px; padding: 15px; }
.isc-conf-plat-badge { font-size: 11px; padding: 3px 10px; border-radius: 12px; display: inline-block; margin-bottom: 8px; font-weight: 600; }
.isc-conf-plat-badge.basic { background: rgba(71, 71, 71, 0.08); color: #5A6577; }
.isc-conf-plat-badge.complete { background: rgba(115, 67, 29, 0.1); color: #73431D; }
.isc-conf-plat-name { font-size: 16px; font-weight: 600; color: #474747; margin-bottom: 2px; }
.isc-conf-plat-desc { font-size: 13px; color: #8B8278; margin-bottom: 8px; }

/* ── Platform Price — R$/dia HERO ── */
.isc-conf-plat-price-hero {
    font-size: 20px;
    font-weight: 700;
    color: #73431D;
    margin-bottom: 2px;
}
.isc-conf-plat-price-sub {
    font-size: 12px;
    color: #8B8278;
    margin-bottom: 8px;
}

/* ── Platform Upsell message ── */
.isc-conf-plat-upsell {
    font-size: 12px;
    font-weight: 600;
    color: #00669B;
    background: rgba(0, 102, 155, 0.06);
    padding: 4px 10px;
    border-radius: 6px;
    margin-bottom: 8px;
    display: inline-block;
}

.isc-conf-plat-features { font-size: 12px; color: #6B6560; line-height: 1.7; }
.isc-conf-plat-compare { font-size: 11px; color: #00669B; background: rgba(0, 102, 155, 0.06); padding: 6px 10px; border-radius: 6px; margin-top: 10px; line-height: 1.4; }
.isc-conf-plat-compare strong { color: #00669B; }
.isc-conf-plat-compare-old { text-decoration: line-through; color: #C10000; }
.isc-conf-no-plat { text-align: center; padding: 10px; font-size: 13px; color: #8B8278; cursor: pointer; border: 1px dashed #D5CFC7; border-radius: 8px; transition: all 0.2s; user-select: none; }
.isc-conf-no-plat:hover { background: #F5F2ED; }
.isc-conf-no-plat.selected { border-color: #73431D; background: #F5F2ED; border-style: solid; }

/* ── Summary ── */
.isc-conf-summary { background: #F5F2ED; border-radius: 10px; padding: 18px 20px; margin-top: 24px; }
.isc-conf-summary-row { display: flex; justify-content: space-between; font-size: 13px; padding: 4px 0; color: #6B6560; }

/* ── Summary Total — 12x FIRST ── */
.isc-conf-summary-total {
    border-top: 1px solid #D5CFC7;
    padding-top: 14px;
    margin-top: 10px;
    text-align: center;
}

.isc-conf-total-installment {
    display: flex;
    align-items: baseline;
    justify-content: center;
    gap: 6px;
    margin-bottom: 4px;
}

.isc-conf-total-value {
    font-size: 28px;
    font-weight: 700;
    color: #73431D;
    font-family: 'Lora', 'Georgia', serif;
}

.isc-conf-total-label {
    font-size: 14px;
    color: #6B6560;
}

.isc-conf-total-label small {
    font-size: 12px;
    color: #8B8278;
}

.isc-conf-total-full {
    font-size: 14px;
    color: #6B6560;
    margin-bottom: 4px;
}

.isc-conf-total-struck {
    text-decoration: line-through;
    color: #B5AFA6;
    margin-right: 4px;
}

.isc-conf-total-pix {
    font-size: 13px;
    color: #00669B;
    font-weight: 500;
}

/* ── CTA — Amarelo com texto preto ── */
.isc-conf-cta { width: 100%; padding: 16px; background: #FFDD00; color: #000; border: none; border-radius: 10px; font-size: 16px; font-weight: 600; font-family: inherit; cursor: pointer; margin-top: 16px; transition: all 0.2s; letter-spacing: 0.3px; }
.isc-conf-cta:hover { background: #E8C900; }
.isc-conf-cta:active { transform: scale(0.99); }
.isc-conf-cta:disabled { background: #A09B93; color: #fff; cursor: not-allowed; }
.isc-conf-cta.loading { opacity: 0.7; pointer-events: none; }

/* ── Messages ── */
.isc-conf-message { text-align: center; padding: 12px; border-radius: 8px; font-size: 14px; margin-top: 12px; display: none; }
.isc-conf-message.success { display: block; background: rgba(0, 102, 155, 0.08); color: #00669B; }
.isc-conf-message.error { display: block; background: rgba(193, 0, 0, 0.08); color: #C10000; }

/* ── WooCommerce Site-wide Price Block ── */
.isc-price-block { line-height: 1.4; }
.isc-price-addon { margin-top: 4px; }
.isc-price-primary { display: flex; align-items: baseline; gap: 4px; }
.isc-price-installment-value { font-size: 20px; font-weight: 700; color: #73431D; }
.isc-price-installment-label { font-size: 13px; color: #6B6560; }
.isc-price-installment-label small { font-size: 11px; color: #8B8278; }
.isc-price-secondary { font-size: 13px; color: #6B6560; }
.isc-price-regular-struck { text-decoration: line-through; color: #B5AFA6; }
.isc-price-sale { color: #C10000; font-weight: 600; }
.isc-price-pix { font-size: 12px; color: #00669B; margin-top: 2px; }

/* ── Frete Grátis Banner ── */
.isc-conf-frete-banner {
    background: linear-gradient(135deg, #00669B, #0080C0);
    color: #fff;
    text-align: center;
    padding: 10px 16px;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 600;
    margin-bottom: 20px;
    letter-spacing: 0.3px;
}

/* ── Volume tag inline ── */
.isc-conf-vol-tag { font-size: 11px; font-weight: 400; color: #8B8278; font-style: italic; }

/* ── Base meta (volumes + price) ── */
.isc-conf-base-meta {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 12px;
    padding: 10px 14px;
    background: rgba(115, 67, 29, 0.04);
    border-radius: 8px;
    border: 1px dashed #D5CFC7;
}
.isc-conf-base-volumes { font-size: 13px; color: #8B8278; font-style: italic; }
.isc-conf-base-price { font-size: 13px; color: #73431D; }
.isc-conf-base-price strong { font-size: 15px; }

/* ── Children discount section ── */
.isc-conf-child-section { background: rgba(0, 102, 155, 0.03); border-radius: 10px; padding: 16px; border: 1px solid rgba(0, 102, 155, 0.12); }
.isc-conf-child-row { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.isc-conf-child-label { font-size: 14px; color: #474747; }
.isc-conf-child-btn { width: 32px; height: 32px; border-radius: 50%; border: 1px solid #D5CFC7; background: #FDFCFA; font-size: 18px; cursor: pointer; display: flex; align-items: center; justify-content: center; transition: all 0.2s; color: #474747; font-family: inherit; }
.isc-conf-child-btn:hover { background: #F0EBE3; border-color: #73431D; }
.isc-conf-child-count { font-size: 20px; font-weight: 700; color: #73431D; min-width: 24px; text-align: center; }
.isc-conf-child-discount { font-size: 12px; font-weight: 600; color: #fff; background: #C10000; padding: 3px 10px; border-radius: 12px; }
.isc-conf-child-info { font-size: 12px; color: #8B8278; margin-top: 8px; font-style: italic; }

/* ── Discount row in summary ── */
.isc-conf-discount-row { color: #C10000; font-weight: 600; }

/* ── Frete row in summary ── */
.isc-conf-frete-row { border-top: 1px dashed #E5DFD7; padding-top: 6px; margin-top: 4px; }
.isc-conf-frete-free { color: #00669B; font-weight: 700; }

/* ── Children total label ── */
.isc-conf-total-children { font-size: 13px; color: #8B8278; margin-bottom: 6px; }

/* ── Two CTA buttons ── */
.isc-conf-cta-row { display: flex; gap: 10px; margin-top: 16px; }
.isc-conf-cta-cart {
    flex: 1;
    padding: 14px;
    background: #fff;
    color: #73431D;
    border: 2px solid #73431D;
    border-radius: 10px;
    font-size: 15px;
    font-weight: 600;
    font-family: inherit;
    cursor: pointer;
    transition: all 0.2s;
}
.isc-conf-cta-cart:hover { background: rgba(115, 67, 29, 0.05); }
.isc-conf-cta-buy {
    flex: 1;
    padding: 14px;
    background: #FFDD00;
    color: #000;
    border: 2px solid #FFDD00;
    border-radius: 10px;
    font-size: 15px;
    font-weight: 600;
    font-family: inherit;
    cursor: pointer;
    transition: all 0.2s;
}
.isc-conf-cta-buy:hover { background: #E8C900; border-color: #E8C900; }
.isc-conf-cta-cart.loading, .isc-conf-cta-buy.loading { opacity: 0.7; pointer-events: none; }
.isc-conf-cta-cart:disabled, .isc-conf-cta-buy:disabled { opacity: 0.5; cursor: not-allowed; }

/* ── Material Details Section ── */
.isc-detail-wrapper { margin-top: 32px; }
.isc-detail-teaser {
    background: rgba(115, 67, 29, 0.04);
    border: 1px dashed #73431D;
    border-radius: 10px;
    padding: 16px 20px;
    text-align: center;
    font-size: 14px;
    color: #474747;
    margin-bottom: 24px;
}
.isc-detail-teaser-link { color: #73431D; font-weight: 600; margin-left: 8px; text-decoration: none; }
.isc-detail-teaser-link:hover { text-decoration: underline; }

.isc-detail-content { max-width: 780px; margin: 0 auto; }

.isc-detail-hero {
    background: #FDFCFA;
    padding: 20px 24px;
    border-radius: 10px;
    margin-bottom: 24px;
}
.isc-detail-hero-color { font-size: 14px; font-weight: 600; margin-bottom: 10px; display: flex; align-items: center; gap: 8px; }
.isc-detail-color-dot { width: 16px; height: 16px; border-radius: 50%; display: inline-block; flex-shrink: 0; }
.isc-detail-intro { font-size: 14px; color: #6B6560; line-height: 1.7; margin: 0; }

.isc-detail-stats {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 12px;
    margin-bottom: 28px;
}
.isc-detail-stat {
    text-align: center;
    padding: 16px 10px;
    background: #F5F2ED;
    border-radius: 10px;
}
.isc-detail-stat-num { font-family: 'Lora', 'Georgia', serif; font-size: 26px; font-weight: 700; color: #73431D; }
.isc-detail-stat-label { font-size: 11px; color: #8B8278; margin-top: 4px; }

.isc-detail-h3 { font-family: 'Lora', 'Georgia', serif; font-size: 18px; color: #73431D; margin: 0 0 12px; }

.isc-detail-disc-table { margin-bottom: 24px; }
.isc-detail-disc-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 14px;
    border-bottom: 1px solid #E5DFD7;
    font-size: 13px;
}
.isc-detail-disc-row:last-child { border-bottom: none; }
.isc-detail-disc-name { color: #474747; font-weight: 500; }
.isc-detail-disc-name small { color: #8B8278; font-weight: 400; }
.isc-detail-disc-info { color: #8B8278; font-size: 12px; white-space: nowrap; }
.isc-detail-extras-table .isc-detail-disc-row { background: rgba(0, 102, 155, 0.02); }

.isc-detail-highlights {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-bottom: 28px;
}
.isc-detail-highlight {
    font-size: 14px;
    color: #474747;
    padding: 10px 16px;
    background: #F5F2ED;
    border-radius: 8px;
}

.isc-detail-actions {
    display: flex;
    gap: 12px;
    margin-top: 24px;
    margin-bottom: 16px;
}
.isc-detail-btn-whats {
    flex: 1;
    display: block;
    text-align: center;
    padding: 14px;
    background: #25D366;
    color: #fff;
    border-radius: 10px;
    font-size: 15px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.2s;
}
.isc-detail-btn-whats:hover { background: #1da851; color: #fff; }
.isc-detail-btn-back {
    flex: 1;
    display: block;
    text-align: center;
    padding: 14px;
    background: #FFDD00;
    color: #000;
    border-radius: 10px;
    font-size: 15px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.2s;
}
.isc-detail-btn-back:hover { background: #E8C900; color: #000; }

@media (max-width: 600px) {
    .isc-detail-stats { grid-template-columns: repeat(2, 1fr); }
    .isc-detail-actions { flex-direction: column; }
    .isc-detail-disc-row { flex-direction: column; align-items: flex-start; gap: 2px; }
}

/* ── Por Matéria ── */
.isc-pm-disc-grid { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 10px; }
.isc-pm-disc-card.isc-pm-not-configured { opacity: 0.5; cursor: not-allowed; }
.isc-pm-disc-full { font-size: 11px; color: #8B8278; margin-top: 1px; }
.isc-pm-actions { display: flex; align-items: center; gap: 12px; margin-bottom: 12px; flex-wrap: wrap; }
.isc-pm-toggle-btn { padding: 6px 14px; font-size: 12px; font-family: inherit; font-weight: 500; border: 1px solid #D5CFC7; border-radius: 6px; background: #FDFCFA; color: #474747; cursor: pointer; transition: all 0.2s; }
.isc-pm-toggle-btn:hover { background: #F0EBE3; border-color: #B5AFA6; }
.isc-pm-warning { font-size: 11px; color: #C10000; font-style: italic; }
.isc-pm-count { font-size: 13px; color: #6B6560; margin-bottom: 8px; }

/* ── Material Details Section ── */
.isc-detail-wrapper { margin-top: 32px; }
.isc-detail-teaser {
    background: rgba(115, 67, 29, 0.05);
    border: 1px solid #D5CFC7;
    border-radius: 10px;
    padding: 16px 20px;
    text-align: center;
    font-size: 14px;
    color: #474747;
    margin-bottom: 24px;
}
.isc-detail-teaser-link { color: #00669B; font-weight: 600; margin-left: 8px; text-decoration: none; }
.isc-detail-teaser-link:hover { text-decoration: underline; }

.isc-detail-content { max-width: 780px; margin: 0 auto; }

.isc-detail-hero {
    padding: 20px 24px;
    background: #FDFCFA;
    border-radius: 10px;
    margin-bottom: 24px;
}
.isc-detail-hero-color { font-size: 13px; color: #8B8278; margin-bottom: 8px; display: flex; align-items: center; gap: 8px; }
.isc-detail-color-dot { width: 14px; height: 14px; border-radius: 50%; display: inline-block; flex-shrink: 0; }
.isc-detail-intro { font-size: 15px; color: #474747; line-height: 1.7; margin: 0; }

.isc-detail-stats {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 12px;
    margin-bottom: 28px;
}
.isc-detail-stat {
    text-align: center;
    padding: 16px 10px;
    background: #F5F2ED;
    border-radius: 10px;
}
.isc-detail-stat-num { font-size: 24px; font-weight: 700; color: #73431D; font-family: 'Lora', serif; }
.isc-detail-stat-label { font-size: 11px; color: #8B8278; margin-top: 4px; }

.isc-detail-h3 { font-family: 'Lora', serif; font-size: 18px; color: #73431D; margin: 0 0 12px; }

.isc-detail-disc-table { margin-bottom: 24px; }
.isc-detail-disc-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 8px 14px;
    border-bottom: 1px solid #E5DFD7;
    font-size: 13px;
}
.isc-detail-disc-row:last-child { border-bottom: none; }
.isc-detail-disc-name { color: #474747; font-weight: 500; }
.isc-detail-disc-name small { color: #8B8278; font-weight: 400; }
.isc-detail-disc-info { color: #8B8278; font-size: 12px; }
.isc-detail-extras-table { background: rgba(0, 102, 155, 0.03); border-radius: 8px; }

.isc-detail-highlights {
    margin: 24px 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.isc-detail-highlight {
    font-size: 14px;
    color: #474747;
    padding: 10px 16px;
    background: #F5F2ED;
    border-radius: 8px;
}

.isc-detail-actions {
    display: flex;
    gap: 12px;
    margin-top: 24px;
    margin-bottom: 20px;
}
.isc-detail-btn-whats {
    flex: 1;
    display: block;
    text-align: center;
    padding: 14px;
    background: #25D366;
    color: #fff;
    border-radius: 10px;
    font-size: 15px;
    font-weight: 600;
    text-decoration: none;
    transition: background 0.2s;
}
.isc-detail-btn-whats:hover { background: #1DA851; color: #fff; }
.isc-detail-btn-back {
    flex: 1;
    display: block;
    text-align: center;
    padding: 14px;
    background: #73431D;
    color: #fff;
    border-radius: 10px;
    font-size: 15px;
    font-weight: 600;
    text-decoration: none;
    transition: background 0.2s;
}
.isc-detail-btn-back:hover { background: #5C3517; color: #fff; }

/* ── Responsive ── */
@media (max-width: 600px) {
    .isc-conf-body { padding: 20px 16px; }
    .isc-conf-base-grid, .isc-conf-extras-grid, .isc-conf-platform-grid, .isc-pm-disc-grid { grid-template-columns: 1fr; }
    .isc-conf-title { font-size: 24px; }
    .isc-conf-tabs { gap: 4px; }
    .isc-conf-tab { padding: 8px 14px; font-size: 13px; }
    .isc-conf-total-value { font-size: 24px; }
    .isc-conf-tab-group-label { min-width: auto; text-align: center; width: 100%; padding-right: 0; margin-bottom: 2px; }
    .isc-conf-tab-row { justify-content: center; }
    .isc-conf-base-meta { flex-direction: column; gap: 6px; text-align: center; }
    .isc-conf-cta-row { flex-direction: column; }
    .isc-detail-stats { grid-template-columns: repeat(2, 1fr); }
    .isc-detail-actions { flex-direction: column; }
}

@media (max-width: 768px) {
    .isc-pm-disc-grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 400px) {
    .isc-conf-tab { padding: 7px 10px; font-size: 12px; }
}

/* ==========================================================
   v2.2 — PLATAFORMA: selo Gravadas/Ao Vivo, preco Total+12x,
   card recomendado e plano unico centralizado
   ========================================================== */

/* card precisa ser relative para o selo "Mais escolhido" */
.isc-conf-plat-card { position: relative; }

/* Plano unico -> centralizado (nao fica sozinho na esquerda) */
.isc-conf-platform-grid--single {
    grid-template-columns: minmax(0, 420px);
    justify-content: center;
}

/* Selo grande GRAVADAS x AO VIVO (o destaque principal) */
.isc-conf-plat-tag {
    display: inline-block;
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 0.3px;
    padding: 7px 14px;
    border-radius: 8px;
    margin-bottom: 8px;
    line-height: 1;
}
.isc-conf-plat-tag.tag-gravadas {
    background: #EAF1F5;
    color: #2C5B74;
    border: 1px solid #C9DCE6;
}
.isc-conf-plat-tag.tag-live {
    background: #FBEBEA;
    color: #B3261E;
    border: 1px solid #F2C6C2;
}

/* Nome do plano (Basico/Completo) — secundario, menor */
.isc-conf-plat-planname {
    font-size: 13px;
    font-weight: 600;
    color: #8B8278;
    margin-bottom: 10px;
}

/* Preco: total grande + parcelamento pequeno */
.isc-conf-plat-price { margin-bottom: 10px; }
.isc-conf-plat-total {
    display: block;
    font-family: 'Lora', 'Georgia', serif;
    font-size: 26px;
    font-weight: 700;
    color: #73431D;
    line-height: 1.1;
}
.isc-conf-plat-inst {
    display: block;
    font-size: 12px;
    color: #8B8278;
    margin-top: 2px;
}

/* Lista de diferenciais enxuta */
.isc-conf-plat-feats { list-style: none; margin: 0 0 2px; padding: 0; }
.isc-conf-plat-feats li {
    position: relative;
    padding-left: 18px;
    font-size: 12.5px;
    color: #6B6560;
    line-height: 1.7;
}
.isc-conf-plat-feats li::before {
    content: '✓';
    position: absolute;
    left: 0;
    color: #00669B;
    font-weight: 700;
}

/* Card recomendado (Completo) + selo "Mais escolhido" */
.isc-conf-plat-card--rec { border-color: #E7D6A8; background: #FFFDF6; }
.isc-conf-plat-star {
    position: absolute;
    top: -10px;
    right: 12px;
    background: #73431D;
    color: #fff;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.2px;
    padding: 3px 10px;
    border-radius: 10px;
    white-space: nowrap;
}

/* ==========================================================
   v2.3 — marca de selecionado na plataforma, barra fixa de compra
   ========================================================== */

/* Marca ✓ de selecao no card de plataforma (igual extras) */
.isc-conf-plat-check {
    position: absolute;
    top: 12px;
    right: 12px;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    border: 1.5px solid #C5BFB6;
    background: #FDFCFA;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 13px;
    color: transparent;
    transition: all 0.2s;
}
.isc-conf-plat-card.selected .isc-conf-plat-check {
    background: #73431D;
    border-color: #73431D;
    color: #fff;
}
.isc-conf[data-etapa="ei"]  .isc-conf-plat-card.selected .isc-conf-plat-check { background:#2D6A4F; border-color:#2D6A4F; }
.isc-conf[data-etapa="ef1"] .isc-conf-plat-card.selected .isc-conf-plat-check { background:#00669B; border-color:#00669B; }
.isc-conf[data-etapa="ef2"] .isc-conf-plat-card.selected .isc-conf-plat-check { background:#811C14; border-color:#811C14; }

/* estrela "Mais escolhido" vai pra ESQUERDA (a marca fica na direita) */
.isc-conf-plat-star { left: 12px; right: auto; }

/* "Nao quero plataforma" um pouco mais alto e com ✓ quando selecionado */
.isc-conf-no-plat { padding: 15px; }
.isc-conf-no-plat.selected::before { content: '✓ '; font-weight: 700; }

/* ── Barra fixa de compra (segue a rolagem) ── */
.isc-conf-floatbar {
    position: fixed;
    left: 0; right: 0; bottom: 0;
    z-index: 9999;
    background: #fff;
    border-top: 1px solid #E5DFD7;
    box-shadow: 0 -6px 20px rgba(0,0,0,0.10);
    padding: 10px 16px;
    padding-bottom: calc(10px + env(safe-area-inset-bottom, 0px));
    animation: iscFloatUp 0.25s ease-out;
}
@keyframes iscFloatUp { from { transform: translateY(100%); } to { transform: translateY(0); } }
.isc-conf-floatbar-inner {
    max-width: 780px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    gap: 12px;
}
.isc-conf-floatbar-price { display: flex; flex-direction: column; line-height: 1.15; flex-shrink: 0; }
.isc-conf-floatbar-total { font-family: 'Lora', 'Georgia', serif; font-size: 20px; font-weight: 700; color: #73431D; }
.isc-conf-floatbar-inst { font-size: 11px; color: #8B8278; }
.isc-conf-floatbar-btns { display: flex; gap: 8px; margin-left: auto; }
.isc-conf-floatbar .isc-conf-cta-cart,
.isc-conf-floatbar .isc-conf-cta-buy {
    margin-top: 0;
    padding: 12px 18px;
    font-size: 14px;
    flex: 0 0 auto;
}

@media (max-width: 600px) {
    .isc-conf-floatbar { padding-left: 12px; padding-right: 12px; }
    .isc-conf-floatbar-inner { gap: 8px; }
    .isc-conf-floatbar-total { font-size: 17px; }
    .isc-conf-floatbar-inst { font-size: 10px; }
    .isc-conf-floatbar .isc-conf-cta-cart { padding: 11px 12px; font-size: 13px; }
    .isc-conf-floatbar .isc-conf-cta-buy { padding: 11px 16px; font-size: 13px; }
}

/* ==========================================================
   v2.4 — matérias em chips, desconto de combo, barra maior
   ========================================================== */

/* Material base como CHIPS (encurta a lista, melhor no celular) */
.isc-conf-base-grid { display: flex; flex-wrap: wrap; gap: 6px; }
.isc-conf-base-grid .isc-conf-disc-item {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    width: auto;
    padding: 6px 12px;
    border-radius: 18px;
    background: #F0EBE3;
    font-size: 12.5px;
}
.isc-conf-base-grid .isc-conf-disc-dot { width: 6px; height: 6px; }

/* Desconto de combo no card de plataforma */
.isc-conf-plat-was {
    display: block;
    font-size: 12px;
    color: #8B8278;
    margin-bottom: 2px;
}
.isc-conf-plat-was s { color: #C10000; }
.isc-conf-plat-save {
    margin-top: 8px;
    font-size: 12px;
    font-weight: 600;
    color: #1B7A3D;
    background: rgba(27, 122, 61, 0.08);
    padding: 5px 10px;
    border-radius: 6px;
    display: inline-block;
}

/* "Não quero plataforma" com sub-linha (perde o desconto) */
.isc-conf-no-plat-main { display: block; font-weight: 500; }
.isc-conf-no-plat-sub { display: block; font-size: 11px; color: #A79F94; margin-top: 3px; font-style: italic; }

/* Barra fixa: valor maior + riscado do combo */
.isc-conf-floatbar-was {
    font-size: 11px;
    color: #B5AFA6;
    text-decoration: line-through;
}
.isc-conf-floatbar-total { font-size: 24px; }
@media (max-width: 600px) {
    .isc-conf-floatbar-total { font-size: 20px; }
    .isc-conf-floatbar-was { font-size: 10px; }
}

/* ==========================================================
   v2.5 — preço no topo (junto do frete)
   ========================================================== */
.isc-conf-tophead { display: flex; gap: 12px; align-items: stretch; margin-bottom: 20px; }
.isc-conf-tophead .isc-conf-frete-banner {
    margin-bottom: 0;
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
}
.isc-conf-tophero {
    flex: 1.2;
    background: linear-gradient(135deg, #FFFDF6, #F7F0DE);
    border: 1px solid #E7D6A8;
    border-radius: 8px;
    padding: 10px 16px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.isc-conf-tophero-label {
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #8B6914;
    margin-bottom: 2px;
}
.isc-conf-tophero-priceline { display: flex; align-items: baseline; gap: 8px; flex-wrap: wrap; }
.isc-conf-tophero-was { font-size: 13px; color: #B5AFA6; text-decoration: line-through; }
.isc-conf-tophero-total {
    font-family: 'Lora', 'Georgia', serif;
    font-size: 26px;
    font-weight: 700;
    color: #73431D;
    line-height: 1.1;
}
.isc-conf-tophero-inst { font-size: 12px; color: #8B8278; margin-top: 2px; }

@media (max-width: 600px) {
    .isc-conf-tophead { flex-direction: column; gap: 10px; }
    .isc-conf-tophero-total { font-size: 24px; }
}

/* ==========================================================
   v2.6 — EI híbrido/2027, banner final com valor cheio em destaque
   ========================================================== */

/* dois selos lado a lado (híbrido: ao vivo + gravadas) */
.isc-conf-plat-tags { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 8px; }
.isc-conf-plat-tags .isc-conf-plat-tag { margin-bottom: 0; font-size: 13px; padding: 6px 12px; }

/* nota no card (ex.: ao vivo em 2027) */
.isc-conf-plat-note {
    font-size: 12px;
    color: #8B6914;
    background: rgba(139, 105, 20, 0.07);
    border: 1px solid rgba(139, 105, 20, 0.18);
    padding: 5px 10px;
    border-radius: 6px;
    margin-bottom: 8px;
    line-height: 1.35;
}

/* Banner final: valor CHEIO em 1o destaque, parcelado como 2a grandeza */
.isc-conf-total-was { font-size: 14px; color: #6B6560; margin-bottom: 2px; }
.isc-conf-total-main {
    font-size: 38px !important;
    line-height: 1.05;
    margin-bottom: 2px;
}
.isc-conf-total-second {
    font-size: 17px;
    font-weight: 600;
    color: #5A5550;
    margin-top: 2px;
}
.isc-conf-total-second small { font-size: 12px; font-weight: 400; color: #8B8278; }

@media (max-width: 600px) {
    .isc-conf-total-main { font-size: 32px !important; }
    .isc-conf-total-second { font-size: 15px; }
}

/* ── Combo v3: linha de desconto no resumo + botão comprar separado (Academia) ── */
.isc-conf-combo-disc-row { color: #1B7A3D; font-weight: 700; }

.isc-conf-separado {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
    text-align: center;
    margin: 14px 0 4px;
    padding: 13px 18px;
    border: 1.5px dashed #C9BEB0;
    border-radius: 10px;
    background: #FBF8F3;
    text-decoration: none;
    transition: border-color .15s ease, background .15s ease;
}
.isc-conf-separado:hover { border-color: #73431D; background: #F6EFE6; }
.isc-conf-separado-main { font-size: 13px; color: #6b6257; line-height: 1.3; }
.isc-conf-separado-sub { font-size: 15px; font-weight: 700; color: #73431D; font-family: 'Lora','Georgia',serif; }
.isc-conf[data-etapa="ei"] .isc-conf-separado-sub { color: #2D6A4F; }
.isc-conf[data-etapa="ef1"] .isc-conf-separado-sub { color: #00669B; }
.isc-conf[data-etapa="ef2"] .isc-conf-separado-sub { color: #811C14; }
