/* PULSE Financeiro v45 - Estilos extraídos do arquivo original v44 */

/* ═══════════════════════════════════════════════════════
   PULSE FINANCEIRO — VISUAL IGUAL AO PULSE v4.0
   Fontes: Syne + JetBrains Mono + Instrument Serif
   Paleta e contraste iguais ao arquivo PULSE completo
   ═══════════════════════════════════════════════════════ */
:root {
  --bg:       #03050a;
  --bg2:      #060912;
  --s1:       #080d18;
  --s2:       #0c1220;
  --s3:       #101828;
  --s4:       #161f30;
  --border:   rgba(255,255,255,0.055);
  --border2:  rgba(255,255,255,0.09);
  --accent:   #00e5a0;
  --accent2:  #5b7fff;
  --accent3:  #ff6b6b;
  --warn:     #ffba08;
  --danger:   #ff3355;
  --success:  #00e5a0;
  --text:     #dde3f0;
  --text2:    #8892b0;
  --muted:    #3a4466;
  --blue:     #5b7fff;
  --sidebar:  240px;
  --topbar:   52px;
}
*{margin:0;padding:0;box-sizing:border-box;scrollbar-width:thin;scrollbar-color:var(--muted) transparent;}
html,body{height:100%;overflow:hidden;}
body{
  font-family:'Syne',sans-serif;
  background:var(--bg);
  color:var(--text);
  display:flex;
  flex-direction:column;
  -webkit-font-smoothing:antialiased;
  text-rendering:geometricPrecision;
}
body::before{
  content:'';position:fixed;inset:0;pointer-events:none;z-index:-2;
  background:
    radial-gradient(ellipse 80% 60% at 50% 0%, rgba(10,22,40,.92) 0%, transparent 58%),
    linear-gradient(rgba(0,229,160,0.018) 1px, transparent 1px),
    linear-gradient(90deg, rgba(0,229,160,0.018) 1px, transparent 1px);
  background-size:auto,48px 48px,48px 48px;
}
body::after{
  content:'';position:fixed;top:-120px;left:50%;transform:translateX(-50%);z-index:-1;pointer-events:none;
  width:620px;height:320px;background:radial-gradient(ellipse, rgba(0,229,160,0.075) 0%, transparent 70%);
}
.topbar{
  height:var(--topbar);flex-shrink:0;
  background:rgba(6,9,18,0.98);border-bottom:1px solid var(--border);
  display:flex;align-items:center;padding:0 16px;gap:10px;position:relative;z-index:400;
}
.logo{display:flex;align-items:center;gap:10px;}
.logo-icon{
  width:30px;height:30px;background:linear-gradient(135deg,var(--accent),var(--accent2));
  border-radius:8px;display:flex;align-items:center;justify-content:center;
  font-size:12px;font-weight:900;color:#000;flex-shrink:0;
  box-shadow:0 0 16px rgba(0,229,160,0.2);letter-spacing:-.05em;
}
.brand{font-size:15px;font-weight:900;letter-spacing:-0.02em;color:var(--text);line-height:1.05;}
.brand span{color:var(--accent);}
.module{font-size:11px;color:var(--text2);font-family:'JetBrains Mono',monospace;font-weight:500;}
.chips{display:flex;gap:5px;flex-wrap:wrap;margin-left:4px;}
.chip{
  padding:3px 10px;border-radius:16px;font-size:9px;font-weight:700;font-family:'JetBrains Mono',monospace;
  display:flex;align-items:center;gap:4px;cursor:pointer;letter-spacing:0;
}
.chip-r{background:rgba(255,51,85,.1);color:var(--danger);border:1px solid rgba(255,51,85,.2);animation:pulseStrong 1s ease-in-out infinite;}
.chip-w{background:rgba(255,186,8,.1);color:var(--warn);border:1px solid rgba(255,186,8,.2);animation:pulseMedium 1.8s ease-in-out infinite;}
.chip-g{background:rgba(0,229,160,.1);color:var(--accent);border:1px solid rgba(0,229,160,.2);}
@keyframes pulseStrong{0%,100%{box-shadow:0 0 0 0 rgba(255,51,85,0.6);}50%{box-shadow:0 0 0 6px rgba(255,51,85,0);}}
@keyframes pulseMedium{0%,100%{box-shadow:0 0 0 0 rgba(255,186,8,0.4);}50%{box-shadow:0 0 0 5px rgba(255,186,8,0);}}
@keyframes pulseRed{50%{box-shadow:0 0 0 6px rgba(255,51,85,0)}}
.right{margin-left:auto;display:flex;align-items:center;gap:8px;}
.btn{
  padding:8px 12px;border-radius:8px;border:1px solid var(--border);
  background:transparent;color:var(--text2);cursor:pointer;
  transition:all .2s;font-family:'Syne',sans-serif;font-size:12px;font-weight:700;
}
.btn:hover{background:var(--s2);color:var(--text);border-color:var(--border2);transform:translateY(-1px);}
.btn-primary{background:linear-gradient(135deg,var(--accent),#00c888);color:#000;border:none;font-weight:800;box-shadow:0 4px 20px rgba(0,229,160,0.22);}
.btn-primary:hover{box-shadow:0 8px 30px rgba(0,229,160,0.32);color:#000;}
.body{display:flex;flex:1;overflow:hidden;}
.sidebar{
  width:var(--sidebar);flex-shrink:0;background:rgba(6,9,18,0.98);border-right:1px solid var(--border);
  display:flex;flex-direction:column;overflow:auto;padding:8px 0 12px;transition:width .3s;
}
.side-title{padding:14px 14px 6px;margin:0;font-size:8px;font-weight:700;letter-spacing:.14em;color:var(--muted);font-family:'JetBrains Mono',monospace;text-transform:uppercase;}
.nav{
  display:flex;align-items:center;gap:10px;padding:9px 12px;margin:1px 8px;border-radius:10px;
  font-size:12px;font-weight:700;color:var(--text2);cursor:pointer;transition:all .18s;border:1px solid transparent;
  white-space:nowrap;overflow:hidden;
}
.nav:hover{background:var(--s2);color:var(--text);border-color:var(--border);}
.nav.active{background:rgba(0,229,160,.08);color:var(--accent);border-color:rgba(0,229,160,.2);}
.nav-ico{width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:14px;flex-shrink:0;background:var(--s3);transition:background .2s;}
.nav.active .nav-ico{background:rgba(0,229,160,.12);}
.main{flex:1;display:flex;flex-direction:column;overflow:hidden;}
.toolbar{
  min-height:38px;flex-shrink:0;background:rgba(6,9,18,.9);border-bottom:1px solid var(--border);
  display:flex;align-items:center;padding:7px 12px;gap:6px;overflow-x:auto;flex-wrap:wrap;
}
select,input{
  background:var(--s2);border:1px solid var(--border2);color:var(--text);border-radius:8px;
  padding:8px 10px;font-family:'JetBrains Mono',monospace;font-size:11px;font-weight:600;outline:none;
}
input:focus,select:focus{border-color:rgba(0,229,160,.4);box-shadow:0 0 0 3px rgba(0,229,160,.08);}
.content{flex:1;overflow:auto;padding:16px;}
.content::-webkit-scrollbar{width:4px}.content::-webkit-scrollbar-thumb{background:var(--muted);border-radius:2px;}
.panel{display:none;}.panel.active{display:block;}
.grid{display:grid;grid-template-columns:repeat(12,1fr);gap:14px;}
.card{
  background:var(--s1);border:1px solid var(--border);border-radius:14px;padding:16px;position:relative;overflow:hidden;
  transition:border-color .2s, transform .2s, box-shadow .2s;
}
.card:hover{border-color:var(--border2);}
.card::before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.012),transparent 40%);pointer-events:none;}
.c3{grid-column:span 3}.c4{grid-column:span 4}.c6{grid-column:span 6}.c8{grid-column:span 8}.c12{grid-column:span 12}
.label{
  font-size:9px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text2);
  font-family:'JetBrains Mono',monospace;margin-bottom:8px;display:flex;align-items:center;gap:6px;
}
.val{
  font-size:34px;font-weight:900;font-family:'Instrument Serif',serif;letter-spacing:-.02em;line-height:1.05;
  color:var(--text);text-shadow:0 0 18px rgba(221,227,240,.04);
}
.sub{font-size:10px;color:var(--text2);font-family:'JetBrains Mono',monospace;font-weight:500;margin-top:4px;line-height:1.45;}
.good{color:var(--accent)!important;text-shadow:0 0 24px rgba(0,229,160,.18);}.warn{color:var(--warn)!important;text-shadow:0 0 22px rgba(255,186,8,.12);}.bad{color:var(--danger)!important;text-shadow:0 0 24px rgba(255,51,85,.16);}.blue{color:var(--accent2)!important;text-shadow:0 0 22px rgba(91,127,255,.12);}
.section{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--text2);font-family:'JetBrains Mono',monospace;padding:16px 0 10px;grid-column:span 12;display:flex;align-items:center;gap:8px;margin-top:0;}
.section:after{content:'';flex:1;height:1px;background:var(--border);}
.table-wrap{overflow:auto;border-radius:12px;border:1px solid var(--border);background:rgba(3,5,10,.15);}
table{width:100%;border-collapse:collapse;min-width:1080px;background:transparent;}
th{position:sticky;top:0;background:#080d18;color:var(--text2);font-size:8px;font-weight:700;letter-spacing:.1em;font-family:'JetBrains Mono',monospace;text-align:left;padding:8px 10px;border-bottom:1px solid var(--border);z-index:1;text-transform:uppercase;}
td{font-size:11px;padding:9px 10px;border-bottom:1px solid var(--border);font-family:'JetBrains Mono',monospace;font-weight:500;color:var(--text);}
tr:last-child td{border-bottom:none;}tr:hover td{background:rgba(255,255,255,.015);}td[contenteditable=true]{outline:0}td[contenteditable=true]:focus{background:rgba(0,229,160,.06);}
.status-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border-radius:14px;font-size:9px;font-weight:800;font-family:'JetBrains Mono',monospace;}
.st-paid{background:rgba(0,229,160,.1);color:var(--accent);border:1px solid rgba(0,229,160,.22)}
.st-soon{background:rgba(255,186,8,.1);color:var(--warn);border:1px solid rgba(255,186,8,.22)}
.st-critical{background:rgba(255,51,85,.1);color:var(--danger);border:1px solid rgba(255,51,85,.22);animation:pulseRed 1.1s infinite}
.st-pending{background:rgba(91,127,255,.1);color:var(--accent2);border:1px solid rgba(91,127,255,.22)}
.mini-btn{border:1px solid var(--border);background:transparent;color:var(--text2);border-radius:8px;padding:6px 8px;cursor:pointer;font:700 10px 'Syne',sans-serif;transition:.2s;}
.mini-btn:hover{background:var(--s2);color:var(--accent);border-color:rgba(0,229,160,.3);}
.insight{background:rgba(0,229,160,.04);border:1px solid rgba(0,229,160,.1);border-radius:10px;padding:10px 12px;font-size:11px;color:var(--text2);line-height:1.6;font-family:'JetBrains Mono',monospace;font-weight:500;}
.insight strong{color:var(--accent);}
.alert-list{display:flex;flex-direction:column;gap:9px}.alert-item{display:flex;gap:12px;align-items:flex-start;background:linear-gradient(135deg,rgba(12,18,32,.98),rgba(8,13,24,.96));border:1px solid var(--border);border-radius:12px;padding:13px 14px;box-shadow:0 10px 28px rgba(0,0,0,.22);position:relative;overflow:hidden;}
.alert-item:before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--accent);opacity:.75}.alert-item>div:first-child{font-size:18px;line-height:1.15;filter:drop-shadow(0 0 8px currentColor);margin-top:1px;}
.alert-item.red{border-color:rgba(255,51,85,.42);background:linear-gradient(135deg,rgba(255,51,85,.12),rgba(8,13,24,.96));box-shadow:0 10px 30px rgba(255,51,85,.08)}.alert-item.red:before{background:var(--danger)}
.alert-item.yellow{border-color:rgba(255,186,8,.42);background:linear-gradient(135deg,rgba(255,186,8,.10),rgba(8,13,24,.96));box-shadow:0 10px 30px rgba(255,186,8,.06)}.alert-item.yellow:before{background:var(--warn)}
.alert-title{font-family:'Syne',sans-serif;font-size:16px;font-weight:900;line-height:1.05;letter-spacing:.01em;color:#f8fbff;text-shadow:0 0 14px rgba(221,227,240,.10);}.alert-desc{font-size:11.5px;color:#cfd8f6;font-family:'JetBrains Mono',monospace;font-weight:700;line-height:1.45;margin-top:5px;letter-spacing:.01em;}.alert-desc strong{color:#fff;font-weight:900}.alert-item.red .alert-desc{color:#ffd6df}.alert-item.yellow .alert-desc{color:#fff2c3}
.progress{height:5px;background:var(--s3);border-radius:3px;overflow:hidden;margin-top:8px}.fill{height:100%;border-radius:3px;background:linear-gradient(90deg,var(--accent),var(--accent2));}
.toast{position:fixed;right:16px;bottom:16px;z-index:20;background:rgba(8,13,24,.98);border:1px solid rgba(0,229,160,.25);border-radius:14px;padding:14px 16px;display:none;box-shadow:0 20px 60px rgba(0,0,0,.6);font:700 12px 'Syne',sans-serif;color:var(--text);}
.toast.show{display:block;animation:in .25s both}@keyframes in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.modal{position:fixed;inset:0;background:rgba(3,5,10,.86);backdrop-filter:blur(12px);display:none;align-items:center;justify-content:center;z-index:30}.modal.open{display:flex}
.box{width:700px;max-width:94vw;background:var(--s1);border:1px solid var(--border2);border-radius:20px;padding:24px;box-shadow:0 40px 100px rgba(0,0,0,.7);animation:in .25s both;}.box h2{font-size:20px;font-weight:900;margin-bottom:6px;color:var(--text);}.box p{font:500 11px/1.6 'JetBrains Mono';color:var(--text2);margin-bottom:16px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.form-grid label{font:800 9px 'JetBrains Mono';color:var(--text2);letter-spacing:.1em;text-transform:uppercase}.form-grid input,.form-grid select{width:100%;margin-top:5px}.wide{grid-column:span 2}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}
.blink{animation:cardBlink 1.2s infinite}@keyframes cardBlink{50%{border-color:var(--danger);box-shadow:0 0 0 1px rgba(255,51,85,.2),0 0 28px rgba(255,51,85,.18)}}
.daily-carousel{display:flex;align-items:stretch;gap:10px;position:relative}.daily-grid{display:flex;gap:10px;flex:1;overflow-x:auto;overflow-y:hidden;scroll-behavior:smooth;padding-bottom:6px;scrollbar-width:thin;scrollbar-color:var(--muted) transparent}.daily-arrow{width:38px;border:1px solid rgba(0,229,160,.22);background:rgba(0,229,160,.06);color:var(--accent);border-radius:14px;font-size:22px;font-weight:900;cursor:pointer;transition:.2s;flex-shrink:0}.daily-arrow:hover{background:rgba(0,229,160,.13);transform:translateY(-1px)}
.day-card{background:var(--s2);border:1px solid var(--border);border-radius:12px;padding:12px;min-height:120px;flex:0 0 118px;scroll-snap-align:start;cursor:pointer;transition:.2s}.day-card:hover{transform:translateY(-2px);border-color:rgba(0,229,160,.28);box-shadow:0 14px 34px rgba(0,0,0,.28)}.daily-grid{scroll-snap-type:x proximity}.day-card.today{border-color:rgba(0,229,160,.55);box-shadow:0 0 24px rgba(0,229,160,.12);background:rgba(0,229,160,.055)}.day-card.has-move{border-color:rgba(91,127,255,.22)}.day-name{font:900 11px 'JetBrains Mono';color:var(--text)}.day-date{font:600 9px 'JetBrains Mono';color:var(--text2);margin:3px 0 9px}.daily-line{display:flex;justify-content:space-between;font:700 10px 'JetBrains Mono';padding:3px 0;border-bottom:1px solid rgba(255,255,255,.04)}.daily-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.daily-range{font:800 10px 'JetBrains Mono';color:var(--accent);letter-spacing:.08em}
.chart-wrap{height:240px;position:relative}.chart-canvas{width:100%;height:240px;background:rgba(255,255,255,.015);border:1px solid var(--border);border-radius:12px}.legend-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}.legend-pill{font:700 10px 'JetBrains Mono';padding:5px 9px;border-radius:999px;background:var(--s2);border:1px solid var(--border);color:var(--text2)}.legend-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:5px}.mini-kpi{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.mini-kpi .card{padding:12px}.mini-kpi .val{font-size:22px}


/* === v31 PRIORIDADE 10 · CENTRAL DE ALERTAS === */
.alert-center-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}
.alert-center-title{font-family:'Syne',sans-serif;font-size:22px;font-weight:900;color:#f8fbff}
.alert-center-sub{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--text2);line-height:1.55;margin-top:4px}
.alert-center-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:14px}
.alert-kpi{background:var(--s1);border:1px solid var(--border);border-radius:14px;padding:15px;cursor:pointer;transition:.2s;position:relative;overflow:hidden}
.alert-kpi:hover{transform:translateY(-2px);border-color:var(--border2);box-shadow:0 14px 34px rgba(0,0,0,.28)}
.alert-kpi.active{border-color:rgba(0,229,160,.38);box-shadow:0 0 26px rgba(0,229,160,.08)}
.alert-kpi.red{border-color:rgba(255,51,85,.22)}
.alert-kpi.yellow{border-color:rgba(255,186,8,.22)}
.alert-kpi.purple{border-color:rgba(178,107,255,.22)}
.alert-kpi.green{border-color:rgba(0,229,160,.22)}
.alert-kpi-label{font-family:'JetBrains Mono',monospace;font-size:8px;font-weight:900;letter-spacing:.13em;color:var(--text2);text-transform:uppercase}
.alert-kpi-val{font-family:'Instrument Serif',serif;font-size:34px;font-weight:900;margin-top:5px;line-height:1}
.alert-kpi-sub{font-family:'JetBrains Mono',monospace;font-size:10px;color:var(--text2);margin-top:7px;line-height:1.45}
.alert-center-filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}
.alert-filter-btn{border:1px solid var(--border);background:var(--s2);color:var(--text2);border-radius:999px;padding:8px 12px;font-family:'JetBrains Mono',monospace;font-size:10px;font-weight:900;cursor:pointer;transition:.2s}
.alert-filter-btn:hover,.alert-filter-btn.active{color:var(--accent);border-color:rgba(0,229,160,.35);background:rgba(0,229,160,.07)}
.alert-center-list{display:flex;flex-direction:column;gap:10px}
.alert-center-item{display:grid;grid-template-columns:34px 1fr auto auto;gap:12px;align-items:center;background:rgba(8,13,24,.96);border:1px solid var(--border);border-radius:14px;padding:13px 14px;transition:.2s}
.alert-center-item:hover{transform:translateY(-1px);border-color:var(--border2)}
.alert-center-item.red{border-color:rgba(255,51,85,.35);background:linear-gradient(135deg,rgba(255,51,85,.08),rgba(8,13,24,.96))}
.alert-center-item.yellow{border-color:rgba(255,186,8,.35);background:linear-gradient(135deg,rgba(255,186,8,.07),rgba(8,13,24,.96))}
.alert-center-item.purple{border-color:rgba(178,107,255,.32);background:linear-gradient(135deg,rgba(178,107,255,.07),rgba(8,13,24,.96))}
.alert-center-item.green{border-color:rgba(0,229,160,.32);background:linear-gradient(135deg,rgba(0,229,160,.055),rgba(8,13,24,.96))}
.alert-center-dot{width:20px;height:20px;border-radius:50%;box-shadow:0 0 18px currentColor}
.alert-center-dot.red{background:var(--danger);color:rgba(255,51,85,.55)}
.alert-center-dot.yellow{background:var(--warn);color:rgba(255,186,8,.45)}
.alert-center-dot.purple{background:var(--purple);color:rgba(178,107,255,.45)}
.alert-center-dot.green{background:var(--accent);color:rgba(0,229,160,.45)}
.alert-center-name{font-family:'Syne',sans-serif;font-size:15px;font-weight:900;color:#f8fbff}
.alert-center-meta{font-family:'JetBrains Mono',monospace;font-size:10px;color:#aeb9d8;line-height:1.55;margin-top:3px}
.alert-center-value{font-family:'Instrument Serif',serif;font-size:24px;font-weight:900;text-align:right}
.alert-center-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.alert-empty{background:rgba(0,229,160,.04);border:1px solid rgba(0,229,160,.12);border-radius:14px;padding:18px;font-family:'JetBrains Mono',monospace;font-size:12px;color:var(--text2);line-height:1.6}
@media(max-width:1150px){.alert-center-kpis{grid-template-columns:1fr 1fr}.alert-center-item{grid-template-columns:28px 1fr}.alert-center-value,.alert-center-actions{text-align:left;justify-content:flex-start;grid-column:2}}

@media print{.topbar,.sidebar,.toolbar,.btn,.mini-btn{display:none!important}body{background:#fff;color:#000}.card{break-inside:avoid;border:1px solid #ccc;color:#000;background:#fff}.sub,.label{color:#333}}
@media(max-width:980px){:root{--sidebar:64px}.nav span,.side-title{display:none}.c3,.c4,.c6,.c8{grid-column:span 12}.daily-grid{display:flex}.brand,.module,.chips{display:none}}

/* Botão inteligente no card de urgência */
#criticalCard{cursor:pointer;transition:transform .22s,border-color .22s,box-shadow .22s;background:linear-gradient(145deg,rgba(8,13,24,.98),rgba(10,15,28,.96))}
#criticalCard:hover{transform:translateY(-2px);border-color:rgba(255,51,85,.72);box-shadow:0 0 0 1px rgba(255,51,85,.16),0 18px 45px rgba(255,51,85,.14)}
#kCriticas{cursor:pointer}

/* === v15 FIX: alertas pulsantes, clicáveis e sem quebrar dashboard === */
#criticalCard{
  cursor:pointer;
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
#criticalCard:hover{
  transform:translateY(-2px);
  box-shadow:0 0 26px rgba(255,51,85,.18);
  border-color:rgba(255,51,85,.45);
}

.alert-item{
  cursor:pointer;
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
  position:relative;
}
.alert-item:hover{
  transform:translateY(-2px);
}

.alert-title{
  font-family:'Syne',sans-serif !important;
  font-weight:900 !important;
  font-size:18px !important;
  letter-spacing:.02em;
  color:#f5f8ff !important;
  text-shadow:0 2px 12px rgba(255,255,255,.12);
}
.alert-desc{
  font-family:'JetBrains Mono',monospace !important;
  font-size:12px !important;
  font-weight:800 !important;
  line-height:1.45;
  color:#f0f4ff !important;
}
.alert-item.yellow{
  border-color:rgba(255,186,8,.55) !important;
  background:rgba(255,186,8,.045) !important;
  animation:alertYellowCardPulse 2.2s ease-in-out infinite;
}
.alert-item.red{
  border-color:rgba(255,51,85,.72) !important;
  background:rgba(255,51,85,.07) !important;
  animation:alertRedCardPulse 1.25s ease-in-out infinite;
}

.alert-dot{
  width:18px;
  height:18px;
  border-radius:50%;
  flex-shrink:0;
  margin-top:4px;
}
.alert-dot.yellow{
  background:#ffba08;
  animation:alertYellowDotPulse 1.8s ease-in-out infinite;
}
.alert-dot.red{
  background:#ff3355;
  animation:alertRedDotPulse 1s ease-in-out infinite;
}

@keyframes alertYellowDotPulse{
  0%,100%{box-shadow:0 0 0 0 rgba(255,186,8,.48),0 0 12px rgba(255,186,8,.18)}
  50%{box-shadow:0 0 0 10px rgba(255,186,8,0),0 0 26px rgba(255,186,8,.45)}
}
@keyframes alertRedDotPulse{
  0%,100%{box-shadow:0 0 0 0 rgba(255,51,85,.65),0 0 16px rgba(255,51,85,.30)}
  50%{box-shadow:0 0 0 14px rgba(255,51,85,0),0 0 36px rgba(255,51,85,.70)}
}
@keyframes alertYellowCardPulse{
  0%,100%{box-shadow:0 0 0 rgba(255,186,8,0)}
  50%{box-shadow:0 0 22px rgba(255,186,8,.18)}
}
@keyframes alertRedCardPulse{
  0%,100%{box-shadow:0 0 0 rgba(255,51,85,0)}
  50%{box-shadow:0 0 30px rgba(255,51,85,.26)}
}


#voltarDashboardBtn{
  align-items:center;
  gap:6px;
  border-color:rgba(0,229,160,.25)!important;
  color:var(--accent)!important;
}
#voltarDashboardBtn:hover{
  box-shadow:0 0 20px rgba(0,229,160,.12);
}


.exec-dashboard{display:flex;flex-direction:column;gap:18px}
.exec-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.exec-card,.exec-panel{background:rgba(8,13,24,.96);border:1px solid var(--border);border-radius:15px;padding:16px;position:relative;overflow:hidden}
.exec-card{min-height:190px}.exec-panel{min-height:190px}.exec-card:hover,.exec-panel:hover{border-color:var(--border2)}
.exec-icon{width:36px;height:36px;border-radius:10px;background:rgba(0,229,160,.10);display:flex;align-items:center;justify-content:center;font-size:18px;margin-bottom:12px}
.blue-bg{background:rgba(91,127,255,.12)!important}.warn-bg{background:rgba(255,186,8,.12)!important}.danger-bg{background:rgba(255,51,85,.12)!important}
.exec-label,.exec-mini-label{font-family:'JetBrains Mono',monospace;font-size:9px;font-weight:800;letter-spacing:.16em;color:#91a0c3;margin-bottom:9px}
.exec-val{font-family:'Instrument Serif',serif;font-size:34px;font-weight:900;line-height:1;letter-spacing:-.03em}
.exec-trend{margin-top:9px;font-family:'JetBrains Mono',monospace;font-size:10px;font-weight:900}
.spark{position:absolute;right:24px;bottom:22px;width:115px;height:38px}.spark polyline{fill:none;stroke:var(--accent);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.blue-stroke polyline{stroke:var(--blue)}.warn-stroke polyline{stroke:var(--warn)}.danger-stroke polyline{stroke:var(--danger)}
.exec-section-title{font-family:'JetBrains Mono',monospace;font-size:11px;font-weight:800;letter-spacing:.13em;color:#9ba7c7;text-transform:uppercase;display:flex;align-items:center;gap:10px}.exec-section-title:after{content:'';height:1px;background:var(--border);flex:1}
.exec-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.exec-grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px}
.dre-row{display:flex;justify-content:space-between;align-items:center;font-family:'JetBrains Mono',monospace;font-size:12px;margin:10px 0}.dre-row span{color:#dbe4ff}.dre-row strong{font-family:'JetBrains Mono',monospace;font-size:13px}
.dre-total{border-top:1px solid var(--border);margin-top:12px;padding-top:12px;display:flex;justify-content:space-between;align-items:center}.dre-total span{font-family:'Syne',sans-serif;font-weight:900;font-size:17px;color:#f8fbff}.dre-total strong{font-family:'Instrument Serif',serif;font-size:22px;font-weight:900}
.dre-progress{height:7px;background:var(--s3);border-radius:99px;overflow:hidden;margin-top:13px}.dre-progress div{height:100%;background:linear-gradient(90deg,var(--accent),var(--blue));border-radius:99px;width:0%}.dre-meta{margin-top:9px;font-family:'JetBrains Mono',monospace;font-size:10px;color:#9ba7c7}
.exec-bar-row{display:grid;grid-template-columns:120px 1fr 80px;align-items:center;gap:12px;margin:13px 0}.exec-bar-name{font-family:'JetBrains Mono',monospace;font-size:11px;color:#dbe4ff}.exec-bar-track{height:7px;background:var(--s3);border-radius:99px;overflow:hidden}.exec-bar-fill{height:100%;border-radius:99px}.exec-bar-val{text-align:right;font-family:'JetBrains Mono',monospace;font-size:11px;font-weight:900;color:#f5f8ff}
.health-row{display:grid;grid-template-columns:1fr 34px 64px;align-items:center;gap:10px;margin:12px 0}.health-name{font-family:'JetBrains Mono',monospace;font-size:11px;font-weight:800;color:#f5f8ff}.health-score{font-family:'JetBrains Mono',monospace;font-size:12px;font-weight:900}.health-track{height:6px;background:var(--s3);border-radius:99px;overflow:hidden}.health-fill{height:100%;border-radius:99px}.ver-mais{position:absolute;right:18px;bottom:14px;font-family:'JetBrains Mono',monospace;font-size:9px;letter-spacing:.12em;color:#455174}
.risk-card,.due-card{border-radius:9px;padding:10px 12px;margin:8px 0;border-left:4px solid}.risk-card.red,.due-card.red{background:rgba(255,51,85,.075);border-color:var(--danger)}.risk-card.yellow,.due-card.yellow{background:rgba(255,186,8,.07);border-color:var(--warn)}.risk-card.green,.due-card.green{background:rgba(0,229,160,.07);border-color:var(--accent)}
.risk-title,.due-title{font-family:'Syne',sans-serif;font-size:13px;font-weight:900;color:#f5f8ff}.risk-sub,.due-sub{font-family:'JetBrains Mono',monospace;font-size:10px;color:#aeb9d8;margin-top:3px}.due-card{display:flex;align-items:center;justify-content:space-between}.due-val{font-family:'Instrument Serif',serif;font-size:17px;font-weight:900}
.ai-diagnosis{min-height:auto}.ai-box{background:rgba(0,229,160,.045);border:1px solid rgba(0,229,160,.12);border-radius:10px;padding:14px;font-family:'JetBrains Mono',monospace;font-size:12px;line-height:1.75;color:#b8c6e8}.ai-box strong{color:var(--accent)}.ai-box .bad{color:var(--danger);font-weight:900}.ai-box .warn{color:var(--warn);font-weight:900}
@media(max-width:1100px){.exec-kpis,.exec-grid,.exec-grid-3{grid-template-columns:1fr}}


/* === v18 IA ASSISTENTE COM VOZ · TEMPO REAL === */
#voice-assistant{
  position:fixed;
  right:26px;
  bottom:24px;
  z-index:9999;
  font-family:'Syne',sans-serif;
}
.va-fab{
  width:72px;
  height:72px;
  border-radius:50%;
  border:0;
  background:linear-gradient(135deg,var(--accent),#38d7ff);
  color:#001510;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  box-shadow:0 0 0 8px rgba(0,229,160,.08),0 0 40px rgba(0,229,160,.38);
  position:relative;
  transition:.25s;
}
.va-fab:hover{transform:scale(1.06)}
.va-fab-icon{font-size:28px;font-weight:900;z-index:2}
.va-ring{
  position:absolute;
  inset:-10px;
  border-radius:50%;
  border:2px solid rgba(0,229,160,.35);
  animation:vaRing 2.1s infinite;
}
.va-ring.r2{animation-delay:.65s}
@keyframes vaRing{
  0%{transform:scale(.9);opacity:.8}
  100%{transform:scale(1.55);opacity:0}
}
.va-panel{
  position:absolute;
  right:0;
  bottom:88px;
  width:420px;
  max-width:calc(100vw - 32px);
  height:585px;
  max-height:calc(100vh - 130px);
  background:rgba(8,13,24,.985);
  border:1px solid rgba(0,229,160,.22);
  border-radius:22px;
  box-shadow:0 30px 100px rgba(0,0,0,.78),0 0 50px rgba(0,229,160,.10);
  overflow:hidden;
  display:none;
  flex-direction:column;
  backdrop-filter:blur(20px);
}
.va-panel.open{display:flex;animation:vaIn .25s ease both}
@keyframes vaIn{from{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:none}}
.va-header{
  padding:15px 16px;
  border-bottom:1px solid var(--border);
  display:flex;
  align-items:center;
  gap:12px;
  background:rgba(6,9,18,.92);
}
.va-orb{
  width:40px;
  height:40px;
  border-radius:50%;
  background:linear-gradient(135deg,var(--accent),var(--blue));
  display:flex;
  align-items:center;
  justify-content:center;
  color:#001510;
  font-size:19px;
  font-weight:900;
  box-shadow:0 0 26px rgba(0,229,160,.35);
}
.va-title{
  font-size:14px;
  font-weight:900;
  color:#f6f9ff;
  letter-spacing:.04em;
}
.va-sub{
  font-family:'JetBrains Mono',monospace;
  font-size:9px;
  color:#9ba7c7;
  margin-top:2px;
}
.va-close{
  margin-left:auto;
  width:30px;
  height:30px;
  border-radius:8px;
  border:1px solid var(--border);
  background:transparent;
  color:#9ba7c7;
  cursor:pointer;
  font-size:18px;
}
.va-wave{
  height:58px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:4px;
  border-bottom:1px solid var(--border);
  background:rgba(0,229,160,.025);
}
.va-wave span{
  width:3px;
  height:10px;
  background:var(--accent);
  border-radius:4px;
  opacity:.45;
  animation:vaWave 1.2s ease-in-out infinite;
}
.va-wave span:nth-child(2n){animation-delay:.1s}
.va-wave span:nth-child(3n){animation-delay:.2s}
.va-wave.listening span{animation:.35s vaWaveActive infinite alternate;opacity:1}
@keyframes vaWave{0%,100%{height:6px;opacity:.35}50%{height:18px;opacity:.7}}
@keyframes vaWaveActive{from{height:8px}to{height:34px}}
.va-audio-line{
  display:grid;
  grid-template-columns:70px 1fr 36px;
  gap:8px;
  align-items:center;
  padding:8px 16px;
  font-family:'JetBrains Mono',monospace;
  font-size:9px;
  color:#92a0c4;
  border-bottom:1px solid var(--border);
}
.va-audio-line div{
  height:4px;
  background:var(--s3);
  border-radius:99px;
  overflow:hidden;
}
.va-audio-line i{
  display:block;
  height:100%;
  width:0%;
  background:linear-gradient(90deg,var(--accent),var(--blue));
}
.va-messages{
  flex:1;
  overflow:auto;
  padding:14px;
  scrollbar-width:thin;
}
.va-msg{
  border-radius:13px;
  padding:12px 13px;
  margin-bottom:11px;
  font-family:'JetBrains Mono',monospace;
  font-size:12px;
  line-height:1.65;
  color:#e8eeff;
  animation:vaMsg .18s ease both;
}
@keyframes vaMsg{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
.va-msg.ai{
  background:rgba(0,229,160,.055);
  border:1px solid rgba(0,229,160,.16);
}
.va-msg.user{
  background:var(--s2);
  border:1px solid var(--border2);
  margin-left:34px;
}
.va-msg strong{color:var(--accent)}
.va-msg .bad{color:var(--danger);font-weight:900}
.va-msg .warn{color:var(--warn);font-weight:900}
.va-suggestions{
  padding:10px 14px;
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  border-top:1px solid var(--border);
}
.va-suggestions button{
  border:1px solid var(--border2);
  background:var(--s2);
  color:#aeb9d8;
  border-radius:999px;
  padding:6px 10px;
  font-family:'JetBrains Mono',monospace;
  font-size:10px;
  cursor:pointer;
}
.va-suggestions button:hover{
  color:var(--accent);
  border-color:rgba(0,229,160,.35);
}
.va-input-area{
  display:grid;
  grid-template-columns:42px 1fr 42px;
  gap:9px;
  padding:12px 14px;
  border-top:1px solid var(--border);
  background:rgba(6,9,18,.92);
}
.va-input-area input{
  width:100%;
  background:var(--s2);
  border:1px solid var(--border2);
  color:#f4f7ff;
  border-radius:11px;
  padding:11px 12px;
  font-family:'JetBrains Mono',monospace;
  font-size:11px;
}
.va-mic,.va-send{
  border:0;
  border-radius:50%;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:17px;
}
.va-mic{
  background:var(--s2);
  border:1px solid var(--border2);
  color:#cbd5f4;
}
.va-mic.recording{
  background:rgba(255,51,85,.18);
  color:#fff;
  box-shadow:0 0 26px rgba(255,51,85,.45);
  animation:vaMicPulse 1s infinite;
}
@keyframes vaMicPulse{50%{transform:scale(1.07)}}
.va-send{
  background:linear-gradient(135deg,var(--accent),#38d7ff);
  color:#001510;
  font-weight:900;
}


/* === CONTROLES DE ÁUDIO E MENSAGENS DA PULSE IA === */
.va-audio-line{grid-template-columns:70px 1fr 36px!important;cursor:pointer;}
.va-controls{
  display:flex;align-items:center;gap:7px;flex-wrap:wrap;
  padding:8px 14px;border-bottom:1px solid var(--border);
  background:rgba(6,9,18,.82);
}
.va-ctrl-btn{
  width:30px;height:30px;border-radius:9px;border:1px solid var(--border2);
  background:var(--s2);color:#cbd5f4;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  font-size:13px;transition:.2s;font-family:'JetBrains Mono',monospace;font-weight:900;
}
.va-ctrl-btn:hover{color:var(--accent);border-color:rgba(0,229,160,.35);transform:translateY(-1px)}
.va-ctrl-btn.danger:hover{color:var(--danger);border-color:rgba(255,51,85,.45)}
.va-select-mode{
  margin-left:auto;font-family:'JetBrains Mono',monospace;font-size:9px;color:#91a0c3;
  display:flex;align-items:center;gap:6px;cursor:pointer;user-select:none;
}
.va-select-mode input{width:14px;height:14px;accent-color:var(--accent)}
.va-msg{position:relative;padding-left:36px!important;}
.va-msg-check{
  position:absolute;left:10px;top:14px;width:14px;height:14px;accent-color:var(--accent);
  display:none;
}
.va-messages.selecting .va-msg-check{display:block;}
.va-msg.selected{outline:1px solid rgba(0,229,160,.42);box-shadow:0 0 18px rgba(0,229,160,.08)}
.va-msg-actions{position:absolute;right:8px;top:6px;display:none;gap:5px}
.va-msg:hover .va-msg-actions{display:flex}
.va-msg-mini{width:22px;height:22px;border-radius:7px;border:1px solid var(--border);background:rgba(6,9,18,.85);color:#9ba7c7;cursor:pointer;font-size:10px}
.va-msg-mini:hover{color:var(--accent);border-color:rgba(0,229,160,.35)}
.va-msg-mini.danger:hover{color:var(--danger);border-color:rgba(255,51,85,.45)}


.auth-screen{position:fixed;inset:0;z-index:20000;background:radial-gradient(ellipse 80% 60% at 50% 20%,rgba(10,22,40,.95),transparent 62%),var(--bg);display:none;align-items:center;justify-content:center;padding:20px}.auth-screen.open{display:flex}.auth-bg-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(0,229,160,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(0,229,160,.025) 1px,transparent 1px);background-size:48px 48px}.auth-box{width:460px;max-width:96vw;background:rgba(8,13,24,.95);border:1px solid rgba(0,229,160,.18);border-radius:22px;padding:34px;box-shadow:0 40px 120px rgba(0,0,0,.75),0 0 80px rgba(0,229,160,.08);position:relative}.auth-logo{display:flex;align-items:center;gap:12px;margin-bottom:24px}.auth-logo-icon{width:44px;height:44px;border-radius:12px;background:linear-gradient(135deg,var(--accent),var(--accent2));display:flex;align-items:center;justify-content:center;color:#000;font-size:18px;font-weight:900;box-shadow:0 0 28px rgba(0,229,160,.35)}.auth-brand{font-size:21px;font-weight:900;color:#fff;line-height:1}.auth-brand span{color:var(--accent)}.auth-sub{font-family:'JetBrains Mono',monospace;font-size:10px;color:var(--text2);margin-top:4px}.auth-title{font-size:19px;font-weight:900;color:#f8fbff;margin-bottom:6px}.auth-desc{font-family:'JetBrains Mono',monospace;font-size:11px;line-height:1.6;color:#9ba7c7;margin-bottom:22px}.auth-tabs{display:flex;gap:6px;background:var(--s2);border:1px solid var(--border);padding:4px;border-radius:12px;margin-bottom:18px}.auth-tab{flex:1;border:0;border-radius:9px;padding:9px;background:transparent;color:var(--text2);font-family:'Syne',sans-serif;font-size:12px;font-weight:800;cursor:pointer}.auth-tab.active{background:rgba(0,229,160,.12);color:var(--accent)}.auth-form{display:none}.auth-form.active{display:block}.auth-field{margin-bottom:12px}.auth-field label{display:block;font-family:'JetBrains Mono',monospace;font-size:9px;font-weight:800;color:var(--text2);letter-spacing:.12em;text-transform:uppercase;margin-bottom:6px}.auth-field input,.auth-field select{width:100%;padding:12px 13px;border-radius:11px;background:var(--s2);border:1px solid var(--border2);color:#f4f8ff;font-family:'JetBrains Mono',monospace;font-size:12px}.auth-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.auth-primary{width:100%;margin-top:6px;border:0;border-radius:12px;padding:13px;background:linear-gradient(135deg,var(--accent),#00c888);color:#001510;font-family:'Syne',sans-serif;font-weight:900;font-size:13px;cursor:pointer;box-shadow:0 8px 30px rgba(0,229,160,.25)}.auth-secondary{width:100%;margin-top:10px;border:1px solid var(--border2);border-radius:12px;padding:12px;background:transparent;color:var(--text2);font-family:'Syne',sans-serif;font-weight:800;cursor:pointer}.auth-note{margin-top:14px;font-family:'JetBrains Mono',monospace;font-size:10px;line-height:1.55;color:var(--muted)}.user-menu-btn{border:1px solid var(--border);background:transparent;color:var(--text2);border-radius:8px;padding:8px 10px;font-family:'Syne',sans-serif;font-size:12px;font-weight:800;cursor:pointer}.user-menu-btn:hover{background:var(--s2);color:var(--accent)}.settings-user-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.profile-pill{display:inline-flex;align-items:center;padding:4px 9px;border-radius:999px;background:rgba(0,229,160,.10);border:1px solid rgba(0,229,160,.18);color:var(--accent);font-family:'JetBrains Mono',monospace;font-size:9px;font-weight:800;margin-left:8px}.perm-card{background:var(--s2);border:1px solid var(--border);border-radius:12px;padding:12px;margin-top:10px}.perm-title{font-family:'Syne',sans-serif;font-size:13px;color:#fff;font-weight:900}.perm-sub{margin-top:3px;font-family:'JetBrains Mono',monospace;font-size:10px;color:var(--text2);line-height:1.5}.locked-by-permission{opacity:.45!important;pointer-events:none!important;filter:grayscale(.45)}
/* === v41 MICROFONE INTELIGENTE · STATUS E PERMISSÃO === */
.va-mic-status{
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  padding:7px 14px;border-top:1px solid var(--border);
  background:rgba(0,229,160,.025);font-family:'JetBrains Mono',monospace;
  font-size:9px;color:#93a1c3;
}
.va-mic-status strong{font-weight:900;color:var(--accent)}
.va-mic-status.blocked strong{color:var(--danger)}
.va-mic-status.ask strong{color:var(--warn)}
.va-mic-status.unsupported strong{color:var(--danger)}
.va-mic-status button{
  border:1px solid var(--border2);background:var(--s2);color:#aeb9d8;border-radius:999px;
  padding:5px 9px;font-family:'JetBrains Mono',monospace;font-size:9px;font-weight:900;cursor:pointer;
}
.va-mic-status button:hover{color:var(--accent);border-color:rgba(0,229,160,.35)}

.permission-warning{position:fixed;left:50%;top:70px;transform:translateX(-50%);z-index:21000;background:rgba(255,51,85,.12);border:1px solid rgba(255,51,85,.35);color:#ffd7df;border-radius:12px;padding:12px 16px;font-family:'JetBrains Mono',monospace;font-size:11px;display:none}.permission-warning.show{display:block;animation:in .25s both}


/* === v20 ENTRADAS PREVISTAS EM LILÁS === */
:root{
  --purple:#b26bff;
}
.purple{color:var(--purple)!important;text-shadow:0 0 22px rgba(178,107,255,.22)}
.st-expected{
  background:rgba(178,107,255,.12);
  color:var(--purple);
  border:1px solid rgba(178,107,255,.32);
}
.expected-card{
  border-color:rgba(178,107,255,.28)!important;
  background:linear-gradient(145deg,rgba(178,107,255,.08),rgba(8,13,24,.96))!important;
}
.expected-pill{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:4px 9px;
  border-radius:999px;
  background:rgba(178,107,255,.12);
  border:1px solid rgba(178,107,255,.32);
  color:var(--purple);
  font-family:'JetBrains Mono',monospace;
  font-size:9px;
  font-weight:900;
}
.expected-list{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
}
.expected-item{
  background:rgba(178,107,255,.06);
  border:1px solid rgba(178,107,255,.24);
  border-radius:14px;
  padding:14px;
}
.expected-title{
  font-family:'Syne',sans-serif;
  font-size:15px;
  font-weight:900;
  color:#f7f1ff;
}
.expected-value{
  font-family:'Instrument Serif',serif;
  font-size:30px;
  font-weight:900;
  color:var(--purple);
  margin-top:6px;
}
.expected-meta{
  font-family:'JetBrains Mono',monospace;
  font-size:10px;
  color:#cdb8ff;
  line-height:1.5;
  margin-top:6px;
}
@media(max-width:1000px){.expected-list{grid-template-columns:1fr}}


/* === v21 CALENDÁRIO FINANCEIRO MENSAL === */
.calendar-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:14px;
}
.calendar-title{
  font-family:'Syne',sans-serif;
  font-size:20px;
  font-weight:900;
  color:#f8fbff;
}
.calendar-subtitle{
  font-family:'JetBrains Mono',monospace;
  font-size:11px;
  color:var(--text2);
  margin-top:4px;
}
.calendar-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
.calendar-kpis{
  display:grid;
  grid-template-columns:repeat(6,1fr);
  gap:10px;
  margin-bottom:14px;
}
.calendar-kpi{
  background:var(--s1);
  border:1px solid var(--border);
  border-radius:13px;
  padding:12px;
}
.calendar-kpi-label{
  font-family:'JetBrains Mono',monospace;
  font-size:8px;
  font-weight:800;
  letter-spacing:.12em;
  color:var(--text2);
  text-transform:uppercase;
}
.calendar-kpi-val{
  font-family:'Instrument Serif',serif;
  font-size:26px;
  font-weight:900;
  margin-top:5px;
}
.calendar-weekdays{
  display:grid;
  grid-template-columns:repeat(7,1fr);
  gap:8px;
  margin-bottom:8px;
}
.calendar-weekday{
  font-family:'JetBrains Mono',monospace;
  font-size:9px;
  font-weight:900;
  letter-spacing:.12em;
  color:#9ba7c7;
  text-transform:uppercase;
  padding:8px 10px;
}
.calendar-grid{
  display:grid;
  grid-template-columns:repeat(7,1fr);
  gap:8px;
}
.calendar-day{
  min-height:145px;
  background:rgba(8,13,24,.96);
  border:1px solid var(--border);
  border-radius:14px;
  padding:10px;
  position:relative;
  overflow:hidden;
  cursor:pointer;
  transition:.2s;
}
.calendar-day:hover{
  transform:translateY(-2px);
  border-color:rgba(0,229,160,.25);
  box-shadow:0 14px 40px rgba(0,0,0,.35);
}
.calendar-day.out-month{
  opacity:.35;
  filter:grayscale(.4);
}
.calendar-day.today{
  border-color:rgba(0,229,160,.55);
  box-shadow:0 0 26px rgba(0,229,160,.10);
}
.calendar-day.has-critical{
  border-color:rgba(255,51,85,.45);
}
.calendar-day.has-expected{
  border-color:rgba(178,107,255,.38);
}
.calendar-date{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:8px;
}
.calendar-number{
  font-family:'Syne',sans-serif;
  font-size:16px;
  font-weight:900;
  color:#f8fbff;
}
.calendar-mini-saldo{
  font-family:'JetBrains Mono',monospace;
  font-size:9px;
  font-weight:900;
}
.cal-line{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:6px;
  font-family:'JetBrains Mono',monospace;
  font-size:9px;
  padding:3px 0;
  border-bottom:1px solid rgba(255,255,255,.035);
}
.cal-line span:first-child{
  color:#aeb9d8;
}
.cal-line strong{
  font-weight:900;
}
.calendar-events{
  margin-top:8px;
  display:flex;
  flex-direction:column;
  gap:5px;
}
.calendar-event{
  border-radius:8px;
  padding:5px 7px;
  font-family:'JetBrains Mono',monospace;
  font-size:9px;
  font-weight:800;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.ev-in-real{background:rgba(0,229,160,.10);color:var(--accent);border:1px solid rgba(0,229,160,.18)}
.ev-out-real{background:rgba(255,51,85,.10);color:var(--danger);border:1px solid rgba(255,51,85,.20)}
.ev-in-prev{background:rgba(178,107,255,.12);color:var(--purple);border:1px solid rgba(178,107,255,.25)}
.ev-out-prev{background:rgba(255,186,8,.10);color:var(--warn);border:1px solid rgba(255,186,8,.22)}
.calendar-more{
  font-family:'JetBrains Mono',monospace;
  font-size:9px;
  color:var(--text2);
  margin-top:5px;
}
.day-modal-list{
  display:flex;
  flex-direction:column;
  gap:10px;
  margin-top:12px;
}
.day-detail-item{
  background:var(--s2);
  border:1px solid var(--border);
  border-radius:12px;
  padding:12px;
  display:grid;
  grid-template-columns:1fr auto;
  gap:10px;
}
.day-detail-title{
  font-family:'Syne',sans-serif;
  font-size:14px;
  font-weight:900;
  color:#f8fbff;
}
.day-detail-meta{
  margin-top:4px;
  font-family:'JetBrains Mono',monospace;
  font-size:10px;
  color:#aeb9d8;
  line-height:1.5;
}
.day-detail-value{
  font-family:'Instrument Serif',serif;
  font-size:24px;
  font-weight:900;
  text-align:right;
}
.day-summary-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:8px;
  margin-top:12px;
}
.day-summary-box{
  background:rgba(255,255,255,.025);
  border:1px solid var(--border);
  border-radius:10px;
  padding:10px;
}
.day-summary-label{
  font-family:'JetBrains Mono',monospace;
  font-size:8px;
  color:var(--text2);
  letter-spacing:.1em;
  text-transform:uppercase;
}
.day-summary-val{
  font-family:'Instrument Serif',serif;
  font-size:22px;
  font-weight:900;
  margin-top:4px;
}
@media(max-width:1200px){
  .calendar-kpis{grid-template-columns:repeat(2,1fr)}
  .calendar-grid,.calendar-weekdays{grid-template-columns:repeat(7,minmax(115px,1fr));overflow:auto}
  .calendar-day{min-width:115px}
}


/* === v22 AJUSTE DE ROLAGEM DO MODAL DO CALENDÁRIO === */
#dayModal{
  align-items:flex-start;
  padding:28px 12px;
  overflow-y:auto;
}
#dayModal .box{
  max-height:calc(100vh - 70px);
  overflow-y:auto;
  width:820px;
}
#dayModal .box::-webkit-scrollbar{
  width:6px;
}
#dayModal .box::-webkit-scrollbar-thumb{
  background:var(--muted);
  border-radius:99px;
}
#dayModal .modal-actions{
  position:sticky;
  bottom:0;
  background:linear-gradient(180deg,rgba(8,13,24,0),var(--s1) 35%);
  padding-top:18px;
}
.day-modal-list{
  max-height:none;
}
@media(max-width:760px){
  #dayModal .box{
    width:96vw;
    max-height:calc(100vh - 42px);
  }
  .day-summary-grid{
    grid-template-columns:1fr 1fr;
  }
}


/* === v23 CENTRO DE CONTAS RECORRENTES === */
.recurring-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:12px;
  margin-bottom:14px;
}
.recurring-card{
  background:var(--s1);
  border:1px solid var(--border);
  border-radius:14px;
  padding:15px;
}
.recurring-label{
  font-family:'JetBrains Mono',monospace;
  font-size:8px;
  font-weight:900;
  letter-spacing:.13em;
  color:var(--text2);
  text-transform:uppercase;
}
.recurring-val{
  font-family:'Instrument Serif',serif;
  font-size:31px;
  font-weight:900;
  margin-top:5px;
}
.recurring-form{
  display:grid;
  grid-template-columns:1.4fr .8fr .5fr .8fr .9fr .9fr auto;
  gap:8px;
  align-items:end;
}
.recurring-form label{
  font-family:'JetBrains Mono',monospace;
  font-size:8px;
  font-weight:900;
  color:var(--text2);
  text-transform:uppercase;
  letter-spacing:.1em;
}
.recurring-form input,.recurring-form select{
  width:100%;
  margin-top:5px;
}
.recurring-list{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
}
.recurring-item{
  background:rgba(8,13,24,.96);
  border:1px solid var(--border);
  border-radius:14px;
  padding:14px;
  position:relative;
  overflow:hidden;
}
.recurring-item.saida{
  border-color:rgba(255,186,8,.25);
}
.recurring-item.entrada{
  border-color:rgba(178,107,255,.25);
}
.recurring-top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
}
.recurring-name{
  font-family:'Syne',sans-serif;
  font-size:16px;
  font-weight:900;
  color:#f8fbff;
}
.recurring-value{
  font-family:'Instrument Serif',serif;
  font-size:26px;
  font-weight:900;
}
.recurring-meta{
  margin-top:6px;
  font-family:'JetBrains Mono',monospace;
  font-size:10px;
  color:#aeb9d8;
  line-height:1.55;
}
.recurring-actions{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:10px;
}
.generated-preview{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:10px;
  margin-top:12px;
}
.generated-month{
  background:rgba(255,255,255,.025);
  border:1px solid var(--border);
  border-radius:12px;
  padding:12px;
}
.generated-month-title{
  font-family:'Syne',sans-serif;
  font-size:13px;
  font-weight:900;
  color:#fff;
}
.generated-month-sub{
  font-family:'JetBrains Mono',monospace;
  font-size:10px;
  color:var(--text2);
  margin-top:4px;
}
@media(max-width:1150px){
  .recurring-grid,.recurring-list,.generated-preview{grid-template-columns:1fr}
  .recurring-form{grid-template-columns:1fr 1fr}
}


/* === v24 CARTÃO DE CRÉDITO === */
.credit-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:12px;
  margin-bottom:14px;
}
.credit-kpi{
  background:var(--s1);
  border:1px solid var(--border);
  border-radius:14px;
  padding:15px;
}
.credit-label{
  font-family:'JetBrains Mono',monospace;
  font-size:8px;
  font-weight:900;
  letter-spacing:.13em;
  color:var(--text2);
  text-transform:uppercase;
}
.credit-val{
  font-family:'Instrument Serif',serif;
  font-size:32px;
  font-weight:900;
  margin-top:5px;
}
.credit-form{
  display:grid;
  grid-template-columns:1.1fr .8fr .6fr .6fr .8fr auto;
  gap:8px;
  align-items:end;
}
.credit-form label{
  font-family:'JetBrains Mono',monospace;
  font-size:8px;
  font-weight:900;
  color:var(--text2);
  letter-spacing:.1em;
  text-transform:uppercase;
}
.credit-form input,.credit-form select{
  width:100%;
  margin-top:5px;
}
.credit-cards-list{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
}
.credit-card-ui{
  min-height:190px;
  border-radius:18px;
  padding:18px;
  background:
    radial-gradient(circle at 85% 10%,rgba(91,127,255,.22),transparent 38%),
    linear-gradient(135deg,rgba(15,23,42,.98),rgba(8,13,24,.98));
  border:1px solid rgba(91,127,255,.22);
  position:relative;
  overflow:hidden;
}
.credit-card-ui:before{
  content:'';
  position:absolute;
  inset:auto -80px -120px auto;
  width:240px;
  height:240px;
  background:radial-gradient(circle,rgba(0,229,160,.14),transparent 70%);
}
.credit-card-brand{
  font-family:'Syne',sans-serif;
  font-size:19px;
  font-weight:900;
  color:#fff;
  position:relative;
}
.credit-card-number{
  font-family:'JetBrains Mono',monospace;
  color:#aeb9d8;
  margin-top:34px;
  font-size:12px;
  letter-spacing:.12em;
  position:relative;
}
.credit-card-row{
  display:flex;
  justify-content:space-between;
  gap:10px;
  margin-top:22px;
  position:relative;
}
.credit-card-mini-label{
  font-family:'JetBrains Mono',monospace;
  font-size:8px;
  color:#7e8caf;
  text-transform:uppercase;
  letter-spacing:.1em;
}
.credit-card-mini-val{
  font-family:'Instrument Serif',serif;
  font-size:20px;
  font-weight:900;
  margin-top:2px;
}
.credit-card-actions{
  display:flex;
  gap:6px;
  flex-wrap:wrap;
  margin-top:14px;
  position:relative;
}
.invoice-list{
  display:flex;
  flex-direction:column;
  gap:10px;
}
.invoice-item{
  background:var(--s2);
  border:1px solid var(--border);
  border-radius:12px;
  padding:12px;
  display:grid;
  grid-template-columns:1fr auto;
  gap:10px;
  align-items:center;
}
.invoice-title{
  font-family:'Syne',sans-serif;
  font-size:14px;
  font-weight:900;
  color:#f8fbff;
}
.invoice-meta{
  font-family:'JetBrains Mono',monospace;
  font-size:10px;
  color:var(--text2);
  margin-top:4px;
}
.invoice-value{
  font-family:'Instrument Serif',serif;
  font-size:24px;
  font-weight:900;
}
.credit-progress{
  height:8px;
  background:var(--s3);
  border-radius:999px;
  overflow:hidden;
  margin-top:12px;
}
.credit-progress-fill{
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg,var(--danger),var(--warn));
}
@media(max-width:1150px){
  .credit-grid,.credit-cards-list{grid-template-columns:1fr}
  .credit-form{grid-template-columns:1fr 1fr}
}


/* === v25 PARCELAMENTOS === */
.installment-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:12px;
  margin-bottom:14px;
}
.installment-kpi{
  background:var(--s1);
  border:1px solid var(--border);
  border-radius:14px;
  padding:15px;
}
.installment-label{
  font-family:'JetBrains Mono',monospace;
  font-size:8px;
  font-weight:900;
  color:var(--text2);
  letter-spacing:.13em;
  text-transform:uppercase;
}
.installment-val{
  font-family:'Instrument Serif',serif;
  font-size:31px;
  font-weight:900;
  margin-top:5px;
}
.installment-form{
  display:grid;
  grid-template-columns:1.2fr .8fr .6fr .8fr .8fr 1fr auto;
  gap:8px;
  align-items:end;
}
.installment-form label{
  font-family:'JetBrains Mono',monospace;
  font-size:8px;
  font-weight:900;
  color:var(--text2);
  letter-spacing:.1em;
  text-transform:uppercase;
}
.installment-form input,.installment-form select{
  width:100%;
  margin-top:5px;
}
.installment-list{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
}
.installment-item{
  background:
    radial-gradient(circle at 90% 10%,rgba(255,186,8,.12),transparent 35%),
    rgba(8,13,24,.96);
  border:1px solid rgba(255,186,8,.24);
  border-radius:16px;
  padding:15px;
  position:relative;
  overflow:hidden;
}
.installment-name{
  font-family:'Syne',sans-serif;
  font-size:17px;
  font-weight:900;
  color:#f8fbff;
}
.installment-meta{
  margin-top:6px;
  font-family:'JetBrains Mono',monospace;
  font-size:10px;
  color:#aeb9d8;
  line-height:1.55;
}
.installment-main{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:flex-start;
}
.installment-price{
  font-family:'Instrument Serif',serif;
  font-size:27px;
  font-weight:900;
  color:var(--warn);
  text-align:right;
}
.installment-progress{
  height:8px;
  background:var(--s3);
  border-radius:999px;
  overflow:hidden;
  margin-top:12px;
}
.installment-progress-fill{
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg,var(--warn),var(--accent));
}
.installment-actions{
  display:flex;
  gap:6px;
  flex-wrap:wrap;
  margin-top:12px;
}
.installment-timeline{
  display:grid;
  grid-template-columns:repeat(6,1fr);
  gap:8px;
  margin-top:12px;
}
.installment-dot{
  background:var(--s2);
  border:1px solid var(--border);
  border-radius:10px;
  padding:8px;
  text-align:center;
}
.installment-dot.paid{
  border-color:rgba(0,229,160,.28);
  background:rgba(0,229,160,.07);
}
.installment-dot.pending{
  border-color:rgba(255,186,8,.28);
  background:rgba(255,186,8,.06);
}
.installment-dot-num{
  font-family:'JetBrains Mono',monospace;
  font-size:9px;
  font-weight:900;
}
.installment-dot-val{
  font-family:'Instrument Serif',serif;
  font-size:16px;
  font-weight:900;
  margin-top:2px;
}
@media(max-width:1150px){
  .installment-grid,.installment-list{grid-template-columns:1fr}
  .installment-form{grid-template-columns:1fr 1fr}
  .installment-timeline{grid-template-columns:repeat(3,1fr)}
}


/* === v26 METAS FINANCEIRAS === */
.goals-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:12px;
  margin-bottom:14px;
}
.goal-kpi{
  background:var(--s1);
  border:1px solid var(--border);
  border-radius:14px;
  padding:15px;
}
.goal-label{
  font-family:'JetBrains Mono',monospace;
  font-size:8px;
  font-weight:900;
  color:var(--text2);
  letter-spacing:.13em;
  text-transform:uppercase;
}
.goal-val{
  font-family:'Instrument Serif',serif;
  font-size:31px;
  font-weight:900;
  margin-top:5px;
}
.goal-form{
  display:grid;
  grid-template-columns:1.3fr .8fr .8fr .8fr 1fr auto;
  gap:8px;
  align-items:end;
}
.goal-form label{
  font-family:'JetBrains Mono',monospace;
  font-size:8px;
  font-weight:900;
  color:var(--text2);
  letter-spacing:.1em;
  text-transform:uppercase;
}
.goal-form input,.goal-form select{width:100%;margin-top:5px}
.goal-list{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:14px;
}
.goal-card{
  background:
    radial-gradient(circle at 90% 8%,rgba(0,229,160,.12),transparent 34%),
    rgba(8,13,24,.96);
  border:1px solid rgba(0,229,160,.20);
  border-radius:18px;
  padding:18px;
  position:relative;
  overflow:hidden;
}
.goal-card.carro{border-color:rgba(91,127,255,.24);background:radial-gradient(circle at 90% 8%,rgba(91,127,255,.14),transparent 34%),rgba(8,13,24,.96)}
.goal-card.reserva{border-color:rgba(0,229,160,.26)}
.goal-card.casa{border-color:rgba(255,186,8,.26);background:radial-gradient(circle at 90% 8%,rgba(255,186,8,.12),transparent 34%),rgba(8,13,24,.96)}
.goal-card.outro{border-color:rgba(178,107,255,.26);background:radial-gradient(circle at 90% 8%,rgba(178,107,255,.13),transparent 34%),rgba(8,13,24,.96)}
.goal-top{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:flex-start;
}
.goal-name{
  font-family:'Syne',sans-serif;
  font-size:20px;
  font-weight:900;
  color:#f8fbff;
}
.goal-type{
  margin-top:5px;
  display:inline-flex;
  padding:4px 9px;
  border-radius:999px;
  background:rgba(0,229,160,.10);
  color:var(--accent);
  border:1px solid rgba(0,229,160,.20);
  font-family:'JetBrains Mono',monospace;
  font-size:9px;
  font-weight:900;
}
.goal-percent{
  font-family:'Instrument Serif',serif;
  font-size:42px;
  line-height:1;
  font-weight:900;
}
.goal-values{
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  gap:10px;
  margin-top:16px;
}
.goal-mini{
  background:rgba(255,255,255,.025);
  border:1px solid var(--border);
  border-radius:12px;
  padding:10px;
}
.goal-mini-label{
  font-family:'JetBrains Mono',monospace;
  font-size:8px;
  color:var(--text2);
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.1em;
}
.goal-mini-val{
  font-family:'Instrument Serif',serif;
  font-size:22px;
  font-weight:900;
  margin-top:4px;
}
.goal-progress{
  height:12px;
  background:var(--s3);
  border-radius:999px;
  overflow:hidden;
  margin-top:16px;
  border:1px solid rgba(255,255,255,.04);
}
.goal-progress-fill{
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg,var(--accent),var(--blue));
  width:0%;
}
.goal-note{
  margin-top:10px;
  font-family:'JetBrains Mono',monospace;
  font-size:10px;
  color:#aeb9d8;
  line-height:1.55;
}
.goal-actions{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:13px;
}
.goal-contribution{
  display:grid;
  grid-template-columns:1fr .8fr auto;
  gap:8px;
  margin-top:12px;
}
.goal-contribution input{width:100%}
@media(max-width:1150px){
  .goals-grid,.goal-list{grid-template-columns:1fr}
  .goal-form{grid-template-columns:1fr 1fr}
  .goal-values{grid-template-columns:1fr}
  .goal-contribution{grid-template-columns:1fr}
}


