﻿:root {
    --mobile-bg: #050816;
    --mobile-surface: rgba(13, 19, 39, 0.88);
    --mobile-border: rgba(255, 255, 255, 0.08);
    --mobile-text: #f4f7fb;
    --mobile-muted: #9ca8c3;
    --mobile-accent: #ff6b4a;
    --mobile-accent-strong: #ff8f5a;
    --mobile-success: #32d296;
    --mobile-warning: #f7b84b;
    --mobile-shadow: 0 18px 40px rgba(0, 0, 0, 0.35);
    --app-card-bg: linear-gradient(180deg, rgba(18, 18, 24, 0.98), rgba(10, 10, 13, 0.98));
    --app-card-border: rgba(255, 255, 255, 0.08);
    --app-input-bg: rgba(2, 6, 19, 0.76);
    --app-input-border: rgba(255, 255, 255, 0.09);
    --app-muted-surface: rgba(255, 255, 255, 0.04);
    --app-wizard-footer-bg: #0a0b10;
    --app-choice-text: #ffffff;
    --catalog-text: #f4f7fb;
    --catalog-muted: #9ca8c3;
    --catalog-surface: rgba(255, 255, 255, 0.04);
    --catalog-border: rgba(255, 255, 255, 0.08);
    /* Reserva inferior apenas para safe-area (menu fixo removido) */
    --mobile-bottom-nav-height: 0px;
    --mobile-bottom-nav-gap: 18px;
}

* {
    box-sizing: border-box;
}

html,
body {
    margin: 0;
    min-height: 100%;
    overflow-x: hidden;
}

/* SÃ³ com shell do app (nÃ£o na tela de login) */
body.mobile-app-body {
    --app-form-card-bg: #111827;
    --app-form-card-border: rgba(255, 255, 255, 0.08);
    --app-form-card-text: #f9fafb;
    --app-form-card-muted: #9ca3af;
    --app-form-input-bg: #1f2937;
    --app-form-input-border: rgba(255, 255, 255, 0.1);
    --app-form-input-text: #f9fafb;
    --app-form-inner-surface: rgba(255, 255, 255, 0.04);
    background:
        radial-gradient(circle at top, rgba(255, 107, 74, 0.18), transparent 28%),
        radial-gradient(circle at bottom right, rgba(107, 166, 255, 0.2), transparent 30%),
        linear-gradient(180deg, #09101f 0%, var(--mobile-bg) 45%, #03050d 100%);
    color: var(--mobile-text);
    font-family: 'DM Sans', sans-serif;
    min-height: 100vh;
    min-height: 100svh;
    min-height: 100dvh;
    scroll-padding-bottom: calc(var(--mobile-bottom-nav-height) + env(safe-area-inset-bottom, 0px) + var(--mobile-bottom-nav-gap));
}

.mobile-auth-body {
    display: flex;
    align-items: stretch;
    justify-content: center;
    padding: 0;
    overflow-x: hidden;
}

.mobile-auth-shell {
    width: 100%;
    max-width: 520px;
    min-height: 100dvh;
    display: flex;
    flex-direction: column;
    /* Evita padding duplo com .mobile-app-shell na tela de login */
    padding: 0;
    padding-top: env(safe-area-inset-top, 0px);
}

.mobile-auth-shell .mobile-auth-main {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: center;
    gap: 14px;
    width: 100%;
    max-width: 420px;
    margin: 0 auto;
    padding: 20px 16px calc(24px + env(safe-area-inset-bottom, 0px));
    box-sizing: border-box;
}

.mobile-auth-shell .mobile-auth-main > .status-message {
    width: 100%;
    flex-shrink: 0;
    text-align: left;
    font-size: 0.92rem;
    line-height: 1.45;
}

.mobile-auth-shell .mobile-auth-main > .mobile-auth-card {
    width: 100%;
    min-width: 0;
    flex-shrink: 0;
}

.mobile-auth-topbar {
    position: sticky;
    top: 0;
    z-index: 20;
    margin: 0;
    padding: 14px 16px 12px;
    background: linear-gradient(180deg, rgba(5, 8, 22, 0.96) 0%, rgba(5, 8, 22, 0.82) 70%, transparent 100%);
    backdrop-filter: blur(10px);
}

a {
    color: inherit;
    text-decoration: none;
}

button,
input,
select,
textarea {
    font: inherit;
}

.mobile-app-shell {
    max-width: 520px;
    margin: 0 auto;
    min-height: 100vh;
    min-height: 100svh;
    min-height: 100dvh;
    /* Reserva espaÃ§o REAL para a barra fixa (fora deste bloco) + margem de seguranÃ§a */
    padding: 18px 16px 18px;
    display: flex;
    flex-direction: column;
}

.mobile-topbar,
.mobile-section-header,
.mobile-detail-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.mobile-topbar {
    margin-bottom: 18px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px;
    align-items: center;
}

.mobile-brand {
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
    overflow: hidden;
}

.mobile-topbar-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: nowrap;
    gap: 6px;
    flex-shrink: 0;
    max-width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
}

.mobile-topbar-actions::-webkit-scrollbar {
    display: none;
}

.mobile-topbar-actions :is(
    .mobile-topbar-link,
    .mobile-topbar-logout button,
    .pflow-push-activation,
    .pwa-install-header-btn
) {
    width: 38px;
    min-width: 38px;
    max-width: 38px;
    height: 38px;
    min-height: 38px;
    padding: 0;
    margin: 0;
    gap: 0;
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    border: 1px solid var(--mobile-border);
    background: rgba(255, 255, 255, 0.04);
    color: var(--mobile-text);
    text-decoration: none;
    font-size: 0.92rem;
    font-weight: 700;
    line-height: 1;
    cursor: pointer;
    box-shadow: none;
    -webkit-appearance: none;
    appearance: none;
    -webkit-tap-highlight-color: transparent;
    transition: border-color 0.15s ease, background 0.15s ease, color 0.15s ease;
}

.mobile-topbar-actions :is(
    .mobile-topbar-link,
    .mobile-topbar-logout button,
    .pflow-push-activation,
    .pwa-install-header-btn
):hover,
.mobile-topbar-actions :is(
    .mobile-topbar-link,
    .mobile-topbar-logout button,
    .pflow-push-activation,
    .pwa-install-header-btn
):active {
    border-color: rgba(255, 255, 255, 0.16);
    background: rgba(255, 255, 255, 0.08);
    color: var(--mobile-text);
}

.mobile-topbar-actions .ui-mode-toggle__label,
.mobile-topbar-actions .pwa-install-header-btn__label {
    display: none !important;
}

.mobile-topbar-actions .mobile-topbar-link--home.is-active,
.mobile-topbar-actions .pflow-push-activation.is-active {
    border-color: rgba(255, 107, 74, 0.45);
    background: linear-gradient(135deg, rgba(255, 107, 74, 0.22), rgba(107, 166, 255, 0.16));
    color: var(--mobile-text);
}

.mobile-topbar-link--campaigns.is-active {
    border-color: rgba(167, 139, 250, 0.45);
    background: rgba(167, 139, 250, 0.18);
    color: #ede9fe;
}

.mobile-brand-text strong {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: min(128px, 38vw);
}

@media (max-width: 640px) {
    .mobile-topbar {
        gap: 8px;
    }

    .mobile-topbar-actions {
        gap: 5px;
    }

    .mobile-brand-text strong {
        max-width: min(112px, 34vw);
    }
}

@media (max-width: 420px) {
    .mobile-topbar {
        gap: 6px;
    }

    .mobile-topbar-actions {
        gap: 4px;
    }

    .mobile-topbar-actions :is(
        .mobile-topbar-link,
        .mobile-topbar-logout button,
        .pflow-push-activation,
        .pwa-install-header-btn
    ) {
        width: 36px;
        min-width: 36px;
        max-width: 36px;
        height: 36px;
        min-height: 36px;
        font-size: 0.86rem;
    }

    .mobile-brand-text strong {
        max-width: min(112px, 34vw);
    }

    .mobile-brand .company-logo-bg-wrap img,
    .mobile-brand > img {
        max-height: 44px;
        max-width: min(128px, 40vw);
    }
}

/* Topbar — logo (fundo vem de Configurações via company-logo-bg-wrap) */
body.mobile-app-body .mobile-brand {
    align-items: center;
}

body.mobile-app-body .mobile-brand .company-logo-bg-wrap {
    line-height: 0;
    flex-shrink: 0;
    max-width: 100%;
    width: fit-content;
}

body.mobile-app-body .mobile-brand .company-logo-bg-wrap img,
body.mobile-app-body .mobile-brand > img {
    display: block;
    max-width: 100%;
    max-height: 48px;
    width: auto;
    height: auto;
    object-fit: contain;
    object-position: center;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
    border-radius: 0 !important;
}

body.mobile-app-body[data-theme="light"] .mobile-brand .company-logo-bg-wrap img,
body.mobile-app-body[data-theme="light"] .mobile-brand > img {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

body.mobile-app-body[data-theme="light"] .app-flow-header h1,
body.mobile-app-body[data-theme="light"] .app-flow-header h2,
body.mobile-app-body[data-theme="light"] .mobile-register-mobile-header h1,
body.mobile-app-body[data-theme="light"] .mobile-screen-title {
    color: #0f172a !important;
    text-shadow: none !important;
    opacity: 1 !important;
}

body.mobile-app-body[data-theme="light"] .app-flow-header p,
body.mobile-app-body[data-theme="light"] .mobile-register-mobile-header span {
    color: #64748b !important;
}

body.mobile-app-body[data-theme="light"] .app-card,
body.mobile-app-body[data-theme="light"] .mobile-register-flow .mobile-form-panel.app-card,
body.mobile-app-body[data-theme="light"] .mobile-register-customer-panel,
body.mobile-app-body[data-theme="light"] .mobile-register-vehicle-panel,
body.mobile-app-body[data-theme="light"] .mobile-register-flow .mobile-appt-step,
body.mobile-app-body[data-theme="light"] .mobile-appt-services-panel,
body.mobile-app-body[data-theme="light"] .mobile-appt-summary-panel {
    background: rgba(255, 255, 255, 0.96) !important;
    border-color: rgba(8, 145, 178, 0.18) !important;
    color: #0f172a !important;
    box-shadow: 0 18px 42px rgba(15, 23, 42, 0.12) !important;
}

body.mobile-app-body[data-theme="light"] .app-card-title,
body.mobile-app-body[data-theme="light"] .mobile-register-flow .mobile-form-title,
body.mobile-app-body[data-theme="light"] .mobile-register-flow .mobile-form-label,
body.mobile-app-body[data-theme="light"] .mobile-register-flow .modveiculo-fipe__field label,
body.mobile-app-body[data-theme="light"] .mobile-register-flow .modveiculo-fipe__vtype > label,
body.mobile-app-body[data-theme="light"] .mobile-appt-services-panel .service-catalog-picker .section-header h3 {
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"] .mobile-register-flow .mobile-appt-steps {
    padding: 8px !important;
    border-radius: 18px !important;
    border: 1px solid rgba(8, 145, 178, 0.16) !important;
    background: rgba(8, 145, 178, 0.08) !important;
    box-shadow: none !important;
}

body.mobile-app-body[data-theme="light"] .mobile-register-flow .mobile-appt-step-pill {
    border-color: rgba(8, 145, 178, 0.18) !important;
    background: rgba(255, 255, 255, 0.86) !important;
    color: #334155 !important;
}

body.mobile-app-body[data-theme="light"] .mobile-register-flow .mobile-appt-step-pill.is-active,
body.mobile-app-body[data-theme="light"] .mobile-register-flow .mobile-appt-step-pill.is-done {
    border-color: rgba(8, 145, 178, 0.42) !important;
    background: rgba(8, 145, 178, 0.16) !important;
    color: #0369a1 !important;
}

body.mobile-app-body[data-theme="light"] .app-search,
body.mobile-app-body[data-theme="light"] .mobile-register-flow .mobile-field,
body.mobile-app-body[data-theme="light"] .mobile-register-flow .mobile-select,
body.mobile-app-body[data-theme="light"] .mobile-register-flow .mobile-textarea,
body.mobile-app-body[data-theme="light"] .mobile-register-flow .modveiculo-fipe__input,
body.mobile-app-body[data-theme="light"] .mobile-register-flow .modveiculo-fipe__input[readonly] {
    background: #ffffff !important;
    border-color: rgba(8, 145, 178, 0.22) !important;
    color: #0f172a !important;
    -webkit-text-fill-color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"] .mobile-register-flow .mobile-register-helper,
body.mobile-app-body[data-theme="light"] .mobile-register-flow .modveiculo-fipe__help,
body.mobile-app-body[data-theme="light"] .mobile-register-flow small,
body.mobile-app-body[data-theme="light"] .mobile-appt-services-panel .service-catalog-picker .helper-text {
    color: #64748b !important;
}

body.mobile-app-body[data-theme="light"] .mobile-register-flow .mobile-register-toggle,
body.mobile-app-body[data-theme="light"] .mobile-register-flow .mobile-register-code,
body.mobile-app-body[data-theme="light"] .mobile-register-flow .mobile-register-inline-code,
body.mobile-app-body[data-theme="light"] .mobile-register-flow .mobile-register-vehicle-card,
body.mobile-app-body[data-theme="light"] .mobile-register-flow .mobile-register-add-customer,
body.mobile-app-body[data-theme="light"] .mobile-register-flow .mobile-register-add-vehicle,
body.mobile-app-body[data-theme="light"] .mobile-register-flow .mobile-register-final-summary,
body.mobile-app-body[data-theme="light"] .mobile-appt-summary-box div,
body.mobile-app-body[data-theme="light"] .mobile-appt-summary-breakdown-row {
    background: rgba(8, 145, 178, 0.07) !important;
    border-color: rgba(8, 145, 178, 0.16) !important;
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"] .mobile-register-flow .modveiculo-fipe__plate-row .modveiculo-fipe__plate-search,
body.mobile-app-body[data-theme="light"] .mobile-register-mv-fipe.modveiculo-fipe--registration .modveiculo-fipe__plate-row .modveiculo-fipe__plate-search {
    background: #ffffff !important;
    border-color: rgba(8, 145, 178, 0.22) !important;
    color: #0f172a !important;
    box-shadow: 0 10px 22px rgba(15, 23, 42, 0.08) !important;
}

body.mobile-app-body[data-theme="light"] .mobile-register-flow .mobile-actions {
    background: rgba(255, 255, 255, 0.94) !important;
    border-color: rgba(8, 145, 178, 0.14) !important;
}

@media (max-width: 640px) {
    body.mobile-app-body .mobile-brand .company-logo-bg-wrap img,
    body.mobile-app-body .mobile-brand > img {
        max-height: 48px;
        max-width: min(148px, 44vw);
    }
}

.mobile-brand > img,
.mobile-brand .company-logo-bg-wrap img {
    max-width: min(168px, 48vw);
    max-height: 52px;
    width: auto;
    height: auto;
    object-fit: contain;
    object-position: center;
}

.mobile-brand strong,
.mobile-screen-title,
.mobile-stat-value,
.mobile-card-title,
.mobile-section-title,
.mobile-form-title,
.mobile-status-badge,
.mobile-order-number {
    font-family: 'Outfit', sans-serif;
}

.mobile-brand-label {
    display: block;
    color: var(--mobile-accent-strong);
    font-size: 0.76rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.mobile-topbar-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    border: 1px solid var(--mobile-border);
    background: rgba(255, 255, 255, 0.04);
}

.mobile-main-content,
.mobile-list,
.mobile-form-grid,
.mobile-detail-grid,
.mobile-status-select-wrap {
    display: grid;
    gap: 14px;
}

.mobile-main-content {
    gap: 18px;
    flex: 1;
    align-content: start;
    padding-bottom: calc(var(--mobile-bottom-nav-height) + env(safe-area-inset-bottom, 0px) + var(--mobile-bottom-nav-gap));
}

.mobile-main-content > *:last-child {
    scroll-margin-bottom: calc(var(--mobile-bottom-nav-height) + env(safe-area-inset-bottom, 0px) + var(--mobile-bottom-nav-gap));
}

.mobile-auth-main {
    width: 100%;
    max-width: 420px;
}

.mobile-card-top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
}

.mobile-hero,
.mobile-panel,
.mobile-form-panel,
.mobile-list-card,
.mobile-detail-panel,
.mobile-auth-card {
    border: 1px solid var(--mobile-border);
    border-radius: 24px;
    box-shadow: var(--mobile-shadow);
}

.mobile-hero {
    position: relative;
    overflow: hidden;
    background: linear-gradient(135deg, rgba(255, 107, 74, 0.22), rgba(107, 166, 255, 0.16));
    padding: 22px;
}

.mobile-panel,
.mobile-form-panel,
.mobile-list-card,
.mobile-detail-panel,
.mobile-auth-card {
    background: var(--mobile-surface);
    padding: 18px;
}

.mobile-list-card.mobile-filter-hidden {
    display: none !important;
}

.mobile-lookup-wrap {
    position: relative;
    display: grid;
    gap: 8px;
    min-width: 0;
    width: 100%;
}

.mobile-search-form--live,
.mobile-search-form--sheet {
    grid-template-columns: 1fr;
    align-items: stretch;
}

.mobile-search-form--live .mobile-lookup-wrap,
.mobile-search-form--sheet .mobile-search-trigger-label {
    grid-column: auto;
}

.mobile-search-form--live .mobile-button-secondary,
.mobile-search-form--sheet .mobile-button-secondary {
    width: 100%;
    justify-content: center;
}

.mobile-search-trigger-label {
    margin: 0;
}

.mobile-search-trigger {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    width: 100%;
    text-align: left;
    cursor: pointer;
}

.mobile-search-trigger-text {
    flex: 1;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: var(--mobile-text);
}

.mobile-search-trigger:not(.has-value) .mobile-search-trigger-text {
    color: var(--mobile-muted);
}

.mobile-search-trigger i {
    color: var(--mobile-muted);
    font-size: 0.95rem;
}

.mobile-search-trigger-hint {
    display: block;
    font-size: 0.8rem;
    color: var(--mobile-muted);
    min-height: 1.1em;
}

.mobile-search-sheet-modal {
    position: fixed;
    inset: 0;
    z-index: 2200;
    display: grid;
    align-items: end;
    padding: 14px;
    background: rgba(2, 6, 23, 0.66);
    backdrop-filter: blur(10px);
}

.mobile-search-sheet-modal[hidden] {
    display: none !important;
}

.mobile-search-sheet {
    width: min(100%, 520px);
    max-height: min(82vh, 640px);
    margin: 0 auto;
    display: grid;
    grid-template-rows: auto auto minmax(140px, 1fr);
    gap: 12px;
    padding: 16px;
    border-radius: 24px 24px 18px 18px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: linear-gradient(180deg, rgba(18, 18, 24, 0.98), rgba(8, 10, 16, 0.98));
    box-shadow: 0 -18px 48px rgba(0, 0, 0, 0.5);
}

.mobile-search-sheet-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
}

.mobile-search-sheet-head strong {
    display: block;
    color: var(--mobile-text);
    font-size: 1.02rem;
}

.mobile-search-sheet-hint {
    display: block;
    margin-top: 4px;
    color: var(--mobile-muted);
    font-size: 0.82rem;
    line-height: 1.35;
}

.mobile-search-sheet-close {
    width: 40px;
    height: 40px;
    border-radius: 14px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: rgba(255, 255, 255, 0.05);
    color: var(--mobile-text);
    cursor: pointer;
}

.mobile-search-sheet-results {
    display: grid;
    gap: 8px;
    overflow: auto;
    padding-right: 2px;
    align-content: start;
}

.mobile-search-sheet-option {
    display: grid;
    gap: 4px;
    width: 100%;
    min-height: 46px;
    padding: 12px 14px;
    border-radius: 15px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    background: rgba(255, 255, 255, 0.04);
    color: var(--mobile-text);
    text-align: left;
    cursor: pointer;
    touch-action: manipulation;
    appearance: none;
    box-shadow: none;
}

.mobile-search-sheet-option:active,
.mobile-search-sheet-option.is-active {
    border-color: rgba(255, 107, 74, 0.45);
    background: rgba(255, 107, 74, 0.13);
}

.mobile-search-sheet-option strong {
    display: block;
    font-size: 0.92rem;
    font-weight: 700;
    color: var(--mobile-text);
}

.mobile-search-sheet-option small {
    display: block;
    font-size: 0.78rem;
    color: var(--mobile-muted);
    line-height: 1.35;
}

.mobile-search-sheet-empty {
    padding: 14px;
    border-radius: 15px;
    border: 1px dashed rgba(255, 255, 255, 0.12);
    color: var(--mobile-muted);
    background: rgba(255, 255, 255, 0.03);
    font-size: 0.86rem;
    line-height: 1.4;
}

.mobile-search-sheet-modal--center {
    align-items: center;
    justify-items: center;
    padding: 20px;
}

.mobile-search-sheet-modal--center .mobile-search-sheet {
    border-radius: 22px;
    box-shadow: 0 24px 64px rgba(0, 0, 0, 0.55);
}

.mobile-vehicle-search-center {
    display: grid;
    justify-items: center;
    gap: 12px;
    padding: 8px 0 4px;
    text-align: center;
}

.mobile-vehicle-search-center .mobile-form-label {
    width: min(100%, 420px);
}

.mobile-vehicle-search-center .mobile-plate-search-field {
    width: 100%;
    padding: 16px 18px;
    font-size: 1.35rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    text-align: center;
}

.mobile-vehicle-search-center .mobile-plate-search-field::placeholder {
    font-size: 0.95rem;
    font-weight: 500;
    letter-spacing: 0.02em;
    text-transform: none;
}

.mobile-vehicle-inline-results {
    display: none;
    width: min(100%, 420px);
    max-height: min(280px, 42vh);
    overflow: auto;
    gap: 8px;
    padding: 6px;
    border-radius: 18px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: rgba(8, 10, 16, 0.98);
    box-shadow: 0 18px 40px rgba(0, 0, 0, 0.45);
}

.mobile-vehicle-inline-results.is-open {
    display: grid;
}

.mobile-form-panel.is-vehicle-view-mode .mobile-field,
.mobile-form-panel.is-vehicle-view-mode .mobile-search-trigger {
    opacity: 0.92;
    cursor: default;
}

.mobile-form-panel.is-vehicle-view-mode .vtype-picker.is-vehicle-locked,
.mobile-form-panel.is-vehicle-view-mode .color-row.is-vehicle-locked {
    pointer-events: none;
    opacity: 0.72;
}

.mobile-vehicle-view-banner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 12px 14px;
    border-radius: 16px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    background: rgba(255, 255, 255, 0.04);
    color: var(--mobile-muted);
    font-size: 0.86rem;
}

.mobile-vehicle-view-banner strong {
    color: var(--mobile-text);
    font-size: 0.92rem;
}

.mobile-section-header--with-action {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
}

.mobile-vehicle-fipe-modal {
    position: fixed;
    inset: 0;
    z-index: 2200;
    display: grid;
    align-items: center;
    justify-items: center;
    padding: 20px;
    background: rgba(2, 6, 23, 0.66);
    backdrop-filter: blur(10px);
}

.mobile-vehicle-fipe-modal[hidden] {
    display: none !important;
}

.mobile-vehicle-fipe-sheet {
    width: min(100%, 520px);
    max-height: min(82vh, 640px);
    display: grid;
    grid-template-rows: auto auto minmax(120px, 1fr) auto;
    gap: 12px;
    padding: 16px;
    border-radius: 22px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: linear-gradient(180deg, rgba(18, 18, 24, 0.98), rgba(8, 10, 16, 0.98));
    box-shadow: 0 24px 64px rgba(0, 0, 0, 0.55);
}

.mobile-vehicle-fipe-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
}

.mobile-vehicle-fipe-head strong {
    color: var(--mobile-text);
    font-size: 1.02rem;
}

.mobile-vehicle-fipe-close {
    width: 40px;
    height: 40px;
    border-radius: 14px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: rgba(255, 255, 255, 0.05);
    color: var(--mobile-text);
    cursor: pointer;
}

.mobile-vehicle-fipe-results {
    display: grid;
    gap: 8px;
    overflow: auto;
    padding-right: 2px;
    align-content: start;
}

.mobile-vehicle-fipe-option {
    width: 100%;
    min-height: 46px;
    padding: 12px 14px;
    border-radius: 15px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    background: rgba(255, 255, 255, 0.04);
    color: var(--mobile-text);
    text-align: left;
    font-weight: 700;
    cursor: pointer;
}

.mobile-vehicle-fipe-option:active,
.mobile-vehicle-fipe-option:hover {
    border-color: rgba(255, 107, 74, 0.45);
    background: rgba(255, 107, 74, 0.13);
}

.mobile-vehicle-model-options {
    display: none;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin-top: 8px;
}

.mobile-vehicle-model-options.is-visible {
    display: grid;
}

.mobile-vehicle-model-option {
    min-height: 42px;
    padding: 10px 12px;
    border-radius: 14px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: rgba(255, 255, 255, 0.04);
    color: var(--mobile-text);
    text-align: left;
    font-weight: 700;
    cursor: pointer;
}

.mobile-vehicle-model-option:active,
.mobile-vehicle-model-option:hover {
    border-color: rgba(255, 107, 74, 0.45);
    background: rgba(255, 107, 74, 0.13);
}

.mobile-vehicle-register-plate {
    width: 100%;
    margin-top: 4px;
}

.mobile-field.is-picker-trigger {
    cursor: pointer;
}

.mobile-lookup-dropdown {
    display: none;
    width: 100%;
    max-height: min(260px, 42vh);
    overflow: hidden auto;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 16px;
    background: #0a0e1a;
    box-shadow: 0 16px 36px rgba(0, 0, 0, 0.35);
    -webkit-overflow-scrolling: touch;
}

