@import"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;700&family=Noto+Serif+SC:wght@400;700&display=swap";:root{--brand-primary: #5B8DB8;--brand-primary-hover: #4A7A9F;--brand-primary-active: #3D6A8F;--brand-primary-light: rgba(91, 141, 184, .12);--brand-primary-dark: #6B9DC8;--brand-primary-hover-dark: #7AACE0;--brand-primary-light-dark: rgba(91, 141, 184, .2);--brand-accent: #B85450;--brand-accent-hover: #A04743;--brand-accent-active: #8A3D3A;--brand-accent-light: rgba(184, 84, 80, .1);--brand-accent-dark: #C86460;--brand-accent-hover-dark: #D8736F;--brand-accent-light-dark: rgba(184, 84, 80, .15);--canvas-bg: #1e1e2e;--canvas-input-bg: #2a2a3e;--canvas-border: #444444;--canvas-edge-active: #27ae60;--canvas-edge-inactive: #555555;--canvas-node-data: #4a90e2;--canvas-node-compute: #7b68ee;--canvas-node-logic: #f39c12;--canvas-node-effect: #e74c3c;--canvas-node-table: #8e44ad;--canvas-node-output: #27ae60;--color-primary: #5B8DB8;--color-primary-hover: #4A7A9F;--color-primary-active: #3D6A8F;--color-primary-light: rgba(91, 141, 184, .12);--color-primary-subtle: rgba(91, 141, 184, .08);--color-info: var(--color-primary);--color-info-bg: var(--color-primary-light);--color-success: #6B8E6B;--color-success-bg: rgba(107, 142, 107, .1);--color-warning: #C9A227;--color-warning-bg: rgba(201, 162, 39, .1);--color-danger: #B85450;--color-danger-hover: #A04743;--color-danger-active: #8A3D3A;--color-danger-light: rgba(184, 84, 80, .1);--color-danger-bg: rgba(184, 84, 80, .1);--surface-page: #F5F5F5;--surface-card: #FFFFFF;--surface-hover: #F8F8F8;--surface-active: #E8E8E8;--surface-elevated: #FFFFFF;--text-primary: #101010;--text-body: #333333;--text-secondary: #666666;--text-muted: #989898;--text-inverse: #FFFFFF;--border-default: #D0D0D0;--border-hover: #989898;--border-active: var(--color-primary);--border-light: #E8E8E8;--border-divider: #E8E8E8;--btn-primary-bg: var(--color-primary);--btn-primary-text: var(--text-inverse);--btn-primary-hover: var(--color-primary-hover);--btn-secondary-bg: var(--surface-card);--btn-secondary-text: var(--text-body);--btn-secondary-border: var(--border-default);--shadow-xs: 0 1px 2px rgba(16, 24, 40, .05);--shadow-sm: 0 1px 3px rgba(16, 24, 40, .08), 0 1px 2px rgba(16, 24, 40, .04);--shadow-md: 0 4px 8px -2px rgba(16, 24, 40, .1), 0 2px 4px -2px rgba(16, 24, 40, .06);--shadow-lg: 0 12px 16px -4px rgba(16, 24, 40, .08), 0 4px 6px -2px rgba(16, 24, 40, .03);--shadow-xl: 0 20px 24px -4px rgba(16, 24, 40, .08), 0 8px 8px -4px rgba(16, 24, 40, .03);--space-0: 0px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-7: 28px;--space-8: 32px;--space-9: 36px;--space-10: 40px;--space-11: 44px;--space-12: 48px;--space-16: 64px;--radius-none: 0px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-2xl: 20px;--radius-full: 9999px;--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", monospace;--text-xs: 12px;--text-sm: 14px;--text-base: 16px;--text-lg: 18px;--text-xl: 20px;--text-2xl: 24px;--text-3xl: 32px;--font-normal: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--leading-tight: 1.25;--leading-normal: 1.5;--leading-relaxed: 1.75;--duration-instant: 0ms;--duration-fast: .15s;--duration-normal: .25s;--duration-slow: .35s;--duration-slower: .5s;--ease-out: cubic-bezier(0, 0, .2, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--transition-fast: .15s cubic-bezier(0, 0, .2, 1);--transition-normal: .25s cubic-bezier(.4, 0, .2, 1);--transition-slow: .35s cubic-bezier(.4, 0, .2, 1);--navbar-height: 64px;--bottom-nav-height: 56px;--mobile-drawer-width: min(88vw, 360px);--breakpoint-mobile: 768px;--breakpoint-tablet: 1024px;--color-page-bg: var(--surface-page);--color-card-bg: var(--surface-card);--color-card-border: var(--border-default);--color-input-bg: var(--surface-card);--color-input-border: var(--border-default);--color-input-focus: var(--color-primary);--color-text-primary: var(--text-primary);--color-text-body: var(--text-body);--color-text-secondary: var(--text-secondary);--color-text-muted: var(--text-muted);--color-text-inverse: var(--text-inverse);--color-secondary: var(--text-secondary);--color-accent: var(--color-primary);--color-accent-hover: var(--color-primary-hover);--color-tag-default-bg: #F0F2F5;--color-tag-default-text: #475467;--color-error: var(--color-danger);--color-error-bg: var(--color-danger-bg);--color-border: var(--border-default);--color-bg-card: var(--canvas-bg);--color-bg-input: var(--canvas-input-bg);--surface-base: var(--surface-card);--color-bg-secondary: var(--surface-hover);--color-port-number: var(--canvas-node-data);--color-port-boolean: var(--color-success);--color-port-string: var(--color-warning);--color-port-any: var(--canvas-node-table)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--text-body);background:var(--surface-page);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%;text-size-adjust:100%}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#0000002e;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#00000052}*{scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.18) transparent}:root[data-theme=day],:root[data-theme=light]{--el-color-primary: #5B8DB8;--el-color-primary-light-3: rgba(91, 141, 184, .7);--el-color-primary-light-5: rgba(91, 141, 184, .5);--el-color-primary-light-7: rgba(91, 141, 184, .3);--el-color-primary-light-9: rgba(91, 141, 184, .1);--el-color-primary-dark-2: #4A7A9F;--el-bg-color: #FFFFFF;--el-bg-color-page: #F5F5F5;--el-text-color-primary: #101010;--el-text-color-regular: #333333;--el-border-color: #E8E8E8;--el-fill-color-light: #F8F8F8}:root[data-theme=night],:root[data-theme=dark]{--color-primary: #6B9DC8;--color-primary-hover: #7AACE0;--color-primary-active: #5B8DB8;--color-primary-light: rgba(107, 157, 200, .15);--color-primary-subtle: rgba(107, 157, 200, .1);--color-accent: #6B9DC8;--color-accent-hover: #7AACE0;--color-page-bg: #0D1117;--color-card-bg: #161B22;--color-card-border: #30363D;--color-input-bg: #1C2128;--color-input-border: #30363D;--color-input-focus: #6B9DC8;--surface-page: #0D1117;--surface-card: #161B22;--surface-hover: rgba(255, 255, 255, .04);--surface-active: rgba(255, 255, 255, .08);--surface-elevated: #1C2128;--color-text-primary: #F0F6FC;--color-text-body: #C9D1D9;--color-text-secondary: #8B949E;--color-text-muted: #484F58;--color-text-inverse: #0D1117;--text-primary: #F0F6FC;--text-body: #C9D1D9;--text-secondary: #8B949E;--text-muted: #484F58;--text-inverse: #0D1117;--border-default: #30363D;--border-hover: #484F58;--border-active: var(--color-primary);--border-light: #21262D;--border-divider: rgba(255, 255, 255, .06);--btn-primary-bg: var(--color-primary);--btn-primary-text: #FFFFFF;--btn-primary-hover: var(--color-primary-hover);--btn-secondary-bg: transparent;--btn-secondary-text: #C9D1D9;--btn-secondary-border: #30363D;--color-info: var(--color-primary);--color-info-bg: var(--color-primary-light);--color-success: #7B9E7B;--color-success-bg: rgba(123, 158, 123, .15);--color-warning: #D4B44A;--color-warning-bg: rgba(212, 180, 74, .12);--color-danger: #C86460;--color-danger-hover: #D8736F;--color-danger-active: #B85A56;--color-danger-light: rgba(200, 100, 96, .15);--color-danger-bg: rgba(200, 100, 96, .12);--color-tag-default-bg: rgba(255, 255, 255, .06);--color-tag-default-text: #8B949E;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .4);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .5), 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 4px 8px -2px rgba(0, 0, 0, .5), 0 2px 4px -2px rgba(0, 0, 0, .3);--shadow-lg: 0 12px 16px -4px rgba(0, 0, 0, .6), 0 4px 6px -2px rgba(0, 0, 0, .4);--shadow-xl: 0 20px 24px -4px rgba(0, 0, 0, .7), 0 8px 8px -4px rgba(0, 0, 0, .5);--el-color-primary: #6B9DC8;--el-color-primary-light-3: #5B8DB8;--el-color-primary-light-5: #4A7A9F;--el-color-primary-light-7: #3D6A8F;--el-color-primary-light-9: rgba(107, 157, 200, .15);--el-color-primary-dark-2: #7AACE0;--el-bg-color: #161B22;--el-bg-color-page: #0D1117;--el-text-color-primary: #F0F6FC;--el-text-color-regular: #C9D1D9;--el-border-color: #30363D;--el-fill-color-light: #1C2128;--el-mask-color: rgba(0, 0, 0, .7)}.text-art-river{background:linear-gradient(90deg,#0ea5e9,#06b6d4,#14b8a6,#0ea5e9);background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:river-flow 3s linear infinite}@keyframes river-flow{0%{background-position:0% center}to{background-position:200% center}}.text-art-blur{animation:blur-reveal 2s ease forwards;color:var(--color-text-primary)}@keyframes blur-reveal{0%{filter:blur(8px);opacity:.3}to{filter:blur(0);opacity:1}}.text-art-fragment{overflow:hidden;border-right:2px solid var(--color-accent);white-space:nowrap;animation:fragment-type 2s steps(40) forwards,fragment-blink .5s step-end infinite alternate}@keyframes fragment-type{0%{width:0}to{width:100%}}@keyframes fragment-blink{50%{border-color:transparent}}.text-art-wave{display:inline-block}.text-art-wave>span{display:inline-block;animation:wave-float 1.5s ease-in-out infinite}.text-art-wave>span:nth-child(2n){animation-delay:.1s}.text-art-wave>span:nth-child(3n){animation-delay:.2s}@keyframes wave-float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.text-art-ancient{color:#78350f;font-family:Georgia,SimSun,serif;text-shadow:1px 1px 2px rgba(120,53,15,.3);background:linear-gradient(to bottom,#fef3c7,#fde68a);padding:12px 16px;border:1px solid #d97706;border-radius:var(--radius-md);display:block}.text-art-blood{color:#b85450;text-shadow:0 0 4px rgba(220,38,38,.5),0 2px 8px rgba(220,38,38,.3);font-weight:700;animation:blood-drip .5s ease-out}@keyframes blood-drip{0%{transform:translateY(-10px);opacity:0}60%{transform:translateY(2px)}to{transform:translateY(0);opacity:1}}.text-art-ash{color:#6b7280;text-shadow:0 0 3px rgba(107,114,128,.5);animation:ash-fade 3s ease forwards}@keyframes ash-fade{0%{opacity:0;filter:blur(2px)}30%{opacity:1;filter:blur(0)}to{opacity:.8}}.text-art-cyber{color:#22d3ee;text-shadow:0 0 5px #22d3ee,0 0 10px #a855f7,0 0 20px #22d3ee;font-family:var(--font-mono);animation:cyber-flicker 2s infinite}@keyframes cyber-flicker{0%,to{opacity:1}92%{opacity:1}93%{opacity:.3}94%{opacity:1}96%{opacity:.5}97%{opacity:1}}@media (prefers-reduced-motion: reduce){.text-art-river,.text-art-blur,.text-art-fragment,.text-art-wave>span,.text-art-blood,.text-art-ash,.text-art-cyber{animation:none!important;filter:none!important;opacity:1!important;transform:none!important;width:auto!important;-webkit-text-fill-color:currentColor}.text-art-fragment{border-right:none;white-space:normal}}@media (max-width: 768px){.text-art-river{animation-duration:6s}.text-art-wave>span{animation-duration:3s}.text-art-cyber{text-shadow:0 0 4px #22d3ee;animation:none}}@property --clue-reveal{syntax: "<percentage>"; inherits: false; initial-value: 0%;}.clue-card,.clue-card *{box-sizing:border-box}.clue-card{--clue-accent: #d8c5a2;--clue-paper: #f5efe2;--clue-ink: #2d251d;width:100%;max-width:400px;overflow:hidden}.clue-card__content{position:relative;line-height:1.8;word-break:break-word}.clue-card__content.is-revealing .clue-char,.clue-card__content.is-revealing .clue-word{will-change:transform,opacity,filter}.clue-card__content .clue-char,.clue-card__content .clue-word{display:inline-block;white-space:pre-wrap}.clue-card__content .clue-space{white-space:pre}.clue-theme-river .clue-card__content.is-revealing .clue-char{opacity:0;transform:translate(20px);animation:clue-river-char .4s ease-out forwards;animation-delay:calc(var(--char-index, 0) * .05s)}@keyframes clue-river-char{to{opacity:1;transform:translate(0)}}.clue-theme-blur .clue-card__content{filter:blur(8px);transition:filter .6s ease}.clue-theme-blur:hover .clue-card__content,.clue-theme-blur .clue-card__content.is-active{filter:blur(0)}.clue-theme-fragment .clue-card__content.is-revealing .clue-char{opacity:0;transform:translate(var(--dx, 0),var(--dy, 0)) rotate(var(--dr, 0deg));animation:clue-fragment-assemble .8s cubic-bezier(.34,1.56,.64,1) forwards;animation-delay:calc(var(--char-index, 0) * .03s)}@keyframes clue-fragment-assemble{to{opacity:1;transform:translate(0) rotate(0)}}.clue-theme-wave .clue-card__content .clue-char{animation:clue-wave-bob 2s ease-in-out infinite;animation-delay:calc(var(--char-index, 0) * .08s)}@keyframes clue-wave-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.clue-theme-ancient{background:#f5e6c8;border-color:#c4a87a;color:#483621}.clue-theme-ancient .clue-card__body{writing-mode:vertical-rl;text-orientation:mixed;font-family:"Noto Serif SC",serif;padding:24px 18px;border:1px solid rgba(98,70,40,.22);background:linear-gradient(180deg,#ffffff38,#ffffff05),#f5e6c8}.clue-theme-ancient .clue-card__body:before,.clue-theme-ancient .clue-card__body:after{content:"";position:absolute;top:8px;right:8px;bottom:8px;left:8px;border:1px dashed rgba(130,95,52,.28);pointer-events:none}.clue-theme-blood{background:#1a0000;border-color:#3a0b0b}.clue-theme-blood .clue-card__title,.clue-theme-blood .clue-card__meta,.clue-theme-blood .clue-card__content{color:#c64545}.clue-theme-blood .clue-card__content.is-revealing .clue-char{--clue-reveal: 0%;mask-image:linear-gradient(to bottom,#000 var(--clue-reveal),transparent var(--clue-reveal));-webkit-mask-image:linear-gradient(to bottom,#000 var(--clue-reveal),transparent var(--clue-reveal));animation:clue-blood-drip 1.5s ease-in forwards;animation-delay:calc(var(--char-index, 0) * .06s)}@keyframes clue-blood-drip{0%{--clue-reveal: 0%;opacity:.25}to{--clue-reveal: 100%;opacity:1}}.clue-theme-ash{background:#2a2218;border-color:#57452e;color:#ddd0bb;clip-path:polygon(1% 4%,8% 1%,23% 3%,39% 0,62% 3%,83% 1%,98% 5%,99% 22%,96% 38%,100% 61%,97% 79%,99% 95%,80% 98%,59% 96%,37% 100%,17% 96%,3% 99%,0 79%,2% 58%,0 40%,4% 18%)}.clue-theme-ash .clue-card__content .clue-char.is-burnt{animation:clue-ash-burn 1.2s ease-in forwards}@keyframes clue-ash-burn{0%{opacity:1;filter:blur(0)}to{opacity:.3;filter:blur(1px)}}.clue-theme-cyber{background:#0a0a0a;border-color:#114f26;color:#00ff41;box-shadow:inset 0 0 24px #00ff4114}.clue-theme-cyber .clue-card__body,.clue-theme-cyber .clue-card__content,.clue-theme-cyber .clue-card__title,.clue-theme-cyber .clue-card__meta{font-family:JetBrains Mono,monospace;color:#00ff41}.clue-theme-cyber .clue-card__content{animation:clue-cyber-flicker 3s ease-in-out infinite}.clue-theme-cyber .clue-card__content.is-revealing .clue-char{opacity:0;animation:clue-cyber-type .03s step-end forwards;animation-delay:calc(var(--char-index, 0) * .03s)}@keyframes clue-cyber-type{to{opacity:1}}@keyframes clue-cyber-flicker{0%,to{opacity:.92}50%{opacity:1}}.clue-theme-default .clue-card__content,.clue-theme-river .clue-card__content,.clue-theme-fragment .clue-card__content,.clue-theme-wave .clue-card__content,.clue-theme-ash .clue-card__content,.clue-theme-blood .clue-card__content,.clue-theme-cyber .clue-card__content,.clue-theme-ancient .clue-card__content{min-height:2.2em}@media (prefers-reduced-motion: reduce){.clue-card__content,.clue-card__content .clue-char,.clue-card__content .clue-word{animation:none!important;transition:none!important;transform:none!important;filter:none!important;opacity:1!important}}:root{--breakpoint-mobile: 640px;--breakpoint-tablet: 1024px;--page-padding: 24px;--content-max-width: 1200px;--mobile-safe-bottom: env(safe-area-inset-bottom, 0px)}html,body,#app{max-width:100%;overflow-x:hidden}.responsive-shell{width:min(100%,var(--content-max-width));margin:0 auto}@media (max-width: 1023px){:root{--page-padding: 20px}}@media (max-width: 639px){:root{--page-padding: 16px}.mobile-stack{grid-template-columns:1fr!important;flex-direction:column!important}.mobile-scroll-tabs{overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.mobile-scroll-tabs::-webkit-scrollbar{display:none}.mobile-single-column{grid-template-columns:1fr!important}}.no-select{-webkit-user-select:none;user-select:none}*{touch-action:manipulation}.safe-bottom{padding-bottom:env(safe-area-inset-bottom,0)}.safe-top{padding-top:env(safe-area-inset-top,0)}.bottom-nav{padding-bottom:calc(var(--space-2) + env(safe-area-inset-bottom,0))}.chat-input-bar{padding-bottom:env(safe-area-inset-bottom,0)}.mobile-only{display:none!important}.desktop-only{display:initial!important}@media (max-width: 768px){html{font-size:15px}.t-card{border-radius:var(--radius-sm);margin:0}.el-dialog{width:100%!important;max-width:100%!important;margin:0!important;border-radius:var(--radius-lg) var(--radius-lg) 0 0!important;position:fixed!important;bottom:0!important;left:0!important}.scroll-list{-webkit-overflow-scrolling:touch;overflow-y:auto}.t-btn,button{min-height:44px;min-width:44px}input,textarea,select{font-size:16px!important}.room-left-sidebar,.room-right-sidebar{display:none!important}.mobile-only{display:initial!important}.desktop-only{display:none!important}.mobile-page-pad{padding-left:var(--space-3)!important;padding-right:var(--space-3)!important}.mobile-sheet{border-radius:var(--radius-xl) var(--radius-xl) 0 0!important;box-shadow:var(--shadow-xl)}.mobile-drawer{width:var(--mobile-drawer-width);max-width:100%}.dice-panel{position:fixed;bottom:0;left:0;right:0;z-index:var(--z-modal);border-radius:var(--radius-lg) var(--radius-lg) 0 0;padding-bottom:env(safe-area-inset-bottom,0)}.trajectory-matrix .table-wrap{display:none}.grid-map canvas.interactive{display:none}}@media (max-width: 480px){.home-header{flex-direction:column;gap:var(--space-2)}}@media (orientation: landscape) and (max-width: 900px){.bottom-nav{display:none}}a,button,[role=button],[data-clickable]{-webkit-tap-highlight-color:transparent}.t-btn:active,button.primary:active{filter:brightness(.88);transform:scale(.97);transition:transform .08s ease,filter .08s ease}.t-btn-ghost:active,.t-btn-outline:active,button.secondary:active{opacity:.65;transform:scale(.97);transition:transform .08s ease,opacity .08s ease}.t-card[data-clickable]:active,.clickable-card:active,.recruitment-card:active,.campaign-card:active,.thread-item:active{opacity:.85;transform:scale(.985);transition:transform .1s ease,opacity .1s ease}.avatar-clickable:active,[data-upc-trigger]:active{opacity:.7;transform:scale(.92);transition:transform .08s ease,opacity .08s ease}.editor-btn:active{background:color-mix(in srgb,var(--color-accent) 18%,transparent);transform:scale(.9);transition:transform .08s ease,background .08s ease}.back-btn:active{opacity:.6;transform:translate(-3px);transition:transform .1s ease,opacity .1s ease}@media (hover: hover) and (pointer: fine){.t-btn:active,.t-btn-ghost:active,.t-btn-outline:active,.t-card[data-clickable]:active,.clickable-card:active,.avatar-clickable:active,[data-upc-trigger]:active,.editor-btn:active,.back-btn:active{transform:none;filter:none;opacity:1}}.offline-banner[data-v-3df9e3e6]{position:fixed;top:0;left:0;right:0;z-index:2600;padding:10px 16px;text-align:center;background:var(--color-warning);color:var(--color-warning-text);font-size:var(--text-sm);font-weight:600}.install-banner[data-v-3df9e3e6]{position:fixed;right:16px;bottom:calc(72px + env(safe-area-inset-bottom,0px));z-index:2500;display:flex;align-items:center;gap:12px;max-width:min(320px,calc(100vw - 32px));padding:12px 14px;border:none;border-radius:18px;background:#0f172aeb;color:var(--text-inverse);text-align:left;box-shadow:0 18px 40px #0f172a3d}.install-banner strong[data-v-3df9e3e6]{color:var(--amber-400);font-size:var(--text-sm)}@media (min-width: 769px){.install-banner[data-v-3df9e3e6]{bottom:24px}}
