/**
 * CECWEB Core - Atendimento / Dados da Proposta
 * Versão 0.2.4
 *
 * Estilos específicos do formulário atend_dados_proposta.
 * Carregar após Bootstrap, cecweb-core.css e cecweb-form.css.
 */

body {
            font-size: .86rem;
        }

        .form-control,
        .form-select,
        .input-group-text,
        .btn {
            min-height: 34px;
            padding-top: .28rem;
            padding-bottom: .28rem;
            font-size: .84rem;
        }

        .form-card {
            margin-bottom: 14px;
            border-radius: 12px;
        }

        .form-card-header {
            padding: 10px 14px;
            font-size: .9rem;
        }

        .form-card-body {
            padding: 14px;
        }

        .row.g-3 {
            --bs-gutter-y: .72rem;
            --bs-gutter-x: .8rem;
        }

        .campo-valor {
            background: linear-gradient(180deg, #fffdf1, #fff8d8);
            border: 1px solid #e5bf45;
            border-radius: 10px;
            padding: 10px;
        }

        .campo-valor .form-label {
            color: #745600;
            font-weight: 700;
        }

        .campo-valor .form-control {
            font-weight: 700;
            text-align: right;
            background: #fff;
        }

        .digitador-rodape {
            font-size: .8rem;
            color: #667085;
        }

        .select2-container {
            width: 100% !important;
        }

        .select2-container .select2-selection--single {
            height: 34px;
            border: 1px solid #dee2e6;
            border-radius: .375rem;
        }

        .select2-container .select2-selection--single .select2-selection__rendered {
            line-height: 32px;
            padding-left: .75rem;
            font-size: .84rem;
        }

        .select2-container .select2-selection--single .select2-selection__arrow {
            height: 32px;
        }

        /* Mantém a lista do Select2 acima dos modais do Bootstrap. */
        .select2-container--open {
            z-index: 2000;
        }

        :root {
            --cec-bg: #f4f7fb;
            --cec-card: #ffffff;
            --cec-border: #dde4ee;
            --cec-text: #253247;
        }

        body {
            background: var(--cec-bg);
            color: var(--cec-text);
            min-height: 100vh;
        }

        .page-header {
            background: linear-gradient(135deg, #172b4d, #244b7a);
            color: #fff;
            padding: 22px 0;
            margin-bottom: 24px;
            box-shadow: 0 5px 18px rgba(0, 0, 0, .12);
        }

        .form-card {
            background: var(--cec-card);
            border: 1px solid var(--cec-border);
            border-radius: 16px;
            box-shadow: 0 8px 30px rgba(31, 45, 61, .07);
            overflow: hidden;
            margin-bottom: 22px;
        }

        .form-card-header {
            padding: 14px 18px;
            font-weight: 700;
            background: #f8fafc;
            border-bottom: 1px solid var(--cec-border);
        }

        .form-card-body {
            padding: 20px;
        }

        .form-label {
            font-weight: 600;
            font-size: .88rem;
            margin-bottom: 5px;
        }

        .required::after {
            content: " *";
            color: #dc3545;
        }

        .loading-overlay {
            position: fixed;
            inset: 0;
            background: rgba(255, 255, 255, .72);
            z-index: 9998;
            display: none;
            align-items: center;
            justify-content: center;
            backdrop-filter: blur(2px);
        }

        .loading-overlay.show {
            display: flex;
        }

        .sticky-actions {
            position: sticky;
            bottom: 0;
            z-index: 20;
            background: rgba(255, 255, 255, .96);
            border-top: 1px solid var(--cec-border);
            padding: 14px;
            box-shadow: 0 -5px 18px rgba(31, 45, 61, .08);
        }

        .status-cliente {
            min-height: 24px;
        }


        .cidade-sugestoes {
            position: absolute;
            top: calc(100% + 2px);
            left: 0;
            right: 0;
            z-index: 1050;
            max-height: 240px;
            overflow-y: auto;
            display: none;
        }

        .cidade-sugestoes.show {
            display: block;
        }

        .cidade-sugestoes .list-group-item {
            cursor: pointer;
        }

        .comissao-card {
            border: 1px solid #f1c76b;
            background: linear-gradient(180deg, #fffdf6 0%, #fff9e9 100%);
        }
        .comissao-card .form-card-header { background: #fff3cd; color: #664d03; }
        .campo-comissao { background: #fff; border: 1px solid #f0d58e; border-radius: 10px; padding: 10px; }
        .campo-comissao .form-control { font-weight: 700; text-align: right; }
        .portabilidade-card { border: 1px solid #b8d6ff; background: linear-gradient(180deg, #fbfdff 0%, #f2f7ff 100%); }
        .portabilidade-card .form-card-header { background: #e7f1ff; color: #084298; }

        @media (max-width: 767px) {
            .form-card-body {
                padding: 15px;
            }
        }
    
        /* Layout compacto para exibir mais informações na tela */
        body { font-size: .78rem; }
        .page-header { padding: 10px 0; margin-bottom: 10px; }
        .page-header h1 { font-size: 1rem; }
        .form-card { margin-bottom: 9px; border-radius: 9px; }
        .form-card-header { padding: 7px 10px; font-size: .82rem; }
        .form-card-body { padding: 9px 10px; }
        .form-label { font-size: .75rem; margin-bottom: 2px; }
        .row.g-3 { --bs-gutter-y: .42rem; --bs-gutter-x: .55rem; }
        .form-control,
        .form-select,
        .input-group-text,
        .btn {
            min-height: 29px;
            padding: .18rem .45rem;
            font-size: .77rem;
        }
        textarea.form-control { min-height: 54px; }
        .campo-valor,
        .campo-comissao { padding: 6px; border-radius: 7px; }
        .select2-container .select2-selection--single { height: 29px; }
        .select2-container .select2-selection--single .select2-selection__rendered {
            line-height: 27px;
            font-size: .77rem;
            padding-left: .45rem;
        }
        .select2-container .select2-selection--single .select2-selection__arrow { height: 27px; }
        .sticky-actions { padding: 8px; }
        .status-cliente { min-height: 0; margin-bottom: 5px; }
        .resumo-proposta-card { border-left: 4px solid #0d6efd; }
        .resumo-label { display:block; color:#667085; font-size:.68rem; text-transform:uppercase; }
        .idade-badge { min-height:29px;border-radius:6px;padding:.2rem .45rem;font-weight:700;color:#fff;display:flex;align-items:center;justify-content:center; }
        .idade-normal { background:#0d6efd; } .idade-alerta { background:#dc3545; }
        .campo-copiavel { cursor:copy; }

        .arquivo-imagem-visualizador {
            max-width: 100%;
            max-height: 72vh;
            transform-origin: center center;
            user-select: none;
            -webkit-user-drag: none;
        }

        .arquivo-iframe-visualizador {
            width: 100%;
            height: 72vh;
            border: 0;
            background: #fff;
        }
