*{box-sizing:border-box}html,body{min-height:100%}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#0b0d12;color:#f6f2ec}a{color:inherit}.lvcrm-login{min-height:100vh;display:grid;grid-template-columns:minmax(320px,460px) minmax(0,1fr);align-items:stretch}.lvcrm-login-card{min-height:100vh;padding:46px;display:flex;flex-direction:column;justify-content:center;background:#10131a;border-right:1px solid rgba(255,255,255,.08)}.lvcrm-login-brand,.lvcrm-sidebar-brand{display:flex;align-items:center;gap:14px}.lvcrm-brand-mark{width:42px;height:42px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(135deg,#d98b3a,#f0c27a);color:#15100a;font-weight:900;letter-spacing:-.05em}.lvcrm-login-brand strong,.lvcrm-sidebar-brand strong{display:block;font-size:16px}.lvcrm-login-brand span,.lvcrm-sidebar-brand span{display:block;margin-top:2px;color:rgba(246,242,236,.56);font-size:12px}.lvcrm-login-copy{margin:54px 0 26px}.lvcrm-login-copy>span,.lvcrm-topbar span,.lvcrm-panel-head span{color:#d98b3a;font-size:12px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.lvcrm-login-copy h1,.lvcrm-login-side h2,.lvcrm-topbar h1,.lvcrm-panel h2,.lvcrm-page-placeholder h2{margin:8px 0 0;font-size:clamp(32px,5vw,54px);line-height:.96;letter-spacing:-.075em}.lvcrm-login-copy p,.lvcrm-login-side p,.lvcrm-panel p,.lvcrm-empty-state span{margin:16px 0 0;color:rgba(246,242,236,.64);line-height:1.65}.lvcrm-form{display:grid;gap:14px}.lvcrm-form label{display:grid;gap:7px;color:rgba(246,242,236,.72);font-size:13px;font-weight:650}.lvcrm-form input[type=text],.lvcrm-form input[type=password]{width:100%;min-height:48px;border:1px solid rgba(255,255,255,.10);border-radius:14px;padding:0 14px;background:rgba(255,255,255,.055);color:#fff;font-size:15px;outline:none}.lvcrm-form input[type=text]:focus,.lvcrm-form input[type=password]:focus{border-color:rgba(217,139,58,.72);box-shadow:0 0 0 4px rgba(217,139,58,.12)}.lvcrm-form button,.lvcrm-link-button{width:100%;min-height:50px;border:0;border-radius:999px;background:linear-gradient(135deg,#d98b3a,#f0c27a);color:#15100a;font-size:15px;font-weight:850;cursor:pointer;text-align:center;text-decoration:none;display:grid;place-items:center}.lvcrm-check{display:flex!important;grid-template-columns:auto 1fr;align-items:center;gap:10px!important;margin:4px 0 8px}.lvcrm-check input{width:16px;height:16px;accent-color:#d98b3a}.lvcrm-alert{margin:0 0 18px;padding:13px 14px;border-radius:14px;font-size:13px;line-height:1.45}.lvcrm-alert-error{background:rgba(236,80,80,.12);color:#ffb4b4;border:1px solid rgba(236,80,80,.24)}.lvcrm-alert-success{background:rgba(67,175,116,.12);color:#b9f4cf;border:1px solid rgba(67,175,116,.24)}.lvcrm-login-foot{margin:28px 0 0;color:rgba(246,242,236,.42);font-size:12px}.lvcrm-login-side{min-height:100vh;padding:70px;display:flex;flex-direction:column;justify-content:center;background:radial-gradient(circle at 22% 20%,rgba(217,139,58,.25),transparent 28%),radial-gradient(circle at 80% 70%,rgba(240,194,122,.12),transparent 28%),linear-gradient(135deg,#11141c 0%,#080a0f 100%)}.lvcrm-pill,.lvcrm-status,.lvcrm-mini-badge{display:inline-flex;width:fit-content;align-items:center;gap:6px;border:1px solid rgba(217,139,58,.28);border-radius:999px;padding:8px 12px;background:rgba(217,139,58,.11);color:#f0c27a;font-size:12px;font-weight:800}.lvcrm-mini-badge{padding:5px 9px;font-size:11px}.lvcrm-login-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:34px;max-width:560px}.lvcrm-login-grid div{min-height:112px;padding:18px;border:1px solid rgba(255,255,255,.085);border-radius:18px;background:rgba(255,255,255,.055)}.lvcrm-login-grid strong,.lvcrm-login-grid span{display:block}.lvcrm-login-grid span{margin-top:8px;color:rgba(246,242,236,.54);font-size:13px}.lvcrm-app{min-height:100vh;display:grid;grid-template-columns:276px minmax(0,1fr);background:#0b0d12}.lvcrm-sidebar{min-height:100vh;padding:24px;background:#10131a;border-right:1px solid rgba(255,255,255,.075);position:sticky;top:0}.lvcrm-nav{display:grid;gap:6px;margin-top:34px}.lvcrm-nav a{display:flex;align-items:center;gap:11px;min-height:44px;padding:0 13px;border-radius:14px;color:rgba(246,242,236,.66);text-decoration:none;font-size:14px;font-weight:720}.lvcrm-nav a:hover,.lvcrm-nav a.is-active{background:rgba(217,139,58,.13);color:#fff}.lvcrm-nav a span{color:#d98b3a}.lvcrm-sidebar-footer{margin-top:34px;padding:16px;border-radius:18px;background:rgba(255,255,255,.045)}.lvcrm-sidebar-footer span,.lvcrm-sidebar-footer strong{display:block}.lvcrm-sidebar-footer span{color:rgba(246,242,236,.48);font-size:12px}.lvcrm-sidebar-footer strong{margin-top:3px;font-size:13px}.lvcrm-main{min-width:0;padding:28px}.lvcrm-topbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:26px}.lvcrm-topbar h1{font-size:clamp(30px,4vw,48px)}.lvcrm-menu-button{display:none;width:44px;height:44px;border:1px solid rgba(255,255,255,.10);border-radius:14px;background:rgba(255,255,255,.06);color:#fff}.lvcrm-user{display:flex;align-items:center;gap:12px;border:1px solid rgba(255,255,255,.075);border-radius:999px;padding:8px 9px 8px 15px;background:rgba(255,255,255,.045)}.lvcrm-user span{color:rgba(246,242,236,.76);font-size:13px;font-weight:700}.lvcrm-user a{display:inline-flex;min-height:34px;align-items:center;border-radius:999px;padding:0 14px;background:rgba(255,255,255,.08);color:#fff;text-decoration:none;font-size:13px;font-weight:800}.lvcrm-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.lvcrm-metric,.lvcrm-panel{border:1px solid rgba(255,255,255,.075);border-radius:22px;background:rgba(255,255,255,.047);box-shadow:0 18px 60px rgba(0,0,0,.18)}.lvcrm-metric{padding:22px}.lvcrm-metric span,.lvcrm-metric small{display:block}.lvcrm-metric span{color:rgba(246,242,236,.52);font-size:12px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.lvcrm-metric strong{display:block;margin:10px 0 6px;color:#fff;font-size:42px;line-height:1;letter-spacing:-.075em}.lvcrm-metric small{color:rgba(246,242,236,.56);font-size:13px}.lvcrm-board{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:16px;margin-top:16px}.lvcrm-panel{padding:24px}.lvcrm-panel-large{max-width:820px}.lvcrm-panel-head{display:flex;align-items:start;justify-content:space-between;gap:18px}.lvcrm-panel h2,.lvcrm-page-placeholder h2{font-size:clamp(26px,3vw,38px)}.lvcrm-list{margin:22px 0 0;padding:0;list-style:none;display:grid;gap:10px}.lvcrm-list li{position:relative;padding-left:22px;color:rgba(246,242,236,.72)}.lvcrm-list li::before{content:"";position:absolute;left:0;top:.72em;width:7px;height:7px;border-radius:999px;background:#d98b3a}.lvcrm-roadmap{display:grid;gap:10px;margin-top:24px}.lvcrm-roadmap div{display:flex;align-items:center;gap:12px;padding:13px;border-radius:16px;background:rgba(255,255,255,.045)}.lvcrm-roadmap strong{color:#d98b3a}.lvcrm-roadmap span{color:rgba(246,242,236,.74);font-size:14px;font-weight:720}.lvcrm-page-placeholder{display:grid;align-items:start}.lvcrm-empty-state{margin-top:28px;padding:22px;border-radius:18px;background:rgba(255,255,255,.045)}.lvcrm-empty-state strong,.lvcrm-empty-state span{display:block}.lvcrm-empty-state strong{color:#fff}.lvcrm-crud-grid{display:grid;grid-template-columns:minmax(360px,.78fr) minmax(0,1.22fr);gap:16px;align-items:start}.lvcrm-crud-grid-contacts{grid-template-columns:minmax(320px,.8fr) minmax(0,1.2fr);margin-top:8px}.lvcrm-full-panel{margin-top:16px}.lvcrm-data-form{display:grid;gap:14px;margin-top:18px}.lvcrm-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.lvcrm-data-form label{display:grid;gap:7px;color:rgba(246,242,236,.72);font-size:12px;font-weight:780}.lvcrm-data-form input,.lvcrm-data-form select,.lvcrm-data-form textarea,.lvcrm-inline-search input,.lvcrm-inline-search select{width:100%;border:1px solid rgba(255,255,255,.10);border-radius:13px;background:rgba(255,255,255,.055);color:#fff;padding:0 12px;min-height:42px;outline:none}.lvcrm-data-form textarea{padding:12px;resize:vertical}.lvcrm-data-form option{background:#10131a;color:#fff}.lvcrm-wide{grid-column:1/-1}.lvcrm-form-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.lvcrm-form-actions button,.lvcrm-inline-search button,.lvcrm-actions button{border:0;border-radius:999px;background:linear-gradient(135deg,#d98b3a,#f0c27a);color:#15100a;font-weight:850;min-height:40px;padding:0 16px;cursor:pointer}.lvcrm-form-actions a{color:#f0c27a;text-decoration:none;font-size:13px;font-weight:800}.lvcrm-inline-search{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;margin:18px 0}.lvcrm-table-wrap{overflow:auto}.lvcrm-table{width:100%;border-collapse:separate;border-spacing:0 8px}.lvcrm-table th{text-align:left;color:rgba(246,242,236,.44);font-size:11px;text-transform:uppercase;letter-spacing:.08em;padding:0 12px 4px}.lvcrm-table td{background:rgba(255,255,255,.045);border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.06);padding:13px 12px;color:rgba(246,242,236,.76);vertical-align:middle}.lvcrm-table td:first-child{border-left:1px solid rgba(255,255,255,.06);border-radius:14px 0 0 14px}.lvcrm-table td:last-child{border-right:1px solid rgba(255,255,255,.06);border-radius:0 14px 14px 0}.lvcrm-table strong{display:block;color:#fff}.lvcrm-table small{display:block;margin-top:3px;color:rgba(246,242,236,.45)}.lvcrm-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.lvcrm-actions a{display:inline-flex;align-items:center;min-height:34px;border-radius:999px;background:rgba(255,255,255,.07);padding:0 12px;color:#fff;text-decoration:none;font-size:12px;font-weight:850}.lvcrm-actions form{margin:0}.lvcrm-actions button{min-height:34px;padding:0 12px;font-size:12px}.lvcrm-actions form:last-child button{background:rgba(236,80,80,.18);color:#ffb4b4;border:1px solid rgba(236,80,80,.22)}@media(max-width:1240px){.lvcrm-crud-grid{grid-template-columns:1fr}.lvcrm-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.lvcrm-board{grid-template-columns:1fr}}@media(max-width:860px){.lvcrm-login{grid-template-columns:1fr}.lvcrm-login-side{display:none}.lvcrm-login-card{padding:28px}.lvcrm-app{grid-template-columns:1fr}.lvcrm-sidebar{position:fixed;z-index:50;inset:0 auto 0 0;width:290px;transform:translateX(-100%);transition:transform .22s ease}body.lvcrm-sidebar-open .lvcrm-sidebar{transform:translateX(0)}.lvcrm-menu-button{display:inline-grid;place-items:center}.lvcrm-topbar{align-items:flex-start}.lvcrm-user span{display:none}.lvcrm-form-grid,.lvcrm-inline-search{grid-template-columns:1fr}}@media(max-width:620px){.lvcrm-main{padding:18px}.lvcrm-metrics{grid-template-columns:1fr}.lvcrm-topbar{flex-wrap:wrap}.lvcrm-user{margin-left:auto}}

