/* ═══════════════════════════════════════════════════════════
   Engagement Rate Calculator — Page-Specific CSS
   Component styles come from shared CSS (buttons, forms, tabs, cards).
   This file handles ONLY layout and calculator-specific elements.
   ═══════════════════════════════════════════════════════════ */

/* ── Social Proof ── */
.erc-social-proof {
    text-align: center;
    color: var(--color-gray-500);
    font-size: var(--font-size-sm);
    margin-top: var(--space-3);
}
.erc-social-proof i {
    color: var(--color-primary);
    margin-right: var(--space-1);
}

/* ── Shared Inputs Section ── */
.erc-inputs {
    padding: var(--space-6);
    border-bottom: 1px solid var(--color-gray-200);
}
.erc-inputs__title {
    font-family: var(--font-display);
    font-size: var(--font-size-lg);
    font-weight: 700;
    color: var(--color-gray-900);
    margin: 0 0 var(--space-1) 0;
}
.erc-inputs__hint {
    font-size: var(--font-size-sm);
    color: var(--color-gray-500);
    margin-bottom: var(--space-5);
}
.erc-inputs__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--space-4);
}
.erc-inputs__row {
    margin-top: var(--space-4);
}
.erc-inputs__niche {
    max-width: 320px;
}
.erc-number-input {
    font-size: var(--font-size-base);
    font-weight: 600;
}

/* ── Tabs Override ── */
.erc-tabs {
    border-top: none;
    padding: 0 var(--space-4);
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
}
.erc-tabs::-webkit-scrollbar {
    display: none;
}

/* ── Panels ── */
.erc-panel {
    display: none;
    padding: var(--space-6);
}
.erc-panel--active {
    display: block;
}

/* ═══════════════════════════════════════════════════════
   TAB 1: ENGAGEMENT ANALYSIS
   ═══════════════════════════════════════════════════════ */

/* Hero Metric (primary big number) */
.erc-hero-metric {
    text-align: center;
    padding: var(--space-6) 0 var(--space-4);
}
.erc-hero-metric__label {
    display: block;
    font-size: var(--font-size-sm);
    color: var(--color-gray-500);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-weight: 600;
    margin-bottom: var(--space-2);
}
.erc-big-number {
    font-family: var(--font-display);
    font-size: 56px;
    font-weight: 800;
    color: var(--color-primary);
    line-height: 1;
}
.erc-big-unit {
    font-family: var(--font-display);
    font-size: 32px;
    font-weight: 700;
    color: var(--color-primary);
}
.erc-hero-metric__rating {
    margin-top: var(--space-2);
}
.erc-hero-metric__sub {
    display: block;
    font-size: var(--font-size-sm);
    color: var(--color-gray-500);
    margin-top: var(--space-1);
}

