
/* ============================================================
   UX POLISH V18 — legibilidade, densidade e hierarquia premium
   ============================================================ */
:root{
  --fc-surface-0:#07111f;
  --fc-surface-1:#0c1728;
  --fc-surface-2:#111f33;
  --fc-surface-3:#16263d;
  --fc-border-soft:rgba(148,163,184,.14);
  --fc-border-strong:rgba(148,163,184,.24);
  --fc-text-strong:#f8fafc;
  --fc-text-body:#dbe4ef;
  --fc-text-subtle:#9aabc0;
  --fc-blue:#6aa8ff;
  --fc-green:#49d6a5;
  --fc-red:#ff7f91;
}

/* Base: fim do microtexto */
html{font-size:16px!important}
body{font-size:15px!important;line-height:1.5!important;letter-spacing:-.005em!important}
.fc-root{color:var(--fc-text-body)!important}
.fc-root small{font-size:12px!important;line-height:1.45!important}
.fc-root input,.fc-root select,.fc-root textarea,.fc-root button{font-size:13px!important}
.fc-particles-3d{display:none!important}

/* Estrutura geral: mais foco, menos vazio e menos ruído */
.fc-root{background:var(--fc-surface-0)!important}
.fc-panel{margin-bottom:16px!important;border-radius:16px!important;border:1px solid var(--fc-border-soft)!important;background:linear-gradient(180deg,rgba(17,31,51,.92),rgba(12,23,40,.92))!important;box-shadow:0 12px 30px rgba(0,0,0,.10)!important}
.fc-panel-header,.fc-panel-head{min-height:64px!important;padding:18px 20px!important;border-bottom:1px solid rgba(148,163,184,.10)!important}
.fc-panel-header h2,.fc-panel-head h2,.fc-panel-title{font-size:16px!important;line-height:1.2!important;font-weight:750!important;letter-spacing:.02em!important;color:var(--fc-text-strong)!important}
.fc-panel-header svg,.fc-panel-head svg{width:17px!important;height:17px!important}

/* Sidebar */
.fc-side-brand{padding:0 12px 20px!important;margin-bottom:22px!important}
.fc-side-mark{width:48px!important;height:48px!important;font-size:17px!important;border-radius:13px!important}
.fc-side-brand b{font-size:15px!important;line-height:1.15!important}
.fc-side-brand span{font-size:10.5px!important;line-height:1.25!important;letter-spacing:.075em!important}
.fc-side-section{margin-bottom:19px!important}
.fc-side-section>span{font-size:10px!important;letter-spacing:.12em!important;margin:0 12px 7px!important}
.fc-side-section button,.fc-side-bottom button{min-height:46px!important;padding:0 14px!important;border-radius:10px!important;font-size:13.5px!important;font-weight:650!important;gap:11px!important}
.fc-side-section button i,.fc-side-bottom button i{font-size:14px!important;width:20px!important}
.fc-side-section button.active{box-shadow:0 8px 22px rgba(49,84,198,.24)!important}

/* Command bar */
.fc-v12-commandbar{min-height:60px!important;padding:10px 14px!important;border-radius:14px!important;margin-bottom:18px!important}
.fc-v12-brand small{font-size:10px!important}
.fc-v12-brand b{font-size:12.5px!important}
.fc-v12-command-actions button{min-height:38px!important;padding:0 12px!important;font-size:12.5px!important;border-radius:9px!important}
.fc-v13-avatar{width:29px!important;height:29px!important}

/* Visão geral: números importantes grandes, textos auxiliares legíveis */
.fc-header{padding-bottom:17px!important;margin-bottom:16px!important}
.fc-eyebrow{font-size:11px!important}
.fc-header h1{font-size:32px!important}
.fc-modern-subtitle{font-size:14px!important}
.fc-strip{gap:12px!important}
.fc-gauge{min-height:138px!important;padding:20px!important}
.fc-gauge-label span{font-size:11px!important}
.fc-gauge-value{font-size:32px!important;margin-top:15px!important}
.fc-gauge-clickable-hint{font-size:11.5px!important}
.fc-v22-summary-item{min-height:106px!important;padding:17px!important}
.fc-v22-summary-item span{font-size:10.5px!important}
.fc-v22-summary-item strong{font-size:23px!important}
.fc-v22-summary-item small{font-size:11.5px!important}

