html body.signed-in-shell.app-routed[data-active-route="aiTravelPlanner"] #aiTravelPlanner { display:block!important; grid-column:1/-1!important; width:100%!important; max-width:none!important; border:0!important; background:transparent!important; box-shadow:none!important; padding:0!important; }
html body.signed-in-shell #aiTravelPlanner>.section-heading { display:flex!important; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:16px; padding:0 0 20px!important; border:0!important; background:none!important; box-shadow:none!important; }
html body.signed-in-shell #aiTravelPlanner>.section-heading>div { width:auto!important; min-width:0; }
html body.signed-in-shell #aiTravelPlanner>.section-heading h2 { font-size:28px!important; line-height:1.3; margin:0 0 8px; }
html body.signed-in-shell #aiTravelPlanner .concierge-layout { display:grid!important; grid-template-columns:190px minmax(0,1fr) 280px!important; gap:0!important; height:min(760px,calc(100dvh - 210px)); min-height:580px; overflow:hidden; border:1px solid #eadde5; border-radius:6px; background:#fff; }
html body.signed-in-shell #aiTravelPlanner :is(.concierge-outline,.concierge-trip-details) { min-width:0; overflow-y:auto; padding:20px 16px; background:#fff; }
html body.signed-in-shell #aiTravelPlanner .concierge-outline { border-right:1px solid #eadde5; }
html body.signed-in-shell #aiTravelPlanner .concierge-trip-details { border-left:1px solid #eadde5; }
html body.signed-in-shell #aiTravelPlanner :is(.concierge-outline h3,.ai-planner-summary h3) { font-size:19px!important; margin:0 0 12px; }
html body.signed-in-shell #aiTravelPlanner #conciergeProgress { font-size:13px; color:#655762; margin:0 0 16px; line-height:1.5; }
html body.signed-in-shell #aiTravelPlanner #conciergeQuestions { display:grid; gap:0; }
html body.signed-in-shell #aiTravelPlanner .concierge-question-link { display:grid; grid-template-columns:28px minmax(0,1fr); align-items:center; column-gap:8px; width:100%; min-height:64px; padding:10px 8px; text-align:left; border:0; border-bottom:1px solid #f0e7ed; border-radius:0; background:#fff; color:#322b37; box-shadow:none; font:inherit; font-size:14px; }
html body.signed-in-shell #aiTravelPlanner .concierge-question-link[aria-current] { border-left:3px solid #c12780; background:#fff0f7; }
html body.signed-in-shell #aiTravelPlanner .concierge-question-link:disabled { color:#7a7178; opacity:1; cursor:default; }
html body.signed-in-shell #aiTravelPlanner .concierge-question-link small { grid-column:2; font-size:12px; color:#766571; }
.concierge-question-number { display:grid; place-items:center; width:26px; height:26px; border-radius:50%; color:#087c75; background:#e3f5f0; font-size:12px; font-weight:700; }
html body.signed-in-shell #aiTravelPlanner .ai-planner-chat { display:flex!important; flex-direction:column; min-width:0; min-height:0; padding:0!important; border:0!important; border-radius:0; box-shadow:none; background:#fff!important; overflow:hidden; }
.concierge-chat-header { display:flex; align-items:center; gap:12px; padding:20px; border-bottom:1px solid #eadde5; }
.concierge-avatar { display:grid; place-items:center; width:40px; height:40px; flex-shrink:0; border-radius:50%; background:#ffe3f0; color:#ab216d; }.concierge-avatar svg { width:22px; height:22px; }
html body.signed-in-shell #aiTravelPlanner .concierge-chat-header h3 { font-size:20px!important; margin:0 0 4px; line-height:1.4; }
.concierge-chat-header p { margin:0; font-size:13px; color:#655762; line-height:1.5; }
html body.signed-in-shell #aiTravelPlanner .concierge-thread { flex:1; min-height:140px; overflow-y:auto; padding:20px; background:#fcfafd; overscroll-behavior:contain; }
html body.signed-in-shell #aiTravelPlanner .ai-planner-transcript { display:flex; flex-direction:column; gap:20px; margin:0 0 20px; max-height:none; overflow:visible; }
html body.signed-in-shell #aiTravelPlanner .ai-planner-transcript:empty { display:none; }
html body.signed-in-shell #aiTravelPlanner .planner-answer { display:flex; flex-direction:column; gap:12px; padding:0; margin:0; border:0; border-radius:0; background:none; }
html body.signed-in-shell #aiTravelPlanner :is(.concierge-bubble,.ai-planner-message.assistant) { display:block; width:fit-content; max-width:92%; padding:14px 16px; border:1px solid #eadde5; border-radius:6px; background:#fff; box-sizing:border-box; overflow-wrap:anywhere; }
html body.signed-in-shell #aiTravelPlanner .concierge-bubble.concierge-answer { align-self:flex-end; background:#e7f6f1; border-color:#b9ddd2; }
html body.signed-in-shell #aiTravelPlanner :is(.concierge-bubble strong,.concierge-bubble span,#aiPlannerQuestion) { display:block; font-size:16px; line-height:1.6; font-weight:400; margin:4px 0 0; color:#292432; white-space:pre-wrap; }
html body.signed-in-shell #aiTravelPlanner :is(.concierge-bubble small,.ai-planner-message.assistant>strong) { display:block; color:#685361; font-size:12px; font-weight:600; }
html body.signed-in-shell #aiTravelPlanner .concierge-answer button { display:block; margin-top:8px; min-height:36px; padding:4px 10px; font-size:13px; border:1px solid #9ac7b9; background:#fff; color:#146c59; border-radius:4px; }
html body.signed-in-shell #aiTravelPlanner .ai-planner-replies { display:flex; flex-wrap:wrap; gap:8px; margin:16px 0 0; }
html body.signed-in-shell #aiTravelPlanner .ai-planner-replies button { width:auto; min-height:44px; padding:8px 12px; border:1px solid #cdbfc9; border-radius:6px; background:#fff; color:#633657; font-size:14px; font-weight:500; white-space:normal; }
html body.signed-in-shell #aiTravelPlanner .concierge-composer { flex-shrink:0; padding:16px; border-top:1px solid #eadde5; background:#fff; }
html body.signed-in-shell #aiTravelPlanner .ai-planner-input-row { display:flex!important; align-items:center; flex-wrap:wrap; gap:8px; }
html body.signed-in-shell #aiTravelPlanner .ai-planner-input-row input { flex:1 1 180px; min-width:0; width:auto; min-height:48px; font-size:16px; }
html body.signed-in-shell #aiTravelPlanner .ai-planner-input-row button { flex:0 0 auto; min-height:44px; padding:8px 12px; font-size:14px; }
html body.signed-in-shell #aiTravelPlanner #aiPlannerSendButton { background:#a91d75; color:#fff; border:1px solid #a91d75; }
html body.signed-in-shell #aiTravelPlanner #aiPlannerStatus { font-size:12px!important; line-height:1.5!important; color:#655762; margin:10px 0 0; }
html body.signed-in-shell #aiTravelPlanner .ai-planner-summary { padding:0; border:0; border-radius:0; box-shadow:none; background:none; }
html body.signed-in-shell #aiTravelPlanner .ai-planner-memory { display:grid; gap:0; margin:0; }
html body.signed-in-shell #aiTravelPlanner .ai-planner-memory>div { display:grid; gap:6px; background:none; border:0; border-bottom:1px solid #eadde5; border-radius:0; padding:14px 0; }
html body.signed-in-shell #aiTravelPlanner .ai-planner-memory :is(span,strong) { font-size:14px; line-height:1.5; overflow-wrap:anywhere; }
html body.signed-in-shell #aiTravelPlanner .ai-planner-memory span { color:#74626e; }
html body.signed-in-shell #aiTravelPlanner .auth-check { display:flex; align-items:flex-start; gap:8px; font-size:13px; line-height:1.5; margin:20px 0; }
html body.signed-in-shell #aiTravelPlanner .auth-check input { width:18px; height:18px; flex-shrink:0; }
html body.signed-in-shell #aiTravelPlanner #aiPlannerDeleteMemoryButton { min-height:44px; padding:8px; font-size:13px; }
html body.signed-in-shell #aiTravelPlanner .concierge-draft { margin:24px 0 0; padding:16px 0; border:0; border-top:1px solid #eadde5; border-radius:0; background:none; box-shadow:none; }
.concierge-draft>summary { cursor:pointer; padding:12px 0; min-height:44px; box-sizing:border-box; font-weight:600; font-size:15px; }
html body.signed-in-shell #aiTravelPlanner #aiGeneratedTrip { padding:12px 0; border:0; border-radius:0; background:none; box-shadow:none; }
html body.signed-in-shell #aiTravelPlanner #aiGeneratedTrip .section-heading { display:block; padding:0; border:0; background:none; box-shadow:none; }
html body.signed-in-shell #aiTravelPlanner #aiGeneratedTrip h3 { font-size:18px!important; line-height:1.4; }
html body.signed-in-shell #aiTravelPlanner #aiGeneratedTrip p { font-size:14px; line-height:1.6; }
html body.signed-in-shell #aiTravelPlanner :is(.ai-trip-output-grid,.ai-planner-actions) { display:grid; grid-template-columns:minmax(0,1fr); gap:12px; }
html body.signed-in-shell #aiTravelPlanner .ai-trip-output-grid article { padding:12px 0; border:0; border-bottom:1px solid #eadde5; background:none; border-radius:0; box-shadow:none; }
html body.signed-in-shell #aiTravelPlanner :is(.ai-trip-output-grid strong,.ai-trip-output-grid span) { font-size:15px; overflow-wrap:anywhere; }
.concierge-mobile-views { display:none; }
@media(max-width:1150px) { html body.signed-in-shell #aiTravelPlanner .concierge-layout { grid-template-columns:minmax(0,1fr) 260px!important; }html body.signed-in-shell #aiTravelPlanner .concierge-outline { display:none; } }
@media(max-width:800px) {
  html body.signed-in-shell #aiTravelPlanner #aiPlannerStartButton { display:none!important; }
  html body.signed-in-shell #aiTravelPlanner .concierge-layout { display:flex!important; flex-direction:column; height:auto; min-height:0; }
  html body.signed-in-shell #aiTravelPlanner .concierge-mobile-views { display:flex; gap:8px; margin-bottom:12px; }
  .concierge-mobile-views button { flex:1; padding:12px; border:1px solid #cdbfc9; border-radius:6px; background:#fff; color:#493a46; font:inherit; min-height:48px; }
  .concierge-mobile-views button[aria-pressed="true"] { background:#ffe3f0; color:#9c155f; border-color:#cb247d; }
  html body.signed-in-shell #aiTravelPlanner .ai-planner-chat { height:max(480px,calc(100dvh - 280px)); }
  html body.signed-in-shell #aiTravelPlanner .concierge-layout[data-view="conversation"] :is(.concierge-outline,.concierge-trip-details),html body.signed-in-shell #aiTravelPlanner .concierge-layout[data-view="details"] .ai-planner-chat { display:none!important; }
  html body.signed-in-shell #aiTravelPlanner .concierge-layout[data-view="details"] .concierge-outline { display:block; border:0; border-bottom:1px solid #eadde5; }
  html body.signed-in-shell #aiTravelPlanner .concierge-trip-details { border:0; overflow:visible; order:1; }
  html body.signed-in-shell #aiTravelPlanner .concierge-outline { order:2; }
  html body.signed-in-shell #aiTravelPlanner .concierge-thread { padding:16px; }
  html body.signed-in-shell #aiTravelPlanner .concierge-chat-header { padding:16px; }
  html body.signed-in-shell #aiTravelPlanner .concierge-bubble { max-width:96%; }
  html body.signed-in-shell #aiTravelPlanner .ai-planner-replies { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
  html body.signed-in-shell #aiTravelPlanner .ai-planner-replies button { width:100%; min-width:0; font-size:14px!important; overflow-wrap:anywhere; }
  html body.signed-in-shell #aiTravelPlanner .ai-planner-input-row input { flex-basis:100%; }
}
html[data-high-contrast="true"] body.signed-in-shell #aiTravelPlanner :is(.concierge-bubble,.concierge-question-link[aria-current],.ai-planner-replies button,.concierge-avatar) { background:#fff!important; color:#111!important; border-color:#111!important; }
