@import url('open-iconic/font/css/open-iconic-bootstrap.min.css');
:root {
    --rz-primary: #bb343b !important;
    --rz-primary-lighter: #ffe5e5 !important;
    --rz-grid-hover-color: #bb343b !important;
}


html, body {
    font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

h1:focus {
    outline: none;
}

a, .btn-link {
    color: #0071c1;
}

.btn-primary {
    color: #fff;
    background-color: #1b6ec2;
    border-color: #1861ac;
}

.text-red,
.rz-selectable tbody tr.rz-data-row.rz-state-highlight .rz-cell-data, text-primary {
    color: #bb343b !important;
}

.content {
    padding-top: 1.1rem;
}

.valid.modified:not([type=checkbox]) {
    outline: 1px solid #26b050;
}

.invalid {
    outline: 1px solid red;
}

.validation-message {
    color: red;
}

#blazor-error-ui {
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

    #blazor-error-ui .dismiss {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }

.blazor-error-boundary {
    background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTYiIGhlaWdodD0iNDkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIG92ZXJmbG93PSJoaWRkZW4iPjxkZWZzPjxjbGlwUGF0aCBpZD0iY2xpcDAiPjxyZWN0IHg9IjIzNSIgeT0iNTEiIHdpZHRoPSI1NiIgaGVpZ2h0PSI0OSIvPjwvY2xpcFBhdGg+PC9kZWZzPjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMCkiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMzUgLTUxKSI+PHBhdGggZD0iTTI2My41MDYgNTFDMjY0LjcxNyA1MSAyNjUuODEzIDUxLjQ4MzcgMjY2LjYwNiA1Mi4yNjU4TDI2Ny4wNTIgNTIuNzk4NyAyNjcuNTM5IDUzLjYyODMgMjkwLjE4NSA5Mi4xODMxIDI5MC41NDUgOTIuNzk1IDI5MC42NTYgOTIuOTk2QzI5MC44NzcgOTMuNTEzIDI5MSA5NC4wODE1IDI5MSA5NC42NzgyIDI5MSA5Ny4wNjUxIDI4OS4wMzggOTkgMjg2LjYxNyA5OUwyNDAuMzgzIDk5QzIzNy45NjMgOTkgMjM2IDk3LjA2NTEgMjM2IDk0LjY3ODIgMjM2IDk0LjM3OTkgMjM2LjAzMSA5NC4wODg2IDIzNi4wODkgOTMuODA3MkwyMzYuMzM4IDkzLjAxNjIgMjM2Ljg1OCA5Mi4xMzE0IDI1OS40NzMgNTMuNjI5NCAyNTkuOTYxIDUyLjc5ODUgMjYwLjQwNyA1Mi4yNjU4QzI2MS4yIDUxLjQ4MzcgMjYyLjI5NiA1MSAyNjMuNTA2IDUxWk0yNjMuNTg2IDY2LjAxODNDMjYwLjczNyA2Ni4wMTgzIDI1OS4zMTMgNjcuMTI0NSAyNTkuMzEzIDY5LjMzNyAyNTkuMzEzIDY5LjYxMDIgMjU5LjMzMiA2OS44NjA4IDI1OS4zNzEgNzAuMDg4N0wyNjEuNzk1IDg0LjAxNjEgMjY1LjM4IDg0LjAxNjEgMjY3LjgyMSA2OS43NDc1QzI2Ny44NiA2OS43MzA5IDI2Ny44NzkgNjkuNTg3NyAyNjcuODc5IDY5LjMxNzkgMjY3Ljg3OSA2Ny4xMTgyIDI2Ni40NDggNjYuMDE4MyAyNjMuNTg2IDY2LjAxODNaTTI2My41NzYgODYuMDU0N0MyNjEuMDQ5IDg2LjA1NDcgMjU5Ljc4NiA4Ny4zMDA1IDI1OS43ODYgODkuNzkyMSAyNTkuNzg2IDkyLjI4MzcgMjYxLjA0OSA5My41Mjk1IDI2My41NzYgOTMuNTI5NSAyNjYuMTE2IDkzLjUyOTUgMjY3LjM4NyA5Mi4yODM3IDI2Ny4zODcgODkuNzkyMSAyNjcuMzg3IDg3LjMwMDUgMjY2LjExNiA4Ni4wNTQ3IDI2My41NzYgODYuMDU0N1oiIGZpbGw9IiNGRkU1MDAiIGZpbGwtcnVsZT0iZXZlbm9kZCIvPjwvZz48L3N2Zz4=) no-repeat 1rem/1.8rem, #b32121;
    padding: 1rem 1rem 1rem 3.7rem;
    color: white;
}

    .blazor-error-boundary::after {
        content: "An error has occurred."
    }

