:root{
  --bg:#F3F5F2; --surface:#FFFFFF; --surface-2:#EAEEEA; --line:#D8DED9;
  --ink:#16201D; --ink-2:#4A5753; --ink-3:#77837F;
  --accent:#0E5C52; --accent-ink:#FFFFFF; --accent-soft:#DCEBE7;
  --rec:#00886A; --desp:#C85A1E; --card:#7A5A12;
  --good:#1F7A43; --good-bg:#E1F1E6; --warn:#9A6200; --warn-bg:#FBEFD6; --crit:#B3372F; --crit-bg:#F8E1DE;
  --display:"Bricolage Grotesque", "IBM Plex Sans", system-ui, sans-serif;
  --sans:"IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
  --mono:"IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    color-scheme:dark;
    --bg:#101614; --surface:#18201E; --surface-2:#212B28; --line:#2E3A37;
    --ink:#E4ECE9; --ink-2:#AAB8B3; --ink-3:#7F8E89;
    --accent:#5CC2B2; --accent-ink:#0B1614; --accent-soft:#1D3531;
    --rec:#1FA07F; --desp:#D9773A; --card:#D8B35C;
    --good:#6CCB8F; --good-bg:#17301F; --warn:#E6B24F; --warn-bg:#342913; --crit:#EF8A80; --crit-bg:#3A1C19;
  }
}
:root[data-theme="dark"]{
  color-scheme:dark;
  --bg:#101614; --surface:#18201E; --surface-2:#212B28; --line:#2E3A37;
  --ink:#E4ECE9; --ink-2:#AAB8B3; --ink-3:#7F8E89;
  --accent:#5CC2B2; --accent-ink:#0B1614; --accent-soft:#1D3531;
  --rec:#1FA07F; --desp:#D9773A; --card:#D8B35C;
  --good:#6CCB8F; --good-bg:#17301F; --warn:#E6B24F; --warn-bg:#342913; --crit:#EF8A80; --crit-bg:#3A1C19;
}
*{box-sizing:border-box}
body{background:var(--bg);color:var(--ink);font:15px/1.5 var(--sans);padding-inline:16px;padding-block:0 48px}
.wrap{max-width:1120px;margin:0 auto}
h1,h2,h3{font-family:var(--display);text-wrap:balance;margin:0;line-height:1.15}
h2{font-size:20px;font-weight:700}
h3{font-size:15px;font-weight:700;font-family:var(--sans)}
.num,td.v,.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px}

/* header */
header.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:5;background:var(--bg);padding-block:18px 0;border-bottom:1px solid var(--line)}
.hrow{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;justify-content:space-between}
.who{display:flex;flex-direction:column;gap:2px;min-width:0}
.eyebrow{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);font-weight:600}
.who h1{font-size:26px;font-weight:700}
.chips{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.chip{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:3px 10px;font-size:12px;font-weight:600;background:var(--surface-2);color:var(--ink-2)}
.chip.plan{background:var(--accent);color:var(--accent-ink)}
.monthnav{display:flex;align-items:center;gap:4px;background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:3px}
.monthnav button{border:0;background:none;width:32px;height:32px;border-radius:7px;cursor:pointer;color:var(--ink-2);font-size:18px}
.monthnav button:hover{background:var(--surface-2)}
.monthnav span{min-width:128px;text-align:center;font-weight:600;text-transform:capitalize}
nav.tabs{display:flex;gap:2px;overflow-x:auto;margin-top:14px;scrollbar-width:none}
nav.tabs button{border:0;background:none;padding:10px 14px;cursor:pointer;color:var(--ink-2);font-weight:500;border-bottom:2px solid transparent;white-space:nowrap}
nav.tabs button[aria-selected="true"]{color:var(--ink);border-bottom-color:var(--accent);font-weight:600}
nav.tabs button .lock{font-size:10px;color:var(--ink-3);margin-left:4px;letter-spacing:.04em;text-transform:uppercase}

main{padding-top:22px;display:flex;flex-direction:column;gap:22px}
.panel{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:18px}
.panel-h{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.muted{color:var(--ink-3)}
.small{font-size:13px}
.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:22px}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:12px;overflow:hidden}
.stat{background:var(--surface);padding:14px 16px;display:flex;flex-direction:column;gap:4px}
.stat .l{font-size:12px;color:var(--ink-3);font-weight:600;letter-spacing:.04em;text-transform:uppercase}
.stat .n{font-family:var(--mono);font-size:22px;font-weight:500;font-variant-numeric:tabular-nums}
.stat .s{font-size:12px;color:var(--ink-3)}
.pos{color:var(--good)} .neg{color:var(--crit)}

/* forms */
form.f{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;align-items:end}
.fld{display:flex;flex-direction:column;gap:4px;min-width:0}
.fld label{font-size:12px;font-weight:600;color:var(--ink-2)}
.fld input,.fld select,.fld textarea{width:100%;border:1px solid var(--line);background:var(--bg);border-radius:8px;padding:8px 10px;min-height:38px}
.fld textarea{min-height:90px;resize:vertical}
.fld.wide{grid-column:1/-1}
.check{display:flex;align-items:center;gap:8px;font-size:13px;min-height:38px}
.seg{display:inline-flex;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:var(--bg)}
.seg button{border:0;background:none;padding:8px 14px;cursor:pointer;font-weight:600;color:var(--ink-2)}
.seg button[aria-pressed="true"].r{background:var(--rec);color:#fff}
.seg button[aria-pressed="true"].d{background:var(--desp);color:#fff}
.btn{border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:8px 14px;cursor:pointer;font-weight:600;min-height:38px}
.btn:hover{background:var(--surface-2)}
.btn.pri{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
.btn.pri:hover{filter:brightness(1.08)}
.btn.sm{padding:4px 10px;min-height:28px;font-size:12px}
.btn.danger{color:var(--crit)}
.btn.confirm{background:var(--crit);border-color:var(--crit);color:#fff}
.actions{display:flex;gap:8px;flex-wrap:wrap}

/* tables */
.tbl-wrap{overflow-x:auto}
table{width:100%;border-collapse:collapse;font-size:14px}
th{text-align:left;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);font-weight:600;padding:8px 10px;border-bottom:1px solid var(--line);white-space:nowrap}
td{padding:9px 10px;border-bottom:1px solid var(--line);vertical-align:middle}
tr:last-child td{border-bottom:0}
td.v,th.v{text-align:right;white-space:nowrap}
td.act{text-align:right;white-space:nowrap;width:1%}
tr.sub td{background:var(--surface-2);font-weight:600}
tr.tot td{font-weight:700;border-top:2px solid var(--ink)}
.tag{display:inline-block;font-size:11px;padding:1px 8px;border-radius:999px;background:var(--surface-2);color:var(--ink-2);white-space:nowrap}
.tag.rec{background:color-mix(in srgb,var(--rec) 16%,transparent);color:var(--rec)}
.tag.desp{background:color-mix(in srgb,var(--desp) 16%,transparent);color:var(--desp)}
.tag.cart{background:color-mix(in srgb,var(--card) 18%,transparent);color:var(--card)}
.empty{padding:26px 10px;text-align:center;color:var(--ink-3)}

/* bars */
.hbar{display:grid;grid-template-columns:minmax(90px,150px) 1fr auto;gap:10px;align-items:center;font-size:13px;padding:4px 0}
.hbar .track{height:10px;background:var(--surface-2);border-radius:5px;overflow:hidden}
.hbar .fill{height:100%;background:var(--desp);border-radius:0 5px 5px 0}
.meter{height:8px;background:var(--surface-2);border-radius:4px;overflow:hidden}
.meter>div{height:100%;background:var(--accent);border-radius:0 4px 4px 0}
.legend{display:flex;gap:14px;font-size:12px;color:var(--ink-2)}
.legend i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:6px;vertical-align:-1px}
.chart svg{width:100%;height:auto;display:block}
.chart text{fill:var(--ink-3);font-family:var(--mono);font-size:11px}
.tip{position:fixed;pointer-events:none;background:var(--ink);color:var(--bg);font-size:12px;padding:6px 9px;border-radius:6px;z-index:20;font-family:var(--mono);white-space:nowrap}

/* cards (credit) */
.cc{display:flex;flex-direction:column;gap:12px;border:1px solid var(--line);border-radius:12px;padding:16px;background:var(--surface)}
.cc-h{display:flex;justify-content:space-between;align-items:baseline;gap:10px;flex-wrap:wrap}
.cc-h h3{font-family:var(--display);font-size:18px}
.kv{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px}
.kv div{display:flex;flex-direction:column}
.kv span:first-child{font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-3);font-weight:600}
.kv span:last-child{font-family:var(--mono);font-variant-numeric:tabular-nums}

/* indicators */
.ind-group{display:flex;flex-direction:column;gap:12px}
.ind-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:12px}
.ind{border:1px solid var(--line);border-left:4px solid var(--line);border-radius:10px;padding:14px;background:var(--surface);display:flex;flex-direction:column;gap:6px}
.ind.good{border-left-color:var(--good)} .ind.warn{border-left-color:var(--warn)} .ind.crit{border-left-color:var(--crit)}
.ind .top{display:flex;justify-content:space-between;align-items:center;gap:8px}
.ind .nm{font-weight:600;font-size:14px}
.ind .val{font-family:var(--mono);font-size:24px;font-variant-numeric:tabular-nums}
.ind .ref,.ind .fx{font-size:12px;color:var(--ink-3)}
.pill{font-size:11px;font-weight:700;padding:2px 8px;border-radius:999px;white-space:nowrap}
.pill.good{background:var(--good-bg);color:var(--good)} .pill.warn{background:var(--warn-bg);color:var(--warn)} .pill.crit{background:var(--crit-bg);color:var(--crit)} .pill.info{background:var(--surface-2);color:var(--ink-2)}

