/* One visual language over the unchanged Premium layout and behaviour. */
:root{--heigo-font:system-ui,-apple-system,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;--heigo-ink:#2c4356;--heigo-secondary:#657c90;--heigo-muted:#7a8fa1;--heigo-accent:#477c9f;--heigo-fill:#e2edf5;--heigo-line:#9bb1c52b;--heigo-glass:#f6fbffc2;--heigo-canvas:linear-gradient(155deg,#e3eef7 0%,#edf1f5 46%,#e6efee 100%);--heigo-control:linear-gradient(135deg,#f8fcffba,#dce9f2b8);--heigo-panel:linear-gradient(125deg,#f5faff91,#e5eef4a1);--heigo-edge:#ffffffbd}
body[data-view]{--v3-top:#e3eef7;--v3-mid:#edf1f5;--v3-bottom:#e6efee;--v3-accent:var(--heigo-accent);--v2-ink:var(--heigo-ink);--v2-muted:var(--heigo-secondary);--v2-blue:var(--heigo-accent);--v2-line:var(--heigo-line);--ink:var(--heigo-ink);--ink-soft:var(--heigo-secondary);--ink-faint:var(--heigo-muted);--action:var(--heigo-accent);--brand-soft:var(--heigo-fill);--indigo:var(--heigo-accent);--indigo-soft:var(--heigo-fill);--terracotta:var(--heigo-accent);--moss:var(--heigo-secondary);--linen:#edf2f6;--card:#f4f8fb;--paper:#edf2f6;--line:var(--heigo-line);font-family:var(--heigo-font);background:var(--heigo-canvas);background-attachment:fixed;color:var(--heigo-ink)}
body[data-view] .app,body[data-view] #main,body[data-view] .screen{background:transparent}button,input,select,textarea{font-family:var(--heigo-font)}h1,h2,h3,h4{font-family:var(--heigo-font);letter-spacing:0}svg.lucide{stroke-width:1.65}
body[data-view] .app-top{background:linear-gradient(120deg,#f9fcffad,#eef6f880);border-bottom:1px solid var(--heigo-edge);backdrop-filter:blur(24px) saturate(130%);-webkit-backdrop-filter:blur(24px) saturate(130%)}
body[data-view] .bottom-nav{background:linear-gradient(125deg,#ffffffc4,#edf5f8b3);border-color:#ffffffdf;backdrop-filter:blur(26px) saturate(135%);-webkit-backdrop-filter:blur(26px) saturate(135%);box-shadow:0 8px 26px #37567015,inset 0 1px 0 #fff}
body[data-view] .nav-item{color:var(--heigo-secondary)}body[data-view] .nav-item.active{color:var(--heigo-accent);background:linear-gradient(135deg,#dbeaf6e0,#deecebd4);box-shadow:inset 0 1px 0 #ffffff94}body[data-view] .desktop-links button{color:var(--heigo-accent)}
body[data-view] .page-head h1{font-size:29px;font-weight:600;line-height:1.2;color:var(--heigo-ink)}.home-selected .selected-heading h2,.section-heading h2,.document-catalogue h2{font-size:26px;font-weight:600;color:var(--heigo-ink);line-height:1.2}.sec-title h2,.pm-section-head h2,.v2-section-title{color:var(--heigo-ink);font-weight:600}.pw-title,.pw-transport .pw-title,#view-chat .pw-title{font-size:33px!important;font-weight:550!important;line-height:1.15!important;color:var(--heigo-ink)!important}.pw-eyebrow,.pm-overline{color:var(--heigo-muted)}.pw-subtitle,.transport-description,.discover-intro{color:var(--heigo-secondary)}
body[data-view] .home-task-search,body[data-view] .home-selected,body[data-view] .editorial-section,body[data-view] .food-band,body[data-view] .community-band,body[data-view] .discover-panel,body[data-view] .document-catalogue{background:transparent}
.home-search-form,.searchbar,.pw-search,body[data-view] .composer{background:var(--heigo-glass);border-color:var(--heigo-edge);box-shadow:0 5px 22px #46688308,inset 0 1px 0 #fff}.home-search-form input,.searchbar input,.pw-search input{color:var(--heigo-ink)}.home-search-form input::placeholder,.pw-search input::placeholder{color:var(--heigo-muted)}
body[data-view] .v3-weather{background:linear-gradient(115deg,#dcecf6c2,#edf3f5bd 55%,#e2edebbd);border-color:var(--heigo-edge);color:var(--heigo-ink)}.v3-weather>svg{color:var(--heigo-accent)}.v3-weather select,.v3-weather strong{color:var(--heigo-ink)}.v3-weather small{color:var(--heigo-secondary)}
body[data-view] .service-dock button:nth-child(n)>svg{color:var(--heigo-accent);background:var(--heigo-control);border:1px solid var(--heigo-edge);width:23px;height:23px;padding:8px;border-radius:50%;box-shadow:inset 0 1px 0 #fff8;stroke-width:1.65}.service-dock button,.service-dock button:not(.primary):not(.light){color:var(--heigo-ink)}
body[data-view] .discover-tabs,body[data-view] .transport-tabs{background:linear-gradient(120deg,#ffffff80,#dfeaf275);border-color:var(--heigo-edge);box-shadow:inset 0 1px 0 #fff9}.discover-tabs button,.transport-tabs button{font-family:var(--heigo-font);color:var(--heigo-secondary);font-weight:500}.discover-tabs button[aria-selected=true],.transport-tabs button[aria-selected=true]{background:#ffffffbd;color:var(--heigo-accent);box-shadow:0 2px 6px #35546a0c}
/* Older destination cards used opaque white and alternating warm placeholders. */
body[data-view] .rec-card,body[data-view] .hscroll .rec-card,body[data-view] .place-grid .rec-card,body[data-view] .text-card,body[data-view] .selected-places button{background:transparent;border-color:var(--heigo-line);box-shadow:none}
body[data-view] .rc-img,body[data-view] .rc-placeholder,body[data-view] .text-card:nth-child(n) .rc-placeholder,body[data-view] .hscroll .rc-placeholder{background:linear-gradient(125deg,#dce8f0,#e5eeed);color:var(--heigo-secondary)}
.rc-name,.selected-places strong,.city-text-button strong,.region-list strong{color:var(--heigo-ink);font-weight:600}.rc-sub,.selected-places small,.city-text-button small{color:var(--heigo-secondary)}.rc-info,.rc-foot,.card-open,.text-card .card-open{background:transparent}.rc-tag,.tag{background:#f3f8fbd9;color:var(--heigo-secondary);border-color:var(--heigo-edge)}
body[data-view] .chips .chip,body[data-view] .home-search-tags button{color:var(--heigo-secondary);background:#ffffff57;border-color:#ffffff85}body[data-view] .chips .chip.sel,body[data-view] .chips .chip[aria-selected=true]{background:#dceaf4;color:var(--heigo-accent);border-color:#c9dce9}
.pw-tile.ice,.pw-tile.mint,.pw-tile.peach,.pw-tile.lilac{background:linear-gradient(135deg,#edf4fb,#dfeaf3);border-color:var(--heigo-edge);color:var(--heigo-ink);box-shadow:inset 0 1px 0 #ffffffa3,0 3px 12px #36597705}.pw-tile:nth-child(even){background:linear-gradient(135deg,#eef5f8,#e0ecee)}.pw-tile small{color:var(--heigo-secondary)}
.pw-mini,.mint .pw-mini,.peach .pw-mini,.lilac .pw-mini{color:var(--heigo-accent);background:var(--heigo-control);border-color:#ffffffd4;transform:none;box-shadow:0 3px 9px #496b850d}.pw-mini svg{stroke-width:1.65}.pw-coach{background:var(--heigo-panel);color:var(--heigo-ink);border-color:var(--heigo-edge)}.pw-coach small{color:var(--heigo-secondary)}.pw-coach-icon{color:var(--heigo-accent);background:var(--heigo-control)}.pw-search-submit{background:linear-gradient(135deg,#95bfdc,#6fa4c6);color:#fff}
/* Keep the Premium personal-page arrangement and its real counts. */
#view-profile .pm-built{color:var(--heigo-ink)}.pm-user .v2-avatar{color:var(--heigo-accent);background:var(--heigo-control);border-color:#fff;box-shadow:inset 0 1px 0 #fff}.pm-user h1{color:var(--heigo-ink)}.pm-header>.v2-icon{color:var(--heigo-accent);background:var(--heigo-control);border-color:var(--heigo-edge)}
.pm-balance{background:linear-gradient(118deg,#eaf4fc,#d1e4f2 45%,#e1eaf3 73%,#e0ece9);border-color:#ffffffeb;box-shadow:0 10px 28px #3d648113,inset 0 1px 0 #fff;color:var(--heigo-ink)}.pm-balance-head,.pm-wordmark{color:var(--heigo-accent)}.pm-balance-caption,.pm-balance-foot small{color:var(--heigo-secondary)}.pm-amount>strong,.pm-balance-foot strong{color:#365b76}.pm-card-link{background:#ffffff80;border-color:#ffffffcf;color:var(--heigo-accent)}.pm-balance-foot{border-top-color:var(--heigo-line)}
.pm-shortcut{color:var(--heigo-secondary)}.pm-shortcut:nth-child(n) .pm-circle{color:var(--heigo-accent);background:var(--heigo-control);border-color:var(--heigo-edge);box-shadow:inset 0 1px 0 #fff}.pm-circle svg{stroke-width:1.65}.pm-next{color:var(--heigo-ink);background:var(--heigo-panel);border-color:var(--heigo-edge)}.pm-next small,.pm-record-text small,.pm-record-date{color:var(--heigo-secondary)}.pm-text,.pm-action{color:var(--heigo-accent)}.pm-filters button{color:var(--heigo-secondary)}.pm-filters button[aria-pressed=true]{background:#dceaf4;border-color:#cbdce8;color:var(--heigo-accent)}.pm-record{color:var(--heigo-ink);border-bottom-color:var(--heigo-line)}.pm-record-icon,.pm-record-icon.cards,.pm-record-icon.notes{background:#e0eaf2}.pm-record-icon svg,.pm-record>svg,.pm-empty>svg{color:var(--heigo-accent)}.pm-empty p{color:var(--heigo-secondary)}.pm-extras{border-top-color:var(--heigo-line)}
body[data-view] dialog,body[data-view] #v2Flow,body[data-view] #v2Flow[data-material]{--v3-sheet-a:#e8f1f7;--v3-sheet-b:#e5eeed;background:linear-gradient(145deg,#e8f1f7,#f0f4f7 48%,#e5eeed);color:var(--heigo-ink);font-family:var(--heigo-font);border-color:var(--heigo-edge)}
body[data-view] .v2-flow-head,body[data-view] .portal-sheet>header,body[data-view] .journey-dialog>header,body[data-view] .demo-dialog .modal-head{background:#f4f9fcc4;border-bottom-color:var(--heigo-edge);color:var(--heigo-ink);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}
.v2-flow-body,.portal-body,.journey-body,.demo-detail-body{background:transparent;color:var(--heigo-ink)}.v2-flow-body h1,.v2-food-title{color:var(--heigo-ink)!important}.v2-flow-body p,.portal-intro,.portal-fact p,.journey-body p,.demo-detail-body p{color:var(--heigo-secondary)}.v2-facts,.portal-fact,.portal-stop,.journey-note{background:#f6faff59;border-color:var(--heigo-line);color:var(--heigo-secondary)}.v2-facts strong,.portal-fact h3{color:var(--heigo-ink)}.v2-facts small,.v2-note,.portal-source,.v2-row small{color:var(--heigo-secondary)!important}.v2-row,.portal-row,.v2-check,.journey-check{border-color:var(--heigo-line);color:var(--heigo-ink)}.v2-row>svg,.portal-row>svg{color:var(--heigo-accent)}
.v2-icon,.icon-btn:not(.filled),.journey-dialog .icon-btn{color:var(--heigo-accent)}.v2-button,.portal-button,.journey-button{background:var(--heigo-control);border-color:var(--heigo-edge);color:var(--heigo-accent)}.v2-button.primary,.journey-button.primary,.btn.primary,.transport-submit{background:linear-gradient(125deg,#5b8da9,#467795);color:white;border-color:#ffffff62}.v2-chip{background:#ffffff87;border-color:#c8d8e4;color:var(--heigo-secondary)}.v2-chip[aria-pressed=true]{background:#dceaf4;border-color:#85a7bf;color:var(--heigo-accent)}.v2-handoff,.portal-chinese,.journey-dialog .handoff{background:linear-gradient(120deg,#f9fcffc4,#e1edf2af);border-color:#fff;color:var(--heigo-ink)}.v2-handoff strong{color:var(--heigo-ink)}.v2-field input,.v2-field textarea,.v2-field select,.journey-form input,.journey-form textarea,.journey-form select,.demo-form input,.demo-form textarea,.demo-form select{background:#f8fcffb8;border-color:#bed1df;color:var(--heigo-ink)}
body[data-view] #view-chat .composer{background:var(--heigo-glass);border-color:var(--heigo-edge)}.chat-screen .assistant .message-text{background:#f6fbffc9;border-color:#fff;color:var(--heigo-ink)}.chat-screen .user .message-text{background:linear-gradient(130deg,#6094b2,#487e9f);color:white}.chat-screen .message-avatar{color:var(--heigo-accent);background:#f6fbffb3}.chat-screen .prompt{color:var(--heigo-secondary);background:#ffffff7a}.chat-screen .composer #send::before,.chat-screen .composer #stop::before{background:linear-gradient(135deg,#8bb8d4,#5a91b2)}.chat-screen .composer #send:disabled::before{background:#b9cad6}.chat-screen .composer #voiceInput{color:var(--heigo-accent)}
.pw-tile strong{font-size:13px;line-height:1.35;font-weight:550;word-break:normal;overflow-wrap:normal}#pwChat .pw-tile:nth-child(3) strong{font-size:12px}
body[data-view] dialog{backdrop-filter:none;-webkit-backdrop-filter:none}
@media(min-width:900px){.pw-title,.pw-transport .pw-title,#view-chat .pw-title{font-size:38px!important}.pw-tile strong,#pwChat .pw-tile:nth-child(3) strong{font-size:17px}}
@media(max-width:350px){.pw-title,.pw-transport .pw-title,#view-chat .pw-title{font-size:30px!important}.home-selected .selected-heading h2{font-size:24px}.pw-tile strong,#pwChat .pw-tile:nth-child(3) strong{font-size:11px}}
@media(prefers-reduced-transparency:reduce){body[data-view] .app-top,body[data-view] .bottom-nav,.home-search-form,.searchbar,.pw-search,body[data-view] #view-chat .composer,body[data-view] .v2-flow-head{background:#edf3f7;backdrop-filter:none;-webkit-backdrop-filter:none}}
@media(prefers-contrast:more){:root{--heigo-secondary:#425f75;--heigo-muted:#526e82;--heigo-accent:#346484}.pm-balance-caption,.pm-balance-foot small{color:#425f75}.pm-balance{border-color:#9eb8cc}}