.d-inline {
    display:inline;
}

.d-inherit {
    display: inherit;
}

.r-background {
    background-color: #bb343b !important;
    height: 5% !important;
}

.b-background {
    background: #333333 !important;
}

.top-height {
    height:30px !important;
}

.info-icon {
    background-color: transparent !important;
    color: #bb343b !important;
}

.Logo {
    padding-top: 0.4% !important;
    /*    position: absolute;
    top: 15px;
    margin: 0px;
    padding: 0px;
    left: 50%;
    margin-left: -460px;
    font-size: 10px;
    width: 100%;
    height: 122px;*/
}

body {
    background:none !important;
}

.rz-dialog-title {
    color: #bb343b !important;
}

.t-center {
    text-align:center !important;
}

@media (max-width: 640.98px) {
    .top-row:not(.auth)[b-hql24g39b8] {
        display: flex !important;
    }
}

.pull-right {
    float:right !important;
}

.btn-primary {
    background-color: #bb343b !important;
}

.rzi-check {
    background-color: #bb343b !important;
}

.rz-chkbox-box.rz-state-active:hover:not(.rz-state-disabled)::after {
    background-color: #bb343b !important;
}

.rz-chkbox-box:hover:not(.rz-state-disabled) {
    border-color: #bb343b !important;
}

.rz-autocomplete:hover:not(.rz-state-disabled), .rz-radiobutton-box:hover:not(.rz-state-disabled), .rz-chkbox-box:hover:not(.rz-state-disabled), .rz-colorpicker:not(:disabled):not(.rz-state-disabled):hover, .rz-lookup-search input:not(:disabled):not(.rz-state-disabled):hover, .rz-spinner:not(:disabled):not(.rz-state-disabled):hover, .rz-calendar .rz-inputtext:not(:disabled):not(.rz-state-disabled):hover, .rz-multiselect:not(:disabled):not(.rz-state-disabled):hover, .rz-dropdown:not(:disabled):not(.rz-state-disabled):hover, .mask:not(:disabled):not(.rz-state-disabled):hover, .rz-textarea:not(:disabled):not(.rz-state-disabled):hover, .rz-textbox:not(:disabled):not(.rz-state-disabled):hover {
    border-color: #bb343b !important;
}


.rz-state-active, .rz-state-highlight, .rz-dropdown-item:hover, .rz-menuitem:hover, .rz-autocomplete-list-item:hover, .rz-multiselect-item:hover, .rz-dropdown-items li:hover, .rz-autocomplete-items li:hover, .rz-multiselect-items li:hover {
    background-color: rgb(187, 52, 59,0.08) !important;
    color: #bb343b !important;
    box-shadow: rgb(187, 52, 59,0.08) !important;
}

.rz-colorpicker:not(:disabled):not(.rz-state-disabled):focus, .rz-lookup-search input:not(:disabled):not(.rz-state-disabled):focus, .rz-spinner:not(:disabled):not(.rz-state-disabled):focus, .rz-calendar .rz-inputtext:not(:disabled):not(.rz-state-disabled):focus, .rz-multiselect:not(:disabled):not(.rz-state-disabled):focus, .rz-dropdown:not(:disabled):not(.rz-state-disabled):focus, .mask:not(:disabled):not(.rz-state-disabled):focus, .rz-textarea:not(:disabled):not(.rz-state-disabled):focus, .rz-textbox:not(:disabled):not(.rz-state-disabled):focus {
    border-color: rgb(187, 52, 59,0.08) !important;
    box-shadow: 0px 0px 0px 3px rgb(187, 52, 59,0.08) !important;
}

.rz-datepicker-calendar td .rz-state-active {
    color: #bb343b !important;
    background-color: rgb(187, 52, 59,0.08) !important;
    padding: var(--rz-datepicker-calendar-padding) !important;
}

.rz-datepicker-calendar td .rz-state-default:hover {
    text-decoration: none;
    color: #bb343b !important;
    background-color: rgb(187, 52, 59,0.08) !important;
    cursor: pointer;
}


.rz-sortable-column, .rz-grid-table thead th {
    background-color: #bb343b !important;
}


.rz-sortable-column-icon, .rz-column-title-content {
    color: white !important;
}

.valueRightPosition {
    justify-content:right;
    display:flex;
}

.r-border {
    border-right: 2px solid #bb343b !important;
}

.fa-big {
    font-size:45px !important;
}

