/* ServisCore Pro - GLOBAL THEME v2 */

:root{
    --sc-bg:#F8FAFC;
    --sc-card:#FFFFFF;
    --sc-sidebar:#0F172A;
    --sc-text:#0F172A;
    --sc-muted:#64748B;
    --sc-border:#CBD5E1;
    --sc-primary:#2563EB;
    --sc-input:#FFFFFF;
    --sc-table-head:#F1F5F9;
    --sc-danger:#DC2626;
    --sc-success:#16A34A;
    --sc-warning:#F59E0B;
}

body.dark-mode{
    --sc-bg:#020617;
    --sc-card:#0F172A;
    --sc-sidebar:#020617;
    --sc-text:#FFFFFF;
    --sc-muted:#CBD5E1;
    --sc-border:#334155;
    --sc-primary:#60A5FA;
    --sc-input:#0B1220;
    --sc-table-head:#1E293B;
}

body{
    background:var(--sc-bg)!important;
    color:var(--sc-text)!important;
}

.layout,
.main,
.content,
.page,
.wrapper{
    background:var(--sc-bg)!important;
    color:var(--sc-text)!important;
}

.sidebar{
    background:var(--sc-sidebar)!important;
    color:#FFFFFF!important;
}

.card,
.section,
.stat-box,
.kpi,
.user,
.result-box,
.box,
.panel,
.form-box,
.table-box,
.login-card,
.modal,
.dropdown-content,
.action-menu{
    background:var(--sc-card)!important;
    color:var(--sc-text)!important;
    border-color:var(--sc-border)!important;
}

h1,h2,h3,h4,h5,h6,
p,td,th,label,strong,small,span,li,div,
.value,.stat-value,.kpi .value,.month-title,.day-number,.chart-title{
    color:var(--sc-text)!important;
}

.label,
.stat-title,
.empty,
.small-note,
.company,
.help,
.muted{
    color:var(--sc-muted)!important;
}

input,
textarea,
select{
    background:var(--sc-input)!important;
    color:var(--sc-text)!important;
    border:1px solid var(--sc-border)!important;
}

input::placeholder,
textarea::placeholder{
    color:#94A3B8!important;
}

table{
    background:var(--sc-card)!important;
    color:var(--sc-text)!important;
}

tr,td,th{
    border-color:var(--sc-border)!important;
    color:var(--sc-text)!important;
}

th{
    background:var(--sc-table-head)!important;
}

a{
    color:var(--sc-primary)!important;
}

.menu a{
    color:#CBD5E1!important;
}

.menu a.active,
.menu a:hover{
    color:#FFFFFF!important;
    background:#2563EB!important;
}

button,
.btn,
.action-btn,
.dropdown-btn,
button[type="submit"]{
    color:#FFFFFF!important;
}

.theme-toggle{
    background:#2563EB!important;
    color:#FFFFFF!important;
    border:0!important;
    border-radius:10px!important;
    padding:10px 16px!important;
    cursor:pointer!important;
    font-weight:bold!important;
    width:100%!important;
    margin:12px 0!important;
}

body.dark-mode .card,
body.dark-mode .section,
body.dark-mode .stat-box,
body.dark-mode .kpi,
body.dark-mode .user,
body.dark-mode .result-box{
    box-shadow:none!important;
}

body.dark-mode .btn.secondary,
body.dark-mode .clear-link,
body.dark-mode .archive-link,
body.dark-mode .filter-row a{
    background:#1E293B!important;
    color:#FFFFFF!important;
    border-color:#334155!important;
}

body.dark-mode .logo-preview{
    background:#FFFFFF!important;
}

/* AI odgovor */
.ai-output{
    background:#020617!important;
    color:#FFFFFF!important;
    border:1px solid #334155!important;
    font-weight:600!important;
}

.ai-output *{
    color:#FFFFFF!important;
}

/* Kalendar - svetla polja ostaju čitljiva */
.day,
.empty-day,
.calendar-cell,
.white-card,
.light-card{
    background:#FFFFFF!important;
    color:#0F172A!important;
}