/* === v27 DASHBOARD EXECUTIVO PREMIUM === */
.premium-dashboard-grid{
  display:grid;
  grid-template-columns:1.15fr .85fr;
  gap:14px;
}
.premium-chart-box{
  background:rgba(8,13,24,.96);
  border:1px solid var(--border);
  border-radius:16px;
  padding:16px;
  min-height:330px;
  position:relative;
  overflow:hidden;
}
.premium-chart-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px;
}
.premium-chart-title{
  font-family:'Syne',sans-serif;
  font-size:17px;
  font-weight:900;
  color:#f8fbff;
}
.premium-chart-sub{
  font-family:'JetBrains Mono',monospace;
  font-size:10px;
  color:#9ba7c7;
  margin-top:4px;
  line-height:1.5;
}
.premium-chart-total{
  text-align:right;
  font-family:'Instrument Serif',serif;
  font-size:28px;
  font-weight:900;
}
.premium-canvas{
  width:100%;
  height:245px;
  background:rgba(255,255,255,.012);
  border:1px solid var(--border);
  border-radius:14px;
}
.premium-legend{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:10px;
}
.premium-legend span{
  font-family:'JetBrains Mono',monospace;
  font-size:10px;
  font-weight:800;
  color:#aeb9d8;
  background:var(--s2);
  border:1px solid var(--border);
  border-radius:999px;
  padding:5px 9px;
}
.premium-dot{
  display:inline-block;
  width:8px;
  height:8px;
  border-radius:50%;
  margin-right:5px;
}
.finance-map-list{
  display:flex;
  flex-direction:column;
  gap:10px;
}
.finance-map-row{
  display:grid;
  grid-template-columns:110px 1fr 78px;
  align-items:center;
  gap:10px;
}
.finance-map-name{
  font-family:'JetBrains Mono',monospace;
  font-size:11px;
  color:#dbe4ff;
  font-weight:800;
}
.finance-map-track{
  height:8px;
  background:var(--s3);
  border-radius:999px;
  overflow:hidden;
}
.finance-map-fill{
  height:100%;
  border-radius:999px;
}
.finance-map-val{
  text-align:right;
  font-family:'Instrument Serif',serif;
  font-size:18px;
  font-weight:900;
}
.executive-insight-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:12px;
}
.executive-insight-card{
  background:rgba(8,13,24,.96);
  border:1px solid var(--border);
  border-radius:14px;
  padding:15px;
}
.executive-insight-label{
  font-family:'JetBrains Mono',monospace;
  font-size:8px;
  font-weight:900;
  color:var(--text2);
  letter-spacing:.13em;
  text-transform:uppercase;
}
.executive-insight-val{
  font-family:'Instrument Serif',serif;
  font-size:30px;
  font-weight:900;
  margin-top:6px;
}
@media(max-width:1150px){
  .premium-dashboard-grid,.executive-insight-grid{grid-template-columns:1fr}
}


