/* Putni nalozi - vizuelni identitet */
:root {
  --pn-deep: #11403f;        /* tamna petrol zelena - boja putnih isprava */
  --pn-deep-2: #1b5957;
  --pn-accent: #c98a2d;      /* zlatno-oker, pečat/akcenat */
  --pn-bg: #f4f6f5;
  --pn-ink: #1f2a2a;
}

body {
  background: var(--pn-bg);
  color: var(--pn-ink);
  font-family: "Segoe UI", system-ui, -apple-system, sans-serif;
}

.app-nav {
  background: linear-gradient(135deg, var(--pn-deep) 0%, var(--pn-deep-2) 100%);
  border-bottom: 3px solid var(--pn-accent);
}
.app-nav .navbar-brand { font-weight: 600; letter-spacing: .02em; }
.app-nav .nav-link.active { color: #fff; font-weight: 600; }

.app-main { max-width: 1200px; }

.card { border: none; box-shadow: 0 1px 3px rgba(17, 64, 63, .10); border-radius: .65rem; }
.card-header {
  background: #fff;
  border-bottom: 2px solid var(--pn-bg);
  font-weight: 600;
  color: var(--pn-deep);
}

.btn-primary {
  --bs-btn-bg: var(--pn-deep);
  --bs-btn-border-color: var(--pn-deep);
  --bs-btn-hover-bg: var(--pn-deep-2);
  --bs-btn-hover-border-color: var(--pn-deep-2);
  --bs-btn-active-bg: var(--pn-deep-2);
  --bs-btn-active-border-color: var(--pn-deep-2);
}
.btn-outline-primary {
  --bs-btn-color: var(--pn-deep);
  --bs-btn-border-color: var(--pn-deep);
  --bs-btn-hover-bg: var(--pn-deep);
  --bs-btn-hover-border-color: var(--pn-deep);
  --bs-btn-active-bg: var(--pn-deep);
  --bs-btn-active-border-color: var(--pn-deep);
}
a { color: var(--pn-deep-2); }

.table > :not(caption) > * > * { padding: .55rem .65rem; }
.table thead th {
  font-size: .78rem; text-transform: uppercase; letter-spacing: .04em;
  color: #5d6b6a; font-weight: 600; border-bottom-width: 2px;
}

.badge-status-kreiran  { background: #e7eef4; color: #2b5777; }
.badge-status-zatvoren { background: #e8f3e9; color: #2e6b35; }
.badge-neprizat { background: #f8e9e9; color: #9c3a3a; }

.num { text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; }

.login-wrap { min-height: 100vh; display: flex; align-items: center; justify-content: center;
  background: linear-gradient(160deg, var(--pn-deep) 0%, var(--pn-deep-2) 60%, #2a6e6b 100%); }
.login-card { width: 100%; max-width: 400px; }
.login-stamp {
  width: 64px; height: 64px; border-radius: 50%;
  border: 2px dashed var(--pn-accent); color: var(--pn-accent);
  display: flex; align-items: center; justify-content: center; font-size: 1.6rem;
  margin: 0 auto 1rem; transform: rotate(-8deg);
}

.obracun-tabela td:first-child { width: 65%; }
.obracun-tabela .total { font-weight: 700; background: #f7f9f8; }

.file-chip {
  display: inline-flex; align-items: center; gap: .35rem;
  background: #eef3f2; border-radius: 2rem; padding: .15rem .65rem;
  font-size: .8rem; margin: .1rem .15rem .1rem 0; text-decoration: none; color: var(--pn-ink);
}
.file-chip:hover { background: #e0e9e7; }
.file-chip .del { color: #9c3a3a; }

/* mobilni prikaz tabela kao kartice */
@media (max-width: 767.98px) {
  .table-cards thead { display: none; }
  .table-cards tbody tr {
    display: block; background: #fff; border-radius: .6rem;
    box-shadow: 0 1px 3px rgba(17,64,63,.10); margin-bottom: .75rem; padding: .5rem .25rem;
  }
  .table-cards tbody td {
    display: flex; justify-content: space-between; gap: 1rem;
    border: none; padding: .3rem .75rem; text-align: right;
  }
  .table-cards tbody td::before {
    content: attr(data-l);
    font-size: .75rem; text-transform: uppercase; letter-spacing: .04em;
    color: #5d6b6a; font-weight: 600; text-align: left;
  }
  .table-cards tbody td.no-label { justify-content: flex-end; }
  .table-cards tbody td.no-label::before { content: none; }
}
