/* UKPO R8.3.18 — Booking & Check-in, simple default view.
   Scoped presentation only; existing advanced administration stays available. */
#p-bookings .easy-intro{padding:13px 15px;border:1px solid #c5e0e8;background:linear-gradient(125deg,#f1fbfc,#fff);border-radius:13px;font-size:13px;line-height:1.55;color:#385c6d;margin-bottom:13px}
#p-bookings .easy-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin-bottom:12px}
#p-bookings .easy-tab{background:#fff;border:1px solid #cddfe6;border-radius:11px;min-height:68px;padding:11px 12px;text-align:left;color:#215067;cursor:pointer}
#p-bookings .easy-tab strong{display:block;font-size:15px;line-height:1.25}#p-bookings .easy-tab small{color:#667f8f;font-size:11px;display:block;margin-top:4px;line-height:1.25}
#p-bookings .easy-tab.active{border:2px solid #07899e;background:#eaf9fb;padding:10px 11px}#p-bookings .easy-tab:focus-visible,#p-bookings .easy-main button:focus-visible{outline:3px solid #a8e5ed;outline-offset:2px}
#p-bookings .easy-controls{border:1px solid #d6e6ed;background:#fff;border-radius:13px;padding:14px;display:grid;grid-template-columns:minmax(165px,.9fr) minmax(200px,1.2fr) minmax(170px,1.1fr) minmax(145px,.9fr);gap:11px;align-items:end}
#p-bookings .easy-field label{display:block;font-size:12px;font-weight:850;color:#4c6879;margin-bottom:5px}#p-bookings .easy-field .input{width:100%;height:43px;font-size:14px}#p-bookings .easy-field.search{grid-column:span 1}
#p-bookings .easy-check{display:inline-flex;align-items:center;gap:8px;font-size:13px;min-height:42px;cursor:pointer;color:#406170;font-weight:700}#p-bookings .easy-check input{width:17px;height:17px;accent-color:#098aa1}
#p-bookings .easy-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:9px;margin:11px 0 14px}#p-bookings .easy-bottom .btn{font-size:13px}
#p-bookings .easy-help{font-size:12px;color:#547182;line-height:1.5}
#p-bookings .easy-kpis{display:grid;grid-template-columns:repeat(5,minmax(100px,1fr));gap:10px;margin:11px 0 15px}#p-bookings .easy-kpi{background:#fff;border:1px solid #dce9ef;border-radius:12px;padding:13px}#p-bookings .easy-kpi small{display:block;color:#648091;font-weight:850;font-size:11px;min-height:28px}#p-bookings .easy-kpi b{display:block;font-size:25px;color:#0d586d;font-variant-numeric:tabular-nums;margin-top:4px}#p-bookings .easy-kpi.warning b{color:#b36617}
#p-bookings .easy-status{border:1px solid #cfe6eb;background:#f2fafb;border-radius:11px;padding:11px 13px;color:#386577;font-size:12px;margin:11px 0}#p-bookings .easy-status.error{background:#fff2f3;color:#a1344b;border-color:#eec5ce}
#p-bookings .easy-group{background:#fff;border:1px solid #d7e6ed;border-radius:13px;margin:12px 0;overflow:hidden;box-shadow:0 3px 12px #143d4b07}#p-bookings .easy-group-head{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:14px;flex-wrap:wrap}
#p-bookings .easy-group-head h2{font-size:18px;line-height:1.3;color:#174257;margin:0 0 6px}#p-bookings .easy-group-head p{font-size:12px;color:#597588;margin:0;line-height:1.45}#p-bookings .easy-pills{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}
#p-bookings .easy-pill{display:inline-block;font-size:11px;font-weight:850;color:#286072;border:1px solid #d2e5e9;background:#f2f8fa;border-radius:999px;padding:5px 9px;white-space:nowrap}
#p-bookings .easy-pill.good{color:#086a52;background:#eaf8f1;border-color:#c8eadb}#p-bookings .easy-pill.amber{color:#935f08;background:#fff6e6;border-color:#f0deb5}#p-bookings .easy-pill.red{color:#a03951;background:#fff0f2;border-color:#f5d5dc}#p-bookings .easy-pill.blue{color:#19658b;background:#eef8ff;border-color:#cfe3f6}
#p-bookings .easy-toggle{border:1px solid #b8d6e0;background:#f7fcfd;color:#087f92;padding:10px 12px;border-radius:10px;font-weight:850;cursor:pointer;white-space:nowrap}
#p-bookings .easy-roster{border-top:1px solid #e3edf1}#p-bookings .easy-row{display:grid;grid-template-columns:minmax(160px,1.45fr) minmax(125px,.83fr) minmax(135px,1.05fr) minmax(135px,.84fr) auto;align-items:center;gap:12px;padding:12px 14px;border-bottom:1px solid #e8eff2;font-size:13px;color:#234758}#p-bookings .easy-row:last-child{border-bottom:0}#p-bookings .easy-row:nth-child(even){background:#fbfdfe}#p-bookings .easy-row.easy-heading{background:#f5fafc;font-size:11px;font-weight:900;color:#547487;padding-top:9px;padding-bottom:9px}
#p-bookings .easy-name{font-size:14px;font-weight:900;color:#113f54;display:block;line-height:1.35}#p-bookings .easy-sub{display:block;color:#718592;font-size:11px;line-height:1.5;overflow-wrap:anywhere;margin-top:3px}#p-bookings .easy-link{color:#087c99;text-decoration:none;font-size:12px;overflow-wrap:anywhere}#p-bookings .easy-link:hover{text-decoration:underline}#p-bookings .easy-pay{line-height:1.5}#p-bookings .easy-action{min-height:39px;border:1px solid #0b8ca1;background:#0b8ca1;color:#fff;font-size:12px;font-weight:900;border-radius:9px;cursor:pointer;padding:8px 12px;white-space:nowrap}#p-bookings .easy-action:hover{background:#087688}
#p-bookings .easy-empty{padding:24px;border:1px dashed #bcd7e1;background:#f8fcfd;border-radius:12px;font-size:13px;color:#617d8e;text-align:center;margin-top:12px}#p-bookings .easy-event{background:#fff;border:1px solid #dce8ee;border-radius:11px;padding:13px 14px;display:grid;grid-template-columns:130px 115px minmax(160px,1fr) minmax(190px,1.2fr) auto;gap:12px;align-items:center;margin:8px 0}#p-bookings .easy-event .easy-name{font-size:14px}#p-bookings .easy-event .easy-action{background:#fff;color:#087f92}#p-bookings .easy-event .easy-action:hover{background:#eefafb}
#p-bookings .easy-divider{margin:16px 0 8px;font-size:17px;color:#194558;font-weight:900}#p-bookings .easy-legend{font-size:12px;color:#648091;line-height:1.55;padding:10px 13px;margin:10px 0;border:1px solid #e0ebef;border-radius:10px;background:#fafcfd}
#p-bookings #bookingClassicWrap.hidden{display:none!important}#p-bookings .easy-advanced-header{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap;margin:14px 0}#p-bookings .easy-advanced-header p{color:#627e8b;font-size:12px;margin:4px 0 0}
@media(max-width:1350px){#p-bookings .easy-kpis{grid-template-columns:repeat(3,minmax(110px,1fr))}#p-bookings .easy-controls{grid-template-columns:repeat(2,minmax(0,1fr))}#p-bookings .easy-event{grid-template-columns:100px 105px minmax(130px,1fr) auto}#p-bookings .easy-event .easy-event-venue{grid-column:3/-2}}
@media(max-width:950px){#p-bookings .easy-row{grid-template-columns:minmax(140px,1.1fr) minmax(130px,1fr) minmax(125px,1fr) auto}#p-bookings .easy-row .easy-booked{display:none}#p-bookings .easy-row.easy-heading span.easy-booked{display:none}#p-bookings .easy-event{grid-template-columns:1fr 1fr auto}#p-bookings .easy-event .easy-event-venue{grid-column:1/3}}
@media(max-width:1100px) and (min-width:651px){#p-bookings .easy-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:650px){#p-bookings .easy-tabs{grid-template-columns:1fr 1fr}#p-bookings .easy-tab:last-child{grid-column:1/-1}#p-bookings .easy-controls{grid-template-columns:1fr 1fr;padding:10px;gap:8px}#p-bookings .easy-field.search{grid-column:1/-1}#p-bookings .easy-field label{font-size:11px}#p-bookings .easy-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}#p-bookings .easy-kpi{padding:10px}#p-bookings .easy-kpi b{font-size:23px}#p-bookings .easy-group-head h2{font-size:16px}#p-bookings .easy-row{display:grid;grid-template-columns:1fr auto;gap:7px 11px}#p-bookings .easy-row.easy-heading{display:none}#p-bookings .easy-row .easy-person{grid-column:1/2}#p-bookings .easy-row .easy-booked{display:none}#p-bookings .easy-row .easy-pay{grid-column:1/2}#p-bookings .easy-row .easy-att{grid-column:1/2}#p-bookings .easy-row .easy-act{grid-column:2;grid-row:1/4;align-self:center}#p-bookings .easy-event{grid-template-columns:1fr auto;gap:6px}#p-bookings .easy-event>div{grid-column:1}#p-bookings .easy-event .easy-event-venue{grid-column:1}#p-bookings .easy-event .easy-action{grid-column:2;grid-row:1/4}#p-bookings .easy-bottom{align-items:flex-start}#p-bookings .easy-bottom .easy-help{width:100%}}

#p-bookings .easy-name-link{background:transparent;border:0;text-align:left;padding:0;cursor:pointer}#p-bookings .easy-name-link:hover{text-decoration:underline;color:#087f92}
#ukpoAdminBookingModal .dhd h2{font-size:20px}#ukpoAdminBookingModal .dialog{max-width:min(760px,95vw)}#ukpoAdminBookingModal .admin-action-row .btn{min-height:45px;font-size:13px}#ukpoAdminBookingModal .admin-live-kv{line-height:1.5}#ukpoAdminBookingModal .admin-live-kv:nth-child(3){background:#f1fafb;border-color:#cde6e9}#ukpoAdminBookingModal .admin-live-kv:nth-child(3) b{font-size:16px;color:#0c4f68}

/* UKPO R8.3.41 — per-session print action */
#p-bookings .easy-group-actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap}
#p-bookings .easy-print-session{border:1px solid #b8d6e0;background:#fff;color:#087f92;padding:10px 12px;border-radius:10px;font-weight:850;cursor:pointer;white-space:nowrap}
#p-bookings .easy-print-session:hover{background:#eefafb}
@media(max-width:650px){#p-bookings .easy-group-actions{width:100%}#p-bookings .easy-group-actions button{flex:1}}

/* UKPO R8.3.50 — per-session bulk Check-in */
#p-bookings .easy-bulk-checkin{border:1px solid #0a8c68;background:#0a8c68;color:#fff;padding:10px 12px;border-radius:10px;font-weight:900;cursor:pointer;white-space:nowrap}
#p-bookings .easy-bulk-checkin:hover:not(:disabled){background:#087557;border-color:#087557}
#p-bookings .easy-bulk-checkin:disabled{cursor:not-allowed;opacity:.58;background:#eef4f3;color:#4f716a;border-color:#cbdcd8}
#p-bookings .easy-bulk-checkin.done:disabled{opacity:.82;background:#e9f7f1;color:#087056;border-color:#c9e8dc}
.easy-bulk-overlay{position:fixed;inset:0;z-index:10060;background:rgba(7,28,38,.58);display:flex;align-items:center;justify-content:center;padding:18px}
.easy-bulk-overlay.hidden{display:none!important}
.easy-bulk-dialog{width:min(620px,96vw);max-height:88vh;overflow:auto;background:#fff;border-radius:18px;box-shadow:0 22px 70px rgba(0,0,0,.28);color:#173e50}
.easy-bulk-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;padding:18px 19px 13px;border-bottom:1px solid #e1ebef}
.easy-bulk-head h2{margin:0;font-size:21px;color:#0b5266}.easy-bulk-head p{margin:5px 0 0;color:#66808e;font-size:12px}
.easy-bulk-close{border:0;background:#eef5f6;color:#315d69;width:36px;height:36px;border-radius:50%;font-size:24px;line-height:1;cursor:pointer}
.easy-bulk-body{padding:17px 19px}.easy-bulk-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.easy-bulk-stats>div{border:1px solid #dbe8ec;background:#f8fbfc;border-radius:11px;padding:11px}.easy-bulk-stats small{display:block;color:#6b818c;font-weight:800;font-size:10px;line-height:1.3;min-height:26px}.easy-bulk-stats b{display:block;font-size:24px;color:#0a6170;margin-top:4px}
.easy-bulk-warning{margin-top:13px;padding:12px 13px;border-radius:11px;background:#fff7e7;border:1px solid #ecdcb5;color:#725315;font-size:12px;line-height:1.55}
.easy-bulk-message{white-space:pre-wrap;margin-top:12px;padding:11px 12px;border-radius:10px;background:#f3f8fa;color:#476a79;font-size:12px}.easy-bulk-message:empty{display:none}.easy-bulk-message.success{background:#eaf8f1;color:#0b6b51;border:1px solid #c7eadb}.easy-bulk-message.error{background:#fff1f3;color:#9d344c;border:1px solid #efccd4}.easy-bulk-message.working{background:#eef8fb;color:#12657b;border:1px solid #cfe7ed}
.easy-bulk-foot{display:flex;justify-content:flex-end;gap:9px;padding:13px 19px 18px;border-top:1px solid #e5eef1}.easy-bulk-foot button{min-height:43px;border-radius:10px;padding:9px 15px;font-weight:900;cursor:pointer}.easy-bulk-cancel{background:#fff;border:1px solid #c9d9df;color:#466674}.easy-bulk-confirm{background:#0a8c68;border:1px solid #0a8c68;color:#fff}.easy-bulk-confirm:disabled{opacity:.6;cursor:not-allowed}
@media(max-width:650px){.easy-bulk-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.easy-bulk-dialog{border-radius:14px}.easy-bulk-head,.easy-bulk-body,.easy-bulk-foot{padding-left:14px;padding-right:14px}}

#p-bookings .easy-range-divider{margin-top:18px;border-top:1px solid #d8e8ed;padding-top:14px}

/* UKPO R8.3.52 / v22.1.106 — equipment loan / return tracking */
#p-bookings .easy-row{grid-template-columns:minmax(160px,1.35fr) minmax(120px,.75fr) minmax(130px,.95fr) minmax(120px,.72fr) minmax(220px,1.2fr) auto}
#p-bookings .easy-equipment{display:grid;gap:5px;min-width:210px}
#p-bookings .easy-equipment.saving{opacity:.58;pointer-events:none}
#p-bookings .easy-equipment.unavailable{border:1px dashed #d6a7ae;background:#fff6f7;color:#9c4455;border-radius:8px;padding:7px 8px;min-width:180px;font-size:11px}
#p-bookings .easy-equipment.unavailable small{display:block;margin-top:2px;color:#9b6e78;font-size:9.5px;line-height:1.35}
#p-bookings .easy-eq-line{display:grid;grid-template-columns:minmax(72px,1fr) auto auto;align-items:center;gap:5px;padding:4px 6px;border:1px solid #dce9ed;background:#f9fcfd;border-radius:8px}
#p-bookings .easy-eq-name{font-size:11px;font-weight:850;color:#2d5b6c;white-space:nowrap}
#p-bookings .easy-eq-check{display:inline-flex;align-items:center;gap:3px;font-size:10px;font-weight:900;color:#305d69;cursor:pointer;white-space:nowrap}
#p-bookings .easy-eq-check input{width:15px;height:15px;accent-color:#0a8b79;margin:0}
#p-bookings .easy-eq-check input:disabled{cursor:not-allowed;opacity:.45}
#p-bookings .easy-eq-check:has(input:checked){color:#087056}
@media(max-width:1150px){#p-bookings .easy-row{grid-template-columns:minmax(140px,1.15fr) minmax(115px,.9fr) minmax(120px,.9fr) minmax(210px,1.25fr) auto}#p-bookings .easy-row .easy-booked{display:none}#p-bookings .easy-row.easy-heading span.easy-booked{display:none}}
@media(max-width:780px){#p-bookings .easy-row{grid-template-columns:1fr auto;gap:7px 11px}#p-bookings .easy-row.easy-heading{display:none}#p-bookings .easy-row .easy-person{grid-column:1}#p-bookings .easy-row .easy-booked{display:none}#p-bookings .easy-row .easy-pay{grid-column:1}#p-bookings .easy-row .easy-att{grid-column:1}#p-bookings .easy-row .easy-eq{grid-column:1/-1}#p-bookings .easy-row .easy-act{grid-column:2;grid-row:1/4;align-self:center}#p-bookings .easy-equipment{grid-template-columns:repeat(3,minmax(0,1fr));min-width:0}#p-bookings .easy-eq-line{grid-template-columns:1fr auto auto;min-width:0}#p-bookings .easy-eq-name{white-space:normal}}
@media(max-width:520px){#p-bookings .easy-equipment{grid-template-columns:1fr}.easy-eq-line{padding:6px 7px}}


/* UKPO R8.3.75 / v22.1.129 — pending onsite payment / confirm */
#p-bookings .easy-row.easy-row-pending{background:#fffaf0;border-left:4px solid #e7ab34}
#p-bookings .easy-row.easy-row-pending:nth-child(even){background:#fff8e9}
#p-bookings .easy-pending-note{color:#93620b;font-weight:800}
#p-bookings .easy-act{display:flex;flex-direction:column;gap:6px;align-items:stretch}
#p-bookings .easy-action.easy-action-pay{background:#0a8c68;border-color:#0a8c68;color:#fff}
#p-bookings .easy-action.easy-action-pay:hover{background:#087557;border-color:#087557}
#p-bookings .easy-action.easy-action-secondary{background:#fff;color:#087f92}
#p-bookings .easy-action.easy-action-secondary:hover{background:#eefafb}
@media(max-width:780px){#p-bookings .easy-row.easy-row-pending{border-left-width:3px}#p-bookings .easy-act{min-width:145px}}

/* R8.3.81a / v22.1.135a — stable layout during Live refresh */
#p-bookings #easyResults{min-height:280px}
#p-bookings #easyKpis{min-height:84px}
#p-bookings .easy-loading-card{grid-column:1/-1;min-height:74px;border:1px solid #dce9ef;border-radius:12px;background:#f8fbfc;display:flex;align-items:center;justify-content:center;color:#5f7986;font-weight:800}
#p-bookings .easy-loading-panel{min-height:280px;border:1px solid #dce9ef;border-radius:12px;background:#f8fbfc;display:flex;align-items:flex-start;justify-content:center;padding-top:32px;color:#5f7986;font-weight:800}
#p-bookings .easy-refreshing #easyKpis,#p-bookings .easy-refreshing #easyResults{contain:layout paint}
#p-bookings #bookingClassicWrap{min-height:360px}