/* HOME premium */
.fc-premium-top h1{font-size:29px!important;line-height:1.15!important}
.fc-premium-top p{font-size:14px!important}
.fc-premium-eyebrow{font-size:10.5px!important}
.fc-premium-card{padding:18px!important;min-height:126px!important}
.fc-premium-card>span{font-size:10.5px!important}
.fc-premium-card>strong{font-size:27px!important;line-height:1.08!important}
.fc-premium-card>small{font-size:11.5px!important}
.fc-premium-panel-head span{font-size:10.5px!important}
.fc-premium-panel-head b{font-size:14px!important}
.fc-v11-main-metric span,.fc-v11-metric span{font-size:10.5px!important}
.fc-v11-main-metric b,.fc-v11-metric b{font-size:22px!important}
.fc-v11-main-metric small,.fc-v11-metric small{font-size:11.5px!important}

/* HOJE — refaz a hierarquia da tela mostrada no print */
.fc-today-hero{display:grid!important;grid-template-columns:minmax(0,1fr) 150px!important;align-items:center!important;gap:22px!important;padding:22px 20px!important;margin:0!important;border-radius:14px!important;background:linear-gradient(135deg,rgba(17,31,51,.96),rgba(19,34,55,.78))!important;border:1px solid rgba(106,168,255,.15)!important}
.fc-today-hero>div:first-child{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:5px!important}
.fc-today-hero>div:first-child>span{font-size:10.5px!important;font-weight:750!important;letter-spacing:.085em!important;color:#a8b8cc!important}
.fc-today-hero>div:first-child>strong{font-family:'Inter',system-ui,sans-serif!important;font-size:38px!important;line-height:1.05!important;font-weight:760!important;letter-spacing:-.035em!important;color:var(--fc-blue)!important;margin:2px 0 3px!important}
.fc-today-hero>div:first-child>small{font-size:13px!important;color:#a7b7ca!important}
.fc-today-score{min-height:84px!important;padding:14px 16px!important;border-radius:11px!important;display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:center!important;gap:4px!important}
.fc-today-score span{font-size:10px!important;letter-spacing:.08em!important}
.fc-today-score b{font-family:'Inter',system-ui,sans-serif!important;font-size:24px!important;line-height:1!important;font-weight:750!important}
.fc-period-switch{display:inline-flex!important;gap:5px!important;margin:12px 0 12px!important;padding:4px!important;border-radius:10px!important;background:rgba(7,17,31,.65)!important;border:1px solid var(--fc-border-soft)!important}
.fc-period-switch button{min-height:34px!important;padding:0 13px!important;font-size:12.5px!important;border-radius:7px!important}
.fc-today-kpis{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px!important;margin-top:0!important}
.fc-today-kpis>div{min-height:76px!important;padding:14px 15px!important;border:1px solid rgba(148,163,184,.12)!important;border-radius:11px!important;background:rgba(15,27,45,.58)!important}
.fc-today-kpis span{display:block!important;font-size:10.5px!important;font-weight:650!important;color:#92a5bd!important;margin-bottom:8px!important}
.fc-today-kpis b{font-family:'Inter',system-ui,sans-serif!important;font-size:18px!important;line-height:1.1!important;font-weight:720!important;color:#7db5ff!important}

/* Atividade: elimina o vão enorme entre descrição e valor */
.fc-activity-list{width:min(100%,1160px)!important;margin:0 auto!important;padding:2px 0 4px!important}
.fc-activity-head,.fc-activity-row{display:grid!important;grid-template-columns:112px minmax(330px,620px) 145px 40px 40px!important;justify-content:start!important;align-items:center!important;column-gap:14px!important}
.fc-activity-head{padding:0 13px 10px!important;border-bottom:1px solid rgba(148,163,184,.13)!important;color:#8295ad!important}
.fc-activity-head span{font-size:10px!important;font-weight:750!important;letter-spacing:.07em!important;text-transform:uppercase!important}
.fc-activity-row{min-height:68px!important;padding:10px 13px!important;margin:0!important;border-bottom:1px solid rgba(148,163,184,.09)!important;border-radius:10px!important;transition:background .16s ease,border-color .16s ease!important}
.fc-activity-row:hover{background:rgba(96,165,250,.045)!important;border-color:rgba(106,168,255,.15)!important}
.fc-activity-row>span:first-child{font-family:'Inter',system-ui,sans-serif!important;font-size:12.5px!important;font-weight:600!important;color:#7db5ff!important;font-variant-numeric:tabular-nums!important}
.fc-activity-row>div{min-width:0!important;display:flex!important;flex-direction:column!important;gap:3px!important}
.fc-activity-row>div>b{font-size:14px!important;line-height:1.25!important;font-weight:690!important;color:#edf3fb!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.fc-activity-row>div>small{font-size:12px!important;color:#95a6ba!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.fc-activity-row>strong{font-family:'Inter',system-ui,sans-serif!important;font-size:14px!important;font-weight:720!important;text-align:right!important;font-variant-numeric:tabular-nums!important;white-space:nowrap!important}
.fc-activity-row .fc-icon-btn{width:38px!important;height:38px!important;border-radius:9px!important}

/* Rankings */
.fc-ranking-grid{gap:14px!important}
.fc-ranking-grid>div{padding:16px!important;border-radius:12px!important}
.fc-ranking-grid>div>b{font-size:13.5px!important}
.fc-ranking-grid>div>div{min-height:38px!important;font-size:13px!important}
.fc-ranking-grid strong{font-size:13px!important}

/* Cartões: corrige microfontes vistas na tela de cartões */
.fc-card-grid-v8{gap:14px!important}
.fc-card-v8{padding:18px!important;border-radius:13px!important}
.fc-card-v8-head span{font-size:10px!important;letter-spacing:.075em!important}
.fc-card-v8-head h3{font-size:16px!important;margin-top:3px!important}
.fc-card-v8-head>b{font-size:20px!important}
.fc-card-v8-meta{min-height:40px!important;padding:8px 0!important;font-size:12.5px!important}
.fc-card-v8-meta span{font-size:12px!important;color:#95a6ba!important}
.fc-card-v8-meta strong{font-size:13px!important}
.fc-card-v8 summary{font-size:13px!important}

/* Editor de fatura / divisão */
.fc-card-head .fc-row-name{font-size:15px!important}
.fc-card-head-meta span{font-size:10.5px!important}
.fc-card-head-meta strong{font-size:18px!important}
.fc-card-meta-grid label>span{font-size:11px!important}
.fc-card-meta-grid input,.fc-card-meta-grid select{font-size:13px!important;min-height:39px!important}
.fc-ledger-editor-head{font-size:10.5px!important;padding:9px 8px!important}
.fc-ledger-editor-row{min-height:56px!important;padding:8px!important}
.fc-ledger-editor-row input,.fc-ledger-editor-row select{font-size:13px!important;min-height:38px!important}
.fc-ledger-editor-head.card,.fc-ledger-editor-row.card{grid-template-columns:minmax(250px,560px) 86px 210px 120px 78px 118px 38px!important;justify-content:start!important;gap:9px!important}
.fc-card-share-open{font-size:12.5px!important;min-height:38px!important;padding:0 13px!important}
.fc-share-item-btn{font-size:11.5px!important;min-height:35px!important;padding:0 10px!important}
.fc-share-item-details input{font-size:11px!important}
.fc-share-item-details small{font-size:10.5px!important}
.fc-share-item-summary b{font-size:12.5px!important}
.fc-share-item-summary span{font-size:11.5px!important}
.fc-planned-hint{font-size:12px!important}

/* Contas, fixas e listas editáveis */
.fc-row-name{font-size:14px!important}
.fc-list-total{font-size:15px!important}
.fc-subsection-head{font-size:13px!important}
.fc-flow-kpis>div{padding:15px!important;min-height:84px!important}
.fc-flow-kpis span{font-size:10.5px!important}
.fc-flow-kpis b{font-size:18px!important}
.fc-callout{font-size:12.5px!important;line-height:1.55!important;padding:13px 15px!important}

/* Calendário / histórico / inteligência */
.fc-calendar-month-title strong{font-size:16px!important}
.fc-calendar-month-title span{font-size:12px!important}
.fc-calendar-summary span{font-size:10.5px!important}.fc-calendar-summary strong{font-size:18px!important}
.fc-day>b{font-size:13px!important}.fc-day span,.fc-day strong,.fc-day em{font-size:11px!important}
.fc-history-row{font-size:13px!important;min-height:54px!important}
.fc-history-row b{font-size:13.5px!important}.fc-history-row small{font-size:11.5px!important}.fc-history-row strong{font-size:13px!important}
.fc-v14-hero h2{font-size:26px!important}.fc-v14-hero p{font-size:13px!important}.fc-v14-kicker{font-size:10.5px!important}
.fc-v14-card{padding:18px!important}.fc-v14-card h3{font-size:14px!important}.fc-v14-card p,.fc-v14-card small{font-size:12px!important}
.fc-v14-section-head span{font-size:10.5px!important}.fc-v14-actions button{font-size:12px!important;min-height:37px!important}.fc-v14-input{font-size:13px!important}
.fc-v14-row b,.fc-v14-diagnostic b,.fc-v14-timeline-row b{font-size:12.5px!important}
.fc-v14-row span,.fc-v14-row small,.fc-v14-diagnostic small,.fc-v14-timeline-row small,.fc-v14-timeline-row time{font-size:11.5px!important}
.fc-v14-month span{font-size:10.5px!important}.fc-v14-month b{font-size:13px!important}

/* Inputs, botões e foco */
.fc-root input,.fc-root select,.fc-root textarea{border-radius:9px!important}
.fc-root input:focus,.fc-root select:focus,.fc-root textarea:focus{outline:none!important;border-color:rgba(106,168,255,.48)!important;box-shadow:0 0 0 3px rgba(59,130,246,.08)!important}
.fc-icon-btn{min-width:38px!important;min-height:38px!important;border-radius:9px!important}
.fc-add-btn{min-height:40px!important;padding:0 14px!important;font-size:12.5px!important;border-radius:9px!important}

/* Desktop largo: evita que conteúdo tabular vire um deserto horizontal */
@media(min-width:1500px){
  .fc-activity-list{margin-left:0!important}
  .fc-ranking-grid{max-width:1180px!important}
}

@media(max-width:1180px){
  .fc-activity-list{width:100%!important}
  .fc-activity-head,.fc-activity-row{grid-template-columns:100px minmax(260px,1fr) 130px 38px 38px!important}
  .fc-ledger-editor-head.card,.fc-ledger-editor-row.card{grid-template-columns:minmax(210px,1fr) 80px 180px 110px 72px 110px 36px!important}
}

@media(max-width:820px){
  body{font-size:14.5px!important}
  .fc-today-hero{grid-template-columns:1fr!important;padding:18px!important}
  .fc-today-score{align-items:flex-start!important;min-height:70px!important;width:100%!important}
  .fc-today-hero>div:first-child>strong{font-size:34px!important}
  .fc-today-kpis{grid-template-columns:1fr 1fr!important}
  .fc-activity-head{display:none!important}
  .fc-activity-row{grid-template-columns:1fr auto 38px 38px!important;gap:8px!important;padding:12px!important;margin-bottom:8px!important;background:rgba(15,27,45,.46)!important}
  .fc-activity-row>span:first-child{grid-column:1!important;grid-row:2!important;font-size:11px!important}
  .fc-activity-row>div{grid-column:1!important;grid-row:1!important}
  .fc-activity-row>strong{grid-column:2!important;grid-row:1/3!important;align-self:center!important;font-size:13px!important}
  .fc-activity-row>button:nth-last-child(2){grid-column:3!important;grid-row:1/3!important}
  .fc-activity-row>button:last-child{grid-column:4!important;grid-row:1/3!important}
  .fc-card-grid-v8{grid-template-columns:1fr!important}
}

@media(max-width:560px){
  .fc-today-kpis{grid-template-columns:1fr!important}
  .fc-today-hero>div:first-child>strong{font-size:31px!important}
  .fc-v12-command-actions button{padding:0 9px!important}
  .fc-side-section button,.fc-side-bottom button{font-size:13px!important}
}