.day *,
.empty-day *,
.calendar-cell *,
.white-card *,
.light-card *{
    color:#0F172A!important;
}

/* Statusi */
.badge,
.status-primljeno,
.status-u_dijagnostici,
.status-ceka_delove,
.status-u_radu,
.status-zavrseno,
.status-spremno,
.status-preuzeto,
.status-poslata,
.status-prihvacena,
.status-odbijena,
.status-istekla,
.status-na_cekanju,
.status-potvrdjeno,
.status-predlozen_drugi_termin,
.status-otkazano,
.paid,
.unpaid,
.partial,
.ok,
.low,
.archived{
    filter:none!important;
}

.ok,
.badge.ok,
.status-ok,
.badge-active,
.status-active,
.status-aktivan{
    background:#16A34A!important;
    color:#FFFFFF!important;
    font-weight:800!important;
}

.low,
.badge.low,
.status-low{
    background:#DC2626!important;
    color:#FFFFFF!important;
    font-weight:800!important;
}

.archived,
.badge.archived,
.status-archived,
.status-arhiviran{
    background:#64748B!important;
    color:#FFFFFF!important;
    font-weight:800!important;
}

/* Dashboard status kartice */
.status-card,
.status-box,
.status-item{
    background:var(--sc-card)!important;
    color:var(--sc-text)!important;
    border-color:var(--sc-border)!important;
}

/* Tamni režim za dashboard tamne blokove */
body.dark-mode .status-card,
body.dark-mode .status-box,
body.dark-mode .status-item{
    background:#0B1220!important;
    color:#FFFFFF!important;
}

/* Print ne diramo */
@media print{
    body{
        background:#FFFFFF!important;
        color:#000000!important;
    }

    .sidebar,
    .theme-toggle{
        display:none!important;
    }

    .card,
    .section,
    .main{
        background:#FFFFFF!important;
        color:#000000!important;
        box-shadow:none!important;
    }

    *{
        color:#000000!important;
    }
}

/* ServisCore Pro branding */
.brand-logo{
    display:flex!important;
    align-items:center!important;
    gap:10px!important;
    margin-bottom:6px!important;
    color:#FFFFFF!important;
    font-size:22px!important;
    font-weight:900!important;
    line-height:1.1!important;
}
.brand-logo img{
    width:46px!important;
    height:46px!important;
    object-fit:contain!important;
    flex:0 0 46px!important;
    border-radius:12px!important;
}
.brand-logo span{
    color:#FFFFFF!important;
}
.login-brand-logo{
    display:block!important;
    width:min(560px,92%)!important;
    height:auto!important;
    object-fit:contain!important;
}
.card-logo{
    display:block!important;
    width:84px!important;
    height:84px!important;
    object-fit:contain!important;
    margin:0 auto 16px!important;
    border-radius:18px!important;
}


/* =========================================================
   SERVISCORE PRO - MOBILNA OPTIMIZACIJA
   ========================================================= */

html{
    -webkit-text-size-adjust:100%;
    text-size-adjust:100%;
}

body{
    min-width:0!important;
    overflow-x:hidden!important;
}

img,
svg,
video,
canvas{
    max-width:100%!important;
    height:auto!important;
}

.layout{
    min-width:0!important;
}

.main,
.content,
.page,
.wrapper{
    min-width:0!important;
    width:100%!important;
}

.table-wrap,
.table-responsive{
    width:100%!important;
    overflow-x:auto!important;
    -webkit-overflow-scrolling:touch!important;
}

table{
    min-width:680px;
}

input,
textarea,
select,
button{
    min-height:44px;
    font-size:16px!important;
}

textarea{
    min-height:120px;
}

button,
.btn,
.action-btn,
.dropdown-btn,
.theme-toggle{
    touch-action:manipulation;
}

.dropdown-content,
.action-menu{
    max-width:calc(100vw - 24px)!important;
}

