* {
    box-sizing: border-box;
}

body {
    margin: 0;
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
    color: #12323a;
    background:
        radial-gradient(circle at 10% 2%, rgba(0, 169, 214, .16), transparent 28%),
        linear-gradient(180deg, #f4fbfd 0%, #edf7fa 100%);
}

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

.login-screen {
    min-height: 100vh;
    display: grid;
    place-items: center;
    padding: 24px;
    background:
        radial-gradient(circle at 78% 18%, rgba(0, 198, 255, .38), transparent 28%),
        linear-gradient(145deg, #00171d, #05687d);
}

.login-box {
    width: min(430px, 100%);
    padding: 30px;
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 8px;
    background: rgba(255, 255, 255, .95);
    box-shadow: 0 28px 80px rgba(0, 0, 0, .28);
    backdrop-filter: blur(18px);
}

.login-box img {
    width: 96px;
    height: 96px;
    object-fit: cover;
    border: 3px solid rgba(0, 169, 214, .25);
    border-radius: 50%;
    margin: 0 auto 18px;
    box-shadow: 0 0 34px rgba(0, 169, 214, .28);
}

.login-box h1,
.login-box p {
    text-align: center;
}

.login-box h1 {
    margin: 0;
    font-size: 1.55rem;
    line-height: 1.15;
}

.login-box p {
    margin: 8px 0 22px;
    color: #607980;
}

label {
    display: grid;
    gap: 8px;
    color: #36545c;
    font-size: .9rem;
    font-weight: 800;
}

input,
textarea,
select {
    width: 100%;
    min-height: 46px;
    padding: 12px 13px;
    border: 1px solid #cce4ea;
    border-radius: 8px;
    color: #132f36;
    background: #fff;
    outline: none;
    transition: border-color .2s ease, box-shadow .2s ease;
}

input:focus,
textarea:focus,
select:focus {
    border-color: #00a9d6;
    box-shadow: 0 0 0 4px rgba(0, 169, 214, .12);
}

textarea {
    resize: vertical;
}

button,
.admin-header a,
.button-link {
    min-height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 10px 16px;
    border: 0;
    border-radius: 8px;
    color: #00232c;
    background: linear-gradient(135deg, #72e8ff, #00a9d6);
    box-shadow: 0 10px 24px rgba(0, 169, 214, .18);
    font-weight: 800;
    text-decoration: none;
    cursor: pointer;
    transition: transform .2s ease, box-shadow .2s ease;
}

button:hover,
.admin-header a:hover,
.button-link:hover {
    transform: translateY(-1px);
    box-shadow: 0 14px 30px rgba(0, 169, 214, .24);
}

.filter-bar {
    display: grid;
    grid-template-columns: minmax(160px, 1fr) 190px minmax(150px, 1fr) auto auto;
    gap: 10px;
    margin-bottom: 16px;
    padding: 12px;
    border: 1px solid #d3eaf0;
    border-radius: 8px;
    background: #f8fcfd;
}

.login-box button {
    width: 100%;
    margin-top: 16px;
}

.login-box small {
    display: block;
    margin-top: 16px;
    color: #6a7f86;
    text-align: center;
}

.alert,
.success {
    padding: 12px 14px;
    border-radius: 8px;
    font-weight: 800;
}

.alert {
    margin-bottom: 16px;
    color: #842029;
    background: #f8d7da;
}

.success {
    margin-bottom: 18px;
    color: #0f5132;
    background: #d1e7dd;
}

.admin-header {
    position: sticky;
    top: 0;
    z-index: 5;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    padding: 16px clamp(16px, 4vw, 42px);
    color: #fff;
    background:
        radial-gradient(circle at 90% 0%, rgba(0, 169, 214, .26), transparent 28%),
        rgba(2, 57, 71, .96);
    box-shadow: 0 16px 44px rgba(2, 57, 71, .18);
    backdrop-filter: blur(16px);
}

.admin-header strong,
.admin-header span {
    display: block;
}

.admin-header strong {
    font-size: 1.05rem;
}

.admin-header span {
    margin-top: 4px;
    color: rgba(255, 255, 255, .72);
    font-size: .88rem;
}

.admin-header nav {
    display: flex;
    gap: 10px;
}

.admin-shell {
    width: min(1320px, 100%);
    margin: 0 auto;
    padding: 30px clamp(16px, 4vw, 42px) 112px;
}

.dashboard {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 14px;
    margin-bottom: 18px;
}

.dashboard.mini {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin: 0 0 18px;
}

.dashboard article {
    min-height: 112px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 18px;
    border: 1px solid rgba(0, 169, 214, .13);
    border-radius: 8px;
    background: rgba(255, 255, 255, .92);
    box-shadow: 0 18px 50px rgba(9, 58, 70, .08);
}

.dashboard span {
    color: #607980;
    font-size: .86rem;
    font-weight: 800;
}

.dashboard strong {
    color: #092f38;
    font-size: 1.5rem;
    line-height: 1.1;
}

.admin-layout {
    display: grid;
    grid-template-columns: 210px minmax(0, 1fr);
    gap: 18px;
    align-items: start;
}

.tabs {
    position: sticky;
    top: 88px;
    display: grid;
    gap: 8px;
    padding: 12px;
    border: 1px solid rgba(0, 169, 214, .13);
    border-radius: 8px;
    background: rgba(255, 255, 255, .88);
    box-shadow: 0 18px 50px rgba(9, 58, 70, .08);
}

.tabs button {
    justify-content: flex-start;
    color: #36545c;
    background: transparent;
    box-shadow: none;
}

.tabs button.is-active {
    color: #00232c;
    background: linear-gradient(135deg, #72e8ff, #00a9d6);
    box-shadow: 0 10px 24px rgba(0, 169, 214, .18);
}

.panel {
    display: none;
    position: relative;
    margin-bottom: 18px;
    padding: 24px;
    border: 1px solid rgba(0, 169, 214, .13);
    border-radius: 8px;
    background: rgba(255, 255, 255, .9);
    box-shadow: 0 18px 50px rgba(9, 58, 70, .08);
}

.panel.is-active {
    display: block;
}

.panel h2 {
    margin: 0 0 18px;
    color: #092f38;
    font-size: 1.2rem;
    line-height: 1.2;
}

.panel-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: 16px;
}

.panel-title.compact {
    margin-top: 26px;
    padding-top: 22px;
    border-top: 1px solid #d3eaf0;
}

.panel-title h2 {
    margin: 0;
}

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

.grid.one {
    grid-template-columns: 1fr;
}

.repeat {
    display: grid;
    gap: 12px;
}

.repeat-row {
    display: grid;
    gap: 10px;
    padding: 14px;
    border: 1px solid #d3eaf0;
    border-radius: 8px;
    background: linear-gradient(180deg, #fbfeff, #f4fafc);
}

.stat-row {
    grid-template-columns: 160px 1fr 120px auto;
}

.service-row {
    grid-template-columns: 220px 1fr 140px 120px auto;
}

.project-row {
    grid-template-columns: repeat(4, minmax(120px, 1fr)) minmax(180px, 1fr) 140px 120px;
}

.project-row textarea {
    grid-column: 1 / -2;
}

.plan-row {
    grid-template-columns: minmax(150px, 1fr) 150px 120px auto;
}

.plan-row textarea {
    grid-column: span 2;
}

.testimonial-row {
    grid-template-columns: minmax(160px, 1fr) minmax(160px, 1fr) 120px auto;
}

.testimonial-row textarea {
    grid-column: 1 / -2;
}

.faq-row {
    grid-template-columns: minmax(220px, 1fr) 120px auto;
}

.faq-row textarea {
    grid-column: 1 / -2;
}

.blog-row {
    grid-template-columns: minmax(160px, 1fr) 150px 130px minmax(160px, 1fr) 120px;
}

.blog-row textarea {
    grid-column: span 2;
}

.brand-preview,
.live-preview {
    display: flex;
    gap: 14px;
    align-items: center;
    margin-bottom: 20px;
    padding: 16px;
    border: 1px solid #d3eaf0;
    border-radius: 8px;
    background: linear-gradient(180deg, #fbfeff, #f4fafc);
}

.brand-preview img {
    width: 66px;
    height: 66px;
    object-fit: cover;
    border-radius: 50%;
    box-shadow: 0 0 28px rgba(0, 169, 214, .22);
}

.brand-preview strong,
.brand-preview span,
.live-preview span,
.live-preview strong,
.live-preview p {
    display: block;
}

.brand-preview strong {
    color: #092f38;
    font-size: 1.2rem;
}

.brand-preview span,
.live-preview p {
    color: #607980;
}

.live-preview {
    display: grid;
    align-items: start;
}

.live-preview span {
    width: fit-content;
    padding: 6px 10px;
    border-radius: 999px;
    color: #006b83;
    background: rgba(0, 169, 214, .1);
    font-size: .78rem;
    font-weight: 800;
}

.live-preview strong {
    color: #092f38;
    font-size: 1.45rem;
    line-height: 1.2;
}

.live-preview p {
    margin: 0;
    line-height: 1.6;
}

.file-inline {
    align-self: stretch;
    display: grid;
    align-content: center;
    min-height: 46px;
    padding: 0 12px;
    border: 1px dashed #a9d8e3;
    border-radius: 8px;
    background: #fff;
}

.file-inline input {
    min-height: auto;
    padding: 6px 0 0;
    border: 0;
}

.row-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.row-actions button {
    min-height: 38px;
    padding: 8px 11px;
    color: #36545c;
    background: #e8f6fa;
    box-shadow: none;
}

.table-list {
    display: grid;
    gap: 12px;
}

.table-list article {
    display: grid;
    gap: 10px;
    padding: 14px;
    border: 1px solid #d3eaf0;
    border-radius: 8px;
    background: linear-gradient(180deg, #fbfeff, #f4fafc);
}

.table-list article > div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.table-list strong,
.table-list span {
    overflow-wrap: anywhere;
}

.table-list span,
.table-list p {
    color: #607980;
}

.table-list p {
    margin: 0;
    line-height: 1.55;
}

.table-list form,
.inline-action {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.table-list form select,
.inline-action select {
    max-width: 220px;
}

.media-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}

.media-grid article {
    display: grid;
    gap: 10px;
    padding: 12px;
    border: 1px solid #d3eaf0;
    border-radius: 8px;
    background: #fff;
}

.media-grid img {
    width: 100%;
    aspect-ratio: 1.35;
    object-fit: cover;
    border-radius: 8px;
    background: #edf7fa;
}

.media-grid input {
    font-size: .82rem;
}

.empty-state {
    margin: 0;
    padding: 18px;
    border: 1px dashed #a9d8e3;
    border-radius: 8px;
    color: #607980;
    background: #f8fcfd;
}

.log-box {
    display: grid;
    gap: 6px;
    max-height: 360px;
    overflow: auto;
    padding: 14px;
    border: 1px solid #d3eaf0;
    border-radius: 8px;
    background: #092f38;
}

.log-box code {
    color: #c9f7ff;
    font-size: .82rem;
    white-space: pre-wrap;
}

[data-remove] {
    color: #fff;
    background: linear-gradient(135deg, #e5484d, #b42318);
    box-shadow: 0 10px 24px rgba(180, 35, 24, .16);
}

[data-danger] {
    color: #fff;
    background: linear-gradient(135deg, #e5484d, #b42318);
    box-shadow: 0 10px 24px rgba(180, 35, 24, .16);
}

.savebar {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    gap: 16px;
    justify-content: flex-end;
    padding: 14px clamp(16px, 4vw, 42px);
    background: rgba(255, 255, 255, .9);
    border-top: 1px solid #d3eaf0;
    box-shadow: 0 -14px 40px rgba(9, 58, 70, .09);
    backdrop-filter: blur(14px);
}

.savebar span {
    color: #607980;
    font-size: .9rem;
    font-weight: 800;
}

.savebar button {
    min-width: 200px;
}

@media (max-width: 1100px) {
    .dashboard {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .admin-layout {
        grid-template-columns: 1fr;
    }

    .tabs {
        position: static;
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .grid,
    .filter-bar,
    .stat-row,
    .service-row,
    .project-row,
    .plan-row,
    .testimonial-row,
    .faq-row,
    .blog-row {
        grid-template-columns: 1fr;
    }

    .project-row textarea,
    .plan-row textarea,
    .testimonial-row textarea,
    .faq-row textarea,
    .blog-row textarea {
        grid-column: auto;
    }

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

@media (max-width: 640px) {
    .admin-header {
        align-items: flex-start;
        flex-direction: column;
    }

    .admin-header nav,
    .admin-header a {
        width: 100%;
    }

    .panel {
        padding: 18px;
    }

    .dashboard,
    .dashboard.mini,
    .tabs,
    .media-grid {
        grid-template-columns: 1fr;
    }

    .savebar {
        align-items: stretch;
        flex-direction: column;
    }

    .savebar button {
        width: 100%;
    }
}


/* Dashboard de resultados */
.admin-welcome { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; margin-bottom:22px; }
.admin-welcome h1 { margin:4px 0 6px; color:#092f38; font-size:clamp(1.55rem,3vw,2.15rem); letter-spacing:-.04em; }
.admin-welcome p { margin:0; color:#607980; }
.eyebrow { color:#0089ad; font-size:.72rem; font-weight:900; letter-spacing:.11em; text-transform:uppercase; }
.welcome-actions { display:flex; gap:10px; flex:none; }
.button-secondary { color:#176070; background:#fff; border:1px solid #cce4ea; box-shadow:none; }
.dashboard-panel { padding:0; border:0; background:transparent; box-shadow:none; }
.metric-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin-bottom:14px; }
.metric-card { display:flex; align-items:center; gap:14px; min-height:132px; padding:20px; border:1px solid #d7eaf0; border-radius:14px; background:rgba(255,255,255,.94); box-shadow:0 16px 44px rgba(9,58,70,.07); }
.metric-card > div { min-width:0; }
.metric-card span:not(.metric-icon), .metric-card small { display:block; color:#6c858c; font-size:.78rem; font-weight:800; }
.metric-card strong { display:block; margin:5px 0; color:#092f38; font-size:1.75rem; line-height:1; }
.metric-icon { width:44px; height:44px; flex:none; display:grid; place-items:center; border-radius:12px; color:#007a97; background:#e0f8fc; font-size:1.15rem; font-weight:900; }
.metric-primary { color:#fff; border-color:#057f99; background:linear-gradient(145deg,#023947,#087d95); }
.metric-primary strong, .metric-primary span:not(.metric-icon), .metric-primary small { color:#fff; }
.metric-primary small, .metric-primary span:not(.metric-icon) { color:rgba(255,255,255,.7); }
.metric-primary .metric-icon { color:#fff; background:rgba(255,255,255,.14); }
.dashboard-columns { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(300px,.75fr); gap:14px; margin-bottom:14px; }
.dashboard-columns.lower { grid-template-columns:repeat(2,minmax(0,1fr)); }
.insight-card { min-height:300px; padding:22px; border:1px solid #d7eaf0; border-radius:14px; background:rgba(255,255,255,.94); box-shadow:0 16px 44px rgba(9,58,70,.07); }
.insight-heading { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:22px; }
.insight-heading h2 { margin:4px 0 0; font-size:1.08rem; }
.insight-heading > strong { color:#092f38; font-size:1.55rem; }
.bar-chart { height:210px; display:flex; align-items:stretch; gap:clamp(8px,2vw,18px); padding-top:8px; }
.bar-column { flex:1; min-width:0; display:grid; grid-template-rows:20px 1fr 22px; gap:5px; text-align:center; }
.bar-value { color:#55747c; font-size:.72rem; font-weight:900; }
.bar-track { position:relative; overflow:hidden; border-radius:7px 7px 3px 3px; background:#edf7f9; }
.bar-track i { position:absolute; right:0; bottom:0; left:0; min-height:5px; border-radius:7px 7px 3px 3px; background:linear-gradient(180deg,#53daf5,#008dac); }
.bar-column small { color:#769097; font-size:.7rem; font-weight:800; }
.ranking-list, .recent-list { display:grid; gap:8px; }
.ranking-list > div { display:flex; justify-content:space-between; gap:16px; padding:13px 0; border-bottom:1px solid #e4f0f3; }
.ranking-list span { color:#36545c; overflow-wrap:anywhere; }
.ranking-list strong { color:#0085a5; white-space:nowrap; font-size:.8rem; }
.text-button { min-height:auto; padding:4px; color:#0085a5; background:none; box-shadow:none; }
.recent-list > button { width:100%; min-height:auto; display:grid; grid-template-columns:38px minmax(0,1fr) auto; gap:11px; padding:10px; color:#244952; text-align:left; background:#f7fbfc; box-shadow:none; }
.recent-list > button > span:nth-child(2) { min-width:0; }
.recent-list strong, .recent-list small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.recent-list small { margin-top:3px; color:#789097; font-weight:600; }
.recent-list em { color:#789097; font-size:.72rem; font-style:normal; }
.lead-avatar { width:38px; height:38px; display:grid; place-items:center; border-radius:10px; color:#006f89; background:#dff7fb; font-weight:900; }
.quick-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.quick-grid button { min-height:96px; display:grid; justify-items:start; align-content:center; gap:3px; padding:14px; color:#244952; text-align:left; background:#f7fbfc; border:1px solid #e1eff2; box-shadow:none; }
.quick-grid button > span { color:#009abe; font-size:1.15rem; }
.quick-grid button small { color:#789097; font-weight:600; }
.dashboard-footnote { display:flex; flex-wrap:wrap; justify-content:space-between; gap:10px; padding:15px 18px; border:1px solid #d7eaf0; border-radius:12px; color:#6c858c; background:rgba(255,255,255,.72); font-size:.8rem; }
.empty-state.compact { padding:14px; font-size:.85rem; }
@media (max-width:1100px) { .metric-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .dashboard-columns { grid-template-columns:1fr; } }
@media (max-width:640px) { .admin-welcome { align-items:stretch; flex-direction:column; } .welcome-actions { display:grid; grid-template-columns:1fr 1fr; } .metric-grid,.dashboard-columns.lower { grid-template-columns:1fr; } .metric-card { min-height:108px; } .insight-card { min-height:auto; padding:17px; } .bar-chart { height:190px; } .quick-grid { grid-template-columns:1fr 1fr; } }


/* CRM de leads */
.crm-panel { padding:24px; }
.crm-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; margin-bottom:22px; }
.crm-heading h2 { margin:4px 0 6px; font-size:1.45rem; }
.crm-heading p { margin:0; color:#6c858c; }
.funnel-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:11px; margin-bottom:18px; }
.funnel-card { position:relative; display:grid; gap:5px; min-height:116px; padding:17px; overflow:hidden; border:1px solid #d9e9ed; border-radius:12px; color:#31535b; background:#f9fcfd; text-decoration:none; transition:.2s ease; }
.funnel-card:before { content:""; position:absolute; top:0; right:0; bottom:0; width:4px; background:#80cfe0; }
.funnel-card:hover,.funnel-card.is-selected { transform:translateY(-2px); border-color:#73cfdf; box-shadow:0 12px 28px rgba(9,58,70,.09); }
.funnel-card span,.funnel-card small { color:#6d858c; font-size:.76rem; font-weight:800; }
.funnel-card strong { color:#123841; font-size:1.65rem; }
.funnel-card.status-em_atendimento:before { background:#e6a23c; }.funnel-card.status-fechado:before { background:#22a06b; }.funnel-card.status-arquivado:before { background:#8c9ba0; }
.crm-filter { display:grid; grid-template-columns:minmax(240px,1.5fr) repeat(3,minmax(140px,.7fr)) auto auto; gap:9px; align-items:center; margin-bottom:14px; padding:12px; border:1px solid #d9e9ed; border-radius:12px; background:#f6fafb; }
.filter-search { position:relative; }.filter-search span { position:absolute; z-index:1; top:50%; left:14px; color:#789198; transform:translateY(-50%); }.filter-search input { padding-left:38px; }
.clear-filter { padding:8px; color:#007f9e; font-size:.82rem; font-weight:800; text-align:center; }
.crm-result-bar { display:flex; justify-content:space-between; gap:12px; margin:20px 0 10px; color:#45636a; }.crm-result-bar span { color:#7b9298; font-size:.82rem; }
.lead-list { display:grid; gap:12px; }
.lead-card { overflow:hidden; border:1px solid #d9e9ed; border-left:4px solid #43bdd5; border-radius:12px; background:#fff; box-shadow:0 12px 30px rgba(9,58,70,.05); }
.lead-card.status-em_atendimento { border-left-color:#e6a23c; }.lead-card.status-fechado { border-left-color:#22a06b; }.lead-card.status-arquivado { border-left-color:#8c9ba0; }
.lead-card > header { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:17px 18px; border-bottom:1px solid #edf3f5; }
.lead-identity { display:flex; align-items:center; min-width:0; gap:11px; }.lead-identity strong,.lead-identity span { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.lead-identity span { margin-top:3px; color:#718a90; font-size:.78rem; }
.lead-meta { display:flex; align-items:center; gap:12px; }.lead-meta time { color:#789198; font-size:.75rem; white-space:nowrap; }
.status-pill { padding:6px 9px; border-radius:999px; color:#007895; background:#e1f7fb; font-size:.7rem; font-weight:900; }.status-pill.status-em_atendimento { color:#8b5705; background:#fff1d6; }.status-pill.status-fechado { color:#087447; background:#dff7eb; }.status-pill.status-arquivado { color:#53676c; background:#e9eef0; }
.lead-details { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; padding:15px 18px; }.lead-details div { min-width:0; }.lead-details small,.lead-message small { display:block; margin-bottom:4px; color:#82979c; font-size:.68rem; font-weight:900; letter-spacing:.06em; text-transform:uppercase; }.lead-details strong { display:block; overflow:hidden; color:#31535b; font-size:.86rem; text-overflow:ellipsis; white-space:nowrap; }
.lead-message { margin:0 18px 14px; padding:12px; border-radius:9px; background:#f6fafb; }.lead-message p { margin:0; color:#45636a; font-size:.86rem; line-height:1.55; white-space:pre-wrap; }
.lead-note { margin:0 18px 15px; color:#5a747b; font-size:.75rem; }.lead-note textarea { min-height:64px; margin-top:6px; font-size:.84rem; }
.lead-card > footer { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:13px 18px; background:#f9fcfd; border-top:1px solid #edf3f5; }
.contact-actions,.lead-update { display:flex; flex-wrap:wrap; gap:8px; }.contact-actions a { display:inline-flex; align-items:center; min-height:38px; padding:8px 12px; border:1px solid #cfe4e9; border-radius:8px; color:#176070; background:#fff; font-size:.78rem; font-weight:900; text-decoration:none; }.contact-actions .contact-whatsapp { color:#087447; border-color:#bde8d1; background:#eafaf1; }
.lead-update select { min-height:38px; width:auto; padding:7px 34px 7px 10px; font-size:.78rem; }.lead-update button { min-height:38px; padding:8px 12px; font-size:.78rem; }
.crm-empty { padding:48px 20px; border:1px dashed #b9d8df; border-radius:12px; color:#678188; text-align:center; background:#f8fcfd; }.crm-empty > span { font-size:2rem; }.crm-empty h3 { margin:10px 0 5px; color:#31535b; }.crm-empty p { margin:0 0 14px; }.crm-empty a { color:#0083a2; font-weight:900; }
@media(max-width:1100px){.funnel-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.crm-filter{grid-template-columns:repeat(2,minmax(0,1fr))}.filter-search{grid-column:1/-1}}
@media(max-width:640px){.crm-panel{padding:16px}.crm-heading,.lead-card>header,.lead-card>footer{align-items:stretch;flex-direction:column}.crm-heading .button-link{width:100%}.funnel-grid,.crm-filter,.lead-details{grid-template-columns:1fr}.filter-search{grid-column:auto}.lead-meta{justify-content:space-between}.contact-actions,.lead-update{display:grid;grid-template-columns:1fr 1fr}.contact-actions a,.lead-update select,.lead-update button{width:100%}}


/* Estúdio da marca */
.brand-panel { padding:26px; }
.brand-panel-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; margin-bottom:24px; }
.brand-panel-heading h2 { margin:4px 0 6px; font-size:1.5rem; letter-spacing:-.025em; }.brand-panel-heading p { margin:0; color:#718990; }
.sync-badge { display:inline-flex; align-items:center; gap:7px; padding:8px 11px; border:1px solid #bce8d0; border-radius:999px; color:#087447; background:#eafaf1; font-size:.74rem; font-weight:900; white-space:nowrap; }.sync-badge i { width:7px; height:7px; border-radius:50%; background:#22a06b; box-shadow:0 0 0 4px rgba(34,160,107,.12); }
.brand-studio { display:grid; grid-template-columns:300px minmax(0,1fr); gap:18px; align-items:start; }
.brand-showcase { position:sticky; top:104px; min-height:430px; display:flex; flex-direction:column; align-items:center; justify-content:center; overflow:hidden; padding:28px 22px; border-radius:18px; color:var(--preview-accent); text-align:center; background:linear-gradient(155deg,var(--preview-secondary),color-mix(in srgb,var(--preview-secondary) 76%,#00161c)); box-shadow:0 22px 55px rgba(6,47,58,.2); }
.showcase-glow { position:absolute; width:230px; height:230px; top:-100px; right:-90px; border-radius:50%; background:var(--preview-primary); filter:blur(12px); opacity:.38; }.showcase-label { position:absolute; top:18px; left:18px; padding:6px 9px; border:1px solid rgba(255,255,255,.18); border-radius:999px; color:rgba(255,255,255,.72); background:rgba(255,255,255,.08); font-size:.68rem; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.showcase-logo { position:relative; width:116px; height:116px; display:grid; place-items:center; margin-bottom:18px; border:1px solid rgba(255,255,255,.28); border-radius:30px; background:rgba(255,255,255,.94); box-shadow:0 18px 38px rgba(0,0,0,.18); }.showcase-logo img { width:88%; height:88%; object-fit:contain; border-radius:22px; }
.brand-showcase > strong { position:relative; max-width:100%; color:#fff; font-size:1.65rem; line-height:1.1; overflow-wrap:anywhere; }.brand-showcase > p { position:relative; margin:8px 0 24px; color:rgba(255,255,255,.7); line-height:1.5; }.showcase-contact { position:relative; width:100%; display:flex; align-items:center; justify-content:space-between; gap:8px; padding:12px; border-top:1px solid rgba(255,255,255,.14); color:rgba(255,255,255,.75); font-size:.7rem; }.showcase-contact span { color:#8cf1bd; font-weight:900; }.showcase-contact small { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.showcase-palette { position:absolute; right:18px; bottom:17px; display:flex; }.showcase-palette i { width:22px; height:22px; margin-left:-5px; border:2px solid rgba(255,255,255,.7); border-radius:50%; }.showcase-palette i:nth-child(1){background:var(--preview-primary)}.showcase-palette i:nth-child(2){background:var(--preview-secondary)}.showcase-palette i:nth-child(3){background:var(--preview-accent)}
.brand-editor { display:grid; gap:14px; }.brand-group { padding:20px; border:1px solid #d8e9ed; border-radius:14px; background:#fff; }.brand-group-title { display:flex; align-items:flex-start; gap:11px; margin-bottom:17px; }.brand-group-title > span { width:35px; height:35px; flex:none; display:grid; place-items:center; border-radius:10px; color:#007e9d; background:#e1f7fb; font-weight:900; }.brand-group-title h3 { margin:0; color:#163b44; font-size:1rem; }.brand-group-title p { margin:4px 0 0; color:#789096; font-size:.77rem; }
.brand-fields { display:grid; gap:13px; }.brand-fields.two { grid-template-columns:repeat(2,minmax(0,1fr)); }.brand-fields label > span,.color-field > span { color:#49666d; font-size:.76rem; font-weight:900; }.brand-fields .field-wide { grid-column:1/-1; }
.brand-upload { display:grid; grid-template-columns:58px minmax(0,1fr) auto; align-items:center; gap:13px; margin-top:14px; padding:13px; border:1px dashed #9ccfd9; border-radius:12px; background:#f7fcfd; cursor:pointer; }.brand-upload > input { position:absolute; width:1px; height:1px; opacity:0; }.upload-preview { position:relative; width:58px; height:58px; display:grid; place-items:center; overflow:hidden; border-radius:13px; background:#fff; box-shadow:0 5px 18px rgba(9,58,70,.1); }.upload-preview img { width:100%; height:100%; object-fit:contain; }.upload-preview i { position:absolute; right:2px; bottom:2px; width:20px; height:20px; display:grid; place-items:center; border-radius:6px; color:#fff; background:#008eae; font-style:normal; }.upload-copy strong,.upload-copy small { display:block; }.upload-copy strong { color:#244952; }.upload-copy small { margin-top:4px; color:#789096; font-weight:600; line-height:1.35; }.upload-action { padding:9px 11px; border-radius:8px; color:#006f89; background:#dff7fb; font-size:.75rem; font-weight:900; }
.color-fields { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }.color-field > div { display:flex; align-items:center; gap:8px; margin-top:7px; padding:6px 8px; border:1px solid #d5e7eb; border-radius:10px; }.color-field input[type=color] { width:36px; height:36px; min-height:36px; flex:none; padding:0; overflow:hidden; border:0; border-radius:9px; background:none; cursor:pointer; }.color-field input:not([type=color]) { min-height:34px; padding:5px; border:0; box-shadow:none; font-family:ui-monospace,monospace; font-size:.78rem; text-transform:uppercase; }
@media(max-width:1100px){.brand-studio{grid-template-columns:1fr}.brand-showcase{position:relative;top:auto;min-height:340px}.brand-editor{grid-template-columns:1fr 1fr}.brand-group:first-child,.brand-group:nth-child(3){grid-column:1/-1}}
@media(max-width:760px){.brand-panel{padding:17px}.brand-panel-heading{align-items:stretch;flex-direction:column}.sync-badge{width:max-content}.brand-editor{grid-template-columns:1fr}.brand-group:first-child,.brand-group:nth-child(3){grid-column:auto}.brand-fields.two,.color-fields{grid-template-columns:1fr}.brand-fields .field-wide{grid-column:auto}.brand-upload{grid-template-columns:52px 1fr}.upload-action{grid-column:1/-1;text-align:center}.brand-showcase{min-height:320px}}


/* Editor visual do portfólio */
.portfolio-panel { padding:26px; }.portfolio-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; margin-bottom:20px; }.portfolio-heading h2 { margin:4px 0 6px; font-size:1.5rem; }.portfolio-heading p { margin:0; color:#718990; }.portfolio-heading button span { margin-right:5px; font-size:1.15rem; }
.portfolio-summary { display:grid; grid-template-columns:170px 140px 1fr; align-items:center; gap:12px; margin-bottom:16px; padding:13px 15px; border:1px solid #d9eaee; border-radius:12px; background:#f7fbfc; }.portfolio-summary div { display:flex; align-items:center; gap:10px; }.portfolio-summary span,.portfolio-summary p { color:#718990; font-size:.76rem; font-weight:800; }.portfolio-summary strong { color:#123b45; font-size:1.25rem; }.portfolio-summary p { margin:0; text-align:right; }
.project-editor-list { display:grid; gap:15px; }.project-editor-card { display:grid; grid-template-columns:270px minmax(0,1fr); padding:0; overflow:hidden; border:1px solid #d7e8ec; border-radius:15px; background:#fff; box-shadow:0 14px 38px rgba(9,58,70,.06); }.project-editor-card.is-inactive { opacity:.72; }.project-visual { min-width:0; padding:13px; color:#fff; background:#082f39; }.project-image-preview { position:relative; min-height:205px; display:grid; place-items:center; overflow:hidden; border-radius:11px; background:linear-gradient(145deg,#0c4654,#061f26); }.project-image-preview > img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }.project-image-preview > span { display:grid; place-items:center; gap:6px; color:#6fcde2; font-size:2rem; }.project-image-preview > span small { color:rgba(255,255,255,.55); font-size:.7rem; }.project-image-button { position:absolute; right:9px; bottom:9px; z-index:2; display:block; cursor:pointer; }.project-image-button input { position:absolute; width:1px; height:1px; opacity:0; }.project-image-button span { display:block; padding:8px 10px; border:1px solid rgba(255,255,255,.26); border-radius:8px; color:#fff; background:rgba(2,35,44,.82); backdrop-filter:blur(8px); font-size:.7rem; font-weight:900; }.project-card-caption { padding:14px 4px 4px; }.project-card-caption span { display:block; color:#58d5ee; font-size:.68rem; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }.project-card-caption strong { display:block; margin:5px 0; overflow:hidden; font-size:1.05rem; text-overflow:ellipsis; white-space:nowrap; }.project-card-caption small { color:rgba(255,255,255,.6); }
.project-fields { min-width:0; display:flex; flex-direction:column; padding:18px; }.project-card-head { display:flex; align-items:flex-start; justify-content:space-between; gap:14px; margin-bottom:16px; padding-bottom:13px; border-bottom:1px solid #e8f1f3; }.project-position { color:#0088a8; font-size:.67rem; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }.project-card-head h3 { margin:4px 0 0; color:#173f49; font-size:1.05rem; }.publish-switch select { width:auto; min-height:38px; padding:7px 34px 7px 11px; color:#087447; border-color:#bfe7d1; background:#edfaf3; font-size:.75rem; }.project-grid-fields { display:grid; grid-template-columns:1.2fr 1fr 100px; gap:12px; }.project-grid-fields label > span { color:#557178; font-size:.73rem; font-weight:900; }.project-grid-fields input,.project-grid-fields textarea { min-height:42px; padding:10px 11px; }.project-grid-fields label:nth-child(4) { grid-column:1/3; }.project-image-path { grid-column:3; }.project-description { grid-column:1/-1; }
.project-actions { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:auto; padding-top:15px; }.project-actions > div { display:flex; flex-wrap:wrap; gap:7px; }.project-actions button,.project-open { min-height:36px; padding:7px 10px; border-radius:8px; font-size:.72rem; box-shadow:none; }.project-order { color:#426269; background:#edf6f8; }.project-open { display:inline-flex; align-items:center; color:#007f9e; background:#e1f7fb; font-weight:900; text-decoration:none; }.project-open.is-disabled { opacity:.45; pointer-events:none; }.project-remove { color:#a1262c; background:#feeaeb; }.portfolio-empty { padding:48px 20px; border:1px dashed #acd2db; border-radius:14px; color:#718990; text-align:center; background:#f8fcfd; }.portfolio-empty > span { color:#29afcb; font-size:2.4rem; }.portfolio-empty h3 { margin:10px 0 5px; color:#234c56; }.portfolio-empty p { margin:0 0 16px; }
@media(max-width:1100px){.project-editor-card{grid-template-columns:220px minmax(0,1fr)}.project-grid-fields{grid-template-columns:1fr 1fr}.project-grid-fields label:nth-child(4),.project-image-path{grid-column:auto}.project-description{grid-column:1/-1}}
@media(max-width:760px){.portfolio-panel{padding:17px}.portfolio-heading{align-items:stretch;flex-direction:column}.portfolio-heading button{width:100%}.portfolio-summary{grid-template-columns:1fr 1fr}.portfolio-summary p{grid-column:1/-1;text-align:left}.project-editor-card{grid-template-columns:1fr}.project-image-preview{min-height:230px}.project-grid-fields{grid-template-columns:1fr}.project-description{grid-column:auto}.project-actions{align-items:stretch;flex-direction:column}.project-actions>div{display:grid;grid-template-columns:1fr 1fr}.project-open{grid-column:1/-1;justify-content:center}.project-remove{width:100%}}


.media-upload { display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin:0 0 18px; padding:15px; border:1px dashed #9ccfd9; border-radius:12px; background:#f7fcfd; }
.media-upload strong { color:#244952; }.media-upload span,.media-upload small { color:#6b858c; font-size:.82rem; }.media-upload input { position:absolute; width:1px; height:1px; opacity:0; }.copy-media { min-height:34px; padding:7px 9px; color:#006f89; background:#dff7fb; font-size:.74rem; box-shadow:none; }

/* Aba exclusiva do Blog */
.blog-panel > .panel-title:first-child { align-items:flex-start; padding-bottom:18px; border-bottom:1px solid #dcecef; }
.blog-panel > .panel-title:first-child h2 { margin:4px 0 6px; }
.blog-panel > .panel-title:first-child p { margin:0; color:#718990; }
.blog-panel .blog-row { border:1px solid #d8eaee; border-radius:14px; padding:16px; background:#fbfeff; box-shadow:0 8px 24px rgba(19,67,78,.05); }

/* Galeria de imagens nos posts */
.blog-image-gallery { grid-column:1/-1; display:flex; flex-wrap:wrap; gap:10px; min-height:0; }
.blog-image-gallery figure { position:relative; width:86px; height:86px; margin:0; overflow:visible; border-radius:12px; }
.blog-image-gallery img { width:100%; height:100%; border:1px solid #d2e7eb; border-radius:12px; object-fit:cover; background:#edf7f9; }
.blog-image-gallery button { position:absolute; top:-7px; right:-7px; width:24px; height:24px; border:0; border-radius:50%; color:#fff; background:#bd3942; font-size:18px; line-height:1; box-shadow:none; }
.blog-upload { grid-column:1/-1; display:flex; align-items:center; justify-content:center; min-height:48px; padding:10px 14px; border:1px dashed #8bc9d6; border-radius:12px; color:#087c97; background:#f5fcfd; font-weight:800; cursor:pointer; }
.blog-upload input { position:absolute; width:1px; height:1px; opacity:0; pointer-events:none; }
.blog-upload:hover { border-color:#00a9d6; background:#e8f9fc; }

/* Editor editorial de posts */
.blog-panel { padding:28px; background:radial-gradient(circle at 100% 0,rgba(0,169,214,.12),transparent 28%),#fff; }
.blog-panel > .panel-title:first-child { margin:-3px -3px 22px; padding:18px 20px; border:0; border-radius:16px; background:linear-gradient(135deg,#063945,#075567); }
.blog-panel > .panel-title:first-child .eyebrow { color:#74dcef; }
.blog-panel > .panel-title:first-child h2 { color:#fff; font-size:1.65rem; }
.blog-panel > .panel-title:first-child p { color:rgba(255,255,255,.72); }
.blog-panel .panel-title.compact { align-items:center; margin:0 0 14px; }
.blog-panel .panel-title.compact h2 { color:#17434d; font-size:1.05rem; }
.blog-panel .panel-title.compact button { padding:10px 14px; border-radius:10px; box-shadow:0 8px 18px rgba(0,143,174,.2); }
.blog-panel [data-list=blog] { display:grid; gap:16px; counter-reset:post; }
.blog-panel .blog-row { position:relative; display:grid; grid-template-columns:minmax(180px,1.5fr) minmax(130px,1fr) 120px auto; gap:12px; padding:46px 18px 18px; overflow:hidden; border:1px solid #d8eaee; border-radius:18px; background:linear-gradient(160deg,#fff,#f8fcfd); box-shadow:0 12px 30px rgba(19,67,78,.06); counter-increment:post; }
.blog-panel .blog-row::before { content:"POST " counter(post,decimal-leading-zero); position:absolute; top:16px; left:18px; color:#0086a3; font-size:.68rem; font-weight:900; letter-spacing:.12em; }
.blog-panel .blog-row::after { content:"Rascunho visual"; position:absolute; top:13px; right:18px; padding:5px 9px; border-radius:999px; color:#507078; background:#eaf5f7; font-size:.67rem; font-weight:800; }
.blog-panel .blog-row input:not([type=hidden]),.blog-panel .blog-row select,.blog-panel .blog-row textarea { min-height:44px; border-color:#d5e7eb; border-radius:10px; background:#fff; box-shadow:none; }
.blog-panel .blog-row input:not([type=hidden]):focus,.blog-panel .blog-row select:focus,.blog-panel .blog-row textarea:focus { border-color:#00a9d6; box-shadow:0 0 0 3px rgba(0,169,214,.13); }
.blog-panel .blog-row select { min-width:110px; color:#087447; border-color:#c4e8d4; background:#eefaf4; font-weight:800; }
.blog-panel .blog-row textarea { grid-column:span 2; min-height:92px; resize:vertical; }
.blog-panel .blog-row .row-actions { grid-column:span 2; justify-content:flex-end; padding-top:2px; }
.blog-panel .blog-row .row-actions button { min-height:36px; border-radius:9px; font-size:.72rem; box-shadow:none; }
.blog-panel .blog-image-gallery { grid-column:1/-1; padding:13px; border:1px dashed #b3d8e0; border-radius:14px; background:#f6fcfd; }
.blog-panel .blog-image-gallery::before { content:"GALERIA DO POST"; flex-basis:100%; margin-bottom:2px; color:#66868d; font-size:.66rem; font-weight:900; letter-spacing:.08em; }
.blog-panel .blog-image-gallery figure { width:96px; height:96px; transition:transform .2s ease; }
.blog-panel .blog-image-gallery figure:hover { transform:translateY(-3px); }
.blog-panel .blog-image-gallery img { border-width:2px; box-shadow:0 6px 14px rgba(6,63,76,.12); }
.blog-panel .blog-upload { grid-column:1/-1; min-height:54px; border-radius:14px; color:#057e99; background:linear-gradient(90deg,#f1fcfe,#e5f8fb); }
.blog-panel .blog-upload::before { content:"＋"; margin-right:8px; font-size:1.25rem; }
@media(max-width:760px){.blog-panel{padding:17px}.blog-panel .blog-row{grid-template-columns:1fr; padding:46px 14px 14px}.blog-panel .blog-row textarea,.blog-panel .blog-row .row-actions{grid-column:auto}.blog-panel .blog-row .row-actions{justify-content:stretch}.blog-panel .blog-row .row-actions button{flex:1}.blog-panel .blog-image-gallery figure{width:78px;height:78px}.blog-panel > .panel-title:first-child{margin:0 0 18px;padding:16px}.blog-panel .panel-title.compact{align-items:stretch;flex-direction:column}.blog-panel .panel-title.compact button{width:100%}}

/* Upload de imagem SEO */
.seo-image-upload { display:grid; gap:10px; }.seo-image-upload > span { color:#284e57; font-weight:800; }.seo-image-preview { display:flex; align-items:center; gap:14px; min-height:110px; padding:12px; border:1px dashed #9bcdd7; border-radius:14px; background:#f7fcfd; }.seo-image-preview img { width:150px; height:84px; border-radius:10px; object-fit:cover; background:#e7f3f6; }.seo-image-preview .button-link { margin:0; cursor:pointer; }.seo-image-preview input[type=file] { position:absolute; width:1px; height:1px; opacity:0; }.seo-image-upload small { color:#6a858c; }

.seo-favicon-upload .seo-image-preview img { width:84px; height:84px; border-radius:18px; }

/* Refinamento visual do painel */
:root { --admin-ink:#0c2630; --admin-slate:#52707a; --admin-surface:#ffffff; --admin-line:#dcebef; --admin-blue:#11a9cd; }
body { background:radial-gradient(circle at 92% -8%,rgba(27,190,222,.18),transparent 30%),linear-gradient(135deg,#f7fbfc 0%,#eef7f9 48%,#f7fbfc 100%); }
.admin-header { min-height:78px; padding-top:14px; padding-bottom:14px; border-bottom:1px solid rgba(255,255,255,.12); background:linear-gradient(105deg,#062b35,#075366 58%,#08758e); }
.admin-header strong { letter-spacing:-.02em; font-size:1.15rem; }.admin-header nav a { border:1px solid rgba(255,255,255,.18); color:#fff; background:rgba(255,255,255,.1); box-shadow:none; }
.admin-header nav a:last-child { color:#e8fbff; background:rgba(0,0,0,.14); }.admin-header nav a:hover { background:rgba(255,255,255,.2); }
.admin-shell { width:min(1440px,100%); padding-top:36px; }
.admin-welcome { position:relative; overflow:hidden; margin-bottom:22px; padding:28px 30px; border:1px solid rgba(7,99,119,.12); border-radius:22px; color:#ecfbff; background:linear-gradient(120deg,#073945,#08687d); box-shadow:0 20px 48px rgba(7,62,76,.17); }
.admin-welcome:after { content:""; position:absolute; width:300px; height:300px; right:-110px; top:-220px; border-radius:50%; background:rgba(92,230,255,.2); }.admin-welcome h1 { color:#fff; letter-spacing:-.035em; }.admin-welcome p { color:rgba(236,251,255,.74); }.admin-welcome .eyebrow { color:#7ae8fb; }.welcome-actions { position:relative; z-index:1; }.welcome-actions button,.welcome-actions .button-link { border-radius:11px; }.welcome-actions .button-secondary { color:#e9fbff; border-color:rgba(255,255,255,.25); background:rgba(255,255,255,.1); }
.admin-layout { gap:22px; grid-template-columns:238px minmax(0,1fr); }.tabs { padding:11px; border:1px solid rgba(10,74,89,.08); border-radius:18px; background:rgba(255,255,255,.82); box-shadow:0 18px 45px rgba(17,67,79,.09); backdrop-filter:blur(12px); }.tabs button { min-height:44px; border-radius:11px; font-size:.86rem; }.tabs button:hover { color:#075d73; background:#e9f8fb; transform:none; box-shadow:none; }.tabs button.is-active { color:#fff; background:linear-gradient(110deg,#067d98,#10b5d6); box-shadow:0 9px 18px rgba(0,137,166,.22); }
.panel { padding:28px; border-color:rgba(11,93,111,.1); border-radius:20px; background:rgba(255,255,255,.94); box-shadow:0 20px 48px rgba(9,58,70,.08); }.panel h2 { letter-spacing:-.02em; }.metric-card,.insight-card { border-radius:16px; }.metric-card { border-color:#dceef2; box-shadow:0 10px 28px rgba(10,68,82,.06); }.metric-card.metric-primary { background:linear-gradient(135deg,#073b48,#087f98); }.savebar { border:1px solid rgba(7,95,114,.12); border-radius:16px 16px 0 0; box-shadow:0 -10px 28px rgba(8,56,67,.08); }
input,textarea,select { border-radius:11px; border-color:#d7e8ec; background:#fcfeff; } input:hover,textarea:hover,select:hover { border-color:#a8d7e1; }
@media(max-width:900px){.admin-layout{grid-template-columns:1fr}.tabs{position:relative;top:auto;display:flex;overflow-x:auto;gap:7px;padding:8px}.tabs button{flex:0 0 auto}.admin-welcome{padding:24px}.panel{padding:20px}}@media(max-width:560px){.admin-header{align-items:flex-start;flex-direction:column}.admin-header nav{width:100%}.admin-header nav a{flex:1}.admin-shell{padding-top:22px}.admin-welcome{border-radius:17px}.welcome-actions{grid-template-columns:1fr}.panel{border-radius:16px;padding:16px}}

/* Conteúdo interno: edição orientada por seções */
.tab-content > .panel:not(.dashboard-panel) > h2:first-child { display:flex; align-items:center; gap:11px; margin:-4px -4px 24px; padding:19px 21px; border-radius:15px; color:#fff; background:linear-gradient(115deg,#083946,#087b93); box-shadow:0 12px 26px rgba(7,74,90,.14); }
.tab-content > .panel:not(.dashboard-panel) > h2:first-child:before { content:""; width:8px; height:28px; border-radius:99px; background:#78e7f7; box-shadow:0 0 0 5px rgba(120,231,247,.14); }
.panel-title { margin:26px 0 14px; padding:0 2px; }.panel-title:first-child { margin-top:0; }.panel-title.compact { display:flex; align-items:center; min-height:52px; margin-top:30px; padding:13px 15px; border:1px solid #dfedf0; border-radius:13px; background:#f5fafb; }.panel-title.compact h2 { font-size:1rem; }.panel-title.compact h2:before { content:""; display:inline-block; width:7px; height:7px; margin:0 9px 2px 0; border-radius:50%; background:#13a8c9; box-shadow:0 0 0 4px #dff7fb; }
.grid { gap:14px; padding:17px; border:1px solid #e1edf0; border-radius:15px; background:linear-gradient(180deg,#fbfeff,#f5fafb); }.grid.one { padding:17px; }.grid label { min-width:0; padding:3px; color:#385861; font-size:.78rem; letter-spacing:.01em; text-transform:none; }.grid label:focus-within { color:#067b97; }
.grid input,.grid textarea,.grid select { min-height:48px; border:1px solid #d8e8ec; border-radius:10px; background:#fff; box-shadow:0 2px 5px rgba(9,59,71,.02); }.grid textarea { min-height:104px; }
.repeat-row { position:relative; padding:19px; border:1px solid #dcebee; border-radius:15px; background:#fff; box-shadow:0 7px 18px rgba(9,63,75,.04); }.repeat-row:before { content:"Editar item"; position:absolute; top:0; left:0; padding:5px 10px; border-radius:14px 0 10px 0; color:#167a90; background:#e3f7fa; font-size:.65rem; font-weight:900; letter-spacing:.06em; text-transform:uppercase; }.repeat-row > :first-child { margin-top:8px; }
.row-actions { padding-top:7px; }.row-actions button { border:1px solid #d4e8ec; border-radius:9px; background:#f1f9fb; }.row-actions button:last-child { color:#a4353e; border-color:#f1d5d8; background:#fff4f5; }
.table-list article,.media-grid article { border-radius:15px; border-color:#dcebee; box-shadow:0 8px 21px rgba(9,63,75,.04); }.file-inline { border-radius:10px; background:#faffff; }
.crm-heading { padding:20px; border-radius:16px; color:#fff; background:linear-gradient(115deg,#083946,#087b93); }.crm-heading h2,.crm-heading p { color:#fff; }.crm-heading p { opacity:.76; }.crm-heading .button-link { color:#07556a; background:#dff8fc; box-shadow:none; }.funnel-card { border-radius:15px; background:linear-gradient(145deg,#fff,#f5fbfc); }.lead-card { border-radius:16px; box-shadow:0 12px 29px rgba(9,63,75,.07); }.lead-card > header { padding:19px 20px; }.lead-details { grid-template-columns:repeat(5,minmax(0,1fr)); padding:17px 20px; background:linear-gradient(180deg,#fff,#fbfefe); }.lead-details div { padding:9px 10px; border-left:2px solid #dff3f6; }.lead-message { border:1px solid #e1eef1; background:#f7fbfc; }.lead-card > footer { padding:15px 20px; }
.media-upload { border-radius:15px; border-style:solid; border-color:#d4eaef; background:linear-gradient(120deg,#f2fcfe,#e7f8fb); }.history-list,.log-box { border-radius:14px; }
@media(max-width:900px){.lead-details{grid-template-columns:repeat(2,minmax(0,1fr))}.grid{padding:14px}.tab-content > .panel:not(.dashboard-panel) > h2:first-child{margin:0 0 18px;padding:16px}}@media(max-width:560px){.lead-details{grid-template-columns:1fr}.panel-title.compact{align-items:flex-start;flex-direction:column}.grid{grid-template-columns:1fr;padding:12px}.repeat-row{padding:16px}.tab-content > .panel:not(.dashboard-panel) > h2:first-child{font-size:1.15rem}}

/* Área de segurança */
.security-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:20px}.security-summary>div{display:grid;grid-template-columns:12px 1fr;column-gap:10px;padding:15px;border:1px solid #dbecef;border-radius:14px;background:linear-gradient(145deg,#fafeff,#f0fafb)}.security-summary strong,.security-summary small{grid-column:2}.security-summary strong{color:#173f49;font-size:.84rem}.security-summary small{margin-top:4px;color:#718c93;font-size:.72rem;line-height:1.35}.security-dot{width:9px;height:9px;margin-top:4px;border-radius:50%;background:#f0a33a;box-shadow:0 0 0 4px rgba(240,163,58,.14)}.security-dot.is-on{background:#20a56a;box-shadow:0 0 0 4px rgba(32,165,106,.14)}.security-groups{display:grid;gap:15px}.security-group{overflow:hidden;border:1px solid #dcebed;border-radius:17px;background:#fff;box-shadow:0 10px 26px rgba(10,66,78,.05)}.security-group>header{display:flex;align-items:center;gap:12px;padding:16px 18px;border-bottom:1px solid #e5f0f2;background:linear-gradient(90deg,#f7fcfd,#eef9fb)}.security-group>header>span{width:31px;height:31px;display:grid;place-items:center;border-radius:9px;color:#08758f;background:#d8f3f8;font-size:.68rem;font-weight:900}.security-group h3{margin:0;color:#17434e;font-size:.96rem}.security-group p{margin:3px 0 0;color:#748d94;font-size:.75rem}.security-group>.grid{border:0;border-radius:0;background:#fff}.security-group input:disabled{color:#0d7d57;border-color:#c8e9d8;background:#effaf4;font-weight:800}@media(max-width:760px){.security-summary{grid-template-columns:1fr}.security-group>header{align-items:flex-start}.security-group>.grid{padding:14px}}

.backup-dashboard{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-bottom:20px;padding:23px 24px;border-radius:17px;color:#effcff;background:linear-gradient(115deg,#073a46,#087b93);box-shadow:0 16px 34px rgba(7,68,82,.16)}.backup-dashboard>div:first-child{display:grid;gap:5px}.backup-dashboard span{color:#8ceafa;font-size:.73rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.backup-dashboard strong{color:#fff;font-size:1.34rem}.backup-dashboard small{color:rgba(239,252,255,.72);font-size:.78rem}.backup-status{display:flex;align-items:center;gap:9px;flex:none;padding:10px 13px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(255,255,255,.1)}.backup-status i{width:8px;height:8px;border-radius:50%;background:#7cf1b5;box-shadow:0 0 0 5px rgba(124,241,181,.12)}.backup-status span{color:#e8fff3;letter-spacing:0;text-transform:none}.backup-heading{display:flex;align-items:end;justify-content:space-between;gap:16px;margin:4px 2px 14px}.backup-heading h3{margin:4px 0;color:#17434e;font-size:1.05rem}.backup-heading p{margin:0;color:#718c93;font-size:.8rem}.backup-heading>span{padding:7px 10px;border-radius:999px;color:#14758d;background:#e5f7fa;font-size:.72rem;font-weight:900}.backup-list{gap:10px}.backup-item{display:grid!important;grid-template-columns:42px minmax(0,1fr) auto;align-items:center!important;gap:12px;padding:14px 16px!important;border-radius:14px!important}.backup-file-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:11px;color:#087a94;background:#e2f7fa;font-size:1.15rem;font-weight:900}.backup-file{min-width:0;display:grid;gap:4px}.backup-file strong{overflow:hidden;color:#234a53;text-overflow:ellipsis;white-space:nowrap}.backup-file span{color:#748e95;font-size:.76rem}.backup-item .inline-action button{min-height:38px;border-radius:9px;font-size:.75rem}@media(max-width:620px){.backup-dashboard{align-items:flex-start;flex-direction:column;padding:20px}.backup-heading{align-items:flex-start;flex-direction:column}.backup-item{grid-template-columns:38px minmax(0,1fr)}.backup-item .inline-action{grid-column:1/-1}.backup-item .inline-action button{width:100%}}
.lead-conversation{margin:14px 0;padding:12px;border:1px solid #dbe9ee;border-radius:12px;background:#f8fcfd}.lead-conversation>small{display:block;margin-bottom:9px;color:#5c7881;font-weight:700}.conversation-bubble{max-width:85%;padding:9px 11px;margin:7px 0;border-radius:11px;font-size:13px}.conversation-bubble strong,.conversation-bubble span,.conversation-bubble time{display:block}.conversation-bubble strong{font-size:11px;margin-bottom:3px}.conversation-bubble time{font-size:10px;opacity:.65;margin-top:5px}.from-team{margin-left:auto;background:#dff6fa;color:#145365}.from-client{background:#eee8ff;color:#523c82}.conversation-empty{margin:0;color:#829aa1;font-size:12px}

/* Dashboard: gráficos com leitura mais clara em telas grandes e pequenas */
.chart-card { overflow:hidden; background:linear-gradient(145deg,#fff 0%,#f5fcfd 100%); }
.chart-card .insight-heading { margin-bottom:12px; }
.trend-chart { display:grid; grid-template-rows:auto 190px auto; gap:10px; }
.chart-legend { display:flex; justify-content:flex-end; gap:14px; color:#6a858c; font-size:.72rem; font-weight:800; }
.chart-legend span { display:inline-flex; align-items:center; gap:6px; }
.chart-legend i { width:8px; height:8px; border-radius:50%; }
.legend-visits { background:#0faecc; box-shadow:0 0 0 4px rgba(15,174,204,.12); }
.legend-actions { background:#7457d9; box-shadow:0 0 0 4px rgba(116,87,217,.1); }
.chart-stage { position:relative; overflow:hidden; min-height:0; border:1px solid #e0eef1; border-radius:14px; background:linear-gradient(180deg,rgba(225,248,252,.55),#fff); }
.chart-stage svg { position:absolute; inset:9px 10px 8px; width:calc(100% - 20px); height:calc(100% - 17px); overflow:visible; }
.chart-grid { position:absolute; right:0; left:0; height:1px; background:repeating-linear-gradient(90deg,#dcebed 0 4px,transparent 4px 8px); }
.grid-one { top:25%; }.grid-two { top:50%; }.grid-three { top:75%; }
.chart-area { fill:url(#visitFill); }
.chart-line { fill:none; vector-effect:non-scaling-stroke; stroke-linecap:round; stroke-linejoin:round; }
.chart-line-visits { stroke:#0faecc; stroke-width:3; filter:drop-shadow(0 4px 4px rgba(15,174,204,.18)); }
.chart-line-actions { stroke:#7457d9; stroke-width:2; stroke-dasharray:5 5; opacity:.9; }
.chart-labels { display:grid; grid-template-columns:repeat(7,1fr); color:#78939a; font-size:.69rem; font-weight:800; text-align:center; }
.conversion-summary { display:flex; align-items:center; gap:14px; margin:-5px 0 13px; padding:12px; border:1px solid #e2eef1; border-radius:13px; background:#f8fcfd; }
.conversion-ring { --ring-color:#12abc9; width:62px; height:62px; flex:none; display:grid; place-content:center; border-radius:50%; text-align:center; background:radial-gradient(closest-side,#f8fcfd 76%,transparent 77% 100%),conic-gradient(var(--ring-color) calc(var(--conversion) * 1%),#dceef1 0); }
.conversion-ring strong { color:#125260; font-size:.82rem; line-height:1; }.conversion-ring small { margin-top:3px; color:#789198; font-size:.52rem; font-weight:800; text-transform:uppercase; }
.conversion-summary p { margin:0; color:#688189; font-size:.74rem; line-height:1.4; }
.ranking-list { max-height:172px; overflow:auto; padding-right:3px; }
@media(max-width:640px){.trend-chart{grid-template-rows:auto 165px auto}.chart-legend{justify-content:flex-start}.conversion-summary{margin-top:0}.ranking-list{max-height:none}}
