/* Premium Reservations panel. Scoped to Reservations only. */
#reservationsView.premium-reservations{padding-top:18px!important;background:linear-gradient(180deg,#f7fbff 0,#f2f7fc 100%)}
#reservationsView.premium-reservations>.ui-status-summary{margin:0 0 14px}
#reservationsView.premium-reservations .ui-list-heading{display:flex;min-height:48px;margin:0 0 14px;align-items:center;gap:12px}
#reservationsView.premium-reservations .ui-list-heading>small{display:none}
#reservationsView.premium-reservations .ui-list-heading .reservation-period-tools{margin-right:auto!important;width:auto!important;flex-wrap:nowrap}
#reservationsView.premium-reservations .ui-list-heading .ui-primary{min-height:44px;padding:10px 17px;border-radius:10px;background:linear-gradient(180deg,#2d88e8,#1973c6)!important;border-color:#1973c6!important;color:#fff!important;box-shadow:0 6px 16px rgba(45,136,232,.18);font-weight:400!important;white-space:nowrap}
#reservationsView.premium-reservations .ui-list-heading .ui-primary:hover{filter:brightness(.97)}

#reservationsView.premium-reservations .ui-status-strip{grid-template-columns:repeat(7,minmax(118px,1fr));gap:10px;margin:0;overflow-x:auto;padding:0 0 3px;scrollbar-width:thin}
#reservationsView.premium-reservations .ui-status-card{display:grid!important;grid-template-columns:1fr;grid-template-rows:auto auto;gap:3px;min-width:118px;min-height:70px;padding:12px 14px;border-radius:11px;background:var(--premium-status)!important;border:1px solid color-mix(in srgb,var(--premium-status) 78%,#000)!important;box-shadow:0 4px 13px color-mix(in srgb,var(--premium-status) 20%,transparent);align-items:center;text-align:left;color:var(--premium-status-fg)!important;font-weight:400!important;transition:transform .12s ease,box-shadow .12s ease,filter .12s ease}
#reservationsView.premium-reservations .ui-status-card:hover{filter:brightness(.98);transform:translateY(-1px)}
#reservationsView.premium-reservations .ui-status-card::before{display:none!important}
#reservationsView.premium-reservations .ui-status-card strong{grid-column:1;font-size:20px!important;line-height:1;color:var(--premium-status-fg)!important;font-weight:400!important}
#reservationsView.premium-reservations .ui-status-card span{grid-column:1;font-size:10.5px;color:color-mix(in srgb,var(--premium-status-fg) 84%,transparent)!important}
#reservationsView.premium-reservations .ui-status-card[aria-pressed="true"]{box-shadow:0 0 0 3px #fff,0 0 0 5px var(--premium-status),0 6px 16px color-mix(in srgb,var(--premium-status) 28%,transparent)!important;filter:saturate(1.08)}
#reservationsView.premium-reservations [data-ui-status="RESERVED"]{--premium-status:#2d88e8;--premium-status-fg:#fff}
#reservationsView.premium-reservations [data-ui-status="CONFIRMED"]{--premium-status:#7b3fd1;--premium-status-fg:#fff}
#reservationsView.premium-reservations [data-ui-status="PREPAID"]{--premium-status:#45bfe7;--premium-status-fg:#07394b}
#reservationsView.premium-reservations [data-ui-status="ACTIVE"]{--premium-status:#22a964;--premium-status-fg:#fff}
#reservationsView.premium-reservations [data-ui-status="RETURNED"]{--premium-status:#efc13e;--premium-status-fg:#5f4700}
#reservationsView.premium-reservations [data-ui-status="CANCELLED"]{--premium-status:#d92b42;--premium-status-fg:#fff}
#reservationsView.premium-reservations [data-ui-status="VOID"]{--premium-status:#f18327;--premium-status-fg:#4a2500}

