:root{--app-header-height:83px;--page-gutter:32px;--card-gap:20px;--card-radius:13px;--control-height:44px;--control-radius:10px;--surface-page:#f6f9fa;--surface-white:#fff;--surface-border:#e4eaf0;--surface-soft:#f1f5f8;--surface-selected:#e9f0f3;--surface-text:#102d44;--surface-muted:#60758d;--accent-surface:#fff0e7;--accent-text:#bd3907;--card-shadow:0 1px 3px #17384d05;--card-hover-shadow:0 8px 24px #18384b12}:root[data-theme=dark]{--surface-page:#10212c;--surface-white:#192c38;--surface-border:#354d5b;--surface-soft:#20343f;--surface-selected:#25423e;--surface-text:#edf5fa;--surface-muted:#aec0ce;--accent-surface:#432e26;--accent-text:#ffb28d}.app-surface{--white:var(--surface-white);--ivory:var(--surface-page);--line:var(--surface-border);--soft:var(--surface-soft);--selected:var(--surface-selected);--navy:var(--surface-text);--muted:var(--surface-muted);--dialog:var(--white);--warm:var(--accent-surface);color:var(--navy);background:var(--ivory)}.app-page-container,.main.app-page-container,.community-main.app-page-container{width:100%;max-width:none;padding:24px var(--page-gutter) 48px;min-height:calc(100dvh - var(--app-header-height));margin:0 auto}.app-page-container .page-heading{align-items:center;margin-bottom:28px}.app-page-container .page-heading h1{letter-spacing:-1px;margin:0;font-size:34px;line-height:1.3}.page-heading-copy{min-width:0}.page-heading-copy>p{color:var(--muted);margin:8px 0 0;font-size:14px}.app-page-container :is(.button,.themed-select,.search){min-height:var(--control-height);border-radius:var(--control-radius)}.app-page-container .search{background:var(--white);border-color:var(--line);height:48px}.app-page-container .search input{min-width:0;height:100%;margin:0;font-size:14px}.app-page-container .themed-select{background-color:var(--white)}.app-page-container :is(.trip-tile,.community-card,.settings-group,.you-profile){border:1px solid var(--line);border-radius:var(--card-radius);background:var(--white);box-shadow:var(--card-shadow)}.app-page-container :is(.trip-tile,.community-card):focus-within{border-color:var(--teal)}@media (hover:hover){.app-page-container :is(.trip-tile,.community-card):hover{border-color:var(--teal);box-shadow:var(--card-hover-shadow)}}.app-page-container :is(.trip-shortcuts,.empty){border-radius:var(--card-radius)}.app-page-container .empty{background:var(--soft);margin-top:24px;padding:48px 24px}.app-page-container .empty h2{font-size:22px}.app-page-container .trip-shortcuts{margin-top:24px}.app-page-container .trip-shortcuts>:is(a,button):hover{background:var(--soft)}.app-page-container .app-footer{padding-top:32px}.you-profile{padding:24px}.you-profile>div{min-width:0}.you-profile h2{overflow-wrap:anywhere;margin:0}.you-profile .button{flex-shrink:0}.settings-group{min-width:0;padding:24px}.settings-group>h2{margin:0 0 12px;font-size:18px}.settings-group>.context-row{flex-wrap:nowrap;gap:16px;min-height:88px;padding:16px 0}.settings-group>.context-row:last-child{border-bottom:0}.settings-group .context-row>span{overflow-wrap:anywhere;min-width:0}.settings-group .context-row svg{flex-shrink:0}.settings-signout{margin-top:24px}.search.community-search{gap:10px;width:100%;max-width:none;margin:0;padding:0 14px;display:flex}.search.community-search>svg{flex-shrink:0;position:static}.search.community-search input{background:0 0;border:0;padding:0}.community-suggestions{margin:12px 0 24px}.community-suggestions button{border-radius:10px;min-height:40px}.community-suggestions button:hover{background:var(--soft)}.community-suggestions button.selected{background:var(--accent-surface);color:var(--accent-text);border-color:var(--accent-surface)}.community-toolbar h2{font-size:20px}.community-toolbar label,.community-toolbar .themed-select{margin:0}.community-grid{gap:var(--card-gap);align-items:stretch}.community-card{flex-direction:column;display:flex}.community-card:hover{transform:none}.community-card h3{overflow-wrap:anywhere;font-size:18px}.community-card .community-cover{aspect-ratio:16/9;max-height:240px}.community-card-body{padding:16px 18px 0}.community-description{min-height:43px;font-size:13px}.community-actions.compact{margin-top:auto}.community-actions.compact>.community-action-row{flex-wrap:nowrap;padding:10px 16px;position:relative;inset:auto}.community-actions.compact .community-author{flex:1;min-width:0;margin:0;padding:0}.community-actions.compact .community-author>span:last-child{overflow-wrap:anywhere;min-width:0}.community-actions.compact footer{flex-wrap:wrap;padding:12px 16px}.community-actions.compact footer .button{min-height:44px}.community-dialog{background:var(--white);border-radius:var(--card-radius)}.community-dialog :is(input,.themed-select,textarea){border-radius:var(--control-radius)}.community-dialog input:not([type=checkbox]):not([type=radio]),.community-dialog .themed-select{min-height:var(--control-height)}:where(.skeleton){background:var(--soft);border-radius:6px;width:100%;max-width:100%;height:14px;display:block}.skeleton-animate{animation:1.8s ease-in-out infinite skeleton-breathe}@keyframes skeleton-breathe{50%{opacity:.55}}.skeleton-cover{aspect-ratio:16/9;background:var(--selected);border-radius:0;height:auto;max-height:240px}.skeleton-card-copy{gap:14px;padding:18px;display:grid}.skeleton-title{width:75%;height:22px}.skeleton-meta{width:60%}.skeleton-description{height:43px}.skeleton-card-row,.skeleton-card-footer{justify-content:space-between;align-items:center;gap:16px;display:flex}.skeleton-card-footer{border-top:1px solid var(--line);margin-top:auto;padding:10px 16px}.skeleton-control{border-radius:var(--control-radius);width:128px;height:44px}.skeleton-avatar{border-radius:50%;flex:none;width:40px;height:40px}.skeleton-heading{min-height:72px}.skeleton-heading>div{flex:1}.skeleton-page-title{width:200px;height:40px;margin-bottom:8px}.skeleton-subtitle{width:320px}.skeleton-toolbar{gap:12px;margin-bottom:24px;display:flex}.skeleton-search{border-radius:var(--control-radius);flex:1;height:48px}.skeleton-toolbar>.skeleton-control{height:48px}.skeleton-discovery{margin-top:0}.skeleton-destinations{flex-wrap:wrap;align-items:center;gap:8px;margin:12px 0 24px;display:flex}.skeleton-destinations .skeleton-control{width:110px;height:40px}.page-skeleton .you-profile>div{min-height:60px}.page-skeleton .settings-group>.skeleton-title{margin-bottom:12px}.skeleton-discovery .skeleton-title{width:220px}.page-skeleton .you-profile>div{gap:10px;display:grid}.skeleton-settings-label{gap:10px;width:100%;display:grid}.skeleton-toggle{border-radius:12px;flex:none;width:36px;height:20px}.skeleton-generic{gap:24px;padding-block:24px;display:grid}.header-account .skeleton{border-radius:50%;width:33px;height:33px}@media (max-width:1100px){:root{--page-gutter:24px}}@media (max-width:700px){.you-settings{grid-template-columns:1fr;gap:20px}.app-page-container .page-heading{flex-wrap:wrap;align-items:flex-start;gap:16px}.settings-group{padding:20px}}@media (max-width:640px){:root{--page-gutter:16px;--app-header-height:67px}.app-page-container,.main.app-page-container,.community-main.app-page-container{padding:22px var(--page-gutter) calc(100px + env(safe-area-inset-bottom))}.app-page-container .page-heading h1{font-size:28px}.app-page-container .page-heading{margin-bottom:24px}.app-page-container .page-heading .heading-actions{justify-content:flex-start}.app-page-container .page-heading .button{padding:10px 14px}.app-page-container .page-heading .button svg{display:block}.page-heading-copy>p{font-size:13px}.you-profile{grid-template-columns:44px minmax(0,1fr);gap:12px;padding:20px;display:grid}.you-profile .button{grid-column:2;justify-self:start;margin-left:0}.page-skeleton .you-profile>.skeleton-control{grid-column:2}.you-profile h2{font-size:21px}.you-profile p{font-size:13px}.skeleton-toolbar{flex-wrap:wrap}.skeleton-search{flex-basis:100%}.skeleton-toolbar>.skeleton-control{flex:1}.skeleton-heading>div{flex-basis:100%}.skeleton-discovery{margin-top:24px}}@media (prefers-reduced-motion:reduce){.skeleton-animate{animation:none}.app-surface :is(.trip-tile,.community-card,.community-cover img){transition:none;transform:none}}
.themed-select{text-align:left;width:100%;min-width:0;max-width:100%;min-height:44px;color:var(--surface-text,var(--navy));background:var(--surface-white,var(--white));border:1px solid var(--surface-border,var(--line));border-radius:var(--control-radius,10px);justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;font-weight:400;line-height:1.45;transition:border-color .17s,background-color .17s,box-shadow .17s;display:inline-flex}.themed-select:hover:not(:disabled){border-color:var(--teal)}.themed-select[data-popup-open]{border-color:var(--teal);box-shadow:0 0 0 3px color-mix(in srgb, var(--teal) 15%, transparent)}.themed-select:focus-visible,.themed-suggest-input:focus-visible{outline:2px solid var(--teal);outline-offset:3px}.themed-select[aria-invalid=true]{border-color:var(--danger)}.themed-select-value{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.themed-select-arrow{color:var(--surface-muted,var(--muted));flex:none;transition:transform .17s;display:flex}.themed-select[data-popup-open] .themed-select-arrow{transform:rotate(180deg)}input.themed-select-form-input{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;min-height:0;padding:0;position:absolute;overflow:hidden}.themed-select-positioner{z-index:1000;outline:none;max-width:calc(100vw - 16px)}.themed-select-positioner[data-anchor-hidden]{visibility:hidden}.themed-select-popup{box-sizing:border-box;width:max-content;min-width:min(var(--anchor-width), calc(100vw - 16px));max-width:min(420px, var(--available-width), calc(100vw - 16px));border:1px solid var(--surface-border,var(--line));color:var(--surface-text,var(--navy));background:var(--surface-white,var(--white));transform-origin:var(--transform-origin);border-radius:12px;outline:none;padding:5px;transition:opacity .17s,transform .17s;box-shadow:0 12px 32px #102d441c,0 2px 6px #102d440a}.themed-select-popup[data-starting-style],.themed-select-popup[data-ending-style]{opacity:0;transform:translateY(-4px)scale(.98)}.themed-select-popup[data-side=top][data-starting-style],.themed-select-popup[data-side=top][data-ending-style]{transform:translateY(4px)scale(.98)}.themed-select-list{max-height:min(320px, calc(var(--available-height) - 12px));overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--surface-border,var(--line)) transparent;outline:none;overflow-y:auto}.themed-select-option{cursor:pointer;-webkit-user-select:none;user-select:none;overflow-wrap:anywhere;border-radius:7px;outline:none;justify-content:space-between;align-items:center;gap:18px;min-height:44px;padding:10px 12px;font-size:14px;font-weight:400;line-height:1.4;transition:background-color .15s,color .15s;display:flex}.themed-select-option[data-selected]{background:var(--surface-selected,var(--selected));font-weight:600}.themed-select-option[data-highlighted]{background:var(--surface-soft,var(--soft));box-shadow:inset 0 0 0 1px var(--teal)}.themed-select-option[data-disabled]{opacity:.45;cursor:not-allowed}.themed-select-check{color:var(--teal);flex-shrink:0;margin-left:auto;display:flex}.themed-select-empty{max-width:300px;color:var(--surface-muted,var(--muted));padding:12px;font-size:13px}.clock-fields .themed-select{background:var(--surface-white,var(--white));border:1px solid var(--surface-border,var(--line));gap:4px;min-height:44px;padding:8px}@media (prefers-reduced-motion:reduce){.themed-select,.themed-select-arrow,.themed-select-popup,.themed-select-option{transition:none}}
.service-unavailable-shell{--service-background:#f7f9fc;--service-heading:#172333;--service-copy:#566378;--service-notice:#fdf0e8;--service-notice-icon:#dc642c;background:var(--service-background)}.service-unavailable-main{min-height:calc(100svh - var(--app-header-height));place-items:center;padding:40px 24px 64px;display:grid}.service-unavailable{text-align:center;width:min(100%,880px);color:var(--service-heading,var(--navy));margin:auto}.service-unavailable-art{width:min(100%,720px);height:auto;margin:0 auto 22px;display:block}.service-unavailable h1{letter-spacing:-1.2px;text-wrap:balance;margin:0;font-family:Inter,sans-serif;font-size:clamp(28px,3vw,40px);font-weight:700;line-height:1.25}.service-unavailable-description{max-width:740px;color:var(--service-copy,var(--muted));text-wrap:pretty;margin:16px auto 0;font-size:19px;line-height:1.6}.service-unavailable-guidance{text-align:left;background:var(--service-notice,var(--warm));border-radius:16px;align-items:flex-start;gap:18px;max-width:730px;margin:30px auto 0;padding:24px;display:flex}.service-unavailable-guidance>svg{color:var(--service-notice-icon,var(--accent-text));flex:0 0 30px;margin-top:2px}.service-unavailable-guidance h2{letter-spacing:-.2px;margin:0 0 5px;font:600 18px/1.4 Inter,sans-serif}.service-unavailable-guidance p{color:var(--service-copy,var(--muted));margin:0;font-size:15px;line-height:1.6}.service-unavailable-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:16px;margin-top:34px;display:flex}.service-unavailable-actions .button{border-radius:12px;gap:12px;min-width:182px;min-height:56px;padding:14px 24px;font-size:16px;font-weight:600}.service-unavailable-actions .service-unavailable-retry{color:#fff;background:#c94f1c;border:1px solid #c94f1c}.service-unavailable-actions .service-unavailable-retry:hover:not(:disabled){background:#af4013;border-color:#af4013}.service-unavailable-actions .service-unavailable-back{background:var(--surface-white);color:var(--service-copy,var(--muted));border:1px solid var(--surface-border)}.service-unavailable-actions .button:focus-visible{outline:3px solid var(--surface-text);outline-offset:4px}.service-unavailable-status{min-height:24px;color:var(--service-copy,var(--muted));margin:14px 0 0;font-size:14px}.service-retry-spinner{animation:1s linear infinite service-retry-spin}@keyframes service-retry-spin{to{transform:rotate(360deg)}}:root[data-theme=dark] .service-unavailable-shell{--service-background:#10212c;--service-heading:#edf5fa;--service-copy:#b6c6d4;--service-notice:#352a27;--service-notice-icon:#ffa271}@media (max-width:760px){.service-unavailable-main{min-height:calc(100svh - var(--app-header-height) - 72px);padding:32px 24px 96px}.service-unavailable-art{width:min(100%,580px);margin-bottom:20px}.service-unavailable-description{font-size:17px}.service-unavailable-guidance{gap:14px;margin-top:26px;padding:20px}}@media (max-width:480px){.service-unavailable-main{padding:28px 20px 92px}.service-unavailable h1{letter-spacing:-.7px;font-size:28px}.service-unavailable-art{width:calc(100% + 24px);max-width:none;margin-left:-12px}.service-unavailable-description{font-size:16px;line-height:1.6}.service-unavailable-guidance{gap:12px;padding:18px 16px}.service-unavailable-guidance h2{font-size:16px}.service-unavailable-guidance p{font-size:14px}.service-unavailable-guidance>svg{flex-basis:25px;width:25px}.service-unavailable-actions{flex-direction:column;gap:12px;margin-top:26px}.service-unavailable-actions .button{width:100%}}@media (prefers-reduced-motion:reduce){.service-retry-spinner{animation:none}}
.generation-card{border:1px solid var(--line);background:var(--white);color:var(--navy);border-radius:12px;margin:22px 0 24px;padding:22px 24px;box-shadow:0 3px 14px #19304406}.generation-card-main{grid-template-columns:180px minmax(0,1fr);align-items:center;gap:24px;display:grid}.generation-art{width:100%;height:auto}.generation-copy{min-width:0}.generation-actions{flex-wrap:wrap;align-items:center;gap:10px 14px;margin-top:16px;display:flex}.generation-actions>span{color:var(--muted);font-size:12px;line-height:1.5}.generation-copy h2{letter-spacing:-.5px;margin:0 0 8px;font-family:inherit;font-size:22px;font-weight:650;line-height:1.3}.generation-copy p{color:var(--muted);overflow-wrap:anywhere;min-height:44px;margin:0;font-size:14px;line-height:1.55}.generation-meter{align-items:center;gap:14px;margin:16px 0 6px;display:flex}.generation-track{background:var(--soft);border-radius:20px;flex:1;height:9px;overflow:hidden}.generation-track>span{border-radius:inherit;background:linear-gradient(90deg,#f68042,#ffa780);height:100%;transition:width .35s;display:block}.generation-percent{text-align:right;min-width:4ch;color:var(--navy);font-variant-numeric:tabular-nums;font-size:13px}.generation-measurement{color:var(--muted);font-variant-numeric:tabular-nums;gap:3px;margin-bottom:16px;font-size:12px;line-height:1.5;display:grid}.generation-measurement small{font-size:11px}.generation-dev-timing{color:var(--muted);font-variant-numeric:tabular-nums;flex-wrap:wrap;align-items:center;gap:6px 12px;margin:12px 0 18px;font-size:12px;line-height:1.6;display:flex}.generation-dev-timing strong{color:var(--navy);font-weight:600}.generation-dev-timing small{flex-basis:100%;font-size:11px}.generation-dev-label{border:1px solid var(--line);background:var(--soft);border-radius:5px;padding:1px 7px;font-size:10px}.generation-phases{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;min-height:50px;margin:0;padding:0;list-style:none;display:grid}.generation-phases li{color:var(--muted);overflow-wrap:anywhere;align-items:flex-start;gap:8px;font-size:11px;line-height:1.5;display:flex}.generation-phases li[data-current=true]{color:var(--navy);font-weight:600}.generation-phases svg{color:#d9632b;flex:none;margin-top:1px}.generation-spinner{animation:1.8s linear infinite generation-spin}@keyframes generation-spin{to{transform:rotate(360deg)}}.generation-helper{border-top:1px solid var(--line);color:var(--muted);align-items:flex-start;gap:7px;margin:16px 0 0;padding-top:14px;font-size:12px;line-height:1.5;display:flex}.generation-helper svg{flex:none;margin-top:1px}.generation-skeleton{margin:12px 0 28px}.generation-skeleton-row{border-bottom:1px solid var(--line);align-items:center;gap:20px;padding:12px 0;display:flex}.generation-skeleton-image{width:94px;height:60px;color:color-mix(in srgb, var(--muted) 45%, var(--white));background:var(--soft);border-radius:10px;flex:none;place-items:center;display:grid}.generation-skeleton-copy{flex:1;gap:9px;min-width:0;display:grid}.generation-skeleton-copy span,.generation-skeleton-meta span{background:var(--line);opacity:.85;border-radius:20px;height:16px;display:block}.generation-skeleton-copy span:first-child{width:40%;min-width:80px}.generation-skeleton-copy span:last-child{width:80%}.generation-skeleton-meta{gap:10px;display:flex}.generation-skeleton-meta span{width:46px}.map-generation-status{z-index:2;border:1px solid var(--line);background:var(--white);color:var(--muted);border-radius:12px;align-items:center;gap:10px;padding:16px 18px;font-size:13px;line-height:1.5;display:flex;position:absolute;bottom:24px;left:24px;right:24px;box-shadow:0 3px 14px #19304406}.map-generation-dot{background:#f68042;border-radius:50%;flex:none;width:8px;height:8px}.is-generating .timeline-panel{padding-top:0}@media (min-width:901px) and (max-width:1300px){.generation-card{padding:20px}.generation-card-main{grid-template-columns:110px minmax(0,1fr);gap:16px}.generation-copy h2{font-size:20px}.generation-phases{grid-template-columns:1fr;gap:8px;min-height:110px}}@media (max-width:600px){.generation-card{margin-top:16px;padding:18px}.generation-card-main{grid-template-columns:1fr;gap:14px}.generation-art{justify-self:center;width:124px}.generation-copy h2{font-size:21px}.generation-phases{grid-template-columns:1fr;gap:10px;min-height:110px}.generation-phases li{font-size:12px}.generation-helper{margin-top:16px}.generation-skeleton-row{gap:14px}.generation-skeleton-image{width:64px;height:54px}.generation-skeleton-meta{display:none}.map-generation-status{bottom:16px;left:12px;right:12px}}@media (prefers-reduced-motion:reduce){.generation-spinner{animation:none}.generation-track>span{transition:none}}
.planning-workspace .itinerary-map-panel{background:var(--soft);flex-direction:column;gap:16px;padding:20px;display:flex;overflow:visible}.itinerary-map-panel .map-toolbar{z-index:5;box-shadow:none;background:0 0;border:0;border-radius:0;flex-wrap:wrap;flex:none;gap:10px;padding:0;display:flex;position:relative;inset:auto}.itinerary-map-panel .map-toolbar .themed-select,.itinerary-map-panel .map-toolbar>.icon-button{background:var(--white);border:1px solid var(--line);border-radius:12px;min-height:46px;box-shadow:0 3px 14px #1930440c}.itinerary-map-panel .map-toolbar .themed-select{max-width:220px;padding:10px 32px 10px 14px;font-size:12px}.itinerary-map-panel .map-toolbar>.icon-button{width:46px;height:46px}.itinerary-map-panel .map-toolbar [aria-label=Travel\ mode]{min-width:174px}.map-card{border:1px solid var(--line);background:var(--line);isolation:isolate;border-radius:12px;flex:1;min-height:0;position:relative;overflow:hidden}.planning-workspace .map-card .itinerary-google-map{border-radius:inherit}.map-empty-overlay{z-index:2;border:1px solid var(--line);background:var(--white);text-align:center;border-radius:14px;justify-items:center;gap:14px;width:min(272px,100% - 40px);padding:24px 22px;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 8px 30px #19304410}.map-empty-overlay p{color:var(--navy);margin:0;font-size:14px;line-height:1.55}.map-empty-overlay .button{color:#fff;min-height:40px;padding:10px 18px;font-size:13px}.map-card .map-recenter{z-index:2;background:var(--white);border:1px solid var(--line);width:38px;height:38px;position:absolute;top:14px;right:14px;box-shadow:0 2px 10px #19304412}.map-card .map-index{width:auto;max-width:calc(100% - 80px);bottom:32px;left:14px}.map-card .map-index[open]{width:280px}.map-card .map-place-drawer{top:12px;bottom:32px;right:12px}.map-footer-status{background:var(--white);border:1px solid var(--line);color:var(--muted);border-radius:12px;flex:none;align-items:center;gap:10px;padding:14px 16px;font-size:12px;line-height:1.5;display:flex}@media (max-width:1100px){.planning-workspace .itinerary-map-panel{gap:12px;padding:12px}.itinerary-map-panel .map-toolbar{gap:8px}.itinerary-map-panel .map-toolbar .themed-select{max-width:180px}}@media (max-width:600px){.itinerary-map-panel .map-toolbar .themed-select{max-width:155px;min-height:42px;padding-left:10px;padding-right:26px}.itinerary-map-panel .map-toolbar>.icon-button{width:42px;height:42px;min-height:42px}.map-card .map-place-drawer{max-height:65%;top:auto;bottom:26px}.map-empty-overlay{padding:20px}}
