/* ==========================================================
   INOVA CLIENT - WHMCS 7 / SIX
   Tema da Area do Cliente - Inova Marketing
   ========================================================== */

:root {
    --inova-navy: #071f46;
    --inova-navy-2: #0a2f68;
    --inova-blue: #0d6efd;
    --inova-sky: #26a8ff;
    --inova-bg: #f4f7fb;
    --inova-card: #ffffff;
    --inova-text: #17253a;
    --inova-muted: #718096;
    --inova-border: #e5ebf4;
    --inova-green: #15a05d;
    --inova-amber: #d78b00;
    --inova-purple: #7557d8;
    --inova-red: #dc3545;
    --inova-shadow: 0 14px 38px rgba(7,31,70,.07);
}

body.inova-client-theme {
    font-family: "Open Sans", Arial, sans-serif;
    color: var(--inova-text);
    background: var(--inova-bg);
}

body.inova-client-logged {
    background: var(--inova-bg);
    padding: 0;
}

.inova-shell { min-height: 100vh; }

/* Sidebar principal */
.inova-sidebar {
    position: fixed;
    z-index: 1050;
    left: 0;
    top: 0;
    bottom: 0;
    width: 250px;
    overflow-y: auto;
    padding: 20px 15px;
    color: #fff;
    background:
        radial-gradient(circle at 20% 0%, rgba(38,168,255,.17), transparent 28%),
        linear-gradient(180deg, #061831 0%, #082653 58%, #0b438e 100%);
    border-right: 1px solid rgba(255,255,255,.07);
    box-shadow: 10px 0 35px rgba(4,19,43,.08);
}

.inova-sidebar-brand {
    padding: 2px 7px 18px;
    margin-bottom: 18px;
    border-bottom: 1px solid rgba(255,255,255,.11);
}
.inova-brand-link { display:flex; align-items:center; gap:11px; color:#fff !important; text-decoration:none !important; }
.inova-brand-image { display:flex; align-items:center; justify-content:flex-start; min-height:45px; width:100%; }
.inova-brand-image img { display:block; max-width:185px; max-height:48px; width:auto; height:auto; object-fit:contain; filter:brightness(0) invert(1); }
.inova-brand-caption { margin-top:7px; color:rgba(255,255,255,.48); font-size:10px; letter-spacing:.12em; text-transform:uppercase; font-weight:700; }
.inova-brand-mark { width:43px; height:43px; flex:0 0 43px; display:flex; align-items:center; justify-content:center; border-radius:13px; background:linear-gradient(135deg,var(--inova-blue),var(--inova-sky)); box-shadow:0 10px 24px rgba(13,110,253,.28); font-size:19px; }
.inova-brand-copy strong { display:block; font-size:14px; font-weight:700; }
.inova-brand-copy small { display:block; margin-top:3px; color:rgba(255,255,255,.5); font-size:9px; letter-spacing:.09em; text-transform:uppercase; }

.inova-side-section { margin-top:18px; }
.inova-side-label { padding:0 10px 7px; color:rgba(255,255,255,.40); font-size:9px; font-weight:700; letter-spacing:.11em; text-transform:uppercase; }
.inova-side-nav { display:grid; gap:4px; }
.inova-side-nav a {
    position:relative;
    min-height:43px;
    display:flex;
    align-items:center;
    gap:11px;
    padding:0 12px;
    color:rgba(255,255,255,.75) !important;
    border-radius:11px;
    text-decoration:none !important;
    font-size:12px;
    font-weight:600;
    transition:all .18s ease;
}
.inova-side-nav a > i { width:19px; text-align:center; font-size:14px; opacity:.92; }
.inova-side-nav a:hover, .inova-side-nav a.active { background:rgba(255,255,255,.11); color:#fff !important; transform:translateX(2px); }
.inova-side-nav a.active:before { content:""; position:absolute; left:0; top:11px; bottom:11px; width:3px; border-radius:0 4px 4px 0; background:#58c4ff; }
.inova-side-badge { margin-left:auto; min-width:20px; height:20px; padding:0 6px; display:flex; align-items:center; justify-content:center; border-radius:999px; color:var(--inova-blue); background:#fff; font-size:9px; }

.inova-sidebar-help { position:relative; overflow:hidden; margin-top:22px; padding:15px; border:1px solid rgba(255,255,255,.10); border-radius:15px; background:rgba(255,255,255,.055); }
.inova-sidebar-help:after { content:""; position:absolute; right:-28px; top:-28px; width:90px; height:90px; border-radius:50%; background:rgba(37,211,102,.10); }
.inova-help-icon { width:34px; height:34px; margin-bottom:9px; display:flex; align-items:center; justify-content:center; border-radius:10px; background:rgba(37,211,102,.17); color:#5df38d; font-size:17px; }
.inova-sidebar-help strong { display:block; font-size:12px; }
.inova-sidebar-help p { margin:6px 0 11px; color:rgba(255,255,255,.55); font-size:10px; line-height:1.5; }
.inova-sidebar-help a { min-height:35px; display:flex; align-items:center; justify-content:center; border-radius:999px; color:var(--inova-navy) !important; background:#fff; text-decoration:none !important; font-size:10px; font-weight:700; }

/* area direita */
.inova-app-main { min-height:100vh; margin-left:250px; display:flex; flex-direction:column; }
.inova-topbar { position:sticky; top:0; z-index:1030; height:70px; display:flex; align-items:center; gap:14px; padding:0 24px; background:rgba(255,255,255,.97); border-bottom:1px solid var(--inova-border); box-shadow:0 3px 18px rgba(7,31,70,.025); }
.inova-mobile-toggle { display:none; width:40px; height:40px; border:1px solid var(--inova-border); border-radius:11px; background:#fff; color:var(--inova-navy); }
.inova-top-search { position:relative; width:min(430px,42vw); }
.inova-top-search > i { position:absolute; left:14px; top:50%; transform:translateY(-50%); color:#8492a6; }
.inova-top-search input { width:100%; height:41px; padding:0 15px 0 40px; border:1px solid var(--inova-border); border-radius:11px; outline:none; color:var(--inova-text); background:#f8fafe; font-size:11px; }
.inova-top-search input:focus { border-color:#b6d5ff; box-shadow:0 0 0 3px rgba(13,110,253,.07); background:#fff; }
.inova-top-actions { margin-left:auto; display:flex; align-items:center; gap:8px; }
.inova-top-icon { position:relative; width:40px; height:40px; display:flex; align-items:center; justify-content:center; border:1px solid var(--inova-border); border-radius:11px; color:#56657a !important; background:#fff; text-decoration:none !important; }
.inova-top-icon:hover { color:var(--inova-blue) !important; border-color:#cfe1ff; background:#f9fbff; }
.inova-notification-count { position:absolute; right:-5px; top:-5px; min-width:17px; height:17px; padding:0 4px; display:flex; align-items:center; justify-content:center; border-radius:50%; color:#fff; background:var(--inova-red); font-size:8px; font-weight:700; box-shadow:0 0 0 2px #fff; }
.inova-user-trigger { min-height:45px; padding:3px 9px 3px 3px; display:flex; align-items:center; gap:9px; border:1px solid var(--inova-border); border-radius:12px; background:#fff; color:var(--inova-text) !important; text-decoration:none !important; }
.inova-avatar { width:37px; height:37px; flex:0 0 37px; display:flex; align-items:center; justify-content:center; border-radius:10px; color:#fff; background:linear-gradient(135deg,var(--inova-blue),var(--inova-sky)); font-size:13px; font-weight:700; text-transform:uppercase; }
.inova-user-copy { max-width:180px; }
.inova-user-copy strong { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:var(--inova-navy); font-size:11px; font-weight:700; }
.inova-user-copy small { display:block; margin-top:2px; color:var(--inova-muted); font-size:9px; }
.inova-user-trigger > i { color:#8794a6; font-size:9px; }
.inova-user-menu .dropdown-menu { margin-top:9px; min-width:190px; padding:7px; border:1px solid var(--inova-border); border-radius:12px; box-shadow:0 15px 35px rgba(7,31,70,.12); }
.inova-user-menu .dropdown-menu > li > a { padding:9px 10px; border-radius:8px; color:#44536a; font-size:11px; }
.inova-user-menu .dropdown-menu > li > a:hover { background:#f3f7ff; color:var(--inova-blue); }
.inova-user-menu .dropdown-menu > li > a i { width:18px; }

/* Main body */
.inova-main-body { flex:1; padding:23px 25px 5px; background:var(--inova-bg); }
.inova-main-body > .container-fluid { max-width:1500px; margin:0 auto; }
.inova-main-content { min-height:500px; }
.inova-page-title-wrap .header-lined, .inova-main-content > .header-lined { margin:0 0 18px; padding:0 0 13px; border-bottom:1px solid var(--inova-border); }
.header-lined h1 { color:var(--inova-navy); font-weight:300; letter-spacing:-.02em; }
.breadcrumb { background:transparent; padding-left:0; }

/* Dashboard home */
.inova-dashboard-home { max-width:1420px; margin:0 auto; }
.inova-welcome-row { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:18px; }
.inova-eyebrow { display:block; margin-bottom:5px; color:var(--inova-blue); font-size:9px; font-weight:700; letter-spacing:.11em; }
.inova-welcome-row h1 { margin:0; color:var(--inova-navy); font-size:27px; font-weight:600; letter-spacing:-.035em; }
.inova-wave { font-size:22px; }
.inova-welcome-row p { max-width:720px; margin:6px 0 0; color:var(--inova-muted); font-size:11px; line-height:1.6; }
.inova-welcome-actions { display:flex; gap:8px; flex-wrap:wrap; }
.inova-btn { min-height:40px; padding:0 14px; display:inline-flex; align-items:center; justify-content:center; gap:7px; border-radius:10px; font-size:10px; font-weight:700; border:1px solid transparent; }
.inova-btn:hover { text-decoration:none; }
.inova-btn-light { color:var(--inova-blue); background:#fff; border-color:var(--inova-border); }
.inova-btn-primary { color:#fff; background:var(--inova-blue); box-shadow:0 8px 20px rgba(13,110,253,.16); }
.inova-btn-primary:hover { color:#fff; background:#075fd9; }

.inova-billing-alert { min-height:66px; display:flex; align-items:center; gap:12px; margin-bottom:16px; padding:12px 15px; border:1px solid #f3dda3; border-radius:14px; background:#fff9e8; }
.inova-billing-alert-icon { width:37px; height:37px; flex:0 0 37px; display:flex; align-items:center; justify-content:center; border-radius:10px; color:#b87700; background:#fff0c6; }
.inova-billing-alert-copy { min-width:0; }
.inova-billing-alert-copy strong { display:block; color:#6e4a00; font-size:11px; }
.inova-billing-alert-copy span { display:block; margin-top:3px; color:#927343; font-size:9px; }
.inova-alert-link { margin-left:auto; color:#8c5b00 !important; font-size:10px; font-weight:700; white-space:nowrap; }
.inova-alert-link i { margin-left:6px; }

.inova-stat-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:13px; margin-bottom:16px; }
.inova-stat-card { position:relative; min-height:104px; overflow:hidden; display:flex; align-items:center; gap:12px; padding:16px; border:1px solid var(--inova-border); border-radius:16px; color:var(--inova-text) !important; background:#fff; box-shadow:var(--inova-shadow); text-decoration:none !important; transition:transform .18s ease, box-shadow .18s ease; }
.inova-stat-card:after { content:""; position:absolute; right:-38px; bottom:-46px; width:104px; height:104px; border:18px solid rgba(13,110,253,.035); border-radius:50%; }
.inova-stat-card:hover { transform:translateY(-2px); box-shadow:0 16px 35px rgba(7,31,70,.10); }
.inova-stat-icon { width:45px; height:45px; flex:0 0 45px; display:flex; align-items:center; justify-content:center; border-radius:13px; font-size:17px; }
.inova-stat-icon.blue { color:var(--inova-blue); background:#eaf2ff; }
.inova-stat-icon.amber { color:#c78700; background:#fff4d7; }
.inova-stat-icon.green { color:var(--inova-green); background:#e9fff2; }
.inova-stat-icon.purple { color:var(--inova-purple); background:#f1ecff; }
.inova-stat-copy small { display:block; color:var(--inova-muted); font-size:9px; }
.inova-stat-copy strong { display:block; margin-top:3px; color:var(--inova-navy); font-size:22px; font-weight:600; }
.inova-stat-arrow { position:absolute; z-index:2; right:15px; top:17px; color:#c7d0dc; font-size:9px; }

.inova-quick-row { margin-bottom:18px; }
.inova-kb-search { position:relative; display:flex; min-height:48px; border:1px solid var(--inova-border); border-radius:13px; background:#fff; box-shadow:0 6px 18px rgba(7,31,70,.025); overflow:hidden; }
.inova-kb-search > i { position:absolute; left:16px; top:50%; transform:translateY(-50%); color:#8593a6; }
.inova-kb-search input { min-width:0; flex:1; padding:0 13px 0 43px; border:0; outline:none; background:transparent; color:var(--inova-text); font-size:10px; }
.inova-kb-search button { width:100px; margin:6px; border:0; border-radius:9px; color:#fff; background:var(--inova-navy); font-size:9px; font-weight:700; }

.inova-dashboard-layout { display:grid; grid-template-columns:minmax(0,1.55fr) minmax(280px,.55fr); gap:17px; align-items:start; }
.inova-section-heading { margin-bottom:10px; }
.inova-section-heading span { color:#8a97a9; font-size:8px; font-weight:700; letter-spacing:.11em; }
.inova-section-heading h2 { margin:3px 0 0; color:var(--inova-navy); font-size:15px; font-weight:600; }

/* WHMCS home panels */
.inova-home-panels .row { margin-left:-6px; margin-right:-6px; }
.inova-home-panels .col-sm-6 { padding-left:6px; padding-right:6px; }
.inova-panel { overflow:hidden; margin-bottom:12px; border:1px solid var(--inova-border) !important; border-radius:15px !important; background:#fff; box-shadow:var(--inova-shadow); }
.inova-panel > .panel-heading { min-height:52px; display:flex; align-items:center; justify-content:space-between; gap:8px; padding:0 13px !important; border:0 !important; border-bottom:1px solid #edf1f7 !important; background:#fff !important; color:var(--inova-navy) !important; }
.inova-panel .panel-title { min-width:0; display:flex; align-items:center; gap:8px; color:var(--inova-navy) !important; font-size:11px; font-weight:600; }
.inova-panel-icon { width:31px; height:31px; flex:0 0 31px; display:flex; align-items:center; justify-content:center; border-radius:9px; color:var(--inova-blue); background:#edf4ff; }
.inova-panel-label { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.inova-panel-action { flex:0 0 auto; padding:6px 8px; border-radius:8px; color:var(--inova-blue) !important; background:#eef5ff; font-size:8px; font-weight:700; text-decoration:none !important; }
.inova-panel-action i { margin-right:3px; }
.inova-panel .panel-body { padding:13px; color:#59677b; font-size:9px; line-height:1.55; }
.inova-panel .list-group { margin:0; }
.inova-panel .list-group-item { min-height:42px; display:flex; align-items:center; justify-content:space-between; gap:8px; padding:8px 12px; border-left:0; border-right:0; border-color:#edf1f7; color:#4f5e73; background:#fff; font-size:9px; }
.inova-panel .list-group-item:hover { color:var(--inova-blue); background:#f9fbff; }
.inova-child-text { min-width:0; overflow:hidden; text-overflow:ellipsis; }
.inova-child-text i { width:16px; color:#8a97aa; }
.inova-panel .badge { border-radius:999px; background:#eaf2ff; color:var(--inova-blue); font-size:8px; }
.inova-panel .label { border-radius:999px; font-size:8px; }
.inova-panel .panel-footer { min-height:0; padding:8px 12px; border-top:1px solid #edf1f7; background:#fafcff; color:#7b889a; font-size:8px; }
.inova-panel .panel-footer:empty { display:none; }

/* Coluna direita do dashboard */
.inova-dashboard-secondary { display:grid; gap:13px; }
.inova-side-card { overflow:hidden; padding:15px; border:1px solid var(--inova-border); border-radius:15px; background:#fff; box-shadow:var(--inova-shadow); }
.inova-side-card-head { display:flex; align-items:center; gap:10px; margin-bottom:12px; }
.inova-side-card-icon { width:35px; height:35px; flex:0 0 35px; display:flex; align-items:center; justify-content:center; border-radius:10px; color:var(--inova-blue); background:#eaf2ff; }
.inova-side-card-head small, .inova-whatsapp-card > small { display:block; color:#929fb0; font-size:7px; font-weight:700; letter-spacing:.12em; }
.inova-side-card-head h3, .inova-whatsapp-card h3 { margin:2px 0 0; color:var(--inova-navy); font-size:12px; font-weight:600; }
.inova-shortcuts-grid { display:grid; grid-template-columns:1fr 1fr; gap:7px; }
.inova-shortcuts-grid a { min-height:90px; display:flex; flex-direction:column; justify-content:center; padding:11px; border:1px solid var(--inova-border); border-radius:11px; color:var(--inova-text) !important; background:#f9fbff; text-decoration:none !important; }
.inova-shortcuts-grid a > i { width:30px; height:30px; margin-bottom:6px; display:flex; align-items:center; justify-content:center; border-radius:9px; color:var(--inova-blue); background:#eaf2ff; }
.inova-shortcuts-grid strong { color:var(--inova-navy); font-size:9px; }
.inova-shortcuts-grid span { margin-top:3px; color:var(--inova-muted); font-size:7px; line-height:1.4; }
.inova-shortcuts-grid a:hover { border-color:#cbdcff; background:#fff; }

.inova-news-card { color:#fff; border:0; background:radial-gradient(circle at 90% 0%,rgba(38,168,255,.28),transparent 30%),linear-gradient(135deg,#071f46,#0d6efd); }
.inova-news-card .inova-side-card-icon { color:#fff; background:rgba(255,255,255,.13); }
.inova-news-card .inova-side-card-head small { color:rgba(255,255,255,.50); }
.inova-news-card .inova-side-card-head h3 { color:#fff; }
.inova-news-card p { margin:0 0 12px; color:rgba(255,255,255,.64); font-size:9px; line-height:1.55; }
.inova-side-card-btn { min-height:35px; padding:0 11px; display:flex; align-items:center; justify-content:space-between; border-radius:9px; color:var(--inova-navy) !important; background:#fff; font-size:9px; font-weight:700; text-decoration:none !important; }

.inova-whatsapp-card { position:relative; overflow:hidden; }
.inova-whatsapp-big { position:absolute; right:-8px; top:-13px; color:rgba(37,211,102,.08); font-size:90px; }
.inova-whatsapp-card p { position:relative; margin:7px 0 12px; color:var(--inova-muted); font-size:9px; line-height:1.5; }
.inova-whatsapp-card a { position:relative; min-height:35px; display:flex; align-items:center; justify-content:center; border-radius:9px; color:#fff !important; background:#16a05d; font-size:9px; font-weight:700; text-decoration:none !important; }

.inova-addon-block { margin-bottom:15px; }
.inova-footer { min-height:56px; display:flex; align-items:center; justify-content:center; gap:12px; padding:15px 25px; color:#9aa6b6; font-size:9px; }
.inova-footer a { color:#8290a3; }

/* Sidebars e componentes internos do WHMCS */
.inova-whmcs-sidebar .panel-sidebar, body.inova-client-logged .panel-sidebar { overflow:hidden; border:1px solid var(--inova-border); border-radius:13px; box-shadow:var(--inova-shadow); }
.inova-whmcs-sidebar .panel-heading, body.inova-client-logged .panel-sidebar > .panel-heading { border:0; border-bottom:1px solid var(--inova-border); background:#fff; }
.inova-whmcs-sidebar .panel-title, body.inova-client-logged .panel-sidebar .panel-title { color:var(--inova-navy); font-size:11px; }
.inova-whmcs-sidebar .list-group-item, body.inova-client-logged .panel-sidebar .list-group-item { border-color:#edf1f7; color:#5e6b7d; font-size:10px; }
.inova-whmcs-sidebar .list-group-item.active, body.inova-client-logged .panel-sidebar .list-group-item.active { color:#fff; background:var(--inova-blue); border-color:var(--inova-blue); }

body.inova-client-logged .panel { border-color:var(--inova-border); border-radius:13px; box-shadow:0 6px 20px rgba(7,31,70,.035); }
body.inova-client-logged .panel-heading { border-color:var(--inova-border); }
body.inova-client-logged .btn-primary { border-color:var(--inova-blue); background:var(--inova-blue); }
body.inova-client-logged .btn-success { border-color:#139653; background:#15a05d; }
body.inova-client-logged .form-control { border-color:#dfe6ef; border-radius:8px; box-shadow:none; }
body.inova-client-logged .form-control:focus { border-color:#9fc6ff; box-shadow:0 0 0 3px rgba(13,110,253,.08); }
body.inova-client-logged .table { background:#fff; }
body.inova-client-logged .table > thead > tr > th { border-bottom-color:#e5ebf4; color:#66758a; font-size:9px; text-transform:uppercase; }
body.inova-client-logged .table > tbody > tr > td { border-top-color:#edf1f7; }
body.inova-client-logged .dataTables_wrapper { padding:14px; border:1px solid var(--inova-border); border-radius:13px; background:#fff; }

/* popover de notificacoes */
.inova-client-logged .popover { border:1px solid var(--inova-border); border-radius:12px; box-shadow:0 18px 40px rgba(7,31,70,.15); }
.inova-client-logged .client-alerts { max-width:330px; }

/* Public/login screens - melhoria leve sem arriscar fluxo */
body.inova-client-theme:not(.inova-client-logged) { background:#f4f7fb; }
.inova-public-header { background:#fff; border-bottom:1px solid #e5ebf4; }
.inova-public-header .logo img { max-height:50px; }
.inova-public-footer { background:#071f46 !important; color:rgba(255,255,255,.65); }
body.inova-client-theme:not(.inova-client-logged) .navbar-main { background:#0b376d; border:0; }
body.inova-client-theme:not(.inova-client-logged) .main-content > .panel, body.inova-client-theme:not(.inova-client-logged) .logincontainer { border-radius:14px; box-shadow:var(--inova-shadow); }

.inova-sidebar-overlay { display:none; }

@media (max-width: 1199px) {
    .inova-stat-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .inova-dashboard-layout { grid-template-columns:1fr; }
    .inova-dashboard-secondary { grid-template-columns:1fr 1fr; }
    .inova-whatsapp-card { grid-column:1 / -1; }
}

@media (max-width: 991px) {
    .inova-sidebar { left:-270px; transition:left .24s ease; }
    .inova-sidebar.inova-open { left:0; }
    .inova-app-main { margin-left:0; }
    .inova-mobile-toggle { display:block; }
    .inova-sidebar-overlay { position:fixed; z-index:1040; inset:0; display:block; visibility:hidden; opacity:0; background:rgba(3,16,36,.45); transition:all .2s ease; }
    .inova-sidebar-overlay.inova-open { visibility:visible; opacity:1; }
    .inova-main-body { padding:18px 15px 5px; }
    .inova-topbar { padding:0 14px; }
    .inova-welcome-row { align-items:flex-start; flex-direction:column; }
    .inova-welcome-actions { width:100%; }
    .inova-whmcs-sidebar { margin-bottom:14px; }
}

@media (max-width: 767px) {
    .inova-topbar { height:64px; }
    .inova-user-trigger { min-height:40px; }
    .inova-avatar { width:34px; height:34px; flex-basis:34px; }
    .inova-welcome-row h1 { font-size:23px; }
    .inova-welcome-row p { font-size:10px; }
    .inova-welcome-actions .inova-btn { flex:1; }
    .inova-billing-alert { align-items:flex-start; flex-wrap:wrap; }
    .inova-alert-link { width:100%; margin-left:49px; }
    .inova-stat-grid { grid-template-columns:1fr 1fr; gap:9px; }
    .inova-stat-card { min-height:92px; padding:13px; }
    .inova-stat-icon { width:40px; height:40px; flex-basis:40px; }
    .inova-stat-copy strong { font-size:18px; }
    .inova-kb-search button { display:none; }
    .inova-dashboard-secondary { grid-template-columns:1fr; }
    .inova-whatsapp-card { grid-column:auto; }
    .inova-home-panels .col-sm-6 { width:100%; }
}

@media (max-width: 480px) {
    .inova-main-body { padding-left:10px; padding-right:10px; }
    .inova-stat-grid { grid-template-columns:1fr; }
    .inova-stat-card { min-height:82px; }
    .inova-welcome-actions { display:grid; grid-template-columns:1fr; }
    .inova-shortcuts-grid { grid-template-columns:1fr 1fr; }
    .inova-footer { flex-direction:column; gap:4px; }
}

/* ==========================================================
   INOVA CLIENT V2 - LEGIBILIDADE E REFINO
   Ajustes feitos sobre a V1 sem alterar a estrutura do WHMCS.
   ========================================================== */

/* Base: leitura mais confortável em monitores Full HD/2K */
body.inova-client-theme {
    font-size: 14px;
    line-height: 1.55;
}

/* Menu lateral */
.inova-brand-copy strong { font-size: 15px; }
.inova-brand-copy small { font-size: 10px; }
.inova-brand-caption { font-size: 11px; }
.inova-side-label {
    font-size: 10px;
    letter-spacing: .10em;
}
.inova-side-nav a {
    min-height: 46px;
    font-size: 13.5px;
    line-height: 1.35;
}
.inova-side-nav a > i {
    font-size: 15px;
}
.inova-side-badge {
    min-width: 22px;
    height: 22px;
    font-size: 10px;
}
.inova-sidebar-help strong { font-size: 13px; }
.inova-sidebar-help p {
    font-size: 11px;
    line-height: 1.6;
}
.inova-sidebar-help a {
    min-height: 38px;
    font-size: 11px;
}

/* Barra superior */
.inova-top-search input {
    font-size: 12.5px;
}
.inova-top-icon {
    font-size: 13px;
}
.inova-notification-count {
    min-width: 18px;
    height: 18px;
    font-size: 9px;
}
.inova-user-copy strong {
    font-size: 12.5px;
}
.inova-user-copy small {
    font-size: 10px;
}
.inova-user-menu .dropdown-menu > li > a {
    font-size: 12px;
}

/* Cabeçalho da home */
.inova-eyebrow {
    font-size: 10px;
}
.inova-welcome-row h1 {
    font-size: 29px;
}
.inova-wave {
    font-size: 23px;
}
.inova-welcome-row p {
    font-size: 12.5px;
    line-height: 1.65;
}
.inova-btn {
    min-height: 42px;
    padding-left: 15px;
    padding-right: 15px;
    font-size: 11.5px;
}

/* Aviso de cobrança */
.inova-billing-alert {
    min-height: 70px;
    padding: 13px 16px;
}
.inova-billing-alert-copy strong {
    font-size: 12.5px;
}
.inova-billing-alert-copy span {
    font-size: 11px;
    line-height: 1.5;
}
.inova-alert-link {
    font-size: 11px;
}

/* Cards de resumo */
.inova-stat-card {
    min-height: 102px;
}
.inova-stat-copy small {
    font-size: 10.5px;
}
.inova-stat-copy strong {
    font-size: 24px;
}
.inova-stat-arrow {
    font-size: 10px;
}

/* Busca interna */
.inova-kb-search input {
    font-size: 11.5px;
}
.inova-kb-search button {
    font-size: 10.5px;
}

/* Títulos de seção */
.inova-section-heading span {
    font-size: 9px;
}
.inova-section-heading h2 {
    font-size: 16.5px;
}

/* Painéis nativos da home */
.inova-panel > .panel-heading {
    min-height: 55px;
}
.inova-panel .panel-title {
    font-size: 12.5px;
}
.inova-panel-action {
    font-size: 9.5px;
}
.inova-panel .panel-body {
    font-size: 10.5px;
    line-height: 1.65;
}
.inova-panel .list-group-item {
    min-height: 45px;
    font-size: 10.5px;
    line-height: 1.45;
}
.inova-panel .badge,
.inova-panel .label {
    font-size: 9px;
}
.inova-panel .panel-footer {
    font-size: 9.5px;
}

/* Coluna de atalhos */
.inova-side-card {
    padding: 16px;
}
.inova-side-card-head small,
.inova-whatsapp-card > small {
    font-size: 8px;
}
.inova-side-card-head h3,
.inova-whatsapp-card h3 {
    font-size: 13.5px;
}
.inova-shortcuts-grid a {
    min-height: 96px;
    padding: 12px;
}
.inova-shortcuts-grid strong {
    font-size: 10.5px;
}
.inova-shortcuts-grid span {
    font-size: 9px;
    line-height: 1.5;
}
.inova-news-card p,
.inova-whatsapp-card p {
    font-size: 10.5px;
    line-height: 1.6;
}
.inova-side-card-btn,
.inova-whatsapp-card a {
    min-height: 38px;
    font-size: 10.5px;
}

/* Componentes WHMCS fora da home */
.inova-whmcs-sidebar .panel-title,
body.inova-client-logged .panel-sidebar .panel-title {
    font-size: 12.5px;
}
.inova-whmcs-sidebar .list-group-item,
body.inova-client-logged .panel-sidebar .list-group-item {
    font-size: 11.5px;
}
body.inova-client-logged .panel-title {
    font-size: 13px;
}
body.inova-client-logged .panel-body,
body.inova-client-logged .list-group-item,
body.inova-client-logged .table > tbody > tr > td {
    font-size: 11.5px;
    line-height: 1.55;
}
body.inova-client-logged .table > thead > tr > th {
    font-size: 10.5px;
}
body.inova-client-logged .form-control {
    font-size: 12.5px;
}
body.inova-client-logged .btn {
    font-size: 11.5px;
}

/* Rodapé */
.inova-footer {
    font-size: 10.5px;
}

/* Ajuste de densidade: mantém o painel compacto, mas sem parecer miniaturizado */
.inova-dashboard-layout {
    gap: 18px;
}
.inova-dashboard-secondary {
    gap: 14px;
}
.inova-home-panels .row {
    margin-left: -7px;
    margin-right: -7px;
}
.inova-home-panels .col-sm-6 {
    padding-left: 7px;
    padding-right: 7px;
}

/* Tablet */
@media (max-width: 991px) {
    .inova-side-nav a { font-size: 13px; }
    .inova-main-body { padding-top: 20px; }
}

/* Celular: evita exagero de tamanho e mantém boa leitura */
@media (max-width: 767px) {
    body.inova-client-theme { font-size: 13px; }

    .inova-welcome-row h1 { font-size: 25px; }
    .inova-welcome-row p { font-size: 12px; }

    .inova-stat-copy small { font-size: 10px; }
    .inova-stat-copy strong { font-size: 21px; }

    .inova-panel .panel-title { font-size: 12px; }
    .inova-panel .panel-body,
    .inova-panel .list-group-item { font-size: 10.5px; }

    .inova-side-card-head h3,
    .inova-whatsapp-card h3 { font-size: 13px; }

    .inova-shortcuts-grid strong { font-size: 10.5px; }
    .inova-shortcuts-grid span { font-size: 9px; }
}

/* ==========================================================
   INOVA CLIENT V3 - PORTAL PÚBLICO / LOGIN / CADASTRO
   ========================================================== */

body.inova-client-public{
    background:#f5f8fc;
    color:#18283f;
    font-size:14px;
    line-height:1.6;
}
body.inova-client-public #main-body{
    padding:0;
    min-height:calc(100vh - 245px);
    background:#f5f8fc;
}
body.inova-client-public #main-body>.container,
body.inova-client-public #main-body>.container-fluid{
    padding-top:34px;
    padding-bottom:45px;
}
body.inova-client-public.inova-page-homepage #main-body>.container{
    padding-top:0;
    padding-bottom:0;
    width:100%;
}
body.inova-client-public.inova-page-homepage #main-body>.container>.row{
    margin:0;
}
body.inova-client-public.inova-page-homepage #main-body .main-content{
    padding:0;
}
body.inova-client-public a{
    transition:.18s ease;
}

/* Public header */
.inova-public-v3-header{
    position:relative;
    z-index:50;
    background:#fff;
    border-bottom:1px solid #e5ebf4;
}
.inova-public-v3-row{
    min-height:76px;
    display:flex;
    align-items:center;
    gap:24px;
}
.inova-public-v3-brand{
    min-width:220px;
    display:flex;
    align-items:center;
    gap:10px;
    color:#071f46!important;
    text-decoration:none!important;
}
.inova-public-v3-brand img{
    display:block;
    max-width:220px;
    max-height:48px;
    width:auto;
}
.inova-public-v3-brand-mark{
    width:43px;
    height:43px;
    display:grid;
    place-items:center;
    border-radius:13px;
    background:linear-gradient(135deg,#0d6efd,#29a7ff);
    color:#fff;
    box-shadow:0 9px 22px rgba(13,110,253,.22);
}
.inova-public-v3-brand strong{
    display:block;
    font-size:16px;
}
.inova-public-v3-brand small{
    display:block;
    margin-top:1px;
    color:#7f8da0;
    font-size:9px;
    text-transform:uppercase;
    letter-spacing:.09em;
}
.inova-public-v3-nav{
    margin-left:auto;
    display:flex;
    align-items:center;
    gap:4px;
}
.inova-public-v3-nav a{
    padding:9px 11px;
    border-radius:9px;
    color:#51627a!important;
    font-size:12px;
    font-weight:700;
    text-decoration:none!important;
}
.inova-public-v3-nav a:hover,
.inova-public-v3-nav a.active{
    background:#eef5ff;
    color:#0d6efd!important;
}
.inova-public-v3-actions{
    display:flex;
    align-items:center;
    gap:7px;
}
.inova-public-v3-whatsapp,
.inova-public-v3-cart,
.inova-public-v3-mobile{
    width:40px;
    height:40px;
    display:grid!important;
    place-items:center;
    border:1px solid #e1e8f1;
    border-radius:11px;
    background:#fff;
    color:#52657d!important;
}
.inova-public-v3-whatsapp{
    color:#129b57!important;
}
.inova-public-v3-login,
.inova-public-v3-register{
    min-height:40px;
    padding:0 14px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:10px;
    font-size:11.5px;
    font-weight:800;
    text-decoration:none!important;
}
.inova-public-v3-login{
    color:#0d6efd!important;
}
.inova-public-v3-register{
    background:#0d6efd;
    color:#fff!important;
    box-shadow:0 8px 20px rgba(13,110,253,.18);
}
.inova-public-v3-mobile{
    padding:0;
}
.inova-public-v3-mobile-menu{
    display:none;
    padding:0 0 15px;
}
.inova-public-v3-mobile-menu.inova-open{
    display:grid;
}
.inova-public-v3-mobile-menu a{
    padding:11px 12px;
    border-top:1px solid #edf1f6;
    color:#42546b;
    font-size:12px;
    font-weight:700;
}
.inova-public-v3-bar{
    background:#071f46;
    color:#d6e5f8;
}
.inova-public-v3-bar .container{
    min-height:35px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:34px;
}
.inova-public-v3-bar span{
    font-size:9.5px;
    font-weight:700;
}
.inova-public-v3-bar i{
    margin-right:5px;
    color:#53bdff;
}

/* Public homepage */
.inova-public-home{
    overflow:hidden;
}
.inova-public-hero,
.inova-public-quick,
.inova-public-domain,
.inova-public-news,
.inova-public-support-cta{
    width:min(1180px,calc(100% - 36px));
    margin-left:auto;
    margin-right:auto;
}
.inova-public-hero{
    position:relative;
    padding:68px 0 54px;
}
.inova-public-hero:before{
    content:"";
    position:absolute;
    z-index:-1;
    width:580px;
    height:580px;
    right:-260px;
    top:-260px;
    border-radius:50%;
    background:radial-gradient(circle,rgba(13,110,253,.12),rgba(13,110,253,0) 68%);
}
.inova-public-eyebrow{
    display:inline-block;
    margin-bottom:10px;
    color:#0d6efd;
    font-size:9px;
    font-weight:900;
    letter-spacing:.13em;
}
.inova-public-hero h1{
    max-width:650px;
    margin:0;
    color:#071f46;
    font-size:49px;
    line-height:1.08;
    font-weight:800;
    letter-spacing:-.04em;
}
.inova-public-hero h1 span{
    color:#0d6efd;
}
.inova-public-hero p{
    max-width:620px;
    margin:17px 0 0;
    color:#677991;
    font-size:15px;
    line-height:1.7;
}
.inova-public-hero-actions{
    margin-top:25px;
    display:flex;
    gap:9px;
    flex-wrap:wrap;
}
.inova-public-hero-actions .btn{
    min-height:47px;
    padding:0 18px;
    display:inline-flex;
    align-items:center;
    gap:8px;
    border-radius:11px;
    font-size:12px;
    font-weight:900;
}
.inova-public-btn-primary{
    background:#0d6efd;
    border-color:#0d6efd;
    color:#fff!important;
    box-shadow:0 10px 24px rgba(13,110,253,.20);
}
.inova-public-btn-light{
    background:#fff;
    border:1px solid #e1e8f2;
    color:#0e9253!important;
}
.inova-public-trust{
    margin-top:22px;
    display:flex;
    gap:17px;
    flex-wrap:wrap;
}
.inova-public-trust span{
    color:#6c7c91;
    font-size:10.5px;
    font-weight:700;
}
.inova-public-trust i{
    margin-right:4px;
    color:#17a45e;
}
.inova-public-hero-panel{
    padding:17px;
    border:1px solid #e0e8f3;
    border-radius:21px;
    background:#fff;
    box-shadow:0 24px 58px rgba(7,31,70,.09);
}
.inova-public-panel-top{
    display:flex;
    align-items:center;
    gap:11px;
    padding:2px 2px 14px;
}
.inova-public-panel-icon{
    width:44px;
    height:44px;
    display:grid;
    place-items:center;
    border-radius:13px;
    background:linear-gradient(135deg,#071f46,#0d6efd);
    color:#fff;
}
.inova-public-panel-top small,
.inova-public-panel-top strong{
    display:block;
}
.inova-public-panel-top small{
    color:#8491a1;
    font-size:8px;
    letter-spacing:.09em;
}
.inova-public-panel-top strong{
    margin-top:3px;
    color:#071f46;
    font-size:13px;
}
.inova-public-panel-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:9px;
}
.inova-public-panel-grid a{
    min-height:112px;
    padding:14px;
    border:1px solid #e8edf5;
    border-radius:14px;
    background:#f9fbfe;
    color:#071f46!important;
    text-decoration:none!important;
}
.inova-public-panel-grid a:hover{
    transform:translateY(-2px);
    border-color:#cddffc;
    background:#f4f8ff;
}
.inova-public-panel-grid a>span{
    width:36px;
    height:36px;
    display:grid;
    place-items:center;
    margin-bottom:11px;
    border-radius:10px;
    background:#e8f2ff;
    color:#0d6efd;
}
.inova-public-panel-grid strong,
.inova-public-panel-grid small{
    display:block;
}
.inova-public-panel-grid strong{
    font-size:11.5px;
}
.inova-public-panel-grid small{
    margin-top:3px;
    color:#7c8999;
    font-size:9px;
}
.inova-public-panel-status{
    margin-top:10px;
    padding:10px 12px;
    display:flex;
    justify-content:space-between;
    gap:10px;
    border-radius:11px;
    background:#effff5;
    color:#208454;
}
.inova-public-panel-status span{
    font-size:9.5px;
    font-weight:800;
}
.inova-public-panel-status span i{
    margin-right:4px;
    font-size:7px;
}
.inova-public-panel-status small{
    color:#769184;
    font-size:8.5px;
}

.inova-public-quick{
    padding:50px 0;
    border-top:1px solid #e8edf5;
}
.inova-public-section-heading{
    margin-bottom:20px;
}
.inova-public-section-heading>span,
.inova-public-domain-copy>span{
    color:#0d6efd;
    font-size:8.5px;
    font-weight:900;
    letter-spacing:.12em;
}
.inova-public-section-heading h2,
.inova-public-domain-copy h2{
    margin:4px 0 4px;
    color:#071f46;
    font-size:25px;
    font-weight:800;
    letter-spacing:-.02em;
}
.inova-public-section-heading p,
.inova-public-domain-copy p{
    margin:0;
    color:#77869a;
    font-size:11.5px;
}
.inova-public-quick-card{
    position:relative;
    min-height:180px;
    padding:18px;
    display:block;
    border:1px solid #e3eaf3;
    border-radius:16px;
    background:#fff;
    color:#071f46!important;
    box-shadow:0 8px 26px rgba(7,31,70,.04);
    text-decoration:none!important;
}
.inova-public-quick-card:hover{
    transform:translateY(-3px);
    box-shadow:0 16px 36px rgba(7,31,70,.08);
}
.inova-public-quick-card>span{
    width:42px;
    height:42px;
    display:grid;
    place-items:center;
    border-radius:12px;
    margin-bottom:18px;
}
.inova-public-quick-card>span.blue{background:#e9f2ff;color:#0d6efd}
.inova-public-quick-card>span.green{background:#e9fff2;color:#169657}
.inova-public-quick-card>span.purple{background:#f1ecff;color:#7657d8}
.inova-public-quick-card>span.orange{background:#fff3dc;color:#c98500}
.inova-public-quick-card strong,
.inova-public-quick-card small{
    display:block;
}
.inova-public-quick-card strong{
    font-size:13px;
}
.inova-public-quick-card small{
    max-width:190px;
    margin-top:6px;
    color:#7d8a9c;
    font-size:10px;
    line-height:1.5;
}
.inova-public-quick-card>i{
    position:absolute;
    right:17px;
    bottom:18px;
    color:#9eadc0;
    font-size:10px;
}

.inova-public-domain{
    margin-top:8px;
    margin-bottom:58px;
    padding:25px;
    display:grid;
    grid-template-columns:.8fr 1.2fr;
    gap:26px;
    align-items:center;
    border-radius:20px;
    background:linear-gradient(135deg,#071f46,#0d6efd);
    color:#fff;
}
.inova-public-domain-copy>span{color:#8fd0ff}
.inova-public-domain-copy h2{color:#fff;font-size:20px}
.inova-public-domain-copy p{color:rgba(255,255,255,.67)}
.inova-public-domain-form{
    min-height:55px;
    padding:6px 6px 6px 16px;
    display:flex;
    align-items:center;
    gap:9px;
    border-radius:13px;
    background:#fff;
}
.inova-public-domain-form>i{
    color:#7e8b9d;
}
.inova-public-domain-form input{
    min-width:0;
    flex:1;
    height:41px;
    border:0;
    outline:0;
    color:#23344b;
}
.inova-public-domain-form button{
    min-height:41px;
    padding:0 17px;
    border:0;
    border-radius:9px;
    background:#0d6efd;
    color:#fff;
    font-size:11px;
    font-weight:800;
}

.inova-public-news{
    padding-bottom:58px;
}
.inova-public-news-head{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:20px;
}
.inova-public-news-head>a{
    color:#0d6efd!important;
    font-size:10.5px;
    font-weight:900;
    text-decoration:none!important;
}
.inova-public-news-card{
    min-height:290px;
    margin-bottom:14px;
    padding:19px;
    border:1px solid #e3eaf3;
    border-radius:17px;
    background:#fff;
    box-shadow:0 8px 24px rgba(7,31,70,.04);
}
.inova-public-news-icon{
    width:39px;
    height:39px;
    display:grid;
    place-items:center;
    margin-bottom:15px;
    border-radius:11px;
    background:#eaf2ff;
    color:#0d6efd;
}
.inova-public-news-date{
    color:#8b98a8;
    font-size:9px;
}
.inova-public-news-date i{margin-right:4px}
.inova-public-news-card h3{
    margin:8px 0 8px;
    font-size:15px;
    line-height:1.35;
}
.inova-public-news-card h3 a{
    color:#071f46!important;
    text-decoration:none!important;
}
.inova-public-news-card p{
    color:#748397;
    font-size:10.5px;
    line-height:1.65;
}
.inova-public-news-link{
    display:inline-block;
    margin-top:6px;
    color:#0d6efd!important;
    font-size:10px;
    font-weight:900;
    text-decoration:none!important;
}

.inova-public-support-cta{
    margin-bottom:60px;
    padding:23px 25px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    border-radius:19px;
    background:linear-gradient(135deg,#071f46,#0b56b3);
    color:#fff;
}
.inova-public-support-cta>div{
    display:flex;
    align-items:center;
    gap:14px;
}
.inova-public-support-icon{
    width:48px;
    height:48px;
    flex:0 0 48px;
    display:grid;
    place-items:center;
    border-radius:14px;
    background:rgba(255,255,255,.10);
    color:#62ee9f;
    font-size:20px;
}
.inova-public-support-cta small{
    color:#8ec5ff;
    font-size:8px;
    letter-spacing:.1em;
}
.inova-public-support-cta h2{
    margin:3px 0;
    color:#fff;
    font-size:18px;
}
.inova-public-support-cta p{
    margin:0;
    color:rgba(255,255,255,.65);
    font-size:10.5px;
}
.inova-public-support-cta>.btn{
    min-height:42px;
    padding:0 15px;
    display:flex;
    align-items:center;
    gap:7px;
    border:0;
    border-radius:10px;
    background:#fff;
    color:#0d6efd!important;
    font-size:10.5px;
    font-weight:900;
}

/* Authentication */
body.inova-client-public.inova-page-login #main-body>.container,
body.inova-client-public.inova-page-password-reset-container #main-body>.container,
body.inova-client-public.inova-page-pwreset #main-body>.container{
    max-width:1050px;
    padding-top:52px;
    padding-bottom:62px;
}
.inova-auth-page{
    width:100%;
}
.inova-auth-row{
    display:flex;
    align-items:stretch;
}
.inova-auth-row>[class*="col-"]{
    display:flex;
}
.inova-auth-aside{
    width:100%;
    min-height:515px;
    padding:38px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    border-radius:20px 0 0 20px;
    background:
      radial-gradient(circle at 100% 0%,rgba(54,180,255,.22),transparent 35%),
      linear-gradient(145deg,#071f46,#0b438d);
    color:#fff;
}
.inova-auth-aside-icon{
    width:52px;
    height:52px;
    display:grid;
    place-items:center;
    margin-bottom:23px;
    border-radius:15px;
    background:rgba(255,255,255,.11);
    font-size:21px;
}
.inova-auth-aside .inova-public-eyebrow{
    color:#75c8ff;
}
.inova-auth-aside h2{
    margin:0;
    color:#fff;
    font-size:30px;
    font-weight:800;
}
.inova-auth-aside>p{
    margin:12px 0 20px;
    color:rgba(255,255,255,.68);
    font-size:12px;
    line-height:1.7;
}
.inova-auth-benefits{
    display:grid;
    gap:10px;
}
.inova-auth-benefits span{
    color:#e3efff;
    font-size:10.5px;
    font-weight:700;
}
.inova-auth-benefits i{
    margin-right:6px;
    color:#4ae091;
}
.inova-auth-help{
    margin-top:28px;
    padding:12px;
    display:flex;
    align-items:center;
    gap:9px;
    border:1px solid rgba(255,255,255,.12);
    border-radius:13px;
    background:rgba(255,255,255,.06);
}
.inova-auth-help>i{
    color:#5be498;
    font-size:18px;
}
.inova-auth-help strong,
.inova-auth-help small{
    display:block;
}
.inova-auth-help strong{font-size:10px}
.inova-auth-help small{color:rgba(255,255,255,.57);font-size:8.5px}
.inova-auth-help a{
    margin-left:auto;
    color:#fff!important;
    font-size:9px;
    font-weight:900;
}
.inova-auth-card{
    width:100%;
    min-height:515px;
    padding:44px 46px;
    border:1px solid #e1e8f2;
    border-left:0;
    border-radius:0 20px 20px 0;
    background:#fff;
    box-shadow:0 20px 50px rgba(7,31,70,.08);
}
.inova-auth-card-head>span{
    color:#0d6efd;
    font-size:8.5px;
    font-weight:900;
    letter-spacing:.11em;
}
.inova-auth-card-head h1{
    margin:5px 0 4px;
    color:#071f46;
    font-size:27px;
    font-weight:800;
}
.inova-auth-card-head p{
    margin:0 0 24px;
    color:#7b899b;
    font-size:11.5px;
}
.inova-auth-form label{
    color:#34465d;
    font-size:10.5px;
    font-weight:800;
}
.inova-auth-label-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
}
.inova-auth-label-row>a{
    color:#0d6efd!important;
    font-size:9.5px;
    font-weight:800;
}
.inova-auth-input{
    position:relative;
}
.inova-auth-input>i{
    position:absolute;
    z-index:2;
    left:14px;
    top:50%;
    transform:translateY(-50%);
    color:#9aa8b8;
}
.inova-auth-input .form-control{
    height:47px;
    padding-left:40px;
    padding-right:42px;
    border:1px solid #dfe7f1;
    border-radius:11px;
    box-shadow:none;
    font-size:12px;
}
.inova-auth-input .form-control:focus{
    border-color:#83b7ff;
    box-shadow:0 0 0 3px rgba(13,110,253,.08);
}
.inova-auth-eye{
    position:absolute;
    right:5px;
    top:5px;
    width:37px;
    height:37px;
    border:0;
    border-radius:9px;
    background:transparent;
    color:#607188;
}
.inova-auth-remember{
    margin:3px 0 17px;
    display:flex;
    align-items:center;
    gap:7px;
    color:#718096;
    font-size:10px;
    font-weight:600;
}
.inova-auth-submit{
    width:100%;
    min-height:46px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    border:0;
    border-radius:11px;
    background:#0d6efd;
    color:#fff!important;
    font-size:11.5px;
    font-weight:900;
    box-shadow:0 9px 22px rgba(13,110,253,.20);
}
.inova-auth-register{
    margin-top:21px;
    padding-top:16px;
    border-top:1px solid #edf1f6;
    text-align:center;
    color:#7b899b;
    font-size:10px;
}
.inova-auth-register a{
    color:#0d6efd!important;
    font-weight:900;
}
.inova-auth-providers{
    margin-top:15px;
}
.inova-auth-card-single{
    max-width:520px;
    min-height:0;
    margin:0 auto;
    padding:38px 42px;
    border:1px solid #e1e8f2;
    border-radius:20px;
}
.inova-auth-reset-icon{
    width:52px;
    height:52px;
    margin:0 auto 15px;
    display:grid;
    place-items:center;
    border-radius:15px;
    background:#eaf2ff;
    color:#0d6efd;
    font-size:19px;
}
.inova-reset-copy{
    margin-bottom:18px;
    color:#6e7d90;
    font-size:11px;
    line-height:1.6;
}

/* Registration / public content forms */
body.inova-client-public.inova-page-clientregister #main-body>.container{
    max-width:1030px;
    padding-top:38px;
}
body.inova-client-public.inova-page-clientregister #main-body .sidebar{
    display:none!important;
}
body.inova-client-public.inova-page-clientregister #main-body .col-md-9.pull-md-right{
    width:100%!important;
    float:none!important;
    right:auto!important;
}
body.inova-client-public.inova-page-clientregister #main-body .main-content{
    width:100%!important;
    float:none!important;
    right:auto!important;
}
body.inova-client-public.inova-page-clientregister .page-header{
    margin:0 auto 17px;
    padding:0;
    border:0;
}
body.inova-client-public.inova-page-clientregister .page-header h1{
    color:#071f46;
    font-size:28px;
    font-weight:800;
}
.inova-register-card{
    padding:26px;
    border:1px solid #e1e8f2;
    border-radius:19px;
    background:#fff;
    box-shadow:0 18px 46px rgba(7,31,70,.07);
}
.inova-register-card .sub-heading{
    margin:20px 0 15px;
    border-bottom:1px solid #e9eef5;
}
.inova-register-card .sub-heading span{
    position:relative;
    top:8px;
    padding:0 10px;
    background:#fff;
    color:#0d6efd;
    font-size:11px;
    font-weight:800;
}
.inova-register-card .form-control,
.inova-register-card .field,
.inova-register-card select{
    min-height:43px;
    border:1px solid #dfe7f1!important;
    border-radius:9px!important;
    box-shadow:none!important;
    font-size:11.5px;
}
.inova-register-card .prepend-icon .field{
    padding-left:39px;
}
.inova-register-card .prepend-icon .field-icon{
    top:0;
    left:0;
    width:38px;
    line-height:43px;
    color:#95a3b4;
}
.inova-register-card .btn-primary,
.inova-register-card input.btn-primary{
    min-height:43px;
    padding:0 18px;
    border:0;
    border-radius:10px;
    background:#0d6efd;
    font-size:11px;
    font-weight:900;
}
.inova-register-card .generate-password{
    border-radius:9px;
    font-size:10px;
}
.inova-marketing-optin{
    margin-top:18px;
    padding:16px!important;
    border:1px solid #e2e9f2;
    border-radius:13px;
    background:#f8fbff!important;
}
.inova-marketing-optin h4{
    margin:0 0 5px;
    color:#071f46;
    font-size:13px;
}
.inova-marketing-optin p{
    margin:0 0 10px;
    color:#748397;
    font-size:10.5px;
    line-height:1.55;
}

/* Footer */
.inova-public-v3-footer{
    border-top:1px solid #e3eaf3;
    background:#fff;
}
.inova-public-v3-footer-main{
    min-height:112px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
}
.inova-public-v3-footer-brand strong{
    display:block;
    color:#071f46;
    font-size:14px;
}
.inova-public-v3-footer-brand p{
    max-width:390px;
    margin:4px 0 0;
    color:#8290a2;
    font-size:9.5px;
}
.inova-public-v3-footer-links{
    display:flex;
    gap:17px;
    flex-wrap:wrap;
}
.inova-public-v3-footer-links a{
    color:#607188!important;
    font-size:9.5px;
    font-weight:700;
}
.inova-public-v3-footer-bottom{
    min-height:45px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    border-top:1px solid #edf1f5;
    color:#95a1b0;
    font-size:8.5px;
}

/* General public page header */
body.inova-client-public:not(.inova-page-homepage):not(.inova-page-login):not(.inova-page-password-reset-container):not(.inova-page-pwreset) .page-header{
    border-bottom:0;
}
body.inova-client-public:not(.inova-page-homepage) .page-header h1{
    color:#071f46;
    font-weight:800;
}

/* Mobile */
@media(max-width:991px){
    .inova-public-v3-brand{min-width:auto}
    .inova-public-hero{padding-top:46px}
    .inova-public-hero h1{font-size:41px}
    .inova-public-hero-panel{margin-top:32px}
    .inova-public-domain{grid-template-columns:1fr}
    .inova-auth-row{display:block}
    .inova-auth-row>[class*="col-"]{display:block}
    .inova-auth-card{
        min-height:0;
        border-left:1px solid #e1e8f2;
        border-radius:20px;
    }
}
@media(max-width:767px){
    .inova-public-v3-row{min-height:66px}
    .inova-public-v3-brand img{max-width:175px;max-height:40px}
    .inova-public-v3-bar .container{justify-content:flex-start}
    .inova-public-hero,
    .inova-public-quick,
    .inova-public-domain,
    .inova-public-news,
    .inova-public-support-cta{
        width:calc(100% - 28px);
    }
    .inova-public-hero{padding:42px 0 38px}
    .inova-public-hero h1{font-size:34px}
    .inova-public-hero p{font-size:13px}
    .inova-public-hero-actions .btn{width:100%;justify-content:center}
    .inova-public-trust{display:grid;gap:7px}
    .inova-public-quick-card{margin-bottom:12px}
    .inova-public-domain{margin-bottom:42px;padding:20px}
    .inova-public-news-head{align-items:flex-start;flex-direction:column}
    .inova-public-support-cta{
        align-items:flex-start;
        flex-direction:column;
    }
    .inova-public-support-cta>.btn{width:100%;justify-content:center}
    body.inova-client-public.inova-page-login #main-body>.container,
    body.inova-client-public.inova-page-password-reset-container #main-body>.container,
    body.inova-client-public.inova-page-pwreset #main-body>.container{
        padding-top:28px;
        padding-bottom:35px;
    }
    .inova-auth-card,
    .inova-auth-card-single{
        padding:27px 21px;
    }
    .inova-auth-card-head h1{font-size:23px}
    .inova-register-card{padding:17px}
    .inova-public-v3-footer-main{
        padding:25px 0;
        align-items:flex-start;
        flex-direction:column;
    }
    .inova-public-v3-footer-links{
        gap:10px 15px;
    }
    .inova-public-v3-footer-bottom{
        padding:13px 0;
        align-items:flex-start;
        flex-direction:column;
        gap:3px;
    }
}

/* ==========================================================
   INOVA CLIENT V3.2 - LEGIBILIDADE
   Mantém o layout da V3/V3.1 e aumenta tipografia/ícones.
   ========================================================== */

/* Cabeçalho público */
.inova-public-v3-row{min-height:82px}
.inova-public-v3-brand strong{font-size:18px}
.inova-public-v3-brand small{font-size:10px}
.inova-public-v3-nav a{padding:10px 12px;font-size:13.5px}
.inova-public-v3-whatsapp,
.inova-public-v3-cart,
.inova-public-v3-mobile{width:43px;height:43px;font-size:16px}
.inova-public-v3-login,
.inova-public-v3-register{min-height:43px;padding:0 16px;font-size:13px}
.inova-public-v3-bar .container{min-height:38px}
.inova-public-v3-bar span{font-size:10.5px}
.inova-public-v3-bar i{font-size:11px}

/* Home pública */
.inova-public-eyebrow{font-size:10px}
.inova-public-hero p{font-size:16px}
.inova-public-hero-actions .btn{min-height:49px;padding:0 19px;font-size:13px}
.inova-public-trust span{font-size:11.5px}
.inova-public-trust i{font-size:12px}

/* Painel lateral do hero */
.inova-public-panel-top small{font-size:9px}
.inova-public-panel-top strong{font-size:14.5px}
.inova-public-panel-icon{width:47px;height:47px;font-size:17px}
.inova-public-panel-grid a{min-height:120px;padding:15px}
.inova-public-panel-grid a>span{width:40px;height:40px;font-size:16px}
.inova-public-panel-grid strong{font-size:13px}
.inova-public-panel-grid small{font-size:10.5px;line-height:1.45}
.inova-public-panel-status span{font-size:10.5px}
.inova-public-panel-status small{font-size:9.5px}

/* Títulos das seções */
.inova-public-section-heading>span,
.inova-public-domain-copy>span{font-size:9.5px}
.inova-public-section-heading h2,
.inova-public-domain-copy h2{font-size:27px}
.inova-public-section-heading p,
.inova-public-domain-copy p{font-size:12.5px}

/* Cards de acesso rápido */
.inova-public-quick-card{min-height:190px;padding:20px}
.inova-public-quick-card>span{width:47px;height:47px;font-size:19px}
.inova-public-quick-card strong{font-size:15px}
.inova-public-quick-card small{font-size:11.5px;line-height:1.55}
.inova-public-quick-card>i{font-size:12px}

/* Domínio */
.inova-public-domain-copy h2{font-size:22px}
.inova-public-domain-copy p{font-size:12px}
.inova-public-domain-form{min-height:59px}
.inova-public-domain-form>i{font-size:15px}
.inova-public-domain-form input{height:44px;font-size:13px}
.inova-public-domain-form button{min-height:44px;font-size:12px}

/* Publicações */
.inova-public-news-head>a{font-size:11.5px}
.inova-public-news-card{min-height:305px;padding:21px}
.inova-public-news-icon{width:43px;height:43px;font-size:16px}
.inova-public-news-date{font-size:10px}
.inova-public-news-card h3{font-size:17px}
.inova-public-news-card p{font-size:11.5px}
.inova-public-news-link{font-size:11px}

/* CTA suporte */
.inova-public-support-icon{width:52px;height:52px;flex-basis:52px;font-size:22px}
.inova-public-support-cta small{font-size:9px}
.inova-public-support-cta h2{font-size:20px}
.inova-public-support-cta p{font-size:11.5px}
.inova-public-support-cta>.btn{min-height:44px;font-size:11.5px}

/* Login */
.inova-auth-aside .inova-public-eyebrow{font-size:10px}
.inova-auth-aside h2{font-size:32px}
.inova-auth-aside>p{font-size:13px}
.inova-auth-benefits span{font-size:11.5px}
.inova-auth-benefits i{font-size:11px}
.inova-auth-help strong{font-size:11px}
.inova-auth-help small{font-size:9.5px}
.inova-auth-help a{font-size:10px}
.inova-auth-card-head>span{font-size:9.5px}
.inova-auth-card-head h1{font-size:29px}
.inova-auth-card-head p{font-size:12.5px}
.inova-auth-form label{font-size:11.5px}
.inova-auth-label-row>a{font-size:10.5px}
.inova-auth-input>i{font-size:13px}
.inova-auth-input .form-control{height:50px;font-size:13.5px}
.inova-auth-eye{width:40px;height:40px;font-size:14px}
.inova-auth-remember{font-size:11px}
.inova-auth-submit{min-height:49px;font-size:13px}
.inova-auth-register{font-size:11px}
.inova-reset-copy{font-size:12px}

/* Cadastro */
body.inova-client-public.inova-page-clientregister .page-header h1{font-size:30px}
.inova-register-card{padding:28px}
.inova-register-card .sub-heading span{font-size:12.5px}
.inova-register-card .form-control,
.inova-register-card .field,
.inova-register-card select{min-height:46px;font-size:13px}
.inova-register-card .prepend-icon .field{padding-left:42px}
.inova-register-card .prepend-icon .field-icon{width:41px;line-height:46px;font-size:13px}
.inova-register-card .btn-primary,
.inova-register-card input.btn-primary{min-height:46px;font-size:12.5px}
.inova-register-card .generate-password{font-size:11px}
.inova-marketing-optin h4{font-size:14px}
.inova-marketing-optin p{font-size:11.5px}

/* Rodapé */
.inova-public-v3-footer-brand strong{font-size:15px}
.inova-public-v3-footer-brand p{font-size:10.5px}
.inova-public-v3-footer-links a{font-size:10.5px}
.inova-public-v3-footer-bottom{font-size:9.5px}

/* Telas grandes */
@media(min-width:1400px){
    .inova-public-v3-nav a{font-size:14px}
    .inova-public-v3-login,
    .inova-public-v3-register{font-size:13.5px}
    .inova-public-panel-grid strong{font-size:13.5px}
    .inova-public-panel-grid small{font-size:11px}
    .inova-public-quick-card strong{font-size:15.5px}
    .inova-public-quick-card small{font-size:12px}
    .inova-auth-form label{font-size:12px}
    .inova-auth-input .form-control{font-size:14px}
}

/* Mobile */
@media(max-width:767px){
    .inova-public-v3-row{min-height:70px}
    .inova-public-v3-login,
    .inova-public-v3-register{font-size:12px}
    .inova-public-hero p{font-size:14px}
    .inova-public-quick-card strong{font-size:14px}
    .inova-public-quick-card small{font-size:11px}
    .inova-auth-card-head h1{font-size:25px}
    .inova-auth-input .form-control{font-size:13px}
    .inova-register-card .form-control,
    .inova-register-card .field,
    .inova-register-card select{font-size:12.5px}
}


/* =========================================================
   V3.3 Premium - Blog/publicações com mais legibilidade
   ========================================================= */

.inova-public-news-grid > div:nth-child(3n+1) .inova-public-news-media,
.inova-announcements-list .inova-announcement-card:nth-child(3n+1) .inova-announcement-media{
    background-image:url('../img/inova/news-cover-1.jpg');
}
.inova-public-news-grid > div:nth-child(3n+2) .inova-public-news-media,
.inova-announcements-list .inova-announcement-card:nth-child(3n+2) .inova-announcement-media{
    background-image:url('../img/inova/news-cover-2.jpg');
}
.inova-public-news-grid > div:nth-child(3n+3) .inova-public-news-media,
.inova-announcements-list .inova-announcement-card:nth-child(3n+3) .inova-announcement-media{
    background-image:url('../img/inova/news-cover-3.jpg');
}

.inova-public-news-card{
    min-height:unset;
    padding:0;
    overflow:hidden;
    border-radius:22px;
    box-shadow:0 16px 38px rgba(7,31,70,.08);
    transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.inova-public-news-card:hover,
.inova-announcement-card:hover{
    transform:translateY(-6px);
    box-shadow:0 20px 46px rgba(7,31,70,.12);
    border-color:#d5e3ff;
}
.inova-public-news-media,
.inova-announcement-media{
    position:relative;
    display:block;
    min-height:188px;
    background-size:cover;
    background-position:center;
    overflow:hidden;
}
.inova-public-news-media::before,
.inova-announcement-media::before{
    content:'';
    position:absolute;
    inset:0;
    background:linear-gradient(180deg, rgba(7,31,70,.08) 0%, rgba(7,31,70,.18) 36%, rgba(7,31,70,.72) 100%);
}
.inova-public-news-badge{
    position:absolute;
    top:16px;
    left:16px;
    z-index:2;
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:8px 12px;
    border-radius:999px;
    background:rgba(255,255,255,.92);
    color:#0d47a1;
    font-size:12px;
    font-weight:800;
    letter-spacing:.03em;
    text-transform:uppercase;
    box-shadow:0 8px 22px rgba(7,31,70,.10);
}
.inova-public-news-body,
.inova-announcement-body{
    padding:22px 24px 24px;
}
.inova-public-news-date,
.inova-announcement-meta{
    display:flex;
    align-items:center;
    gap:6px;
    color:#6f7f93;
    font-size:12.5px;
    font-weight:600;
}
.inova-public-news-date i,
.inova-announcement-meta i{margin-right:0}
.inova-public-news-card h3{
    margin:12px 0 12px;
    font-size:22px;
    line-height:1.35;
    letter-spacing:-.01em;
}
.inova-public-news-card h3 a{
    color:#071f46!important;
    text-decoration:none!important;
}
.inova-public-news-card p{
    margin:0;
    color:#5f7188;
    font-size:14.5px;
    line-height:1.8;
    min-height:102px;
}
.inova-public-news-link{
    display:inline-flex;
    align-items:center;
    gap:8px;
    margin-top:18px;
    color:#0d6efd!important;
    font-size:13.5px;
    font-weight:800;
    text-decoration:none!important;
}
.inova-public-news-link i{font-size:12px}
.inova-public-news-head > a{
    font-size:13.5px;
}
.inova-public-news-head p{
    max-width:620px;
}

.inova-announcements-page{
    padding:6px 0 12px;
}
.inova-announcements-head{margin-bottom:18px}
.inova-announcements-list{
    display:flex;
    flex-direction:column;
    gap:24px;
}
.inova-announcement-card{
    border:1px solid #e3eaf3;
    border-radius:22px;
    overflow:hidden;
    background:#fff;
    box-shadow:0 12px 28px rgba(7,31,70,.06);
    transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.inova-announcement-body .title{
    display:block;
    margin:12px 0 12px;
    color:#071f46!important;
    text-decoration:none!important;
    font-size:28px;
    line-height:1.28;
    font-weight:800;
    letter-spacing:-.02em;
}
.inova-announcement-body p{
    margin:0;
    color:#5f7188;
    font-size:15.5px;
    line-height:1.85;
}
.inova-announcement-meta{
    font-size:12.5px;
    margin:0;
}
.inova-announcement-meta .admin-inline-edit{
    margin-left:10px;
    color:#0d6efd!important;
    text-decoration:none!important;
    font-weight:700;
}
.inova-announcements-pagination{
    margin-top:24px;
}
.inova-announcements-pagination .btn{
    border-radius:12px!important;
}

@media (min-width: 992px){
    .inova-announcement-card{
        display:grid;
        grid-template-columns:360px minmax(0,1fr);
    }
    .inova-announcement-media{
        min-height:100%;
    }
}

@media (max-width: 991px){
    .inova-public-news-body,
    .inova-announcement-body{padding:20px}
    .inova-public-news-card h3{font-size:20px}
    .inova-public-news-card p{font-size:14px;min-height:unset}
    .inova-announcement-body .title{font-size:23px}
    .inova-announcement-body p{font-size:14.5px}
}

@media (max-width: 767px){
    .inova-public-news-head{align-items:flex-start;flex-direction:column}
    .inova-public-news-media,
    .inova-announcement-media{min-height:170px}
    .inova-public-news-badge{font-size:11px;padding:7px 10px}
    .inova-public-news-card h3{font-size:19px}
    .inova-public-news-card p,
    .inova-announcement-body p{font-size:14px;line-height:1.75}
    .inova-announcement-body .title{font-size:21px}
}

/* =========================================================
   V3.4 - Imagem real por publicação + categoria + leitura
   ========================================================= */
.inova-v34-meta-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    flex-wrap:wrap;
}
.inova-v34-reading-time{
    display:flex;
    align-items:center;
    gap:5px;
    color:#78889b;
    font-size:12.5px;
    font-weight:600;
}
.inova-v34-reading-time i{color:#0d6efd}
.inova-v34-category{
    max-width:calc(100% - 32px);
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.inova-v34-cta{
    padding:9px 13px;
    border-radius:10px;
    background:#edf5ff;
}
.inova-v34-cta:hover{
    background:#0d6efd;
    color:#fff!important;
    transform:translateX(2px);
}
.inova-v34-post .inova-v34-media{
    transition:filter .22s ease, transform .22s ease;
}
.inova-v34-post:hover .inova-v34-media{
    filter:saturate(1.06) contrast(1.02);
}
.inova-v34-post .inova-v34-title{
    transition:color .18s ease;
}
.inova-v34-post:hover .inova-v34-title{
    color:#0d6efd!important;
}
.inova-v34-source{display:none!important}
@media(max-width:767px){
    .inova-v34-meta-row{align-items:flex-start;flex-direction:column;gap:6px}
    .inova-v34-reading-time{font-size:12px}
}

/* =========================================================
   V3.5 - Cards de blog com mesma altura + leitura maior
   ========================================================= */
.inova-public-news-grid{
    display:flex;
    flex-wrap:wrap;
}
.inova-public-news-grid > [class*="col-"]{
    display:flex;
    margin-bottom:20px;
}
.inova-public-news-grid .inova-public-news-card{
    width:100%;
    height:100%;
    display:flex;
    flex-direction:column;
}
.inova-public-news-grid .inova-public-news-media{
    flex:0 0 188px;
    min-height:188px;
}
.inova-public-news-grid .inova-public-news-body{
    flex:1 1 auto;
    display:flex;
    flex-direction:column;
    padding:23px 24px 24px;
}
.inova-public-news-grid .inova-v34-meta-row{
    flex:0 0 auto;
}
.inova-public-news-grid .inova-public-news-card h3{
    margin:12px 0 12px;
    font-size:22px;
    line-height:1.34;
    min-height:59px;
    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
    overflow:hidden;
}
.inova-public-news-grid .inova-v34-excerpt{
    flex:0 0 auto;
    color:#536981;
    font-size:15.5px;
    line-height:1.72;
    min-height:133px;
    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:5;
    overflow:hidden;
}
.inova-public-news-grid .inova-public-news-date,
.inova-public-news-grid .inova-v34-reading-time{
    font-size:13px;
}
.inova-public-news-grid .inova-v34-category{
    font-size:12.5px;
}
.inova-public-news-grid .inova-v34-cta{
    margin-top:auto;
    align-self:flex-start;
    font-size:14px;
    padding:10px 14px;
}

/* melhora um pouco a leitura da listagem completa de anúncios */
.inova-announcement-body .title{font-size:29px}
.inova-announcement-body p{font-size:16px;line-height:1.82}
.inova-announcement-meta{font-size:13px}

@media(max-width:991px){
    .inova-public-news-grid .inova-public-news-card h3{
        font-size:20px;
        min-height:54px;
    }
    .inova-public-news-grid .inova-v34-excerpt{
        font-size:14.5px;
        min-height:124px;
    }
}
@media(max-width:767px){
    .inova-public-news-grid{display:block}
    .inova-public-news-grid > [class*="col-"]{display:block;margin-bottom:18px}
    .inova-public-news-grid .inova-public-news-card h3{min-height:0}
    .inova-public-news-grid .inova-v34-excerpt{min-height:0;-webkit-line-clamp:4}
    .inova-public-news-grid .inova-public-news-media{min-height:180px;flex-basis:180px}
}
