.diz {
  --diz-size: 13px;
  --diz-fg: #1f2328;
  --diz-muted: #656d76;
  --diz-bg: #fff;
  --diz-line: #d0d7de;
  --diz-head-bg: #f3f4f6;
  --diz-head-fg: #1f2328;
  --diz-stripe: #f8fafc;
  --diz-hover: #eef4ff;
  --diz-gr-bg: #e8eef8;
  --diz-mz-bg: #f3f4f6;
  --diz-vk-bg: #e5e7eb;
  --diz-pad: 5px 8px;
  --diz-alarm: #b42318;
  --diz-ok: #067647;
  --diz-warn: #b54708;
  --diz-info: #175cd3;
  --diz-sticky-top: 0px;
  font-size: var(--diz-size);
  color: var(--diz-fg);
}

/* header */
.diz-glava     { margin: 0 0 10px; }
.diz-naslov    { font-size: 1.35em; font-weight: 600; }
.diz-podnaslov { color: var(--diz-muted); margin-top: 2px; }
.diz-datum     { color: var(--diz-muted); font-size: .85em; margin-top: 2px; }

/* table */
.diz-tw { overflow-x: auto; }
.diz-t  { border-collapse: collapse; width: 100%; background: var(--diz-bg); }
.diz-t th,
.diz-t td { padding: var(--diz-pad); border-bottom: 1px solid var(--diz-line); text-align: left; vertical-align: top; }
.diz-t thead th {
  background: var(--diz-head-bg); color: var(--diz-head-fg); font-weight: 600; white-space: nowrap;
  position: sticky; top: var(--diz-sticky-top); z-index: 1;
}
.diz-t .br { text-align: right; white-space: nowrap; font-variant-numeric: tabular-nums; }
.diz-t .dt { white-space: nowrap; }
.diz-t tbody tr:hover > td { background: var(--diz-hover); }
.diz-t a { color: var(--diz-info); }

tr.diz-gr > td { background: var(--diz-gr-bg); font-weight: 600; }     /* group title */
tr.diz-mz > td { background: var(--diz-mz-bg); font-weight: 600; }     /* subtotal */
tr.diz-vk > td { background: var(--diz-vk-bg); font-weight: 700; border-top: 2px solid var(--diz-line); }  /* total */
.diz-lab { text-align: right !important; }

/* cards (IZGLED = KARTICA) */
.diz-karti { display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); gap: 10px; }
.diz-karta { border: 1px solid var(--diz-line); border-radius: 6px; overflow: hidden; break-inside: avoid; }
.diz-karta .diz-t th { width: 40%; background: var(--diz-head-bg); color: var(--diz-head-fg); position: static; }
.diz-karta .diz-t tr:last-child > * { border-bottom: 0; }

