:root{color:#191f22;background:#ece8df;font-family:Inter,Microsoft YaHei,PingFang SC,system-ui,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;--ink: #182522;--pine: #153b33;--wine: #4b2947;--gold: #b8904c;--sky: #dbeaf0;--paper: #fffdf7;--paper-2: #f7f1e7;--line: #d8d2c4;--muted: #68736e;--danger: #9c3030}*{box-sizing:border-box}html,body{margin:0;min-width:320px;overflow-x:hidden}#root{width:100%;overflow-x:hidden}button,input,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:progress;opacity:.68}.splash{min-height:100vh;display:grid;align-items:end;padding:clamp(24px,6vw,78px);background:linear-gradient(180deg,#0c14141f,#0c1414c7),url(/assets/generated/elaina-travel-bg.png) center / cover;color:#fff}.splash-copy{max-width:760px;padding-bottom:7vh}.splash-copy span,.title-block span,.panel-head p,.home-cover span,.vn-start span,.dock-profile p,.reading-kicker{display:block;margin:0 0 8px;color:var(--muted);font-size:13px;letter-spacing:0}.splash-copy span,.splash-copy p{color:#edf6f1}.splash h1{margin:0;font-size:clamp(42px,7vw,88px);line-height:.98;letter-spacing:0}.splash p{max-width:560px;margin:18px 0 0;line-height:1.8}.splash button,.compact-form button,.composer button,.primary-wide,.verify{min-height:44px;border:0;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 18px;background:var(--pine);color:#fff}.splash button{margin-top:30px;background:#fff;color:var(--ink)}.login-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:14px}.login-captcha{margin-top:26px}.login-actions .secondary-login{margin-top:0;border:1px solid rgb(255 255 255 / 35%);background:#ffffff1f;color:#fff;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.loading-screen .splash-copy{animation:breathe 1.2s ease-in-out infinite alternate}.app-shell{min-height:100vh;display:grid;grid-template-columns:224px minmax(0,1fr);background:linear-gradient(90deg,#e7e1d5 0 224px,transparent 224px),linear-gradient(180deg,#f4f0e8,#ece8df);overflow-x:hidden}.rail{min-height:100vh;padding:22px 14px;background:var(--ink);color:#fff}.brand-mark{height:48px;display:flex;align-items:center;gap:10px;padding:0 8px 16px;border-bottom:1px solid rgb(255 255 255 / 12%)}.brand-glyph{width:34px;height:34px;border:1px solid rgb(255 255 255 / 28%);border-radius:8px;display:grid;place-items:center;color:#ffe4aa;font-weight:800}.brand-text{font-weight:760;letter-spacing:0}.rail nav{display:grid;gap:6px;margin-top:18px}.rail button,.bottom-nav button{min-height:44px;border:0;border-radius:8px;background:transparent;color:#ffffffbd;display:flex;align-items:center;gap:10px;padding:0 12px}.rail button.active{background:#f8f2e6;color:var(--ink)}.workspace{min-width:0;padding:24px clamp(18px,4vw,44px) 34px;animation:pageIn .42s cubic-bezier(.2,.8,.2,1);overflow-x:hidden}.topbar{min-height:58px;display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:20px;min-width:0;max-width:100%}.title-block h1,.panel-head h2,.home-cover h2,.vn-start strong{margin:0;color:var(--ink);letter-spacing:0}.title-block h1{font-size:clamp(30px,4vw,44px);line-height:1.05}.status-strip{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px;max-width:100%;min-width:0;overflow:hidden}.status-strip span{min-height:34px;display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);background:#fffdf7d1;border-radius:999px;padding:0 12px;color:#33423d;font-size:13px;white-space:nowrap;min-width:0;max-width:100%}.workspace-grid{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:18px;align-items:start}.content-surface{min-width:0;max-width:100%}.context-dock{position:sticky;top:22px;display:grid;gap:14px;border:1px solid var(--line);border-radius:8px;padding:16px;background:#fffdf7db;box-shadow:0 18px 42px #3b2e1e17}.dock-profile{display:flex;align-items:center;gap:12px}.avatar{width:44px;height:44px;border-radius:8px;display:grid;place-items:center;background:var(--wine);color:#fff;font-weight:800}.dock-profile strong{color:var(--ink)}.dock-list{display:grid;gap:9px}.dock-list span{display:flex;align-items:center;gap:8px;color:#4a5651;font-size:13px}.home-view{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:18px}.home-cover{min-height:570px;position:relative;overflow:hidden;border-radius:8px;display:flex;align-items:flex-end;padding:clamp(22px,4vw,46px);background:#172521;box-shadow:0 24px 58px #2c251c29}.home-cover img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.72;animation:slowDrift 16s ease-in-out infinite alternate}.home-cover:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 25%,rgb(13 21 20 / 82%))}.home-cover div{position:relative;z-index:1}.home-cover span,.home-cover h2{color:#fff}.home-cover h2{font-size:clamp(32px,5vw,64px);line-height:1.05}.launch-list{display:grid;gap:12px}.launch-list button,.citation-list article,.knowledge-answer,.weather-card,.paper-box{border:1px solid var(--line);border-radius:8px;background:var(--paper);box-shadow:0 14px 34px #3b2e1e14}.launch-list button{min-height:118px;display:grid;grid-template-columns:44px minmax(0,1fr);gap:14px;align-items:center;padding:18px;text-align:left;color:var(--ink);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;animation:riseIn .46s cubic-bezier(.2,.8,.2,1) both}.launch-list button:nth-child(2){animation-delay:60ms}.launch-list button:nth-child(3){animation-delay:.12s}.launch-list button:nth-child(4){animation-delay:.18s}.launch-list button:hover{transform:translateY(-2px);border-color:#c6b286;box-shadow:0 20px 44px #3b2e1e1f}.launch-icon{width:44px;height:44px;border-radius:8px;display:grid;place-items:center;background:var(--sky);color:var(--pine)}.launch-list strong{display:block;margin-bottom:6px}.launch-list small{display:block;color:var(--muted);line-height:1.5}.panel{width:min(100%,920px);display:grid;gap:16px}.panel-head{min-height:54px;display:flex;align-items:center;justify-content:space-between;gap:16px}.panel-head h2{font-size:clamp(24px,3vw,36px)}.compact-form,.composer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}input,textarea{width:100%;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink);min-height:44px;padding:10px 12px;outline:none}input:focus,textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px #b8904c24}textarea{min-height:188px;line-height:1.7;resize:vertical}.vn-shell{display:grid;gap:14px;max-width:100%}.vn-stage{min-height:min(70vh,680px);width:100%;max-width:100%;position:relative;overflow:hidden;border-radius:8px;background:#14211f;box-shadow:0 26px 68px #1f1a1538;animation:stageIn .52s cubic-bezier(.2,.8,.2,1)}.vn-backdrop{position:absolute;inset:0;background:linear-gradient(180deg,#10181814,#10181885),url(/assets/generated/elaina-travel-bg.png) center / cover;transform:scale(1.02);animation:slowDrift 18s ease-in-out infinite alternate}.vn-hud{position:absolute;top:14px;left:14px;right:14px;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:10px}.vn-hud>span{min-height:34px;display:inline-flex;align-items:center;border:1px solid rgb(255 255 255 / 24%);border-radius:8px;padding:0 12px;background:#0b12128a;color:#fff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);font-size:13px}.vn-character{position:absolute;right:clamp(8px,4vw,54px);bottom:128px;z-index:2;width:clamp(250px,27vw,420px);max-height:72%;animation:characterIn .62s .18s cubic-bezier(.2,.8,.2,1) both;filter:drop-shadow(0 26px 32px rgb(0 0 0 / 28%))}.vn-character img{width:100%;height:auto;display:block}.vn-dialogue{position:absolute;left:clamp(14px,3vw,32px);right:clamp(14px,3vw,32px);bottom:clamp(14px,3vw,28px);z-index:4;min-height:144px;border:1px solid rgb(255 255 255 / 24%);border-radius:8px;padding:24px 24px 16px;background:#12191ac7;color:#fff;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);animation:dialogueIn .36s .18s cubic-bezier(.2,.8,.2,1) both;max-width:calc(100% - 28px)}.nameplate{position:absolute;top:-18px;left:18px;min-width:104px;min-height:34px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;padding:0 14px;background:#f8f2e6;color:var(--ink);font-weight:760}.vn-dialogue p{margin:4px 0 16px;font-size:clamp(16px,1.7vw,21px);line-height:1.85;overflow-wrap:anywhere}.cursor{display:inline-block;width:9px;height:1.1em;margin-left:2px;vertical-align:-.15em;background:#ffffffb8;animation:blink .76s steps(2,start) infinite}.vn-controls,.toolbar,.segmented{display:flex;flex-wrap:wrap;gap:8px}.vn-controls button,.toolbar button,.file-button,.segmented button,.vn-choice-panel button,.danger{min-height:42px;border:1px solid var(--line);border-radius:8px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 12px;background:var(--paper);color:var(--ink)}.vn-controls button{background:#ffffff1f;border-color:#ffffff2e;color:#fff}.vn-start,.vn-log{border:1px solid var(--line);border-radius:8px;background:var(--paper);padding:16px}.vn-start{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(0,1.2fr);gap:16px;align-items:center}.vn-choice-panel{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.vn-choice-panel button{min-height:72px;justify-content:flex-start;text-align:left;line-height:1.45;border-color:#cfc1a6;animation:choiceIn .36s cubic-bezier(.2,.8,.2,1) both}.vn-choice-panel button:nth-child(2){animation-delay:70ms}.vn-choice-panel button:nth-child(3){animation-delay:.14s}.vn-choice-panel button:nth-child(4){animation-delay:.21s}.vn-choice-panel button:hover{background:#f7ead2}.vn-log summary{display:inline-flex;align-items:center;gap:8px;cursor:pointer;color:var(--pine);font-weight:700}.vn-log div{display:grid;gap:8px;max-height:260px;overflow:auto;margin-top:14px}.vn-log p{margin:0;color:#4a5651;line-height:1.65}.vn-log strong{color:var(--ink);margin-right:8px}.rp-tools{display:grid;gap:14px;border:1px solid var(--line);border-radius:8px;padding:14px;background:var(--paper);box-shadow:0 18px 42px #3b2e1e17;animation:riseIn .26s ease-out both}.rp-tool-panel{display:grid;gap:12px}.rp-tool-panel textarea{min-height:108px}.segmented{padding:4px;width:fit-content;border:1px solid var(--line);border-radius:8px;background:#efe8da}.segmented button{min-height:34px;border:0;background:transparent}.segmented button.selected{background:var(--pine);color:#fff}.knowledge-answer{padding:18px;line-height:1.75;white-space:pre-wrap}.knowledge-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.knowledge-stats span{min-height:64px;border:1px solid var(--line);border-radius:8px;display:grid;align-content:center;gap:2px;padding:10px 12px;background:var(--paper);color:var(--muted);font-size:12px;overflow:hidden;text-overflow:ellipsis}.knowledge-stats strong{display:block;color:var(--ink);font-size:22px}.citation-list{display:grid;gap:10px}.citation-list article{padding:16px}.citation-list strong{color:var(--ink)}.citation-list p{margin:8px 0 10px;color:#48544f;line-height:1.65}.citation-list span{color:var(--muted);font-size:12px}.message-list{min-height:420px;max-height:55vh;overflow:auto;display:flex;flex-direction:column;gap:10px}.empty{margin:0;color:var(--muted)}.voice-panel audio{width:100%}.weather-card{min-height:190px;display:grid;place-items:center;gap:8px;text-align:center;color:var(--pine)}.weather-card strong{font-size:34px}.data-panel textarea{min-height:360px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:13px}.file-button{position:relative}.file-button input{display:none}.danger{color:var(--danger);border-color:#e0c2c2}.verify{background:#2b3132;white-space:nowrap}.verify.verified{background:var(--pine)}.turnstile-box{min-width:300px;min-height:65px}.error-banner{width:100%;margin:0 0 16px;border:1px solid #e1b9b9;color:#7b1e1e;background:#fff4f2;border-radius:8px;padding:12px 14px;text-align:left}.splash-error{max-width:560px;margin:18px 0 0;color:#7b1e1e}.bottom-nav{display:none}@keyframes pageIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes riseIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes stageIn{0%{opacity:0;transform:scale(.985)}to{opacity:1;transform:scale(1)}}@keyframes characterIn{0%{opacity:0;transform:translate(32px) translateY(12px)}to{opacity:1;transform:translate(0) translateY(0)}}@keyframes dialogueIn{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes choiceIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes slowDrift{0%{transform:scale(1.02) translate3d(-6px,0,0)}to{transform:scale(1.06) translate3d(8px,-4px,0)}}@keyframes blink{50%{opacity:0}}@keyframes breathe{0%{opacity:.78}to{opacity:1}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important}}@media(max-width:1120px){.workspace-grid{grid-template-columns:1fr}.context-dock{display:none}.home-view{grid-template-columns:1fr}.home-cover{min-height:420px}}@media(max-width:900px){.app-shell{grid-template-columns:1fr;background:linear-gradient(180deg,#f4f0e8,#ece8df)}.rail{display:none}.workspace{padding:18px 14px 92px;width:100vw;max-width:100vw}.topbar{flex-direction:column;width:calc(100vw - 28px);max-width:calc(100vw - 28px)}.status-strip{width:100%;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));justify-content:stretch}.status-strip span{justify-content:center;min-width:0;padding:0 6px;font-size:12px;overflow:hidden;white-space:nowrap}.vn-stage{min-height:72vh;width:calc(100vw - 28px);max-width:calc(100vw - 28px)}.vn-character{right:0;bottom:168px;width:196px}.vn-choice-panel,.vn-start,.knowledge-stats{grid-template-columns:1fr}.bottom-nav{position:fixed;left:0;right:0;bottom:0;z-index:10;height:70px;display:grid;grid-template-columns:repeat(5,1fr);gap:4px;padding:7px;border-top:1px solid var(--line);background:#fffdf7f0;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.bottom-nav button{color:#53605b;flex-direction:column;gap:3px;justify-content:center;min-height:54px;padding:0;font-size:12px}.bottom-nav button.active{background:var(--pine);color:#fff}}@media(max-width:560px){.home-cover{min-height:340px}.launch-list button{min-height:92px}.compact-form,.composer{grid-template-columns:1fr}.panel-head{align-items:flex-start;flex-direction:column}.turnstile-box{min-width:0;width:100%}.vn-hud{align-items:flex-start;flex-direction:column}.vn-character{width:150px;right:2px;bottom:205px;opacity:.86}.vn-dialogue{padding:22px 16px 14px}.vn-dialogue p{font-size:16px}.status-strip{grid-template-columns:repeat(2,minmax(0,1fr));width:calc(100vw - 28px);max-width:calc(100vw - 28px);overflow:hidden}.status-strip span{justify-content:flex-start;padding:0 10px;max-width:100%}}