#reservationsView.premium-reservations>.panel{padding:0!important;border-radius:13px!important;border:1px solid #dce7f1!important;background:#fff!important;box-shadow:0 10px 28px rgba(31,73,117,.055)!important;overflow:visible!important}
#reservationsView.premium-reservations .premium-reservations-toolbar{display:flex!important;flex-direction:column;align-items:stretch!important;gap:0!important;margin:0!important;padding:14px 14px 12px;border-bottom:1px solid #e2eaf3}
#reservationsView.premium-reservations .premium-table-title{display:none}
#reservationsView.premium-reservations .premium-legacy-filter-shell{display:none!important}
#reservationsView.premium-reservations .premium-primary-filters{display:grid;grid-template-columns:minmax(160px,.6fr) minmax(320px,1.8fr) minmax(240px,1fr);gap:8px;align-items:center;width:100%}
#reservationsView.premium-reservations #premiumLocationFilter{grid-column:1;width:100%;min-width:0;background:#fbfdff;border-color:#d9e4ef}
#reservationsView.premium-reservations #reservationSearch{grid-column:2;width:100%;min-width:0!important;background:#fbfdff;padding-left:14px;border-color:#d9e4ef}
#reservationsView.premium-reservations .reservation-car-search{grid-column:3;width:100%;min-width:0}
#reservationsView.premium-reservations #reservationVehicleFilter{width:100%;min-width:0;background:#fbfdff;border-color:#d9e4ef}
#reservationsView.premium-reservations .premium-hidden-status,#reservationsView.premium-reservations .premium-hidden-search{display:none!important}
#reservationsView.premium-reservations .reservation-period-btn{min-width:92px;min-height:42px!important;padding:8px 12px!important;border-radius:9px!important;font-size:11px!important;background:#fff!important;color:#60758c!important;border:1px solid #d9e4ef!important;font-weight:400!important}
#reservationsView.premium-reservations .reservation-period-btn.active{background:#eaf4ff!important;color:#1266bd!important;border-color:#8fc1f2!important}
#reservationsView.premium-reservations .reservation-custom-range{position:absolute;z-index:50;top:calc(100% + 7px);left:0;background:#fff;border:1px solid #d9e4ef;border-radius:10px;padding:8px;box-shadow:0 12px 28px rgba(24,62,101,.13)}
#reservationsView.premium-reservations .reservation-custom-range input{min-height:38px;width:135px}

#reservationsView.premium-reservations #reservationTable{padding:0}
#reservationsView.premium-reservations .premium-table-wrap{max-height:none!important;overflow:auto!important;border:0!important;border-radius:0!important;background:#fff;scrollbar-width:thin}
#reservationsView.premium-reservations .premium-reservation-table{table-layout:fixed!important;min-width:1270px!important;border-spacing:0!important;border-collapse:separate!important}
#reservationsView.premium-reservations .premium-reservation-table th{height:42px!important;padding:10px 11px!important;background:#fbfdff!important;border-bottom:1px solid #dfe9f2!important;color:#5f7389!important;font-size:10.5px!important;position:sticky;top:0;z-index:5;font-weight:400!important;white-space:nowrap}
#reservationsView.premium-reservations .premium-reservation-table th:nth-child(1){width:128px;text-align:center}
#reservationsView.premium-reservations .premium-reservation-table th:nth-child(2){width:190px}
#reservationsView.premium-reservations .premium-reservation-table th:nth-child(3){width:190px}
#reservationsView.premium-reservations .premium-reservation-table th:nth-child(4){width:205px}
#reservationsView.premium-reservations .premium-reservation-table th:nth-child(5){width:125px}
#reservationsView.premium-reservations .premium-reservation-table th:nth-child(6){width:75px;text-align:center}
#reservationsView.premium-reservations .premium-reservation-table th:nth-child(7){width:68px;text-align:center}
#reservationsView.premium-reservations .premium-reservation-table th:nth-child(8),#reservationsView.premium-reservations .premium-reservation-table th:nth-child(9),#reservationsView.premium-reservations .premium-reservation-table th:nth-child(10){width:105px;text-align:right}
#reservationsView.premium-reservations .premium-reservation-row{background:var(--row-bg,#fff)!important}
#reservationsView.premium-reservations .premium-reservation-row td{height:66px!important;padding:9px 11px!important;border-bottom:1px solid rgba(255,255,255,.82)!important;vertical-align:middle!important;background:var(--row-bg,#fff)!important;color:#193552!important;transition:filter .12s ease,box-shadow .12s ease;font-weight:400!important}
#reservationsView.premium-reservations .premium-reservation-row:hover td{filter:brightness(.985)}
#reservationsView.premium-reservations .premium-reservation-row.is-selected td{box-shadow:inset 0 1px #2b91ef,inset 0 -1px #2b91ef}
#reservationsView.premium-reservations .premium-reservation-row.is-selected td:first-child{box-shadow:inset 1px 0 #2b91ef,inset 0 1px #2b91ef,inset 0 -1px #2b91ef}
#reservationsView.premium-reservations .premium-reservation-row.is-selected td:last-child{box-shadow:inset -1px 0 #2b91ef,inset 0 1px #2b91ef,inset 0 -1px #2b91ef}
#reservationsView.premium-reservations .frch-status-reserved{--row-bg:#edf5ff}
#reservationsView.premium-reservations .frch-status-confirmed{--row-bg:#f4edfc}
#reservationsView.premium-reservations .frch-status-prepaid{--row-bg:#eaf8fd}
#reservationsView.premium-reservations .frch-status-active{--row-bg:#eaf9f0}
#reservationsView.premium-reservations .frch-status-returned{--row-bg:#fff5d9}
#reservationsView.premium-reservations .frch-status-cancelled{--row-bg:#ffeaed}
#reservationsView.premium-reservations .frch-status-void{--row-bg:#ffeddc}

