/* ================= SABIRNICA – TABLICA ================= */
.sabirnica-table-wrap .sabirnica-table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
}

.sabirnica-table th,
.sabirnica-table td { 
  overflow: hidden;
  text-overflow: ellipsis;
}

/* No-wrap svugdje osim u Napomena */
.sabirnica-table th:not(.napomena),
.sabirnica-table td:not(.napomena) {
  white-space: nowrap;
}

/* “Tooltip” helper */
.td-tooltip { position: relative; }
.td-tooltip[title] { cursor: help; }

/* Spriječi da gumbi razvuku ćeliju */
.sabirnica-table .btn,
.sabirnica-table .btn-group { white-space: nowrap; }

/* ================= DRUGI RED (SUBROW) ================== */
.sabirnica-table .tr-sub {
  background-color: #222 !important;
  font-size: 0.9em;
}
.sabirnica-table .tr-sub td {
  border-top: none;
  padding-top: .2rem;
  padding-bottom: .4rem;
}
.sabirnica-table .td-spacer {
  background-color: transparent !important;
  border: none !important;
  padding: 0;
}

/* ================= NAPOMENA WRAP ======================= */
.sabirnica-table td.napomena,
.sabirnica-table th.napomena {
  white-space: normal;
  overflow-wrap: break-word;
  word-break: normal;
  hyphens: auto;
  min-width: 24rem;
  width: 28rem;
  max-width: 40rem;
  overflow: visible;
  text-overflow: clip;
}

/* Manje širine – suzi Napomenu da izbjegnemo vodoravni scroll */
@media (max-width: 1200px) {
  .sabirnica-table td.napomena,
  .sabirnica-table th.napomena {
    min-width: 18rem;
    width: 22rem;
    max-width: 28rem;
  }
}

/* ================ TOOLBAR & CONTAINER (ostavljeno) ===== */
.sabirnica-toolbar { display:flex; flex-wrap:wrap; gap:.5rem; align-items:center; justify-content:space-between; }
.sabirnica-toolbar .left, .sabirnica-toolbar .right { display:flex; flex-wrap:wrap; gap:.35rem; align-items:center; }
.sabirnica-toolbar.sticky { position:sticky; top:0; z-index:2; backdrop-filter:blur(4px); background:rgba(17,17,17,.6); }
.sabirnica-toolbar input.form-control.form-control-sm { min-width:220px; border-radius:999px; padding:.35rem .8rem; }
@media (max-width:768px){ .sabirnica-toolbar{ flex-direction:column; align-items:stretch; } .sabirnica-toolbar .right{ justify-content:flex-start; } }

