/**
 * Tipografia — flusso preventivo fornitura (layouts.app → root 62.5%, usare px)
 * Scope: .supply-quote-page
 * @see docs/typography-spec-public-pages.md
 */

/* Titolo pagina «Preventivo Forniture» — 25px */
.supply-quote-page .supply-page-title {
    font-size: 25px !important;
    line-height: 1.3 !important;
    font-weight: 700 !important;
    color: #527cb5 !important;
}

/* =========================================================================
   Step 1 — categorie-prodotti (.supply-category-selection)
   ========================================================================= */

.supply-quote-page .supply-category-selection .category-main-title {
    font-size: 16px !important;
    line-height: 1.4 !important;
    font-weight: 700 !important;
}

.supply-quote-page .supply-category-selection .category-subtitle {
    font-size: 16px !important;
    line-height: 1.5 !important;
}

/* Titolo card categoria cliccabile — 16px */
.supply-quote-page .supply-category-selection .category-card-text {
    font-size: 16px !important;
    line-height: 1.35 !important;
    font-weight: 700 !important;
}

.supply-quote-page .supply-category-selection .category-edit-icon i {
    font-size: 12px !important;
}

/* =========================================================================
   Step 2 — selezione-prodotti (.supply-wizard-page)
   ========================================================================= */

.supply-quote-page .supply-wizard-page .alert,
.supply-quote-page .supply-wizard-page .alert i {
    font-size: 16px !important;
    line-height: 1.5 !important;
}

.supply-quote-page .supply-wizard-page .counter-number,
.supply-quote-page .supply-wizard-page .counter-text,
.supply-quote-page .supply-wizard-page .summary-card .btn-outline-secondary,
.supply-quote-page .supply-wizard-page .summary-card .btn-outline-secondary i {
    font-size: 16px !important;
    line-height: 1.4 !important;
}

.supply-quote-page .supply-wizard-page .group-title {
    font-size: 16px !important;
    line-height: 1.35 !important;
    font-weight: 700 !important;
}

.supply-quote-page .supply-wizard-page .group-description,
.supply-quote-page .supply-wizard-page .unit-hint,
.supply-quote-page .supply-wizard-page .toggle-label,
.supply-quote-page .supply-wizard-page .count-label,
.supply-quote-page .supply-wizard-page .selected-item-tag,
.supply-quote-page .supply-wizard-page .qty-unit {
    font-size: 12px !important;
    line-height: 1.4 !important;
}

.supply-quote-page .supply-wizard-page .section-title,
.supply-quote-page .supply-wizard-page .subgroup-name,
.supply-quote-page .supply-wizard-page .spec-param-name,
.supply-quote-page .supply-wizard-page .qty-input,
.supply-quote-page .supply-wizard-page .qty-number,
.supply-quote-page .supply-wizard-page .group-count-badge,
.supply-quote-page .supply-wizard-page .empty-state h5,
.supply-quote-page .supply-wizard-page .empty-state p,
.supply-quote-page .supply-wizard-page .empty-state-main h4,
.supply-quote-page .supply-wizard-page .empty-state-main p,
.supply-quote-page .supply-wizard-page .empty-state-main .btn,
.supply-quote-page .supply-wizard-page .empty-state-main .btn i {
    font-size: 16px !important;
    line-height: 1.5 !important;
}

.supply-quote-page .supply-wizard-page .subgroup-info .subgroup-name {
    padding-block: 4px !important;
}

.supply-quote-page .supply-wizard-page .btn-nav,
.supply-quote-page .supply-wizard-page .btn-nav i,
.supply-quote-page .supply-wizard-page .btn-label,
.supply-quote-page .supply-wizard-page .btn-sublabel {
    font-size: 16px !important;
    line-height: 1.35 !important;
}

/* Spaziatura uniforme — accordion, righe tipologie, finiture, nav */
.supply-quote-page .supply-wizard-page .supply-groups-container {
    gap: 16px !important;
}

.supply-quote-page .supply-wizard-page .section-divider {
    margin: 12px 0 !important;
}

.supply-quote-page .supply-wizard-page .section-title {
    margin: 0 0 12px 0 !important;
    padding: 0 !important;
}

