/* FlowFin Mobile v36.2 — painel, importador e OCR local */
.card-detail-back{
  width:38px;height:38px;border-radius:13px;display:grid;place-items:center;
  background:var(--surface-2);color:var(--ink);font-size:24px;font-weight:700;flex:none;
}
.card-detail-topbar{align-items:flex-start;gap:12px}
.card-detail-heading{min-width:0;flex:1}
.card-detail-heading .h1{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.card-detail-heading .muted{font-size:11px;line-height:1.35;margin-top:3px}
.card-detail-month{
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  margin-top:12px;padding:10px 12px;border:1px solid var(--line);border-radius:16px;background:#fff;
}
.card-detail-month b{text-transform:capitalize;font-size:13px}
.card-detail-month .month-nav{margin-left:auto}
.card-detail-import-btn{margin-top:12px}
.card-detail-import-btn small{display:block;font-size:10px;font-weight:600;opacity:.78;margin-top:2px}

.invoice-summary-grid{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;
}
.invoice-summary-card,.invoice-summary-wide{
  background:#fff;border:1px solid var(--line);border-radius:17px;padding:13px;
  box-shadow:0 8px 24px rgba(8,54,43,.055);
}
.invoice-summary-card small,.invoice-summary-wide small{
  display:block;color:var(--ink-soft);font-size:10px;font-weight:750;text-transform:uppercase;letter-spacing:.045em;
}
.invoice-summary-card b{display:block;font-family:var(--display);font-size:18px;margin-top:5px;line-height:1.1}
.invoice-summary-wide{grid-column:1/-1}
.invoice-summary-wide b{display:block;font-size:13px;margin-top:5px;line-height:1.35}

.invoice-panel{
  background:#fff;border-radius:20px;border:1px solid var(--line);padding:16px;
  box-shadow:var(--shadow);margin-bottom:12px;
}
.invoice-panel-title{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:13px}
.invoice-panel-title b{font-size:14px}
.invoice-panel-title small{display:block;color:var(--ink-soft);font-size:10.5px;line-height:1.35;margin-top:3px}
.invoice-empty-chart{padding:28px 12px;text-align:center;color:var(--ink-soft);font-size:12px}

.invoice-donut-wrap{display:grid;gap:18px}
.invoice-donut{
  width:172px;height:172px;border-radius:50%;margin:2px auto 0;position:relative;
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.03);
}
.invoice-donut::after{
  content:"";position:absolute;inset:32px;border-radius:50%;background:#fff;
  box-shadow:0 0 0 1px rgba(9,59,47,.05);
}
.invoice-donut>div{
  position:absolute;inset:0;z-index:1;display:grid;place-content:center;text-align:center;pointer-events:none;
}
.invoice-donut b{font-family:var(--display);font-size:24px;line-height:1}
.invoice-donut span{font-size:9px;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.05em;margin-top:4px}
.invoice-category-legend{display:grid;gap:8px}
.invoice-category-row{
  display:grid;grid-template-columns:9px minmax(0,1fr) auto;align-items:center;gap:9px;
  padding:8px 0;border-bottom:1px solid #EEF3F0;
}
.invoice-category-row:last-child{border-bottom:0}
.invoice-category-row>i{width:9px;height:9px;border-radius:50%}
.invoice-category-row div{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}
.invoice-category-row div b{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.invoice-category-row div small{font-size:10px;color:var(--ink-soft);flex:none}
.invoice-category-row>strong{font-size:11px}

.invoice-merchant-row{margin-bottom:12px}
.invoice-merchant-row:last-child{margin-bottom:0}
.invoice-merchant-head{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:10.5px;margin-bottom:5px}
.invoice-merchant-head span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;color:var(--ink-soft)}
.invoice-merchant-head b{font-size:10.5px;flex:none}
.invoice-merchant-track{height:7px;background:#EAF1ED;border-radius:999px;overflow:hidden}
.invoice-merchant-track i{display:block;height:100%;background:linear-gradient(90deg,var(--brand),#39CBA1);border-radius:inherit;min-width:4px}

.invoice-purchase-list{display:grid;gap:8px}
.invoice-purchase-row{
  width:100%;display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:10px;
  padding:11px;border-radius:15px;background:#fff;border:1px solid var(--line);text-align:left;
}
.invoice-purchase-row:active{transform:scale(.992)}
.invoice-purchase-icon{width:38px;height:38px;border-radius:13px;display:grid;place-items:center;background:var(--surface-2);font-size:17px}
.invoice-purchase-copy{min-width:0}
.invoice-purchase-copy>b{display:block;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.invoice-purchase-copy>small{display:block;color:var(--ink-soft);font-size:9.5px;line-height:1.35;margin-top:3px}
.invoice-purchase-row>strong{font-size:12px;white-space:nowrap}
.invoice-imported-tag{
  display:inline-flex;align-items:center;padding:2px 6px;border-radius:999px;background:#E7F8F1;color:#087B59;
  font-size:8px;font-weight:800;margin-left:4px;text-transform:uppercase;
}
.invoice-empty-list{padding:30px 15px;text-align:center;color:var(--ink-soft);display:grid;place-items:center;gap:6px}
.invoice-empty-list>span{font-size:28px}
.invoice-empty-list>b{font-size:13px;color:var(--ink)}
.invoice-empty-list>small{font-size:10.5px;line-height:1.45}
.credit-card[data-detail-ready="1"]{cursor:pointer;outline:none}
.credit-card[data-detail-ready="1"]:focus-visible{box-shadow:0 0 0 3px rgba(42,224,180,.35),var(--shadow)}
.credit-card[data-detail-ready="1"]::before{
  content:"Toque para abrir a análise da fatura";position:absolute;right:15px;bottom:11px;z-index:1;
  font-size:8px;opacity:.62;font-weight:700;
}
.credit-card[data-detail-ready="1"] .invoice{padding-bottom:15px}

.invoice-import-format-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:15px}
.invoice-import-format-grid>span{padding:11px;border-radius:14px;background:var(--surface-2);border:1px solid var(--line)}
.invoice-import-format-grid b{display:block;font-size:11px}
.invoice-import-format-grid small{display:block;color:var(--ink-soft);font-size:9px;line-height:1.35;margin-top:3px}

.card-import-sticky{
  position:sticky;top:0;z-index:4;background:rgba(247,250,248,.94);backdrop-filter:blur(12px);
  padding-bottom:10px;border-bottom:1px solid rgba(16,80,63,.08);
}
.card-import-meta{font-size:10px;color:var(--ink-soft);line-height:1.4;margin-top:4px;word-break:break-word}
.card-import-warning{
  margin-top:10px;padding:10px 12px;border-radius:13px;background:#FFF8E7;color:#7A5B0D;
  font-size:10.5px;line-height:1.45;border:1px solid #F2DC9D;
}
.card-import-tools{display:flex;gap:8px;margin-top:10px}
.card-import-tools button{
  height:36px;padding:0 12px;border-radius:11px;background:#fff;border:1px solid var(--line);
  color:var(--ink);font-size:10px;font-weight:800;
}
.card-import-summary{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px;
}
.card-import-summary span{background:#fff;border:1px solid var(--line);border-radius:13px;padding:9px;text-align:center}
.card-import-summary b{display:block;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.card-import-summary small{display:block;font-size:8.5px;color:var(--ink-soft);text-transform:uppercase;margin-top:2px}

.import-preview-list{display:grid;gap:11px;padding:12px 16px 120px}
.import-preview-row{
  background:#fff;border:1px solid var(--line);border-radius:18px;padding:13px;
  box-shadow:0 7px 20px rgba(8,54,43,.045);
}
.import-preview-row.is-selected{border-color:#63C9A7;box-shadow:0 0 0 2px rgba(17,167,122,.09)}
.import-preview-row.is-duplicate{background:#FAFBFA;opacity:.78}
.import-row-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:4px}
.import-check-wrap{display:flex;align-items:center;gap:7px;font-size:10.5px;font-weight:800}
.import-check-wrap input{width:18px;height:18px;accent-color:var(--brand)}
.import-status{display:inline-flex;align-items:center;height:23px;padding:0 8px;border-radius:999px;font-size:8.5px;font-weight:850;text-transform:uppercase;letter-spacing:.035em}
.import-status.ready{background:#E6F8F0;color:#087A58}
.import-status.duplicate{background:#F2F1F0;color:#6D6A66}
.import-status.invalid{background:#FDE9E7;color:#A13B32}
.import-status.adjustment{background:#FFF3D7;color:#86610C}
.import-row-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.import-preview-row .field{margin-top:9px}
.import-preview-row .field label{font-size:9px}
.import-preview-row input,.import-preview-row select{height:40px;font-size:11px;border-radius:11px;padding:0 10px}
.card-import-actionbar{
  position:absolute;left:0;right:0;bottom:0;z-index:10;padding:10px 16px calc(10px + env(safe-area-inset-bottom));
  background:rgba(255,255,255,.96);backdrop-filter:blur(16px);border-top:1px solid var(--line);
  display:grid;grid-template-columns:auto 1fr;gap:9px;
}
.card-import-actionbar button{height:48px;border-radius:14px;font-weight:850}
.card-import-actionbar .cancel{padding:0 15px;background:var(--surface-2);color:var(--ink)}
.card-import-actionbar .confirm{background:var(--brand);color:#fff}
.card-import-actionbar .confirm:disabled{opacity:.48}

@media(max-height:690px){
  .invoice-donut{width:150px;height:150px}
  .invoice-donut::after{inset:28px}
  .import-preview-row{padding:11px}
}


/* v36.2 — progresso do OCR local */
.invoice-ocr-overlay{
  position:absolute;inset:0;z-index:240;display:none;align-items:center;justify-content:center;
  padding:22px;background:rgba(4,31,25,.76);backdrop-filter:blur(10px);
}
.invoice-ocr-overlay.open{display:flex}
.invoice-ocr-card{
  width:min(100%,360px);padding:22px;border-radius:24px;background:#fff;
  box-shadow:0 28px 80px rgba(0,0,0,.32);text-align:center;
}
.invoice-ocr-icon{
  width:54px;height:54px;border-radius:17px;margin:0 auto 13px;display:grid;place-items:center;
  background:linear-gradient(145deg,var(--brand),var(--brand-deep));color:#fff;font-size:27px;
}
.invoice-ocr-card h3{font-family:var(--display);font-size:21px;letter-spacing:-.02em}
.invoice-ocr-card p{margin-top:7px;color:var(--ink-soft);font-size:11px;line-height:1.5}
.invoice-ocr-page{margin-top:16px;font-size:11px;font-weight:850;color:var(--ink)}
.invoice-ocr-track{height:9px;margin-top:9px;border-radius:999px;background:#E5EEE9;overflow:hidden}
.invoice-ocr-track i{display:block;width:2%;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--brand),#35CDE0);transition:width .16s linear}
.invoice-ocr-status{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:8px;font-size:10px;color:var(--ink-soft)}
.invoice-ocr-status b{font-size:10px;color:var(--brand-deep)}
.invoice-ocr-card>small{display:block;margin-top:13px;color:var(--ink-soft);font-size:9px;line-height:1.45}
.invoice-ocr-card>button{height:43px;margin-top:15px;padding:0 16px;border-radius:13px;background:var(--surface-2);color:var(--ink);font-size:11px;font-weight:850}


/* v36.3 — histórico e exclusão segura das importações */
.invoice-import-history{display:none}
.invoice-import-history-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:8px}
.invoice-import-history-head b{display:block;font-size:12px}
.invoice-import-history-head small{display:block;color:var(--ink-soft);font-size:9.5px;line-height:1.4;margin-top:3px}
.invoice-import-history-list{display:grid;gap:8px}
.invoice-import-batch{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 12px;border-radius:15px;background:#fff;border:1px solid var(--line);box-shadow:0 7px 18px rgba(8,54,43,.04)}
.invoice-import-batch-copy{min-width:0}
.invoice-import-batch-copy b{display:block;font-size:10.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.invoice-import-batch-copy small{display:block;color:var(--ink-soft);font-size:8.8px;line-height:1.35;margin-top:3px}
.invoice-import-batch button{flex:none;height:34px;padding:0 10px;border-radius:10px;background:#FDEBE8;color:#A33D32;font-size:9px;font-weight:850}
