/* Dopune novog Obrta (faza 12+). Fajlovi osnova.css, aplikacija.css, tokeni.css i fonts.css su kopija starog Obrta i ne mijenjaju se. */

/* Padajući meni „⋯“ u tabelama (fakture, rashodi…) ne smije biti odsječen: tabela ima overflow-x: auto, pa bi
   meni ispod zadnjeg reda ostao nevidljiv (osobito kad je u tabeli jedan red). Dok je meni otvoren, tabela ne siječe. */
.table-wrap:has(.more-menu[open]) { overflow: visible !important; } /* !important jer stari CSS ima pravila po id-u (npr. #arhivaTable { overflow: hidden }) */

/* Dokumenti: polje za pretragu i izbor godine u istoj veličini kao ostala polja aplikacije */
.docs-toolbar .fld input, .docs-toolbar .fld select { font-size: 14px; min-height: 42px; }

/* Dijalog prije štampe (components/StampaDijalog.tsx): izbor potpisa i pečata kao dvije kartice; radio dugme ne smije naslijediti pravila polja (.fld input) */
.stampa-izbor { border: 0; margin: 0; padding: 0; min-width: 0; display: grid; gap: 8px; }
.stampa-izbor legend { padding: 0; margin-bottom: 8px; font-size: 12px; font-weight: 500; color: var(--dim); }
.stampa-opcija { display: flex; align-items: flex-start; gap: 12px; padding: 12px 14px; border: 1px solid var(--line-2); border-radius: 12px; background: var(--field); cursor: pointer; }
.stampa-opcija:has(input:checked) { border-color: var(--accent); background: color-mix(in srgb, var(--accent) 8%, var(--field)); box-shadow: 0 0 0 3px color-mix(in srgb, var(--accent) 12%, transparent); }
.stampa-opcija:has(input:focus-visible) { outline: 2px solid var(--accent); outline-offset: 2px; }
.stampa-opcija input { flex: none; width: 18px; height: 18px; min-height: 0; margin: 2px 0 0; accent-color: var(--accent); }
.stampa-opcija b { display: block; font-size: 14px; font-weight: 600; color: var(--text); }
.stampa-opcija small { display: block; margin-top: 2px; font-size: 12px; line-height: 1.4; color: var(--dim); }
.stampa-upozorenje { display: grid; gap: 6px; justify-items: start; padding: 12px 14px; border: 1px solid var(--danger); border-radius: 12px; background: color-mix(in srgb, var(--danger) 8%, var(--field)); }
.stampa-upozorenje b { font-size: 14px; color: var(--danger); }
.stampa-upozorenje span { font-size: 12px; line-height: 1.45; color: var(--dim); }


/* Kutija „Za plaćanje“ u uređivaču fakture: isti ljubičasti gradijent kao zbir na novom listu (lib/racun-prikaz-novi.ts) */
.editor .totals { background: linear-gradient(100deg, #5b1bb0 10%, #7637d6 55%, #a47bff 95%); border-color: transparent; box-shadow: 0 10px 26px -12px #5b1bb08c; }

/* Traka „Stanje na računu“ na početnoj: isti ljubičasti gradijent kao zbir na novom listu fakture (lib/racun-prikaz-novi.ts) */
.balance, :root:not([data-theme="light"]) .balance { background: linear-gradient(100deg, #5b1bb0 10%, #7637d6 55%, #a47bff 95%); border-color: #7637d6; box-shadow: 0 10px 26px -12px #5b1bb08c; }
.balance:hover, :root:not([data-theme="light"]) .balance:hover { border-color: #a47bff; box-shadow: 0 12px 30px -10px #5b1bb0a6; }

/* Sažeta stavka fakture (Enter u polju cijene): jedan red s opisom i cijenom, alati za kopiranje ostaju */
.item--sazeta { padding-top: 8px; padding-bottom: 8px; }
.item--sazeta .item__head { display: flex; align-items: center; gap: 10px; margin: 0; }
.item--sazeta .item__sazeto { flex: 1; min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: 1px; background: none; border: 0; padding: 0; text-align: left; font: inherit; color: inherit; cursor: pointer; }
.item--sazeta .item__sazeto-opis { max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.item--sazeta .item__sazeto-cijena { font-size: 12px; color: var(--dim); }

/* Evidencije (KPR, KP, sredstva): isti prikaz tabele kao EPO-1044 (kartica s naslovom, ravna tabela s linijama ćelija, centrirana zaglavlja) */
.knjiga-wrap { overflow-x: auto; }
.knjiga-app th { text-align: center; vertical-align: middle; white-space: normal; line-height: 1.25; border: 1px solid var(--line); }
.knjiga-app th.grp { font-weight: 700; color: var(--text); }
.knjiga-app td { border: 1px solid var(--line); vertical-align: middle; }
.knjiga-app td.num { white-space: nowrap; }
.knjiga-app tfoot td { border: 1px solid var(--line); }

/* Sekcije uređivača fakture: zasebne kartice sa strelicom za skupljanje (kao stavke) */
.panel--kartica { border: 1px solid var(--line); border-radius: var(--r); background: var(--panel); padding: 14px 16px; margin-bottom: 12px; }
.panel--kartica:first-of-type { padding-top: 14px; }
.panel--kartica .panel__title { cursor: pointer; user-select: none; margin-bottom: 12px; }
.panel--kartica.is-collapsed .panel__title { margin-bottom: 0; }
.panel__strelica { margin-left: auto; font-style: normal; color: var(--dim); transition: transform .15s; }
.panel--kartica.is-collapsed .panel__strelica { transform: rotate(-90deg); }

/* Kutija „Za plaćanje“ u uređivaču: nešto veći tekst (Barlow je uži, pa je prije djelovao sitno) */
.editor .totals dl { font-size: 16px; gap: 6px 12px; }
.editor .totals dt.grand { font-size: 18px; }
.editor .totals dd.grand { font-size: 26px; }
.editor .totals .words { font-size: 13.5px; }

/* Opis stavke: više redova (Enter), raste s tekstom */
textarea.opis-stavke { width: 100%; resize: none; overflow: hidden; min-height: 40px; line-height: 1.35; font: inherit; }

/* Traka B / I / U ispod opisa stavke */
.fmt-traka { display: flex; gap: 6px; margin-top: 6px; }
.fmt-dugme { min-width: 34px; height: 30px; padding: 0 8px; border: 1px solid var(--line); border-radius: 8px; background: var(--panel); color: var(--text); cursor: pointer; font: inherit; font-size: 13px; }
.fmt-dugme:hover { border-color: var(--accent); }
.fmt-dugme--b { font-weight: 800; }
.fmt-dugme--i { font-style: italic; }
.fmt-dugme--u { text-decoration: underline; }

/* Sažeta stavka ne smije širiti listu stavki: duga linija opisa se skraćuje (…), a alati ostaju vidljivi u kartici */
.items { min-width: 0; grid-template-columns: minmax(0, 1fr); }
.items > .item { min-width: 0; max-width: 100%; }
.item--sazeta .item__head { min-width: 0; }
.item--sazeta .item__head > * { min-width: 0; }
.item--sazeta .item__sazeto { overflow: hidden; }
.item--sazeta .item__sazeto-cijena { white-space: nowrap; }
.item--sazeta .item__head { flex-wrap: wrap; }
.item--sazeta .item__sazeto { flex: 1 1 140px; }
