/* Board 96:53324 — source-aligned interactive build. */
:root{color:#0b0d0f;background:#f3f4f5;--pink:#ff285c}
body{display:flex;align-items:center;justify-content:center;gap:72px;padding:24px}
#phone{border-radius:32px;flex:none;box-shadow:0 28px 80px #2838431c,0 0 0 1px #0c17230a}
.demo-sidebar{width:236px;flex:none;align-self:center;color:#202228}
.demo-kicker{font-size:10px;letter-spacing:2px;color:#92979c;font-weight:600;margin-bottom:16px}
.demo-sidebar h1{font-size:32px;line-height:1.1;letter-spacing:-1px}
.demo-sidebar>p{font-size:13px;line-height:1.8;color:#858a91;margin-top:12px}
.demo-divider{height:1px;background:#e0e3e6;margin:28px 0 24px}
.demo-label{font-size:11px;color:#94989e;letter-spacing:1px;margin-bottom:10px}
.demo-nav{display:grid;gap:3px}.demo-nav button{text-align:left;padding:10px 12px;border-radius:10px;font-size:13px;color:#747b84;display:flex;align-items:center;gap:12px;transition:background .15s}
.demo-nav button span{font-size:10px;min-width:22px;color:#aaa}
.demo-nav button.selected,.demo-nav button:hover{background:white;color:#17191e}
.demo-flows{display:grid;gap:8px}.demo-flows button{display:flex;align-items:center;justify-content:space-between;padding:10px 0;text-align:left;font-size:13px;color:#4d535d}.demo-flows button:hover{color:#ed285c}
.demo-flows button span{color:#9ca2a9}.demo-footnote{font-size:11px;line-height:1.8;color:#959aa1;margin-top:25px}.demo-footnote button{text-decoration:underline;text-underline-offset:3px;margin-top:12px;color:#6c7580}
.status{font-size:17px;padding:0 28px 0 44px;height:47px;font-weight:600}
.status-icons img{height:13px;width:auto}.status-icons img:last-child{height:14px}
.nav .nav-icon{height:27px}.nav button.active .nav-icon{background:transparent;min-width:27px}.nav button{font-size:10px}
.nav-icon img{height:23px;max-width:27px}.nav button:not(.active) .nav-icon{opacity:.5}
.page-title{padding-top:17px;padding-bottom:13px;line-height:31px}
.map-world{position:absolute;inset:0;will-change:transform}.map-art{pointer-events:none}
.map-tint{background:linear-gradient(#edf7ff 0,#edf7ffee 110px,transparent 196px)}
.current-location{position:absolute;top:45%;left:19%;width:22px;height:22px;border-radius:50%;background:#085cff;border:4px solid white;box-shadow:0 0 0 8px #448aff19,0 2px 8px #0002}
.city-switch{gap:9px}.city-switch span{background:white;box-shadow:0 4px 12px #102f4020;border-radius:18px;min-width:24px;line-height:16px;text-align:center;color:#111}
.map-category{padding-top:0;gap:8px;overflow:auto}.map-category .chip{height:32px;box-shadow:0 6px 12px #18284410;border-color:#d9dce0;padding:0 11px;background:#fff;font-size:14px;color:#101216}.map-category .chip.chosen{background:#fff}.map-category .filter-control{width:32px;padding:0}.must-eat-chip img{width:65px;height:18px;object-fit:contain}
.marker{height:39px;border-radius:24px;padding:3px 9px 3px 3px;gap:3px}.marker .thumb{width:32px;height:32px;border-radius:50%;}.marker .rating-icon{width:12px;height:12px}.marker.selected{outline:2px solid var(--pink)}
.map-agent-panel{position:absolute;left:16px;right:16px;bottom:calc(79px + var(--map-sheet-height,50px) + 12px);z-index:4;background:#fffffffa;box-shadow:0 10px 30px #183f5314;border-radius:24px;padding:12px 6px 12px;height:121px;transition:bottom .24s cubic-bezier(.2,.7,.2,1),opacity .15s}
.map-prompts{display:flex;gap:6px;overflow:auto;white-space:nowrap;scrollbar-width:none;padding:3px 6px 10px}.map-prompts button{border:1px solid #dedede;border-radius:30px;flex:none;font-size:12px;padding:6px 9px;line-height:16px}
.map-screen .map-ask{position:relative;inset:auto;left:auto;right:auto;bottom:auto;margin:0 0;height:50px;border:1px solid transparent;background:linear-gradient(102deg,#f0fcff,#f8f4ff) padding-box,linear-gradient(105deg,#57dfff,#d5a7ff) border-box;box-shadow:none;padding:6px 6px 6px 14px;gap:7px}
.map-screen .map-ask{width:100%}.map-ask .ask-star{width:24px;height:24px}.map-ask strong{font-size:15px}.map-ask small{font-size:12px}.send-dot{background:linear-gradient(135deg,#17baff,#8160ff);width:36px;height:36px}.send-dot img{width:24px;height:24px}
.map-screen .locate{bottom:calc(79px + var(--map-sheet-height,50px) + 164px);box-shadow:0 2px 10px #1022330a;display:grid;place-items:center}
.map-screen[data-sheet-raised="true"] .map-agent-panel{opacity:0;pointer-events:none}.sheet-dragging .map-agent-panel{transition:none}
.map-sheet-header .grabber{height:18px}.grabber:before{width:36px;height:4px}.sheet-hint{font-size:12px;color:#999;display:block;text-align:center;line-height:25px;padding-bottom:6px}
.map-bottom.compact[data-sheet-level="0"] .map-filters{display:none}.map-bottom.expanded .sheet-hint,.map-bottom:not([data-sheet-level="0"]) .sheet-hint{display:none}
.map-bottom .map-filters{padding-top:5px}.map-bottom .map-sheet-results{padding-top:6px}
.map-bottom.compact[data-sheet-level="0"] .map-sheet-results{visibility:hidden}
.text-tabs{gap:23px;margin-bottom:11px;padding-top:0}.text-tabs .chip.active:after{background:transparent;width:18px;height:7px;border-bottom:3px solid var(--pink);border-radius:50%;left:calc(50% - 9px);bottom:0}.text-tabs .chip{font-weight:600}
.feed{padding-top:0}.discovery-card,.discovery-card.cool{background:#f5f5f5}.discovery-photo{height:auto;aspect-ratio:1}.discovery-info{padding-top:17px}.discovery-card{padding-bottom:20px}.discovery-info .meta{font-size:12px}.discovery-actions{margin-top:18px;gap:12px}.discovery-actions button{height:34px}
.bookmark-only.saved{color:var(--pink)}.bookmark-only:not(.saved){color:#888}.save-button svg{flex:none}.detail-hero .bookmark-only{color:white}
.rank-hero{height:218px}.rank-hero .status-icons img,.detail-hero .status-icons img{filter:invert(1)}.rank-chips{padding:18px 16px 0;gap:26px;justify-content:flex-start}.rank-chips .chip{font-size:24px;line-height:31px;color:#ffffff65;border-radius:0;background:none;height:auto;padding:0;flex:none}.rank-chips .chip.active{color:white;background:none}.rank-chips .chip:nth-child(3){font-size:24px}
.rank-hero h1{margin:29px 24px 0;height:40px;line-height:40px;letter-spacing:-1.5px}.must-eat-title{width:188px;height:40px;object-fit:contain}.rank-hero>p{margin-top:10px;font-size:13px;white-space:nowrap;margin-left:24px;opacity:.9}.rank-hero>p b{color:var(--pink)}.rank-shade{background:linear-gradient(#0007,#0007 50%,#21040be6)}
.rank-mode{padding:9px 22px 7px}.rank-mode .chip{font-size:14px;position:relative;color:#888;border:0;border-radius:0}.rank-mode .chip.active{color:#111;border:0}.rank-mode .chip.active:after{content:'';position:absolute;width:19px;height:8px;bottom:0;left:calc(50% - 9px);border-bottom:3px solid var(--pink);border-radius:50%}
.rank-filters{justify-content:flex-start;gap:8px;white-space:nowrap;overflow:auto;padding:0 16px 5px;scrollbar-width:none;margin-bottom:12px}.rank-filters button{border:1px solid #e7e7e7;padding:5px 12px;border-radius:30px;font-size:12px;flex:none;height:29px}.rank-filters button:first-child{padding:6px;display:grid;place-items:center;width:29px}
.rank-card{padding-bottom:26px;margin-bottom:3px;border:0}.rank-card h2{font-size:18px}.rank-card .meta{font-size:13px}.rank-card .rank-badge{padding:2px 4px;font-style:italic}.rank-photos{gap:10px}.rank-photos button{border-radius:8px}.local-voice{font-size:13px;background:#fff5f5;padding:9px 8px}.local-voice strong{display:flex;align-items:center;gap:6px}.voice-avatars{display:flex}.voice-avatars img{width:16px;height:16px;border-radius:50%;object-fit:cover;border:1px solid white}.voice-avatars img+img{margin-left:-4px}.local-voice p{line-height:1.35}
.profile-header{margin-top:39px;margin-bottom:24px;height:111px}.profile-header h1{font-size:24px;line-height:31px;letter-spacing:-.4px}.avatar{width:85px;height:85px;right:11px;top:7px}.profile-stats{gap:20px;margin-top:18px}.order-shortcuts{background:#f8f8f8;border-radius:12px;padding:16px 10px}.order-shortcuts button{width:33.333%;font-size:12px}.order-shortcuts svg{height:24px;width:24px}.saved-heading{margin-top:23px}.profile-header+.section-head h3{font-size:18px}.create-list{padding:18px 16px 22px}.collections{row-gap:24px}
.detail-hero .topbar .back{display:grid;place-items:center;line-height:24px}.detail-cta .save-button{background:#f5f5f5}.detail-cta svg{width:16px}
.ai-screen{background:white}.agent-toolbar{height:52px;border-bottom:1px solid #efefef;display:flex;align-items:center;gap:8px;padding:0 10px}.agent-toolbar>img{width:33px;height:33px}.agent-toolbar>strong{font-size:17px;flex:1}.agent-toolbar .icon-button{min-width:28px;width:28px}.agent-emptybar{height:44px;display:flex;justify-content:space-between;align-items:center;padding:0 8px}.agent-emptybar button:last-child{color:#666}
.ai-scroll{height:calc(100% - 186px);padding:0 16px 25px;scrollbar-width:none}.ai-screen:has(.agent-emptybar) .ai-scroll{height:calc(100% - 179px)}
.ai-welcome{padding:54px 0 20px}.ai-welcome .agent-avatar{margin:0 12px 20px;width:39px;height:39px}.ai-welcome h1{margin-left:12px;font-size:32px;line-height:1.16;letter-spacing:-.65px;max-width:none;font-weight:600}
.agent-scenarios{display:grid;gap:10px;margin-top:32px;padding:0 2px}.scenario-card{width:100%;height:115px;display:flex;align-items:center;text-align:left;position:relative;border-radius:20px;border:1px solid #e6e6e6;background:white;overflow:hidden}
.scenario-card>img{height:115px;width:119px;object-fit:contain;flex:none}.scenario-card>span{padding-left:12px;display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.scenario-card strong{font-size:17px;font-weight:600;white-space:nowrap}.scenario-card small{font-size:14px;line-height:1.4;max-width:138px}.scenario-card i{height:28px;width:28px;border-radius:50%;background:#f5f5f5;display:grid;place-items:center;flex:none;margin:0 12px 0 2px}
.ai-input{bottom:34px;left:12px;right:12px;height:48px;border:1px solid #ededed;background:#fff;box-shadow:0 5px 18px #00000010;padding:0 10px;gap:8px}.ai-input>button{display:grid;place-items:center;flex:none;background:none;min-width:28px;width:28px;height:32px;color:#111}.ai-input input{font-size:16px;height:100%;width:100%;min-width:0}.ai-input .agent-send{display:none;background:#121212;color:white;border-radius:50%;height:32px;width:32px}.ai-input:has(input:not(:placeholder-shown)) .agent-send{display:grid}.ai-input:has(input:not(:placeholder-shown)) .voice-input{display:none}
.chat-timestamp{font-size:12px;color:#999;text-align:center;padding:26px 0 6px}.message.user{font-size:16px;line-height:1.5;border-radius:18px;background:#e4f5ff;padding:11px 13px;margin-top:16px;max-width:92%;width:fit-content}
.assistant-message{font-size:16px;line-height:1.5;padding-top:5px;padding-bottom:5px}.assistant-message>p{margin-bottom:16px}.thinking{font-size:13px;display:flex;align-items:center;gap:4px;padding:8px 0}.thinking span{width:5px;height:5px;background:#aaa;border-radius:50%;animation:breathe .7s infinite alternate}.thinking span:nth-child(2){animation-delay:.2s}.thinking span:nth-child(3){animation-delay:.4s;margin-right:7px}
.agent-ticket,.agent-reservation{border:1px solid #e7e7e7;border-radius:14px;background:#fff;padding:12px;margin-bottom:14px}.ticket-product{display:flex;gap:12px}.ticket-product>img{height:94px;width:82px;object-fit:cover;border-radius:9px}.ticket-product>div{display:flex;flex-direction:column;gap:5px;padding:1px 0;min-width:0}.ticket-product strong{font-size:15px;line-height:1.3}.ticket-product small{font-size:11px;color:#888}.ticket-product .teal{font-size:11px}.ticket-footer{display:flex;justify-content:space-between;align-items:center;margin-top:12px}.ticket-footer b{font-size:20px}.ticket-footer small{font-size:12px;color:#888}.ticket-footer .primary{padding:7px 23px;min-height:34px;height:34px;font-size:14px}
.agent-summary{border-top:1px solid #eee;margin-top:14px;padding-top:9px;display:grid;gap:12px}.agent-summary>div{display:flex;justify-content:space-between;gap:12px;font-size:13px;align-items:flex-start}.agent-summary span{color:#777}.agent-summary b{font-weight:500;text-align:right}.agent-summary .total{border-top:1px solid #eee;padding-top:10px;margin-top:2px;font-size:16px}.agent-summary .total b{font-size:20px;font-weight:700;color:var(--pink)}
.agent-ticket .row button:first-child,.agent-reservation .row button:first-child{flex:none}.agent-ticket .row .primary,.agent-reservation .row .primary{flex:1}.agent-ticket .row button,.agent-reservation .row button{min-height:36px;padding:8px 13px;font-size:13px}
.transaction-note{font-size:10px;color:#999;line-height:1.4;margin:14px 0 12px}.confirmed-strip{font-size:13px;font-weight:600;color:#00826f;padding:14px 0}.agent-ticket>.secondary,.agent-reservation>.secondary{height:36px;min-height:36px;padding:7px}
.reservation-place{display:flex;justify-content:space-between;align-items:center;width:100%;text-align:left;font-size:16px;padding-bottom:12px}.reservation-photos{display:flex;gap:6px;overflow:hidden}.reservation-photos img{width:calc((100% - 12px)/3);height:120px;border-radius:8px;object-fit:cover}
.response-actions{display:flex;gap:19px;padding:0 0 16px}.response-actions button{width:22px;height:28px;opacity:.7}.response-actions img{width:18px;height:18px}.analysis-complete{font-size:14px;color:#909090;border-top:1px solid #eee;padding:12px 0;margin-bottom:8px}
.followup-prompts{display:flex;align-items:flex-start;flex-direction:column;gap:8px;margin:16px 0}.followup-prompts button{border:1px solid #e5e5e5;border-radius:12px;padding:9px 12px;font-size:13px;background:white}
.budget-card{background:#f7f8f9;border-radius:14px;padding:16px;margin:12px 0}.budget-card>div{display:flex;justify-content:space-between;font-size:14px;margin-bottom:12px}.budget-card .total{border-top:1px solid #e1e1e1;padding-top:12px}.budget-card small{font-size:11px;color:#777}
.saved-inspiration{display:flex;gap:10px;margin-bottom:20px}.saved-inspiration img{width:100px;height:130px;object-fit:cover;border-radius:12px}.chat-history{max-height:350px;overflow:auto;margin-bottom:20px}.chat-history p{font-size:14px;padding:12px 0;border-bottom:1px solid #eee}
.trip-card>h2{font-size:20px;line-height:26px}.trip-stop .row-copy .score b{max-width:none}.trip-stop .row-copy .score{font-size:12px}.trip-stop .row-copy .score .muted{font-size:11px}
dialog{position:fixed;left:var(--dialog-left);bottom:var(--dialog-bottom);width:var(--dialog-width);max-width:var(--dialog-width);max-height:var(--dialog-height);border-radius:24px 24px 30px 30px;box-shadow:0 -8px 40px #0002;margin:0;overscroll-behavior:contain}dialog::backdrop{background:#0b17283d;backdrop-filter:blur(2px)}
.form-label select{font-size:16px;border:1px solid #ddd;border-radius:12px;min-height:48px;padding:11px 13px;width:100%;background:white;color:#111}
.modal-secondary{margin-top:10px}.order-summary strong{text-align:right;max-width:60%}.order-summary{margin-bottom:24px}
@media(max-width:850px){body{padding:16px;gap:0}.demo-sidebar{display:none}}
@media(max-width:500px){body{padding:0;background:white}#phone{width:100vw;height:100dvh;min-height:0;border-radius:0;box-shadow:none}dialog,.region-dialog{border-radius:24px 24px 0 0}.ai-welcome{padding-top:40px}}
@media(max-width:370px){.scenario-card>img{width:105px}.scenario-card>span{padding-left:6px}.scenario-card strong{font-size:16px}.scenario-card small{font-size:12px}.scenario-card i{margin-right:8px}.ai-welcome h1{font-size:29px}.rank-chips{gap:20px}.rank-chips .chip{font-size:22px}.rank-hero>p{font-size:11px}}
@media(prefers-reduced-motion:reduce){.map-agent-panel,.map-bottom,.map-ask,.locate{transition:none!important}}
.map-category .must-eat-chip[aria-pressed="true"]{background:#fff0f4;border-color:#ff285c;box-shadow:none}