.note{border-left:3px solid var(--accent);background:var(--accent-soft);padding:12px 14px;border-radius:0 10px 10px 0;white-space:pre-wrap}
.banner{background:var(--warn-bg);color:var(--warn);border-radius:10px;padding:10px 14px;font-size:13px}
.toast{position:fixed;left:50%;bottom:calc(20px + env(safe-area-inset-bottom,0px));transform:translateX(-50%);background:var(--ink);color:var(--bg);padding:10px 16px;border-radius:10px;font-size:14px;z-index:30;max-width:calc(100% - 32px)}
@media (max-width:560px){
  .who h1{font-size:21px}
  .hbar{grid-template-columns:90px 1fr auto}
}
@media (prefers-reduced-motion:no-preference){ .meter>div,.hbar .fill{transition:width .3s ease} }
[hidden]{display:none!important}
/* v2: carteira de clientes e orçamento */
.back{border:0;background:none;color:var(--accent);font-weight:600;cursor:pointer;padding:0;font-size:13px;text-align:left}
.back:hover{text-decoration:underline}
.toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:end}
.toolbar .fld{min-width:160px;flex:1}
.toolbar .fld.sm{flex:0 0 140px;min-width:120px}
tr.row-link{cursor:pointer}
tr.row-link:hover td{background:var(--surface-2)}
.uf{display:inline-block;font-family:var(--mono);font-weight:500;font-size:12px;padding:1px 7px;border:1px solid var(--line);border-radius:5px;background:var(--bg)}
.ufs{display:flex;flex-wrap:wrap;gap:6px}
.ufs button{border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:3px 10px;font-size:12px;cursor:pointer;color:var(--ink-2)}
.ufs button[aria-pressed="true"]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
.ufs b{font-family:var(--mono);font-weight:500}
.dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--ink-3);margin-right:6px;vertical-align:1px}
.dot.on{background:var(--good)}
.bud{display:grid;grid-template-columns:minmax(120px,1.3fr) 90px 120px minmax(100px,2fr) 76px;gap:10px 14px;align-items:center;font-size:14px;padding:8px 0;border-bottom:1px solid var(--line)}
.bud:last-child{border-bottom:0}
.bud.h{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);font-weight:600;padding-top:0}
.bud input{width:100%;border:1px solid var(--line);background:var(--bg);border-radius:6px;padding:5px 8px;text-align:right;font-family:var(--mono)}
.bud .track{height:10px;background:var(--surface-2);border-radius:5px;overflow:visible;position:relative}
.bud .track .fill{height:100%;border-radius:0 5px 5px 0;max-width:100%}
.bud .track .lim{position:absolute;top:-3px;bottom:-3px;width:2px;background:var(--ink)}
.sumbar{display:flex;flex-wrap:wrap;gap:8px 18px;align-items:center;font-size:13px}
@media (max-width:640px){
  .bud{grid-template-columns:1fr 80px;}
  .bud .c-real,.bud .c-bar{grid-column:1/-1}
  .bud.h{display:none}
}
/* v4: paleta da marca — preto #00120B, azul #5549FF, dourado #CCA43B, cinza #E5E5E5, branco #FFFFFF
   Azul = confiança e positivo · Dourado = patrimônio e atenção · Vermelho = negativo/crítico */
:root{
  --brand-black:#00120B; --brand-blue:#5549FF; --brand-gold:#CCA43B; --brand-grey:#E5E5E5; --brand-white:#FFFFFF;
  --bg:#E5E5E5; --surface:#FFFFFF; --surface-2:#F1F1F1; --line:#D3D3D3;
  --ink:#00120B; --ink-2:#434C48; --ink-3:#737A77;
  --accent:#5549FF; --accent-ink:#FFFFFF; --accent-soft:#ECEAFF;
  --gold:#CCA43B; --gold-ink:#7D5F12; --gold-soft:#F6EFDB;
  --rec:#5549FF; --desp:#B38A22; --card:#7D5F12;
  --good:#4338E0; --good-bg:#ECEAFF; --warn:#7D5F12; --warn-bg:#F6EFDB; --crit:#C62828; --crit-bg:#FBE4E4;
  --hdr:#00120B; --hdr-ink:#FFFFFF; --hdr-ink-2:rgba(255,255,255,.68); --hdr-line:rgba(204,164,59,.45); --hdr-btn:rgba(255,255,255,.08);
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    color-scheme:dark;
    --bg:#00120B; --surface:#0A1F17; --surface-2:#12291F; --line:#223A30;
    --ink:#FFFFFF; --ink-2:#C9CFCC; --ink-3:#8D9792;
    --accent:#7F76FF; --accent-ink:#00120B; --accent-soft:#1C1F4A;
    --gold:#CCA43B; --gold-ink:#DDB957; --gold-soft:#2C2610;
    --rec:#7F76FF; --desp:#C49B32; --card:#DDB957;
    --good:#9C95FF; --good-bg:#1C1F4A; --warn:#DDB957; --warn-bg:#2C2610; --crit:#FF6B6B; --crit-bg:#3A1616;
    --hdr:#000A06; --hdr-ink:#FFFFFF; --hdr-ink-2:rgba(255,255,255,.62); --hdr-line:rgba(204,164,59,.40); --hdr-btn:rgba(255,255,255,.06);
  }
}
:root[data-theme="dark"]{
  color-scheme:dark;
  --bg:#00120B; --surface:#0A1F17; --surface-2:#12291F; --line:#223A30;
  --ink:#FFFFFF; --ink-2:#C9CFCC; --ink-3:#8D9792;
  --accent:#7F76FF; --accent-ink:#00120B; --accent-soft:#1C1F4A;
  --gold:#CCA43B; --gold-ink:#DDB957; --gold-soft:#2C2610;
  --rec:#7F76FF; --desp:#C49B32; --card:#DDB957;
  --good:#9C95FF; --good-bg:#1C1F4A; --warn:#DDB957; --warn-bg:#2C2610; --crit:#FF6B6B; --crit-bg:#3A1616;
  --hdr:#000A06; --hdr-ink:#FFFFFF; --hdr-ink-2:rgba(255,255,255,.62); --hdr-line:rgba(204,164,59,.40); --hdr-btn:rgba(255,255,255,.06);
}

