/* Scoped to the pickup form. Existing home, account, tracking and API behavior stay intact. */
#app .rt-compact-booking { --rt-action:var(--rt-button-green,#007f73); padding-bottom:115px; }
#app .rt-compact-booking>section { min-width:0; }
#app .rt-compact-booking>section>h2 { margin:14px 0 10px; font-size:20px; }
#app .rt-compact-booking .rt-catalogue-search { margin:0 0 12px; }
#app .rt-catalogue-search>.field { margin:0 0 8px; }
#app .rt-catalogue-search>.field>span { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.rt-search-controls { display:flex; align-items:center; min-height:50px; border:1px solid #b9d5ca; border-radius:12px; background:#fff; padding:0 4px 0 12px; }
.rt-search-controls:focus-within { outline:3px solid #bcebe1; border-color:#007f73; }
.rt-search-controls>svg { width:22px; height:22px; flex:none; color:#23564a; }
#app .rt-search-controls input { min-width:0; width:100%; flex:1; border:0; box-shadow:none; outline:0; padding:12px 9px; font-size:16px; background:transparent; }
#app .rt-search-controls input::-webkit-search-cancel-button { appearance:none; }
#app .rt-search-controls .rt-search-clear { flex:0 0 44px; min-width:44px; min-height:44px; padding:4px; font-size:25px; border:0; color:#285d51; background:transparent; }
#app .rt-compact-booking .booking-categories { display:flex; gap:7px; overflow-x:auto; scrollbar-width:thin; padding:1px 0 6px; }
#app .rt-compact-booking .booking-categories button { flex:none; min-height:44px; white-space:nowrap; display:block; padding:8px 13px; border-radius:24px; border:1px solid #d4e7df; color:#185b4b!important; background:#f0faf5!important; font-size:13px; }
#app .rt-compact-booking .booking-categories button span { display:none; }
#app .rt-compact-booking .booking-categories button[aria-pressed=true] { color:#fff!important; background:var(--rt-action)!important; border-color:var(--rt-action); }
#app .rt-catalogue-search .quick-results { display:grid; grid-template-columns:1fr; gap:7px; max-height:310px; overflow:auto; overscroll-behavior:contain; scroll-margin-top:120px; }
#app .rt-catalogue-search .quick-result { display:flex; align-items:center; gap:10px; width:100%; min-height:76px; padding:9px; border:1px solid #dbe8e1; background:#fff!important; color:#152f28!important; border-radius:12px; }
#app .rt-catalogue-search .quick-result b { font-size:14px; line-height:1.3; }
#app .rt-catalogue-search .quick-result small { font-size:12px; color:#527466; }
#app .rt-catalogue-search .quick-result .pick-label { display:grid; place-items:center; flex:none; min-width:64px; min-height:44px; padding:3px 7px; border:1px solid var(--rt-action); border-radius:9px; background:#fff; color:var(--rt-action); font-size:13px; font-weight:700; }
#app .rt-catalogue-search .quick-result:disabled { opacity:1; background:#f2fbf6!important; }
#app .rt-catalogue-search .quick-result:disabled .pick-label { background:#e3f6eb; border-color:#cce8d8; color:#185a43; }
.rt-search-photo { display:block; width:52px; height:52px; flex:0 0 52px; border-radius:8px; background-color:#f4f8f5; }
.rt-search-photo .rt-bright-item-art { width:52px; height:52px; min-width:0; }
#app .rt-search-status { color:#2b6955; font-size:12px; line-height:1.4; margin:6px 0 0; }
#app .rt-search-status:empty { display:none; }
#app .rt-compact-booking #items { display:grid; gap:9px; }
#app .rt-compact-booking #items>.rt-compact-item { display:grid; grid-template-columns:52px minmax(0,1fr) 126px; align-items:center; gap:2px 9px; padding:10px; margin:0; border:1px solid #dce8e0; border-radius:12px; }
#app .rt-compact-item>.rt-bright-item-art { grid-column:1; grid-row:1/4; width:52px; height:58px; min-width:0; border:0; }
#app .rt-compact-item>.rt-compact-name { grid-column:2; grid-row:1; min-width:0; }
#app .rt-compact-name b { font-size:14px; line-height:1.35; overflow-wrap:anywhere; }
#app .rt-compact-item>.item-guide { grid-column:2; grid-row:2; margin:0; font-size:12px; line-height:1.4; color:#3a6a57; }
#app .rt-compact-item>.rt-compact-quantity { grid-column:3; grid-row:1/3; margin:0; min-width:0; }
#app .rt-compact-quantity>span { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
#app .rt-compact-quantity .quantity-control { gap:0; border:1px solid #afd3c5; border-radius:9px; overflow:hidden; }
#app .rt-compact-quantity .quantity-control button { flex:0 0 44px!important; min-height:44px!important; padding:5px!important; border:0; border-radius:0; font-size:20px!important; color:var(--rt-action); background:#fff; }
#app .rt-compact-quantity .quantity-control input { width:36px; min-width:0; padding:7px 1px; border:0; border-radius:0; text-align:center; font-size:15px; }
#app .rt-compact-item>.item-edit { grid-column:2; grid-row:3; margin:0; min-width:0; }
#app .rt-compact-item>.item-edit summary { min-height:44px; display:flex; align-items:center; padding:4px 0; color:#276a56; text-decoration:underline; font-size:12px; }
#app .rt-compact-item>.item-edit[open] { grid-column:1/-1; grid-row:4; padding-top:8px; }
#app .rt-compact-item>.item-edit[open] summary { margin-bottom:5px; }
#app .rt-compact-item>.item-edit .field { margin-top:10px; }
#app .rt-compact-item>[data-remove-item] { grid-column:3; grid-row:3; justify-self:end; min-height:44px; padding:5px 6px; border:0; color:#62736a; background:transparent; font-size:12px; text-decoration:underline; }
#app .rt-compact-item.rt-compact-no-art { grid-template-columns:minmax(0,1fr) 126px; }
#app .rt-compact-no-art>.rt-compact-name,#app .rt-compact-no-art>.item-guide,#app .rt-compact-no-art>.item-edit { grid-column:1; }
#app .rt-compact-no-art>.rt-compact-quantity,#app .rt-compact-no-art>[data-remove-item] { grid-column:2; }
#app .rt-compact-no-art>.item-edit[open] { grid-column:1/-1; }
#app .rt-compact-booking .rt-related-items { margin:16px 0 12px; }
#app .rt-compact-booking .rt-related-heading { margin-bottom:8px; }
#app .rt-compact-booking .rt-related-heading h3 { font-size:18px; margin-bottom:3px; }
#app .rt-compact-booking .rt-related-heading p { font-size:12px; }
#app .rt-compact-booking .rt-related-arrows button { min-height:44px; min-width:44px; }
#app .rt-compact-booking .rt-related-card { flex-basis:150px; padding:9px; }
#app .rt-compact-booking .rt-related-photo { height:88px; }
#app .rt-compact-booking .rt-related-card h4 { margin:6px 0 3px; font-size:13px; }
#app .rt-compact-booking .rt-related-price { margin-bottom:7px; }
#app .rt-compact-booking .rt-related-card button { color:var(--rt-action); border-color:var(--rt-action); }
#app .rt-compact-booking .booking-photo-actions { padding:12px; margin:10px 0; }
#app .rt-compact-booking .booking-photo-actions h3 { margin:0; font-size:17px; }
#app .rt-compact-booking #photo-count { font-size:12px; margin:5px 0 9px; }
#app .rt-compact-booking .booking-photo-actions>.actions { display:flex; flex-wrap:wrap; gap:8px; }
#app .rt-compact-booking .booking-photo-actions>.actions>* { min-height:44px; padding:9px 12px; flex:1; text-align:center; font-size:13px; }
#app .rt-compact-booking #main-item-photo { max-height:100px; object-fit:contain; background:#f0f7f3; }
#app .rt-compact-booking .photos img { width:60px; height:60px; object-fit:cover; }
#app .rt-compact-booking .booking-more-items { margin-top:10px; }
#app .rt-compact-booking .booking-more-items>summary { min-height:44px; padding:10px 0; font-size:13px; color:#366b56; }
#app .rt-compact-booking .booking-dock { padding-top:9px; padding-bottom:9px; }
#app .rt-compact-booking :is(#flow-requirement,#flow-next,#submit-booking) { background:var(--rt-action); color:#fff; min-height:54px; font-weight:700; }
#app .rt-compact-booking :is(#flow-requirement,#flow-next,#submit-booking):disabled { background:#e5ece8!important; color:#586a60!important; }
#app .rt-compact-booking #flow-total small { font-size:11px; line-height:1.4; }
#app .rt-compact-booking #flow-total strong { font-size:16px; }
#app .rt-compact-booking :is(button,input,summary,a,.button-link):focus-visible { outline:3px solid #007f73; outline-offset:3px; }
@media(max-width:380px) {
 #app .rt-compact-booking #items>.rt-compact-item { grid-template-columns:42px minmax(0,1fr); gap:4px 8px; }
 #app .rt-compact-item>.rt-bright-item-art { width:42px; height:46px; grid-row:1/3; }
 #app .rt-compact-item>.rt-compact-quantity { grid-column:2; grid-row:3; width:126px; }
 #app .rt-compact-item>.item-edit { grid-column:1/2; grid-row:4; }
 #app .rt-compact-item>[data-remove-item] { grid-column:2; grid-row:4; }
 #app .rt-compact-item>.item-edit[open] { grid-column:1/-1; grid-row:5; }
 #app .rt-compact-item.rt-compact-no-art { grid-template-columns:minmax(0,1fr) 126px; }
 #app .rt-compact-no-art>.rt-compact-quantity { grid-column:2; grid-row:1/3; }
 #app .rt-compact-no-art>.rt-compact-name,#app .rt-compact-no-art>.item-guide { grid-column:1; }
}