@media (max-width: 900px){

    .layout{
        display:block!important;
        min-height:100vh!important;
    }

    .sidebar{
        position:relative!important;
        width:100%!important;
        min-width:0!important;
        height:auto!important;
        padding:14px!important;
        border-right:0!important;
        border-bottom:1px solid var(--sc-border)!important;
    }

    .brand-logo{
        justify-content:flex-start!important;
        margin-bottom:12px!important;
    }

    .brand-logo img{
        width:40px!important;
        height:40px!important;
        flex-basis:40px!important;
    }

    .brand-logo span{
        font-size:20px!important;
    }

    .company{
        margin-bottom:12px!important;
        font-size:12px!important;
    }

    .menu{
        display:flex!important;
        gap:8px!important;
        overflow-x:auto!important;
        overflow-y:hidden!important;
        padding-bottom:6px!important;
        scrollbar-width:thin!important;
        -webkit-overflow-scrolling:touch!important;
    }

    .menu a{
        flex:0 0 auto!important;
        margin:0!important;
        padding:10px 12px!important;
        white-space:nowrap!important;
        border:1px solid rgba(148,163,184,.18)!important;
        font-size:14px!important;
    }

    .theme-toggle{
        width:auto!important;
        min-width:170px!important;
        flex:0 0 auto!important;
        margin:0!important;
        padding:10px 12px!important;
    }

    .main{
        padding:16px!important;
    }

    .topbar{
        display:flex!important;
        flex-direction:column!important;
        align-items:stretch!important;
        gap:12px!important;
        margin-bottom:18px!important;
    }

    .topbar h1{
        font-size:26px!important;
        line-height:1.15!important;
    }

    .user{
        width:100%!important;
        text-align:center!important;
    }

    .grid,
    .stats-grid,
    .kpi-grid,
    .two-columns,
    .three-columns,
    .form-grid{
        display:grid!important;
        grid-template-columns:1fr!important;
        gap:14px!important;
    }

    .card,
    .section,
    .stat-box,
    .kpi,
    .box,
    .panel,
    .form-box,
    .table-box{
        width:100%!important;
        padding:16px!important;
        border-radius:14px!important;
    }

    .stat-value,
    .kpi .value{
        font-size:24px!important;
    }

    .search-box,
    .filter-row,
    .toolbar,
    .actions,
    .button-row{
        display:flex!important;
        flex-direction:column!important;
        align-items:stretch!important;
        gap:10px!important;
    }

    .search-box input,
    .search-box select,
    .search-box button,
    .filter-row input,
    .filter-row select,
    .filter-row button,
    .toolbar input,
    .toolbar select,
    .toolbar button{
        width:100%!important;
        max-width:none!important;
        margin:0!important;
    }

    .btn,
    .action-btn,
    button[type="submit"]{
        width:100%!important;
        justify-content:center!important;
        text-align:center!important;
    }

    .modal{
        width:calc(100vw - 24px)!important;
        max-width:none!important;
        max-height:90vh!important;
        overflow-y:auto!important;
        margin:12px!important;
    }

    .ai-output{
        min-height:320px!important;
        font-size:15px!important;
        line-height:1.6!important;
        overflow-wrap:anywhere!important;
    }

    .preview-grid,
    .uploaded-grid{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }

    .photos{
        grid-template-columns:1fr!important;
    }

    .day,
    .calendar-cell{
        min-height:100px!important;
    }
}

@media (max-width: 560px){

    .main{
        padding:12px!important;
    }

    .sidebar{
        padding:12px!important;
    }

    .topbar h1{
        font-size:23px!important;
    }

    .card,
    .section,
    .stat-box,
    .kpi,
    .box,
    .panel,
    .form-box,
    .table-box{
        padding:14px!important;
    }

    table{
        min-width:620px;
        font-size:13px!important;
    }

    th,
    td{
        padding:10px!important;
    }

    .preview-grid,
    .uploaded-grid{
        grid-template-columns:1fr!important;
    }

    .badge{
        white-space:normal!important;
        line-height:1.3!important;
    }

    .login-card,
    .card.login-card{
        width:calc(100vw - 24px)!important;
        margin:12px auto!important;
        padding:18px!important;
    }

    .login-brand-logo{
        width:100%!important;
        max-width:360px!important;
        margin-left:auto!important;
        margin-right:auto!important;
    }
}


