/* =====================================================================
   TEMA RECABIS — valori extrase 1:1 din ReCaBis/ui/index.html (12 oct 2026)
   Se copiază IDENTIC în orice aplicație nouă care trebuie să arate
   "exact ca în ReCaBis". Nu se modifică aici valorile fără să fie
   schimbate întâi în ReCaBis.
   ===================================================================== */

:root{
  --blue:#1e4d8c; --blue-dark:#123163; --bg:#f4f6f9; --card:#ffffff;
  --border:#d7dee8; --green:#1e7a3f; --red:#a3241f; --gray:#5a6472;
  --text:#1a1f2b; --th-bg:#eef2f8; --accent:#ffb84d; --nav-text:#cfe0ff;
}

/* ---------- Pagina ---------- */
html, body{height:100%;}
body{font-family:-apple-system,Segoe UI,Roboto,Arial,sans-serif;margin:0;background:var(--bg);color:var(--text);
     display:flex;flex-direction:column;overflow:hidden;}
main{max-width:1842px;margin:14px auto 0;padding:0 16px 14px;width:100%;
     flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;}
.hidden{display:none !important;}

/* ---------- Antet ---------- */
header{background:var(--blue);color:#fff;padding:8px 22px;flex-shrink:0;position:relative;}
header .title-row{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:14px;margin:0 0 6px 0;}
header h1{margin:0;font-size:19px;}
header .org{font-size:13px;opacity:.9;display:flex;align-items:center;flex-wrap:wrap;gap:8px;}
header .org input{background:transparent;border:1px solid rgba(255,255,255,.5);color:#fff;padding:3px 6px;border-radius:4px;font-size:13px;}
header .org input::placeholder{color:rgba(255,255,255,.7);}
header .filepath{font-size:11px;opacity:.75;margin-top:4px;}

/* ---------- Meniul lateral ---------- */
nav{display:flex;flex-direction:column;background:var(--blue-dark);flex:0 0 175px;width:175px;
    overflow-y:auto;flex-shrink:0;padding:10px 0;}
nav button{display:block;width:100%;text-align:left;padding:9px 14px;background:none;border:none;
    border-left:3px solid transparent;color:var(--nav-text);font-size:14px;cursor:pointer;}
nav button:hover{background:rgba(255,255,255,.08);}
nav button.active{color:#fff;background:rgba(255,255,255,.15);border-left:3px solid var(--accent);font-weight:600;}
.nav-group-label{margin:22px 14px 4px;padding:0 0 6px;font-size:16px;color:#a9c1de;
    letter-spacing:.3px;border-bottom:1px solid rgba(169,193,222,.35);text-align:center;}
nav > .nav-group-label:first-child{margin-top:10px;}
.nav-group-dot{display:inline-block;width:13px;height:13px;border-radius:50%;margin-right:8px;
    vertical-align:-2px;box-sizing:border-box;background:none;border:2.5px solid #a9c1de;}
.nav-group-dot.active{background:#63c23f;border-color:#63c23f;}

/* ---------- Carduri ---------- */
.card{background:var(--card);border:1px solid var(--border);border-radius:8px;padding:7px 16px;margin-bottom:7px;}
.card h2{margin-top:0;margin-bottom:5px;font-size:16px;color:var(--blue-dark);}
.card-head-row{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;flex-wrap:wrap;position:relative;}
.card-head-row h2{margin:0;}

/* ---------- Butoane ---------- */
.btn{padding:4px 14px;border:none;border-radius:5px;background:var(--blue);color:#fff;font-size:14px;cursor:pointer;}
.btn:hover{background:var(--blue-dark);}
.btn:disabled{opacity:.45;cursor:not-allowed;}
.btn.secondary{background:#fff;color:var(--blue);border:1px solid var(--blue);}
.btn.danger{background:#fff;color:var(--red);border:1px solid var(--red);}
.btn.small{padding:4px 9px;font-size:12px;line-height:19px;}
.icon-btn{padding:4px 5px;border:1px solid var(--border);border-radius:4px;background:#fff;cursor:pointer;font-size:13px;line-height:1;margin:0 1px;}
.icon-btn.danger{border-color:var(--red);color:var(--red);}
.icon-btn.secondary{border-color:var(--blue);color:var(--blue);}
.icon-btn:hover{background:#dde6f0;}
.icon-btn:disabled{opacity:.4;cursor:not-allowed;background:#f3f4f6;}

/* ---------- Câmpuri ---------- */
.toolbar{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px;margin-bottom:7px;align-items:center;}
.field{display:flex;flex-direction:column;gap:2px;font-size:15px;color:var(--gray);}   /* ReCaBis: 13px de bază, dar 15px pe toate ecranele de lucru (#tab-casa .field etc.) */
.field label{text-align:center;}
.field input, .field select{padding:3px 8px;border:1px solid var(--border);border-radius:5px;font-size:16px;min-width:110px;}   /* ReCaBis: 16px pe ecranele de lucru */
.field select{width:150px;}
.field.grow{flex:1;min-width:240px;}
.field.small input, .field.small select{width:112px;min-width:112px;}
.field.xsmall input, .field.xsmall select{width:82px;min-width:82px;padding:4px 4px;text-align:center;}
input[readonly]{background:#eef1f4;color:#555;}
.muted{color:var(--gray);font-size:12.5px;}
.warn-box{background:#fdeceb;border:1px solid #f0b4af;color:var(--red);border-radius:6px;padding:10px 12px;font-size:13px;margin-bottom:14px;}

/* ---------- Tabele ---------- */
table{width:100%;border-collapse:collapse;margin-top:12px;font-size:13px;}
th,td{border:1px solid var(--border);padding:6px 7px;text-align:right;word-wrap:break-word;}
th{background:var(--th-bg);color:var(--blue-dark);}
td.text, th.text{text-align:left;}
table.table-journal{table-layout:fixed;font-size:16px;}
.journal-scroll{max-height:420px;overflow-y:auto;overflow-x:hidden;}
.journal-scroll table.table-journal th, .journal-scroll table.table-journal td{border:none;border-bottom:1px solid var(--border);border-right:1px solid var(--border);}
.journal-scroll table.table-journal thead th{position:sticky;top:0;z-index:2;}
tr.incasare td.amt{color:var(--green);}
tr.plata td.amt{color:var(--red);}

/* ---------- Casete sumar ---------- */
.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:6px;margin-top:5px;}
.summary-box{background:#dde6f0;border-radius:6px;padding:4px 10px;}
.summary-box .label{font-size:12px;color:var(--gray);}
.summary-box .value{font-size:18px;font-weight:700;color:var(--blue-dark);margin-top:2px;}
.summary-box .value.value-incasare{color:var(--green);}
.summary-box .value.value-plata{color:var(--red);}

/* ---------- Comutatoare ---------- */
.switch-toggle{position:relative;display:inline-block;width:42px;height:23px;flex-shrink:0;}
.switch-toggle input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer;}
.switch-toggle .switch-slider{position:absolute;inset:0;background:#c7ccd4;border-radius:20px;transition:background .15s;}
.switch-toggle .switch-slider::before{content:'';position:absolute;top:2px;left:2px;width:19px;height:19px;background:#fff;border-radius:50%;box-shadow:0 1px 3px rgba(0,0,0,.3);transition:transform .15s;}
.switch-toggle input:checked + .switch-slider{background:var(--blue);}
.switch-toggle input:checked + .switch-slider::before{transform:translateX(19px);}
.seg-tip-contabilitate{display:inline-flex;border:1px solid var(--blue);border-radius:20px;overflow:hidden;flex-shrink:0;}
.seg-tip-contabilitate .seg-opt{padding:7px 16px;font-size:13px;font-weight:600;color:var(--blue);background:#fff;border:none;cursor:pointer;}
.seg-tip-contabilitate .seg-opt.sel{background:var(--blue);color:#fff;}

/* ---------- Ferestre de dialog / mesaje ---------- */
.modal-overlay{position:fixed;inset:0;background:rgba(15,23,42,.4);display:flex;align-items:center;justify-content:center;z-index:1000;}
.modal-box{background:#fff;border-radius:8px;padding:22px 24px;max-width:600px;width:90%;
    max-height:82vh;overflow-y:auto;box-shadow:0 10px 34px rgba(0,0,0,.28);}
.modal-box p{margin:0 0 20px 0;font-size:14.5px;line-height:1.55;color:var(--text);white-space:pre-line;}
.modal-box-wide{background:#fff;border-radius:8px;padding:20px 24px;max-width:760px;width:92%;
    max-height:82vh;overflow-y:auto;box-shadow:0 10px 34px rgba(0,0,0,.28);}
.modal-box-wide h3{margin:0 0 4px 0;}
.modal-box-wide .muted-sub{color:#64748b;font-size:13px;margin-bottom:14px;}
.modal-actions{display:flex;justify-content:flex-end;gap:10px;}
.modal-actions .btn{min-width:96px;text-align:center;}
/* Mesaj cu antet colorat: A=Atenție, E=Eroare, D=Ștergere, S=Gata, I=Informare, C=Confirmare */
.modal-box.dlg-box{padding:0;overflow:hidden;max-width:640px;width:92%;display:flex;flex-direction:column;border:3px solid #e8a317;}
.dlg-box[data-tip="A"]{border-color:#e8a317;}
.dlg-box[data-tip="E"], .dlg-box[data-tip="D"]{border-color:#c0392b;}
.dlg-box[data-tip="S"]{border-color:#2e9e4a;}
.dlg-box[data-tip="I"]{border-color:#2f6db5;}
.dlg-box[data-tip="C"]{border-color:#123163;}
.dlg-head{padding:8px 20px;font-size:18px;font-weight:700;display:flex;align-items:center;gap:8px;flex-shrink:0;}
.dlg-head.k-A{background:#e8a317;color:#3a2600;}
.dlg-head.k-E, .dlg-head.k-D{background:#c0392b;color:#fff;}
.dlg-head.k-S{background:#2e9e4a;color:#fff;}
.dlg-head.k-I{background:#2f6db5;color:#fff;}
.dlg-head.k-C{background:#123163;color:#fff;}
.dlg-body{padding:18px 20px;font-size:15px;line-height:1.6;color:#222;white-space:pre-line;overflow-y:auto;min-height:0;}
.dlg-box .modal-actions{padding:0 20px 12px;flex-shrink:0;}

/* =====================================================================
   COMPONENTE SUPLIMENTARE (adăugate 12 oct 2026) — tot valori 1:1 din ReCaBis.
   Unde în ReCaBis regula era legată de un singur ecran (#id), aici e făcută
   clasă reutilizabilă; sursa e notată în comentariu.
   ===================================================================== */

/* ---------- Structura aplicației ---------- */
.app-shell{display:flex;flex-direction:row;flex:1;min-height:0;overflow:hidden;}   /* meniu lateral + conținut */
.row{display:flex;gap:6px;flex-wrap:wrap;align-items:flex-end;}
.row.nowrap{flex-wrap:nowrap;overflow-x:auto;}
.row-spacer{flex:1 1 auto;}

/* ---------- Antet: siglă, titlu, versiune, etichete ---------- */
.title-group{display:flex;align-items:center;gap:14px;flex-wrap:wrap;}
.app-title-inline{display:flex;align-items:center;gap:3px;}
.app-icon{height:38px;width:auto;border-radius:4px;display:block;}
header .title-row .app-version{font-size:11px;opacity:.6;white-space:nowrap;align-self:flex-start;}
.org .btn.small, .title-group .btn.small{font-size:12.5px;padding:5px 10px;}
.btn.small.icon-only{padding:5px 7px;font-size:14px;line-height:1;}
/* Eticheta portocalie „Luna curentă” (roșie când nu se potrivește) */
.luna-curenta-label{font-size:18px;font-weight:700;padding:0 13px 4px;height:27px;display:inline-flex;align-items:center;border-radius:5px;
    background:#ffb84d;color:var(--blue-dark);border:1px solid #ffb84d;white-space:nowrap;}
.luna-curenta-label.mismatch{background:#a3241f;color:#fff;border-color:#a3241f;cursor:help;}
/* Eticheta transparentă din antet (ex. „Partidă dublă”) */
.tip-contabilitate-badge{font-size:14px;font-weight:600;padding:0 12px;height:27px;display:inline-flex;align-items:center;border-radius:5px;
    background:rgba(255,255,255,.14);color:#fff;border:1px solid rgba(255,255,255,.4);white-space:nowrap;}

/* ---------- Titlul cardului cu selector mov ---------- */
.card-head-title{min-height:29px;}
.card-head-select{padding:4px 9px;border-radius:5px;font-size:15px;font-weight:700;line-height:19px;min-width:130px;text-align:center;
    background:#afa9ec;color:#26215c;border:1px solid #afa9ec;}

/* ---------- Iconițe în butoane (emoji + text) ---------- */
.btn-icon{font-size:1.6em;line-height:1;vertical-align:-4px;display:inline-block;}
.btn-icon-exit{font-size:1.6em;line-height:1;vertical-align:-4px;display:inline-block;transform:scaleX(1.3);filter:grayscale(1) brightness(0.6);}
.btn-icon-img{height:18px;width:18px;vertical-align:-4px;display:inline-block;}           /* iconița PDF: icoane/pdf.png */
.icon-btn .btn-icon-img{height:15px;width:15px;vertical-align:-3px;transform:scale(1.15);}
.btn-label-action, .btn-label-print, .btn-label-excel{position:relative;top:2px;}
.btn-label-pdf{position:relative;top:-1px;margin-left:3px;}
.btn-label-folder{position:relative;top:2px;text-transform:uppercase;}
.btn-label-cautare{font-size:1.15em;vertical-align:middle;position:relative;top:1px;}
.icon-btn .icon-glyph{display:inline-block;transform:scale(1.2);}                  /* din ReCaBis (recabis-complet.css) */
.icon-btn .icon-glyph.icon-glyph-eye{transform:scale(1.4);}
.icon-btn .icon-glyph.icon-glyph-edit, .icon-btn .icon-glyph.icon-glyph-delete{transform:scale(1.0);}
.icon-btn:disabled:hover{background:#f3f4f6;}
.btn:disabled:hover{background:inherit;}

/* ---------- Butoane mari de comutare (Centralizator) ---------- */
.central-toggle-row{display:flex;gap:8px;}
.central-toggle-btn{width:240px;text-align:center;padding:8px 16px;font-size:18px;font-weight:700;border-radius:6px;
    border:2px solid var(--blue);background:#fff;color:var(--blue);cursor:pointer;}
.central-toggle-btn:hover{background:#eef2f8;}
.central-toggle-btn.active{background:#afa9ec;color:#26215c;border-color:#afa9ec;}

/* ---------- Închide / Redeschide luna (sursa: .month-actions-row button[id^=closeMonth/reopenMonth]) ---------- */
.btn-inchide-luna, .btn-redeschide-luna{min-width:183px;width:max-content;text-align:center;font-weight:700;white-space:nowrap;}
.btn-inchide-luna{color:var(--red);border-color:var(--red);}
.btn-inchide-luna:hover{background:#f0997b;color:#4a1b0c;}
.btn-redeschide-luna{color:var(--blue);border-color:var(--blue);}
.btn-redeschide-luna:hover{background:#5dcaa5;color:#04342c;}
/* ---------- Butoanele din antet Restaurează / Închide (sursa: #restoreBackupBtn, #exitAppBtn) ---------- */
.btn-restaureaza, .btn-inchide-app{width:128px;text-align:center;vertical-align:middle;white-space:nowrap;padding-left:6px;padding-right:6px;font-weight:700;height:32px;display:inline-flex;align-items:center;justify-content:center;}
.btn-restaureaza:hover{background:#5dcaa5;color:#04342c;}
.btn-inchide-app:hover{background:#f0997b;color:#4a1b0c;}
/* butonul „Închide” din ferestre/liste (sursa: #docListCloseBtn, #docDetailCloseBtn, #pvDetailCloseBtn, #cautareRegistruCloseBtn ...) */
.btn-inchide-fereastra:hover{background:#f0997b;color:#4a1b0c;}


/* ---------- Starea registrului (Deschis / Arhivat) ---------- */
.stare-reg{display:inline-flex;justify-content:center;gap:13px;align-items:center;box-sizing:border-box;width:116px;height:26px;border-radius:5px;
    font-size:16px;font-weight:700;border:1px solid transparent;white-space:nowrap;line-height:1;}
.stare-reg .stare-ico{font-size:15px;}
.stare-reg.deschisa{background:#fff;color:#1e7a34;border-color:#2e9e4a;}
.stare-reg.arhivata{background:#5b6573;color:#fff;border-color:#5b6573;}

/* ---------- Selector An / Lună (portocaliu) ---------- */
.anluna-field{position:relative;margin:0;}
.anluna-field label{position:absolute;top:-17px;left:0;right:0;text-align:center;margin:0;}
.anluna-field select{font-weight:700;text-align:center;background:#ffb84d;color:var(--blue-dark);border:1px solid #ffb84d;border-radius:5px;padding:3px 8px;font-size:16px;}
.anluna-field select.anluna-an{width:72px;}
.anluna-field select.anluna-luna{width:130px;}
.toolbar .anluna-field select{height:26px;padding:3px 2px;min-width:0;font-size:16px;}
.toolbar-jurnal-reg .anluna-field label{top:auto;bottom:calc(100% + 2px);line-height:17px;font-size:15px;}
/* aceeași casetă portocalie, dar needitabilă (doar afișare) */
.field input.anluna-afis{font-weight:700;text-align:center;background:#ffb84d !important;color:var(--blue-dark);border:1px solid #ffb84d;border-radius:5px;}
.field input.anluna-afis-an{width:72px;min-width:72px;}
.field input.anluna-afis-luna{width:130px;min-width:130px;}

/* ---------- Câmp de dată cu butoane (◀ dată ▶ 📅) ---------- */
.field input[type=date]{width:135px;}
.date-row{display:flex;gap:3px;align-items:center;}
.date-row input[type=text]{box-sizing:border-box;width:100px;min-width:100px;padding:3px 8px;font-size:16px;font-weight:bold;text-align:center;}   /* 100px în total (ReCaBis are *{box-sizing:border-box}) */
/* data afișată pe mijloc în toate casetele de dată (sursa: input[placeholder="AAAA-LL-ZZ"], 4 oct 2026) */
input[placeholder="AAAA-LL-ZZ"], input.print-month-select{text-align:center;}
/* câmpul nativ de dată, ascuns — îl deschide butonul 📅 (sursa: .date-picker-hidden) */
.date-picker-hidden{position:absolute;opacity:0;width:0;height:0;pointer-events:none;}
.date-row button{padding:6px 7px;border:1px solid var(--border);border-radius:5px;background:#fff;cursor:pointer;font-size:14px;line-height:1;}
.date-row button:hover{background:#eef2f8;}
.date-row input.print-month-select{font-size:16px;font-weight:700;width:118px;}

/* ---------- Casetă Sold Inițial (sursa: #casaSoldInceput, #bancaSoldInceput) ---------- */
.field input.sold-initial{width:120px;font-weight:bold;text-align:center;background:#dde6f0 !important;}

/* ---------- Casete cu solduri (variantă compactă, 4 pe rând) ---------- */
.summary-grid.cols-4{grid-template-columns:repeat(4,1fr);}
.summary-grid.compact{grid-template-columns:repeat(4,165px);gap:5px;margin-top:0;}
.summary-grid.compact .summary-box{text-align:center;}
.summary-grid.compact .label, .summary-grid.compact .value{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.summary-grid.compact .label{font-size:14px;}

/* ---------- Pastile și etichete colorate ---------- */
.pill{display:inline-block;padding:2px 8px;border-radius:10px;font-size:12px;background:#eef2f8;color:var(--blue-dark);}
.pill-venit{background:#e4f3e8;color:var(--green);font-size:11px;font-weight:700;border-radius:10px;padding:2px 10px;}       /* sursa: #tab-fise */
.pill-cheltuiala{background:#fbe6e2;color:var(--red);font-size:11px;font-weight:700;border-radius:10px;padding:2px 10px;}
.pill-transfer{background:#e5edfa;color:var(--blue-dark);font-size:11px;font-weight:700;border-radius:10px;padding:2px 10px;}
.casa-badge{display:inline-block;background:var(--gray);color:#fff;font-size:11px;font-weight:700;border-radius:10px;padding:1px 8px;}
.categ-badge{display:inline-block;background:#eef4ff;color:var(--blue-dark);border:1px solid #c8d8f2;border-radius:4px;padding:1px 7px;font-size:12.5px;font-weight:700;}
.cont-badge{display:inline-block;min-width:20px;height:20px;line-height:20px;border-radius:50%;color:#fff;font-size:12px;font-weight:700;text-align:center;padding:0 3px;cursor:default;}
.inv-auto-badge{font-size:11px;color:#6b7785;font-weight:normal;font-style:italic;white-space:nowrap;}

/* ---------- Butoane segmentate pentru monedă (RON / EUR / USD / GBP) ---------- */
.seg-moneda{display:inline-flex;border:1px solid var(--blue);border-radius:4px;overflow:hidden;flex-shrink:0;margin-top:3px;}
.seg-moneda .seg-opt{padding:6px 18px;font-size:13px;font-weight:600;color:var(--blue);background:#fff;border:none;cursor:pointer;}
.seg-moneda .seg-opt.sel{background:var(--blue);color:#fff;}
.seg-tip-contabilitate .seg-opt:disabled{cursor:not-allowed;opacity:.45;}
/* varianta cu butoane separate colorate pe monedă (sursa: #valutaMonedaTabs) */
.seg-moneda.separat{border:none;overflow:visible;margin-top:0;}
.seg-moneda.separat .seg-opt{border:1.5px solid;border-radius:4px;margin-right:6px;}
.seg-moneda.separat .seg-opt[data-moneda="EUR"]::before{content:"€ ";}
.seg-moneda.separat .seg-opt[data-moneda="USD"]::before{content:"$ ";}
.seg-moneda.separat .seg-opt[data-moneda="GBP"]::before{content:"£ ";}
.seg-moneda.separat .seg-opt[data-moneda="EUR"]{color:var(--blue);border-color:var(--blue);}
.seg-moneda.separat .seg-opt[data-moneda="EUR"].sel{background:var(--blue);color:#fff;}
.seg-moneda.separat .seg-opt[data-moneda="USD"]{color:var(--green);border-color:var(--green);}
.seg-moneda.separat .seg-opt[data-moneda="USD"].sel{background:var(--green);color:#fff;}
.seg-moneda.separat .seg-opt[data-moneda="GBP"]{color:#b8860b;border-color:#b8860b;}
.seg-moneda.separat .seg-opt[data-moneda="GBP"].sel{background:#b8860b;color:#fff;}

/* ---------- Rânduri speciale în tabele ---------- */
tr.row-highlight td{background:#fff3cd !important;}                                   /* rând evidențiat (galben) */
tr.rand-raport td{background:#f7f9fc;}                                                 /* sursa: tr.fise-report-row, #jurnalReportTable */
tr.rand-subtotal td{background:#f3f5f8;font-style:italic;font-weight:600;}             /* sursa: tr.inv-subtotal-row */
tr.rand-total td{background:#cdd5df;font-weight:bold;color:var(--blue-dark);}          /* sursa: tr.inv-total-row */
tr.rand-categorie:hover td{background:#cfdbea;}                                         /* sursa: tr.inv-cat-row */
tr.rand-gol td{font-style:italic;color:#6b7785;}                                        /* sursa: tr.inv-empty-row */
tr.rand-sectiune td{background:#eef2f8 !important;color:var(--gray);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;padding:5px 10px;text-align:left;} /* sursa: .jurnal-foot-section */
tr.rand-total-verde td{background:#eaf3ec !important;color:var(--green);}              /* sursa: .jurnal-foot-highlight */
tr.rand-comodat td{background:#fff4e0;color:#7a4b00;}                                   /* sursa: tr.inv-comodat-row */
tr.rand-comodat:hover td{background:#ffeccc;}
td.indent{padding-left:22px;}
td.diferenta{color:#b00020;font-weight:bold;}
td.amt.col-out{color:var(--red);}
th.col-amt{width:110px;}
th.col-cont{width:90px;text-align:center;}
th.col-grow{min-width:210px;width:33%;}
th.col-nr{width:38px;}
th.col-date{width:108px;}
th.col-doc{width:100px;}
th.col-tipdoc{width:165px;}
th.col-sold{width:100px;}
th.col-del{width:98px;}
table th.col-date, table td.col-date{text-align:center;}

/* ---------- Listă laterală cu categorii și sume (sursa: #tab-fise .fise-nav) ---------- */
.lista-shell{display:flex;flex:1;min-height:0;overflow:hidden;border-top:1px solid var(--border);margin-top:8px;}
.lista-laterala{width:300px;background:#fff;border-right:1px solid var(--border);flex-shrink:0;display:flex;flex-direction:column;min-height:0;}
.lista-laterala .lista-filtru{padding:12px 14px 8px;border-bottom:1px solid var(--border);background:#f9fafb;flex-shrink:0;}
.lista-laterala .lista-filtru .field{display:flex;flex-direction:column;gap:2px;font-size:11.5px;color:var(--gray);margin-bottom:8px;}
.lista-laterala .lista-filtru .field label{font-weight:600;text-align:left;}
.lista-laterala .lista-filtru select, .lista-laterala .lista-filtru input{width:100%;padding:4px 8px;border:1px solid var(--border);border-radius:5px;font-size:13px;}
.lista-laterala .lista-total{display:flex;justify-content:space-between;align-items:center;padding:9px 14px;background:#eef2f8;border-bottom:1px solid var(--border);}
.lista-laterala .lista-total .label{font-size:11.5px;color:var(--gray);}
.lista-laterala .lista-total .value{font-size:15px;font-weight:800;color:var(--blue-dark);}
.lista-laterala .grp{font-size:11px;text-transform:uppercase;color:var(--gray);padding:12px 14px 4px;font-weight:700;letter-spacing:.03em;}
.lista-laterala .cat{display:flex;justify-content:space-between;gap:8px;padding:6px 14px;font-size:12.5px;color:#333;cursor:pointer;border-left:3px solid transparent;background:none;border-top:none;border-bottom:none;border-right:none;width:100%;text-align:left;font-family:inherit;}
.lista-laterala .cat:hover{background:#f4f6f9;}
.lista-laterala .cat.active{background:#eef4ff;color:var(--blue-dark);font-weight:700;border-left:3px solid var(--blue);}
.lista-laterala .cat .suma{color:var(--gray);font-weight:400;white-space:nowrap;}
.lista-laterala .cat.active .suma{color:var(--blue-dark);}
.lista-laterala .gol{padding:14px;font-size:12.5px;color:var(--gray);}
.lista-main{flex:1;min-width:0;min-height:0;padding:18px 22px;display:flex;flex-direction:column;overflow:hidden;}
.lista-titlu h3{margin:0;font-size:19px;color:var(--blue-dark);}
.lista-sub{font-size:13.5px;color:var(--gray);margin-bottom:14px;}

/* ---------- Fereastră mică ancorată sub un buton (rezumat conturi) ---------- */
.conturi-rezumat-popup{display:none;position:absolute;top:calc(100% + 8px);right:0;z-index:20;width:max-content;max-width:640px;background:#fff;border:1px solid var(--border);border-radius:8px;
    box-shadow:0 8px 24px rgba(20,30,60,.18);padding:12px 14px;text-align:left;}
.conturi-rezumat-popup::before{content:"";position:absolute;top:-7px;right:22px;width:12px;height:12px;background:#fff;border-left:1px solid var(--border);border-top:1px solid var(--border);transform:rotate(45deg);}
.conturi-rezumat-popup h4{margin:0 0 8px 0;font-size:13px;color:var(--gray);text-transform:uppercase;letter-spacing:.03em;font-weight:700;}
.conturi-rezumat-popup table{border-collapse:collapse;font-size:12.5px;margin-top:0;width:auto;}
.conturi-rezumat-popup td{padding:6px 4px;border:none;border-bottom:1px solid #eef1f6;color:#334;white-space:nowrap;text-align:left;}
.conturi-rezumat-popup tr:last-child td{border-bottom:none;}
.conturi-rezumat-popup .cr-nr{text-align:center;vertical-align:middle;}
.conturi-rezumat-popup .cr-nume{min-width:188px;max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.conturi-rezumat-popup .cr-sold{min-width:108px;}
.conturi-rezumat-popup .cr-badge{display:inline-flex;align-items:center;gap:5px;padding:2px 8px;border-radius:11px;font-size:12.5px;font-weight:700;white-space:nowrap;}
.conturi-rezumat-popup .cr-badge.ok{background:#e3f3e8;color:var(--green);}
.conturi-rezumat-popup .cr-badge.behind{background:#fdf0dd;color:#a15b00;}
.conturi-rezumat-popup .cr-badge.neutral{background:#eef0f3;color:var(--gray);}
.conturi-rezumat-popup .cr-dot{width:6px;height:6px;border-radius:50%;display:inline-block;}
.conturi-rezumat-popup .cr-dot.ok{background:var(--green);}
.conturi-rezumat-popup .cr-dot.behind{background:#d98a1f;}
.conturi-rezumat-popup .cr-dot.neutral{background:var(--gray);}
.conturi-rezumat-popup .cr-empty{color:var(--gray);font-size:12.5px;}
.valuta-buton-anchor{position:relative;display:inline-block;}

/* ---------- Casete de ajutor / editare / avertizare care clipește ---------- */
.help-box{background:#fff8e6;border:1px solid #f0d78c;border-radius:6px;padding:12px 14px;font-size:13.5px;margin-bottom:14px;line-height:1.5;}
.edit-banner{background:#fff8e6;border:1px solid #f0d78c;border-radius:6px;padding:8px 12px;font-size:13.5px;margin-bottom:10px;display:flex;justify-content:space-between;align-items:center;gap:10px;}
.avert-chitanta{opacity:0;visibility:hidden;transition:opacity .45s ease, visibility 0s linear .45s;pointer-events:none;position:absolute;left:357px;top:8px;display:flex;align-items:center;gap:8px;
    background:#e8f1fb;border:1px solid #9cc0e8;border-left:5px solid #1d4f91;border-radius:5px;padding:2px 10px;color:#1d3557;font-size:16px;line-height:1.2;white-space:nowrap;z-index:2;}
.avert-chitanta.arata{opacity:1;visibility:visible;transition:opacity .35s ease, visibility 0s;animation:avertClipeste 4.5s ease-in-out infinite;}
.avert-chitanta-ico{font-size:20px;line-height:1;}
@keyframes avertClipeste{0%{opacity:1;}28%{opacity:1;}72%{opacity:0;}84%{opacity:0;}100%{opacity:1;}}

/* ---------- Sugestii la scriere (autocompletare) ---------- */
.autocomplete-box{position:fixed;z-index:500;background:#fff;border:1px solid var(--border);border-radius:5px;box-shadow:0 4px 14px rgba(0,0,0,0.15);max-height:220px;overflow-y:auto;font-size:14px;}
.autocomplete-item{padding:6px 10px;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.autocomplete-item:hover, .autocomplete-item.active{background:#eef2f8;color:var(--blue-dark);}

/* ---------- Listă de selecție mică (ex. orientare pagină) ---------- */
.orientation-select{padding:5px 8px;border:1px solid var(--border);border-radius:5px;font-size:12.5px;background:#fff;color:var(--blue-dark);}

/* ---------- Panouri care se deschid/închid (Setări) ---------- */
.setblock{background:var(--card);border:1px solid var(--border);border-radius:8px;margin-bottom:8px;overflow:hidden;}
.setblock .acc-header{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;user-select:none;padding:12px 16px;}
.setblock .acc-header:hover{background:#f7f9fc;}
.setblock .acc-header h3{margin:0;font-size:16.5px;color:var(--blue-dark);}
.setblock .chev-down{color:var(--gray);font-size:12px;flex:none;transition:transform .15s;}
.setblock.acc-open .chev-down{transform:rotate(180deg);color:var(--blue-dark);}
.setblock .acc-body{padding:0 16px 16px;display:none;font-size:16px;}
.setblock.acc-open .acc-body{display:block;}
.setblock .acc-body .muted, .setblock .acc-body .btn.small, .setblock .acc-body .seg-opt, .setblock .acc-body .warn-box{font-size:16px;}
/* rând cu perioadă + regim (Setări) */
.tci-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:8px 12px;border:1px solid var(--border);border-radius:6px;margin-bottom:6px;font-size:15px;}
.tci-perioada{font-weight:600;}
.tci-regim{font-weight:700;white-space:nowrap;}
.tci-regim.tci-dubla{color:var(--blue);}
.tci-regim.tci-simpla{color:#7a5b00;}

/* ---------- Mesaj „Donație” (antet portocaliu fix) ---------- */
.donatie-head{background:#e8a317;color:#3a2600;padding:8px 20px;font-size:18px;font-weight:700;}
.donatie-body{padding:18px 20px;font-size:15px;line-height:1.6;color:#222;}

/* ---------- Calendarul (flatpickr) ---------- */
.flatpickr-calendar{border-radius:8px;border:1px solid var(--border);box-shadow:0 3px 13px rgba(0,0,0,.15);width:210px!important;font-size:12px;}
.flatpickr-months{background:var(--blue);border-radius:7px 7px 0 0;}
.flatpickr-month{color:#fff;fill:#fff;}
.flatpickr-months .flatpickr-month{height:28px;}
.flatpickr-current-month{font-size:100%;padding-top:5px;height:28px;}
.flatpickr-current-month .flatpickr-monthDropdown-months, .flatpickr-current-month input.cur-year{color:#fff;}
.flatpickr-current-month .flatpickr-monthDropdown-months .flatpickr-monthDropdown-month{color:#1a1f2b;}
.flatpickr-current-month input.cur-year{font-size:100%;padding-right:10px;}
.flatpickr-current-month .numInputWrapper{width:4.4em;}
.flatpickr-prev-month, .flatpickr-next-month{color:#fff!important;fill:#fff!important;height:28px;padding:7px;}
.flatpickr-prev-month:hover, .flatpickr-next-month:hover{color:#dde6f0!important;}
.flatpickr-prev-month:hover svg, .flatpickr-next-month:hover svg{fill:#dde6f0!important;}
.flatpickr-weekdays{background:var(--bg);height:22px;}
span.flatpickr-weekday{color:var(--gray);font-weight:700;font-size:10px;}
.flatpickr-days, .dayContainer{width:196px!important;min-width:196px!important;max-width:196px!important;}
.flatpickr-day{color:var(--blue-dark);border-radius:6px;max-width:28px!important;height:28px!important;line-height:28px!important;font-size:12px;}
.flatpickr-day:hover{background:#dde6f0;border-color:#dde6f0;}
.flatpickr-day.today{border-color:var(--blue);}
.flatpickr-day.today:hover, .flatpickr-day.today:focus{background:var(--blue);border-color:var(--blue);color:#fff;}
.flatpickr-day.selected, .flatpickr-day.selected:hover, .flatpickr-day.selected:focus{background:var(--blue);border-color:var(--blue);color:#fff;}
.flatpickr-day.prevMonthDay, .flatpickr-day.nextMonthDay{color:#b9c2cf;}
.flatpickr-day:nth-child(7n+6):not(.prevMonthDay):not(.nextMonthDay):not(.selected),
.flatpickr-day:nth-child(7n):not(.prevMonthDay):not(.nextMonthDay):not(.selected){color:var(--red);}   /* sâmbăta și duminica roșii */
.numInputWrapper span{opacity:.85;}
.numInputWrapper:hover span{opacity:1;}
.numInputWrapper span:hover{background:rgba(255,255,255,.25);}
.flatpickr-current-month .numInputWrapper span.arrowUp:after{border-bottom-color:#fff;}
.flatpickr-current-month .numInputWrapper span.arrowDown:after{border-top-color:#fff;}

/* ---------- Ghid / text lung ---------- */
.ghid h3{margin:16px 0 6px;font-size:15.5px;color:var(--blue-dark);border-bottom:1px solid var(--border);padding-bottom:4px;}
.ghid h4{margin:10px 0 3px;font-size:13.5px;color:var(--blue);}
.ghid p{margin:4px 0 8px;line-height:1.55;}
.ghid ul{margin:2px 0 10px;padding-left:20px;line-height:1.55;}
.ghid li{margin-bottom:3px;}
.ghid code{background:#eef2f7;border-radius:3px;padding:1px 5px;font-size:12.5px;}

/* ---------- Tipărire / PDF ---------- */
@media print{
  @page{ @bottom-center{ content:"Pagina " counter(page) " din " counter(pages);
         font-family:'Times New Roman',Times,serif; font-size:10px; color:#000; } }
}


/* =====================================================================
   Componente adăugate 2 noiembrie 2026 (copiate identic din ReCaBis ui/index.html)
   ===================================================================== */

/* ---------- Opțiunea „Toate” / „Tot anul” din liste (sursa: select option.opt-tot, 27 oct 2026) ---------- */
select option.opt-tot{background:#123163;color:#fff;font-weight:700;}
.anluna-field select option{text-align:center;}

/* ---------- Casete „sold în Lei” lângă butoanele de monedă (sursa: .valuta-lei-carduri, Registrul Valută, 14 oct 2026) ---------- */
.valuta-lei-carduri{display:flex;gap:6px;margin-left:10px;flex-shrink:0;align-self:flex-start;margin-top:-3px;height:39px;margin-bottom:-11px;box-sizing:border-box;}
.valuta-lei-card{border:1px solid #cbd5e1;border-top-width:3px;border-radius:7px;background:#f8fafc;padding:1px 11px;line-height:1.1;text-align:center;min-width:114px;height:39px;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;}
.valuta-lei-card .vl-sold{font-size:12.5px;color:#64748b;white-space:nowrap;}
.valuta-lei-card .vl-lei{font-size:15.5px;font-weight:700;color:#1e3a5f;white-space:nowrap;}
.valuta-lei-card.curs-lipsa .vl-lei{color:#b45309;}

/* ---------- Tabel solduri lunare în Lei (sursa: .solduri-lei-table, 14 oct 2026) ---------- */
.solduri-lei-table{width:100%;border-collapse:collapse;font-size:15px;}
.solduri-lei-table th, .solduri-lei-table td{border:1px solid #cbd5e1;padding:6px 8px;}
.solduri-lei-table th{background:#e8eef7;text-align:center;}
.solduri-lei-table td.sl-amt{text-align:right;white-space:nowrap;}
.solduri-lei-table td.sl-curs{text-align:right;white-space:nowrap;color:#475569;}
.solduri-lei-table td.sl-luna{font-weight:600;white-space:nowrap;text-align:left;}
.solduri-lei-table td.sl-tot{text-align:right;font-weight:700;white-space:nowrap;}
.solduri-lei-table tr.sl-deschisa td{background:#fff7e6;}
/* varianta tipărită (Peisaj, 990px) */
#printArea .sl-regtable{width:990px;zoom:0.95;margin-top:24px;}
#printArea .sl-regtable td.sl-luna{white-space:nowrap;text-align:left;font-weight:bold;}
#printArea .sl-regtable td.sl-amt, #printArea .sl-regtable td.sl-curs, #printArea .sl-regtable td.sl-tot{text-align:right;white-space:nowrap;}
#printArea .sl-regtable td.sl-tot{font-weight:bold;}
#printArea .sl-nota{font-size:10pt;margin-top:8px;}

/* ---------- Bandă galbenă „numere lipsă” în dreapta titlului de card (sursa: .disp-lipsa, Dispoziții/Chitanțe, 31 oct 2026) ---------- */
.disp-lipsa{float:right;position:relative;font-weight:normal;font-size:14px;margin-top:-5px;max-width:68%;text-align:left;
    background:#fff4d6;border:1px solid #e6b800;border-left:5px solid #e6b800;border-radius:6px;padding:2px 10px;color:#5a4300;}
.disp-lipsa.hidden{display:none;}
.disp-lipsa.doar-confirmate{background:none;border:0;padding:0;color:#2e7d32;font-size:13px;}
.disp-lipsa b{color:var(--blue-dark);}
.disp-lipsa .dl-chip{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid #e6b800;border-radius:12px;
    padding:0 3px 0 9px;margin-left:8px;font-weight:700;color:var(--blue-dark);font-size:13px;}
.disp-lipsa .dl-chip button, .disp-lipsa .dl-sum{border:0;background:var(--blue-dark);color:#fff;border-radius:10px;padding:1px 9px;font-size:12px;cursor:pointer;}
.disp-lipsa .dl-sum{background:none;color:#5a4300;font-size:14px;font-weight:700;padding:0;}
.disp-lipsa .dl-panel{position:absolute;right:-1px;top:100%;margin-top:4px;z-index:50;background:#fff4d6;border:1px solid #e6b800;border-radius:6px;
    padding:8px 10px;min-width:360px;max-height:260px;overflow:auto;box-shadow:0 4px 12px #0003;}
.disp-lipsa .dl-panel .dl-chip{display:flex;justify-content:space-between;margin:4px 0;}
.disp-lipsa .dl-link{background:none;border:0;color:#2e7d32;text-decoration:underline;cursor:pointer;font-size:13px;padding:0;}