#reservationsView.premium-reservations .premium-ref-cell{text-align:center!important}
#reservationsView.premium-reservations .premium-ref-wrap{display:flex;flex-direction:column;align-items:center;gap:4px}
#reservationsView.premium-reservations .premium-reservation-ref{display:inline-grid!important;place-items:center;min-width:76px;min-height:34px!important;padding:6px 11px!important;border-radius:9px!important;border:1px solid transparent!important;color:#fff!important;text-align:center;font-weight:400!important;box-shadow:0 2px 7px rgba(25,55,85,.11)}
#reservationsView.premium-reservations .premium-reservation-ref span{font-size:12px;line-height:1}
#reservationsView.premium-reservations .premium-reservation-ref.location-wak{background:#d94a55!important;border-color:#c53c47!important;color:#fff!important}
#reservationsView.premium-reservations .premium-reservation-ref.location-hyt{background:#f2c84a!important;border-color:#d7aa24!important;color:#493800!important}
#reservationsView.premium-reservations .premium-reservation-ref.location-imp{background:#3988dc!important;border-color:#2774c5!important;color:#fff!important}
#reservationsView.premium-reservations .premium-reservation-ref.location-other{background:#71869b!important;border-color:#60758a!important;color:#fff!important}
#reservationsView.premium-reservations .premium-reservation-ref:hover{filter:brightness(.97)}
#reservationsView.premium-reservations .premium-location-route{display:block;font-size:9.5px;color:#61778e;white-space:nowrap;text-align:center}
#reservationsView.premium-reservations .premium-main-text{display:block;font-size:12px;color:#173553;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#reservationsView.premium-reservations .premium-customer-cell small,#reservationsView.premium-reservations .premium-dates-cell small{display:block;margin-top:2px;color:#70859a;font-size:9.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

#reservationsView.premium-reservations .premium-category-cell{display:flex;align-items:center;gap:9px}
#reservationsView.premium-reservations .premium-category-thumb{width:58px;height:38px;min-width:58px;border-radius:8px;background:#ffffffc7;border:1px solid #d6e2ed;display:grid;place-items:center;color:#55718a;overflow:hidden}
#reservationsView.premium-reservations .premium-category-thumb img{width:100%;height:100%;object-fit:contain;padding:2px;box-sizing:border-box;mix-blend-mode:multiply}
#reservationsView.premium-reservations .premium-category-thumb svg{width:27px;height:27px;stroke:currentColor;fill:none;stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round}
#reservationsView.premium-reservations .premium-category-thumb.has-image{background:rgba(255,255,255,.78)}
#reservationsView.premium-reservations .premium-category-name{font-size:12px;color:#173553;line-height:1.25;white-space:normal}
#reservationsView.premium-reservations .premium-dates-cell span{display:block;font-size:11px;white-space:nowrap}

#reservationsView.premium-reservations .premium-status-cell{text-align:left}
#reservationsView.premium-reservations .premium-status-badge{display:inline-flex;align-items:center;gap:7px;border-radius:999px;padding:6px 10px;font-size:9.5px;line-height:1;background:#edf2f6;color:#4c6074;white-space:nowrap}
#reservationsView.premium-reservations .premium-status-badge i{width:7px;height:7px;border-radius:50%;background:currentColor;box-shadow:0 0 0 3px color-mix(in srgb,currentColor 12%,transparent)}
#reservationsView.premium-reservations .premium-status-badge.reserved{color:#1973c6;background:#ddecff}
#reservationsView.premium-reservations .premium-status-badge.confirmed{color:#7131bd;background:#eadbfa}
#reservationsView.premium-reservations .premium-status-badge.prepaid{color:#169acb;background:#d9f3fc}
#reservationsView.premium-reservations .premium-status-badge.active{color:#0c9250;background:#d6f4e3}
#reservationsView.premium-reservations .premium-status-badge.returned{color:#a67800;background:#ffeebc}
#reservationsView.premium-reservations .premium-status-badge.cancelled{color:#bd2133;background:#ffd9de}
#reservationsView.premium-reservations .premium-status-badge.void{color:#d66000;background:#ffe0c5}
#reservationsView.premium-reservations .premium-payment-status{display:block;margin:4px 0 0 10px;font-size:9px;color:#75899d}