/* Rating Badge */
.erc-rating-badge {
    display: inline-block;
    padding: var(--space-1) var(--space-3);
    border-radius: 999px;
    font-size: var(--font-size-sm);
    font-weight: 600;
}
.erc-rating-badge--excellent {
    background: var(--color-green-50, #ECFDF5);
    color: var(--color-green-700, #047857);
}
.erc-rating-badge--above {
    background: var(--color-blue-50, #EFF6FF);
    color: var(--color-blue-700, #1D4ED8);
}
.erc-rating-badge--average {
    background: var(--color-yellow-50, #FFFBEB);
    color: var(--color-yellow-700, #A16207);
}
.erc-rating-badge--below {
    background: var(--color-orange-50, #FFF7ED);
    color: var(--color-orange-700, #C2410C);
}
.erc-rating-badge--low {
    background: var(--color-red-50, #FEF2F2);
    color: var(--color-red-700, #B91C1C);
}

/* Gauge */
.erc-gauge {
    max-width: 500px;
    margin: 0 auto var(--space-6);
}
.erc-gauge__track {
    position: relative;
    height: 12px;
    background: linear-gradient(90deg, #EF4444 0%, #F59E0B 30%, #10B981 60%, #059669 100%);
    border-radius: 6px;
    overflow: visible;
}
.erc-gauge__fill {
    display: none; /* gauge uses gradient track, no fill needed */
}
.erc-gauge__marker {
    position: absolute;
    top: -8px;
    transform: translateX(-50%);
    transition: left 300ms ease;
}
.erc-gauge__marker::after {
    content: '';
    display: block;
    width: 4px;
    height: 28px;
    background: var(--color-gray-800);
    border-radius: 2px;
    margin: 0 auto;
}
.erc-gauge__marker-label {
    display: block;
    text-align: center;
    font-size: var(--font-size-xs);
    font-weight: 700;
    color: var(--color-gray-800);
    margin-top: var(--space-1);
}
.erc-gauge__labels {
    display: flex;
    justify-content: space-between;
    font-size: var(--font-size-xs);
    color: var(--color-gray-400);
    margin-top: var(--space-5);
}

/* Benchmark Comparison */
.erc-benchmark {
    background: var(--color-gray-50, #F9FAFB);
    border: 1px solid var(--color-gray-200);
    border-radius: var(--radius-lg, 12px);
    padding: var(--space-5);
    margin-bottom: var(--space-6);
}
.erc-benchmark__header {
    font-size: var(--font-size-sm);
    color: var(--color-gray-600);
    margin-bottom: var(--space-4);
}
.erc-benchmark__header i {
    color: var(--color-primary);
    margin-right: var(--space-1);
}
.erc-benchmark__bar-wrap {
    position: relative;
}
.erc-benchmark__bar {
    position: relative;
    height: 8px;
    background: var(--color-gray-200);
    border-radius: 4px;
}
.erc-benchmark__bar-avg,
.erc-benchmark__bar-you {
    position: absolute;
    top: -6px;
    transform: translateX(-50%);
    transition: left 300ms ease;
}
.erc-benchmark__bar-avg::after,
.erc-benchmark__bar-you::after {
    content: '';
    display: block;
    width: 4px;
    height: 20px;
    border-radius: 2px;
    margin: 0 auto;
}
.erc-benchmark__bar-avg::after {
    background: var(--color-gray-400);
}
.erc-benchmark__bar-you::after {
    background: var(--color-primary);
}
.erc-benchmark__bar-avg-label,
.erc-benchmark__bar-you-label {
    display: block;
    text-align: center;
    font-size: var(--font-size-xs);
    font-weight: 700;
    margin-top: var(--space-1);
    white-space: nowrap;
}
.erc-benchmark__bar-avg-label {
    color: var(--color-gray-500);
}
.erc-benchmark__bar-you-label {
    color: var(--color-primary);
}
.erc-benchmark__legend {
    display: flex;
    gap: var(--space-4);
    margin-top: var(--space-5);
    font-size: var(--font-size-xs);
    color: var(--color-gray-500);
}
.erc-legend-dot {
    display: inline-block;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    margin-right: var(--space-1);
}
.erc-legend-dot--avg {
    background: var(--color-gray-400);
}
.erc-legend-dot--you {
    background: var(--color-primary);
}

/* Metric Cards Grid */
.erc-metrics-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--space-4);
    margin-bottom: var(--space-6);
}
.erc-metric-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: var(--space-4);
    background: var(--color-white, #fff);
    border: 1px solid var(--color-gray-200);
    border-radius: var(--radius-lg, 12px);
    transition: all 150ms ease;
}
.erc-metric-card:hover {
    transform: translateY(-1px);
    box-shadow: var(--shadow-sm);
}
.erc-metric-card__icon {
    font-size: var(--font-size-lg);
    color: var(--color-primary);
    margin-bottom: var(--space-2);
}
.erc-metric-card__label {
    font-size: var(--font-size-xs);
    color: var(--color-gray-500);
    text-transform: uppercase;
    letter-spacing: 0.03em;
    font-weight: 600;
}
.erc-metric-card__value {
    font-family: var(--font-display);
    font-size: 24px;
    font-weight: 800;
    color: var(--color-gray-900);
    margin: var(--space-1) 0;
}
.erc-metric-card__hint {
    font-size: var(--font-size-xs);
    color: var(--color-gray-400);
}

/* Tier Context */
.erc-tier-context {
    display: flex;
    gap: var(--space-3);
    padding: var(--space-4);
    background: var(--color-blue-50, #EFF6FF);
    border-radius: var(--radius-lg, 12px);
    margin-bottom: var(--space-5);
}
.erc-tier-context__icon {
    color: var(--color-primary);
    font-size: var(--font-size-lg);
    flex-shrink: 0;
    margin-top: 2px;
}
.erc-tier-context p {
    margin: 0;
    font-size: var(--font-size-sm);
    color: var(--color-gray-700);
    line-height: 1.6;
}

/* Share Bar */
.erc-share-bar {
    display: flex;
    gap: var(--space-3);
    flex-wrap: wrap;
}
.erc-share-btn--copied {
    color: var(--color-green-600, #059669) !important;
    border-color: var(--color-green-600, #059669) !important;
}

/* ═══════════════════════════════════════════════════════
   TAB 2: BRAND DEAL CALCULATOR
   ═══════════════════════════════════════════════════════ */

.erc-brand-settings {
    margin-bottom: var(--space-5);
}
.erc-brand-settings__row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--space-4);
}
.erc-hero-metric--brand {
    background: linear-gradient(135deg, var(--color-gray-50, #F9FAFB) 0%, var(--color-white, #fff) 100%);
    border: 1px solid var(--color-gray-200);
    border-radius: var(--radius-lg, 12px);
    padding: var(--space-6);
    margin-bottom: var(--space-5);
}
.erc-dollar {
    font-family: var(--font-display);
    font-size: 32px;
    font-weight: 700;
    color: var(--color-primary);
}
.erc-range-sep {
    font-size: 28px;
    color: var(--color-gray-400);
    margin: 0 var(--space-1);
}

/* Multipliers */
.erc-multipliers {
    margin-bottom: var(--space-5);
}
.erc-multipliers__title,
.erc-monthly-potential__title,
.erc-rate-card__title {
    font-family: var(--font-display);
    font-size: var(--font-size-base);
    font-weight: 700;
    color: var(--color-gray-800);
    margin: 0 0 var(--space-3) 0;
}
.erc-multipliers__grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: var(--space-3);
}
.erc-multiplier-item {
    text-align: center;
    padding: var(--space-3);
    background: var(--color-gray-50, #F9FAFB);
    border-radius: var(--radius-md, 8px);
    border: 1px solid var(--color-gray-100, #F3F4F6);
}
.erc-multiplier-item__label {
    display: block;
    font-size: var(--font-size-xs);
    color: var(--color-gray-500);
    margin-bottom: var(--space-1);
}
.erc-multiplier-item__value {
    display: block;
    font-family: var(--font-display);
    font-size: var(--font-size-base);
    font-weight: 700;
    color: var(--color-gray-900);
}
.erc-multipliers__formula {
    font-size: var(--font-size-xs);
    color: var(--color-gray-400);
    margin-top: var(--space-3);
    text-align: center;
    font-style: italic;
}

/* Monthly Potential */
.erc-monthly-potential__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: var(--space-3);
    margin-bottom: var(--space-5);
}
.erc-monthly-potential__card {
    text-align: center;
    padding: var(--space-4);
    background: var(--color-gray-50, #F9FAFB);
    border: 1px solid var(--color-gray-200);
    border-radius: var(--radius-lg, 12px);
}
.erc-monthly-potential__card--highlight {
    background: var(--color-primary-50, #EEF2FF);
    border-color: var(--color-primary-200, #C7D2FE);
}
.erc-monthly-potential__deals {
    display: block;
    font-size: var(--font-size-xs);
    color: var(--color-gray-500);
    font-weight: 600;
    margin-bottom: var(--space-2);
}
.erc-monthly-potential__value {
    display: block;
    font-family: var(--font-display);
    font-size: var(--font-size-lg);
    font-weight: 800;
    color: var(--color-gray-900);
}

/* Rate Card */
.erc-rate-card {
    background: var(--color-gray-50, #F9FAFB);
    border: 1px solid var(--color-gray-200);
    border-radius: var(--radius-lg, 12px);
    padding: var(--space-5);
}
.erc-rate-card__title i {
    color: var(--color-primary);
    margin-right: var(--space-1);
}
.erc-rate-card__content {
    font-size: var(--font-size-sm);
    color: var(--color-gray-700);
    line-height: 1.7;
    padding: var(--space-3) var(--space-4);
    background: var(--color-white, #fff);
    border: 1px solid var(--color-gray-200);
    border-radius: var(--radius-md, 8px);
    margin-bottom: var(--space-3);
}

/* ═══════════════════════════════════════════════════════
   TAB 3: GROWTH PROJECTOR
   ═══════════════════════════════════════════════════════ */

.erc-growth-settings__row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--space-4);
    margin-bottom: var(--space-5);
}
.erc-slider-row {
    display: flex;
    align-items: center;
    gap: var(--space-3);
}
.erc-slider {
    flex: 1;
    -webkit-appearance: none;
    height: 6px;
    border-radius: 3px;
    background: var(--color-gray-200);
    outline: none;
}
.erc-slider::-webkit-slider-thumb {
    -webkit-appearance: none;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: var(--color-primary);
    cursor: pointer;
    border: 2px solid var(--color-white, #fff);
    box-shadow: 0 1px 3px rgba(0,0,0,0.2);
}
.erc-slider::-moz-range-thumb {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: var(--color-primary);
    cursor: pointer;
    border: 2px solid var(--color-white, #fff);
}
.erc-growth-input {
    width: 60px !important;
    text-align: center;
    font-weight: 700;
}
.erc-growth-pct {
    font-weight: 600;
    color: var(--color-gray-600);
}

/* Growth Chart */
.erc-growth-chart {
    margin-bottom: var(--space-6);
}
.erc-growth-chart__title {
    font-family: var(--font-display);
    font-size: var(--font-size-base);
    font-weight: 700;
    color: var(--color-gray-800);
    margin: 0 0 var(--space-4) 0;
}
.erc-growth-chart__bars {
    display: flex;
    align-items: flex-end;
    gap: var(--space-2);
    height: 200px;
    padding: 0 var(--space-2);
}
.erc-growth-bar {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-end;
    min-width: 0;
}
.erc-growth-bar__fill {
    width: 100%;
    max-width: 48px;
    background: linear-gradient(180deg, var(--color-primary) 0%, var(--color-primary-dark, #4338CA) 100%);
    border-radius: 4px 4px 0 0;
    transition: height 400ms ease;
    min-height: 4px;
}
.erc-growth-bar__value {
    font-size: var(--font-size-xs);
    font-weight: 700;
    color: var(--color-gray-700);
    margin-bottom: var(--space-1);
    white-space: nowrap;
}
.erc-growth-bar__label {
    font-size: var(--font-size-xs);
    color: var(--color-gray-400);
    margin-top: var(--space-1);
    white-space: nowrap;
}

/* Milestones */
.erc-milestones {
    margin-bottom: var(--space-6);
}
.erc-milestones__title {
    font-family: var(--font-display);
    font-size: var(--font-size-base);
    font-weight: 700;
    color: var(--color-gray-800);
    margin: 0 0 var(--space-3) 0;
}
.erc-milestone {
    display: flex;
    align-items: center;
    gap: var(--space-3);
    padding: var(--space-3) var(--space-4);
    border-left: 3px solid var(--color-gray-200);
    margin-bottom: var(--space-2);
    transition: all 150ms ease;
}
.erc-milestone--reached {
    border-left-color: var(--color-primary);
    background: var(--color-primary-50, #EEF2FF);
    border-radius: 0 var(--radius-md, 8px) var(--radius-md, 8px) 0;
}
.erc-milestone__icon {
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--color-gray-100, #F3F4F6);
    color: var(--color-gray-500);
    flex-shrink: 0;
}
.erc-milestone--reached .erc-milestone__icon {
    background: var(--color-primary);
    color: var(--color-white, #fff);
}
.erc-milestone__target {
    display: block;
    font-weight: 700;
    color: var(--color-gray-800);
    font-size: var(--font-size-sm);
}
.erc-milestone__time {
    display: block;
    font-size: var(--font-size-xs);
    color: var(--color-gray-500);
}
.erc-milestone--none {
    font-size: var(--font-size-sm);
    color: var(--color-gray-500);
    font-style: italic;
}

/* Future Revenue */
.erc-future-revenue__title {
    font-family: var(--font-display);
    font-size: var(--font-size-base);
    font-weight: 700;
    color: var(--color-gray-800);
    margin: 0 0 var(--space-3) 0;
}
.erc-future-revenue__grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
    gap: var(--space-3);
}
.erc-future-revenue__card {
    text-align: center;
    padding: var(--space-4);
    background: var(--color-gray-50, #F9FAFB);
    border: 1px solid var(--color-gray-200);
    border-radius: var(--radius-lg, 12px);
}
.erc-future-revenue__period {
    display: block;
    font-size: var(--font-size-xs);
    color: var(--color-gray-500);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}
.erc-future-revenue__subs {
    display: block;
    font-size: var(--font-size-sm);
    color: var(--color-gray-600);
    margin: var(--space-1) 0;
}
.erc-future-revenue__value {
    display: block;
    font-family: var(--font-display);
    font-size: var(--font-size-lg);
    font-weight: 800;
    color: var(--color-primary);
}
.erc-future-revenue__label {
    display: block;
    font-size: var(--font-size-xs);
    color: var(--color-gray-400);
}

/* ═══════════════════════════════════════════════════════
   TAB 4: CHANNEL SCORECARD
   ═══════════════════════════════════════════════════════ */

/* Grade Circle */
.erc-grade {
    display: flex;
    align-items: center;
    gap: var(--space-5);
    margin-bottom: var(--space-6);
    padding: var(--space-5);
    background: var(--color-gray-50, #F9FAFB);
    border-radius: var(--radius-lg, 12px);
}
.erc-grade__circle {
    width: 100px;
    height: 100px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    border: 4px solid;
}
.erc-grade__circle--excellent { background: var(--color-green-50, #ECFDF5); border-color: var(--color-green-500, #10B981); }
.erc-grade__circle--good { background: var(--color-blue-50, #EFF6FF); border-color: var(--color-primary); }
.erc-grade__circle--average { background: var(--color-yellow-50, #FFFBEB); border-color: var(--color-yellow-500, #F59E0B); }
.erc-grade__circle--below { background: var(--color-orange-50, #FFF7ED); border-color: var(--color-orange-500, #F97316); }
.erc-grade__circle--low { background: var(--color-red-50, #FEF2F2); border-color: var(--color-red-500, #EF4444); }

.erc-grade__letter {
    font-family: var(--font-display);
    font-size: 40px;
    font-weight: 800;
}
.erc-grade__circle--excellent .erc-grade__letter { color: var(--color-green-700, #047857); }
.erc-grade__circle--good .erc-grade__letter { color: var(--color-primary); }
.erc-grade__circle--average .erc-grade__letter { color: var(--color-yellow-700, #A16207); }
.erc-grade__circle--below .erc-grade__letter { color: var(--color-orange-700, #C2410C); }
.erc-grade__circle--low .erc-grade__letter { color: var(--color-red-700, #B91C1C); }

.erc-grade__label {
    display: block;
    font-size: var(--font-size-xs);
    color: var(--color-gray-500);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-weight: 600;
}
.erc-grade__description {
    display: block;
    font-size: var(--font-size-sm);
    color: var(--color-gray-700);
    margin-top: var(--space-1);
    line-height: 1.6;
}

/* Dimensions */
.erc-dimensions {
    margin-bottom: var(--space-6);
}
.erc-dimensions__title {
    font-family: var(--font-display);
    font-size: var(--font-size-base);
    font-weight: 700;
    color: var(--color-gray-800);
    margin: 0 0 var(--space-4) 0;
}
.erc-dimension {
    margin-bottom: var(--space-4);
}
.erc-dimension__header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: var(--space-1);
}
.erc-dimension__name {
    font-size: var(--font-size-sm);
    font-weight: 600;
    color: var(--color-gray-700);
}
.erc-dimension__name i {
    color: var(--color-primary);
    margin-right: var(--space-1);
    width: 16px;
}
.erc-dimension__score {
    font-size: var(--font-size-sm);
    font-weight: 700;
    color: var(--color-gray-600);
}
.erc-dimension__bar {
    height: 10px;
    background: var(--color-gray-100, #F3F4F6);
    border-radius: 5px;
    overflow: hidden;
}
.erc-dimension__bar-fill {
    height: 100%;
    border-radius: 5px;
    transition: width 400ms ease, background-color 300ms ease;
}
.erc-dimension__bar-fill--good { background: var(--color-green-500, #10B981); }
.erc-dimension__bar-fill--avg { background: var(--color-yellow-500, #F59E0B); }
.erc-dimension__bar-fill--low { background: var(--color-red-500, #EF4444); }

/* Recommendations */
.erc-recommendations {
    margin-bottom: var(--space-5);
}
.erc-recommendations__title {
    font-family: var(--font-display);
    font-size: var(--font-size-base);
    font-weight: 700;
    color: var(--color-gray-800);
    margin: 0 0 var(--space-3) 0;
}
.erc-recommendations__title i {
    color: var(--color-yellow-500, #F59E0B);
    margin-right: var(--space-1);
}
.erc-recommendation {
    display: flex;
    gap: var(--space-3);
    padding: var(--space-4);
    border: 1px solid var(--color-gray-200);
    border-radius: var(--radius-lg, 12px);
    margin-bottom: var(--space-3);
    transition: all 150ms ease;
}
.erc-recommendation:hover {
    box-shadow: var(--shadow-sm);
    transform: translateY(-1px);
}
.erc-recommendation__icon {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--color-primary-50, #EEF2FF);
    color: var(--color-primary);
    border-radius: 50%;
    flex-shrink: 0;
}
.erc-recommendation__content strong {
    display: block;
    font-size: var(--font-size-sm);
    color: var(--color-gray-800);
    margin-bottom: var(--space-1);
}
.erc-recommendation__content p {
    margin: 0;
    font-size: var(--font-size-sm);
    color: var(--color-gray-600);
    line-height: 1.6;
}

/* Download Button */
.erc-download-btn {
    min-width: 200px;
}

/* ═══════════════════════════════════════════════════════
   REFERENCE TABLE
   ═══════════════════════════════════════════════════════ */

.erc-reference {
    margin-top: var(--space-10);
}
.erc-section-title {
    font-family: var(--font-display);
    font-size: var(--font-size-xl);
    font-weight: 700;
    color: var(--color-gray-900);
    margin-bottom: var(--space-5);
}
.erc-table-wrap {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    margin-bottom: var(--space-6);
}
.erc-ref-table {
    width: 100%;
}
.erc-cpm-tag {
    display: inline-block;
    padding: 2px 8px;
    border-radius: 999px;
    font-size: var(--font-size-xs);
    font-weight: 600;
}
.erc-cpm-tag--highcpm {
    background: var(--color-green-50, #ECFDF5);
    color: var(--color-green-700, #047857);
}
.erc-cpm-tag--aboveaverage {
    background: var(--color-blue-50, #EFF6FF);
    color: var(--color-blue-700, #1D4ED8);
}
.erc-cpm-tag--standard {
    background: var(--color-gray-100, #F3F4F6);
    color: var(--color-gray-600);
}

/* ═══════════════════════════════════════════════════════
   RESPONSIVE — MOBILE (375px floor)
   ═══════════════════════════════════════════════════════ */

@media (max-width: 767px) {
    .erc-inputs {
        padding: var(--space-4);
    }
    .erc-inputs__grid {
        grid-template-columns: 1fr;
        gap: var(--space-3);
    }
    .erc-inputs__niche {
        max-width: 100%;
    }
    .erc-panel {
        padding: var(--space-4);
    }

    /* Hero metric */
    .erc-big-number {
        font-size: 40px;
    }
    .erc-big-unit {
        font-size: 24px;
    }
    .erc-dollar {
        font-size: 24px;
    }
    .erc-range-sep {
        font-size: 20px;
    }

    /* Metric cards */
    .erc-metrics-grid {
        grid-template-columns: 1fr 1fr;
        gap: var(--space-3);
    }
    .erc-metric-card {
        padding: var(--space-3);
    }
    .erc-metric-card__value {
        font-size: 20px;
    }

    /* Brand deal */
    .erc-brand-settings__row {
        grid-template-columns: 1fr;
    }
    .erc-multipliers__grid {
        grid-template-columns: 1fr 1fr;
        gap: var(--space-2);
    }
    .erc-monthly-potential__grid {
        grid-template-columns: 1fr;
    }
    .erc-monthly-potential__value {
        font-size: var(--font-size-base);
    }

    /* Growth */
    .erc-growth-settings__row {
        grid-template-columns: 1fr;
    }
    .erc-growth-chart__bars {
        height: 160px;
    }
    .erc-growth-bar__value {
        font-size: var(--font-size-xs);
    }

    /* Scorecard */
    .erc-grade {
        flex-direction: column;
        text-align: center;
        padding: var(--space-4);
    }
    .erc-grade__circle {
        width: 80px;
        height: 80px;
    }
    .erc-grade__letter {
        font-size: 32px;
    }

    /* Share bar */
    .erc-share-bar {
        flex-direction: column;
    }
    .erc-share-bar .button {
        width: 100%;
        justify-content: center;
    }

    /* Tabs scroll hint */
    .erc-tabs {
        padding: 0 var(--space-2);
    }
}

@media (max-width: 480px) {
    .erc-metrics-grid {
        grid-template-columns: 1fr;
    }
    .erc-multipliers__grid {
        grid-template-columns: 1fr;
    }
    .erc-future-revenue__grid {
        grid-template-columns: 1fr;
    }
}