.sabirnica-toolbar .btn-outline-secondary { background-color: rgba(108,117,125,.10); border-color: rgba(108,117,125,.55); color:#6c757d; }
.sabirnica-toolbar .btn-outline-primary   { background-color: rgba(13,110,253,.10);  border-color: rgba(13,110,253,.55);  color:#0d6efd; }
.sabirnica-toolbar .btn-outline-danger    { background-color: rgba(220,53,69,.10);   border-color: rgba(220,53,69,.55);   color:#dc3545; }
.sabirnica-toolbar .btn-outline-warning   { background-color: rgba(255,193,7,.15);   border-color: rgba(255,193,7,.55);   color:#664d03; }
.sabirnica-toolbar .btn-outline-success   { background-color: rgba(25,135,84,.10);   border-color: rgba(25,135,84,.55);   color:#198754; }
.sabirnica-toolbar .btn-outline-info      { background-color: rgba(13,202,240,.10);  border-color: rgba(13,202,240,.55);  color:#0dcaf0; }
.sabirnica-toolbar .btn-outline-primary:hover   { background-color: rgba(13,110,253,.18); }
.sabirnica-toolbar .btn-outline-secondary:hover { background-color: rgba(108,117,125,.18); }
.sabirnica-toolbar .btn-outline-danger:hover    { background-color: rgba(220,53,69,.18); }
.sabirnica-toolbar .btn-outline-warning:hover   { background-color: rgba(255,193,7,.25); }
.sabirnica-toolbar .btn-outline-success:hover   { background-color: rgba(25,135,84,.18); }
.sabirnica-toolbar .btn-outline-info:hover      { background-color: rgba(13,202,240,.18); }
.sabirnica-toolbar .btn-primary,
.sabirnica-toolbar .btn-success,
.sabirnica-toolbar .btn-info,
.sabirnica-toolbar .btn-secondary { box-shadow: 0 1px 2px rgba(0,0,0,.08); }
.sabirnica-toolbar .btn-group > .btn + .btn { margin-left: .35rem; }
.sabirnica-toolbar .btn-group .btn { border-radius: 999px !important; }

/* Full-width container */
.sabirnica-full.container,
.sabirnica-full.container-lg,
.sabirnica-full.container-xl,
.sabirnica-full.container-xxl { max-width:100% !important; width:100% !important; }
.sabirnica-table .tr-sub td:not(.td-spacer) {
  position: relative;
}
.sabirnica-table .tr-sub td:not(.td-spacer)::before {
  content: "";
  position: absolute;
  left: -8px; top: 6px; bottom: 6px;
  width: 4px;
  border-radius: 4px;
  background: rgba(255,255,255,.06);
}
/* Panel ispod retka – čitljivo i kompaktno */
.sabirnica-table .tr-sub > td.subwrap {
  background: #161a1f !important;
  border-top: 1px solid rgba(255,255,255,.08) !important;
  padding: .6rem .75rem !important;
}

/* Grid: 3 kolone gore, ispod napomena preko 3, desno akcije u svom stupcu */
.sabirnica-table .subgrid {
  display: grid;
  grid-template-columns: 1fr 2fr 1fr auto;
  gap: .6rem .9rem;
  align-items: start;
}
.sabirnica-table .subgrid .cell .lbl {
  font-size: .78rem; font-weight: 600; opacity: .75; margin-bottom: .15rem;
}
.sabirnica-table .subgrid .cell .val {
  font-size: .92rem; white-space: normal; word-break: normal; overflow-wrap: break-word;
}

/* Napomena – cijeli novi red preko prvih 3 stupca */
.sabirnica-table .subgrid .cell-napomena {
  grid-column: 1 / 4;
}
.sabirnica-table .subgrid .cell-actions {
  grid-column: 4 / 5; text-align: right;
}

/* Uži ekrani – složi u 2, pa 1 kolonu */
@media (max-width: 1400px) {
  .sabirnica-table .subgrid { grid-template-columns: 1fr 1fr auto; }
  .sabirnica-table .subgrid .cell-napomena { grid-column: 1 / 3; }
  .sabirnica-table .subgrid .cell-actions  { grid-column: 3 / 4; }
}
@media (max-width: 992px) {
  .sabirnica-table .subgrid { grid-template-columns: 1fr; }
  .sabirnica-table .subgrid .cell-napomena { grid-column: 1 / 2; }
  .sabirnica-table .subgrid .cell-actions  { text-align: left; }
}
.user-pill {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  padding: .15rem .5rem;
  border-radius: 999px;
  background: rgba(255,255,255,.06);
  font-size: .9rem;
}

.dot {
  display: inline-block;
  width: .55rem; height: .55rem;
  border-radius: 999px;
  box-shadow: 0 0 0 2px rgba(0,0,0,.15) inset;
}
.dot.online { background: #22c55e; } /* zelena */
.dot.idle   { background: #f59e0b; } /* žuta */
/* Error poruke - veće, jasnije i vidljive */
.errorlist, .help-block, .text-danger {
    color: #fff;                   /* bijeli tekst */
    background: #e11d48;           /* jaka crvena (Tailwind rose-600) */
    font-weight: 600;              /* bold da se istakne */
    font-size: 1rem;               /* veći font (oko 16px) */
    padding: 6px 10px;
    border-radius: 6px;
    margin-top: 6px;
    display: inline-block;
}
/* 🔧 Moderniji input stil */
form input, form select, form textarea {
    background-color: #ffffff;
    border: 2px solid #ccc;
    border-radius: 8px;
    padding: 8px 12px;
    width: 100%;
    transition: border-color 0.3s, box-shadow 0.3s;
}

form input:focus, form select:focus, form textarea:focus {
    border-color: #2563eb;  /* plava */
    box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.3);
    outline: none;
}
