/* ── Tamna tema Administracije (2026-11-05) ─────────────────────────────────────
   Aplikacija koristi Bootstrap 5.1 (nema ugrađene color modes), pa se tamna tema radi ovdje
   nad html[data-theme="dark"] (postavlja je skripta u App.razor / dugme u gornjoj traci).
   Kontrast (WCAG AA): tekst #e6e8ef na površini #1c1f2e ≈ 13:1, prigušeni tekst #a9b0c3 ≈ 7.6:1,
   linkovi #7cb8ff ≈ 7:1, bijeli tekst na dugmadima ostaje na tamnim akcentima (≥ 4.5:1). */

:root {
    --pm-page: #f0f0f5;
    --pm-surface: #ffffff;
    --pm-surface-2: #f8f9fa;
    --pm-text: #212529;
    --pm-today: #cfe2ff;
}

.pm-page-bg { background-color: var(--pm-page); }

html[data-theme="dark"] {
    --pm-page: #121420;
    --pm-surface: #1c1f2e;
    --pm-surface-2: #232838;
    --pm-surface-3: #2a3044;
    --pm-input: #161927;
    --pm-border: #353b52;
    --pm-border-strong: #4a5272;
    --pm-text: #e6e8ef;
    --pm-muted: #a9b0c3;
    --pm-link: #7cb8ff;
    --pm-today: #1d3557;
    color-scheme: dark;
}