.w-100 {
    width:100% !important;
}

.d-flex {
    display: flex;
}

.KosaricaNadaljujMaster {

    background-image: url(../Images/MasterCard.gif);
/*        url(../Images/MasterCard.gif);
*/    width: 80px;
    height: 50px;
    border: solid 1px #e7eaee;
}

.KosaricaNadaljujMaestro {

    background-image: url(../Images/Maestro.gif);
    width: 80px;
    height: 50px;
    border: solid 1px #e7eaee;
}


.KosaricaNadaljujVisa {

    background-image: url(../Images/Visa.jpg);
    width: 80px;
    height: 50px;
    border: solid 1px #e7eaee;
}

.KosaricaNadaljujVisaElectron {

    background-image: url(../Images/VisaEl.jpg);
    width: 80px;
    height: 50px;
    border: solid 1px #e7eaee;
}

.KosaricaNadaljujVisaVPay {

    background-image: url(../Images/VPay.jpg);
    width: 46px;
    height: 50px;
    border: solid 1px #e7eaee;
}

.KosaricaNadaljujActiva {

    background-image: url(../Images/Activa.jpg);
    width: 75px;
    height: 50px;
    border: solid 1px #e7eaee;
}

.KosaricaNadaljujAmex {

    background-image: url(../Images/Amex.jpg);
    width: 62px;
    height: 50px;
    border: solid 1px #e7eaee;
}




.KosaricaNadaljujMaster_Jamstvo {

    background-image: url(../Images/SecureCode.gif);
    width: 80px;
    height: 50px;
    border: solid 1px #e7eaee;
}

.KosaricaNadaljujVisa_Jamstvo {
    background-image: url(../Images/VerifiedVisa.jpg);
    width: 80px;
    height: 50px;
    border: solid 1px #e7eaee;
}

.w-50 {
    width: 50% !important;
}

/* Izbrana vrstica v RadzenDataGrid – light red */
.rz-selectable tbody tr.rz-data-row.rz-state-highlight > td,
.rz-selectable tbody tr.rz-data-row.rz-state-selected > td {
    background-color: #ffe5e5 !important; /* light red */
    color: #bb343b !important;
}

/* Hover nad vrstico (ne glede na selection) */
.rz-selectable tbody tr.rz-data-row:hover:not(.rz-state-highlight) > td:not(.rz-frozen-cell) {
    background-color: #fff2f2 !important;
    color: #bb343b !important;
}


.route-card {
    cursor: pointer;
    transition: all 0.2s;
}

    .route-card:hover {
        box-shadow: 0 4px 8px rgba(0,0,0,0.1);
        transform: translateY(-2px);
    }

    .route-card:active {
        transform: translateY(0);
    }



.header-mobile {
    border-radius: 8px;
    padding: 1rem;
}

.logo-responsive {
    max-width: 180px;
    width: 100%;
    height: auto;
}

/* Phone numbers styling */
.phone-numbers {
    font-size: 0.95rem;
    white-space: nowrap;
}

.phone-numbers-mobile {
    font-size: 0.9rem;
    line-height: 1.6;
}

/* Mobile specific */
@media (max-width: 768px) {
    .header-mobile {
        padding: 0.75rem;
    }

    .logo-responsive {
        max-width: 140px;
    }

    .phone-numbers-mobile {
        font-size: 0.85rem;
    }
}

/* Very small screens */
@media (max-width: 576px) {
    .logo-responsive {
        max-width: 120px;
    }
}




.cart-item-card {
    border: 1px solid #dee2e6;
    border-radius: 8px;
    transition: box-shadow 0.2s;
}

    .cart-item-card:hover {
        box-shadow: 0 4px 12px rgba(220, 53, 69, 0.2);
    }

.cart-item-footer {
    border-top: 1px solid #e9ecef;
    padding-top: 1rem;
    margin-top: 1rem;
}

.total-section {
    background-color: #f8f9fa;
    border-radius: 8px;
    border: 2px solid #dee2e6;
}

.payment-methods > div {
    min-width: 50px;
    min-height: 32px;
}

.btn-primary {
    background-color: #0d6efd;
    border-color: #0d6efd;
}

    .btn-primary:hover {
        background-color: #0b5ed7;
        border-color: #0a58ca;
    }

@media (max-width: 767px) {
    .payment-methods > div {
        min-width: 40px;
        min-height: 28px;
    }
}

@media (max-width: 576px) {
    h2 {
        font-size: 1.5rem;
    }

    .cart-item-card h5 {
        font-size: 1.1rem;
    }
}