.mobile-lookup-dropdown.is-open {
    display: block;
}

.mobile-lookup-dropdown .mobile-lookup-option {
    display: grid;
    gap: 4px;
    width: 100%;
    box-sizing: border-box;
    margin: 0;
    padding: 12px 14px;
    border: 0;
    border-bottom: 1px solid var(--app-form-card-border);
    border-radius: 0;
    background: transparent;
    color: var(--mobile-text);
    text-align: left;
    cursor: pointer;
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
    appearance: none;
    box-shadow: none;
}

.mobile-lookup-dropdown .mobile-lookup-option:last-child {
    border-bottom: 0;
}

.mobile-lookup-dropdown .mobile-lookup-option:active,
.mobile-lookup-dropdown .mobile-lookup-option.is-active {
    background: rgba(255, 255, 255, 0.06);
}

.mobile-lookup-dropdown .mobile-lookup-option strong {
    display: block;
    font-size: 0.92rem;
    font-weight: 700;
    color: var(--mobile-text);
    letter-spacing: 0.04em;
}

.mobile-lookup-dropdown .mobile-lookup-option small {
    display: block;
    font-size: 0.78rem;
    color: var(--mobile-muted);
    line-height: 1.35;
}

.mobile-lookup-dropdown .mobile-lookup-option--empty {
    cursor: default;
    pointer-events: none;
}

.mobile-lookup-status {
    display: block;
    font-size: 0.8rem;
    color: var(--mobile-muted);
    min-height: 1.1em;
    line-height: 1.35;
}

.mobile-lookup-status.is-loading {
    color: #ffbf86;
}

.mobile-lookup-status.is-empty {
    color: #ffc5b7;
}

.mobile-form-panel .vtype-picker {
    margin-top: 4px;
}

.mobile-form-panel .vtype-option {
    border-color: rgba(255, 255, 255, 0.1);
    background: rgba(255, 255, 255, 0.04);
}

.mobile-form-panel .vtype-option__label {
    color: var(--mobile-text);
}

.mobile-form-panel .vtype-option__hint {
    color: var(--mobile-muted);
}

.mobile-auth-card {
    padding: 22px 18px;
    box-sizing: border-box;
}

.mobile-auth-card .mobile-form-grid {
    gap: 14px;
}

.mobile-auth-brand {
    text-align: center;
    display: grid;
    justify-items: center;
    gap: 8px;
    margin-bottom: 20px;
}

.mobile-auth-brand img {
    width: 72px;
    height: 72px;
    object-fit: contain;
    border-radius: 20px;
    background: rgba(255, 255, 255, 0.05);
    padding: 12px;
    border: 1px solid rgba(255, 255, 255, 0.08);
}

.mobile-auth-brand .mobile-screen-title {
    margin: 4px 0 0;
}

.mobile-auth-brand .mobile-screen-subtitle {
    margin: 0;
    font-size: 0.9rem;
    line-height: 1.4;
    max-width: 28ch;
}

.mobile-auth-footer {
    margin-top: 16px;
    display: flex;
    justify-content: center;
}

.mobile-screen-title {
    margin: 0 0 8px;
    font-size: 1.7rem;
    line-height: 1.05;
}

.mobile-screen-subtitle,
.mobile-section-kicker,
.mobile-card-subtitle,
.mobile-card-meta,
.mobile-empty-state,
.mobile-helper,
.mobile-form-label {
    display: grid;
    gap: 8px;
    min-width: 0;
    color: var(--mobile-muted);
}

.mobile-form-label--checkbox {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 14px;
    line-height: 1.35;
}

.mobile-form-label--checkbox input[type="checkbox"] {
    width: 18px;
    height: 18px;
    margin: 0;
    flex-shrink: 0;
    accent-color: var(--mobile-accent, #22d3ee);
}

.mobile-stat-grid,
.mobile-summary-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.mobile-form-grid.two-columns {
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
}

.mobile-stat-card {
    background: rgba(7, 11, 26, 0.62);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 20px;
    padding: 14px;
}

.mobile-stat-label {
    display: block;
    color: var(--mobile-muted);
    font-size: 0.82rem;
}

.mobile-stat-value {
    display: block;
    font-size: 1.45rem;
    font-weight: 700;
    margin-top: 6px;
}

.mobile-search-form {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 10px;
    align-items: stretch;
}

.mobile-search-form .mobile-field {
    min-width: 0;
}

.mobile-search-form .mobile-button-secondary {
    white-space: nowrap;
}

@media (max-width: 400px) {
    .mobile-search-form:not(.mobile-search-form--stack) {
        grid-template-columns: 1fr;
    }

    .mobile-search-form:not(.mobile-search-form--stack) .mobile-button-secondary {
        width: 100%;
        justify-content: center;
    }
}

.mobile-field,
.mobile-select,
.mobile-textarea {
    width: 100%;
    border-radius: 16px;
    border: 1px solid rgba(255, 255, 255, 0.09);
    background: rgba(2, 6, 19, 0.76);
    color: var(--mobile-text);
    padding: 14px 15px;
    outline: none;
}

.mobile-select,
.entry-select,
.customer-select {
    color-scheme: dark;
}

.mobile-select option,
.entry-select option,
.customer-select option {
    background: #ffffff !important;
    color: #111827 !important;
}

.mobile-select option:checked,
.entry-select option:checked,
.customer-select option:checked,
.mobile-select option:hover,
.entry-select option:hover,
.customer-select option:hover {
    background: #bfdbfe !important;
    color: #111827 !important;
}

.mobile-textarea {
    min-height: 110px;
    resize: vertical;
}

.mobile-chip-group,
.mobile-inline-pills,
.mobile-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.mobile-service-chip {
    position: relative;
}

.mobile-service-chip input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.mobile-service-chip span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 12px 14px;
    border-radius: 18px;
    border: 1px solid rgba(255, 255, 255, 0.09);
    background: rgba(255, 255, 255, 0.04);
    color: #e6ecf8;
}

.mobile-service-chip input:checked + span {
    border-color: rgba(255, 143, 90, 0.84);
    background: linear-gradient(135deg, rgba(255, 107, 74, 0.26), rgba(255, 143, 90, 0.18));
}

.mobile-chip-price {
    color: var(--mobile-accent-strong);
    font-size: 0.83rem;
}

.mobile-button,
.mobile-button-secondary,
.mobile-button-inline {
    border: 0;
    border-radius: 18px;
    cursor: pointer;
}

.mobile-button {
    padding: 15px 18px;
    background: linear-gradient(135deg, var(--mobile-accent), var(--mobile-accent-strong));
    color: #fff;
    font-weight: 700;
}

.mobile-button-secondary,
.mobile-button-inline {
    padding: 14px 16px;
    background: rgba(255, 255, 255, 0.05);
    color: var(--mobile-text);
    border: 1px solid rgba(255, 255, 255, 0.08);
}

.mobile-button-inline {
    padding: 11px 14px;
}

.app-flow {
    width: 100%;
    max-width: 960px;
    margin: 0 auto;
    display: grid;
    gap: 16px;
}

.app-flow-header {
    display: grid;
    gap: 6px;
}

.app-flow-header h1,
.app-flow-header h2 {
    margin: 0;
    font-size: 26px;
    color: #fff;
    letter-spacing: -0.04em;
    line-height: 1.08;
}

.app-flow-header p {
    margin: 0;
    color: var(--mobile-muted);
    font-size: 13px;
    line-height: 1.45;
}

.app-card {
    background: var(--app-card-bg);
    border: 1px solid var(--app-card-border);
    border-radius: 22px;
    padding: 18px;
    display: grid;
    gap: 14px;
    box-shadow: var(--mobile-shadow);
    color: var(--mobile-text);
}

.app-card-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    color: var(--mobile-text);
    font-size: 16px;
    font-weight: 800;
}

.app-search {
    width: 100%;
    min-height: 52px;
    border-radius: 18px;
    border: 1px solid var(--app-input-border);
    background: var(--app-input-bg);
    color: var(--mobile-text);
    padding: 14px 15px;
    font-size: 16px;
    outline: none;
}

.app-choice-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 10px;
}

.app-choice {
    min-height: 56px;
    border-radius: 16px;
    border: 1px solid var(--catalog-border);
    background: var(--app-muted-surface);
    color: var(--app-choice-text);
    font-weight: 800;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.app-choice.is-active,
.app-choice.active {
    border-color: rgba(233,69,96,.55);
    background: rgba(233,69,96,.14);
    box-shadow: 0 0 18px rgba(233,69,96,.14);
}

.app-service-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
    gap: 12px;
}

.app-service-card {
    border-radius: 18px;
    border: 1px solid var(--catalog-border);
    background: var(--catalog-surface);
    padding: 15px;
    display: grid;
    gap: 8px;
    cursor: pointer;
    color: var(--mobile-text);
}

.app-service-card.is-selected,
.app-service-card:has(input:checked) {
    border-color: rgba(233,69,96,.65);
    background: rgba(233,69,96,.12);
}

.app-service-card strong {
    color: var(--catalog-text);
    font-size: 15px;
}

.app-service-card small {
    color: var(--catalog-muted);
    line-height: 1.45;
}

.app-service-price {
    color: #ffbf86;
    font-weight: 900;
    font-size: 20px;
}

.app-bottom-bar {
    display: none;
}

.mobile-inline-pill,
.mobile-status-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 11px;
    border-radius: 999px;
}

.mobile-inline-pill {
    background: rgba(255, 255, 255, 0.05);
    color: var(--mobile-muted);
    font-size: 0.8rem;
}

.mobile-status-badge {
    font-size: 0.8rem;
    font-weight: 700;
}

.mobile-status-badge.waiting,
.mobile-status-badge.aguardando {
    background: rgba(107, 166, 255, 0.16);
    color: #9bc4ff;
}

.mobile-status-badge.running,
.mobile-status-badge.em_andamento {
    background: rgba(247, 184, 75, 0.16);
    color: #ffd37b;
}

.mobile-status-badge.done,
.mobile-status-badge.finalizado,
.mobile-status-badge.delivered {
    background: rgba(50, 210, 150, 0.18);
    color: #9ff7ce;
}

.mobile-status-badge.delivering,
.mobile-status-badge.entregue {
    background: rgba(255, 107, 74, 0.16);
    color: #ffb19d;
}

.mobile-empty-state {
    text-align: center;
    padding: 22px 18px;
    border: 1px dashed rgba(255, 255, 255, 0.12);
    border-radius: 20px;
}

.status-message {
    padding: 14px 16px;
    border-radius: 18px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    background: rgba(255, 255, 255, 0.05);
    box-shadow: var(--mobile-shadow);
}

.status-message.success {
    border-color: rgba(50, 210, 150, 0.28);
    background: rgba(50, 210, 150, 0.12);
    color: #b4ffd9;
}

.status-message.info {
    border-color: rgba(107, 166, 255, 0.28);
    background: rgba(107, 166, 255, 0.12);
    color: #c9dcff;
}

.status-message.error {
    border-color: rgba(255, 107, 74, 0.32);
    background: rgba(255, 107, 74, 0.12);
    color: #ffc5b7;
}

/* Grid em UMA linha: em WebViews antigos, flex Ã s vezes quebrava em 3 linhas e cobria a pÃ¡gina */
.modal-overlay {
    position: fixed;
    inset: 0;
    z-index: 13000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 18px;
}

.modal-overlay[hidden] {
    display: none;
}

.modal-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.72);
}

.modal-box {
    position: relative;
    width: min(460px, 100%);
    max-height: 88vh;
    overflow-y: auto;
    padding: 24px;
    border-radius: 22px;
    border: 1px solid var(--mobile-border);
    background: linear-gradient(180deg, rgba(13, 19, 39, 0.98), rgba(8, 12, 25, 0.98));
    box-shadow: var(--mobile-shadow);
    color: var(--mobile-text);
}

.receipt-print-modal-box {
    width: min(420px, calc(100vw - 24px));
}

.receipt-format-options {
    display: grid;
    gap: 10px;
    margin-top: 8px;
}

.receipt-format-option {
    display: grid;
    grid-template-columns: auto 1fr;
    grid-template-rows: auto auto;
    gap: 2px 12px;
    align-items: center;
    width: 100%;
    padding: 12px 14px;
    border: 1px solid var(--mobile-border);
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.04);
    color: var(--mobile-text);
    text-align: left;
    cursor: pointer;
    font: inherit;
    transition: border-color 0.15s ease, background 0.15s ease;
}

.receipt-format-option:hover {
    border-color: rgba(56, 189, 248, 0.45);
    background: rgba(56, 189, 248, 0.08);
}

.receipt-format-option__icon {
    grid-row: 1 / span 2;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.06);
    color: var(--mobile-accent, #38bdf8);
    font-size: 16px;
}

.receipt-format-option__title {
    font-size: 14px;
    font-weight: 700;
}

.receipt-format-option__hint {
    grid-column: 2;
    font-size: 12px;
    color: var(--mobile-muted);
    line-height: 1.3;
}

.button-row {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.modal-header {
    display: grid;
    gap: 8px;
}

.modal-header h2 {
    margin: 0;
    font-family: 'Outfit', sans-serif;
    font-size: 1.25rem;
    line-height: 1.2;
}

.modal-subtitle {
    margin: 0;
    color: var(--mobile-muted);
    line-height: 1.5;
}

.modal-close {
    position: absolute;
    top: 16px;
    right: 16px;
    width: 38px;
    height: 38px;
    border: 1px solid var(--mobile-border);
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.05);
    color: var(--mobile-text);
}

.primary-button,
.secondary-button {
    min-height: 48px;
    padding: 0 16px;
    border-radius: 16px;
    border: 1px solid transparent;
    font-weight: 800;
    cursor: pointer;
}

.primary-button {
    background: linear-gradient(135deg, var(--mobile-accent-strong), var(--mobile-accent));
    color: #ffffff;
}

.secondary-button {
    background: rgba(255, 255, 255, 0.06);
    border-color: var(--mobile-border);
    color: var(--mobile-text);
}

.flash-whatsapp-box {
    padding: 24px;
    display: grid;
    gap: 16px;
}

.flash-whatsapp-icon {
    width: 52px;
    height: 52px;
    display: grid;
    place-items: center;
    border-radius: 16px;
    border: 1px solid rgba(50, 210, 150, 0.28);
    background: rgba(50, 210, 150, 0.14);
    color: #9ff7ce;
    font-size: 1.55rem;
}

.flash-whatsapp-header {
    padding-right: 40px;
}

.flash-whatsapp-actions {
    display: grid;
    gap: 10px;
}

.flash-whatsapp-actions .primary-button,
.flash-whatsapp-actions .secondary-button {
    width: 100%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    text-decoration: none;
}

/* Bottom navigation removido â€” mantido oculto por compatibilidade */
.mobile-bottom-nav {
    display: none !important;
}

.mobile-bottom-nav::-webkit-scrollbar {
    display: none;
}

.mobile-bottom-nav a {
    scroll-snap-align: start;
    display: grid;
    place-items: center;
    justify-items: center;
    gap: 3px;
    min-width: 0;
    max-width: none;
    min-height: 60px;
    padding: 7px 5px;
    color: var(--mobile-muted);
    border-radius: 14px;
    font-size: 0.58rem;
    text-align: center;
    line-height: 1.15;
    white-space: normal;
}

.mobile-bottom-nav a span {
    display: block;
    max-width: 76px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.mobile-bottom-nav a.active {
    background: linear-gradient(135deg, rgba(255, 107, 74, 0.2), rgba(107, 166, 255, 0.18));
    color: var(--mobile-text);
}

@media (max-width: 768px) {
    html,
    body {
        overflow-x: hidden !important;
    }

    .mobile-main-content {
        padding-bottom: calc(env(safe-area-inset-bottom, 0px) + 24px);
    }

    .app-flow {
        max-width: 100%;
        gap: 13px;
    }

    .app-flow-header h1,
    .app-flow-header h2 {
        font-size: 22px;
    }

    .app-card {
        padding: 14px;
        border-radius: 20px;
    }

    .app-choice-grid,
    .app-service-grid {
        grid-template-columns: 1fr;
    }

    .mobile-field,
    .mobile-select,
    .mobile-textarea,
    .customer-input,
    .customer-select,
    .customer-textarea,
    .entry-input,
    .entry-select,
    .entry-textarea,
    input,
    select,
    textarea {
        font-size: 16px !important;
        min-height: 50px;
    }

    .mobile-button,
    .mobile-button-secondary,
    .primary-button,
    .secondary-button {
        min-height: 52px;
    }

    .app-bottom-bar {
        position: fixed;
        left: 50%;
        right: auto;
        bottom: calc(var(--mobile-bottom-nav-height) + env(safe-area-inset-bottom, 0px));
        transform: translateX(-50%);
        width: 100%;
        max-width: 520px;
        z-index: 1200;
        display: grid;
        grid-template-columns: 1fr auto;
        gap: 10px;
        align-items: center;
        padding: 12px;
        background: rgba(8,9,12,.96);
        border-top: 1px solid rgba(255,255,255,.10);
        box-shadow: 0 -18px 40px rgba(0,0,0,.36);
        backdrop-filter: blur(10px);
        -webkit-backdrop-filter: blur(10px);
    }

    /* Cadastro/entrada no app-mobile: wizard footer ja resolve a acao. */
    body.mobile-screen--cadastro-cliente .app-bottom-bar,
    body.mobile-screen--entrada .app-bottom-bar {
        display: none !important;
    }

    .app-bottom-total {
        display: grid;
        gap: 2px;
    }

    .app-bottom-total span {
        color: #9ca3af;
        font-size: 11px;
        text-transform: uppercase;
        letter-spacing: .06em;
        font-weight: 800;
    }

    .app-bottom-total strong {
        color: #fff;
        font-size: 20px;
        line-height: 1;
    }

    .app-bottom-button {
        min-height: 52px;
        padding: 0 18px;
        border-radius: 16px;
        border: 0;
        background: linear-gradient(135deg, #e94560, #ff6b83);
        color: #fff;
        font-weight: 900;
        white-space: nowrap;
    }

    .app-bottom-button:disabled {
        opacity: .5;
    }
}

.mobile-toast {
    position: fixed;
    left: 50%;
    bottom: calc(var(--mobile-bottom-nav-height) + env(safe-area-inset-bottom, 0px) + var(--mobile-bottom-nav-gap) + 4px);
    transform: translateX(-50%);
    z-index: 250;
    padding: 12px 14px;
    border-radius: 16px;
    background: rgba(7, 10, 22, 0.96);
    border: 1px solid rgba(255, 255, 255, 0.08);
    color: #fff;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.2s ease, transform 0.2s ease;
    box-shadow: var(--mobile-shadow);
}

.mobile-toast.visible {
    opacity: 1;
    transform: translateX(-50%) translateY(-4px);
}

@media (max-width: 420px) {
    .app-bottom-bar {
        grid-template-columns: 1fr;
    }

    .app-bottom-button {
        width: 100%;
    }

    .mobile-stat-grid,
    .mobile-summary-grid,
    .mobile-form-grid.two-columns {
        grid-template-columns: 1fr;
    }

    .mobile-app-shell {
        padding-inline: 14px;
    }

    .mobile-bottom-nav a {
        min-width: 60px;
        max-width: 72px;
        padding: 7px 3px;
        font-size: 0.58rem;
    }

    .mobile-bottom-nav a i {
        font-size: 0.92rem;
    }
}

/* Responsividade extra para telas muito pequenas */
@media (max-width: 360px) {
    .mobile-screen-title {
        font-size: 1.4rem;
    }

    .mobile-stat-value {
        font-size: 1.2rem;
    }

    .mobile-hero,
    .mobile-panel,
    .mobile-form-panel,
    .mobile-list-card,
    .mobile-detail-panel {
        padding: 14px;
        border-radius: 18px;
    }

    .mobile-field,
    .mobile-select,
    .mobile-textarea {
        padding: 12px 13px;
        border-radius: 14px;
        font-size: 15px;
    }

    .mobile-button {
        padding: 13px 16px;
    }

    .mobile-chip-group {
        gap: 8px;
    }

    .mobile-service-chip span {
        min-height: 42px;
        padding: 10px 12px;
        font-size: 0.9rem;
    }

    .mobile-bottom-nav a {
        min-width: 54px;
        max-width: 66px;
        padding: 6px 2px;
        font-size: 0.54rem;
    }

    .mobile-bottom-nav a i {
        font-size: 0.85rem;
    }
}

/* Garantir que inputs nÃ£o quebrem em mobile */
input, select, textarea, button {
    max-width: 100%;
}

/* Touch targets mÃ­nimos de 44px */
.mobile-button,
.mobile-button-secondary,
.mobile-button-inline,
.mobile-service-chip span {
    min-height: 44px;
}

/* Melhor scroll em formulÃ¡rios longos */
.mobile-form-grid {
    scroll-margin-top: 16px;
}

/* Cor de seleÃ§Ã£o para campos */
.mobile-field::placeholder,
.mobile-textarea::placeholder {
    color: rgba(156, 168, 195, 0.5);
}

.mobile-field:focus,
.mobile-select:focus,
.mobile-textarea:focus {
    border-color: var(--mobile-accent);
    box-shadow: 0 0 0 2px rgba(255, 107, 74, 0.15);
}

/* Helper text styling */
.helper-text {
    display: block;
    margin-top: 6px;
    font-size: 0.8rem;
    color: var(--mobile-muted);
    line-height: 1.3;
}

/* Color row styling para chips de cor */
.color-row {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 8px;
}

.color-chip {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    border: 2px solid rgba(255, 255, 255, 0.16);
    cursor: pointer;
    padding: 0;
    box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.22) inset;
}

.color-chip.active {
    transform: scale(1.08);
    border-color: #fff;
}

/* Smooth transitions */
.mobile-panel,
.mobile-form-panel,
.mobile-list-card,
[hidden] {
    transition: opacity 0.2s ease;
}

/* Prevent zoom on input focus in iOS */
@supports (-webkit-touch-callout: none) {
    .mobile-field,
    .mobile-select,
    .mobile-textarea {
        font-size: 16px;
    }
}


/* App mobile vertical: mantÃ©m a versÃ£o web do /app-mobile igual ao APK, com campos e seÃ§Ãµes empilhados. */
.mobile-screen--cadastro-cliente .mobile-form-grid.two-columns,
.mobile-screen--entrada .mobile-form-grid.two-columns {
    grid-template-columns: 1fr !important;
}

.mobile-screen--entrada .entry-avulso-row,
.mobile-screen--entrada .entry-customer-preview {
    grid-template-columns: 1fr !important;
}

.mobile-bottom-nav {
    grid-auto-columns: 1fr !important;
    justify-content: stretch !important;
    overflow-x: hidden !important;
}

.mobile-bottom-nav a {
    min-width: 0 !important;
    max-width: none !important;
}

.mobile-bottom-nav--7 a {
    font-size: 0.52rem;
    padding: 6px 3px;
    min-height: 56px;
}

.mobile-bottom-nav--7 a i {
    font-size: 0.88rem;
}

/* â”€â”€ PWA / APK / WebView (standalone) â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
body.mobile-app-body {
    -webkit-tap-highlight-color: rgba(255, 107, 74, 0.2);
    touch-action: pan-y pinch-zoom;
    overscroll-behavior-y: auto;
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    padding-top: env(safe-area-inset-top, 0px);
}

html:has(body.mobile-app-body) {
    overflow-x: hidden;
    overflow-y: auto;
    height: auto;
    min-height: 100%;
    touch-action: pan-y pinch-zoom;
}

body.mobile-app-body .mobile-app-shell {
    height: auto;
    overflow: visible;
    touch-action: pan-y pinch-zoom;
}

body.mobile-app-standalone .mobile-app-shell {
    min-height: calc(var(--app-vh, 1vh) * 100);
}

body.mobile-app-standalone .mobile-topbar {
    padding-top: max(0px, env(safe-area-inset-top, 0px));
}

.mobile-topbar-logout {
    margin: 0;
    flex-shrink: 0;
}

.mobile-topbar-logout button {
    cursor: pointer;
}

.mobile-brand-text {
    min-width: 0;
}

.mobile-brand-text strong {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: min(220px, 52vw);
}

/* Evita overflow horizontal em qualquer tela mobile */
.mobile-app-body img:not(.uber-vtype-icon__img):not(.vehicle-type-inline-icon):not(.vehicle-type-tab-icon):not(.catalog-vtype-icon__img),
.mobile-app-body video,
.mobile-app-body svg:not(.mercosul-plate__flag),
.mobile-app-body canvas {
    max-width: 100%;
    height: auto;
}

/* Placa Mercosul: tamanho fixo â€” a regra global de svg quebra a bandeira BR. */
.mobile-app-body .mercosul-plate__flag {
    width: 12px !important;
    height: 8px !important;
    max-width: none !important;
    flex-shrink: 0;
}

.mobile-app-body table {
    width: 100%;
    border-collapse: collapse;
}

.mobile-table-scroll {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    margin: 0 -4px;
    padding: 0 4px 6px;
}

.mobile-scroll-x {
    display: flex;
    gap: 8px;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    padding-bottom: 4px;
}

.mobile-scroll-x::-webkit-scrollbar {
    display: none;
}

.mobile-search-form--stack {
    grid-template-columns: 1fr;
}

.mobile-search-form--stack .mobile-field--full {
    grid-column: 1 / -1;
}

@media (min-width: 400px) {
    .mobile-search-form--stack {
        grid-template-columns: 1fr 1fr;
    }

    .mobile-search-form--stack .mobile-field--full {
        grid-column: 1 / -1;
    }

    .mobile-search-form--stack .mobile-button-secondary {
        grid-column: 1 / -1;
    }
}

.mobile-actions--stack-sm .mobile-button,
.mobile-actions--stack-sm .mobile-button-secondary,
.mobile-actions--stack-sm .mobile-button-inline {
    flex: 1 1 100%;
    justify-content: center;
    text-align: center;
}

@media (max-width: 420px) {
    .mobile-actions:not(.mobile-actions--nowrap) .mobile-button-inline {
        flex: 1 1 calc(50% - 5px);
        justify-content: center;
        text-align: center;
    }
}

/* Dashboard (antes inline em dashboard.php) */
.mobile-dashboard-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin-top: 4px;
}

