:root {
    /* Boje iz loga: crvena #f82a12, tamnosiva #2b2b33 */
    --brand: #e0240e;          /* crvena za dugmad (malo tamnija zbog čitljivosti belog teksta) */
    --brand-dark: #b81c0a;
    --brand-logo: #f82a12;
    --ink: #2b2b33;
    --bs-body-color: #2b2b33;
    --bs-link-color: #c41f0b;
    --bs-link-color-rgb: 196, 31, 11;
    --bs-link-hover-color: #8f1608;
    --bs-link-hover-color-rgb: 143, 22, 8;
    --bs-primary: #e0240e;
    --bs-primary-rgb: 224, 36, 14;
}
html, body { height: 100%; }
body { display: flex; flex-direction: column; background: #f3f5f8; }
main { flex: 1 0 auto; }

.bg-brand { background: var(--brand); }
.navbar-brandbar { background: #fff; border-bottom: 3px solid var(--brand-logo); }
.navbar-brandbar .nav-link { color: var(--ink); font-weight: 500; }
.navbar-brandbar .nav-link:hover, .navbar-brandbar .nav-link:focus { color: var(--brand); }
.navbar-brandbar .navbar-logo { height: 40px; width: auto; }
.btn-ink { --bs-btn-color: #fff; --bs-btn-bg: var(--ink); --bs-btn-border-color: var(--ink);
    --bs-btn-hover-color: #fff; --bs-btn-hover-bg: #000; --bs-btn-hover-border-color: #000; }
.btn-outline-primary { --bs-btn-color: var(--brand); --bs-btn-border-color: var(--brand);
    --bs-btn-hover-bg: var(--brand); --bs-btn-hover-border-color: var(--brand); --bs-btn-active-bg: var(--brand-dark); --bs-btn-active-border-color: var(--brand-dark); }
.form-control:focus, .form-select:focus { border-color: #f08a7d; box-shadow: 0 0 0 .2rem rgba(224, 36, 14, .15); }
::placeholder { color: #adb5bd; opacity: 1; }
input::placeholder, textarea::placeholder { color: #adb5bd; }
.form-check-input:checked { background-color: var(--brand); border-color: var(--brand); }
.pagination { --bs-pagination-color: var(--ink); --bs-pagination-active-bg: var(--ink); --bs-pagination-active-border-color: var(--ink); --bs-pagination-hover-color: var(--brand); }
.text-bg-primary { background-color: var(--brand) !important; }
.btn-brand { --bs-btn-color: #fff; --bs-btn-bg: var(--brand); --bs-btn-border-color: var(--brand);
    --bs-btn-hover-color: #fff; --bs-btn-hover-bg: var(--brand-dark); --bs-btn-hover-border-color: var(--brand-dark);
    --bs-btn-active-bg: var(--brand-dark); --bs-btn-active-color: #fff; }

/* Katalog */
.catalog-table th { font-size: .8rem; text-transform: uppercase; letter-spacing: .03em; color: #6c757d; font-weight: 600; }
.catalog-table td { padding-top: .35rem; padding-bottom: .35rem; }
.col-img { width: 92px; }
.col-code { width: 90px; white-space: nowrap; }
.col-price { width: 130px; }
.col-order { width: 150px; }
.col-order input { max-width: 80px; }
.thumb { width: 76px; height: 76px; object-fit: contain; background: #fff; border: 1px solid #e5e7eb; border-radius: .375rem; padding: 2px; }
.thumb:hover { border-color: var(--brand); }

/* Mreža */
.product-card { transition: box-shadow .15s, border-color .15s; }
.product-card:hover { border-color: #f3b0a7; box-shadow: 0 .25rem .75rem rgba(0,0,0,.08) !important; }
.product-card-img { display: block; position: relative; aspect-ratio: 1 / 1; overflow: hidden; background: #fff; border-bottom: 1px solid #f1f3f5; border-radius: var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius) 0 0; }
.product-card-img img { position: absolute; inset: .75rem; width: calc(100% - 1.5rem); height: calc(100% - 1.5rem); object-fit: contain; }
.product-card-title { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; font-size: .925rem; line-height: 1.3; }
.product-card .js-qty { min-width: 0; }
.product-card.added { animation: added 1s ease; }
#results.loading { opacity: .55; transition: opacity .15s; }
tr.added { animation: added 1s ease; }
@keyframes added { from { background: #d1e7dd; } to { background: transparent; } }

.filter-groups { max-height: 60vh; overflow-y: auto; }
.filter-groups .list-group-item { font-size: .9rem; padding: .4rem .75rem; cursor: pointer; }
.filter-groups .list-group-item.empty { opacity: .45; }

.product-image { max-height: 420px; object-fit: contain; }
.no-image-lg { height: 300px; background: #f1f3f5; }
.card > .modal-header .btn-close { display: none; }

/* Korpa */
.cart-table input.js-cart-qty { width: 90px; }
.summary-sticky { position: sticky; top: 80px; }

/* Admin */
.admin-nav .nav-link { color: var(--ink); border-radius: .375rem; }
.admin-nav .nav-link.active { background: var(--ink); color: #fff; }
.admin-nav .nav-link:not(.active):hover { background: #e9ecef; }
.table-sm-text td, .table-sm-text th { font-size: .875rem; }
.thumb-sm { width: 48px; height: 48px; object-fit: contain; background: #fff; border: 1px solid #e5e7eb; border-radius: .25rem; }

@media (max-width: 575.98px) {
    .col-img { width: 76px; }
    .thumb { width: 64px; height: 64px; }
    .product-card-img img { inset: .4rem; width: calc(100% - .8rem); height: calc(100% - .8rem); }
    .product-card-title { font-size: .85rem; }
}
@media print {
    .navbar, footer, .no-print, .btn { display: none !important; }
    body { background: #fff; }
    .card { border: 0; box-shadow: none !important; }
    .col-lg-10 { width: 100% !important; flex: 0 0 100% !important; max-width: 100% !important; }
}
