#aag-trip-planner-root{--aag-teal:#3d7a8c;--aag-turquoise:#5cc9c0;--aag-orange:#f4a13c;--aag-sand:#f8f6f2;--aag-ink:#1f2d30;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--aag-ink);max-width:820px;margin:0 auto}#aag-trip-planner-root h2{font-size:1.8rem;margin-bottom:.25rem;color:var(--aag-teal)}#aag-trip-planner-root .aag-sub{color:#6b7a7d;margin-bottom:1.25rem}#aag-trip-planner-root .aag-progress{display:flex;align-items:center;gap:.75rem;margin-bottom:2rem}#aag-trip-planner-root .aag-progress-bar{height:6px;background:var(--aag-orange);border-radius:3px;flex:0 0 auto;transition:width 0.2s ease}#aag-trip-planner-root .aag-progress::before{content:'';flex:1;height:6px;background:#e3ded4;border-radius:3px;margin-right:-100%}#aag-trip-planner-root .aag-wizard{background:var(--aag-sand);padding:2rem;border-radius:16px}#aag-trip-planner-root .aag-options{display:flex;flex-wrap:wrap;gap:.6rem;margin-bottom:1.5rem}#aag-trip-planner-root .aag-option{border:2px solid var(--aag-teal);background:#fff;color:var(--aag-teal);padding:.6rem 1.1rem;border-radius:999px;font-weight:600;cursor:pointer;font-size:.95rem}#aag-trip-planner-root .aag-option.selected{background:var(--aag-orange);border-color:var(--aag-orange);color:#fff}#aag-trip-planner-root .aag-slider{width:100%;accent-color:var(--aag-orange);margin-bottom:1.5rem}#aag-trip-planner-root .aag-slider-value{font-size:1.4rem;font-weight:700;color:var(--aag-orange);margin-bottom:.5rem}#aag-trip-planner-root .aag-input{width:100%;padding:.6rem;border:2px solid #d8d2c4;border-radius:8px;margin-bottom:1rem;font-size:1rem}#aag-trip-planner-root .aag-checks{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}#aag-trip-planner-root .aag-nav{display:flex;justify-content:space-between;margin-top:1.5rem}#aag-trip-planner-root .aag-btn{border:none;border-radius:8px;padding:.75rem 1.6rem;font-weight:600;cursor:pointer;font-size:1rem}#aag-trip-planner-root .aag-btn-primary{background:var(--aag-teal);color:#fff!important}#aag-trip-planner-root .aag-btn-ghost{background:#fff0;color:var(--aag-teal);text-decoration:underline;border-radius:999px}#aag-trip-planner-root .aag-btn-sm{padding:.5rem 1.1rem;font-size:.85rem}#aag-trip-planner-root .aag-loading{text-align:center;padding:4rem 1rem}#aag-trip-planner-root .aag-spinner{width:48px;height:48px;border:5px solid #e3ded4;border-top-color:var(--aag-orange);border-radius:50%;margin:0 auto 1.5rem;animation:aag-spin 0.9s linear infinite}@keyframes aag-spin{to{transform:rotate(360deg)}}#aag-trip-planner-root .aag-itinerary-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:.75rem}#aag-trip-planner-root .aag-budget-total{background:var(--aag-teal);color:#fff;padding:.5rem 1rem;border-radius:999px;font-weight:700}#aag-trip-planner-root .aag-day{background:#fff;border:1px solid #e3ded4;border-radius:14px;padding:1.25rem;margin-bottom:1.5rem}#aag-trip-planner-root .aag-day h3{color:var(--aag-teal);margin:0 0 .25rem}#aag-trip-planner-root .aag-day-total{color:#6b7a7d;font-size:.85rem;margin-bottom:1rem}#aag-trip-planner-root .aag-slot{margin-bottom:1rem;padding-top:.75rem;border-top:1px dashed #e3ded4}#aag-trip-planner-root .aag-slot-label{font-size:.75rem;letter-spacing:.08em;color:var(--aag-orange);font-weight:700;margin-bottom:.5rem}#aag-trip-planner-root .aag-slot-empty{color:#a09a8c;font-style:italic}#aag-trip-planner-root .aag-card{background:var(--aag-sand);border-radius:10px;overflow:hidden}#aag-trip-planner-root .aag-card-image{width:100%;height:160px;background-size:cover;background-position:center;background-color:#e3ded4}#aag-trip-planner-root .aag-card-body{display:flex;gap:1rem;padding:1rem;align-items:flex-start;justify-content:space-between}#aag-trip-planner-root .aag-card-main{flex:1 1 auto;min-width:0}#aag-trip-planner-root .aag-card-title{font-weight:700;font-size:1.1rem}#aag-trip-planner-root .aag-card-meta{margin-top:.2rem}#aag-trip-planner-root .aag-card-loc,#aag-trip-planner-root .aag-card-rating{font-size:.85rem;color:#6b7a7d;display:inline-block;margin-right:.75rem}#aag-trip-planner-root .aag-card-reasoning{font-size:.85rem;color:var(--aag-teal);font-style:italic;margin:.5rem 0}#aag-trip-planner-root .aag-card-why{display:inline-block;background:var(--aag-turquoise);color:#fff;font-size:.75rem;padding:.2rem .6rem;border-radius:999px;margin:.4rem 0}#aag-trip-planner-root .aag-card-note{font-size:.85rem;margin:.4rem 0}#aag-trip-planner-root .aag-card-side{flex:0 0 auto;display:flex;flex-direction:column;align-items:flex-end;gap:.5rem;text-align:right}#aag-trip-planner-root .aag-card-price{font-weight:700;font-size:1.05rem;color:var(--aag-orange)}#aag-trip-planner-root .aag-book-btn{white-space:nowrap}#aag-trip-planner-root .aag-modal-overlay{position:fixed;inset:0;background:rgb(31 45 48 / .55);display:flex;align-items:center;justify-content:center;z-index:9999;padding:1rem}#aag-trip-planner-root .aag-modal{background:#fff;border-radius:14px;width:100%;max-width:560px;max-height:85vh;display:flex;flex-direction:column;overflow:hidden}#aag-trip-planner-root .aag-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid #e3ded4}#aag-trip-planner-root .aag-modal-header h3{margin:0;color:var(--aag-teal)}#aag-trip-planner-root .aag-modal-close{background:none;border:none;font-size:1.5rem;line-height:1;cursor:pointer;color:#6b7a7d}#aag-trip-planner-root .aag-modal-controls{display:flex;gap:.6rem;padding:1rem 1.25rem;border-bottom:1px solid #e3ded4;flex-wrap:wrap}#aag-trip-planner-root .aag-modal-controls .aag-input{margin-bottom:0;flex:1 1 160px}#aag-trip-planner-root .aag-modal-results{overflow-y:auto;padding:.5rem 1.25rem 1.25rem}#aag-trip-planner-root .aag-modal-loading{text-align:center;color:#6b7a7d;padding:2rem 0}#aag-trip-planner-root .aag-modal-row{display:flex;align-items:center;gap:.75rem;padding:.75rem 0;border-bottom:1px solid #f0ede4}#aag-trip-planner-root .aag-modal-row-image{flex:0 0 auto;width:56px;height:56px;border-radius:8px;background-size:cover;background-position:center;background-color:#e3ded4}#aag-trip-planner-root .aag-modal-row-info{flex:1 1 auto;min-width:0}#aag-trip-planner-root .aag-modal-row-title{font-weight:600;font-size:.95rem}#aag-trip-planner-root .aag-modal-row-meta{font-size:.8rem;color:#6b7a7d}#aag-trip-planner-root .aag-error{text-align:center;padding:3rem 1rem;color:#b23b3b}#aag-trip-planner-root .aag-intro{background:linear-gradient(135deg,var(--aag-teal) 0%,#2c5b69 100%);border-radius:20px;padding:2.5rem 2rem;text-align:center;color:#fff}#aag-trip-planner-root .aag-intro-badge{display:inline-block;background:rgb(255 255 255 / .15);border:1px solid rgb(255 255 255 / .35);color:#fff;font-size:.8rem;font-weight:600;letter-spacing:.03em;padding:.4rem 1rem;border-radius:999px;margin-bottom:1.25rem}#aag-trip-planner-root .aag-intro-title{color:#fff;font-size:2rem;line-height:1.25;margin:0 0 1rem;max-width:34rem;margin-left:auto;margin-right:auto}#aag-trip-planner-root .aag-intro-sub{color:rgb(255 255 255 / .9);font-size:1.05rem;max-width:32rem;margin:0 auto 2rem;line-height:1.5}#aag-trip-planner-root .aag-intro-features{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:2rem;text-align:left}#aag-trip-planner-root .aag-intro-feature{background:rgb(255 255 255 / .1);border-radius:12px;padding:1rem 1.1rem}#aag-trip-planner-root .aag-intro-feature-title{color:var(--aag-orange);font-weight:700;font-size:.95rem;margin-bottom:.35rem}#aag-trip-planner-root .aag-intro-feature-text{color:rgb(255 255 255 / .85);font-size:.85rem;line-height:1.4}#aag-trip-planner-root .aag-intro-cta{background:var(--aag-orange);color:#fff!important;font-size:1.05rem;padding:1rem 2.2rem}@media (max-width:640px){#aag-trip-planner-root .aag-intro-features{grid-template-columns:1fr}}#aag-trip-planner-root .aag-day-header{margin:-1.25rem -1.25rem 1rem;padding:1.5rem 1.25rem 1.25rem;border-radius:14px 14px 0 0}#aag-trip-planner-root .aag-day-header-photo{background-size:cover;background-position:center;padding-top:3.5rem}#aag-trip-planner-root .aag-day-header-photo h3,#aag-trip-planner-root .aag-day-header-photo .aag-day-total{color:#fff}#aag-trip-planner-root .aag-day-header h3{margin:0 0 .25rem}#aag-trip-planner-root .aag-local-badge{position:absolute;top:.6rem;left:.6rem;background:var(--aag-turquoise);color:#fff;font-size:.7rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;padding:.3rem .7rem;border-radius:999px}#aag-trip-planner-root .aag-card-image{position:relative}#aag-trip-planner-root .aag-local-badge-standalone{position:static;display:inline-block;margin:1rem 1rem 0}#aag-trip-planner-root .aag-share-bar{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;background:#fff;border:1px solid #e3ded4;"order-radius: 12px;
	padding: 0.75rem 1rem;
	margin-bottom: 1.5rem;
}
#aag-trip-planner-root .aag-share-label {
	font-size: 0.85rem;
	color: #6b7a7d;
	font-weight: 600;
}