.mobile-dashboard-btn {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 8px;
    padding: 20px 12px 16px;
    background: var(--mobile-surface);
    border: 1px solid rgba(255, 255, 255, 0.07);
    border-radius: 18px;
    text-decoration: none;
    color: var(--mobile-text);
    transition: background 0.18s, transform 0.12s;
    -webkit-tap-highlight-color: transparent;
    min-height: 44px;
    width: 100%;
    cursor: pointer;
    font: inherit;
    appearance: none;
    -webkit-appearance: none;
}

.mobile-dashboard-btn:active {
    transform: scale(0.96);
    background: rgba(255, 255, 255, 0.07);
}

.mobile-dashboard-btn--accent {
    background: rgba(255, 107, 74, 0.12);
    border-color: rgba(255, 107, 74, 0.28);
}

.mobile-dashboard-btn--accent .mobile-dashboard-btn-icon {
    background: rgba(255, 107, 74, 0.18);
    color: var(--mobile-accent);
}

.mobile-dashboard-btn--accent .mobile-dashboard-btn-label {
    color: #ffb19d;
}

.mobile-dashboard-btn--campaigns {
    background: rgba(167, 139, 250, 0.12);
    border-color: rgba(167, 139, 250, 0.28);
}

.mobile-dashboard-btn--campaigns .mobile-dashboard-btn-icon {
    background: rgba(167, 139, 250, 0.18);
    color: #c4b5fd;
}

.mobile-dashboard-btn--campaigns .mobile-dashboard-btn-label {
    color: #ddd6fe;
}

.mobile-dashboard-btn--sales {
    background: rgba(52, 211, 153, 0.1);
    border-color: rgba(52, 211, 153, 0.26);
}

.mobile-dashboard-btn--sales .mobile-dashboard-btn-icon {
    background: rgba(52, 211, 153, 0.16);
    color: #34d399;
}

.mobile-dashboard-btn--sales .mobile-dashboard-btn-label {
    color: #9ff7ce;
}

.mobile-dashboard-btn--progress {
    background: rgba(59, 130, 246, 0.12);
    border-color: rgba(96, 165, 250, 0.28);
}

.mobile-dashboard-btn--progress .mobile-dashboard-btn-icon {
    background: rgba(59, 130, 246, 0.18);
    color: #60a5fa;
}

.mobile-dashboard-btn--progress .mobile-dashboard-btn-label {
    color: #bfdbfe;
}

.mobile-dashboard-btn--today {
    border-color: rgba(52, 211, 153, 0.28);
    background: linear-gradient(135deg, rgba(52, 211, 153, 0.14), rgba(16, 185, 129, 0.08));
}

.mobile-dashboard-btn--today .mobile-dashboard-btn-icon {
    background: rgba(52, 211, 153, 0.16);
    color: #6ee7b7;
}

.mobile-dashboard-btn--today .mobile-dashboard-btn-label {
    color: #a7f3d0;
}

.mobile-dashboard-btn--pending {
    background: rgba(245, 158, 11, 0.12);
    border-color: rgba(251, 191, 36, 0.3);
}

.mobile-dashboard-btn--pending .mobile-dashboard-btn-icon {
    background: rgba(245, 158, 11, 0.18);
    color: #fbbf24;
}

.mobile-dashboard-btn--pending .mobile-dashboard-btn-label {
    color: #fde68a;
}

.mobile-dashboard-btn--cash {
    background: rgba(56, 189, 248, 0.1);
    border-color: rgba(56, 189, 248, 0.26);
}

.mobile-dashboard-btn--cash .mobile-dashboard-btn-icon {
    background: rgba(56, 189, 248, 0.16);
    color: #38bdf8;
}

.mobile-dashboard-btn--cash .mobile-dashboard-btn-label {
    color: #7dd3fc;
}

.mobile-dashboard-btn-icon {
    width: 52px;
    height: 52px;
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.06);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.3rem;
    color: var(--mobile-text);
}

.mobile-dashboard-btn-label {
    font-size: 0.9rem;
    font-weight: 700;
    line-height: 1.1;
}

.mobile-dashboard-btn-sub {
    font-size: 0.72rem;
    color: var(--mobile-muted);
    line-height: 1.2;
}

.mobile-hero--compact {
    padding-bottom: 4px;
}

.mobile-hero--compact .mobile-summary-grid {
    display: none;
}

.mobile-cash-panel {
    margin-top: 8px;
}

.mobile-booking-panel {
    margin-top: 8px;
}

.mobile-booking-toggle-btn {
    display: flex;
    align-items: center;
    gap: 14px;
    width: 100%;
    padding: 16px;
    border: 1px solid rgba(248, 113, 113, 0.28);
    border-radius: 18px;
    background: linear-gradient(135deg, rgba(248, 113, 113, 0.12), rgba(255, 107, 74, 0.08));
    color: var(--mobile-text);
    text-align: left;
    cursor: pointer;
}

.mobile-booking-toggle-btn.is-closed {
    border-color: rgba(52, 211, 153, 0.28);
    background: linear-gradient(135deg, rgba(52, 211, 153, 0.12), rgba(34, 197, 94, 0.08));
}

.mobile-booking-toggle-btn.is-loading {
    opacity: 0.72;
    pointer-events: none;
}

.mobile-booking-toggle-btn__icon {
    width: 48px;
    height: 48px;
    display: grid;
    place-items: center;
    border-radius: 14px;
    background: rgba(248, 113, 113, 0.18);
    color: #fecaca;
    font-size: 1.2rem;
    flex: 0 0 auto;
}

.mobile-booking-toggle-btn.is-closed .mobile-booking-toggle-btn__icon {
    background: rgba(52, 211, 153, 0.18);
    color: #6ee7b7;
}

.mobile-booking-day-toggle {
    display: grid;
    gap: 12px;
    padding: 16px;
    border: 1px solid rgba(248, 113, 113, 0.28);
    border-radius: 18px;
    background: linear-gradient(135deg, rgba(248, 113, 113, 0.12), rgba(255, 107, 74, 0.08));
}

.mobile-booking-day-toggle.is-open {
    border-color: rgba(52, 211, 153, 0.28);
    background: linear-gradient(135deg, rgba(52, 211, 153, 0.12), rgba(34, 197, 94, 0.08));
}

.mobile-booking-day-toggle__row {
    display: flex;
    align-items: center;
    gap: 14px;
}

.mobile-booking-day-toggle__copy {
    display: grid;
    gap: 4px;
}

.mobile-booking-day-toggle__copy strong {
    font-size: 0.98rem;
}

.mobile-booking-day-toggle__copy small {
    color: var(--mobile-muted);
    font-size: 0.82rem;
}

.mobile-booking-day-toggle__reason {
    display: grid;
    gap: 8px;
    font-size: 0.78rem;
    color: var(--mobile-muted);
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.mobile-agenda-switch {
    position: relative;
    display: inline-flex;
    flex: 0 0 auto;
}

.mobile-agenda-switch input {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
}

.mobile-agenda-switch__track {
    width: 52px;
    height: 30px;
    border-radius: 999px;
    background: #334155;
    border: 1px solid rgba(255, 255, 255, 0.08);
    position: relative;
    cursor: pointer;
}

.mobile-agenda-switch__track::after {
    content: "";
    position: absolute;
    top: 3px;
    left: 3px;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: #fff;
    transition: transform 0.2s ease;
}

.mobile-agenda-switch input:checked + .mobile-agenda-switch__track {
    background: #ef4444;
    border-color: rgba(239, 68, 68, 0.45);
}

.mobile-agenda-switch input:checked + .mobile-agenda-switch__track::after {
    transform: translateX(22px);
}

.mobile-booking-toggle-btn__copy {
    display: grid;
    gap: 4px;
    flex: 1;
    min-width: 0;
}

.mobile-booking-toggle-btn__copy strong {
    font-size: 1.05rem;
}

.mobile-booking-toggle-btn__copy small {
    color: var(--mobile-muted);
    font-size: 0.78rem;
    line-height: 1.35;
}

.mobile-booking-toggle-btn__arrow {
    color: var(--mobile-muted);
    flex: 0 0 auto;
}

.mobile-cash-btn {
    display: flex;
    align-items: center;
    gap: 14px;
    width: 100%;
    padding: 16px;
    border: 1px solid rgba(250, 204, 21, 0.28);
    border-radius: 18px;
    background: linear-gradient(135deg, rgba(250, 204, 21, 0.14), rgba(255, 107, 74, 0.08));
    color: var(--mobile-text);
    text-align: left;
    cursor: pointer;
}

.mobile-cash-btn__icon {
    width: 48px;
    height: 48px;
    display: grid;
    place-items: center;
    border-radius: 14px;
    background: rgba(250, 204, 21, 0.18);
    color: #fde68a;
    font-size: 1.2rem;
    flex: 0 0 auto;
}

.mobile-cash-btn__copy {
    display: grid;
    gap: 4px;
    flex: 1;
    min-width: 0;
}

.mobile-cash-btn__copy strong {
    font-size: 1.05rem;
}

.mobile-cash-btn__copy small {
    color: var(--mobile-muted);
    font-size: 0.78rem;
    line-height: 1.35;
}

.mobile-cash-btn__arrow {
    color: var(--mobile-muted);
    flex: 0 0 auto;
}

.mobile-cash-modal {
    position: fixed;
    inset: 0;
    z-index: 2400;
    display: grid;
    place-items: center center;
    padding: 16px;
}

.mobile-cash-modal[hidden] {
    display: none !important;
}

.mobile-cash-modal__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(2, 6, 23, 0.72);
    backdrop-filter: blur(8px);
}

.mobile-cash-modal__sheet {
    position: relative;
    width: min(100%, 520px);
    max-height: min(92vh, 720px);
    display: grid;
    grid-template-rows: auto auto 1fr;
    border-radius: 24px;
    border: 1px solid rgba(250, 204, 21, 0.22);
    background: linear-gradient(180deg, rgba(17, 18, 25, 0.98), rgba(8, 9, 12, 0.99));
    box-shadow: 0 24px 64px rgba(0, 0, 0, 0.45);
    overflow: hidden;
}

.mobile-cash-modal__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 16px 18px;
    border-bottom: 1px solid var(--app-form-card-border);
}

.mobile-cash-modal__head h2 {
    margin: 0;
    font-size: 1.05rem;
    display: flex;
    align-items: center;
    gap: 8px;
}

.mobile-cash-modal__head h2 i {
    color: #facc15;
}

.mobile-cash-modal__close {
    width: 36px;
    height: 36px;
    border: 0;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.06);
    color: var(--mobile-muted);
}

.mobile-cash-modal__date {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px 18px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.mobile-cash-date-arrow,
.mobile-cash-date-today {
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: rgba(255, 255, 255, 0.04);
    color: var(--mobile-text);
    border-radius: 12px;
    min-height: 40px;
    padding: 0 12px;
}

.mobile-cash-date-display {
    position: relative;
    flex: 1;
    display: grid;
    place-items: center;
    min-height: 40px;
    border-radius: 12px;
    border: 1px solid rgba(250, 204, 21, 0.22);
    background: rgba(250, 204, 21, 0.08);
    font-weight: 700;
}

.mobile-cash-date-input {
    position: absolute;
    inset: 0;
    opacity: 0;
}

.mobile-cash-date-today.is-active {
    border-color: rgba(250, 204, 21, 0.35);
    background: rgba(250, 204, 21, 0.16);
}

.mobile-cash-modal__body {
    overflow: auto;
    padding: 14px 18px calc(18px + env(safe-area-inset-bottom, 0px));
}

.mobile-cash-loading,
.mobile-cash-empty {
    text-align: center;
    color: var(--mobile-muted);
    padding: 20px 0;
    font-size: 0.88rem;
}

.mobile-cash-summary {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    margin-bottom: 14px;
}

.mobile-cash-summary-card {
    display: grid;
    gap: 4px;
    padding: 12px 10px;
    border-radius: 14px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    background: rgba(255, 255, 255, 0.03);
}

.mobile-cash-summary-card span {
    font-size: 0.68rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--mobile-muted);
}

.mobile-cash-summary-card strong {
    font-size: 0.92rem;
}

.mobile-cash-summary-card small {
    font-size: 0.68rem;
    color: var(--mobile-muted);
}

