:root{color-scheme:dark;--bg: #07120f;--surface: #10231e;--surface-2: #162e27;--ink: #f6efe2;--muted: #b7c0ad;--line: rgba(219, 187, 104, .2);--river: #d9b45e;--river-dark: #f1d486;--leaf: #8ea06f;--brick: #d9b45e;--gold: #d9b45e;--lotus: #b55b4f;--shadow: 0 24px 70px rgba(0, 0, 0, .34);--radius: 10px}*{box-sizing:border-box}html{min-height:100%;background:var(--bg)}body{min-height:100vh;margin:0;color:var(--ink);font-family:Microsoft YaHei,PingFang SC,Noto Sans CJK SC,Aptos,Arial,sans-serif;letter-spacing:0}.app-hidden{display:none!important}.login-screen{--login-pad: clamp(18px, 4vw, 56px);--login-content-width: calc(100vw - var(--login-pad) * 2);--login-card-width: min(1680px, var(--login-content-width));--login-card-min-height: min(760px, calc(100vh - 72px) );--login-outer-x: max(var(--login-pad), calc((100vw - var(--login-card-width)) / 2));--login-outer-y: max(18px, calc((100vh - var(--login-card-min-height)) / 2));position:fixed;inset:0;z-index:50;display:grid;min-height:100vh;place-items:center;overflow:hidden;background:linear-gradient(115deg,#eaf4fff5,#f8fcfffa 48%,#e2effff5),#eef2ea;padding:var(--login-pad)}.login-screen:before,.login-screen:after{content:"";position:absolute;pointer-events:none}.login-screen:before{right:-120px;top:-80px;width:520px;height:320px;background:linear-gradient(142deg,transparent 0 24%,rgba(47,122,98,.32) 25% 27%,transparent 28%),linear-gradient(24deg,transparent 0 37%,rgba(123,90,37,.24) 38% 41%,transparent 42%),linear-gradient(158deg,transparent 0 56%,rgba(25,90,72,.16) 57% 60%,transparent 61%);clip-path:polygon(0 24%,100% 0,88% 100%,16% 78%);opacity:.9}.login-screen:after{left:0;right:0;bottom:0;height:18vh;background:linear-gradient(170deg,#2f7a6257,#2f7a6200 54%),linear-gradient(8deg,#2f7a622e,#2f7a6200 42%);clip-path:polygon(0 36%,30% 64%,48% 24%,72% 70%,100% 42%,100% 100%,0 100%)}.login-bg-grid{position:absolute;inset:0;background:linear-gradient(90deg,rgba(47,122,98,.08) 1px,transparent 1px),linear-gradient(0deg,rgba(47,122,98,.08) 1px,transparent 1px);background-size:58px 58px;-webkit-mask-image:radial-gradient(circle at 60% 42%,#000 0,transparent 62%);mask-image:radial-gradient(circle at 60% 42%,#000 0,transparent 62%)}.login-network{position:absolute;width:360px;height:240px;opacity:.46;background:linear-gradient(28deg,transparent 0 47%,rgba(47,122,98,.42) 48% 50%,transparent 51%),linear-gradient(145deg,transparent 0 45%,rgba(47,122,98,.34) 46% 48%,transparent 49%),radial-gradient(circle at 12% 58%,rgba(47,122,98,.46) 0 5px,transparent 6px),radial-gradient(circle at 48% 34%,rgba(47,122,98,.42) 0 5px,transparent 6px),radial-gradient(circle at 82% 72%,rgba(47,122,98,.38) 0 5px,transparent 6px);animation:networkDrift 7s ease-in-out infinite alternate}.network-a{right:46px;top:40px}.network-b{left:72px;bottom:28px;transform:rotate(180deg);animation-delay:-2s}.login-card{position:relative;z-index:3;display:grid;width:min(1680px,100%);min-height:min(760px,calc(100vh - 72px));grid-template-columns:minmax(520px,1.15fr) minmax(430px,.75fr);align-items:center;gap:clamp(24px,4vw,72px);border:1px solid rgba(47,122,98,.82);border-radius:28px;background:#ffffffe0;box-shadow:0 28px 80px #2b4a3b29;padding:clamp(34px,4vw,72px);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.login-showcase{position:relative;z-index:2;min-height:560px;overflow:hidden;border-radius:18px;background:linear-gradient(180deg,#f5fafff5,#e4f0ffd1),#f6fbff}#login-orbit-canvas{position:absolute;inset:0;width:100%;height:100%}.wuhan-map-stage{position:absolute;inset:52px 42px 118px;border:1px solid rgba(47,122,98,.3);border-radius:18px;background:linear-gradient(90deg,rgba(47,122,98,.07) 1px,transparent 1px),linear-gradient(0deg,rgba(47,122,98,.07) 1px,transparent 1px),#ffffff61;background-size:42px 42px;box-shadow:inset 0 0 80px #2f7a6229}.river-flow{position:absolute;left:-10%;width:120%;border-radius:999px;background:repeating-linear-gradient(90deg,rgba(255,255,255,.45) 0 24px,transparent 24px 54px),linear-gradient(90deg,#6f8f5fdb,#2f7a62d1,#c79a3fd1);box-shadow:0 18px 48px #2f7a622e;animation:riverMove 8s linear infinite}.river-main{top:220px;height:74px;transform:rotate(-8deg)}.river-branch{top:170px;height:34px;transform:rotate(20deg);opacity:.72}.metro-glow{position:absolute;height:4px;border-radius:999px;background:linear-gradient(90deg,#2f7a621a,#2f7a62,#c79a3f3d);box-shadow:0 0 18px #2f7a6266}.line-one{left:82px;top:122px;width:72%;transform:rotate(11deg)}.line-two{left:68px;bottom:104px;width:76%;transform:rotate(-13deg);background:linear-gradient(90deg,#2f7a621a,#8ea86d,#e8e2c742);box-shadow:0 0 18px #2f7a6257}.city-tower,.city-node{position:absolute;display:grid;min-width:72px;min-height:34px;place-items:center;border:2px solid #fff;border-radius:999px;background:#ffffffe0;color:#2d4f7f;box-shadow:0 14px 32px #446fb429;font-size:13px;font-weight:900;animation:nodePulse 2.8s ease-in-out infinite}.city-tower{left:42%;bottom:74px;min-height:52px;border-radius:8px;background:#2f7a62;color:#fffdf7}.node-museum{left:52%;top:88px}.node-eastlake{right:70px;top:150px;animation-delay:-.7s}.node-river{left:92px;bottom:112px;animation-delay:-1.2s}.route-spark{position:absolute;width:12px;height:12px;border-radius:50%;background:#fff;box-shadow:0 0 0 7px #c79a3f2e,0 0 24px #2f7a62c7}.spark-one{top:118px;left:110px;animation:sparkOne 5.8s linear infinite}.spark-two{bottom:102px;left:120px;animation:sparkTwo 6.6s linear infinite}.spark-three{top:225px;right:90px;animation:sparkThree 7.2s linear infinite}.login-model-layer{position:absolute;inset:0;z-index:6;overflow:hidden;pointer-events:none}.login-model-stage{position:absolute!important;overflow:visible!important;min-height:0!important;background:transparent!important;filter:drop-shadow(0 18px 22px rgba(43,74,59,.16))}.login-model-stage:after,.login-model-stage.model-loading:before,.login-model-stage.model-error:before{display:none}.login-model-stage .model-canvas{position:absolute;inset:0}.login-model-blossom{left:max(10px,calc(var(--login-outer-x) * .08));top:clamp(6px,1.4vh,18px);width:clamp(220px,14vw,310px);height:clamp(126px,14vh,166px)}.login-model-yellow{right:max(8px,calc(var(--login-outer-x) * .03));bottom:clamp(0px,2vh,22px);width:clamp(150px,9.4vw,212px);height:clamp(216px,28vh,306px);transform:none}.login-model-doupi{left:max(4px,calc(var(--login-outer-x) * .03));bottom:clamp(0px,1.6vh,18px);width:clamp(360px,23vw,520px);height:clamp(178px,19.5vh,238px)}.login-model-suanniao{right:max(-10px,calc(var(--login-outer-x) * .02 - 10px));top:-58px;width:clamp(176px,11vw,246px);height:clamp(266px,33vh,362px)}.login-model-reganmian{top:8px;left:50%;width:clamp(300px,21vw,450px);height:clamp(196px,22vh,256px);transform:translate(-50%)}.login-model-bianzhong{bottom:clamp(12px,2.2vh,28px);left:50%;width:clamp(320px,22vw,480px);height:clamp(170px,20vh,230px);transform:translate(-50%)}.showcase-caption{position:absolute;left:34px;right:34px;bottom:26px;border:1px solid rgba(47,122,98,.72);border-radius:14px;background:#ffffffc2;padding:18px 20px;box-shadow:0 16px 36px #2b4a3b1f}.showcase-caption span{color:#2f7a62;font-size:13px;font-weight:900}.showcase-caption strong{display:block;margin-top:4px;font-size:clamp(20px,2.1vw,32px)}.showcase-caption p{margin:8px 0 0;color:#69809f;line-height:1.6}.login-panel{position:relative;z-index:2;width:min(520px,100%);justify-self:center}.login-title-row{display:flex;align-items:center;gap:18px;margin-bottom:18px}.platform-logo{position:relative;display:grid;width:58px;height:58px;place-items:center;border-radius:16px;background:linear-gradient(135deg,#2f7a62,#8ea86d);box-shadow:0 16px 34px #2f7a623d}.platform-logo span{position:absolute;width:12px;height:34px;border-radius:999px;background:#ffffffeb;transform-origin:50% 28px}.platform-logo span:nth-child(1){transform:rotate(0) translateY(-8px)}.platform-logo span:nth-child(2){transform:rotate(118deg) translateY(-8px)}.platform-logo span:nth-child(3){transform:rotate(238deg) translateY(-8px)}.login-title-row h1{margin:0;color:#202a3a;font-size:clamp(30px,3vw,44px);line-height:1.1}.login-title-row p{margin:8px 0 0;color:#7d90ad;font-weight:800}.login-tabs{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:0;margin:28px 0 46px;border-bottom:4px solid #d5ddea}.login-tab{min-height:48px;border:0;background:transparent;color:#8a95a5;font-size:22px;font-weight:700}.login-tab.active{position:relative;color:#7eabf2}.login-mode-title{position:relative;margin:28px 0 34px;border-bottom:4px solid #d5ddea;color:#7eabf2;font-size:26px;font-weight:900;line-height:58px;text-align:center}.login-mode-title:after{content:"";position:absolute;right:18%;bottom:-4px;left:18%;height:4px;background:#7eabf2}.login-tab.active:after{content:"";position:absolute;right:0;bottom:-4px;left:0;height:4px;background:#7eabf2}.login-field{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;min-height:92px;border-bottom:1px solid #dfe5ee}.login-field-icon{color:#cbd5e2;font-size:18px}.login-field input{min-height:58px;border:0;background:transparent;color:#293447;font-size:22px;box-shadow:none}.login-field input::placeholder{color:#a6afbd}.captcha-row{grid-template-columns:42px minmax(0,1fr) 168px;gap:12px}#captcha-canvas{width:168px;height:54px;border-radius:4px;background:#eef3ee;cursor:pointer}.login-button{width:82%;min-height:68px;margin:64px auto 0;display:flex;align-items:center;justify-content:center;border:0;border-radius:999px;background:linear-gradient(90deg,#8ea86d,#6f8f5f);color:#fff;box-shadow:0 14px 28px #2b4a3b57;font-size:26px;font-weight:900}.login-tip{min-height:22px;margin:18px 0 0;color:#8794a8;font-size:14px;text-align:center}@keyframes networkDrift{0%{transform:translateZ(0)}to{transform:translate3d(-20px,14px,0)}}@keyframes riverMove{0%{background-position:0 0,0 0}to{background-position:220px 0,0 0}}@keyframes nodePulse{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes sparkOne{0%{transform:translate(0)}50%{transform:translate(380px,64px)}to{transform:translate(620px,34px)}}@keyframes sparkTwo{0%{transform:translate(0)}45%{transform:translate(310px,-82px)}to{transform:translate(610px,-142px)}}@keyframes sparkThree{0%{transform:translate(0)}50%{transform:translate(-300px,80px)}to{transform:translate(-590px,26px)}}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{display:grid;min-height:100vh;grid-template-columns:278px minmax(0,1fr)}.sidebar{position:sticky;top:0;display:flex;height:100vh;flex-direction:column;gap:24px;border-right:1px solid rgba(47,122,98,.9);background:linear-gradient(180deg,#fffffff5,#eef6fff5),#fffdf7;color:var(--ink);padding:24px 18px}.brand{display:flex;align-items:center;gap:12px;min-height:52px}.brand-mark{display:grid;width:44px;height:44px;place-items:center;border:1px solid rgba(47,122,98,.18);background:linear-gradient(135deg,#2f7a62,#8ea86d);color:#fffdf7;font-weight:900}.brand strong{display:block;font-size:18px}.brand span{display:block;margin-top:2px;color:#6f83a0;font-size:13px}.nav-list{display:grid;gap:8px}.nav-item,.ghost-button,.primary-button,.icon-button,.segment{border:0;border-radius:var(--radius);transition:transform .18s ease,background .18s ease,border-color .18s ease,color .18s ease}.nav-item{display:flex;align-items:center;gap:12px;width:100%;min-height:42px;padding:10px 12px;background:transparent;color:#52667f;text-align:left}.nav-item:hover,.nav-item.active{background:#2f7a621f;color:var(--river-dark)}.nav-icon{display:grid;width:24px;height:24px;place-items:center;border-radius:6px;background:#2f7a621f;color:var(--river-dark);font-size:15px}.sidebar-card{margin-top:auto;border:1px solid rgba(47,122,98,.18);border-radius:var(--radius);background:#ffffffb8;padding:16px}.sidebar-card p{margin:10px 0 14px;color:var(--muted);font-size:14px;line-height:1.6}.main{min-width:0;padding:26px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.topbar h1{margin:6px 0 0;font-size:clamp(26px,3vw,42px);line-height:1.1}.topbar-actions,.chat-form-actions{display:flex;align-items:center;gap:10px}.eyebrow{margin:0;color:var(--brick);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.panel,.metric-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}.panel{padding:20px}.panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:18px}.panel-header h2{margin:5px 0 0;font-size:20px;line-height:1.2}.view{display:none}.active-view{display:block}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:16px}.metric-card{padding:18px}.metric-card span{display:block;color:var(--muted);font-size:13px}.metric-card strong{display:block;margin:9px 0 4px;font-size:30px;line-height:1}.metric-card p,.memory-note p,.alert-box p,.schema-box,.module-card p,.tool-card p{margin:0;color:var(--muted);font-size:14px;line-height:1.6}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.72fr);gap:16px}.dashboard-grid .main-panel{grid-row:span 2}.scenic-overview{display:grid;gap:16px}.model-showcase{display:grid;gap:14px}.model-hero{position:relative;display:grid;min-height:360px;overflow:hidden;grid-template-columns:minmax(260px,.34fr) minmax(0,1fr);gap:20px;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(180deg,#fffffff5,#eff7ffeb),#fffdf7;box-shadow:var(--shadow);padding:clamp(18px,2.4vw,28px)}.model-hero:before{content:"";position:absolute;right:0;bottom:0;left:0;height:74px;background:repeating-linear-gradient(90deg,rgba(255,250,240,.42) 0 32px,transparent 32px 70px),linear-gradient(90deg,#2f7a629e,#6f8f5f94)}.model-copy{position:relative;z-index:1;align-self:center}.model-copy h2{margin:8px 0 12px;font-size:clamp(28px,3.2vw,46px);line-height:1.08}.model-copy p{margin:0;color:var(--muted);font-size:15px;line-height:1.8}.model-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}.model-card{display:grid;min-height:288px;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:#fffdf7;box-shadow:var(--shadow)}.model-card.feature-model{grid-column:span 2}.model-card-head{display:flex;align-items:center;justify-content:space-between;min-height:56px;gap:10px;border-bottom:1px solid var(--line);padding:12px 14px}.model-card-head span{color:var(--muted);font-size:12px;font-weight:900}.model-card-head strong{font-size:18px}.model-stage{position:relative;min-height:232px;overflow:hidden;background:linear-gradient(180deg,#dce6d8 0 38%,#fffdf7 39% 50%,#d2dccb 51% 100%)}.bridge-stage{min-height:304px;border:1px solid rgba(47,122,98,.9);border-radius:var(--radius);background:linear-gradient(180deg,#dce6d8 0 48%,#fffdf7 49% 51%,#d2dccb 52% 100%)}.model-canvas{display:block;position:absolute;inset:0;width:100%;height:100%}.model-stage:after{content:"";position:absolute;right:0;bottom:12%;left:0;height:34px;pointer-events:none;background:repeating-linear-gradient(90deg,rgba(255,239,173,.38) 0 42px,transparent 42px 96px),linear-gradient(90deg,transparent,rgba(199,154,63,.38),transparent)}.model-loading:before,.model-error:before{position:absolute;inset:0;z-index:2;display:grid;place-items:center;background:#f8fbffc7;color:var(--river-dark);font-weight:900}.model-loading:before{content:"模型加载中"}.model-error:before{content:"模型暂不可用";color:var(--brick)}.model-loaded:before{display:none}.model-label{position:absolute;right:16px;bottom:16px;z-index:3;display:grid;gap:2px;border:1px solid rgba(255,255,255,.62);border-radius:var(--radius);background:#1e4d91ad;padding:10px 12px;color:#fffdf7;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.model-label span{color:#ffffffc2;font-size:12px;font-weight:900}.scenic-hero{position:relative;display:grid;min-height:182px;overflow:hidden;grid-template-columns:minmax(0,1fr) 148px;align-items:end;gap:24px;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(115deg,#fffffff0,#ecf6ffeb),#fffdf7;box-shadow:var(--shadow);padding:clamp(20px,3vw,32px)}.scenic-hero:before{content:"";position:absolute;right:-8%;bottom:20px;width:56%;height:52px;border-radius:999px;background:repeating-linear-gradient(90deg,rgba(255,255,255,.38) 0 22px,transparent 22px 46px),linear-gradient(90deg,#2f7a62b8,#6f8f5fb3);transform:rotate(-5deg);animation:scenicRiver 9s linear infinite}.scenic-hero>div{position:relative;z-index:1}.scenic-hero h2{max-width:780px;margin:7px 0 10px;font-size:clamp(26px,3vw,40px);line-height:1.15}.scenic-hero p{max-width:720px;margin:0;color:var(--muted);font-size:15px;line-height:1.8}.scenic-hero-badge{display:grid;min-height:120px;place-items:center;border:1px solid rgba(47,122,98,.28);border-radius:var(--radius);background:#ffffffc7;color:var(--river-dark);text-align:center}.scenic-hero-badge strong{font-size:46px;line-height:1}.scenic-hero-badge span{color:var(--muted);font-size:12px;font-weight:900}.scenic-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.scenic-card{position:relative;display:grid;min-height:218px;overflow:hidden;grid-template-columns:190px minmax(0,1fr);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);cursor:pointer;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.scenic-card:hover,.scenic-card:focus-visible{border-color:#2f7a6275;box-shadow:0 22px 58px #2b4a3b29;transform:translateY(-2px);outline:0}.scenic-card.featured{min-height:218px;grid-column:auto;grid-template-columns:190px minmax(0,1fr)}.scenic-photo{position:relative;min-width:0;margin:0;overflow:hidden;background:#d9e6e2}.scenic-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .38s ease}.scenic-card:hover .scenic-photo img{transform:scale(1.045)}.scenic-card.image-missing .scenic-photo{display:grid;place-items:center}.scenic-card.image-missing .scenic-photo:before{content:"实景图加载中";position:absolute;z-index:1;color:var(--river-dark);font-weight:900}.scenic-card.image-missing img{opacity:0}.scenic-content{display:flex;min-width:0;flex-direction:column;gap:12px;padding:18px 18px 16px}.scenic-title-row{display:flex;min-width:0;align-items:center;gap:12px}.scenic-index{display:grid;flex:0 0 44px;width:44px;height:44px;place-items:center;border-radius:var(--radius);background:var(--river-dark);color:#fffdf7;font-weight:900}.scenic-title-row h3{margin:0;font-size:22px;line-height:1.15}.scenic-title-row p{margin:5px 0 0;color:var(--muted);font-size:13px;font-weight:800}.scenic-desc{margin:0;color:var(--muted);font-size:14px;line-height:1.75}.scenic-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto;padding-right:86px}.scenic-source{display:inline-flex;align-items:center;min-height:28px;border:1px solid rgba(47,122,98,.18);border-radius:999px;background:#2f7a6214;color:var(--river-dark);padding:5px 10px;font-size:13px;font-weight:900;text-decoration:none}.scenic-visit{position:absolute;right:14px;bottom:14px;display:inline-flex;align-items:center;min-height:30px;border-radius:999px;background:var(--brick);color:#fffdf7;padding:6px 12px;font-size:13px;font-weight:900;text-decoration:none;box-shadow:0 10px 26px #2f7a6238}.gallery-view{display:grid;gap:16px}.gallery-back{justify-self:start}.gallery-hero{display:grid;min-height:520px;overflow:hidden;grid-template-columns:minmax(0,1.28fr) minmax(320px,.72fr);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}.gallery-preview{position:relative;min-width:0;margin:0;overflow:hidden;background:#d9e6e2}.gallery-preview img{display:block;width:100%;height:100%;min-height:520px;object-fit:cover}.gallery-copy{display:flex;min-width:0;flex-direction:column;justify-content:center;gap:14px;padding:clamp(22px,3vw,40px)}.gallery-copy h2{margin:0;font-size:clamp(34px,4vw,58px);line-height:1.05}.gallery-area{margin:0;color:var(--river-dark);font-weight:900}.gallery-copy p{margin:0;color:var(--muted);line-height:1.8}.gallery-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.gallery-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.gallery-thumb{display:grid;overflow:hidden;min-height:268px;grid-template-rows:168px auto 1fr;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--ink);padding:0;text-align:left;box-shadow:var(--shadow)}.gallery-thumb.active,.gallery-thumb:hover,.gallery-thumb:focus-visible{border-color:#2f7a627a;box-shadow:0 18px 48px #2b4a3b26;outline:0}.gallery-thumb img{display:block;width:100%;height:168px;object-fit:cover;transition:transform .32s ease}.gallery-thumb:hover img{transform:scale(1.04)}.gallery-thumb span{display:block;padding:12px 12px 4px;font-weight:900}.gallery-thumb small{display:block;padding:0 12px 14px;color:var(--muted);font-size:12px;line-height:1.55}.gallery-preview.image-missing,.gallery-thumb.image-missing{position:relative}.gallery-preview.image-missing:before,.gallery-thumb.image-missing:before{content:"照片加载中";position:absolute;inset:0;z-index:1;display:grid;place-items:center;background:#eef3ee;color:var(--river-dark);font-weight:900}.gallery-preview.image-missing img,.gallery-thumb.image-missing img{opacity:0}@keyframes scenicRiver{0%{background-position:0 0,0 0}to{background-position:220px 0,0 0}}.status-pill{display:inline-flex;align-items:center;min-height:28px;white-space:nowrap;border:1px solid var(--line);border-radius:999px;background:var(--surface-2);color:var(--muted);padding:5px 10px;font-size:12px;font-weight:800}.status-pill.ready{border-color:#2f7a6259;background:#2f7a621f;color:var(--river-dark)}.status-pill.running{border-color:#c79a3f6b;background:#c79a3f21;color:#245eb2}.status-pill.done{border-color:#6f8f5f61;background:#6f8f5f24;color:#2879ca}.primary-button,.ghost-button,.icon-button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;gap:8px;padding:10px 14px;font-weight:800}.primary-button{background:var(--brick);color:#fffdf7}.primary-button:hover,.ghost-button:hover,.icon-button:hover,.segment:hover{transform:translateY(-1px)}.ghost-button{border:1px solid var(--line);background:#fffdf7;color:var(--ink)}.sidebar .ghost-button{width:100%;border-color:#2f7a623d;background:#2f7a621a;color:var(--river-dark)}.icon-button{width:42px;padding:0;border:1px solid var(--line);background:var(--surface);color:var(--ink);font-size:20px}.full-width{width:100%}.route-board{position:relative;height:520px;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(90deg,rgba(47,122,98,.06) 1px,transparent 1px),linear-gradient(0deg,rgba(47,122,98,.06) 1px,transparent 1px),#f7f6ee;background-size:42px 42px}.river-band,.river-wide{position:absolute;background:#7db7f6}.river-band{top:196px;left:-8%;width:116%;height:96px;transform:rotate(-8deg);box-shadow:inset 0 0 0 2px #ffffff40}.route-line{position:absolute;inset:78px 100px 86px 96px;border-top:4px solid var(--brick);border-right:4px solid var(--brick);border-bottom:4px solid var(--brick);border-radius:0 80px 80px 0}.map-pin{position:absolute;display:grid;width:42px;height:42px;place-items:center;border:3px solid #fffdf7;border-radius:50%;background:var(--brick);color:#fffdf7;box-shadow:0 12px 28px #2b4a3b2e}.map-pin span{font-weight:900}.pin-1{top:70px;left:74px}.pin-2{top:75px;right:125px}.pin-3{top:215px;right:82px}.pin-4{right:142px;bottom:86px}.pin-5{left:190px;bottom:90px}.pin-6{left:76px;top:250px}.map-tooltip{position:absolute;top:18px;left:18px;max-width:260px;border-radius:var(--radius);background:#1e4d91e0;color:#fffdf7;padding:10px 12px;font-size:14px}.chip-list{display:flex;flex-wrap:wrap;gap:8px}.chip,.source-tag,.agent-role{display:inline-flex;align-items:center;min-height:28px;border-radius:999px;background:#2f7a621f;color:var(--river-dark);padding:5px 10px;font-size:13px;font-weight:800}.memory-note,.alert-box,.schema-box{margin-top:16px;border:1px solid var(--line);border-radius:var(--radius);background:#f7f6ee;padding:14px}.mini-agent-list,.module-list,.tool-results{display:grid;gap:10px}.mini-agent,.module-card,.tool-card,.knowledge-card,.citation-card{border:1px solid var(--line);border-radius:var(--radius);background:#fffdf7;padding:14px}.mini-agent{display:grid;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:10px}.agent-dot{width:10px;height:10px;border-radius:50%;background:var(--gold)}.agent-dot.done{background:var(--leaf)}.agent-dot.running{background:var(--brick)}.mini-agent strong,.module-card strong,.tool-card strong,.knowledge-card strong,.citation-card strong{display:block;margin-bottom:3px}.mini-agent span{color:var(--muted);font-size:12px}.planner-layout,.itinerary-layout,.split-layout,.map-layout,.media-layout,.settings-grid{display:grid;gap:16px}.planner-layout{grid-template-columns:minmax(260px,1fr) minmax(320px,1.35fr) minmax(260px,1fr);align-items:stretch;gap:18px}.planner-layout>.panel{display:flex;flex-direction:column;min-height:0;overflow:hidden}.chat-panel{min-height:0}.chat-panel .chat-log{flex:1 1 auto;min-height:0;height:auto}.chat-form{flex:0 0 auto;margin-top:14px}.travel-plan-panel{min-height:0;display:grid;grid-template-rows:auto 1fr}.travel-plan-body{min-height:0;overflow:auto}.route-visual-panel{min-height:0}.route-visual-layout{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}#route-visual-canvas{flex:1 1 auto;min-height:0;aspect-ratio:auto}.route-storyboard{flex:0 0 auto;max-height:140px;overflow:auto}.route-image-prompt{flex:0 0 auto}.itinerary-layout{grid-template-columns:1fr}.split-layout,.map-layout{grid-template-columns:minmax(0,1fr) 360px}.map-layout{grid-template-columns:1fr}.media-layout,.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.chat-panel{min-height:620px}.route-visual-panel{overflow:hidden}.route-visual-layout{display:grid;gap:14px}#route-visual-canvas{display:block;width:100%;aspect-ratio:16 / 9;border:1px solid var(--line);border-radius:var(--radius);background:#e8f0e7;box-shadow:inset 0 0 0 1px #ffffffad}.route-generated-frame{position:relative;min-height:0;overflow:hidden;margin:0;border:1px solid var(--line);border-radius:var(--radius);background:#0b1713;aspect-ratio:3 / 4}.route-generated-frame[hidden]{display:none}.route-generated-frame img{display:block;width:100%;height:100%;object-fit:cover}.route-generated-frame:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#050c0a05 50%,#050c0ae0)}.route-generated-frame figcaption{position:absolute;z-index:1;right:18px;bottom:18px;left:18px;display:grid;gap:10px}.route-generated-provider{justify-self:start;border:1px solid rgba(255,255,255,.34);border-radius:999px;background:#050c0aa8;color:#fff;padding:5px 9px;font-size:11px;font-weight:800}.route-generated-stops{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.route-generated-stops span{min-width:0;border-left:2px solid #d6b557;color:#fff;padding-left:7px;font-size:11px;line-height:1.35;overflow-wrap:anywhere;white-space:normal}@media(max-width:560px){.route-generated-frame figcaption{right:12px;bottom:12px;left:12px;gap:8px}.route-generated-stops{grid-template-columns:repeat(2,minmax(0,1fr))}}.planner-layout{display:block;max-width:1180px;margin:0 auto}.planner-step-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:18px}.planner-step-tab{display:flex;align-items:center;gap:12px;min-height:72px;padding:12px 16px;border:1px solid var(--line, rgba(255,255,255,.18));border-radius:12px;background:#ffffff0f;color:inherit;text-align:left;cursor:pointer;transition:border-color .2s ease,background .2s ease,transform .2s ease}.planner-step-tab:hover,.planner-step-tab:focus-visible{border-color:#ffffff6b;background:#ffffff1a;transform:translateY(-1px)}.planner-step-tab.is-active{border-color:#ffffffa8;background:#ffffff29}.planner-step-number{display:grid;flex:0 0 38px;width:38px;height:38px;place-items:center;border:1px solid currentColor;border-radius:50%;font-size:12px;font-weight:800;letter-spacing:.04em}.planner-step-tab strong,.planner-step-tab small{display:block}.planner-step-tab strong{font-size:15px;line-height:1.3}.planner-step-tab small{margin-top:3px;opacity:.62;font-size:12px;line-height:1.35}.planner-step{min-height:min(720px,calc(100dvh - 250px))}.planner-step[hidden]{display:none!important}.planner-step-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:18px;padding-top:16px;border-top:1px solid var(--line, rgba(255,255,255,.14))}.planner-step-actions>span{max-width:52ch;color:var(--muted, rgba(255,255,255,.62));font-size:13px;line-height:1.6}.planner-step-actions .primary-button,.planner-step-actions .ghost-button{flex:0 0 auto}@media(max-width:640px){.planner-step-nav{grid-template-columns:1fr;gap:8px}.planner-step-tab{min-height:58px;padding:10px 12px}.planner-step-number{flex-basis:32px;width:32px;height:32px}.planner-step{min-height:auto}.planner-step-actions{align-items:stretch;flex-direction:column}.planner-step-actions .primary-button,.planner-step-actions .ghost-button{width:100%}}.route-scene-card{display:grid;min-height:252px;overflow:hidden;grid-template-columns:210px minmax(0,1fr);border:1px solid var(--line);border-radius:var(--radius);background:#fffdf7;box-shadow:0 12px 28px #2b4a3b1a}.route-card-photo{position:relative;margin:0;min-height:252px;overflow:hidden;border:0;background:#e8f0e7;padding:0;cursor:pointer;text-align:left}.route-card-photo img{display:block;width:100%;height:100%;object-fit:cover}.route-card-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 48%,rgba(15,39,72,.22));pointer-events:none}.route-card-body{display:grid;align-content:start;gap:10px;padding:16px}.route-card-title{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px}.route-step-index{display:grid;width:40px;height:40px;place-items:center;border-radius:999px;background:var(--river-dark);color:#fffdf7;font-size:12px;font-weight:900}.route-scene-card strong{display:block;color:var(--ink);font-size:19px;line-height:1.2}.route-scene-card small{display:block;margin-top:4px;overflow:hidden;color:var(--muted);font-size:12px;font-weight:800;line-height:1.4;text-overflow:ellipsis;white-space:nowrap}.route-feature-tags{display:flex;flex-wrap:wrap;gap:6px}.route-feature-tags em{border-radius:999px;background:#2f7a621f;color:var(--river-dark);padding:5px 8px;font-size:12px;font-style:normal;font-weight:900}.route-scene-card p{display:-webkit-box;overflow:hidden;margin:0;-webkit-box-orient:vertical;-webkit-line-clamp:2;color:var(--muted);font-size:13px;line-height:1.6}.route-scene-card.highlight,.route-scene-card:focus-within{border-color:#195a486b;box-shadow:0 16px 34px #195a4829}.route-card-actions{display:flex;flex-wrap:wrap;gap:8px}.route-card-actions .ghost-button{min-height:32px;padding:7px 12px;font-size:12px}.route-gallery-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin-top:2px}.route-gallery-thumb{min-width:0;min-height:48px;overflow:hidden;border:2px solid transparent;border-radius:6px;background:#e8f0e7;padding:0}.route-gallery-thumb img{display:block;width:100%;height:54px;object-fit:cover}.route-image-prompt{border:1px solid rgba(47,122,98,.22);border-radius:var(--radius);background:linear-gradient(180deg,#fffdf7,#e8f0e7);padding:14px}.route-image-prompt strong{display:block;margin-bottom:6px;color:var(--river-dark)}.route-image-prompt p{margin:0;color:var(--muted);line-height:1.7}.route-prompt-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.route-prompt-actions .ghost-button{margin:0}.route-detail-modal[hidden]{display:none}.route-detail-modal{position:fixed;z-index:80;inset:0;display:grid;place-items:center;padding:22px}.route-modal-backdrop{position:absolute;inset:0;background:#0f20366b;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.route-modal-card{position:relative;z-index:1;display:grid;width:min(980px,100%);max-height:min(760px,calc(100vh - 44px));overflow:hidden;grid-template-columns:minmax(280px,.92fr) minmax(0,1.08fr);border:1px solid rgba(47,122,98,.26);border-radius:var(--radius);background:#fffdf7;box-shadow:0 30px 80px #14345d47}.route-modal-close{position:absolute;z-index:2;top:14px;right:14px;display:grid;width:38px;height:38px;place-items:center;border:1px solid rgba(255,255,255,.72);border-radius:999px;background:#ffffffe0;color:var(--ink);font-size:24px;font-weight:900}.route-modal-photo{min-height:100%;margin:0;background:#e8f0e7}.route-modal-photo img{display:block;width:100%;height:100%;min-height:420px;object-fit:cover}.route-modal-copy{display:grid;align-content:start;gap:12px;overflow:auto;padding:28px}.route-modal-copy h2{margin:0;color:var(--ink);font-size:clamp(26px,4vw,42px);line-height:1.12}.route-modal-copy p{margin:0;color:var(--muted);line-height:1.8}.route-modal-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:4px 0 8px}.route-modal-thumb{overflow:hidden;border:2px solid transparent;border-radius:8px;background:#e8f0e7;padding:0}.route-modal-thumb:focus,.route-modal-thumb:hover{border-color:var(--river-dark)}.route-modal-thumb img{display:block;width:100%;height:64px;object-fit:cover}.chat-log{display:flex;height:430px;overflow:auto;flex-direction:column;gap:12px;border:1px solid var(--line);border-radius:var(--radius);background:#f7f6ee;padding:14px}.message{max-width:min(780px,88%);border-radius:var(--radius);padding:13px 14px;line-height:1.7;white-space:pre-wrap}.message.user{align-self:flex-end;background:var(--river-dark);color:#fffdf7}.message.assistant{align-self:flex-start;border:1px solid var(--line);background:#fffdf7}.message.system{align-self:center;max-width:100%;background:transparent;color:var(--muted);font-size:13px;text-align:center}.chat-form{display:grid;gap:12px;margin-top:14px}textarea,input,select{width:100%;border:1px solid var(--line);border-radius:var(--radius);background:#fffdf7;color:var(--ink);outline:0}textarea{resize:vertical;min-height:104px;padding:12px;line-height:1.6}input,select{min-height:40px;padding:8px 10px}.field-label{display:block;margin:16px 0 8px;color:var(--muted);font-size:13px;font-weight:900}input[type=range]{accent-color:var(--brick)}.toggle-grid{display:flex;flex-wrap:wrap;gap:8px}.toggle-chip{display:inline-flex;align-items:center;min-height:34px;border:1px solid var(--line);border-radius:999px;background:#fffdf7;padding:6px 10px;color:var(--muted);font-size:13px;font-weight:800}.toggle-chip input{width:auto;min-height:0;margin-right:6px;accent-color:var(--brick)}.switch-list{display:grid;gap:10px}.switch-list label{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--line);border-radius:var(--radius);background:#fffdf7;padding:10px 12px;color:var(--muted);font-weight:800}.switch-list input{width:18px;min-height:18px;accent-color:var(--river)}.planner-citations{display:grid;gap:10px;margin-top:18px;border-top:1px solid var(--line);padding-top:16px}.panel-subheader,.planner-citation-item{display:flex;align-items:center;justify-content:space-between;gap:10px}.panel-subheader strong{color:var(--ink);font-size:14px}.panel-subheader span,.planner-citation-item span{border-radius:999px;background:#2f7a621f;padding:4px 8px;color:var(--river-dark);font-size:12px;font-weight:900}#planner-citation-list{display:grid;gap:8px}.planner-citation-item{border:1px solid var(--line);border-radius:var(--radius);background:#fffdf7;padding:10px}.planner-citation-item strong{overflow:hidden;color:var(--ink);font-size:12px;line-height:1.5;text-overflow:ellipsis}.itinerary-form{display:grid;grid-template-columns:130px minmax(220px,1fr) auto auto;gap:10px;margin-bottom:14px}.itinerary-form textarea{grid-column:1 / -1;min-height:72px}.itinerary-list{display:grid;gap:12px}.empty-itinerary{border:1px dashed var(--line);border-radius:var(--radius);background:#f7f6ee;padding:24px}.empty-itinerary strong{display:block;margin-bottom:6px}.empty-itinerary p{margin:0;color:var(--muted);line-height:1.6}.itinerary-item{display:grid;grid-template-columns:92px minmax(0,1fr);gap:14px;border:1px solid var(--line);border-radius:var(--radius);background:#fffdf7;padding:14px}.time-block{color:var(--brick);font-weight:900}.itinerary-item h3{margin:0 0 6px;font-size:18px}.itinerary-item p{margin:0 0 10px;color:var(--muted);line-height:1.6}.item-meta{display:flex;flex-wrap:wrap;gap:8px}.delete-itinerary{display:inline-flex;align-items:center;min-height:28px;border:1px solid rgba(47,122,98,.18);border-radius:999px;background:#2f7a6214;color:var(--river-dark);padding:5px 10px;font-size:13px;font-weight:900}.budget-bars{display:grid;gap:12px}.budget-row{display:grid;gap:6px}.budget-row header{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:14px;font-weight:900}.budget-track{height:10px;overflow:hidden;border-radius:999px;background:#e1efff}.budget-fill{height:100%;border-radius:inherit;background:var(--river)}.knowledge-form{display:grid;gap:12px;margin-bottom:16px;border-bottom:1px solid var(--line);padding-bottom:16px}.knowledge-form .field-label{margin-top:0}.knowledge-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.knowledge-actions,.knowledge-search{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px}.knowledge-file{min-height:40px;padding:8px}.knowledge-category-list{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.knowledge-category-chip{display:inline-flex;align-items:center;min-height:34px;gap:8px;border:1px solid rgba(47,122,98,.22);border-radius:var(--radius);background:#2f7a621a;padding:6px 10px;color:var(--river-dark);font-size:13px;font-weight:900}.knowledge-category-chip em{display:grid;min-width:22px;height:22px;place-items:center;border-radius:50%;background:#fffdf7;color:var(--ink);font-style:normal}.knowledge-search{margin-bottom:14px}.knowledge-list,.citation-list{display:grid;gap:12px}.knowledge-card-title,.citation-card-title{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.knowledge-card-title .status-pill,.citation-card-title .source-tag{flex:0 0 auto;white-space:nowrap}.knowledge-card p,.citation-card p{margin:6px 0 10px;color:var(--muted);line-height:1.6}.knowledge-meta{display:flex;flex-wrap:wrap;gap:8px}.knowledge-source{margin-top:10px;color:var(--muted);font-size:13px}.knowledge-source a{color:var(--river);font-weight:900;text-decoration:none}.empty-card{border:1px dashed var(--line);border-radius:var(--radius);background:#fffdf7;padding:14px;color:var(--muted);font-size:13px}.source-tag{background:#2f7a621f;color:var(--river-dark)}.schema-box code{display:block;margin-top:8px;white-space:normal}.workflow-track{position:relative;display:grid;grid-template-columns:repeat(6,minmax(150px,1fr));gap:12px;overflow-x:auto;padding-bottom:4px}.workflow-node{min-height:210px;border:1px solid var(--line);border-radius:var(--radius);background:#fffdf7;padding:14px}.workflow-node.active{border-color:var(--brick);box-shadow:0 0 0 3px #2f7a621f}.workflow-node.done{border-color:#6f8f5f73}.workflow-node h3{margin:9px 0 8px;font-size:17px}.workflow-node p{margin:0;color:var(--muted);line-height:1.55}.workflow-index{display:grid;width:34px;height:34px;place-items:center;border-radius:50%;background:var(--surface-2);color:var(--muted);font-weight:900}.workflow-node.active .workflow-index{background:var(--brick);color:#fffdf7}.workflow-node.done .workflow-index{background:var(--leaf);color:#fffdf7}.tool-map{position:relative;height:560px;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(90deg,rgba(47,122,98,.06) 1px,transparent 1px),linear-gradient(0deg,rgba(47,122,98,.06) 1px,transparent 1px),#f7f6ee;background-size:36px 36px}.river-wide{top:228px;left:-8%;display:grid;width:116%;height:104px;place-items:center;transform:rotate(-6deg);color:#ffffffdb;font-weight:900}.metro-line{position:absolute;height:5px;border-radius:999px}.metro-a{top:140px;left:90px;width:66%;background:var(--brick);transform:rotate(8deg)}.metro-b{top:384px;left:70px;width:72%;background:var(--gold);transform:rotate(-14deg)}.tool-stop{position:absolute;display:grid;min-width:74px;min-height:34px;place-items:center;border:2px solid #fffdf7;border-radius:999px;background:var(--river-dark);color:#fffdf7;padding:6px 10px;font-size:13px;font-weight:900;box-shadow:0 14px 30px #2b4a3b29}.stop-a{top:88px;left:70px}.stop-b{top:126px;left:46%}.stop-c{top:176px;right:72px}.stop-d{bottom:128px;left:28%;background:var(--brick)}.stop-e{bottom:80px;right:114px;background:var(--leaf)}.tool-card{position:relative}.tool-card:before{content:"";position:absolute;top:14px;right:14px;width:10px;height:10px;border-radius:50%;background:var(--leaf)}.wuhan-map-shell{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:#e8f0e7;box-shadow:inset 0 0 0 1px #ffffff8c}.wuhan-map-image{display:block;width:100%;min-height:560px;object-fit:cover}.weather-marker{position:absolute;min-height:30px;border:2px solid #fffdf7;border-radius:999px;background:var(--river-dark);color:#fffdf7;padding:5px 10px;font-size:13px;font-weight:900;box-shadow:0 12px 26px #2b4a3b2e;transform:translate(-50%,-50%)}.weather-marker:after{content:"";position:absolute;left:50%;bottom:-8px;width:10px;height:10px;border-right:2px solid #fffdf7;border-bottom:2px solid #fffdf7;background:inherit;transform:translate(-50%) rotate(45deg)}.weather-marker:hover,.weather-marker.active{background:var(--brick)}.marker-wuhan-station{left:74%;top:43%}.marker-museum{left:57%;top:51%}.marker-eastlake{left:76%;top:35%}.marker-university{left:56%;top:63%}.marker-yellowcrane{left:48%;top:63%}.marker-jianghan{left:42%;top:49%}.marker-gude{left:45%;top:35%}.marker-lihuangpi{left:42.5%;top:46%}.weather-card{position:absolute;right:18px;bottom:18px;width:min(360px,calc(100% - 36px));border:1px solid rgba(222,213,200,.92);border-radius:var(--radius);background:#fffdf8f0;box-shadow:0 18px 44px #20201d29;padding:16px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.weather-card h3{margin:4px 0 8px;font-size:22px}.weather-card strong{display:block;margin-bottom:8px;color:var(--river-dark);font-size:38px;line-height:1}.weather-card p{margin:0;color:var(--muted);line-height:1.6}.weather-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:12px 0}.weather-detail-grid span{min-height:32px;border-radius:999px;background:#2f7a621f;color:var(--river-dark);padding:7px 9px;font-size:12px;font-weight:900;text-align:center}.weather-suggestion{border-top:1px solid var(--line);padding-top:10px}.media-layout canvas{display:block;width:100%;max-height:680px;border:1px solid var(--line);border-radius:var(--radius);background:#e8f0e7}.voice-box{display:grid;gap:12px}.segmented{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.segment{min-height:40px;border:1px solid var(--line);background:#fffdf7;color:var(--muted);font-weight:900}.segment.active{border-color:var(--river);background:#2f7a621f;color:var(--river-dark)}.config-form{display:grid}.module-card{display:grid;gap:8px}.module-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.module-card code{display:block;overflow-wrap:anywhere;border-radius:6px;background:#e8f0e7;padding:8px;color:#2d5f9f;font-size:12px}.mini-ai{position:fixed;right:28px;bottom:28px;z-index:70;display:grid;justify-items:end;gap:12px;pointer-events:none}.mini-ai-avatar,.mini-ai-panel{pointer-events:auto}.mini-ai-avatar{position:relative;display:grid;width:76px;height:76px;place-items:center;border:1px solid rgba(255,255,255,.82);border-radius:50%;background:radial-gradient(circle at 50% 30%,#fffffff5,#e3f1ffcc 44%,#2f7a62f2),#2f7a62;box-shadow:0 20px 42px #195a4847;color:#fffdf7;padding:0;animation:miniAiFloat 3.2s ease-in-out infinite}.mini-ai-avatar:hover,.mini-ai.open .mini-ai-avatar{transform:translateY(-3px);box-shadow:0 24px 54px #195a4857}.mini-ai-orbit{position:absolute;inset:-8px;border:1px solid rgba(47,122,98,.24);border-radius:50%;animation:miniAiPulse 2.4s ease-in-out infinite}.mini-ai-face{position:relative;display:grid;width:48px;height:40px;grid-template-columns:repeat(2,1fr);place-items:center;border:2px solid rgba(255,255,255,.92);border-radius:16px;background:linear-gradient(180deg,#fffdf7,#dce6d8)}.mini-ai-eye{width:8px;height:8px;border-radius:50%;background:var(--river-dark);animation:miniAiBlink 4.6s ease-in-out infinite}.mini-ai-mouth{position:absolute;right:16px;bottom:9px;left:16px;height:3px;border-radius:999px;background:#8ea86d}.mini-ai-label{position:absolute;right:-2px;bottom:-2px;display:grid;width:28px;height:28px;place-items:center;border:2px solid #fffdf7;border-radius:50%;background:var(--river-dark);color:#fffdf7;font-size:11px;font-weight:900}.mini-ai-panel{display:grid;width:min(430px,calc(100vw - 32px));max-height:min(640px,calc(100vh - 126px));overflow:hidden;grid-template-rows:auto minmax(220px,1fr) auto auto;border:1px solid rgba(47,122,98,.26);border-radius:12px;background:#fffffff5;box-shadow:0 28px 76px #14345d3d;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.mini-ai-panel[hidden]{display:none}.mini-ai-header{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,#fffdf7,#e8f0e7);padding:14px}.mini-ai-title{display:flex;align-items:center;min-width:0;gap:10px}.mini-ai-title strong{display:block;color:var(--ink);font-size:16px}.mini-ai-title span:last-child{display:block;margin-top:2px;color:var(--muted);font-size:12px;font-weight:800}.mini-ai-title span.running{color:#245eb2}.mini-ai-title span.done{color:#2879ca}.mini-ai-dot{width:12px;height:12px;border-radius:50%;background:#6f8f5f;box-shadow:0 0 0 6px #6f8f5f29}.mini-ai-header-actions{display:flex;flex:0 0 auto;align-items:center;gap:8px}.mini-ai-icon-button{display:grid;width:34px;height:34px;place-items:center;border:1px solid rgba(47,122,98,.22);border-radius:50%;background:#fffdf7;color:var(--river-dark);font-size:16px;font-weight:900}.mini-ai-messages{display:flex;min-height:0;overflow:auto;flex-direction:column;gap:10px;background:linear-gradient(90deg,rgba(47,122,98,.05) 1px,transparent 1px),linear-gradient(0deg,rgba(47,122,98,.05) 1px,transparent 1px),#f7fbff;background-size:32px 32px;padding:14px}.mini-ai-message{max-width:88%;border-radius:12px;padding:11px 12px;box-shadow:0 10px 22px #2b4a3b14}.mini-ai-message p{margin:0;overflow-wrap:anywhere;color:inherit;font-size:14px;line-height:1.7;white-space:pre-wrap}.mini-ai-message.user{align-self:flex-end;background:var(--river-dark);color:#fffdf7}.mini-ai-message.assistant{align-self:flex-start;border:1px solid var(--line);background:#fffdf7;color:var(--ink)}.mini-ai-sources{display:grid;gap:6px;margin-top:10px}.mini-ai-sources span{border-radius:7px;background:#2f7a621a;color:var(--river-dark);padding:6px 8px;font-size:11px;font-weight:800;line-height:1.45}.mini-ai-suggestions{display:flex;flex-wrap:wrap;gap:8px;border-top:1px solid var(--line);padding:12px 14px 0}.mini-ai-suggestions button{min-height:32px;border:1px solid rgba(47,122,98,.22);border-radius:999px;background:#2f7a6214;color:var(--river-dark);padding:6px 10px;font-size:12px;font-weight:900}.mini-ai-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:12px 14px 14px}.mini-ai-form input{min-height:42px;border-color:#2f7a6242;background:#fffdf7}.mini-ai-form input,.app-shell:not(.app-hidden) #mini-ai-input{color:#17211d!important;caret-color:#17211d;font-weight:650}.mini-ai-form input::placeholder,.app-shell:not(.app-hidden) #mini-ai-input::placeholder{color:#666d68!important;opacity:1;font-weight:550}.mini-ai-form input:focus{border-color:#8b6a22!important;outline:3px solid rgba(217,180,94,.24)}.map-route-planner{display:grid;gap:14px;margin-bottom:16px;border:1px solid rgba(217,180,94,.28);border-radius:14px;background:#091914d1;padding:16px;color:#f6efe2}.map-route-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.map-route-heading>div{display:grid;gap:4px}.map-route-heading strong{font-size:17px}.map-route-heading span{color:#c2c9bd;font-size:13px}.map-route-heading>span{color:#f1d486;font-weight:750;white-space:nowrap}.map-route-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) auto;align-items:end;gap:10px}.map-route-fields label{display:grid;gap:7px}.map-route-fields label>span{color:#d8ddd4;font-size:12px;font-weight:750}.map-route-fields select{width:100%;min-height:44px;border:1px solid rgba(255,255,255,.24);border-radius:9px;background:#172a24;color:#f6efe2;padding:0 34px 0 12px}.map-route-fields select:focus{border-color:#f1d486;outline:3px solid rgba(241,212,134,.16)}.map-route-fields .primary-button{min-height:44px;white-space:nowrap}.map-route-result{min-height:42px;display:flex;align-items:center;gap:12px;border-left:3px solid #596861;background:#ffffff0f;padding:10px 12px;color:#c7cec4;font-size:13px}.map-route-result strong{color:#f6efe2}.map-route-result.done{border-left-color:#d9b45e}.map-route-result.running{border-left-color:#8ea06f}.map-route-result.error{border-left-color:#b55b4f;color:#ffd3cd}@media(max-width:920px){.map-route-fields{grid-template-columns:1fr 1fr}.map-route-fields .primary-button{width:100%}}@media(max-width:560px){.map-route-heading{display:grid}.map-route-fields{grid-template-columns:1fr}.map-route-result{align-items:flex-start;flex-direction:column}}@keyframes miniAiFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes miniAiPulse{0%,to{opacity:.35;transform:scale(.96)}50%{opacity:.8;transform:scale(1.08)}}@keyframes miniAiBlink{0%,92%,to{transform:scaleY(1)}95%{transform:scaleY(.2)}}html,body{background:radial-gradient(circle at 18% 8%,rgba(199,154,63,.14),transparent 28%),radial-gradient(circle at 86% 18%,rgba(47,122,98,.12),transparent 34%),linear-gradient(180deg,#f4f6ef,var(--bg))}.login-screen{background:linear-gradient(115deg,#eef2eaf7,#fffdf7fa 48%,#e4ece1f5),#eef2ea}.login-screen:before{background:linear-gradient(142deg,transparent 0 24%,rgba(47,122,98,.26) 25% 27%,transparent 28%),linear-gradient(24deg,transparent 0 37%,rgba(123,90,37,.2) 38% 41%,transparent 42%),linear-gradient(158deg,transparent 0 56%,rgba(25,90,72,.14) 57% 60%,transparent 61%)}.login-screen:after{background:linear-gradient(170deg,#2f7a6242,#2f7a6200 54%),linear-gradient(8deg,#c79a3f2e,#c79a3f00 42%)}.login-bg-grid,.wuhan-map-stage,.tool-map,.route-board,.mini-ai-messages{background-image:linear-gradient(90deg,rgba(47,122,98,.07) 1px,transparent 1px),linear-gradient(0deg,rgba(47,122,98,.07) 1px,transparent 1px)}.login-network{background:linear-gradient(28deg,transparent 0 47%,rgba(47,122,98,.36) 48% 50%,transparent 51%),linear-gradient(145deg,transparent 0 45%,rgba(123,90,37,.3) 46% 48%,transparent 49%),radial-gradient(circle at 12% 58%,rgba(47,122,98,.38) 0 5px,transparent 6px),radial-gradient(circle at 48% 34%,rgba(199,154,63,.38) 0 5px,transparent 6px),radial-gradient(circle at 82% 72%,rgba(25,90,72,.34) 0 5px,transparent 6px)}.login-card,.panel,.metric-card,.scenic-card,.route-scene-card,.mini-ai-panel{border-color:#2f7a622e;background:#fffdf7f5;box-shadow:var(--shadow)}.login-showcase,.route-image-prompt,.mini-ai-header{background:linear-gradient(180deg,#fffdf7f5,#e8f0e7e6),var(--surface-2)}.wuhan-map-stage{border-color:#2f7a623d;background-color:#fffdf76b;box-shadow:inset 0 0 80px #2f7a621f}.river-flow,.river-wide,.river-band{background:repeating-linear-gradient(90deg,rgba(255,253,247,.5) 0 24px,transparent 24px 54px),linear-gradient(90deg,#6f8f5fc7,#2f7a62d1,#c79a3f80);box-shadow:0 18px 48px #2f7a6226}.metro-glow{background:linear-gradient(90deg,rgba(47,122,98,.08),var(--river),rgba(199,154,63,.28));box-shadow:0 0 18px #2f7a6257}.line-two{background:linear-gradient(90deg,rgba(47,122,98,.08),var(--gold),rgba(111,143,95,.28))}.city-tower,.platform-logo,.brand-mark,.login-button,.primary-button{background:linear-gradient(135deg,var(--river-dark),#7b5a25);color:#fffdf7;box-shadow:0 16px 34px #2b4a3b38}.login-mode-title,.login-tab.active{color:var(--river)}.login-mode-title,.login-tabs{border-bottom-color:#4356453d}.login-mode-title:after,.login-tab.active:after{background:linear-gradient(90deg,var(--river),var(--gold))}.login-field{border-bottom-color:#4356452e}.login-field-icon,.login-field input::placeholder{color:#9ba89d}#captcha-canvas{background:#eef1e8}.route-spark{box-shadow:0 0 0 7px #c79a3f2e,0 0 24px #2f7a629e}.sidebar{border-right-color:#2f7a622e;background:linear-gradient(180deg,#fffdf7fa,#e8f0e7f5),var(--surface)}.brand span,.nav-item,.topbar h1+p{color:var(--muted)}.nav-item:hover,.nav-item.active,.sidebar .ghost-button,.toggle-chip,.knowledge-category-chip,.segment.active,.nav-icon,.source-tag,.chip,.agent-role,.planner-citation-item span,.weather-detail-grid span,.mini-ai-sources span,.mini-ai-suggestions button{background:#2f7a621a;color:var(--river-dark)}.nav-icon{border:1px solid rgba(47,122,98,.1)}.scenic-card:hover,.scenic-card:focus-visible,.route-scene-card.highlight,.route-scene-card:focus-within{border-color:#2f7a6261;box-shadow:0 22px 58px #2b4a3b29}.scenic-photo,.gallery-preview.image-missing:before,.gallery-thumb.image-missing:before,.media-layout canvas,#route-visual-canvas,.route-card-photo,.route-gallery-thumb,.route-modal-thumb,.route-modal-photo,.wuhan-map-shell{background:#dbe4d6}.scenic-index,.route-step-index,.message.user,.mini-ai-message.user,.workflow-node.active .workflow-index,.weather-marker,.tool-stop{background:var(--river-dark);color:#fffdf7}.scenic-visit,.workflow-node.done .workflow-index,.tool-stop.stop-e,.weather-marker:hover,.weather-marker.active{background:var(--brick);color:#fffdf7}.scenic-source,.delete-itinerary,.route-card-actions .ghost-button,.ghost-button,.mini-ai-icon-button{border-color:#2f7a6238;background:#fffdf7eb;color:var(--river-dark)}.status-pill.ready,.status-pill.running,.status-pill.done{border-color:#2f7a6247;background:#2f7a621a;color:var(--river-dark)}.status-pill.done{background:#6f8f5f26}.status-pill.running{background:#c79a3f29;color:#6b4b18}textarea:focus,input:focus,select:focus{border-color:var(--river);box-shadow:0 0 0 3px #2f7a6224}.budget-track{background:#2f7a621f}.weather-card{border-color:#7b5a252e;background:#fffdf7f0;box-shadow:0 18px 44px #2b4a3b29}.weather-card strong,.eyebrow,.time-block,.knowledge-source a{color:var(--river-dark)}.mini-ai-avatar{background:radial-gradient(circle at 50% 30%,#fffdf7f5,#e8f0e7db 44%,#195a48f2),var(--river-dark);box-shadow:0 20px 42px #2b4a3b47}.mini-ai-avatar:hover,.mini-ai.open .mini-ai-avatar{box-shadow:0 24px 54px #2b4a3b57}.mini-ai-orbit{border-color:#c79a3f47}.mini-ai-face{background:linear-gradient(180deg,#fffdf7,#dce6d8)}.mini-ai-mouth,.mini-ai-dot{background:var(--gold)}.mini-ai-dot{box-shadow:0 0 0 6px #c79a3f29}.mini-ai-panel{border-color:#2f7a6238;box-shadow:0 28px 76px #2b4a3b38}.mini-ai-messages{background-color:#f7f6ee}html,body{background:linear-gradient(110deg,rgba(217,180,94,.08),transparent 32%),linear-gradient(180deg,#06110e,#0a1713 44%,#101b16)}body{color:var(--ink)}.login-screen{background:linear-gradient(126deg,#050f0df5,#0b1c17fa 46%,#1c2116f5),#07120f}.login-screen:before{top:-120px;right:-90px;width:620px;height:420px;background:linear-gradient(138deg,transparent 0 20%,rgba(217,180,94,.22) 21% 24%,transparent 25%),linear-gradient(26deg,transparent 0 43%,rgba(142,160,111,.2) 44% 47%,transparent 48%);opacity:1}.login-screen:after{height:24vh;background:linear-gradient(170deg,#d9b45e38,#d9b45e00 56%),linear-gradient(8deg,#48665547,#48665500 44%)}.login-bg-grid{background:linear-gradient(90deg,rgba(217,180,94,.07) 1px,transparent 1px),linear-gradient(0deg,rgba(217,180,94,.05) 1px,transparent 1px);background-size:64px 64px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 18%,#000 82%,transparent);mask-image:linear-gradient(90deg,transparent,#000 18%,#000 82%,transparent)}.login-network{opacity:.7;background:linear-gradient(28deg,transparent 0 47%,rgba(217,180,94,.44) 48% 50%,transparent 51%),linear-gradient(145deg,transparent 0 45%,rgba(142,160,111,.26) 46% 48%,transparent 49%),radial-gradient(circle at 12% 58%,rgba(217,180,94,.42) 0 4px,transparent 5px),radial-gradient(circle at 48% 34%,rgba(142,160,111,.36) 0 4px,transparent 5px),radial-gradient(circle at 82% 72%,rgba(217,180,94,.32) 0 4px,transparent 5px)}.login-card{border-color:#d9b45e47;border-radius:18px;background:linear-gradient(135deg,#0d211ce6,#0b1612db),#0b1a16e0;box-shadow:0 34px 90px #0000006b,inset 0 1px #f6efe214}.login-showcase{border:1px solid rgba(217,180,94,.22);border-radius:14px;background:linear-gradient(155deg,#081613f5,#142c25e6),#0c201b;box-shadow:inset 0 0 120px #d9b45e14}.wuhan-map-stage{border-color:#d9b45e3d;background:linear-gradient(90deg,rgba(217,180,94,.05) 1px,transparent 1px),linear-gradient(0deg,rgba(217,180,94,.04) 1px,transparent 1px),#040f0d6b;background-size:42px 42px;box-shadow:inset 0 0 90px #0000005c}.river-flow,.river-wide,.river-band{background:repeating-linear-gradient(90deg,rgba(246,239,226,.22) 0 24px,transparent 24px 54px),linear-gradient(90deg,#486655cc,#105448db,#d9b45eb8);box-shadow:0 18px 48px #00000038}.metro-glow,.line-two{background:linear-gradient(90deg,#d9b45e0a,#d9b45eeb,#8ea06f47);box-shadow:0 0 22px #d9b45e5c}.city-node{border-color:#f6efe2b8;background:#0d211ce0;color:var(--river-dark);box-shadow:0 14px 32px #00000042}.city-tower,.platform-logo,.brand-mark{background:linear-gradient(135deg,#d9b45e,#8ea06f);color:#07120f;box-shadow:0 18px 42px #d9b45e3d}.showcase-caption{border-color:#d9b45e47;background:#081411c7;color:var(--ink);box-shadow:0 22px 52px #00000047}.showcase-caption span,.showcase-caption p{color:var(--muted)}.login-panel{border:1px solid rgba(217,180,94,.28);border-radius:14px;background:linear-gradient(180deg,#fbf7ebfa,#e7e1ccf5),#f6efe2;padding:clamp(24px,3vw,42px);color:#12231e;box-shadow:0 22px 60px #0000004d}.login-title-row{margin-bottom:10px}.login-title-row h1{color:#0f211c;font-size:clamp(32px,3.1vw,46px);white-space:nowrap}.login-title-row p{color:#60705f}.login-mode-title{margin:24px 0 34px;border-bottom-color:#0f211c2e;color:#0f211c;font-size:23px}.login-mode-title:after,.login-tab.active:after{background:linear-gradient(90deg,#0f211c,#d9b45e)}.login-field{border-bottom-color:#0f211c2e}.login-field-icon{color:#9a8050}.login-field input{color:#12231e}.login-field input::placeholder{color:#7c8778}#captcha-canvas{background:#e5ddc6}.login-button,.primary-button{background:linear-gradient(135deg,#d9b45e,#f1d486);color:#07120f;box-shadow:0 16px 34px #d9b45e3d}.login-tip{color:#63715e}.app-shell{background:linear-gradient(90deg,rgba(217,180,94,.06),transparent 24%),linear-gradient(180deg,#07120f,#101b16)}.sidebar{border-right-color:#d9b45e2e;background:linear-gradient(180deg,#081411fa,#0e1f1af5),var(--surface);color:var(--ink);box-shadow:22px 0 60px #0003}.brand strong,.topbar h1,.panel-header h2,.scenic-title-row h3,.route-scene-card strong,.gallery-copy h2,.knowledge-card strong,.citation-card strong,.mini-ai-title strong{color:var(--ink)}.brand span,.nav-item,.topbar h1+p,.metric-card span,.scenic-title-row p,.scenic-desc,.route-scene-card small,.route-scene-card p,.gallery-copy p,.empty-card,.empty-itinerary p,.knowledge-card p,.citation-card p,.mini-ai-title span:last-child{color:var(--muted)}.nav-item{border:1px solid transparent}.nav-item:hover,.nav-item.active{border-color:#d9b45e38;background:#d9b45e1f;color:var(--river-dark)}.nav-icon,.scenic-index,.route-step-index,.workflow-node.active .workflow-index,.weather-marker,.tool-stop,.message.user,.mini-ai-message.user{background:#d9b45e;color:#07120f}.main{padding:clamp(22px,2.6vw,34px)}.topbar{min-height:70px;margin-bottom:26px;border-bottom:1px solid rgba(217,180,94,.14);padding-bottom:18px}.topbar h1{margin:0;font-size:clamp(34px,4vw,56px);letter-spacing:0}.panel,.metric-card,.scenic-card,.route-scene-card,.gallery-hero,.gallery-thumb,.itinerary-item,.knowledge-card,.citation-card,.workflow-node,.module-card,.tool-card,.weather-card,.route-modal-card,.mini-ai-panel{border-color:#d9b45e2e;background:linear-gradient(180deg,#122721eb,#0c1b17eb),var(--surface);color:var(--ink);box-shadow:var(--shadow)}.panel,.metric-card{padding:clamp(18px,2vw,24px)}.eyebrow,.gallery-area,.weather-card strong,.time-block,.knowledge-source a,.route-image-prompt strong{color:var(--river-dark)}.status-pill,.status-pill.ready,.status-pill.done,.status-pill.running{border-color:#d9b45e47;background:#d9b45e1f;color:var(--river-dark)}.ghost-button,.icon-button,.segment,.mini-ai-icon-button,.route-card-actions .ghost-button,.delete-itinerary,.scenic-source{border-color:#d9b45e38;background:#f6efe20f;color:var(--river-dark)}.ghost-button:hover,.icon-button:hover,.segment:hover,.scenic-source:hover,.mini-ai-icon-button:hover{background:#d9b45e24}input,select,textarea{border:1px solid rgba(217,180,94,.2);background:#f6efe20f;color:var(--ink)}input::placeholder,textarea::placeholder{color:#b7c0adb8}textarea:focus,input:focus,select:focus{border-color:#d9b45eb8;box-shadow:0 0 0 3px #d9b45e24}.scenic-list{grid-template-columns:repeat(12,minmax(0,1fr));gap:18px}.scenic-card{grid-column:span 6;grid-template-columns:minmax(190px,.42fr) minmax(0,1fr);border-radius:12px}.scenic-card:nth-child(1),.scenic-card:nth-child(8),.scenic-card:nth-child(13),.scenic-card:nth-child(20){grid-column:span 12;min-height:300px;grid-template-columns:minmax(360px,.54fr) minmax(0,1fr)}.scenic-card:hover,.scenic-card:focus-visible,.route-scene-card.highlight,.route-scene-card:focus-within,.gallery-thumb.active,.gallery-thumb:hover,.gallery-thumb:focus-visible{border-color:#d9b45e6b;box-shadow:0 26px 72px #00000061}.scenic-photo,.gallery-preview,.gallery-thumb.image-missing:before,.gallery-preview.image-missing:before,.route-card-photo,.route-gallery-thumb,.route-modal-photo,.route-modal-thumb,.media-layout canvas,#route-visual-canvas,.wuhan-map-shell,.model-stage,.bridge-stage{background:linear-gradient(135deg,#d9b45e1f,#8ea06f1a),#0d211c}.source-tag,.chip,.agent-role,.route-feature-tags em,.knowledge-category-chip,.planner-citation-item span,.weather-detail-grid span,.mini-ai-sources span,.mini-ai-suggestions button{border:1px solid rgba(217,180,94,.18);background:#d9b45e1f;color:var(--river-dark)}.scenic-visit,.workflow-node.done .workflow-index,.tool-stop.stop-e,.weather-marker:hover,.weather-marker.active{background:#8ea06f;color:#07120f}.gallery-list,.route-storyboard{gap:18px}.gallery-hero{border-radius:14px}.route-visual-layout{gap:18px}#route-visual-canvas{border-color:#d9b45e38;box-shadow:inset 0 0 0 1px #f6efe20a,0 20px 60px #0000003d}.route-scene-card{border-radius:12px}.route-card-photo:after{background:linear-gradient(180deg,transparent 42%,rgba(7,18,15,.58))}.route-gallery-thumb.active{border-color:var(--river-dark)}.route-image-prompt,.empty-itinerary,.memory-note,.alert-box,.schema-box{border-color:#d9b45e2e;background:#f6efe20f;color:var(--muted)}.chat-log{border-color:#d9b45e2e;background:linear-gradient(90deg,rgba(217,180,94,.04) 1px,transparent 1px),linear-gradient(0deg,rgba(217,180,94,.035) 1px,transparent 1px),#07120f9e;background-size:32px 32px}.message.assistant{border-color:#d9b45e2e;background:#f6efe214;color:var(--ink)}.message.system{color:var(--muted)}.wuhan-map-image{filter:saturate(.9) contrast(1.06)}.weather-card{background:#0c1b17eb}.mini-ai-avatar{border-color:#d9b45e6b;background:radial-gradient(circle at 50% 30%,#f6efe2f2,#d9b45ec2 38%,#09201bfa),#d9b45e;box-shadow:0 24px 58px #00000057}.mini-ai-panel{border-radius:14px;background:#0c1b17f5}.mini-ai-header,.mini-ai-messages{background:linear-gradient(90deg,rgba(217,180,94,.05) 1px,transparent 1px),linear-gradient(0deg,rgba(217,180,94,.04) 1px,transparent 1px),#0b1b17;background-size:32px 32px}.mini-ai-message.assistant{border-color:#d9b45e29;background:#f6efe214;color:var(--ink)}.mini-ai-face{background:linear-gradient(180deg,#f6efe2,#d9b45e)}.mini-ai-eye{background:#07120f}.mini-ai-mouth,.mini-ai-dot{background:#d9b45e}.mini-ai-label{border-color:#07120f;background:#d9b45e;color:#07120f}.route-modal-backdrop{background:#030908b8}.route-modal-close{border-color:#d9b45e47;background:#f6efe214;color:var(--river-dark)}.budget-track{background:#f6efe214}.budget-fill{background:linear-gradient(90deg,#8ea06f,#d9b45e)}.module-card code{background:#f6efe214;color:var(--river-dark)}.eyebrow{letter-spacing:0;text-transform:none}button,.scenic-card,.gallery-thumb,.route-scene-card,.knowledge-card,.citation-card{-webkit-tap-highlight-color:transparent}button:active,.primary-button:active,.ghost-button:active,.segment:active,.scenic-card:active,.gallery-thumb:active,.route-scene-card:active{transform:translateY(1px) scale(.99)}.app-shell{isolation:isolate}.app-shell:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(115deg,rgba(217,180,94,.08),transparent 24%),linear-gradient(250deg,rgba(142,160,111,.1),transparent 28%)}.sidebar{position:sticky;isolation:isolate}.sidebar:after{content:"";position:absolute;right:0;bottom:0;left:0;height:38%;pointer-events:none;background:linear-gradient(180deg,transparent,rgba(217,180,94,.06))}.brand{position:relative;z-index:1}.brand-mark{border-radius:2px;font-size:15px;letter-spacing:0}.nav-list{position:relative;z-index:1}.nav-item{min-height:48px}.nav-item.active{box-shadow:inset 0 0 0 1px #d9b45e29}.topbar{align-items:flex-end}.topbar h1{font-weight:900;text-wrap:balance}.panel,.scenic-card,.route-scene-card,.gallery-hero,.gallery-thumb,.mini-ai-panel{position:relative;overflow:hidden}.panel:before,.scenic-card:before,.route-scene-card:before,.gallery-thumb:before,.mini-ai-panel:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(135deg,rgba(246,239,226,.08),transparent 34%),linear-gradient(315deg,rgba(217,180,94,.08),transparent 46%);opacity:.62}.panel>*,.scenic-card>*,.route-scene-card>*,.gallery-thumb>*,.mini-ai-panel>*{position:relative;z-index:1}.panel-header{align-items:center;border-bottom:1px solid rgba(217,180,94,.1);padding-bottom:14px}.panel-header h2{font-size:clamp(20px,1.7vw,26px)}.scenic-card{min-height:240px;transition:transform .28s cubic-bezier(.16,1,.3,1),border-color .28s ease,box-shadow .28s ease}.scenic-card:nth-child(1),.scenic-card:nth-child(8),.scenic-card:nth-child(13),.scenic-card:nth-child(20){min-height:330px}.scenic-card:hover,.scenic-card:focus-visible{transform:translateY(-4px)}.scenic-photo:after,.gallery-preview:after,.route-card-photo:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 42%,rgba(7,18,15,.32)),linear-gradient(90deg,rgba(7,18,15,.18),transparent 42%)}.scenic-content{padding:clamp(18px,2.2vw,28px)}.scenic-title-row{align-items:flex-start}.scenic-title-row h3{font-size:clamp(22px,2vw,30px)}.scenic-card:not(:nth-child(1)):not(:nth-child(8)):not(:nth-child(13)) .scenic-title-row h3{font-size:clamp(19px,1.45vw,24px)}.scenic-desc{max-width:68ch}.source-tag,.chip,.agent-role,.route-feature-tags em,.knowledge-category-chip,.weather-detail-grid span,.mini-ai-suggestions button{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.scenic-visit{position:absolute;z-index:2;right:18px;bottom:18px;min-height:34px;max-width:132px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;box-shadow:0 10px 28px #0000002e}.route-visual-panel{padding:clamp(18px,2vw,26px)}.route-scene-card{min-height:272px;grid-template-columns:minmax(220px,.35fr) minmax(0,1fr)}.route-card-body{gap:12px;padding:clamp(16px,1.8vw,24px)}.route-card-photo{min-height:272px}.route-image-prompt{padding:18px}.knowledge-form,.chat-form,.mini-ai-form{gap:14px}.empty-itinerary,.empty-card{padding:22px}.weather-marker{box-shadow:0 12px 28px #00000038,0 0 0 4px #d9b45e1f}.mini-ai-avatar{width:80px;height:80px}.mini-ai-panel{border-radius:16px}.mini-ai-suggestions{background:#07120fb3}@media(prefers-reduced-motion:no-preference){.login-card{animation:tasteRise .72s cubic-bezier(.16,1,.3,1) both}.active-view{animation:tasteViewIn .42s cubic-bezier(.16,1,.3,1) both}.scenic-card,.route-scene-card,.gallery-thumb{animation:tasteCardIn .54s cubic-bezier(.16,1,.3,1) both;animation-delay:min(calc(var(--taste-index, 0) * 28ms),.24s)}}@keyframes tasteRise{0%{opacity:0;transform:translateY(18px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes tasteViewIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes tasteCardIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.mini-ai-avatar,.mini-ai-orbit,.mini-ai-eye,.scenic-card,.scenic-photo img,.route-scene-card,.gallery-thumb,.login-card,.active-view{animation:none;transition:none}}html body .mini-ai-panel .mini-ai-form #mini-ai-input{opacity:1!important;background:#fff!important;color:#111714!important;-webkit-text-fill-color:#111714!important;text-shadow:none!important;font-weight:750!important}html body .mini-ai-panel .mini-ai-form #mini-ai-input::placeholder{color:#6a716d!important;-webkit-text-fill-color:#6a716d!important;opacity:1!important;font-weight:500!important}@media(max-width:1180px){.login-screen{position:relative;min-height:100vh}.login-card{grid-template-columns:1fr;gap:30px}.login-showcase{min-height:420px}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.model-hero{grid-template-columns:1fr}.model-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.model-card.feature-model{grid-column:span 1}.dashboard-grid,.itinerary-layout,.split-layout,.map-layout,.media-layout,.settings-grid{grid-template-columns:1fr}.planner-layout{grid-template-columns:minmax(200px,1fr) minmax(260px,1.3fr) minmax(200px,1fr);align-items:stretch}.scenic-list{grid-template-columns:1fr}.scenic-card,.scenic-card:nth-child(1),.scenic-card:nth-child(8),.scenic-card:nth-child(13),.scenic-card:nth-child(20){grid-column:1 / -1;min-height:0;grid-template-columns:1fr}.gallery-hero{grid-template-columns:1fr}.gallery-list{grid-template-columns:repeat(3,minmax(0,1fr))}.route-storyboard{grid-template-columns:repeat(auto-fit,minmax(420px,1fr))}.route-modal-card{grid-template-columns:1fr;overflow:auto}.route-modal-photo img{min-height:280px;max-height:360px}.scenic-card.featured{grid-column:span 1;grid-template-columns:190px minmax(0,1fr);min-height:218px}.chat-panel{min-height:auto}}@media(max-width:820px){.login-screen{padding:14px}.login-card{min-height:auto;border-radius:18px;padding:20px}.login-showcase{min-height:330px}.login-model-layer{inset:0;opacity:.7}.login-model-blossom{left:2%;top:4px;width:30%;height:78px}.login-model-yellow{right:2%;bottom:8px;width:84px;height:142px}.login-model-doupi{left:3%;bottom:6px;width:38%;height:82px}.login-model-suanniao{right:2%;top:-8px;width:98px;height:154px}.login-model-reganmian{top:0;left:50%;width:40%;height:116px}.login-model-bianzhong{bottom:2px;left:50%;width:40%;height:88px}.wuhan-map-stage{inset:28px 18px 86px}.showcase-caption{right:16px;left:16px;bottom:16px}.login-title-row h1{font-size:30px}.login-tab,.login-field input{font-size:18px}.captcha-row{grid-template-columns:34px minmax(0,1fr) 122px}#captcha-canvas{width:122px}.login-button{width:100%;min-height:58px;font-size:22px}.app-shell{grid-template-columns:1fr}.sidebar{position:relative;height:auto;padding:18px}.nav-list{grid-template-columns:repeat(4,minmax(0,1fr))}.nav-item{justify-content:center}.nav-item span:last-child{display:none}.sidebar-card{margin-top:0}.main{padding:18px}.topbar{align-items:stretch;flex-direction:column}.topbar-actions{justify-content:space-between}.metric-grid{grid-template-columns:1fr}.model-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.model-card{min-height:260px}.bridge-stage{min-height:250px}.scenic-hero{grid-template-columns:1fr}.scenic-hero-badge{width:min(220px,100%);min-height:96px}.scenic-card,.scenic-card.featured{min-height:0;grid-template-columns:1fr}.scenic-photo{aspect-ratio:16 / 10}.scenic-content{padding:16px}.scenic-meta{padding-right:0}.scenic-visit{position:static;justify-self:start;margin:0 16px 16px}.gallery-preview img{min-height:340px}.gallery-list{grid-template-columns:repeat(2,minmax(0,1fr))}.route-storyboard,.route-scene-card{grid-template-columns:1fr}.route-card-photo{min-height:260px}.route-board,.tool-map{height:420px}.wuhan-map-image{min-height:430px}.weather-card{position:static;width:auto;margin:12px}.weather-marker{font-size:12px;padding:4px 8px}.workflow-track{grid-template-columns:1fr}.chat-log{height:360px}.mini-ai{right:16px;bottom:16px}.mini-ai-avatar{width:66px;height:66px}.mini-ai-panel{width:calc(100vw - 32px);max-height:min(600px,calc(100vh - 98px))}}@media(max-width:560px){.nav-list{grid-template-columns:repeat(3,minmax(0,1fr))}.model-grid{grid-template-columns:1fr}.model-hero,.model-card{min-height:0}.model-stage{min-height:230px}.bridge-stage{min-height:220px}.panel,.metric-card{padding:14px}.itinerary-item,.itinerary-form,.knowledge-form-grid,.knowledge-actions,.knowledge-search{grid-template-columns:1fr}.itinerary-form textarea{grid-column:auto}.segmented,.gallery-list,.route-storyboard{grid-template-columns:1fr}.gallery-thumb{min-height:0}.message{max-width:100%}.mini-ai{right:10px;bottom:10px}.mini-ai-panel{width:calc(100vw - 20px);border-radius:10px}.mini-ai-message{max-width:94%}.mini-ai-form{grid-template-columns:1fr}}body{font-family:Inter,Microsoft YaHei,PingFang SC,Noto Sans CJK SC,Aptos,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.liquid-glass{position:relative;overflow:hidden;border:none;background:#0006;background-blend-mode:luminosity;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);box-shadow:inset 0 1px 1px #ffffff1a}.liquid-glass:before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1.4px;background:linear-gradient(180deg,#ffffff4d,#ffffff1a 20%,#fff0 40% 60%,#ffffff1a 80%,#ffffff4d);pointer-events:none;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude}.login-screen{display:block;min-height:100dvh;padding:0;background:#050807}.login-screen:before,.login-screen:after,.login-bg-grid,.login-network,.login-model-layer{display:none}.login-video-bg{position:absolute;inset:0;z-index:0;width:100%;height:100%;background:#050807;object-fit:cover}.login-video-nav{position:absolute;top:24px;right:clamp(24px,4vw,64px);left:clamp(24px,4vw,64px);z-index:6;display:flex;min-height:56px;align-items:center;justify-content:space-between;gap:18px;border-radius:14px;padding:8px 10px 8px 18px;color:#fff}.login-video-nav strong{flex:0 0 auto;color:#fff;font-size:24px;font-weight:650;letter-spacing:-.03em}.login-video-nav nav{display:flex;min-width:0;align-items:center;justify-content:center;gap:clamp(22px,3vw,36px);color:#ffffffc7;font-size:14px}.login-video-nav nav span{transition:color .22s ease,transform .22s ease}.login-video-nav nav span:hover{color:#e5e7eb;transform:translateY(-1px)}.login-video-nav button,.hero-primary-action{min-height:40px;border:0;border-radius:10px;background:#fff;color:#050807;padding:9px 24px;font-size:14px;font-weight:650;transition:background .22s ease,transform .22s ease}.login-video-nav button:hover,.hero-primary-action:hover{background:#f3f4f6;transform:translateY(-1px)}.login-video-hero{position:absolute;inset:0;z-index:3;display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,460px);align-items:end;gap:clamp(28px,5vw,74px);padding:112px clamp(24px,4vw,64px) clamp(42px,6vh,72px);pointer-events:none}.login-video-copy,.login-video-tag{pointer-events:auto}.login-video-copy{max-width:760px}.login-video-copy h2{margin:0 0 16px;color:#fff;font-size:clamp(44px,6vw,96px);font-weight:400;letter-spacing:-.04em;line-height:.96;text-wrap:balance}.video-heading-line{display:block;overflow:visible}.video-heading-char{display:inline-block;opacity:0;transform:translate(-18px);transition:opacity .5s ease,transform .5s ease}.video-heading-ready .video-heading-char{opacity:1;transform:translate(0)}.login-video-copy p{max-width:620px;margin:0 0 20px;color:#d1d5db;font-size:clamp(16px,1.5vw,19px);line-height:1.65}.hero-fade{opacity:0;animation:heroFadeIn 1s ease forwards}.hero-fade-copy{animation-delay:.8s}.hero-fade-actions{display:flex;flex-wrap:wrap;gap:16px;animation-delay:1.2s}.hero-secondary-action{min-height:48px;border:1px solid rgba(255,255,255,.2);border-radius:10px;color:#fff;padding:11px 28px;font-size:15px;font-weight:650;transition:background .22s ease,color .22s ease,transform .22s ease}.hero-secondary-action:hover{background:#fff;color:#050807;transform:translateY(-1px)}.login-video-tag{align-self:end;justify-self:end;border:1px solid rgba(255,255,255,.2);border-radius:14px;color:#fff;padding:14px 24px;font-size:clamp(18px,2vw,28px);font-weight:300;animation-delay:1.4s;white-space:nowrap}.login-card{position:absolute;right:clamp(24px,4vw,64px);bottom:clamp(132px,18vh,188px);z-index:5;display:block;width:min(460px,calc(100vw - 48px));min-height:0;border:0;border-radius:0;background:transparent;box-shadow:none;padding:0;-webkit-backdrop-filter:none;backdrop-filter:none}.login-showcase{display:none}.login-panel{width:100%;border:1px solid rgba(255,255,255,.2);border-radius:16px;background:#0006;background-blend-mode:luminosity;color:#fff;padding:clamp(22px,2.2vw,32px);box-shadow:inset 0 1px 1px #ffffff1a,0 24px 70px #0000003d;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.login-panel-attention{border-color:#ffffff94;box-shadow:inset 0 1px 1px #ffffff2e,0 0 0 4px #ffffff1a,0 28px 78px #0000004d}.login-panel:before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1.4px;background:linear-gradient(180deg,#ffffff4d,#ffffff1a 20%,#fff0 40% 60%,#ffffff1a 80%,#ffffff4d);pointer-events:none;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude}.login-title-row{position:relative;z-index:1;gap:12px;margin-bottom:6px}.platform-logo{width:46px;height:46px;border-radius:12px;background:#fffffff0;box-shadow:none}.platform-logo span{background:#000000d1}.login-title-row h1{color:#fff;font-size:clamp(26px,2.2vw,34px);font-weight:600}.login-title-row p{color:#ffffffb8;font-size:13px;font-weight:500}.login-mode-title{position:relative;z-index:1;margin:18px 0 22px;border-bottom-color:#ffffff2e;color:#fff;font-size:18px;line-height:44px}.login-mode-title:after{background:#fff}.login-field{position:relative;z-index:1;min-height:70px;border-bottom-color:#ffffff2e}.login-field-icon{color:#ffffff94}.login-field input{min-height:48px;color:#fff;font-size:18px}.login-field input::placeholder{color:#ffffffa3}#captcha-canvas{width:148px;height:50px;background:#ffffffeb}.login-button{position:relative;z-index:1;width:100%;min-height:52px;margin-top:28px;border-radius:10px;background:#fff;color:#050807;box-shadow:none;font-size:18px}.login-tip{position:relative;z-index:1;color:#ffffffb8}@keyframes heroFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1180px){.login-video-hero{grid-template-columns:1fr}.login-video-tag{justify-self:start}.login-card{position:relative;right:auto;bottom:auto;z-index:5;width:min(620px,calc(100vw - 32px));margin:min(58vh,520px) auto 28px}}@media(max-width:820px){.login-video-nav{top:14px;right:14px;left:14px;min-height:50px;padding:7px 8px 7px 13px}.login-video-nav strong{font-size:20px}.login-video-nav nav{display:none}.login-video-nav button{padding:8px 14px}.login-video-hero{position:relative;min-height:100dvh;padding:94px 18px 28px}.login-video-copy h2{font-size:clamp(42px,13vw,58px)}.login-video-copy p{max-width:28rem;font-size:15px}.login-video-tag{max-width:100%;white-space:normal;font-size:18px}.login-card{margin:0 auto 18px}.login-panel{padding:20px}.captcha-row{grid-template-columns:34px minmax(0,1fr) 118px}#captcha-canvas{width:118px}}@media(prefers-reduced-motion:reduce){.video-heading-char,.hero-fade{opacity:1;transform:none;animation:none;transition:none}}.dashboard-model-gallery{display:grid;gap:clamp(18px,2.2vw,28px);overflow:hidden;border:1px solid rgba(217,180,94,.22);border-radius:16px;background:radial-gradient(circle at 18% 0%,rgba(217,180,94,.18),transparent 32%),radial-gradient(circle at 92% 18%,rgba(142,160,111,.18),transparent 30%),linear-gradient(145deg,#0c1d18f5,#07120ffa);box-shadow:0 28px 80px #00000042;padding:clamp(18px,2.5vw,32px)}.dashboard-model-header{display:flex;align-items:end;justify-content:space-between;gap:22px}.dashboard-model-header h2{margin:6px 0 0;color:#f6efe2;font-size:clamp(26px,2.7vw,42px);line-height:1.08}.dashboard-model-header p{max-width:46ch;margin:0;color:#f6efe2ad;font-size:15px;line-height:1.7}.dashboard-model-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:clamp(12px,1.25vw,18px)}.dashboard-model-card{position:relative;display:grid;min-height:302px;overflow:hidden;grid-template-rows:auto minmax(0,1fr);border:1px solid rgba(217,180,94,.18);border-radius:14px;background:linear-gradient(180deg,#f6efe214,#f6efe206),#091713c7;box-shadow:inset 0 1px #f6efe214;transition:transform .26s cubic-bezier(.16,1,.3,1),border-color .26s ease,background .26s ease}.dashboard-model-card:hover{transform:translateY(-4px);border-color:#d9b45e6b;background:linear-gradient(180deg,#f6efe21a,#f6efe209),#0c1d18e6}.dashboard-model-feature{grid-column:span 2}.dashboard-model-copy{position:relative;z-index:2;display:flex;min-height:70px;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid rgba(217,180,94,.12);padding:16px}.dashboard-model-copy strong{color:#f6efe2;font-size:clamp(19px,1.25vw,24px);line-height:1.1}.dashboard-model-copy span{max-width:9.5em;color:#f6efe299;font-size:12px;font-weight:800;line-height:1.35;text-align:right}.dashboard-model-stage{min-height:232px;overflow:visible;background:radial-gradient(ellipse at 50% 74%,rgba(217,180,94,.2),transparent 45%),linear-gradient(180deg,#1830266b,#07120f14)}.dashboard-model-feature .dashboard-model-stage{min-height:260px}.dashboard-model-stage .model-canvas{position:absolute;inset:0}.dashboard-model-stage:after{right:10%;bottom:13%;left:10%;height:42px;border-radius:999px;background:radial-gradient(ellipse at center,rgba(217,180,94,.3),transparent 68%)}.dashboard-model-stage.model-loading:before,.dashboard-model-stage.model-error:before{background:#07120fad;color:#d9b45e}.dashboard-model-reganmian{min-height:272px}.dashboard-model-yellow,.dashboard-model-suanniao,.dashboard-model-bianzhong{min-height:254px}@media(max-width:1420px){.dashboard-model-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-model-feature{grid-column:span 1}}@media(max-width:900px){.dashboard-model-header{align-items:start;flex-direction:column}.dashboard-model-header p{max-width:100%}.dashboard-model-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.dashboard-model-gallery{border-radius:12px;padding:14px}.dashboard-model-grid{grid-template-columns:1fr}.dashboard-model-card,.dashboard-model-feature{min-height:282px}.dashboard-model-stage,.dashboard-model-feature .dashboard-model-stage{min-height:224px}}.app-shell:not(.app-hidden){--bg: #050807;--surface: rgba(0, 0, 0, .4);--surface-2: rgba(255, 255, 255, .08);--ink: #ffffff;--muted: rgba(255, 255, 255, .7);--line: rgba(255, 255, 255, .16);--river: #ffffff;--river-dark: #ffffff;--leaf: rgba(255, 255, 255, .68);--brick: rgba(255, 255, 255, .78);--gold: #ffffff;--shadow: 0 24px 80px rgba(0, 0, 0, .34);--radius: 16px;position:relative;isolation:isolate;gap:24px;min-height:100dvh;grid-template-columns:278px minmax(0,1fr);background:#050807;padding:24px}.app-shell:not(.app-hidden):before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;background:linear-gradient(90deg,#050807e0,#05080785 46%,#050807db),linear-gradient(180deg,#0508073d,#050807e6),url(/assets/yangtze-night-WP5Myw3O.jpg) center / cover no-repeat;filter:saturate(1.06) contrast(1.02)}.app-shell:not(.app-hidden):after{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;background:radial-gradient(circle at 16% 12%,rgba(255,255,255,.1),transparent 24%),radial-gradient(circle at 82% 8%,rgba(255,255,255,.07),transparent 26%),linear-gradient(180deg,transparent,rgba(0,0,0,.28))}.app-shell:not(.app-hidden) .sidebar,.app-shell:not(.app-hidden) .main{position:relative;z-index:1}.app-shell:not(.app-hidden) .sidebar{top:24px;height:calc(100dvh - 48px);overflow:hidden;border:1px solid rgba(255,255,255,.16);border-radius:18px;background:#00000061;color:#fff;padding:22px 16px;box-shadow:inset 0 1px 1px #ffffff1a,0 26px 70px #00000047;backdrop-filter:blur(10px) saturate(130%);-webkit-backdrop-filter:blur(10px) saturate(130%)}.app-shell:not(.app-hidden) .sidebar:after{display:none}.app-shell:not(.app-hidden) .brand{min-height:58px;gap:13px;padding:0 4px 18px}.app-shell:not(.app-hidden) .brand-mark{width:46px;height:46px;border:1px solid rgba(255,255,255,.24);border-radius:12px;background:#fff;color:#050807;box-shadow:none}.app-shell:not(.app-hidden) .brand strong,.app-shell:not(.app-hidden) .topbar h1,.app-shell:not(.app-hidden) .panel-header h2,.app-shell:not(.app-hidden) .gallery-copy h2,.app-shell:not(.app-hidden) .route-scene-card strong,.app-shell:not(.app-hidden) .knowledge-card strong,.app-shell:not(.app-hidden) .dashboard-model-header h2{color:#fff;letter-spacing:-.035em}.app-shell:not(.app-hidden) .brand span{color:#ffffffa8}.app-shell:not(.app-hidden) .nav-list{gap:10px}.app-shell:not(.app-hidden) .nav-item{min-height:50px;border:1px solid transparent;border-radius:12px;background:transparent;color:#ffffffb8;font-weight:700}.app-shell:not(.app-hidden) .nav-item:hover,.app-shell:not(.app-hidden) .nav-item.active{border-color:#ffffff38;background:#ffffff1c;color:#fff;box-shadow:inset 0 1px 1px #ffffff14,0 12px 34px #0000002e}.app-shell:not(.app-hidden) .nav-icon{border-radius:10px;background:#ffffffeb;color:#050807}.app-shell:not(.app-hidden) .main{min-width:0;padding:8px 0 40px}.app-shell:not(.app-hidden) .topbar{min-height:92px;align-items:end;margin-bottom:26px;border-bottom:1px solid rgba(255,255,255,.16);padding:0 0 22px}.app-shell:not(.app-hidden) .topbar h1{margin:0;font-size:clamp(42px,5.2vw,78px);font-weight:650;line-height:.96}.app-shell:not(.app-hidden) .view{max-width:1480px}.app-shell:not(.app-hidden) .panel,.app-shell:not(.app-hidden) .scenic-card,.app-shell:not(.app-hidden) .gallery-hero,.app-shell:not(.app-hidden) .gallery-thumb,.app-shell:not(.app-hidden) .route-scene-card,.app-shell:not(.app-hidden) .knowledge-card,.app-shell:not(.app-hidden) .itinerary-item,.app-shell:not(.app-hidden) .weather-card,.app-shell:not(.app-hidden) .route-image-prompt,.app-shell:not(.app-hidden) .dashboard-model-gallery,.route-modal-card,.mini-ai-panel{border:1px solid rgba(255,255,255,.16);border-radius:16px;background:#0006;color:#fff;box-shadow:inset 0 1px 1px #ffffff14,0 24px 70px #0000003d;backdrop-filter:blur(10px) saturate(130%);-webkit-backdrop-filter:blur(10px) saturate(130%)}.app-shell:not(.app-hidden) .panel{padding:clamp(20px,2vw,28px)}.app-shell:not(.app-hidden) .panel-header{margin-bottom:20px;border-bottom-color:#ffffff24;padding-bottom:16px}.app-shell:not(.app-hidden) .eyebrow,.app-shell:not(.app-hidden) .field-label,.app-shell:not(.app-hidden) .source-tag,.app-shell:not(.app-hidden) .gallery-area,.app-shell:not(.app-hidden) .route-scene-card small,.app-shell:not(.app-hidden) .route-feature-tags em,.app-shell:not(.app-hidden) .knowledge-source a{color:#ffffffc7}.app-shell:not(.app-hidden) p,.app-shell:not(.app-hidden) .scenic-desc,.app-shell:not(.app-hidden) .module-card p,.app-shell:not(.app-hidden) .tool-card p,.app-shell:not(.app-hidden) .knowledge-card p,.app-shell:not(.app-hidden) .route-scene-card p,.app-shell:not(.app-hidden) .gallery-copy p,.app-shell:not(.app-hidden) .weather-card p,.app-shell:not(.app-hidden) .dashboard-model-header p,.app-shell:not(.app-hidden) .dashboard-model-copy span{color:#ffffffad}.app-shell:not(.app-hidden) .primary-button,.app-shell:not(.app-hidden) .login-button{border:1px solid #fff;border-radius:12px;background:#fff;color:#050807;box-shadow:none}.app-shell:not(.app-hidden) .primary-button:hover{background:#f3f4f6;transform:translateY(-1px)}.app-shell:not(.app-hidden) .ghost-button,.app-shell:not(.app-hidden) .segment,.app-shell:not(.app-hidden) .mini-ai-icon-button,.route-modal-close{border:1px solid rgba(255,255,255,.18);border-radius:12px;background:#0000004d;color:#fff;box-shadow:inset 0 1px 1px #ffffff14}.app-shell:not(.app-hidden) .ghost-button:hover,.app-shell:not(.app-hidden) .segment:hover,.app-shell:not(.app-hidden) .segment.active,.app-shell:not(.app-hidden) .mini-ai-icon-button:hover,.route-modal-close:hover{border-color:#ffffff57;background:#ffffff1f;color:#fff}.app-shell:not(.app-hidden) .status-pill,.app-shell:not(.app-hidden) .status-pill.ready,.app-shell:not(.app-hidden) .status-pill.running,.app-shell:not(.app-hidden) .status-pill.done,.app-shell:not(.app-hidden) .knowledge-category-chip,.app-shell:not(.app-hidden) .weather-detail-grid span,.app-shell:not(.app-hidden) .mini-ai-suggestions button,.app-shell:not(.app-hidden) .route-feature-tags em,.app-shell:not(.app-hidden) .source-tag,.app-shell:not(.app-hidden) .chip{border-color:#ffffff2e;background:#ffffff1a;color:#ffffffdb}.app-shell:not(.app-hidden) input,.app-shell:not(.app-hidden) textarea,.app-shell:not(.app-hidden) select{border:1px solid rgba(255,255,255,.14);border-radius:12px;background:#00000047;color:#fff;box-shadow:inset 0 1px 1px #ffffff0d}.app-shell:not(.app-hidden) input::placeholder,.app-shell:not(.app-hidden) textarea::placeholder{color:#ffffff7a}.app-shell:not(.app-hidden) input:focus,.app-shell:not(.app-hidden) textarea:focus,.app-shell:not(.app-hidden) select:focus{border-color:#ffffff6b;outline:none;box-shadow:inset 0 1px 1px #ffffff14,0 0 0 4px #ffffff14}.app-shell:not(.app-hidden) .scenic-list{gap:18px}.app-shell:not(.app-hidden) .scenic-card{min-height:260px}.app-shell:not(.app-hidden) .scenic-card:hover,.app-shell:not(.app-hidden) .scenic-card:focus-visible,.app-shell:not(.app-hidden) .route-scene-card.highlight,.app-shell:not(.app-hidden) .route-scene-card:focus-within,.app-shell:not(.app-hidden) .gallery-thumb.active,.app-shell:not(.app-hidden) .gallery-thumb:hover,.app-shell:not(.app-hidden) .gallery-thumb:focus-visible{border-color:#ffffff5c;box-shadow:inset 0 1px 1px #ffffff1f,0 30px 84px #00000052}.app-shell:not(.app-hidden) .scenic-photo,.app-shell:not(.app-hidden) .gallery-preview,.app-shell:not(.app-hidden) .route-card-photo,.app-shell:not(.app-hidden) .route-gallery-thumb,.app-shell:not(.app-hidden) .route-modal-photo,.app-shell:not(.app-hidden) .route-modal-thumb,.app-shell:not(.app-hidden) .media-layout canvas,.app-shell:not(.app-hidden) .wuhan-map-shell{border-color:#ffffff29;background:#00000040}.app-shell:not(.app-hidden) .scenic-photo img,.app-shell:not(.app-hidden) .gallery-preview img,.app-shell:not(.app-hidden) .gallery-thumb img,.app-shell:not(.app-hidden) .route-card-photo img,.app-shell:not(.app-hidden) .route-gallery-thumb img,.app-shell:not(.app-hidden) .route-modal-photo img,.app-shell:not(.app-hidden) .wuhan-map-image{filter:saturate(.92) contrast(1.06)}.app-shell:not(.app-hidden) .route-visual-layout,.app-shell:not(.app-hidden) .gallery-view,.app-shell:not(.app-hidden) .scenic-overview{gap:18px}.app-shell:not(.app-hidden) .planner-layout{grid-template-columns:minmax(280px,1fr) minmax(360px,1.35fr) minmax(280px,1fr);align-items:stretch;gap:18px;min-height:calc(100dvh - 200px)}.app-shell:not(.app-hidden) .planner-layout>.panel{display:flex;flex-direction:column;min-height:0;overflow:hidden}.app-shell:not(.app-hidden) .chat-panel .chat-log{flex:1 1 auto;min-height:0;height:auto}.app-shell:not(.app-hidden) .chat-form{flex:0 0 auto;margin-top:14px}.app-shell:not(.app-hidden) .travel-plan-panel{min-height:0;grid-template-rows:auto 1fr}.app-shell:not(.app-hidden) .travel-plan-body{min-height:0;overflow:auto}.app-shell:not(.app-hidden) .route-visual-panel{min-height:0}.app-shell:not(.app-hidden) .route-visual-layout{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}.app-shell:not(.app-hidden) #route-visual-canvas{flex:1 1 auto;min-height:0;aspect-ratio:auto}.app-shell:not(.app-hidden) .route-storyboard{flex:0 0 auto;max-height:140px;overflow:auto}.app-shell:not(.app-hidden) .route-image-prompt{flex:0 0 auto}.app-shell:not(.app-hidden) .split-layout{grid-template-columns:minmax(0,1.12fr) minmax(360px,.62fr);align-items:start;gap:18px}.app-shell:not(.app-hidden) .media-layout{grid-template-columns:minmax(0,1fr) minmax(360px,.72fr);align-items:start;gap:18px}.app-shell:not(.app-hidden) .chat-panel{min-height:0}.app-shell:not(.app-hidden) .chat-log{height:clamp(300px,36vh,430px)}.app-shell:not(.app-hidden) .route-storyboard{grid-template-columns:1fr}.app-shell:not(.app-hidden) .route-scene-card{min-height:240px;grid-template-columns:minmax(210px,.38fr) minmax(0,1fr)}.app-shell:not(.app-hidden) .route-storyboard,.app-shell:not(.app-hidden) .gallery-list{gap:16px}.app-shell:not(.app-hidden) .dashboard-model-gallery{background:linear-gradient(135deg,rgba(255,255,255,.09),transparent 34%),#0000006b}.app-shell:not(.app-hidden) .dashboard-model-card{border-color:#ffffff24;background:linear-gradient(180deg,#ffffff14,#ffffff06),#00000038}.app-shell:not(.app-hidden) .dashboard-model-card:hover{border-color:#ffffff4d;background:linear-gradient(180deg,#ffffff1c,#ffffff09),#00000047}.app-shell:not(.app-hidden) .dashboard-model-copy{border-bottom-color:#ffffff1f}.app-shell:not(.app-hidden) .dashboard-model-stage{background:radial-gradient(ellipse at 50% 74%,rgba(255,255,255,.18),transparent 45%),linear-gradient(180deg,rgba(255,255,255,.06),transparent)}.app-shell:not(.app-hidden) .dashboard-model-stage:after{background:radial-gradient(ellipse at center,rgba(255,255,255,.22),transparent 68%)}.app-shell:not(.app-hidden) .message.user,.app-shell:not(.app-hidden) .mini-ai-message.user{background:#fff;color:#050807}.app-shell:not(.app-hidden) .weather-marker{border-color:#ffffff42;background:#0000007a;color:#fff;box-shadow:inset 0 1px 1px #ffffff1a,0 12px 30px #00000047}.app-shell:not(.app-hidden) .weather-marker:hover,.app-shell:not(.app-hidden) .weather-marker.active{background:#fff;color:#050807}.mini-ai{z-index:30}.mini-ai-avatar{border-color:#ffffff38;background:#0000006b;box-shadow:inset 0 1px 1px #ffffff14,0 24px 70px #00000052;backdrop-filter:blur(10px) saturate(130%);-webkit-backdrop-filter:blur(10px) saturate(130%)}.mini-ai-bird-stage{position:absolute;inset:-10px -8px -6px;display:block;min-height:0;overflow:visible;background:transparent;pointer-events:none}.mini-ai-bird-stage .model-canvas{position:absolute;inset:0;width:100%;height:100%}.mini-ai-bird-stage:after,.mini-ai-bird-stage.model-loading:before,.mini-ai-bird-stage.model-error:before{display:none}.mini-ai-face{background:#fff}.mini-ai-label{background:#fff;color:#050807}.route-detail-modal.open .route-modal-card,.route-detail-modal:not([hidden]) .route-modal-card{background:#0000009e}@media(max-width:1180px){.app-shell:not(.app-hidden){grid-template-columns:1fr;gap:18px;padding:18px}.app-shell:not(.app-hidden) .sidebar{top:0;height:auto}.app-shell:not(.app-hidden) .main{padding-bottom:28px}.app-shell:not(.app-hidden) .planner-layout{grid-template-columns:minmax(220px,1fr) minmax(280px,1.3fr) minmax(220px,1fr);min-height:calc(100dvh - 180px)}.app-shell:not(.app-hidden) .planner-layout>.panel{min-height:0}.app-shell:not(.app-hidden) .split-layout,.app-shell:not(.app-hidden) .media-layout{grid-template-columns:1fr}}@media(max-width:820px){.app-shell:not(.app-hidden){padding:12px}.app-shell:not(.app-hidden) .topbar{min-height:74px}.app-shell:not(.app-hidden) .topbar h1{font-size:clamp(34px,12vw,52px)}.app-shell:not(.app-hidden) .panel,.app-shell:not(.app-hidden) .dashboard-model-gallery{border-radius:14px}}.wuhan-yunyou-overview{position:relative;display:grid;gap:clamp(18px,2vw,26px);overflow:hidden;border:1px solid rgba(255,255,255,.16);border-radius:18px;background:linear-gradient(135deg,rgba(255,255,255,.1),transparent 32%),linear-gradient(180deg,#ffffff0b,#ffffff04),#0000006b;box-shadow:inset 0 1px 1px #ffffff14,0 28px 80px #00000047;padding:clamp(22px,3vw,38px);backdrop-filter:blur(10px) saturate(130%);-webkit-backdrop-filter:blur(10px) saturate(130%)}.wuhan-yunyou-overview:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(0deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:58px 58px;-webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,.75),transparent 78%);mask-image:linear-gradient(180deg,rgba(0,0,0,.75),transparent 78%)}.wuhan-yunyou-overview>*{position:relative;z-index:1}.yunyou-masthead{display:grid;min-height:320px;grid-template-columns:minmax(0,1fr) minmax(260px,.38fr);gap:clamp(20px,4vw,56px);align-items:stretch}.yunyou-title-block{display:flex;min-width:0;flex-direction:column;justify-content:center;gap:16px}.yunyou-title-block h2{margin:0;color:#fff;font-size:clamp(72px,9vw,132px);font-weight:650;letter-spacing:-.055em;line-height:.86}.yunyou-title-block p{max-width:58ch;margin:0;color:#ffffffad;font-size:clamp(15px,1.2vw,18px);line-height:1.8}.yunyou-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}.yunyou-actions .primary-button,.yunyou-actions .ghost-button{min-height:48px;padding-inline:22px}.yunyou-mascot-stage{position:relative;min-height:320px;overflow:hidden;border:1px solid rgba(255,255,255,.14);border-radius:16px;background:linear-gradient(180deg,#ffffff14,#ffffff05),#00000038}.yunyou-main-model{position:absolute;inset:-14px 0 42px;min-height:0;overflow:visible;background:transparent}.yunyou-main-model:after,.yunyou-main-model.model-loading:before,.yunyou-main-model.model-error:before,.portal-model:after,.portal-model.model-loading:before,.portal-model.model-error:before{display:none}.yunyou-mascot-note{position:absolute;right:18px;bottom:18px;left:18px;display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid rgba(255,255,255,.16);border-radius:14px;background:#0000005c;padding:12px 14px;color:#fff;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.yunyou-mascot-note strong{font-size:16px}.yunyou-mascot-note span{color:#ffffff9e;font-size:13px}.yunyou-portal-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:minmax(238px,auto);gap:clamp(12px,1.4vw,18px)}.yunyou-portal{position:relative;display:grid;min-height:238px;overflow:hidden;align-content:start;gap:7px;border:1px solid rgba(255,255,255,.14);border-radius:16px;background:linear-gradient(180deg,#ffffff17,#ffffff06),#00000047;color:#fff;padding:20px;text-align:left;box-shadow:inset 0 1px 1px #ffffff12;transition:transform .26s cubic-bezier(.16,1,.3,1),border-color .26s ease,background .26s ease,box-shadow .26s ease}.yunyou-portal:hover,.yunyou-portal:focus-visible{transform:translateY(-4px);border-color:#ffffff57;background:linear-gradient(180deg,#ffffff21,#ffffff09),#00000057;box-shadow:inset 0 1px 1px #ffffff1f,0 28px 74px #00000047;outline:none}.yunyou-portal:active{transform:translateY(1px) scale(.99)}.portal-wide{grid-column:span 2}.portal-tall{grid-row:span 1}.portal-kicker{display:inline-grid;width:max-content;min-height:28px;place-items:center;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:#ffffff1a;color:#ffffffc7;padding:4px 10px;font-size:12px;font-weight:800}.yunyou-portal strong{max-width:9em;color:#fff;font-size:clamp(26px,2.4vw,38px);font-weight:800;letter-spacing:-.05em;line-height:.94}.yunyou-portal p{max-width:24ch;margin:2px 0 0;color:#ffffffa3;font-size:14px;line-height:1.65}.portal-model{position:absolute;right:-10px;bottom:-8px;width:min(54%,260px);height:62%;min-height:0;overflow:visible;background:transparent;pointer-events:none}.portal-wide .portal-model{width:min(48%,300px);height:76%}.portal-model-yellow{right:8px;bottom:-12px;height:82%}.portal-model-blossom{right:-34px;bottom:-18px;width:62%;height:70%}.portal-model-reganmian{right:-24px;bottom:-24px;width:62%;height:76%}.portal-model-doupi{right:-20px;bottom:-18px;width:68%;height:68%}.portal-model-bianzhong{right:-12px;bottom:-14px;width:58%;height:78%}.portal-model-guide-bird{right:18px;bottom:-22px;width:min(36%,190px);height:82%}.scenic-directory-head{display:flex;align-items:end;justify-content:space-between;gap:18px;border:1px solid rgba(255,255,255,.14);border-radius:16px;background:#00000057;padding:clamp(18px,2vw,26px);backdrop-filter:blur(10px) saturate(130%);-webkit-backdrop-filter:blur(10px) saturate(130%)}.scenic-directory-head h2{margin:6px 0 0;color:#fff;font-size:clamp(26px,2.2vw,38px);letter-spacing:-.045em;line-height:1}.scenic-directory-head p{max-width:42ch;margin:0;color:#ffffffa3;line-height:1.65}@media(max-width:1320px){.yunyou-portal-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.portal-wide{grid-column:span 1}}@media(max-width:980px){.yunyou-masthead{grid-template-columns:1fr}.yunyou-mascot-stage{min-height:260px}.yunyou-portal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.scenic-directory-head{align-items:start;flex-direction:column}}@media(max-width:560px){.wuhan-yunyou-overview{border-radius:14px;padding:16px}.yunyou-title-block h2{font-size:clamp(58px,22vw,84px)}.yunyou-portal-grid{grid-template-columns:1fr}.yunyou-portal{min-height:220px}.portal-model,.portal-wide .portal-model{width:54%;height:64%}}:root{--font-body: "Avenir Next", "Segoe UI", "Microsoft YaHei UI Light", "Microsoft YaHei UI", "PingFang SC", "Hiragino Sans GB", "Noto Sans CJK SC", Arial, sans-serif;--font-display: Optima, "Avenir Next", "Segoe UI Light", "Microsoft YaHei UI Light", "Songti SC", STSong, "Noto Serif CJK SC", SimSun, serif;--font-ui: "Avenir Next", "Segoe UI", "Microsoft YaHei UI Light", "PingFang SC", "Noto Sans CJK SC", Arial, sans-serif}*{letter-spacing:0!important}body,.login-screen,.app-shell{font-family:var(--font-body);font-weight:300}button,input,select,textarea{font-family:var(--font-ui);font-weight:300}.login-video-copy h2,#video-hero-title,.login-video-nav strong,.login-title-row h1,.topbar h1,.brand strong,.yunyou-title-block h2,.yunyou-portal strong,.yunyou-mascot-note strong,.scenic-directory-head h2,.scenic-title-row h3,.gallery-copy h2,.panel-header h2,.route-scene-card strong,.knowledge-card strong,.dashboard-model-header h2,.mini-ai-title strong,.route-modal-copy h2{font-family:var(--font-display);font-weight:300!important;letter-spacing:0!important}.login-title-row p,.login-mode-title,.nav-item,.primary-button,.ghost-button,.login-button,.segment,.status-pill,.eyebrow,.portal-kicker,.source-tag,.field-label,.scenic-visit,.mini-ai-suggestions button,.weather-marker{font-family:var(--font-ui);font-weight:400!important;letter-spacing:0!important}.eyebrow,.portal-kicker,.status-pill{text-transform:none}.login-nav-actions{display:flex;align-items:center;gap:10px;min-width:0}.language-control{position:relative;display:inline-flex;align-items:center;min-height:40px;gap:8px;border:1px solid rgba(255,255,255,.2);border-radius:999px;background:linear-gradient(135deg,#ffffff29,#ffffff0d),#0000003d;color:#fff;padding:0 32px 0 12px;box-shadow:inset 0 1px 1px #ffffff14;backdrop-filter:blur(12px) saturate(130%);-webkit-backdrop-filter:blur(12px) saturate(130%)}.language-control:after{content:"";position:absolute;right:14px;top:50%;width:7px;height:7px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;opacity:.72;pointer-events:none;transform:translateY(-68%) rotate(45deg)}.language-control span{color:#ffffffb8;font-size:12px;line-height:1;white-space:nowrap}.language-control select{min-width:86px;border:0;appearance:none;-webkit-appearance:none;background:transparent;color:inherit;cursor:pointer;font-size:13px;line-height:1;outline:none;padding:0}.language-control option{background:#101511;color:#fff}.app-shell:not(.app-hidden) .language-control{border-color:#ffffff2e;background:linear-gradient(135deg,#ffffff1f,#ffffff0a),#00000057;color:#fff}.topbar .language-control{flex:0 0 auto}@media(max-width:820px){.login-video-nav{gap:10px}.login-nav-actions{gap:8px}.language-control{min-height:36px;padding-left:10px;padding-right:28px}.language-control span{display:none}.language-control select{min-width:74px;font-size:12px}.topbar{align-items:flex-start;flex-wrap:wrap}}.app-shell:not(.app-hidden){display:block;min-height:100dvh;padding:clamp(14px,1.8vw,30px)}.app-shell:not(.app-hidden) .sidebar{display:none}.app-shell:not(.app-hidden) .main{max-width:none;padding:0}.app-shell:not(.app-hidden) .topbar{position:relative;z-index:20;display:flex;max-width:min(1840px,calc(100vw - clamp(28px,3.6vw,60px)));min-height:42px;align-items:center;justify-content:flex-end;margin:0 auto 16px;border-bottom:0;padding:0}.app-shell:not(.app-hidden) .topbar>div{display:none}.app-shell:not(.app-hidden) .view{max-width:min(1840px,calc(100vw - clamp(28px,3.6vw,60px)));margin:0 auto}.app-shell:not(.app-hidden) #dashboard.active-view{max-width:min(1840px,calc(100vw - clamp(28px,3.6vw,60px)))}#dashboard .scenic-overview{gap:0}#dashboard .wuhan-yunyou-overview{min-height:calc(100dvh - 74px)}.scenic-directory-page{display:grid;gap:18px}.view-return-bar{display:flex;justify-content:flex-start;margin:0 0 16px}.return-home-button,#back-dashboard{min-height:42px;padding:0 18px}body[data-current-view=dashboard] .mini-ai{display:none!important}body[data-current-view=profile] .mini-ai:not(.open){right:-36px}body[data-current-view=profile] .mini-ai:not(.open) .mini-ai-avatar{transform:scale(.82)}body[data-current-view=journey-history] .mini-ai:not(.open){right:-34px}body[data-current-view=journey-history] .mini-ai:not(.open) .mini-ai-avatar{transform:scale(.82)}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.profile-page{display:grid;gap:18px}.profile-hero,.profile-panel,.profile-space{position:relative;overflow:hidden;border:1px solid rgba(217,180,94,.2);border-radius:18px;background:linear-gradient(135deg,#102822db,#081411e6),#081613d1;box-shadow:0 28px 80px #00000057,inset 0 1px #f6efe214;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.profile-hero:before,.profile-panel:before,.profile-space:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(217,180,94,.05) 1px,transparent 1px),linear-gradient(0deg,rgba(217,180,94,.04) 1px,transparent 1px);background-size:58px 58px;-webkit-mask-image:linear-gradient(120deg,#000,transparent 72%);mask-image:linear-gradient(120deg,#000,transparent 72%)}.profile-hero>*,.profile-panel>*,.profile-space>*{position:relative;z-index:1}.profile-hero{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:clamp(18px,3vw,42px);align-items:stretch;min-height:330px;padding:clamp(22px,3.6vw,46px)}.profile-hero-copy{display:grid;align-content:center;gap:14px}.profile-hero-copy h2{max-width:760px;margin:0;color:#fff7df;font-size:clamp(34px,5.2vw,78px);font-weight:500;line-height:1.04}.profile-hero-copy p,.profile-space-head p{max-width:62ch;margin:0;color:#f6efe2b8;line-height:1.8}.profile-hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}.profile-identity-card{display:grid;align-content:center;gap:16px;border:1px solid rgba(246,239,226,.1);border-radius:16px;background:#07120f6b;padding:18px}.profile-avatar-editor{display:grid;grid-template-columns:112px minmax(0,1fr);align-items:center;gap:16px}.profile-avatar{position:relative;display:grid;width:112px;height:112px;place-items:center;overflow:hidden;border:1px solid rgba(217,180,94,.34);border-radius:28px;background:linear-gradient(135deg,#d9b45ee6,#8ea06fb8),#d9b45e;color:#07120f;font-size:40px;font-weight:700;box-shadow:0 22px 54px #00000042;cursor:pointer;transition:border-color .2s ease,transform .2s ease}.profile-avatar:hover,.profile-avatar:focus-visible{border-color:#ffffffc7;transform:translateY(-2px)}.profile-avatar img{width:100%;height:100%;object-fit:cover}.profile-avatar-change{position:absolute;right:8px;bottom:8px;padding:4px 8px;border:1px solid rgba(255,255,255,.22);border-radius:6px;background:#000000ad;color:#fff;font-size:12px;font-weight:600;line-height:1}.profile-avatar-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.profile-avatar-actions .ghost-button{min-height:38px;padding:8px 12px}.profile-avatar-actions small{flex-basis:100%;color:#f6efe29e;font-size:12px;line-height:1.5}.profile-avatar-remove[hidden]{display:none}.profile-identity-card strong{display:block;color:#fff7df;font-size:28px;font-weight:500}.profile-identity-card span,.profile-identity-card p,.profile-stat-grid dt,.profile-stat-grid dd{color:#f6efe2b8}.profile-identity-card p{margin:8px 0 0;line-height:1.7}.profile-stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0}.profile-stat-grid div{min-height:88px;border:1px solid rgba(217,180,94,.16);border-radius:14px;background:#f6efe20f;padding:12px}.profile-stat-grid dt{font-size:12px}.profile-stat-grid dd{margin:8px 0 0;color:#f1d486;font-size:22px;font-weight:700}.profile-grid{display:grid;grid-template-columns:minmax(280px,.9fr) minmax(420px,1.35fr) minmax(260px,.75fr);gap:18px;align-items:start}.profile-panel,.profile-space{padding:20px}.profile-panel{display:grid;gap:16px}.profile-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.profile-panel label,.profile-panel label span,.profile-space-composer{min-width:0}.profile-switch{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:50px;border:1px solid rgba(217,180,94,.16);border-radius:12px;background:#f6efe20d;padding:10px 12px}.profile-switch small{display:block;margin-top:4px;color:#f6efe28f}.profile-switch input{width:20px;height:20px;accent-color:#d9b45e}.profile-chip-grid{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}.profile-choice input{position:absolute;opacity:0}.profile-choice span{display:block;min-height:38px;border:1px solid rgba(217,180,94,.2);border-radius:999px;background:#f6efe20f;color:#f6efe2bd;padding:9px 14px;font-size:13px;font-weight:700;transition:border-color .18s ease,background .18s ease,color .18s ease,transform .18s ease}.profile-choice input:checked+span{border-color:#d9b45eb8;background:#d9b45e29;color:#f1d486}.profile-choice:hover span{transform:translateY(-1px)}.profile-badge-list{display:grid;gap:10px}.profile-badge{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:54px;border:1px solid rgba(246,239,226,.1);border-radius:14px;background:#f6efe20d;padding:10px 12px}.profile-badge strong{color:#f6efe2c7;font-weight:600}.profile-badge small{color:#f6efe285}.profile-badge.unlocked{border-color:#d9b45e5c;background:#d9b45e1f}.profile-badge.unlocked strong,.profile-badge.unlocked small{color:#f1d486}.profile-tools{display:grid;gap:10px;margin-top:4px}.profile-tools button{min-height:44px;border:1px solid rgba(217,180,94,.18);border-radius:12px;background:#f6efe20f;color:#f6efe2cc;font-weight:700}.profile-tools button:hover{border-color:#d9b45e6b;color:#f1d486}.profile-notification-preview{display:grid;gap:10px}.profile-notification-preview article{display:grid;gap:6px;border:1px solid rgba(217,180,94,.14);border-radius:12px;background:#f6efe20d;padding:12px}.profile-notification-preview strong{color:#f6efe2d6;font-size:14px;font-weight:600}.profile-notification-preview p,.profile-notification-preview small{margin:0;color:#f6efe294;line-height:1.6}.profile-space{display:grid;gap:16px}.profile-space-head{display:flex;align-items:end;justify-content:space-between;gap:18px}.profile-space-head h2{margin:4px 0 0;color:#fff7df;font-size:clamp(26px,3vw,42px);font-weight:500}.profile-space-composer{display:grid;grid-template-columns:auto minmax(180px,.65fr) minmax(260px,1fr) auto;gap:10px;align-items:stretch}.profile-space-composer textarea{min-height:46px;resize:vertical}#profile-space-preview{grid-column:1 / -1;width:100%;max-height:260px;border:1px solid rgba(217,180,94,.18);border-radius:14px;object-fit:cover}.profile-space-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.profile-space-post,.profile-empty-space{border:1px solid rgba(217,180,94,.16);border-radius:16px;background:#f6efe20f}.profile-empty-space{grid-column:1 / -1;padding:24px;color:#f6efe2a8}.profile-space-post{display:grid;overflow:hidden}.profile-space-post img{width:100%;aspect-ratio:4 / 3;object-fit:cover}.profile-space-post div{display:grid;gap:6px;padding:12px}.profile-space-post span{color:#f1d486;font-size:13px;font-weight:700}.profile-space-post p{margin:0;color:#f6efe2c2;line-height:1.65}.profile-space-post small{color:#f6efe280}.delete-profile-post{width:calc(100% - 24px);margin:0 12px 12px}.profile-tool-card{width:min(760px,100%);max-height:min(760px,calc(100vh - 44px));grid-template-columns:1fr}.profile-tool-copy{gap:16px}.profile-tool-header{align-items:start}.profile-tool-header h2,.profile-tool-desc{margin:0}.profile-tool-content{display:grid;gap:12px}.profile-tool-actions{display:flex;flex-wrap:wrap;gap:10px}.profile-notice-list,.profile-scan-grid{display:grid;gap:10px}.profile-notice-card{display:grid;gap:6px;border:1px solid rgba(217,180,94,.16);border-radius:14px;background:#f6efe20f;padding:14px}.profile-notice-card header{display:flex;align-items:center;justify-content:space-between;gap:10px}.profile-notice-card strong{color:#f6efe2d6;font-size:15px;font-weight:600}.profile-notice-card p,.profile-notice-card small{margin:0;color:#f6efe29e;line-height:1.7}.profile-scan-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-scan-button{display:grid;gap:6px;align-items:start;min-height:82px;border:1px solid rgba(217,180,94,.16);border-radius:14px;background:#f6efe20f;color:#f6efe2d6;padding:14px;text-align:left}.profile-scan-button strong{font-size:16px;font-weight:600}.profile-scan-button span{color:#f6efe294;font-size:13px;line-height:1.5}.profile-scan-button.visited{border-color:#d9b45e70;background:#d9b45e1f}.journey-page{display:grid;gap:18px}.journey-hero,.journey-map-panel,.journey-panel,.journey-empty-card{position:relative;overflow:hidden;border:1px solid rgba(217,180,94,.2);border-radius:18px;background:linear-gradient(135deg,#102822db,#081411e6),#081613d1;box-shadow:0 28px 80px #00000057,inset 0 1px #f6efe214;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.journey-hero:before,.journey-map-panel:before,.journey-panel:before,.journey-empty-card:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(217,180,94,.05) 1px,transparent 1px),linear-gradient(0deg,rgba(217,180,94,.04) 1px,transparent 1px);background-size:58px 58px;-webkit-mask-image:linear-gradient(120deg,#000,transparent 72%);mask-image:linear-gradient(120deg,#000,transparent 72%)}.journey-hero>*,.journey-map-panel>*,.journey-panel>*,.journey-empty-card>*{position:relative;z-index:1}.journey-hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(260px,.7fr);min-height:300px;gap:clamp(18px,3vw,42px);align-items:center;padding:clamp(22px,3.4vw,44px)}.journey-hero-copy{display:grid;gap:14px}.journey-hero-copy h2,.journey-map-copy h2{margin:0;color:#fff7df;font-size:clamp(34px,4.8vw,70px);font-weight:500;line-height:1.04}.journey-hero-copy p,.journey-map-copy p{max-width:64ch;margin:0;color:#f6efe2b8;line-height:1.8}.journey-hero-actions,.journey-route-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}.journey-hero-model{display:grid;min-height:260px;place-items:center}.journey-model{width:min(340px,100%);height:260px}.journey-map-panel{display:grid;grid-template-columns:minmax(260px,.44fr) minmax(460px,1fr);gap:18px;align-items:stretch;padding:20px}.journey-map-copy{display:grid;align-content:center;gap:14px}.journey-map-copy h2{font-size:clamp(28px,3.2vw,46px)}.journey-stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:10px 0 0}.journey-stat-grid div{border:1px solid rgba(217,180,94,.16);border-radius:14px;background:#f6efe20f;padding:12px}.journey-stat-grid dt{color:#f6efe29e;font-size:12px}.journey-stat-grid dd{margin:8px 0 0;color:#f1d486;font-size:24px;font-weight:700}.journey-footprint-map{position:relative;min-height:430px;overflow:hidden;border:1px solid rgba(217,180,94,.18);border-radius:16px;background:radial-gradient(circle at 62% 42%,rgba(217,180,94,.16),transparent 32%),#07120f75}.journey-footprint-map img{width:100%;height:100%;min-height:430px;object-fit:cover;opacity:.62;filter:saturate(.9) contrast(1.04)}.journey-map-marker{position:absolute;width:16px;height:16px;border:2px solid rgba(246,239,226,.76);border-radius:999px;background:#081411e6;color:#fff7df;transform:translate(-50%,-50%);transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease}.journey-map-marker strong,.journey-map-marker span{position:absolute;left:18px;width:max-content;max-width:150px;opacity:0;pointer-events:none;text-align:left;transform:translateY(-4px);transition:opacity .18s ease,transform .18s ease}.journey-map-marker strong{top:-12px;color:#fff7df;font-size:13px;font-weight:700}.journey-map-marker span{top:8px;color:#f6efe2a3;font-size:11px}.journey-map-marker.visited,.journey-map-marker.planned{border-color:#f1d486;background:#d9b45e;box-shadow:0 0 0 7px #d9b45e24}.journey-map-marker.visited strong,.journey-map-marker.visited span,.journey-map-marker:hover strong,.journey-map-marker:hover span,.journey-map-marker:focus-visible strong,.journey-map-marker:focus-visible span{opacity:1;transform:translateY(0)}.journey-map-marker:hover,.journey-map-marker:focus-visible{transform:translate(-50%,-50%) scale(1.2)}.journey-layout{display:grid;grid-template-columns:minmax(480px,1.36fr) minmax(300px,.72fr);gap:18px;align-items:start}.journey-panel{display:grid;gap:16px;padding:20px}.journey-route-list,.journey-footprint-list{display:grid;gap:14px}.journey-route-card{display:grid;grid-template-columns:minmax(220px,.48fr) minmax(0,1fr);gap:16px;overflow:hidden;border:1px solid rgba(217,180,94,.16);border-radius:16px;background:#f6efe20f;padding:14px}.journey-route-media{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;min-height:220px}.journey-photo-tile{overflow:hidden;border:1px solid rgba(217,180,94,.18);border-radius:14px;background:#07120f99;padding:0}.journey-photo-tile:first-child{grid-column:span 3}.journey-photo-tile img{width:100%;height:100%;min-height:88px;object-fit:cover;transition:transform .24s ease}.journey-photo-tile:hover img{transform:scale(1.04)}.journey-route-body{display:grid;align-content:start;gap:10px;min-width:0}.journey-route-topline{display:flex;flex-wrap:wrap;gap:8px 14px;color:#f6efe28f;font-size:12px;font-weight:700}.journey-route-card h3{margin:0;color:#fff7df;font-size:clamp(22px,2vw,32px);font-weight:500}.journey-route-card p,.journey-prompt{margin:0;color:#f6efe2ad;line-height:1.7}.journey-prompt{display:-webkit-box;overflow:hidden;color:#f6efe285;font-size:13px;-webkit-box-orient:vertical;-webkit-line-clamp:2}.journey-stop-chain{display:flex;flex-wrap:wrap;gap:8px}.journey-stop-chain button{display:inline-flex;align-items:center;gap:6px;min-height:34px;border:1px solid rgba(217,180,94,.18);border-radius:999px;background:#07120f61;color:#f6efe2c7;padding:6px 10px;font-size:12px;font-weight:700}.journey-stop-chain button span{color:#f1d486}.journey-footprint-item{display:grid;grid-template-columns:86px minmax(0,1fr);gap:12px;align-items:stretch;border:1px solid rgba(217,180,94,.16);border-radius:16px;background:#f6efe20f;padding:10px;text-align:left}.journey-footprint-item img{width:86px;height:86px;border-radius:12px;object-fit:cover}.journey-footprint-item span{display:grid;gap:5px;min-width:0}.journey-footprint-item strong{color:#fff7df;font-size:16px;font-weight:600}.journey-footprint-item small,.journey-footprint-item em{color:#f6efe294;font-size:12px;font-style:normal;line-height:1.5}.journey-empty-card{display:grid;gap:10px;padding:22px}.journey-empty-card strong{color:#fff7df;font-size:20px;font-weight:600}.journey-empty-card p{margin:0;color:#f6efe2a3;line-height:1.7}@media(prefers-reduced-motion:no-preference){.journey-route-card,.journey-footprint-item{animation:journeyItemIn .34s cubic-bezier(.16,1,.3,1) both;animation-delay:calc(var(--taste-index, 0) * 42ms)}.journey-map-marker.visited{animation:journeyMarkerPulse 2.8s ease-in-out infinite}}@keyframes journeyItemIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes journeyMarkerPulse{0%,to{box-shadow:0 0 0 6px #d9b45e1a}50%{box-shadow:0 0 0 12px #d9b45e05}}@media(max-width:1180px){.profile-hero,.profile-grid,.journey-hero,.journey-map-panel,.journey-layout{grid-template-columns:1fr}.profile-space-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.profile-hero,.profile-panel,.profile-space,.journey-hero,.journey-map-panel,.journey-panel,.journey-empty-card{border-radius:14px;padding:16px}.profile-form-grid,.profile-space-composer,.profile-space-list,.profile-stat-grid,.journey-stat-grid,.journey-route-card,.journey-route-media{grid-template-columns:1fr}.profile-avatar-editor{grid-template-columns:96px minmax(0,1fr)}.profile-avatar{width:96px;height:96px}.journey-photo-tile:first-child{grid-column:auto}.journey-footprint-map,.journey-footprint-map img{min-height:320px}.profile-scan-grid{grid-template-columns:1fr}.profile-space-head{align-items:start;flex-direction:column}}@media(prefers-reduced-motion:no-preference){.app-shell:not(.app-hidden) .active-view{animation:viewPageIn .32s cubic-bezier(.16,1,.3,1)}}@keyframes viewPageIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:820px){.app-shell:not(.app-hidden){padding:12px}.app-shell:not(.app-hidden) .topbar,.app-shell:not(.app-hidden) .view,.app-shell:not(.app-hidden) #dashboard.active-view{max-width:100%}#dashboard .wuhan-yunyou-overview{min-height:auto}}.travel-plan-panel{min-height:620px;display:grid;grid-template-rows:auto 1fr}.travel-plan-body{display:grid;gap:14px;overflow:auto}.travel-plan-form{display:grid;gap:12px}.travel-plan-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.travel-plan-form .field-label{margin-top:0}.travel-plan-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:4px}.travel-plan-empty{border:1px dashed var(--line);border-radius:var(--radius);background:#0000002e;padding:22px;color:var(--muted);font-size:14px;line-height:1.7;text-align:center}.travel-plan-content{display:grid;gap:12px;animation:tasteCardIn .34s cubic-bezier(.16,1,.3,1) both}.travel-plan-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding-bottom:12px}.travel-plan-toolbar strong{color:var(--ink);font-size:18px;font-weight:700}.travel-plan-tools{display:flex;gap:8px}.travel-plan-render{display:grid;gap:12px;max-height:520px;overflow:auto;padding-right:6px}.travel-plan-render::-webkit-scrollbar{width:6px}.travel-plan-render::-webkit-scrollbar-thumb{background:#d9b45e4d;border-radius:999px}.plan-day-card{border:1px solid var(--line);border-radius:14px;background:#00000038;padding:16px}.plan-day-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.plan-day-header strong{color:var(--river-dark);font-size:18px}.plan-day-header span{color:var(--muted);font-size:13px}.plan-stop{display:grid;grid-template-columns:72px minmax(0,1fr);gap:12px;padding:12px 0;border-top:1px solid rgba(255,255,255,.08)}.plan-stop:first-of-type{border-top:0}.plan-stop-time{color:var(--brick);font-weight:900;font-size:14px}.plan-stop-body h4{margin:0 0 6px;color:var(--ink);font-size:16px}.plan-stop-body p{margin:0;color:var(--muted);font-size:13px;line-height:1.7}.plan-stop-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.plan-stop-tags em{border-radius:999px;background:#d9b45e24;color:var(--river-dark);padding:4px 10px;font-size:12px;font-style:normal;font-weight:800}.plan-tips{border:1px solid rgba(217,180,94,.22);border-radius:12px;background:#d9b45e14;padding:14px;color:var(--muted);font-size:13px;line-height:1.7}.plan-tips strong{display:block;margin-bottom:6px;color:var(--river-dark)}@media(max-width:1420px){.app-shell:not(.app-hidden) .planner-layout{grid-template-columns:minmax(260px,1fr) minmax(300px,1.2fr) minmax(260px,1fr);min-height:calc(100dvh - 180px)}.app-shell:not(.app-hidden) .travel-plan-panel{grid-column:auto;min-height:0}}@media(max-width:980px){.app-shell:not(.app-hidden) .planner-layout{grid-template-columns:1fr;min-height:auto}.app-shell:not(.app-hidden) .planner-layout>.panel{height:auto;min-height:360px}.app-shell:not(.app-hidden) #route-visual-canvas{aspect-ratio:16 / 9}.travel-plan-panel{grid-column:auto;min-height:auto}.travel-plan-grid{grid-template-columns:1fr}}.app-shell:not(.app-hidden){--app-glass-bg:rgba(0,0,0,.4);--app-glass-border:rgba(255,255,255,.18);--app-glass-border-strong:rgba(255,255,255,.34);--app-glass-muted:rgba(255,255,255,.68);--app-glass-faint:rgba(255,255,255,.1);position:relative;isolation:isolate;background:#050807;color:#fff;padding:24px clamp(18px,3vw,34px) 34px 24px}.app-shell:not(.app-hidden):before,.app-shell:not(.app-hidden):after{content:"";position:fixed;inset:0;pointer-events:none}.app-shell:not(.app-hidden):before{z-index:-2;background:linear-gradient(180deg,#0508076b,#050807e0),linear-gradient(90deg,rgba(0,0,0,.42),transparent 42%,rgba(0,0,0,.34)),url(/assets/yangtze-night-WP5Myw3O.jpg) center/cover no-repeat;filter:saturate(.92) contrast(1.08)}.app-shell:not(.app-hidden):after{z-index:-1;background:linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(0deg,rgba(255,255,255,.028) 1px,transparent 1px),radial-gradient(circle at 24% 12%,rgba(255,255,255,.12),transparent 26%),radial-gradient(circle at 78% 18%,rgba(217,180,94,.12),transparent 30%);background-size:64px 64px,64px 64px,auto,auto;-webkit-mask-image:linear-gradient(180deg,#000,rgba(0,0,0,.74) 62%,transparent 100%);mask-image:linear-gradient(180deg,#000,rgba(0,0,0,.74) 62%,transparent 100%)}.app-shell:not(.app-hidden) .sidebar,.app-shell:not(.app-hidden) .topbar{border:1px solid var(--app-glass-border);border-radius:16px;background:linear-gradient(180deg,#ffffff17,#ffffff06),var(--app-glass-bg);color:#fff;box-shadow:inset 0 1px 1px #ffffff1a,0 24px 70px #00000047;backdrop-filter:blur(8px) saturate(130%);-webkit-backdrop-filter:blur(8px) saturate(130%)}.app-shell:not(.app-hidden) .topbar{min-height:64px;align-items:center;margin-bottom:22px;padding:10px 12px 10px 18px}.app-shell:not(.app-hidden) .topbar h1{color:#fff;font-size:clamp(28px,4.2vw,58px);font-weight:600;line-height:.98}.app-shell:not(.app-hidden) .brand-mark,.app-shell:not(.app-hidden) .nav-icon{border-color:#fff;background:#fff;color:#050807;box-shadow:none}.app-shell:not(.app-hidden) .nav-item:hover,.app-shell:not(.app-hidden) .nav-item.active{border-color:var(--app-glass-border-strong);background:#ffffff1f;color:#fff}.app-shell:not(.app-hidden) .panel,.app-shell:not(.app-hidden) .metric-card,.app-shell:not(.app-hidden) .wuhan-yunyou-overview,.app-shell:not(.app-hidden) .yunyou-mascot-stage,.app-shell:not(.app-hidden) .yunyou-portal,.app-shell:not(.app-hidden) .scenic-directory-head,.app-shell:not(.app-hidden) .scenic-card,.app-shell:not(.app-hidden) .gallery-hero,.app-shell:not(.app-hidden) .gallery-thumb,.app-shell:not(.app-hidden) .route-scene-card,.app-shell:not(.app-hidden) .knowledge-card,.app-shell:not(.app-hidden) .itinerary-item,.app-shell:not(.app-hidden) .weather-card,.app-shell:not(.app-hidden) .route-image-prompt,.app-shell:not(.app-hidden) .dashboard-model-gallery,.app-shell:not(.app-hidden) .dashboard-model-card,.route-modal-card,.mini-ai-panel{border-color:var(--app-glass-border);background:linear-gradient(180deg,#ffffff17,#ffffff06),var(--app-glass-bg);color:#fff;box-shadow:inset 0 1px 1px #ffffff1a,0 24px 70px #00000047;backdrop-filter:blur(8px) saturate(130%);-webkit-backdrop-filter:blur(8px) saturate(130%)}.app-shell:not(.app-hidden) .panel:before,.app-shell:not(.app-hidden) .scenic-card:before,.app-shell:not(.app-hidden) .route-scene-card:before,.app-shell:not(.app-hidden) .gallery-thumb:before,.app-shell:not(.app-hidden) .mini-ai-panel:before{background:linear-gradient(135deg,rgba(255,255,255,.11),transparent 35%),linear-gradient(315deg,rgba(255,255,255,.05),transparent 50%);opacity:1}.app-shell:not(.app-hidden) .wuhan-yunyou-overview{min-height:calc(100dvh - 120px)}.app-shell:not(.app-hidden) .yunyou-title-block h2,.app-shell:not(.app-hidden) .yunyou-portal strong,.app-shell:not(.app-hidden) .scenic-directory-head h2,.app-shell:not(.app-hidden) .panel-header h2,.app-shell:not(.app-hidden) .gallery-copy h2,.app-shell:not(.app-hidden) .scenic-title-row h3,.app-shell:not(.app-hidden) .route-scene-card strong,.app-shell:not(.app-hidden) .knowledge-card strong{color:#fff}.app-shell:not(.app-hidden) .yunyou-title-block p,.app-shell:not(.app-hidden) .yunyou-portal p,.app-shell:not(.app-hidden) .yunyou-mascot-note span,.app-shell:not(.app-hidden) .scenic-directory-head p,.app-shell:not(.app-hidden) .scenic-desc,.app-shell:not(.app-hidden) .route-scene-card p,.app-shell:not(.app-hidden) .gallery-copy p,.app-shell:not(.app-hidden) .knowledge-card p,.app-shell:not(.app-hidden) .weather-card p,.app-shell:not(.app-hidden) .module-card p,.app-shell:not(.app-hidden) .tool-card p{color:var(--app-glass-muted)}.app-shell:not(.app-hidden) .scenic-card:hover,.app-shell:not(.app-hidden) .scenic-card:focus-visible,.app-shell:not(.app-hidden) .route-scene-card.highlight,.app-shell:not(.app-hidden) .route-scene-card:focus-within,.app-shell:not(.app-hidden) .gallery-thumb.active,.app-shell:not(.app-hidden) .gallery-thumb:hover,.app-shell:not(.app-hidden) .gallery-thumb:focus-visible,.app-shell:not(.app-hidden) .yunyou-portal:hover,.app-shell:not(.app-hidden) .yunyou-portal:focus-visible{border-color:var(--app-glass-border-strong);background:linear-gradient(180deg,#ffffff21,#ffffff09),#00000057;box-shadow:inset 0 1px 1px #ffffff1f,0 30px 84px #00000052}.app-shell:not(.app-hidden) .primary-button,.app-shell:not(.app-hidden) .weather-marker:hover,.app-shell:not(.app-hidden) .weather-marker.active,.app-shell:not(.app-hidden) .message.user,.app-shell:not(.app-hidden) .mini-ai-message.user{border-color:#fff;background:#fff;color:#050807;box-shadow:none}.app-shell:not(.app-hidden) .primary-button:hover{background:#f3f4f6;color:#050807}.app-shell:not(.app-hidden) .primary-button,.app-shell:not(.app-hidden) .ghost-button,.app-shell:not(.app-hidden) .icon-button,.app-shell:not(.app-hidden) .segment,.app-shell:not(.app-hidden) .mini-ai-icon-button,.app-shell:not(.app-hidden) .delete-itinerary,.route-modal-close{border-radius:10px}.app-shell:not(.app-hidden) .ghost-button,.app-shell:not(.app-hidden) .icon-button,.app-shell:not(.app-hidden) .segment,.app-shell:not(.app-hidden) .mini-ai-icon-button,.app-shell:not(.app-hidden) .delete-itinerary,.route-modal-close{border-color:var(--app-glass-border);background:#00000052;color:#fff;box-shadow:inset 0 1px 1px #ffffff14}.app-shell:not(.app-hidden) .ghost-button:hover,.app-shell:not(.app-hidden) .icon-button:hover,.app-shell:not(.app-hidden) .segment:hover,.app-shell:not(.app-hidden) .segment.active,.app-shell:not(.app-hidden) .mini-ai-icon-button:hover,.route-modal-close:hover{border-color:var(--app-glass-border-strong);background:#ffffff1f;color:#fff}.app-shell:not(.app-hidden) .eyebrow,.app-shell:not(.app-hidden) .portal-kicker,.app-shell:not(.app-hidden) .field-label,.app-shell:not(.app-hidden) .status-pill,.app-shell:not(.app-hidden) .status-pill.ready,.app-shell:not(.app-hidden) .status-pill.running,.app-shell:not(.app-hidden) .status-pill.done,.app-shell:not(.app-hidden) .source-tag,.app-shell:not(.app-hidden) .chip,.app-shell:not(.app-hidden) .route-feature-tags em,.app-shell:not(.app-hidden) .knowledge-category-chip,.app-shell:not(.app-hidden) .weather-detail-grid span,.app-shell:not(.app-hidden) .mini-ai-suggestions button{border-color:var(--app-glass-border);background:var(--app-glass-faint);color:#ffffffdb}.app-shell:not(.app-hidden) input,.app-shell:not(.app-hidden) textarea,.app-shell:not(.app-hidden) select{border-color:#ffffff2e;border-radius:10px;background:#00000052;color:#fff;box-shadow:inset 0 1px 1px #ffffff0d}.app-shell:not(.app-hidden) input::placeholder,.app-shell:not(.app-hidden) textarea::placeholder{color:#ffffff85}.app-shell:not(.app-hidden) input:focus,.app-shell:not(.app-hidden) textarea:focus,.app-shell:not(.app-hidden) select:focus{border-color:#ffffff7a;outline:none;box-shadow:inset 0 1px 1px #ffffff14,0 0 0 4px #ffffff14}.app-shell:not(.app-hidden) .chat-log,.app-shell:not(.app-hidden) .itinerary-list,.app-shell:not(.app-hidden) .knowledge-list,.app-shell:not(.app-hidden) .citation-list,.app-shell:not(.app-hidden) .mini-ai-messages{border-color:#ffffff1f;background:#0000002e}.app-shell:not(.app-hidden) .message.assistant,.app-shell:not(.app-hidden) .mini-ai-message.assistant{background:#ffffff1a;color:#ffffffdb}.app-shell:not(.app-hidden) .profile-hero,.app-shell:not(.app-hidden) .profile-panel,.app-shell:not(.app-hidden) .profile-space,.app-shell:not(.app-hidden) .profile-identity-card,.app-shell:not(.app-hidden) .profile-stat-grid div,.app-shell:not(.app-hidden) .profile-switch,.app-shell:not(.app-hidden) .profile-badge,.app-shell:not(.app-hidden) .profile-notification-preview article,.app-shell:not(.app-hidden) .profile-space-post,.app-shell:not(.app-hidden) .profile-empty-space,.app-shell:not(.app-hidden) .profile-notice-card,.app-shell:not(.app-hidden) .profile-scan-button,.app-shell:not(.app-hidden) .journey-hero,.app-shell:not(.app-hidden) .journey-map-panel,.app-shell:not(.app-hidden) .journey-panel,.app-shell:not(.app-hidden) .journey-empty-card,.app-shell:not(.app-hidden) .journey-stat-grid div,.app-shell:not(.app-hidden) .journey-route-card,.app-shell:not(.app-hidden) .journey-footprint-item,.app-shell:not(.app-hidden) .journey-footprint-map{border-color:var(--app-glass-border);background:linear-gradient(180deg,#ffffff17,#ffffff06),var(--app-glass-bg);color:#fff;box-shadow:inset 0 1px 1px #ffffff1a,0 24px 70px #00000047;backdrop-filter:blur(8px) saturate(130%);-webkit-backdrop-filter:blur(8px) saturate(130%)}.app-shell:not(.app-hidden) .profile-hero:before,.app-shell:not(.app-hidden) .profile-panel:before,.app-shell:not(.app-hidden) .profile-space:before,.app-shell:not(.app-hidden) .journey-hero:before,.app-shell:not(.app-hidden) .journey-map-panel:before,.app-shell:not(.app-hidden) .journey-panel:before,.app-shell:not(.app-hidden) .journey-empty-card:before{background:linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(0deg,rgba(255,255,255,.03) 1px,transparent 1px)}.app-shell:not(.app-hidden) .profile-hero-copy h2,.app-shell:not(.app-hidden) .profile-space-head h2,.app-shell:not(.app-hidden) .profile-identity-card strong,.app-shell:not(.app-hidden) .profile-badge strong,.app-shell:not(.app-hidden) .profile-notification-preview strong,.app-shell:not(.app-hidden) .profile-notice-card strong,.app-shell:not(.app-hidden) .journey-hero-copy h2,.app-shell:not(.app-hidden) .journey-map-copy h2,.app-shell:not(.app-hidden) .journey-route-card h3,.app-shell:not(.app-hidden) .journey-footprint-item strong,.app-shell:not(.app-hidden) .journey-empty-card strong{color:#fff}.app-shell:not(.app-hidden) .profile-hero-copy p,.app-shell:not(.app-hidden) .profile-space-head p,.app-shell:not(.app-hidden) .profile-identity-card span,.app-shell:not(.app-hidden) .profile-identity-card p,.app-shell:not(.app-hidden) .profile-stat-grid dt,.app-shell:not(.app-hidden) .profile-switch small,.app-shell:not(.app-hidden) .profile-notification-preview p,.app-shell:not(.app-hidden) .profile-notification-preview small,.app-shell:not(.app-hidden) .profile-space-post p,.app-shell:not(.app-hidden) .profile-space-post small,.app-shell:not(.app-hidden) .profile-empty-space,.app-shell:not(.app-hidden) .profile-notice-card p,.app-shell:not(.app-hidden) .profile-notice-card small,.app-shell:not(.app-hidden) .profile-scan-button span,.app-shell:not(.app-hidden) .journey-hero-copy p,.app-shell:not(.app-hidden) .journey-map-copy p,.app-shell:not(.app-hidden) .journey-route-card p,.app-shell:not(.app-hidden) .journey-prompt,.app-shell:not(.app-hidden) .journey-route-topline,.app-shell:not(.app-hidden) .journey-footprint-item small,.app-shell:not(.app-hidden) .journey-footprint-item em,.app-shell:not(.app-hidden) .journey-empty-card p{color:var(--app-glass-muted)}.app-shell:not(.app-hidden) .profile-avatar,.app-shell:not(.app-hidden) .journey-map-marker.visited,.app-shell:not(.app-hidden) .journey-map-marker.planned{border-color:#fff;background:#fff;color:#050807;box-shadow:none}.app-shell:not(.app-hidden) .profile-avatar span{color:#050807}.app-shell:not(.app-hidden) .profile-stat-grid dd,.app-shell:not(.app-hidden) .journey-stat-grid dd{color:#fff}.app-shell:not(.app-hidden) .profile-tools button,.app-shell:not(.app-hidden) .journey-stop-chain button,.app-shell:not(.app-hidden) .profile-choice span,.app-shell:not(.app-hidden) .delete-profile-post{border-color:var(--app-glass-border);border-radius:10px;background:#00000052;color:#fff}.app-shell:not(.app-hidden) .profile-tools button:hover,.app-shell:not(.app-hidden) .journey-stop-chain button:hover,.app-shell:not(.app-hidden) .profile-choice:hover span,.app-shell:not(.app-hidden) .profile-choice input:checked+span,.app-shell:not(.app-hidden) .profile-scan-button.visited,.app-shell:not(.app-hidden) .profile-scan-button:hover{border-color:var(--app-glass-border-strong);background:#ffffff1f;color:#fff}.app-shell:not(.app-hidden) .profile-space-post span,.app-shell:not(.app-hidden) .journey-stop-chain button span{color:#ffffffdb}.app-shell:not(.app-hidden) .profile-space-post img,.app-shell:not(.app-hidden) .journey-photo-tile img,.app-shell:not(.app-hidden) .journey-footprint-item img,.app-shell:not(.app-hidden) .journey-footprint-map img{filter:saturate(.9) contrast(1.06)}@media(max-width:1180px){.app-shell:not(.app-hidden){padding:18px}.app-shell:not(.app-hidden) .wuhan-yunyou-overview{min-height:auto}}@media(max-width:820px){.app-shell:not(.app-hidden){padding:12px}.app-shell:not(.app-hidden) .topbar{min-height:58px;align-items:flex-start;padding:12px}.app-shell:not(.app-hidden) .topbar h1{font-size:clamp(30px,10vw,46px)}.app-shell:not(.app-hidden) .profile-hero,.app-shell:not(.app-hidden) .profile-panel,.app-shell:not(.app-hidden) .profile-space,.app-shell:not(.app-hidden) .journey-hero,.app-shell:not(.app-hidden) .journey-map-panel,.app-shell:not(.app-hidden) .journey-panel,.app-shell:not(.app-hidden) .journey-empty-card{border-radius:14px}}.wuhan-map-shell{position:relative;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--app-glass-border, rgba(255,255,255,.18));border-radius:16px;background:#00000040;box-shadow:inset 0 1px 1px #ffffff0d;height:720px;padding:12px;gap:12px}#wuhan-map{flex:1 1 auto;width:100%;min-height:0;border-radius:12px;background:#0d1f1a;z-index:1}.map-focus-bar{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;scrollbar-width:thin;scrollbar-color:rgba(217,180,94,.3) transparent;z-index:2}.map-focus-bar::-webkit-scrollbar{height:4px}.map-focus-bar::-webkit-scrollbar-thumb{background:#d9b45e4d;border-radius:999px}.focus-btn{flex:0 0 auto;min-height:34px;padding:6px 14px;border:1px solid var(--app-glass-border, rgba(255,255,255,.18));border-radius:999px;background:#00000052;color:#ffffffc7;font-size:13px;font-weight:600;cursor:pointer;transition:all .18s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.focus-btn:hover,.focus-btn:focus-visible{border-color:#ffffff6b;background:#ffffff1f;color:#fff;outline:none}.focus-btn.active{border-color:#fff;background:#fff;color:#050807}.weather-card{position:absolute;right:24px;bottom:24px;z-index:1000;width:min(340px,calc(100% - 48px));border:1px solid var(--app-glass-border, rgba(255,255,255,.18));border-radius:14px;background:#0c1b17eb;box-shadow:0 18px 44px #00000047;padding:18px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);pointer-events:auto}@media(max-width:820px){.wuhan-map-shell{height:580px;padding:10px;gap:10px}.weather-card{right:14px;bottom:14px;width:min(300px,calc(100% - 28px));padding:14px}.focus-btn{font-size:12px;padding:5px 10px}}@media(max-width:560px){.wuhan-map-shell{height:480px;border-radius:12px}.weather-card{position:static;width:100%;margin-top:8px}}.tp-overview-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:18px;padding:14px 18px;border-radius:14px;background:linear-gradient(135deg,#d9b45e1f,#8ea06f14);border:1px solid rgba(217,180,94,.22)}.tp-overview-badge{font-size:14px;font-weight:700;color:var(--river-dark);letter-spacing:.02em}.tp-overview-meta{font-size:12px;color:var(--muted);padding:3px 10px;border-radius:20px;background:#d9b45e1a;border:1px solid rgba(217,180,94,.2)}.tp-timeline{display:flex;flex-direction:column;gap:22px}.tp-day-card{border-radius:16px;overflow:hidden;border:1px solid rgba(217,180,94,.18);background:var(--surface);box-shadow:0 8px 30px #00000040;transition:border-color .3s,box-shadow .3s}.tp-day-card:hover{border-color:#d9b45e61;box-shadow:0 12px 40px #0000004d}.tp-day-banner{display:flex;align-items:center;gap:16px;padding:18px 22px;background:linear-gradient(135deg,#d9b45e2e,#8ea06f1a);border-bottom:1px solid rgba(217,180,94,.15)}.tp-day-badge{flex-shrink:0;display:flex;align-items:center;justify-content:center;min-width:64px;height:64px;border-radius:50%;background:linear-gradient(135deg,var(--river),#c49a45);color:var(--bg);font-size:13px;font-weight:800;letter-spacing:.04em;box-shadow:0 4px 16px #d9b45e59}.tp-day-info h3{margin:0;font-size:18px;font-weight:700;color:var(--ink)}.tp-day-info span{font-size:12px;color:var(--muted)}.tp-day-body{padding:20px 22px 22px}.tp-period{margin-bottom:18px}.tp-period:last-of-type{margin-bottom:0}.tp-period-label{display:flex;align-items:center;gap:8px;margin-bottom:12px;padding-left:2px}.tp-period-icon{font-size:18px}.tp-period-text{font-size:13px;font-weight:700;color:var(--river-dark);letter-spacing:.05em}.tp-period-stops{position:relative;padding-left:28px}.tp-period-stops:before{content:"";position:absolute;left:9px;top:6px;bottom:6px;width:2px;background:linear-gradient(180deg,var(--river),rgba(142,160,111,.4));border-radius:1px}.tp-stop{position:relative;margin-bottom:14px}.tp-stop:last-child{margin-bottom:0}.tp-stop-dot{position:absolute;left:-28px;top:14px;width:12px;height:12px;border-radius:50%;background:var(--surface);border:3px solid var(--river);box-shadow:0 0 0 4px #d9b45e1f;z-index:1}.tp-stop-card{padding:14px 16px;border-radius:12px;background:var(--surface-2);border:1px solid rgba(217,180,94,.1);transition:border-color .25s,transform .25s}.tp-stop-card:hover{border-color:#d9b45e4d;transform:translate(4px)}.tp-stop-top{display:flex;align-items:flex-start;gap:10px}.tp-stop-emoji{font-size:22px;line-height:1;flex-shrink:0;margin-top:1px}.tp-stop-headline{flex:1;min-width:0}.tp-stop-headline h4{margin:0 0 4px;font-size:15px;font-weight:700;color:var(--ink)}.tp-stop-time{display:inline-block;font-size:11px;font-weight:700;color:var(--river-dark);padding:2px 8px;border-radius:4px;background:#d9b45e1f}.tp-stop-desc{margin:8px 0 0;font-size:13px;line-height:1.6;color:var(--muted)}.tp-stop-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px;align-items:center}.tp-tag{font-size:11px;font-style:normal;padding:2px 8px;border-radius:4px;background:#8ea06f26;color:var(--leaf);border:1px solid rgba(142,160,111,.2)}.tp-budget-hint{font-size:11px;font-weight:700;color:var(--river-dark);margin-left:auto;padding:2px 8px;border-radius:4px;background:#d9b45e1a}.tp-meals{margin-top:16px;padding:14px;border-radius:12px;background:#b55b4f14;border:1px solid rgba(181,91,79,.15)}.tp-section-title{font-size:13px;font-weight:700;color:var(--lotus);margin-bottom:10px;letter-spacing:.02em}.tp-accommodation .tp-section-title{color:var(--leaf)}.tp-budget-summary .tp-section-title,.tp-tips .tp-section-title{color:var(--river-dark)}.tp-meals-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px}.tp-meal-item{display:flex;align-items:flex-start;gap:8px;padding:8px 10px;border-radius:8px;background:#ffffff0a}.tp-meal-icon{font-size:18px;flex-shrink:0}.tp-meal-item strong{display:block;font-size:12px;color:var(--ink);margin-bottom:2px}.tp-meal-item p{margin:0;font-size:12px;color:var(--muted);line-height:1.5}.tp-accommodation{margin-top:14px;padding:14px;border-radius:12px;background:#8ea06f0f;border:1px solid rgba(142,160,111,.15)}.tp-accom-card{display:flex;flex-direction:column;gap:8px}.tp-accom-row{display:flex;gap:8px;font-size:13px;color:var(--ink);line-height:1.5}.tp-accom-label{flex-shrink:0;font-weight:700;color:var(--leaf);min-width:56px}.tp-budget-summary{margin-top:22px;padding:18px;border-radius:14px;background:linear-gradient(135deg,#d9b45e1a,#8ea06f0f);border:1px solid rgba(217,180,94,.2)}.tp-budget-total{font-size:14px;color:var(--muted);margin-bottom:14px}.tp-budget-total strong{font-size:22px;color:var(--river-dark);margin-left:4px}.tp-budget-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}.tp-budget-item{display:flex;flex-direction:column;gap:4px;padding:10px 14px;border-radius:10px;background:#ffffff0a;border:1px solid rgba(217,180,94,.1)}.tp-budget-key{font-size:11px;color:var(--muted)}.tp-budget-val{font-size:16px;font-weight:700;color:var(--river-dark)}.tp-tips{margin-top:18px;padding:18px;border-radius:14px;background:#b55b4f0f;border:1px solid rgba(181,91,79,.12)}.tp-tips-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px}.tp-tips-list li{position:relative;padding-left:22px;font-size:13px;line-height:1.6;color:var(--muted)}.tp-tips-list li:before{content:"💡";position:absolute;left:0;top:0;font-size:14px}@media(max-width:640px){.tp-day-banner{padding:14px 16px;gap:12px}.tp-day-badge{min-width:50px;height:50px;font-size:11px}.tp-day-info h3{font-size:16px}.tp-day-body{padding:16px 16px 18px}.tp-period-stops{padding-left:22px}.tp-period-stops:before{left:7px}.tp-stop-dot{left:-22px;width:10px;height:10px;border-width:2px}.tp-meals-grid,.tp-budget-grid{grid-template-columns:1fr}}.app-shell:not(.app-hidden) .tp-day-card{border-color:var(--app-glass-border, rgba(255, 255, 255, .18));background:#00000047}.app-shell:not(.app-hidden) .tp-day-banner{background:linear-gradient(135deg,#d9b45e29,#8ea06f14)}.app-shell:not(.app-hidden) .tp-day-info h3{color:#fff}.app-shell:not(.app-hidden) .tp-stop-card{background:#ffffff0d;border-color:#ffffff1a}.app-shell:not(.app-hidden) .tp-stop-headline h4{color:#fff}.app-shell:not(.app-hidden) .tp-stop-desc{color:var(--app-glass-muted, rgba(255, 255, 255, .68))}.app-shell:not(.app-hidden) .tp-meal-item{background:#ffffff0a}.app-shell:not(.app-hidden) .tp-meal-item strong{color:#fff}.app-shell:not(.app-hidden) .tp-meal-item p{color:var(--app-glass-muted, rgba(255, 255, 255, .68))}.app-shell:not(.app-hidden) .tp-budget-item{background:#ffffff0a;border-color:#ffffff1a}.app-shell:not(.app-hidden) .tp-accommodation{background:#8ea06f0d}.app-shell:not(.app-hidden) .tp-accom-row{color:#fff}.app-shell:not(.app-hidden) .tp-tips{background:#b55b4f0f}.app-shell:not(.app-hidden) .tp-tips-list li{color:var(--app-glass-muted, rgba(255, 255, 255, .68))}.profile-grid{align-items:stretch}.profile-grid>.profile-panel,.profile-grid>aside.profile-panel{display:flex;flex-direction:column;height:100%;overflow:hidden}.profile-grid>.profile-panel:first-child,.profile-grid>.profile-panel.profile-preference-panel{overflow-y:auto}.profile-grid>aside.profile-panel>.profile-badge-list{flex:1 1 auto;overflow-y:auto;min-height:60px}.profile-grid>aside.profile-panel>.profile-tools{flex:0 0 auto;margin-top:8px}.profile-grid>aside.profile-panel>.profile-notification-preview{flex:0 0 auto;max-height:130px;overflow-y:auto;margin-top:10px;padding-right:4px}.profile-grid>.profile-panel::-webkit-scrollbar,.profile-grid>aside.profile-panel>.profile-badge-list::-webkit-scrollbar,.profile-grid>aside.profile-panel>.profile-notification-preview::-webkit-scrollbar{width:5px}.profile-grid>.profile-panel::-webkit-scrollbar-thumb,.profile-grid>aside.profile-panel>.profile-badge-list::-webkit-scrollbar-thumb,.profile-grid>aside.profile-panel>.profile-notification-preview::-webkit-scrollbar-thumb{background:#d9b45e59;border-radius:999px}.app-shell:not(.app-hidden) .profile-grid>.profile-panel,.app-shell:not(.app-hidden) .profile-grid>aside.profile-panel{overflow:hidden}.app-shell:not(.app-hidden) .profile-grid>.profile-panel:first-child,.app-shell:not(.app-hidden) .profile-grid>.profile-panel.profile-preference-panel{overflow-y:auto}.route-visual-panel,.app-shell:not(.app-hidden) .route-visual-panel{display:flex;flex-direction:column;min-height:0;overflow:hidden}.route-visual-layout,.app-shell:not(.app-hidden) .route-visual-layout{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;gap:14px}#route-visual-canvas,.app-shell:not(.app-hidden) #route-visual-canvas{flex:0 0 auto;height:260px;min-height:260px;width:100%;aspect-ratio:auto!important}.route-storyboard,.app-shell:not(.app-hidden) .route-storyboard{flex:1 1 auto;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:14px}.route-storyboard .route-scene-card,.app-shell:not(.app-hidden) .route-storyboard .route-scene-card{flex:1 1 auto;min-height:0;display:grid;grid-template-columns:minmax(180px,.38fr) minmax(0,1fr)}.route-storyboard .route-scene-card .route-card-photo,.app-shell:not(.app-hidden) .route-storyboard .route-scene-card .route-card-photo{min-height:0;height:100%}.route-storyboard .route-scene-card .route-card-photo img,.app-shell:not(.app-hidden) .route-storyboard .route-scene-card .route-card-photo img{height:100%}.route-image-prompt,.app-shell:not(.app-hidden) .route-image-prompt{flex:0 0 auto;margin-top:0}.route-storyboard::-webkit-scrollbar,.app-shell:not(.app-hidden) .route-storyboard::-webkit-scrollbar{width:5px}.route-storyboard::-webkit-scrollbar-thumb,.app-shell:not(.app-hidden) .route-storyboard::-webkit-scrollbar-thumb{background:#d9b45e59;border-radius:999px}.app-shell:not(.app-hidden) .route-visual-panel{display:flex!important;flex-direction:column!important;min-height:0!important;overflow:hidden!important}.app-shell:not(.app-hidden) .route-visual-layout{display:flex!important;flex-direction:column!important;flex:1 1 auto!important;min-height:0!important;gap:14px!important}.app-shell:not(.app-hidden) #route-visual-canvas{flex:0 0 auto!important;height:260px!important;min-height:260px!important;max-height:260px!important;width:100%!important;aspect-ratio:auto!important}.app-shell:not(.app-hidden) .route-storyboard{flex:1 1 auto!important;min-height:0!important;max-height:none!important;height:auto!important;overflow-y:auto!important;display:flex!important;flex-direction:column!important;gap:14px!important}.app-shell:not(.app-hidden) .route-storyboard>.route-scene-card{flex:1 1 auto!important;min-height:0!important;display:grid!important;grid-template-columns:minmax(180px,.38fr) minmax(0,1fr)!important}.app-shell:not(.app-hidden) .route-storyboard>.route-scene-card .route-card-photo{min-height:0!important;height:100%!important}.app-shell:not(.app-hidden) .route-storyboard>.route-scene-card .route-card-photo img{height:100%!important}.app-shell:not(.app-hidden) .route-image-prompt{flex:0 0 auto!important;margin-top:0!important;margin-bottom:0!important}@media(max-width:980px){.app-shell:not(.app-hidden) #route-visual-canvas{flex:0 0 auto!important;height:220px!important;min-height:220px!important;max-height:220px!important;aspect-ratio:auto!important}.app-shell:not(.app-hidden) .route-storyboard{flex:1 1 auto!important;max-height:none!important}}.planner-layout,.app-shell:not(.app-hidden) .planner-layout{align-items:stretch!important}.planner-layout>.panel,.app-shell:not(.app-hidden) .planner-layout>.panel{display:flex!important;flex-direction:column!important;min-height:0!important;height:auto!important}.chat-panel,.app-shell:not(.app-hidden) .chat-panel{display:flex!important;flex-direction:column!important;min-height:0!important}.chat-panel .panel-header,.app-shell:not(.app-hidden) .chat-panel .panel-header{flex:0 0 auto!important}.chat-panel .chat-log,.app-shell:not(.app-hidden) .chat-panel .chat-log{flex:1 1 auto!important;min-height:0!important;height:auto!important;overflow-y:auto!important}.chat-panel .chat-form,.app-shell:not(.app-hidden) .chat-panel .chat-form{flex:0 0 auto!important;margin-top:14px!important}.travel-plan-panel,.app-shell:not(.app-hidden) .travel-plan-panel{display:flex!important;flex-direction:column!important;min-height:0!important}.travel-plan-panel .panel-header,.app-shell:not(.app-hidden) .travel-plan-panel .panel-header{flex:0 0 auto!important}.travel-plan-panel .travel-plan-body,.app-shell:not(.app-hidden) .travel-plan-panel .travel-plan-body{flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;display:flex!important;flex-direction:column!important}.route-visual-panel,.app-shell:not(.app-hidden) .route-visual-panel{display:flex!important;flex-direction:column!important;min-height:0!important}.route-visual-panel .panel-header,.app-shell:not(.app-hidden) .route-visual-panel .panel-header{flex:0 0 auto!important}.route-visual-layout,.app-shell:not(.app-hidden) .route-visual-layout{display:flex!important;flex-direction:column!important;flex:1 1 auto!important;min-height:0!important;gap:14px!important}#route-visual-canvas,.app-shell:not(.app-hidden) #route-visual-canvas{flex:0 0 auto!important;height:200px!important;min-height:200px!important;max-height:200px!important;width:100%!important;aspect-ratio:auto!important}.route-storyboard,.app-shell:not(.app-hidden) .route-storyboard{flex:1 1 auto!important;min-height:0!important;max-height:none!important;overflow-y:auto!important;display:flex!important;flex-direction:column!important;gap:14px!important}.route-storyboard .route-scene-card,.app-shell:not(.app-hidden) .route-storyboard .route-scene-card{flex:0 0 auto!important;min-height:0!important}.route-image-prompt,.app-shell:not(.app-hidden) .route-image-prompt{flex:0 0 auto!important;margin-top:0!important;margin-bottom:0!important}.route-storyboard::-webkit-scrollbar,.app-shell:not(.app-hidden) .route-storyboard::-webkit-scrollbar{width:5px!important}.route-storyboard::-webkit-scrollbar-thumb,.app-shell:not(.app-hidden) .route-storyboard::-webkit-scrollbar-thumb{background:#d9b45e59!important;border-radius:999px!important}@media(max-width:980px){.planner-layout,.app-shell:not(.app-hidden) .planner-layout{grid-template-columns:1fr!important}.planner-layout>.panel,.app-shell:not(.app-hidden) .planner-layout>.panel{height:auto!important;min-height:360px!important}#route-visual-canvas,.app-shell:not(.app-hidden) #route-visual-canvas{height:180px!important;min-height:180px!important;max-height:180px!important}}.app-shell:not(.app-hidden){--bg: #ffffff;--surface: #ffffff;--surface-2: #f8f9fa;--ink: #202124;--muted: #5f6368;--line: #dadce0;--river: #1a73e8;--river-dark: #1558b0;--leaf: #1a73e8;--lotus: #1a73e8;--app-glass-bg: #ffffff;--app-glass-strong: #f8f9fa;--app-glass-faint: #f1f3f4;--app-glass-border: #dadce0;--app-glass-border-strong: #bdc1c6;--app-glass-muted: #5f6368;display:grid;min-height:100dvh;grid-template-columns:minmax(0,1fr);grid-template-rows:72px minmax(0,1fr);padding:0;background:#fff;color:#202124;color-scheme:light;font-family:Segoe UI,Noto Sans SC,Microsoft YaHei UI,Arial,sans-serif}.app-shell:not(.app-hidden):before,.app-shell:not(.app-hidden):after,.app-shell:not(.app-hidden) .sidebar:after,.app-shell:not(.app-hidden) .panel:before,.app-shell:not(.app-hidden) .profile-hero:before,.app-shell:not(.app-hidden) .profile-panel:before,.app-shell:not(.app-hidden) .profile-space:before,.app-shell:not(.app-hidden) .journey-hero:before,.app-shell:not(.app-hidden) .journey-map-panel:before,.app-shell:not(.app-hidden) .journey-panel:before,.app-shell:not(.app-hidden) .journey-empty-card:before,.wuhan-yunyou-overview:before{display:none}.app-shell:not(.app-hidden) .sidebar{position:sticky;top:0;z-index:30;display:flex;width:auto;min-width:0;height:72px;grid-row:1;align-items:center;gap:24px;overflow:visible;border:0;border-bottom:1px solid #e5e7eb;background:#fffffff5;padding:0 250px 0 24px;box-shadow:none;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.app-shell:not(.app-hidden) .brand{display:flex;width:220px;flex:0 0 220px;align-items:center;gap:10px;border:0;padding:0}.app-shell:not(.app-hidden) .brand-mark{display:grid;width:36px;height:36px;place-items:center;border:0;border-radius:50%;background:#1a73e8;color:#fff;font-size:11px;font-weight:700;box-shadow:none}.app-shell:not(.app-hidden) .brand strong{color:#202124!important;font-family:Segoe UI,Noto Sans SC,Microsoft YaHei UI,Arial,sans-serif;font-size:17px;font-weight:500!important;white-space:nowrap}.app-shell:not(.app-hidden) .brand span{display:none}.app-shell:not(.app-hidden) .nav-list{display:flex;min-width:0;flex:1;align-self:stretch;align-items:stretch;gap:2px}.app-shell:not(.app-hidden) .sidebar .nav-item{display:flex;min-width:0;min-height:0;align-items:center;justify-content:center;gap:0;border:0;border-radius:0;background:transparent;color:#3c4043;padding:0 14px;box-shadow:inset 0 -3px transparent;font-size:13px;font-weight:500!important;white-space:nowrap}.app-shell:not(.app-hidden) .sidebar .nav-item:hover{background:#f8f9fa;color:#202124}.app-shell:not(.app-hidden) .sidebar .nav-item.active{background:transparent;color:#202124;box-shadow:inset 0 -3px #1a73e8}.app-shell:not(.app-hidden) .sidebar .nav-icon{display:none}.app-shell:not(.app-hidden) .main{min-width:0;max-width:none;grid-row:2;padding:0;background:#fff}.app-shell:not(.app-hidden) .topbar{position:fixed;top:0;right:20px;z-index:35;display:flex;width:auto;max-width:none;min-height:72px;align-items:center;justify-content:flex-end;margin:0;border:0;background:transparent;padding:0}.app-shell:not(.app-hidden) .topbar>div:first-child{display:none}.app-shell:not(.app-hidden) .topbar>.topbar-actions{display:flex;align-items:center;gap:10px}.app-shell:not(.app-hidden) .language-control{min-height:40px;border:1px solid #dadce0;border-radius:20px;background:#fff;color:#3c4043;padding:0 30px 0 12px;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}.app-shell:not(.app-hidden) .language-control span{color:#5f6368}.app-shell:not(.app-hidden) .language-control option{background:#fff;color:#202124}.app-shell:not(.app-hidden) .topbar-profile{display:inline-flex;min-height:40px;align-items:center;gap:8px;border:0;border-radius:20px;background:transparent;color:#3c4043;padding:4px 10px 4px 4px;box-shadow:none;font-size:13px}.app-shell:not(.app-hidden) .topbar-profile:hover,.app-shell:not(.app-hidden) .topbar-profile.active{background:#e8f0fe;color:#174ea6;box-shadow:none}.topbar-avatar{display:grid;width:32px;height:32px;flex:0 0 32px;place-items:center;overflow:hidden;border-radius:50%;background:#1a73e8;color:#fff;font-size:13px;font-weight:600}.topbar-avatar img{width:100%;height:100%;object-fit:cover}.app-shell:not(.app-hidden) .view,.app-shell:not(.app-hidden) #dashboard.active-view{width:min(100%,1320px);max-width:1320px;margin:0 auto;padding:36px 40px 72px}.app-shell:not(.app-hidden) .scenic-overview{gap:0}.app-shell:not(.app-hidden) .wuhan-yunyou-overview{display:grid;min-height:0;gap:52px;overflow:visible;border:0;border-radius:0;background:#fff;color:#202124;padding:22px 0 0;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}.app-shell:not(.app-hidden) .yunyou-masthead{display:block;min-height:0}.app-shell:not(.app-hidden) .yunyou-title-block{width:min(100%,760px);align-items:center;gap:14px;margin:0 auto;text-align:center}.app-shell:not(.app-hidden) .yunyou-title-block .eyebrow{display:none}.app-shell:not(.app-hidden) .yunyou-title-block h2{max-width:100%;margin:0;color:#202124!important;font-family:Segoe UI,Noto Sans SC,Microsoft YaHei UI,Arial,sans-serif;font-size:clamp(34px,4vw,48px);font-weight:400!important;line-height:1.22}.app-shell:not(.app-hidden) .yunyou-title-block p{max-width:52ch;margin:0;color:#5f6368!important;font-size:16px;line-height:1.65}.app-shell:not(.app-hidden) .yunyou-actions{justify-content:center;gap:10px;margin-top:8px}.app-shell:not(.app-hidden) .yunyou-actions .primary-button,.app-shell:not(.app-hidden) .yunyou-actions .ghost-button{min-height:42px;padding:9px 18px}.app-shell:not(.app-hidden) .yunyou-mascot-stage{display:none}.app-shell:not(.app-hidden) .yunyou-portal-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:auto;gap:16px}.app-shell:not(.app-hidden) .yunyou-portal,.app-shell:not(.app-hidden) .yunyou-portal.portal-wide,.app-shell:not(.app-hidden) .yunyou-portal.portal-tall{position:relative;display:grid;min-height:0;aspect-ratio:4 / 5;grid-column:auto;grid-row:auto;align-content:start;gap:7px;overflow:hidden;border:0;border-radius:8px;background:#f1f3f4;color:#202124;padding:22px;box-shadow:none;text-align:left;transition:transform .18s ease,box-shadow .18s ease}.app-shell:not(.app-hidden) .yunyou-portal:nth-child(2),.app-shell:not(.app-hidden) .yunyou-portal:nth-child(5){background:#eef3f8}.app-shell:not(.app-hidden) .yunyou-portal:nth-child(3){background:#f4f1ed}.app-shell:not(.app-hidden) .yunyou-portal:nth-child(4),.app-shell:not(.app-hidden) .yunyou-portal:nth-child(6){background:#edf3ef}.app-shell:not(.app-hidden) .yunyou-portal:nth-child(5),.app-shell:not(.app-hidden) .yunyou-portal:nth-child(6){aspect-ratio:2 / 1;grid-column:span 2}.app-shell:not(.app-hidden) .yunyou-portal:hover,.app-shell:not(.app-hidden) .yunyou-portal:focus-visible{border:0;background:#f1f3f4;color:#202124;outline:3px solid rgba(26,115,232,.3);outline-offset:2px;box-shadow:0 8px 24px #3c40432e;transform:translateY(-3px)}.app-shell:not(.app-hidden) .yunyou-portal:active{box-shadow:0 3px 12px #3c404324;transform:translateY(1px) scale(.99)}.app-shell:not(.app-hidden) .portal-kicker{position:relative;z-index:2;display:block;width:auto;min-height:0;border:0;border-radius:0;background:transparent;color:#5f6368;padding:0;font-size:12px;font-weight:500!important}.app-shell:not(.app-hidden) .yunyou-portal strong{position:relative;z-index:2;max-width:10em;color:#202124!important;font-family:Segoe UI,Noto Sans SC,Microsoft YaHei UI,Arial,sans-serif;font-size:clamp(22px,2vw,30px);font-weight:400!important;line-height:1.2}.app-shell:not(.app-hidden) .yunyou-portal p{position:relative;z-index:2;max-width:25ch;margin:3px 0 0;color:#5f6368!important;font-size:13px;line-height:1.55}.app-shell:not(.app-hidden) .portal-model,.app-shell:not(.app-hidden) .portal-wide .portal-model{right:-4%;bottom:-4%;z-index:1;width:78%;height:66%}.app-shell:not(.app-hidden) .yunyou-portal:nth-child(5) .portal-model,.app-shell:not(.app-hidden) .yunyou-portal:nth-child(6) .portal-model{right:1%;bottom:-8%;width:48%;height:84%}.app-shell:not(.app-hidden) .primary-button,.app-shell:not(.app-hidden) .login-button,.app-shell:not(.app-hidden) .weather-marker:hover,.app-shell:not(.app-hidden) .weather-marker.active,.app-shell:not(.app-hidden) .message.user,.app-shell:not(.app-hidden) .mini-ai-message.user{border:1px solid #1a73e8;border-radius:6px;background:#1a73e8;color:#fff;box-shadow:none}.app-shell:not(.app-hidden) .primary-button:hover,.app-shell:not(.app-hidden) .login-button:hover{border-color:#1558b0;background:#1558b0;color:#fff}.app-shell:not(.app-hidden) .ghost-button,.app-shell:not(.app-hidden) .icon-button,.app-shell:not(.app-hidden) .segment,.app-shell:not(.app-hidden) .mini-ai-icon-button,.app-shell:not(.app-hidden) .delete-itinerary,.route-modal-close{border:1px solid #dadce0;border-radius:6px;background:#fff;color:#3c4043;box-shadow:none}.app-shell:not(.app-hidden) .ghost-button:hover,.app-shell:not(.app-hidden) .icon-button:hover,.app-shell:not(.app-hidden) .segment:hover,.app-shell:not(.app-hidden) .segment.active,.app-shell:not(.app-hidden) .mini-ai-icon-button:hover,.route-modal-close:hover{border-color:#bdc1c6;background:#f8f9fa;color:#174ea6}.app-shell:not(.app-hidden) .panel,.app-shell:not(.app-hidden) .metric-card,.app-shell:not(.app-hidden) .scenic-directory-head,.app-shell:not(.app-hidden) .scenic-card,.app-shell:not(.app-hidden) .gallery-hero,.app-shell:not(.app-hidden) .gallery-thumb,.app-shell:not(.app-hidden) .route-scene-card,.app-shell:not(.app-hidden) .knowledge-card,.app-shell:not(.app-hidden) .itinerary-item,.app-shell:not(.app-hidden) .weather-card,.app-shell:not(.app-hidden) .route-image-prompt,.app-shell:not(.app-hidden) .dashboard-model-gallery,.app-shell:not(.app-hidden) .dashboard-model-card,.app-shell:not(.app-hidden) .profile-hero,.app-shell:not(.app-hidden) .profile-panel,.app-shell:not(.app-hidden) .profile-space,.app-shell:not(.app-hidden) .profile-identity-card,.app-shell:not(.app-hidden) .profile-stat-grid div,.app-shell:not(.app-hidden) .profile-switch,.app-shell:not(.app-hidden) .profile-badge,.app-shell:not(.app-hidden) .profile-notification-preview article,.app-shell:not(.app-hidden) .profile-space-post,.app-shell:not(.app-hidden) .profile-empty-space,.app-shell:not(.app-hidden) .profile-notice-card,.app-shell:not(.app-hidden) .profile-scan-button,.app-shell:not(.app-hidden) .journey-hero,.app-shell:not(.app-hidden) .journey-map-panel,.app-shell:not(.app-hidden) .journey-panel,.app-shell:not(.app-hidden) .journey-empty-card,.app-shell:not(.app-hidden) .journey-stat-grid div,.app-shell:not(.app-hidden) .journey-route-card,.app-shell:not(.app-hidden) .journey-footprint-item,.app-shell:not(.app-hidden) .journey-footprint-map,.app-shell:not(.app-hidden) .tp-day-card,.route-modal-card,.mini-ai-panel{border-color:#dadce0!important;border-radius:8px;background:#fff!important;color:#202124!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.app-shell:not(.app-hidden) .panel-header{border-bottom-color:#e8eaed}.app-shell:not(.app-hidden) .panel-header h2,.app-shell:not(.app-hidden) .gallery-copy h2,.app-shell:not(.app-hidden) .scenic-directory-head h2,.app-shell:not(.app-hidden) .scenic-title-row h3,.app-shell:not(.app-hidden) .route-scene-card strong,.app-shell:not(.app-hidden) .knowledge-card strong,.app-shell:not(.app-hidden) .profile-hero-copy h2,.app-shell:not(.app-hidden) .profile-space-head h2,.app-shell:not(.app-hidden) .profile-identity-card strong,.app-shell:not(.app-hidden) .profile-badge strong,.app-shell:not(.app-hidden) .profile-notification-preview strong,.app-shell:not(.app-hidden) .journey-hero-copy h2,.app-shell:not(.app-hidden) .journey-map-copy h2,.app-shell:not(.app-hidden) .journey-route-card h3,.app-shell:not(.app-hidden) .tp-day-info h3,.app-shell:not(.app-hidden) .tp-stop-headline h4,.app-shell:not(.app-hidden) .tp-meal-item strong{color:#202124!important;font-family:Segoe UI,Noto Sans SC,Microsoft YaHei UI,Arial,sans-serif}.app-shell:not(.app-hidden) p,.app-shell:not(.app-hidden) .scenic-desc,.app-shell:not(.app-hidden) .gallery-copy p,.app-shell:not(.app-hidden) .route-scene-card p,.app-shell:not(.app-hidden) .knowledge-card p,.app-shell:not(.app-hidden) .weather-card p,.app-shell:not(.app-hidden) .profile-identity-card span,.app-shell:not(.app-hidden) .profile-stat-grid dt,.app-shell:not(.app-hidden) .profile-switch small,.app-shell:not(.app-hidden) .journey-route-card p,.app-shell:not(.app-hidden) .journey-prompt,.app-shell:not(.app-hidden) .tp-stop-desc,.app-shell:not(.app-hidden) .tp-meal-item p,.app-shell:not(.app-hidden) .tp-tips-list li{color:#5f6368!important}.app-shell:not(.app-hidden) .eyebrow,.app-shell:not(.app-hidden) .field-label,.app-shell:not(.app-hidden) .status-pill,.app-shell:not(.app-hidden) .status-pill.ready,.app-shell:not(.app-hidden) .status-pill.running,.app-shell:not(.app-hidden) .status-pill.done,.app-shell:not(.app-hidden) .source-tag,.app-shell:not(.app-hidden) .chip,.app-shell:not(.app-hidden) .route-feature-tags em,.app-shell:not(.app-hidden) .knowledge-category-chip,.app-shell:not(.app-hidden) .weather-detail-grid span,.app-shell:not(.app-hidden) .mini-ai-suggestions button{border-color:#dadce0;background:#f8f9fa;color:#3c4043}.app-shell:not(.app-hidden) input,.app-shell:not(.app-hidden) textarea,.app-shell:not(.app-hidden) select{border-color:#bdc1c6;border-radius:6px;background:#fff;color:#202124;box-shadow:none}.app-shell:not(.app-hidden) input::placeholder,.app-shell:not(.app-hidden) textarea::placeholder{color:#80868b}.app-shell:not(.app-hidden) input:focus,.app-shell:not(.app-hidden) textarea:focus,.app-shell:not(.app-hidden) select:focus{border-color:#1a73e8;outline:none;box-shadow:0 0 0 3px #1a73e829}.app-shell:not(.app-hidden) .chat-log,.app-shell:not(.app-hidden) .itinerary-list,.app-shell:not(.app-hidden) .knowledge-list,.app-shell:not(.app-hidden) .citation-list,.app-shell:not(.app-hidden) .mini-ai-messages{border-color:#dadce0;background:#f8f9fa}.app-shell:not(.app-hidden) .message.assistant,.app-shell:not(.app-hidden) .mini-ai-message.assistant,.app-shell:not(.app-hidden) .tp-stop-card,.app-shell:not(.app-hidden) .tp-budget-item,.app-shell:not(.app-hidden) .tp-meal-item{border-color:#e8eaed;background:#f8f9fa;color:#3c4043}.app-shell:not(.app-hidden) .scenic-photo,.app-shell:not(.app-hidden) .gallery-preview,.app-shell:not(.app-hidden) .route-card-photo,.app-shell:not(.app-hidden) .route-gallery-thumb,.app-shell:not(.app-hidden) .route-modal-photo,.app-shell:not(.app-hidden) .route-modal-thumb,.app-shell:not(.app-hidden) .media-layout canvas,.app-shell:not(.app-hidden) .wuhan-map-shell{border-color:#e8eaed;background:#f1f3f4}.app-shell:not(.app-hidden) .profile-avatar{border:0;background:#1a73e8;color:#fff;box-shadow:none}.app-shell:not(.app-hidden) .profile-avatar span,.app-shell:not(.app-hidden) .profile-avatar .profile-avatar-change{color:#fff}.app-shell:not(.app-hidden) .profile-avatar .profile-avatar-change{background:#202124c2}.app-shell:not(.app-hidden) .profile-stat-grid dd,.app-shell:not(.app-hidden) .journey-stat-grid dd{color:#202124}.app-shell:not(.app-hidden) .tp-day-banner,.app-shell:not(.app-hidden) .tp-budget-summary,.app-shell:not(.app-hidden) .tp-accommodation,.app-shell:not(.app-hidden) .tp-tips{border-color:#e8eaed;background:#f8f9fa}@media(max-width:1180px)and (min-width:821px){.app-shell:not(.app-hidden) .sidebar{gap:12px;padding-right:188px;padding-left:16px}.app-shell:not(.app-hidden) .brand{width:142px;flex-basis:142px}.app-shell:not(.app-hidden) .brand-mark{display:none}.app-shell:not(.app-hidden) .brand strong{font-size:15px}.app-shell:not(.app-hidden) .sidebar .nav-item{padding-inline:8px;font-size:12px}.app-shell:not(.app-hidden) .topbar-profile-label{display:none}.app-shell:not(.app-hidden) .yunyou-portal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.app-shell:not(.app-hidden) .yunyou-portal:nth-child(5),.app-shell:not(.app-hidden) .yunyou-portal:nth-child(6){aspect-ratio:4 / 5;grid-column:auto}}@media(max-width:820px){.app-shell:not(.app-hidden){display:block;min-height:100dvh;padding:64px 0 74px}.app-shell:not(.app-hidden) .sidebar{position:fixed;inset:auto 0 0;z-index:40;display:flex;width:100%;height:72px;border-top:1px solid #e5e7eb;border-bottom:0;background:#fffffffa;padding:0}.app-shell:not(.app-hidden) .brand{display:none}.app-shell:not(.app-hidden) .nav-list{display:grid;width:100%;grid-template-columns:repeat(6,minmax(0,1fr));gap:0}.app-shell:not(.app-hidden) .sidebar .nav-item{min-width:0;flex-direction:column;gap:3px;padding:6px 2px;box-shadow:inset 0 3px transparent;font-size:10px;line-height:1.1}.app-shell:not(.app-hidden) .sidebar .nav-item.active{box-shadow:inset 0 3px #1a73e8}.app-shell:not(.app-hidden) .sidebar .nav-icon{display:block;font-size:16px;line-height:1}.app-shell:not(.app-hidden) .sidebar .nav-item span:last-child{display:block}.app-shell:not(.app-hidden) .main{padding:0}.app-shell:not(.app-hidden) .topbar{position:fixed;inset:0 0 auto;z-index:40;width:100%;min-height:64px;align-items:center;justify-content:space-between;border-bottom:1px solid #e5e7eb;background:#fffffffa;padding:0 14px;flex-direction:row}.app-shell:not(.app-hidden) .topbar>div:first-child{display:block}.app-shell:not(.app-hidden) .topbar h1{margin:0;color:#202124!important;font-family:Segoe UI,Noto Sans SC,Microsoft YaHei UI,Arial,sans-serif;font-size:17px;font-weight:500!important}.app-shell:not(.app-hidden) .topbar>.topbar-actions{display:flex;flex-wrap:nowrap;gap:6px}.app-shell:not(.app-hidden) .language-control{min-height:36px;padding-right:26px}.app-shell:not(.app-hidden) .topbar-profile{min-height:36px;padding:2px}.app-shell:not(.app-hidden) .topbar-profile-label{display:none}.topbar-avatar{width:32px;height:32px}.app-shell:not(.app-hidden) .view,.app-shell:not(.app-hidden) #dashboard.active-view{width:100%;padding:28px 16px 48px}.app-shell:not(.app-hidden) .wuhan-yunyou-overview{gap:34px;padding-top:8px}.app-shell:not(.app-hidden) .yunyou-title-block h2{font-size:clamp(30px,8vw,36px)}.app-shell:not(.app-hidden) .yunyou-title-block p{font-size:14px}.app-shell:not(.app-hidden) .yunyou-portal-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.app-shell:not(.app-hidden) .yunyou-portal,.app-shell:not(.app-hidden) .yunyou-portal.portal-wide,.app-shell:not(.app-hidden) .yunyou-portal.portal-tall,.app-shell:not(.app-hidden) .yunyou-portal:nth-child(5),.app-shell:not(.app-hidden) .yunyou-portal:nth-child(6){aspect-ratio:4 / 5;grid-column:auto;padding:16px}.app-shell:not(.app-hidden) .yunyou-portal strong{font-size:21px}.app-shell:not(.app-hidden) .yunyou-portal p{font-size:12px}}@media(max-width:560px){.app-shell:not(.app-hidden) .topbar h1{font-size:15px}.app-shell:not(.app-hidden) .language-control select{min-width:58px}.app-shell:not(.app-hidden) .yunyou-portal-grid{grid-template-columns:1fr}.app-shell:not(.app-hidden) .yunyou-portal,.app-shell:not(.app-hidden) .yunyou-portal.portal-wide,.app-shell:not(.app-hidden) .yunyou-portal.portal-tall,.app-shell:not(.app-hidden) .yunyou-portal:nth-child(5),.app-shell:not(.app-hidden) .yunyou-portal:nth-child(6){width:100%;min-width:0;min-height:270px;aspect-ratio:auto}.app-shell:not(.app-hidden) .portal-model,.app-shell:not(.app-hidden) .portal-wide .portal-model,.app-shell:not(.app-hidden) .yunyou-portal:nth-child(5) .portal-model,.app-shell:not(.app-hidden) .yunyou-portal:nth-child(6) .portal-model{right:0;bottom:-10%;width:54%;height:78%}}@media(prefers-reduced-motion:reduce){.app-shell:not(.app-hidden) .yunyou-portal{transition:none}}.app-shell:not(.app-hidden) .profile-avatar .profile-avatar-change{color:#fff}.app-shell:not(.app-hidden){gap:0}@media(min-width:821px){.app-shell:not(.app-hidden) .sidebar{flex-direction:row;justify-content:flex-start}.app-shell:not(.app-hidden) .brand{height:36px;min-height:36px}}.app-shell:not(.app-hidden) .app-language-control select{min-height:0;border:0;background:transparent;padding:0;box-shadow:none}@media(min-width:1181px){.app-shell:not(.app-hidden) .sidebar{padding-right:310px}}.app-shell:not(.app-hidden) #profile-avatar-help{color:#5f6368!important}.app-shell:not(.app-hidden) #profile-avatar-initial,.app-shell:not(.app-hidden) .profile-avatar .profile-avatar-change{color:#fff!important}.app-shell:not(.app-hidden) .scenic-index,.app-shell:not(.app-hidden) .scenic-visit,.app-shell:not(.app-hidden) .focus-btn.active{border-color:#1a73e8;background:#1a73e8;color:#fff;box-shadow:none}.app-shell:not(.app-hidden) .scenic-source{border-color:#dadce0;background:#fff;color:#174ea6}@media(max-width:560px){.app-shell:not(.app-hidden) .wuhan-map-shell{height:auto}.app-shell:not(.app-hidden) #wuhan-map{flex:0 0 240px;min-height:240px}}.app-shell:not(.app-hidden) .main{z-index:auto}.app-shell:not(.app-hidden) .sidebar .nav-item:focus-visible,.app-shell:not(.app-hidden) .topbar-profile:focus-visible{outline:2px solid #1a73e8;outline-offset:-2px}.knowledge-panel-header{align-items:flex-start;margin-bottom:16px}.knowledge-header-actions{display:flex;align-items:flex-start;gap:8px}.knowledge-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 0 18px}.knowledge-stat{display:grid;gap:3px;min-width:0;border-top:2px solid #1a73e8;background:#f7f9fc;padding:10px 12px}.knowledge-stat span,.knowledge-stat small{color:var(--muted);font-size:12px}.knowledge-stat strong{color:var(--ink);font-size:24px;line-height:1}.knowledge-library-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;margin:18px 0 10px}.knowledge-filter-field input{width:100%}.knowledge-category-chip{cursor:pointer;transition:border-color .16s ease,background .16s ease,transform .16s ease}.knowledge-category-chip:hover,.knowledge-category-chip:focus-visible{border-color:#1a73e8;transform:translateY(-1px)}.knowledge-category-chip.active{border-color:#1a73e8;background:#e8f0fe;color:#174ea6}.app-shell:not(.app-hidden) .knowledge-category-chip.active{border-color:#8ab4f8;background:#8ab4f833;color:#d2e3fc}.knowledge-search-intro{max-width:52ch;margin:-4px 0 14px;color:var(--muted);line-height:1.65}.knowledge-suggestions{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px}.knowledge-suggestions button{border:1px solid var(--line);border-radius:999px;background:transparent;padding:7px 11px;color:var(--muted);cursor:pointer;font:inherit;font-size:12px;font-weight:800}.knowledge-suggestions button:hover,.knowledge-suggestions button:focus-visible{border-color:#1a73e8;color:#174ea6}.knowledge-search-summary{min-height:22px;margin:2px 0 12px;color:var(--muted);font-size:13px;font-weight:800}.knowledge-empty-state{display:grid;gap:4px}.knowledge-empty-state strong{color:var(--ink);font-size:15px}.knowledge-card-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.citation-card{display:grid;grid-template-columns:34px minmax(0,1fr);gap:12px;padding:14px;border-left:3px solid #1a73e8}.citation-rank{display:grid;width:30px;height:30px;place-items:center;border-radius:50%;background:#e8f0fe;color:#174ea6;font-size:12px;font-weight:900}.citation-card-body{min-width:0}.citation-card-title strong{overflow-wrap:anywhere;line-height:1.4}.citation-score{height:5px;overflow:hidden;margin:10px 0 8px;border-radius:999px;background:#e8eef6}.citation-score span{display:block;height:100%;border-radius:inherit;background:#1a73e8}.citation-actions{display:flex;flex-wrap:wrap;gap:8px}.citation-actions .ghost-button.is-copied{border-color:#1a73e8;color:#174ea6}@media(max-width:820px){.knowledge-form-grid,.knowledge-actions,.knowledge-search,.knowledge-library-toolbar{grid-template-columns:1fr}.knowledge-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.knowledge-library-toolbar .ghost-button{justify-self:start}}@media(max-width:460px){.knowledge-stats{gap:5px}.knowledge-stat{padding:9px 8px}.knowledge-stat strong{font-size:20px}.citation-card{grid-template-columns:28px minmax(0,1fr);gap:9px;padding:12px}.citation-rank{width:26px;height:26px}}.photo-composite-panel{min-width:0;overflow:hidden}.composite-intro{max-width:720px;margin:-4px 0 22px;color:#5f6368;line-height:1.7}.composite-workbench{display:grid;grid-template-columns:minmax(220px,.85fr) minmax(280px,1.15fr);gap:24px;align-items:stretch;margin-bottom:22px}.portrait-drop{position:relative;display:grid;min-height:292px;place-content:center;justify-items:center;gap:14px;overflow:hidden;border:1px dashed #9aa0a6;border-radius:6px;background:#f8f9fa;color:#202124;cursor:pointer;transition:border-color .16s ease,background-color .16s ease}.portrait-drop:hover,.portrait-drop:focus-within{border-color:#1a73e8;background:#f1f7fe}.portrait-drop input{position:absolute;width:1px;height:1px;opacity:0}.portrait-drop-icon{display:grid;width:44px;height:44px;place-items:center;border-radius:50%;background:#1a73e8;color:#fff;font-size:25px;line-height:1}.portrait-drop-copy{display:grid;max-width:250px;gap:7px;padding:0 18px;text-align:center}.portrait-drop-copy strong{font-size:17px}.portrait-drop-copy small{color:#5f6368;line-height:1.55}.portrait-drop img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.portrait-drop.has-preview .portrait-drop-icon,.portrait-drop.has-preview .portrait-drop-copy{display:none}.composite-controls{display:grid;align-content:start;gap:10px;min-width:0;padding-left:24px;border-left:1px solid #e8eaed}.composite-controls select,.composite-controls textarea{width:100%;min-width:0;border:1px solid #dadce0;border-radius:4px;background:#fff;color:#202124;padding:11px 12px;font:inherit}.composite-controls textarea{min-height:92px;resize:vertical}.composite-controls .primary-button{min-height:44px;margin-top:2px}.composite-note{margin:0;color:#80868b;font-size:12px;line-height:1.55}.composite-error{margin:0;border-left:3px solid #d93025;color:#b3261e;padding:2px 0 2px 10px;font-size:13px;line-height:1.5}.composite-result-shell{position:relative;display:grid;width:100%;min-height:360px;aspect-ratio:4 / 3;place-items:center;overflow:hidden;margin-bottom:12px;border:1px solid #dadce0;border-radius:6px;background:#5f6368 url(/assets/huanghelou-CDtuNrAU.jpg) center / cover no-repeat}.composite-placeholder{display:grid;gap:8px;padding:20px;color:#fff;text-align:center;text-shadow:0 2px 12px rgba(0,0,0,.75)}.composite-placeholder strong{font-size:24px}.composite-placeholder small{font-size:13px}.composite-result-shell img{display:block;width:100%;height:100%;object-fit:contain;background:#202124}.composite-download:disabled{cursor:not-allowed;opacity:.46}@media(max-width:720px){.composite-workbench{grid-template-columns:1fr;gap:18px}.portrait-drop{min-height:240px}.composite-controls{padding-left:0;border-left:0}.composite-result-shell{min-height:260px}}@media(prefers-reduced-motion:reduce){.portrait-drop{transition:none}}.audio-guide-panel{display:flex;flex-direction:column;gap:18px;min-width:0;overflow:hidden}.audio-guide-builder{display:grid;gap:14px;padding-block:2px 18px;border-bottom:1px solid var(--line)}.audio-route-context{display:grid;grid-template-columns:auto minmax(0,1fr);gap:3px 12px;align-items:baseline;padding-left:12px;border-left:3px solid var(--gold, #c79a3f)}.audio-route-context>span{grid-row:1 / span 2;align-self:center;color:var(--muted);font-size:12px;font-weight:800}.audio-route-context strong,.audio-route-context small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.audio-route-context strong{color:var(--ink);font-size:15px}.audio-route-context small{color:var(--muted);font-size:12px}.audio-guide-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.audio-guide-options label{display:grid;gap:7px;min-width:0}.audio-guide-options select,.audio-speed-control select{width:100%;min-width:0}.audio-style-options{margin:0}.audio-generate-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:48px}.audio-generate-icon{display:grid;place-items:center;width:22px;height:22px;border:1px solid currentColor;border-radius:50%;font-size:11px}.audio-guide-empty{display:flex;align-items:center;gap:14px;min-height:118px;padding:18px;background:#2f7a6212;border-block:1px solid rgba(47,122,98,.14)}.audio-empty-mark{display:grid;place-items:center;flex:0 0 46px;width:46px;height:46px;border-radius:50%;background:var(--river-dark, #195a48);color:#fff;font-size:16px;font-weight:900}.audio-guide-empty strong{color:var(--ink);font-size:15px}.audio-guide-empty p{margin:5px 0 0;color:var(--muted);font-size:13px;line-height:1.55}.audio-guide-player{overflow:hidden;border:1px solid rgba(16,35,30,.16);border-radius:8px;background:#0d1d18;box-shadow:0 14px 34px #10231e24}.audio-guide-player[hidden],.audio-chapter-list[hidden],.audio-transcript-panel[hidden]{display:none}.audio-player-hero{position:relative;min-height:220px;aspect-ratio:16 / 8.5;overflow:hidden}.audio-player-hero img{width:100%;height:100%;object-fit:cover}.audio-player-shade{position:absolute;inset:0;background:linear-gradient(180deg,#050f0c0a 18%,#050f0ceb)}.audio-now-playing{position:absolute;inset:auto 20px 18px;min-width:0;color:#fff}.audio-now-playing span{color:#f1d486;font-size:11px;font-weight:900;letter-spacing:0;text-transform:uppercase}.audio-now-playing h3{margin:5px 0 3px;color:#fff;font-size:24px;line-height:1.18;letter-spacing:0;overflow-wrap:anywhere}.audio-now-playing p{margin:0;color:#ffffffb8;font-size:12px}.audio-player-controls{display:grid;gap:8px;padding:15px 18px 17px;color:#fff}#audio-progress{width:100%;height:4px;margin:0;padding:0;accent-color:#f1d486;cursor:pointer}.audio-time-row,.audio-control-row{display:flex;align-items:center;justify-content:space-between}.audio-time-row{color:#ffffff94;font-size:11px;font-variant-numeric:tabular-nums}.audio-control-row{position:relative;min-height:54px;gap:12px}.audio-speed-control{display:flex;align-items:center;gap:5px;width:86px;color:#ffffffa3;font-size:11px;font-weight:800}.audio-speed-control select{height:32px;padding:4px 6px;border-color:#ffffff29;background:#ffffff14;color:#fff;font-size:11px}.audio-speed-control option{color:#10231e}.audio-transport{position:absolute;left:50%;display:flex;align-items:center;gap:10px;transform:translate(-50%)}.audio-icon-button,.audio-play-button{display:grid;place-items:center;flex:0 0 auto;padding:0;border-radius:50%}.audio-icon-button{width:36px;height:36px;border:1px solid rgba(255,255,255,.18);background:#ffffff0f;color:#ffffffd1;font-size:15px}.audio-play-button{width:52px;height:52px;border:0;background:#f1d486;color:#10231e;font-size:17px;box-shadow:0 8px 20px #f1d48633}.audio-icon-button:hover,.audio-icon-button:focus-visible{border-color:#ffffff6b;background:#ffffff1f}.audio-play-button:hover,.audio-play-button:focus-visible{background:#fff0bd}.audio-engine-badge{width:86px;color:#ffffff8f;font-size:11px;font-weight:800;text-align:right}.audio-chapter-list{display:grid;border-top:1px solid var(--line)}.audio-chapter-item{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:10px;align-items:center;width:100%;min-height:58px;padding:10px 4px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;color:var(--ink);text-align:left}.audio-chapter-item:hover,.audio-chapter-item:focus-visible{background:#2f7a620f}.audio-chapter-item.active{background:#2f7a621a}.audio-chapter-index{color:var(--muted);font-size:12px;font-weight:900;font-variant-numeric:tabular-nums;text-align:center}.audio-chapter-item.active .audio-chapter-index{color:var(--river-dark)}.audio-chapter-copy{display:grid;gap:3px;min-width:0}.audio-chapter-copy strong,.audio-chapter-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.audio-chapter-copy strong{font-size:13px}.audio-chapter-copy small,.audio-chapter-duration{color:var(--muted);font-size:11px}.audio-chapter-duration{font-variant-numeric:tabular-nums}.audio-transcript-panel{border-bottom:1px solid var(--line)}.audio-transcript-panel summary{padding:10px 0;color:var(--river-dark);cursor:pointer;font-size:13px;font-weight:900}.audio-transcript-panel .field-label{display:block;margin:4px 0 7px}.audio-transcript-panel textarea{min-height:190px;margin-bottom:14px;resize:vertical;line-height:1.75}@media(max-width:1180px){.app-shell:not(.app-hidden) .media-layout{grid-template-columns:1fr}.audio-player-hero{min-height:260px;aspect-ratio:16 / 7}}@media(max-width:560px){.audio-guide-options,.audio-route-context{grid-template-columns:1fr}.audio-route-context>span{grid-row:auto}.audio-route-context strong,.audio-route-context small{white-space:normal}.audio-player-hero{min-height:210px;aspect-ratio:4 / 3}.audio-now-playing{inset:auto 16px 15px}.audio-now-playing h3{font-size:21px}.audio-player-controls{padding-inline:14px}.audio-control-row{align-items:flex-end;min-height:92px}.audio-transport{top:0}.audio-speed-control,.audio-engine-badge{width:92px}.audio-style-options{grid-template-columns:1fr}}.app-shell:not(.app-hidden) .planner-step[hidden]{display:none!important}.app-shell:not(.app-hidden) .planner-step-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.app-shell:not(.app-hidden) .planner-step-tab{border-color:#ffffff2e;background:#0000003d;color:#fff}.app-shell:not(.app-hidden) .planner-step-tab.is-active{border-color:#ffffff94;background:#fff;color:#050807}.app-shell:not(.app-hidden) .planner-step-actions{border-top-color:#ffffff24}@media(max-width:640px){.app-shell:not(.app-hidden) .planner-step-nav{grid-template-columns:1fr}}.app-shell:not(.app-hidden) .planner-step-tab{cursor:pointer;min-height:94px}.app-shell:not(.app-hidden) .planner-step-tab:hover{transform:translateY(-2px);border-color:#ffffffc7}.route-image-empty{display:grid;justify-items:center;gap:10px;padding:clamp(32px,7vw,72px) 24px;border:1px dashed #c7cbd1;border-radius:12px;background:#f8f9fa;color:#202124;text-align:center}.route-image-empty[hidden]{display:none!important}.route-image-empty strong{font-size:22px}.route-image-empty p{max-width:620px;margin:0 0 8px;color:#5f6368;line-height:1.7}.audio-spot-library{display:grid;gap:14px;margin-top:20px;padding-top:20px;border-top:1px solid #e0e3e7}.audio-spot-library-head{display:grid;gap:4px}.audio-spot-library-head strong{color:#202124;font-size:17px}.audio-spot-library-head small{color:#5f6368}.audio-spot-list{display:grid;gap:8px}.audio-spot-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;border:1px solid #e0e3e7;border-radius:10px;background:#fff}.audio-spot-index{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#4d73df;color:#fff;font-weight:700}.audio-spot-item>div{display:grid;gap:3px}.audio-spot-item strong{color:#202124}.audio-spot-item small{color:#72767d}.profile-tool-modal .route-modal-card,.profile-tool-modal .profile-tool-content{color:#202124!important}.profile-tool-modal #profile-tool-eyebrow{color:#a06d00!important}.profile-tool-modal #profile-tool-title,.profile-tool-modal .profile-scan-button strong{color:#202124!important}.profile-tool-modal #profile-tool-desc,.profile-tool-modal .profile-scan-button span{color:#5f6368!important}.profile-tool-modal .profile-scan-button{border-color:#d8dce2!important;background:#fff!important;color:#202124!important}.profile-tool-modal .profile-scan-button:hover,.profile-tool-modal .profile-scan-button.visited{border-color:#d6aa43!important;background:#fff8e7!important}@media(max-width:640px){.audio-spot-item{grid-template-columns:auto minmax(0,1fr)}.audio-spot-item .ghost-button{grid-column:1 / -1;width:100%}}.scenic-voice-button{position:absolute;right:14px;bottom:54px;z-index:3;display:inline-flex;align-items:center;gap:6px;min-height:32px;border:1px solid #4d73df;border-radius:999px;background:#4d73df;color:#fff;padding:6px 12px;font:inherit;font-size:13px;font-weight:700;cursor:pointer;box-shadow:0 8px 20px #4d73df38}.scenic-voice-button:hover,.scenic-voice-button:focus-visible{background:#365fcf;transform:translateY(-1px)}.scenic-voice-button:disabled{cursor:wait;opacity:.72}.scenic-voice-button span{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#fff3}.scenic-detail-voice{justify-self:start;margin-top:8px}@media(max-width:640px){.scenic-voice-button{position:static;justify-self:start;margin:0 14px 12px}}.app-shell:not(.app-hidden) .agent-center{grid-column:1 / -1;overflow:hidden;border:1px solid #d7dce5;border-radius:10px;background:#fff;color:#202124;box-shadow:0 12px 34px #24407017}.agent-center-entry{display:grid;width:100%;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:18px;border:0;background:#fff;color:#202124;padding:18px 20px;text-align:left;cursor:pointer;transition:background-color .18s ease,transform .18s ease}.agent-center-entry:hover{background:#f7f9fe}.agent-center-entry:active{transform:translateY(1px)}.agent-center-entry:focus-visible,.agent-trace-item:focus-visible{outline:3px solid rgba(26,115,232,.24);outline-offset:-3px}.agent-center-monogram{display:grid;width:48px;height:48px;place-items:center;border-radius:9px;background:#1a73e8;color:#fff;font-family:Segoe UI,Microsoft YaHei UI,sans-serif;font-size:15px;font-weight:750;letter-spacing:-.03em}.agent-center-entry-copy{display:grid;gap:4px;min-width:0}.agent-center-entry-copy strong{color:#202124;font-size:18px;font-weight:650}.agent-center-entry-copy small{overflow:hidden;color:#68707c;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.agent-center-entry-state{position:relative;color:#174ea6;padding-left:14px;font-size:13px;font-weight:650;white-space:nowrap}.agent-center-entry-state:before{content:"";position:absolute;left:0;top:50%;width:7px;height:7px;border-radius:50%;background:#1a73e8;transform:translateY(-50%)}.agent-center-entry-action{min-width:80px;border-left:1px solid #e1e5eb;color:#3c4043;padding-left:18px;font-size:14px;font-weight:650;text-align:right;white-space:nowrap}.agent-center-entry-action:after{content:"+";display:inline-block;margin-left:9px;color:#1a73e8;font-size:18px;line-height:1;transition:transform .18s ease}.agent-center-entry[aria-expanded=true] .agent-center-entry-action:after{transform:rotate(45deg)}.agent-center-body[hidden]{display:none!important}.agent-center-body{border-top:1px solid #e2e6ec;animation:agentCenterReveal .26s cubic-bezier(.2,.8,.2,1) both}.agent-center-overview{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:32px;padding:30px;background:#f4f7fd}.agent-center-overview>div:first-child{display:grid;gap:8px}.agent-center-label,.agent-inspector-label{color:#174ea6;font-size:12px;font-weight:700;letter-spacing:.04em}.agent-center-overview h2{margin:0;color:#18202b;font-size:clamp(24px,2.5vw,36px);font-weight:500;letter-spacing:-.035em;line-height:1.18}.app-shell:not(.app-hidden) .agent-center-overview p{max-width:66ch;margin:0;color:#606977!important;font-size:14px;line-height:1.7}.agent-center-metrics{display:grid;grid-template-columns:repeat(3,minmax(92px,1fr));gap:1px;margin:0;overflow:hidden;border:1px solid #dbe1eb;border-radius:9px;background:#dbe1eb}.agent-center-metrics div{min-width:104px;background:#fff;padding:14px 16px}.agent-center-metrics dt{color:#747d89;font-size:12px}.agent-center-metrics dd{margin:5px 0 0;color:#174ea6;font-size:18px;font-weight:700;white-space:nowrap}.agent-center-workspace{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);min-height:420px}.agent-trace-column{min-width:0;padding:24px 20px 24px 24px}.agent-column-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px;color:#202124}.agent-column-heading strong{font-size:16px}.agent-column-heading span{color:#7a828d;font-size:12px}.agent-trace-list{display:grid;gap:6px}.agent-trace-item{position:relative;display:grid;width:100%;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:14px;overflow:hidden;border:1px solid transparent;border-radius:8px;background:transparent;color:#202124;padding:12px 13px;text-align:left;cursor:pointer;transition:border-color .15s ease,background-color .15s ease,transform .15s ease;animation:agentTraceIn .22s cubic-bezier(.2,.8,.2,1) both}.agent-trace-item:before{content:"";position:absolute;left:0;top:10px;bottom:10px;width:3px;border-radius:0 3px 3px 0;background:transparent}.agent-trace-item:hover,.agent-trace-item.is-selected{border-color:#d5deee;background:#f7f9fc}.agent-trace-item.is-selected:before{background:#1a73e8}.agent-trace-item:active{transform:translateY(1px)}.agent-trace-step{display:grid;width:38px;height:38px;place-items:center;border:1px solid #d8dee8;border-radius:8px;color:#5f6773;font-size:12px;font-weight:750}.agent-trace-item.completed .agent-trace-step,.agent-trace-item.running .agent-trace-step{border-color:#1a73e8;background:#1a73e8;color:#fff}.agent-trace-item.warning .agent-trace-step{border-color:#8a5a00;background:#fff5dc;color:#764b00}.agent-trace-copy{display:grid;gap:3px;min-width:0}.agent-trace-copy strong{color:#252a31;font-size:14px}.agent-trace-copy small{overflow:hidden;color:#727a86;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.agent-trace-status{color:#5f6773;font-size:12px;font-weight:650;white-space:nowrap}.agent-trace-item.warning .agent-trace-status{color:#764b00}.agent-trace-empty{display:grid;min-height:290px;align-content:center;gap:8px;border:1px dashed #cbd2dd;border-radius:8px;background:#fafbfc;padding:30px;text-align:center}.agent-trace-empty strong{color:#30353d;font-size:18px}.app-shell:not(.app-hidden) .agent-trace-empty p{max-width:48ch;margin:0 auto;color:#727a86!important;font-size:13px;line-height:1.7}.agent-inspector{min-width:0;border-left:1px solid #e2e6ec;background:#fbfcfe;padding:28px}.agent-inspector h3{margin:10px 0 8px;color:#202124;font-size:24px;font-weight:550;letter-spacing:-.025em}.app-shell:not(.app-hidden) .agent-inspector>p{margin:0;color:#65707d!important;font-size:14px;line-height:1.7}.agent-evidence-list{display:grid;gap:12px;margin-top:24px}.agent-evidence-row{display:grid;gap:5px;padding-bottom:12px;border-bottom:1px solid #e3e7ed}.agent-evidence-row:last-child{border-bottom:0}.agent-evidence-row span{color:#7a828d;font-size:12px}.agent-evidence-row strong{overflow-wrap:anywhere;color:#30353d;font-size:13px;font-weight:600;line-height:1.6}.agent-capability-preview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:24px}.agent-capability-preview span{border-left:3px solid #1a73e8;background:#edf3fc;color:#30445f;padding:10px 12px;font-size:12px;font-weight:650}@keyframes agentCenterReveal{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@keyframes agentTraceIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media(max-width:900px){.agent-center-overview,.agent-center-workspace{grid-template-columns:1fr}.agent-center-metrics{width:100%}.agent-inspector{border-top:1px solid #e2e6ec;border-left:0}}@media(max-width:640px){.agent-center-entry{grid-template-columns:auto minmax(0,1fr) auto;gap:12px;padding:14px}.agent-center-entry-copy small,.agent-center-entry-state{display:none}.agent-center-entry-action{min-width:0;border-left:0;padding-left:0;font-size:0}.agent-center-overview,.agent-trace-column,.agent-inspector{padding:20px 16px}.agent-center-metrics{grid-template-columns:1fr}.agent-center-metrics div{display:flex;min-width:0;align-items:center;justify-content:space-between;padding:11px 14px}.agent-center-metrics dd{margin:0;font-size:15px}.agent-trace-item{grid-template-columns:36px minmax(0,1fr);gap:10px;padding-inline:10px}.agent-trace-step{width:34px;height:34px}.agent-trace-status{grid-column:2}}@media(prefers-reduced-motion:reduce){.agent-center-body,.agent-trace-item{animation:none}.agent-center-entry,.agent-center-entry-action:after,.agent-trace-item{transition:none}}html body #mini-ai-panel #mini-ai-form #mini-ai-input,html body #mini-ai-panel #mini-ai-form #mini-ai-input:not(:placeholder-shown),html body #mini-ai-panel #mini-ai-form #mini-ai-input:focus{color-scheme:light!important;opacity:1!important;background-color:#fff!important;color:#050807!important;-webkit-text-fill-color:#050807!important;text-shadow:none!important;font-weight:800!important;filter:none!important}html body #mini-ai-panel #mini-ai-form #mini-ai-input::placeholder{color:#737873!important;-webkit-text-fill-color:#737873!important;opacity:1!important;font-weight:500!important}
