:root{--zm-bg: #FBFCFD;--zm-surface: #FFFFFF;--zm-surface-2: #F4F6FA;--zm-surface-3: #EEF1F7;--zm-line: #E4E8F1;--zm-line-2: #D6DCE9;--zm-line-3: #EEF1F7;--zm-text: #1A2235;--zm-text-2: #3E4A66;--zm-text-3: #6B7693;--zm-text-4: #98A2BD;--zm-brand: #4F46E5;--zm-cyan: #06B6D4;--zm-violet: #7C3AED;--zm-pink: #EC4899;--zm-mint: #10B981;--zm-amber: #F59E0B;--zm-rose: #F43F5E;--zm-grad: linear-gradient(135deg, #6366F1 0%, #8B5CF6 50%, #EC4899 100%);--zm-grad-soft: linear-gradient(135deg, rgba(99,102,241,.1), rgba(139,92,246,.06), rgba(236,72,153,.06));--zm-grad-cyan: linear-gradient(135deg, #06B6D4, #4F46E5);--zm-shadow-sm: 0 1px 2px rgba(26,34,53,.04);--zm-shadow: 0 1px 3px rgba(26,34,53,.05), 0 6px 20px -6px rgba(26,34,53,.06);--zm-shadow-lg: 0 12px 36px -12px rgba(26,34,53,.14), 0 4px 12px -4px rgba(26,34,53,.06);--zm-radius: 10px;--zm-radius-lg: 14px;--zm-radius-xl: 18px}body{background:var(--zm-bg);color:var(--zm-text);font-size:14px;line-height:1.6}body::-webkit-scrollbar{width:8px}body::-webkit-scrollbar-thumb{background:var(--zm-line-2);border-radius:4px}body::-webkit-scrollbar-thumb:hover{background:var(--zm-text-4)}.zm-logo-link{position:fixed;top:18px;left:22px;z-index:100;display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border-radius:10px;transition:background .2s ease}.zm-logo-link:hover{background:var(--zm-surface-2)}.zm-logo-link img{height:28px;width:auto}.zm-logo-link .home-hint{font-size:11px;color:var(--zm-text-3);opacity:0;transition:opacity .2s ease;white-space:nowrap;display:inline-flex;align-items:center;gap:3px}.zm-logo-link:hover .home-hint{opacity:1}.zm-app{display:grid;grid-template-columns:70px 1fr;min-height:100vh}.zm-rail{background:var(--zm-surface);border-right:1px solid var(--zm-line);position:sticky;top:0;height:100vh;display:flex;flex-direction:column;align-items:center;padding:80px 0 16px;gap:6px}.zm-rail-item{width:50px;height:50px;border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:var(--zm-text-3);cursor:pointer;background:transparent;transition:all .15s ease;position:relative}.zm-rail-item:hover{background:var(--zm-surface-2);color:var(--zm-text)}.zm-rail-item.active{background:var(--zm-surface-2);color:var(--zm-brand)}.zm-rail-item.active:before{content:"";position:absolute;left:-1px;top:14px;bottom:14px;width:3px;background:var(--zm-grad);border-radius:0 3px 3px 0}.zm-rail-item .lbl{font-size:10px;font-weight:500;line-height:1}.zm-rail-item .new-dot{position:absolute;top:8px;right:8px;width:6px;height:6px;border-radius:50%;background:var(--zm-pink)}.zm-rail-spacer{flex:1}.zm-rail-bottom{width:50px;height:50px;border-radius:12px;display:grid;place-items:center;color:var(--zm-text-3);background:var(--zm-surface-2);margin-top:8px;cursor:pointer;position:relative;transition:all .15s ease}.zm-rail-bottom:hover{color:var(--zm-text)}.zm-rail-bottom .credit-pop{position:absolute;left:60px;top:50%;transform:translateY(-50%);background:var(--zm-surface);border:1px solid var(--zm-line);border-radius:10px;padding:10px 14px;box-shadow:var(--zm-shadow);white-space:nowrap;font-size:12px;opacity:0;pointer-events:none;transition:opacity .15s ease}.zm-rail-bottom:hover .credit-pop{opacity:1}.zm-rail-bottom .credit-pop b{color:var(--zm-mint)}.zm-rail-avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#6366f1,#ec4899);color:#fff;display:grid;place-items:center;font-weight:700;font-size:13px;cursor:pointer;margin-top:4px}.zm-main{padding:56px 48px 60px;min-width:0}@media (max-width: 1100px){.zm-main{padding:56px 24px 60px}}.zm-hub{max-width:1240px;margin:0 auto}.zm-hub-h{text-align:center;margin-bottom:32px}.zm-hub-h h1{margin:0;font-size:28px;font-weight:600;color:var(--zm-text);letter-spacing:-.01em}.zm-hub-h h1 .accent{background:var(--zm-grad);-webkit-background-clip:text;background-clip:text;color:transparent;font-weight:700}.zm-hub-h h1 .mode-trig{display:inline-flex;align-items:center;gap:4px;cursor:pointer;padding:0 4px;border-radius:6px;transition:background .15s ease}.zm-hub-h h1 .mode-trig:hover{background:var(--zm-surface-2)}.zm-composer{background:var(--zm-surface);border:1px solid var(--zm-line);border-radius:18px;padding:18px 20px 12px;box-shadow:var(--zm-shadow);transition:all .15s ease}.zm-composer:focus-within{border-color:var(--zm-brand);box-shadow:0 0 0 4px #4f46e514,var(--zm-shadow)}.zm-composer-row{display:flex;gap:12px;align-items:flex-start}.zm-attach-btn{width:44px;height:44px;border-radius:10px;background:var(--zm-surface-2);border:1px dashed var(--zm-line-2);color:var(--zm-text-3);display:grid;place-items:center;flex-shrink:0;cursor:pointer;transition:all .15s ease}.zm-attach-btn:hover{background:var(--zm-surface-3);color:var(--zm-text);border-style:solid}.zm-prompt{flex:1;min-height:44px;max-height:180px;border:0;outline:0;background:transparent;font:inherit;font-size:15px;line-height:1.55;color:var(--zm-text);resize:none;padding:10px 0}.zm-prompt::placeholder{color:var(--zm-text-4)}.zm-composer-bar{display:flex;align-items:center;gap:8px;padding-top:12px;border-top:1px solid var(--zm-line-3);margin-top:6px}.zm-chip{height:32px;padding:0 12px;border-radius:999px;border:1px solid var(--zm-line);background:var(--zm-surface);color:var(--zm-text-2);font-size:12.5px;font-weight:500;display:inline-flex;align-items:center;gap:5px;cursor:pointer;transition:all .15s ease}.zm-chip:hover{border-color:var(--zm-line-2);color:var(--zm-text)}.zm-chip.primary{background:var(--zm-grad-soft);border-color:#4f46e540;color:var(--zm-brand)}.zm-chip svg{color:currentColor}.zm-chip-spacer{flex:1}.zm-send{width:36px;height:36px;border-radius:50%;background:var(--zm-grad);color:#fff;border:0;display:grid;place-items:center;cursor:pointer;transition:all .15s ease}.zm-send:hover{transform:translateY(-1px);box-shadow:0 8px 20px -6px #6366f166}.zm-send:disabled{opacity:.4;cursor:not-allowed}.zm-mode-dropdown{position:absolute;top:100%;left:0;margin-top:6px;min-width:180px;background:var(--zm-surface);border:1px solid var(--zm-line);border-radius:12px;padding:6px;box-shadow:var(--zm-shadow-lg);display:flex;flex-direction:column;z-index:20}.zm-mode-dropdown .h{font-size:10.5px;color:var(--zm-text-4);padding:6px 10px 4px;letter-spacing:.06em;font-family:var(--font-mono)}.zm-mode-dropdown a{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:7px;font-size:13px;color:var(--zm-text-2);cursor:pointer;transition:background .12s ease}.zm-mode-dropdown a:hover{background:var(--zm-surface-2);color:var(--zm-text)}.zm-mode-dropdown a.on{color:var(--zm-brand);background:#4f46e50f}.zm-mode-dropdown a.on svg{color:var(--zm-brand)}.zm-mode-dropdown a .ck{margin-left:auto;opacity:0}.zm-mode-dropdown a.on .ck{opacity:1}.zm-chip-wrap{position:relative}.zm-features{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-top:28px}.zm-feature{background:var(--zm-surface);border:1px solid var(--zm-line);border-radius:14px;padding:16px;display:flex;align-items:center;gap:12px;cursor:pointer;transition:all .15s ease;position:relative}.zm-feature:hover{border-color:var(--zm-line-2);transform:translateY(-2px);box-shadow:var(--zm-shadow)}.zm-feature .ic{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;flex-shrink:0}.zm-feature .txt strong{display:block;font-size:13.5px;color:var(--zm-text);font-weight:600;margin-bottom:2px}.zm-feature .txt small{font-size:11.5px;color:var(--zm-text-3)}.zm-feature .beta{position:absolute;top:10px;right:10px;font-size:9px;padding:1px 5px;background:var(--zm-surface-3);color:var(--zm-text-3);border-radius:3px;font-family:var(--font-mono);letter-spacing:.06em}.zm-feature .beta.new{background:var(--zm-grad);color:#fff}.zm-section{margin-top:44px}.zm-section-h{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:14px}.zm-section-h h2{margin:0;font-size:17px;font-weight:600;color:var(--zm-text)}.zm-section-h .opts{font-size:12px;color:var(--zm-text-3);display:flex;gap:16px}.zm-section-h .opts a{color:var(--zm-text-3);cursor:pointer}.zm-section-h .opts a:hover{color:var(--zm-text)}.zm-section-h .opts a.on{color:var(--zm-brand);font-weight:500}.zm-quickstart{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.zm-quick{background:var(--zm-surface);border:1px solid var(--zm-line);border-radius:12px;overflow:hidden;cursor:pointer;transition:all .15s ease}.zm-quick:hover{border-color:var(--zm-line-2);transform:translateY(-2px);box-shadow:var(--zm-shadow)}.zm-quick .thumb{aspect-ratio:5/3;position:relative;overflow:hidden}.zm-quick .thumb svg{width:100%;height:100%;display:block}.zm-quick .body{padding:12px 14px;display:flex;align-items:center;justify-content:space-between}.zm-quick .body strong{font-size:13px;color:var(--zm-text);font-weight:600}.zm-quick .body .arrow{color:var(--zm-text-3);transition:transform .15s ease}.zm-quick:hover .body .arrow{transform:translate(3px);color:var(--zm-brand)}.zm-recent{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.zm-new-card{background:var(--zm-surface);border:2px dashed var(--zm-line-2);border-radius:12px;aspect-ratio:5/3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:var(--zm-text-3);cursor:pointer;transition:all .15s ease}.zm-new-card:hover{border-color:var(--zm-brand);color:var(--zm-brand);background:#4f46e505}.zm-new-card .plus{width:36px;height:36px;border-radius:10px;background:var(--zm-surface-2);display:grid;place-items:center}.zm-new-card:hover .plus{background:#4f46e51a}.zm-recent-card{background:var(--zm-surface);border:1px solid var(--zm-line);border-radius:12px;overflow:hidden;cursor:pointer;transition:all .15s ease}.zm-recent-card:hover{border-color:var(--zm-line-2);transform:translateY(-2px);box-shadow:var(--zm-shadow)}.zm-recent-card .thumb{aspect-ratio:5/3;position:relative}.zm-recent-card .thumb svg{width:100%;height:100%;display:block}.zm-recent-card .body{padding:10px 14px 12px}.zm-recent-card .body strong{display:block;font-size:13px;color:var(--zm-text);font-weight:600}.zm-recent-card .body small{font-size:11px;color:var(--zm-text-3);font-family:var(--font-mono)}.zm-ws{max-width:1280px;margin:0 auto;display:flex;flex-direction:column;gap:22px}.zm-ws-h{display:flex;align-items:end;justify-content:space-between;gap:24px;padding-bottom:18px;border-bottom:1px solid var(--zm-line)}.zm-ws-h h2{margin:0;font-size:22px;font-weight:600;color:var(--zm-text)}.zm-ws-h p{margin:6px 0 0;font-size:13px;color:var(--zm-text-3);max-width:640px;line-height:1.55}.zm-ws-h .back{font-size:12.5px;color:var(--zm-text-3);display:inline-flex;align-items:center;gap:4px;margin-bottom:4px;cursor:pointer}.zm-ws-h .back:hover{color:var(--zm-text)}.zm-ws-h .tag-row{display:flex;gap:8px}.zm-ws-h .preview-tag,.zm-ws-h .real-tag{display:inline-block;font-family:var(--font-mono);font-size:10px;padding:3px 8px;border-radius:4px;letter-spacing:.14em;font-weight:600}.zm-ws-h .preview-tag{background:#7c3aed14;color:var(--zm-violet);border:1px solid rgba(124,58,237,.2)}.zm-ws-h .real-tag{background:#10b98114;color:var(--zm-mint);border:1px solid rgba(16,185,129,.25)}.zm-empty{display:flex;flex-direction:column;align-items:center;padding:40px 20px;gap:18px;text-align:center}.zm-empty p{font-size:14px;color:var(--zm-text-3);margin:0}.zm-empty .examples{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;max-width:720px}.zm-example{padding:8px 16px;font-size:13px;color:var(--zm-text-2);background:var(--zm-surface);border:1px solid var(--zm-line);border-radius:999px;cursor:pointer;transition:all .15s ease}.zm-example:hover{border-color:var(--zm-brand);color:var(--zm-brand)}.ws-chat{height:calc(100vh - 156px);min-height:540px;display:flex;flex-direction:column}.chat-scroll{flex:1;overflow-y:auto;padding:18px 0}.chat-scroll::-webkit-scrollbar{width:8px}.chat-scroll::-webkit-scrollbar-thumb{background:var(--zm-line-2);border-radius:4px}.chat-row{margin-bottom:22px}.user-q{display:flex;gap:14px;margin-bottom:12px;align-items:flex-start;padding:14px 18px;border-radius:12px;background:var(--zm-surface-2);border:1px solid var(--zm-line-3)}.user-q .who{font-family:var(--font-mono);font-size:10px;padding:2px 7px;border-radius:4px;background:var(--zm-grad);color:#fff;font-weight:700;letter-spacing:.1em;flex-shrink:0}.user-q .text{font-size:14px;color:var(--zm-text);line-height:1.55}.model-cols{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.model-col{background:var(--zm-surface);border:1px solid var(--zm-line);border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:10px;min-height:200px}.model-col .head{display:flex;align-items:center;gap:10px;padding-bottom:10px;border-bottom:1px solid var(--zm-line-3)}.model-col .head .lg{width:22px;height:22px;border-radius:5px;display:grid;place-items:center;font-weight:700;font-size:11px;color:#fff}.model-col .head strong{display:block;font-size:12.5px;color:var(--zm-text);font-weight:600;font-family:var(--font-mono)}.model-col .head em{font-style:normal;font-size:10.5px;color:var(--zm-text-3)}.model-col .body{flex:1;min-height:80px}.model-col .msg{font-size:13px;color:var(--zm-text-2);line-height:1.65;white-space:pre-wrap}.model-col .foot{display:flex;justify-content:space-between;font-family:var(--font-mono);font-size:10.5px;color:var(--zm-text-4);padding-top:10px;border-top:1px dashed var(--zm-line-3)}.loading{display:flex;flex-direction:column;gap:6px;padding:12px 0}.ld-bar{display:block;height:6px;background:var(--zm-surface-2);border-radius:3px;overflow:hidden}.ld-bar i{display:block;height:100%;width:40%;background:var(--zm-grad);animation:ld-slide 1.5s ease-in-out infinite;border-radius:3px}@keyframes ld-slide{0%{transform:translate(-100%)}to{transform:translate(300%)}}.loading-text{font-family:var(--font-mono);font-size:11px;color:var(--zm-text-4);margin-top:4px}.composer-bar{display:flex;gap:10px;padding:14px 0 0;border-top:1px solid var(--zm-line)}.composer-bar textarea{flex:1;padding:12px 16px;border-radius:10px;background:var(--zm-surface);border:1px solid var(--zm-line);color:var(--zm-text);font-family:inherit;font-size:14px;line-height:1.5;outline:none;resize:none}.composer-bar textarea:focus{border-color:var(--zm-brand);box-shadow:0 0 0 3px #4f46e51a}.composer-bar .send{padding:0 22px;border-radius:10px;background:var(--zm-grad);color:#fff;font-weight:600;font-size:14px;display:inline-flex;align-items:center;gap:6px;white-space:nowrap;cursor:pointer;border:0}.composer-bar .send:disabled{opacity:.5;cursor:not-allowed}.gen-bar{padding:18px;background:var(--zm-surface);border:1px solid var(--zm-line);border-radius:14px;display:flex;flex-direction:column;gap:12px}.prompt-input{width:100%;padding:12px 14px;border-radius:10px;background:var(--zm-surface-2);border:1px solid var(--zm-line);color:var(--zm-text);font-family:inherit;font-size:14px;line-height:1.55;outline:none;resize:vertical}.prompt-input:focus{border-color:var(--zm-brand);background:var(--zm-surface);box-shadow:0 0 0 3px #4f46e51a}.gen-bar-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.seg{display:inline-flex;align-items:center;gap:4px;padding:3px;border-radius:8px;background:var(--zm-surface-2);border:1px solid var(--zm-line)}.seg .seg-l{font-size:11px;color:var(--zm-text-4);padding:0 8px;font-family:var(--font-mono);letter-spacing:.06em}.seg button{padding:5px 12px;border-radius:6px;font-size:12px;color:var(--zm-text-2);font-family:inherit;cursor:pointer;background:transparent;border:0}.seg button:hover{color:var(--zm-text)}.seg button.on{background:var(--zm-surface);color:var(--zm-brand);box-shadow:var(--zm-shadow-sm);font-weight:600}.gen-btn{margin-left:auto;padding:10px 20px;border-radius:9px;background:var(--zm-grad);color:#fff;font-weight:600;font-size:13px;display:inline-flex;align-items:center;gap:6px;white-space:nowrap;cursor:pointer;border:0}.gen-btn:disabled{opacity:.5;cursor:not-allowed}.gen-progress{display:flex;align-items:center;gap:12px;font-size:11.5px;color:var(--zm-text-3);font-family:var(--font-mono)}.gen-progress .bar{flex:1;height:6px;border-radius:3px;background:var(--zm-surface-2);overflow:hidden}.gen-progress .bar i{display:block;height:100%;background:var(--zm-grad);border-radius:3px;transition:width .3s ease}.examples-mini{display:flex;gap:6px;flex-wrap:wrap;flex:1;min-width:0}.examples-mini button{font-size:11.5px;padding:5px 10px;border-radius:5px;background:var(--zm-surface);border:1px solid var(--zm-line);color:var(--zm-text-3);cursor:pointer;white-space:nowrap}.examples-mini button:hover{color:var(--zm-text);border-color:var(--zm-line-2)}.results{display:flex;flex-direction:column;gap:28px}.img-result-row .rr-h{display:flex;justify-content:space-between;align-items:center;font-family:var(--font-mono);font-size:12px;color:var(--zm-text-3);padding:4px 4px 12px}.img-result-row .rr-h .meta{color:var(--zm-text-4)}.img-grid{display:grid;gap:12px;grid-template-columns:repeat(3,1fr)}.img-grid[data-ratio="16:9"]{grid-template-columns:repeat(2,1fr)}.img-grid[data-ratio="9:16"]{grid-template-columns:repeat(6,1fr)}.img-tile{position:relative;overflow:hidden;border-radius:10px;border:1px solid var(--zm-line);transition:transform .15s ease}.img-tile:hover{transform:scale(1.02);box-shadow:var(--zm-shadow)}.img-tile svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.img-tile .tag{position:absolute;left:8px;bottom:8px;font-family:var(--font-mono);font-size:10px;color:#fffffff2;background:#00000080;padding:2px 7px;border-radius:3px}.img-empty .img-tile{aspect-ratio:1;width:160px}.vid-card{background:var(--zm-surface);border:1px solid var(--zm-line);border-radius:14px;padding:16px}.vid-h{display:flex;justify-content:space-between;font-family:var(--font-mono);font-size:12px;color:var(--zm-text-3);margin-bottom:12px}.vid-h .meta{color:var(--zm-text-4)}.vid-frame{aspect-ratio:16/9;border-radius:10px;position:relative;overflow:hidden;border:1px solid var(--zm-line)}.vid-ctl{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:center;gap:10px;padding:10px 14px;background:linear-gradient(to top,rgba(0,0,0,.55),transparent);z-index:2}.vid-ctl button{width:28px;height:28px;border-radius:50%;background:#ffffffd9;color:var(--zm-text);border:0;cursor:pointer;font-size:11px}.vid-ctl .tl{flex:1;height:3px;background:#fff3;border-radius:1.5px;overflow:hidden}.vid-ctl .fill{height:100%;background:#fff}.vid-ctl .time{font-family:var(--font-mono);font-size:11px;color:#ffffffd9}.code-split{background:var(--zm-surface);border:1px solid var(--zm-line);border-radius:14px;overflow:hidden}.cs-h{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;border-bottom:1px solid var(--zm-line);background:var(--zm-surface-2)}.cs-h .seg button.on{background:var(--zm-surface);color:var(--zm-brand)}.cs-act{display:flex;gap:8px}.cs-act button{padding:6px 12px;border-radius:6px;background:var(--zm-surface);border:1px solid var(--zm-line);color:var(--zm-text-2);font-size:12px;cursor:pointer}.cs-act button:hover{color:var(--zm-brand);border-color:var(--zm-brand)}.cs-body{display:grid;min-height:520px}.cs-body.view-preview{grid-template-columns:0 1fr}.cs-body.view-code{grid-template-columns:1fr 0}.cs-body.view-both{grid-template-columns:1fr 1fr}.code-pane{overflow:hidden}.code-pane pre{margin:0;padding:14px 16px;height:520px;overflow:auto;font-family:var(--font-mono);font-size:12px;line-height:1.65;background:#1a2235;color:#eceff8}.cs-body.view-preview .code-pane,.cs-body.view-code .prev-pane{display:none}.prev-pane{overflow:hidden;border-left:1px solid var(--zm-line);background:#fff}.cs-body.view-code .prev-pane{border:none}.prev-pane iframe{width:100%;height:520px;border:0}.err-box{padding:16px;border-radius:10px;background:#f43f5e0a;border:1px solid rgba(244,63,94,.25);color:var(--zm-rose);font-family:var(--font-mono);font-size:12px;line-height:1.6;white-space:pre-wrap}.game-view{display:flex;flex-direction:column;gap:32px}.game-hero{position:relative;padding:32px;background:radial-gradient(60% 80% at 0% 0%,rgba(79,70,229,.06),transparent 60%),radial-gradient(60% 80% at 100% 100%,rgba(236,72,153,.05),transparent 60%),var(--zm-surface);border:1px solid var(--zm-line);border-radius:16px}.genre-tag{display:inline-block;font-family:var(--font-mono);font-size:11px;padding:3px 10px;border-radius:4px;background:#4f46e50f;color:var(--zm-brand);border:1px solid rgba(79,70,229,.2)}.g-name{font-size:32px;color:var(--zm-text);font-weight:700;letter-spacing:-.02em;margin:12px 0 4px}.g-tag{font-size:16px;color:var(--zm-text-2);font-style:italic;margin:0}.g-story{font-size:14.5px;color:var(--zm-text-2);line-height:1.75;margin:16px 0 0;max-width:720px}.sec-t{font-family:var(--font-mono);font-size:13px;color:var(--zm-brand);letter-spacing:.08em;margin:0 0 14px;font-weight:600}.chars{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.char-card{padding:18px;border-radius:12px;background:var(--zm-surface);border:1px solid var(--zm-line)}.char-card .ch-h{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px}.char-card .role{font-family:var(--font-mono);font-size:10px;padding:2px 7px;border-radius:4px;color:var(--zm-pink);background:#ec489914;border:1px solid rgba(236,72,153,.25)}.char-card strong{font-size:16px;color:var(--zm-text);font-weight:600}.char-card p{font-size:12.5px;color:var(--zm-text-3);line-height:1.6;margin:4px 0 0}.char-card .stats{margin-top:14px;padding-top:12px;border-top:1px dashed var(--zm-line-3);display:flex;flex-direction:column;gap:6px}.char-card .stat{display:grid;grid-template-columns:36px 1fr 36px;gap:8px;align-items:center;font-family:var(--font-mono);font-size:11px}.char-card .stat .k{color:var(--zm-text-4)}.char-card .stat .v{color:var(--zm-text);text-align:right}.char-card .stat .bar{height:5px;background:var(--zm-surface-2);border-radius:2.5px;overflow:hidden}.char-card .stat .bar i{display:block;height:100%;background:var(--zm-grad);border-radius:2.5px}.levels{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.lv-card{padding:18px;border-radius:12px;background:var(--zm-surface);border:1px solid var(--zm-line);position:relative}.lv-card .lv-n{font-family:var(--font-mono);font-size:11px;color:var(--zm-brand);letter-spacing:.12em;font-weight:600}.lv-card strong{display:block;font-size:18px;color:var(--zm-text);margin:6px 0;font-weight:600}.lv-card p{font-size:13px;color:var(--zm-text-3);line-height:1.6;margin:0}.lv-card .lv-meta{display:flex;flex-direction:column;gap:4px;margin-top:12px;padding-top:10px;border-top:1px dashed var(--zm-line-3);font-size:12px;color:var(--zm-text-3)}.lv-card .lv-meta b{color:var(--zm-text);font-weight:600}.items{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.item-card{padding:14px;border-radius:10px;background:var(--zm-surface);border:1px solid var(--zm-line)}.item-card strong{color:var(--zm-amber);font-size:13px}.item-card em{font-style:normal;font-size:11.5px;color:var(--zm-text-3);display:block;margin-top:4px;line-height:1.55}.preset-sel{padding:8px 14px;border-radius:8px;background:var(--zm-surface);border:1px solid var(--zm-line);color:var(--zm-text);font-family:inherit;font-size:13px;outline:none;min-width:280px}.run-btn{padding:10px 20px;border-radius:9px;background:var(--zm-grad);color:#fff;font-weight:600;font-size:13px;cursor:pointer;border:0}.run-btn:disabled{opacity:.5;cursor:not-allowed}.pipe-canvas{background:var(--zm-surface);border:1px solid var(--zm-line);border-radius:16px;padding:20px}.pipe-canvas svg{width:100%;height:260px;display:block}.run-log{background:#1a2235;border:1px solid var(--zm-line);border-radius:12px;padding:16px;font-family:var(--font-mono);font-size:12px;line-height:1.75;color:var(--zm-text-2);min-height:180px;max-height:280px;overflow:auto}.run-log .placeholder{color:#ffffff80}.run-log .log-line{color:#ffffffd9;white-space:pre-wrap}.v-flow{stroke-dasharray:6 8;animation:zm-flow 1.6s linear infinite}@keyframes zm-flow{to{stroke-dashoffset:-56}}.v-packet{offset-path:var(--path);offset-rotate:0deg;animation:zm-packet 3s linear infinite}.v-packet.d2{animation-delay:.8s}.v-packet.d3{animation-delay:1.6s}.v-packet.d4{animation-delay:2.4s}@keyframes zm-packet{0%{offset-distance:0%;opacity:0}10%{opacity:1}90%{opacity:1}to{offset-distance:100%;opacity:0}}@media (max-width: 1100px){.zm-features{grid-template-columns:repeat(2,1fr)}.zm-quickstart,.zm-recent{grid-template-columns:repeat(3,1fr)}.model-cols{grid-template-columns:repeat(2,1fr)}}.msg-wrapper{display:flex;flex-direction:column;gap:12px;width:100%}.think-block{background:#f4f6fab3;border:1px solid var(--zm-line);border-radius:8px;overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.think-block.collapsed{border-color:transparent;background:#f4f6fa66}.think-header{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#00000005;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .2s ease}.think-header:hover{background:#0000000d}.pulse-dot{width:7px;height:7px;border-radius:50%;position:relative;display:inline-block}.pulse-dot:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;border-radius:50%;background:inherit;animation:pulse-ring 1.2s cubic-bezier(.24,0,.38,1) infinite}@keyframes pulse-ring{0%{transform:scale(1);opacity:.8}to{transform:scale(2.8);opacity:0}}.think-header .title{font-size:11.5px;font-weight:600;color:var(--zm-text-3);font-family:var(--font-sans);flex:1}.think-header .arrow{font-size:11px;color:var(--zm-text-4);font-family:var(--font-sans);border:1px solid var(--zm-line);padding:2px 6px;border-radius:4px;background:var(--zm-surface);transition:all .2s ease}.think-header:hover .arrow{border-color:var(--zm-text-4);color:var(--zm-text-2)}.think-content{padding:12px;font-family:var(--font-mono);font-size:11.5px;color:var(--zm-text-3);line-height:1.6;white-space:pre-wrap;border-top:1px dashed var(--zm-line);max-height:240px;overflow-y:auto;background:#fff6}.typing-cursor{display:inline-block;width:6px;height:13px;background:var(--zm-brand);margin-left:3px;animation:cursor-blink .8s infinite;vertical-align:middle}@keyframes cursor-blink{0%,to{opacity:0}50%{opacity:1}}.col-btn{flex:1;padding:6px 12px;font-size:11px;border-radius:6px;background:var(--zm-surface-2);border:1px solid var(--zm-line);color:var(--zm-text-3);cursor:pointer;font-weight:500;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center}.col-btn:hover{background:var(--zm-surface-3);color:var(--zm-text);border-color:var(--zm-line-2)}.col-btn:active{transform:scale(.97)}
