.trip-extras{max-width:1128px;margin:auto}.trip-extras .page-head{max-width:780px;margin-bottom:2rem}.booking-grid,.packing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem}.booking-card{display:flex;flex-direction:column}.booking-card .plan-actions{margin-top:auto}.booking-provider{font-size:.85rem;font-weight:650}.booking-card:nth-child(2){background:#eaf1ed}.packing-picker{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:center}.packing-checklist{list-style:none;padding:0}.packing-checklist li{border-bottom:1px solid #dfe4db;padding:.5rem 0}.packing-checklist label{margin:0}.pack-shop{display:block;font-size:.77rem;margin:.35rem 0 .2rem 1.8rem}.packing-checklist small{display:block;font-size:.75rem;margin-left:1.8rem}.packing-card{margin:0}.packing-card>p{min-height:5rem;font-size:.9rem}.packing-card h2{font-size:1.7rem}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin:1.5rem 0}.metric{background:#eaf1ed;border-radius:12px;padding:1rem}.metric strong{display:block;font-size:2rem;font-family:Georgia,serif}.metric span{font-size:.8rem}.report-state{font-weight:700;padding:.65rem;background:#eaf1ed;border-radius:8px}.report-state.sample{background:#f0ccae}.table-scroll{overflow-x:auto}.booking-table{width:100%;border-collapse:collapse;font-size:.85rem}.booking-table th,.booking-table td{text-align:left;padding:.75rem;border-bottom:1px solid #ccd6cb}.booking-table caption{text-align:left;font-weight:650;margin-bottom:.7rem}.report-file{max-width:330px}.report-file input{font-size:.8rem!important}.trip-extras iframe{width:100%;height:65vh;min-height:420px;border:1px solid #ccd6cb;border-radius:8px}.trip-extras dialog{width:min(900px,calc(100% - 24px))}.trip-extras #report-error{color:#89392c}.trip-extras :focus-visible{outline:3px solid #346756;outline-offset:3px}
@media(max-width:750px){.booking-grid,.packing-grid,.packing-picker{grid-template-columns:1fr}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.packing-picker{gap:.5rem}.packing-card>p{min-height:0}.trip-extras .plan-panel{margin-bottom:1rem}.booking-table{min-width:600px}}
@media print{.packing-picker,.pack-shop,.packing-card .plan-button{display:none}.packing-grid{display:block}.packing-card{break-inside:avoid;margin-bottom:1rem}.packing-checklist li{padding:.15rem 0}}

.pack-content{flex:1;min-width:0}.pack-content .pack-shop{overflow-wrap:anywhere}.pack-content small{display:block;font-size:.75rem}