html[data-theme="dark"] body { background-color: var(--pm-page); color: var(--pm-text); }
html[data-theme="dark"] h1, html[data-theme="dark"] h2, html[data-theme="dark"] h3,
html[data-theme="dark"] h4, html[data-theme="dark"] h5, html[data-theme="dark"] h6 { color: var(--pm-text); }
html[data-theme="dark"] a:not(.btn):not(.pm-link):not(.nav-link):not(.dropdown-item),
html[data-theme="dark"] .btn-link { color: var(--pm-link); }
html[data-theme="dark"] .text-reset { color: inherit !important; }
html[data-theme="dark"] hr { color: var(--pm-border-strong); opacity: 1; }
html[data-theme="dark"] code { color: #f79ac9; }
html[data-theme="dark"] .text-body, html[data-theme="dark"] .text-dark { color: var(--pm-text) !important; }
html[data-theme="dark"] .text-muted, html[data-theme="dark"] .text-secondary, html[data-theme="dark"] .form-text { color: var(--pm-muted) !important; }
html[data-theme="dark"] .text-primary { color: #7cb8ff !important; }
html[data-theme="dark"] .text-success { color: #6ee7a8 !important; }
html[data-theme="dark"] .text-danger { color: #ff8a93 !important; }
html[data-theme="dark"] .text-warning { color: #ffd166 !important; }
html[data-theme="dark"] .text-info { color: #6fdcf2 !important; }

/* Površine */
html[data-theme="dark"] .card,
html[data-theme="dark"] .modal-content,
html[data-theme="dark"] .dropdown-menu,
html[data-theme="dark"] .popover,
html[data-theme="dark"] .toast,
html[data-theme="dark"] .list-group-item,
html[data-theme="dark"] .accordion-item,
html[data-theme="dark"] .offcanvas { background-color: var(--pm-surface); color: var(--pm-text); border-color: var(--pm-border); }
html[data-theme="dark"] .card-header, html[data-theme="dark"] .card-footer,
html[data-theme="dark"] .modal-header, html[data-theme="dark"] .modal-footer { background-color: var(--pm-surface-2); border-color: var(--pm-border); color: var(--pm-text); }
html[data-theme="dark"] .card-header.bg-transparent { background-color: transparent !important; }
html[data-theme="dark"] .bg-white, html[data-theme="dark"] .bg-light, html[data-theme="dark"] .bg-body { background-color: var(--pm-surface) !important; color: var(--pm-text); }
html[data-theme="dark"] .border, html[data-theme="dark"] .border-top, html[data-theme="dark"] .border-bottom,
html[data-theme="dark"] .border-start, html[data-theme="dark"] .border-end { border-color: var(--pm-border) !important; }
html[data-theme="dark"] .shadow-sm { box-shadow: 0 .125rem .35rem rgba(0,0,0,.45) !important; }
html[data-theme="dark"] .dropdown-item { color: var(--pm-text); }
html[data-theme="dark"] .dropdown-item:hover, html[data-theme="dark"] .dropdown-item:focus { background-color: var(--pm-surface-3); color: var(--pm-text); }
html[data-theme="dark"] .list-group-item-action:hover { background-color: var(--pm-surface-3); color: var(--pm-text); }
html[data-theme="dark"] details > summary { color: var(--pm-text); }

/* Tabele (Bootstrap 5.1 koristi --bs-table-* varijable) */
html[data-theme="dark"] .table {
    color: var(--pm-text);
    border-color: var(--pm-border);
    --bs-table-bg: transparent;
    --bs-table-striped-bg: rgba(255,255,255,.04);
    --bs-table-striped-color: var(--pm-text);
    --bs-table-hover-bg: rgba(255,255,255,.06);
    --bs-table-hover-color: var(--pm-text);
    --bs-table-active-bg: rgba(255,255,255,.08);
    --bs-table-active-color: var(--pm-text);
    --bs-table-accent-bg: transparent;
}
html[data-theme="dark"] .table > :not(caption) > * > * { color: var(--pm-text); border-bottom-color: var(--pm-border); }
html[data-theme="dark"] .table-light, html[data-theme="dark"] .table-light > tr > th, html[data-theme="dark"] thead.table-light th {
    --bs-table-bg: var(--pm-surface-2);
    background-color: var(--pm-surface-2) !important;
    color: var(--pm-text) !important;
    border-color: var(--pm-border);
}
html[data-theme="dark"] .table-bordered > :not(caption) > * > * { border-color: var(--pm-border); }
html[data-theme="dark"] .text-muted.table > * > * > *, html[data-theme="dark"] tr.text-muted > td { color: var(--pm-muted) !important; }

/* Forme */
html[data-theme="dark"] .form-control,
html[data-theme="dark"] .form-select {
    background-color: var(--pm-input);
    color: var(--pm-text);
    border-color: var(--pm-border-strong);
}
html[data-theme="dark"] .form-control:focus, html[data-theme="dark"] .form-select:focus {
    background-color: var(--pm-input); color: var(--pm-text); border-color: #5b9bff;
}
html[data-theme="dark"] .form-control::placeholder { color: #8a91a8; opacity: 1; }
html[data-theme="dark"] .form-control:disabled, html[data-theme="dark"] .form-control[readonly],
html[data-theme="dark"] .form-select:disabled { background-color: var(--pm-surface-2); color: var(--pm-muted); }
html[data-theme="dark"] .form-select {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23c3c9da' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
}
html[data-theme="dark"] .input-group-text { background-color: var(--pm-surface-3); color: var(--pm-text); border-color: var(--pm-border-strong); }
html[data-theme="dark"] .form-check-input { background-color: var(--pm-input); border-color: #6a7396; }
html[data-theme="dark"] .form-check-input:checked { background-color: #2f7cf6; border-color: #2f7cf6; }
html[data-theme="dark"] .form-switch .form-check-input:not(:checked) {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23a9b0c3'/%3e%3c/svg%3e");
}
html[data-theme="dark"] .form-control-plaintext { color: var(--pm-text); }
html[data-theme="dark"] .btn:focus, html[data-theme="dark"] .form-control:focus, html[data-theme="dark"] .form-check-input:focus {
    box-shadow: 0 0 0 .1rem var(--pm-page), 0 0 0 .25rem #4d9bff;
}

/* Dugmad */
html[data-theme="dark"] .btn-outline-secondary { color: #c9cfdf; border-color: #5f678a; }
html[data-theme="dark"] .btn-outline-secondary:hover { background-color: var(--pm-surface-3); color: #fff; }
html[data-theme="dark"] .btn-outline-primary { color: #8fc1ff; border-color: #4d8fe8; }
html[data-theme="dark"] .btn-outline-primary:hover { background-color: #1b6ec2; color: #fff; }
html[data-theme="dark"] .btn-outline-success { color: #6ee7a8; border-color: #2f9e65; }
html[data-theme="dark"] .btn-outline-danger { color: #ff8a93; border-color: #d9505c; }
html[data-theme="dark"] .btn-outline-warning { color: #ffd166; border-color: #c99a2e; }
html[data-theme="dark"] .btn-outline-info { color: #6fdcf2; border-color: #2aa8c2; }
html[data-theme="dark"] .btn-outline-success:hover, html[data-theme="dark"] .btn-outline-danger:hover,
html[data-theme="dark"] .btn-outline-warning:hover, html[data-theme="dark"] .btn-outline-info:hover { color: #111; }
html[data-theme="dark"] .btn-light { background-color: var(--pm-surface-3); border-color: var(--pm-border-strong); color: var(--pm-text); }
html[data-theme="dark"] .btn-secondary { background-color: #4b5370; border-color: #4b5370; color: #fff; }
html[data-theme="dark"] .btn-close { filter: invert(1) grayscale(100%) brightness(200%); }

/* Navigacija, tabovi, paginacija */
html[data-theme="dark"] .nav-tabs { border-bottom-color: var(--pm-border); }
html[data-theme="dark"] .nav-tabs .nav-link { color: var(--pm-link); }
html[data-theme="dark"] .nav-tabs .nav-link:hover { border-color: var(--pm-border) var(--pm-border) transparent; }
html[data-theme="dark"] .nav-tabs .nav-link.active { background-color: var(--pm-surface); color: var(--pm-text); border-color: var(--pm-border) var(--pm-border) var(--pm-surface); }
html[data-theme="dark"] .nav-pills .nav-link:not(.active) { color: var(--pm-link); }
html[data-theme="dark"] .page-link { background-color: var(--pm-surface); border-color: var(--pm-border); color: var(--pm-link); }
html[data-theme="dark"] .page-item.disabled .page-link { background-color: var(--pm-surface-2); color: var(--pm-muted); }
html[data-theme="dark"] .page-item.active .page-link { background-color: #1b6ec2; border-color: #1b6ec2; color: #fff; }

/* Obavještenja: tamne podloge sa svijetlim tekstom (≥ 7:1) */
html[data-theme="dark"] .alert-primary { background-color: #10294d; border-color: #1f4b85; color: #b9d5ff; }
html[data-theme="dark"] .alert-secondary { background-color: #2b2f3a; border-color: #444b5c; color: #d4d8e2; }
html[data-theme="dark"] .alert-success { background-color: #0f3d2a; border-color: #1d6b47; color: #a8ecc6; }
html[data-theme="dark"] .alert-danger { background-color: #4a1518; border-color: #82262c; color: #ffbcc1; }
html[data-theme="dark"] .alert-warning { background-color: #43330a; border-color: #7a5c12; color: #ffe29a; }
html[data-theme="dark"] .alert-info { background-color: #0b3a47; border-color: #16687c; color: #aeeefb; }
html[data-theme="dark"] .alert-light { background-color: var(--pm-surface-2); border-color: var(--pm-border); color: var(--pm-text); }
html[data-theme="dark"] .alert .alert-link { color: inherit; }

/* Bedževi i trake */
html[data-theme="dark"] .badge.bg-light { background-color: var(--pm-surface-3) !important; color: var(--pm-text) !important; }
html[data-theme="dark"] .badge.bg-warning { color: #111 !important; }
html[data-theme="dark"] .progress { background-color: var(--pm-surface-3); }
html[data-theme="dark"] .spinner-border.text-primary { color: #7cb8ff !important; }

/* Inline stilovi starijih stranica (svijetle podloge upisane u markup) */
html[data-theme="dark"] [style*="background:#f8f9fa"], html[data-theme="dark"] [style*="background: #f8f9fa"],
html[data-theme="dark"] [style*="background-color: #f8f9fa"], html[data-theme="dark"] [style*="background-color:#f8f9fa"] { background: var(--pm-surface-2) !important; color: var(--pm-text); }
html[data-theme="dark"] [style*="background: #fff"], html[data-theme="dark"] [style*="background:#fff"],
html[data-theme="dark"] [style*="background-color: #fff"], html[data-theme="dark"] [style*="background-color:#fff"],
html[data-theme="dark"] [style*="background-color: white"], html[data-theme="dark"] [style*="background: white"] { background: var(--pm-surface) !important; color: var(--pm-text); }
html[data-theme="dark"] [style*="color: #212529"], html[data-theme="dark"] [style*="color:#212529"],
html[data-theme="dark"] [style*="color: #333"], html[data-theme="dark"] [style*="color:#333"],
html[data-theme="dark"] [style*="color: #444"], html[data-theme="dark"] [style*="color:#444"] { color: var(--pm-text) !important; }
html[data-theme="dark"] [style*="color: #666"], html[data-theme="dark"] [style*="color:#666"],
html[data-theme="dark"] [style*="color: #888"], html[data-theme="dark"] [style*="color:#888"] { color: var(--pm-muted) !important; }

/* Birač jezika (inline stil u LanguageSelector.razor) */
html[data-theme="dark"] .lang-sel > summary,
html[data-theme="dark"] .lang-sel .lang-menu { background: var(--pm-surface); color: var(--pm-text); border-color: var(--pm-border-strong); }
html[data-theme="dark"] .lang-sel .lang-menu button { color: var(--pm-text); }
html[data-theme="dark"] .lang-sel .lang-menu button:hover { background: var(--pm-surface-3); }

/* Oblačić pomoći (HelpTip) — svijetli oblačić na tamnoj stranici */
html[data-theme="dark"] .help-tip-bubble { background: #eef0f6; color: #15171f; }
html[data-theme="dark"] .help-tip-icon { color: var(--pm-muted); }

/* Grafikoni (Chart.js crta na canvasu — samo okvir) i plutajuće dugme */
html[data-theme="dark"] canvas { background-color: transparent; }
html[data-theme="dark"] .floating-save-btn { box-shadow: 0 .5rem 1.25rem rgba(0,0,0,.6) !important; }

/* Firmski parking */
html[data-theme="dark"] .corp-cell-off { background: repeating-linear-gradient(45deg, #23283a, #23283a 6px, #1d2131 6px, #1d2131 12px); color: var(--pm-muted); }

/* "subtle/emphasis" klase (app.css ih definiše za Bootstrap 5.1): u tamnoj temi tamna podloga + svijetao tekst,
   pa su čitljive i kao bedž (podloga + tekst) i kao samostalan obojen tekst na tamnoj stranici. */
html[data-theme="dark"] .bg-primary-subtle { background-color: #10294d !important; }
html[data-theme="dark"] .bg-secondary-subtle { background-color: #2b2f3a !important; }
html[data-theme="dark"] .bg-success-subtle { background-color: #0f3d2a !important; }
html[data-theme="dark"] .bg-info-subtle { background-color: #0b3a47 !important; }
html[data-theme="dark"] .bg-warning-subtle { background-color: #43330a !important; }
html[data-theme="dark"] .bg-danger-subtle { background-color: #4a1518 !important; }
html[data-theme="dark"] .text-primary-emphasis { color: #b9d5ff !important; }
html[data-theme="dark"] .text-secondary-emphasis { color: #d4d8e2 !important; }
html[data-theme="dark"] .text-success-emphasis { color: #a8ecc6 !important; }
html[data-theme="dark"] .text-info-emphasis { color: #aeeefb !important; }
html[data-theme="dark"] .text-warning-emphasis { color: #ffe29a !important; }
html[data-theme="dark"] .text-danger-emphasis { color: #ffbcc1 !important; }
