/* Visitor hub: scoped visual layer, loaded after the older traveler styles. */
.tv-page.tv-visitor{--tv-ink:#06234c;--tv-muted:#4d6685;--tv-blue:#0068f5;--tv-line:#d9e9fb;--tv-wash:#f3f8ff;font:17px/1.5 Arial,Helvetica,sans-serif;color:var(--tv-ink);background:#fff}
.tv-visitor *{box-sizing:border-box;min-width:0}
.tv-visitor :is(p,li,dd,small,summary,a,button,label){overflow-wrap:break-word}
.tv-visitor .tv-wrap{width:min(1480px,calc(100% - 48px));margin-inline:auto}
.travelers-page .tv-page.tv-visitor :is(h1,h2,h3,h4,h5){font-family:Arial,Helvetica,sans-serif!important;line-height:1.15;letter-spacing:-.035em;color:var(--tv-ink)}
.travelers-page .tv-page.tv-visitor h2{font-size:26px!important;margin:0 0 6px!important}
.travelers-page .tv-page.tv-visitor h3{font-size:20px!important;margin:0 0 6px!important}
.travelers-page .tv-page.tv-visitor h4{font-size:19px!important}
.travelers-page .tv-page.tv-visitor h5{font-size:17px!important}
.tv-visitor :is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #dc9200;outline-offset:4px}
.tv-visitor a{color:#005bcc;text-decoration:none}
.tv-visitor a:hover{text-decoration:underline;text-underline-offset:3px}
.tv-visitor svg{width:24px;height:24px;flex:none}
.tv-visitor .tv-button,.tv-visitor .tv-tool{min-height:44px;border-radius:5px;font-size:16px;line-height:1.25;padding:11px 16px;gap:9px}
.tv-visitor .tv-button{background:#0068f5;border-color:#0068f5}
.tv-visitor .tv-outline,.tv-visitor .tb-secondary{background:#fff;color:#005bcc;border-color:#b6d3f5}
.tv-visitor .tv-outline:hover,.tv-visitor .tb-secondary:hover{background:#eaf3ff;color:#00499f}
.tv-visitor .tv-hero{isolation:isolate;position:relative;padding:0;border:0;background:#08284b;overflow:hidden;color:#fff;min-height:310px}
.tv-visitor .tv-hero:after{display:block;position:absolute;inset:0;background:linear-gradient(90deg,#061e43d9 0%,#061e437d 44%,#061e4310 70%);z-index:-1;content:""}
.tv-visitor .tv-visitor-hero-city{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 60%;z-index:-2}
.tv-visitor .tv-hero-grid{display:block;position:relative;padding-block:28px 24px}
.tv-visitor .tv-hero-copy{position:relative;width:70%;padding:26px 0 24px;z-index:1}
.tv-visitor .tv-breadcrumb{margin-bottom:13px!important;font-size:14px;gap:8px;color:#e9f3ff}
.tv-visitor .tv-breadcrumb a{color:#fff}
.tv-visitor .tv-eyebrow{font-size:13px;letter-spacing:.12em;line-height:1.4;margin-bottom:7px!important;color:#e9f3ff}
.travelers-page .tv-page.tv-visitor .tv-hero #page-hero-title{font-size:clamp(35px,3.5vw,54px)!important;line-height:1.05;letter-spacing:-.045em;max-width:970px;margin:0 0 12px!important;color:#fff}
.tv-visitor .tv-deck{font-size:19px;line-height:1.45;max-width:760px;color:#fff}
.tv-visitor .tv-actions{margin:18px 0 19px;gap:10px}
.tv-visitor .tv-visitor-badges{display:flex;flex-wrap:wrap;gap:10px 18px;color:#fff;font-size:14px;font-weight:700}
.tv-visitor .tv-visitor-badges span,.tv-visitor .tv-visitor-badges a{display:inline-flex;align-items:center;gap:7px;color:#fff}
.tv-visitor .tv-visitor-badges svg{width:22px;height:22px}
.tv-visitor .tv-visitor-collage{position:absolute;right:0;top:0;width:30%;height:100%;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:3px;background:#fff;z-index:0;clip-path:polygon(10% 0,100% 0,100% 100%,0 100%)}
.tv-visitor .tv-visitor-collage img{width:100%;height:100%;object-fit:cover;display:block;min-height:0}
.tv-visitor .tv-visitor-collage img:nth-child(3){object-position:82% center}
.tv-visitor .tv-visitor-collage figcaption{position:absolute;bottom:0;right:0;left:0;background:#061e4385;color:#fff;padding:6px 14px;text-align:right;font-size:12px}
.tv-visitor .tv-main{padding-top:15px;padding-bottom:0}
.tv-visitor .tv-nav{grid-template-columns:repeat(3,minmax(0,1fr));padding:9px 0;gap:5px 0;border-bottom:1px solid var(--tv-line)}
.tv-visitor .tv-nav a{font-size:15px;min-height:44px;display:flex;align-items:center;justify-content:space-between;padding:9px 12px;border:0;border-right:1px solid var(--tv-line)}
.tv-visitor .tv-nav a:nth-child(3n){border-right:0}
.tv-visitor .tv-visitor-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,25%);gap:16px;align-items:start}
.tv-visitor .tv-visitor-content{min-width:0}
.tv-visitor .tv-visitor-aside{display:grid;gap:12px;min-width:0}
.tv-visitor .tv-section{margin:0 0 16px;scroll-margin-top:105px}
.tv-visitor .tv-heading{gap:12px;margin:0 0 13px;align-items:flex-start;flex-wrap:wrap}
.tv-visitor .tv-heading h2{margin-bottom:5px!important}
.tv-visitor .tv-heading>div>p:last-child{font-size:16px;line-height:1.45;color:var(--tv-muted)}
.tv-visitor .tv-heading>a{font-size:15px;line-height:1.4;min-height:44px;display:flex;align-items:center}
.tv-visitor .tv-note{font-size:14px!important;line-height:1.5;margin-top:11px!important;color:var(--tv-muted)}
.tv-visitor .tv-visitor-staygrid{display:grid;grid-template-columns:minmax(0,2.3fr) minmax(0,1fr);gap:12px;align-items:start;margin-bottom:16px}
.tv-visitor .tv-planner{padding:16px;border-radius:6px;background:linear-gradient(135deg,#eff6ff,#f8fbff);border:1px solid var(--tv-line);margin-bottom:0}
.tv-visitor .tb-planner>.tv-heading .tv-eyebrow{display:none}
.tv-visitor .tb-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.tv-visitor .tb-form label,.tv-visitor .tv-plan-form label{font-size:15px;gap:5px}
.tv-visitor .tb-form :is(input,select),.tv-visitor .tv-plan-form select{width:100%;min-width:0;min-height:44px;padding:9px 10px;border:1px solid #bad5f6;border-radius:4px;background:#fff;color:var(--tv-ink);font:16px Arial,sans-serif;appearance:auto}
.tv-visitor .tb-form small{font-size:13px;line-height:1.4}
.tv-visitor .tb-form-actions{gap:9px;align-items:center}
.tv-visitor .tb-form-actions .tv-button{margin:0}
.tv-visitor .tb-result{margin-top:14px}
.tv-visitor .tb-summary,.tv-visitor .tb-warning{font-size:15px;line-height:1.5}
.tv-visitor .tb-cards{grid-template-columns:1fr;gap:10px}
.tv-visitor .tb-card{padding:13px}
.tv-visitor .tb-card p,.tv-visitor .tb-route p,.tv-visitor .tv-plan-steps p{font-size:15px;line-height:1.5}
.tv-visitor .tb-route{padding:13px;margin:12px 0}
.tv-visitor .tb-sources{font-size:14px;line-height:1.5}
.tv-visitor .tb-sources summary{min-height:44px;display:flex;align-items:center}
.tv-visitor .tv-visitor-example{padding:14px;border:1px solid var(--tv-line);background:#f5faff;border-radius:6px}
.tv-visitor .tv-visitor-example img{display:block;width:100%;aspect-ratio:2.2;object-fit:cover;border-radius:3px;margin:9px 0}
.tv-visitor .tv-visitor-example :is(p,li){font-size:15px;line-height:1.45}
.tv-visitor .tv-visitor-example ul{margin:9px 0;padding-left:19px}
.tv-visitor .tv-visitor-alert{padding:9px 11px;margin-top:12px;background:#fff0f2;border:1px solid #ffd5dd;border-radius:4px;color:#a20c32;font-size:14px;line-height:1.45}
.tv-visitor .tv-visitor-tripcards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.tv-visitor .tv-visitor-tripcards>article{display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--tv-line);border-radius:5px;background:#fff}
.tv-visitor .tv-visitor-tripcards>article img{width:100%;aspect-ratio:2.1;object-fit:cover;display:block}
.tv-visitor .tv-visitor-tripcards>article>div{padding:11px;display:flex;flex-direction:column;flex:1}
.tv-visitor .tv-visitor-tripcards>article :is(p,small){font-size:15px;line-height:1.4;color:var(--tv-muted)}
.tv-visitor .tv-visitor-tripcards>article strong{font-size:14px;line-height:1.4;color:var(--tv-muted);margin:7px 0 3px}
.tv-visitor .tv-visitor-tripcards>article a{display:flex;align-items:center;gap:5px;min-height:44px;font-size:15px;font-weight:700}
.tv-visitor button[data-visitor-trip-kind]{margin-top:8px}
.tv-visitor button:not(.tv-button):not(.tv-tool):not([data-visitor-duration]):not([data-visitor-interest]):not(.tv-base-choice){min-height:44px;min-width:0;padding:10px 13px;border:1px solid #b6d3f5;border-radius:4px;background:#fff;color:#005bcc;cursor:pointer;font:700 15px/1.3 Arial,sans-serif;text-align:left}
.tv-visitor button:disabled{opacity:.62;cursor:default}
.tv-visitor button:not(.tv-button):not(.tv-tool):hover:enabled{background:#eaf3ff}
.tv-visitor .tv-visitor-tabs{display:flex;flex-wrap:wrap;gap:7px;margin:11px 0}
.tv-visitor .tv-visitor-tabs button{min-height:44px;padding:10px 14px;border:1px solid #c4ddf9;border-radius:4px;background:#f5f9ff;color:#005bcc;cursor:pointer;font:700 15px Arial,sans-serif}
.tv-visitor .tv-visitor-tabs button[aria-pressed=true],.tv-visitor .tv-visitor-tabs button[aria-selected=true]{background:#0068f5;color:#fff;border-color:#0068f5}
.tv-visitor #visitor-plan{padding:15px}
.tv-visitor .tv-plan-form{padding:12px;gap:10px;background:#fff;border-radius:5px}
.tv-visitor .tv-plan-form .tv-button{justify-self:stretch;margin:0}
.tv-visitor .tv-plan-result{margin-top:17px}
.travelers-page .tv-page.tv-visitor .trp-result-title{font-size:21px!important}
.tv-visitor .trp-result-intro{font-size:15px;line-height:1.5;margin-top:8px!important}
.tv-visitor .trp-days{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:13px}
.tv-visitor .trp-day{border-radius:5px}
.tv-visitor .trp-day-head{padding:13px 14px 9px;gap:10px;background:#eef6ff}
.tv-visitor .trp-day-number{font-size:25px;color:#0065df}
.tv-visitor .trp-day-head p{font-size:13px;letter-spacing:0;text-transform:none}
.travelers-page .tv-page.tv-visitor .trp-day-head h4{font-size:19px!important}
.tv-visitor .trp-day-intro{padding:12px 14px;font-size:15px;line-height:1.45}
.tv-visitor .trp-stops{padding:0 14px 12px}
.tv-visitor .trp-stop{grid-template-columns:1fr;gap:5px;padding:13px 0}
.tv-visitor .trp-period{font-size:13px;letter-spacing:.02em;color:#0063cd;text-transform:none;padding:0}
.tv-visitor .trp-stop h5{margin-bottom:6px!important}
.tv-visitor .trp-stop p{font-size:15px;line-height:1.5}
.tv-visitor .trp-stop .trp-chinese{font-size:14px;margin-bottom:5px!important}
.tv-visitor .trp-stop-details{margin-top:4px}
.tv-visitor .trp-stop-details>summary{min-height:44px;display:list-item;cursor:pointer;font-size:14px;font-weight:700;color:#005bcc;line-height:1.4;padding:10px 0}
.tv-visitor .trp-stop-details[open]>summary{padding-bottom:7px}
.tv-visitor .trp-stop-details p{margin-top:5px}
.tv-visitor .trp-backup>summary,.tv-visitor .trp-backup details>summary{min-height:44px;display:list-item;cursor:pointer;font-size:14px;line-height:1.45;font-weight:700;color:#25557f;padding:8px 0}
.tv-visitor .trp-backup[open]>summary,.tv-visitor .trp-backup details[open]>summary{margin-bottom:5px}
.tv-visitor .trp-stop-links{gap:6px 12px;font-size:14px;margin-top:6px}
.tv-visitor .trp-stop-links a{min-height:36px;display:inline-flex;align-items:center}
.tv-visitor .trp-backup{padding:12px 14px;background:#f0f7ff}
.tv-visitor .trp-backup :is(strong,p,a){font-size:14px;line-height:1.5}
.tv-visitor .trp-backup a{min-height:36px;display:inline-flex;align-items:center}
.tv-visitor .tv-plan-tools{margin-top:13px;gap:8px}
.tv-visitor .tv-trip-status{font-size:14px}
.tv-visitor .trp-copy-fallback{padding:13px;margin-top:12px;border-radius:5px}
.tv-visitor .trp-copy-fallback label{font-size:15px}
.tv-visitor .trp-copy-fallback button{min-height:44px;font-size:15px}
.tv-visitor textarea{font-size:15px;line-height:1.5}
.tv-visitor .tv-area-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.tv-visitor .tv-area{padding:0;border-radius:5px;overflow:hidden}
.tv-visitor .tv-area>h3{padding:12px 12px 0}
.tv-visitor .tv-area>p.tv-kicker{padding:0 12px;min-height:45px}
.tv-visitor .tv-area>img{width:100%;display:block;aspect-ratio:1.9;object-fit:cover;height:auto}
.tv-visitor .tv-area>div{padding:12px;display:flex;flex-direction:column;flex:1}
.tv-visitor .tv-area header{font-size:13px;margin:0 0 7px}
.travelers-page .tv-page.tv-visitor .tv-area h3{font-size:20px!important;margin-bottom:5px!important}
.tv-visitor .tv-area .tv-kicker{font-size:14px;margin-bottom:8px}
.tv-visitor .tv-area p,.tv-visitor .tv-area .tv-area-consider{font-size:15px;line-height:1.45;padding-top:0;margin-top:6px!important}
.tv-visitor .tv-area dl{display:grid;grid-template-columns:1fr;gap:3px;margin:8px 0 0}
.tv-visitor .tv-area dt{font-size:14px;font-weight:700}
.tv-visitor .tv-area dd{font-size:15px;line-height:1.45;margin:0 0 7px}
.tv-visitor .tv-area .tv-button{font-size:14px;padding:9px 12px}
.tv-visitor .tv-card-links{gap:7px 11px;font-size:15px;margin-top:11px}
.tv-visitor .tv-card-links a{min-height:40px;display:inline-flex;align-items:center}
.tv-visitor .tv-base-choice{min-height:44px;font-size:15px;padding:10px 0;margin-top:8px}
.tv-visitor .tv-visitor-pair{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:12px;align-items:start}
.tv-visitor .tv-visitor-hotels,.tv-visitor .tv-visitor-essentials{padding:14px;border:1px solid var(--tv-line);border-radius:5px;background:#f5faff}
.tv-visitor .tv-visitor-hotels form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.tv-visitor [data-visitor-hotel-form]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.tv-visitor [data-visitor-hotel-form] label{font-size:14px;display:grid;gap:4px}
.tv-visitor [data-visitor-hotel-form] :is(input,select){min-height:44px;width:100%;padding:9px;border:1px solid #bad5f6;border-radius:4px;font:16px Arial,sans-serif;color:var(--tv-ink);background:#fff;appearance:auto}
.tv-visitor [data-visitor-hotel-form] :is(.tv-button,.tv-note,[role=status]){grid-column:1/-1}
.tv-visitor .tv-visitor-hotels label{font-size:14px;display:grid;gap:4px}
.tv-visitor .tv-visitor-hotels :is(input,select){min-height:44px;width:100%;padding:9px;border:1px solid #bad5f6;border-radius:4px;font:16px Arial,sans-serif;color:var(--tv-ink);background:#fff;appearance:auto}
.tv-visitor .tv-visitor-hotels .tv-button{grid-column:1/-1;justify-self:stretch}
.tv-visitor .tv-visitor-platforms{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}
.tv-visitor .tv-visitor-platforms a{padding:7px 10px;background:#fff;border:1px solid var(--tv-line);border-radius:4px;font-size:14px;min-height:40px;display:inline-flex;align-items:center}
.tv-visitor .tv-essentials{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.tv-visitor .tv-essential{border:1px solid var(--tv-line);border-radius:4px;background:#fff;padding:12px;gap:9px}
.tv-visitor .tv-visitor-number{width:25px;height:25px;border-radius:50%;display:grid;place-items:center;flex:none;background:#009486;color:#fff;font-size:15px;font-weight:700}
.tv-visitor .tv-essential h3{display:flex;align-items:flex-start;gap:6px}
.tv-visitor .tv-essential h3 svg{width:19px;height:19px;margin-top:3px}
.tv-visitor .tv-essential h3 a{min-height:0;display:inline;line-height:1.4}
.travelers-page .tv-page.tv-visitor .tv-essential h3{font-size:17px!important;margin-bottom:5px!important}
.tv-visitor .tv-essential p{font-size:14px;line-height:1.45;margin-bottom:7px}
.tv-visitor .tv-essential a{font-size:14px;min-height:36px;display:inline-flex;align-items:center}
.tv-visitor .tv-fact-source{font-size:13px;line-height:1.5}
.tv-visitor .tv-fact-source summary{min-height:36px}
.tv-visitor .tv-visitor-bottom-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:14px;margin-top:16px;align-items:start}
.tv-visitor .tv-visitor-panel{padding:14px;border:1px solid var(--tv-line);border-radius:5px;background:#fff}
.tv-visitor .tv-visitor-panel :is(p,li,dd,dt){font-size:15px;line-height:1.45}
.tv-visitor .tv-visitor-panel h3,.tv-visitor .tv-visitor-panel h2{display:flex;align-items:center;gap:8px}
.tv-visitor .tv-visitor-panel>svg,.tv-visitor .tv-visitor-panel h3 svg{color:#0068f5}
.tv-visitor .tv-visitor-panel .tv-button,.tv-visitor .tv-visitor-panel .tv-tool{width:100%;font-size:15px}
.tv-visitor .tv-visitor-panel dl{margin:10px 0 0;display:grid;grid-template-columns:auto minmax(0,1fr);gap:7px 10px}
.tv-visitor .tv-visitor-panel dd{margin:0}
.tv-visitor .tv-visitor-panel ul{padding-left:20px;margin:10px 0}
.tv-visitor .tv-visitor-panel .tv-source-links{font-size:15px;margin-top:10px;gap:8px}
.tv-visitor .tv-visitor-panel .tv-source-links a{min-height:40px;display:flex;align-items:center}
.tv-visitor .tv-visitor-panel>h2{font-size:21px!important;margin-bottom:12px!important;line-height:1.25}
.tv-visitor .tv-visitor-panel>h2 svg{color:#0068f5;flex:none}
.tv-visitor .tv-visitor-panel>a{font-size:15px;min-height:44px;display:flex;align-items:center}
.tv-visitor .tv-visitor-aside button{width:100%;margin:8px 0}
.tv-visitor .tv-visitor-weather{background:linear-gradient(135deg,#eff8ff,#fff);display:flex;align-items:center;gap:11px;padding:10px;border-radius:4px}
.tv-visitor .tv-visitor-weather>svg{width:43px;height:43px;color:#e68c00}
.tv-visitor .tv-visitor-weather strong{font-size:19px;color:#073260}
.tv-visitor .tv-visitor-weather p{margin-top:6px}
.tv-visitor .tv-visitor-checks{display:grid;gap:9px;margin-top:12px}
.tv-visitor .tv-visitor-checks label{display:flex;align-items:flex-start;gap:9px;min-height:32px;font-size:15px;line-height:1.45;cursor:pointer}
.tv-visitor .tv-visitor-checks input[type=checkbox]{appearance:auto!important;-webkit-appearance:checkbox!important;accent-color:#0068f5;width:19px;min-width:19px;height:19px;min-height:19px;border:1px solid #a2bbd5;padding:0;margin:2px 0 0;background:#fff;flex:none}
.tv-visitor .tv-visitor-toolstack{display:grid;gap:0}
.tv-visitor .tv-visitor-toolstack a{min-height:44px;font-size:15px;display:flex;align-items:center}
.tv-visitor .tv-visitor-source-list{display:grid;gap:7px}
.tv-visitor .tv-visitor-source-list a{display:flex;align-items:center;min-height:44px;font-size:15px;line-height:1.4}
.tv-visitor .tv-visitor-progress{display:flex;align-items:center;gap:12px;margin-top:12px}
.tv-visitor .tv-visitor-progress-ring{width:76px;height:76px;flex:none;display:grid;place-items:center;border:9px solid #e8edf5;border-radius:50%;font-size:20px;font-weight:700;color:#0065d7}
.tv-visitor .tv-visitor-aside .tv-checklist{gap:8px}
.tv-visitor .tv-checklist label{font-size:15px;line-height:1.45;min-height:34px;align-items:center}
.tv-visitor .tv-checklist input[type=checkbox]{width:19px;height:19px;min-height:19px;min-width:19px}
.tv-visitor .tv-checklist a{font-size:14px;min-height:32px;display:flex;align-items:center}
.tv-visitor .tv-visitor-address{padding:9px;background:#f5f9ff;border-radius:4px;margin:10px 0;line-height:1.5;word-break:normal}
.tv-visitor .tv-visitor-address [lang=zh-Hans]{font-weight:700}
.tv-visitor .tv-visitor-map{overflow:hidden;display:block;width:100%;border-radius:4px;background:#e9f5ff}
.tv-visitor .tv-visitor-map svg{width:100%;height:auto;display:block}
.tv-visitor .tv-visitor-map-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:10px}
.tv-visitor .tv-visitor-map-links a{display:flex;flex-wrap:wrap;align-items:center;gap:5px 8px;font-size:15px;min-height:44px;padding:7px 9px;border:1px solid #cde1f8;border-radius:4px;background:#fff}
.tv-visitor .tv-visitor-map-links span{display:grid;place-items:center;flex:none;width:23px;height:23px;border-radius:50%;background:#0068f5;color:#fff;font-size:14px;font-weight:700}
.tv-visitor .tv-visitor-map-links small{font-size:13px;color:var(--tv-muted)}
.tv-visitor .tv-visitor-map figcaption{padding:8px 10px;font-size:14px;color:var(--tv-muted);background:#f4f9ff}
.tv-visitor .tv-visitor-maplinks{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.tv-visitor .tv-visitor-maplinks a{min-height:40px;padding:7px 10px;font-size:14px;border:1px solid var(--tv-line);background:#fff;border-radius:4px;display:flex;align-items:center}
.tv-visitor .tv-visitor-discover{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.tv-visitor .tv-visitor-discover>a{display:flex;flex-direction:column;border:1px solid var(--tv-line);border-radius:4px;overflow:hidden;background:#fff}
.tv-visitor .tv-visitor-discover>a img{width:100%;aspect-ratio:1.85;object-fit:cover;display:block}
.tv-visitor .tv-visitor-discover>a h3{font-size:17px!important;line-height:1.3;padding:10px 9px 0}
.tv-visitor .tv-visitor-discover>a span{font-size:14px;line-height:1.4;padding:5px 9px 10px}
.tv-visitor .tv-discover-card{border-radius:4px}
.tv-visitor .tv-discover-card>img{aspect-ratio:1.8;width:100%;object-fit:cover}
.tv-visitor .tv-discover-card>div{padding:9px}
.travelers-page .tv-page.tv-visitor .tv-discover-card h3{font-size:17px!important}
.tv-visitor .tv-discover-card p{font-size:14px;line-height:1.45}
.tv-visitor .tv-discover-card a{font-size:14px;min-height:40px;display:flex;align-items:center}
.tv-visitor .tv-visitor-today{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.tv-visitor .tv-visitor-today article{border:1px solid var(--tv-line);border-radius:4px;background:#fff;padding:12px}
.tv-visitor .tv-visitor-today article :is(p,a){font-size:14px;line-height:1.45}
.tv-visitor .tv-visitor-today article a{min-height:40px;display:flex;align-items:center}
.tv-visitor .tv-visitor-eventlinks{display:flex;flex-wrap:wrap;gap:7px;margin-top:11px}
.tv-visitor .tv-visitor-eventlinks a{min-height:44px;border:1px solid var(--tv-line);border-radius:4px;padding:9px 11px;font-size:14px;display:flex;align-items:center}
.tv-visitor .tv-visitor-events{display:flex;flex-wrap:wrap;gap:8px}
.tv-visitor .tv-visitor-events a{min-height:44px;border:1px solid var(--tv-line);border-radius:4px;padding:9px 11px;font-size:15px;display:flex;align-items:center;flex:1 1 40%}
.tv-visitor .tv-visitor-weekends{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.tv-visitor .tv-visitor-weekends a{display:flex;flex-direction:column;border:1px solid var(--tv-line);border-radius:4px;overflow:hidden;background:#fff;font-size:15px}
.tv-visitor .tv-visitor-weekends img{width:100%;aspect-ratio:1.8;object-fit:cover}
.tv-visitor .tv-visitor-weekends strong{font-size:15px;padding:9px;line-height:1.45}
.tv-visitor .tv-visitor-addons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.tv-visitor .tv-visitor-addons a{display:block;padding:10px;border:1px solid var(--tv-line);border-radius:4px;min-height:44px;font-size:15px}
.tv-visitor .tv-visitor-addons small{display:block;font-size:14px;color:var(--tv-muted)}
.tv-visitor .tv-visitor-lastgrid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) minmax(0,1fr);gap:12px;margin-top:16px;align-items:start}
.tv-visitor .tv-visitor-budget{padding:14px;border:1px solid var(--tv-line);border-radius:5px;background:#f5faff}
.tv-visitor .tv-visitor-budget-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.tv-visitor .tv-visitor-budget label{font-size:14px;display:grid;gap:5px}
.tv-visitor [data-visitor-budget-form]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.tv-visitor .tv-visitor-budget-result{grid-column:1/-1;padding:12px;background:#e7f3ff;border-radius:4px;display:grid;grid-template-columns:1fr auto;gap:7px}
.tv-visitor .tv-visitor-budget-result strong{font-size:24px;line-height:1.2;color:#005bcc}
.tv-visitor .tv-visitor-budget-result p{font-size:15px;line-height:1.4}
.tv-visitor .tv-visitor-budget input[type=range]{width:100%;min-height:44px;appearance:auto;accent-color:#0068f5;background:transparent;padding:0;border:0}
.tv-visitor .tv-visitor-budget output{font-size:17px;font-weight:700;color:#005bcc}
.tv-visitor .tv-visitor-budget-total{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:12px;padding-top:10px;border-top:1px solid var(--tv-line);font-size:15px}
.tv-visitor .tv-visitor-budget-total strong{font-size:24px;color:#0065df}
.tv-visitor .tv-visitor-lastgrid .tv-check-panel{padding:14px;border-radius:5px}
.tv-visitor .tv-visitor-lastgrid .tv-checklist{gap:7px}
.tv-visitor .tv-visitor-lastgrid .tv-checklist label{font-size:14px}
.tv-visitor #visitor-questions details{border-top:1px solid var(--tv-line);padding:11px 0}
.tv-visitor #visitor-questions summary{min-height:44px;display:list-item;font-size:16px;font-weight:700;cursor:pointer;line-height:1.4;padding:5px 0}
.tv-visitor #visitor-questions p{font-size:15px;line-height:1.5;margin:9px 0}
.tv-visitor #visitor-questions a{font-size:15px;min-height:44px;display:flex;align-items:center}
.tv-visitor .tv-faq-grid{grid-template-columns:1fr 1fr;gap:0 22px}
.tv-visitor .tv-faq-grid details{padding:14px 0}
.tv-visitor .tv-faq-grid summary{min-height:44px;font-size:16px;align-items:center}
.tv-visitor .tv-faq-grid p{font-size:15px;line-height:1.5}
.tv-visitor .tv-faq-grid a{font-size:15px;min-height:40px;display:inline-flex;align-items:center}
.tv-visitor .tv-image-note{margin:13px 0;font-size:14px;line-height:1.5}
.tv-visitor .tv-image-note summary{min-height:44px;display:flex;align-items:center}
.tv-visitor .tv-visitor-cta{margin-top:18px;padding:24px;border-radius:6px;display:flex;justify-content:space-between;align-items:center;gap:20px;background:linear-gradient(110deg,#082856,#0066db);color:#fff}
.travelers-page .tv-page.tv-visitor .tv-visitor-cta h2{color:#fff;font-size:30px!important}
.tv-visitor .tv-visitor-cta p{color:#e6f1ff;font-size:16px}
.tv-visitor .tv-visitor-cta .tv-actions{margin:0}
.tv-visitor .tv-visitor-cta>.tv-wrap{display:flex;align-items:center;justify-content:space-between;gap:20px}
.tv-visitor .tv-visitor-cta .tv-outline{background:#fff;color:#005bcc}
.tv-visitor .tb-result>details{background:#fff;border:1px solid var(--tv-line);border-radius:5px;padding:9px 12px}
.tv-visitor .tb-result>details>summary{min-height:44px;font-size:15px;font-weight:700;cursor:pointer;line-height:1.4}
.tv-visitor .tv-visitor-base-details{margin-top:10px;padding:10px 12px;background:#fff;border:1px solid var(--tv-line);border-radius:5px}
.tv-visitor .tv-visitor-base-details>summary{min-height:44px;font-size:15px;font-weight:700;line-height:1.4;cursor:pointer;display:list-item;padding:9px 0}
.tv-visitor .tv-plan-steps{font-size:15px;line-height:1.45;gap:12px;margin-top:10px}
.tv-visitor .tv-plan-steps strong{font-size:16px}
.tv-visitor .tv-plan-steps a{font-size:15px;min-height:44px;display:inline-flex;align-items:center}
.tv-visitor .tv-visitor-aside p[lang=zh-Hans]{font-size:16px;line-height:1.5;margin:9px 0}
.tv-visitor .tv-visitor-example>.tb-warning{font-size:14px;line-height:1.45;margin:11px 0 0!important;padding:10px;border-left:3px solid #dc2753;background:#fff0f3;color:#941536}
@media(min-width:1700px){.tv-visitor .tv-visitor-tripcards{grid-template-columns:repeat(6,minmax(0,1fr))}.tv-visitor .tv-area-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.tv-visitor .tv-visitor-discover{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(min-width:1250px){.tv-visitor .tv-visitor-discover{grid-template-columns:repeat(9,minmax(0,1fr))}}
@media(max-width:1200px){.tv-visitor .tv-visitor-layout{grid-template-columns:minmax(0,1fr) 250px}.tv-visitor .tv-visitor-staygrid{grid-template-columns:1fr}.tv-visitor .tv-visitor-example{display:grid;grid-template-columns:1fr 1.3fr;gap:10px 15px}.tv-visitor .tv-visitor-example img{grid-column:1;grid-row:2/5;margin:0;aspect-ratio:1.8;align-self:start}.tv-visitor .tv-visitor-example h3{grid-column:1/-1}.tv-visitor .tv-visitor-example .tv-visitor-alert{grid-column:1/-1}.tv-visitor .tv-visitor-pair,.tv-visitor .tv-visitor-bottom-grid{grid-template-columns:1fr}.tv-visitor .tv-visitor-lastgrid{grid-template-columns:1fr 1fr}.tv-visitor .tv-visitor-lastgrid>:first-child{grid-column:1/-1}.tv-visitor .tv-visitor-collage{width:28%}.tv-visitor .tv-hero-copy{width:71%}}
@media(max-width:900px){.tv-visitor .tv-wrap{width:calc(100% - 32px)}.tv-visitor .tv-visitor-layout{grid-template-columns:1fr}.tv-visitor .tv-visitor-aside{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:15px}.tv-visitor .tv-visitor-staygrid{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}.tv-visitor .tv-visitor-example{display:block}.tv-visitor .tv-visitor-example img{margin:9px 0;aspect-ratio:2}.tv-visitor .tv-hero-copy{width:72%}.tv-visitor .tv-visitor-collage{width:25%}.tv-visitor .tv-visitor-badges{gap:8px 12px}.tv-visitor .tv-hero-grid{padding-block:27px}.tv-visitor .tv-deck{font-size:18px}.tv-visitor .tv-visitor-bottom-grid{grid-template-columns:1.2fr 1fr}.tv-visitor .tv-visitor-cta{align-items:flex-start}.tv-visitor .tv-visitor-cta .tv-actions{flex-direction:column}}
@media(max-width:700px){.tv-visitor .tv-wrap{width:calc(100% - 28px)}.tv-visitor .tv-hero-copy{width:100%}.tv-visitor .tv-visitor-collage{display:none}.tv-visitor .tv-hero-grid{padding:24px 0}.travelers-page .tv-page.tv-visitor .tv-hero #page-hero-title{font-size:43px!important;max-width:580px}.tv-visitor .tv-hero{min-height:0}.tv-visitor .tv-visitor-hero-city{object-position:66% center}.tv-visitor .tv-deck{font-size:18px}.tv-visitor .tv-visitor-badges{font-size:13px;gap:9px 13px}.tv-visitor .tv-main{padding-top:13px}.tv-visitor .tv-visitor-staygrid{grid-template-columns:1fr}.tv-visitor .tv-visitor-example{display:block}.tv-visitor .tv-visitor-example img{aspect-ratio:2.3}.tv-visitor .tv-visitor-tripcards,.tv-visitor .tv-area-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tv-visitor .tv-visitor-bottom-grid{grid-template-columns:1fr}.tv-visitor .tv-visitor-pair{grid-template-columns:1fr}.tv-visitor .tv-visitor-layout{gap:13px}.tv-visitor .tv-visitor-aside{grid-template-columns:1fr 1fr}.tv-visitor .trp-days{grid-template-columns:1fr}.tv-visitor .trp-stops{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.tv-visitor .tv-visitor-lastgrid{grid-template-columns:1fr 1fr}.tv-visitor .tv-visitor-discover{grid-template-columns:repeat(3,minmax(0,1fr))}.tv-visitor .tv-visitor-cta{display:block;padding:20px}.tv-visitor .tv-visitor-cta .tv-actions{margin-top:15px;flex-direction:row}.tv-visitor .tv-heading>a{min-height:36px}}
@media(max-width:480px){.tv-visitor .tv-wrap{width:calc(100% - 24px)}.travelers-page .tv-page.tv-visitor .tv-hero #page-hero-title{font-size:38px!important;line-height:1.08}.tv-visitor .tv-actions .tv-button{flex:1 1 100%}.tv-visitor .tv-visitor-badges{font-size:13px;gap:9px 14px}.tv-visitor .tv-visitor-badges svg{width:20px;height:20px}.tv-visitor .tv-planner,.tv-visitor #visitor-plan{padding:14px 12px}.tv-visitor .tb-form,.tv-visitor .tv-plan-form{grid-template-columns:1fr}.tv-visitor .tb-form-actions{display:grid;grid-template-columns:1fr 1fr}.tv-visitor .tb-form-actions .tv-button:first-child{grid-column:1/-1}.tv-visitor .tb-form-actions .tv-button{width:100%}.tv-visitor .tb-form-actions button[type=reset]{grid-column:1/-1}.tv-visitor .tv-plan-form{padding:10px}.tv-visitor .tv-visitor-aside{grid-template-columns:1fr}.tv-visitor .tv-visitor-lastgrid{grid-template-columns:1fr}.tv-visitor .tv-visitor-lastgrid>:first-child{grid-column:auto}.tv-visitor .trp-stops{display:block}.tv-visitor .tv-visitor-discover{grid-template-columns:repeat(2,minmax(0,1fr))}.tv-visitor .tv-visitor-today{grid-template-columns:1fr 1fr}.tv-visitor .tv-essentials{grid-template-columns:1fr}.tv-visitor .tv-faq-grid{grid-template-columns:1fr}.tv-visitor .tv-visitor-tripcard>div,.tv-visitor .tv-area>div{padding:10px}.travelers-page .tv-page.tv-visitor .tv-area h3,.travelers-page .tv-page.tv-visitor .tv-visitor-tripcard h3{font-size:18px!important}.tv-visitor .tv-area p,.tv-visitor .tv-visitor-tripcard p{font-size:14px}.tv-visitor .tv-visitor-tripcard img,.tv-visitor .tv-area>img{aspect-ratio:1.65}.tv-visitor .tv-visitor-cta .tv-actions{display:grid;grid-template-columns:1fr}.tv-visitor .tv-visitor-budget-fields{grid-template-columns:1fr}.tv-visitor .tv-plan-tools{display:grid;grid-template-columns:1fr 1fr}.tv-visitor .tv-plan-tools button{width:100%}.tv-visitor .tv-visitor-tabs button{flex:1 1 auto}.tv-visitor .tv-card-links{gap:5px 8px}.tv-visitor .tv-heading{gap:8px}.tv-visitor .tv-heading>a{font-size:14px}.tv-visitor .tv-visitor-addons{grid-template-columns:1fr}}
@media(max-width:700px){.tv-visitor .tv-visitor-cta>.tv-wrap{display:block;width:100%}.tv-visitor .tv-visitor-cta .tv-actions{margin-top:16px}.tv-visitor .tv-nav{grid-template-columns:1fr 1fr}.tv-visitor .tv-nav a:nth-child(3n){border-right:1px solid var(--tv-line)}.tv-visitor .tv-nav a:nth-child(2n){border-right:0}}
@media(max-width:480px){.tv-visitor .tv-visitor-tripcards>article>div{padding:10px}.travelers-page .tv-page.tv-visitor .tv-visitor-tripcards h3{font-size:18px!important}.tv-visitor .tv-visitor-tripcards>article p{font-size:14px}.tv-visitor .tv-visitor-tripcards>article img{aspect-ratio:1.65}.tv-visitor [data-visitor-budget-form]{grid-template-columns:1fr}.tv-visitor .tv-visitor-budget-result{grid-template-columns:1fr}.tv-visitor .tv-nav a{font-size:14px;padding:8px}.tv-visitor .tv-visitor-map-links{grid-template-columns:1fr}.tv-visitor .tv-visitor-weekends{grid-template-columns:1fr 1fr}}
@media(max-width:350px){.tv-visitor .tv-visitor-tripcards,.tv-visitor .tv-area-grid,.tv-visitor .tv-visitor-discover,.tv-visitor .tv-visitor-today{grid-template-columns:1fr}.travelers-page .tv-page.tv-visitor .tv-hero #page-hero-title{font-size:35px!important}.tv-visitor .tv-plan-tools{grid-template-columns:1fr}.tv-visitor .tv-visitor-hotels form{grid-template-columns:1fr}}
@media(max-width:350px){.tv-visitor [data-visitor-hotel-form]{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.tv-visitor *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media print{.travelers-page .home-nav,.travelers-page .site-footer,.travelers-page .site-compass,.tv-visitor .tv-hero,.tv-visitor .tv-nav,.tv-visitor .tv-visitor-aside,.tv-visitor .tv-visitor-staygrid,.tv-visitor .tv-visitor-tripcards,.tv-visitor .tv-area-grid,.tv-visitor .tv-visitor-pair,.tv-visitor .tv-visitor-bottom-grid,.tv-visitor .tv-visitor-lastgrid,.tv-visitor .tv-visitor-cta,.tv-visitor .tv-image-note,.tv-visitor .tv-faq-grid,.tv-visitor .tv-plan-tools,.tv-visitor .tv-visitor-tabs,.tv-visitor [data-trip-form],.tv-visitor #visitor-plan>.tv-heading,.tv-visitor .tv-trip-status{display:none!important}.tv-visitor .tv-wrap{width:100%;max-width:none}.tv-visitor .tv-main{padding:0}.tv-visitor .tv-visitor-layout{display:block}.tv-visitor #visitor-plan{padding:0;border:0;background:#fff;margin:0}.tv-visitor [data-trip-result]{display:block!important;margin:0}.tv-visitor .trp-days{display:block!important}.tv-visitor .trp-day{break-inside:avoid;margin:12px 0;border-color:#aaa}.tv-visitor .trp-day-head,.tv-visitor .trp-backup{background:#fff}.tv-visitor .trp-stops{display:block}.tv-visitor .tv-section{margin:0 0 10px}.tv-visitor,.tv-visitor .trp-stop p{font-size:12px}.tv-visitor a{color:#000}.tv-visitor .trp-result-title:before{content:'LifeShenzhen · ';font-size:15px}}
@media print{.tv-visitor .tv-visitor-content>*:not(#visitor-plan),.tv-visitor .tv-main>#visitor-discover,.tv-visitor .trp-copy-fallback{display:none!important}}
@media print{.tv-visitor .trp-stop-details>summary,.tv-visitor .trp-backup>summary,.tv-visitor .trp-backup details>summary{display:none!important}}