/* =========================================================
   SERVISCORE PRO - MOBILNI UX PRO v2
   ========================================================= */

:root{
    --sc-mobile-radius:16px;
    --sc-mobile-gap:12px;
    --sc-mobile-shadow:0 10px 30px rgba(15,23,42,.10);
}

body{
    padding-bottom:env(safe-area-inset-bottom)!important;
}

@media (max-width:900px){

    body{
        background:var(--sc-bg)!important;
    }

    .sidebar{
        position:sticky!important;
        top:0!important;
        z-index:1000!important;
        box-shadow:0 8px 24px rgba(2,6,23,.18)!important;
        padding-top:calc(12px + env(safe-area-inset-top))!important;
    }

    .brand-logo{
        width:100%!important;
        justify-content:center!important;
        padding:2px 0 8px!important;
    }

    .brand-logo img{
        width:38px!important;
        height:38px!important;
        flex-basis:38px!important;
    }

    .brand-logo span{
        font-size:19px!important;
        letter-spacing:.1px!important;
    }

    .company{
        text-align:center!important;
        font-size:11px!important;
        margin-bottom:10px!important;
    }

    .menu{
        scroll-snap-type:x proximity!important;
        scroll-padding-left:4px!important;
        padding:2px 2px 8px!important;
        margin:0 -2px!important;
    }

    .menu::-webkit-scrollbar{
        height:4px!important;
    }

    .menu::-webkit-scrollbar-thumb{
        background:#475569!important;
        border-radius:999px!important;
    }

    .menu a{
        scroll-snap-align:start!important;
        min-height:42px!important;
        display:flex!important;
        align-items:center!important;
        justify-content:center!important;
        padding:9px 13px!important;
        border-radius:12px!important;
        box-shadow:inset 0 0 0 1px rgba(148,163,184,.14)!important;
    }

    .menu a.active{
        box-shadow:0 6px 18px rgba(37,99,235,.28)!important;
    }

    .main{
        max-width:100%!important;
        padding:14px!important;
    }

    .topbar{
        position:relative!important;
        background:var(--sc-card)!important;
        border:1px solid var(--sc-border)!important;
        border-radius:var(--sc-mobile-radius)!important;
        padding:14px!important;
        box-shadow:var(--sc-mobile-shadow)!important;
    }

    .topbar h1{
        margin:0!important;
        text-align:center!important;
        font-size:24px!important;
    }

    .user{
        padding:10px 12px!important;
        border-radius:12px!important;
        font-size:14px!important;
    }

    .card,
    .section,
    .stat-box,
    .kpi,
    .box,
    .panel,
    .form-box,
    .table-box{
        border:1px solid var(--sc-border)!important;
        border-radius:var(--sc-mobile-radius)!important;
        box-shadow:var(--sc-mobile-shadow)!important;
        margin-bottom:var(--sc-mobile-gap)!important;
    }

    .card h2,
    .section h2,
    .box h2,
    .panel h2{
        font-size:19px!important;
        line-height:1.25!important;
        margin-bottom:12px!important;
    }

    .stats-grid,
    .kpi-grid{
        display:grid!important;
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        gap:10px!important;
    }

    .stat-box,
    .kpi{
        min-height:112px!important;
        display:flex!important;
        flex-direction:column!important;
        justify-content:center!important;
        text-align:center!important;
        padding:14px!important;
    }

    .stat-title,
    .kpi .label{
        font-size:12px!important;
        line-height:1.25!important;
    }

    .stat-value,
    .kpi .value{
        font-size:23px!important;
        margin-top:6px!important;
    }

    label{
        font-size:13px!important;
        margin-top:12px!important;
    }

    input,
    textarea,
    select{
        width:100%!important;
        border-radius:12px!important;
        padding:12px 13px!important;
        line-height:1.3!important;
    }

    input:focus,
    textarea:focus,
    select:focus{
        outline:none!important;
        border-color:var(--sc-primary)!important;
        box-shadow:0 0 0 3px rgba(37,99,235,.16)!important;
    }

    button,
    .btn,
    .action-btn,
    .dropdown-btn,
    .theme-toggle{
        border-radius:12px!important;
        min-height:46px!important;
        font-size:15px!important;
        font-weight:800!important;
    }

    .btn + .btn,
    button + button{
        margin-top:8px!important;
    }

    .table-wrap,
    .table-responsive{
        border:1px solid var(--sc-border)!important;
        border-radius:14px!important;
        background:var(--sc-card)!important;
    }

    table{
        border-collapse:separate!important;
        border-spacing:0!important;
    }

    th{
        position:sticky!important;
        top:0!important;
        z-index:2!important;
        font-size:12px!important;
    }

    th:first-child,
    td:first-child{
        position:sticky!important;
        left:0!important;
        z-index:1!important;
        background:var(--sc-card)!important;
    }

    th:first-child{
        z-index:3!important;
        background:var(--sc-table-head)!important;
    }

    td{
        vertical-align:middle!important;
        line-height:1.35!important;
    }

    .dropdown-content,
    .action-menu{
        position:fixed!important;
        left:12px!important;
        right:12px!important;
        bottom:12px!important;
        top:auto!important;
        width:auto!important;
        max-width:none!important;
        max-height:70vh!important;
        overflow-y:auto!important;
        border-radius:16px!important;
        padding:8px!important;
        box-shadow:0 24px 60px rgba(2,6,23,.35)!important;
        z-index:9999!important;
    }

    .dropdown-content a,
    .dropdown-content button,
    .action-menu a,
    .action-menu button{
        min-height:46px!important;
        border-radius:10px!important;
        margin-bottom:6px!important;
        display:flex!important;
        align-items:center!important;
        justify-content:center!important;
        text-align:center!important;
    }

    .success,
    .error,
    .warning,
    .notice,
    .alert{
        border-radius:14px!important;
        padding:13px 14px!important;
        font-size:14px!important;
        line-height:1.45!important;
    }

    .badge{
        display:inline-flex!important;
        align-items:center!important;
        justify-content:center!important;
        min-height:28px!important;
        padding:6px 10px!important;
        border-radius:999px!important;
        font-size:12px!important;
    }

    .ai-output{
        border-radius:14px!important;
        padding:14px!important;
        min-height:280px!important;
    }

    .dropzone{
        border-radius:14px!important;
        padding:20px 14px!important;
    }

    .lightbox{
        padding:12px!important;
    }

    .lightbox img{
        max-width:100%!important;
        max-height:86vh!important;
        border-radius:12px!important;
    }

    .modal-overlay,
    .lightbox{
        backdrop-filter:blur(4px)!important;
    }
}