/* === v28 SISTEMA DE ASSINATURAS === */
.subs-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:12px;
  margin-bottom:14px;
}
.subs-kpi{
  background:var(--s1);
  border:1px solid var(--border);
  border-radius:14px;
  padding:15px;
}
.subs-label{
  font-family:'JetBrains Mono',monospace;
  font-size:8px;
  font-weight:900;
  color:var(--text2);
  letter-spacing:.13em;
  text-transform:uppercase;
}
.subs-val{
  font-family:'Instrument Serif',serif;
  font-size:31px;
  font-weight:900;
  margin-top:5px;
}
.subs-form{
  display:grid;
  grid-template-columns:1.2fr .8fr .6fr .8fr .8fr 1fr auto;
  gap:8px;
  align-items:end;
}
.subs-form label{
  font-family:'JetBrains Mono',monospace;
  font-size:8px;
  font-weight:900;
  color:var(--text2);
  letter-spacing:.1em;
  text-transform:uppercase;
}
.subs-form input,.subs-form select{
  width:100%;
  margin-top:5px;
}
.subs-list{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
}
.subs-card{
  background:
    radial-gradient(circle at 90% 10%,rgba(178,107,255,.13),transparent 36%),
    rgba(8,13,24,.96);
  border:1px solid rgba(178,107,255,.24);
  border-radius:17px;
  padding:16px;
  position:relative;
  overflow:hidden;
}
.subs-card.critico{
  border-color:rgba(255,51,85,.28);
  background:radial-gradient(circle at 90% 10%,rgba(255,51,85,.13),transparent 36%),rgba(8,13,24,.96);
}
.subs-card.ok{
  border-color:rgba(0,229,160,.24);
  background:radial-gradient(circle at 90% 10%,rgba(0,229,160,.13),transparent 36%),rgba(8,13,24,.96);
}
.subs-top{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:flex-start;
}
.subs-name{
  font-family:'Syne',sans-serif;
  font-size:18px;
  font-weight:900;
  color:#f8fbff;
}
.subs-category{
  display:inline-flex;
  margin-top:6px;
  padding:4px 9px;
  border-radius:999px;
  background:rgba(178,107,255,.12);
  border:1px solid rgba(178,107,255,.22);
  color:var(--purple);
  font-family:'JetBrains Mono',monospace;
  font-size:9px;
  font-weight:900;
}
.subs-price{
  font-family:'Instrument Serif',serif;
  font-size:30px;
  font-weight:900;
  color:var(--purple);
  text-align:right;
}
.subs-meta{
  margin-top:10px;
  font-family:'JetBrains Mono',monospace;
  font-size:10px;
  color:#aeb9d8;
  line-height:1.55;
}
.subs-actions{
  display:flex;
  gap:6px;
  flex-wrap:wrap;
  margin-top:12px;
}
.subs-months{
  display:grid;
  grid-template-columns:repeat(6,1fr);
  gap:8px;
  margin-top:12px;
}
.subs-month{
  background:rgba(255,255,255,.025);
  border:1px solid var(--border);
  border-radius:10px;
  padding:8px;
  text-align:center;
}
.subs-month.active{
  border-color:rgba(178,107,255,.30);
  background:rgba(178,107,255,.06);
}
.subs-month-name{
  font-family:'JetBrains Mono',monospace;
  font-size:8px;
  font-weight:900;
  color:var(--text2);
}
.subs-month-val{
  font-family:'Instrument Serif',serif;
  font-size:16px;
  font-weight:900;
  margin-top:2px;
}
@media(max-width:1150px){
  .subs-grid,.subs-list{grid-template-columns:1fr}
  .subs-form{grid-template-columns:1fr 1fr}
  .subs-months{grid-template-columns:repeat(3,1fr)}
}