/* V2.2 — tabela e ações mais estáveis */
.lvcrm-table {
    table-layout: auto;
}

.lvcrm-table th:last-child,
.lvcrm-table td:last-child {
    width: 1%;
}

.lvcrm-table td.lvcrm-actions {
    display: table-cell;
    min-width: 245px;
    white-space: nowrap;
    vertical-align: middle;
}

.lvcrm-actions a,
.lvcrm-actions form {
    display: inline-flex;
    align-items: center;
    margin: 3px 6px 3px 0;
    vertical-align: middle;
}

.lvcrm-actions form {
    padding: 0;
}

.lvcrm-actions a,
.lvcrm-actions button {
    min-height: 34px;
    line-height: 34px;
    padding: 0 13px;
}

.lvcrm-table td strong {
    word-break: break-word;
}

.lvcrm-table td small {
    max-width: 280px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.lvcrm-table td:nth-child(1) {
    min-width: 260px;
}

.lvcrm-table td:nth-child(2) {
    min-width: 140px;
}

.lvcrm-table-wrap {
    width: 100%;
    overflow-x: auto;
    padding-bottom: 2px;
}

@media (max-width: 1200px) {
    .lvcrm-table {
        min-width: 860px;
    }
}

@media (max-width: 760px) {
    .lvcrm-table td.lvcrm-actions {
        min-width: 220px;
    }

    .lvcrm-actions a,
    .lvcrm-actions form {
        margin-right: 4px;
    }

    .lvcrm-actions a,
    .lvcrm-actions button {
        padding: 0 10px;
        font-size: 11px;
    }
}


/* =========================================================
   V2.3 LIGHT PREMIUM THEME — Levora CRM
   ========================================================= */

:root {
    --lvcrm-bg: #f5f1eb;
    --lvcrm-bg-soft: #fbf8f3;
    --lvcrm-card: #ffffff;
    --lvcrm-card-soft: #f8f4ee;
    --lvcrm-sidebar: #ffffff;
    --lvcrm-border: rgba(24, 28, 36, 0.10);
    --lvcrm-border-strong: rgba(24, 28, 36, 0.16);
    --lvcrm-text: #171a22;
    --lvcrm-muted: #6f7480;
    --lvcrm-muted-2: #969ba5;
    --lvcrm-accent: #d98b3a;
    --lvcrm-accent-2: #f0bc72;
    --lvcrm-accent-soft: rgba(217, 139, 58, 0.12);
    --lvcrm-danger: #b42318;
    --lvcrm-danger-soft: rgba(180, 35, 24, 0.09);
    --lvcrm-success: #157347;
    --lvcrm-success-soft: rgba(21, 115, 71, 0.10);
    --lvcrm-shadow: 0 18px 45px rgba(25, 27, 34, 0.075);
}

body {
    background:
        radial-gradient(circle at 22% 0%, rgba(217, 139, 58, 0.13), transparent 31%),
        linear-gradient(180deg, #fbf8f3 0%, var(--lvcrm-bg) 100%);
    color: var(--lvcrm-text);
}

/* LOGIN */
.lvcrm-login-card {
    background: var(--lvcrm-sidebar);
    border-right: 1px solid var(--lvcrm-border);
    box-shadow: 18px 0 60px rgba(25, 27, 34, 0.04);
}

.lvcrm-login-side {
    background:
        radial-gradient(circle at 26% 22%, rgba(217, 139, 58, 0.20), transparent 30%),
        radial-gradient(circle at 78% 70%, rgba(240, 188, 114, 0.24), transparent 30%),
        linear-gradient(135deg, #f7efe5 0%, #fbf8f3 48%, #f0e5d6 100%);
}

.lvcrm-login-brand strong,
.lvcrm-sidebar-brand strong,
.lvcrm-login-copy h1,
.lvcrm-login-side h2,
.lvcrm-topbar h1,
.lvcrm-panel h2,
.lvcrm-page-placeholder h2,
.lvcrm-empty-state strong,
.lvcrm-table strong {
    color: var(--lvcrm-text);
}

.lvcrm-login-brand span,
.lvcrm-sidebar-brand span,
.lvcrm-login-copy p,
.lvcrm-login-side p,
.lvcrm-panel p,
.lvcrm-empty-state span,
.lvcrm-login-grid span,
.lvcrm-metric small,
.lvcrm-table small {
    color: var(--lvcrm-muted);
}

.lvcrm-login-copy > span,
.lvcrm-topbar span,
.lvcrm-panel-head span {
    color: var(--lvcrm-accent);
}

.lvcrm-form label,
.lvcrm-data-form label {
    color: var(--lvcrm-muted);
}

.lvcrm-form input[type="text"],
.lvcrm-form input[type="password"],
.lvcrm-data-form input,
.lvcrm-data-form select,
.lvcrm-data-form textarea,
.lvcrm-inline-search input,
.lvcrm-inline-search select {
    background: #ffffff;
    border: 1px solid var(--lvcrm-border);
    color: var(--lvcrm-text);
    box-shadow: 0 8px 20px rgba(25, 27, 34, 0.035);
}

.lvcrm-data-form option {
    background: #ffffff;
    color: var(--lvcrm-text);
}

.lvcrm-form input[type="text"]:focus,
.lvcrm-form input[type="password"]:focus,
.lvcrm-data-form input:focus,
.lvcrm-data-form select:focus,
.lvcrm-data-form textarea:focus,
.lvcrm-inline-search input:focus,
.lvcrm-inline-search select:focus {
    border-color: rgba(217, 139, 58, 0.62);
    box-shadow: 0 0 0 4px rgba(217, 139, 58, 0.12);
}

.lvcrm-login-grid div {
    background: rgba(255, 255, 255, 0.72);
    border: 1px solid var(--lvcrm-border);
    box-shadow: var(--lvcrm-shadow);
}

.lvcrm-login-foot {
    color: var(--lvcrm-muted-2);
}

/* APP SHELL */
.lvcrm-app {
    background:
        radial-gradient(circle at 18% 0%, rgba(217, 139, 58, 0.10), transparent 28%),
        linear-gradient(180deg, #fbf8f3 0%, var(--lvcrm-bg) 100%);
}

.lvcrm-sidebar {
    background: var(--lvcrm-sidebar);
    border-right: 1px solid var(--lvcrm-border);
    box-shadow: 18px 0 50px rgba(25, 27, 34, 0.035);
}

.lvcrm-nav a {
    color: #545b68;
}

.lvcrm-nav a:hover,
.lvcrm-nav a.is-active {
    background: var(--lvcrm-accent-soft);
    color: var(--lvcrm-text);
}

.lvcrm-nav a span {
    color: var(--lvcrm-accent);
}

.lvcrm-sidebar-footer {
    background: var(--lvcrm-card-soft);
    border: 1px solid var(--lvcrm-border);
}

.lvcrm-sidebar-footer span {
    color: var(--lvcrm-muted);
}

.lvcrm-sidebar-footer strong {
    color: var(--lvcrm-text);
}

/* TOP BAR */
.lvcrm-user {
    background: #ffffff;
    border: 1px solid var(--lvcrm-border);
    box-shadow: 0 8px 20px rgba(25, 27, 34, 0.045);
}

.lvcrm-user span {
    color: var(--lvcrm-text);
}

.lvcrm-user a {
    background: var(--lvcrm-card-soft);
    color: var(--lvcrm-text);
    border: 1px solid var(--lvcrm-border);
}

.lvcrm-menu-button {
    background: #ffffff;
    color: var(--lvcrm-text);
    border: 1px solid var(--lvcrm-border);
}

/* CARDS */
.lvcrm-metric,
.lvcrm-panel {
    background: rgba(255, 255, 255, 0.86);
    border: 1px solid var(--lvcrm-border);
    box-shadow: var(--lvcrm-shadow);
    backdrop-filter: blur(10px);
}

.lvcrm-metric span {
    color: var(--lvcrm-muted);
}

.lvcrm-metric strong {
    color: var(--lvcrm-text);
}

.lvcrm-pill,
.lvcrm-status,
.lvcrm-mini-badge {
    background: var(--lvcrm-accent-soft);
    border: 1px solid rgba(217, 139, 58, 0.26);
    color: #9a5d20;
}

/* TABLES */
.lvcrm-table th {
    color: var(--lvcrm-muted-2);
}

.lvcrm-table td {
    background: #ffffff;
    border-top: 1px solid var(--lvcrm-border);
    border-bottom: 1px solid var(--lvcrm-border);
    color: #3f4652;
}

.lvcrm-table td:first-child {
    border-left: 1px solid var(--lvcrm-border);
}

.lvcrm-table td:last-child {
    border-right: 1px solid var(--lvcrm-border);
}

.lvcrm-actions a {
    background: var(--lvcrm-card-soft);
    color: var(--lvcrm-text);
    border: 1px solid var(--lvcrm-border);
}

.lvcrm-actions form:last-child button {
    background: var(--lvcrm-danger-soft);
    color: var(--lvcrm-danger);
    border: 1px solid rgba(180, 35, 24, 0.18);
}

.lvcrm-empty-state {
    background: var(--lvcrm-card-soft);
    border: 1px solid var(--lvcrm-border);
}

/* LISTS / ROADMAP */
.lvcrm-list li,
.lvcrm-roadmap span {
    color: #4e5562;
}

.lvcrm-roadmap div {
    background: var(--lvcrm-card-soft);
    border: 1px solid var(--lvcrm-border);
}

/* ALERTS */
.lvcrm-alert-error {
    background: var(--lvcrm-danger-soft);
    color: var(--lvcrm-danger);
    border: 1px solid rgba(180, 35, 24, 0.18);
}

.lvcrm-alert-success {
    background: var(--lvcrm-success-soft);
    color: var(--lvcrm-success);
    border: 1px solid rgba(21, 115, 71, 0.18);
}

/* BUTTON CONTRAST */
.lvcrm-form button,
.lvcrm-link-button,
.lvcrm-form-actions button,
.lvcrm-inline-search button,
.lvcrm-actions button {
    background: linear-gradient(135deg, var(--lvcrm-accent), var(--lvcrm-accent-2));
    color: #1e1408;
    box-shadow: 0 10px 22px rgba(217, 139, 58, 0.20);
}

.lvcrm-form-actions a {
    color: #9a5d20;
}

/* MOBILE SIDEBAR */
@media (max-width: 860px) {
    .lvcrm-sidebar {
        box-shadow: 18px 0 70px rgba(25, 27, 34, 0.18);
    }
}


/* V3 — Projetos + Tarefas */
.lvcrm-header-link {
    display: inline-flex;
    align-items: center;
    min-height: 36px;
    border-radius: 999px;
    padding: 0 14px;
    background: var(--lvcrm-accent-soft, rgba(217, 139, 58, 0.12));
    color: #9a5d20;
    text-decoration: none;
    font-size: 12px;
    font-weight: 850;
    border: 1px solid rgba(217, 139, 58, 0.22);
}

.lvcrm-progress {
    width: 120px;
    height: 9px;
    overflow: hidden;
    border-radius: 999px;
    background: rgba(24, 28, 36, 0.09);
}

.lvcrm-progress span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(135deg, var(--lvcrm-accent, #d98b3a), var(--lvcrm-accent-2, #f0bc72));
}

.lvcrm-priority-urgent {
    color: #b42318;
    background: rgba(180, 35, 24, 0.09);
    border-color: rgba(180, 35, 24, 0.18);
}

.lvcrm-priority-high {
    color: #9a5d20;
    background: rgba(217, 139, 58, 0.13);
    border-color: rgba(217, 139, 58, 0.24);
}

.lvcrm-priority-low {
    color: #486581;
    background: rgba(72, 101, 129, 0.09);
    border-color: rgba(72, 101, 129, 0.16);
}

.lvcrm-table td:nth-child(4) small {
    display: block;
    margin-top: 5px;
}


/* =========================================================
   V3.1 — RESPONSIVE + DESKTOP POLISH
   ========================================================= */

/* Evita cortes laterais no desktop e melhora a área útil */
.lvcrm-app {
    width: 100%;
    overflow-x: hidden;
}

.lvcrm-main {
    width: 100%;
    max-width: calc(100vw - 276px);
    overflow-x: hidden;
}

.lvcrm-topbar {
    position: relative;
    z-index: 5;
}

.lvcrm-user {
    flex-shrink: 0;
    max-width: 230px;
}

.lvcrm-user span {
    max-width: 120px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.lvcrm-panel {
    min-width: 0;
}

.lvcrm-crud-grid {
    grid-template-columns: minmax(340px, 0.72fr) minmax(0, 1.28fr);
}

.lvcrm-table-wrap {
    max-width: 100%;
    overflow-x: auto;
}

.lvcrm-table {
    width: 100%;
}

.lvcrm-table td,
.lvcrm-table th {
    overflow-wrap: anywhere;
}

.lvcrm-table td.lvcrm-actions {
    min-width: 235px;
}

/* Botões mais compactos nas tabelas grandes */
.lvcrm-actions a,
.lvcrm-actions button {
    min-height: 32px;
    line-height: 32px;
    padding: 0 11px;
}

/* Corrige a zona do projeto/tarefa para não rebentar em ecrãs médios */
.lvcrm-table-projects td:nth-child(1),
.lvcrm-table-tasks td:nth-child(1) {
    min-width: 220px;
}

.lvcrm-table-projects td:nth-child(2),
.lvcrm-table-tasks td:nth-child(2) {
    min-width: 180px;
}

.lvcrm-table-projects td:nth-child(4) {
    min-width: 130px;
}

/* Tablet */
@media (max-width: 1280px) {
    .lvcrm-main {
        padding: 24px;
    }

    .lvcrm-crud-grid {
        grid-template-columns: 1fr;
    }

    .lvcrm-panel {
        border-radius: 20px;
    }

    .lvcrm-table {
        min-width: 820px;
    }
}

/* Mobile/tablet com sidebar escondida */
@media (max-width: 860px) {
    body {
        background: linear-gradient(180deg, #fbf8f3 0%, #f5f1eb 100%);
    }

    .lvcrm-app {
        display: block;
        min-height: 100vh;
    }

    .lvcrm-main {
        max-width: 100vw;
        padding: 18px;
    }

    .lvcrm-topbar {
        align-items: center;
        gap: 12px;
        margin-bottom: 18px;
    }

    .lvcrm-topbar > div:nth-child(2) {
        min-width: 0;
        flex: 1;
    }

    .lvcrm-topbar h1 {
        font-size: clamp(30px, 10vw, 42px);
        line-height: 0.96;
    }

    .lvcrm-user {
        max-width: none;
        padding: 6px;
    }

    .lvcrm-user a {
        min-height: 34px;
        padding: 0 12px;
    }

    .lvcrm-metrics {
        grid-template-columns: 1fr 1fr;
        gap: 12px;
    }

    .lvcrm-metric,
    .lvcrm-panel {
        border-radius: 18px;
    }

    .lvcrm-metric {
        padding: 16px;
    }

    .lvcrm-metric strong {
        font-size: 34px;
    }

    .lvcrm-board,
    .lvcrm-crud-grid,
    .lvcrm-crud-grid-contacts {
        display: grid;
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .lvcrm-panel {
        padding: 18px;
    }

    .lvcrm-panel h2,
    .lvcrm-page-placeholder h2 {
        font-size: clamp(26px, 8vw, 34px);
    }

    .lvcrm-form-grid,
    .lvcrm-inline-search {
        grid-template-columns: 1fr;
    }

    .lvcrm-inline-search button {
        width: 100%;
    }
}

/* Mobile: transformar tabelas em cartões legíveis */
@media (max-width: 720px) {
    .lvcrm-table-wrap {
        overflow: visible;
    }

    .lvcrm-table {
        min-width: 0;
        width: 100%;
        border-collapse: separate;
        border-spacing: 0;
    }

    .lvcrm-table thead {
        display: none;
    }

    .lvcrm-table,
    .lvcrm-table tbody,
    .lvcrm-table tr,
    .lvcrm-table td {
        display: block;
        width: 100%;
    }

    .lvcrm-table tr {
        margin: 0 0 12px;
        padding: 14px;
        border: 1px solid var(--lvcrm-border, rgba(24, 28, 36, 0.10));
        border-radius: 18px;
        background: #ffffff;
        box-shadow: 0 12px 30px rgba(25, 27, 34, 0.055);
    }

    .lvcrm-table td,
    .lvcrm-table td:first-child,
    .lvcrm-table td:last-child {
        border: 0;
        border-radius: 0;
        background: transparent;
        padding: 9px 0;
        display: grid;
        grid-template-columns: 108px minmax(0, 1fr);
        gap: 10px;
        align-items: start;
    }

    .lvcrm-table td::before {
        color: var(--lvcrm-muted-2, #969ba5);
        font-size: 11px;
        font-weight: 850;
        letter-spacing: 0.06em;
        text-transform: uppercase;
    }

    .lvcrm-table td strong,
    .lvcrm-table td small {
        min-width: 0;
        max-width: none;
        white-space: normal;
    }

    .lvcrm-table td.lvcrm-actions {
        min-width: 0;
        display: flex;
        flex-wrap: wrap;
        gap: 7px;
        padding-top: 12px;
        border-top: 1px solid var(--lvcrm-border, rgba(24, 28, 36, 0.10));
        margin-top: 6px;
    }

    .lvcrm-table td.lvcrm-actions::before {
        display: none;
    }

    .lvcrm-actions a,
    .lvcrm-actions form,
    .lvcrm-actions button {
        margin: 0;
    }

    .lvcrm-actions a,
    .lvcrm-actions button {
        min-height: 36px;
        line-height: 36px;
        padding: 0 13px;
        font-size: 12px;
    }

    .lvcrm-progress {
        width: 100%;
        max-width: 180px;
    }

    /* Labels por tabela */
    .lvcrm-table-companies td:nth-child(1)::before { content: "Cliente"; }
    .lvcrm-table-companies td:nth-child(2)::before { content: "Contacto"; }
    .lvcrm-table-companies td:nth-child(3)::before { content: "Estado"; }

    .lvcrm-table-contacts td:nth-child(1)::before { content: "Nome"; }
    .lvcrm-table-contacts td:nth-child(2)::before { content: "Email"; }
    .lvcrm-table-contacts td:nth-child(3)::before { content: "Telefone"; }

    .lvcrm-table-leads td:nth-child(1)::before { content: "Lead"; }
    .lvcrm-table-leads td:nth-child(2)::before { content: "Serviço"; }
    .lvcrm-table-leads td:nth-child(3)::before { content: "Valor"; }
    .lvcrm-table-leads td:nth-child(4)::before { content: "Estado"; }

    .lvcrm-table-projects td:nth-child(1)::before { content: "Projeto"; }
    .lvcrm-table-projects td:nth-child(2)::before { content: "Cliente"; }
    .lvcrm-table-projects td:nth-child(3)::before { content: "Estado"; }
    .lvcrm-table-projects td:nth-child(4)::before { content: "Progresso"; }

    .lvcrm-table-tasks td:nth-child(1)::before { content: "Tarefa"; }
    .lvcrm-table-tasks td:nth-child(2)::before { content: "Ligação"; }
    .lvcrm-table-tasks td:nth-child(3)::before { content: "Prioridade"; }
    .lvcrm-table-tasks td:nth-child(4)::before { content: "Estado"; }
    .lvcrm-table-tasks td:nth-child(5)::before { content: "Prazo"; }
}

/* Mobile pequeno */
@media (max-width: 520px) {
    .lvcrm-main {
        padding: 14px;
    }

    .lvcrm-topbar {
        display: grid;
        grid-template-columns: 44px 1fr auto;
        align-items: center;
    }

    .lvcrm-topbar h1 {
        font-size: 31px;
    }

    .lvcrm-topbar span {
        font-size: 10px;
    }

    .lvcrm-user {
        justify-self: end;
    }

    .lvcrm-metrics {
        grid-template-columns: 1fr;
    }

    .lvcrm-panel,
    .lvcrm-metric {
        border-radius: 16px;
    }

    .lvcrm-data-form input,
    .lvcrm-data-form select,
    .lvcrm-data-form textarea,
    .lvcrm-inline-search input,
    .lvcrm-inline-search select {
        min-height: 44px;
        font-size: 16px;
    }

    .lvcrm-table td,
    .lvcrm-table td:first-child,
    .lvcrm-table td:last-child {
        grid-template-columns: 1fr;
        gap: 4px;
    }

    .lvcrm-table td::before {
        margin-bottom: 1px;
    }

    .lvcrm-actions a,
    .lvcrm-actions form,
    .lvcrm-actions button {
        flex: 1 1 auto;
    }

    .lvcrm-actions a,
    .lvcrm-actions button {
        justify-content: center;
        text-align: center;
    }
}


/* =========================================================
   V3.2 — POLISH TABELAS PROJETOS/TAREFAS
   ========================================================= */

/* Desktop: listas mais elegantes e sem textos partidos */
.lvcrm-table-projects,
.lvcrm-table-tasks,
.lvcrm-table-leads,
.lvcrm-table-companies {
    border-spacing: 0 10px;
}

.lvcrm-table-projects th,
.lvcrm-table-projects td,
.lvcrm-table-tasks th,
.lvcrm-table-tasks td {
    vertical-align: middle;
}

/* Projetos — largura controlada por coluna */
.lvcrm-table-projects {
    min-width: 980px;
}

.lvcrm-table-projects th:nth-child(1),
.lvcrm-table-projects td:nth-child(1) {
    width: 26%;
    min-width: 230px;
}

.lvcrm-table-projects th:nth-child(2),
.lvcrm-table-projects td:nth-child(2) {
    width: 27%;
    min-width: 230px;
}

.lvcrm-table-projects th:nth-child(3),
.lvcrm-table-projects td:nth-child(3) {
    width: 170px;
    min-width: 170px;
}

.lvcrm-table-projects th:nth-child(4),
.lvcrm-table-projects td:nth-child(4) {
    width: 150px;
    min-width: 150px;
}

.lvcrm-table-projects th:nth-child(5),
.lvcrm-table-projects td:nth-child(5) {
    width: 245px;
    min-width: 245px;
}

/* Tarefas — largura controlada por coluna */
.lvcrm-table-tasks {
    min-width: 1040px;
}

.lvcrm-table-tasks th:nth-child(1),
.lvcrm-table-tasks td:nth-child(1) {
    width: 25%;
    min-width: 230px;
}

.lvcrm-table-tasks th:nth-child(2),
.lvcrm-table-tasks td:nth-child(2) {
    width: 25%;
    min-width: 230px;
}

.lvcrm-table-tasks th:nth-child(3),
.lvcrm-table-tasks td:nth-child(3) {
    width: 120px;
    min-width: 120px;
}

.lvcrm-table-tasks th:nth-child(4),
.lvcrm-table-tasks td:nth-child(4) {
    width: 140px;
    min-width: 140px;
}

.lvcrm-table-tasks th:nth-child(5),
.lvcrm-table-tasks td:nth-child(5) {
    width: 120px;
    min-width: 120px;
}

.lvcrm-table-tasks th:nth-child(6),
.lvcrm-table-tasks td:nth-child(6) {
    width: 185px;
    min-width: 185px;
}

/* Badges nunca devem partir palavra no desktop */
.lvcrm-table-projects .lvcrm-mini-badge,
.lvcrm-table-tasks .lvcrm-mini-badge,
.lvcrm-table-leads .lvcrm-mini-badge,
.lvcrm-table-companies .lvcrm-mini-badge {
    white-space: nowrap;
    max-width: none;
    line-height: 1;
    padding: 8px 11px;
}

/* Estado comprido com aspeto mais premium */
.lvcrm-table-projects td:nth-child(3) .lvcrm-mini-badge {
    min-width: 126px;
    justify-content: center;
    text-align: center;
}

/* Progresso mais alinhado */
.lvcrm-table-projects td:nth-child(4) {
    white-space: nowrap;
}

.lvcrm-table-projects td:nth-child(4) small {
    display: inline-block;
    margin-top: 6px;
    color: var(--lvcrm-muted, #6f7480);
}

.lvcrm-progress {
    width: 108px;
    height: 9px;
}

/* Botões em linha, mais compactos e com melhor alinhamento */
.lvcrm-table-projects td.lvcrm-actions,
.lvcrm-table-tasks td.lvcrm-actions {
    white-space: nowrap;
}

.lvcrm-table-projects .lvcrm-actions,
.lvcrm-table-tasks .lvcrm-actions {
    align-items: center;
}

.lvcrm-table-projects .lvcrm-actions a,
.lvcrm-table-projects .lvcrm-actions button,
.lvcrm-table-tasks .lvcrm-actions a,
.lvcrm-table-tasks .lvcrm-actions button {
    min-height: 36px;
    line-height: 36px;
    padding: 0 14px;
    font-size: 12px;
}

/* Melhor leitura dos textos dentro das células */
.lvcrm-table-projects td strong,
.lvcrm-table-tasks td strong {
    font-size: 14px;
    line-height: 1.25;
}

.lvcrm-table-projects td small,
.lvcrm-table-tasks td small {
    font-size: 12px;
    line-height: 1.35;
}

/* Desktop médio: deixa a tabela fazer scroll dentro do card em vez de partir conteúdo */
@media (min-width: 721px) and (max-width: 1380px) {
    .lvcrm-table-wrap {
        overflow-x: auto;
        padding-bottom: 6px;
    }

    .lvcrm-table-wrap::-webkit-scrollbar {
        height: 8px;
    }

    .lvcrm-table-wrap::-webkit-scrollbar-track {
        background: rgba(24, 28, 36, 0.06);
        border-radius: 999px;
    }

    .lvcrm-table-wrap::-webkit-scrollbar-thumb {
        background: rgba(217, 139, 58, 0.32);
        border-radius: 999px;
    }
}

/* Mobile continua em cartões, mas com badges a respirar melhor */
@media (max-width: 720px) {
    .lvcrm-table-projects,
    .lvcrm-table-tasks {
        min-width: 0;
    }

    .lvcrm-table-projects .lvcrm-mini-badge,
    .lvcrm-table-tasks .lvcrm-mini-badge {
        white-space: normal;
        line-height: 1.2;
        min-width: 0;
        text-align: left;
        justify-content: flex-start;
    }

    .lvcrm-progress {
        width: 100%;
        max-width: 190px;
    }
}


/* V4 — Documentos */
.lvcrm-check-grid {
    display: grid;
    gap: 9px;
    margin-top: 2px;
}

.lvcrm-check-row {
    display: flex !important;
    align-items: center;
    gap: 10px !important;
    min-height: 42px;
    padding: 0 13px;
    border: 1px solid var(--lvcrm-border, rgba(24, 28, 36, 0.10));
    border-radius: 13px;
    background: rgba(255, 255, 255, 0.62);
    color: var(--lvcrm-text, #171a22) !important;
}

.lvcrm-check-row input {
    width: 16px;
    height: 16px;
    accent-color: var(--lvcrm-accent, #d98b3a);
}

.lvcrm-file-current {
    margin: 2px 0 0;
    padding: 12px 13px;
    border-radius: 13px;
    background: var(--lvcrm-card-soft, #f8f4ee);
    color: var(--lvcrm-muted, #6f7480);
    font-size: 13px;
}

.lvcrm-file-current a {
    color: #9a5d20;
    font-weight: 850;
    text-decoration: none;
}

.lvcrm-badge-success {
    color: #157347;
    background: rgba(21, 115, 71, 0.10);
    border-color: rgba(21, 115, 71, 0.18);
}

.lvcrm-table-documents {
    min-width: 940px;
}

.lvcrm-table-documents th:nth-child(1),
.lvcrm-table-documents td:nth-child(1) {
    width: 28%;
    min-width: 230px;
}

.lvcrm-table-documents th:nth-child(2),
.lvcrm-table-documents td:nth-child(2) {
    width: 25%;
    min-width: 210px;
}

.lvcrm-table-documents th:nth-child(3),
.lvcrm-table-documents td:nth-child(3) {
    width: 150px;
    min-width: 150px;
}

.lvcrm-table-documents th:nth-child(4),
.lvcrm-table-documents td:nth-child(4) {
    width: 120px;
    min-width: 120px;
}

.lvcrm-table-documents th:nth-child(5),
.lvcrm-table-documents td:nth-child(5) {
    width: 230px;
    min-width: 230px;
}

@media (max-width: 720px) {
    .lvcrm-table-documents {
        min-width: 0;
    }

    .lvcrm-table-documents td:nth-child(1)::before { content: "Documento"; }
    .lvcrm-table-documents td:nth-child(2)::before { content: "Ligação"; }
    .lvcrm-table-documents td:nth-child(3)::before { content: "Categoria"; }
    .lvcrm-table-documents td:nth-child(4)::before { content: "Portal"; }

    .lvcrm-check-row {
        align-items: flex-start;
        padding: 12px 13px;
    }
}


/* =========================================================
   V4.1 — DOCUMENTOS POLISH + RESPONSIVE
   ========================================================= */

/* Página Documentos: evitar cards demasiado largos e filtros cortados */
@media (min-width: 1281px) {
    .lvcrm-crud-grid {
        grid-template-columns: minmax(380px, 560px) minmax(0, 1fr);
    }
}

/* Barra de pesquisa mais estável */
.lvcrm-inline-search {
    grid-template-columns: minmax(0, 1fr) minmax(190px, 240px) auto;
}

.lvcrm-inline-search select {
    min-width: 190px;
}

/* File input mais premium */
.lvcrm-data-form input[type="file"] {
    min-height: 48px;
    padding: 8px;
    cursor: pointer;
}

.lvcrm-data-form input[type="file"]::file-selector-button {
    min-height: 32px;
    margin-right: 10px;
    border: 0;
    border-radius: 999px;
    padding: 0 13px;
    background: linear-gradient(135deg, var(--lvcrm-accent, #d98b3a), var(--lvcrm-accent-2, #f0bc72));
    color: #1e1408;
    font-weight: 850;
    cursor: pointer;
}

/* Selects com texto longo menos cortado */
.lvcrm-data-form select,
.lvcrm-inline-search select {
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* Checkboxes de documentos mais limpas */
.lvcrm-check-grid {
    gap: 10px;
}

.lvcrm-check-row {
    min-height: 50px;
    font-size: 13px;
    font-weight: 750;
}

.lvcrm-check-row input {
    flex: 0 0 auto;
}

.lvcrm-check-row span {
    min-width: 0;
}

/* Empty state mais discreto */
.lvcrm-empty-state {
    margin-top: 18px;
}

/* Documentos: tabela/lista mais controlada */
.lvcrm-table-documents {
    min-width: 900px;
}

.lvcrm-table-documents td.lvcrm-actions {
    min-width: 240px;
}

/* Em ecrãs médios, os dois painéis passam a uma coluna para não cortar a direita */
@media (max-width: 1420px) {
    .lvcrm-crud-grid {
        grid-template-columns: 1fr;
    }

    .lvcrm-panel {
        max-width: 100%;
    }

    .lvcrm-inline-search {
        grid-template-columns: minmax(0, 1fr) minmax(180px, 230px) auto;
    }
}

/* Tablet/mobile */
@media (max-width: 860px) {
    .lvcrm-inline-search {
        grid-template-columns: 1fr;
    }

    .lvcrm-inline-search select,
    .lvcrm-inline-search button {
        width: 100%;
    }

    .lvcrm-data-form input[type="file"] {
        font-size: 14px;
    }
}

/* Mobile pequeno: formulário de documentos mais compacto */
@media (max-width: 520px) {
    .lvcrm-check-row {
        align-items: center;
        min-height: auto;
        padding: 12px;
    }

    .lvcrm-data-form input[type="file"]::file-selector-button {
        display: block;
        width: 100%;
        margin: 0 0 8px 0;
    }
}


/* V5 — Portal Cliente + Acessos */
.lvcrm-portal-app .lvcrm-sidebar {
    background: #ffffff;
}

.lvcrm-portal-page .lvcrm-metrics {
    margin-bottom: 16px;
}

.lvcrm-table-portal-users {
    min-width: 900px;
}

.lvcrm-table-portal-users th:nth-child(1),
.lvcrm-table-portal-users td:nth-child(1) {
    width: 28%;
    min-width: 230px;
}

.lvcrm-table-portal-users th:nth-child(2),
.lvcrm-table-portal-users td:nth-child(2) {
    width: 25%;
    min-width: 220px;
}

.lvcrm-table-portal-users th:nth-child(3),
.lvcrm-table-portal-users td:nth-child(3) {
    width: 120px;
    min-width: 120px;
}

.lvcrm-table-portal-users th:nth-child(4),
.lvcrm-table-portal-users td:nth-child(4) {
    width: 140px;
    min-width: 140px;
}

.lvcrm-table-portal-users th:nth-child(5),
.lvcrm-table-portal-users td:nth-child(5) {
    width: 150px;
    min-width: 150px;
}

.lvcrm-portal-page .lvcrm-table-projects {
    min-width: 760px;
}

.lvcrm-portal-page .lvcrm-table-documents {
    min-width: 760px;
}

.lvcrm-portal-login-page .lvcrm-login-side {
    background:
        radial-gradient(circle at 26% 22%, rgba(217, 139, 58, 0.20), transparent 30%),
        radial-gradient(circle at 78% 70%, rgba(240, 188, 114, 0.24), transparent 30%),
        linear-gradient(135deg, #f7efe5 0%, #fbf8f3 48%, #f0e5d6 100%);
}

@media (max-width: 720px) {
    .lvcrm-table-portal-users {
        min-width: 0;
    }

    .lvcrm-table-portal-users td:nth-child(1)::before { content: "Utilizador"; }
    .lvcrm-table-portal-users td:nth-child(2)::before { content: "Cliente"; }
    .lvcrm-table-portal-users td:nth-child(3)::before { content: "Estado"; }
    .lvcrm-table-portal-users td:nth-child(4)::before { content: "Portal"; }

    .lvcrm-portal-page .lvcrm-table-projects td:nth-child(1)::before { content: "Projeto"; }
    .lvcrm-portal-page .lvcrm-table-projects td:nth-child(2)::before { content: "Estado"; }
    .lvcrm-portal-page .lvcrm-table-projects td:nth-child(3)::before { content: "Progresso"; }
    .lvcrm-portal-page .lvcrm-table-projects td:nth-child(4)::before { content: "Prazo"; }

    .lvcrm-portal-page .lvcrm-table-documents td:nth-child(1)::before { content: "Documento"; }
    .lvcrm-portal-page .lvcrm-table-documents td:nth-child(2)::before { content: "Categoria"; }
    .lvcrm-portal-page .lvcrm-table-documents td:nth-child(3)::before { content: "Ligação"; }
}


/* V5.1 — documentos servidos por rota própria */
.lvcrm-actions a[href*="/ficheiro/"],
.lvcrm-file-current a[href*="/ficheiro/"] {
    position: relative;
}

.lvcrm-file-current {
    word-break: break-word;
}


/* V6 — Propostas */
.lvcrm-proposal-items {
    display: grid;
    gap: 10px;
    margin-top: 8px;
}

.lvcrm-form-section-title {
    color: var(--lvcrm-accent, #d98b3a);
    font-size: 12px;
    font-weight: 850;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.lvcrm-proposal-item-row {
    display: grid;
    grid-template-columns: minmax(160px, 1.1fr) minmax(160px, 1.2fr) 82px 110px;
    gap: 8px;
}

.lvcrm-proposal-item-row input {
    width: 100%;
    border: 1px solid var(--lvcrm-border, rgba(24, 28, 36, 0.10));
    border-radius: 13px;
    background: #fff;
    color: var(--lvcrm-text, #171a22);
    min-height: 42px;
    padding: 0 12px;
}

.lvcrm-table-proposals {
    min-width: 940px;
}

.lvcrm-table-proposal-items {
    min-width: 820px;
}

.lvcrm-proposal-view {
    max-width: 1180px;
}

.lvcrm-proposal-meta {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin: 22px 0;
}

.lvcrm-proposal-meta div,
.lvcrm-proposal-total div {
    padding: 14px;
    border: 1px solid var(--lvcrm-border, rgba(24, 28, 36, 0.10));
    border-radius: 16px;
    background: var(--lvcrm-card-soft, #f8f4ee);
}

.lvcrm-proposal-meta span,
.lvcrm-proposal-total span {
    display: block;
    color: var(--lvcrm-muted, #6f7480);
    font-size: 11px;
    font-weight: 850;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.lvcrm-proposal-meta strong,
.lvcrm-proposal-total strong {
    display: block;
    margin-top: 5px;
    color: var(--lvcrm-text, #171a22);
}

.lvcrm-proposal-text {
    margin: 18px 0;
    padding: 18px;
    border-radius: 16px;
    background: #fff;
    border: 1px solid var(--lvcrm-border, rgba(24, 28, 36, 0.10));
    color: #4e5562;
    line-height: 1.65;
}

.lvcrm-proposal-text h3 {
    margin: 0 0 8px;
    color: var(--lvcrm-text, #171a22);
}

.lvcrm-proposal-total {
    display: grid;
    justify-content: end;
    gap: 8px;
    margin-top: 18px;
}

.lvcrm-proposal-total div {
    min-width: 260px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
}

.lvcrm-proposal-total .is-total {
    background: var(--lvcrm-accent-soft, rgba(217, 139, 58, 0.12));
    border-color: rgba(217, 139, 58, 0.24);
}

.lvcrm-proposal-total .is-total strong {
    font-size: 22px;
}

.lvcrm-status-form {
    display: flex;
    gap: 10px;
    margin-top: 18px;
    align-items: center;
}

.lvcrm-status-form select {
    min-height: 42px;
    border-radius: 999px;
    border: 1px solid var(--lvcrm-border, rgba(24, 28, 36, 0.10));
    padding: 0 14px;
    background: #fff;
}

.lvcrm-status-form button {
    min-height: 42px;
    border: 0;
    border-radius: 999px;
    padding: 0 18px;
    background: linear-gradient(135deg, var(--lvcrm-accent, #d98b3a), var(--lvcrm-accent-2, #f0bc72));
    font-weight: 850;
    cursor: pointer;
}

@media (max-width: 1100px) {
    .lvcrm-proposal-item-row {
        grid-template-columns: 1fr 1fr;
    }

    .lvcrm-proposal-meta {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 720px) {
    .lvcrm-proposal-item-row,
    .lvcrm-proposal-meta {
        grid-template-columns: 1fr;
    }

    .lvcrm-proposal-total {
        justify-content: stretch;
    }

    .lvcrm-proposal-total div {
        min-width: 0;
        width: 100%;
    }

    .lvcrm-status-form {
        display: grid;
    }

    .lvcrm-status-form select,
    .lvcrm-status-form button {
        width: 100%;
    }

    .lvcrm-table-proposals td:nth-child(1)::before { content: "Proposta"; }
    .lvcrm-table-proposals td:nth-child(2)::before { content: "Cliente"; }
    .lvcrm-table-proposals td:nth-child(3)::before { content: "Estado"; }
    .lvcrm-table-proposals td:nth-child(4)::before { content: "Total"; }

    .lvcrm-table-proposal-items td:nth-child(1)::before { content: "Item"; }
    .lvcrm-table-proposal-items td:nth-child(2)::before { content: "Descrição"; }
    .lvcrm-table-proposal-items td:nth-child(3)::before { content: "Qtd."; }
    .lvcrm-table-proposal-items td:nth-child(4)::before { content: "Preço"; }
    .lvcrm-table-proposal-items td:nth-child(5)::before { content: "Total"; }
}

@media print {
    .lvcrm-sidebar,
    .lvcrm-topbar,
    .lvcrm-status-form,
    .lvcrm-panel-head .lvcrm-actions {
        display: none !important;
    }

    .lvcrm-app {
        display: block;
        background: #fff !important;
    }

    .lvcrm-main {
        max-width: none;
        padding: 0;
    }

    .lvcrm-panel {
        box-shadow: none;
        border: 0;
    }
}


/* =========================================================
   V6.3 — PROPOSTAS: PRINT/PDF POLISH
   ========================================================= */

/* Vista normal da proposta: tabela mais premium e sem total a partir */
.lvcrm-proposal-view {
    max-width: 1120px;
}

.lvcrm-proposal-view .lvcrm-table-proposal-items {
    min-width: 0;
    table-layout: fixed;
    border-spacing: 0 8px;
}

.lvcrm-proposal-view .lvcrm-table-proposal-items th:nth-child(1),
.lvcrm-proposal-view .lvcrm-table-proposal-items td:nth-child(1) {
    width: 28%;
}

.lvcrm-proposal-view .lvcrm-table-proposal-items th:nth-child(2),
.lvcrm-proposal-view .lvcrm-table-proposal-items td:nth-child(2) {
    width: 34%;
}

.lvcrm-proposal-view .lvcrm-table-proposal-items th:nth-child(3),
.lvcrm-proposal-view .lvcrm-table-proposal-items td:nth-child(3) {
    width: 10%;
    text-align: right;
}

.lvcrm-proposal-view .lvcrm-table-proposal-items th:nth-child(4),
.lvcrm-proposal-view .lvcrm-table-proposal-items td:nth-child(4) {
    width: 13%;
    text-align: right;
}

.lvcrm-proposal-view .lvcrm-table-proposal-items th:nth-child(5),
.lvcrm-proposal-view .lvcrm-table-proposal-items td:nth-child(5) {
    width: 15%;
    text-align: right;
}

.lvcrm-proposal-view .lvcrm-table-proposal-items td,
.lvcrm-proposal-view .lvcrm-table-proposal-items th {
    word-break: normal;
    overflow-wrap: normal;
}

.lvcrm-proposal-view .lvcrm-table-proposal-items td:last-child strong {
    white-space: nowrap;
}

/* Botão de imprimir continua a usar o browser, mas a folha fica formatada */
@page {
    size: A4;
    margin: 14mm;
}

@media print {
    html,
    body {
        width: 210mm;
        min-height: 297mm;
        margin: 0 !important;
        padding: 0 !important;
        background: #ffffff !important;
        color: #171a22 !important;
        font-family: Inter, Arial, sans-serif !important;
        -webkit-print-color-adjust: exact !important;
        print-color-adjust: exact !important;
    }

    /* Esconde tudo o que é interface CRM */
    .lvcrm-sidebar,
    .lvcrm-topbar,
    .lvcrm-alert,
    .lvcrm-status-form,
    .lvcrm-panel-head .lvcrm-actions,
    .lvcrm-menu-button,
    .lvcrm-user,
    .lvcrm-nav,
    .lvcrm-sidebar-footer,
    .lvcrm-actions,
    .lvcrm-header-link {
        display: none !important;
    }

    .lvcrm-app,
    .lvcrm-main {
        display: block !important;
        width: 100% !important;
        max-width: none !important;
        min-height: auto !important;
        margin: 0 !important;
        padding: 0 !important;
        background: #ffffff !important;
        box-shadow: none !important;
        overflow: visible !important;
    }

    .lvcrm-proposal-view {
        display: block !important;
        width: 100% !important;
        max-width: none !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: #ffffff !important;
        box-shadow: none !important;
    }

    /* Cabeçalho profissional da proposta */
    .lvcrm-proposal-view::before {
        content: "LEVORA";
        display: block;
        margin: 0 0 7mm;
        padding: 0 0 5mm;
        border-bottom: 1px solid #e6dfd5;
        color: #171a22;
        font-size: 18pt;
        font-weight: 900;
        letter-spacing: -0.04em;
    }

    .lvcrm-proposal-view .lvcrm-panel-head {
        display: block !important;
        margin: 0 0 7mm !important;
        padding: 0 !important;
    }

    .lvcrm-proposal-view .lvcrm-panel-head > div > span {
        display: block !important;
        margin: 0 0 2mm !important;
        color: #d98b3a !important;
        font-size: 8pt !important;
        font-weight: 900 !important;
        letter-spacing: 0.08em !important;
        text-transform: uppercase !important;
    }

    .lvcrm-proposal-view .lvcrm-panel-head h2 {
        margin: 0 !important;
        color: #171a22 !important;
        font-size: 24pt !important;
        line-height: 1.05 !important;
        letter-spacing: -0.06em !important;
    }

    /* Blocos meta em grelha de 4 colunas no PDF */
    .lvcrm-proposal-meta {
        display: grid !important;
        grid-template-columns: repeat(4, 1fr) !important;
        gap: 4mm !important;
        margin: 0 0 7mm !important;
    }

    .lvcrm-proposal-meta div {
        padding: 4mm !important;
        border: 1px solid #e6dfd5 !important;
        border-radius: 4mm !important;
        background: #fbf8f3 !important;
        break-inside: avoid !important;
    }

    .lvcrm-proposal-meta span {
        display: block !important;
        margin: 0 0 1.5mm !important;
        color: #737782 !important;
        font-size: 7pt !important;
        font-weight: 900 !important;
        letter-spacing: 0.06em !important;
        text-transform: uppercase !important;
    }

    .lvcrm-proposal-meta strong {
        display: block !important;
        margin: 0 !important;
        color: #171a22 !important;
        font-size: 9pt !important;
        line-height: 1.35 !important;
        word-break: normal !important;
    }

    .lvcrm-proposal-text {
        margin: 0 0 7mm !important;
        padding: 5mm !important;
        border: 1px solid #e6dfd5 !important;
        border-radius: 4mm !important;
        background: #ffffff !important;
        color: #4e5562 !important;
        font-size: 9.5pt !important;
        line-height: 1.55 !important;
        break-inside: avoid !important;
    }

    .lvcrm-proposal-text p {
        margin: 0 0 2.5mm !important;
    }

    .lvcrm-table-wrap {
        display: block !important;
        width: 100% !important;
        overflow: visible !important;
        padding: 0 !important;
    }

    /* Força tabela real no PDF, anulando o modo cartão/mobile */
    .lvcrm-proposal-view table,
    .lvcrm-proposal-view thead,
    .lvcrm-proposal-view tbody,
    .lvcrm-proposal-view tr,
    .lvcrm-proposal-view th,
    .lvcrm-proposal-view td {
        display: revert !important;
    }

    .lvcrm-proposal-view .lvcrm-table,
    .lvcrm-proposal-view .lvcrm-table-proposal-items {
        width: 100% !important;
        min-width: 0 !important;
        table-layout: fixed !important;
        border-collapse: collapse !important;
        border-spacing: 0 !important;
        margin: 0 0 7mm !important;
        break-inside: auto !important;
    }

    .lvcrm-proposal-view .lvcrm-table thead {
        display: table-header-group !important;
    }

    .lvcrm-proposal-view .lvcrm-table tr {
        display: table-row !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        box-shadow: none !important;
        background: transparent !important;
        break-inside: avoid !important;
        page-break-inside: avoid !important;
    }

    .lvcrm-proposal-view .lvcrm-table th {
        display: table-cell !important;
        padding: 3mm 2.5mm !important;
        border-bottom: 1px solid #d8d0c6 !important;
        background: #fbf8f3 !important;
        color: #737782 !important;
        font-size: 7pt !important;
        font-weight: 900 !important;
        letter-spacing: 0.06em !important;
        text-transform: uppercase !important;
        text-align: left !important;
    }

    .lvcrm-proposal-view .lvcrm-table td,
    .lvcrm-proposal-view .lvcrm-table td:first-child,
    .lvcrm-proposal-view .lvcrm-table td:last-child {
        display: table-cell !important;
        grid-template-columns: none !important;
        padding: 4mm 2.5mm !important;
        border: 0 !important;
        border-bottom: 1px solid #ece6df !important;
        border-radius: 0 !important;
        background: #ffffff !important;
        color: #3f4652 !important;
        font-size: 9pt !important;
        line-height: 1.35 !important;
        vertical-align: top !important;
        word-break: normal !important;
        overflow-wrap: break-word !important;
    }

    .lvcrm-proposal-view .lvcrm-table td::before {
        display: none !important;
        content: none !important;
    }

    .lvcrm-proposal-view .lvcrm-table td strong {
        display: inline !important;
        color: #171a22 !important;
        font-size: 9pt !important;
        line-height: 1.35 !important;
        white-space: normal !important;
    }

    .lvcrm-proposal-view .lvcrm-table-proposal-items th:nth-child(1),
    .lvcrm-proposal-view .lvcrm-table-proposal-items td:nth-child(1) {
        width: 27% !important;
        text-align: left !important;
    }

    .lvcrm-proposal-view .lvcrm-table-proposal-items th:nth-child(2),
    .lvcrm-proposal-view .lvcrm-table-proposal-items td:nth-child(2) {
        width: 33% !important;
        text-align: left !important;
    }

    .lvcrm-proposal-view .lvcrm-table-proposal-items th:nth-child(3),
    .lvcrm-proposal-view .lvcrm-table-proposal-items td:nth-child(3) {
        width: 10% !important;
        text-align: right !important;
    }

    .lvcrm-proposal-view .lvcrm-table-proposal-items th:nth-child(4),
    .lvcrm-proposal-view .lvcrm-table-proposal-items td:nth-child(4) {
        width: 15% !important;
        text-align: right !important;
    }

    .lvcrm-proposal-view .lvcrm-table-proposal-items th:nth-child(5),
    .lvcrm-proposal-view .lvcrm-table-proposal-items td:nth-child(5) {
        width: 15% !important;
        text-align: right !important;
        white-space: nowrap !important;
    }

    .lvcrm-proposal-total {
        display: grid !important;
        justify-content: end !important;
        gap: 2mm !important;
        margin: 0 0 7mm auto !important;
        width: 72mm !important;
        break-inside: avoid !important;
    }

    .lvcrm-proposal-total div {
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        min-width: 0 !important;
        width: 100% !important;
        padding: 3mm 4mm !important;
        border: 1px solid #e6dfd5 !important;
        border-radius: 3mm !important;
        background: #fbf8f3 !important;
    }

    .lvcrm-proposal-total span {
        color: #737782 !important;
        font-size: 7pt !important;
        font-weight: 900 !important;
        letter-spacing: 0.05em !important;
        text-transform: uppercase !important;
    }

    .lvcrm-proposal-total strong {
        margin: 0 !important;
        color: #171a22 !important;
        font-size: 10pt !important;
        white-space: nowrap !important;
    }

    .lvcrm-proposal-total .is-total {
        background: #fff3e2 !important;
        border-color: #f0c27a !important;
    }

    .lvcrm-proposal-total .is-total strong {
        font-size: 15pt !important;
        font-weight: 900 !important;
    }

    .lvcrm-proposal-text h3 {
        margin: 0 0 2mm !important;
        color: #171a22 !important;
        font-size: 12pt !important;
    }

    /* Rodapé interno discreto */
    .lvcrm-proposal-view::after {
        content: "Proposta gerada por Levora CRM";
        display: block;
        margin-top: 8mm;
        padding-top: 4mm;
        border-top: 1px solid #e6dfd5;
        color: #8c929c;
        font-size: 8pt;
        text-align: center;
    }

    /* Esconde URLs/breadcrumbs visuais da interface; os headers do browser dependem da opção 'Cabeçalhos e rodapés' */
    a[href]::after {
        content: "" !important;
    }
}


/* =========================================================
   V6.4 — PROPOSTAS: POLISH / RESPONSIVE / RESPIRO
   ========================================================= */

/* Card de propostas com mais respiro */
.lvcrm-table-proposals {
    min-width: 980px;
    table-layout: fixed;
    border-spacing: 0 11px;
}

.lvcrm-table-proposals th:nth-child(1),
.lvcrm-table-proposals td:nth-child(1) {
    width: 28%;
}

.lvcrm-table-proposals th:nth-child(2),
.lvcrm-table-proposals td:nth-child(2) {
    width: 30%;
}

.lvcrm-table-proposals th:nth-child(3),
.lvcrm-table-proposals td:nth-child(3) {
    width: 135px;
    min-width: 135px;
}

.lvcrm-table-proposals th:nth-child(4),
.lvcrm-table-proposals td:nth-child(4) {
    width: 120px;
    min-width: 120px;
}

.lvcrm-table-proposals th:nth-child(5),
.lvcrm-table-proposals td:nth-child(5) {
    width: 240px;
    min-width: 240px;
}

.lvcrm-table-proposals td {
    padding-top: 17px;
    padding-bottom: 17px;
}

.lvcrm-table-proposals .lvcrm-mini-badge {
    white-space: nowrap;
    line-height: 1;
    min-width: 76px;
    justify-content: center;
    text-align: center;
    padding: 8px 12px;
}

.lvcrm-table-proposals td:nth-child(4) strong {
    white-space: nowrap;
    line-height: 1.25;
}

.lvcrm-table-proposals td:nth-child(4) small {
    margin-top: 6px;
}

/* Botões da listagem de propostas mais premium e alinhados */
.lvcrm-table-proposals .lvcrm-actions {
    gap: 8px;
    white-space: nowrap;
}

.lvcrm-table-proposals .lvcrm-actions a,
.lvcrm-table-proposals .lvcrm-actions button {
    min-width: 58px;
    justify-content: center;
    min-height: 36px;
    line-height: 36px;
    padding: 0 13px;
}

/* Formulário de proposta com melhor respiração */
.lvcrm-proposal-items {
    margin-top: 14px;
    gap: 12px;
}

.lvcrm-proposal-item-row {
    grid-template-columns: minmax(160px, 1.05fr) minmax(170px, 1.25fr) minmax(80px, .55fr) minmax(110px, .7fr);
    gap: 10px;
}

.lvcrm-proposal-item-row input {
    min-height: 46px;
    padding: 0 14px;
}

.lvcrm-data-form textarea[name="introduction"],
.lvcrm-data-form textarea[name="terms"],
.lvcrm-data-form textarea[name="internal_notes"] {
    min-height: 92px;
}

/* Vista da proposta no ecrã */
.lvcrm-proposal-view {
    padding: 28px;
}

.lvcrm-proposal-view .lvcrm-panel-head {
    margin-bottom: 20px;
}

.lvcrm-proposal-view .lvcrm-panel-head h2 {
    max-width: 680px;
}

.lvcrm-proposal-meta {
    margin-top: 18px;
    margin-bottom: 20px;
}

.lvcrm-proposal-text {
    margin: 20px 0;
}

.lvcrm-proposal-view .lvcrm-table-proposal-items {
    margin-top: 10px;
    margin-bottom: 22px;
}

.lvcrm-proposal-total {
    margin-top: 22px;
    margin-bottom: 22px;
}

/* Desktop médio: evitar que a página rebente para a direita */
@media (max-width: 1320px) {
    .lvcrm-table-proposals {
        min-width: 900px;
    }

    .lvcrm-table-proposals th:nth-child(5),
    .lvcrm-table-proposals td:nth-child(5) {
        width: 220px;
        min-width: 220px;
    }
}

/* Tablet: formulário de propostas menos apertado */
@media (max-width: 1100px) {
    .lvcrm-proposal-item-row {
        grid-template-columns: 1fr 1fr;
    }

    .lvcrm-table-proposals {
        min-width: 860px;
    }
}

/* Mobile: propostas em cartões realmente legíveis */
@media (max-width: 720px) {
    .lvcrm-table-proposals {
        min-width: 0;
        table-layout: auto;
    }

    .lvcrm-table-proposals .lvcrm-mini-badge {
        min-width: 0;
        white-space: normal;
        justify-content: flex-start;
        text-align: left;
        line-height: 1.2;
    }

    .lvcrm-table-proposals td:nth-child(1)::before { content: "Proposta"; }
    .lvcrm-table-proposals td:nth-child(2)::before { content: "Cliente"; }
    .lvcrm-table-proposals td:nth-child(3)::before { content: "Estado"; }
    .lvcrm-table-proposals td:nth-child(4)::before { content: "Total"; }

    .lvcrm-table-proposals td:nth-child(4) strong {
        white-space: normal;
        display: block;
    }

    .lvcrm-proposal-item-row {
        grid-template-columns: 1fr;
    }

    .lvcrm-proposal-view {
        padding: 18px;
    }
}

/* Print: mais respiro, sem aspeto apertado */
@media print {
    @page {
        size: A4;
        margin: 16mm 15mm 15mm;
    }

    .lvcrm-proposal-view::before {
        margin-bottom: 8mm !important;
        padding-bottom: 5mm !important;
    }

    .lvcrm-proposal-view .lvcrm-panel-head {
        margin-bottom: 8mm !important;
    }

    .lvcrm-proposal-meta {
        gap: 4.5mm !important;
        margin-bottom: 8mm !important;
    }

    .lvcrm-proposal-meta div {
        padding: 4.5mm !important;
    }

    .lvcrm-proposal-text {
        margin-bottom: 8mm !important;
        padding: 5mm !important;
    }

    .lvcrm-proposal-view .lvcrm-table th {
        padding: 3.2mm 2.8mm !important;
    }

    .lvcrm-proposal-view .lvcrm-table td,
    .lvcrm-proposal-view .lvcrm-table td:first-child,
    .lvcrm-proposal-view .lvcrm-table td:last-child {
        padding: 4.2mm 2.8mm !important;
    }

    .lvcrm-proposal-total {
        width: 74mm !important;
        gap: 2.3mm !important;
        margin-top: 5mm !important;
        margin-bottom: 8mm !important;
    }

    .lvcrm-proposal-total div {
        padding: 3.2mm 4.2mm !important;
    }

    .lvcrm-proposal-view::after {
        margin-top: 9mm !important;
    }
}


/* =========================================================
   V6.5 — PROPOSTAS: LAYOUT FIX REAL
   ========================================================= */

/*
   A página Propostas tem demasiados campos para funcionar bem em duas colunas.
   A partir desta versão, fica em blocos largos:
   1) Lista de propostas
   2) Formulário de proposta
   Isto elimina o scroll horizontal feio e os campos apertados.
*/

.lvcrm-proposals-layout {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 18px !important;
    align-items: start !important;
}

.lvcrm-proposal-list-panel {
    order: 1;
}

.lvcrm-proposal-form-panel {
    order: 2;
}

/* Listagem de propostas sem scroll horizontal no desktop */
.lvcrm-proposal-list-panel .lvcrm-table-wrap {
    overflow-x: visible !important;
}

.lvcrm-proposal-list-panel .lvcrm-table-proposals {
    width: 100% !important;
    min-width: 0 !important;
    table-layout: fixed !important;
    border-spacing: 0 10px !important;
}

.lvcrm-proposal-list-panel .lvcrm-table-proposals th:nth-child(1),
.lvcrm-proposal-list-panel .lvcrm-table-proposals td:nth-child(1) {
    width: 27% !important;
}

.lvcrm-proposal-list-panel .lvcrm-table-proposals th:nth-child(2),
.lvcrm-proposal-list-panel .lvcrm-table-proposals td:nth-child(2) {
    width: 30% !important;
}

.lvcrm-proposal-list-panel .lvcrm-table-proposals th:nth-child(3),
.lvcrm-proposal-list-panel .lvcrm-table-proposals td:nth-child(3) {
    width: 120px !important;
}

.lvcrm-proposal-list-panel .lvcrm-table-proposals th:nth-child(4),
.lvcrm-proposal-list-panel .lvcrm-table-proposals td:nth-child(4) {
    width: 120px !important;
}

.lvcrm-proposal-list-panel .lvcrm-table-proposals th:nth-child(5),
.lvcrm-proposal-list-panel .lvcrm-table-proposals td:nth-child(5) {
    width: 245px !important;
}

.lvcrm-proposal-list-panel .lvcrm-table-proposals td {
    padding: 16px 14px !important;
    vertical-align: middle !important;
}

.lvcrm-proposal-list-panel .lvcrm-table-proposals td strong,
.lvcrm-proposal-list-panel .lvcrm-table-proposals td small {
    max-width: 100% !important;
}

.lvcrm-proposal-list-panel .lvcrm-table-proposals td:nth-child(4) strong {
    display: inline-block !important;
    white-space: nowrap !important;
}

.lvcrm-proposal-list-panel .lvcrm-table-proposals .lvcrm-mini-badge {
    white-space: nowrap !important;
    min-width: 82px !important;
    justify-content: center !important;
    line-height: 1 !important;
    padding: 8px 11px !important;
}

/* Botões da listagem cabem dentro da box */
.lvcrm-proposal-list-panel .lvcrm-table-proposals td.lvcrm-actions {
    min-width: 0 !important;
    white-space: nowrap !important;
}

.lvcrm-proposal-list-panel .lvcrm-actions {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 8px !important;
    flex-wrap: nowrap !important;
}

.lvcrm-proposal-list-panel .lvcrm-actions a,
.lvcrm-proposal-list-panel .lvcrm-actions form,
.lvcrm-proposal-list-panel .lvcrm-actions button {
    margin: 0 !important;
    flex: 0 0 auto !important;
}

.lvcrm-proposal-list-panel .lvcrm-actions a,
.lvcrm-proposal-list-panel .lvcrm-actions button {
    min-width: 62px !important;
    min-height: 36px !important;
    line-height: 36px !important;
    justify-content: center !important;
    text-align: center !important;
    padding: 0 13px !important;
    font-size: 12px !important;
}

/* Formulário mais largo e organizado */
.lvcrm-proposal-form-panel {
    max-width: 1120px !important;
}

.lvcrm-proposal-form-panel .lvcrm-form-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 14px !important;
}

.lvcrm-proposal-form-panel .lvcrm-data-form input,
.lvcrm-proposal-form-panel .lvcrm-data-form select,
.lvcrm-proposal-form-panel .lvcrm-data-form textarea {
    min-height: 48px !important;
}

.lvcrm-proposal-form-panel textarea {
    min-height: 105px !important;
}

.lvcrm-proposal-item-row {
    grid-template-columns: minmax(190px, 1.1fr) minmax(220px, 1.25fr) 110px 140px !important;
    gap: 12px !important;
}

.lvcrm-proposal-item-row input {
    min-height: 48px !important;
}

/* Ecrãs médios: mantém sem rebentar; se necessário só a tabela faz scroll controlado */
@media (max-width: 1180px) {
    .lvcrm-proposal-list-panel .lvcrm-table-wrap {
        overflow-x: auto !important;
        padding-bottom: 6px !important;
    }

    .lvcrm-proposal-list-panel .lvcrm-table-proposals {
        min-width: 860px !important;
    }

    .lvcrm-proposal-item-row {
        grid-template-columns: 1fr 1fr !important;
    }
}

/* Mobile: cartões legíveis */
@media (max-width: 720px) {
    .lvcrm-proposal-list-panel .lvcrm-table-wrap {
        overflow: visible !important;
    }

    .lvcrm-proposal-list-panel .lvcrm-table-proposals {
        min-width: 0 !important;
        table-layout: auto !important;
    }

    .lvcrm-proposal-list-panel .lvcrm-table-proposals .lvcrm-mini-badge {
        min-width: 0 !important;
        white-space: normal !important;
        justify-content: flex-start !important;
        text-align: left !important;
        line-height: 1.2 !important;
    }

    .lvcrm-proposal-list-panel .lvcrm-actions {
        flex-wrap: wrap !important;
        gap: 7px !important;
    }

    .lvcrm-proposal-list-panel .lvcrm-actions a,
    .lvcrm-proposal-list-panel .lvcrm-actions form,
    .lvcrm-proposal-list-panel .lvcrm-actions button {
        flex: 1 1 auto !important;
    }

    .lvcrm-proposal-form-panel .lvcrm-form-grid,
    .lvcrm-proposal-item-row {
        grid-template-columns: 1fr !important;
    }

    .lvcrm-proposal-form-panel {
        max-width: none !important;
    }
}