@media (max-width:560px){

    .stats-grid,
    .kpi-grid{
        grid-template-columns:1fr 1fr!important;
    }

    .stat-box,
    .kpi{
        min-height:102px!important;
        padding:12px!important;
    }

    .stat-value,
    .kpi .value{
        font-size:21px!important;
    }

    .topbar h1{
        font-size:22px!important;
    }

    .card h2,
    .section h2,
    .box h2,
    .panel h2{
        font-size:18px!important;
    }

    .menu a{
        font-size:13px!important;
        padding:8px 11px!important;
    }

    .brand-logo span{
        font-size:18px!important;
    }

    .search-box,
    .filter-row,
    .toolbar,
    .actions,
    .button-row{
        gap:8px!important;
    }

    .card,
    .section,
    .stat-box,
    .kpi,
    .box,
    .panel,
    .form-box,
    .table-box{
        border-radius:14px!important;
    }
}

@media (max-width:380px){

    .stats-grid,
    .kpi-grid{
        grid-template-columns:1fr!important;
    }

    .main{
        padding:10px!important;
    }

    .sidebar{
        padding-left:10px!important;
        padding-right:10px!important;
    }

    .topbar{
        padding:12px!important;
    }
}


/* =========================================================
   SERVISCORE PRO - THEME ENGINE v3
   Završni globalni sloj
   ========================================================= */