.mobile-cash-summary-card--in strong { color: #9ff7ce; }
.mobile-cash-summary-card--out strong { color: #ffc5b7; }
.mobile-cash-summary-card--net strong { color: #fde68a; }
.mobile-cash-summary-card--pending strong { color: #fdba74; }
.mobile-cash-amount--pending { color: #fdba74; }

.mobile-cash-block {
    display: grid;
    gap: 8px;
    margin-bottom: 14px;
}

.mobile-cash-block h3 {
    margin: 0;
    font-size: 0.78rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--mobile-muted);
}

.mobile-cash-row {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
    padding: 10px 12px;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.03);
    font-size: 0.82rem;
}

.mobile-cash-row strong,
.mobile-cash-row .mobile-cash-amount {
    white-space: nowrap;
}

.mobile-cash-row small {
    display: block;
    color: var(--mobile-muted);
    margin-top: 2px;
}

.mobile-cash-amount--in { color: #9ff7ce; font-weight: 700; }
.mobile-cash-amount--out { color: #ffc5b7; font-weight: 700; }

.mobile-finance-summary {
    margin-top: 8px;
}

.mobile-finance-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-top: 2px;
}

.mobile-finance-card {
    display: grid;
    gap: 5px;
    min-height: 92px;
    padding: 14px;
    border-radius: 16px;
    border: 1px solid rgba(255, 255, 255, 0.07);
    background: rgba(255, 255, 255, 0.035);
}

.mobile-finance-card span {
    color: var(--mobile-muted);
    font-size: 0.72rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    font-weight: 700;
}

.mobile-finance-card strong {
    color: var(--mobile-text);
    font-size: 1.05rem;
    line-height: 1.1;
}

.mobile-finance-card small {
    color: var(--mobile-muted);
    font-size: 0.72rem;
}

.mobile-finance-card--income {
    border-color: rgba(34, 197, 94, 0.22);
    background: rgba(34, 197, 94, 0.08);
}

.mobile-finance-card--balance {
    border-color: rgba(255, 107, 74, 0.22);
    background: rgba(255, 107, 74, 0.08);
}

.mobile-finance-card--income strong {
    color: #9ff7ce;
}

.mobile-finance-card--balance strong {
    color: #ffb19d;
}

.mobile-shortcuts-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin-top: 4px;
}

.mobile-shortcut-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
    padding: 14px 6px;
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.05);
    border-radius: 14px;
    text-decoration: none;
    color: var(--mobile-muted);
    font-size: 0.7rem;
    text-align: center;
    transition: background 0.15s, color 0.15s;
    -webkit-tap-highlight-color: transparent;
    min-height: 44px;
}

.mobile-shortcut-item i {
    font-size: 1.15rem;
    color: var(--mobile-text);
    opacity: 0.7;
}

.mobile-shortcut-item:active {
    background: rgba(255, 107, 74, 0.1);
    color: #ffb19d;
}

.mobile-shortcut-item:active i {
    color: var(--mobile-accent);
    opacity: 1;
}

.mobile-status-badge.confirmed {
    background: rgba(37, 99, 235, 0.18);
    color: #93c5fd;
}

.mobile-status-badge.cancelled {
    background: rgba(107, 114, 128, 0.15);
    color: #9ca3af;
}

@media (max-width: 360px) {
    .mobile-shortcuts-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

/* PDV: checkout e modais acima da barra inferior */
.mobile-screen--pdv .pdvm-checkout-overlay {
    padding-bottom: env(safe-area-inset-bottom, 0px);
}

.mobile-screen--pdv .pdvm-checkout-panel {
    max-height: min(92dvh, 92vh);
    padding-bottom: calc(12px + env(safe-area-inset-bottom, 0px));
}

.mobile-screen--pdv .pdvm-cart-bar {
    top: env(safe-area-inset-top, 0px);
}

@media (max-width: 420px) {
    .pdvm-row2,
    .pdvm-type-row,
    .pdvm-payments-grid {
        grid-template-columns: 1fr;
    }

    .pdvm-payments-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* Modais e FAB: respeitam safe-area + bottom nav */
body.mobile-app-body .modal-overlay,
body.mobile-app-body .mobile-wa-modal-overlay,
body.mobile-app-body .pdvm-checkout-overlay {
    padding-bottom: env(safe-area-inset-bottom, 0px);
}

body.mobile-app-body .app-mobile-fab {
    bottom: calc(var(--mobile-bottom-nav-height) + env(safe-area-inset-bottom, 0px) + 16px);
}

body.mobile-app-body .mobile-toast {
    bottom: calc(var(--mobile-bottom-nav-height) + env(safe-area-inset-bottom, 0px) + var(--mobile-bottom-nav-gap) + 8px);
    max-width: min(520px, calc(100vw - 32px));
    text-align: center;
}

/*
 * Cadastro cliente + Entrada no app-mobile:
 * o footer do wizard (Voltar/Continuar) e a barra fixa .app-bottom-bar (Proximo)
 * estavam juntos e se sobrepunham â€” isso â€œtravavaâ€ toques e cortava a UI.
 */
body.mobile-app-body.mobile-screen--cadastro-cliente .app-bottom-bar,
body.mobile-app-body.mobile-screen--entrada .app-bottom-bar {
    display: none !important;
}

/*
 * Empurra Continuar para o rodapÃ© da viewport nas etapas curtas (Busca),
 * evitando que o botÃ£o fique colado sob Placa/Nome e cubra o dropdown.
 * SÃ³ em Entrada: o cadastro tem vÃ¡rios panels irmÃ£os no wizard.
 */
body.mobile-app-body.mobile-screen--entrada .flow-wizard-setup__footer {
    position: relative;
    z-index: 45;
    margin-top: 14px;
    padding: 12px;
    padding-bottom: calc(12px + env(safe-area-inset-bottom, 0px));
    border: 1px solid var(--mobile-border);
    border-radius: 18px;
    /* Fundo opaco no lugar de backdrop-filter: o blur em elemento sticky forÃ§a
       recomposiÃ§Ã£o da pÃ¡gina inteira a cada frame de scroll/teclado no Android,
       travando o toque em inputs (ex.: nome do cliente). */
    background: var(--app-wizard-footer-bg);
    box-shadow: 0 -12px 28px rgba(0, 0, 0, 0.28);
}

body.mobile-app-body.mobile-screen--cadastro-cliente .flow-wizard-setup__footer {
    position: relative;
    z-index: 1;
    width: 100%;
    max-width: 720px;
    margin: 12px 0 0 !important;
    padding: 0 !important;
    padding-bottom: env(safe-area-inset-bottom, 0px) !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}
body.mobile-app-body.mobile-screen--entrada .flow-wizard-setup__footer[hidden] {
    display: none !important;
}

/* Com dropdown de busca aberto, o Continuar nÃ£o pode cobrir os resultados */
body.mobile-app-body.mobile-screen--entrada .flow-wizard-setup:has(.entry-plate-dropdown.show) .flow-wizard-setup__footer,
body.mobile-app-body.mobile-screen--entrada .flow-wizard-setup:has(.entry-name-dropdown.show) .flow-wizard-setup__footer {
    z-index: 1;
}

body.mobile-app-body.mobile-screen--cadastro-cliente .mobile-main-content,
body.mobile-app-body.mobile-screen--entrada .mobile-main-content {
    padding-bottom: calc(48px + env(safe-area-inset-bottom, 0px));
}

body.mobile-app-body.mobile-screen--cadastro-cliente .staff-assistant-root.is-mobile-app,
body.mobile-app-body.mobile-screen--entrada .staff-assistant-root.is-mobile-app {
    bottom: calc(5.75rem + env(safe-area-inset-bottom, 0px));
}

body.mobile-app-body.mobile-screen--cadastro-cliente .customer-upload-box input[type="file"],
body.mobile-app-body.mobile-screen--entrada .customer-upload-box input[type="file"] {
    width: 100%;
    max-width: 100%;
    min-width: 0;
}

body.mobile-app-body.mobile-screen--cadastro-cliente .customer-upload-pick {
    display: grid;
    gap: 8px;
    width: 100%;
    min-width: 0;
}

body.mobile-app-body.mobile-screen--cadastro-cliente .customer-upload-pick__control {
    position: relative;
    display: block;
    width: 100%;
    min-width: 0;
}

body.mobile-app-body.mobile-screen--cadastro-cliente .customer-upload-pick__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    min-height: 48px;
    padding: 0 14px;
    border-radius: 14px;
    border: 1px solid rgba(255, 255, 255, 0.12);
    background: rgba(255, 255, 255, 0.06);
    color: #fff;
    font-weight: 800;
    pointer-events: none;
}

body.mobile-app-body.mobile-screen--cadastro-cliente .customer-upload-pick__control input[type="file"] {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    cursor: pointer;
    z-index: 2;
    font-size: 0;
}

body.mobile-app-body.mobile-screen--cadastro-cliente .customer-upload-filename {
    display: block;
    color: #94a3b8;
    font-size: 0.82rem;
    line-height: 1.35;
    word-break: break-word;
    min-width: 0;
}

/* Teclado virtual: reduz salto de layout em formulÃ¡rios longos */
@supports (height: 100dvh) {
    .mobile-app-shell {
        min-height: 100dvh;
    }
}

/* Abas horizontais (assinaturas, agendamentos) */
.mobile-tab-strip {
    display: flex;
    gap: 8px;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    padding: 4px 0 10px;
}

.mobile-tab-strip::-webkit-scrollbar {
    display: none;
}

.mobile-tab-strip a,
.mobile-tab-strip button {
    flex-shrink: 0;
    min-height: 44px;
    padding: 10px 14px;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    background: rgba(255, 255, 255, 0.04);
    color: var(--mobile-muted);
    font-size: 0.82rem;
    font-weight: 700;
    cursor: pointer;
    white-space: nowrap;
}

.mobile-tab-strip a.active,
.mobile-tab-strip button.active {
    border-color: rgba(255, 107, 74, 0.45);
    background: rgba(255, 107, 74, 0.16);
    color: #ffb19d;
}

/* Cadastro cliente: dropdown absoluto sobre o campo (referÃªncia app-mobile) */
.mobile-screen--cadastro-cliente .mobile-register-field .mobile-register-dropdown {
    position: absolute;
    top: calc(100% + 6px);
    left: 0;
    right: 0;
    z-index: 40;
    background: rgba(7, 10, 22, 0.98);
}

.mobile-screen--cadastro-cliente .mobile-register-vehicle-fields {
    position: relative;
    z-index: 0;
}

.mobile-screen--cadastro-cliente .vtype-picker {
    position: relative;
    z-index: 0;
}

.mobile-screen--cadastro-cliente .mobile-register-dropdown-item {
    min-height: 44px;
    touch-action: manipulation;
}

.mobile-appt-tabs {
    display: flex;
    gap: 8px;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    margin: 0 0 14px;
    padding: 4px 0 6px;
}

.mobile-appt-tabs::-webkit-scrollbar {
    display: none;
}

.mobile-appt-tabs a {
    flex: 1 0 auto;
    min-width: max(44%, 140px);
    min-height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 10px 12px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.04);
    color: var(--mobile-muted);
    font-weight: 700;
    font-size: 0.82rem;
    text-decoration: none;
    white-space: nowrap;
}

.mobile-appt-tabs a.is-active {
    border-color: rgba(255, 107, 74, 0.5);
    background: rgba(255, 107, 74, 0.18);
    color: #ffb19d;
}

.mobile-screen--entrada .entry-lookup-button {
    width: 100%;
    min-width: 0;
}

body.mobile-app-body.mobile-screen--entrada .entry-lookup-grid > .entry-field:first-child {
    text-align: center;
    justify-items: center;
}

body.mobile-app-body.mobile-screen--entrada .entry-plate-search-wrap {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    width: 100%;
}

body.mobile-app-body.mobile-screen--entrada .entry-plate-search-wrap .mercosul-plate--input {
    width: min(100%, 320px) !important;
    max-width: 320px !important;
    align-self: center !important;
    margin-inline: auto;
}

body.mobile-app-body.mobile-screen--entrada .entry-plate-search-wrap .mercosul-plate__input {
    text-align: center;
}

body.mobile-app-body.mobile-screen--entrada .entry-plate-search-wrap .entry-plate-dropdown {
    width: min(100%, 320px);
    align-self: stretch;
}

/* Entrada mobile: contenção de largura e respiro interno (cards sem padding quebravam o layout) */
body.mobile-app-body.mobile-screen--entrada .entry-premium.entry-quick-shell,
body.mobile-app-body.mobile-screen--entrada .entry-premium.entry-saas-dashboard {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box;
    overflow-x: clip;
}

body.mobile-app-body.mobile-screen--entrada .flow-wizard-setup,
body.mobile-app-body.mobile-screen--entrada .entry-layout,
body.mobile-app-body.mobile-screen--entrada .entry-main,
body.mobile-app-body.mobile-screen--entrada .entry-lookup-block,
body.mobile-app-body.mobile-screen--entrada .entry-lookup-grid,
body.mobile-app-body.mobile-screen--entrada .entry-lookup-actions-bar,
body.mobile-app-body.mobile-screen--entrada .entry-lookup-or,
body.mobile-app-body.mobile-screen--entrada .quote-timeline.entry-quote-timeline {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
}

body.mobile-app-body.mobile-screen--entrada .flow-wizard-setup .entry-card.flow-wizard-setup__panel,
body.mobile-app-body.mobile-screen--entrada .flow-wizard-setup .entry-card {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    padding: 16px !important;
    border-radius: 18px !important;
    box-sizing: border-box;
    overflow: visible;
}

body.mobile-app-body.mobile-screen--entrada .entry-field,
body.mobile-app-body.mobile-screen--entrada .entry-lookup-grid .entry-field {
    min-width: 0;
    width: 100%;
}

body.mobile-app-body.mobile-screen--entrada .entry-name-input,
body.mobile-app-body.mobile-screen--entrada .entry-field .entry-name-input,
body.mobile-app-body.mobile-screen--entrada .entry-lookup-btn,
body.mobile-app-body.mobile-screen--entrada .entry-lookup-register,
body.mobile-app-body.mobile-screen--entrada .entry-button,
body.mobile-app-body.mobile-screen--entrada .entry-button-link {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
}

body.mobile-app-body.mobile-screen--entrada .entry-feedback.entry-lookup-status {
    padding: 14px 16px;
    box-sizing: border-box;
}

body.mobile-app-body.mobile-screen--entrada .entry-lookup-grid {
    gap: 14px;
}

body.mobile-app-body.mobile-screen--entrada .entry-lookup-actions-bar {
    gap: 12px;
    margin-top: 2px;
}

/* Entrada mobile — shells transparentes (evita blocos quadriculados empilhados) */
body.mobile-app-body.mobile-screen--entrada .entry-premium.entry-quick-shell,
body.mobile-app-body.mobile-screen--entrada .entry-form,
body.mobile-app-body.mobile-screen--entrada .flow-wizard-setup,
body.mobile-app-body.mobile-screen--entrada .entry-layout,
body.mobile-app-body.mobile-screen--entrada .entry-main {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

body.mobile-app-body.mobile-screen--entrada .flow-wizard-setup {
    display: grid;
    gap: 14px;
}

body.mobile-app-body.mobile-screen--entrada .flow-wizard-setup .entry-card .entry-lookup-block,
body.mobile-app-body.mobile-screen--entrada .flow-wizard-setup .entry-card .entry-lookup-block .flow-wizard-step-head,
body.mobile-app-body.mobile-screen--entrada .flow-wizard-setup .entry-card .entry-lookup-block .entry-lookup-head {
    background: transparent !important;
    background-image: none !important;
    border: 0 !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
}

body.mobile-app-body.mobile-screen--entrada .quote-timeline.entry-quote-timeline {
    margin: 0;
}

.mobile-screen--entrada .entry-plate-input:not(.mercosul-plate__input),
.mobile-screen--entrada .entry-name-input {
    font-size: 16px;
    min-height: 52px;
}
.mobile-screen--entrada .entry-plate-input:not(.mercosul-plate__input) {
    font-weight: 600;
    letter-spacing: .06em;
}

@media (max-width: 420px) {
    .mobile-screen--assinaturas .sub-plan-prices,
    .mobile-screen--assinaturas .sub-stat-bar {
        grid-template-columns: 1fr;
    }

    .mobile-screen--assinaturas .mobile-form-grid[style*="repeat(3"] {
        grid-template-columns: 1fr !important;
    }
}

/* Fluxo guiado â€” veÃ­culos APK */
.mobile-vehicle-flow {
    display: grid;
    gap: 14px;
    padding-bottom: 88px;
}

.mv-header {
    padding: 4px 2px 0;
}

.mv-header-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.mv-title {
    margin: 0;
    font-size: 1.35rem;
    font-weight: 800;
    color: var(--mobile-text);
    font-family: 'Outfit', sans-serif;
}

.mv-fleet-pill {
    font-size: 0.72rem;
    font-weight: 700;
    color: var(--mobile-muted);
    padding: 6px 10px;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    background: rgba(255, 255, 255, 0.04);
    white-space: nowrap;
}

.mv-step-plate {
    display: grid;
    gap: 12px;
    padding: 16px;
    border-radius: 20px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    background: linear-gradient(180deg, rgba(18, 18, 24, 0.98), rgba(10, 12, 18, 0.98));
    box-shadow: var(--mobile-shadow);
}

.mv-plate-label {
    margin: 0;
    font-size: 0.88rem;
    font-weight: 700;
    color: var(--mobile-muted);
    text-align: center;
}

.mv-plate-input-wrap {
    position: relative;
    display: grid;
}

.mv-plate-input {
    width: 100%;
    padding: 18px 48px 18px 16px;
    border-radius: 16px;
    border: 2px solid rgba(255, 107, 74, 0.35);
    background: rgba(0, 0, 0, 0.28);
    color: var(--mobile-text);
    font-size: clamp(1.6rem, 8vw, 2rem);
    font-weight: 800;
    letter-spacing: 0.14em;
    text-align: center;
    text-transform: uppercase;
    font-family: 'Outfit', sans-serif;
}

.mv-plate-input:focus {
    outline: none;
    border-color: rgba(255, 107, 74, 0.75);
    box-shadow: 0 0 0 3px rgba(255, 107, 74, 0.15);
}

.mv-plate-input.is-locked {
    opacity: 0.88;
    border-color: rgba(255, 255, 255, 0.12);
}

.mv-plate-clear {
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    width: 36px;
    height: 36px;
    border-radius: 12px;
    border: 1px solid rgba(255, 255, 255, 0.12);
    background: rgba(255, 255, 255, 0.06);
    color: var(--mobile-muted);
    cursor: pointer;
    display: grid;
    place-items: center;
}

.mv-plate-clear:active {
    color: var(--mobile-text);
    border-color: rgba(255, 107, 74, 0.45);
    background: rgba(255, 107, 74, 0.14);
}

.mv-plate-status {
    margin: 0;
    text-align: center;
    font-size: 0.86rem;
    color: var(--mobile-muted);
    min-height: 1.2em;
}

.mv-plate-status.is-success { color: #86efac; }
.mv-plate-status.is-warn { color: #fcd34d; }
.mv-plate-status.is-error { color: #fca5a5; }
.mv-plate-status.is-info { color: #93c5fd; }
.mv-plate-status.is-loading { color: #cbd5e1; }

.mv-plate-actions {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
}

.mv-plate-actions .mobile-button,
.mv-plate-actions .mobile-button-secondary {
    width: min(100%, 300px);
    min-height: 50px;
    justify-content: center;
}

.mv-step-details {
    display: grid;
    gap: 14px;
    padding: 16px;
    border-radius: 20px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    background: var(--mobile-surface);
    box-shadow: var(--mobile-shadow);
}

.mv-flow-badge {
    display: inline-flex;
    align-self: flex-start;
    padding: 6px 12px;
    border-radius: 999px;
    font-size: 0.75rem;
    font-weight: 800;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: #ffb19d;
    background: rgba(255, 107, 74, 0.16);
    border: 1px solid rgba(255, 107, 74, 0.28);
}

.mv-summary {
    display: grid;
    gap: 4px;
    padding: 12px 14px;
    border-radius: 16px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    background: rgba(255, 255, 255, 0.03);
}

.mv-summary-plate {
    font-size: 1.25rem;
    font-weight: 800;
    letter-spacing: 0.1em;
    color: var(--mobile-text);
    font-family: 'Outfit', sans-serif;
}

.mv-summary-meta {
    font-size: 0.86rem;
    color: var(--mobile-muted);
}

.mv-form {
    display: grid;
    gap: 14px;
}

.mv-form-block {
    display: grid;
    gap: 8px;
}

.mv-field-label {
    font-size: 0.82rem;
    font-weight: 700;
    color: var(--mobile-muted);
}

.mobile-vehicle-flow .vtype-picker--mobile-app .vtype-option__label {
    font-size: 10px;
}

.mobile-vehicle-flow.is-fields-locked .vtype-picker,
.mobile-vehicle-flow.is-fields-locked .mv-color-row {
    pointer-events: none;
    opacity: 0.72;
}

.mobile-vehicle-flow.is-fields-locked .modveiculo-fipe__vtype,
.mobile-vehicle-flow.is-fields-locked .modveiculo-fipe__colors {
    pointer-events: none;
    opacity: 0.72;
}
.mobile-vehicle-flow.is-fields-locked .modveiculo-fipe__field .modveiculo-fipe__input {
    pointer-events: none;
    opacity: 0.72;
}

.mv-picker-field {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    width: 100%;
    text-align: left;
    cursor: pointer;
    min-height: 50px;
}

.mv-picker-field:disabled {
    opacity: 0.55;
    cursor: not-allowed;
}

.mv-picker-field span {
    flex: 1;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.mv-actions-top,
.mv-actions-bottom {
    display: grid;
    gap: 10px;
}

.mv-actions-top {
    display: flex;
    justify-content: center;
    padding: 0 0 12px;
}

.mv-actions-top .mobile-button {
    width: min(100%, 300px);
}

.mv-actions-bottom {
    padding: 16px 0 4px;
    margin-top: 4px;
}

.mv-actions-top .mobile-button,
.mv-actions-top .mobile-button-secondary,
.mv-actions-bottom .mobile-button {
    min-height: 52px;
    justify-content: center;
    width: 100%;
}

.mv-fleet-collapse {
    border-radius: 18px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    background: rgba(255, 255, 255, 0.02);
    overflow: hidden;
}

.mv-fleet-collapse summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 14px 16px;
    cursor: pointer;
    list-style: none;
    font-weight: 700;
    color: var(--mobile-text);
}

.mv-fleet-collapse summary::-webkit-details-marker {
    display: none;
}

.mv-fleet-collapse summary::after {
    content: '\f078';
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
    font-size: 0.8rem;
    color: var(--mobile-muted);
    transition: transform 0.2s ease;
}

.mv-fleet-collapse[open] summary::after {
    transform: rotate(180deg);
}

.mv-fleet-body {
    padding: 0 12px 12px;
}

.mv-fleet-list {
    display: grid;
    gap: 10px;
}

.mv-fleet-card {
    padding: 12px;
}

.mv-fleet-more {
    margin: 0;
    text-align: center;
    font-size: 0.82rem;
    color: var(--mobile-muted);
}

.mv-sheet-modal {
    position: fixed;
    inset: 0;
    z-index: 2300;
    display: grid;
    align-items: center;
    justify-items: center;
    padding: 20px;
    background: rgba(2, 6, 23, 0.66);
    backdrop-filter: blur(10px);
}

.mv-sheet-modal[hidden] {
    display: none !important;
}

.mv-bottom-sheet {
    width: min(100%, 520px);
    max-height: min(82vh, 640px);
    display: grid;
    grid-template-rows: auto auto minmax(120px, 1fr) auto;
    gap: 12px;
    padding: 16px;
    border-radius: 22px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: linear-gradient(180deg, rgba(18, 18, 24, 0.98), rgba(8, 10, 16, 0.98));
    box-shadow: 0 24px 64px rgba(0, 0, 0, 0.55);
}

.mv-sheet-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
}

.mv-sheet-head strong {
    color: var(--mobile-text);
    font-size: 1.02rem;
}

.mv-sheet-close {
    width: 40px;
    height: 40px;
    border-radius: 14px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: rgba(255, 255, 255, 0.05);
    color: var(--mobile-text);
    cursor: pointer;
}

.mv-sheet-results {
    display: grid;
    gap: 8px;
    overflow: auto;
    align-content: start;
    max-height: min(50vh, 380px);
    padding-right: 2px;
}

.mv-sheet-option {
    width: 100%;
    min-height: 46px;
    padding: 12px 14px;
    border-radius: 14px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    background: rgba(255, 255, 255, 0.04);
    color: var(--mobile-text);
    text-align: left;
    font-weight: 700;
    cursor: pointer;
}

.mv-sheet-option:active {
    border-color: rgba(255, 107, 74, 0.45);
    background: rgba(255, 107, 74, 0.13);
}

/* Ajustes responsivos finais para a versao mobile no navegador, tablet e APK. */
.mobile-app-body,
.mobile-app-body * {
    min-width: 0;
}

.mobile-app-shell {
    width: min(100%, 520px);
}

.mobile-main-content,
.mobile-panel,
.mobile-form-panel,
.mobile-list-card,
.mobile-detail-panel,
.mobile-hero {
    min-width: 0;
}

.mobile-bottom-nav {
    max-width: min(100%, 520px);
}

@media (min-width: 700px) {
    .mobile-app-shell {
        width: min(100%, 720px);
        max-width: 720px;
        padding-inline: 22px;
    }

    .mobile-bottom-nav,
    .app-bottom-bar {
        max-width: 720px;
    }

    body:not(.mobile-screen--cadastro-cliente):not(.mobile-screen--entrada) .mobile-form-grid.two-columns,
    .mobile-detail-grid.two-columns,
    .mobile-summary-grid,
    .mobile-stat-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .mobile-search-form--live,
    .mobile-search-form--sheet,
    .mobile-search-form--stack {
        grid-template-columns: minmax(0, 1fr) auto;
        align-items: end;
    }

    .mobile-search-form--live .mobile-button-secondary,
    .mobile-search-form--sheet .mobile-button-secondary,
    .mobile-search-form--stack .mobile-button-secondary {
        width: auto;
        min-width: 148px;
    }
}

@media (min-width: 980px) {
    .mobile-app-shell {
        width: min(100%, 860px);
        max-width: 860px;
    }

    .mobile-bottom-nav,
    .app-bottom-bar {
        max-width: 860px;
    }
}

@media (max-width: 520px) {
    .mobile-bottom-nav {
        grid-auto-columns: minmax(72px, 1fr) !important;
        justify-content: start !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        padding-inline: 10px;
    }

    .mobile-bottom-nav a,
    .mobile-bottom-nav--7 a {
        min-width: 72px !important;
        max-width: 84px !important;
        padding-inline: 4px;
    }

    .mobile-bottom-nav a span {
        max-width: 72px;
    }
}

@media (max-width: 390px) {
    .mobile-app-shell {
        padding-inline: 12px;
    }

    .mobile-hero,
    .mobile-panel,
    .mobile-form-panel,
    .mobile-list-card,
    .mobile-detail-panel,
    .mobile-auth-card {
        border-radius: 20px;
        padding: 15px;
    }

    .mobile-brand {
        gap: 9px;
    }

    .mobile-brand .company-logo-bg-wrap img,
    .mobile-brand > img {
        max-height: 44px;
        max-width: min(132px, 42vw);
    }
}

/* Cadastro cliente (app-mobile): forÃ§a coluna Ãºnica em qualquer largura de tela */
.mobile-screen--cadastro-cliente .mobile-register-flow .mobile-form-grid,
.mobile-screen--cadastro-cliente .mobile-register-flow .mobile-form-grid.two-columns,
.mobile-screen--cadastro-cliente .mobile-register-customer-panel .mobile-form-grid,
.mobile-screen--cadastro-cliente .mobile-register-customer-panel .mobile-form-label {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    min-width: 0;
}

.mobile-screen--cadastro-cliente .mobile-register-customer-panel .mobile-form-label > .mobile-field,
.mobile-screen--cadastro-cliente .mobile-register-customer-panel .mobile-form-label > input {
    width: 100% !important;
    min-width: 0;
    max-width: 100%;
}

.mobile-agenda-head__actions {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
}

.mobile-agenda-print-btn {
    min-width: 42px;
    min-height: 42px;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.mobile-agenda-toolbar {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin-bottom: 12px;
}

.mobile-agenda-toolbar__btn {
    min-height: 40px;
    border-radius: 12px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: rgba(255, 255, 255, 0.04);
    color: #e2e8f0;
    font: inherit;
    font-size: 0.78rem;
    font-weight: 700;
}

.mobile-agenda-quick-reserve {
    display: grid;
    gap: 10px;
    margin-top: 10px;
    padding-top: 10px;
    border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.mobile-agenda-slot--past {
    opacity: 0.55;
}

.mobile-agenda-slot__badge {
    font-size: 0.62rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: #94a3b8;
    text-align: center;
}

.mobile-agenda-slot__status {
    color: #93c5fd;
    font-size: 0.72rem;
}

.mobile-agenda-slot__action {
    min-height: 36px;
    padding: 0 10px;
    border-radius: 10px;
    border: 1px solid rgba(255, 255, 255, 0.12);
    background: rgba(255, 255, 255, 0.05);
    color: #e2e8f0;
    font: inherit;
    font-size: 0.72rem;
    font-weight: 700;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.mobile-agenda-slot__action--entry {
    border-color: rgba(52, 211, 153, 0.35);
    color: #6ee7b7;
}

.mobile-agenda-slot__action--remove {
    border-color: rgba(248, 113, 113, 0.35);
    color: #fca5a5;
}

.mobile-agenda-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
}

.mobile-agenda-new-btn {
    flex-shrink: 0;
    min-height: 42px;
    padding: 0 14px;
    font-size: 0.82rem;
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.mobile-agenda-panel {
    margin-top: 8px;
}

.mobile-agenda-block-form {
    display: grid;
    gap: 10px;
}

.mobile-agenda-block-form__fields {
    display: grid;
    gap: 8px;
}

.mobile-agenda-block-form__btn {
    width: 100%;
    justify-content: center;
}

.mobile-agenda-grid {
    display: grid;
    gap: 10px;
    margin-top: 12px;
}

.mobile-agenda-slot {
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr);
    gap: 12px;
    padding: 14px;
    border-radius: 18px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    background: rgba(15, 23, 42, 0.72);
    transition: border-color .15s, background .15s, box-shadow .15s;
}

.mobile-agenda-slot--selectable {
    cursor: pointer;
}

.mobile-agenda-slot.is-selected {
    border-color: rgba(96, 165, 250, 0.45);
    box-shadow: 0 0 0 1px rgba(96, 165, 250, 0.18);
}

.mobile-agenda-slot--free {
    border-color: rgba(52, 211, 153, 0.38);
    background: rgba(52, 211, 153, 0.12);
}

.mobile-agenda-slot--busy,
.mobile-agenda-slot--reserved {
    border-color: rgba(96, 165, 250, 0.38);
    background: rgba(96, 165, 250, 0.12);
}

.mobile-agenda-slot--closed {
    border-color: rgba(248, 113, 113, 0.38);
    background: rgba(248, 113, 113, 0.12);
}

.mobile-agenda-slot__check {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    cursor: pointer;
}

.mobile-agenda-slot__checkbox {
    width: 18px;
    height: 18px;
    accent-color: #60a5fa;
}

.mobile-agenda-slot__checkbox:disabled {
    opacity: 0.4;
    cursor: not-allowed;
}

.mobile-agenda-slot__time {
    font-size: 1.15rem;
    font-weight: 700;
    color: #f8fafc;
    line-height: 1.1;
}

.mobile-agenda-slot__state {
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: #94a3b8;
    margin-bottom: 8px;
}

.mobile-agenda-slot--free .mobile-agenda-slot__state {
    color: #6ee7b7;
}

.mobile-agenda-slot--busy .mobile-agenda-slot__state,
.mobile-agenda-slot--reserved .mobile-agenda-slot__state {
    color: #93c5fd;
}

.mobile-agenda-slot--closed .mobile-agenda-slot__state {
    color: #fca5a5;
}

.mobile-agenda-slot__item {
    font-size: 0.82rem;
    color: #cbd5e1;
    line-height: 1.45;
    margin-bottom: 6px;
}

.mobile-agenda-slot__item strong {
    color: #f8fafc;
    display: block;
}

.mobile-agenda-slot__actions {
    display: grid;
    gap: 8px;
    margin-top: 10px;
}

.mobile-agenda-slot__reserve {
    display: grid;
    gap: 8px;
}

.mobile-agenda-slot__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 38px;
    padding: 0 12px;
    border-radius: 12px;
    border: 1px solid rgba(255, 255, 255, 0.12);
    background: rgba(255, 255, 255, 0.06);
    color: #f8fafc;
    font-size: 0.8rem;
    font-weight: 600;
    cursor: pointer;
}

.mobile-agenda-slot__btn--warn {
    border-color: rgba(250, 204, 21, 0.28);
    background: rgba(250, 204, 21, 0.12);
    color: #fde68a;
}

.mobile-agenda-slot__btn--ok {
    border-color: rgba(52, 211, 153, 0.28);
    background: rgba(52, 211, 153, 0.12);
    color: #6ee7b7;
}

.mobile-field--compact {
    min-height: 38px;
    font-size: 0.82rem;
}

.mobile-agenda-bulk {
    display: grid;
    gap: 10px;
    margin: 0 16px 12px;
    padding: 14px;
    border-radius: 18px;
    border: 1px solid rgba(96, 165, 250, 0.22);
    background: rgba(96, 165, 250, 0.08);
}

.mobile-agenda-bulk[hidden] {
    display: none;
}

.mobile-agenda-bulk__count {
    font-size: 0.78rem;
    font-weight: 700;
    color: #dbeafe;
}

.mobile-agenda-bulk__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
}

.mobile-agenda-bulk__form {
    display: inline-flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
    margin: 0;
}

.mobile-agenda-bulk__reserve {
    padding: 4px 6px 4px 8px;
    border-radius: 12px;
    border: 1px solid rgba(96, 165, 250, 0.22);
    background: rgba(96, 165, 250, 0.06);
}

.mobile-agenda-bulk__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-height: 38px;
    padding: 0 12px;
    border-radius: 12px;
    border: 1px solid rgba(255, 255, 255, 0.12);
    background: rgba(255, 255, 255, 0.06);
    color: #f8fafc;
    font-size: 0.8rem;
    font-weight: 600;
    cursor: pointer;
    text-decoration: none;
}

.mobile-agenda-bulk__btn:disabled {
    opacity: 0.45;
    cursor: not-allowed;
}

.mobile-agenda-bulk__btn--warn {
    border-color: rgba(248, 113, 113, 0.28);
    background: rgba(248, 113, 113, 0.12);
    color: #fecaca;
}

.mobile-agenda-bulk__btn--ok {
    border-color: rgba(52, 211, 153, 0.28);
    background: rgba(52, 211, 153, 0.12);
    color: #6ee7b7;
}

.mobile-agenda-bulk__btn--reserve {
    border-color: rgba(96, 165, 250, 0.28);
    background: rgba(96, 165, 250, 0.12);
    color: #93c5fd;
}

.mobile-agenda-bulk__btn--link {
    border-color: rgba(255, 255, 255, 0.14);
}

.mobile-agenda-date-nav {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    margin-top: 14px;
    padding: 8px;
    border-radius: 14px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    background: rgba(255, 255, 255, 0.03);
}

.mobile-agenda-date-nav button {
    min-width: 42px;
    height: 42px;
    border-radius: 12px;
    border: 1px solid rgba(255, 255, 255, 0.12);
    background: rgba(255, 255, 255, 0.06);
    color: var(--mobile-text);
    cursor: pointer;
    padding: 0 12px;
    flex-shrink: 0;
}

.mobile-agenda-date-nav button:disabled {
    opacity: 0.45;
    cursor: default;
}

.mobile-agenda-date-nav input[type="date"] {
    flex: 1 1 148px;
    min-width: 0;
    height: 42px;
    border-radius: 12px;
    border: 1px solid rgba(255, 255, 255, 0.12);
    background: rgba(255, 255, 255, 0.05);
    color: var(--mobile-text);
    padding: 0 12px;
    font-size: 0.9rem;
}

.mobile-agenda-date-badge {
    display: inline-flex;
    margin-top: 8px;
    padding: 6px 10px;
    border-radius: 999px;
    border: 1px dashed rgba(148, 163, 184, 0.35);
    color: var(--mobile-muted);
    font-size: 0.75rem;
}

.mobile-agenda-stats {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-bottom: 14px;
}

.mobile-agenda-stat {
    padding: 14px;
    border-radius: 16px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: rgba(255, 255, 255, 0.03);
}

.mobile-agenda-stat span {
    display: block;
    font-size: 0.72rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--mobile-muted);
}

.mobile-agenda-stat strong {
    display: block;
    margin-top: 6px;
    font-size: 1.5rem;
    color: #fff;
}

.mobile-agenda-stat--free {
    border-color: rgba(52, 211, 153, 0.25);
    background: rgba(52, 211, 153, 0.08);
}

.mobile-agenda-stat--busy {
    border-color: rgba(96, 165, 250, 0.25);
    background: rgba(96, 165, 250, 0.08);
}

.mobile-agenda-stat--closed {
    border-color: rgba(251, 146, 60, 0.25);
    background: rgba(251, 146, 60, 0.08);
}

.mobile-agenda-stat--occ {
    border-color: rgba(167, 139, 250, 0.25);
    background: rgba(167, 139, 250, 0.08);
}

.mobile-booking-day-toggle.is-disabled {
    opacity: 0.55;
    pointer-events: none;
}

.mobile-cal-panel {
    margin-bottom: 14px;
}

.mobile-cal-nav {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 12px;
}

.mobile-cal-nav__btn {
    width: 44px;
    height: 44px;
    border-radius: 14px;
    border: 1px solid rgba(255, 255, 255, 0.12);
    background: rgba(255, 255, 255, 0.06);
    color: var(--mobile-text);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    flex-shrink: 0;
}

.mobile-cal-nav__center {
    flex: 1;
    min-width: 0;
    display: flex;
    justify-content: center;
}

.mobile-cal-nav__label {
    font-size: 1rem;
    font-weight: 800;
    text-transform: capitalize;
    text-align: center;
}

.mobile-cal-nav__picker {
    width: 100%;
    max-width: 240px;
    height: 44px;
    border-radius: 14px;
    border: 1px solid rgba(255, 255, 255, 0.12);
    background: rgba(255, 255, 255, 0.05);
    color: var(--mobile-text);
    padding: 0 14px;
    font-size: 0.95rem;
    font-weight: 800;
    text-transform: capitalize;
}

.mobile-cal-nav__picker--title {
    text-align: center;
}

.mobile-cal-views {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
    margin-bottom: 14px;
}

.mobile-cal-views--three {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.mobile-cal-views__btn {
    min-height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 0 8px;
    border-radius: 12px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: rgba(255, 255, 255, 0.04);
    color: var(--mobile-muted);
    font-size: 0.72rem;
    font-weight: 800;
    text-decoration: none;
}

.mobile-cal-views__btn i {
    font-size: 0.82rem;
}

.mobile-cal-views__btn.is-active {
    border-color: rgba(255, 107, 74, 0.45);
    background: rgba(255, 107, 74, 0.16);
    color: #ffb19d;
}

.mobile-cal-grid {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    gap: 6px;
}

.mobile-cal-dow {
    text-align: center;
    font-size: 0.62rem;
    font-weight: 800;
    color: var(--mobile-muted);
    text-transform: uppercase;
    padding: 6px 2px;
}

.mobile-cal-cell {
    min-height: 78px;
    border-radius: 12px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    background: rgba(255, 255, 255, 0.03);
    padding: 7px 6px;
    display: flex;
    flex-direction: column;
    gap: 4px;
    text-decoration: none;
    color: inherit;
    overflow: hidden;
}

.mobile-cal-cell--blank {
    border: none;
    background: transparent;
    min-height: 0;
    pointer-events: none;
}

.mobile-cal-cell--selected {
    border-color: rgba(255, 107, 74, 0.55);
    box-shadow: 0 0 0 1px rgba(255, 107, 74, 0.25);
}

.mobile-cal-cell--today .mobile-cal-cell__day {
    background: #ff6b4a;
    color: #fff;
}

.mobile-cal-heat-1 {
    background: linear-gradient(135deg, rgba(52, 211, 153, 0.08), rgba(255, 255, 255, 0.03));
}

.mobile-cal-heat-2 {
    background: linear-gradient(135deg, rgba(234, 179, 8, 0.12), rgba(255, 255, 255, 0.03));
    border-color: rgba(234, 179, 8, 0.22);
}

.mobile-cal-heat-3 {
    background: linear-gradient(135deg, rgba(239, 68, 68, 0.14), rgba(255, 255, 255, 0.03));
    border-color: rgba(239, 68, 68, 0.28);
}

.mobile-cal-cell__day {
    align-self: flex-start;
    min-width: 24px;
    height: 24px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    font-size: 0.78rem;
    font-weight: 800;
}

.mobile-cal-cell__body {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}

.mobile-cal-preview {
    display: grid;
    grid-template-columns: 8px 34px minmax(0, 1fr);
    gap: 4px;
    font-size: 0.62rem;
    line-height: 1.2;
    align-items: center;
}

.mobile-cal-preview--compact .mobile-cal-preview__st {
    display: none;
}

.mobile-cal-preview__dot {
    width: 7px;
    height: 7px;
    border-radius: 999px;
    display: inline-block;
}

.mobile-cal-preview__dot--agendado { background: #facc15; }
.mobile-cal-preview__dot--confirmado { background: #93c5fd; }
.mobile-cal-preview__dot--em_atendimento { background: #86efac; }
.mobile-cal-preview__dot--executando { background: #93c5fd; }
.mobile-cal-preview__dot--finalizado { background: #6ee7b7; }
.mobile-cal-preview__dot--entregue { background: #d8b4fe; }
.mobile-cal-preview__dot--concluido { background: #6ee7b7; }
.mobile-cal-preview__dot--cancelado { background: #fca5a5; }
.mobile-cal-preview__dot--outro { background: #94a3b8; }

.mobile-cal-preview__time {
    font-weight: 800;
    color: var(--mobile-muted);
}

.mobile-cal-preview__name {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.mobile-cal-preview__st {
    grid-column: 1 / -1;
    font-size: 0.52rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    padding: 1px 4px;
    border-radius: 4px;
    width: fit-content;
}

.mobile-cal-preview__st--agendado { background: rgba(234, 179, 8, 0.22); color: #facc15; }
.mobile-cal-preview__st--confirmado { background: rgba(59, 130, 246, 0.22); color: #93c5fd; }
.mobile-cal-preview__st--em_atendimento { background: rgba(34, 197, 94, 0.2); color: #86efac; }
.mobile-cal-preview__st--executando { background: rgba(59, 130, 246, 0.22); color: #93c5fd; }
.mobile-cal-preview__st--finalizado { background: rgba(16, 185, 129, 0.18); color: #6ee7b7; }
.mobile-cal-preview__st--entregue { background: rgba(168, 85, 247, 0.2); color: #d8b4fe; }
.mobile-cal-preview__st--concluido { background: rgba(16, 185, 129, 0.18); color: #6ee7b7; }
.mobile-cal-preview__st--cancelado { background: rgba(239, 68, 68, 0.18); color: #fca5a5; }

.mobile-cal-preview__more {
    font-size: 0.58rem;
    color: var(--mobile-muted);
    font-weight: 700;
}

.mobile-cal-count {
    font-size: 0.62rem;
    font-weight: 700;
    color: #6ee7b7;
}

.mobile-cal-cancel {
    font-size: 0.58rem;
    font-weight: 700;
    color: #f87171;
}

.mobile-cal-panel--week {
    padding-bottom: 4px;
}

.mobile-cal-week-list {
    display: grid;
    gap: 12px;
}

.mobile-cal-week-day {
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.03);
    overflow: hidden;
}

.mobile-cal-week-day--today {
    border-color: rgba(255, 107, 74, 0.35);
    box-shadow: 0 0 0 1px rgba(255, 107, 74, 0.12);
}

.mobile-cal-week-day__head {
    display: grid;
    grid-template-columns: auto 1fr auto;
    gap: 10px;
    align-items: center;
    padding: 12px 14px;
    text-decoration: none;
    color: inherit;
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.mobile-cal-week-day__dow {
    font-size: 0.72rem;
    font-weight: 800;
    color: var(--mobile-muted);
    text-transform: uppercase;
}

.mobile-cal-week-day__head strong {
    font-size: 0.95rem;
}

.mobile-cal-week-day__count {
    font-size: 0.72rem;
    font-weight: 800;
    color: #93c5fd;
}

.mobile-cal-week-day__items {
    display: grid;
    gap: 8px;
    padding: 10px 12px 12px;
}

.mobile-cal-week-day__empty {
    margin: 0;
    padding: 12px 14px 14px;
    color: var(--mobile-muted);
    font-size: 0.82rem;
}

.mobile-cal-week-item {
    display: grid;
    grid-template-columns: 46px minmax(0, 1fr) auto;
    gap: 8px;
    align-items: center;
    padding: 10px 12px;
    border-radius: 12px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    background: rgba(2, 6, 19, 0.35);
    text-decoration: none;
    color: inherit;
}

.mobile-cal-week-item__time {
    font-size: 0.82rem;
    font-weight: 800;
    color: var(--mobile-muted);
}

.mobile-cal-week-item__main {
    display: grid;
    gap: 2px;
    min-width: 0;
}

.mobile-cal-week-item__main strong {
    font-size: 0.88rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.mobile-cal-week-item__main small {
    font-size: 0.72rem;
    color: var(--mobile-muted);
}

.mobile-cal-week-item__status {
    font-size: 0.62rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    padding: 4px 8px;
    border-radius: 999px;
    white-space: nowrap;
}

.mobile-cal-week-item--agendado .mobile-cal-week-item__status { background: rgba(234, 179, 8, 0.22); color: #facc15; }
.mobile-cal-week-item--confirmado .mobile-cal-week-item__status { background: rgba(59, 130, 246, 0.22); color: #93c5fd; }
.mobile-cal-week-item--em_atendimento .mobile-cal-week-item__status { background: rgba(34, 197, 94, 0.2); color: #86efac; }
.mobile-cal-week-item--finalizado .mobile-cal-week-item__status,
.mobile-cal-week-item--concluido .mobile-cal-week-item__status { background: rgba(16, 185, 129, 0.18); color: #6ee7b7; }
.mobile-cal-week-item--entregue .mobile-cal-week-item__status { background: rgba(168, 85, 247, 0.2); color: #d8b4fe; }
.mobile-cal-week-item--cancelado .mobile-cal-week-item__status { background: rgba(239, 68, 68, 0.18); color: #fca5a5; }
.mobile-cal-week-item--outro .mobile-cal-week-item__status { background: rgba(148, 163, 184, 0.18); color: #cbd5e1; }

.mobile-cal-panel--day {
    padding-bottom: 4px;
}

.mobile-cal-day-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
    margin-bottom: 14px;
}

.mobile-cal-day-actions .mobile-button {
    flex: 1 1 auto;
    min-height: 44px;
    justify-content: center;
}

.mobile-cal-day-list {
    display: grid;
    gap: 10px;
}

.mobile-cal-day-empty {
    margin: 0;
    padding: 18px 16px;
    border-radius: 16px;
    border: 1px dashed rgba(255, 255, 255, 0.12);
    color: var(--mobile-muted);
    text-align: center;
    font-size: 0.88rem;
}

.mobile-cal-day-item {
    display: grid;
    grid-template-columns: 52px minmax(0, 1fr) auto;
    gap: 10px;
    align-items: center;
    padding: 12px 14px;
    border-radius: 14px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    background: rgba(255, 255, 255, 0.03);
    text-decoration: none;
    color: inherit;
}

.mobile-cal-day-item__time {
    font-size: 0.88rem;
    font-weight: 800;
    color: var(--mobile-muted);
}

.mobile-cal-day-item__main {
    display: grid;
    gap: 2px;
    min-width: 0;
}

.mobile-cal-day-item__main strong {
    font-size: 0.92rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.mobile-cal-day-item__main small {
    font-size: 0.74rem;
    color: var(--mobile-muted);
}

.mobile-cal-day-item__status {
    font-size: 0.62rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    padding: 4px 8px;
    border-radius: 999px;
    white-space: nowrap;
}

.mobile-cal-day-item--agendado .mobile-cal-day-item__status { background: rgba(234, 179, 8, 0.22); color: #facc15; }
.mobile-cal-day-item--confirmado .mobile-cal-day-item__status { background: rgba(59, 130, 246, 0.22); color: #93c5fd; }
.mobile-cal-day-item--em_atendimento .mobile-cal-day-item__status { background: rgba(34, 197, 94, 0.2); color: #86efac; }
.mobile-cal-day-item--finalizado .mobile-cal-day-item__status,
.mobile-cal-day-item--concluido .mobile-cal-day-item__status { background: rgba(16, 185, 129, 0.18); color: #6ee7b7; }
.mobile-cal-day-item--entregue .mobile-cal-day-item__status { background: rgba(168, 85, 247, 0.2); color: #d8b4fe; }
.mobile-cal-day-item--cancelado .mobile-cal-day-item__status { background: rgba(239, 68, 68, 0.18); color: #fca5a5; }
.mobile-cal-day-item--outro .mobile-cal-day-item__status { background: rgba(148, 163, 184, 0.18); color: #cbd5e1; }

.mobile-cal-back {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 10px;
    color: var(--mobile-muted);
    text-decoration: none;
    font-size: 0.86rem;
    font-weight: 700;
}

.mobile-cal-day-links {
    margin-top: 10px;
}

.mobile-actions--wrap {
    flex-wrap: wrap;
}

.mobile-list--day {
    margin-top: 0;
}

/* =========================================================================
   TEMPLATE MODERNO â€” tipografia e botÃµes maiores (app-mobile)
   Bloco de realce final: aumenta legibilidade e Ã¡rea de toque em todo o app.
   ========================================================================= */
:root {
    --app-fs-base: 17px;
    --app-fs-title: 2.1rem;
    --app-fs-section: 1.32rem;
    --app-fs-subtitle: 1.02rem;
    --app-radius-btn: 18px;
    --app-btn-min: 56px;
}

body.mobile-app-body {
    font-size: var(--app-fs-base);
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

/* --- TÃ­tulos e textos maiores --- */
.mobile-screen-title {
    font-size: var(--app-fs-title);
    letter-spacing: -0.01em;
    font-weight: 800;
}

.mobile-screen-subtitle {
    font-size: var(--app-fs-subtitle);
    line-height: 1.45;
}

.mobile-section-title,
.mobile-form-title,
.mobile-card-title {
    font-size: var(--app-fs-section);
    font-weight: 700;
    letter-spacing: -0.005em;
}

.mobile-stat-value {
    font-size: 1.75rem;
}

.mobile-stat-label {
    font-size: 0.9rem;
}

/* --- BotÃµes principais maiores e modernos --- */
.mobile-button,
.mobile-button-secondary,
.mobile-button-inline {
    border-radius: var(--app-radius-btn);
    letter-spacing: 0.005em;
    line-height: 1.15;
}

.mobile-button {
    padding: 18px 22px;
    font-size: 1.1rem;
    font-weight: 800;
    min-height: var(--app-btn-min);
    box-shadow: 0 12px 26px rgba(255, 107, 74, 0.24);
}

.mobile-button:active {
    transform: translateY(1px);
}

.mobile-button-secondary {
    padding: 16px 20px;
    font-size: 1.04rem;
    font-weight: 700;
    min-height: 54px;
}

.mobile-button-inline {
    padding: 13px 18px;
    font-size: 1rem;
    font-weight: 700;
    min-height: 48px;
}

/* --- Campos de formulÃ¡rio maiores --- */
.mobile-field,
.mobile-select,
.mobile-textarea {
    font-size: 1.04rem;
    padding: 16px 16px;
    min-height: 54px;
    border-radius: 16px;
}

.mobile-textarea {
    min-height: 128px;
}

.mobile-form-label {
    font-size: 1rem;
}

/* --- Chips de serviÃ§o maiores --- */
.mobile-service-chip span {
    min-height: 54px;
    padding: 14px 18px;
    font-size: 1.02rem;
    border-radius: 16px;
}

/* --- BotÃµes de aÃ§Ã£o rÃ¡pida da Home maiores --- */
.mobile-dashboard-grid {
    gap: 14px;
}

.mobile-dashboard-btn {
    padding: 24px 14px 20px;
    border-radius: 22px;
    gap: 10px;
}

.mobile-dashboard-btn-icon {
    width: 62px;
    height: 62px;
    border-radius: 18px;
    font-size: 1.65rem;
}

.mobile-dashboard-btn-label {
    font-size: 1.08rem;
}

.mobile-dashboard-btn-sub {
    font-size: 0.82rem;
}

/* --- BotÃµes dos cards (Em atendimento / listas) maiores --- */
.app-mobile-card-btn {
    min-height: 52px;
    padding: 14px 12px;
    font-size: 1rem;
    font-weight: 700;
    border-radius: 14px;
}

.app-mobile-card-btn i {
    font-size: 16px;
}

/* --- Ajuste proporcional para telas muito pequenas (mantÃ©m legÃ­vel sem overflow) --- */
@media (max-width: 380px) {
    :root {
        --app-fs-base: 16px;
        --app-fs-title: 1.7rem;
        --app-fs-section: 1.18rem;
        --app-fs-subtitle: 0.96rem;
    }

    .mobile-button {
        padding: 16px 18px;
        font-size: 1.04rem;
    }

    .mobile-button-secondary {
        padding: 15px 16px;
        font-size: 1rem;
    }

    .mobile-field,
    .mobile-select,
    .mobile-textarea {
        font-size: 16px;
        padding: 14px 14px;
        min-height: 52px;
    }

    .mobile-stat-value {
        font-size: 1.42rem;
    }

    .mobile-dashboard-btn-icon {
        width: 56px;
        height: 56px;
        font-size: 1.5rem;
    }

    .mobile-dashboard-btn-label {
        font-size: 1rem;
    }
}

body.mobile-app-body.mobile-screen--cadastro-cliente.is-mobile-typing .staff-assistant-root.is-mobile-app {
    display: none !important;
}

body.mobile-app-body.mobile-screen--cadastro-cliente.is-mobile-typing .flow-wizard-setup__footer {
    position: static;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    box-shadow: none;
}

body.mobile-app-body.mobile-screen--cadastro-cliente.is-mobile-typing .mobile-field:focus,
body.mobile-app-body.mobile-screen--cadastro-cliente.is-mobile-typing .mobile-select:focus,
body.mobile-app-body.mobile-screen--cadastro-cliente.is-mobile-typing .mobile-textarea:focus,
body.mobile-app-body.mobile-screen--cadastro-cliente.is-mobile-typing .customer-input:focus,
body.mobile-app-body.mobile-screen--cadastro-cliente.is-mobile-typing .customer-select:focus,
body.mobile-app-body.mobile-screen--cadastro-cliente.is-mobile-typing .customer-textarea:focus {
    box-shadow: none;
}

/* Tema claro mobile: azul PFlow como acento, sem alterar a estrutura das telas. */
body.mobile-app-body[data-theme="light"] {
    --mobile-bg: #f5f9ff;
    --mobile-surface: rgba(255, 255, 255, 0.96);
    --mobile-border: rgba(8, 145, 178, 0.18);
    --mobile-text: #0f172a;
    --mobile-muted: #64748b;
    --mobile-accent: #0891b2;
    --mobile-accent-strong: #0284c7;
    --mobile-success: #059669;
    --mobile-warning: #d97706;
    --mobile-shadow: 0 18px 42px rgba(15, 23, 42, 0.12);
    --app-mobile-surface-2: rgba(8, 145, 178, 0.08);
    --app-card-bg: #ffffff;
    --app-card-border: rgba(8, 145, 178, 0.18);
    --app-input-bg: #ffffff;
    --app-input-border: rgba(8, 145, 178, 0.22);
    --app-muted-surface: rgba(8, 145, 178, 0.06);
    --app-wizard-footer-bg: rgba(255, 255, 255, 0.96);
    --app-choice-text: #0f172a;
    --catalog-text: #0f172a;
    --catalog-muted: #64748b;
    --catalog-surface: rgba(8, 145, 178, 0.06);
    --catalog-border: rgba(8, 145, 178, 0.16);
    --primary-color: #0891b2;
    --border: rgba(8, 145, 178, 0.18);
    --panel: rgba(255, 255, 255, 0.96);
    --panel-2: rgba(8, 145, 178, 0.08);
    --text: #0f172a;
    --muted: #64748b;
    --me-text: #0f172a;
    --app-form-card-bg: #ffffff;
    --app-form-card-border: rgba(8, 145, 178, 0.18);
    --app-form-card-text: #0f172a;
    --app-form-card-muted: #64748b;
    --app-form-input-bg: #ffffff;
    --app-form-input-border: rgba(8, 145, 178, 0.22);
    --app-form-input-text: #0f172a;
    --app-form-inner-surface: rgba(8, 145, 178, 0.06);
    background:
        radial-gradient(circle at top left, rgba(8, 145, 178, 0.14), transparent 32%),
        radial-gradient(circle at bottom right, rgba(2, 132, 199, 0.12), transparent 34%),
        linear-gradient(180deg, #ffffff 0%, #f5f9ff 44%, #eaf5ff 100%);
    color: var(--mobile-text);
    color-scheme: light;
}

body.mobile-app-body[data-theme="light"] .mobile-app-shell {
    color: var(--mobile-text);
}

body.mobile-app-body[data-theme="light"] .mobile-brand-label {
    color: #0891b2;
}

/* Tema escuro — stepper/timeline sem resíduos do tema claro */
body.mobile-app-body[data-theme="dark"] .quote-timeline,
body.mobile-app-body[data-theme="dark"] .registration-quote-timeline,
body.mobile-app-body[data-theme="dark"] .entry-quote-timeline,
body.mobile-app-body[data-theme="dark"] .mobile-appt-steps:not(.quote-timeline) {
    background: rgba(255, 255, 255, 0.025) !important;
    background-image: none !important;
    border-color: rgba(255, 255, 255, 0.07) !important;
    box-shadow: none !important;
}

body.mobile-app-body[data-theme="dark"] .quote-timeline__item:not(:last-child):not([hidden])::after {
    background: rgba(255, 255, 255, 0.12) !important;
}

body.mobile-app-body[data-theme="dark"] .quote-timeline__item:has(.is-done):not(:last-child):not([hidden])::after {
    background: linear-gradient(90deg, rgba(255, 107, 74, 0.85), rgba(255, 107, 74, 0.45)) !important;
}

body.mobile-app-body[data-theme="dark"] .quote-timeline__step {
    color: var(--mobile-muted) !important;
    background: transparent !important;
}

body.mobile-app-body[data-theme="dark"] .quote-timeline__step.is-active {
    color: #ffb19d !important;
}

body.mobile-app-body[data-theme="dark"] .quote-timeline__step.is-done {
    color: #9ff7ce !important;
}

body.mobile-app-body[data-theme="dark"] .quote-timeline__marker {
    border-color: rgba(255, 255, 255, 0.18) !important;
    background: #10141b !important;
    box-shadow: 0 0 0 4px rgba(16, 20, 27, 0.9) !important;
}

body.mobile-app-body[data-theme="dark"] .quote-timeline__marker::before {
    background: rgba(255, 255, 255, 0.22) !important;
}

body.mobile-app-body[data-theme="dark"] .quote-timeline__step.is-active .quote-timeline__marker {
    border-color: rgba(255, 107, 74, 0.7) !important;
    background: rgba(255, 107, 74, 0.95) !important;
    box-shadow: 0 0 0 4px rgba(255, 107, 74, 0.16) !important;
    color: #ffffff !important;
}

body.mobile-app-body[data-theme="dark"] .quote-timeline__step.is-active .quote-timeline__marker::before {
    background: #ffffff !important;
}

body.mobile-app-body[data-theme="dark"] .quote-timeline__step.is-done .quote-timeline__marker {
    border-color: rgba(50, 210, 150, 0.55) !important;
    background: rgba(50, 210, 150, 0.18) !important;
    color: #9ff7ce !important;
    box-shadow: none !important;
}

body.mobile-app-body[data-theme="dark"] .quote-timeline__step.is-done .quote-timeline__marker::before {
    content: "✓" !important;
    width: auto !important;
    height: auto !important;
    background: transparent !important;
    color: #9ff7ce !important;
}

body.mobile-app-body[data-theme="dark"] .quote-timeline .mobile-appt-step-pill,
body.mobile-app-body[data-theme="dark"] .quote-timeline .mobile-appt-step-pill.is-active,
body.mobile-app-body[data-theme="dark"] .quote-timeline .mobile-appt-step-pill.is-done {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

body.mobile-app-body[data-theme="dark"] .mobile-appt-steps:not(.quote-timeline) .mobile-appt-step-pill {
    border-color: rgba(255, 255, 255, 0.08) !important;
    background: rgba(255, 255, 255, 0.04) !important;
    color: var(--mobile-muted) !important;
}

body.mobile-app-body[data-theme="dark"] .mobile-appt-steps:not(.quote-timeline) .mobile-appt-step-pill.is-active,
body.mobile-app-body[data-theme="dark"] .mobile-appt-steps:not(.quote-timeline) .mobile-appt-step-pill.is-done {
    border-color: rgba(255, 107, 74, 0.45) !important;
    background: rgba(255, 107, 74, 0.14) !important;
    color: #ffb19d !important;
}

/* Tema escuro — fluxos sem resíduos do tema claro (cards, abas, tokens) */
body.mobile-app-body[data-theme="dark"].mobile-screen--entrada .flow-wizard-setup .entry-card,
body.mobile-app-body[data-theme="dark"].mobile-screen--orcamentos .panel-card.entry-card,
body.mobile-app-body[data-theme="dark"][data-page="cadastro-cliente"] .customer-card.flow-wizard-setup__panel.is-active,
body.mobile-app-body[data-theme="dark"][data-page="cadastro-cliente"] .register-card.flow-wizard-setup__panel.is-active {
    background: var(--app-form-card-bg) !important;
    background-image: none !important;
    border-color: var(--app-form-card-border) !important;
    box-shadow: none !important;
    color: var(--app-form-card-text) !important;
}

body.mobile-app-body[data-theme="dark"].mobile-screen--entrada .entry-feedback.entry-lookup-status,
body.mobile-app-body[data-theme="dark"].mobile-screen--orcamentos .entry-feedback.entry-lookup-status,
body.mobile-app-body[data-theme="dark"][data-page="cadastro-cliente"] .entry-feedback.entry-lookup-status {
    background: rgba(255, 255, 255, 0.04) !important;
    border-color: rgba(255, 255, 255, 0.08) !important;
    box-shadow: none !important;
}

body.mobile-app-body[data-theme="dark"].mobile-screen--entrada .flow-wizard-setup__footer,
body.mobile-app-body[data-theme="dark"].mobile-screen--orcamentos .mobile-appt-step-actions,
body.mobile-app-body[data-theme="dark"].mobile-screen--orcamentos .flow-wizard-setup__footer,
body.mobile-app-body[data-theme="dark"][data-page="cadastro-cliente"] .flow-wizard-setup__footer,
body.mobile-app-body[data-theme="dark"][data-page="cadastro-cliente"] .register-actions {
    background: transparent !important;
    background-image: none !important;
    border-color: rgba(255, 255, 255, 0.08) !important;
    box-shadow: none !important;
}

body.mobile-app-body[data-theme="dark"] .quote-customer-tabs {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 8px !important;
    padding: 4px !important;
    margin-bottom: 4px !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 14px !important;
    background: rgba(255, 255, 255, 0.03) !important;
}

body.mobile-app-body[data-theme="dark"] .quote-customer-tab {
    border: 0 !important;
    border-radius: 10px !important;
    padding: 10px 12px !important;
    color: var(--mobile-muted) !important;
    background: transparent !important;
    box-shadow: none !important;
}

body.mobile-app-body[data-theme="dark"] .quote-customer-tab.is-active {
    background: rgba(255, 107, 74, 0.16) !important;
    color: #ffb19d !important;
    box-shadow: inset 0 0 0 1px rgba(255, 107, 74, 0.28) !important;
}

body.mobile-app-body[data-theme="dark"][data-page="cadastro-cliente"] .customer-browser-tabs {
    border: 0 !important;
    background: transparent !important;
    background-image: none !important;
    overflow: hidden !important;
    padding-inline: 16px !important;
    box-sizing: border-box !important;
    min-width: 0 !important;
}

body.mobile-app-body[data-theme="dark"][data-page="cadastro-cliente"] .customer-browser-tabs__nav {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 8px !important;
    padding: 4px !important;
    margin: 0 0 12px !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 14px !important;
    background: rgba(255, 255, 255, 0.03) !important;
    border-bottom: 0 !important;
    overflow: visible !important;
}

body.mobile-app-body[data-theme="dark"][data-page="cadastro-cliente"] .customer-browser-tab {
    flex: none !important;
    min-width: 0 !important;
    min-height: 44px !important;
    padding: 10px 12px !important;
    border: 0 !important;
    border-radius: 10px !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
    transform: none !important;
    color: var(--mobile-muted) !important;
    background: transparent !important;
    font-size: 13px !important;
    font-weight: 700 !important;
}

body.mobile-app-body[data-theme="dark"][data-page="cadastro-cliente"] .customer-browser-tab:hover {
    background: rgba(255, 255, 255, 0.05) !important;
    color: var(--mobile-text) !important;
    transform: none !important;
}

body.mobile-app-body[data-theme="dark"][data-page="cadastro-cliente"] .customer-browser-tab.is-active {
    background: rgba(255, 107, 74, 0.16) !important;
    color: #ffb19d !important;
    box-shadow: inset 0 0 0 1px rgba(255, 107, 74, 0.28) !important;
    border-bottom: 0 !important;
}

body.mobile-app-body[data-theme="dark"][data-page="cadastro-cliente"] .customer-browser-tab-panel {
    padding: 0 0 16px !important;
    background: transparent !important;
    background-image: none !important;
}

body.mobile-app-body[data-theme="light"] .mobile-hero,
body.mobile-app-body[data-theme="light"] .mobile-panel,
body.mobile-app-body[data-theme="light"] .mobile-form-panel,
body.mobile-app-body[data-theme="light"] .mobile-list-card,
body.mobile-app-body[data-theme="light"] .mobile-detail-panel,
body.mobile-app-body[data-theme="light"] .mobile-auth-card,
body.mobile-app-body[data-theme="light"] .mobile-search-sheet,
body.mobile-app-body[data-theme="light"] .mobile-vehicle-fipe-sheet,
body.mobile-app-body[data-theme="light"] .mobile-card,
body.mobile-app-body[data-theme="light"] .mobile-stat-card,
body.mobile-app-body[data-theme="light"] .mobile-dashboard-btn,
body.mobile-app-body[data-theme="light"] .mobile-register-add-customer,
body.mobile-app-body[data-theme="light"] .mobile-register-vehicle-card,
body.mobile-app-body[data-theme="light"] .mobile-register-add-vehicle,
body.mobile-app-body[data-theme="light"] .sub-plan-card,
body.mobile-app-body[data-theme="light"] .sub-client-card,
body.mobile-app-body[data-theme="light"] .pdvm-card,
body.mobile-app-body[data-theme="light"] .pdvm-sold-card,
body.mobile-app-body[data-theme="light"] .m-chk-card,
body.mobile-app-body[data-theme="light"] .m-chk-item {
    border-color: var(--mobile-border) !important;
    background: var(--mobile-surface) !important;
    color: var(--mobile-text);
    box-shadow: var(--mobile-shadow);
}

body.mobile-app-body[data-theme="light"] .mobile-hero {
    background:
        linear-gradient(135deg, rgba(8, 145, 178, 0.16), rgba(255, 255, 255, 0.94)) !important;
}

body.mobile-app-body[data-theme="light"] .mobile-field,
body.mobile-app-body[data-theme="light"] .mobile-select,
body.mobile-app-body[data-theme="light"] .mobile-textarea,
body.mobile-app-body[data-theme="light"] .mobile-search-trigger,
body.mobile-app-body[data-theme="light"] .mobile-plate-search-field,
body.mobile-app-body[data-theme="light"] .entry-plate-input:not(.mercosul-plate__input),
body.mobile-app-body[data-theme="light"] .entry-quick-shell .field input,
body.mobile-app-body[data-theme="light"] .entry-quick-shell .field select,
body.mobile-app-body[data-theme="light"] .entry-quick-shell .field textarea,
body.mobile-app-body[data-theme="light"] .mobile-pay-select,
body.mobile-app-body[data-theme="light"] .pdvm-search,
body.mobile-app-body[data-theme="light"] .pdvm-input,
body.mobile-app-body[data-theme="light"] .pdvm-select,
body.mobile-app-body[data-theme="light"] .modveiculo-fipe--registration .mobile-field,
body.mobile-app-body[data-theme="light"] .modveiculo-fipe--registration .modveiculo-fipe__input {
    border-color: rgba(8, 145, 178, 0.22) !important;
    background: #ffffff !important;
    color: #0f172a !important;
    -webkit-text-fill-color: #0f172a;
    color-scheme: light;
}

body.mobile-app-body[data-theme="light"] .mobile-field::placeholder,
body.mobile-app-body[data-theme="light"] .mobile-textarea::placeholder,
body.mobile-app-body[data-theme="light"] input::placeholder,
body.mobile-app-body[data-theme="light"] textarea::placeholder {
    color: #94a3b8;
    -webkit-text-fill-color: #94a3b8;
}

body.mobile-app-body[data-theme="light"] .mobile-field:focus,
body.mobile-app-body[data-theme="light"] .mobile-select:focus,
body.mobile-app-body[data-theme="light"] .mobile-textarea:focus,
body.mobile-app-body[data-theme="light"] .entry-plate-input:not(.mercosul-plate__input):focus {
    border-color: rgba(8, 145, 178, 0.58) !important;
    box-shadow: 0 0 0 3px rgba(8, 145, 178, 0.14) !important;
}

body.mobile-app-body[data-theme="light"] .mobile-select option,
body.mobile-app-body[data-theme="light"] .entry-quick-shell .field select option,
body.mobile-app-body[data-theme="light"] .mobile-pay-select option {
    background: #ffffff;
    color: #0f172a;
}

body.mobile-app-body[data-theme="light"] .mobile-button,
body.mobile-app-body[data-theme="light"] .mobile-button-secondary,
body.mobile-app-body[data-theme="light"] .mobile-button-inline,
body.mobile-app-body[data-theme="light"] .entry-quick-shell .secondary-button {
    border-color: rgba(8, 145, 178, 0.22);
}

body.mobile-app-body[data-theme="light"] .mobile-button,
body.mobile-app-body[data-theme="light"] .entry-quick-shell .primary-button,
body.mobile-app-body[data-theme="light"] .mobile-appt-tabs a.is-active,
body.mobile-app-body[data-theme="light"] .sub-client-action.primary {
    background: linear-gradient(135deg, #0891b2, #0284c7) !important;
    color: #ffffff !important;
    box-shadow: 0 14px 30px rgba(8, 145, 178, 0.24);
}

body.mobile-app-body[data-theme="light"] .mobile-button-secondary,
body.mobile-app-body[data-theme="light"] .mobile-button-inline,
body.mobile-app-body[data-theme="light"] .entry-quick-shell .secondary-button {
    background: rgba(255, 255, 255, 0.82) !important;
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"] .mobile-service-chip span,
body.mobile-app-body[data-theme="light"] .mobile-inline-pill,
body.mobile-app-body[data-theme="light"] .mobile-status-badge,
body.mobile-app-body[data-theme="light"] .mobile-appt-step-pill,
body.mobile-app-body[data-theme="light"] .mobile-appt-tabs,
body.mobile-app-body[data-theme="light"] .mobile-register-toggle,
body.mobile-app-body[data-theme="light"] .mobile-register-inline-code,
body.mobile-app-body[data-theme="light"] .mobile-register-code,
body.mobile-app-body[data-theme="light"] .sub-price-cell,
body.mobile-app-body[data-theme="light"] .sub-stat-item,
body.mobile-app-body[data-theme="light"] .mobile-pend-tag,
body.mobile-app-body[data-theme="light"] .pdvm-tabs a {
    border-radius: 14px;
}

body.mobile-app-body[data-theme="light"] .pdvm-cat-btn {
    -webkit-appearance: none;
    appearance: none;
    border-radius: 999px;
}

body.mobile-app-body[data-theme="light"]:not(.mobile-screen--pdv) .pdvm-tabs a,
body.mobile-app-body[data-theme="light"]:not(.mobile-screen--pdv) .pdvm-cat-btn,
body.mobile-app-body[data-theme="light"] .pdvm-radio-card,
body.mobile-app-body[data-theme="light"] .pdvm-pay-btn,
body.mobile-app-body[data-theme="light"] .pdvm-cart-row,
body.mobile-app-body[data-theme="light"] .pdvm-sold-badge {
    border-color: rgba(8, 145, 178, 0.16) !important;
    background: rgba(8, 145, 178, 0.07) !important;
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"] .mobile-service-chip input:checked + span,
body.mobile-app-body[data-theme="light"] .mobile-register-type-btn.active,
body.mobile-app-body[data-theme="light"] .mobile-appt-step-pill.is-active,
body.mobile-app-body[data-theme="light"]:not(.mobile-screen--pdv) .pdvm-cat-btn.active,
body.mobile-app-body[data-theme="light"] .pdvm-radio-card.active,
body.mobile-app-body[data-theme="light"] .pdvm-radio-card--active,
body.mobile-app-body[data-theme="light"] .pdvm-pay-btn.active,
body.mobile-app-body[data-theme="light"] .pdvm-pay-btn--active {
    border-color: rgba(8, 145, 178, 0.42) !important;
    background: rgba(8, 145, 178, 0.14) !important;
    color: #0369a1 !important;
}

body.mobile-app-body[data-theme="light"] .pdvm-pay-btn--active {
    border-color: rgba(5, 150, 105, 0.28) !important;
    background: rgba(5, 150, 105, 0.1) !important;
    color: #047857 !important;
}

body.mobile-app-body[data-theme="light"] .mobile-screen-title,
body.mobile-app-body[data-theme="light"] .mobile-section-title,
body.mobile-app-body[data-theme="light"] .mobile-card-title,
body.mobile-app-body[data-theme="light"] .mobile-form-title,
body.mobile-app-body[data-theme="light"] .mobile-stat-value,
body.mobile-app-body[data-theme="light"] .m-chk-card__value,
body.mobile-app-body[data-theme="light"] .m-chk-item strong,
body.mobile-app-body[data-theme="light"] .entry-services-category h4,
body.mobile-app-body[data-theme="light"] .entry-summary-breakdown-row strong,
body.mobile-app-body[data-theme="light"] .entry-summary-total {
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"] .mobile-screen-subtitle,
body.mobile-app-body[data-theme="light"] .mobile-card-subtitle,
body.mobile-app-body[data-theme="light"] .mobile-card-meta,
body.mobile-app-body[data-theme="light"] .mobile-helper,
body.mobile-app-body[data-theme="light"] .mobile-empty-state,
body.mobile-app-body[data-theme="light"] .mobile-form-label,
body.mobile-app-body[data-theme="light"] .mobile-section-kicker {
    color: #64748b !important;
}

body.mobile-app-body[data-theme="light"] .mobile-lookup-dropdown,
body.mobile-app-body[data-theme="light"] .mobile-register-dropdown,
body.mobile-app-body[data-theme="light"] .pdvm-sold-menu {
    border-color: rgba(8, 145, 178, 0.2) !important;
    background: rgba(255, 255, 255, 0.98) !important;
    color: #0f172a !important;
    box-shadow: 0 20px 45px rgba(15, 23, 42, 0.14);
}

body.mobile-app-body[data-theme="light"] .mobile-lookup-dropdown .mobile-lookup-option:active,
body.mobile-app-body[data-theme="light"] .mobile-lookup-dropdown .mobile-lookup-option.is-active,
body.mobile-app-body[data-theme="light"] .mobile-register-dropdown-item:hover,
body.mobile-app-body[data-theme="light"] .pdvm-sold-menu button:hover,
body.mobile-app-body[data-theme="light"] .pdvm-sold-menu a:hover {
    background: rgba(8, 145, 178, 0.08) !important;
}

body.mobile-app-body[data-theme="light"] .mobile-search-sheet-modal,
body.mobile-app-body[data-theme="light"] .mobile-vehicle-fipe-modal,
body.mobile-app-body[data-theme="light"] .entry-price-modal {
    background: rgba(15, 23, 42, 0.26) !important;
}

body.mobile-app-body[data-theme="light"] .entry-lookup-status,
body.mobile-app-body[data-theme="light"] .entry-avulso-panel,
body.mobile-app-body[data-theme="light"] .entry-delivery-schedule,
body.mobile-app-body[data-theme="light"] .quote-delivery-options,
body.mobile-app-body[data-theme="light"] .quote-delivery-toggle,
body.mobile-app-body[data-theme="light"] .quote-vehicle-option,
body.mobile-app-body[data-theme="light"] .mobile-register-entry-details,
body.mobile-app-body[data-theme="light"] .mobile-register-final-summary,
body.mobile-app-body[data-theme="light"] .mobile-vehicle-panel {
    border-color: rgba(8, 145, 178, 0.18) !important;
    background: rgba(255, 255, 255, 0.86) !important;
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"] .entry-customer-preview {
    background: linear-gradient(165deg, rgba(16, 185, 129, 0.14), rgba(255, 255, 255, 0.96)) !important;
    border-color: rgba(16, 185, 129, 0.32) !important;
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"] .entry-vehicle-pill,
body.mobile-app-body[data-theme="light"] .mobile-register-vehicle-plate {
    background: rgba(8, 145, 178, 0.12) !important;
    border-color: rgba(8, 145, 178, 0.2) !important;
    color: #0369a1 !important;
}

body.mobile-app-body[data-theme="light"] .entry-price-modal__panel,
body.mobile-app-body[data-theme="light"] .pdvm-checkout-panel,
body.mobile-app-body[data-theme="light"] .mobile-register-entry-box {
    background: #ffffff !important;
    border-color: rgba(8, 145, 178, 0.18) !important;
    color: #0f172a !important;
    box-shadow: 0 26px 70px rgba(15, 23, 42, 0.18);
}

body.mobile-app-body[data-theme="light"] .entry-price-modal__field input,
body.mobile-app-body[data-theme="light"] .entry-service-card__price-input {
    background: rgba(8, 145, 178, 0.08) !important;
    border-color: rgba(8, 145, 178, 0.22) !important;
    color: #0369a1 !important;
    -webkit-text-fill-color: #0369a1;
}

body.mobile-app-body[data-theme="light"] .mobile-register-vehicle-hero {
    background: linear-gradient(135deg, #0891b2 0%, #0f172a 86%) !important;
}

body.mobile-app-body[data-theme="light"] .mobile-register-vehicle-panel.is-display-mode .mobile-register-mv-fipe.modveiculo-fipe--registration .modveiculo-fipe__field:not(.modveiculo-fipe__vtype):not(.modveiculo-fipe__plate),
body.mobile-app-body[data-theme="light"] .mobile-register-vehicle-panel.is-display-mode .mobile-register-mv-fipe.modveiculo-fipe--registration .modveiculo-fipe__media {
    display: none !important;
}

body.mobile-app-body[data-theme="light"] .mobile-register-vehicle-spec,
body.mobile-app-body[data-theme="light"] .modveiculo-fipe__spec,
body.mobile-app-body[data-theme="light"] .quote-mv-fipe .modveiculo-fipe__spec {
    background: #ffffff !important;
    border-color: rgba(8, 145, 178, 0.16) !important;
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"] .mobile-auth-topbar {
    background: linear-gradient(180deg, rgba(245, 249, 255, 0.96), rgba(245, 249, 255, 0.82), transparent);
}

body.mobile-app-body[data-theme="light"] .mobile-toast,
body.mobile-app-body[data-theme="light"] .pflow-push-toast {
    background: rgba(15, 23, 42, 0.96);
    color: #ffffff;
}

body.mobile-app-body[data-theme="light"] .staff-assistant-panel,
body.mobile-app-body[data-theme="light"] .appointment-notifications-panel {
    background: #ffffff !important;
    border-color: rgba(8, 145, 178, 0.18) !important;
    color: #0f172a !important;
}

/* Tema claro: sobrescreve estilos inline escuros das views mobile. */
body.mobile-app-body[data-theme="light"][data-page="cadastro-veiculo"] .vehicles-create-card {
    background-color: #ffffff !important;
    background-image: none !important;
    border-color: rgba(8, 145, 178, 0.18) !important;
    color: #0f172a !important;
    box-shadow: var(--mobile-shadow);
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-veiculo"] .vehicles-create-eyebrow {
    background: rgba(8, 145, 178, 0.1) !important;
    border-color: rgba(8, 145, 178, 0.2) !important;
    color: #0369a1 !important;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-veiculo"] .vehicles-create-shell .modveiculo-fipe__field label {
    color: #64748b !important;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-veiculo"] .vehicles-create-shell .modveiculo-fipe__input:not(.mercosul-plate__input) {
    background: #ffffff !important;
    color: #0f172a !important;
    border-color: rgba(8, 145, 178, 0.2) !important;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-veiculo"] .vehicles-create-shell .modveiculo-fipe__help,
body.mobile-app-body[data-theme="light"][data-page="cadastro-veiculo"] .vehicles-create-shell .helper-text {
    color: #64748b !important;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-veiculo"] .vehicles-owner-field {
    background: rgba(8, 145, 178, 0.06) !important;
    border-color: rgba(8, 145, 178, 0.18) !important;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-veiculo"] .vehicles-owner-field__eyebrow {
    color: #0891b2 !important;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-veiculo"] .vehicles-owner-results {
    background: #ffffff !important;
    border-color: rgba(8, 145, 178, 0.18) !important;
    box-shadow: 0 20px 45px rgba(15, 23, 42, 0.14);
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-veiculo"] .vehicles-owner-option {
    color: #0f172a !important;
    border-bottom-color: rgba(8, 145, 178, 0.1) !important;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-veiculo"] .vehicles-owner-option:hover,
body.mobile-app-body[data-theme="light"][data-page="cadastro-veiculo"] .vehicles-owner-option:focus {
    background: rgba(8, 145, 178, 0.08) !important;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-veiculo"] .vehicles-owner-selected {
    background: rgba(8, 145, 178, 0.08) !important;
    border-color: rgba(8, 145, 178, 0.22) !important;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-veiculo"] .vehicles-create-shell .secondary-button {
    background: rgba(255, 255, 255, 0.92) !important;
    color: #0f172a !important;
    border-color: rgba(8, 145, 178, 0.22) !important;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-veiculo"] .vehicles-create-shell .primary-button {
    background: linear-gradient(135deg, #0891b2, #0284c7) !important;
    color: #ffffff !important;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-veiculo"] .vehicles-photo-box {
    background: rgba(8, 145, 178, 0.05) !important;
    border-color: rgba(8, 145, 178, 0.18) !important;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-veiculo"] .vehicles-photo-box__top strong {
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-veiculo"] .vehicles-photo-pick__btn {
    background: rgba(8, 145, 178, 0.08) !important;
    border-color: rgba(8, 145, 178, 0.18) !important;
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"] .mobile-appointment-card {
    background: #ffffff !important;
    border-color: rgba(8, 145, 178, 0.18) !important;
    color: #0f172a !important;
    box-shadow: var(--mobile-shadow);
}

body.mobile-app-body[data-theme="light"] .mobile-appt-customer-panel,
body.mobile-app-body[data-theme="light"] .mobile-appt-lookup-panel,
body.mobile-app-body[data-theme="light"] .mobile-appt-entry-search,
body.mobile-app-body[data-theme="light"] .mobile-appt-entry-suggestions,
body.mobile-app-body[data-theme="light"] .mobile-appt-entry-feedback,
body.mobile-app-body[data-theme="light"] .mobile-appt-entry-preview,
body.mobile-app-body[data-theme="light"] .mobile-appt-date-day,
body.mobile-app-body[data-theme="light"] .mobile-appt-tabs a,
body.mobile-app-body[data-theme="light"] .mobile-register-mv-fipe .mobile-field:not(.mercosul-plate__input) {
    background: rgba(255, 255, 255, 0.94) !important;
    border-color: rgba(8, 145, 178, 0.16) !important;
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"] .mobile-field.is-vehicle-registry-locked,
body.mobile-app-body[data-theme="light"] .modveiculo-fipe__input.is-vehicle-registry-locked {
    background: rgba(8, 145, 178, 0.08) !important;
    color: #64748b !important;
    border-color: rgba(8, 145, 178, 0.16) !important;
}

body.mobile-app-body[data-theme="light"] .entry-quick-shell .panel-card.entry-card,
body.mobile-app-body[data-theme="light"] .entry-summary-card,
body.mobile-app-body[data-theme="light"] .entry-plate-dropdown,
body.mobile-app-body[data-theme="light"] .entry-name-dropdown {
    background: #ffffff !important;
    border-color: rgba(8, 145, 178, 0.18) !important;
    color: #0f172a !important;
    box-shadow: 0 18px 36px rgba(15, 23, 42, 0.12);
}

body.mobile-app-body[data-theme="light"] .entry-plate-option,
body.mobile-app-body[data-theme="light"] .entry-name-option {
    border-bottom-color: rgba(8, 145, 178, 0.1) !important;
}

body.mobile-app-body[data-theme="light"] .entry-plate-option:hover,
body.mobile-app-body[data-theme="light"] .entry-plate-option.active,
body.mobile-app-body[data-theme="light"] .entry-name-option:hover,
body.mobile-app-body[data-theme="light"] .entry-name-option.active {
    background: rgba(8, 145, 178, 0.08) !important;
}

body.mobile-app-body[data-theme="light"] .entry-plate-option strong,
body.mobile-app-body[data-theme="light"] .entry-name-option strong {
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"] .entry-plate-option small,
body.mobile-app-body[data-theme="light"] .entry-name-option small {
    color: #64748b !important;
}

body.mobile-app-body[data-theme="light"] .agenda-reserve-setup__panel {
    background: #ffffff !important;
    border-color: rgba(8, 145, 178, 0.18) !important;
    color: #0f172a !important;
    box-shadow: var(--mobile-shadow);
}

body.mobile-app-body[data-theme="light"] .agenda-reserve-setup__footer .secondary-button {
    background: rgba(255, 255, 255, 0.92) !important;
    color: #0f172a !important;
    border-color: rgba(8, 145, 178, 0.22) !important;
}

body.mobile-app-body[data-theme="light"] .mv-step-plate,
body.mobile-app-body[data-theme="light"] .mv-step-details {
    background: #ffffff !important;
    border-color: rgba(8, 145, 178, 0.18) !important;
    color: #0f172a !important;
    box-shadow: var(--mobile-shadow);
}

body.mobile-app-body[data-theme="light"] .mv-fleet-pill {
    background: rgba(8, 145, 178, 0.08) !important;
    border-color: rgba(8, 145, 178, 0.16) !important;
    color: #64748b !important;
}

body.mobile-app-body[data-theme="light"] .mv-plate-clear {
    background: rgba(8, 145, 178, 0.08) !important;
    border-color: rgba(8, 145, 178, 0.18) !important;
    color: #64748b !important;
}

body.mobile-app-body[data-theme="light"] .pdvm-checkout-panel,
body.mobile-app-body[data-theme="light"] .pdvm-sold-menu {
    background: #ffffff !important;
    border-color: rgba(8, 145, 178, 0.18) !important;
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"] .mobile-pay-select {
    color-scheme: light;
}

body.mobile-app-body[data-theme="light"] .mobile-pay-select option {
    background: #ffffff;
    color: #0f172a;
}

body.mobile-app-body[data-theme="light"] .mobile-pay-current-balance {
    background: rgba(8, 145, 178, 0.08) !important;
    border-color: rgba(8, 145, 178, 0.16) !important;
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"] .entry-quick-shell .field input,
body.mobile-app-body[data-theme="light"] .entry-quick-shell .field select,
body.mobile-app-body[data-theme="light"] .entry-quick-shell .field textarea {
    color-scheme: light;
}

body.mobile-app-body[data-theme="light"] .entry-plate-search-wrap .mercosul-plate--input,
body.mobile-app-body[data-theme="light"] .mv-plate-input-wrap .mercosul-plate--input {
    border-color: rgba(8, 145, 178, 0.22) !important;
    box-shadow: none;
}

body.mobile-app-body[data-theme="light"] .entry-plate-search-wrap .mercosul-plate--input:focus-within,
body.mobile-app-body[data-theme="light"] .mv-plate-input-wrap .mercosul-plate--input:focus-within {
    border-color: rgba(8, 145, 178, 0.58) !important;
    box-shadow: 0 0 0 3px rgba(8, 145, 178, 0.14) !important;
}

body.mobile-app-body .entry-plate-search-wrap .mercosul-plate--input,
body.mobile-app-body .mv-plate-input-wrap .mercosul-plate--input {
    width: 100%;
}

body.mobile-app-body.mobile-screen--entrada .entry-plate-search-wrap .mercosul-plate--input {
    width: min(100%, 320px) !important;
    max-width: 320px !important;
    align-self: center !important;
    margin-inline: auto;
}

body.mobile-app-body .mv-plate-input-wrap .mercosul-plate--input {
    height: 58px !important;
    min-height: 58px !important;
    max-height: 58px !important;
    grid-template-rows: 16px 42px !important;
}

body.mobile-app-body .mv-plate-input-wrap .mercosul-plate--input .mercosul-plate__body {
    height: 42px !important;
    max-height: 42px !important;
}

body.mobile-app-body .mv-plate-input-wrap .mercosul-plate--input .mercosul-plate__input {
    font-size: clamp(1rem, 5vw, 1.35rem) !important;
}

body.mobile-app-body .mv-plate-input-wrap .mv-plate-clear {
    top: 50%;
    z-index: 2;
}

@media (max-width: 420px) {
    body.mobile-app-body .mobile-topbar-actions :is(
        .mobile-topbar-link,
        .mobile-topbar-logout button,
        .pflow-push-activation,
        .pwa-install-header-btn
    ) {
        width: 36px;
        min-width: 36px;
        max-width: 36px;
        height: 36px;
        min-height: 36px;
        font-size: 0.86rem;
    }
}

/* Cadastro de veículo (/app-mobile/cadastro-veiculo) */
body.mobile-app-body[data-page="cadastro-veiculo"] .mobile-app-content {
    padding-bottom: 88px;
}

body.mobile-app-body[data-page="cadastro-veiculo"] .vehicles-create-shell {
    width: 100%;
    max-width: none !important;
    padding: 0 0 12px;
    gap: 14px;
}

body.mobile-app-body[data-page="cadastro-veiculo"] .vehicles-create-hero h2 {
    font-size: clamp(1.35rem, 5vw, 1.65rem);
    letter-spacing: -0.02em;
}

body.mobile-app-body[data-page="cadastro-veiculo"] .vehicles-create-topbar .secondary-button {
    display: none;
}

body.mobile-app-body[data-page="cadastro-veiculo"] .vehicles-create-card {
    padding: 16px !important;
    border-radius: 20px !important;
}

body.mobile-app-body[data-page="cadastro-veiculo"] .vehicles-owner-field {
    padding: 16px;
    gap: 12px;
}

body.mobile-app-body[data-page="cadastro-veiculo"] .vehicles-owner-field__heading h3 {
    font-size: 1.05rem;
}

body.mobile-app-body[data-page="cadastro-veiculo"] .modveiculo-fipe__grid {
    grid-template-columns: 1fr;
}

body.mobile-app-body[data-page="cadastro-veiculo"] .modveiculo-fipe__plate-row {
    grid-template-columns: minmax(0, 1fr) 52px !important;
    gap: 8px !important;
    align-items: start !important;
}

body.mobile-app-body[data-page="cadastro-veiculo"] .modveiculo-fipe__plate-row .modveiculo-fipe__plate-search {
    width: 52px !important;
    min-width: 52px !important;
    max-width: 52px !important;
    height: 52px !important;
    min-height: 52px !important;
    max-height: 52px !important;
    align-self: start !important;
}

body.mobile-app-body[data-page="cadastro-veiculo"] .mercosul-plate--input {
    height: 52px !important;
    min-height: 52px !important;
    max-height: 52px !important;
    grid-template-rows: 15px 37px !important;
    overflow: hidden !important;
}

body.mobile-app-body[data-page="cadastro-veiculo"] .mercosul-plate--input .mercosul-plate__header {
    height: 15px !important;
    min-height: 15px !important;
    max-height: 15px !important;
    padding: 1px 18px 1px 6px !important;
}

body.mobile-app-body[data-page="cadastro-veiculo"] .mercosul-plate--input .mercosul-plate__body {
    height: 37px !important;
    min-height: 0 !important;
    max-height: 37px !important;
    padding: 0 8px 1px 14px !important;
}

body.mobile-app-body[data-page="cadastro-veiculo"] .mercosul-plate--input .mercosul-plate__input {
    font-size: 1rem !important;
    line-height: 1 !important;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-veiculo"] .vehicles-create-hero h2,
body.mobile-app-body[data-theme="light"][data-page="cadastro-veiculo"] .vehicles-owner-field__heading h3 {
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-veiculo"] .vehicles-create-hero p,
body.mobile-app-body[data-theme="light"][data-page="cadastro-veiculo"] .vehicles-owner-field__heading p,
body.mobile-app-body[data-theme="light"][data-page="cadastro-veiculo"] .vehicles-owner-status {
    color: #64748b !important;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-veiculo"] .vehicles-owner-search > input {
    background: #ffffff !important;
    border-color: rgba(8, 145, 178, 0.2) !important;
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-veiculo"] .vehicles-owner-search > input::placeholder {
    color: #94a3b8 !important;
}

/* ===== Tema claro: overrides completos (cadastro, entrada, catÃ¡logo) ===== */
body.mobile-app-body[data-theme="light"] .flow-wizard-setup__footer,
body.mobile-app-body[data-theme="light"] .mobile-appt-step-actions {
    background: rgba(255, 255, 255, 0.96) !important;
    border-color: rgba(8, 145, 178, 0.18) !important;
    box-shadow: 0 -12px 28px rgba(15, 23, 42, 0.08) !important;
}

body.mobile-app-body[data-theme="light"] .mobile-register-code,
body.mobile-app-body[data-theme="light"] .mobile-register-inline-code,
body.mobile-app-body[data-theme="light"] .mobile-register-toggle,
body.mobile-app-body[data-theme="light"] .mobile-register-add-customer,
body.mobile-app-body[data-theme="light"] .mobile-register-vehicle-card,
body.mobile-app-body[data-theme="light"] .mobile-register-add-vehicle,
body.mobile-app-body[data-theme="light"] .mobile-register-final-summary,
body.mobile-app-body[data-theme="light"] .mobile-register-entry-details {
    background: rgba(8, 145, 178, 0.06) !important;
    border-color: rgba(8, 145, 178, 0.16) !important;
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"] .mobile-register-code {
    background: rgba(255, 255, 255, 0.92) !important;
}

body.mobile-app-body[data-theme="light"] .mobile-register-dropdown {
    background: #ffffff !important;
    border-color: rgba(8, 145, 178, 0.18) !important;
    box-shadow: 0 20px 45px rgba(15, 23, 42, 0.14) !important;
}

body.mobile-app-body[data-theme="light"] .mobile-register-dropdown-item:hover {
    background: rgba(8, 145, 178, 0.08) !important;
}

body.mobile-app-body[data-theme="light"] .mobile-register-dropdown-item strong {
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"] .mobile-register-dropdown-item small {
    color: #64748b !important;
}

body.mobile-app-body[data-theme="light"] .mobile-appt-step-pill {
    background: rgba(8, 145, 178, 0.07) !important;
    border-color: rgba(8, 145, 178, 0.16) !important;
    color: #64748b !important;
}

body.mobile-app-body[data-theme="light"] .mobile-appt-step-pill.is-active,
body.mobile-app-body[data-theme="light"] .mobile-appt-step-pill.is-done {
    background: rgba(8, 145, 178, 0.14) !important;
    border-color: rgba(8, 145, 178, 0.34) !important;
    color: #0369a1 !important;
}

body.mobile-app-body[data-theme="light"] .mobile-register-mv-fipe.modveiculo-fipe--registration .modveiculo-fipe__input,
body.mobile-app-body[data-theme="light"] .mobile-register-mv-fipe.modveiculo-fipe--registration .mobile-field,
body.mobile-app-body[data-theme="light"] .mobile-register-mv-fipe.modveiculo-fipe--registration .modveiculo-fipe__input[readonly] {
    background: #ffffff !important;
    border-color: rgba(8, 145, 178, 0.2) !important;
    color: #0f172a !important;
    -webkit-text-fill-color: #0f172a;
}

body.mobile-app-body[data-theme="light"] .mobile-register-mv-fipe.modveiculo-fipe--registration .modveiculo-fipe__field label,
body.mobile-app-body[data-theme="light"] .mobile-register-mv-fipe.modveiculo-fipe--registration .modveiculo-fipe__help,
body.mobile-app-body[data-theme="light"] .mobile-register-mv-fipe.modveiculo-fipe--registration .mobile-register-helper {
    color: #64748b !important;
}

body.mobile-app-body[data-theme="light"] .mobile-register-vehicle-hero {
    background: linear-gradient(135deg, rgba(8, 145, 178, 0.18) 0%, rgba(255, 255, 255, 0.96) 72%) !important;
    border-color: rgba(8, 145, 178, 0.22) !important;
    box-shadow: var(--mobile-shadow) !important;
}

body.mobile-app-body[data-theme="light"] .mobile-register-vehicle-hero strong,
body.mobile-app-body[data-theme="light"] .mobile-register-vehicle-hero small {
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"] .mobile-register-vehicle-logo {
    background: rgba(8, 145, 178, 0.1) !important;
    border-color: rgba(8, 145, 178, 0.18) !important;
}

body.mobile-app-body[data-theme="light"] .mobile-register-vehicle-logo span {
    color: #0369a1 !important;
}

body.mobile-app-body[data-theme="light"] .mobile-register-vehicle-locked {
    background: rgba(16, 185, 129, 0.1) !important;
    border-color: rgba(16, 185, 129, 0.24) !important;
}

body.mobile-app-body[data-theme="light"] .mobile-register-vehicle-locked__item {
    background: rgba(255, 255, 255, 0.88) !important;
    border-color: rgba(8, 145, 178, 0.14) !important;
}

body.mobile-app-body[data-theme="light"] .mobile-register-vehicle-locked__item strong {
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"] .mobile-register-vehicle-locked__hint {
    color: #64748b !important;
}

body.mobile-app-body[data-theme="light"] .mobile-register-final-summary strong {
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"] .customer-upload-box,
body.mobile-app-body[data-theme="light"] .customer-upload-pick__btn {
    background: rgba(8, 145, 178, 0.05) !important;
    border-color: rgba(8, 145, 178, 0.18) !important;
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"] .customer-upload-box strong,
body.mobile-app-body[data-theme="light"] .customer-upload-box small,
body.mobile-app-body[data-theme="light"] .customer-upload-filename {
    color: #64748b !important;
}

body.mobile-app-body[data-theme="light"] .customer-upload-box strong {
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"] .modveiculo-fipe__media,
body.mobile-app-body[data-theme="light"] .modveiculo-fipe__flags {
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"] .modveiculo-fipe__media label,
body.mobile-app-body[data-theme="light"] .modveiculo-fipe__flags label {
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"] .entry-quick-shell .panel-card.entry-card,
body.mobile-app-body[data-theme="light"] .entry-quick-shell .entry-summary-card {
    background: #ffffff !important;
    border-color: rgba(8, 145, 178, 0.18) !important;
    color: #0f172a !important;
    box-shadow: var(--mobile-shadow) !important;
}

body.mobile-app-body[data-theme="light"] .entry-quick-shell .section-header h2,
body.mobile-app-body[data-theme="light"] .entry-quick-shell .section-header h3,
body.mobile-app-body[data-theme="light"] .entry-quick-shell .section-header h4,
body.mobile-app-body[data-theme="light"] .entry-quick-shell .field span,
body.mobile-app-body[data-theme="light"] .entry-services-category h4 {
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"] .entry-quick-shell .section-header .helper-text,
body.mobile-app-body[data-theme="light"] .entry-quick-shell .helper-text {
    color: #64748b !important;
}

body.mobile-app-body[data-theme="light"] .entry-quick-shell .service-option,
body.mobile-app-body[data-theme="light"] .entry-quick-shell .service-option.app-service-card {
    background: rgba(8, 145, 178, 0.06) !important;
    border-color: rgba(8, 145, 178, 0.16) !important;
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"] .entry-quick-shell .service-option.app-service-card > span:not(.entry-service-card__price-wrap),
body.mobile-app-body[data-theme="light"] .entry-quick-shell .service-option strong,
body.mobile-app-body[data-theme="light"] .entry-summary-list span,
body.mobile-app-body[data-theme="light"] .entry-summary-breakdown-row strong,
body.mobile-app-body[data-theme="light"] .entry-summary-total {
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"] .entry-summary-breakdown-row,
body.mobile-app-body[data-theme="light"] .entry-summary-list span {
    background: rgba(8, 145, 178, 0.08) !important;
}

body.mobile-app-body[data-theme="light"] .entry-quick-shell .secondary-button {
    background: rgba(255, 255, 255, 0.92) !important;
    color: #0f172a !important;
    border-color: rgba(8, 145, 178, 0.22) !important;
}

body.mobile-app-body[data-theme="light"] .entry-quick-shell .field input,
body.mobile-app-body[data-theme="light"] .entry-quick-shell .field select,
body.mobile-app-body[data-theme="light"] .entry-quick-shell .field textarea {
    background: #ffffff !important;
    color: #0f172a !important;
    border-color: rgba(8, 145, 178, 0.2) !important;
    color-scheme: light !important;
}

body.mobile-app-body[data-theme="light"] .entry-quick-shell .field select option {
    background: #ffffff !important;
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"] .entry-lookup-status strong,
body.mobile-app-body[data-theme="light"] .entry-lookup-status small {
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"] .entry-customer-preview {
    background: linear-gradient(165deg, rgba(16, 185, 129, 0.14), rgba(255, 255, 255, 0.96)) !important;
}

body.mobile-app-body[data-theme="light"] .entry-customer-main strong,
body.mobile-app-body[data-theme="light"] .entry-customer-meta {
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"] .entry-delivery-schedule__head strong,
body.mobile-app-body[data-theme="light"] .entry-delivery-field__label,
body.mobile-app-body[data-theme="light"] .entry-delivery-field__hint {
    color: #64748b !important;
}

body.mobile-app-body[data-theme="light"] .entry-delivery-schedule__head strong {
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"] .entry-delivery-field__control {
    background: #ffffff !important;
    border-color: rgba(8, 145, 178, 0.2) !important;
}

body.mobile-app-body[data-theme="light"] .entry-delivery-field__control input {
    color: #0f172a !important;
    color-scheme: light !important;
}

body.mobile-app-body[data-theme="light"] .entry-delivery-field__control input::-webkit-calendar-picker-indicator {
    filter: none;
}

body.mobile-app-body[data-theme="light"] .entry-service-slot {
    background: rgba(8, 145, 178, 0.07) !important;
    border-color: rgba(8, 145, 178, 0.16) !important;
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"] .entry-service-slot.is-active {
    background: rgba(8, 145, 178, 0.14) !important;
    border-color: rgba(8, 145, 178, 0.34) !important;
    color: #0369a1 !important;
}

body.mobile-app-body[data-theme="light"] .entry-avulso-panel {
    background: rgba(8, 145, 178, 0.05) !important;
    border-color: rgba(8, 145, 178, 0.18) !important;
}

body.mobile-app-body[data-theme="light"] .entry-avulso-remove {
    background: rgba(255, 255, 255, 0.92) !important;
    border-color: rgba(8, 145, 178, 0.18) !important;
    color: #64748b !important;
}

body.mobile-app-body[data-theme="light"] .service-catalog-picker .section-header h3,
body.mobile-app-body[data-theme="light"] .service-catalog-picker .section-header h4,
body.mobile-app-body[data-theme="light"] .service-catalog-picker__catalog-head h4,
body.mobile-app-body[data-theme="light"] .service-catalog-picker .orv-service__name strong,
body.mobile-app-body[data-theme="light"] .service-catalog-picker .entry-service-card__title strong {
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"] .service-catalog-picker .helper-text,
body.mobile-app-body[data-theme="light"] .service-catalog-picker__catalog-head p,
body.mobile-app-body[data-theme="light"] .service-catalog-picker__search-label,
body.mobile-app-body[data-theme="light"] .service-catalog-picker .service-catalog-picker__category-title,
body.mobile-app-body[data-theme="light"] .service-catalog-picker .service-duration-badge,
body.mobile-app-body[data-theme="light"] .service-catalog-picker .service-catalog-empty {
    color: #64748b !important;
}

body.mobile-app-body[data-theme="light"] .service-catalog-picker .quote-services-search {
    background: #ffffff !important;
    border-color: rgba(8, 145, 178, 0.2) !important;
    color: #0f172a !important;
    color-scheme: light !important;
}

body.mobile-app-body[data-theme="light"] .service-catalog-picker .quote-service-tabs,
body.mobile-app-body[data-theme="light"] .service-catalog-picker .quote-service-tab,
body.mobile-app-body[data-theme="light"] .service-catalog-picker .orv-service.quote-service-option {
    background: rgba(8, 145, 178, 0.06) !important;
    border-color: rgba(8, 145, 178, 0.16) !important;
    color: #64748b !important;
}

body.mobile-app-body[data-theme="light"] .service-catalog-picker .quote-service-tab.is-active,
body.mobile-app-body[data-theme="light"] .service-catalog-picker .orv-service.quote-service-option.on,
body.mobile-app-body[data-theme="light"] .service-catalog-picker .orv-service.quote-service-option.is-selected {
    background: rgba(8, 145, 178, 0.14) !important;
    border-color: rgba(8, 145, 178, 0.34) !important;
    color: #0369a1 !important;
}

body.mobile-app-body[data-theme="light"] .service-catalog-picker .service-duration-badge {
    background: rgba(8, 145, 178, 0.08) !important;
    border-color: rgba(8, 145, 178, 0.14) !important;
}

body.mobile-app-body[data-theme="light"] .service-catalog-picker .quote-service-price,
body.mobile-app-body[data-theme="light"] .service-catalog-picker .entry-service-card__price-value,
body.mobile-app-body[data-theme="light"] .entry-service-card__price-value {
    color: #c2410c !important;
}

body.mobile-app-body[data-theme="light"] #mobile-register-addr-edit {
    background: rgba(255, 255, 255, 0.92) !important;
    border-color: rgba(8, 145, 178, 0.18) !important;
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"] .mobile-register-summary small {
    color: #64748b !important;
}

body.mobile-app-body[data-theme="light"] .mobile-register-type-btn {
    background: rgba(8, 145, 178, 0.06) !important;
    border-color: rgba(8, 145, 178, 0.16) !important;
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"] .mobile-register-type-btn.active {
    background: rgba(8, 145, 178, 0.14) !important;
    border-color: rgba(8, 145, 178, 0.34) !important;
    color: #0369a1 !important;
}

body.mobile-app-body[data-theme="light"] .mobile-register-vehicle-plate {
    background: rgba(8, 145, 178, 0.12) !important;
    border-color: rgba(8, 145, 178, 0.2) !important;
    color: #0369a1 !important;
}

body.mobile-app-body[data-theme="light"] .mobile-empty-state {
    background: rgba(8, 145, 178, 0.05) !important;
    border-color: rgba(8, 145, 178, 0.18) !important;
    color: #64748b !important;
}

body.mobile-app-body[data-theme="light"] .app-flow-header h1,
body.mobile-app-body[data-theme="light"] .mobile-screen-title {
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"] .mobile-form-title {
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"] .modveiculo-fipe--registration .modveiculo-fipe__field label,
body.mobile-app-body[data-theme="light"] .modveiculo-fipe--registration .modveiculo-fipe__photo-label,
body.mobile-app-body[data-theme="light"] .modveiculo-fipe--registration .modveiculo-fipe__secret-details label {
    color: #64748b !important;
}

body.mobile-app-body[data-theme="light"] .modveiculo-fipe--registration .modveiculo-fipe__input,
body.mobile-app-body[data-theme="light"] .modveiculo-fipe--registration .modveiculo-fipe__input[readonly] {
    background: #ffffff !important;
    border-color: rgba(8, 145, 178, 0.2) !important;
    color: #0f172a !important;
    -webkit-text-fill-color: #0f172a;
}

body.mobile-app-body[data-theme="light"] .modveiculo-fipe--registration .modveiculo-fipe__photo-box {
    background: rgba(8, 145, 178, 0.05) !important;
    border-color: rgba(8, 145, 178, 0.18) !important;
}

body.mobile-app-body[data-theme="light"] .modveiculo-fipe--registration .modveiculo-fipe__photo-meta strong {
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"] .modveiculo-fipe--registration .modveiculo-fipe__photo-meta small,
body.mobile-app-body[data-theme="light"] .modveiculo-fipe--registration .modveiculo-fipe__help {
    color: #64748b !important;
}

body.mobile-app-body[data-theme="light"] .modveiculo-fipe--registration .modveiculo-fipe__flags {
    background: rgba(8, 145, 178, 0.05) !important;
    border-color: rgba(8, 145, 178, 0.16) !important;
}

body.mobile-app-body[data-theme="light"] .modveiculo-fipe--registration .modveiculo-fipe__flag {
    background: rgba(255, 255, 255, 0.92) !important;
    border-color: rgba(8, 145, 178, 0.16) !important;
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"] .modveiculo-fipe--registration .modveiculo-fipe__flag-text small {
    color: #64748b !important;
}

body.mobile-app-body[data-theme="light"] .modveiculo-fipe--registration .modveiculo-fipe__vtype .vtype-tabs {
    background: rgba(8, 145, 178, 0.06) !important;
    border-color: rgba(8, 145, 178, 0.16) !important;
}

body.mobile-app-body[data-theme="light"] .modveiculo-fipe--registration .modveiculo-fipe__vtype .vtype-tabs__btn {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

body.mobile-app-body[data-theme="light"] .modveiculo-fipe--registration .modveiculo-fipe__vtype .vtype-option {
    background: #ffffff !important;
    border-color: rgba(8, 145, 178, 0.16) !important;
}

body.mobile-app-body[data-theme="light"] .modveiculo-fipe--registration .modveiculo-fipe__vtype .vtype-option.is-active,
body.mobile-app-body[data-theme="light"] .modveiculo-fipe--registration .modveiculo-fipe__vtype .vtype-tabs__btn.is-active {
    background: rgba(8, 145, 178, 0.14) !important;
    border-color: rgba(8, 145, 178, 0.34) !important;
    box-shadow: inset 0 0 0 1px rgba(8, 145, 178, 0.28) !important;
}

body.mobile-app-body[data-theme="light"] .modveiculo-fipe--registration .modveiculo-fipe__vtype .vtype-option__label {
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"] .vehicle-lookup-card__hero {
    background: linear-gradient(135deg, rgba(8, 145, 178, 0.18) 0%, rgba(255, 255, 255, 0.96) 72%) !important;
    border-color: rgba(8, 145, 178, 0.22) !important;
    box-shadow: var(--mobile-shadow) !important;
}

body.mobile-app-body[data-theme="light"] .vehicle-lookup-card__title,
body.mobile-app-body[data-theme="light"] .vehicle-lookup-card__color,
body.mobile-app-body[data-theme="light"] .vehicle-lookup-card__year {
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"] .modveiculo-fipe--registration .modveiculo-fipe__plate-search {
    background: #ffffff !important;
    border-color: rgba(8, 145, 178, 0.2) !important;
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"] .modveiculo-fipe--registration .modveiculo-fipe__plate-confirm-head strong,
body.mobile-app-body[data-theme="light"] .modveiculo-fipe--registration .modveiculo-fipe__plate-confirm-head small {
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"] .entry-price-modal__panel {
    background: #ffffff !important;
    border-color: rgba(8, 145, 178, 0.18) !important;
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"] .entry-price-modal__service,
body.mobile-app-body[data-theme="light"] .entry-price-modal__catalog {
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"] .entry-price-modal__hint,
body.mobile-app-body[data-theme="light"] .entry-price-modal__field span {
    color: #64748b !important;
}

body.mobile-app-body[data-theme="light"] .quote-customer-tabs {
    background: rgba(8, 145, 178, 0.06) !important;
    border-color: rgba(8, 145, 178, 0.16) !important;
}

body.mobile-app-body[data-theme="light"] .quote-customer-tab {
    color: #64748b !important;
}

body.mobile-app-body[data-theme="light"] .quote-customer-tab.is-active {
    background: rgba(8, 145, 178, 0.14) !important;
    color: #0369a1 !important;
    box-shadow: inset 0 0 0 1px rgba(8, 145, 178, 0.24) !important;
}

body.mobile-app-body[data-theme="light"] .mobile-appt-customer-panel,
body.mobile-app-body[data-theme="light"] .mobile-appt-lookup-panel,
body.mobile-app-body[data-theme="light"] .quote-mv-fipe .mobile-field {
    background: rgba(255, 255, 255, 0.94) !important;
    border-color: rgba(8, 145, 178, 0.16) !important;
    color: #0f172a !important;
}

/* Cadastro de cliente â€” tema claro (register.php + wizard) */
body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-registration {
    --reg-bg: #f5f9ff;
    --reg-panel: #ffffff;
    --reg-panel-soft: rgba(8, 145, 178, 0.06);
    --reg-border: rgba(8, 145, 178, 0.18);
    --reg-text: #0f172a;
    --reg-muted: #64748b;
    --reg-accent: #0891b2;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-registration__hero h2,
body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .app-flow-header h2,
body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .section-header h2 {
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-registration__hero p,
body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .app-flow-header p,
body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .helper-text,
body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-card__header p,
body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-card__header small {
    color: #64748b !important;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-card:not(.flow-wizard-setup__panel),
body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-card.flow-wizard-setup__panel,
body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-card.flow-wizard-setup__panel.is-active,
body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .app-card {
    background: #ffffff !important;
    background-image: none !important;
    border-color: rgba(8, 145, 178, 0.18) !important;
    box-shadow: 0 12px 28px rgba(15, 23, 42, 0.08) !important;
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .flow-wizard-step-head h4,
body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-card__header h3,
body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-card__vehicle-title,
body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-subpanel__header strong,
body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .app-card-title {
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .flow-wizard-step-head p,
body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-subpanel__header small {
    color: #64748b !important;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-field span,
body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-field-inline span {
    color: #64748b !important;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-input,
body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-select,
body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-textarea,
body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .app-search,
body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-input[data-registration-customer-search],
body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-input[data-registration-service-search] {
    background: #ffffff !important;
    border-color: rgba(8, 145, 178, 0.22) !important;
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-input:focus,
body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-select:focus,
body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-textarea:focus {
    border-color: rgba(8, 145, 178, 0.55) !important;
    box-shadow: 0 0 0 3px rgba(8, 145, 178, 0.12) !important;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-browser-tabs {
    border: 0 !important;
    background: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    overflow: hidden !important;
    padding-inline: 16px !important;
    box-sizing: border-box !important;
    min-width: 0 !important;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-browser-tabs__nav {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 8px !important;
    padding: 4px !important;
    margin: 0 0 12px !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    border: 1px solid rgba(8, 145, 178, 0.16) !important;
    border-radius: 14px !important;
    background: rgba(8, 145, 178, 0.06) !important;
    background-image: none !important;
    border-bottom: 0 !important;
    overflow: visible !important;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-browser-tab {
    color: #64748b !important;
    border: 0 !important;
    border-radius: 10px !important;
    background: transparent !important;
    min-height: 44px !important;
    padding: 10px 12px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    box-shadow: none !important;
    transform: none !important;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-browser-tab:hover {
    background: rgba(8, 145, 178, 0.08) !important;
    color: #0f172a !important;
    transform: none !important;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-browser-tab.is-active {
    background: rgba(8, 145, 178, 0.14) !important;
    border: 0 !important;
    color: #0369a1 !important;
    box-shadow: inset 0 0 0 1px rgba(8, 145, 178, 0.28) !important;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-browser-tab-panel {
    background: transparent !important;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-button--secondary,
body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-link--secondary,
body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .app-choice,
body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-vehicle-type-actions .customer-button:not(.is-active) {
    border-color: rgba(8, 145, 178, 0.18) !important;
    background: rgba(8, 145, 178, 0.06) !important;
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-button--primary,
body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-link--primary,
body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .app-bottom-button,
body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .flow-wizard-setup__next,
body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .flow-wizard-setup__submit {
    background: linear-gradient(135deg, #0891b2, #0284c7) !important;
    color: #ffffff !important;
    box-shadow: 0 12px 24px rgba(8, 145, 178, 0.18) !important;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .flow-wizard-setup__prev {
    border-color: rgba(8, 145, 178, 0.18) !important;
    background: rgba(8, 145, 178, 0.06) !important;
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .flow-wizard-setup__footer {
    border-color: rgba(8, 145, 178, 0.18) !important;
    background: var(--app-wizard-footer-bg) !important;
    box-shadow: 0 -8px 24px rgba(15, 23, 42, 0.06) !important;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-suggestions {
    border-color: rgba(8, 145, 178, 0.18) !important;
    background: #ffffff !important;
    box-shadow: 0 18px 36px rgba(15, 23, 42, 0.12) !important;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-suggestion {
    border-bottom-color: rgba(8, 145, 178, 0.1) !important;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-suggestion:hover {
    background: rgba(8, 145, 178, 0.06) !important;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-suggestion strong {
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-suggestion small {
    color: #64748b !important;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .app-service-card,
body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-service-card,
body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-select-card {
    border-color: rgba(8, 145, 178, 0.16) !important;
    background: rgba(255, 255, 255, 0.94) !important;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .app-service-card strong,
body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-service-card strong {
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .app-service-card small,
body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-service-card small {
    color: #64748b !important;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .app-service-card.is-selected,
body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-service-card.is-selected,
body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-select-card.is-active,
body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .app-choice.is-active,
body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-vehicle-type-actions .customer-button.is-active {
    border-color: rgba(8, 145, 178, 0.42) !important;
    background: rgba(8, 145, 178, 0.12) !important;
    box-shadow: 0 0 0 1px rgba(8, 145, 178, 0.16) !important;
    color: #0369a1 !important;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-upload-pick__btn {
    border-color: rgba(8, 145, 178, 0.18) !important;
    background: rgba(8, 145, 178, 0.06) !important;
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-upload-filename {
    color: #64748b !important;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .registration-vehicle-locked__item {
    border-color: rgba(8, 145, 178, 0.16) !important;
    background: rgba(8, 145, 178, 0.05) !important;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .registration-vehicle-locked__item strong {
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-entry-toggle {
    border-color: rgba(8, 145, 178, 0.16) !important;
    background: rgba(255, 255, 255, 0.92) !important;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-entry-toggle__copy strong {
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-entry-toggle__slider {
    border-color: rgba(8, 145, 178, 0.2) !important;
    background: rgba(8, 145, 178, 0.1) !important;
}

@media (max-width: 768px) {
    body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .customer-card:not(.flow-wizard-setup__panel),
    body.mobile-app-body[data-theme="light"][data-page="cadastro-cliente"] .app-card {
        background: #ffffff !important;
        background-image: none !important;
        box-shadow: none !important;
    }
}

/* App-mobile cadastro â€” card Ãºnico, sem vazamento de gradiente */
body.mobile-app-body[data-page="cadastro-cliente"] .customer-registration.entry-quick-shell,
body.mobile-app-body[data-page="cadastro-cliente"] .customer-registration.customer-saas-dashboard.entry-quick-shell {
    width: 100% !important;
    max-width: 720px !important;
    margin-inline: auto !important;
    padding-inline: 0;
    box-sizing: border-box;
}

body.mobile-app-body[data-page="cadastro-cliente"] .flow-wizard-setup,
body.mobile-app-body[data-page="cadastro-cliente"] #customer-registration-form,
body.mobile-app-body[data-page="cadastro-cliente"] .customer-registration__hero {
    width: 100%;
    max-width: 720px;
    box-sizing: border-box;
}

body.mobile-app-body[data-page="cadastro-cliente"] .flow-wizard-setup .customer-registration__layout,
body.mobile-app-body[data-page="cadastro-cliente"] .flow-wizard-setup .customer-registration__main,
body.mobile-app-body[data-page="cadastro-cliente"] .flow-wizard-setup .customer-registration__aside {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0;
    margin: 0 !important;
    padding: 0;
    box-sizing: border-box;
}

body.mobile-app-body[data-page="cadastro-cliente"] .flow-wizard-setup .customer-card.flow-wizard-setup__panel[hidden],
body.mobile-app-body[data-page="cadastro-cliente"] .flow-wizard-setup .customer-card.flow-wizard-setup__panel:not(.is-active) {
    display: none !important;
}

body.mobile-app-body[data-page="cadastro-cliente"] .flow-wizard-setup .customer-card.flow-wizard-setup__panel.is-active {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    max-height: none !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid var(--app-form-card-border) !important;
    border-radius: 16px !important;
    background: var(--app-form-card-bg) !important;
    background-image: none !important;
    box-shadow: none !important;
    overflow: hidden !important;
    gap: 0 !important;
    display: grid !important;
}

body.mobile-app-body[data-page="cadastro-cliente"] .flow-wizard-setup .customer-card.flow-wizard-setup__panel:has(.customer-suggestions.is-open),
body.mobile-app-body[data-page="cadastro-cliente"] .flow-wizard-setup .customer-card.flow-wizard-setup__panel:has(.entry-plate-dropdown.show),
body.mobile-app-body[data-page="cadastro-cliente"] .flow-wizard-setup .customer-card.flow-wizard-setup__panel:has(.entry-name-dropdown.show) {
    overflow: visible !important;
}

body.mobile-app-body[data-page="cadastro-cliente"] .flow-wizard-setup .customer-card.flow-wizard-setup__panel::before,
body.mobile-app-body[data-page="cadastro-cliente"] .flow-wizard-setup .customer-card.flow-wizard-setup__panel::after,
body.mobile-app-body[data-page="cadastro-cliente"] .customer-browser-tabs::before,
body.mobile-app-body[data-page="cadastro-cliente"] .customer-browser-tabs::after {
    content: none !important;
    display: none !important;
}

body.mobile-app-body[data-page="cadastro-cliente"] .flow-wizard-step-head,
body.mobile-app-body[data-page="cadastro-cliente"] .customer-browser-tabs,
body.mobile-app-body[data-page="cadastro-cliente"] .customer-browser-tabs__nav,
body.mobile-app-body[data-page="cadastro-cliente"] .customer-browser-tab-panel {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
}

body.mobile-app-body[data-page="cadastro-cliente"] .flow-wizard-step-head {
    margin: 0;
    padding: 16px 16px 12px;
}

body.mobile-app-body[data-page="cadastro-cliente"] .flow-wizard-step-head h4 {
    color: var(--app-form-card-text) !important;
}

body.mobile-app-body[data-page="cadastro-cliente"] .flow-wizard-step-head p {
    color: var(--app-form-card-muted) !important;
}

body.mobile-app-body[data-page="cadastro-cliente"] .customer-browser-tabs {
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    background-image: none !important;
    overflow: hidden !important;
    margin: 0;
    box-shadow: none !important;
    padding-inline: 16px;
    box-sizing: border-box;
    min-width: 0;
}

body.mobile-app-body[data-page="cadastro-cliente"] .customer-browser-tabs__nav {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 8px !important;
    padding: 4px !important;
    margin: 0 0 12px !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    border: 1px solid var(--app-form-card-border) !important;
    border-radius: 14px !important;
    border-bottom: 0 !important;
    background: var(--app-form-inner-surface) !important;
    background-image: none !important;
    overflow: visible !important;
    box-shadow: none !important;
}

body.mobile-app-body[data-page="cadastro-cliente"] .customer-browser-tab {
    flex: none !important;
    min-width: 0 !important;
    min-height: 44px !important;
    padding: 10px 12px !important;
    border: 0 !important;
    border-radius: 10px !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
    transform: none !important;
    color: var(--app-form-card-muted) !important;
    background: transparent !important;
    font-size: 13px !important;
    font-weight: 700 !important;
}

body.mobile-app-body[data-page="cadastro-cliente"] .customer-browser-tab:hover {
    transform: none !important;
}

body.mobile-app-body[data-page="cadastro-cliente"] .customer-browser-tab.is-active {
    border-bottom: 0 !important;
    box-shadow: inset 0 0 0 1px rgba(255, 107, 74, 0.28) !important;
}

body.mobile-app-body[data-page="cadastro-cliente"] .customer-browser-tab-panel {
    padding: 0 0 16px !important;
    background: transparent !important;
    background-image: none !important;
    border: 0 !important;
    box-sizing: border-box;
    min-width: 0;
}

body.mobile-app-body[data-page="cadastro-cliente"] .customer-subpanel__header strong {
    color: var(--app-form-card-text) !important;
}

body.mobile-app-body[data-page="cadastro-cliente"] .customer-subpanel__header small,
body.mobile-app-body[data-page="cadastro-cliente"] .customer-field span,
body.mobile-app-body[data-page="cadastro-cliente"] .customer-field-inline span {
    color: var(--app-form-card-muted) !important;
}

body.mobile-app-body[data-page="cadastro-cliente"] .customer-card.flow-wizard-setup__panel .customer-input,
body.mobile-app-body[data-page="cadastro-cliente"] .customer-card.flow-wizard-setup__panel .customer-select,
body.mobile-app-body[data-page="cadastro-cliente"] .customer-card.flow-wizard-setup__panel .customer-textarea {
    width: 100%;
    box-sizing: border-box;
    background: var(--app-form-input-bg) !important;
    background-image: none !important;
    border-color: var(--app-form-input-border) !important;
    color: var(--app-form-input-text) !important;
}

body.mobile-app-body[data-page="cadastro-cliente"] .customer-grid-2,
body.mobile-app-body[data-page="cadastro-cliente"] .customer-browser-tab-panel .customer-grid-2 {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: 100%;
    box-sizing: border-box;
}

body.mobile-app-body[data-page="cadastro-cliente"] .customer-grid-3,
body.mobile-app-body[data-page="cadastro-cliente"] .customer-browser-tab-panel .customer-grid-3 {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: 100%;
    box-sizing: border-box;
}

body.mobile-app-body[data-page="cadastro-cliente"] .flow-wizard-setup__footer {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px;
    width: 100% !important;
    max-width: 720px !important;
    margin: 18px 0 0 !important;
    padding: 0 !important;
    padding-bottom: env(safe-area-inset-bottom, 0px) !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    position: relative !important;
    bottom: auto !important;
    left: auto !important;
    right: auto !important;
}

body.mobile-app-body[data-page="cadastro-cliente"] .flow-wizard-setup__footer:has(.flow-wizard-setup__prev:not([hidden])) {
    grid-template-columns: 1fr 1fr !important;
}

body.mobile-app-body[data-page="cadastro-cliente"] .flow-wizard-setup__nav-btn,
body.mobile-app-body[data-page="cadastro-cliente"] .flow-wizard-setup__next,
body.mobile-app-body[data-page="cadastro-cliente"] .flow-wizard-setup__submit,
body.mobile-app-body[data-page="cadastro-cliente"] .flow-wizard-setup__prev {
    width: 100%;
    min-height: 52px;
    box-sizing: border-box;
}

@media (max-width: 639px) {
    body.mobile-app-body[data-page="cadastro-cliente"] .customer-grid-2,
    body.mobile-app-body[data-page="cadastro-cliente"] .customer-grid-3,
    body.mobile-app-body[data-page="cadastro-cliente"] .customer-browser-tab-panel .customer-grid-2,
    body.mobile-app-body[data-page="cadastro-cliente"] .customer-browser-tab-panel .customer-grid-3 {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 768px) {
    body.mobile-app-body[data-page="cadastro-cliente"] .flow-wizard-setup__footer {
        margin: 12px 0 0 !important;
        padding: 0 !important;
        padding-bottom: env(safe-area-inset-bottom, 0px) !important;
    }
}

/* Final light theme polish for app-mobile registration flows. */
body.mobile-app-body[data-theme="light"].mobile-screen--cadastro-cliente,
body.mobile-app-body[data-theme="light"].mobile-screen--entrada,
body.mobile-app-body[data-theme="light"].mobile-screen--agendamentos,
body.mobile-app-body[data-theme="light"].mobile-screen--orcamentos {
    --mobile-bg: #f4fbff;
    --mobile-surface: #ffffff;
    --mobile-border: rgba(14, 165, 233, 0.22);
    --mobile-text: #0f172a;
    --mobile-muted: #64748b;
    --mobile-accent: #0891b2;
    --mobile-accent-strong: #0284c7;
    --mobile-shadow: 0 24px 60px rgba(8, 47, 73, 0.12);
    background:
        radial-gradient(circle at 12% 0%, rgba(14, 165, 233, 0.16), transparent 34%),
        radial-gradient(circle at 92% 22%, rgba(56, 189, 248, 0.12), transparent 30%),
        linear-gradient(180deg, #ffffff 0%, #f5fbff 46%, #e8f7ff 100%) !important;
    color: var(--mobile-text) !important;
}

body.mobile-app-body[data-theme="light"].mobile-screen--cadastro-cliente .mobile-app-shell,
body.mobile-app-body[data-theme="light"].mobile-screen--entrada .mobile-app-shell,
body.mobile-app-body[data-theme="light"].mobile-screen--agendamentos .mobile-app-shell,
body.mobile-app-body[data-theme="light"].mobile-screen--orcamentos .mobile-app-shell {
    color: var(--mobile-text) !important;
}

body.mobile-app-body[data-theme="light"] .mobile-brand,
body.mobile-app-body[data-theme="light"] .mobile-topbar {
    color: var(--mobile-text) !important;
}

body.mobile-app-body[data-theme="light"] .mobile-brand-text strong,
body.mobile-app-body[data-theme="light"] .mobile-brand strong,
body.mobile-app-body[data-theme="light"] .mobile-brand-title,
body.mobile-app-body[data-theme="light"] .app-flow-header h1,
body.mobile-app-body[data-theme="light"] .app-flow-header h2,
body.mobile-app-body[data-theme="light"] .mobile-register-mobile-header h1,
body.mobile-app-body[data-theme="light"] .mobile-screen-title {
    color: #0f172a !important;
    opacity: 1 !important;
    text-shadow: none !important;
}

body.mobile-app-body[data-theme="light"] .mobile-brand-label,
body.mobile-app-body[data-theme="light"] .app-flow-header p,
body.mobile-app-body[data-theme="light"] .mobile-register-mobile-header span,
body.mobile-app-body[data-theme="light"] .mobile-screen-subtitle {
    color: #64748b !important;
}

body.mobile-app-body[data-theme="light"] .flow-wizard-setup,
body.mobile-app-body[data-theme="light"] .app-card,
body.mobile-app-body[data-theme="light"] .mobile-form-panel,
body.mobile-app-body[data-theme="light"] .mobile-register-flow .mobile-form-panel.app-card,
body.mobile-app-body[data-theme="light"] .mobile-register-customer-panel,
body.mobile-app-body[data-theme="light"] .mobile-register-vehicle-panel,
body.mobile-app-body[data-theme="light"] .mobile-register-entry-box,
body.mobile-app-body[data-theme="light"] .mobile-register-entry-details,
body.mobile-app-body[data-theme="light"] .mobile-register-final-summary,
body.mobile-app-body[data-theme="light"] .entry-quick-shell,
body.mobile-app-body[data-theme="light"] .entry-avulso-panel,
body.mobile-app-body[data-theme="light"] .quote-vehicle-option,
body.mobile-app-body[data-theme="light"] .mobile-appt-services-panel,
body.mobile-app-body[data-theme="light"] .mobile-appt-summary-panel {
    background: #ffffff !important;
    border: 1px solid rgba(14, 165, 233, 0.2) !important;
    color: #0f172a !important;
    box-shadow: var(--mobile-shadow) !important;
}

body.mobile-app-body[data-theme="light"] .mobile-register-flow .mobile-appt-steps,
body.mobile-app-body[data-theme="light"] .flow-wizard-setup__steps,
body.mobile-app-body[data-theme="light"] .mobile-register-tabs,
body.mobile-app-body[data-theme="light"] .mobile-appt-tabs {
    background: #eaf8ff !important;
    border: 1px solid rgba(14, 165, 233, 0.18) !important;
    border-radius: 20px !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.84) !important;
}

body.mobile-app-body[data-theme="light"] .mobile-register-flow .mobile-appt-step-pill,
body.mobile-app-body[data-theme="light"] .flow-wizard-setup__step,
body.mobile-app-body[data-theme="light"] .mobile-register-tab,
body.mobile-app-body[data-theme="light"] .mobile-appt-tabs a {
    background: #ffffff !important;
    border: 1px solid rgba(14, 165, 233, 0.2) !important;
    color: #475569 !important;
    box-shadow: 0 8px 18px rgba(8, 47, 73, 0.06) !important;
}

body.mobile-app-body[data-theme="light"] .mobile-register-flow .mobile-appt-step-pill.is-active,
body.mobile-app-body[data-theme="light"] .mobile-register-flow .mobile-appt-step-pill.is-done,
body.mobile-app-body[data-theme="light"] .flow-wizard-setup__step.is-active,
body.mobile-app-body[data-theme="light"] .flow-wizard-setup__step.is-done,
body.mobile-app-body[data-theme="light"] .mobile-register-tab.is-active,
body.mobile-app-body[data-theme="light"] .mobile-appt-tabs a.is-active {
    background: linear-gradient(135deg, #0891b2, #0284c7) !important;
    border-color: rgba(14, 165, 233, 0.54) !important;
    color: #ffffff !important;
    box-shadow: 0 12px 26px rgba(8, 145, 178, 0.24) !important;
}

body.mobile-app-body[data-theme="light"] .app-card-title,
body.mobile-app-body[data-theme="light"] .mobile-card-title,
body.mobile-app-body[data-theme="light"] .mobile-form-title,
body.mobile-app-body[data-theme="light"] .mobile-register-flow .mobile-form-title,
body.mobile-app-body[data-theme="light"] .mobile-register-flow .mobile-form-label,
body.mobile-app-body[data-theme="light"] .mobile-register-flow .modveiculo-fipe__field label,
body.mobile-app-body[data-theme="light"] .mobile-register-flow .modveiculo-fipe__vtype > label,
body.mobile-app-body[data-theme="light"] .entry-quick-shell label,
body.mobile-app-body[data-theme="light"] .quote-vehicle-option strong {
    color: #0f172a !important;
}

body.mobile-app-body[data-theme="light"] .mobile-helper,
body.mobile-app-body[data-theme="light"] .mobile-card-subtitle,
body.mobile-app-body[data-theme="light"] .mobile-form-helper,
body.mobile-app-body[data-theme="light"] .mobile-register-helper,
body.mobile-app-body[data-theme="light"] .mobile-register-flow small,
body.mobile-app-body[data-theme="light"] .modveiculo-fipe__help {
    color: #64748b !important;
}

body.mobile-app-body[data-theme="light"] .mobile-field,
body.mobile-app-body[data-theme="light"] .mobile-select,
body.mobile-app-body[data-theme="light"] .mobile-textarea,
body.mobile-app-body[data-theme="light"] .customer-input,
body.mobile-app-body[data-theme="light"] .customer-select,
body.mobile-app-body[data-theme="light"] .customer-textarea,
body.mobile-app-body[data-theme="light"] .mobile-register-flow .modveiculo-fipe__input,
body.mobile-app-body[data-theme="light"] .entry-plate-input:not(.mercosul-plate__input),
body.mobile-app-body[data-theme="light"] .entry-quick-shell .field input,
body.mobile-app-body[data-theme="light"] .entry-quick-shell .field select,
body.mobile-app-body[data-theme="light"] .entry-quick-shell .field textarea {
    background: #ffffff !important;
    border: 1px solid rgba(14, 165, 233, 0.24) !important;
    color: #0f172a !important;
    -webkit-text-fill-color: #0f172a !important;
    box-shadow: 0 8px 22px rgba(8, 47, 73, 0.05) !important;
    color-scheme: light !important;
}

body.mobile-app-body[data-theme="light"] .mobile-field:focus,
body.mobile-app-body[data-theme="light"] .mobile-select:focus,
body.mobile-app-body[data-theme="light"] .mobile-textarea:focus,
body.mobile-app-body[data-theme="light"] .customer-input:focus,
body.mobile-app-body[data-theme="light"] .customer-select:focus,
body.mobile-app-body[data-theme="light"] .customer-textarea:focus,
body.mobile-app-body[data-theme="light"] .entry-plate-input:not(.mercosul-plate__input):focus {
    border-color: rgba(8, 145, 178, 0.64) !important;
    box-shadow: 0 0 0 4px rgba(8, 145, 178, 0.14) !important;
}

body.mobile-app-body[data-theme="light"] .mobile-register-toggle,
body.mobile-app-body[data-theme="light"] .mobile-register-code,
body.mobile-app-body[data-theme="light"] .mobile-register-inline-code,
body.mobile-app-body[data-theme="light"] .mobile-register-vehicle-card,
body.mobile-app-body[data-theme="light"] .mobile-register-add-customer,
body.mobile-app-body[data-theme="light"] .mobile-register-add-vehicle,
body.mobile-app-body[data-theme="light"] .mobile-service-chip span,
body.mobile-app-body[data-theme="light"] .mobile-register-type-btn,
body.mobile-app-body[data-theme="light"] .vtype-picker .vtype-option,
body.mobile-app-body[data-theme="light"] .mobile-register-vehicle-spec,
body.mobile-app-body[data-theme="light"] .modveiculo-fipe__spec {
    background: #f4fbff !important;
    border: 1px solid rgba(14, 165, 233, 0.2) !important;
    color: #0f172a !important;
    box-shadow: 0 8px 22px rgba(8, 47, 73, 0.05) !important;
}

body.mobile-app-body[data-theme="light"] .mobile-service-chip input:checked + span,
body.mobile-app-body[data-theme="light"] .mobile-register-type-btn.active,
body.mobile-app-body[data-theme="light"] .vtype-picker .vtype-option.is-selected,
body.mobile-app-body[data-theme="light"] .vtype-picker .vtype-option.active {
    background: linear-gradient(135deg, #e0f7ff, #ffffff) !important;
    border-color: rgba(8, 145, 178, 0.46) !important;
    color: #0369a1 !important;
}

body.mobile-app-body[data-theme="light"] .mobile-button,
body.mobile-app-body[data-theme="light"] .mobile-actions .mobile-button,
body.mobile-app-body[data-theme="light"] .flow-wizard-setup__footer .mobile-button,
body.mobile-app-body[data-theme="light"] .entry-quick-shell .primary-button,
body.mobile-app-body[data-theme="light"] .mobile-button-inline.primary {
    background: linear-gradient(135deg, #0891b2, #0284c7) !important;
    border-color: rgba(8, 145, 178, 0.44) !important;
    color: #ffffff !important;
    box-shadow: 0 16px 34px rgba(8, 145, 178, 0.26) !important;
}

body.mobile-app-body[data-theme="light"] .mobile-button-secondary,
body.mobile-app-body[data-theme="light"] .mobile-button-inline,
body.mobile-app-body[data-theme="light"] .entry-quick-shell .secondary-button,
body.mobile-app-body[data-theme="light"] .flow-wizard-setup__footer .mobile-button-secondary {
    background: #ffffff !important;
    border: 1px solid rgba(14, 165, 233, 0.26) !important;
    color: #0f172a !important;
    box-shadow: 0 10px 24px rgba(8, 47, 73, 0.08) !important;
}

body.mobile-app-body[data-theme="light"] .flow-wizard-setup__footer,
body.mobile-app-body[data-theme="light"] .mobile-register-flow .mobile-actions {
    background: rgba(255, 255, 255, 0.9) !important;
    border: 1px solid rgba(14, 165, 233, 0.16) !important;
    box-shadow: 0 -14px 34px rgba(8, 47, 73, 0.09) !important;
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}

body.mobile-app-body[data-theme="light"] .mobile-lookup-dropdown,
body.mobile-app-body[data-theme="light"] .mobile-register-dropdown {
    background: #ffffff !important;
    border: 1px solid rgba(14, 165, 233, 0.22) !important;
    color: #0f172a !important;
    box-shadow: 0 22px 50px rgba(8, 47, 73, 0.16) !important;
}