#reservationsView.premium-reservations .premium-count-heading{text-align:center!important}
#reservationsView.premium-reservations .premium-count-cell{text-align:center!important}
#reservationsView.premium-reservations .premium-count-badge{display:inline-grid;place-items:center;min-width:30px;height:28px;padding:0 7px;border-radius:999px;border:1px solid #cfddea;background:#fff;color:#3f607d;font-size:11px;font-variant-numeric:tabular-nums}
#reservationsView.premium-reservations .premium-count-badge.invoice.has-count{background:#e7f2ff;border-color:#bdd8f4;color:#1c6db5}
#reservationsView.premium-reservations .premium-count-badge.extra.has-count{background:#edf8f1;border-color:#c6e3d2;color:#298155}
#reservationsView.premium-reservations .premium-count-badge.is-zero{opacity:.55}
#reservationsView.premium-reservations .premium-money-cell{text-align:right!important;font-size:11.5px;font-variant-numeric:tabular-nums;white-space:nowrap;color:#173553!important}
#reservationsView.premium-reservations .premium-paid-cell{color:#277b52!important}
#reservationsView.premium-reservations .premium-balance-cell.has-balance{color:#9a5c00!important}
#reservationsView.premium-reservations .premium-balance-cell.is-settled{color:#277b52!important}

#reservationsView.premium-reservations .premium-page-hidden{display:none!important}
#reservationsView.premium-reservations .premium-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:58px;padding:11px 14px;border-top:1px solid #e1e9f1;background:#fbfdff;border-radius:0 0 13px 13px}
#reservationsView.premium-reservations .premium-page-summary{font-size:10.5px;color:#677c91;min-width:180px}
#reservationsView.premium-reservations .premium-page-controls{display:flex;align-items:center;gap:4px;margin-left:auto}
#reservationsView.premium-reservations :is(.premium-page-number,.premium-page-arrow){width:31px;height:31px;min-height:31px!important;padding:0!important;border-radius:8px!important;border:1px solid #d7e2ec!important;background:#fff!important;color:#45637d!important;font-size:11px;font-weight:400!important}
#reservationsView.premium-reservations .premium-page-number[aria-current="page"]{background:#0a93b6!important;border-color:#0a93b6!important;color:#fff!important}
#reservationsView.premium-reservations .premium-page-ellipsis{padding:0 4px;color:#718599}
#reservationsView.premium-reservations .premium-page-size select{min-height:34px!important;padding:6px 28px 6px 9px;font-size:10.5px;background:#fff}
#reservationsView.premium-reservations .ui-list-footer{display:none}

html[data-theme="dark"] #reservationsView.premium-reservations{background:#101d2e}
html[data-theme="dark"] #reservationsView.premium-reservations>.panel,html[data-theme="dark"] #reservationsView.premium-reservations .premium-table-wrap{background:#182a40!important;border-color:#30455e!important}
html[data-theme="dark"] #reservationsView.premium-reservations .premium-reservations-toolbar,html[data-theme="dark"] #reservationsView.premium-reservations .premium-pagination,html[data-theme="dark"] #reservationsView.premium-reservations .premium-reservation-table th{background:#1b2d43!important;border-color:#30455e!important}
html[data-theme="dark"] #reservationsView.premium-reservations .premium-reservation-row td{color:#e6eef8;border-bottom-color:#263c54!important;filter:none;background:color-mix(in srgb,var(--row-bg) 21%,#182a40)!important}
html[data-theme="dark"] #reservationsView.premium-reservations :is(.premium-main-text,.premium-category-name,.premium-money-cell){color:#e9f1fb!important}
html[data-theme="dark"] #reservationsView.premium-reservations .premium-category-thumb{background:#20344a;border-color:#3b5169;color:#bcd0e4}
html[data-theme="dark"] #reservationsView.premium-reservations .premium-category-thumb img{mix-blend-mode:normal}
html[data-theme="dark"] #reservationsView.premium-reservations .premium-count-badge{background:#20344a;border-color:#3b5169;color:#d9e7f4}
html[data-theme="dark"] #reservationsView.premium-reservations :is(#reservationSearch,#premiumLocationFilter,#reservationVehicleFilter,.premium-page-size select){background:#1d314a;border-color:#3a5068;color:#e5edf8}

@media(max-width:1180px){#reservationsView.premium-reservations .premium-primary-filters{grid-template-columns:150px minmax(260px,1fr) minmax(220px,.9fr)}#reservationsView.premium-reservations .ui-status-strip{grid-template-columns:repeat(7,130px)}}
@media(max-width:760px){#reservationsView.premium-reservations{padding:12px!important}#reservationsView.premium-reservations .ui-list-heading{align-items:stretch;flex-direction:column}#reservationsView.premium-reservations .ui-list-heading .reservation-period-tools{width:100%!important;overflow-x:auto;order:1}#reservationsView.premium-reservations .ui-list-heading .ui-primary{width:100%;order:2}#reservationsView.premium-reservations .premium-primary-filters{display:flex;flex-direction:column}#reservationsView.premium-reservations .reservation-period-btn{min-width:92px}#reservationsView.premium-reservations .premium-pagination{flex-wrap:wrap}#reservationsView.premium-reservations .premium-page-summary{width:100%}#reservationsView.premium-reservations .premium-page-controls{margin-left:0}}