/* === v29 INVESTIMENTOS === */
.invest-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:12px;
  margin-bottom:14px;
}
.invest-kpi{
  background:var(--s1);
  border:1px solid var(--border);
  border-radius:14px;
  padding:15px;
}
.invest-label{
  font-family:'JetBrains Mono',monospace;
  font-size:8px;
  font-weight:900;
  color:var(--text2);
  letter-spacing:.13em;
  text-transform:uppercase;
}
.invest-val{
  font-family:'Instrument Serif',serif;
  font-size:31px;
  font-weight:900;
  margin-top:5px;
}
.invest-form{
  display:grid;
  grid-template-columns:.8fr 1fr .7fr .8fr .8fr .8fr 1fr auto;
  gap:8px;
  align-items:end;
}
.invest-form label{
  font-family:'JetBrains Mono',monospace;
  font-size:8px;
  font-weight:900;
  color:var(--text2);
  letter-spacing:.1em;
  text-transform:uppercase;
}
.invest-form input,.invest-form select{
  width:100%;
  margin-top:5px;
}
.invest-list{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
}
.invest-card{
  background:
    radial-gradient(circle at 90% 10%,rgba(0,229,160,.12),transparent 36%),
    rgba(8,13,24,.96);
  border:1px solid rgba(0,229,160,.22);
  border-radius:17px;
  padding:16px;
  position:relative;
  overflow:hidden;
}
.invest-card.loss{
  border-color:rgba(255,51,85,.28);
  background:radial-gradient(circle at 90% 10%,rgba(255,51,85,.12),transparent 36%),rgba(8,13,24,.96);
}
.invest-top{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:flex-start;
}
.invest-ticker{
  font-family:'Syne',sans-serif;
  font-size:19px;
  font-weight:900;
  color:#f8fbff;
}
.invest-type{
  display:inline-flex;
  margin-top:6px;
  padding:4px 9px;
  border-radius:999px;
  background:rgba(0,229,160,.10);
  border:1px solid rgba(0,229,160,.20);
  color:var(--accent);
  font-family:'JetBrains Mono',monospace;
  font-size:9px;
  font-weight:900;
}
.invest-return{
  font-family:'Instrument Serif',serif;
  font-size:34px;
  font-weight:900;
  text-align:right;
}
.invest-values{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin-top:14px;
}
.invest-mini{
  background:rgba(255,255,255,.025);
  border:1px solid var(--border);
  border-radius:12px;
  padding:10px;
}
.invest-mini-label{
  font-family:'JetBrains Mono',monospace;
  font-size:8px;
  font-weight:900;
  color:var(--text2);
  letter-spacing:.1em;
  text-transform:uppercase;
}
.invest-mini-val{
  font-family:'Instrument Serif',serif;
  font-size:22px;
  font-weight:900;
  margin-top:4px;
}
.invest-actions{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:13px;
}
.invest-distribution{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.invest-bar-row{
  display:grid;
  grid-template-columns:90px 1fr 80px;
  align-items:center;
  gap:10px;
  margin:10px 0;
}
.invest-bar-name{
  font-family:'JetBrains Mono',monospace;
  font-size:11px;
  color:#dbe4ff;
  font-weight:800;
}
.invest-bar-track{
  height:8px;
  background:var(--s3);
  border-radius:999px;
  overflow:hidden;
}
.invest-bar-fill{
  height:100%;
  border-radius:999px;
}
.invest-bar-val{
  text-align:right;
  font-family:'Instrument Serif',serif;
  font-size:18px;
  font-weight:900;
}
@media(max-width:1150px){
  .invest-grid,.invest-list,.invest-distribution{grid-template-columns:1fr}
  .invest-form{grid-template-columns:1fr 1fr}
}



/* === v32 MODO FAMÍLIA === */
.family-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}
.family-title{font-family:'Syne',sans-serif;font-size:22px;font-weight:900;color:#f8fbff}
.family-sub{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--text2);margin-top:4px;line-height:1.5}
.family-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:14px}
.family-kpi{background:var(--s1);border:1px solid var(--border);border-radius:14px;padding:15px;position:relative;overflow:hidden}
.family-kpi:before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.014),transparent 45%);pointer-events:none}
.family-kpi-label{font-family:'JetBrains Mono',monospace;font-size:8px;font-weight:900;color:var(--text2);letter-spacing:.13em;text-transform:uppercase}
.family-kpi-val{font-family:'Instrument Serif',serif;font-size:31px;font-weight:900;margin-top:5px;line-height:1}
.family-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:14px}
.family-member-card{background:rgba(8,13,24,.96);border:1px solid var(--border);border-radius:16px;padding:15px;position:relative;overflow:hidden;transition:.2s}
.family-member-card:hover{border-color:rgba(0,229,160,.25);transform:translateY(-2px);box-shadow:0 12px 36px rgba(0,0,0,.28)}
.family-member-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.family-avatar{width:42px;height:42px;border-radius:13px;display:flex;align-items:center;justify-content:center;font-size:21px;background:rgba(0,229,160,.10);border:1px solid rgba(0,229,160,.18);flex-shrink:0}
.family-member-name{font-family:'Syne',sans-serif;font-size:17px;font-weight:900;color:#f8fbff}
.family-member-role{font-family:'JetBrains Mono',monospace;font-size:9px;color:var(--text2);margin-top:3px;text-transform:uppercase;letter-spacing:.08em}
.family-member-saldo{font-family:'Instrument Serif',serif;font-size:30px;font-weight:900;margin-top:14px}
.family-mini-row{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}
.family-mini{background:rgba(255,255,255,.025);border:1px solid var(--border);border-radius:10px;padding:9px}
.family-mini-label{font-family:'JetBrains Mono',monospace;font-size:8px;color:var(--text2);letter-spacing:.08em;text-transform:uppercase}
.family-mini-val{font-family:'Instrument Serif',serif;font-size:19px;font-weight:900;margin-top:3px}
.family-progress{height:7px;background:var(--s3);border-radius:999px;overflow:hidden;margin-top:12px}
.family-progress-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--accent),var(--blue));width:0%}
.family-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}
.family-form{display:grid;grid-template-columns:1.1fr .8fr .7fr .7fr .7fr .7fr auto;gap:8px;align-items:end}
.family-form label{font-family:'JetBrains Mono',monospace;font-size:8px;font-weight:900;color:var(--text2);letter-spacing:.1em;text-transform:uppercase}
.family-form input,.family-form select{width:100%;margin-top:5px}
.family-table-wrap{overflow:auto;border-radius:12px;border:1px solid var(--border);background:rgba(3,5,10,.15)}
.family-table{width:100%;border-collapse:collapse;min-width:850px;background:transparent}
.family-ai-box{background:rgba(0,229,160,.045);border:1px solid rgba(0,229,160,.13);border-radius:12px;padding:14px;font-family:'JetBrains Mono',monospace;font-size:12px;line-height:1.75;color:#c8d4f4}
.family-ai-box strong{color:var(--accent)}
@media(max-width:1150px){.family-kpis,.family-grid{grid-template-columns:1fr}.family-form{grid-template-columns:1fr 1fr}}


/* === v34 PULSE SCORE FINANCEIRO === */
.score-hero{
  display:grid;
  grid-template-columns:340px 1fr;
  gap:14px;
  align-items:stretch;
}
.score-main-card{
  background:
    radial-gradient(circle at 50% 20%,rgba(0,229,160,.16),transparent 42%),
    linear-gradient(145deg,rgba(8,13,24,.98),rgba(12,18,32,.98));
  border:1px solid rgba(0,229,160,.22);
  border-radius:20px;
  padding:22px;
  text-align:center;
  position:relative;
  overflow:hidden;
}
.score-main-card.excelente{border-color:rgba(0,229,160,.45);box-shadow:0 0 40px rgba(0,229,160,.10)}
.score-main-card.bom{border-color:rgba(91,127,255,.38);box-shadow:0 0 40px rgba(91,127,255,.08)}
.score-main-card.atencao{border-color:rgba(255,186,8,.45);box-shadow:0 0 40px rgba(255,186,8,.08)}
.score-main-card.risco{border-color:rgba(255,51,85,.50);box-shadow:0 0 40px rgba(255,51,85,.10)}
.score-ring{
  width:230px;
  height:230px;
  margin:8px auto 14px;
  border-radius:50%;
  background:conic-gradient(var(--score-color,var(--accent)) calc(var(--score-pct,0)*1%), rgba(255,255,255,.055) 0);
  display:flex;
  align-items:center;
  justify-content:center;
  position:relative;
  box-shadow:inset 0 0 26px rgba(0,0,0,.35),0 0 34px rgba(0,229,160,.10);
}
.score-ring:after{
  content:'';
  position:absolute;
  inset:18px;
  background:var(--s1);
  border-radius:50%;
  border:1px solid var(--border);
}
.score-number{
  position:relative;
  z-index:1;
  font-family:'Instrument Serif',serif;
  font-size:64px;
  font-weight:900;
  line-height:1;
  color:#fff;
}
.score-label-mini{
  position:relative;
  z-index:1;
  font-family:'JetBrains Mono',monospace;
  font-size:10px;
  font-weight:900;
  letter-spacing:.16em;
  color:var(--text2);
  margin-top:6px;
}
.score-classification{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  padding:7px 13px;
  border-radius:999px;
  background:rgba(0,229,160,.10);
  border:1px solid rgba(0,229,160,.22);
  color:var(--score-color,var(--accent));
  font-family:'JetBrains Mono',monospace;
  font-size:11px;
  font-weight:900;
  letter-spacing:.08em;
}
.score-kpis{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
  height:100%;
}
.score-kpi{
  background:var(--s1);
  border:1px solid var(--border);
  border-radius:15px;
  padding:15px;
}
.score-kpi-label{
  font-family:'JetBrains Mono',monospace;
  font-size:8px;
  font-weight:900;
  letter-spacing:.13em;
  color:var(--text2);
  text-transform:uppercase;
}
.score-kpi-val{
  font-family:'Instrument Serif',serif;
  font-size:30px;
  font-weight:900;
  margin-top:7px;
}
.score-factor-list{display:flex;flex-direction:column;gap:10px}
.score-factor{
  background:var(--s2);
  border:1px solid var(--border);
  border-radius:13px;
  padding:12px;
}
.score-factor-top{
  display:flex;
  justify-content:space-between;
  gap:10px;
  align-items:center;
}
.score-factor-name{
  font-family:'Syne',sans-serif;
  font-size:13px;
  font-weight:900;
  color:#f8fbff;
}
.score-factor-points{
  font-family:'JetBrains Mono',monospace;
  font-size:11px;
  font-weight:900;
}
.score-factor-track{
  height:7px;
  background:var(--s3);
  border-radius:999px;
  overflow:hidden;
  margin-top:9px;
}
.score-factor-fill{
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg,var(--score-color,var(--accent)),var(--blue));
}
.score-factor-desc{
  margin-top:7px;
  font-family:'JetBrains Mono',monospace;
  font-size:10px;
  line-height:1.5;
  color:#aeb9d8;
}
.score-recommendation{
  background:rgba(0,229,160,.045);
  border:1px solid rgba(0,229,160,.13);
  border-radius:12px;
  padding:13px;
  font-family:'JetBrains Mono',monospace;
  font-size:12px;
  line-height:1.7;
  color:#c9d5f4;
  margin-bottom:10px;
}
.score-recommendation strong{color:var(--accent)}
.score-history-bars{
  height:190px;
  display:flex;
  align-items:flex-end;
  gap:9px;
  padding:12px;
  border:1px solid var(--border);
  border-radius:13px;
  background:rgba(255,255,255,.015);
}
.score-history-col{
  flex:1;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  align-items:center;
  gap:6px;
  height:100%;
}
.score-history-fill{
  width:100%;
  min-height:4px;
  border-radius:6px 6px 0 0;
  background:linear-gradient(to top,var(--score-color,var(--accent)),rgba(91,127,255,.45));
}
.score-history-label{
  font-family:'JetBrains Mono',monospace;
  font-size:8px;
  color:var(--muted);
}
@media(max-width:1100px){.score-hero,.score-kpis{grid-template-columns:1fr}.score-ring{width:210px;height:210px}}

