:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#f4f2ed;font-synthesis:none;text-rendering:optimizelegibility;--bg:#050505;--surface:#0a0a0a;--surface-raised:#0f0f0f;--line:#ffffff17;--line-soft:#ffffff0e;--muted:#8b8984;--muted-dark:#575652;--warm:#e8d6b5;--warm-bright:#fff0cf;background:#050505;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,PingFang SC,Microsoft YaHei,sans-serif}*{box-sizing:border-box}html{background:var(--bg)}body{background:radial-gradient(circle at 50% -10%, #fff2d50b, transparent 33%), var(--bg);min-width:320px;min-height:100vh;margin:0}button,input,textarea,select{font:inherit}button{color:inherit}button,label,select{-webkit-tap-highlight-color:transparent}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,[tabindex="0"]:focus-visible{outline-offset:3px;outline:1px solid #ffeeccd9}.app-shell{min-height:100vh;padding-bottom:0}.app-shell.map-active{height:100vh;overflow:hidden}.app-shell.map-active .topbar{position:fixed;top:0;left:0;right:0;transform:none}.app-shell.map-active main{width:100%;max-width:none}.topbar{--page-gutter:clamp(22px, 4vw, 68px);width:min(1440px,100%);height:82px;padding:0 var(--page-gutter);z-index:20;justify-content:space-between;align-items:center;margin:0 auto;display:flex;position:relative}.brand{text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;padding:0;line-height:0;display:flex}.brand-zone{position:relative}.home-info-group{z-index:10;pointer-events:none;flex-direction:column;align-items:flex-start;width:max-content;display:flex;position:fixed;top:102px;left:max(clamp(22px,4vw,68px),50vw - 720px + clamp(22px,4vw,68px))}.home-progress{z-index:12;pointer-events:none;width:max-content;position:fixed;bottom:34px;left:max(clamp(22px,4vw,68px),50vw - 720px + clamp(22px,4vw,68px))}.brand-logo{width:148px;height:auto;display:block}.topbar-right{align-items:center;display:flex}.icon-button,.close-button{border:1px solid var(--line);color:#aaa8a3;cursor:pointer;background:#ffffff06;border-radius:50%;place-items:center;width:38px;height:38px;transition:all .18s;display:grid}.icon-button:hover,.close-button:hover{color:#f8f5ee;background:#ffffff0e;border-color:#ffffff2e}main{width:min(1440px,100%);margin:0 auto}.map-page{height:100vh;min-height:0;padding:0;overflow:visible}.map-workspace{--detail-width:clamp(360px, 32vw, 430px);grid-template-columns:minmax(0,1fr) 0;width:100%;height:100dvh;transition:grid-template-columns .3s cubic-bezier(.22,1,.36,1);display:grid;overflow:hidden}.app-shell.map-active.panel-open .map-workspace{grid-template-columns:minmax(0, 1fr) calc(var(--detail-width) + 18px)}.map-workspace-map,.map-workspace-detail,.map-workspace-map .map-page,.map-workspace-map .map-stage{min-width:0;height:100%;min-height:0}.map-workspace-detail{z-index:100;pointer-events:none;position:relative;overflow:visible}.app-shell.map-active.panel-open .map-workspace-detail{pointer-events:auto}.home-slogan{color:#ffffffeb;letter-spacing:-.045em;text-shadow:0 3px 22px #000000f5,0 0 48px #000000b8;width:max-content;max-width:min(28vw,330px);margin:0;font-family:Songti SC,STSong,serif;font-size:clamp(29px,2.7vw,42px);font-weight:400;line-height:1.32}.home-slogan span{white-space:nowrap;display:block}.eyebrow{color:#787671;letter-spacing:.24em;text-transform:uppercase;margin:0 0 18px;font-size:15px;font-weight:600}h1,h2,p{margin-top:0}.progress-summary{align-items:center;gap:18px;display:flex}.progress-ring{--progress:0deg;background:conic-gradient(var(--warm) var(--progress), #1a1a1a 0deg);border-radius:50%;place-items:center;width:58px;height:58px;display:grid;position:relative}.progress-ring:after{content:"";border-radius:inherit;background:var(--bg);position:absolute;inset:3px}.progress-ring span{z-index:1;color:#c9c3b7;font-size:15px;font-weight:600;position:relative}.progress-summary>div:last-child{grid-template-columns:auto 1fr;align-content:center;align-items:baseline;column-gap:6px;min-height:58px;display:grid}.progress-summary strong{color:var(--warm);font-family:Songti SC,STSong,serif;font-size:24px;font-weight:500}.progress-summary>div:last-child>span{color:var(--warm);font-size:15px}.progress-summary span{color:var(--muted);font-size:15px}.progress-summary small{color:var(--muted-dark);grid-column:1/-1;margin-top:5px;font-size:15px}.next-destination{z-index:12;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);color:#dfdbd2;text-align:left;cursor:pointer;background:#0c0c0ce0;border:1px solid #ffffff1a;border-radius:16px;align-items:center;gap:18px;min-width:210px;padding:13px 15px;transition:right .3s cubic-bezier(.22,1,.36,1),border-color .18s,background .18s;display:flex;position:fixed;bottom:34px;right:max(clamp(22px,4vw,68px),50vw - 720px + clamp(22px,4vw,68px));box-shadow:0 18px 52px #0000008f}.next-destination>span{gap:2px;display:grid}.next-destination small{color:#5f5d59;letter-spacing:.12em;font-size:15px;font-weight:600}.next-destination strong{font-family:Songti SC,STSong,serif;font-size:24px;font-weight:500;line-height:1.25}.next-destination i{color:#706e69;font-size:15px;font-style:normal}.next-destination>svg{color:#8b8881;transition:color .18s,transform .18s}.next-destination:hover>svg{color:#f3eee4;transform:translate(4px)}.next-destination:hover{background:#121212eb;border-color:#ffffff2b}.map-stage{width:100%;min-width:0;height:100vh;min-height:0;margin:0 auto;position:relative}.china-map-wrap{--map-scale:.812;width:100%;height:100%;min-height:inherit;justify-content:center;align-items:center;display:flex;position:relative}.map-ambient{aspect-ratio:1;filter:blur(28px);pointer-events:none;background:linear-gradient(118deg,#0000 42%,#e0c48905 49%,#0000 56%),radial-gradient(circle,#f0e1c509,#0000 66%);border-radius:50%;width:74%;position:absolute}.china-map{filter:drop-shadow(0 22px 65px #000000c7);width:100%;height:100%;max-height:none;transform:scale(var(--map-scale));transform-origin:50%;touch-action:none;overflow:visible}.map-zoom-layer{transform-box:view-box;transform-origin:0 0;will-change:transform;transition:transform .11s cubic-bezier(.22,.72,.28,1)}.china-map.is-dragging .map-zoom-layer{transition:none}.china-map.is-dragging,.china-map.is-dragging *{cursor:grabbing!important}.map-zoom-controls{z-index:14;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#0a0a0adb;border:1px solid #ffffff17;border-radius:14px;gap:2px;padding:4px;display:grid;position:absolute;top:50%;right:clamp(2px,1vw,14px);transform:translateY(-50%);box-shadow:0 14px 38px #00000075}.map-zoom-controls button{color:#8b8984;cursor:pointer;background:0 0;border:0;border-radius:10px;place-items:center;width:34px;min-height:34px;padding:0;transition:all .18s;display:grid}.map-zoom-controls button:hover:not(:disabled){color:#f2eee5;background:#ffffff0e}.map-zoom-controls button:disabled{opacity:.28;cursor:default}.map-zoom-controls .map-zoom-level{color:#b8b4ab;align-content:center;gap:2px;min-height:40px;font-size:15px}.map-zoom-controls .map-route-visibility{border-top:1px solid #ffffff14;border-radius:0 0 10px 10px;margin-top:3px}.map-zoom-controls .map-route-visibility[aria-pressed=true]{color:#d9c18f;background:#d9c18f12}.map-hover-card{z-index:15;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);pointer-events:none;background:#0a0a0af0;border:1px solid #ffffff1c;border-radius:11px;width:max-content;min-width:168px;max-width:min(238px,100% - 24px);padding:11px 13px;position:absolute;transform:none;box-shadow:0 14px 34px #0000007a}.map-hover-card>span{justify-content:space-between;align-items:baseline;gap:16px;display:flex}.map-hover-card strong{font-size:15px;font-weight:550}.map-hover-card i{color:var(--warm);letter-spacing:.08em;font-size:15px;font-style:normal}.map-hover-card small{color:var(--muted);margin-top:6px;font-size:15px;display:block}.province{fill:#111;stroke:#2a2a29;stroke-width:.8px;vector-effect:non-scaling-stroke;cursor:pointer;transition:fill .28s,stroke .28s,filter .28s,opacity .28s}.province:hover{fill:#1b1b1a;stroke:#77736b;filter:brightness(1.2)}.province.status-planned{fill:var(--warm);stroke:#4e4a42;filter:none;animation:4.8s ease-in-out infinite plan-breathe}.province.status-passed,.province.status-stayed{fill:#fffffff2;stroke:#353431;filter:none}.province.status-explored{fill:#fffffff2;stroke:#4a453d;filter:none}.province-summary.status-planned,.province-summary.status-passed,.province-summary.status-stayed,.province-summary.status-explored{fill:#171716;stroke:#494641;filter:none}.province-summary.status-explored{fill:#1b1916;stroke:#625b50}.city-area{fill:#0f0f0f;stroke:#b182316b;stroke-width:.52px;stroke-linejoin:round;vector-effect:non-scaling-stroke;transition:fill .22s,stroke .22s,stroke-width .22s,filter .22s}.city-area.is-interactive{cursor:pointer}.china-map [tabindex="0"]:focus,.china-map [tabindex="0"]:focus-visible{outline:none}.city-area:hover,.city-area:focus-visible{fill:#21180d;stroke:#e0aa43;stroke-width:1.25px;filter:drop-shadow(0 0 2px #fff8eb9e)drop-shadow(0 0 9px #e6c69433);outline:none}.city-area.status-planned{fill:#b59a62;stroke:#6f4d13;filter:none}.city-area.status-planned:hover,.city-area.status-planned:focus-visible{fill:#cbb27a;stroke:#f0c55d;filter:brightness(1.13)saturate(1.12)}.city-area.status-passed{fill:#89601d;stroke:#5f380c;stroke-width:.66px;filter:none}.city-area.status-passed:hover,.city-area.status-passed:focus-visible{fill:#a87825;stroke:#e6a538;filter:brightness(1.18)saturate(1.16)}.city-area.status-stayed{fill:#c88a1f;stroke:#653806;stroke-width:.74px;filter:none}.city-area.status-stayed:hover,.city-area.status-stayed:focus-visible{fill:#dda12f;stroke:#ffd05a;filter:brightness(1.18)saturate(1.18)drop-shadow(0 0 4px #ffcc5385)drop-shadow(0 0 15px #dd841457)}.city-area.status-explored{fill:#e0ad3b;stroke:#704008;stroke-width:.8px;filter:none}.city-area.status-passed,.city-area.status-stayed,.city-area.status-explored{fill-opacity:.58}.city-area.visit-level-2{fill-opacity:.72}.city-area.visit-level-3{fill-opacity:.86}.city-area.visit-level-4{fill-opacity:1}.city-area.status-explored:hover,.city-area.status-explored:focus-visible{fill:#f0c35c;stroke:#ffe176;filter:brightness(1.2)saturate(1.2)drop-shadow(0 0 5px #ffda67a3)drop-shadow(0 0 18px #ed91126b)}.city-area.status-passed:hover,.city-area.status-passed:focus-visible,.city-area.status-stayed:hover,.city-area.status-stayed:focus-visible,.city-area.status-explored:hover,.city-area.status-explored:focus-visible{fill-opacity:1}.city-glow-layer,.map-light-network,.travel-route-snapshot,.map-gold-vein-layer,.city-highlight-boundary-layer{pointer-events:none}.travel-route-snapshot{image-rendering:auto}.china-map-wrap.routes-hidden .travel-route-snapshot{display:none}.travel-route-snapshot-dimmed,.travel-route-snapshot-active,.china-map-wrap.has-route-focus .travel-route-snapshot-normal{opacity:0}.china-map-wrap.has-route-focus .travel-route-snapshot-dimmed,.china-map-wrap.has-route-focus .travel-route-snapshot-active{opacity:1}.city-glow-source{fill:#c77820;stroke:none}.city-glow-layer-planned .city-glow-source{fill:var(--warm)}.map-light-link,.travel-route-separator{fill:none;vector-effect:non-scaling-stroke}.travel-route-separator{stroke:#050505e0;stroke-width:3.4px;stroke-linecap:round}.map-light-link{stroke:var(--route-color,#e9c481);stroke-width:1.18px;opacity:.68}.travel-route.status-planned .map-light-link{stroke-dasharray:4 4;opacity:.6}.travel-route.status-completed .map-light-link{opacity:.78}.travel-route.status-example{opacity:.86}.travel-route.status-example .map-light-link{opacity:.72}.travel-route-stop{fill:#0b0b0b;stroke:var(--route-color,#f0d49a);stroke-width:1.05px;vector-effect:non-scaling-stroke;filter:drop-shadow(0 0 3px #ecc37580)}.city-highlight-boundary{fill:none;stroke:#5a360d;stroke-width:.74px;stroke-linejoin:round;vector-effect:non-scaling-stroke}.city-highlight-boundary.status-planned{stroke:#785716}.gold-vein{fill:none;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.province-gold-vein{stroke:#9f6c1d;stroke-width:3.1px;opacity:.58}.city-gold-vein{stroke:#a36a18;stroke-width:2.35px;opacity:.62}.city-gold-vein.status-planned{stroke:#d8bf77;opacity:.52}.city-gold-vein.status-stayed{stroke-width:2.7px;opacity:.75}.city-gold-vein.status-explored{stroke:#c98a22;stroke-width:3px;opacity:.82}.gold-vein-highlight{stroke:#f0cc75;stroke-width:.72px;opacity:.76}.province-gold-vein-highlight{stroke-width:.82px;opacity:.72}.city-gold-vein-highlight.status-planned{stroke:#f3daa0;opacity:.7}.city-gold-vein-highlight.status-stayed,.city-gold-vein-highlight.status-explored{stroke:#ffe19a;opacity:.88}.hover-particle-burst{pointer-events:none}.hover-burst-particle{fill:#ffe67f;opacity:0;filter:drop-shadow(0 0 2.5px #ffb32beb);animation:.92s cubic-bezier(.18,.7,.25,1) forwards hover-particle-burst}@keyframes hover-particle-burst{0%{opacity:0;transform:translate(0)}14%{opacity:.94}to{opacity:0;transform:translate(var(--burst-x), var(--burst-y))}}.china-map.is-dragging .hover-burst-particle{animation-play-state:paused}.province-outline{fill:none;stroke:#8a682d;stroke-width:1.05px;vector-effect:non-scaling-stroke;pointer-events:stroke}.province-outline.status-stayed,.province-outline.status-explored{stroke:#d1a247}.province-outline.is-direct-municipality{pointer-events:none}.map-loading{color:#5d5b56;letter-spacing:.1em;flex-direction:column;align-items:center;gap:14px;font-size:15px;display:flex}.map-loading span{border:1px solid #272725;border-top-color:#918675;border-radius:50%;width:28px;height:28px;animation:1.2s linear infinite map-loading-spin}@keyframes map-loading-spin{to{transform:rotate(360deg)}}.city-marker{cursor:pointer;transition:opacity .18s}.city-marker .city-glow{fill:#0000;pointer-events:none;transition:fill .24s,filter .24s}.city-marker .city-core{fill:#343432;stroke:#5b5954;stroke-width:.8px;vector-effect:non-scaling-stroke;pointer-events:none;transition:fill .24s,stroke .24s,r .24s}.city-hit-area{fill:#0000;stroke:#0000;cursor:pointer}.city-marker.status-unvisited{opacity:.16}.city-marker.status-unvisited:hover{opacity:.7}.city-marker.status-planned .city-core{fill:#6c5e48;stroke:#b09d7d}.city-marker.status-planned .city-glow{fill:#e1c5960d;filter:drop-shadow(0 0 4px #e8cb9b33)}.city-marker.status-passed .city-core{fill:#a09e98;stroke:#d0ccc3}.city-marker.status-stayed .city-core{fill:#f0ece4;stroke:#fffaf1}.city-marker.status-stayed .city-glow{fill:#fff6e414;filter:drop-shadow(0 0 3px #fff8e9cc)drop-shadow(0 0 9px #ffe2ae52)}.city-marker.status-explored .city-core{fill:var(--warm-bright);stroke:#fff}.city-marker.status-explored .city-glow{fill:#ffe6b91f;filter:drop-shadow(0 0 4px #fff6e5e6)drop-shadow(0 0 12px #ffd6937a)}.city-marker:hover .city-core,.city-marker:focus-visible .city-core{r:4.5px;fill:#fff8eb}@keyframes plan-breathe{0%,to{filter:drop-shadow(0 0 5px #f2d8aa14)}50%{filter:drop-shadow(0 0 10px #f2d8aa33)}}.map-hint{color:#56544f;letter-spacing:.1em;white-space:nowrap;font-size:15px;position:absolute;bottom:100px;left:50%;transform:translate(-50%)}.breakdown-row span{align-items:center;gap:7px;display:flex}.legend-dot{background:#111;border:1px solid #2f2f2e;border-radius:50%;width:7px;height:7px}.legend-dot.status-planned{background:var(--warm);border-color:var(--warm-bright);box-shadow:0 0 8px #e8d6b538}.legend-dot.status-passed{background:#6b6a65;border-color:#97958f}.legend-dot.status-stayed{background:#bbb8b0;border-color:#ece7dc;box-shadow:0 0 6px #ffffff1f}.legend-dot.status-explored{background:var(--warm);border-color:#fff3da;box-shadow:0 0 8px #ffdd9e57}.top-nav{align-items:center;gap:2px;display:flex}.top-nav button{color:#696762;cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;min-width:0;padding:9px 11px;font-size:15px;transition:all .18s;display:flex;position:relative}.top-nav button:after{content:"";background:var(--warm);opacity:0;width:12px;height:1px;transition:all .18s;position:absolute;bottom:3px;left:50%;transform:translate(-50%)scaleX(.4)}.top-nav button:hover{color:#aaa7a0}.top-nav button.active{color:#eee9df}.top-nav button.active:after{opacity:.9;transform:translate(-50%)scaleX(1)}.content-page{width:min(980px,100% - 44px);min-height:calc(100vh - 168px);margin:0 auto;padding:clamp(52px,8vh,98px) 0 80px}.page-title{border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:flex-end;gap:24px;padding-bottom:42px;display:flex}.page-title h1{margin:0;font-family:Songti SC,STSong,serif;font-size:clamp(38px,6vw,62px);font-weight:500}.page-description{max-width:480px;color:var(--muted);margin:16px 0 0;font-size:15px;line-height:1.7}.primary-button,.secondary-button,.text-button{cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:8px;transition:all .18s;display:inline-flex}.primary-button{color:#111;background:#eee9df;border:1px solid #e8e0d1;padding:11px 18px;font-size:15px;font-weight:600}.primary-button:hover{background:#fffaf1;box-shadow:0 0 24px #ffebc61f}.primary-button:disabled{cursor:not-allowed;opacity:.35}.secondary-button{border:1px solid var(--line);color:#9b9994;background:0 0;padding:11px 18px;font-size:15px}.text-button{color:var(--warm);background:0 0;border:0;padding:10px 0;font-size:15px}.plan-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:28px 0;display:grid}.trip-plan-card{background:radial-gradient(circle at 82% 4%,#e8d6b513,#0000 32%),linear-gradient(145deg,#ffffff06,#0000 42%),#090909;border:1px solid #ffffff16;border-radius:24px;margin:28px 0 8px;padding:30px;box-shadow:0 28px 70px #00000038}.trip-plan-header{border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:flex-start;gap:32px;padding-bottom:24px;display:flex}.trip-plan-header .eyebrow{color:#827b70;margin-bottom:12px}.trip-plan-header h2{letter-spacing:-.04em;margin:0 0 12px;font-family:Songti SC,STSong,serif;font-size:clamp(30px,4vw,44px);font-weight:500}.trip-plan-header p:not(.eyebrow){color:#74716b;max-width:650px;margin:0;font-size:15px;line-height:1.8}.trip-plan-header>span{color:#8d8476;letter-spacing:.12em;border:1px solid #e8d6b521;border-radius:999px;flex:none;padding:8px 11px;font-size:15px}.trip-city-row{flex-wrap:wrap;gap:7px 4px;padding:18px 0;display:flex}.trip-city-stop{align-items:center;gap:4px;display:inline-flex}.trip-city-row button{color:#918e87;cursor:pointer;background:0 0;border:0;padding:4px 5px;font-size:15px;transition:all .18s}.trip-city-row button:hover{color:#e5dfd4;background:0 0}.trip-city-arrow{color:#4f4b45;flex:none}.trip-day-list{margin:0;padding:0;list-style:none}.trip-day-list li{border-top:1px solid #ffffff0a;grid-template-columns:52px minmax(0,1fr);gap:16px;padding:15px 0;display:grid}.trip-day-index{color:#8d8373;align-self:start;padding-top:1px;font-size:15px}.trip-day-list small{color:#5f5c56;letter-spacing:.09em;font-size:15px}.trip-day-list p{color:#c0bdb6;margin:6px 0 0;font-size:15px;line-height:1.65}.trip-day-meta{color:#77736b;flex-wrap:wrap;gap:7px 14px;margin-top:8px;font-size:15px;display:flex}.trip-plan-actions{border-top:1px solid var(--line-soft);justify-content:space-between;align-items:center;gap:18px;margin-top:18px;padding-top:20px;display:flex}.trip-plan-actions button{color:#716f6a;cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;padding:8px 10px;font-size:15px;transition:color .16s,background .16s;display:inline-flex}.trip-plan-actions>span{align-items:center;gap:5px;display:flex}.trip-plan-actions button:hover{color:#d8d3c9}.trip-plan-actions .trip-complete-button{color:#cbbda4;background:#e8d6b50b;border:1px solid #e8d6b52e;border-radius:999px;padding:10px 14px}.trip-plan-actions .trip-complete-button:hover{color:#f0e4cf;background:#e8d6b514;border-color:#e8d6b54d}.trip-plan-actions .danger-text-button:hover{color:#d49a91}.cancelled-plan-section{border-top:1px solid var(--line-soft);margin-top:50px;padding-top:30px}.cancelled-plan-section h2{margin:8px 0 18px;font-family:Songti SC,STSong,serif;font-size:24px;font-weight:500}.cancelled-plan-list{gap:7px;display:grid}.cancelled-plan-list>div{border:1px solid var(--line-soft);background:#ffffff03;border-radius:12px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:13px 15px;display:grid}.cancelled-plan-list span strong,.cancelled-plan-list span small{display:block}.cancelled-plan-list span strong{color:#96928a;margin-bottom:4px;font-size:15px;font-weight:500}.cancelled-plan-list span small{color:#53514d;font-size:15px}.cancelled-plan-list button{color:#67645f;cursor:pointer;background:0 0;border:0;padding:7px 9px;font-size:15px}.cancelled-plan-list button:hover{color:#d6d0c5}.completion-page{width:min(980px,100% - 44px)}.completion-card{border:1px solid var(--line-soft);background:radial-gradient(circle at 88% 0,#e8d6b511,#0000 36%),#090909;border-radius:24px;margin-top:20px;padding:28px}.completion-card>header{border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px;padding-bottom:18px;display:flex}.completion-card>header span{font-family:Songti SC,STSong,serif;font-size:24px}.completion-card>header strong{color:#756f65;font-size:15px;font-weight:500}.completion-date-grid,.completion-memory-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.completion-status{border:0;margin:26px 0 0;padding:0}.completion-status legend{color:#8a8780;margin-bottom:12px;font-size:15px}.completion-status>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.completion-status label{border:1px solid var(--line-soft);cursor:pointer;border-radius:13px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;min-height:78px;padding:13px;display:grid}.completion-status label.selected{background:#e8d6b50a;border-color:#e8d6b53d}.completion-status input{opacity:0;position:absolute}.completion-status strong,.completion-status small{display:block}.completion-status strong{color:#c5c1b8;margin-bottom:5px;font-size:15px;font-weight:500}.completion-status small{color:#5b5954;font-size:15px;line-height:1.45}.completion-transport{margin:24px 0}.completion-memory-grid .photo-field,.completion-memory-grid .reflection-field{min-height:170px}.completion-actions{margin-top:24px}.page-back-button{color:#77746e;cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;margin:0 0 34px;padding:0;font-size:15px;transition:color .18s;display:inline-flex}.page-back-button:hover{color:#eee9df}.planner-page{width:min(1040px,100% - 44px)}.planner-form{padding:34px 0 0}.planner-primary-fields{grid-template-columns:minmax(0,1.6fr) minmax(220px,.8fr);gap:18px;display:grid}.planner-field{align-content:start;gap:9px;display:grid}.planner-field-wide{grid-column:1/-1}.planner-field>span{color:#77746e;letter-spacing:.08em;font-size:15px}.planner-field input,.planner-field select,.planner-field textarea{border:0;border-bottom:1px solid var(--line);color:#eeeae2;resize:vertical;background:0 0;border-radius:0;outline:0;width:100%;padding:14px 0;font-size:15px;transition:border-color .18s}.planner-field textarea{line-height:1.7}.planner-field input::placeholder,.planner-field textarea::placeholder{color:#44433f}.planner-field input:focus,.planner-field select:focus,.planner-field textarea:focus{border-color:#e8d6b585}.planner-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:34px 0 0;display:grid}.planner-choice-card{border:1px solid var(--line-soft);color:#6a6863;text-align:left;cursor:pointer;background:#090909;border-radius:18px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;min-height:96px;padding:20px;transition:border-color .18s,background .18s,transform .18s;display:grid}.planner-choice-card:hover{background:#0d0d0c;border-color:#e8d6b533;transform:translateY(-2px)}.planner-choice-card.has-value>svg:first-child{color:var(--warm)}.planner-choice-card span{gap:7px;display:grid}.planner-choice-card small{color:#5d5b56;letter-spacing:.1em;font-size:15px}.planner-choice-card strong{color:#d4d0c7;text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:500;overflow:hidden}.picker-selection-tray{flex-wrap:wrap;gap:8px;display:flex}.picker-selection-tray button{color:#aaa397;cursor:pointer;background:#e8d6b509;border:1px solid #e8d6b521;border-radius:999px;align-items:center;gap:6px;padding:7px 10px;font-size:15px;display:inline-flex}.picker-selection-tray button small{color:#6f685d;font-size:15px;font-weight:500}.route-stop-editor{border:1px solid var(--line-soft);background:#ffffff05;border-radius:17px;margin-top:18px;padding:18px}.route-stop-editor>header{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:12px;display:flex}.route-stop-editor>header span{gap:5px;display:grid}.route-stop-editor>header small,.route-stop-editor>header em,.route-stop-editor>p{color:#67635c;font-size:15px;font-style:normal}.route-stop-editor>header strong{color:#d8d3c8;font-size:15px;font-weight:500}.route-stop-editor ol{gap:5px;margin:0;padding:0;list-style:none;display:grid}.route-stop-editor li{background:#ffffff06;border-radius:11px;grid-template-columns:34px minmax(90px,1fr) 70px auto;align-items:center;gap:10px;min-height:42px;padding:5px 7px 5px 12px;display:grid}.route-stop-index,.route-stop-editor li>small{color:#5f5b54;font-size:15px}.route-stop-editor li>strong{color:#c8c2b8;font-size:15px;font-weight:500}.route-stop-editor li>div{gap:2px;display:flex}.route-stop-editor li button{color:#777169;cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;width:30px;height:30px;padding:0;display:grid}.route-stop-editor li button:hover:not(:disabled){color:#ded7cb;background:#ffffff0e}.route-stop-editor li button:disabled{opacity:.2;cursor:default}.route-stop-editor>p{margin:11px 0 0}.daily-schedule-section{border-top:1px solid var(--line-soft);margin-top:46px;padding-top:30px}.daily-schedule-section>header{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:18px;display:flex}.daily-schedule-section .eyebrow{margin-bottom:10px}.daily-schedule-section h2{margin:0;font-family:Songti SC,STSong,serif;font-size:24px;font-weight:500}.daily-schedule-list{gap:10px;display:grid}.daily-schedule-card{border:1px solid var(--line-soft);background:#ffffff03;border-radius:18px;grid-template-columns:112px minmax(0,1fr);gap:26px;padding:24px;display:grid}.day-date{flex-direction:column;align-items:flex-start;padding-top:3px;display:flex}.day-date>span{color:#595751;letter-spacing:.13em;font-size:15px}.day-date strong{margin-top:10px;font-family:Songti SC,STSong,serif;font-size:24px;font-weight:500}.day-date i{color:var(--warm);background:#e8d6b51a;border-radius:999px;margin-top:9px;padding:4px 7px;font-size:15px;font-style:normal}.day-date i.workday{color:#76736c;background:#ffffff0b}.day-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px;display:grid}.schedule-placeholder{color:#57554f;text-align:center;border:1px dashed #ffffff13;border-radius:18px;align-content:center;place-items:center;gap:12px;min-height:150px;margin-top:34px;display:grid}.schedule-placeholder p{margin:0;font-size:15px}.planner-actions{border-top:1px solid var(--line-soft);justify-content:flex-end;gap:10px;margin-top:32px;padding-top:24px;display:flex}.calendar-page{width:min(1120px,100% - 44px);min-height:calc(100vh - 82px);margin:0 auto;padding:clamp(30px,5vh,60px) 0 72px}.subpage-header{grid-template-columns:minmax(120px,1fr) auto minmax(120px,1fr);align-items:center;gap:24px;margin-bottom:30px;display:grid}.subpage-header .page-back-button{justify-self:start;margin:0}.subpage-header>div{text-align:center}.subpage-header .eyebrow{margin-bottom:8px}.subpage-header h1{margin:0;font-family:Songti SC,STSong,serif;font-size:clamp(32px,4vw,48px);font-weight:500}.subpage-header p:not(.eyebrow){color:#6c6963;margin:8px 0 0;font-size:15px}.subpage-header>.primary-button{justify-self:end}.calendar-shell{border:1px solid var(--line-soft);background:radial-gradient(circle at 50% -20%,#e8d6b50e,#0000 38%),#080808;border-radius:24px;padding:26px}.calendar-toolbar{grid-template-columns:40px 1fr 40px;align-items:center;gap:14px;padding-bottom:22px;display:grid}.calendar-toolbar h2{text-align:center;margin:0;font-family:Songti SC,STSong,serif;font-size:24px;font-weight:500}.calendar-toolbar button{border:1px solid var(--line);color:#85827c;cursor:pointer;background:0 0;border-radius:50%;place-items:center;width:38px;height:38px;display:grid}.calendar-data-note{color:#65625c;text-align:center;margin:-5px 0 18px;font-size:15px}.calendar-weekdays,.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.calendar-weekdays span{color:#55534f;text-align:center;padding:10px;font-size:15px}.calendar-grid{border-top:1px solid var(--line-soft);border-left:1px solid var(--line-soft);border-radius:15px;overflow:hidden}.calendar-day{border:0;border-right:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);color:#b3b0a9;text-align:left;cursor:pointer;background:#090909;flex-direction:column;justify-content:space-between;align-items:flex-start;min-height:84px;padding:12px;transition:color .14s,background .14s;display:flex;position:relative}.calendar-day:hover{z-index:1;color:#fffaf0;background:#141310}.calendar-day.outside-month{color:#3e3d3a;background:#070707}.calendar-day.in-range{background:#e8d6b51f}.calendar-day.range-start,.calendar-day.range-end{background:var(--warm);color:#111}.calendar-day.is-today>span:after{content:"";background:var(--warm);border-radius:50%;width:3px;height:3px;margin:0 0 2px 6px;display:inline-block}.calendar-day.range-start.is-today>span:after,.calendar-day.range-end.is-today>span:after{background:#151515}.calendar-day small{max-width:100%;color:var(--warm);text-overflow:ellipsis;white-space:nowrap;font-size:15px;overflow:hidden}.calendar-day.is-workday small{color:#77746d}.calendar-day.range-start small,.calendar-day.range-end small{color:#0009}.calendar-legend{color:#65625d;align-items:center;gap:18px;padding:18px 2px 0;font-size:15px;display:flex}.calendar-legend span{align-items:center;gap:6px;display:inline-flex}.calendar-legend i{background:var(--warm);border-radius:50%;width:7px;height:7px}.calendar-legend i.workday{background:#5f5d58}.calendar-legend a{color:#7f776b;margin-left:auto;text-decoration:none}.travel-calendar-page{width:min(1180px,100% - 44px)}.calendar-overview{color:#696762;flex-wrap:wrap;align-items:center;gap:12px 24px;padding:22px 0;font-size:15px;display:flex}.calendar-overview span,.travel-calendar-legend span{align-items:center;gap:7px;display:inline-flex}.calendar-overview i,.travel-calendar-legend i,.calendar-agenda i,.undated-entry-grid i{border-radius:50%;flex:none;width:7px;height:7px}.calendar-overview i.visited,.travel-calendar-legend i.visited,.calendar-agenda i.visited,.undated-entry-grid i.visited{background:#fffffff2;box-shadow:0 0 7px #ffffff38}.calendar-overview i.planned,.travel-calendar-legend i.planned,.calendar-agenda i.planned,.undated-entry-grid i.planned{background:var(--warm);box-shadow:0 0 7px #e8d6b53d}.travel-calendar-layout{grid-template-columns:minmax(0,1fr) 292px;align-items:start;gap:16px;display:grid}.travel-calendar-shell{min-width:0}.travel-calendar-shell .calendar-toolbar{padding-bottom:16px}.travel-calendar-shell .calendar-toolbar>div{justify-items:center;gap:5px;display:grid}.calendar-toolbar .calendar-today-button{color:#625f59;border:0;border-radius:0;width:auto;height:auto;padding:0;font-size:15px}.calendar-toolbar .calendar-today-button:hover{color:var(--warm)}.travel-calendar-day{justify-content:flex-start;gap:8px;min-height:96px;padding:10px}.travel-calendar-day.is-selected{z-index:1;background:#191713;box-shadow:inset 0 0 0 1px #e8d6b56b}.calendar-day-number{flex:none}.calendar-day-content{gap:4px;width:100%;min-width:0;display:grid}.travel-calendar-day .holiday-name{color:#6f685e}.calendar-entry-pill{text-overflow:ellipsis;white-space:nowrap;border-radius:5px;width:100%;padding:3px 5px;font-size:15px;font-style:normal;line-height:1.25;overflow:hidden}.calendar-entry-pill.visited{color:#e6e3dc;background:#ffffff1a}.calendar-entry-pill.planned{color:var(--warm);background:#e8d6b51f}.travel-calendar-day em{color:#67645e;font-size:15px;font-style:normal}.travel-calendar-legend{flex-wrap:wrap}.travel-calendar-legend i.holiday{background:#6f685e}.calendar-agenda{border:1px solid var(--line-soft);background:radial-gradient(circle at 50% -20%,#e8d6b50d,#0000 42%),#080808;border-radius:24px;min-height:360px;padding:24px}.calendar-agenda header{border-bottom:1px solid var(--line-soft);padding-bottom:20px}.calendar-agenda .eyebrow{margin-bottom:9px}.calendar-agenda h2{margin:0;font-family:Songti SC,STSong,serif;font-size:24px;font-weight:500}.agenda-holiday{color:var(--warm);background:#e8d6b514;border-radius:999px;margin-top:10px;padding:5px 7px;font-size:15px;display:inline-block}.agenda-holiday.workday{color:#716e68;background:#ffffff0a}.agenda-entry-list{padding-top:8px;display:grid}.agenda-entry-list button{color:#8a8781;text-align:left;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #ffffff0a;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:14px 0;display:grid}.agenda-entry-list span,.undated-entry-grid span{gap:4px;min-width:0;display:grid}.agenda-entry-list strong,.undated-entry-grid strong{color:#d2cec6;text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:500;overflow:hidden}.agenda-entry-list small,.undated-entry-grid small{color:#605e59;text-overflow:ellipsis;white-space:nowrap;font-size:15px;overflow:hidden}.agenda-empty{color:#4f4d49;text-align:center;align-content:center;place-items:center;gap:12px;min-height:220px;display:grid}.agenda-empty p{margin:0;font-size:15px}.undated-calendar-section{border-top:1px solid var(--line-soft);margin-top:34px;padding-top:30px}.undated-calendar-section>header{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:20px;display:flex}.undated-calendar-section .eyebrow{margin-bottom:9px}.undated-calendar-section h2{margin:0;font-family:Songti SC,STSong,serif;font-size:24px;font-weight:500}.undated-calendar-section>header>p{color:#5e5c57;text-align:right;max-width:390px;margin:0;font-size:15px;line-height:1.7}.undated-section-actions{align-items:center;gap:14px;max-width:420px;display:flex}.undated-section-actions p{color:#5e5c57;text-align:right;margin:0;font-size:15px;line-height:1.7}.undated-section-actions .secondary-button{flex:none;padding:8px 12px}.undated-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.undated-groups>div{border:1px solid var(--line-soft);background:#080808;border-radius:18px;min-width:0;padding:18px}.undated-groups h3{color:#85817a;letter-spacing:.08em;margin:0 0 12px;font-size:15px;font-weight:500}.undated-entry-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;max-height:250px;display:grid;overflow-y:auto}.undated-entry-grid button{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:9px;min-width:0;padding:10px;transition:background .15s;display:grid}.undated-entry-grid button:hover{background:#ffffff09}.destination-picker-page{height:calc(100vh - 82px);min-height:620px;position:relative;overflow:hidden}.picker-header{z-index:16;pointer-events:none;grid-template-columns:1fr auto 1fr;align-items:start;width:min(1320px,100% - 44px);display:grid;position:absolute;top:24px;left:50%;transform:translate(-50%)}.picker-header>*{pointer-events:auto}.picker-header .page-back-button{margin:8px 0 0}.picker-header>div{text-align:center}.picker-header .eyebrow{margin-bottom:7px}.picker-header h1{margin:0;font-family:Songti SC,STSong,serif;font-size:24px;font-weight:500}.picker-header p:not(.eyebrow){color:#66635d;margin:8px 0 0;font-size:15px}.picker-header .primary-button{justify-self:end}.picker-map{width:100%;height:100%}.destination-picker-page .province-outline{pointer-events:none}.destination-picker-page .china-map-wrap{--map-scale:.78}.picker-selection-tray{z-index:16;border:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#080808e6;border-radius:18px;justify-content:center;max-width:min(800px,100% - 44px);max-height:76px;padding:11px 13px;position:absolute;bottom:22px;left:50%;overflow-y:auto;transform:translate(-50%);box-shadow:0 18px 54px #00000080}.picker-selection-tray>span{color:#5b5954;padding:7px 10px;font-size:15px}.plan-card{border:1px solid var(--line-soft);text-align:left;cursor:pointer;background:radial-gradient(circle at 30% 120%,#e6d0a80b,#0000 48%),#0a0a0a;border-radius:18px;grid-template-columns:auto 1fr auto;align-items:start;gap:18px;min-height:170px;padding:24px;transition:all .2s;display:grid}.plan-card:hover{border-color:#eddab72b;transform:translateY(-3px);box-shadow:0 22px 46px #00000047}.plan-index{color:#41403d;letter-spacing:.1em;font-size:15px}.plan-card small{color:#7b7469;letter-spacing:.08em;font-size:15px}.plan-card h2{margin:10px 0;font-family:Songti SC,STSong,serif;font-size:24px;font-weight:500}.plan-card p{color:#6f6d68;margin:0;font-size:15px;line-height:1.7}.plan-card>svg{color:#4e4d49}.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:390px;padding:48px 20px;display:flex}.empty-orbit{color:#918674;border:1px solid #ffecc91f;border-radius:50%;place-items:center;width:74px;height:74px;margin-bottom:22px;display:grid;box-shadow:0 0 0 12px #ffffff02,0 0 44px #ffe5b50b}.empty-state h2{margin:0 0 11px;font-family:Songti SC,STSong,serif;font-size:24px;font-weight:500}.empty-state p{color:#686660;max-width:380px;margin:0;font-size:15px;line-height:1.8}.timeline{padding:30px 0}.timeline-entry{border-bottom:1px solid var(--line-soft);cursor:pointer;grid-template-columns:24px minmax(0,1fr) 122px;gap:22px;min-height:160px;padding:22px 0;display:grid}.timeline-line{justify-content:center;display:flex;position:relative}.timeline-line:after{content:"";background:var(--line);width:1px;position:absolute;top:22px;bottom:-44px}.timeline-entry:last-child .timeline-line:after{display:none}.timeline-light{z-index:1;background:#888;border-radius:50%;width:9px;height:9px;margin-top:4px;position:relative;box-shadow:0 0 10px #ffffff29}.timeline-light.status-stayed{background:#d6d2c9}.timeline-light.status-explored{background:var(--warm-bright);box-shadow:0 0 13px #ffe2ac61}.timeline-meta{color:#6b6964;letter-spacing:.06em;gap:15px;font-size:15px;display:flex}.timeline-content h2{margin:12px 0 10px;font-family:Songti SC,STSong,serif;font-size:24px;font-weight:500}.timeline-content p{color:#85827c;max-width:560px;margin:0;font-size:15px;line-height:1.8}.transport-row{gap:6px;margin-top:16px;display:flex}.transport-row span{border:1px solid var(--line);color:#74716b;border-radius:999px;padding:5px 9px;font-size:15px}.visited-place-list{flex-wrap:wrap;gap:8px;display:flex}.visited-place-list span{color:#c9bda8;background:#e8d6b50b;border:1px solid #e8d6b526;border-radius:999px;padding:8px 12px;font-size:15px}.timeline-photo{border:1px solid var(--line-soft);color:#353432;background:#0b0b0b 50%/cover;border-radius:10px;place-items:center;width:122px;height:94px;display:grid}.timeline-photo.has-photo{border-color:#ffffff1a}.completed-trip-list{gap:18px;padding:30px 0 18px;display:grid}.journey-trip-card{border:1px solid var(--line-soft);background:radial-gradient(circle at 88% 5%,#e8d6b511,#0000 34%),#090909;border-radius:24px;grid-template-columns:minmax(0,1fr);min-height:260px;display:grid;overflow:hidden}.journey-trip-card.has-cover{grid-template-columns:minmax(250px,.75fr) minmax(0,1.25fr)}.journey-trip-cover{filter:saturate(.78)brightness(.8);background-position:50%;background-size:cover;min-height:260px}.journey-trip-content{flex-direction:column;justify-content:center;padding:30px;display:flex}.journey-trip-content>header{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.journey-trip-content h2{letter-spacing:-.035em;margin:9px 0 0;font-family:Songti SC,STSong,serif;font-size:clamp(28px,4vw,40px);font-weight:500}.journey-trip-content>header>span{color:#746c60;letter-spacing:.1em;border:1px solid #e8d6b521;border-radius:999px;flex:none;padding:7px 10px;font-size:15px}.journey-trip-reflection{color:#85817a;max-width:660px;margin:19px 0 0;font-size:15px;line-height:1.8}.journey-city-row{flex-wrap:wrap;gap:7px;margin-top:22px;display:flex}.journey-city-row span{border:1px solid var(--line);color:#858078;border-radius:999px;padding:6px 9px;font-size:15px}.journey-empty-hint{border:1px solid var(--line-soft);color:#706b62;border-radius:15px;align-items:center;gap:13px;margin:28px 0 8px;padding:17px 18px;display:flex}.journey-empty-hint strong,.journey-empty-hint small{display:block}.journey-empty-hint strong{color:#aaa59b;margin-bottom:5px;font-size:15px;font-weight:500}.journey-empty-hint small{color:#5b5852;font-size:15px}.historical-archive{border-top:1px solid var(--line-soft);margin-top:42px;padding-top:34px}.historical-archive>header{justify-content:space-between;align-items:flex-end;margin-bottom:26px;display:flex}.historical-archive>header h2{margin:8px 0 0;font-family:Songti SC,STSong,serif;font-size:24px;font-weight:500}.historical-archive>header>span{color:#5e5a54;font-size:15px}.historical-year-group{border-top:1px solid #ffffff09;grid-template-columns:90px minmax(0,1fr);gap:24px;padding:18px 0;display:grid}.historical-year-group>h3{color:#817a6f;margin:11px 0 0;font-family:Songti SC,STSong,serif;font-size:15px;font-weight:500}.historical-entry-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.historical-entry-grid button{color:#5d5a55;text-align:left;cursor:pointer;background:#ffffff03;border:1px solid #0000;border-radius:11px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;padding:12px;display:grid}.historical-entry-grid button:hover{border-color:var(--line-soft);background:#ffffff06}.historical-entry-grid button>i{background:#aaa;border-radius:50%;width:7px;height:7px}.historical-entry-grid button>i.status-explored{background:var(--warm-bright);box-shadow:0 0 10px #ffe4b53d}.historical-entry-grid strong,.historical-entry-grid small{display:block}.historical-entry-grid strong{color:#aaa69e;margin-bottom:4px;font-size:15px;font-weight:500}.historical-entry-grid small{color:#55524d;text-overflow:ellipsis;white-space:nowrap;font-size:15px;overflow:hidden}.backfill-page{width:min(1040px,100% - 44px)}.backfill-layout{grid-template-columns:240px minmax(0,1fr);gap:18px;padding-top:28px;display:grid}.backfill-city-list,.backfill-editor{border:1px solid var(--line-soft);background:#090909;border-radius:20px}.backfill-city-list{max-height:650px;overflow:hidden}.backfill-city-list>header{border-bottom:1px solid var(--line-soft);align-items:baseline;gap:7px;padding:18px;display:flex}.backfill-city-list>header strong{font-family:Songti SC,STSong,serif;font-size:24px;font-weight:500}.backfill-city-list>header span{color:#5d5a55;font-size:15px}.backfill-city-list>div{max-height:588px;padding:7px;overflow-y:auto}.backfill-city-list button{color:#85817a;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;width:100%;padding:11px;display:flex}.backfill-city-list button.active{color:#e0d8ca;background:#e8d6b511}.backfill-city-list button small{color:#4f4c47;font-size:15px}.backfill-editor{padding:28px}.backfill-editor>header{border-bottom:1px solid var(--line-soft);margin-bottom:25px;padding-bottom:20px;position:relative}.backfill-editor>header h2{margin:8px 0 0;font-family:Songti SC,STSong,serif;font-size:24px;font-weight:500}.backfill-editor>header>span{color:#514e49;font-size:15px;position:absolute;top:3px;right:0}.backfill-precision{border:0;margin:0;padding:0}.backfill-precision legend{color:#8a8780;margin-bottom:11px;font-size:15px}.backfill-precision>div{flex-wrap:wrap;gap:7px;display:flex}.backfill-precision button{border:1px solid var(--line);color:#696661;cursor:pointer;background:0 0;border-radius:999px;padding:8px 11px;font-size:15px}.backfill-precision button.selected{color:#d1c5b1;background:#e8d6b50e;border-color:#e8d6b53d}.backfill-date-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px;display:grid}.backfill-days,.backfill-reflection{margin-top:20px}.backfill-actions{border-top:1px solid var(--line-soft);justify-content:flex-end;gap:9px;margin-top:24px;padding-top:20px;display:flex}.backfill-complete{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:420px;display:flex}.backfill-complete svg{color:var(--warm);margin-bottom:18px}.backfill-complete h2{margin:0;font-family:Songti SC,STSong,serif;font-size:24px;font-weight:500}.backfill-complete p{color:#696660;max-width:400px;margin:12px 0 22px;font-size:15px;line-height:1.8}.hero-stat{text-align:center;padding:66px 0 48px}.hero-stat-number{letter-spacing:-.06em;font-family:Songti SC,STSong,serif;font-size:clamp(74px,13vw,130px);font-weight:500}.hero-stat-percent{color:#77746e;margin-left:7px;font-family:Songti SC,STSong,serif;font-size:24px}.hero-stat p{color:#75736e;letter-spacing:.12em;margin:4px 0 20px;font-size:15px}.hero-stat-bar{background:#171717;width:min(360px,80%);height:2px;margin:0 auto}.hero-stat-bar i{background:linear-gradient(90deg, #7e7567, var(--warm-bright));height:100%;display:block;box-shadow:0 0 8px #ffe4b533}.stat-grid{border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.stat-card{border-right:1px solid var(--line-soft);flex-direction:column;gap:10px;padding:28px 20px;display:flex}.stat-card:last-child{border-right:0}.stat-card strong{font-family:Songti SC,STSong,serif;font-size:24px;font-weight:500}.stat-card strong small{color:#66635d;margin-left:5px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,PingFang SC,sans-serif;font-size:15px}.stat-card span{color:#6d6b66;font-size:15px}.status-breakdown{width:min(540px,100%);margin:52px auto 0}.status-breakdown h2{margin-bottom:18px;font-family:Songti SC,STSong,serif;font-size:24px;font-weight:500}.breakdown-row{border-bottom:1px solid var(--line-soft);color:#89867f;justify-content:space-between;padding:14px 0;font-size:15px;display:flex}.breakdown-row strong{color:#d3cfc7;font-size:15px;font-weight:500}.backup-card{border:1px solid var(--line);text-align:left;cursor:pointer;background:#0a0a0a;border-radius:14px;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;width:100%;margin:26px auto 0;padding:18px;display:grid}.backup-actions{gap:9px;width:min(540px,100%);margin:26px auto 0;display:grid}.backup-icon{color:#9c968a;background:#141413;border-radius:50%;place-items:center;width:34px;height:34px;display:grid}.backup-card strong,.backup-card small{display:block}.backup-card strong{margin-bottom:5px;font-size:15px;font-weight:500}.backup-card small{color:#62605c;font-size:15px}.backup-card>svg{color:#4a4946}.panel-backdrop{width:var(--detail-width);pointer-events:none;position:absolute;top:78px;bottom:18px;left:0}.place-panel{pointer-events:auto;contain:layout paint style;background:#090909f5;border:1px solid #ffffff1a;border-radius:20px;width:100%;height:100%;overflow-y:auto;box-shadow:-18px 18px 70px #00000085}.app-shell.map-active.panel-open .next-destination{right:calc(clamp(360px,32vw,430px) + 42px)}.app-shell.panel-closing .panel-backdrop,.app-shell.panel-closing .place-panel{pointer-events:none}.panel-header{z-index:4;border-bottom:1px solid var(--line-soft);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#090909f5;justify-content:space-between;align-items:flex-start;min-height:112px;padding:25px 24px 20px;display:flex;position:sticky;top:0}.panel-header h1{margin:0;font-family:Songti SC,STSong,serif;font-size:24px;font-weight:500}.province-select{border:0;border-bottom:1px solid var(--line);color:#f5f1e9;background:#090909;border-radius:0;min-width:240px;padding:8px 30px 8px 0;font-family:Songti SC,STSong,serif;font-size:24px}.place-form{padding:0 24px 20px}.city-panel-overview{border-bottom:1px solid var(--line-soft);gap:18px;padding:22px 24px;display:grid}.city-visit-history{gap:11px;display:grid}.city-visit-history>header{color:#aaa69e;justify-content:space-between;align-items:center;font-size:15px;display:flex}.city-visit-history>header small{color:#55534f}.city-visit-history>div{gap:7px;display:grid}.city-visit-entry{background:#ffffff05;border:1px solid #ffffff12;border-radius:13px;transition:all .18s;overflow:hidden}.city-visit-entry:hover{background:#ffffff08;border-color:#ffffff1f}.city-visit-entry.active{background:#e8d6b50e;border-color:#e8d6b53d}.city-visit-entry-trigger{color:#817e78;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;width:100%;min-width:0;padding:12px 13px;display:grid}.city-visit-entry-trigger>span{gap:5px;min-width:0;display:grid}.city-visit-entry-trigger strong{color:#ddd7cc;text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:500;overflow:hidden}.city-visit-entry-trigger small{color:#66635e;text-overflow:ellipsis;white-space:nowrap;font-size:15px;overflow:hidden}.city-visit-entry-trigger i{color:#625f59;white-space:nowrap;align-items:center;gap:5px;font-size:15px;font-style:normal;display:inline-flex}.city-visit-entry-trigger i>svg:last-child{transition:transform .2s}.city-visit-entry.active .city-visit-entry-trigger i{color:#c7b995}.city-visit-entry.active .city-visit-entry-trigger i>svg:last-child{transform:rotate(90deg)}.city-visit-entry-details{border-top:1px solid #ffffff0e}.city-visit-entry-details>ol{gap:0;margin:0;padding:0 13px;list-style:none;display:grid}.city-visit-entry-details>ol>li{border-bottom:1px solid #ffffff0b;grid-template-columns:28px minmax(0,1fr);gap:10px;padding:11px 0;display:grid}.city-visit-entry-details>ol>li>span,.city-visit-entry-details>ol small,.city-visit-entry-details>ol em{color:#6f6960;font-size:15px;font-style:normal}.city-visit-entry-details>ol>li>div{gap:5px;min-width:0;display:grid}.city-visit-entry-details>ol p{color:#bdb5a8;margin:0;font-size:15px;line-height:1.65}.city-visit-entry-details>button{color:#a79d8b;cursor:pointer;background:#e8d6b509;border:1px solid #e8d6b521;border-radius:10px;justify-content:center;align-items:center;gap:7px;width:calc(100% - 26px);min-height:40px;margin:13px;padding:0 12px;font-size:15px;display:flex}.city-visit-entry-details>button:hover{color:#d7cbb5;background:#e8d6b511;border-color:#e8d6b53d}.city-related-plans{gap:11px;display:grid}.city-related-plans>header{color:#aaa69e;justify-content:space-between;align-items:center;font-size:15px;display:flex}.city-related-plans>header small{color:#55534f}.city-related-plans>div{gap:8px;display:grid}.city-related-plan{background:#e8d6b509;border:1px solid #e8d6b529;border-radius:14px;overflow:hidden}.city-related-plan>summary{color:#bdb4a3;cursor:pointer;justify-content:space-between;align-items:center;gap:16px;min-height:62px;padding:12px 14px;list-style:none;display:flex}.city-related-plan>summary::-webkit-details-marker{display:none}.city-related-plan>summary>span{gap:4px;min-width:0;display:grid}.city-related-plan>summary strong{color:#ddd4c3;text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:500;overflow:hidden}.city-related-plan>summary small{color:#716c62;font-size:15px}.city-related-plan>summary>svg{color:#756d60;flex:none;transition:transform .2s}.city-related-plan[open]>summary>svg{transform:rotate(90deg)}.city-completed-route-summary{border-top:1px solid #ffffff0e;gap:8px;margin:0 14px;padding:13px 0 15px;display:grid}.city-completed-route-summary small,.city-completed-route-summary span{color:#6f6a62;font-size:15px}.city-completed-route-summary p{color:#c4bcaf;margin:0;font-size:15px;line-height:1.7}.city-related-plan>ol{gap:0;margin:0;padding:0 14px;list-style:none;display:grid}.city-related-plan>ol>li{border-top:1px solid #ffffff0e;grid-template-columns:28px minmax(0,1fr);gap:10px;padding:11px 0;display:grid}.city-related-plan>ol>li>span{color:#716a5d;font-size:15px}.city-related-plan>ol>li>div{gap:5px;min-width:0;display:grid}.city-related-plan>ol small,.city-related-plan>ol em{color:#666159;font-size:15px;font-style:normal}.city-related-plan>ol p{color:#b7b0a4;margin:0;font-size:15px;line-height:1.65}.city-related-plan>button{color:#a79d8b;cursor:pointer;background:#e8d6b509;border:1px solid #e8d6b521;border-radius:10px;justify-content:center;align-items:center;gap:7px;width:calc(100% - 28px);min-height:40px;margin:4px 14px 14px;font-size:15px;display:flex}.city-related-plan>button:hover{color:#d7cbb5;background:#e8d6b511;border-color:#e8d6b53d}.city-plan-entry{color:#bdb4a3;text-align:left;cursor:pointer;background:#e8d6b509;border:1px solid #e8d6b529;border-radius:14px;justify-content:space-between;align-items:center;gap:16px;width:100%;min-height:62px;padding:12px 14px;transition:all .18s;display:flex}.city-plan-entry:hover{background:#e8d6b511;border-color:#e8d6b547}.city-plan-entry>span{gap:3px;display:grid}.city-plan-entry small{color:#666158;font-size:15px}.city-plan-entry strong{color:#d9d0bf;font-size:15px;font-weight:500}.city-record-editor>summary{border-bottom:1px solid var(--line-soft);color:#74716b;cursor:pointer;justify-content:space-between;align-items:center;min-height:54px;padding:0 24px;font-size:15px;list-style:none;display:flex}.city-record-editor>summary::-webkit-details-marker{display:none}.city-record-editor>summary span{align-items:center;gap:7px;display:inline-flex}.city-record-editor>summary>svg{transition:transform .18s}.city-record-editor[open]>summary>svg{transform:rotate(90deg)}.status-fieldset,.form-section{border:0;border-bottom:1px solid var(--line-soft);margin:0;padding:28px 0}.status-fieldset legend,.form-section h2{color:#bbb8b0;margin:0 0 18px;padding:0;font-size:15px;font-weight:500}.status-options{gap:7px;display:grid}.compact-status-options{grid-template-columns:repeat(2,minmax(0,1fr))}.compact-status-options label{min-height:48px}.status-options label{cursor:pointer;border:1px solid #0000;border-radius:12px;grid-template-columns:auto 1fr auto;align-items:center;gap:13px;min-height:58px;padding:10px 13px;transition:all .18s;display:grid}.status-options label:hover{background:#0e0e0e}.status-options label.selected{background:#11100f;border-color:#eddec421}.status-options input{opacity:0;pointer-events:none;position:absolute}.status-light{background:#151515;border:1px solid #353533;border-radius:50%;width:11px;height:11px}.status-light.status-planned{background:var(--warm);border-color:var(--warm-bright);box-shadow:0 0 8px #e8d6b538}.status-light.status-passed{background:#77756f;border-color:#aaa7a0}.status-light.status-stayed{background:#cbc7be;border-color:#f0ebe1;box-shadow:0 0 8px #ffffff29}.status-light.status-explored{background:var(--warm-bright);border-color:#fff8eb;box-shadow:0 0 11px #ffe2ae5c}.status-options strong,.status-options small{display:block}.status-options strong{color:#d1cdc5;font-size:15px;font-weight:500}.status-options small{color:#5f5d58;margin-top:4px;font-size:15px}.status-options svg{color:#b8aa92}.field-grid{gap:16px;display:grid}.field-grid.two-columns{grid-template-columns:1fr 1fr}.field-grid label,.reflection-field{gap:8px;display:grid}.field-grid label>span,.reflection-field>span,.transport-picker>span{color:#77746f;letter-spacing:.08em;font-size:15px}input,textarea,select{border:1px solid var(--line);color:#e1ddd5;background:#0d0d0d;border-radius:10px}input,select{height:42px;padding:0 12px}textarea{resize:vertical;padding:12px;line-height:1.6}input::placeholder,textarea::placeholder{color:#3f3e3a}.transport-picker{margin-top:18px}.transport-picker>div{flex-wrap:wrap;gap:7px;margin-top:9px;display:flex}.transport-picker button{border:1px solid var(--line);color:#66645f;cursor:pointer;background:#0c0c0c;border-radius:999px;padding:7px 11px;font-size:15px}.transport-picker button.selected{color:#d9c9ae;background:#1c1915;border-color:#90836f}.photo-field{cursor:pointer;background:#0c0c0c;border:1px dashed #ffffff1f;border-radius:12px;place-items:center;height:170px;display:grid;overflow:hidden}.photo-field input{opacity:0;pointer-events:none;position:absolute}.photo-field img{object-fit:cover;width:100%;height:100%}.photo-field>span{color:#55534f;flex-direction:column;align-items:center;display:flex}.photo-field strong{color:#8b8882;margin:10px 0 4px;font-size:15px;font-weight:500}.photo-field small{color:#484743;font-size:15px}.reflection-field{margin-top:18px;position:relative}.reflection-field>small{color:#454440;font-size:15px;position:absolute;bottom:8px;right:10px}.panel-footer{z-index:3;border-top:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#090909f0;justify-content:flex-end;gap:10px;width:calc(100% + 48px);margin:0 -24px -20px;padding:14px 24px;display:flex;position:sticky;bottom:0}.toast{z-index:200;color:#d7d1c6;letter-spacing:.06em;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#191816eb;border:1px solid #ffffff1f;border-radius:999px;padding:10px 15px;font-size:15px;animation:.22s toast-in;position:fixed;bottom:102px;left:50%;transform:translate(-50%);box-shadow:0 16px 44px #00000080}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.page-enter{animation:.36s both page-in}@keyframes page-in{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,8px)}}@media (width>=681px){.app-shell:has(.tab-overview-page){height:100dvh;overflow:hidden}.tab-overview-page{width:calc(100% - 100px);max-width:none;height:calc(100dvh - 82px);min-height:0;padding:20px 0 18px;overflow:hidden}.tab-overview-page .page-title{align-items:center;min-height:76px;padding-bottom:14px}.tab-overview-page .page-title h1{font-size:clamp(32px,3.2vw,44px);line-height:1}.tab-overview-page .page-title .eyebrow{margin-bottom:7px}.tab-overview-page .page-description{max-width:520px;margin-top:7px;font-size:15px;line-height:1.5}.tab-overview-page .primary-button,.tab-overview-page .secondary-button{padding:9px 15px;font-size:15px}.plan-overview-page .plan-switcher{gap:7px;height:44px;margin-top:10px;display:flex;overflow-x:auto}.plan-switcher button{border:1px solid var(--line-soft);color:#77736c;text-align:left;cursor:pointer;background:#ffffff03;border-radius:10px;gap:3px;min-width:150px;padding:7px 11px;display:grid}.plan-switcher button.active{color:#d6cbb8;background:#e8d6b50b;border-color:#e8d6b533}.plan-switcher strong{font-size:15px;font-weight:500}.plan-switcher small{color:#55524d;font-size:15px}.plan-overview-page .trip-plan-card{border-radius:18px;flex-direction:column;height:calc(100% - 90px);margin:12px 0 0;padding:16px 20px;display:flex}.plan-overview-page .plan-switcher+.trip-plan-card{height:calc(100% - 144px)}.plan-overview-page .trip-plan-header{flex:none;align-items:center;padding-bottom:10px}.plan-overview-page .trip-plan-header .eyebrow{margin-bottom:6px}.plan-overview-page .trip-plan-header h2{margin-bottom:5px;font-size:24px}.plan-overview-page .trip-plan-header p:not(.eyebrow){text-overflow:ellipsis;white-space:nowrap;max-width:760px;font-size:15px;line-height:1.4;overflow:hidden}.plan-overview-page .trip-city-row{flex:none;gap:4px 2px;padding:9px 0}.plan-overview-page .trip-city-row button{padding:3px 4px;font-size:15px}.plan-overview-page .trip-day-list{flex:1;grid-template-rows:repeat(4,minmax(0,1fr));grid-template-columns:repeat(2,minmax(0,1fr));column-gap:22px;min-height:0;display:grid;overflow:hidden}.plan-overview-page .trip-day-list li{grid-template-columns:46px minmax(0,1fr);align-items:center;gap:10px;min-height:0;padding:6px 0}.plan-overview-page .trip-day-index{font-size:15px}.plan-overview-page .trip-day-list li>div{min-width:0}.plan-overview-page .trip-day-list small{font-size:15px}.plan-overview-page .trip-day-list p{text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:15px;line-height:1.35;overflow:hidden}.plan-overview-page .trip-day-meta{display:none}.plan-overview-page .trip-plan-actions{flex:none;margin-top:7px;padding-top:8px}.plan-overview-page .trip-plan-actions button{padding:6px 8px;font-size:15px}.plan-overview-page .trip-plan-actions .trip-complete-button{padding:8px 12px}.plan-overview-page .plan-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;max-height:calc(100% - 92px);padding:12px 0 0;overflow:hidden}.plan-overview-page .plan-card{min-height:120px;padding:16px}.travel-calendar-page .calendar-overview{gap:16px;height:34px;padding:7px 0;font-size:15px}.calendar-undated-button{color:#716d66;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;margin-left:auto;padding:4px 7px;font-size:15px;display:inline-flex}.calendar-undated-button:hover{color:var(--warm)}.travel-calendar-page .travel-calendar-layout{grid-template-columns:minmax(0,1fr) 250px;align-items:stretch;gap:12px;height:calc(100% - 110px);min-height:0}.travel-calendar-page .travel-calendar-shell{border-radius:18px;grid-template-rows:auto auto minmax(0,1fr) auto;height:100%;padding:12px;display:grid}.travel-calendar-page .travel-calendar-shell .calendar-toolbar{padding-bottom:5px}.travel-calendar-page .calendar-toolbar{grid-template-columns:30px 1fr 30px;gap:8px}.travel-calendar-page .calendar-toolbar h2{font-size:24px}.travel-calendar-page .calendar-toolbar>button{width:28px;height:28px}.travel-calendar-page .calendar-weekdays span{padding:4px;font-size:15px}.travel-calendar-page .travel-calendar-grid{grid-template-rows:repeat(6,minmax(0,1fr));min-height:0}.travel-calendar-page .travel-calendar-day{gap:3px;min-height:0;padding:5px 6px}.travel-calendar-page .calendar-day-number{font-size:15px}.travel-calendar-page .calendar-day-content{gap:2px}.travel-calendar-page .calendar-entry-pill{padding:2px 4px;font-size:15px}.travel-calendar-page .travel-calendar-legend{gap:11px;min-height:23px;padding:7px 2px 0;font-size:15px}.travel-calendar-page .calendar-agenda{border-radius:18px;height:100%;min-height:0;padding:16px;overflow:hidden}.travel-calendar-page .calendar-agenda header{padding-bottom:12px}.travel-calendar-page .calendar-agenda h2{font-size:24px}.travel-calendar-page .agenda-entry-list{max-height:calc(100% - 78px);overflow-y:auto}.travel-calendar-page .agenda-entry-list button{padding:10px 0}.journey-overview-page .journey-dashboard{grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);gap:12px;height:calc(100% - 88px);padding-top:12px;display:grid}.journey-feature{grid-template-rows:34px minmax(0,1fr);gap:8px;min-height:0;display:grid}.journey-feature>header{justify-content:space-between;align-items:center;padding:0 5px;display:flex}.journey-feature>header .eyebrow{margin:0}.journey-feature>header span{color:#56534e;font-size:15px}.journey-feature .journey-empty-hint{background:radial-gradient(circle at 50% 20%,#e8d6b50d,#0000 48%),#080808;border-radius:18px;align-items:flex-end;height:100%;margin:0;padding:20px}.journey-feature .journey-trip-card{border-radius:18px;grid-template-rows:minmax(0,.8fr) auto;grid-template-columns:1fr;height:100%;min-height:0}.journey-feature .journey-trip-card:not(.has-cover){grid-template-rows:1fr}.journey-feature .journey-trip-cover{min-height:0}.journey-feature .journey-trip-content{padding:20px}.journey-feature .journey-trip-content h2{font-size:24px}.journey-feature .journey-trip-reflection{margin-top:12px;font-size:15px}.journey-feature .journey-city-row{margin-top:13px}.journey-overview-page .historical-archive{border:1px solid var(--line-soft);background:#080808;border-radius:18px;grid-template-rows:55px minmax(0,1fr);height:100%;min-height:0;margin:0;padding:16px;display:grid;overflow:hidden}.journey-overview-page .historical-archive>header{align-items:center;margin:0}.journey-overview-page .historical-archive>header h2{margin-top:5px;font-size:24px}.archive-pagination{align-items:center;gap:6px;display:flex}.archive-pagination span,.archive-pagination em{color:#57544f;font-size:15px;font-style:normal}.archive-pagination button{border:1px solid var(--line);color:#77736d;cursor:pointer;background:0 0;border-radius:50%;place-items:center;width:25px;height:25px;padding:0;display:grid}.archive-pagination button:disabled{cursor:default;opacity:.25}.journey-overview-page .historical-entry-grid{grid-template-rows:repeat(5,minmax(0,1fr));grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;min-height:0}.journey-overview-page .historical-entry-grid button{min-height:0;padding:8px 10px}.journey-overview-page .historical-entry-grid strong,.journey-overview-page .historical-entry-grid small{font-size:15px}.stats-overview-page .stats-dashboard{grid-template-columns:minmax(300px,.7fr) minmax(0,1.3fr);gap:12px;height:calc(100% - 88px);padding-top:12px;display:grid}.stats-overview-page .hero-stat{border:1px solid var(--line-soft);background:radial-gradient(circle at 50% 35%,#e8d6b50b,#0000 42%),#080808;border-radius:18px;place-content:center;height:100%;padding:24px;display:grid}.stats-overview-page .hero-progress-value{justify-content:center;align-items:flex-end;display:flex}.stats-overview-page .hero-stat-number{font-size:clamp(84px,10vw,126px);line-height:.9}.stats-overview-page .hero-stat-percent{margin:0 0 10px 5px;font-size:24px}.stats-overview-page .hero-stat p{margin:18px 0 14px}.stats-detail{grid-template-rows:auto minmax(0,1fr);gap:10px;min-height:0;display:grid}.stats-overview-page .stat-grid{border:1px solid var(--line-soft);border-radius:16px;grid-template-columns:repeat(4,minmax(0,1fr));overflow:hidden}.stats-overview-page .stat-card{border-bottom:1px solid var(--line-soft);gap:6px;padding:14px 12px}.stats-overview-page .stat-card:nth-child(4n){border-right:0}.stats-overview-page .stat-card:nth-child(n+5){border-bottom:0}.stats-overview-page .stat-card strong{font-size:24px}.stats-lower-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-height:0;display:grid}.stats-overview-page .status-breakdown,.stats-overview-page .backup-actions{border:1px solid var(--line-soft);background:#080808;border-radius:16px;width:100%;height:100%;margin:0;padding:15px 17px}.stats-overview-page .status-breakdown h2{margin:0 0 8px;font-size:15px}.stats-overview-page .breakdown-row{padding:8px 0;font-size:15px}.stats-overview-page .backup-actions{align-content:center;gap:7px;display:grid}.stats-overview-page .backup-card{border-radius:11px;margin:0;padding:11px}.stats-overview-page .backup-icon{width:30px;height:30px}}@media (width<=960px){.map-page{height:100dvh;padding:0}.map-stage{height:100dvh;min-height:0}.china-map{max-height:none}}@media (width<=900px){.map-workspace{grid-template-rows:100dvh 0;grid-template-columns:minmax(0,1fr);transition:grid-template-rows .3s cubic-bezier(.22,1,.36,1)}.app-shell.map-active.panel-open .map-workspace{grid-template-rows:52dvh 48dvh;grid-template-columns:minmax(0,1fr)}.map-workspace-map{grid-row:1}.map-workspace-detail{grid-row:2}.panel-backdrop{width:auto;height:calc(48dvh - 10px);inset:0 10px auto}.place-panel{border-radius:18px;box-shadow:0 -18px 64px #00000080}.city-panel .panel-header{align-items:center;height:96px;min-height:96px;padding:16px 24px 12px}.city-panel .panel-header>div{white-space:nowrap;align-items:baseline;gap:12px;min-width:0;display:flex}.city-panel .panel-header .eyebrow{margin:0;font-size:15px}.city-panel .panel-header h1{white-space:nowrap;flex:none;font-size:24px}.city-panel .panel-header .close-button{flex:0 0 24px;width:24px;height:24px}.city-panel .panel-header .close-button svg{width:15px;height:15px}.app-shell.map-active.panel-open .next-destination{display:none}}@media (width<=680px){.app-shell{padding-bottom:78px}.app-shell.map-active{padding-bottom:0}.topbar{height:68px;padding:0 18px}.brand-logo{width:128px}.trip-plan-card{border-radius:20px;margin-top:22px;padding:21px 18px}.trip-plan-header{gap:16px}.trip-plan-header h2{font-size:24px}.trip-plan-header>span{display:none}.trip-day-list li{grid-template-columns:46px minmax(0,1fr);gap:12px}.trip-plan-actions{flex-direction:column;align-items:flex-start}.trip-plan-actions>span{justify-content:space-between;width:100%}.cancelled-plan-list>div{grid-template-columns:minmax(0,1fr) auto}.cancelled-plan-list>div>button:last-child{grid-column:2}.icon-button{width:35px;height:35px}.map-page{height:100vh;min-height:0;padding:0}.home-info-group{gap:18px;top:84px;left:18px}.home-progress{transform-origin:0 100%;bottom:26px;left:18px;transform:scale(.88)}.next-destination{border-radius:14px;gap:10px;min-width:0;padding:11px 12px;bottom:26px;right:18px}.next-destination strong{font-size:15px}.next-destination i{display:none}.home-slogan{max-width:178px;font-size:24px}.map-stage{height:100vh;min-height:0}.china-map{width:100%;max-height:none}.map-page .china-map-wrap{--map-scale:1.04}.map-page .china-map{transform:translateY(22px) scale(var(--map-scale))}.map-hint{bottom:92px}.top-nav{gap:0}.top-nav button{min-width:0;padding:9px 8px;font-size:15px}.top-nav button svg{display:none}.content-page{width:calc(100% - 36px);padding-top:40px}.planner-primary-fields,.planner-choice-grid,.day-fields{grid-template-columns:1fr}.daily-schedule-card{grid-template-columns:1fr;gap:18px;padding:19px 16px}.day-date{grid-template-columns:auto 1fr auto;align-items:center;gap:10px;display:grid}.day-date strong,.day-date i{margin-top:0}.planner-actions{z-index:4;background:linear-gradient(transparent, var(--bg) 22%);padding:14px 0;position:sticky;bottom:0}.calendar-page{width:calc(100% - 24px);padding-top:22px}.subpage-header{grid-template-columns:1fr auto;gap:18px}.subpage-header>div{text-align:left;grid-area:2/1/auto/-1}.subpage-header>.primary-button{grid-area:1/2}.calendar-shell{border-radius:18px;padding:12px}.calendar-day{min-height:58px;padding:8px 6px;font-size:15px}.calendar-day small{font-size:15px}.calendar-legend{flex-wrap:wrap;gap:10px 14px}.calendar-legend a{width:100%;margin-left:0}.calendar-overview{gap:10px 16px}.travel-calendar-layout{grid-template-columns:1fr}.travel-calendar-shell{padding:10px}.travel-calendar-day{min-height:72px;padding:7px 5px}.calendar-entry-pill{padding:2px 3px;font-size:15px}.calendar-agenda{border-radius:18px;min-height:220px;padding:18px}.agenda-empty{min-height:100px}.undated-calendar-section>header{display:block}.undated-section-actions{flex-direction:column;align-items:flex-start;max-width:none;margin-top:10px}.undated-section-actions p{text-align:left}.undated-groups,.undated-entry-grid{grid-template-columns:1fr}.destination-picker-page{height:calc(100vh - 68px);min-height:540px}.picker-header{grid-template-columns:1fr auto;width:calc(100% - 32px);top:16px}.picker-header>div{text-align:left;grid-area:2/1/auto/-1;margin-top:12px}.picker-header h1{font-size:24px}.picker-header .primary-button{grid-area:1/2}.destination-picker-page .china-map-wrap{--map-scale:.92}.picker-selection-tray{width:calc(100% - 32px);bottom:14px}.page-title{padding-bottom:28px;display:block}.page-title .primary-button{margin-top:20px}.plan-grid{grid-template-columns:1fr}.completion-card{border-radius:19px;padding:20px 16px}.completion-card>header{flex-direction:column;align-items:flex-start;gap:8px}.completion-date-grid,.completion-memory-grid,.completion-status>div{grid-template-columns:1fr}.completion-memory-grid .photo-field{min-height:190px}.completion-actions{background:0 0;position:static}.journey-trip-card.has-cover{grid-template-columns:1fr}.journey-trip-cover{min-height:210px}.journey-trip-content{padding:22px 18px}.journey-trip-content>header>span{display:none}.historical-year-group{grid-template-columns:1fr;gap:9px}.historical-year-group>h3{margin-top:0}.historical-entry-grid,.backfill-layout{grid-template-columns:1fr}.backfill-city-list{max-height:185px}.backfill-city-list>div{max-height:125px}.backfill-editor{padding:21px 16px}.backfill-date-fields{grid-template-columns:1fr}.timeline-entry{grid-template-columns:18px minmax(0,1fr) 76px;gap:12px}.timeline-photo{width:76px;height:76px}.timeline-content h2{font-size:24px}.stat-grid{grid-template-columns:1fr 1fr}.stat-card:nth-child(2),.stat-card:nth-child(2n){border-right:0}.stat-card:nth-child(-n+6){border-bottom:1px solid var(--line-soft)}.panel-header{min-height:116px;padding:24px 20px 20px}.place-form{padding:0 20px 100px}.panel-footer{padding:13px 20px}.field-grid.two-columns{grid-template-columns:1fr}}@media (width<=480px){.city-panel .panel-header{padding-bottom:0}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.topbar-right{gap:9px}.member-menu{position:relative}.member-trigger{border:1px solid var(--line);color:#c7c1b6;cursor:pointer;background:#0b0b0b;border-radius:50%;place-items:center;width:35px;height:35px;font-size:15px;display:grid;position:relative}.sync-dot{background:#696762;border-radius:50%;width:6px;height:6px;display:inline-block}.member-trigger .sync-dot{border:2px solid var(--bg);box-sizing:content-box;position:absolute;bottom:1px;right:-1px}.sync-dot.synced{background:#bba98b;box-shadow:0 0 7px #e8d6b557}.sync-dot.saving{background:#eee9df;animation:.9s ease-in-out infinite alternate sync-pulse}.sync-dot.offline,.sync-dot.conflict{background:#b7766d}.member-popover{z-index:60;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);background:#0d0d0df5;border:1px solid #ffffff1b;border-radius:17px;width:258px;animation:.18s cubic-bezier(.22,1,.36,1) popover-in;position:absolute;top:46px;right:0;overflow:hidden;box-shadow:0 24px 70px #00000094}.member-popover header{border-bottom:1px solid var(--line-soft);grid-template-columns:auto 1fr auto;align-items:center;gap:11px;padding:15px;display:grid}.member-avatar{width:32px;height:32px;color:var(--warm);background:#e8d6b50e;border:1px solid #e8d6b529;border-radius:50%;place-items:center;font-size:15px;display:grid}.member-popover strong,.member-popover small{display:block}.member-popover strong{color:#d9d5cc;margin-bottom:3px;font-size:15px;font-weight:500}.member-popover small{color:#5c5954;font-size:15px}.member-popover header button{color:#5d5a55;cursor:pointer;background:0 0;border:0;padding:4px}.member-pair,.sync-state-row{color:#77736d;align-items:center;gap:8px;padding:10px 15px;font-size:15px;display:flex}.member-pair{padding-top:13px}.sync-state-row small{margin-left:auto}.member-popover nav{border-top:1px solid var(--line-soft);padding:5px 7px 8px}.member-popover nav button{color:#85817a;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:9px;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;width:100%;padding:10px;font-size:15px;display:grid}.member-popover nav button:hover{color:#d6d1c8;background:#ffffff09}.member-popover nav button:last-child{grid-template-columns:auto 1fr}.login-screen,.shared-loading-screen{background:radial-gradient(circle at 50% 36%, #e8d6b512, transparent 27%), var(--bg);place-items:center;min-height:100dvh;padding:28px;display:grid}.login-panel{background:#0a0a0ae6;border:1px solid #ffffff16;border-radius:26px;gap:18px;width:min(390px,100%);padding:38px;display:grid;box-shadow:0 36px 110px #00000085}.login-panel>img,.shared-loading-screen img{width:132px;height:auto}.login-panel>div{padding:15px 0 7px}.login-panel .eyebrow{margin-bottom:11px}.login-panel h1{margin-bottom:11px;font-family:Songti SC,STSong,serif;font-size:24px;font-weight:500}.login-panel>div>p:last-child{color:#6e6b65;margin:0;font-size:15px;line-height:1.7}.login-panel label,.compact-dialog label{gap:7px;display:grid}.login-panel label>span,.compact-dialog label>span{color:#77746e;letter-spacing:.08em;font-size:15px}.login-panel .primary-button{margin-top:3px}.form-error{color:#c9867e;margin:-4px 0 0;font-size:15px;line-height:1.5}.shared-loading-screen{color:#68655f;letter-spacing:.08em;align-content:center;gap:20px;font-size:15px}.shared-loading-screen img{opacity:.75}.compact-dialog{background:#0c0c0c;border:1px solid #ffffff1b;border-radius:20px;align-self:center;width:min(410px,100% - 34px);margin:auto;padding:25px;animation:.22s cubic-bezier(.22,1,.36,1) dialog-in;box-shadow:0 30px 100px #000000a8}.compact-dialog>header{color:#d7d2c8;justify-content:space-between;align-items:center;margin-bottom:21px;font-size:15px;font-weight:500;display:flex}.compact-dialog>header span{align-items:center;gap:9px;display:inline-flex}.compact-dialog>header button{color:#66635d;cursor:pointer;background:0 0;border:0}.password-dialog{gap:15px;display:grid}.compact-dialog label small{color:#4d4b47;font-size:15px}.compact-dialog>footer{justify-content:flex-end;gap:8px;margin-top:8px;display:flex}.conflict-dialog p{color:#8b8780;margin-bottom:16px;font-size:15px;line-height:1.75}.conflict-dialog>small{color:#5a5752;font-size:15px}.participant-picker{border:0;margin:20px 0 0;padding:0}.participant-picker legend{color:#77746f;letter-spacing:.06em;margin-bottom:9px;padding:0;font-size:15px}.participant-picker>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.participant-picker button{border:1px solid var(--line);color:#66635e;text-align:left;cursor:pointer;background:#0c0c0c;border-radius:11px;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;min-width:0;padding:10px 12px;font-size:15px;display:grid}.participant-picker button.selected{color:#c7bda9;background:#e8d6b50b;border-color:#e8d6b533}.visit-section-title{justify-content:space-between;align-items:center;gap:12px;margin-bottom:13px;display:flex}.visit-section-title h2{margin:0}.visit-section-title button,.visit-switcher button,.visited-place-list.editable>button,.inline-place-input button{color:#837a6c;cursor:pointer;background:0 0;border:0;font-size:15px}.visit-section-title button{align-items:center;gap:5px;display:inline-flex}.visit-switcher{flex-wrap:wrap;gap:7px;margin-bottom:17px;display:flex}.visit-switcher button{border:1px solid var(--line);color:#615e58;border-radius:999px;padding:7px 10px}.visit-switcher button.active{color:#c6bba7;background:#e8d6b50b;border-color:#e8d6b533}.danger-text-button{color:#966f69!important}.visited-place-list.editable>button{color:#b7aa95;background:#e8d6b509;border:1px solid #e8d6b524;border-radius:999px;align-items:center;gap:6px;padding:8px 11px;display:inline-flex}.inline-place-input{border:1px solid var(--line);border-radius:999px;align-items:center;min-width:min(210px,100%);display:flex;overflow:hidden}.inline-place-input input{background:0 0;border:0;flex:1;min-width:0;height:32px;font-size:15px}.inline-place-input button{padding:0 11px}.management-page{grid-template-rows:auto auto minmax(0,1fr);width:min(1120px,100% - 64px);height:calc(100dvh - 82px);min-height:0;padding:20px 0 24px;display:grid;overflow:hidden}.management-header{border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:flex-end;gap:24px;padding-bottom:16px;display:flex}.management-header .eyebrow{margin-bottom:8px}.management-header h1{margin:0;font-family:Songti SC,STSong,serif;font-size:36px;font-weight:500}.management-header p:last-child{color:#68655f;margin:8px 0 0;font-size:15px}.management-toolbar{grid-template-columns:auto minmax(180px,1fr) auto;align-items:center;gap:18px;padding:13px 0;display:grid}.management-toolbar nav{gap:3px;display:flex}.management-toolbar nav button{color:#66635e;cursor:pointer;background:0 0;border:0;border-radius:999px;padding:7px 11px;font-size:15px}.management-toolbar nav button.active{color:var(--warm);background:#e8d6b514}.management-search{color:#504e49;justify-self:end;align-items:center;gap:8px;width:min(300px,100%);display:flex}.management-search input{border:0;border-bottom:1px solid var(--line);background:0 0;border-radius:0;width:100%;height:32px;font-size:15px}.management-body{border:1px solid var(--line-soft);background:#080808a3;border-radius:18px;min-height:0;overflow:hidden}.management-list,.history-list{height:100%;padding:5px 12px;overflow-y:auto}.management-list article,.history-list article{border-bottom:1px solid var(--line-soft);grid-template-columns:auto minmax(170px,1.5fr) minmax(120px,.7fr) auto auto;align-items:center;gap:15px;min-height:64px;padding:10px 6px;display:grid}.management-list article:last-child,.history-list article:last-child{border-bottom:0}.management-list article>div:nth-child(2) span,.management-list article>div:nth-child(2) strong,.management-list article>div:nth-child(2) small,.history-list article strong,.history-list article small{display:block}.management-list article>div:nth-child(2) span{color:#4f4d49;letter-spacing:.1em;margin-bottom:3px;font-size:15px}.management-list article>div:nth-child(2) strong,.history-list article strong{color:#c7c2b9;margin-bottom:4px;font-size:15px;font-weight:500}.management-list article small,.history-list article small{color:#56534e;font-size:15px}.management-list article p,.history-list article p{color:#6c6963;align-items:center;gap:6px;margin:0;font-size:15px;display:flex}.management-list article em{color:#77736b;font-size:15px;font-style:normal}.management-actions{justify-content:flex-end;gap:6px;display:flex}.management-actions button,.history-list article button{border:1px solid var(--line);color:#77736c;cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:5px;padding:7px 9px;font-size:15px;display:inline-flex}.history-list article{grid-template-columns:auto minmax(180px,1fr) minmax(120px,.5fr) auto}.management-empty{color:#4d4b47;align-content:center;place-items:center;gap:10px;min-height:100%;font-size:15px;display:grid}.city-context{color:#68655f;align-items:center;gap:5px;font-size:15px;display:inline-flex}.filing-footer{z-index:18;white-space:nowrap;align-items:center;gap:12px;display:flex;position:fixed;bottom:7px;left:50%;transform:translate(-50%)}.filing-footer a{color:#45433f;font-size:15px;text-decoration:none;transition:color .18s}.filing-footer a:hover{color:#85817a}@keyframes sync-pulse{to{opacity:.35}}@keyframes popover-in{0%{opacity:0;transform:translateY(-5px)scale(.98)}}@keyframes dialog-in{0%{opacity:0;transform:translateY(7px)scale(.98)}}@media (width<=920px){.topbar-right{gap:4px}.management-page{width:calc(100% - 36px)}.management-list article{grid-template-columns:auto minmax(0,1fr) auto}.management-list article>p,.management-list article>em{display:none}}@media (width<=680px){.member-trigger{width:32px;height:32px}.member-popover{position:fixed;top:62px;right:12px}.login-panel{border-radius:22px;padding:28px 22px}.participant-picker>div{grid-template-columns:1fr}.management-page{height:calc(100dvh - 68px);padding:12px 0 14px}.management-header h1{font-size:24px}.management-header p:last-child{display:none}.management-toolbar{grid-template-columns:1fr auto;gap:9px}.management-search{grid-area:2/1/auto/-1;width:100%}.management-list article{grid-template-columns:auto minmax(0,1fr);gap:10px}.management-actions{grid-column:2;justify-content:flex-start}.history-list article{grid-template-columns:auto minmax(0,1fr) auto}.history-list article p{display:none}.filing-footer{gap:8px;bottom:4px}.filing-footer a{font-size:15px}}.app-shell.map-active .topbar{height:72px}.app-shell.map-active .brand-logo{opacity:.92;width:126px}.app-shell.map-active .topbar-right{gap:10px}.app-shell.map-active{background:#050505}.app-shell.map-active .member-trigger{color:#ffffffb8}.app-shell.map-active .sync-dot.synced{background:#ffffffb8;box-shadow:0 0 7px #fff3}.app-shell.map-active .top-nav{gap:6px}.app-shell.map-active .top-nav button{color:#ffffff57;border-radius:50%;justify-content:center;width:36px;height:36px;padding:0}.app-shell.map-active .top-nav button>span{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.app-shell.map-active .top-nav button:after{background:#ffffffe0;border-radius:50%;width:3px;height:3px;bottom:1px}.app-shell.map-active .top-nav button:hover{color:#ffffffb8;background:#ffffff09}.app-shell.map-active .top-nav button.active{color:#ffffffeb}.app-shell.map-active .home-info-group{transition:opacity .18s,visibility .18s;top:106px}.app-shell.map-active .home-slogan{color:#ffffffdb;letter-spacing:-.04em;text-shadow:none;font-size:clamp(28px,2.35vw,36px)}.app-shell.map-active .home-progress{pointer-events:none;width:max-content;margin-top:27px;position:static}.app-shell.map-active .progress-summary{display:block}.app-shell.map-active .progress-summary>div:last-child{column-gap:5px;min-height:0}.app-shell.map-active .progress-summary strong{color:#ffffffd1;letter-spacing:-.025em;font-family:inherit;font-size:24px;font-weight:450}.app-shell.map-active .progress-summary>div:last-child>span{color:#ffffff57;font-size:15px}.app-shell.map-active .progress-summary small{color:#ffffff38;letter-spacing:.015em;margin-top:4px;font-size:15px}.app-shell.map-active .next-destination{min-width:0;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;opacity:.68;background:0 0;border:0;border-radius:0;gap:12px;padding:5px 0}.app-shell.map-active .next-destination:hover{opacity:1;background:0 0;border-color:#0000}.app-shell.map-active .next-destination small{color:#ffffff38;font-size:15px}.app-shell.map-active .next-destination strong{color:#ffffffc2;font-family:inherit;font-size:15px;font-weight:450}.app-shell.map-active .next-destination i{color:#ffffff40;font-size:15px}.app-shell.map-active .next-destination>svg{color:#ffffff57}.china-map-wrap.is-minimal .map-ambient,.china-map-wrap.is-minimal .city-glow-layer,.china-map-wrap.is-minimal .city-highlight-boundary-layer,.china-map-wrap.is-minimal .map-gold-vein-layer,.china-map-wrap.is-minimal .hover-particle-burst{display:none}.china-map-wrap.is-minimal .china-map{filter:none}.china-map-wrap.is-minimal .city-area{fill:#0b0b0b;stroke:#ffffff1b;stroke-width:.48px}.china-map-wrap.is-minimal .city-area:hover,.china-map-wrap.is-minimal .city-area:focus-visible{fill:#161616;stroke:#ffffff94;stroke-width:.95px;filter:none}.china-map-wrap.is-minimal .city-area.status-planned{fill:#c9b0794d;stroke:#e0c99775;stroke-width:.58px;filter:none}.china-map-wrap.is-minimal .city-area.status-passed{fill:#6d5730;stroke:#0000005c;stroke-width:.56px;filter:none}.china-map-wrap.is-minimal .city-area.status-stayed{fill:#b49354;stroke:#0000007a;stroke-width:.6px;filter:none}.china-map-wrap.is-minimal .city-area.status-explored{fill:#e2ca8f;stroke:#00000094;stroke-width:.64px;filter:none}.china-map-wrap.is-minimal .city-area.status-passed,.china-map-wrap.is-minimal .city-area.status-stayed,.china-map-wrap.is-minimal .city-area.status-explored{fill-opacity:.58}.china-map-wrap.is-minimal .city-area.visit-level-2{fill-opacity:.72}.china-map-wrap.is-minimal .city-area.visit-level-3{fill-opacity:.86}.china-map-wrap.is-minimal .city-area.visit-level-4{fill-opacity:1}.china-map-wrap.is-minimal .city-area.status-planned:hover,.china-map-wrap.is-minimal .city-area.status-planned:focus-visible{fill:#dabf847a;stroke:#f6e0b1db;filter:none}.china-map-wrap.is-minimal .city-area.status-passed:hover,.china-map-wrap.is-minimal .city-area.status-passed:focus-visible,.china-map-wrap.is-minimal .city-area.status-stayed:hover,.china-map-wrap.is-minimal .city-area.status-stayed:focus-visible,.china-map-wrap.is-minimal .city-area.status-explored:hover,.china-map-wrap.is-minimal .city-area.status-explored:focus-visible{fill:#f1d99f;stroke:#ffeec9eb;filter:drop-shadow(0 0 7px #ddb86829)}.china-map-wrap.is-minimal .city-area:is(.status-passed,.status-stayed,.status-explored).visit-level-1:hover,.china-map-wrap.is-minimal .city-area:is(.status-passed,.status-stayed,.status-explored).visit-level-1:focus-visible{stroke-width:.95px;filter:drop-shadow(0 0 5px #ddb86824)}.china-map-wrap.is-minimal .city-area:is(.status-passed,.status-stayed,.status-explored).visit-level-2:hover,.china-map-wrap.is-minimal .city-area:is(.status-passed,.status-stayed,.status-explored).visit-level-2:focus-visible{stroke-width:1.2px;filter:drop-shadow(0 0 4px #eecf8e33)drop-shadow(0 0 9px #ddb8681f)}.china-map-wrap.is-minimal .city-area:is(.status-passed,.status-stayed,.status-explored).visit-level-3:hover,.china-map-wrap.is-minimal .city-area:is(.status-passed,.status-stayed,.status-explored).visit-level-3:focus-visible{stroke-width:1.45px;filter:drop-shadow(0 0 4px #f6da9e42)drop-shadow(0 0 12px #ddb8682e)}.china-map-wrap.is-minimal .city-area:is(.status-passed,.status-stayed,.status-explored).visit-level-4:hover,.china-map-wrap.is-minimal .city-area:is(.status-passed,.status-stayed,.status-explored).visit-level-4:focus-visible{stroke-width:1.7px;filter:drop-shadow(0 0 5px #ffe3a652)drop-shadow(0 0 16px #ddb86838)}.china-map-wrap.is-minimal.has-route-focus .city-area.status-planned:not(:hover):not(:focus-visible),.china-map-wrap.is-minimal.has-route-focus .city-area.status-passed:not(:hover):not(:focus-visible),.china-map-wrap.is-minimal.has-route-focus .city-area.status-stayed:not(:hover):not(:focus-visible),.china-map-wrap.is-minimal.has-route-focus .city-area.status-explored:not(:hover):not(:focus-visible){fill:#fff;fill-opacity:.1}.china-map-wrap.is-minimal.has-route-focus .city-area.is-route-related.status-planned:not(:hover):not(:focus-visible){fill:#dabf847a;fill-opacity:1;stroke:#f6e0b1db;opacity:.3}.china-map-wrap.is-minimal.has-route-focus .city-area.is-route-related.status-passed:not(:hover):not(:focus-visible),.china-map-wrap.is-minimal.has-route-focus .city-area.is-route-related.status-stayed:not(:hover):not(:focus-visible),.china-map-wrap.is-minimal.has-route-focus .city-area.is-route-related.status-explored:not(:hover):not(:focus-visible){fill:#f1d99f;fill-opacity:1;stroke:#ffeec9eb;opacity:.3;filter:drop-shadow(0 0 4px #ddb86814)}.china-map-wrap.is-minimal .province-outline,.china-map-wrap.is-minimal .province-outline.status-stayed,.china-map-wrap.is-minimal .province-outline.status-explored{stroke:#ffffff3d;stroke-width:.9px}.china-map-wrap.is-minimal .map-hover-card i{color:#ffffffb8}.china-map-wrap.is-minimal .map-zoom-controls{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;opacity:.46;background:0 0;border:0;gap:0;padding:0;transition:opacity .18s;right:clamp(8px,1.6vw,24px)}.china-map-wrap.is-minimal .map-zoom-controls:hover{opacity:.88}.app-shell.map-active.panel-open .home-info-group,.app-shell.map-active.panel-open .china-map-wrap.is-minimal .map-zoom-controls{opacity:0;visibility:hidden;pointer-events:none}.china-map-wrap.is-minimal .map-zoom-controls button{border-radius:50%;width:30px;min-height:30px}.china-map-wrap.is-minimal .map-zoom-controls .map-zoom-level{color:#ffffff6b;min-height:34px}.china-map-wrap.is-minimal .map-zoom-controls .map-route-visibility{border-top-color:#ffffff1a;margin-top:4px}@media (width<=680px){.route-stop-editor>header{flex-direction:column;align-items:flex-start;gap:8px}.route-stop-editor li{grid-template-columns:28px minmax(70px,1fr) auto}.route-stop-editor li>small{display:none}.route-stop-editor li>div{justify-content:flex-end}.app-shell.map-active .topbar{--page-gutter:16px;height:62px}.app-shell.map-active .brand-logo{width:98px}.app-shell.map-active .top-nav{gap:0}.app-shell.map-active .top-nav button{width:30px;height:30px;padding:0}.app-shell.map-active .top-nav button svg{width:16px;height:16px;display:block}.app-shell.map-active .home-info-group{top:78px;left:18px}.app-shell.map-active .home-slogan{max-width:none;font-size:24px}.app-shell.map-active .home-progress{margin-top:16px;transform:none}.app-shell.map-active .next-destination{padding:3px 0;bottom:28px;right:18px}.app-shell.map-active .next-destination i,.app-shell.map-active .next-destination small{display:none}}
