/* Option A: compact discovery cards and an adjacent planning panel. */
.airport-group .airport-group-body{padding:0;background:#fff}
.airport-group .dining-bucket{border:0;border-bottom:1px solid #d5dfeb;border-radius:0;background:#fff;margin:0}
.airport-group .dining-bucket:is(.dining-bucket-on,.dining-bucket-off,.dining-bucket-unknown) h4{margin:0;border:0;border-bottom:1px solid #d5dfeb;border-radius:0;padding:11px 18px;background:#fffdf8}
.airport-group .compact-stop{padding:18px 22px}.stop-card-top{display:flex;align-items:center;gap:16px}.stop-card-name{min-width:0;flex:1}
.airport-group .stop-card-top .restaurant-thumbnail{margin:0;flex:0 0 104px;display:block}.airport-group .stop-card-top .restaurant-thumbnail:empty{display:none}
.airport-group .stop-card-top .restaurant-thumbnail img{width:104px;height:80px;object-position:center 60%;border-radius:7px}
.airport-group .stop-card-top .restaurant-thumbnail figcaption{display:none}
.airport-group .stop-card-top .restaurant-row>b{font-size:1.25rem;line-height:1.3;margin:0}
.airport-group .stop-card-top .listing-information{font-size:.74rem;line-height:1.45;margin:7px 0 0}
.airport-group .stop-card-facts{border-top:1px solid #e1e7ef;margin-top:14px;padding-top:5px}
.airport-group .stop-card-facts p{display:grid;grid-template-columns:20px minmax(0,1fr);gap:10px;margin:10px 0;font-size:.85rem;line-height:1.45}
.airport-group .stop-card-facts small{display:block;color:#536478;font-size:.72rem;margin-top:3px}
.airport-group .restaurant-primary-actions{display:flex;flex-wrap:nowrap;margin-top:16px;gap:9px}
.airport-group .restaurant-primary-actions .primary{flex:1;text-align:center;display:grid;place-items:center;min-width:0;line-height:1.35;text-decoration:none}
.airport-group .save-stop{flex:0 0 auto}.airport-group .airport-group-body>.fbo-contact{margin:0;border-radius:0;border:0;background:#e5edf8;color:#132b4d;padding:13px 22px}
.airport-group .airport-group-body>.fbo-contact>b{color:#35577f;font-size:.7rem}.airport-group .airport-group-body>.fbo-contact a{color:#174ed2;min-height:36px}.airport-group .airport-group-body>.fbo-contact small{color:#536478}
.airport-group .airport-facts{margin:0;padding:0;border:0;background:#f8faff}.airport-group .airport-details-link{display:flex;align-items:center;text-align:left;width:100%;min-height:46px;border:0;border-radius:0;border-top:1px solid #d5deea;background:transparent;padding:10px 22px;font-size:.75rem;text-decoration:none}
#detail{position:fixed;inset:0 0 0 auto;margin:0;width:min(590px,100vw);height:100dvh;max-height:100dvh;max-width:100vw;padding:0;border:0;border-left:1px solid #c8d3df;border-radius:0;box-shadow:-12px 0 35px #10274725;z-index:20;overflow:hidden;background:white}
#detail[open]{display:flex;flex-direction:column}#detail:not([open]){display:none}
#detail>.close{position:absolute;right:18px;top:17px;z-index:2;margin:0;min-height:44px;font-size:.8rem;padding:7px 12px;background:white;border:0}
#detailContent{display:flex;flex-direction:column;min-height:0;height:100%;width:100%}
.stop-panel-heading{padding:26px 26px 18px;border-bottom:1px solid #d5dfeb;flex:0 0 auto}
.stop-panel-heading>.eyebrow{padding-right:100px;font-size:.65rem}.stop-panel-heading h2{font-size:1.75rem;line-height:1.2;margin:15px 0 10px;letter-spacing:-.5px}
.stop-panel-meta{display:flex;gap:7px 10px;align-items:center;flex-wrap:wrap;font-size:.73rem;color:#536478}.stop-panel-meta .price-chip{font-size:.8rem}
.stop-panel-scroll{overflow-y:auto;overscroll-behavior:contain;min-height:0;padding:20px 26px 26px;scroll-padding-top:20px;flex:1;position:relative}
.stop-panel-photo{margin:0 0 18px}.stop-panel-photo img{display:block;width:100%;height:165px;object-fit:cover;object-position:center 60%;border-radius:9px}.stop-panel-photo figcaption{font-size:.64rem;line-height:1.4;color:#536478;margin-top:6px}
.stop-description{font-size:.85rem;line-height:1.6;margin:10px 0 12px}.stop-panel-scroll .trip-section{padding:22px 0;margin:0;border:0;border-bottom:1px solid #dce4ed;border-radius:0;background:white}
.stop-panel-scroll .trip-section h2{font-size:1.18rem;letter-spacing:-.3px;margin:0 0 14px}.stop-panel-scroll .trip-section h3{font-size:.96rem;margin:0 0 7px}
.stop-panel-scroll p,.stop-panel-scroll li{font-size:.85rem;line-height:1.6}.stop-panel-scroll .detail-note{font-size:.73rem}
.stop-panel-scroll .stop-hours{background:#f1f5fb;padding:12px 16px;border-radius:8px}.stop-hours>small{font-size:.7rem;color:#536478}.stop-panel-scroll .stop-hours p{font-weight:750;margin:3px 0;font-size:1rem}
.stop-panel-scroll .hours-confirmation{margin:10px 0;font-size:.75rem}.stop-panel-scroll .actions{gap:8px}.stop-panel-scroll .outline{font-size:.77rem;min-height:44px;padding:9px 12px;display:inline-flex;align-items:center;text-decoration:none}
.stop-panel-scroll .arrival-grid,.stop-panel-scroll .day-sights,.stop-panel-scroll .day-dining{display:grid;grid-template-columns:1fr;gap:12px}
.stop-panel-scroll .arrival-item{background:#f6f8fb;padding:14px;border:1px solid #dae2ec;border-radius:8px}.stop-panel-scroll .arrival-item.unconfirmed{background:#fff9ed;border-color:#e4d6b6}
.stop-panel-scroll .arrival-item p{margin:6px 0}.stop-panel-scroll .arrival-item>a,.stop-panel-scroll .arrival-item>small{font-size:.7rem;display:inline-block;margin-right:10px}.stop-panel-scroll .information-state{font-size:.65rem}
.stop-panel-scroll .fbo-contact{background:#132b4d;color:white;border:0;border-radius:8px;padding:15px;margin:12px 0}.stop-panel-scroll .fbo-contact a{color:#ffcf80}.stop-panel-scroll .fbo-contact small{color:#d4dfed;display:block;font-size:.7rem}
.stop-panel-scroll .checklist{grid-template-columns:1fr;gap:10px;margin:0}.stop-panel-scroll .checklist label{font-size:.83rem;line-height:1.5;min-height:40px}.stop-panel-scroll .compare-choice{display:flex;align-items:center;gap:9px;font-size:.8rem;min-height:44px}.stop-panel-scroll .compare-choice input{width:21px;height:21px;min-height:21px;margin:0}
.stop-panel-scroll .write-review{margin-top:16px}.stop-panel-scroll summary{cursor:pointer;font-size:.85rem;font-weight:700;min-height:44px;padding:10px 0}.stop-panel-scroll .review{padding:12px 0}.stop-panel-scroll .review b{font-size:.82rem}.stop-panel-scroll .review small{font-size:.7rem}.stop-panel-scroll .review p{margin:8px 0}
.stop-panel-scroll .panel-community-photo{margin:0 0 14px;flex-wrap:wrap}.stop-panel-scroll .panel-community-photo:empty{display:none}.stop-panel-scroll .panel-community-photo img{width:100%;height:auto;max-height:230px;object-fit:cover}.stop-panel-scroll .panel-community-photo figcaption{max-width:none;font-size:.72rem}
.stop-panel-scroll .stop-sources{margin-top:20px;background:#f5f7fa;padding:4px 16px 12px;border:1px solid #d5dfe9;border-radius:7px}.stop-sources li{margin-bottom:12px;overflow-wrap:anywhere}.stop-sources small{display:block;font-size:.7rem}
.stop-panel-footer{border-top:1px solid #d4deea;padding:14px 26px max(14px,env(safe-area-inset-bottom));display:flex;gap:15px;align-items:center;flex-shrink:0;background:white}.stop-panel-footer .primary{flex:1;font-size:.85rem}.stop-panel-footer>a{font-size:.75rem;line-height:1.5}
body.stop-panel-open #toast{z-index:40}body.stop-panel-open #compareTray{z-index:25;left:calc((100% - 590px)/2);max-width:calc(100% - 620px)}
@media(min-width:1101px){body.stop-panel-open{padding-right:590px}body.stop-panel-open #cards{grid-template-columns:1fr}body.stop-panel-open .site-header{flex-wrap:wrap}body.stop-panel-open .site-header .primary-nav{flex-wrap:wrap}body.stop-panel-open .hero{grid-template-columns:1fr}body.stop-panel-open .trip-options{flex-wrap:wrap}body.stop-panel-open #tripChooser{flex-wrap:wrap}body.stop-panel-open #searchForm{grid-template-columns:1fr 1fr}body.stop-panel-open #searchForm>button{grid-column:1/-1}}
@media(max-width:1100px){body.stop-panel-open{overflow:hidden}#detail{width:min(650px,100vw)}#detail::backdrop{background:#11233e70;backdrop-filter:none}body.stop-panel-open #compareTray{display:none}}
@media(max-width:650px){#detail{width:100vw;border:0}.stop-panel-heading{padding:20px 20px 16px}.stop-panel-scroll{padding:16px 20px 20px}.stop-panel-heading h2{font-size:1.5rem}.stop-panel-footer{padding:12px 20px max(12px,env(safe-area-inset-bottom));gap:10px}.stop-panel-footer .primary{font-size:.78rem}.stop-panel-footer>a{font-size:.7rem}.airport-group .compact-stop{padding:16px}.airport-group .stop-card-top{gap:12px}.airport-group .stop-card-top .restaurant-thumbnail{flex-basis:90px}.airport-group .stop-card-top .restaurant-thumbnail img{width:90px;height:75px}.airport-group .restaurant-primary-actions{flex-wrap:wrap}.airport-group .airport-group-body>.fbo-contact{padding:13px 16px}}
@media(prefers-reduced-motion:reduce){.stop-panel-scroll{scroll-behavior:auto}}

.panel-access-label{border-radius:20px;background:#edf2f9;color:#132b4d;padding:4px 9px;font-weight:700}

/* One planning action identifies the detail panel; keep its helper inline when space permits. */
.airport-group .restaurant-primary-actions>.primary[data-plan]{display:flex;flex-flow:row wrap;align-items:center;justify-content:center;gap:0 22px;min-height:48px;padding:4px 12px}
.airport-group .restaurant-primary-actions .plan-label{font-size:16px;font-weight:700;line-height:1.35;white-space:nowrap}
.airport-group .restaurant-primary-actions .plan-summary{font-size:12px;font-weight:500;line-height:1.4;color:#fff;text-align:center;max-width:100%}
