/* Final screen layout overrides, with no influence on print documents. */
@media screen {
    .evs-navbar.navbar { display: block; width: 100%; padding: 8px; background: #fff; border: 1px solid #dbe6eb; border-radius: 14px; box-shadow: 0 4px 16px rgba(32,59,73,.04); }
    .evs-nav-items { display: flex; align-items: stretch; gap: 5px; width: 100%; }
    .evs-nav-items .btn { flex: 1 1 auto; min-width: 0; white-space: nowrap; background: transparent; color: #496373; border: 0; border-radius: 9px; padding: 12px 10px; font-weight: 600; font-size: .88rem; }
    .evs-nav-items .btn:hover { color: #19596b !important; background: #edf5f7; }
    .evs-nav-items .btn[aria-current='page'] { background: #216f83; color: #fff; }
    .evs-nav-items .btn[aria-current='page']:hover { background: #19596b; color: #fff !important; }
    .evs-nav-toggle { display: none; }
    .evs-app .bookings-container > .row { display: grid; grid-template-columns: 125px minmax(120px, 1fr) minmax(115px, .8fr) 70px 90px 95px; gap: 8px; }
    .evs-app .invoices-container > .row { display: grid; grid-template-columns: 125px minmax(120px, 1fr) minmax(115px, .8fr) 70px 105px; gap: 8px; }
    .evs-app .bookings-container > .row > div, .evs-app .invoices-container > .row > div { width: auto; min-width: 0; padding: 0 4px; }
    .evs-app .bookings-container .btn, .evs-app .invoices-container .btn { width: 100%; min-width: 0; white-space: nowrap; word-break: normal; overflow-wrap: normal; padding: 9px 10px; }
    .evs-app .booking-form-container .form-control, .evs-app .booking-form-container .form-select { width: 100%; min-width: 0 !important; max-width: 100% !important; }
    .evs-app .booking-form-container input.datetimepicker { width: calc(100% - 38px) !important; }
    .evs-app .booking-form-container .ui-datepicker-trigger { width: 28px; height: 28px; margin-left: 6px; }
    .evs-app .evs-contract-form .evs-event-field { margin-bottom: 18px; min-width: 0; }
    .evs-app .evs-contract-form .evs-event-field > .form-label { display: block; margin: 0 0 8px; color: #4d6878; font-size: .86rem; font-weight: 600; }
    .evs-app .evs-contract-form .evs-date-control { display: flex; align-items: center; gap: 8px; min-width: 0; }
    .evs-app .evs-contract-form .evs-date-control input.datetimepicker { flex: 1 1 0; width: auto !important; min-width: 0; }
    .evs-app .evs-contract-form .evs-date-control .ui-datepicker-trigger { flex: 0 0 28px; margin: 0; cursor: pointer; }
    .evs-app .evs-contract-form #form-rows { padding: 18px 16px 20px; }
    .evs-app .evs-contract-form #form-rows div { margin-top: 0; }
    .evs-app .evs-contract-form #form-rows > .row { margin-left: 0; margin-right: 0; row-gap: 18px; }
    .evs-app .evs-contract-form #form-rows h5 { margin-top: 0; margin-bottom: 12px; line-height: 1.4; }
    .evs-app .evs-contract-form #form-rows .form-check { display: flex; align-items: flex-start; gap: 10px; padding: 6px 0; min-width: 0; }
    .evs-app .evs-contract-form #form-rows .form-check-input { flex: 0 0 1.1em; float: none; margin: .2em 0 0; }
    .evs-app .evs-contract-form #form-rows .form-check-label { min-width: 0; line-height: 1.5; overflow-wrap: anywhere; }
    .evs-app .evs-contract-form #form-rows .form-check > .form-control { flex: 1 1 0; width: auto; min-width: 0; }
    .evs-app #content > .container > .row.mt-5 { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-top: 8px !important; }
    .evs-app #content > .container > .row.mt-5 > .col-3 { width: auto; min-width: 0; }
    .evs-app #content > .container .datetimepicker { width: calc(100% - 38px); }
    .evs-app .settings-user-dates > div { min-width: 0; overflow-wrap: anywhere; }
    .evs-app #content .evs-filter-row { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 180px), 1fr)); gap: 12px; margin-left: 0; margin-right: 0; }
    .evs-app #content .evs-filter-row > div { width: auto !important; min-width: 0; padding-left: 0; padding-right: 0; }
    @media (max-width: 991px) {
        .evs-nav-items .btn { padding: 10px 7px; font-size: .8rem; }
        .evs-app .bookings-container > .row:first-child, .evs-app .invoices-container > .row:first-child { display: none; }
        .evs-app .bookings-container > .row:not(:first-child), .evs-app .invoices-container > .row:not(:first-child) { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; padding: 16px 12px; }
        [data-evs-label]::before { content: attr(data-evs-label); display: block; font-size: .7rem; font-weight: 600; color: #6b7d87; margin-bottom: 3px; }
    }
    @media (max-width: 767px) {
        .evs-nav-toggle { display: flex; justify-content: space-between; align-items: center; width: 100%; border: 0; border-radius: 8px; padding: 10px 12px; background: #edf5f7; color: #254d60; font-weight: 650; }
        .evs-nav-items { display: none; padding-top: 8px; }
        .evs-nav-open .evs-nav-items { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
        .evs-nav-items .btn { font-size: .86rem; padding: 12px 8px; }
        .evs-nav-items .btn:last-child { grid-column: span 2; }
        .evs-app #content > .container > .row.mt-5 { grid-template-columns: 1fr; }
        .evs-app .booking-form-container > .col-lg-3 { flex: 0 0 100%; width: 100%; }
        .evs-app .booking-form-container > .col-lg-6 { flex: 0 0 100%; width: 100%; }
        .evs-app .booking-form-container #form-rows > .row > .col-lg-4 { flex: 0 0 100%; width: 100%; }
        .evs-app .settings-heading p { max-width: 100%; }
    }
    @media (max-width: 389px) {
        .evs-app .bookings-container > .row:not(:first-child), .evs-app .invoices-container > .row:not(:first-child) { gap: 12px 6px; }
        .evs-app .bookings-container .btn, .evs-app .invoices-container .btn { font-size: .8rem; padding: 9px 6px; }
    }
}