.supply-quote-page .supply-wizard-page .subgroups-row,
.supply-quote-page .supply-wizard-page .specs-row {
    gap: 16px !important;
}

.supply-quote-page .supply-wizard-page .subgroup-card-with-qty {
    padding: 16px !important;
    min-height: 56px !important;
}

.supply-quote-page .supply-wizard-page .spec-card {
    padding: 12px 16px !important;
}

.supply-quote-page .supply-wizard-page .wizard-navigation {
    padding: 16px !important;
}

.supply-quote-page .supply-wizard-page .btn-nav {
    padding: 12px 20px !important;
}

/* Progress bar labels (step2 blade) */
.supply-quote-page .step-circle,
.supply-quote-page .progress-step .step-circle {
    font-size: 16px !important;
}

.supply-quote-page .step-label,
.supply-quote-page .progress-step .step-label {
    font-size: 16px !important;
    line-height: 1.3 !important;
}

/* =========================================================================
   Step 3 — dati-contatto (.supply-contact-page)
   ========================================================================= */

.supply-quote-page .supply-contact-page .summary-title {
    font-size: 25px !important;
    line-height: 1.3 !important;
    font-weight: 700 !important;
}

.supply-quote-page .supply-contact-page .choice-title {
    font-size: 16px !important;
    line-height: 1.35 !important;
    font-weight: 600 !important;
}

.supply-quote-page .supply-contact-page .choice-detail {
    font-size: 12px !important;
    line-height: 1.4 !important;
}

.supply-quote-page .supply-contact-page .form-title {
    font-size: 25px !important;
    line-height: 1.3 !important;
    font-weight: 700 !important;
}

.supply-quote-page .supply-contact-page .form-label,
.supply-quote-page .supply-contact-page .modern-input,
.supply-quote-page .supply-contact-page .modern-input::placeholder,
.supply-quote-page .supply-contact-page .auth-tab,
.supply-quote-page .supply-contact-page .auth-tab i,
.supply-quote-page .supply-contact-page .final-button,
.supply-quote-page .supply-contact-page .final-button i,
.supply-quote-page .supply-contact-page .final-button span,
.supply-quote-page .supply-contact-page .google-login-btn,
.supply-quote-page .supply-contact-page .google-login-btn span,
.supply-quote-page .supply-contact-page .supply-or-text,
.supply-quote-page .supply-contact-page .alert,
.supply-quote-page .supply-contact-page .alert i,
.supply-quote-page .supply-contact-page .text-muted,
.supply-quote-page .supply-contact-page .city-dropdown .city-option,
.supply-quote-page .supply-contact-page .city-dropdown .city-option strong {
    font-size: 16px !important;
    line-height: 1.45 !important;
}

.supply-quote-page .supply-contact-page .error-message {
    font-size: 12px !important;
    line-height: 1.4 !important;
}

.supply-quote-page .supply-contact-page .choice-icon i {
    font-size: 16px !important;
}

.supply-quote-page .supply-contact-page .supply-field-hint {
    font-size: 12px !important;
    line-height: 1.4 !important;
}

/* Spaziatura compatta — dati-contatto */
.supply-quote-page .supply-contact-page .user-form-grid {
    gap: 12px !important;
}

.supply-quote-page .supply-contact-page .form-label {
    margin-bottom: 4px !important;
}

.supply-quote-page .supply-contact-page .modern-input {
    padding: 10px 14px !important;
}

.supply-quote-page .supply-contact-page .auth-tabs-container {
    margin-bottom: 8px !important;
}

.supply-quote-page .supply-contact-page .form-title {
    margin-bottom: 4px !important;
}

.supply-quote-page .supply-contact-page .error-message {
    margin-top: 2px !important;
}

/* Mobile — stessi valori della spec */
@media (max-width: 767.98px) {
    .supply-quote-page .supply-page-title,
    .supply-quote-page .supply-contact-page .summary-title,
    .supply-quote-page .supply-contact-page .form-title {
        font-size: 25px !important;
    }

    .supply-quote-page .supply-category-selection .category-main-title {
        font-size: 16px !important;
    }

    .supply-quote-page .supply-category-selection .category-card-text {
        font-size: 16px !important;
    }
}