/* === v35 CENTRO PULSE SCORE COMPLETO === */
.score-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:14px}
.score-action-btn{border:1px solid rgba(0,229,160,.24);background:rgba(0,229,160,.07);color:var(--accent);border-radius:999px;padding:8px 12px;font-family:'JetBrains Mono',monospace;font-size:10px;font-weight:900;cursor:pointer;transition:.2s}
.score-action-btn:hover{background:rgba(0,229,160,.14);transform:translateY(-1px);box-shadow:0 0 20px rgba(0,229,160,.10)}
.score-action-btn.warn-btn{border-color:rgba(255,186,8,.28);background:rgba(255,186,8,.08);color:var(--warn)}
.score-action-btn.blue-btn{border-color:rgba(91,127,255,.28);background:rgba(91,127,255,.08);color:var(--blue)}
.score-detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.score-detail-card{background:var(--s2);border:1px solid var(--border);border-radius:14px;padding:14px;position:relative;overflow:hidden}
.score-detail-card:before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--score-color,var(--accent));opacity:.8}
.score-detail-title{font-family:'Syne',sans-serif;font-size:14px;font-weight:900;color:#f8fbff}
.score-detail-points{font-family:'Instrument Serif',serif;font-size:30px;font-weight:900;margin-top:6px;color:var(--score-color,var(--accent))}
.score-detail-desc{font-family:'JetBrains Mono',monospace;font-size:10px;line-height:1.55;color:#aeb9d8;margin-top:5px}
.score-area-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.score-area-card{background:rgba(8,13,24,.96);border:1px solid var(--border);border-radius:14px;padding:14px}
.score-area-name{font-family:'JetBrains Mono',monospace;font-size:8px;font-weight:900;letter-spacing:.12em;color:var(--text2);text-transform:uppercase}
.score-area-val{font-family:'Instrument Serif',serif;font-size:30px;font-weight:900;margin-top:5px}
.score-area-track{height:7px;background:var(--s3);border-radius:99px;overflow:hidden;margin-top:10px}
.score-area-fill{height:100%;border-radius:99px;background:linear-gradient(90deg,var(--score-color,var(--accent)),var(--blue))}
.score-ai-box{background:linear-gradient(135deg,rgba(0,229,160,.06),rgba(91,127,255,.04));border:1px solid rgba(0,229,160,.16);border-radius:14px;padding:15px;font-family:'JetBrains Mono',monospace;font-size:12px;line-height:1.75;color:#dbe4ff}
.score-ai-box strong{color:var(--accent)}
.score-scenario{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;background:var(--s2);border:1px solid var(--border);border-radius:13px;padding:12px;margin-top:10px}
.score-scenario-title{font-family:'Syne',sans-serif;font-size:13px;font-weight:900;color:#fff}
.score-scenario-sub{font-family:'JetBrains Mono',monospace;font-size:10px;color:var(--text2);margin-top:3px}
.score-scenario-delta{font-family:'Instrument Serif',serif;font-size:26px;font-weight:900;text-align:right}
.score-family-ranking{display:flex;flex-direction:column;gap:9px}
.score-family-row{display:grid;grid-template-columns:38px 1fr 70px;gap:10px;align-items:center;background:var(--s2);border:1px solid var(--border);border-radius:12px;padding:10px}
.score-family-avatar{width:34px;height:34px;border-radius:10px;background:rgba(0,229,160,.10);display:flex;align-items:center;justify-content:center;font-size:18px}
.score-family-name{font-family:'Syne',sans-serif;font-size:13px;font-weight:900;color:#f8fbff}
.score-family-sub{font-family:'JetBrains Mono',monospace;font-size:9px;color:var(--text2);margin-top:2px}
.score-family-score{font-family:'Instrument Serif',serif;font-size:25px;font-weight:900;text-align:right;color:var(--score-color,var(--accent))}
.score-modal-list{display:flex;flex-direction:column;gap:10px;margin-top:12px}
@media(max-width:1100px){.score-detail-grid,.score-area-grid{grid-template-columns:1fr}}



/* === v36 PULSE CORE + INVESTIMENTOS INTEGRADOS === */
.core-hero{display:grid;grid-template-columns:1.3fr .7fr;gap:14px;margin-bottom:14px}.core-card{background:linear-gradient(145deg,rgba(0,229,160,.075),rgba(8,13,24,.96));border:1px solid rgba(0,229,160,.18);border-radius:18px;padding:18px;position:relative;overflow:hidden}.core-card:before{content:'';position:absolute;right:-70px;top:-90px;width:230px;height:230px;background:radial-gradient(circle,rgba(0,229,160,.18),transparent 70%)}.core-title{font-family:'Syne',sans-serif;font-size:22px;font-weight:900;color:#f8fbff}.core-sub{font-family:'JetBrains Mono',monospace;font-size:11px;color:#aeb9d8;line-height:1.6;margin-top:6px;max-width:780px}.core-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:14px}.core-kpi{background:var(--s1);border:1px solid var(--border);border-radius:14px;padding:15px}.core-kpi-label{font-family:'JetBrains Mono',monospace;font-size:8px;font-weight:900;letter-spacing:.13em;color:var(--text2);text-transform:uppercase}.core-kpi-val{font-family:'Instrument Serif',serif;font-size:31px;font-weight:900;margin-top:5px}.core-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.core-flow-row{display:grid;grid-template-columns:84px 1fr 105px 105px 110px;gap:10px;align-items:center;padding:9px 0;border-bottom:1px solid var(--border);font-family:'JetBrains Mono',monospace;font-size:10px}.core-flow-row:last-child{border-bottom:none}.core-flow-head{color:var(--text2);font-size:8px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.core-meter{height:9px;background:var(--s3);border-radius:999px;overflow:hidden}.core-meter-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--accent),var(--blue))}.core-action{background:rgba(255,255,255,.025);border:1px solid var(--border);border-radius:12px;padding:12px;margin-bottom:9px}.core-action-title{font-family:'Syne',sans-serif;font-size:14px;font-weight:900;color:#f8fbff}.core-action-sub{font-family:'JetBrains Mono',monospace;font-size:10px;color:#aeb9d8;line-height:1.55;margin-top:4px}.core-pill{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:5px 10px;background:rgba(0,229,160,.10);border:1px solid rgba(0,229,160,.20);color:var(--accent);font-family:'JetBrains Mono',monospace;font-size:9px;font-weight:900}.invest-core-box{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:12px}.invest-core-mini{background:rgba(255,255,255,.025);border:1px solid var(--border);border-radius:12px;padding:12px}.invest-core-label{font-family:'JetBrains Mono',monospace;font-size:8px;font-weight:900;color:var(--text2);letter-spacing:.1em;text-transform:uppercase}.invest-core-val{font-family:'Instrument Serif',serif;font-size:25px;font-weight:900;margin-top:4px}@media(max-width:1100px){.core-hero,.core-grid{grid-template-columns:1fr}.core-kpis,.invest-core-box{grid-template-columns:1fr 1fr}.core-flow-row{grid-template-columns:1fr 1fr;gap:5px}.core-flow-head{display:none}}


/* === LOGO PULSE FINANCEIRO OFICIAL === */
.pulse-logo-img{height:42px;width:auto;display:block;object-fit:contain;filter:drop-shadow(0 0 10px rgba(0,229,160,.10));}
.logo{min-width:210px;}
.auth-logo-img{height:82px;width:auto;display:block;object-fit:contain;margin:0 auto 18px;}
@media(max-width:980px){.pulse-logo-img{height:36px}.logo{min-width:auto}}


/* === v42 IA DIRETA + LAYOUT MAIS FINO === */
.va-panel{height:585px!important;}
.va-wave{height:36px!important;gap:3px!important;}
.va-wave span{width:3px!important;height:8px!important;}
@keyframes vaWave{0%,100%{height:5px;opacity:.35}50%{height:14px;opacity:.7}}
@keyframes vaWaveActive{from{height:7px}to{height:22px}}
.va-audio-line{padding:5px 14px!important;grid-template-columns:62px 1fr 32px!important;font-size:8px!important;}
.va-audio-line div{height:3px!important;}
.va-controls{padding:5px 14px!important;gap:6px!important;}
.va-ctrl-btn{width:28px!important;height:28px!important;border-radius:8px!important;font-size:12px!important;}
.va-select-mode{font-size:8px!important;gap:5px!important;}
.va-select-mode input{width:13px!important;height:13px!important;}
.va-mic-status{padding:4px 14px!important;font-size:8px!important;line-height:1.35!important;}
.va-mic-status button{padding:4px 8px!important;font-size:8px!important;}
.va-suggestions{padding:7px 14px!important;gap:6px!important;}
.va-suggestions button{padding:5px 9px!important;font-size:9px!important;}
.va-input-area{padding:9px 14px!important;grid-template-columns:38px 1fr 38px!important;gap:8px!important;}
.va-input-area input{padding:10px 12px!important;}
.va-messages{padding:12px 14px!important;}
.va-msg{margin-bottom:9px!important;line-height:1.55!important;}


/* PULSE Cloud status - v52.2 */
#pulseCloudStatusIndicator{
  min-width: 118px;
  justify-content:center;
  border-color: rgba(0,255,200,.35);
}
#pulseCloudStatusIndicator[data-state="ok"],
#pulseCloudStatusIndicator[data-state="ready"]{
  box-shadow: 0 0 0 1px rgba(0,255,200,.18), 0 0 18px rgba(0,255,200,.08);
}
#pulseCloudStatusIndicator[data-state="syncing"]{
  opacity:.88;
}
#pulseCloudStatusIndicator[data-state="error"],
#pulseCloudStatusIndicator[data-state="offline"],
#pulseCloudStatusIndicator[data-state="auth"]{
  border-color: rgba(255,75,115,.45);
}


/* PULSE Cloud status - v52.3 UX */
.pulse-cloud-status{
  min-width: 150px!important;
  font-size: 11px!important;
  letter-spacing: .03em;
  transition: all .2s ease;
}
.pulse-cloud-status[data-state="ok"]{
  border-color: rgba(0,255,200,.55)!important;
  color: #00f5c8!important;
  box-shadow: 0 0 0 1px rgba(0,255,200,.18), 0 0 22px rgba(0,255,200,.10)!important;
}
.pulse-cloud-status[data-state="syncing"],
.pulse-cloud-status[data-state="pending"]{
  border-color: rgba(255,195,0,.55)!important;
  color: #ffc300!important;
}
.pulse-cloud-status[data-state="syncing"]{
  animation: pulseCloudBlink 1.2s ease-in-out infinite;
}
.pulse-cloud-status[data-state="error"],
.pulse-cloud-status[data-state="offline"],
.pulse-cloud-status[data-state="auth"]{
  border-color: rgba(255,75,115,.55)!important;
  color: #ff4b73!important;
}
@keyframes pulseCloudBlink{
  0%,100%{opacity:1}
  50%{opacity:.62}
}