/* Mobile pass - the card's right-hand action column (price/Book/Swap) is
   fine at desktop widths, but on a narrow phone screen there isn't room for
   a title column and a button column side by side without everything
   getting cramped. Stack it instead: image on top, then description, then
   a full-width price+actions row below - the natural mobile pattern for
   listing cards. */
@media (max-width: 600px) {
	#aag-trip-planner-root {
		max-width: 100%;
	}
	#aag-trip-planner-root .aag-wizard {
		padding: 1.25rem;
		border-radius: 12px;
	}
	#aag-trip-planner-root .aag-intro {
		padding: 1.75rem 1.25rem;
		border-radius: 14px;
	}
	#aag-trip-planner-root .aag-intro-title {
		font-size: 1.5rem;
	}
	#aag-trip-planner-root .aag-intro-sub {
		font-size: 0.95rem;
	}
	#aag-trip-planner-root .aag-card-body {
		flex-direction: column;
		align-items: stretch;
	}
	#aag-trip-planner-root .aag-card-side {
		text-align: left;
		flex-direction: row;
		flex-wrap: wrap;
		align-items: center;
		border-top: 1px solid #e3ded4;
		padding-top: 0.75rem;
		margin-top: 0.25rem;
	}
	#aag-trip-planner-root .aag-card-price {
		flex: 1 1 auto;
	}
	#aag/-trip-planner-root .aag-book-btn,
	#aag-trip-planner-root .aag-card-side .aag-btn-ghost {
		flex: 0 0 auto;
	}
	#aag-trip-planner-root .aag-day-header {
		margin: -1rem -1rem 1rem;
		padding: 1.25rem 1rem 1rem;
	}
	#aag-trip-planner-root .aag-day {
		padding: 1rem;
	}
	#aag-trip-planner-root .aag-modal {
		max-height: 90vh;
	}
	#aag-trip-planner-root .aag-modal-controls {
		flex-direction: column;
	}
	#aag-trip-planner-root .aag-share-bar {
		flex-direction: column;
		align-items: stretch;
		text-align: center;
	}
}

/* Sticky trip-total header - on a long 7+ day itinerary the running total
   scrolls out of view almost immediately; pinning a compact version keeps
   the budget context visible the whole way through, which matters since
   "a running budget,not a guess" is one of the core selling points. */ #aag-trip-planner-root .aag-itinerary-header{position:sticky;top:0;z-index:20;background:#fff;padding:.75rem 1rem;border-radius:10px;box-shadow:0 2px 8px rgb(31 45 48 / .08)}#aag-trip-planner-root .aag-itinerary-header h2{font-size:1.3rem;margin:0}