/* Reservation lookup in the authenticated admin overview. */
.reservation-lookup { width:100%; max-width:var(--app-max-width); margin:0 auto 14px; padding:18px 24px; display:grid; grid-template-columns:minmax(0,1.2fr) minmax(220px,1fr) auto; gap:12px 20px; align-items:end; border:1px solid var(--line); border-radius:12px; background:var(--white); }
.reservation-lookup-copy,.reservation-lookup-field { min-width:0; }
.reservation-lookup-copy h2 { margin:0 0 5px; color:var(--ink); font-size:20px; line-height:1.4; }
.reservation-lookup-copy p { margin:0; color:var(--muted); font-size:14px; line-height:1.5; }
.reservation-lookup-field { display:grid; gap:6px; color:var(--ink); font-weight:700; }
.reservation-lookup-field input { width:100%; min-width:0; min-height:48px; padding:10px 12px; border:1px solid var(--line); border-radius:10px; background:#fff; color:var(--ink); font-size:16px; font-weight:500; unicode-bidi:isolate; }
.reservation-lookup-field input[aria-invalid="true"] { border-color:#b42318; }
.reservation-lookup-submit { width:48px; min-width:48px; height:48px; min-height:48px; padding:0; display:inline-flex; justify-content:center; align-items:center; border:0; border-radius:10px; background:var(--blue); color:#fff; cursor:pointer; }
.reservation-lookup-submit:hover { background:#0a43bb; }
.reservation-lookup-submit:disabled { opacity:.6; cursor:progress; }
.reservation-lookup-results { grid-column:1/-1; min-width:0; border-top:1px solid var(--line); padding-top:16px; }
.reservation-lookup-results[hidden] { display:none; }
.reservation-lookup-results > p { margin:0 0 12px; font-size:16px; color:var(--muted); }
.reservation-lookup-results ul { display:grid; gap:10px; list-style:none; padding:0; margin:0; max-height:480px; overflow-y:auto; }
.reservation-lookup-result { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.2fr) auto; grid-template-areas:"code name mobile status" "vehicle dates dates status"; gap:8px 16px; padding:16px; border:1px solid var(--line); border-radius:10px; color:var(--ink); background:#fff; text-decoration:none; font-size:16px; text-align:start; }
.reservation-lookup-result:dir(ltr) { grid-template-columns:auto minmax(0,1fr) minmax(0,1fr) minmax(0,1.2fr); grid-template-areas:"status code name mobile" "status vehicle dates dates"; }
.reservation-lookup-result:hover { border-color:var(--blue); background:#f5f8ff; }
.reservation-lookup-result:focus-visible { outline:3px solid #9dbcfb; outline-offset:-3px; }
.reservation-lookup-result > * { min-width:0; overflow-wrap:anywhere; }
.lookup-result-code { grid-area:code; color:var(--blue); }
.lookup-result-name { grid-area:name; }
.lookup-result-mobile { grid-area:mobile; }
.lookup-result-vehicle { grid-area:vehicle; }
.lookup-result-dates { grid-area:dates; }
.lookup-result-mobile,.lookup-result-dates,.lookup-result-vehicle { color:var(--muted); }
.lookup-result-status { grid-area:status; align-self:center; justify-self:start; max-width:110px; text-align:center; padding:3px 10px; border-radius:6px; background:#eaf0ff; color:#0a49bf; font-weight:700; }
.lookup-result-status[data-status="confirmed"],.lookup-result-status[data-status="active"] { background:#dde9ff; color:#0057ff; }
.lookup-result-status[data-status="cancelled"] { background:#fff0f0; color:#b42318; }
.lookup-result-status[data-status="completed"] { background:#edf1f7; color:#475569; }
.reservation-lookup input:focus-visible,.reservation-lookup-submit:focus-visible { outline:3px solid #9dbcfb; outline-offset:3px; }
.reservation-lookup-error { grid-column:1/-1; margin:0; color:#b42318; font-size:14px; overflow-wrap:anywhere; }
@media (max-width:900px) {
  .reservation-lookup { grid-template-columns:minmax(0,1fr) auto; }
  .reservation-lookup-copy { grid-column:1/-1; }
}
@media (max-width:600px) {
  .reservation-lookup { grid-template-columns:minmax(0,1fr) 48px; padding:16px; gap:12px; }
  .reservation-lookup-result { grid-template-columns:minmax(0,1fr) auto; grid-template-areas:"code status" "name status" "mobile status" "vehicle status" "dates status"; gap:6px 12px; padding:12px; }
  .reservation-lookup-result:dir(ltr) { grid-template-columns:auto minmax(0,1fr); grid-template-areas:"status code" "status name" "status mobile" "status vehicle" "status dates"; }
  .lookup-result-status { max-width:88px; }
}
.reservation-lookup-submit svg { width:20px; height:20px; flex-shrink:0; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; }