/* messages */
.diz-dno     { margin-top: 6px; color: var(--diz-muted); font-size: .85em; }
.diz-prazno,
.diz-upoz,
.diz-greska  { padding: 8px 10px; border-radius: 4px; margin: 6px 0; white-space: pre-line; }
.diz-prazno  { background: #f6f8fa; }
.diz-upoz    { background: #fffaeb; color: var(--diz-warn); }
.diz-greska  { background: #fef3f2; color: var(--diz-alarm); }

/* ---------- ready looks for DIZ_IZVESTAJ.CSS_KLASA ---------- */
.diz-kompakt  { --diz-pad: 2px 6px; --diz-size: 12px; }
.diz-golem    { --diz-size: 15px; --diz-pad: 7px 10px; }
.diz-zebra .diz-t tbody tr.diz-n > td { background: var(--diz-stripe); }
.diz-mreza .diz-t th,
.diz-mreza .diz-t td { border: 1px solid var(--diz-line); }
.diz-tesno .diz-t   { width: auto; }                 /* table only as wide as its content */
.diz-temno          { --diz-head-bg: #1f2937; --diz-head-fg: #fff; --diz-gr-bg: #dbe4f0; }
.diz-bez-glava .diz-glava,
.diz-bez-dno .diz-dno { display: none; }
/* diz-landscape: printed landscape (diz.js);  diz-bez-baranje: no search box */

/* ---------- classes for ROW_CSS and <COLUMN>__CSS ---------- */
.diz-alarm { color: var(--diz-alarm); font-weight: 600; }
.diz-ok    { color: var(--diz-ok); }
.diz-warn  { color: var(--diz-warn); }
.diz-info  { color: var(--diz-info); }
.diz-bold  { font-weight: 700; }
.diz-siv   { color: var(--diz-muted); }
.diz-precrtano { text-decoration: line-through; }
.diz-bg-alarm, .diz-bg-alarm > td { background: #fee4e2 !important; }
.diz-bg-ok,    .diz-bg-ok > td    { background: #dcfae6 !important; }
.diz-bg-warn,  .diz-bg-warn > td  { background: #fef0c7 !important; }
.diz-bg-info,  .diz-bg-info > td  { background: #d1e9ff !important; }

/* search and sort (diz.js) */
.diz-baraj { margin: 0 0 8px; padding: 4px 8px; width: 260px; max-width: 100%;
             border: 1px solid var(--diz-line); border-radius: 4px; font: inherit; }
.diz-sort .diz-t thead th { cursor: pointer; user-select: none; }
.diz-t th.diz-asc::after  { content: " \25B2"; font-size: .75em; }
.diz-t th.diz-desc::after { content: " \25BC"; font-size: .75em; }
.diz-filter tr.diz-gr,
.diz-filter tr.diz-mz,
.diz-filter tfoot { display: none; }      /* sums are hidden while searching */

/* required parameter on the page (diz.js) */
.diz-req .t-Form-label::after { content: " *"; color: var(--diz-alarm); }

/* print  */
@page { margin: 10mm 10mm 12mm 10mm;
        @bottom-right { content: counter(page) "/" counter(pages); font: 10px Arial, sans-serif; } }
@media print {
  .diz { --diz-size: 10pt; --diz-hover: transparent; color: #000; }
  .diz-t thead { display: table-header-group; }      /* column titles on every page */
  .diz-t thead th { position: static; }
  .diz-t tr { break-inside: avoid; }
  .diz-tw { overflow: visible; }
  .diz-baraj { display: none; }
  .diz-t a { color: inherit; text-decoration: none; }
  .diz, .diz * { -webkit-print-color-adjust: exact; print-color-adjust: exact; }
}

/* parameter fields drawn by diz.js (region diz_param) */
.diz-polinja { display: flex; flex-wrap: wrap; gap: 10px 14px; align-items: flex-end; }
.diz-pole { display: flex; flex-direction: column; min-width: 190px; }
.diz-pole label { font-size: 12px; color: #555; margin: 0 0 3px; }
.diz-pole input,
.diz-pole select { min-height: 34px; padding: 5px 8px; border: 1px solid #c8c8c8; border-radius: 4px;
                   font: inherit; font-size: 14px; background: #fff; color: #1f2328; }
.diz-pole input:focus,
.diz-pole select:focus { outline: 2px solid #175cd3; outline-offset: -1px; }
.diz-pole.diz-req label::after { content: " *"; color: #b42318; }

/* searchable select list (diz.js combo) */
.diz-combo { position: relative; width: 100%; }
.diz-combo-t { width: 100%; padding-right: 28px !important; cursor: text;
  background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23555' stroke-width='1.6'/%3E%3C/svg%3E") no-repeat right 10px center !important; }
.diz-pole .diz-combo-t { min-width: 260px; }
.diz-combo-l { position: fixed; z-index: 10000; margin: 0; padding: 4px 0; box-sizing: border-box;
               list-style: none; max-height: 320px; overflow-y: auto; min-width: 260px;
               background: #fff; border: 1px solid #c8c8c8; border-radius: 4px; box-shadow: 0 4px 14px rgba(0,0,0,.15); }
.diz-combo-l li { padding: 6px 10px; cursor: pointer; font-size: 14px; color: #1f2328; white-space: nowrap;
                  overflow: hidden; text-overflow: ellipsis; }
.diz-combo-l li.diz-combo-akt,
.diz-combo-l li[data-k]:hover { background: #e8f0fe; }
.diz-combo-l li.diz-combo-izb { font-weight: 600; }
.diz-combo-l li.diz-combo-nema { color: #777; cursor: default; font-style: italic; }

/* pages under the table (diz.js) */
.diz tr.diz-skr { display: none; }
.diz-strani { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin: 8px 0 4px; font-size: 13px; }
.diz-strani button { padding: 4px 10px; border: 1px solid #c8c8c8; border-radius: 4px; background: #f6f7f8;
                     color: #1f2328; font: inherit; cursor: pointer; }
.diz-strani button:hover:not(:disabled) { background: #e8f0fe; }
.diz-strani button:disabled { opacity: .45; cursor: default; }
.diz-strani-info { padding: 0 6px; font-weight: 600; }
.diz-strani-gol { margin-left: auto; color: #555; }
.diz-strani-gol select { padding: 3px 6px; border: 1px solid #c8c8c8; border-radius: 4px; font: inherit; }
@media print { .diz-strani { display: none; } .diz tr.diz-skr { display: table-row; } }



.diz-datum-w { position: relative; display: flex; }
.diz-datum-w .diz-datum-t { flex: 1; min-width: 0; border-top-right-radius: 0; border-bottom-right-radius: 0; }
.diz-datum-b { border: 1px solid #c8c8c8; border-left: 0; background: #f4f4f4; padding: 0 9px; cursor: pointer;
  border-radius: 0 4px 4px 0; font-size: 15px; }
.diz-datum-b:hover { background: #e6e6e6; } 
.diz-datum-k { position: absolute; left: 0; bottom: 0; width: 1px; height: 1px; opacity: 0; border: 0; padding: 0; pointer-events: none; } 
/* header classes (izv-*), 
.diz .izv-glava       { text-align: center; margin-bottom: 12px; }
.diz .izv-naslov      { font-size: 16px; font-weight: bold; text-transform: uppercase; margin-top: 8px; }
.diz .izv-razvleceno  { letter-spacing: .45em; }
.diz .izv-podnaslov   { font-size: 12px; margin-top: 4px; }
.diz .izv-datum       { font-size: 11px; text-align: right; }
.diz .izv-red         { display: flex; justify-content: space-between; font-size: 13px; }
.diz .izv-red span    { font-size: 12px; }
.diz .izv-red-levo    { justify-content: flex-start; margin-top: 10px; }
.diz .izv-dep         { margin-top: 12px; text-align: left; border-collapse: collapse; }
.diz .izv-dep td      { padding: 2px 14px 2px 0; }
