@font-face{font-family:Schibsted Grotesk;src:url(/fonts/schibsted-grotesk-variable.ttf)format("truetype");font-style:normal;font-weight:100 900;font-display:swap}@font-face{font-family:Schibsted Grotesk;src:url(/fonts/schibsted-grotesk-variable-italic.ttf)format("truetype");font-style:italic;font-weight:100 900;font-display:swap}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--accent:#d13f5b;--accent-strong:#a82445;--accent-soft:#fadce3;--page:#fff7f9;--surface:#fff;--surface-muted:#f7f3f4;--ink:#2f1d23;--muted:#75676c;--faint:#a89ca0;--line:#eadfe2;--shadow:0 18px 50px #53223017;--display-font:"Schibsted Grotesk", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--interface-font:"Schibsted Grotesk", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif}*{box-sizing:border-box}html,body{background:var(--page);min-height:100%;color:var(--ink);margin:0}body,button,textarea,select{font-family:var(--interface-font)}button,textarea,select{color:inherit}button{border:0}button:not(:disabled){cursor:pointer}button:focus-visible,textarea:focus-visible,select:focus-visible{outline-offset:3px;outline:3px solid #d13f5b3d}.app-shell{min-height:100dvh}.mobile-app{background:var(--page);min-height:100dvh}.desktop-unsupported{display:none}.screen-top{min-height:98px;padding:max(calc(env(safe-area-inset-top) + 12px), 54px) 22px 10px;grid-template-columns:minmax(36px,1fr) auto minmax(36px,1fr);align-items:center;display:grid}.screen-top-left{justify-self:start;align-items:center;min-width:34px;min-height:34px;display:flex}.screen-top-actions{justify-self:end;align-items:center;gap:10px;display:flex}.brand-icon{background:var(--accent-strong);width:56px;height:36px;display:block;transform:translateY(-4px);-webkit-mask:url(/brand-mark.svg) 50%/contain no-repeat;mask:url(/brand-mark.svg) 50%/contain no-repeat}.icon-button{border:1px solid var(--line);background:var(--surface);border-radius:50%;place-items:center;width:36px;height:36px;padding:0;display:grid}.icon-button:disabled{opacity:.35}.step-count{color:var(--muted);letter-spacing:.08em;font-size:12px;font-weight:600}.prompt-screen{min-height:100dvh}.prompt-content{padding:clamp(34px,6vh,56px) 22px 42px}.display-title{color:var(--ink);font-family:var(--display-font);letter-spacing:-.05em;margin:0 0 36px;font-size:clamp(44px,12.6vw,58px);font-weight:780;line-height:1.08;transform:translate(4px)}.display-title>span{display:block}.display-title .greeting-line{color:var(--accent-strong)}.destination-line{color:var(--ink)}.city-word{min-width:2em;display:inline-block}.title-period{background:var(--accent-strong);color:#0000;text-indent:-999px;vertical-align:baseline;border-radius:50%;width:.23em;height:.23em;margin-left:.04em;line-height:0;display:inline-block;overflow:hidden}.prompt-card{border:1px solid var(--line);background:var(--surface);min-height:158px;box-shadow:var(--shadow);border-radius:20px;padding:19px}.prompt-card textarea{resize:none;background:0 0;border:0;width:100%;min-height:78px;padding:0;font-size:18px;font-weight:430;line-height:1.45;display:block}.prompt-card textarea::placeholder{color:var(--faint);opacity:1}.prompt-card textarea:focus{outline:0}.prompt-card-footer{justify-content:space-between;align-items:center;margin-top:10px;display:flex}.model-select{background:var(--surface-muted);min-height:32px;color:var(--muted);border-radius:999px;align-items:center;gap:6px;padding:0 11px;font-size:14px;font-weight:650;display:inline-flex;position:relative}.model-select-logo{flex:none;width:15px;height:15px}.model-select-copy{white-space:nowrap;align-items:baseline;gap:4px;display:inline-flex}.model-select-copy strong{color:var(--ink);font-size:14px;font-weight:620}.model-select-copy span{color:var(--faint);font-size:14px;font-weight:620}.model-select select{appearance:none;color:#0000;cursor:pointer;opacity:0;background:0 0;border:0;outline:0;width:100%;height:100%;padding:0;position:absolute;inset:0}.model-select:focus-within{outline-offset:3px;outline:3px solid #d13f5b3d}.model-select-chevron{color:var(--faint);pointer-events:none}.send-button{background:var(--accent);color:#fff;border-radius:13px;place-items:center;width:40px;height:40px;padding:0;transition:transform .16s,opacity .16s,background .16s;display:grid}.send-button:not(:disabled):active{transform:scale(.94)}.send-button:disabled{opacity:.28}.prompt-suggestions{margin-top:30px}.prompt-suggestions h2{color:var(--muted);letter-spacing:-.02em;margin:0 0 13px;font-size:17px;font-weight:660}.suggestion-list{flex-direction:column;align-items:flex-start;gap:8px;min-height:112px;display:flex}.suggestion-bubble{border:1px solid var(--line);background:var(--surface);width:fit-content;max-width:100%;min-height:31px;color:var(--ink);text-align:left;border-radius:11px;padding:7px 11px;font-size:12px;font-weight:560;line-height:1.4;box-shadow:0 5px 16px #5322300a}.suggestion-bubble:active{background:var(--accent-soft)}@media (prefers-reduced-motion:no-preference){.prompt-screen,.flow-screen,.results-screen{animation:.3s cubic-bezier(.22,1,.36,1) both screen-in}.city-word{animation:.3s ease-out word-in}.suggestion-bubble{animation:.26s ease-out both suggestion-in}.suggestion-bubble.exiting{pointer-events:none;animation:.26s ease-in both suggestion-out}.status-message small{animation:.42s cubic-bezier(.22,1,.36,1) both status-copy-in}.results-context[open] .conversation-thread{animation:.28s cubic-bezier(.22,1,.36,1) both context-in}.drawer-backdrop{animation:.22s ease-out both backdrop-in}.room-drawer{animation:.32s cubic-bezier(.22,1,.36,1) both drawer-in}}.flow-screen{min-height:100dvh;padding-bottom:calc(24px + env(safe-area-inset-bottom));flex-direction:column;display:flex}.date-screen .screen-top{min-height:86px;padding-bottom:4px}.flow-heading{padding:44px 24px 24px}.date-screen .flow-heading{padding:20px 24px 16px}.date-screen .flow-heading h1{font-size:clamp(27px,7.4vw,33px)}.flow-heading h1{letter-spacing:-.035em;max-width:330px;margin:0;font-size:clamp(29px,8vw,36px);font-weight:590;line-height:1.16}.flow-heading p{color:var(--muted);margin:12px 0 0;font-size:14px;line-height:1.55}.calendar-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:20px;margin:0 16px;padding:13px 12px 12px}.calendar-toolbar{justify-content:space-between;align-items:center;padding:0 2px 9px;display:flex}.date-screen .calendar-toolbar .icon-button{width:32px;height:32px}.calendar-toolbar strong{letter-spacing:-.02em;font-size:16px;font-weight:680}.calendar-weekdays,.calendar-grid{grid-template-columns:repeat(7,1fr);display:grid}.calendar-weekdays{border-bottom:1px solid var(--line);padding:2px 0 6px}.calendar-weekdays span{color:var(--faint);text-align:center;font-size:12px;font-weight:620}.calendar-grid{gap:1px 0;padding-top:6px}.calendar-day{z-index:1;isolation:isolate;background:0 0;border-radius:50%;place-items:center;min-width:0;height:38px;padding:0;font-size:14px;font-weight:590;display:grid;position:relative}.calendar-day.in-range{background:var(--accent-soft);border-radius:0}.calendar-day.selected{color:#fff;background:0 0;border-radius:0}.calendar-day.selected:after{z-index:-1;background:var(--accent);content:"";border-radius:50%;width:38px;height:38px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.calendar-day.range-start:before,.calendar-day.range-end:before{z-index:-2;background:var(--accent-soft);content:"";width:50%;position:absolute;top:0;bottom:0}.calendar-day.range-start:before{right:0}.calendar-day.range-end:before{left:0}.calendar-day:disabled{color:var(--faint);cursor:default;opacity:.45}.calendar-day.outside{opacity:0}.date-summary{border-top:1px solid var(--line);grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;margin-top:9px;padding:10px 8px 0;display:grid}.date-summary div{flex-direction:column;gap:4px;display:flex}.date-summary div:last-child{text-align:right}.date-summary span{color:var(--faint);font-size:11px;font-weight:620}.date-summary strong{font-size:14px;font-weight:660}.stay-nights{border:1px solid var(--line);background:var(--surface-muted);min-width:42px;min-height:28px;color:var(--accent-strong);text-align:center;border-radius:999px;justify-content:center;align-items:center;padding:0 10px;font-size:12px;font-weight:700;display:inline-flex}.primary-action{background:var(--accent);color:#fff;border-radius:14px;justify-content:center;align-items:center;gap:9px;width:calc(100% - 32px);min-height:52px;margin:auto 16px 0;padding:0 20px;font-size:15px;font-weight:680;transition:transform .16s,opacity .16s,background .16s;display:flex}.primary-action:not(:disabled):active{transform:scale(.985)}.primary-action:disabled{opacity:.28}.date-screen .primary-action{margin:12px 16px 0}.loading-screen{justify-content:flex-start}.conversation-thread{flex-direction:column;gap:13px;padding:20px 16px 28px;display:flex}.loading-screen .conversation-thread{flex:1;justify-content:flex-start}.chat-row{align-items:flex-end;gap:9px;width:100%;display:flex}.chat-row.user{justify-content:flex-end}.chat-row.assistant{justify-content:flex-start;align-items:flex-start}.chat-bubble{overflow-wrap:anywhere;max-width:min(84%,340px);padding:12px 14px;font-size:14px;line-height:1.5}.chat-bubble p{margin:0}.user-bubble{background:color-mix(in srgb, var(--accent) 86%, var(--accent-soft));color:#fff;border-radius:13px;font-weight:520}.assistant-bubble{max-width:100%;color:var(--ink);box-shadow:none;background:0 0;border:0;border-radius:0;padding:2px 0}.assistant-bubble small,.answer-message small,.status-message small{margin-top:5px;font-size:11px;line-height:1.45;display:block}.assistant-bubble small{color:var(--muted)}.answer-message{flex-direction:column;display:flex}.answer-message small{color:#ffffffc7}.date-message{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:12px;width:min(84%,340px);max-width:340px;display:grid}.date-message>div{flex-direction:column;gap:2px;min-width:0;display:flex}.date-message>div:last-child{text-align:right}.date-message span{color:#ffffffb8;font-size:10px;font-weight:620}.date-message strong{white-space:nowrap;font-size:13px;font-weight:680}.date-message .chat-night-count{color:#fff;white-space:nowrap;border:1px solid #ffffff47;border-radius:8px;justify-content:center;align-items:center;min-height:25px;padding:0 8px;font-size:11px;font-weight:700;display:inline-flex}.status-message{min-width:min(72%,260px)}.status-message-title{align-items:center;gap:8px;display:flex}.status-message-title svg{color:var(--accent)}.status-message-title strong{font-size:14px;font-weight:680}.progress-spinner,.room-loading svg{animation:.9s linear infinite spin}.question-prompt{padding:36px 24px 22px}.question-prompt p{max-width:340px;color:var(--ink);letter-spacing:-.025em;margin:0;font-size:clamp(20px,5.7vw,24px);font-weight:570;line-height:1.35}.option-list{flex-direction:column;gap:10px;padding:6px 16px 28px;display:flex}.option-card{border:1px solid var(--line);background:var(--surface);text-align:left;border-radius:16px;align-items:center;gap:12px;width:100%;min-height:58px;padding:12px 15px;transition:border-color .16s,background .16s,transform .16s;display:flex}.option-card:not(.selected):active{transform:scale(.99)}.option-card.selected{border-color:var(--accent);background:var(--accent-soft)}.option-label{flex:1;min-width:0;font-size:14px;font-weight:560;line-height:1.4;display:block}.option-check,.room-check{border:1px solid var(--line);color:#fff;border-radius:50%;flex:none;place-items:center;width:22px;height:22px;display:grid}.option-card.selected .option-check,.room-card.selected .room-check{border-color:var(--accent);background:var(--accent)}.error-screen{justify-content:center}.error-screen .screen-top{position:absolute;inset:0 0 auto}.error-card{text-align:center;padding:28px 24px}.error-card>span{color:var(--accent-strong);font-size:12px;font-weight:680}.error-card h1{font-family:var(--display-font);margin:10px 0 8px;font-size:42px;font-weight:450}.error-card p{max-width:320px;color:var(--muted);margin:0 auto 28px;font-size:14px;line-height:1.55}.error-card .primary-action{width:100%;margin:0}.quiet-action{min-height:42px;color:var(--muted);background:0 0;padding:0 14px;font-size:13px;font-weight:620}.error-card .quiet-action{margin-top:10px}.results-screen{min-height:100dvh;padding-bottom:calc(32px + env(safe-area-inset-bottom))}.results-screen .conversation-thread{padding:12px 0 4px}.results-date-shell{padding:4px 14px 8px}.results-date-control{border:1px solid var(--line);background:var(--surface);text-align:left;border-radius:16px;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:12px;width:100%;min-height:64px;padding:10px 14px;transition:transform .16s,border-color .16s;display:grid;box-shadow:0 8px 24px #5322300e}.results-date-control:not(:disabled):active{border-color:color-mix(in srgb, var(--accent) 45%, var(--line));transform:scale(.987)}.results-date-control>span:not(.results-date-nights){flex-direction:column;gap:3px;min-width:0;display:flex}.results-date-control>span:last-child{text-align:right}.results-date-control small{color:var(--faint);font-size:10px;font-weight:620}.results-date-control strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:700;overflow:hidden}.results-date-nights{background:var(--accent-soft);min-height:27px;color:var(--accent-strong);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;padding:0 9px;font-size:11px;font-weight:720;display:inline-flex}.results-copy{padding:15px 20px 12px}.results-copy h1{letter-spacing:-.035em;margin:0;font-size:28px;font-weight:610}.results-copy p{color:var(--muted);margin:8px 0 0;font-size:13px;line-height:1.5}.hotel-sort{color:var(--ink);align-items:center;margin-top:14px;display:inline-flex;position:relative}.hotel-sort select{border:1px solid var(--line);appearance:none;background:var(--surface);min-height:34px;color:inherit;font:inherit;border-radius:999px;padding:0 32px 0 12px;font-size:12px;font-weight:560}.hotel-sort svg{pointer-events:none;position:absolute;right:11px}.results-context{margin:0 14px 18px}.results-context summary{min-height:36px;color:var(--muted);cursor:pointer;align-items:center;gap:5px;padding:0 6px;font-size:12px;font-weight:640;list-style:none;display:inline-flex}.results-context summary::-webkit-details-marker{display:none}.results-context-icon{transition:transform .24s cubic-bezier(.22,1,.36,1)}.results-context[open] .results-context-icon{transform:rotate(90deg)}.hotel-list{flex-direction:column;gap:14px;padding:0 14px;display:flex}.hotel-list.horizontal{overscroll-behavior-inline:contain;scroll-behavior:smooth;scroll-snap-type:inline mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;grid-auto-columns:80%;grid-auto-flow:column;align-items:start;gap:12px;padding:0 14px 10px;scroll-padding-inline:14px;display:grid;overflow-x:auto}.hotel-list.horizontal::-webkit-scrollbar{display:none}.hotel-card{border:1px solid var(--line);background:var(--surface);border-radius:18px;transition:transform .22s cubic-bezier(.22,1,.36,1),box-shadow .22s;overflow:hidden;box-shadow:0 10px 30px #5322300f}.hotel-list.horizontal .hotel-card{scroll-snap-align:start;scroll-snap-stop:always}.hotel-card:active{transform:scale(.988)}.hotel-photo{aspect-ratio:16/9;background:var(--accent-soft);color:var(--accent-strong);place-items:center;display:grid;position:relative;overflow:hidden}.hotel-photo img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.photo-placeholder{opacity:.55}.hotel-content{padding:16px}.hotel-title-row{align-items:flex-start;gap:10px;display:flex}.hotel-title-row h2{letter-spacing:-.02em;flex:1;min-width:0;margin:0;font-size:17px;font-weight:690;line-height:1.35}.star-dots{vertical-align:.12em;gap:3px;margin-left:7px;display:inline-flex}.star-dots>span{background:var(--accent-strong);border-radius:50%;width:5px;height:5px;display:block}.hotel-location{color:var(--muted);align-items:flex-start;gap:5px;margin:8px 0 0;font-size:12px;line-height:1.45;display:flex}.hotel-location svg{flex:none;margin-top:1px}.hotel-tags{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.hotel-tags span{border:1px solid var(--accent-soft);min-height:24px;color:var(--accent-strong);border-radius:7px;padding:4px 8px;font-size:10px;font-weight:620}.recommendation-reason{color:var(--muted);margin:12px 0 0;font-size:12px;line-height:1.6}.hotel-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:flex-end;gap:14px;margin-top:16px;padding-top:14px;display:flex}.price{flex-direction:column;gap:2px;display:flex}.price small{color:var(--faint);font-size:10px}.price strong{color:var(--accent-strong);font-size:20px;font-weight:720}.hotel-actions{flex-direction:column;align-items:stretch;gap:7px;display:flex}.hotel-actions button{border:1px solid var(--accent);background:var(--accent);color:#fff;border-radius:11px;justify-content:center;align-items:center;gap:5px;min-height:38px;padding:0 14px;font-size:12px;font-weight:660;text-decoration:none;display:inline-flex}.results-reset{margin:20px auto 0;display:block}.drawer-backdrop{z-index:20;background:#2f1d235c;align-items:flex-end;display:flex;position:fixed;inset:0}.room-drawer{width:100%;max-height:86dvh;padding:10px 16px calc(18px + env(safe-area-inset-bottom));background:var(--page);border-radius:22px 22px 0 0;overflow-y:auto;box-shadow:0 -18px 70px #2f1d2333}.drawer-handle{background:var(--line);border-radius:999px;width:34px;height:4px;margin:0 auto 14px}.drawer-header{align-items:center;gap:12px;padding-bottom:15px;display:flex}.drawer-hotel-photo{background:var(--accent-soft);width:92px;height:78px;color:var(--accent-strong);border-radius:13px;flex:0 0 92px;place-items:center;display:grid;position:relative;overflow:hidden}.drawer-hotel-photo img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.drawer-hotel-copy{flex:1;min-width:0}.drawer-header h2{margin:0;font-size:18px;line-height:1.3}.drawer-hotel-copy p{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:6px 0 0;font-size:11px;line-height:1.45;display:-webkit-box;overflow:hidden}.drawer-header .icon-button{flex:none;align-self:flex-start}.room-loading,.room-message{border:1px solid var(--line);background:var(--surface);min-height:70px;color:var(--muted);border-radius:14px;justify-content:center;align-items:center;gap:8px;margin:4px 0 12px;font-size:13px;display:flex}.room-message{text-align:center;padding:16px;line-height:1.5}.room-list{flex-direction:column;gap:9px;display:flex}.room-card{border:1px solid var(--line);background:var(--surface);text-align:left;border-radius:14px;width:100%;overflow:hidden}.room-card.selected{border-color:var(--accent)}.room-icon{background:var(--accent-soft);width:34px;height:34px;color:var(--accent-strong);border-radius:10px;place-items:center;display:grid}.room-heading{align-items:center;gap:10px;padding:13px;display:flex}.room-copy,.room-price{flex-direction:column;min-width:0;display:flex}.room-copy{gap:3px}.room-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.room-copy small,.room-price small{color:var(--muted);font-size:10px;font-style:normal}.room-rate-list{border-top:1px solid var(--line)}.room-rate-option{border:0;border-top:1px solid var(--line);width:100%;min-height:58px;color:var(--ink);text-align:left;background:0 0;grid-template-columns:minmax(0,1fr) auto 18px;align-items:center;gap:10px;padding:11px 12px;display:grid}.room-rate-option:first-child{border-top:0}.room-rate-option.selected{background:color-mix(in srgb, var(--accent-soft) 54%, white)}.room-cancellation{min-width:0;color:var(--muted);overflow-wrap:anywhere;white-space:normal;font-size:11px;line-height:1.45}.room-price{align-items:flex-end;gap:3px}.room-price strong{color:var(--accent-strong);font-size:13px}.room-check{width:18px;height:18px}.drawer-footer{background:var(--page);padding-top:14px;position:sticky;bottom:-1px}.drawer-footer .primary-action{width:100%;margin:0}.drawer-booking-link{background:var(--accent);color:#fff;border-radius:14px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:52px;font-size:14px;font-weight:700;text-decoration:none;display:inline-flex}@keyframes spin{to{transform:rotate(360deg)}}@keyframes word-in{0%{opacity:0;transform:translateY(5px)}}@keyframes suggestion-in{0%{opacity:0;transform:translateY(4px)}}@keyframes suggestion-out{to{opacity:0;transform:translateY(-4px)}}@keyframes screen-in{0%{opacity:0;transform:translateY(6px)}}@keyframes context-in{0%{opacity:0;transform:translateY(-4px)}}@keyframes status-copy-in{0%{opacity:0;transform:translateY(3px)}}@keyframes backdrop-in{0%{opacity:0}}@keyframes drawer-in{0%{opacity:0;transform:translateY(18px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--page:#21171a;--surface:#2b1d22;--surface-muted:#38262c;--ink:#fff7f9;--muted:#c6b6bb;--faint:#9d8a90;--line:#49343b;--accent-soft:#4b2531;--shadow:0 18px 50px #0000002e}}@media (width>=768px){.mobile-app{display:none}.desktop-unsupported{min-height:100dvh;color:var(--muted);justify-content:center;align-items:center;gap:10px;display:flex}.desktop-unsupported p{margin:0;font-size:14px;font-weight:620}}