/* cabeçalho: faixa preta de ponta a ponta com detalhes dourados */
header.top{background:var(--hdr);color:var(--hdr-ink);border-bottom:1px solid var(--hdr-line);box-shadow:0 0 0 100vmax var(--hdr);clip-path:inset(0 -100vmax)}
header.top .eyebrow{color:var(--gold)}
header.top .who h1{color:var(--hdr-ink)}
header.top .back{color:var(--gold)}
header.top .chip{background:var(--hdr-btn);color:var(--hdr-ink-2);border:1px solid rgba(255,255,255,.14)}
header.top .chip.plan{background:var(--gold);color:#00120B;border-color:var(--gold)}
header.top .btn{background:transparent;color:var(--hdr-ink);border-color:rgba(255,255,255,.28)}
header.top .btn:hover{background:var(--hdr-btn)}
header.top .monthnav{background:var(--hdr-btn);border-color:rgba(255,255,255,.18)}
header.top .monthnav button{color:var(--hdr-ink-2)}
header.top .monthnav button:hover{background:rgba(255,255,255,.1);color:var(--hdr-ink)}
header.top .monthnav span{color:var(--hdr-ink)}
header.top nav.tabs button{color:var(--hdr-ink-2)}
header.top nav.tabs button:hover{color:var(--hdr-ink)}
header.top nav.tabs button[aria-selected="true"]{color:var(--hdr-ink);border-bottom-color:var(--gold)}
header.top nav.tabs button .lock{color:var(--gold)}
header.top :focus-visible{outline-color:var(--gold)}

/* detalhes da marca no conteúdo */
.stat .l{color:var(--ink-3)}
.seg button[aria-pressed="true"].d{background:var(--gold);color:#00120B}
.ind.warn{border-left-color:var(--gold)}
.note{border-left-color:var(--gold);background:var(--gold-soft)}
.banner{background:var(--gold-soft);color:var(--gold-ink)}
.ufs button[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:var(--surface)}
tr.tot td{border-top-color:var(--ink)}
.toast{background:var(--brand-black);color:#FFFFFF;border:1px solid var(--hdr-line)}
.tip{background:var(--brand-black);color:#FFFFFF}
.fld input,.fld select,.fld textarea,.bud input,.seg{background:var(--surface-2)}
.fld input:focus,.fld select:focus,.fld textarea:focus,.bud input:focus{border-color:var(--accent);background:var(--surface)}

/* ---------- sistema próprio: reset, login, instalação ---------- */
html{-webkit-text-size-adjust:100%}
:root{padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
body{min-height:100vh;margin:0}
.auth{min-height:100vh;display:flex;align-items:center;justify-content:center;padding-block:32px;background:var(--brand-black);box-shadow:0 0 0 100vmax var(--brand-black);clip-path:inset(0 -100vmax)}
.auth-card{width:100%;max-width:400px;background:var(--surface);border-radius:14px;padding:28px 24px;display:flex;flex-direction:column;gap:16px;border-top:3px solid var(--gold)}
.auth-card .brand{display:flex;align-items:center;gap:12px}
.auth-card .brand img{width:44px;height:44px;border-radius:10px}
.auth-card h1{font-size:22px}
.auth-card form{display:flex;flex-direction:column;gap:12px}
.auth-card .btn{width:100%}
.auth-links{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:13px}
.auth-links button{border:0;background:none;color:var(--accent);cursor:pointer;padding:0;font-weight:600}
.auth-msg{font-size:13px;border-radius:8px;padding:10px 12px}
.auth-msg.err{background:var(--crit-bg);color:var(--crit)}
.auth-msg.ok{background:var(--good-bg);color:var(--good)}
.install{position:fixed;left:16px;right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:25;background:var(--brand-black);color:#fff;border:1px solid var(--hdr-line);border-radius:12px;padding:12px 14px;display:flex;gap:12px;align-items:center;max-width:560px;margin:0 auto}
.install p{margin:0;font-size:13px;flex:1}
.install .btn{background:var(--gold);color:#00120B;border-color:var(--gold)}
.install .x{background:none;border:0;color:rgba(255,255,255,.7);font-size:20px;cursor:pointer;padding:0 4px}

.lbl{font-size:12px;font-weight:600;color:var(--ink-2)}
.tipo{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.tipo label{display:block;cursor:pointer}
.tipo input{position:absolute;opacity:0;pointer-events:none}
.tipo span{display:flex;flex-direction:column;gap:2px;border:1px solid var(--line);border-radius:10px;padding:10px 12px;background:var(--surface-2);height:100%}
.tipo small{font-size:12px;color:var(--ink-3)}
.tipo input:checked + span{border-color:var(--accent);background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent)}
.tipo input:focus-visible + span{outline:2px solid var(--accent);outline-offset:2px}
@media (max-width:380px){ .tipo{grid-template-columns:1fr} }

/* =====================================================================
   v3 · COCKPIT — menu lateral, cartões arredondados, azuis no lugar dos verdes
   ===================================================================== */
:root{
  --brand-black:#0B1633; --brand-blue:#5549FF; --brand-gold:#CCA43B;
  --bg:#F1F3F8; --surface:#FFFFFF; --surface-2:#F3F5FA; --line:#DDE2EC;
  --ink:#0B1633; --ink-2:#3F4A66; --ink-3:#6A7591;
  --accent:#5549FF; --accent-ink:#FFFFFF; --accent-soft:#ECEAFF;
  --gold:#CCA43B; --gold-ink:#7D5F12; --gold-soft:#FBF3DE;
  --rec:#5549FF; --desp:#B38A22; --card:#7D5F12;
  --good:#4338E0; --good-bg:#ECEAFF; --warn:#7D5F12; --warn-bg:#FBF3DE; --crit:#C62828; --crit-bg:#FCE8E7;
  --side:#0B1633; --side-2:#16254D; --side-ink:#FFFFFF; --side-mute:rgba(255,255,255,.7); --side-line:rgba(255,255,255,.12);
  --hdr:#0B1633; --hdr-line:rgba(204,164,59,.45);
  --display:"Sora", system-ui, -apple-system, "Segoe UI", sans-serif;
  --sans:"Sora", system-ui, -apple-system, "Segoe UI", sans-serif;
  --mono:"DM Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;
  --r:18px;
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    color-scheme:dark;
    --brand-black:#050A18;
    --bg:#070D1F; --surface:#0E1730; --surface-2:#16213F; --line:#26324F;
    --ink:#FFFFFF; --ink-2:#C5CCDD; --ink-3:#8D97B0;
    --accent:#8F87FF; --accent-ink:#0B1633; --accent-soft:#1E2150;
    --gold:#CCA43B; --gold-ink:#DDB957; --gold-soft:#2C2610;
    --rec:#8F87FF; --desp:#C49B32; --card:#DDB957;
    --good:#A39DFF; --good-bg:#1E2150; --warn:#DDB957; --warn-bg:#2C2610; --crit:#FF7A72; --crit-bg:#3A1716;
    --side:#050A18; --side-2:#101B38;
  }
}
:root[data-theme="dark"]{
  color-scheme:dark;
  --brand-black:#050A18;
  --bg:#070D1F; --surface:#0E1730; --surface-2:#16213F; --line:#26324F;
  --ink:#FFFFFF; --ink-2:#C5CCDD; --ink-3:#8D97B0;
  --accent:#8F87FF; --accent-ink:#0B1633; --accent-soft:#1E2150;
  --gold:#CCA43B; --gold-ink:#DDB957; --gold-soft:#2C2610;
  --rec:#8F87FF; --desp:#C49B32; --card:#DDB957;
  --good:#A39DFF; --good-bg:#1E2150; --warn:#DDB957; --warn-bg:#2C2610; --crit:#FF7A72; --crit-bg:#3A1716;
  --side:#050A18; --side-2:#101B38;
}
body{padding:0;margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:14px}
h1,h2,h3{font-family:var(--display);letter-spacing:-.01em}
h2{font-size:17px;font-weight:700}

/* casca: menu lateral + conteúdo */
.shell{display:grid;grid-template-columns:264px minmax(0,1fr);min-height:100vh}
.side{position:sticky;top:0;align-self:start;height:100vh;box-sizing:border-box;overflow-y:auto;background:var(--side);color:var(--side-ink);display:flex;flex-direction:column;gap:22px;padding:26px 16px calc(22px + env(safe-area-inset-bottom,0px))}
.side-brand{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);font-weight:600}
.side .back{color:var(--gold);font-size:13px}
.side-who{display:flex;gap:12px;align-items:center;min-width:0}
.avatar{width:44px;height:44px;flex-shrink:0;border-radius:50%;background:var(--gold);color:#0B1633;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:15px}
.side-who-t{display:flex;flex-direction:column;min-width:0}
.side-who-t strong{font-size:15px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.side-who-t small{font-size:12px;color:var(--side-mute)}
.side nav.tabs{display:flex;flex-direction:column;gap:4px;margin:0;overflow:visible}
.side nav.tabs button{display:flex;align-items:center;gap:12px;width:100%;text-align:left;border:0;background:transparent;color:var(--side-mute);padding:11px 14px;border-radius:12px;font-size:14px;font-weight:500;cursor:pointer;white-space:nowrap}
.side nav.tabs button::before{content:"";width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.28);flex-shrink:0}
.side nav.tabs button:hover{background:var(--side-2);color:var(--side-ink)}
.side nav.tabs button[aria-selected="true"]{background:var(--gold);color:#0B1633;font-weight:600;border:0}
.side nav.tabs button[aria-selected="true"]::before{background:#0B1633}
.side nav.tabs .lock{margin-left:auto;font-size:10px;letter-spacing:.04em;text-transform:uppercase;color:inherit;opacity:.7}
.side-foot{margin-top:auto;display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding-top:14px;border-top:1px solid var(--side-line)}
.side .chip{background:var(--side-2);color:var(--side-mute);border:0}
.side .chip.plan{background:transparent;color:var(--gold);border:1px solid rgba(204,164,59,.5)}
.side .btn{background:transparent;color:var(--side-ink);border:1px solid var(--side-line)}
.side .btn:hover{background:var(--side-2)}
.content{min-width:0;padding:28px 36px 56px;display:flex;flex-direction:column;gap:22px}
.topbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.topbar h1{margin:0;font-size:28px;font-weight:700;letter-spacing:-.02em;color:var(--ink)}
.topbar .monthnav{background:var(--surface);border:1px solid var(--line);border-radius:12px}
.topbar .monthnav span{color:var(--ink)}
.topbar .monthnav button{color:var(--ink-2)}
main{padding-top:0;gap:22px}
#bs{display:flex;flex-direction:column;gap:22px}
#bs > .grid2, #bs > .panel{margin-top:0 !important}

/* superfícies */
.panel{border-radius:var(--r);border:1px solid var(--line);background:var(--surface);padding:22px}
.panel-h h2{font-size:17px}
.stats{gap:16px;background:transparent;border:0;border-radius:0;overflow:visible}
.stat{border:1px solid var(--line);border-radius:var(--r);padding:18px 20px}
.stat .l{letter-spacing:.02em;text-transform:none;font-size:13px;font-weight:500}
.stat .n{font-family:var(--sans);font-weight:700;font-size:24px;letter-spacing:-.02em}
.num,td.v,.mono{font-family:var(--mono)}
.btn{border-radius:12px}
.btn.pri{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
.fld input,.fld select,.fld textarea{border-radius:10px}
.pill{border-radius:999px;padding:3px 10px;font-weight:600}
.pill.info{background:var(--surface-2);color:var(--ink-2)}
.note{border-left:0;border-radius:14px;background:var(--gold-soft)}
.cc{border-radius:var(--r)}
.toast,.tip{background:var(--brand-black)}
.install{background:var(--brand-black)}
.auth{background:var(--brand-black);box-shadow:0 0 0 100vmax var(--brand-black)}
.auth-card{border-radius:20px}

/* indicadores */
.cockpit-top{display:grid;grid-template-columns:minmax(260px,330px) minmax(0,1fr);gap:22px}
.gauge-card{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;border-radius:22px}
.gauge{width:100%;max-width:260px;height:auto}
.gauge .g-n{font-family:var(--sans);font-size:44px;font-weight:700;fill:var(--ink)}
.gauge .g-l{font-family:var(--sans);font-size:13px;fill:var(--ink-3)}
.chips-row{display:flex;flex-wrap:wrap;gap:6px;justify-content:center}
.if-card{display:flex;flex-direction:column;gap:16px;padding:26px 28px;background:var(--brand-black);color:#FFFFFF;border-radius:22px;min-width:0}
.if-h{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;flex-wrap:wrap}
.if-h > div:first-child{display:flex;flex-direction:column;gap:4px}
.if-l{font-size:13px;color:var(--gold);font-weight:600}
.if-v{font-size:28px;font-weight:700;letter-spacing:-.02em}
.if-v small{font-size:15px;font-weight:500;color:rgba(255,255,255,.65)}
.if-kpis{display:flex;gap:22px;flex-wrap:wrap;font-size:12px;color:rgba(255,255,255,.7)}
.if-kpis b{display:block;font-size:18px;color:#FFFFFF}
.if-bar{position:relative;height:14px;background:rgba(255,255,255,.12);border-radius:7px}
.if-bar > div{height:100%;background:var(--gold);border-radius:7px;min-width:6px}
.if-bar i{position:absolute;top:-4px;width:2px;height:22px;background:rgba(255,255,255,.35);margin-left:-1px}
.if-marks{position:relative;height:16px;font-size:12px;color:rgba(255,255,255,.7)}
.if-marks span{position:absolute;transform:translateX(-50%);white-space:nowrap}
.if-marks span:first-child{transform:none}
.if-marks span:last-child{transform:translateX(-100%)}
.if-foot{font-size:12px;color:rgba(255,255,255,.55)}
.tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.tile{display:flex;flex-direction:column;gap:10px;padding:20px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);min-width:0}
.tile .top{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}
.tile .nm{font-size:13px;color:var(--ink-3)}
.tile .val{font-size:28px;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.tile .bar{height:6px;background:var(--surface-2);border-radius:3px;overflow:hidden}
.tile .bar div{height:100%;border-radius:3px;background:var(--good)}
.tile.warn .bar div{background:var(--gold)} .tile.crit .bar div{background:var(--crit)} .tile.info .bar div{background:var(--ink-3)}
.tile .ref{font-size:12px;color:var(--ink-3)}
.tile .fx{font-size:11px;color:var(--gold-ink);font-family:var(--mono)}

/* balanço */
.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.kpi{display:flex;flex-direction:column;gap:4px;padding:20px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);min-width:0}
.kpi .l{font-size:13px;color:var(--ink-3)}
.kpi .n{font-size:24px;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.kpi .n.acc{color:var(--accent)} .kpi .n.neg{color:var(--crit)}
.kpi .s{font-size:12px;color:var(--ink-3)}
.treemap{display:flex;gap:10px;height:340px}
.tm-a{display:flex}
.tm-b{flex-grow:1;display:flex;flex-direction:column;gap:10px;min-width:0}
.blk{flex-basis:0;min-height:52px;border-radius:14px;padding:14px 16px;display:flex;flex-direction:column;justify-content:space-between;gap:6px;min-width:0;overflow:hidden}
.tm-a .blk{flex-grow:1}
.blk-g{font-size:12px;opacity:.85}
.blk b{display:block;font-size:18px;letter-spacing:-.01em}
.blk small{font-size:12px;opacity:.8}
.tm-b .blk{flex-direction:row;align-items:center}
.tm-b .blk > span:last-child{text-align:right}
.evo{display:flex;align-items:flex-end;gap:12px;height:200px;margin-bottom:14px;overflow-x:auto}
.evo-c{flex:1 0 64px;display:flex;flex-direction:column;align-items:center;gap:8px}
.evo-b{width:44px;background:var(--accent-soft);border-radius:10px 10px 4px 4px}
.evo-b.on{background:var(--accent)}

/* celular e tablet: menu vira barra no topo */
@media (max-width:900px){
  .shell{grid-template-columns:1fr}
  .side{position:sticky;top:0;z-index:6;height:auto;overflow:visible;gap:10px;padding:calc(12px + env(safe-area-inset-top,0px)) 16px 0}
  .side-brand{display:none}
  .avatar{width:34px;height:34px;font-size:13px}
  .side nav.tabs{flex-direction:row;overflow-x:auto;scrollbar-width:none;margin:0;padding:0 0 10px}
  .side nav.tabs button{width:auto;padding:8px 12px}
  .side nav.tabs button::before{display:none}
  .side-foot{position:absolute;top:calc(12px + env(safe-area-inset-top,0px));right:16px;margin:0;padding:0;border:0;flex-wrap:nowrap}
  .side-foot .chip{display:none}
  .content{padding:18px 16px 40px}
  .topbar h1{font-size:22px}
  .cockpit-top{grid-template-columns:1fr}
  .tiles,.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .treemap{flex-direction:column;height:auto}
  .tm-a{width:100% !important;height:150px}
  .tm-b .blk{min-height:60px}
}
@media (max-width:520px){
  .tiles,.kpis{grid-template-columns:1fr}
  .side-foot #previewBtn{display:none}
}
.auth{padding-inline:16px}
.shell > *{min-width:0}
@media (min-width:901px){ .shell{background:linear-gradient(90deg,var(--side) 264px,var(--bg) 264px)} }
.shell{overflow-x:clip}
#rs,#ccList{display:flex;flex-direction:column;gap:22px}
@media (max-width:520px){ .stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px} .stat{padding:14px} .stat .n{font-size:clamp(16px,4.6vw,22px)} .kpi .n,.tile .val{font-size:22px} }

/* =====================================================================
   PÁGINA INICIAL (antes do login) · v3.3 enxuta, com gatilhos
   ===================================================================== */
.lnd{--lw:1120px;background:var(--bg);color:var(--ink)}
.lnd a{color:inherit}
.lnd-top{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:24px;padding:14px max(16px,calc((100% - var(--lw))/2));padding-top:calc(14px + env(safe-area-inset-top,0px));background:var(--side);color:#fff;border-bottom:1px solid rgba(255,255,255,.08)}
.lnd-logo{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:600;font-size:17px;color:#fff !important}
.lnd-logo img{width:34px;height:34px;border-radius:9px}
.lnd-logo b{color:var(--gold);font-weight:600}
.lnd-top-cta{margin-left:auto;display:flex;gap:8px}
.lnd-btn{font:inherit;font-weight:600;font-size:14px;border-radius:12px;padding:10px 18px;cursor:pointer;border:1px solid transparent;min-height:42px;transition:transform .15s,filter .15s,background .15s}
.lnd-btn.lg{font-size:15px;padding:14px 24px;min-height:52px}
.lnd-btn.gold{background:var(--gold);color:#0B1633;box-shadow:0 8px 24px rgba(204,164,59,.28)}
.lnd-btn.gold:hover{filter:brightness(1.07);transform:translateY(-1px)}
.lnd-btn.ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.28)}
.lnd-btn.ghost:hover{background:rgba(255,255,255,.08)}
.lnd-btn.light{background:rgba(255,255,255,.06);color:#fff;border-color:rgba(255,255,255,.28)}
.lnd-btn.light:hover{background:rgba(255,255,255,.12)}
.lnd-eyebrow{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);font-weight:600}

/* hero */
.lnd-hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:56px;align-items:center;padding:88px max(16px,calc((100% - var(--lw))/2)) 96px;background:radial-gradient(900px 500px at 85% 20%,rgba(85,73,255,.28),transparent 60%),var(--side);color:#fff;overflow:hidden}
.lnd-badge{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--gold);padding:7px 14px;border:1px solid rgba(204,164,59,.4);border-radius:999px;background:rgba(204,164,59,.08)}
.lnd-badge i{width:8px;height:8px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 0 rgba(204,164,59,.6);animation:lndPulse 2s infinite}
@keyframes lndPulse{0%{box-shadow:0 0 0 0 rgba(204,164,59,.6)}70%{box-shadow:0 0 0 10px rgba(204,164,59,0)}100%{box-shadow:0 0 0 0 rgba(204,164,59,0)}}
.lnd-hero h1{margin:22px 0 18px;font-size:clamp(36px,5.2vw,64px);line-height:1.04;font-weight:700;letter-spacing:-.035em;text-wrap:balance}
.lnd-hero h1 em{font-style:normal;color:var(--gold)}
.lnd-hero p{margin:0 0 32px;font-size:18px;line-height:1.6;color:rgba(255,255,255,.76);max-width:30em}
.lnd-cta{display:flex;flex-wrap:wrap;gap:12px}
.lnd-trust{list-style:none;margin:22px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px 20px;font-size:13px;color:rgba(255,255,255,.66)}
.lnd-trust li::before{content:"✓";color:var(--gold);font-weight:700;margin-right:7px}
.lnd-hero-v{display:flex;justify-content:center}
.mk-lock{position:relative;width:100%;max-width:540px}
.mk-stack{position:relative;padding:0 150px 70px 0;transform:perspective(1400px) rotateY(-7deg) rotateX(3deg)}
.mk-cap2{display:flex;flex-direction:column;align-items:center;gap:2px;margin-top:18px;text-align:center}
.mk-cap2 b{font-size:15px;color:#fff;letter-spacing:-.01em}
.mk-cap2 small{font-size:12px;color:rgba(255,255,255,.55)}
.mk-title{font-size:13px;font-weight:700;color:#0B1633}
.mk-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:#DDE2EC;border:1px solid #DDE2EC;border-radius:10px;overflow:hidden}
.mk-stats > div{background:#fff;padding:8px 9px;display:flex;flex-direction:column;gap:3px;min-width:0}
.mk-stats small{font-size:8px;color:#6A7591;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mk-stats b{font-size:13px;font-family:var(--mono);white-space:nowrap}
.mk-stats .at b{color:#C62828}
.mk-table{background:#fff;border:1px solid #DDE2EC;border-radius:10px;display:flex;flex-direction:column}
.mk-table > div{display:flex;align-items:center;gap:8px;padding:8px 10px;border-top:1px solid #EEF1F6;font-size:11px}
.mk-table > div:first-child{border-top:0}
.mk-table b{flex:1;font-weight:600;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.mk-table .d{width:6px;height:6px;border-radius:50%;background:#B8C0D3} .mk-table .d.on{background:#5549FF}
.mk-table .u{font-family:var(--mono);font-size:9px;border:1px solid #DDE2EC;border-radius:4px;padding:0 4px}
.mk-table .v{font-family:var(--mono);font-size:10px}
.mk-phone{position:absolute;right:0;bottom:0;width:150px;background:#fff;border:6px solid #16254D;border-radius:22px;padding:12px 10px;display:flex;flex-direction:column;gap:5px;color:#0B1633;box-shadow:0 20px 40px rgba(0,0,0,.4)}
.mk-ph-top{display:flex;justify-content:space-between;align-items:center;font-size:10px;font-weight:700}
.mk-ph-top i{width:16px;height:16px;border-radius:50%;background:#CCA43B}
.mk-phone > small{font-size:8px;color:#6A7591}
.mk-phone > b{font-size:14px;font-family:var(--mono);color:#5549FF}
.mk-ph-stats{display:grid;grid-template-columns:1fr 1fr;gap:5px}
.mk-ph-stats > div{border:1px solid #DDE2EC;border-radius:7px;padding:5px;display:flex;flex-direction:column;gap:4px}
.mk-ph-stats small{font-size:7px;color:#6A7591}
.mk-ph-stats i{height:5px;border-radius:3px;background:#5549FF;width:80%} .mk-ph-stats div + div i{background:#B38A22;width:60%}
.mk-ph-bars{display:flex;align-items:flex-end;gap:4px;height:46px;padding:4px 2px;border-bottom:1px solid #DDE2EC}
.mk-ph-bars i{flex:1;background:#5549FF;border-radius:3px 3px 0 0} .mk-ph-bars i.g{background:#B38A22}
.mk-ph-cats{display:flex;flex-direction:column;gap:4px}
.mk-ph-cats span{height:5px;background:#EEF1F6;border-radius:3px} .mk-ph-cats i{display:block;height:100%;background:#B38A22;border-radius:3px}
.mk-veil{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center;background:radial-gradient(closest-side,rgba(11,22,51,.82),rgba(11,22,51,.25))}
.mk-veil b{font-size:20px;letter-spacing:-.01em}
.mk-veil small{font-size:13px;color:rgba(255,255,255,.7)}
.lk{width:54px;height:54px;border-radius:16px;background:var(--gold);display:flex;align-items:center;justify-content:center;margin-bottom:8px;box-shadow:0 10px 30px rgba(204,164,59,.35)}
.lk svg,.lk-ic svg{width:24px;height:24px;fill:none;stroke:#0B1633;stroke-width:2;stroke-linecap:round}
.mk-win{width:100%;display:flex;background:#F1F3F8;border-radius:18px;overflow:hidden;box-shadow:0 30px 60px rgba(0,0,0,.35);border:1px solid rgba(255,255,255,.12)}
.mk-side{width:58px;background:#16254D;display:flex;flex-direction:column;align-items:center;gap:12px;padding:16px 0}
.mk-av{width:30px;height:30px;border-radius:50%;background:var(--gold);color:#0B1633;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;margin-bottom:6px}
.mk-side i{width:26px;height:8px;border-radius:4px;background:rgba(255,255,255,.2)}
.mk-side i.on{background:var(--gold)}
.mk-main{flex:1;padding:14px;display:flex;flex-direction:column;gap:10px;color:#0B1633;min-width:0}
.mk-row{display:grid;grid-template-columns:120px minmax(0,1fr);gap:10px}
.mk-card{background:#fff;border:1px solid #DDE2EC;border-radius:12px;padding:10px;display:flex;flex-direction:column;gap:4px;min-width:0}
.mk-card small{font-size:10px;color:#6A7591}
.mk-card b{font-size:15px}
.mk-gauge{align-items:center}
.mk-gauge svg{width:100%}
.mk-gauge text{font:700 20px Sora,sans-serif;fill:#0B1633}
.mk-if{background:#0B1633;color:#fff;border-color:#0B1633;justify-content:center}
.mk-if small{color:var(--gold)}
.mk-bar{height:7px;background:rgba(255,255,255,.14);border-radius:4px}
.mk-bar div{height:100%;background:var(--gold);border-radius:4px}
.mk-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.p{display:inline-block;align-self:flex-start;font-style:normal;font-size:10px;font-weight:600;padding:2px 8px;border-radius:999px}
.p.good{background:var(--good-bg);color:var(--good)} .p.warn{background:var(--warn-bg);color:var(--warn)} .p.crit{background:var(--crit-bg);color:var(--crit)}

/* seções */
.lnd-sec{padding:96px max(16px,calc((100% - var(--lw))/2));display:flex;flex-direction:column;gap:36px}
.lnd-sec.alt{background:var(--surface)}
.lnd-h{max-width:620px;display:flex;flex-direction:column;gap:10px}
.lnd-h h2{margin:0;font-size:clamp(28px,3.4vw,42px);line-height:1.1;font-weight:700;letter-spacing:-.03em;text-wrap:balance}
.lnd-h p{margin:0;font-size:17px;color:var(--ink-3)}
.lnd-dash{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.dash{position:relative;border-radius:20px;background:var(--surface);border:1px solid var(--line);overflow:hidden}
.dash-h{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:16px 20px;border-bottom:1px solid var(--line);position:relative;z-index:1;background:var(--surface)}
.dash-h b{font-size:16px}
.dash-b{padding:18px 20px 22px;display:flex;flex-direction:column;gap:12px;filter:blur(4px);opacity:.75;user-select:none;pointer-events:none;background:var(--bg)}
.dash-lk{position:absolute;left:50%;top:calc(50% + 26px);transform:translate(-50%,-50%);width:52px;height:52px;border-radius:16px;background:var(--gold);display:flex;align-items:center;justify-content:center;box-shadow:0 10px 30px rgba(204,164,59,.35)}
.dash-lk svg{width:24px;height:24px;fill:none;stroke:#0B1633;stroke-width:2;stroke-linecap:round}
.db-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.db-kpis > div,.db-tiles > div{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:8px 10px;display:flex;flex-direction:column;gap:3px;min-width:0}
.db-kpis small,.db-tiles small{font-size:10px;color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.db-kpis b,.db-tiles b{font-size:13px;font-family:var(--mono)}
.db-kpis b.neg{color:var(--crit)} .db-kpis b.acc{color:var(--accent)}
.db-tree{display:flex;gap:6px;height:96px}
.db-tree > div,.db-tree-c > div{border-radius:9px;padding:7px 9px;font-size:10px;font-weight:600;flex-basis:0;min-width:0;min-height:0;overflow:hidden}
.db-tree-c{display:flex;flex-direction:column;gap:6px;flex-basis:0;padding:0 !important}
.db-tree .t1{background:#0B1633;color:#fff} .db-tree .t2{background:#5549FF;color:#fff} .db-tree .t3{background:#CCA43B;color:#0B1633} .db-tree .t4{background:#3F4A66;color:#fff}
.db-evo{display:flex;align-items:flex-end;gap:8px;height:56px}
.db-evo i{flex:1;background:linear-gradient(#5549FF,#7C73FF);border-radius:5px 5px 0 0}
.db-top{display:grid;grid-template-columns:110px minmax(0,1fr);gap:10px;align-items:center}
.db-gauge{width:100%;background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:8px}
.db-if{background:#0B1633;color:#fff;border-radius:10px;padding:10px 12px;display:flex;flex-direction:column;gap:5px}
.db-if small{font-size:10px;color:var(--gold)} .db-if b{font-size:15px}
.db-if div{height:6px;background:rgba(255,255,255,.15);border-radius:3px} .db-if i{display:block;height:100%;background:var(--gold);border-radius:3px}
.db-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.db-tiles span{height:5px;background:var(--surface-2);border-radius:3px;margin-top:3px} .db-tiles span i{display:block;height:100%;background:var(--accent);border-radius:3px} .db-tiles span i.w{background:var(--gold)}
.lnd-tease{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.lnd-tc{position:relative;display:flex;flex-direction:column;gap:10px;padding:26px 22px 22px;border-radius:20px;background:var(--surface);border:1px solid var(--line);overflow:hidden}
.lnd-tc::after{content:"";position:absolute;right:-40px;bottom:-40px;width:120px;height:120px;border-radius:50%;background:radial-gradient(circle,rgba(85,73,255,.14),transparent 70%)}
.lnd-tc .n{font-family:var(--mono);font-size:13px;color:var(--accent)}
.lnd-tc b{font-size:18px;line-height:1.25;letter-spacing:-.01em}
.lnd-tc p{margin:0;font-size:14px;line-height:1.55;color:var(--ink-2);flex:1}
.lk-tag{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:600;color:#8A6A12;background:rgba(204,164,59,.14);padding:4px 10px;border-radius:999px}
.lk-tag::before{content:"";width:9px;height:9px;border:2px solid currentColor;border-radius:2px;box-sizing:border-box}
.lnd-more{margin:-8px 0 0;font-size:15px;font-weight:600;color:var(--ink-3)}

/* diagnóstico-isca */
.lnd-calc{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:28px;align-items:stretch}
.lnd-calc-f{display:flex;flex-direction:column;gap:14px;background:var(--bg);padding:24px;border-radius:20px;border:1px solid var(--line)}
.lnd-calc-f label{display:flex;flex-direction:column;gap:6px;font-size:14px;font-weight:600}
.lnd-calc-f input{font:inherit;font-family:var(--mono);font-size:16px;padding:12px 14px;border-radius:12px;border:1px solid var(--line);background:var(--surface);color:var(--ink)}
.lnd-calc-f input:focus{outline:2px solid var(--accent);outline-offset:0;border-color:var(--accent)}
.lnd-score{display:flex;flex-direction:column;gap:18px;padding:28px;border-radius:20px;background:var(--side);color:#fff;min-height:100%}
.sc-wait{margin:auto 0;display:flex;flex-direction:column;gap:10px;align-items:flex-start}
.sc-wait b{font-size:22px;letter-spacing:-.01em}
.sc-wait p{margin:0;color:rgba(255,255,255,.7)}
.sc-prog{width:100%;max-width:320px;height:8px;border-radius:4px;background:rgba(255,255,255,.12);overflow:hidden;margin-bottom:6px}
.sc-prog i{display:block;height:100%;background:var(--gold);border-radius:4px;transition:width .35s ease}
.sc-top{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.sc-ring{position:relative;width:132px;height:132px;flex:none;display:flex;flex-direction:column;align-items:center;justify-content:center}
.sc-ring svg{position:absolute;inset:0;transform:rotate(-90deg)}
.sc-ring circle{fill:none;stroke:rgba(255,255,255,.12);stroke-width:10}
.sc-ring circle.v{stroke:var(--accent);stroke-linecap:round;transition:stroke-dashoffset 1s cubic-bezier(.2,.8,.2,1)}
.sc-ring.good circle.v{stroke:#7C73FF} .sc-ring.warn circle.v{stroke:var(--gold)} .sc-ring.crit circle.v{stroke:#FF6B6B}
.sc-ring b{position:relative;font-size:40px;line-height:1;letter-spacing:-.03em}
.sc-ring small{position:relative;font-size:12px;color:rgba(255,255,255,.6)}
.sc-msg{flex:1;min-width:200px;display:flex;flex-direction:column;gap:8px}
.sc-msg h3{margin:0;font-size:22px;line-height:1.2;letter-spacing:-.01em}
.sc-msg p{margin:0;color:rgba(255,255,255,.72);font-size:15px}
.sc-locked{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.sc-locked > div{position:relative;display:flex;flex-direction:column;gap:4px;padding:12px 14px;border-radius:12px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1)}
.sc-locked small{font-size:12px;color:rgba(255,255,255,.7)}
.sc-locked b{font-size:20px;filter:blur(5px);user-select:none}
.lk-ic{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:28px;height:28px;border-radius:8px;background:var(--gold);display:flex;align-items:center;justify-content:center}
.lk-ic svg{width:15px;height:15px}
.sc-cta{display:flex;flex-direction:column;align-items:flex-start;gap:8px}
.sc-cta small{font-size:13px;color:rgba(255,255,255,.6)}

/* por que agora */
.lnd-why{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;max-width:820px}
.lnd-why > div{padding:24px;border-radius:18px;border:1px solid var(--line);background:var(--surface);border-top:3px solid var(--gold)}
.lnd-why b{font-size:17px}
.lnd-why p{margin:8px 0 0;font-size:14px;line-height:1.55;color:var(--ink-2)}

.lnd-final{padding:88px max(16px,calc((100% - var(--lw))/2)) calc(32px + env(safe-area-inset-bottom,0px));background:radial-gradient(700px 400px at 50% 0%,rgba(85,73,255,.25),transparent 70%),var(--side);color:#fff;display:flex;flex-direction:column;align-items:center;gap:28px;text-align:center}
.lnd-final h2{margin:0;max-width:16em;font-size:clamp(28px,3.6vw,44px);line-height:1.1;font-weight:700;letter-spacing:-.03em;text-wrap:balance}
.lnd-final .lnd-cta{justify-content:center}
.lnd-final footer{margin-top:48px;font-size:13px;color:rgba(255,255,255,.5)}
.auth-home{align-self:flex-start;border:0;background:none;padding:0;font:inherit;font-size:13px;font-weight:600;color:var(--accent);cursor:pointer}

/* animação de entrada */
.lnd.anim .rv{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease}
.lnd.anim .rv.in{opacity:1;transform:none}
html{scroll-behavior:smooth}
.lnd section[id]{scroll-margin-top:72px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto} .lnd.anim .rv{opacity:1;transform:none;transition:none} .lnd-badge i{animation:none} .sc-ring circle.v{transition:none}}
@media (max-width:980px){
  .lnd-hero{grid-template-columns:1fr;gap:40px;padding-top:56px;padding-bottom:64px}
  .lnd-tease{grid-template-columns:repeat(2,minmax(0,1fr))}
  .lnd-calc,.lnd-why{grid-template-columns:1fr}
  .lnd-sec{padding-top:64px;padding-bottom:64px}
  .mk-stack{transform:none}
  .lnd-dash{grid-template-columns:1fr}
}
@media (max-width:520px){
  .lnd-top-cta .ghost{display:none}
  .lnd-logo span{font-size:15px}
  .lnd-tease{grid-template-columns:1fr}
  .mk-stack{padding:0 104px 60px 0} .mk-phone{width:112px} .mk-phone > b{font-size:12px} .mk-stats b{font-size:10.5px} .mk-stats > div{padding:7px 6px} .mk-table > div{gap:5px;padding:7px 8px} .mk-table .u{display:none} .mk-stats small{font-size:7px}
  .db-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sc-locked > div{padding:10px 12px} .sc-locked small{font-size:11px;padding-right:30px} .lk-ic{width:24px;height:24px;right:8px}
  .lnd-cta .lnd-btn,.sc-cta .lnd-btn{width:100%}
  .lnd-score{padding:22px}
  .sc-ring{width:112px;height:112px} .sc-ring b{font-size:34px}
}

/* ===== CATEGORIAS E SUBCATEGORIAS (v3.2) ===== */
.hbar.sub{font-size:12px;padding:1px 0 1px 14px;color:var(--ink-2)}
.hbar.sub>span:first-child::before{content:"› ";color:var(--ink-3)}
.hbar.sub .track{height:6px}
.hbar.sub .fill{opacity:.55}
.cm>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px}
.cm>summary::-webkit-details-marker{display:none}
.cm>summary>span{display:flex;flex-direction:column;gap:2px}
.cm>summary::after{content:"＋";font-weight:700;color:var(--accent);flex:none}
.cm[open]>summary::after{content:"－"}
.cm-top{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin:14px 0 10px}
.cm-top p{margin:0;flex:1 1 260px}
#catMgr{display:flex;flex-direction:column;border-top:1px solid var(--line)}
.cm-row{border-bottom:1px solid var(--line)}
.cm-row>summary{list-style:none;cursor:pointer;display:flex;align-items:center;flex-wrap:wrap;gap:4px 10px;padding:11px 2px}
.cm-row>summary::-webkit-details-marker{display:none}
.cm-row>summary::before{content:"›";display:inline-block;width:10px;color:var(--ink-3);transition:transform .15s}
.cm-row[open]>summary::before{transform:rotate(90deg)}
.cm-n{font-weight:600}
.cm-pad{font-size:11px;color:var(--ink-3)}
.cm-c{margin-left:auto;font-size:12px;color:var(--ink-3)}
.cm-body{padding:2px 0 14px 20px;display:flex;flex-direction:column;gap:10px}
.cm-line{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.cm-line label{font-size:12px;color:var(--ink-3);width:100%}
.cm-body input{flex:1 1 180px;min-width:0;max-width:340px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);font:inherit;font-size:14px}
.cm-subs{display:flex;flex-direction:column;gap:6px}
.cm-sub,.cm-add{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.cm-add input{border-style:dashed}
@media (max-width:520px){ .cm-body{padding-left:4px} .cm-c{margin-left:0;width:100%} }

/* ===== NECESSITAM DE ATENÇÃO (v3.4) ===== */
button.stat{font:inherit;color:inherit;text-align:left;border:0;cursor:pointer;position:relative}
.stat-at .go{font-size:12px;font-weight:600;color:var(--accent);margin-top:2px}
.stat-at.on .n{color:var(--crit)}
.stat-at:hover{background:var(--surface-2)}
.stat-at:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
.at-list{display:flex;flex-direction:column;gap:10px}
.at-row{border:1px solid var(--line);border-left:4px solid var(--gold);border-radius:12px;padding:12px 14px;cursor:pointer;background:var(--surface)}
.at-row.crit{border-left-color:var(--crit)}
.at-row:hover{box-shadow:0 0 0 1px var(--accent)}
.at-row:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.at-h{display:flex;align-items:center;flex-wrap:wrap;gap:4px 10px}
.at-h b{font-size:15px}
.at-go{margin-left:auto;font-size:12px;font-weight:600;color:var(--accent)}
.at-row ul{margin:8px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px;font-size:13px;line-height:1.6;color:var(--ink-2)}
.at-row li{padding-left:16px;position:relative}
.at-row li::before{content:"";position:absolute;left:2px;top:.6em;width:6px;height:6px;border-radius:50%;background:var(--gold)}
.at-row li.a-ind::before,.at-row li.a-orc::before{background:var(--crit)}
.at-row li b{color:var(--ink)}
.at-row .pill{margin:0 6px 0 2px;vertical-align:1px}

/* ===== VITRINE, SOLICITAÇÕES E CLIENTE SEM PLANEJADOR (v4) ===== */
.sol-panel{border-left:4px solid var(--gold)}
.sol-list{display:flex;flex-direction:column;gap:10px}
.sol-row{border:1px solid var(--line);border-radius:12px;padding:12px 14px;display:flex;flex-direction:column;gap:8px;background:var(--surface)}
.sol-h{display:flex;align-items:center;flex-wrap:wrap;gap:4px 10px}
.sol-h b{font-size:15px}
.sol-dt{margin-left:auto}
.sol-msg{margin:0;font-size:14px;line-height:1.55;color:var(--ink-2);background:var(--bg);border-radius:10px;padding:10px 12px}
.sol-ct{display:flex;flex-wrap:wrap;gap:4px 16px;color:var(--ink-2)}
.sol-hist{margin-top:4px}
.sol-hist summary{cursor:pointer;color:var(--ink-3)}
.sol-hist > div{padding:4px 0 0 2px;color:var(--ink-2)}
.btn.confirm{background:var(--gold);border-color:var(--gold);color:#0B1633}

.vp{display:flex;flex-direction:column;gap:16px}
.vp-on{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border:1px solid var(--line);border-radius:12px;cursor:pointer;background:var(--bg)}
.vp-on input{width:20px;height:20px;margin-top:2px;accent-color:var(--accent)}
.vp-on span{display:flex;flex-direction:column;gap:2px}
.vp-on small{color:var(--ink-3);font-size:12px}
.vp-grid{display:grid;grid-template-columns:150px minmax(0,1fr);gap:18px;align-items:start}
.vp-foto{display:flex;flex-direction:column;align-items:center;gap:8px}
.vp textarea{width:100%;font:inherit;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);resize:vertical}
.vp-chk{display:flex;flex-direction:column;gap:8px}
.vp-chk .lbl{font-size:12px;font-weight:600;color:var(--ink-3);text-transform:uppercase;letter-spacing:.04em}
.vp-chk > div{display:flex;flex-wrap:wrap;gap:6px}
.vp-chk label{cursor:pointer}
.vp-chk input{position:absolute;opacity:0;pointer-events:none}
.vp-chk label span{display:inline-block;padding:6px 12px;border:1px solid var(--line);border-radius:999px;font-size:13px;color:var(--ink-2);background:var(--surface)}
.vp-chk input:checked + span{background:var(--accent);border-color:var(--accent);color:#fff}
.vp-chk input:focus-visible + span{outline:2px solid var(--accent);outline-offset:2px}

.vt-foto{width:64px;height:64px;border-radius:50%;overflow:hidden;flex:none;background:var(--side);display:flex;align-items:center;justify-content:center;border:2px solid var(--gold)}
.vt-foto.lg{width:120px;height:120px}
.vt-foto img{width:100%;height:100%;object-fit:cover;display:block}
.vt-ini{color:var(--gold);font-weight:700;font-size:20px}
.vt-foto.lg .vt-ini{font-size:34px}
.vt-st{display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px;padding:14px 16px;border-radius:14px;border:1px solid var(--line);background:var(--surface);border-left:4px solid var(--accent)}
.vt-st b{width:100%;font-size:15px}
.vt-st span{flex:1;min-width:220px;font-size:14px;color:var(--ink-2)}
.vt-st.warn{border-left-color:var(--gold)} .vt-st.crit{border-left-color:var(--crit)} .vt-st.good{border-left-color:var(--good)}
.vt-filtros{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:16px}
.vt-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}
.vt-card{display:flex;flex-direction:column;gap:12px;padding:18px;border-radius:16px;border:1px solid var(--line);background:var(--surface)}
.vt-card.on{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold)}
.vt-top{display:flex;align-items:center;gap:12px;min-width:0}
.vt-top > div:last-child{display:flex;flex-direction:column;gap:4px;min-width:0}
.vt-top b{font-size:16px;line-height:1.25}
.vt-top .uf{align-self:flex-start}
.vt-bio{margin:0;font-size:14px;line-height:1.55;color:var(--ink-2);flex:1}
.vt-card > .btn{align-self:flex-start}
.vt-form{display:flex;flex-direction:column;gap:8px;padding-top:4px;border-top:1px dashed var(--line)}
.vt-form label{font-size:13px;font-weight:600}
.vt-form textarea{width:100%;font:inherit;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);resize:vertical}
.vt-pref{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center;font-size:13px}
.vt-pref label{font-weight:400}
.solo-cta{display:flex;align-items:center;flex-wrap:wrap;gap:12px 20px;padding:18px 20px;border-radius:16px;background:var(--side);color:#fff}
.solo-cta > div{flex:1;min-width:220px;display:flex;flex-direction:column;gap:4px}
.solo-cta b{font-size:16px}
.solo-cta span{font-size:14px;color:rgba(255,255,255,.75)}
.solo-cta .btn.pri{background:var(--gold);border-color:var(--gold);color:#0B1633}
@media (max-width:620px){ .vp-grid{grid-template-columns:1fr} .sol-dt{margin-left:0} }
.vt-card > .pill{align-self:flex-start}

/* ===== BLOG (v4.1) ===== */
.blg-nav{color:rgba(255,255,255,.8);text-decoration:none;font-size:14px;font-weight:600}
.blg-nav:hover{color:#fff}
.lnd-top a.lnd-btn{text-decoration:none;display:inline-flex;align-items:center}
.lnd-final footer a{color:var(--gold)}
.blg{min-height:100vh;display:flex;flex-direction:column}
.blg-hero{padding:64px max(16px,calc((100% - var(--lw))/2)) 40px;background:radial-gradient(800px 400px at 85% 0%,rgba(85,73,255,.25),transparent 60%),var(--side);color:#fff;display:flex;flex-direction:column;gap:12px}
.blg-hero h1{margin:0;font-size:clamp(30px,4.4vw,52px);line-height:1.06;letter-spacing:-.03em;max-width:14em}
.blg-hero p{margin:0;font-size:17px;color:rgba(255,255,255,.75);max-width:36em;line-height:1.55}
.blg-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.blg-chips button{font:inherit;font-size:13px;font-weight:600;padding:8px 14px;border-radius:999px;border:1px solid rgba(255,255,255,.25);background:transparent;color:#fff;cursor:pointer}
.blg-chips button[aria-pressed="true"]{background:var(--gold);border-color:var(--gold);color:#0B1633}
.blg-wrap{padding:40px max(16px,calc((100% - var(--lw))/2)) 56px;display:flex;flex-direction:column;gap:24px;flex:1}
.blg-vazio{padding:48px 20px;text-align:center;color:var(--ink-3);background:var(--surface);border:1px dashed var(--line);border-radius:18px}
.blg-cat{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}
.blg-meta{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:13px;color:var(--ink-3)}
.blg-meta span + span::before{content:"·";margin-right:14px}
.blg-capa{aspect-ratio:1200/630;border-radius:14px;overflow:hidden;background:var(--side)}
.blg-capa img{width:100%;height:100%;object-fit:cover;display:block}
.blg-capa.vazia{display:flex;align-items:flex-end;padding:16px;background:radial-gradient(400px 200px at 80% 20%,rgba(85,73,255,.45),transparent 70%),linear-gradient(135deg,#0B1633,#16254D)}
.blg-capa.vazia span{color:var(--gold);font-weight:700;font-size:14px}
.blg-dest{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:28px;align-items:center;text-decoration:none;color:inherit;background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:18px}
.blg-dest > div:last-child{display:flex;flex-direction:column;gap:10px;padding-right:10px}
.blg-dest h2{margin:0;font-size:clamp(24px,2.6vw,34px);line-height:1.15;letter-spacing:-.02em}
.blg-dest p{margin:0;color:var(--ink-2);line-height:1.6}
.blg-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px}
.blg-card{display:flex;flex-direction:column;text-decoration:none;color:inherit;background:var(--surface);border:1px solid var(--line);border-radius:18px;overflow:hidden;transition:transform .15s,box-shadow .15s}
.blg-card .blg-capa{border-radius:0}
.blg-card:hover,.blg-dest:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(11,22,51,.1)}
.blg-card-t{padding:16px 18px 18px;display:flex;flex-direction:column;gap:8px;flex:1}
.blg-card h3{margin:0;font-size:18px;line-height:1.3;letter-spacing:-.01em}
.blg-card p{margin:0;font-size:14px;line-height:1.55;color:var(--ink-2);flex:1}
.blg-art{width:100%;max-width:760px;margin:0 auto;padding:36px 16px 24px;display:flex;flex-direction:column;gap:14px}
.blg-back{font-size:14px;font-weight:600;color:var(--accent);text-decoration:none}
.blg-art h1{margin:0;font-size:clamp(30px,4.6vw,46px);line-height:1.1;letter-spacing:-.03em}
.blg-lead{margin:0;font-size:19px;line-height:1.6;color:var(--ink-2)}
.blg-capa.art{margin:10px 0}
.blg-corpo{font-size:17.5px;line-height:1.75;color:var(--ink)}
.blg-corpo h1{font-size:30px;margin:0 0 12px}
.blg-corpo h2{font-size:26px;line-height:1.25;margin:36px 0 10px;letter-spacing:-.02em}
.blg-corpo h3{font-size:20px;margin:28px 0 8px}
.blg-corpo p{margin:0 0 18px}
.blg-corpo ul,.blg-corpo ol{margin:0 0 18px;padding-left:24px}
.blg-corpo li{margin:6px 0}
.blg-corpo blockquote{margin:24px 0;padding:6px 0 6px 20px;border-left:4px solid var(--gold);font-size:20px;color:var(--ink-2);font-style:italic}
.blg-corpo blockquote p{margin:0}
.blg-corpo a{color:var(--accent)}
.blg-corpo code{font-family:var(--mono);font-size:.9em;background:var(--surface-2);padding:1px 6px;border-radius:5px}
.blg-corpo hr{border:0;border-top:1px solid var(--line);margin:32px 0}
.blg-corpo figure{margin:24px 0}
.blg-corpo figure img{width:100%;border-radius:12px;display:block}
.blg-corpo figcaption{font-size:13px;color:var(--ink-3);margin-top:8px;text-align:center}
.blg-cta{margin:28px 0 8px;padding:28px;border-radius:20px;background:radial-gradient(500px 260px at 90% 0%,rgba(85,73,255,.3),transparent 70%),var(--side);color:#fff;display:flex;flex-direction:column;gap:10px}
.blg-cta h2{margin:0;font-size:26px;letter-spacing:-.02em}
.blg-cta p{margin:0;color:rgba(255,255,255,.78);line-height:1.6}
.blg-cta-b{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}
.blg-cta-b a{text-decoration:none;display:inline-flex;align-items:center;justify-content:center}
.blg-cta small{color:rgba(255,255,255,.55);font-size:12px}
.blg-share{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;padding:16px 0;border-top:1px solid var(--line);font-size:14px}
.blg-share span{color:var(--ink-3);font-weight:600}
.blg-share a,.blg-share button{color:var(--accent);font:inherit;font-weight:600;text-decoration:none;background:none;border:0;padding:0;cursor:pointer}
.blg-h2{margin:0;font-size:24px;letter-spacing:-.02em}
.blg-foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;padding:24px max(16px,calc((100% - var(--lw))/2)) calc(24px + env(safe-area-inset-bottom,0px));background:var(--side);color:rgba(255,255,255,.6);font-size:13px}
.blg-foot a{color:var(--gold);font-weight:600;text-decoration:none}
@media (max-width:820px){ .blg-dest{grid-template-columns:1fr;padding:12px} .blg-dest > div:last-child{padding:4px 6px 8px} .blg-nav{display:none} }
@media (max-width:520px){ .blg-corpo{font-size:16.5px} .blg-cta{padding:22px} .blg-cta-b a{width:100%} .lnd-top a.lnd-btn.ghost{display:none} }

/* editor do blog (app) */
.bg-ed{display:flex;flex-direction:column;gap:16px}
.bg-ed textarea{width:100%;font:inherit;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);resize:vertical}
#bgCorpo{font-family:var(--mono);font-size:14px;line-height:1.6;min-height:340px}
.bg-slug{display:flex;align-items:center;gap:6px}
.bg-slug input{flex:1;min-width:0}
.bg-capa-w{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px}
.bg-capa{width:260px;max-width:100%;aspect-ratio:1200/630;border-radius:12px;overflow:hidden;background:var(--bg);border:1px dashed var(--line);display:flex;align-items:center;justify-content:center;color:var(--ink-3);font-size:13px}
.bg-capa img{width:100%;height:100%;object-fit:cover;display:block}
.bg-capa-w .actions{flex:1;min-width:220px}
.bg-tabs{display:flex;align-items:center;gap:6px;border-bottom:1px solid var(--line);padding-bottom:8px}
.bg-tabs button{font:inherit;font-size:14px;font-weight:600;border:0;background:none;padding:6px 12px;border-radius:8px;color:var(--ink-3);cursor:pointer}
.bg-tabs button[aria-pressed="true"]{background:var(--side);color:#fff}
.bg-tabs span{margin-left:auto}
.bg-tool{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}
.bg-tool button,.bg-img{font:inherit;font-size:13px;padding:6px 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink-2);cursor:pointer}
.bg-tool button:hover,.bg-img:hover{border-color:var(--accent);color:var(--accent)}
.bg-prev{padding:8px 4px;max-width:760px}
.bg-acts{border-top:1px solid var(--line);padding-top:14px}

/* ===== v4.2: textos para planejadores e clientes, quadro do app no blog, topo no celular ===== */
.lnd-dual{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 30px;max-width:36em}
.lnd-dual > div{padding:14px 16px;border-radius:14px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12)}
.lnd-dual span{display:block;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--gold);margin-bottom:6px}
.lnd-hero .lnd-dual p{margin:0;font-size:15px;line-height:1.55;color:rgba(255,255,255,.82)}
.lnd-final-p{margin:-12px 0 0;font-size:17px;color:rgba(255,255,255,.75);max-width:32em}
.blg-app{display:flex;flex-wrap:wrap;align-items:center;gap:20px 32px;padding:30px 32px;border-radius:22px;color:#fff;background:radial-gradient(520px 260px at 95% 0%,rgba(204,164,59,.28),transparent 70%),radial-gradient(600px 300px at 0% 100%,rgba(85,73,255,.35),transparent 70%),var(--side);border:1px solid rgba(204,164,59,.35);box-shadow:0 18px 40px rgba(11,22,51,.18)}
.blg-app-t{flex:1 1 360px;display:flex;flex-direction:column;gap:10px}
.blg-app-tag{align-self:flex-start;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#0B1633;background:var(--gold);padding:5px 12px;border-radius:999px}
.blg-app h2{margin:0;font-size:clamp(22px,2.6vw,30px);line-height:1.2;letter-spacing:-.02em}
.blg-app p{margin:0;color:rgba(255,255,255,.8);line-height:1.6;font-size:15px}
.blg-app p b{color:#fff}
.blg-app-b{display:flex;flex-direction:column;gap:10px;flex:0 1 240px}
.blg-app-b a{text-decoration:none;display:inline-flex;align-items:center;justify-content:center}
.blg-app-b small{font-size:12px;color:rgba(255,255,255,.6);text-align:center}
@media (max-width:620px){ .lnd-dual{grid-template-columns:1fr} .blg-app{padding:24px 20px} .blg-app-b{flex:1 1 100%} }
/* celular em retrato: o botão Entrar volta a aparecer, com topo mais compacto */
@media (max-width:520px){
  .lnd-top{gap:10px}
  .lnd-top-cta{gap:6px}
  .lnd-top-cta .ghost,.lnd-top a.lnd-btn.ghost{display:inline-flex}
  .lnd-top-cta .lnd-btn{padding:8px 12px;min-height:38px;font-size:13px;align-items:center;white-space:nowrap}
  .lnd-logo{gap:8px} .lnd-logo img{width:30px;height:30px} .lnd-logo span{font-size:14px}
}
@media (max-width:380px){ .lnd-logo span{display:none} }

/* dicas de senha no cadastro (v4.3) */
.pw-hint{list-style:none;margin:6px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:3px 12px;font-size:12px;color:var(--ink-3)}
.pw-hint li::before{content:"○";display:inline-block;width:16px;color:var(--ink-3)}
.pw-hint li.ok{color:var(--good)}
.pw-hint li.ok::before{content:"✓";color:var(--good);font-weight:700}

/* contas bancárias (v4.4) */
.k-list{display:flex;flex-direction:column;gap:16px}
.k-card .cc-h > div:first-child{display:flex;flex-direction:column;gap:2px}
.k-card .actions{align-items:center}
.cc-vinc{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:13px}
.cc-vinc label{color:var(--ink-3);font-weight:600}
.cc-vinc select{border:1px solid var(--line);background:var(--surface-2);border-radius:10px;padding:6px 10px;min-height:34px;max-width:100%}
.fat-st{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;font-size:13px;padding:10px 12px;border-radius:12px;background:var(--warn-bg);color:var(--warn)}
.fat-st.ok{background:var(--good-bg);color:var(--good)}
.fat-st .btn{margin-left:auto}
#mvTipo button{padding:6px 12px;font-size:13px}

/* recorte de foto (v4.6) */
.crop-ov{position:fixed;inset:0;z-index:60;background:rgba(5,10,24,.72);display:flex;align-items:center;justify-content:center;padding:16px}
.crop-box{background:var(--surface);color:var(--ink);border-radius:20px;padding:22px;width:100%;max-width:340px;display:flex;flex-direction:column;align-items:center;gap:14px;box-shadow:0 30px 60px rgba(0,0,0,.4)}
.crop-box h3{margin:0;font-size:18px;align-self:flex-start}
.crop-box p{margin:0;text-align:center}
.crop-box .actions{align-self:stretch;justify-content:flex-end}
.crop-view{position:relative;overflow:hidden;border-radius:50%;background:var(--side);cursor:grab;touch-action:none;box-shadow:0 0 0 3px var(--gold);max-width:100%}
.crop-view:active{cursor:grabbing}
.crop-view img{position:absolute;max-width:none;user-select:none;-webkit-user-drag:none;pointer-events:none}
.crop-zoom{display:flex;align-items:center;gap:10px;width:100%;color:var(--ink-3);font-weight:700}
.crop-zoom input{flex:1;accent-color:var(--accent)}

/* ---------- v4.9 · novo formulário de lançamento ---------- */
.seg button[aria-pressed="true"].c{background:var(--accent);color:#fff}
.lf-g{display:grid;gap:12px 14px;align-items:end}
.lf-1{grid-template-columns:150px 150px minmax(180px,1fr) 140px minmax(230px,270px)}
.lf-2{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:12px}
.lf-recw{display:flex;gap:8px;align-items:center}
.lf-recw select{flex:1;min-width:0}
.lf-recw > span{display:flex;align-items:center;gap:6px;flex:0 0 auto}
.lf-recw input{width:64px!important}
.lf-recw small{font-size:12px;color:var(--ink-2)}
.lbl-g{display:flex;align-items:center;gap:6px}
.gear{border:1px solid var(--line);background:var(--surface);border-radius:7px;width:22px;height:20px;display:inline-grid;place-items:center;color:var(--accent);font-size:12px;line-height:1;padding:0;cursor:pointer}
.gear:hover,.gear:focus-visible{border-color:var(--accent);background:var(--accent-soft)}
.lf-auto{margin-top:12px;display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;padding:10px 12px 10px 14px;border-radius:10px;background:var(--accent-soft);border:1px solid color-mix(in srgb,var(--accent) 25%,transparent);font-size:13px}
.lf-auto-t{flex:1 1 280px}
.lf-auto .check{display:flex;align-items:center;gap:6px;color:var(--ink-2)}
.lf-auto-x{border:0;background:none;font-size:18px;line-height:1;color:var(--ink-2);cursor:pointer;padding:2px 4px}
.lf-3{display:flex;align-items:center;gap:10px 12px;margin-top:14px;flex-wrap:wrap}
.lf-3 .hint{margin:0;flex:1 1 260px;font-size:12.5px;color:var(--ink-2)}
.cm-x{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 14px;width:100%}
.cm-x .check{display:flex;align-items:center;gap:6px}
@media (max-width:1180px){ .lf-1{grid-template-columns:repeat(2,minmax(0,1fr))} .lf-1 .lf-desc,.lf-1 .lf-rec{grid-column:1/-1} }
@media (max-width:640px){ .lf-2{grid-template-columns:1fr} .lf-3 .btn.pri{flex:1 1 100%} .panel-h:has(#lfTipo){flex-wrap:wrap;gap:10px} #lfTipo{width:100%} #lfTipo button{flex:1;padding:8px 6px} }

/* ---------- v4.9 · empréstimos SAC / PRICE ---------- */
.ef-1{grid-template-columns:minmax(200px,1.6fr) minmax(140px,1fr) minmax(160px,1fr) minmax(200px,1.1fr)}
.ef-2{grid-template-columns:repeat(6,minmax(0,1fr));margin-top:12px}
.ef-cet{margin:8px 0 0;font-size:12.5px;color:var(--ink-2)}
.ef-sim{margin-top:14px;padding:14px 16px;border-radius:12px;background:var(--surface-2);border:1px solid var(--line)}
.ef-kpis{display:flex;flex-wrap:wrap;gap:10px 28px}
.ef-kpis span{display:flex;flex-direction:column;gap:2px;min-width:110px}
.ef-kpis small{font-size:11.5px;color:var(--ink-2)}
.ef-kpis b{font-size:16px;font-family:"DM Mono",ui-monospace,monospace}
.ef-aviso{margin:10px 0 0;font-size:12.5px;color:var(--warn);background:var(--warn-bg);border-radius:8px;padding:8px 10px}
.ef-lanc{border:0;padding:0;margin:16px 0 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.ef-lanc legend{font-size:13px;font-weight:700;margin-bottom:8px;padding:0}
.ef-lanc label{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border:1px solid var(--line);border-radius:12px;cursor:pointer;background:var(--surface)}
.ef-lanc label:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}
.ef-lanc input{margin-top:3px;accent-color:var(--accent)}
.ef-lanc span{display:flex;flex-direction:column;gap:3px;font-size:13.5px}
.ef-lanc small{font-size:12px;color:var(--ink-2)}
.ef-card{border:1px solid var(--line);border-radius:14px;padding:16px 18px;margin-bottom:12px;background:var(--surface)}
.ef-h{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;margin-bottom:12px}
.ef-h .actions{display:flex;gap:8px;flex-wrap:wrap}
.ef-prog{display:flex;align-items:center;gap:12px;margin-top:12px}
.ef-prog .meter{flex:1}
.ef-evol{margin-top:12px}
.ef-evol summary{cursor:pointer;font-size:13px;font-weight:600;color:var(--accent)}
.ef-evol table{margin-top:8px}
.ef-evol tr.ef-agora td{background:var(--accent-soft);font-weight:600}
@media (max-width:1100px){ .ef-1{grid-template-columns:repeat(2,minmax(0,1fr))} .ef-2{grid-template-columns:repeat(3,minmax(0,1fr))} }
@media (max-width:640px){ .ef-1,.ef-2,.ef-lanc{grid-template-columns:1fr} .ef-kpis{gap:10px 18px} .ef-kpis span{min-width:42%} }