:root{
    --sc-radius-sm:10px;
    --sc-radius:14px;
    --sc-radius-lg:18px;
    --sc-shadow-sm:0 4px 14px rgba(15,23,42,.07);
    --sc-shadow:0 10px 30px rgba(15,23,42,.10);
    --sc-shadow-hover:0 18px 42px rgba(15,23,42,.15);
    --sc-focus:0 0 0 3px rgba(37,99,235,.18);
    --sc-transition:.22s ease;
}

body.dark-mode{
    --sc-shadow-sm:0 4px 14px rgba(0,0,0,.22);
    --sc-shadow:0 10px 30px rgba(0,0,0,.30);
    --sc-shadow-hover:0 18px 42px rgba(0,0,0,.42);
    --sc-focus:0 0 0 3px rgba(96,165,250,.22);
}

/* Glatka promena teme */
body,
.layout,
.main,
.content,
.page,
.wrapper,
.sidebar,
.topbar,
.card,
.section,
.stat-box,
.kpi,
.user,
.result-box,
.box,
.panel,
.form-box,
.table-box,
.modal,
.dropdown-content,
.action-menu,
input,
textarea,
select,
button,
.btn,
a,
table,
tr,
td,
th{
    transition:
        background-color var(--sc-transition),
        color var(--sc-transition),
        border-color var(--sc-transition),
        box-shadow var(--sc-transition),
        transform var(--sc-transition);
}

/* Globalni okvir stranice */
body{
    line-height:1.5;
}

.main,
.content,
.page,
.wrapper{
    min-height:100vh;
}

/* Topbar */
.topbar{
    background:var(--sc-card)!important;
    color:var(--sc-text)!important;
    border:1px solid var(--sc-border)!important;
    border-radius:var(--sc-radius-lg)!important;
    padding:16px 18px!important;
    box-shadow:var(--sc-shadow-sm)!important;
}

.topbar h1,
.topbar h2,
.topbar h3{
    color:var(--sc-text)!important;
}

/* Kartice */
.card,
.section,
.stat-box,
.kpi,
.user,
.result-box,
.box,
.panel,
.form-box,
.table-box{
    border:1px solid var(--sc-border)!important;
    border-radius:var(--sc-radius)!important;
    box-shadow:var(--sc-shadow-sm)!important;
}

.card:hover,
.stat-box:hover,
.kpi:hover,
.panel:hover,
.box:hover{
    transform:translateY(-2px);
    box-shadow:var(--sc-shadow-hover)!important;
}

body.dark-mode .card,
body.dark-mode .section,
body.dark-mode .stat-box,
body.dark-mode .kpi,
body.dark-mode .user,
body.dark-mode .result-box,
body.dark-mode .box,
body.dark-mode .panel,
body.dark-mode .form-box,
body.dark-mode .table-box{
    box-shadow:var(--sc-shadow-sm)!important;
}

/* KPI naglasak */
.stat-box,
.kpi{
    position:relative;
    overflow:hidden;
}

.stat-box::before,
.kpi::before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    width:4px;
    height:100%;
    background:var(--sc-primary);
}

/* Forme */
input,
textarea,
select{
    border-radius:var(--sc-radius-sm)!important;
}

input:focus,
textarea:focus,
select:focus{
    outline:none!important;
    border-color:var(--sc-primary)!important;
    box-shadow:var(--sc-focus)!important;
}

input:disabled,
textarea:disabled,
select:disabled{
    opacity:.7;
    cursor:not-allowed;
}

/* Dugmad */
button,
.btn,
.action-btn,
.dropdown-btn,
button[type="submit"]{
    border-radius:var(--sc-radius-sm)!important;
    cursor:pointer!important;
    text-decoration:none!important;
}

button:hover,
.btn:hover,
.action-btn:hover,
.dropdown-btn:hover{
    transform:translateY(-1px);
    filter:brightness(1.05);
}

button:active,
.btn:active,
.action-btn:active,
.dropdown-btn:active{
    transform:translateY(0);
}

button:disabled,
.btn.disabled{
    opacity:.55!important;
    cursor:not-allowed!important;
    transform:none!important;
    filter:none!important;
}

/* Fokus tastature */
*:focus-visible{
    outline:2px solid var(--sc-primary)!important;
    outline-offset:2px!important;
}

/* Tabele */
.table-wrap,
.table-responsive{
    background:var(--sc-card)!important;
    border:1px solid var(--sc-border)!important;
    border-radius:var(--sc-radius)!important;
}

tbody tr:hover td{
    background:rgba(37,99,235,.05)!important;
}

body.dark-mode tbody tr:hover td{
    background:rgba(96,165,250,.08)!important;
}

/* Globalne poruke */
.success,
.error,
.warning,
.notice,
.alert{
    border:1px solid transparent!important;
    border-radius:var(--sc-radius-sm)!important;
}

.success{
    background:#DCFCE7!important;
    color:#166534!important;
    border-color:#86EFAC!important;
}

.error{
    background:#FEE2E2!important;
    color:#991B1B!important;
    border-color:#FCA5A5!important;
}

.warning{
    background:#FEF3C7!important;
    color:#92400E!important;
    border-color:#FCD34D!important;
}

.notice,
.alert.info{
    background:#DBEAFE!important;
    color:#1E40AF!important;
    border-color:#93C5FD!important;
}

.success *,
.error *,
.warning *,
.notice *,
.alert.info *{
    color:inherit!important;
}

/* Prošireni statusi */
.badge.info,
.status-info{
    background:#2563EB!important;
    color:#FFFFFF!important;
}

.badge.warning,
.status-warning,
.status-na_cekanju,
.status-ceka_delove{
    background:#F59E0B!important;
    color:#111827!important;
}

.badge.processing,
.status-processing,
.status-u_radu,
.status-u_dijagnostici{
    background:#7C3AED!important;
    color:#FFFFFF!important;
}

.badge.finished,
.status-finished,
.status-zavrseno,
.status-spremno{
    background:#16A34A!important;
    color:#FFFFFF!important;
}

/* Linkovi unutar sadržaja */
.main a:not(.btn):not(.menu a),
.content a:not(.btn),
.page a:not(.btn){
    text-underline-offset:3px;
}

/* Scrollbar */
*{
    scrollbar-width:thin;
    scrollbar-color:#64748B transparent;
}

::-webkit-scrollbar{
    width:10px;
    height:10px;
}

::-webkit-scrollbar-track{
    background:transparent;
}

::-webkit-scrollbar-thumb{
    background:#64748B;
    border-radius:999px;
}

::-webkit-scrollbar-thumb:hover{
    background:#475569;
}

/* Modal */
.modal{
    background:var(--sc-card)!important;
    color:var(--sc-text)!important;
    border:1px solid var(--sc-border)!important;
    border-radius:var(--sc-radius-lg)!important;
    box-shadow:0 28px 80px rgba(2,6,23,.35)!important;
}

/* Desktop sidebar */
@media (min-width:901px){
    .sidebar{
        position:sticky!important;
        top:0!important;
        height:100vh!important;
        overflow-y:auto!important;
        flex:0 0 260px!important;
    }

    .menu a{
        border-radius:var(--sc-radius-sm)!important;
    }

    .menu a:hover{
        transform:translateX(2px);
    }
}

/* Na dodirnim ekranima nema lebdenja kartica */
@media (hover:none){
    .card:hover,
    .stat-box:hover,
    .kpi:hover,
    .panel:hover,
    .box:hover,
    button:hover,
    .btn:hover,
    .action-btn:hover,
    .dropdown-btn:hover{
        transform:none!important;
    }
}

/* Print - v3 zaštita */
@media print{
    .topbar{
        border:0!important;
        padding:0!important;
        box-shadow:none!important;
    }

    .card,
    .section,
    .stat-box,
    .kpi,
    .box,
    .panel,
    .form-box,
    .table-box{
        border-color:#D1D5DB!important;
        box-shadow:none!important;
        transform:none!important;
    }

    button,
    .btn,
    .action-btn,
    .dropdown-btn{
        display:none!important;
    }
}
