.assistant-page,.assistant-window,.assistant-launcher{--assistant-bg-0: #020617;--assistant-bg-1: #071426;--assistant-surface-1: #0b192c;--assistant-surface-2: #0f2038;--assistant-surface-3: #122641;--assistant-page-bg: #071426;--assistant-sidebar-bg: #081527;--assistant-workspace-bg: #09172a;--assistant-chrome-bg: #0a192d;--assistant-input-bg: #0d1f36;--assistant-line: rgba(148, 163, 184, .16);--assistant-line-strong: rgba(79, 172, 254, .28);--assistant-text: #f8fafc;--assistant-muted: #94a3b8;--assistant-muted-2: #6f829e;--assistant-blue: #1c7dff;--assistant-cyan: #4facfe;--assistant-green: #34d399;--assistant-amber: #fbbf24;--assistant-red: #f87171;--assistant-radius-sm: 8px;--assistant-radius-md: 12px;--assistant-radius-lg: 16px;--assistant-ease: cubic-bezier(.16, 1, .3, 1);color:var(--assistant-text);font-family:var(--font-body)}.assistant-page .assistant-history-time,.assistant-window .assistant-history-time,.assistant-page .assistant-shell-status,.assistant-window .assistant-shell-status{font-family:var(--font-num)}.assistant-launcher,.assistant-window{position:absolute;right:max(12px,2.2%);bottom:calc(var(--bottom-nav-h, clamp(54px, 6.4vmin, 68px)) + 8px);z-index:45}.assistant-launcher{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);width:clamp(48px,5.6vmin,64px);height:clamp(48px,5.6vmin,64px);padding:0;border:1px solid rgba(0,242,254,.45);border-radius:50%;background:var(--surface-3);color:var(--text);box-shadow:var(--glow-sm),inset 0 0 12px #00f2fe14;cursor:pointer;transition:transform var(--dur-fast) var(--ease-out)}.assistant-launcher-unread{position:absolute;top:3px;right:3px;width:9px;height:9px;border:1px solid var(--surface-3);border-radius:50%;background:var(--warn);box-shadow:0 0 8px #fbbf24b3;z-index:2}.assistant-launcher:hover{transform:translateY(-1px);box-shadow:var(--glow-md),inset 0 0 12px #00f2fe1f}.assistant-launcher:focus-visible{outline:2px solid rgba(0,242,254,.65);outline-offset:3px}.assistant-launcher-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.assistant-window,.assistant-page{--text-xs: clamp(10px, 1.1vmin, 13px);--text-sm: clamp(12px, 1.3vmin, 16px);--text-md: clamp(14px, 1.5vmin, 19px);--text-lg: clamp(15px, 1.7vmin, 21px)}.assistant-window{--assistant-dock-h: 120px;--assistant-top-clearance: calc( var(--topbar-h, 6.8%) + clamp(8px, .9vmin, 20px) + 12px );display:grid;grid-template-rows:58px auto minmax(0,1fr) var(--assistant-dock-h);gap:0;width:clamp(420px,32vw,580px);max-width:calc(100vw - 24px);height:clamp(560px,72vh,760px);max-height:calc(100% - var(--assistant-top-clearance) - var(--bottom-nav-h, 54px) - 16px);overflow:hidden;padding:0;border:0;border-radius:var(--assistant-radius-md);background:#09172a;box-shadow:inset 0 1px #f8fafc0a,0 20px 54px #0000005c;animation:assistantWindowIn .28s var(--ease-out) both}@media(max-width:480px){.assistant-window{right:12px;left:12px;width:auto}}.assistant-shell-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);height:58px;min-height:58px;max-height:58px;padding:0 var(--space-3);color:var(--assistant-text);font-size:var(--text-sm);background:#0a192d;box-shadow:inset 0 1px #f8fafc0a}.assistant-shell-identity{display:flex;align-items:center;gap:var(--space-2);min-width:0}.assistant-shell-identity b{font-weight:700;letter-spacing:.04em;color:var(--text)}.assistant-identity-avatar{display:inline-grid;place-items:center;width:clamp(24px,2.8vmin,32px);height:clamp(24px,2.8vmin,32px);border:0;background:transparent;color:var(--cyan2);flex:0 0 auto}.assistant-sidebar-brand .assistant-identity-avatar{width:clamp(32px,4vmin,44px);height:clamp(32px,4vmin,44px)}.assistant-shell-status{display:inline-flex;align-items:center;gap:6px;color:color-mix(in srgb,var(--text) 72%,var(--muted));max-width:12em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.assistant-shell-tools{display:flex;align-items:center;gap:4px;flex:0 0 auto}.assistant-shell-header .assistant-icon-btn{width:34px;height:34px;min-height:34px}.assistant-context-strip{display:flex;align-items:center;gap:var(--space-2);min-height:28px;padding:0 var(--space-3);color:var(--assistant-muted, var(--muted));font-size:var(--text-xs);overflow:hidden;background:#0a192d;box-shadow:inset 0 1px #f8fafc0a}.assistant-system-context{display:grid;gap:4px;padding:6px var(--space-2);border:1px solid rgba(0,242,254,.16);border-radius:var(--r-sm);background:var(--surface-2);color:var(--muted);font-size:11px}.assistant-system-context-row{display:flex;align-items:center;gap:var(--space-2);min-width:0;overflow:hidden}.assistant-context-item{display:inline-flex;align-items:center;gap:6px;min-width:0;max-width:100%;color:inherit}.assistant-system-context-row .assistant-context-item{flex:1 1 0}.assistant-context-icon{display:inline-grid;place-items:center;color:color-mix(in srgb,var(--text) 72%,var(--muted));flex:0 0 auto}.assistant-context-label{color:var(--muted);flex:0 0 auto}.assistant-context-value{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:color-mix(in srgb,var(--text) 72%,var(--muted))}.assistant-window-btn,.assistant-msg-btn,.assistant-composer-btn,.assistant-icon-btn{min-height:28px;padding:0 var(--space-2);border:1px solid rgba(0,242,254,.28);border-radius:var(--r-sm);background:transparent;color:var(--cyan2);font-size:var(--text-xs);cursor:pointer;transition:color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out)}.assistant-icon-btn{width:32px;height:32px;min-height:32px;display:inline-grid;place-items:center;padding:0;border:1px solid rgba(0,242,254,.32);border-radius:var(--r-sm);background:var(--surface-1);color:color-mix(in srgb,var(--text) 72%,var(--muted))}.assistant-window-btn:focus-visible,.assistant-msg-btn:focus-visible,.assistant-composer-btn:focus-visible,.assistant-icon-btn:focus-visible,.assistant-action-record-btn:focus-visible,.assistant-activity-toggle:focus-visible,.assistant-new-chat-btn:focus-visible{outline:2px solid rgba(0,242,254,.65);outline-offset:2px}.assistant-window-btn:hover,.assistant-msg-btn:hover,.assistant-composer-btn:hover,.assistant-icon-btn:hover{border-color:#00f2fe8c;color:var(--cyan)}.assistant-window-btn:disabled,.assistant-msg-btn:disabled,.assistant-composer-btn:disabled,.assistant-icon-btn:disabled{opacity:.45;cursor:not-allowed}.assistant-timeline-shell{position:relative;min-height:0;display:flex;flex-direction:column;overflow:hidden}.assistant-timeline{min-height:0;flex:1 1 auto;overflow:auto;display:flex;flex-direction:column;gap:var(--space-4);padding-right:var(--space-1)}.assistant-window .assistant-timeline-shell{min-width:0}.assistant-window .assistant-timeline{padding:12px 18px 14px}.assistant-window .assistant-input-dock{padding:0 18px var(--space-2)}.assistant-jump-latest{position:absolute;left:50%;bottom:10px;z-index:2;display:inline-flex;align-items:center;gap:4px;transform:translate(-50%);min-height:28px;padding:0 10px;border:1px solid rgba(79,172,254,.35);border-radius:999px;background:color-mix(in srgb,#0a192d 92%,#12345d);color:var(--text);font-size:var(--text-xs);cursor:pointer;box-shadow:0 6px 16px #00000047}.assistant-jump-latest:hover{border-color:#00f2fe8c;color:var(--cyan)}.assistant-jump-latest:focus-visible{outline:2px solid rgba(0,242,254,.65);outline-offset:2px}.assistant-turn{display:grid;gap:var(--space-2)}.assistant-turn-trace,.assistant-turn-actions{margin-left:38px;max-width:calc(100% - 38px);min-width:0}.assistant-turn-trace{min-height:0}.assistant-activity-trace{display:grid;gap:var(--space-1)}.assistant-activity-toggle{display:inline-flex;align-items:center;gap:6px;justify-self:start;min-height:28px;padding:0;border:0;background:transparent;color:color-mix(in srgb,var(--text) 72%,var(--muted));font-size:var(--text-xs);cursor:pointer;transition:color var(--dur-fast) var(--ease-out)}.assistant-activity-toggle:hover{color:var(--text)}.assistant-activity-toggle-accent{color:var(--warn);flex:0 0 auto}.assistant-activity-toggle-label{min-width:0}.assistant-activity-toggle-chevron{flex:0 0 auto;transition:transform var(--dur-fast) var(--ease-out)}.assistant-activity-toggle-chevron.is-open{transform:rotate(180deg)}.assistant-activity-detail{display:block;margin-top:2px;color:var(--muted)}.assistant-activity-duration{display:block;margin-top:2px;color:color-mix(in srgb,var(--muted) 88%,var(--text));font-variant-numeric:tabular-nums}.assistant-turn-actions{display:grid;gap:var(--space-1)}.assistant-action-record{min-width:0;width:100%}.assistant-action-record-btn{display:grid;grid-template-columns:36px 1fr 16px;align-items:center;gap:var(--space-2);width:100%;min-height:58px;padding:10px 12px;border:1px solid rgba(148,163,184,.16);border-radius:10px;background:#0d2532;color:var(--text);text-align:left;cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.assistant-action-record-btn:hover{border-color:#94a3b847;background:#102b3a;transform:translateY(-1px)}.assistant-action-record-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:8px;flex-shrink:0}.assistant-action-record-btn[data-tone=business] .assistant-action-record-icon{color:#6ee7b7;background:#34d39924}.assistant-action-record-btn[data-tone=analysis] .assistant-action-record-icon{color:#93c5fd;background:#60a5fa24}.assistant-action-record-copy{display:grid;gap:2px;min-width:0}.assistant-action-record-btn b{font-size:var(--text-sm);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.assistant-action-record-btn small{color:#bae6fdb8;font-size:var(--text-xs)}.assistant-action-record-btn[data-open-state=opening] small{color:#93c5fde6}.assistant-action-record-btn[data-open-state=opened] small{color:#6ee7b7d9}.assistant-action-record p[role=status]{margin:4px 0 0;color:var(--warn);font-size:var(--text-xs)}.assistant-input-dock{--assistant-dock-h: 120px;position:relative;height:var(--assistant-dock-h);min-height:106px;max-height:var(--assistant-dock-h);overflow:hidden;border-top:0;background:#0a192d;box-shadow:inset 0 1px #f8fafc0a}.assistant-input-dock:after{content:"";position:absolute;top:0;left:8%;right:8%;height:1px;background:linear-gradient(90deg,transparent,rgba(0,242,254,.6),rgba(129,140,248,.4),transparent);pointer-events:none}.assistant-input-dock-panel{transition:opacity .28s var(--assistant-ease, var(--ease-out)),transform .28s var(--assistant-ease, var(--ease-out))}.assistant-input-dock-status{margin:0;color:var(--cyan2);font-size:var(--text-xs)}.assistant-input-dock-partial{margin:0;color:var(--text);font-size:var(--text-sm);overflow-wrap:anywhere}.assistant-input-dock-actions{display:flex;flex-wrap:wrap;gap:var(--space-1)}.assistant-input-notice{min-height:26px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;margin:0;color:color-mix(in srgb,var(--text) 72%,var(--muted));font-size:var(--text-xs);flex:0 0 auto}.assistant-input-notice.is-error{color:var(--warn)}.assistant-timeline-empty{margin:auto 0;display:grid;justify-items:center;gap:var(--space-2);color:var(--muted);font-size:var(--text-sm);text-align:center}.assistant-timeline-empty:before{content:"";width:clamp(40px,5vmin,56px);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 35% 32%,var(--ai-violet),var(--ai-iris) 38%,var(--cyan2) 68%,transparent 72%);box-shadow:0 0 1.5vmin #4facfe59;opacity:.2}.assistant-message{display:grid;grid-template-columns:30px minmax(0,1fr);gap:8px;align-items:start;max-width:100%;border:0}.assistant-message.is-user{grid-template-columns:minmax(0,1fr) 30px;justify-self:end;max-width:min(78%,570px)}.assistant-message.is-user .assistant-message-avatar{grid-column:2;grid-row:1}.assistant-message-avatar{display:inline-grid;place-items:center;width:30px;height:30px;border:1px solid rgba(0,242,254,.22);border-radius:50%;background:transparent;color:color-mix(in srgb,var(--text) 55%,var(--muted));flex:0 0 auto}.assistant-message.is-assistant .assistant-message-avatar{border:0;background:transparent;border-radius:0}.assistant-message.is-user .assistant-message-avatar{color:color-mix(in srgb,var(--text) 62%,var(--muted));opacity:.85}.assistant-message-content{position:relative;overflow:hidden;min-width:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.assistant-message-content:before{content:none}.assistant-message.is-user .assistant-message-content{grid-column:1;grid-row:1;padding:10px 14px;border:1px solid rgba(79,172,254,.28);border-radius:12px 4px 12px 12px;background:#12345d;box-shadow:none}.assistant-message.is-assistant .assistant-message-content{padding:2px 0 0;border:0;border-radius:0;background:transparent;box-shadow:none}.assistant-message.is-assistant .assistant-message-content:before{content:none}.assistant-message-meta{display:flex;align-items:center;gap:var(--space-2);margin-bottom:2px;color:var(--muted);font-size:var(--text-xs)}.assistant-message.is-user .assistant-message-meta{color:#f8fafc9e}.assistant-message-body{color:var(--text);font-size:var(--text-sm);line-height:1.68;overflow-wrap:anywhere;word-break:break-word}.assistant-message.is-assistant .assistant-message-body{line-height:1.72;font-size:14px}.assistant-message-body>:first-child{margin-top:0}.assistant-message-body>:last-child{margin-bottom:0}.assistant-message-body p,.assistant-message-body ul,.assistant-message-body ol,.assistant-message-body blockquote,.assistant-message-body pre,.assistant-message-body .assistant-table-wrap{margin:0 0 var(--space-2)}.assistant-message-body h1,.assistant-message-body h2,.assistant-message-body h3{margin:var(--space-2) 0 var(--space-1);font-weight:600;color:var(--text);font-size:15px;line-height:1.45}.assistant-message-body h1,.assistant-message-body h2,.assistant-message-body h3{font-size:15px}.assistant-message-body ul,.assistant-message-body ol{padding-left:1.4em}.assistant-message-body li{margin:2px 0}.assistant-message-body li::marker{color:var(--cyan2);font-weight:700}.assistant-message-body strong{color:#fff;font-weight:600}.assistant-message-body a{color:var(--cyan2);text-decoration:underline;text-underline-offset:2px}.assistant-message-body a:focus-visible{outline:2px solid rgba(0,242,254,.65);outline-offset:2px;border-radius:2px}.assistant-message-body code{font-family:var(--font-num);font-size:.9em;color:color-mix(in srgb,var(--cyan2) 82%,var(--text));background:#02061759;border:1px solid rgba(148,163,184,.16);border-radius:4px;padding:1px 5px}.assistant-message-body pre{max-width:100%;padding:10px 12px;overflow-x:auto;overflow-y:hidden;border:1px solid rgba(148,163,184,.16);border-radius:8px;background:#0206176b}.assistant-message-body pre code{background:transparent;border:0;border-radius:0;padding:0}.assistant-message-body blockquote{border-left:2px solid rgba(129,140,248,.45);background:#818cf80d;border-radius:0 6px 6px 0;padding:6px 12px;color:color-mix(in srgb,var(--text) 72%,var(--muted))}.assistant-message-body hr{border:0;border-top:1px solid rgba(0,242,254,.16);margin:var(--space-3) 0}.assistant-table-wrap{border:1px solid rgba(148,163,184,.18);border-radius:8px;overflow-x:auto;overflow-y:hidden;margin:0 0 var(--space-2);max-width:100%}.assistant-message-body table{width:100%;border-collapse:separate;border-spacing:0;margin:0;font-size:var(--text-xs)}.assistant-message-body th,.assistant-message-body td{border-bottom:1px solid rgba(0,242,254,.12);padding:var(--space-1) var(--space-2);text-align:left}.assistant-message-body th{background:#00f2fe1a;font-weight:600}.assistant-message-body tr:last-child td{border-bottom:0}.assistant-message-body del{color:var(--muted)}.assistant-message-body input[type=checkbox]{accent-color:var(--cyan)}.assistant-stream-cursor{display:inline-block;width:.5em;height:1em;margin-left:2px;vertical-align:-.1em;background:var(--ai-iris);animation:assistant-stream-blink 1s step-end infinite}.assistant-thinking{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:var(--text-xs)}.assistant-thinking i{display:block;width:6px;height:6px;border-radius:50%;background:var(--ai-iris);animation:assistant-thinking-bounce 1.2s ease-in-out infinite}.assistant-thinking i:nth-child(2){animation-delay:.2s}.assistant-thinking i:nth-child(3){animation-delay:.4s}.assistant-thinking u{text-decoration:none}@keyframes assistant-stream-blink{50%{opacity:0}}@keyframes assistant-thinking-bounce{0%,80%,to{transform:scale(.85);opacity:.45}40%{transform:scale(1.15);opacity:1}}.assistant-message-plain{margin:0;white-space:pre-wrap}.assistant-message-actions{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin-top:8px;opacity:.88}.assistant-message.is-assistant .assistant-message-actions{margin-top:6px}.assistant-msg-btn{display:inline-grid;place-items:center;width:28px;min-height:28px;padding:0}.assistant-activity{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-1);overflow:hidden}.assistant-page .assistant-activity.is-compact{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2)}.assistant-window .assistant-activity.is-compact{grid-template-columns:1fr}@media(max-width:720px){.assistant-page .assistant-activity.is-compact{grid-template-columns:1fr}}.assistant-activity-step{display:grid;grid-template-columns:14px 1fr auto;gap:var(--space-2);align-items:start;color:var(--muted);font-size:var(--text-xs);line-height:1.4;min-width:0}.assistant-activity-cancel{width:28px;height:28px;min-width:28px;min-height:28px;display:inline-grid;place-items:center;border:1px solid rgba(148,163,184,.35);border-radius:8px;background:#10263a;color:#e2e8f0;padding:0;cursor:pointer}.assistant-activity-cancel:hover{border-color:#f871718c;color:#fecaca}.assistant-activity-status-icon{margin-top:1px;color:var(--muted)}.assistant-activity-step.is-done{color:color-mix(in srgb,var(--text) 72%,var(--muted))}.assistant-activity-step.is-done .assistant-activity-status-icon{color:var(--status-published)}.assistant-activity-step.is-active{color:var(--text)}.assistant-activity-step.is-active .assistant-activity-status-icon,.assistant-activity-step.is-failed .assistant-activity-status-icon{color:var(--warn)}.assistant-activity-status-icon.is-spinning{animation:assistant-activity-spin .9s linear infinite}@keyframes assistant-activity-spin{to{transform:rotate(360deg)}}.assistant-composer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-2);align-items:end;min-height:72px;max-width:760px;width:100%;border-top:1px solid rgba(0,242,254,.15);padding-top:var(--space-2)}.assistant-composer.is-embedded{min-height:0;border:1px solid var(--assistant-line-strong, rgba(79, 172, 254, .28));border-top-style:solid;padding:var(--space-2);flex:1 1 auto;border-radius:12px;background:#0d1f36;box-shadow:inset 0 1px #f8fafc0a}.assistant-composer.is-embedded .assistant-composer-input{min-height:40px;max-height:56px;border-color:transparent;background:transparent}.assistant-composer-input{width:100%;min-height:56px;max-height:96px;resize:none;padding:var(--space-2);border:1px solid var(--assistant-line);border-radius:var(--assistant-radius-sm);background:#0d1f36;color:var(--assistant-text);font:inherit;font-size:var(--text-sm);line-height:1.45}.assistant-composer-input:focus{outline:1px solid var(--cyan);outline-offset:1px}.assistant-composer-actions{display:flex;flex-direction:row;align-items:center;gap:var(--space-1);flex:0 0 auto}.assistant-composer-btn.is-send,.assistant-composer-btn.is-stop,.assistant-icon-btn.is-send,.assistant-icon-btn.is-stop{min-height:32px}.assistant-composer-btn.is-send,.assistant-icon-btn.is-send{background:linear-gradient(135deg,var(--cyan),var(--blue));color:var(--bg-0);border-color:transparent;box-shadow:var(--glow-sm)}.assistant-composer-btn.is-send:hover:not(:disabled),.assistant-icon-btn.is-send:hover:not(:disabled){box-shadow:var(--glow-md);color:var(--bg-0);border-color:transparent}.assistant-composer-btn.is-stop,.assistant-icon-btn.is-stop{color:var(--warn);border-color:#fbbf2473}@keyframes assistantWindowIn{0%{opacity:0;transform:translate3d(10px,8px,0)}to{opacity:1;transform:translateZ(0)}}.assistant-page{--assistant-sidebar-w: 252px;--assistant-rail-w: 48px;--assistant-dock-h: 120px;position:relative;display:grid;grid-template-columns:var(--assistant-sidebar-w) minmax(0,1fr);gap:0;min-height:0;height:100%;overflow:hidden;border:0;border-radius:0;background:#071426}.assistant-page.is-sidebar-collapsed{grid-template-columns:var(--assistant-rail-w) minmax(0,1fr)}.assistant-rail{position:relative;display:flex;flex-direction:column;align-items:center;gap:var(--space-1);width:var(--assistant-rail-w);min-width:var(--assistant-rail-w);min-height:0;padding:var(--space-2) 0;border-radius:0;background:#081527;box-shadow:inset 0 1px #f8fafc0a}.assistant-rail .assistant-identity-avatar{width:clamp(28px,3.2vmin,36px);height:clamp(28px,3.2vmin,36px);margin-bottom:var(--space-1)}.assistant-sidebar{position:relative;width:var(--assistant-sidebar-w);min-width:0;min-height:0;display:grid;grid-template-rows:auto auto auto minmax(0,1fr);gap:var(--space-2);overflow:hidden;border:0;border-radius:0;background:#081527;box-shadow:inset 0 1px #f8fafc0a}.assistant-page.is-sidebar-collapsed .assistant-sidebar{position:absolute;width:0;height:0;overflow:hidden;visibility:hidden;pointer-events:none}.assistant-sidebar-brand{display:flex;align-items:center;gap:var(--space-2);min-height:40px;padding:var(--space-2) var(--space-3) 0;color:var(--text)}.assistant-sidebar-brand-text{flex:1;min-width:0}.assistant-sidebar-brand-tools{display:inline-flex;align-items:center;gap:4px;flex:0 0 auto}.assistant-sidebar-brand b{display:block;font-size:var(--text-sm);font-weight:700;letter-spacing:.04em;line-height:1.2}.assistant-sidebar-brand small{display:block;color:var(--muted);font-size:11px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.assistant-new-chat-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:calc(100% - 2 * var(--space-3));min-height:34px;margin:0 var(--space-3);padding:0 var(--space-3);border:0;border-radius:var(--r-sm);background:linear-gradient(135deg,var(--cyan),var(--cyan2));color:var(--bg-0);font-size:var(--text-xs);font-weight:700;box-shadow:var(--glow-sm);cursor:pointer;transition:transform var(--dur-fast) var(--ease-out)}.assistant-new-chat-btn:hover{transform:translateY(-1px);box-shadow:var(--glow-md)}.assistant-sidebar .assistant-system-context{margin:0 var(--space-3)}.assistant-history{position:relative;display:grid;grid-template-rows:auto 1fr auto;gap:var(--space-2);min-height:0;padding:0 var(--space-3) var(--space-3);color:var(--text)}.assistant-history-toolbar{display:grid;gap:var(--space-2)}.assistant-history-search-wrap{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:6px;min-height:32px;padding:0 var(--space-2);border:1px solid rgba(0,242,254,.16);border-radius:var(--r-sm);background:var(--surface-2);color:color-mix(in srgb,var(--text) 72%,var(--muted))}.assistant-history-search,.assistant-history-rename-input{width:100%;min-height:32px;padding:0;border:0;border-radius:0;background:transparent;color:var(--text);font:inherit;font-size:var(--text-xs)}.assistant-history-rename-input{min-height:28px;padding:0 var(--space-2);border:1px solid rgba(0,242,254,.16);border-radius:var(--r-sm);background:var(--surface-1)}.assistant-history-btn,.assistant-history-more{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-height:28px;padding:0 var(--space-2);border:1px solid rgba(0,242,254,.22);border-radius:var(--r-sm);background:transparent;color:var(--muted);font-size:var(--text-xs);cursor:pointer;transition:color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.assistant-history-btn:hover,.assistant-history-more:hover{color:var(--cyan2);border-color:#00f2fe66}.assistant-history-btn.is-danger,.assistant-icon-btn.is-danger{color:var(--warn);border-color:#fbbf2473}.assistant-history-list{list-style:none;margin:0;padding:0;overflow-y:auto;overflow-x:hidden;min-height:0;display:grid;gap:var(--space-1);align-content:start}.assistant-history-item{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px;padding:6px 8px 6px 10px;border:0;border-radius:var(--r-sm);background:transparent;overflow:visible}.assistant-history-item:before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:2px;border-radius:2px;background:#4facfe4d;opacity:0;transition:opacity var(--dur-fast) var(--ease-out);pointer-events:none}.assistant-history-item:hover:before{opacity:1}.assistant-history-item.is-active{background:var(--surface-2)}.assistant-history-item.is-active:before{width:2px;opacity:1;background:var(--cyan);box-shadow:none}.assistant-history-select{display:grid;gap:2px;width:100%;min-width:0;padding:0;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.assistant-history-title{font-size:12px;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.assistant-history-time{color:var(--muted);font-size:10px;line-height:1.2;font-variant-numeric:tabular-nums}.assistant-history-actions{display:flex;flex-wrap:nowrap;gap:2px;opacity:0;transition:opacity var(--dur-fast) var(--ease-out)}.assistant-history-item:hover .assistant-history-actions,.assistant-history-item:focus-within .assistant-history-actions,.assistant-history-item.is-active .assistant-history-actions{opacity:1}.assistant-history-actions .assistant-icon-btn{width:26px;height:26px;min-height:26px}.assistant-history-rename{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px;grid-column:1 / -1}.assistant-history-more{width:100%}.assistant-history-confirm{grid-column:1 / -1;position:absolute;left:8px;right:8px;top:calc(100% - 2px);display:grid;gap:6px;padding:var(--space-2);border:1px solid rgba(0,242,254,.32);border-radius:var(--r-sm);background:var(--surface-3);z-index:3;box-shadow:0 8px 20px #020e2073}.assistant-history-confirm p{margin:0;font-size:var(--text-xs);color:var(--text)}.assistant-history-confirm-actions{display:flex;flex-wrap:wrap;gap:var(--space-1)}.assistant-history-confirm .assistant-history-actions{opacity:1}.assistant-conversation-workspace{display:contents}.assistant-workspace{--assistant-dock-h: 120px;position:relative;display:grid;grid-template-rows:58px minmax(0,1fr) var(--assistant-dock-h);min-width:0;min-height:0;overflow:hidden;border:0;border-radius:0;background:#09172a;box-shadow:inset 0 1px #f8fafc0a}.assistant-workspace>*{position:relative;z-index:1}.assistant-workspace .assistant-shell-header{padding:0 var(--space-3)}.assistant-workspace .assistant-timeline-shell,.assistant-workspace .assistant-input-dock{width:min(760px,100%);justify-self:center}.assistant-workspace .assistant-timeline-shell{min-height:0}.assistant-workspace .assistant-timeline{min-height:0;padding:28px 20px 22px}.assistant-workspace .assistant-input-dock{align-self:end;padding:0 var(--space-3) var(--space-3)}@media(max-width:959px){.assistant-page{grid-template-columns:minmax(0,1fr);gap:0}.assistant-page.is-sidebar-collapsed{grid-template-columns:var(--assistant-rail-w) minmax(0,1fr)}.assistant-page:not(.is-sidebar-collapsed){grid-template-columns:minmax(0,1fr)}.assistant-page:not(.is-sidebar-collapsed) .assistant-rail{display:none}.assistant-sidebar{position:absolute;inset:0 auto 0 0;z-index:3;width:min(var(--assistant-sidebar-w),calc(100% - 48px));max-width:calc(100% - 48px);transform:translate(0);visibility:visible;pointer-events:auto;box-shadow:8px 0 24px #00000059}.assistant-page.is-sidebar-collapsed .assistant-sidebar{position:absolute;width:0;height:0;transform:none;visibility:hidden;pointer-events:none;box-shadow:none}.assistant-page:not(.is-sidebar-collapsed) .assistant-workspace{grid-column:1;min-width:0}.assistant-workspace .assistant-timeline-shell,.assistant-workspace .assistant-input-dock{width:100%}}@media(prefers-reduced-motion:reduce){.assistant-launcher,.assistant-window,.assistant-input-dock-panel,.assistant-activity-status-icon.is-spinning,.assistant-activity-toggle-chevron,.assistant-turn-actions .assistant-action-record,.assistant-orb>span,.assistant-stream-cursor,.assistant-thinking i,.assistant-new-chat-btn{animation:none;transition:none}.assistant-action-record-btn:hover,.assistant-launcher:hover,.assistant-new-chat-btn:hover{transform:none}}.screen[data-effects=off] .assistant-launcher,.screen[data-effects=off] .assistant-window,.screen[data-effects=off] .assistant-input-dock-panel,.screen[data-effects=off] .assistant-activity-status-icon.is-spinning,.screen[data-effects=off] .assistant-activity-toggle-chevron,.screen[data-effects=off] .assistant-turn-actions .assistant-action-record,.screen[data-effects=off] .assistant-orb>span,.screen[data-effects=off] .assistant-orb.is-live .assistant-orb-core,.screen[data-effects=off] .assistant-orb.is-live .assistant-orb-ring,.screen[data-effects=off] .assistant-orb.is-live .assistant-orb-ring2,.screen[data-effects=off] .assistant-orb.is-live .assistant-orb-wave,.screen[data-effects=off] .assistant-stream-cursor,.screen[data-effects=off] .assistant-thinking i,.screen[data-effects=off] .assistant-new-chat-btn,.screen[data-effects=reduced] .assistant-launcher,.screen[data-effects=reduced] .assistant-window,.screen[data-effects=reduced] .assistant-input-dock-panel,.screen[data-effects=reduced] .assistant-activity-status-icon.is-spinning,.screen[data-effects=reduced] .assistant-activity-toggle-chevron,.screen[data-effects=reduced] .assistant-turn-actions .assistant-action-record,.screen[data-effects=reduced] .assistant-orb>span,.screen[data-effects=reduced] .assistant-orb.is-live .assistant-orb-core,.screen[data-effects=reduced] .assistant-orb.is-live .assistant-orb-ring,.screen[data-effects=reduced] .assistant-orb.is-live .assistant-orb-ring2,.screen[data-effects=reduced] .assistant-orb.is-live .assistant-orb-wave,.screen[data-effects=reduced] .assistant-stream-cursor,.screen[data-effects=reduced] .assistant-thinking i,.screen[data-effects=reduced] .assistant-new-chat-btn{animation:none;transition:none}.screen[data-effects=off] .assistant-action-record-btn:hover,.screen[data-effects=off] .assistant-launcher:hover,.screen[data-effects=off] .assistant-new-chat-btn:hover,.screen[data-effects=reduced] .assistant-action-record-btn:hover,.screen[data-effects=reduced] .assistant-launcher:hover,.screen[data-effects=reduced] .assistant-new-chat-btn:hover{transform:none}@media(max-height:760px){.assistant-window,.assistant-page,.assistant-workspace,.assistant-input-dock{--assistant-dock-h: 106px}.assistant-window{--assistant-top-clearance: calc( var(--topbar-h, 6.8%) + clamp(8px, .9vmin, 20px) + 8px );gap:0;height:clamp(480px,70vh,640px);max-height:calc(100% - var(--assistant-top-clearance) - var(--bottom-nav-h, 54px) - 12px)}.assistant-window .assistant-context-strip{min-height:22px;padding-block:0}.assistant-window .assistant-timeline{padding:10px 18px 12px}.assistant-window .assistant-input-dock{padding:0 18px var(--space-1)}}@media(max-height:675px){.assistant-page,.assistant-window{overflow-x:hidden}.assistant-window{--assistant-top-clearance: calc( var(--topbar-h, 6.8%) + clamp(6px, .8vmin, 14px) + 6px );height:clamp(420px,68vh,560px);max-height:calc(100% - var(--assistant-top-clearance) - var(--bottom-nav-h, 54px) - 8px)}.assistant-window .assistant-timeline{padding:8px 14px 10px}.assistant-workspace .assistant-timeline{padding:16px 14px 12px}.assistant-page .assistant-input-dock,.assistant-window .assistant-input-dock{padding-bottom:4px}}.assistant-window:after,.assistant-sidebar:after,.assistant-workspace:after,.assistant-rail:after{content:none;display:none}.assistant-orb{position:relative;display:block;width:100%;height:100%;pointer-events:none}.assistant-orb>span{position:absolute;display:block;border-radius:50%}.assistant-orb-core{inset:22%;background:radial-gradient(circle at 35% 32%,#e0e7ff 0%,var(--ai-iris) 30%,var(--cyan2) 62%,#0c4a6e 100%);box-shadow:0 0 .75vmin #4facfecc,0 0 .2vmin #c4b5fde6}.assistant-orb-ring{inset:8%;border:1px dashed rgba(0,242,254,.55)}.assistant-orb-ring2{inset:0;border:1px solid rgba(0,242,254,.25);border-top-color:var(--ai-violet)}.assistant-orb-wave{inset:-6%;border:1px solid rgba(79,172,254,.5);opacity:0}.assistant-launcher .assistant-orb{position:absolute;inset:4px;width:auto;height:auto}.assistant-orb.is-live .assistant-orb-core{animation:assistant-orb-breathe 4s ease-in-out infinite}.assistant-orb.is-live .assistant-orb-ring{animation:assistant-orb-spin 9s linear infinite}.assistant-orb.is-live .assistant-orb-ring2{animation:assistant-orb-spin 3.2s linear infinite reverse}@keyframes assistant-orb-breathe{0%,to{transform:scale(1);opacity:.88}50%{transform:scale(1.07);opacity:1}}@keyframes assistant-orb-spin{to{transform:rotate(360deg)}}@keyframes assistant-orb-wave{0%{transform:scale(.82);opacity:.9}to{transform:scale(1.5);opacity:0}}@media(prefers-reduced-motion:reduce){.assistant-orb.is-live .assistant-orb-core,.assistant-orb.is-live .assistant-orb-ring,.assistant-orb.is-live .assistant-orb-ring2,.assistant-orb.is-live .assistant-orb-wave{animation:none;transition:none}}[data-voice-stage=wake_detected] .assistant-orb.is-live .assistant-orb-wave,[data-voice-stage=listening] .assistant-orb.is-live .assistant-orb-wave,[data-voice-stage=transcribing] .assistant-orb.is-live .assistant-orb-wave{animation:assistant-orb-wave 1.6s ease-out infinite}[data-voice-stage=routing] .assistant-orb.is-live .assistant-orb-ring,[data-voice-stage=routing] .assistant-orb.is-live .assistant-orb-ring2,[data-voice-stage=searching] .assistant-orb.is-live .assistant-orb-ring,[data-voice-stage=searching] .assistant-orb.is-live .assistant-orb-ring2,[data-voice-stage=generating] .assistant-orb.is-live .assistant-orb-ring,[data-voice-stage=generating] .assistant-orb.is-live .assistant-orb-ring2,[data-voice-stage=opening] .assistant-orb.is-live .assistant-orb-ring,[data-voice-stage=opening] .assistant-orb.is-live .assistant-orb-ring2{animation-duration:.9s}[data-voice-stage=speaking] .assistant-orb.is-live .assistant-orb-core,[data-voice-stage=follow_up] .assistant-orb.is-live .assistant-orb-core{animation-duration:1.1s}[data-voice-stage=error] .assistant-orb.is-live .assistant-orb-core,[data-voice-stage=recovering] .assistant-orb.is-live .assistant-orb-core{background:radial-gradient(circle at 35% 32%,#fef3c7 0%,var(--warn) 45%,#92400e 100%);box-shadow:0 0 .75vmin #fbbf24cc}[data-voice-stage=disabled] .assistant-orb.is-live{opacity:.55}.assistant-shell-status:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--cyan);flex:0 0 auto}[data-voice-stage=speaking] .assistant-shell-status:before,[data-voice-stage=follow_up] .assistant-shell-status:before{background:var(--ai-violet)}[data-voice-stage=error] .assistant-shell-status:before,[data-voice-stage=recovering] .assistant-shell-status:before{background:var(--warn)}.screen[data-effects=off] [data-voice-stage] .assistant-orb.is-live .assistant-orb-core,.screen[data-effects=off] [data-voice-stage] .assistant-orb.is-live .assistant-orb-ring,.screen[data-effects=off] [data-voice-stage] .assistant-orb.is-live .assistant-orb-ring2,.screen[data-effects=off] [data-voice-stage] .assistant-orb.is-live .assistant-orb-wave,.screen[data-effects=reduced] [data-voice-stage] .assistant-orb.is-live .assistant-orb-core,.screen[data-effects=reduced] [data-voice-stage] .assistant-orb.is-live .assistant-orb-ring,.screen[data-effects=reduced] [data-voice-stage] .assistant-orb.is-live .assistant-orb-ring2,.screen[data-effects=reduced] [data-voice-stage] .assistant-orb.is-live .assistant-orb-wave{animation:none;transition:none}@media(prefers-reduced-motion:reduce){[data-voice-stage] .assistant-orb.is-live .assistant-orb-core,[data-voice-stage] .assistant-orb.is-live .assistant-orb-ring,[data-voice-stage] .assistant-orb.is-live .assistant-orb-ring2,[data-voice-stage] .assistant-orb.is-live .assistant-orb-wave{animation:none;transition:none}[data-voice-stage=wake_detected] .assistant-orb.is-live .assistant-orb-core,[data-voice-stage=listening] .assistant-orb.is-live .assistant-orb-core,[data-voice-stage=transcribing] .assistant-orb.is-live .assistant-orb-core{background:radial-gradient(circle at 35% 32%,#e0f7ff 0%,var(--cyan) 32%,var(--cyan2) 62%,#0c4a6e 100%);box-shadow:0 0 .75vmin #00f2febf}[data-voice-stage=wake_detected] .assistant-orb.is-live .assistant-orb-ring,[data-voice-stage=listening] .assistant-orb.is-live .assistant-orb-ring,[data-voice-stage=transcribing] .assistant-orb.is-live .assistant-orb-ring{border-color:#00f2febf}[data-voice-stage=wake_detected] .assistant-orb.is-live .assistant-orb-ring2,[data-voice-stage=listening] .assistant-orb.is-live .assistant-orb-ring2,[data-voice-stage=transcribing] .assistant-orb.is-live .assistant-orb-ring2{border-color:#00f2fe66;border-top-color:var(--cyan)}[data-voice-stage=routing] .assistant-orb.is-live .assistant-orb-core,[data-voice-stage=searching] .assistant-orb.is-live .assistant-orb-core,[data-voice-stage=generating] .assistant-orb.is-live .assistant-orb-core,[data-voice-stage=opening] .assistant-orb.is-live .assistant-orb-core{background:radial-gradient(circle at 35% 32%,#f8fafc 0%,#e0f2fe 28%,var(--cyan2) 58%,#164e63 100%);box-shadow:0 0 .75vmin #e0f2feb3}[data-voice-stage=routing] .assistant-orb.is-live .assistant-orb-ring,[data-voice-stage=searching] .assistant-orb.is-live .assistant-orb-ring,[data-voice-stage=generating] .assistant-orb.is-live .assistant-orb-ring,[data-voice-stage=opening] .assistant-orb.is-live .assistant-orb-ring{border-color:#e0f2fea6}[data-voice-stage=speaking] .assistant-orb.is-live .assistant-orb-core,[data-voice-stage=follow_up] .assistant-orb.is-live .assistant-orb-core{background:radial-gradient(circle at 35% 32%,#ede9fe 0%,var(--ai-violet) 32%,var(--ai-iris) 62%,#1e1b4b 100%);box-shadow:0 0 .75vmin #a78bfacc}[data-voice-stage=speaking] .assistant-orb.is-live .assistant-orb-ring,[data-voice-stage=follow_up] .assistant-orb.is-live .assistant-orb-ring{border-color:#a78bfaa6}[data-voice-stage=speaking] .assistant-orb.is-live .assistant-orb-ring2,[data-voice-stage=follow_up] .assistant-orb.is-live .assistant-orb-ring2{border-color:#818cf859;border-top-color:var(--ai-violet)}[data-voice-stage=error] .assistant-orb.is-live .assistant-orb-core,[data-voice-stage=recovering] .assistant-orb.is-live .assistant-orb-core{background:radial-gradient(circle at 35% 32%,#fef3c7 0%,var(--warn) 45%,#92400e 100%);box-shadow:0 0 .75vmin #fbbf24cc}}:root{--cyan: #00f2fe;--cyan2: #4facfe;--blue: #1c7dff;--ai-iris: #818cf8;--ai-violet: #c4b5fd;--text: #f8fafc;--muted: #94a3b8;--status-draft: #818cf8;--status-published: #34d399;--status-pub-assembly: #38bdf8;--status-pub-testing: #2dd4bf;--status-pub-external: #fb923c;--status-changing: #fbbf24;--status-paused: #d6b27a;--status-closed: #94a3b8;--status-terminated: #c4b5fd;--status-active: #60a5fa;--danger: #f87171;--warn: #fbbf24;--amber: #fbbf24;--att-onduty: #34d399;--att-trip: #fbbf24;--att-leave: #fb923c;--att-off: #60a5fa;--bg-0: #020617;--bg-1: #071426;--surface-1: rgba(13, 25, 48, .55);--surface-2: rgba(15, 30, 58, .72);--surface-3: rgba(10, 20, 40, .88);--border-bright: linear-gradient(180deg, rgba(0, 242, 254, .38) 0%, rgba(0, 242, 254, .07) 28%, rgba(0, 242, 254, .03) 62%, rgba(0, 242, 254, .14) 100%);--inner-shade: inset 0 0 2vmin rgba(2, 6, 23, .5);--space-1: .4vmin;--space-2: .8vmin;--space-3: 1.2vmin;--space-4: 1.6vmin;--space-5: 2.4vmin;--space-6: 3.2vmin;--space-7: 4.8vmin;--space-8: 6.4vmin;--r-sm: .55vmin;--r-md: .9vmin;--r-lg: 1.5vmin;--r-pill: 999px;--glow-sm: 0 0 .75vmin rgba(0, 242, 254, .35);--glow-md: 0 0 1.5vmin rgba(0, 242, 254, .4);--glow-lg: 0 0 3vmin rgba(0, 242, 254, .45);--dur-fast: .18s;--dur-med: .32s;--dur-slow: .6s;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--text-xs: clamp(9px, .95vmin, 12px);--text-sm: clamp(10px, 1.1vmin, 14px);--text-md: clamp(12px, 1.3vmin, 17px);--text-lg: clamp(13px, 1.5vmin, 19px);--text-xl: clamp(18px, 2.4vmin, 30px);--text-2xl: clamp(22px, 3.2vmin, 40px);--font-body: "HarmonyOS Sans SC", "Microsoft YaHei", "PingFang SC", "Segoe UI", sans-serif;--font-num: "D-DIN", Bahnschrift, "HarmonyOS Sans SC", "Segoe UI", sans-serif;--font-quote: "LXGW WenKai Culture", "Microsoft YaHei", serif}@font-face{font-family:LXGW WenKai Culture;src:url(../assets/fonts/LXGWWenKai-Culture.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:D-DIN;src:url(../assets/fonts/D-DIN.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:D-DIN;src:url(../assets/fonts/D-DIN-Bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:HarmonyOS Sans SC;src:url(../assets/fonts/HarmonyOS-Sans-SC-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:HarmonyOS Sans SC;src:url(../assets/fonts/HarmonyOS-Sans-SC-500.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:HarmonyOS Sans SC;src:url(../assets/fonts/HarmonyOS-Sans-SC-700.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}*{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;height:100%;font-family:var(--font-body);color:var(--text);overflow:hidden}body{min-width:320px;min-height:100vh;background:radial-gradient(circle at 50% 0%,rgba(28,125,255,.15),transparent 40%),radial-gradient(circle at 100% 100%,rgba(0,242,254,.1),transparent 30%),linear-gradient(135deg,#020617,#0f172a,#020617)}.screen-shell{width:100vw;height:100vh;display:grid;place-items:center;padding:clamp(6px,.7vmin,18px)}.screen{position:relative;isolation:isolate;--bottom-nav-h: clamp(54px, 6.4vmin, 68px);width:min(100%,calc((100vh - clamp(12px,1.4vmin,36px)) * 16 / 9));height:min(100%,calc((100vw - clamp(12px,1.4vmin,36px))*.5625));aspect-ratio:16 / 9;overflow:hidden;padding:clamp(8px,.9vmin,20px);border:1px solid rgba(0,242,254,.2);border-radius:12px;background:linear-gradient(180deg,#0f172acc,#020617f2);backdrop-filter:blur(12px);box-shadow:inset 0 0 0 1px #00f2fe1a,inset 0 0 4vmin #00f2fe0d,0 2vmin 4vmin #000c;display:grid;grid-template-rows:6.8% minmax(0,1fr) var(--bottom-nav-h);gap:.85%}body.is-fullscreen .bottom-nav,.screen-shell:fullscreen .bottom-nav,.screen-shell:-webkit-full-screen .bottom-nav,.screen-shell.is-page-fullscreen .bottom-nav{display:none}body.is-fullscreen .screen,.screen-shell:fullscreen .screen,.screen-shell:-webkit-full-screen .screen,.screen-shell.is-page-fullscreen .screen{--bottom-nav-h: 0px;grid-template-rows:6.8% minmax(0,1fr)}.screen:before{content:"";position:absolute;inset:0;pointer-events:none;z-index:3;border-radius:12px;background:linear-gradient(90deg,transparent,rgba(0,242,254,.3),transparent) 0 0 / 100% 1px no-repeat,linear-gradient(90deg,transparent,rgba(28,125,255,.3),transparent) 0 100% / 100% 1px no-repeat}.screen:after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;opacity:.3;background:repeating-linear-gradient(0deg,rgba(255,255,255,.075) 0 1px,transparent 1px 4px),linear-gradient(90deg,transparent 0 49.8%,rgba(77,232,255,.16) 50%,transparent 50.2%);mix-blend-mode:screen}.main{position:relative;z-index:4;min-height:0;display:grid;grid-template-columns:78% 21%;gap:1.2%}.main.is-announce,.main.is-assistant{grid-template-columns:1fr}.board-wrap:has(.announce-view){grid-template-rows:1fr}:where(.col,.card,.panel,.kpi-tag,.modal-panel,.cfg-panel,.login-card,.voice-dock,.assistant-window,.assistant-sidebar,.assistant-workspace):after{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:var(--border-bright);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;pointer-events:none}.aurora-bg{position:absolute;inset:0;z-index:0;pointer-events:none}.aurora-bg canvas{width:100%;height:100%;display:block}.industrial-backdrop,.particle-field{position:absolute;inset:0;pointer-events:none}.industrial-backdrop{z-index:0;opacity:.92}.particle-field{z-index:2;overflow:hidden;opacity:.7}.beam{position:absolute;display:block;background:linear-gradient(90deg,transparent,rgba(77,232,255,.18),transparent),repeating-linear-gradient(90deg,#7894a847 0 10px,#0e1e30a8 10px 17px);box-shadow:inset 0 0 1.1vmin #000000b8,0 0 1.2vmin #33f6ff1f}.beam-top,.beam-bottom{left:.8%;right:.8%;height:2.15%}.beam-top{top:.65%;clip-path:polygon(0 0,100% 0,99.2% 100%,.8% 100%)}.beam-bottom{bottom:.65%;clip-path:polygon(.8% 0,99.2% 0,100% 100%,0 100%)}.beam-left,.beam-right{top:2.9%;bottom:2.9%;width:1.35%;background:linear-gradient(180deg,transparent,rgba(77,232,255,.12),transparent),repeating-linear-gradient(0deg,#7f93993d 0 10px,#0c1315b3 10px 18px)}.beam-left{left:.65%}.beam-right{right:.65%}.particle-field:before,.particle-field:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(105deg,transparent 0 38px,rgba(77,232,255,.075) 38px 39px,transparent 39px 92px),repeating-linear-gradient(18deg,transparent 0 70px,rgba(51,246,255,.05) 70px 71px,transparent 71px 154px);animation:dustDrift 16s linear infinite}.particle-field:after{opacity:.46;transform:translate(-10%);animation-duration:23s;animation-direction:reverse}.particle-field i{position:absolute;left:calc(var(--x) * 1%);top:calc(var(--y) * 1%);width:calc(var(--s) * 1px);height:1px;background:#9eefffb8;box-shadow:0 0 .55em #4de8ffbf;transform:translate(-8vmin);animation:grainFloat calc(var(--d) * 1s) linear infinite;animation-delay:calc(var(--delay) * -1s)}@keyframes dustDrift{to{transform:translate3d(8%,0,0)}}@keyframes grainFloat{0%{opacity:0;transform:translate3d(-8vmin,0,0)}18%{opacity:.72}to{opacity:0;transform:translate3d(18vmin,-.8vmin,0)}}.scanline,.screen[data-effects=off] .particle-field{display:none}.top{position:relative;z-index:4;display:grid;grid-template-columns:1.1fr minmax(30%,38%) 1.3fr;align-items:center;gap:1%;min-height:0}.brand{justify-self:center;width:100%;height:100%;display:grid;place-items:center;text-align:center;position:relative;clip-path:polygon(6% 0,94% 0,100% 42%,96% 100%,4% 100%,0 42%);border:1px solid rgba(0,242,254,.4);background:linear-gradient(90deg,rgba(0,242,254,.15),transparent 20% 80%,rgba(28,125,255,.2)),var(--surface-1);box-shadow:inset 0 0 2vmin #00f2fe33,0 0 2vmin #00f2fe4d}.brand:before,.brand:after{content:"";position:absolute;top:50%;width:24%;height:2px;background:linear-gradient(90deg,transparent,rgba(0,242,254,.8),rgba(255,255,255,.9),transparent);animation:titleRail 3.4s ease-in-out infinite;pointer-events:none;z-index:0;box-shadow:var(--glow-md)}.brand:before{left:-3%}.brand:after{right:-3%;animation-delay:1.1s}.brand-title-stack{position:relative;z-index:1;width:min(98%,72vmin);min-height:100%;display:flex;align-items:center;justify-content:center;gap:clamp(8px,.85vmin,18px);padding:0 clamp(8px,.85vmin,18px)}.brand-title-stack:after{content:"";position:absolute;inset:-40% -20%;background:linear-gradient(105deg,transparent 40%,rgba(255,255,255,.2) 50%,transparent 60%);transform:translate(-130%);animation:titleShimmer 6s ease-in-out infinite;pointer-events:none}.brand-logo{position:relative;z-index:1;height:clamp(40px,5.2vmin,78px);width:auto;object-fit:contain;flex-shrink:0;filter:drop-shadow(0 0 8px rgba(0,242,254,.6))}@keyframes titleRail{0%,to{opacity:.35;transform:scaleX(.72)}50%{opacity:1;transform:scaleX(1)}}@keyframes titleShimmer{0%,70%,to{transform:translate(-130%)}35%{transform:translate(130%)}}.brand h1{position:relative;z-index:1;font-size:clamp(18px,2.4vmin,34px);letter-spacing:.15em;font-weight:800;color:#fff;line-height:1.2;padding:0;white-space:nowrap;background:linear-gradient(to bottom,#fff 30%,#a5f3fc);-webkit-background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 2px 4px rgba(0,0,0,.5))}.top-left,.top-right{display:flex;flex-direction:column;gap:.2vmin;min-width:0;justify-content:center}.top-left{align-items:flex-start}.side-label{font-size:clamp(10px,1vmin,13px);letter-spacing:.12em;color:#87b6cfd9;line-height:1}.tag-row{display:flex;flex-wrap:wrap;gap:.35vmin;align-content:center}.top-right .tag-row{justify-content:flex-end}.kpi-tag{display:inline-flex;align-items:center;gap:.45vmin;padding:.18vmin .6vmin;background:var(--surface-1);border-radius:var(--r-sm);box-shadow:var(--inner-shade);white-space:nowrap;line-height:1.15;position:relative;transition:transform var(--dur-fast) var(--ease-out)}.kpi-tag:before{content:"";width:.55vmin;height:.55vmin;min-width:5px;min-height:5px;border-radius:50%;background:var(--accent, var(--cyan));box-shadow:0 0 .5vmin var(--accent, var(--cyan))}.kpi-tag:hover{transform:translateY(-1px)}.kpi-tag em{font-style:normal;color:var(--muted);font-size:clamp(10px,1.05vmin,14px)}.kpi-tag b{color:var(--accent, var(--cyan));font-family:var(--font-num);font-size:clamp(13px,1.4vmin,19px);font-variant-numeric:tabular-nums;font-weight:700;text-shadow:0 0 .8vmin color-mix(in srgb,var(--accent, var(--cyan)) 55%,transparent)}.t-total{--accent: var(--cyan)}.t-draft{--accent: var(--status-draft)}.t-published{--accent: var(--status-published)}.t-changing{--accent: var(--status-changing)}.t-paused{--accent: var(--status-paused)}.t-due,.t-overdue{--accent: var(--danger)}.t-stock{--accent: #c084fc}.t-approved{--accent: var(--status-published)}.t-review{--accent: #c084fc}.t-plan{--accent: var(--status-changing)}.t-done{--accent: var(--status-active)}.t-week{--accent: var(--cyan)}.top-right{display:flex;flex-direction:row;align-items:center;justify-content:flex-end;gap:1.4vmin;padding-right:.4vmin;min-width:0}.quote-line{--quote-scale: 1;--quote-src-scale: 1;--quote-src-tracking: .12em;--quote-src-gap: .7em;flex:1;min-width:0;max-width:100%;padding:.6vmin 1.5vmin .6vmin 1.2vmin;background:linear-gradient(90deg,rgba(0,242,254,.06) 0%,transparent 100%);border-left:2px solid rgba(0,242,254,.3);border-radius:4px;transition:opacity .5s ease,transform .3s ease,background .3s ease,border-color .3s ease;cursor:default;position:relative;display:flex;align-items:center}.quote-line:hover{transform:translateY(-1px);background:linear-gradient(90deg,rgba(0,242,254,.1) 0%,transparent 100%);border-left-color:#00f2fe99}.quote-body{position:relative;z-index:1;width:100%;min-width:0;display:flex;align-items:center;text-align:justify;font-family:LXGW WenKai Culture,Microsoft YaHei,PingFang SC,sans-serif;font-size:calc(clamp(14px,1.5vmin,18px) * var(--quote-scale, 1));font-weight:400;letter-spacing:.08em;line-height:1.55;text-shadow:0 1px 2px rgba(0,0,0,.8)}.quote-line .quote-txt{color:#f8fafc;flex:1;min-width:0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden}.quote-line .quote-src{flex:0 1 auto;min-width:0;max-width:min(46%,8.2em);font-size:calc(.9em * var(--quote-src-scale, 1));color:var(--cyan);font-weight:700;letter-spacing:var(--quote-src-tracking, .12em);padding-right:var(--quote-src-gap, .7em);margin-right:var(--quote-src-gap, .7em);border-right:2px solid rgba(0,242,254,.4);white-space:normal;text-align:center;line-height:1.35;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;word-break:break-word;text-shadow:0 0 6px rgba(0,242,254,.4)}.quote-line.is-swap{opacity:0}@media(prefers-reduced-motion:reduce){.quote-line{transition:none}}.top-right-meta{display:flex;align-items:center;gap:.85vmin;flex-shrink:0}.time-block{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:.28vmin;line-height:1}.time-block .clock{color:#fff;font-size:clamp(16px,1.85vmin,24px);font-family:var(--font-num);letter-spacing:.08em;font-variant-numeric:tabular-nums;font-weight:700;text-shadow:0 0 8px rgba(0,242,254,.6)}.time-block .date-row{color:var(--cyan2);font-size:clamp(10px,1.05vmin,13px);font-family:var(--font-num);letter-spacing:.06em;font-variant-numeric:tabular-nums;font-weight:500}.time-block .date-row.is-alert{color:var(--danger, #f87171);font-weight:700}.fs-btn{display:inline-flex;align-items:center;justify-content:center;width:clamp(26px,2.6vmin,34px);height:clamp(26px,2.6vmin,34px);padding:0;border:1px solid rgba(77,232,255,.35);background:#4de8ff14;color:var(--cyan2);cursor:pointer;flex-shrink:0;transition:background .2s ease,border-color .2s ease}.fs-btn:hover{background:#4de8ff29;border-color:#4de8ff99}.fs-btn:active{transform:translateY(1px)}.fs-btn svg{width:1.1em;height:1.1em}.fs-btn .fs-exit,.fs-btn.is-fullscreen .fs-enter{display:none}.fs-btn.is-fullscreen .fs-exit{display:block}.fs-btn em{display:none}.top-left .kpi-tag{padding:.15vmin .42vmin}.top-left .kpi-tag b{font-size:clamp(12px,1.25vmin,16px)}.top-left .kpi-tag em{font-size:clamp(9px,.95vmin,12px)}.bottom-nav{position:relative;z-index:4;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;column-gap:clamp(8px,1.2vmin,16px);min-height:0;height:100%;padding:0 clamp(8px,1.2vmin,16px);border-radius:8px;border:1px solid rgba(0,242,254,.18);background:linear-gradient(180deg,#0a1628eb,#020814f5);box-shadow:inset 0 1px #00f2fe14,inset 0 -1px #00000059}.bottom-nav-side{display:flex;align-items:center;min-width:0}.bottom-nav-side.is-end{justify-content:flex-end}.bottom-nav-inner{display:flex;align-items:stretch;justify-content:center;gap:clamp(8px,1.2vmin,18px);height:100%;max-height:100%}.voice-nav-status{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:4px 10px;border-radius:999px;border:1px solid rgba(94,148,235,.28);background:#081224b8;color:var(--muted);font-size:clamp(10px,1.05vmin,13px);line-height:1.1;white-space:nowrap}.voice-nav-status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;background:#94a3b8d9;box-shadow:0 0 6px #94a3b859}.voice-nav-status-name{font-weight:700;letter-spacing:.08em;color:#c9daf8}.voice-nav-status-label{letter-spacing:.06em;overflow:hidden;text-overflow:ellipsis}.voice-nav-status.is-ready{border-color:#34d39966;color:#9ae6c4}.voice-nav-status.is-ready .voice-nav-status-dot{background:#34d399;box-shadow:0 0 8px #34d3998c}.voice-nav-status.is-loading{border-color:#fbbf2466;color:#f6d48a}.voice-nav-status.is-loading .voice-nav-status-dot{background:#fbbf24;box-shadow:0 0 8px #fbbf2480;animation:voice-nav-pulse 1.2s ease-in-out infinite}.voice-nav-status.is-error{border-color:#f8717173;color:#fca5a5}.voice-nav-status.is-error .voice-nav-status-dot{background:#f87171;box-shadow:0 0 8px #f8717180}.voice-nav-status.is-disabled .voice-nav-status-dot{background:#94a3b8b3}@keyframes voice-nav-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.55;transform:scale(.85)}}.bottom-nav-item{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;width:clamp(72px,9vmin,108px);min-height:0;height:100%;max-height:100%;padding:4px 8px 8px;border:0;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer;transition:transform var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out)}.bottom-nav-item:hover{transform:translateY(-2px);color:var(--text);background:#00f2fe0f}.bottom-nav-item.is-active{color:var(--text);background:linear-gradient(180deg,#1c7dff47,#34d39929)}.bottom-nav-icon{display:grid;place-items:center;width:clamp(18px,2vmin,22px);height:clamp(18px,2vmin,22px)}.bottom-nav-icon svg{width:100%;height:100%}.bottom-nav-label{font-size:clamp(11px,1.15vmin,14px);font-weight:700;letter-spacing:.12em;line-height:1.1}.bottom-nav-mark{position:absolute;left:18%;right:18%;bottom:3px;height:2px;border-radius:1px;background:transparent}.bottom-nav-item.is-active .bottom-nav-mark{background:linear-gradient(90deg,var(--blue),var(--cyan));box-shadow:0 0 6px #00f2fe73}@media(prefers-reduced-motion:reduce){.bottom-nav-item,.bottom-nav-item:hover{transition:none;transform:none}}.announce-view{min-height:0;min-width:0;height:100%;display:grid;grid-template-rows:auto 1fr auto;gap:.7vmin;border:1px solid rgba(0,242,254,.25);border-radius:8px;background:var(--surface-1);box-shadow:inset 0 0 20px #00000073;padding:.8vmin 1vmin;overflow:hidden}.announce-h{position:relative;display:grid;place-items:center;gap:.35vmin;padding:.15vmin 0 .65vmin;border-bottom:1px solid rgba(0,242,254,.22)}.announce-title{margin:0;font-size:clamp(22px,2.6vmin,36px);font-weight:800;letter-spacing:.1em;color:#e0f7ff;text-shadow:0 0 12px rgba(0,242,254,.4);max-width:90%;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.announce-meta{display:flex;flex-wrap:wrap;justify-content:center;gap:.45vmin .8vmin;color:var(--muted);font-size:clamp(10px,1.1vmin,14px);font-variant-numeric:tabular-nums}.announce-stage{position:relative;min-height:0;display:flex;align-items:center;justify-content:center;gap:1vmin;overflow:hidden;background:radial-gradient(ellipse at 50% 40%,rgba(0,242,254,.06),transparent 55%),linear-gradient(180deg,#02061759,#00000040);border:1px solid rgba(0,242,254,.12);border-radius:8px}.announce-stage.is-single .announce-page:last-child{display:none}.announce-page{max-width:100%;max-height:100%;object-fit:contain;background:#fff;border-radius:2px;box-shadow:0 0 0 1px #00f2fe33,0 1vmin 2.5vmin #0000008c}.announce-status{position:absolute;inset:0;display:grid;place-items:center;color:var(--cyan);font-size:clamp(13px,1.4vmin,18px);letter-spacing:.08em;background:#0206178c;z-index:2}.announce-status.is-error{color:var(--danger)}.announce-empty{height:100%;display:grid;place-content:center;text-align:center;gap:.6vmin;color:var(--muted)}.announce-empty h3{margin:0;color:var(--cyan);font-size:clamp(16px,1.8vmin,24px)}.announce-dots{display:flex;justify-content:center;gap:.45vmin;padding-top:.15vmin}.announce-dots i{width:.55vmin;height:.55vmin;min-width:6px;min-height:6px;border-radius:50%;background:#94a3b866}.announce-dots i.is-on{background:var(--cyan);box-shadow:0 0 .45vmin var(--cyan)}.board{display:grid;grid-template-columns:repeat(6,1fr);gap:.8%;min-height:0}.board .col[hidden]{display:none!important}.col{min-width:0;min-height:0;display:grid;grid-template-rows:auto 1fr;border-radius:var(--r-md);background:var(--surface-1);overflow:hidden;box-shadow:var(--inner-shade);position:relative}.col-h{display:flex;align-items:center;justify-content:space-between;padding:.7vmin 1vmin;position:relative;border-bottom:1px solid color-mix(in srgb,var(--col, var(--cyan)) 22%,transparent);background:color-mix(in srgb,var(--col, var(--cyan)) 7%,transparent)}.col-h:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--col, var(--cyan)),transparent 75%)}.col-h span{font-size:clamp(13px,1.45vmin,18px);color:var(--col, var(--cyan));letter-spacing:.1em;font-weight:700;line-height:1.2;text-shadow:0 0 .5vmin color-mix(in srgb,var(--col, var(--cyan)) 40%,transparent)}.badge{min-width:2.4vmin;height:2.4vmin;padding:0 .5vmin;display:grid;place-items:center;border-radius:4px;font-size:clamp(11px,1.25vmin,15px);font-family:var(--font-num);font-weight:700;background:color-mix(in srgb,var(--col, var(--cyan)) 30%,transparent);border:1px solid color-mix(in srgb,var(--col, var(--cyan)) 80%,transparent);color:#fff;box-shadow:0 0 8px color-mix(in srgb,var(--col, var(--cyan)) 25%,transparent)}.col-b{position:relative;overflow:hidden;padding:.8vmin;min-height:0;contain:layout paint;display:flex;flex-direction:column;gap:.9vmin}.col-pinned{flex-shrink:0;overflow:hidden;display:flex;flex-direction:column;gap:.9vmin}.col-scroll{flex:1 1 auto;min-height:0;overflow:hidden;position:relative}.track{display:flex;flex-direction:column;gap:.9vmin;will-change:transform;transform:translateZ(0);backface-visibility:hidden}.panel .track{gap:.15vmin}.track.is-scrolling{animation:scrollUp var(--scroll-dur, 28s) linear infinite}.track.is-paging{transition:transform .55s ease}.col-b:hover .track.is-scrolling,.panel .body:hover .track.is-scrolling{animation-play-state:paused}@keyframes scrollUp{0%{transform:translateZ(0)}to{transform:translate3d(0,var(--scroll-distance, -50%),0)}}.card{border-radius:var(--r-md);background:var(--surface-2);box-shadow:inset 0 0 10px #00000080,0 2px 6px #0000004d;padding:.8vmin .9vmin;flex-shrink:0;transition:transform .3s ease,box-shadow .3s ease;position:relative;overflow:hidden}.card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--col, var(--cyan));box-shadow:0 0 8px var(--col, var(--cyan))}.card:hover{transform:translateY(-2px);box-shadow:inset 0 0 15px color-mix(in srgb,var(--col, var(--cyan)) 15%,transparent),0 4px 12px #00000080}.card .code{display:flex;justify-content:space-between;color:var(--cyan2);font-size:clamp(9px,1.1vmin,13px);font-family:var(--font-num);letter-spacing:.04em;opacity:.8}.card .name{margin:.4vmin 0 .5vmin;font-size:clamp(13px,1.55vmin,18px);font-weight:600;line-height:1.3;color:#fff;display:flex;flex-wrap:wrap;align-items:center;gap:.35vmin .5vmin}.pipeline-badge{display:inline-flex;align-items:center;padding:.12vmin .45vmin;border-radius:4px;font-size:clamp(9px,1.05vmin,13px);font-weight:700;letter-spacing:.04em;border:1px solid color-mix(in srgb,var(--chip, var(--cyan)) 55%,transparent);background:color-mix(in srgb,var(--chip, var(--cyan)) 18%,transparent);color:var(--chip, var(--cyan2));white-space:nowrap}.chip-pipeline-design,.tag-pipeline.chip-pipeline-design{--chip: var(--status-published)}.chip-pipeline-assembly,.tag-pipeline.chip-pipeline-assembly{--chip: var(--status-pub-assembly)}.chip-pipeline-testing,.tag-pipeline.chip-pipeline-testing{--chip: var(--status-pub-testing)}.chip-pipeline-external,.tag-pipeline.chip-pipeline-external{--chip: var(--status-pub-external)}.chip-pipeline-draft{--chip: var(--status-draft)}.chip-pipeline-changing{--chip: var(--status-changing)}.chip-pipeline-paused{--chip: var(--status-paused)}.chip-pipeline-closed{--chip: var(--status-closed)}.tag.tag-pipeline{border-color:color-mix(in srgb,var(--chip, var(--cyan)) 55%,transparent);background:color-mix(in srgb,var(--chip, var(--cyan)) 16%,transparent);color:var(--chip, var(--cyan2))}.card .meta{display:flex;flex-wrap:wrap;align-items:center;gap:.35vmin;margin-bottom:.15vmin}.owner{display:inline-flex;align-items:center;gap:.3vmin;max-width:100%;padding:.15vmin .6vmin .15vmin .4vmin;border:1px solid rgba(0,242,254,.3);border-radius:4px;background:#00f2fe1a;color:#fff;font-size:clamp(10px,1.15vmin,14px);line-height:1.2;white-space:nowrap;box-shadow:inset 0 0 4px #00f2fe33;transition:filter .2s ease,border-color .2s ease,background-color .2s ease,box-shadow .2s ease,color .2s ease}.owner svg{flex-shrink:0;width:1.1em;height:1.1em;opacity:.95;color:var(--cyan)}.owner .who{font-weight:700;color:#fff;white-space:nowrap}.card.is-overdue .owner{border-color:#ef444466;background:#ef444426;color:#fff;box-shadow:inset 0 0 6px #ef44444d}.card.is-overdue .owner svg:not([style*=color]){color:var(--danger)}.card.is-overdue .owner .who{color:#fff}.dept-tag{display:inline-block;max-width:100%;padding:.15vmin .5vmin;border:1px solid rgba(148,163,184,.3);border-radius:4px;background:#94a3b81a;color:var(--text);font-size:clamp(8px,.9vmin,11px);line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bar{height:.4vmin;margin:.6vmin 0;background:#ffffff1a;overflow:hidden;border-radius:2px}.bar i{display:block;height:100%;position:relative;overflow:hidden;background:linear-gradient(90deg,var(--col, var(--cyan)),color-mix(in srgb,var(--col, var(--cyan)) 20%,#fff));box-shadow:0 0 6px var(--col, var(--cyan));border-radius:2px}.bar i:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 20%,rgba(255,255,255,.38) 50%,transparent 80%);transform:translate(-110%);animation:barSheen 4.2s var(--ease-in-out) infinite}@keyframes barSheen{0%{transform:translate(-110%)}55%,to{transform:translate(110%)}}@media(prefers-reduced-motion:reduce){.bar i:after{animation:none}}.foot{display:flex;justify-content:space-between;align-items:center;gap:.4vmin;color:var(--muted);font-size:clamp(8px,.9vmin,11px)}.card .tag{display:inline-block;padding:0 .45vmin;font-size:clamp(8px,.85vmin,10px);letter-spacing:.06em;border:1px solid color-mix(in srgb,var(--col) 60%,transparent);color:#fff;background:color-mix(in srgb,var(--col) 30%,transparent);border-radius:2px;flex-shrink:0}.card .foot-tags{display:inline-flex;align-items:center;gap:.3vmin;flex-shrink:0}.card.is-overdue{box-shadow:inset 0 0 1.5vmin color-mix(in srgb,var(--danger) 10%,transparent),0 0 1.2vmin color-mix(in srgb,var(--danger) 22%,transparent)}.card.is-overdue:after{background:linear-gradient(180deg,#f8717180,#f871711f 28%,#f871710f 62%,#f871713d)}.card.is-overdue:before{background:var(--danger);box-shadow:0 0 8px var(--danger)}.card.is-overdue .code{position:relative;padding-right:1.1vmin}.card.is-overdue .code:after{content:"";width:.7vmin;height:.7vmin;min-width:6px;min-height:6px;border-radius:50%;background:var(--danger);box-shadow:0 0 .8vmin var(--danger);animation:overduePulse 2s ease-in-out infinite;position:absolute;right:0;top:50%;margin-top:-.35vmin}.card .tag-overdue{--col: var(--danger);font-weight:700;box-shadow:0 0 8px var(--danger);animation:overduePulse 2s ease-in-out infinite}@keyframes overduePulse{0%,to{opacity:1}50%{opacity:.5}}.od-list{margin-top:.6vmin;padding-top:.5vmin;display:flex;flex-direction:column;gap:.35vmin}.od-list.od-overdue{border-top:1px dashed rgba(239,68,68,.3)}.od-list.od-active{border-top:1px dashed rgba(0,242,254,.2)}.od-row{display:grid;gap:.35vmin .45vmin;align-items:center;font-size:clamp(9px,1vmin,12px);line-height:1.25;padding:.2vmin 0}.od-row-a{grid-template-columns:minmax(0,1fr) auto auto}.od-overdue .od-title{color:#fca5a5;font-weight:500}.od-active .od-title{color:#e2e8f0}.od-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.od-who{display:inline-flex;align-items:center;gap:.2vmin;padding:.15vmin .4vmin;border:1px solid rgba(0,242,254,.3);border-radius:3px;background:#00f2fe1a;color:#fff;font-weight:600;font-size:clamp(8px,.9vmin,11px);line-height:1.15;white-space:nowrap}.od-who b{font-weight:inherit;white-space:nowrap}.od-who svg{flex-shrink:0;width:.95em;height:.95em;opacity:.9;color:var(--cyan)}.od-overdue .od-who{border-color:#ef444466;background:#ef444426;color:#fff}.od-overdue .od-who svg:not([style*=color]){color:var(--danger)}.od-days{flex-shrink:0;font-family:var(--font-num);font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap;justify-self:end}.od-overdue .od-days{color:var(--danger);text-shadow:0 0 4px rgba(239,68,68,.4)}.od-active .od-days{color:var(--cyan);font-weight:600}.od-more{font-size:clamp(8px,.9vmin,11px);margin-top:.2vmin;text-align:center}.od-overdue .od-more{color:#fca5a5cc}.od-active .od-more{color:#94a3b8cc}.od-empty{color:#94a3b899;font-size:clamp(8px,.9vmin,11px);text-align:center;padding:.5vmin 0}.c1{--col: var(--status-draft)}.c2{--col: var(--status-pub-testing)}.c3{--col: var(--status-published)}.c4{--col: var(--status-changing)}.c5{--col: var(--status-pub-assembly)}.c6{--col: var(--status-closed)}.c7{--col: var(--status-pub-external)}.board-wrap{min-height:0;min-width:0;display:grid;grid-template-rows:auto 1fr;gap:.7%;position:relative}.board-wrap:has(.dept-board){grid-template-rows:1fr}.dept-board{min-height:0;min-width:0;display:grid;grid-template-rows:auto 1fr;gap:.7%;position:relative}.dept-tabs{display:flex;align-items:center;gap:.55vmin;flex-wrap:wrap;min-width:0}.dept-tab-divider{width:1px;align-self:stretch;min-height:1.8em;margin:0 .35vmin;background:linear-gradient(180deg,transparent,rgba(0,242,254,.45) 18%,rgba(0,242,254,.45) 82%,transparent);flex:0 0 auto}.dept-tab{appearance:none;border:1px solid rgba(0,242,254,.28);border-radius:6px;background:#00f2fe0f;color:#cfefff;font-size:clamp(12px,1.35vmin,17px);font-weight:700;letter-spacing:.12em;padding:.55vmin 1.4vmin;cursor:pointer;transition:border-color .2s ease,background .2s ease,color .2s ease,box-shadow .2s ease}.dept-tab:hover{border-color:#00f2fe8c;background:#00f2fe1f}.dept-tab.is-on{color:#041018;background:linear-gradient(180deg,#67e8f9,#22d3ee);border-color:transparent;box-shadow:0 0 14px #22d3ee73}.dept-tab-meta{margin-left:auto;color:var(--muted);font-size:clamp(11px,1.2vmin,15px);letter-spacing:.04em}.dept-subtabs{display:flex;align-items:center;gap:.45vmin;flex-wrap:wrap;min-width:0;flex:0 1 auto}.dept-subtab{appearance:none;border:1px solid rgba(0,242,254,.28);border-radius:6px;background:#00f2fe0f;color:#cfefff;font-size:clamp(10px,1.1vmin,14px);font-weight:700;letter-spacing:.1em;padding:.35vmin 1vmin;cursor:pointer;transition:border-color .2s ease,background .2s ease,color .2s ease,box-shadow .2s ease,opacity .2s ease;opacity:.55}.dept-subtab:hover{border-color:#00f2fe8c;background:#00f2fe1f;opacity:.85}.dept-subtab.is-on{opacity:1;color:#041018;background:linear-gradient(180deg,#67e8f9,#22d3ee);border-color:transparent;box-shadow:0 0 10px #22d3ee66}.dept-board-empty{position:absolute;left:50%;top:58%;transform:translate(-50%,-50%);pointer-events:none;color:var(--muted);font-size:clamp(12px,1.3vmin,16px);letter-spacing:.06em;text-shadow:0 0 8px rgba(0,0,0,.5);z-index:2}.board-partial-error{position:absolute;inset:0;z-index:6;display:grid;place-items:center;background:#020713b8;color:var(--danger, #f87171);font-size:clamp(14px,1.6vmin,20px);font-weight:700;letter-spacing:.08em;pointer-events:none}.dist-bar{display:grid;grid-template-columns:1fr 1fr;gap:1.2%;min-height:0;padding:.6vmin .8vmin;border:1px solid rgba(0,242,254,.25);border-radius:var(--r-md);background:var(--surface-1);box-shadow:var(--inner-shade)}.dist-group{min-width:0;display:grid;grid-template-columns:auto 1fr;gap:.35vmin .8vmin;align-items:center}.dist-label{font-size:clamp(11px,1.2vmin,14px);color:var(--cyan);letter-spacing:.15em;font-weight:700;white-space:nowrap;text-shadow:0 0 6px rgba(0,242,254,.4)}.dist-stack{display:flex;gap:3px;height:clamp(20px,2.2vmin,28px);overflow:hidden;background:#ffffff0a;border-radius:4px;border:0;box-shadow:inset 0 0 8px #0009}.dist-seg{position:relative;min-width:2px;height:100%;border:0;display:grid;place-items:center;overflow:hidden;box-shadow:0 0 8px #0003}.dist-seg:before{display:none}.dist-seg span{max-width:96%;padding:0 .3vmin;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:clamp(10px,1.05vmin,13px);font-weight:700;color:#fff;line-height:1;letter-spacing:.02em;text-shadow:0 1px 2px rgba(0,0,0,.8)}.dist-legend{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:.25vmin .8vmin;font-size:clamp(9px,1vmin,12px);color:#f8fafce6}.dist-legend i{display:inline-block;width:.65vmin;height:.65vmin;min-width:8px;min-height:8px;margin-right:.3vmin;vertical-align:-1px;border-radius:2px;box-shadow:0 0 4px #fff3}.dist-legend b{color:#fff;font-family:var(--font-num);font-weight:700;font-variant-numeric:tabular-nums;margin-left:.2vmin}.board-error{position:absolute;inset:0;z-index:6;display:grid;place-items:center;background:#02070fc7;backdrop-filter:blur(2px)}.board-error[hidden]{display:none!important}.board-error-card{width:min(52%,42vmin);padding:2vmin 2.4vmin;border:1px solid rgba(248,113,113,.45);background:linear-gradient(180deg,#280c12eb,#030a16f2);box-shadow:inset 2px 0 0 var(--danger),0 0 2vmin #f871712e;text-align:center}.board-error-card h4{color:var(--danger);font-size:clamp(13px,1.5vmin,18px);letter-spacing:.1em;margin-bottom:.8vmin}.board-error-card p{color:var(--muted);font-size:clamp(10px,1.1vmin,13px);line-height:1.5}.board-error-card b{color:var(--text);font-variant-numeric:tabular-nums}.card.is-clickable,.owner.is-link,.od-who.is-link{cursor:pointer}.owner.is-link:hover,.od-who.is-link:hover{filter:brightness(1.15)}.screen[data-effects=off] .bar i:after,.screen[data-effects=off] .card.is-overdue .code:after,.screen[data-effects=off] .card .tag-overdue{animation:none}.card .flash-sheen{position:absolute;inset:0;background:linear-gradient(105deg,transparent 30%,color-mix(in srgb,var(--col, var(--cyan)) 45%,transparent) 50%,transparent 70%);transform:translate(-100%);animation:flashSweep .6s var(--ease-out) forwards;pointer-events:none}@keyframes flashSweep{to{transform:translate(100%)}}@media(prefers-reduced-motion:reduce){.card .flash-sheen{display:none}}.rail{min-height:0;display:grid;grid-template-rows:1fr 1fr 1.15fr 1.2fr;gap:2%}.main:has(.dept-board) .rail{grid-template-rows:1fr 1fr 1.2fr}.panel{min-height:0;overflow:hidden;border-radius:var(--r-md);background:var(--surface-1);box-shadow:var(--inner-shade);display:grid;grid-template-rows:auto 1fr;position:relative}.panel h3{display:flex;align-items:center;gap:.6vmin;padding:.75vmin 1.05vmin;font-size:var(--text-lg);color:var(--cyan);letter-spacing:.12em;font-weight:700;border-bottom:1px solid color-mix(in srgb,var(--cyan) 22%,transparent);background:color-mix(in srgb,var(--cyan) 6%,transparent);text-shadow:0 0 .5vmin color-mix(in srgb,var(--cyan) 40%,transparent)}.panel h3:before{content:"";width:.32vmin;min-width:3px;height:1em;border-radius:2px;background:var(--cyan);box-shadow:0 0 .6vmin var(--cyan)}.panel-range{margin-left:.45vmin;color:var(--muted);font-size:clamp(9px,1vmin,12px);font-family:var(--font-num);font-weight:500;letter-spacing:.04em;font-variant-numeric:tabular-nums}.panel .body{position:relative;padding:.6vmin .7vmin;overflow:hidden;min-height:0;contain:layout paint}.wr-body{display:grid;grid-template-rows:auto 1fr;gap:.8vmin;height:100%}.wr-dept-viewport{position:relative;overflow:hidden;min-height:0;contain:layout paint}.wr-summary{display:grid;grid-template-columns:1fr 1fr;gap:.6vmin;flex-shrink:0;margin-bottom:.2vmin}.wr-chip{display:flex;justify-content:space-between;align-items:baseline;padding:.45vmin .6vmin;border:1px solid rgba(77,232,255,.2);border-radius:var(--r-sm);background:var(--surface-2);font-size:clamp(9px,1vmin,12px);transition:transform .3s ease,border-color .3s ease,background .3s ease}.wr-chip:hover{transform:translateY(-1px)}.wr-chip.ok:hover{border-color:#10b98180;background:linear-gradient(145deg,#10b9811a,#0000004d)}.wr-chip.warn:hover{border-color:#f59e0b80;background:linear-gradient(145deg,#f59e0b1a,#0000004d)}.wr-chip.info:hover{border-color:#3b82f680;background:linear-gradient(145deg,#3b82f61a,#0000004d)}.wr-chip.alert:hover{border-color:#c084fc80;background:linear-gradient(145deg,#c084fc1a,#0000004d)}.wr-chip span{color:var(--muted)}.wr-chip b{font-family:var(--font-num);font-variant-numeric:tabular-nums;text-shadow:0 0 6px currentColor}.wr-chip.ok{border-color:#10b9814d}.wr-chip.ok b{color:var(--status-published)}.wr-chip.warn{border-color:#f59e0b4d}.wr-chip.warn b{color:var(--status-changing)}.wr-chip.info{border-color:#3b82f64d}.wr-chip.info b{color:var(--status-active)}.wr-chip.alert{border-color:#c084fc4d}.wr-chip.alert b{color:#c084fc}.dept{margin-bottom:0;padding:.32vmin .45vmin;border:1px solid rgba(255,255,255,.05);border-radius:var(--r-sm);background:var(--surface-2);flex-shrink:0;transition:border-color .2s ease,background .2s ease;box-shadow:inset 0 0 8px #00000026}.dept:hover{border-color:#4de8ff47;background:linear-gradient(145deg,#4de8ff0d,#00000047)}.dept.is-pending .row span:first-child:before{content:"";display:inline-block;width:.45vmin;height:.45vmin;margin-right:.4vmin;border-radius:50%;background:var(--status-changing);box-shadow:0 0 .5vmin var(--status-changing);vertical-align:middle}.dept .row{display:flex;justify-content:space-between;gap:.5vmin;font-size:clamp(10px,1.1vmin,14px);margin-bottom:.3vmin}.dept .row span:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#f8fafc;text-shadow:0 1px 2px rgba(0,0,0,.8)}.dept .row span:last-child{color:var(--cyan);font-variant-numeric:tabular-nums;flex-shrink:0;font-size:clamp(9px,1vmin,13px);font-weight:600;text-shadow:0 0 6px rgba(0,242,254,.4)}.dept .pg{height:.5vmin;background:#0000004d;box-shadow:inset 0 0 4px #00000080;border-radius:3px;display:flex;overflow:hidden;margin-top:.3vmin}.dept .pg i{display:block;height:100%}.dept .pg .seg-ok{background:linear-gradient(90deg,var(--status-published),color-mix(in srgb,var(--status-published) 60%,transparent));box-shadow:0 0 4px var(--status-published)}.dept .pg .seg-review{background:linear-gradient(90deg,#c084fc,color-mix(in srgb,#c084fc 60%,transparent));box-shadow:0 0 4px #c084fc}.dept .pg .seg-plan{background:linear-gradient(90deg,var(--status-changing),color-mix(in srgb,var(--status-changing) 60%,transparent));box-shadow:0 0 4px var(--status-changing)}.dept .pg .seg-done{background:linear-gradient(90deg,var(--status-active),color-mix(in srgb,var(--status-active) 60%,transparent));box-shadow:0 0 4px var(--status-active)}.list-item{display:grid;grid-template-columns:1fr auto;gap:.25vmin;padding:.5vmin 0;border-bottom:1px dashed rgba(77,232,255,.1);border-radius:var(--r-sm);background:var(--surface-2);font-size:clamp(9px,1.05vmin,12px);flex-shrink:0}.list-item small{color:var(--muted);grid-column:1 / -1;display:flex;flex-wrap:wrap;align-items:center;gap:.35vmin}.list-item .owner{padding:.08vmin .4vmin;font-size:clamp(8px,.85vmin,10px)}.list-item .owner .who{font-weight:600}.due-item{padding:.32vmin .45vmin;margin-bottom:0;border:1px solid rgba(77,232,255,.15);border-radius:var(--r-sm);background:var(--surface-2);flex-shrink:0;transition:border-color .2s ease,background .2s ease;box-shadow:inset 0 0 8px #00000026}.due-item.is-clickable{cursor:pointer}.due-item:hover{border-color:#4de8ff66;background:linear-gradient(145deg,#4de8ff14,#0000004d)}.due-main{display:grid;grid-template-columns:1fr auto;gap:.5vmin;align-items:start}.due-path{min-width:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:.15vmin .35vmin;line-height:1.3;font-size:clamp(11px,1.2vmin,15px)}.due-proj{color:#f8fafc;font-weight:600;letter-spacing:.02em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;text-shadow:0 1px 2px rgba(0,0,0,.8)}.due-sep{color:#4de8ff66;flex-shrink:0;letter-spacing:0;font-weight:400}.due-task{color:#e2e8f0;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;text-shadow:0 1px 2px rgba(0,0,0,.8)}.due-days{flex-shrink:0;font-size:clamp(11px,1.15vmin,15px);font-family:var(--font-num);font-variant-numeric:tabular-nums;white-space:nowrap;padding-top:.1vmin;text-shadow:0 0 6px currentColor;font-weight:700}.due-tags{display:flex;flex-wrap:wrap;align-items:center;gap:.28vmin;margin-top:.3vmin}.chip{display:inline-flex;align-items:center;padding:.15vmin .45vmin;border:1px solid color-mix(in srgb,var(--chip, var(--cyan)) 40%,transparent);background:linear-gradient(145deg,color-mix(in srgb,var(--chip, var(--cyan)) 12%,transparent),#0000001a);color:var(--chip, var(--cyan2));font-size:clamp(9px,1.05vmin,13px);line-height:1.2;white-space:nowrap;max-width:9em;overflow:hidden;text-overflow:ellipsis;border-radius:4px;box-shadow:inset 0 0 4px color-mix(in srgb,var(--chip, var(--cyan)) 10%,transparent);text-shadow:0 0 4px color-mix(in srgb,var(--chip, var(--cyan)) 40%,transparent)}.chip-owner{--chip: var(--cyan2);font-weight:600;gap:.25em}.chip-owner svg{flex-shrink:0;width:1em;height:1em;opacity:.95}.chip-todo{--chip: var(--muted)}.chip-progress{--chip: var(--status-active)}.chip-done{--chip: var(--status-published)}.chip-prio-high{--chip: var(--danger)}.chip-prio-medium{--chip: var(--warn)}.chip-prio-low{--chip: var(--status-closed)}.chip-stage{--chip: #a78bfa}.chip-material{--chip: #34d399}.chip-qty{--chip: var(--status-active)}.chip-ratio{--chip: var(--warn)}.chip-region{--chip: #93c5fd}.chip-std{--chip: var(--status-published)}.chip-nonstd{--chip: #fb923c}.danger{color:var(--danger)}.warn{color:var(--warn)}.ok{color:var(--status-published)}.panel-h{display:flex;align-items:center;justify-content:space-between;gap:.5vmin;padding:.7vmin 1vmin;border-bottom:1px solid color-mix(in srgb,var(--cyan) 30%,transparent);background:linear-gradient(90deg,color-mix(in srgb,var(--cyan) 20%,transparent),transparent 70%)}.panel-h h3{padding:0;border:0;background:none;font-size:clamp(12px,1.35vmin,16px);color:var(--cyan);letter-spacing:.15em;font-weight:700;text-shadow:0 0 6px color-mix(in srgb,var(--cyan) 50%,transparent)}.view-dots{display:inline-flex;align-items:center;gap:.35vmin;flex-shrink:0}.view-dots button{width:.7vmin;height:.7vmin;min-width:7px;min-height:7px;padding:0;border:0;border-radius:50%;background:#9eefff47;cursor:pointer}.view-dots button.is-active{background:var(--cyan);box-shadow:0 0 .45vmin var(--cyan)}.risk-views{position:relative;height:100%;min-height:0}.risk-view{position:absolute;inset:0;overflow:hidden;opacity:0;pointer-events:none;transition:opacity .35s ease;contain:layout paint}.risk-view.is-active{opacity:1;pointer-events:auto}.risk-view:not(.is-active) .track.is-scrolling{animation-play-state:paused}.risk-view .track{height:auto;min-height:100%}.overdue-item{padding:.32vmin .45vmin;margin-bottom:0;border:1px solid rgba(248,113,113,.25);border-radius:var(--r-sm);background:var(--surface-2);flex-shrink:0;transition:border-color .2s ease,background .2s ease;box-shadow:inset 0 0 8px #00000026}.overdue-item.is-clickable{cursor:pointer}.overdue-item:hover{border-color:#f8717180;background:linear-gradient(145deg,#f871711f,#0000004d)}.overdue-item .due-proj{color:#fecaca;text-shadow:0 0 6px rgba(248,113,113,.4)}.overdue-meta{display:flex;flex-wrap:wrap;gap:.28vmin;margin-top:.3vmin}.chip-owner.is-link{cursor:pointer}.chip-owner.is-link:hover{filter:brightness(1.15)}.panel .count-hint{font-size:clamp(10px,1.1vmin,14px);color:var(--muted);font-family:var(--font-num);font-weight:400;letter-spacing:.04em;margin-left:.35vmin}.attendance-panel .att-empty{color:var(--muted);font-size:clamp(11px,1.2vmin,15px);padding:.6vmin .2vmin;letter-spacing:.04em}.attendance-panel .att-legend{margin-left:auto;display:inline-flex;align-items:center;gap:.9vmin;letter-spacing:.05em;text-shadow:none;flex-shrink:0}.attendance-panel .att-legend-item{--att-c: var(--muted);display:inline-flex;align-items:center;gap:.35em;font-size:clamp(9px,1.05vmin,13px);font-weight:400;color:var(--muted);white-space:nowrap}.attendance-panel .att-legend-item[data-status=出差]{--att-c: var(--att-trip)}.attendance-panel .att-legend-item[data-status=请假]{--att-c: var(--att-leave)}.attendance-panel .att-legend-item[data-status=调休]{--att-c: var(--att-off)}.attendance-panel .att-legend-dot{width:.55em;height:.55em;border-radius:50%;background:var(--att-c);box-shadow:0 0 .4vmin color-mix(in srgb,var(--att-c) 55%,transparent);flex-shrink:0}.attendance-panel .att-legend-num{font-family:var(--font-num);font-weight:700;color:var(--att-c);margin-left:.1em}.attendance-panel .att-group{--att-c: var(--muted);border-radius:var(--r-md);background:color-mix(in srgb,var(--att-c) 5%,transparent);border:1px solid color-mix(in srgb,var(--att-c) 16%,transparent);padding:.5vmin .8vmin .6vmin}.attendance-panel .att-group[data-status=出差]{--att-c: var(--att-trip)}.attendance-panel .att-group[data-status=请假]{--att-c: var(--att-leave)}.attendance-panel .att-group[data-status=调休]{--att-c: var(--att-off)}.attendance-panel .att-group+.att-group{margin-top:.6vmin}.attendance-panel .att-group-head{display:flex;align-items:center;gap:.4em;color:var(--att-c);font-size:clamp(11px,1.15vmin,14px);font-weight:700;letter-spacing:.1em;margin-bottom:.4vmin}.attendance-panel .att-dot{width:.5em;height:.5em;border-radius:50%;background:var(--att-c);box-shadow:0 0 .5vmin color-mix(in srgb,var(--att-c) 60%,transparent);flex-shrink:0}.attendance-panel .att-group-count{margin-left:auto;font-size:.82em;font-weight:600;line-height:1.5;padding:0 .55em;border-radius:var(--r-pill);color:var(--att-c);background:color-mix(in srgb,var(--att-c) 13%,transparent);border:1px solid color-mix(in srgb,var(--att-c) 32%,transparent)}.attendance-panel .att-dept-list{display:flex;flex-direction:column;gap:.35vmin}.attendance-panel .att-dept-name{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:clamp(10px,1.15vmin,14px);font-weight:500;letter-spacing:.06em;margin-bottom:.25vmin}.attendance-panel .att-chips{display:flex;flex-wrap:wrap;gap:.35vmin}.attendance-panel .att-name{font-size:clamp(11px,1.15vmin,14px);font-weight:600;letter-spacing:.03em;white-space:nowrap;padding:.12em .6em;border-radius:var(--r-sm);color:#eef4fc;background:color-mix(in srgb,var(--att-c) 10%,rgba(2,6,23,.25));border:1px solid color-mix(in srgb,var(--att-c) 30%,transparent)}.attendance-panel .att-name.is-link{cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease}.attendance-panel .att-name.is-link:hover{border-color:color-mix(in srgb,var(--att-c) 65%,transparent);box-shadow:0 0 .6vmin color-mix(in srgb,var(--att-c) 30%,transparent)}.person-att-status{display:inline-flex;align-items:center;padding:.1em .45em;border-radius:4px;font-weight:700;letter-spacing:.04em}.person-att-status[data-status=在岗]{color:var(--att-onduty);background:color-mix(in srgb,var(--att-onduty) 12%,transparent);border:1px solid color-mix(in srgb,var(--att-onduty) 35%,transparent)}.person-att-status[data-status=出差]{color:var(--att-trip);background:color-mix(in srgb,var(--att-trip) 12%,transparent);border:1px solid color-mix(in srgb,var(--att-trip) 35%,transparent)}.person-att-status[data-status=请假]{color:var(--att-leave);background:color-mix(in srgb,var(--att-leave) 12%,transparent);border:1px solid color-mix(in srgb,var(--att-leave) 35%,transparent)}.person-att-status[data-status=调休]{color:var(--att-off);background:color-mix(in srgb,var(--att-off) 12%,transparent);border:1px solid color-mix(in srgb,var(--att-off) 35%,transparent)}.stock-panel h3{color:#6ee7b7;text-shadow:0 0 .5vmin rgba(52,211,153,.4);border-bottom-color:#34d39938;background:color-mix(in srgb,#34d399 6%,transparent)}.stock-panel h3:before{background:#34d399;box-shadow:0 0 .6vmin #34d39999}.stock-panel .body{padding:.75vmin .85vmin}.stock-panel .track{gap:.55vmin}.stock-item{padding:.55vmin .7vmin;border:1px solid rgba(52,211,153,.22);border-radius:var(--r-sm);background:var(--surface-2);box-shadow:inset 0 0 10px #0000002e;flex-shrink:0;transition:border-color .2s ease,background .2s ease}.stock-item:hover{border-color:#34d39973;background:linear-gradient(145deg,#34d3991f,#00000052)}.stock-main{display:grid;grid-template-columns:1fr auto;gap:.6vmin;align-items:start}.stock-idline{min-width:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:.25vmin .55vmin}.stock-code{font-size:clamp(13px,1.45vmin,18px);font-family:var(--font-num);font-weight:800;letter-spacing:.04em;color:#ecfdf5;text-shadow:0 1px 2px rgba(0,0,0,.75);font-variant-numeric:tabular-nums}.stock-due{font-size:clamp(10px,1.1vmin,14px);color:#a7f3d0d9;font-variant-numeric:tabular-nums}.stock-days{flex-shrink:0;font-size:clamp(13px,1.45vmin,18px);font-family:var(--font-num);font-weight:800;font-variant-numeric:tabular-nums;white-space:nowrap;text-shadow:0 0 8px currentColor;line-height:1.15}.stock-model{margin-top:.25vmin;font-size:clamp(12px,1.3vmin,16px);font-weight:600;color:#e2e8f0;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stock-tags{display:flex;flex-wrap:wrap;align-items:center;gap:.35vmin;margin-top:.4vmin}.stock-panel .chip{font-size:clamp(10px,1.1vmin,13px);padding:.2vmin .5vmin;max-width:12em}.cfg-overlay{position:absolute;inset:0;z-index:40;display:grid;place-items:center}.cfg-backdrop{position:absolute;inset:0;border:0;background:#0206179e;cursor:pointer}.cfg-panel{position:relative;z-index:1;width:min(94%,88vmin);max-height:min(88%,78vmin);overflow:hidden;display:flex;flex-direction:column;border-radius:var(--r-lg);background:var(--surface-3);box-shadow:0 2vmin 4vmin #000000a6,inset 0 0 2.5vmin #00f2fe0f;padding:1.4vmin 1.6vmin 1.5vmin}.cfg-panel:before{content:"";position:absolute;top:0;left:6%;right:6%;height:1px;background:linear-gradient(90deg,transparent,rgba(0,242,254,.55),transparent);pointer-events:none}.cfg-layout{display:grid;grid-template-columns:minmax(9vmin,12em) 1fr;gap:1.2vmin;min-height:0;flex:1;overflow:hidden}.cfg-nav{display:flex;flex-direction:column;gap:.6vmin;min-height:0;border-right:1px solid rgba(0,242,254,.15);padding-right:1vmin}.cfg-nav-list{display:flex;flex-direction:column;gap:.35vmin;flex:1;min-height:0;overflow:auto}.cfg-nav-item{text-align:left;border:1px solid transparent;border-radius:6px;padding:.55vmin .7vmin;background:transparent;color:#cbd5e1;font-size:clamp(11px,1.2vmin,15px);letter-spacing:.06em;cursor:pointer}.cfg-nav-item:hover{background:#00f2fe0f;border-color:#00f2fe2e}.cfg-nav-item.is-on{background:#00f2fe1f;border-color:#00f2fe66;color:#e0faff;font-weight:600}.cfg-nav-foot{margin-top:auto;display:flex;flex-direction:column;gap:.45vmin}.cfg-nav-pull{border:1px solid rgba(0,242,254,.35);border-radius:6px;padding:.55vmin .7vmin;background:#00f2fe1a;color:var(--cyan);font-size:clamp(11px,1.15vmin,14px);cursor:pointer}.cfg-nav-pull:hover:not(:disabled){background:#00f2fe33}.cfg-nav-pull:disabled{opacity:.6;cursor:wait}.cfg-sync-note{font-size:clamp(10px,1.05vmin,13px);line-height:1.4;padding:0 .1vmin}.cfg-sync-note.is-ok{color:#6ee7b7}.cfg-sync-note.is-err{color:#ff97a8}.cfg-nav-logout{border:1px solid rgba(240,82,105,.35);border-radius:6px;padding:.55vmin .7vmin;background:#be31441f;color:#ff97a8;font-size:clamp(11px,1.15vmin,14px);cursor:pointer}.cfg-nav-logout:hover{background:#be314438}.cfg-sync-mask{position:absolute;inset:0;z-index:5;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.9vmin;border-radius:inherit;background:#020617b8;backdrop-filter:blur(2px)}.cfg-sync-mask b{color:var(--text);font-size:clamp(13px,1.5vmin,18px);letter-spacing:.08em}.cfg-sync-mask small{color:var(--muted);font-size:clamp(11px,1.15vmin,14px)}.cfg-sync-spinner{width:3.4vmin;height:3.4vmin;border-radius:50%;border:.34vmin solid rgba(0,242,254,.18);border-top-color:var(--cyan);animation:cfg-sync-spin .9s linear infinite;box-shadow:0 0 1.2vmin #00f2fe40}@keyframes cfg-sync-spin{to{transform:rotate(360deg)}}.cfg-main{min-height:0;overflow:auto;padding-right:.2vmin}.cfg-main:has(.admin-panel){display:flex;flex-direction:column;overflow:hidden}.cfg-h{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:.8vmin;margin-bottom:1.2vmin;padding-bottom:.8vmin;border-bottom:1px solid rgba(0,242,254,.2)}.cfg-h h3{margin:0;font-size:clamp(14px,1.6vmin,20px);color:var(--cyan);letter-spacing:.12em}.cfg-hint{color:var(--muted);font-size:clamp(10px,1.05vmin,13px)}.cfg-close{width:2.4vmin;height:2.4vmin;min-width:28px;min-height:28px;border:1px solid rgba(0,242,254,.3);border-radius:6px;background:#00f2fe14;color:var(--text);font-size:1.4em;line-height:1;cursor:pointer}.cfg-sec{margin-bottom:1.3vmin}.cfg-sec h4{margin:0 0 .7vmin;font-size:clamp(12px,1.25vmin,15px);color:#e2e8f0;letter-spacing:.08em}.cfg-cols{display:grid;grid-template-columns:repeat(auto-fill,minmax(10vmin,1fr));gap:.55vmin}.cfg-check{display:flex;align-items:center;gap:.45vmin;padding:.45vmin .6vmin;border:1px solid rgba(255,255,255,.08);border-radius:6px;background:#ffffff08;font-size:clamp(11px,1.2vmin,15px);cursor:pointer;user-select:none}.cfg-check:has(input:checked){border-color:#00f2fe66;background:#00f2fe14}.cfg-check input{accent-color:var(--cyan)}.cfg-check-block{margin-top:.7vmin;width:fit-content;max-width:100%}.cfg-modes{display:grid;grid-template-columns:1fr 1fr;gap:.7vmin;margin-bottom:.9vmin}.cfg-modes.cols-3{grid-template-columns:repeat(3,1fr)}.cfg-mode{display:grid;gap:.2vmin;padding:.7vmin .8vmin;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:#ffffff08;cursor:pointer}.cfg-mode input{position:absolute;opacity:0;pointer-events:none}.cfg-mode b{font-size:clamp(12px,1.3vmin,16px);color:#f8fafc}.cfg-mode small{color:var(--muted);font-size:clamp(10px,1.05vmin,13px)}.cfg-mode.is-on{border-color:#00f2fe73;background:linear-gradient(145deg,#00f2fe1f,#0003);box-shadow:inset 0 0 1vmin #00f2fe1f}.cfg-range{display:grid;gap:.35vmin;font-size:clamp(11px,1.2vmin,15px);color:#e2e8f0}.cfg-range span{display:flex;justify-content:space-between;align-items:baseline}.cfg-range em{font-style:normal;color:var(--cyan);font-variant-numeric:tabular-nums;font-weight:700}.cfg-range input[type=range]{width:100%;accent-color:var(--cyan)}.cfg-range input[type=range]:disabled{cursor:not-allowed;opacity:.42}.cfg-range-ends{display:flex;justify-content:space-between;color:var(--muted);font-size:clamp(9px,1vmin,12px)}.cfg-actions{display:flex;justify-content:flex-end;gap:.7vmin;margin-top:.4vmin;padding-top:.9vmin;border-top:1px solid rgba(0,242,254,.15)}.cfg-btn{min-width:8vmin;padding:.55vmin 1.1vmin;border:1px solid rgba(0,242,254,.45);border-radius:6px;background:linear-gradient(145deg,#00f2fe33,#1c7dff26);color:#fff;font-size:clamp(11px,1.2vmin,15px);font-weight:600;cursor:pointer}.cfg-btn.ghost{border-color:#94a3b859;background:#94a3b814;color:#cbd5e1}.cfg-tree{max-height:min(42vh,360px);overflow:auto;margin:.4rem 0 .8rem;padding:.5rem .6rem;border:1px solid rgba(0,242,254,.18);border-radius:8px;background:#00142059}.cfg-tree-row{display:flex;align-items:center;gap:.35rem;min-height:1.9em}.cfg-tree-caret,.cfg-tree-caret-spacer{width:1.1em;height:1.1em;flex:0 0 auto}.cfg-tree-caret{appearance:none;border:none;background:transparent;color:var(--cyan);cursor:pointer;position:relative}.cfg-tree-caret:before{content:"▸";font-size:.85em;line-height:1}.cfg-tree-caret.is-open:before{content:"▾"}.cfg-tree-check{display:inline-flex;align-items:center;gap:.45rem;color:#d7f7ff;font-size:.92rem;cursor:pointer}.cfg-tree-check input{accent-color:var(--cyan)}.cfg-btn-inline{margin-top:.35rem}.cfg-note-warn{color:#fbbf24}.cfg-note{color:var(--muted);font-size:clamp(10px,1.05vmin,13px);margin:0 0 .55vmin;line-height:1.45}.admin-panel{width:100%;min-height:0;flex:1;color:#dce8ff;display:flex;flex-direction:column;gap:1.1vmin}.admin-panel.is-embedded{padding:0;border:none;background:transparent;max-height:none}.admin-sec h4{margin:0 0 .55vmin;font-size:clamp(12px,1.25vmin,15px);color:#e2e8f0;letter-spacing:.08em;font-weight:600}.admin-sec h4 em{margin-left:.55em;font-style:normal;font-weight:500;color:#67e8f9;letter-spacing:.04em}.admin-sec-note{margin:0 0 .75vmin;color:#7e93bd;font-size:clamp(11px,1.1vmin,13px);line-height:1.45}.admin-create{display:grid;grid-template-columns:1fr 1fr auto;gap:.7vmin .8vmin;align-items:end}.admin-field{display:flex;flex-direction:column;gap:.3vmin;min-width:0}.admin-field>span{color:#8aa0c4;font-size:11px;letter-spacing:.06em}.admin-field-tree{grid-column:1 / -1;align-self:stretch}.admin-field input{width:100%;box-sizing:border-box;padding:.55vmin .75vmin;border-radius:6px;border:1px solid rgba(0,242,254,.22);background:#060c18e6;color:#eaf2ff;font-size:clamp(12px,1.15vmin,14px)}.admin-field input:focus{outline:none;border-color:#00f2fe8c}.admin-field-action{justify-content:flex-end}.admin-tree-select{display:flex;flex-direction:column;gap:.4vmin;min-width:0}.admin-tree-selected{font-size:12px;color:#9fb4d6}.admin-tree-selected b{color:#67e8f9;font-weight:600}.admin-tree-selected .is-muted{color:#5c6b8a}.admin-tree{max-height:min(28vh,220px);overflow:auto;padding:.45vmin .55vmin;border:1px solid rgba(0,242,254,.18);border-radius:8px;background:#00142059}.admin-tree-row{display:flex;align-items:center;gap:.3rem;min-height:1.85em;border-radius:4px}.admin-tree-row.is-on{background:#00f2fe1f}.admin-tree-pick{appearance:none;border:none;background:transparent;color:#d7f7ff;font-size:clamp(12px,1.15vmin,14px);text-align:left;padding:.2vmin .4vmin;border-radius:4px;cursor:pointer;min-width:0}.admin-tree-pick:hover{color:#fff;background:#00f2fe14}.admin-tree-row.is-on .admin-tree-pick{color:#e0faff;font-weight:600}.admin-tree-pick:disabled{opacity:.45;cursor:not-allowed}.admin-create-btn{appearance:none;border:none;border-radius:6px;padding:.55vmin 1.2vmin;background:linear-gradient(180deg,#22d3ee,#0891b2);color:#041018;font-size:clamp(12px,1.15vmin,14px);font-weight:700;letter-spacing:.12em;cursor:pointer}.admin-create-btn:hover{filter:brightness(1.06)}.admin-create-btn:disabled{opacity:.45;cursor:not-allowed;filter:none}.admin-error{margin-top:.65vmin;padding:.45vmin .7vmin;border-radius:6px;border:1px solid rgba(240,82,105,.4);background:#be314424;color:#ff97a8;font-size:12px}.admin-sec-list{flex:1;min-height:0;display:flex;flex-direction:column}.admin-list{flex:1;min-height:0;overflow:auto;display:flex;flex-direction:column;gap:.55vmin;padding-right:.15vmin}.admin-list-empty{padding:1.4vmin;text-align:center;color:#5c6b8a;font-size:13px;border:1px dashed rgba(0,242,254,.18);border-radius:8px}.admin-card{display:grid;grid-template-columns:1fr auto;gap:.7vmin 1vmin;align-items:center;padding:.75vmin .9vmin;border-radius:8px;border:1px solid rgba(0,242,254,.16);background:#00142059}.admin-card.is-disabled{opacity:.72;border-color:#5e94eb1f;background:#080c1666}.admin-card-main{min-width:0;display:flex;flex-direction:column;gap:.25vmin}.admin-card-head{display:flex;align-items:center;gap:.55vmin;min-width:0}.admin-card-name{font-size:clamp(13px,1.3vmin,16px);color:#f1f5f9;font-weight:700;letter-spacing:.04em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-badge{flex-shrink:0;padding:.1vmin .55vmin;border-radius:4px;font-size:11px;letter-spacing:.06em;font-weight:600}.admin-badge.is-on{color:#041018;background:#22d3eed9}.admin-badge.is-off{color:#94a3b8;background:#64748b47}.admin-card-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.4vmin;color:#9fb4d6;font-size:clamp(11px,1.1vmin,13px)}.admin-card-meta i{font-style:normal;color:#5c6b8a}.admin-card-seen{color:#5c6b8a;font-size:11px;letter-spacing:.02em}.admin-card-actions{display:flex;flex-direction:column;gap:.35vmin;flex-shrink:0}.admin-action{appearance:none;border:1px solid rgba(0,242,254,.28);border-radius:6px;background:#00f2fe14;color:#cfefff;padding:.3vmin .75vmin;font-size:12px;letter-spacing:.06em;cursor:pointer;white-space:nowrap}.admin-action:hover{border-color:#00f2fe80;background:#00f2fe24}.admin-action.is-danger{border-color:#f0526959;background:#be31441f;color:#ff97a8}.admin-action.is-danger:hover{background:#be314438}.admin-action:disabled{opacity:.45;cursor:not-allowed}.admin-missing{padding:1px 8px;border-radius:4px;background:#be314433;color:#ff97a8;font-size:11px}.modal-overlay{position:absolute;inset:0;z-index:40;display:grid;place-items:center;padding:2.2%;background:#02061799;backdrop-filter:blur(8px);opacity:0;pointer-events:none}.modal-overlay.open{opacity:1;pointer-events:auto}.modal-panel{width:min(94%,1280px);max-height:90%;display:grid;grid-template-rows:auto 1fr;overflow:hidden;border-radius:var(--r-lg);background:var(--surface-3);box-shadow:0 4vmin 8vmin #000c,inset 0 0 20px #00f2fe1a,0 0 20px #00f2fe33;position:relative}.modal-panel:before{content:"";position:absolute;top:0;left:6%;right:6%;height:1px;background:linear-gradient(90deg,transparent,rgba(0,242,254,.55),transparent);pointer-events:none}.modal-panel.wide{width:min(97%,1420px)}.modal-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1vmin;padding:1.5vmin 2vmin 1.2vmin;border-bottom:1px solid rgba(0,242,254,.2);background:linear-gradient(90deg,rgba(0,242,254,.15),transparent 60%)}.modal-head>div:first-child{flex:1;min-width:0}.modal-head h2{font-size:var(--text-xl);font-weight:800;line-height:1.3;letter-spacing:.06em;color:#fff;text-shadow:0 0 8px rgba(0,242,254,.5);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modal-head .codes{display:flex;flex-wrap:wrap;gap:.7vmin;margin-top:.5vmin;font-size:clamp(13px,1.45vmin,18px);color:var(--cyan2)}.modal-tags{display:flex;flex-wrap:wrap;gap:.6vmin;margin-top:.8vmin}.mtag{font-size:clamp(12px,1.3vmin,16px);padding:.3vmin .8vmin;border:1px solid rgba(0,242,254,.4);border-radius:4px;background:#00f2fe1a;color:#fff;font-weight:600;box-shadow:inset 0 0 6px #00f2fe33}.mtag.muted{color:var(--muted);border-color:#94a3b866;background:#94a3b81a;box-shadow:none}.mtag.od{color:#fecaca;border-color:#f871718c;background:#ef44442e;box-shadow:inset 0 0 6px #ef444440}.project-group-body{padding-top:1vmin}.project-group-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.2vmin}.project-group-card{display:flex;flex-direction:column;gap:.8vmin;text-align:left;padding:1.2vmin 1.4vmin;border:1px solid rgba(0,242,254,.28);border-radius:10px;background:linear-gradient(160deg,#081c30eb,#041020e0);color:inherit;cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease,transform .15s ease}.project-group-card:hover{border-color:#00f2feb3;box-shadow:0 0 18px #00f2fe2e;transform:translateY(-1px)}.project-group-card-top{display:flex;gap:.8vmin;align-items:flex-start}.project-group-idx{flex-shrink:0;width:2em;height:2em;display:grid;place-items:center;border-radius:999px;border:1px solid rgba(0,242,254,.45);background:#00f2fe1f;color:var(--cyan2);font-weight:700;font-size:13px}.project-group-title-wrap{min-width:0;display:flex;flex-direction:column;gap:.3vmin}.project-group-title-wrap strong{font-size:clamp(14px,1.55vmin,18px);font-weight:700;line-height:1.3}.project-group-progress{position:relative;height:8px;margin-top:.2vmin;border-radius:999px;background:#94a3b82e;overflow:hidden}.project-group-progress i{display:block;height:100%;background:linear-gradient(90deg,var(--cyan),var(--cyan2));border-radius:inherit}.project-group-progress b{position:absolute;right:6px;top:50%;transform:translateY(-50%);font-size:10px;font-family:var(--font-num);color:#e2e8f0;text-shadow:0 0 4px rgba(0,0,0,.8)}.modal-close{width:3.2vmin;height:3.2vmin;flex-shrink:0;border:1px solid rgba(0,242,254,.3);border-radius:6px;background:#00f2fe0d;color:var(--cyan2);cursor:pointer;font-size:2.2vmin;line-height:1;transition:color .2s ease,border-color .2s ease,background .2s ease,box-shadow .2s ease,transform .2s ease;display:grid;place-items:center}.modal-close:hover{color:#fff;border-color:var(--cyan);background:#00f2fe33;box-shadow:0 0 10px #00f2fe66;transform:rotate(90deg)}.modal-body{min-height:0;overflow:auto;padding:1.5vmin 1.8vmin 1.8vmin}.modal-a{display:grid;gap:1.5vmin;min-height:42vmin}.modal-a.project-a{grid-template-columns:20% 1fr 17%}.modal-a.person-a{grid-template-columns:1.15fr .95fr}.modal-pane{min-width:0;min-height:0;overflow:auto;border:1px solid rgba(0,242,254,.15);border-radius:8px;background:#0f172a66;padding:1.2vmin 1.5vmin;box-shadow:inset 0 0 15px #0000004d}.modal-pane h4{display:flex;justify-content:space-between;align-items:baseline;font-size:clamp(15px,1.65vmin,22px);letter-spacing:.1em;color:var(--cyan);margin-bottom:.8vmin;font-weight:700;text-shadow:0 0 6px rgba(0,242,254,.4)}.modal-pane h4 span{color:var(--muted);font-weight:400;letter-spacing:0;font-size:.92em}.modal-pane h4.mt{margin-top:1.1vmin}.modal-pane h4.sub-h{margin-top:.9vmin;margin-bottom:.45vmin;color:var(--cyan2);letter-spacing:.04em;font-size:clamp(13px,1.45vmin,18px)}.modal-pane h4.sub-h.amber{color:var(--amber)}.meta-grid{display:grid;gap:.55vmin;font-size:clamp(14px,1.55vmin,20px)}.meta-grid .row{display:grid;grid-template-columns:3.6em 1fr;gap:.45vmin}.meta-grid .k{color:var(--muted)}.modal-bar{height:.6vmin;margin-top:1.2vmin;background:#ffffff1a;overflow:hidden;border-radius:3px}.modal-bar>i{display:block;height:100%;background:linear-gradient(90deg,var(--blue),var(--cyan));box-shadow:0 0 8px var(--cyan);border-radius:3px}.modal-table{width:100%;border-collapse:collapse;font-size:clamp(14px,1.55vmin,20px)}.modal-table th{text-align:left;color:var(--cyan2);font-weight:600;font-size:clamp(12px,1.3vmin,16px);letter-spacing:.08em;border-bottom:1px solid rgba(0,242,254,.3);padding:.6vmin .5vmin;white-space:nowrap}.modal-table td{padding:.6vmin .5vmin;border-bottom:1px solid rgba(255,255,255,.06);vertical-align:top;line-height:1.4;transition:background .2s ease}.modal-table tr:hover td{background:#00f2fe14}.modal-pane .chip{font-size:clamp(12px,1.25vmin,15px);padding:.2vmin .6vmin;max-width:none;border-radius:4px}.modal-table .mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.92em;white-space:nowrap}.chip-doc{color:#93c5fd;border-color:#3b82f659;background:#3b82f61f}.link-person,.person-name{display:inline-flex;align-items:center;gap:.35em;border:0;background:transparent;padding:0;color:inherit;font:inherit;line-height:1.2;vertical-align:middle}.link-person{color:var(--cyan);cursor:pointer;font-weight:600;transition:color .2s ease,text-shadow .2s ease}.link-person:hover{text-decoration:underline;text-shadow:0 0 6px rgba(0,242,254,.5)}.link-person svg,.person-name svg{flex-shrink:0;width:1em;height:1em;opacity:.95}.link-person svg{color:var(--cyan)}.kpi-row{display:flex;flex-wrap:wrap;gap:.8vmin;margin-bottom:.8vmin}.kpi{min-width:6em;padding:.6vmin .8vmin;border:1px solid rgba(0,242,254,.2);border-radius:6px;background:#0f172a99;box-shadow:inset 0 0 10px #0006;transition:border-color .3s ease,box-shadow .3s ease,transform .3s ease}.kpi:hover{border-color:#00f2fe80;box-shadow:inset 0 0 15px #00f2fe1a,0 2px 8px #0006;transform:translateY(-2px)}.kpi i{display:block;font-style:normal;font-size:clamp(12px,1.25vmin,15px);color:var(--muted);margin-bottom:.2vmin}.kpi b{font-size:clamp(18px,2.2vmin,28px);color:#fff;font-variant-numeric:tabular-nums;font-family:var(--font-num);font-weight:800;text-shadow:0 0 8px rgba(0,242,254,.6)}.kpi b.tiny-b{font-size:clamp(13px,1.4vmin,17px)}.people-row{display:flex;justify-content:space-between;font-size:clamp(14px,1.55vmin,20px);padding:.35vmin 0}.proj-block{margin-bottom:.9vmin}.proj-h{font-size:clamp(15px,1.65vmin,21px);font-weight:650;margin-bottom:.4vmin;display:flex;flex-wrap:wrap;gap:.5vmin;align-items:baseline}.proj-h em{font-style:normal;font-size:clamp(12px,1.3vmin,16px);color:var(--muted);font-weight:400}.modal-body .empty{color:var(--muted);font-size:clamp(14px,1.55vmin,20px);padding:.7vmin .2vmin}.modal-body .muted{color:var(--muted)}.modal-body .tiny{font-size:clamp(12px,1.25vmin,15px);margin-top:.3vmin}.modal-body .mb{margin-bottom:.35vmin}.modal-body .od{color:var(--danger)}.generated-modal-body{position:relative;min-height:58vmin;padding-top:.4vmin}.generated-frame{width:100%;min-height:58vmin;border:0;background:transparent}.generated-frame.is-loading{position:absolute;inset:0;opacity:0;pointer-events:none}.generated-panel-chrome{display:grid;grid-template-rows:auto 1fr;min-height:0;max-height:inherit;border-radius:8px;overflow:hidden;background:#0a1828}.modal-overlay:has(.generated-panel-chrome.is-maximized){padding:1%;align-items:stretch}.modal-overlay:has(.generated-panel-chrome.is-maximized) .modal-panel{width:min(99%,100%);max-height:98%;height:98%;border-radius:8px}.generated-panel-head{background:#0b1f33;border-bottom:1px solid rgba(148,163,184,.28);align-items:center}.generated-panel-head h2{text-shadow:none}.generated-panel-asof{margin-top:.2vmin}.generated-panel-tools{display:flex;align-items:center;gap:.4vmin;flex-shrink:0}.generated-panel-tool{width:36px;height:36px;min-width:36px;min-height:36px;display:inline-grid;place-items:center;border:1px solid rgba(148,163,184,.35);border-radius:8px;background:#10263a;color:#e2e8f0;cursor:pointer;padding:0}.generated-panel-tool:hover:not(:disabled){border-color:#00f2fe73;color:#fff}.generated-panel-history{position:relative}.generated-panel-history-menu{position:absolute;top:calc(100% + 6px);right:0;z-index:3;margin:0;padding:6px;list-style:none;min-width:180px;border:1px solid rgba(148,163,184,.35);border-radius:10px;background:#0f2436;box-shadow:0 10px 24px #02081759}.generated-panel-history-item{display:block;width:100%;text-align:left;border:0;background:transparent;color:#e2e8f0;padding:8px 10px;border-radius:8px;cursor:pointer}.generated-panel-history-item:hover,.generated-panel-history-item.is-current{background:#38bdf81f}.generated-panel-tool:disabled{opacity:.45;cursor:not-allowed}.generated-panel-body{min-height:0;overflow:hidden;padding:0;background:#0a1828}.generated-panel-frame-body{min-height:58vmin;height:100%}.modal-overlay:has(.generated-panel-chrome.is-maximized) .generated-frame,.modal-overlay:has(.generated-panel-chrome.is-maximized) .generated-panel-frame-body{min-height:calc(98vh - 7.5vmin)}.analysis-modal-head{background:#0b1f33;border-bottom:1px solid rgba(148,163,184,.28)}.analysis-modal-head h2{text-shadow:none}.analysis-modal-body{overflow:auto;min-height:42vmin;max-height:calc(90vh - 8vmin);padding:1.4vmin 2vmin 2vmin;background:#0a1828}.analysis-document{display:flex;flex-direction:column;gap:1.6vmin;color:var(--text)}.analysis-section h3{margin:0 0 .7vmin;font-size:clamp(13px,1.4vmin,17px);font-weight:700;letter-spacing:.04em;color:#e2e8f0eb}.analysis-conclusion p{margin:0;font-size:clamp(15px,1.7vmin,21px);line-height:1.55;font-weight:600;color:#f8fafc}.analysis-metric-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.9vmin;margin:0}.analysis-metric{margin:0;padding:1vmin 1.1vmin;border:1px solid rgba(148,163,184,.28);border-radius:8px;background:#10263a}.analysis-metric dt{margin:0 0 .35vmin;font-size:clamp(12px,1.25vmin,15px);color:#94a3b8f2;font-weight:550}.analysis-metric dd{margin:0;display:flex;flex-direction:column;gap:.2vmin}.analysis-metric-value{font-size:clamp(18px,2.2vmin,28px);font-weight:800;font-variant-numeric:tabular-nums;font-family:var(--font-num);color:#fff;line-height:1.15}.analysis-metric-caption{font-size:clamp(11px,1.15vmin,14px);color:#94a3b8e6}.analysis-metric.tone-neutral .analysis-metric-value{color:#e2e8f0}.analysis-metric.tone-positive .analysis-metric-value{color:#4ade80}.analysis-metric.tone-warning .analysis-metric-value{color:#fbbf24}.analysis-metric.tone-danger .analysis-metric-value{color:#f87171}.analysis-finding-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.9vmin}.analysis-finding{padding:.9vmin 1.1vmin;border:1px solid rgba(148,163,184,.22);border-radius:8px;background:#0f2234}.analysis-finding h4{margin:0 0 .35vmin;font-size:clamp(14px,1.5vmin,18px);font-weight:700;color:#f1f5f9}.analysis-finding p{margin:0;font-size:clamp(13px,1.4vmin,17px);line-height:1.5;color:#e2e8f0eb}.analysis-evidence{margin:.55vmin 0 0;padding-left:1.2em;color:#94a3b8f2;font-size:clamp(12px,1.25vmin,15px)}.analysis-table-scroll{overflow-x:auto;border:1px solid rgba(148,163,184,.24);border-radius:8px;background:#0f2234}.analysis-table{width:100%;border-collapse:collapse;min-width:520px;font-size:clamp(12px,1.3vmin,16px)}.analysis-table th,.analysis-table td{padding:.7vmin 1vmin;border-bottom:1px solid rgba(148,163,184,.18);text-align:left;white-space:nowrap}.analysis-table th{color:#94a3b8f2;font-weight:650;background:#12283c}.analysis-table td{color:#e2e8f0}.analysis-notes ul{margin:0;padding-left:1.2em;color:#94a3b8f2;font-size:clamp(12px,1.3vmin,16px);line-height:1.5}@media(max-width:900px){.analysis-metric-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.analysis-table-scroll{overflow-x:auto}}.auto-close-progress{position:relative;display:inline-grid;flex:0 0 auto;overflow:visible}.auto-close-progress>button{grid-area:1 / 1}.auto-close-progress__svg{position:absolute;inset:-2px;width:calc(100% + 4px);height:calc(100% + 4px);overflow:visible;pointer-events:none}.auto-close-progress__track,.auto-close-progress__ring{fill:none;stroke-width:2;vector-effect:non-scaling-stroke}.auto-close-progress__track{stroke:#67e8f92e;stroke-dasharray:none}.auto-close-progress__ring{stroke:var(--cyan2);stroke-linecap:round;stroke-dasharray:var(--auto-close-start-length) 100;stroke-dashoffset:var(--auto-close-origin-offset);animation:auto-close-progress-drain var(--auto-close-remaining-ms) linear forwards,auto-close-progress-warn 1ms linear var(--auto-close-warning-delay-ms) forwards,auto-close-progress-renew .15s ease-out}@keyframes auto-close-progress-drain{to{stroke-dasharray:0 100}}@keyframes auto-close-progress-warn{to{stroke:var(--warn)}}@keyframes auto-close-progress-renew{50%{filter:brightness(1.55)}}.auto-close-progress__tooltip{position:absolute;top:calc(100% + 8px);right:0;z-index:20;padding:4px 7px;border:1px solid rgba(103,232,249,.22);border-radius:4px;background:#071523;color:#e2e8f0;font-size:12px;line-height:1.3;white-space:nowrap;pointer-events:none;opacity:0;visibility:hidden;transform:translateY(-2px);transition:opacity .12s ease-out,transform .12s ease-out}.auto-close-progress:hover .auto-close-progress__tooltip,.auto-close-progress:focus-within .auto-close-progress__tooltip{opacity:1;visibility:visible;transform:translateY(0)}.auto-close-progress[data-motion=reduced] .auto-close-progress__ring{animation:auto-close-progress-drain var(--auto-close-remaining-ms) steps(12,end) forwards,auto-close-progress-warn 1ms step-end var(--auto-close-warning-delay-ms) forwards}@media(prefers-reduced-motion:reduce){.auto-close-progress__ring{animation:auto-close-progress-drain var(--auto-close-remaining-ms) steps(12,end) forwards,auto-close-progress-warn 1ms step-end var(--auto-close-warning-delay-ms) forwards}}.assistant-page .voice-dock,.assistant-window .voice-dock,.assistant-workspace .voice-dock{position:static;inset:auto;z-index:auto;display:contents;width:auto;height:auto;overflow:visible;padding:0;border-radius:0;background:transparent;box-shadow:none;animation:none}.assistant-page .voice-dock-head,.assistant-window .voice-dock-head,.assistant-workspace .voice-dock-head,.assistant-page .voice-dock-progress,.assistant-window .voice-dock-progress,.assistant-workspace .voice-dock-progress,.assistant-page .voice-dock-result,.assistant-window .voice-dock-result,.assistant-workspace .voice-dock-result{display:none}.assistant-page .voice-dock-input,.assistant-window .voice-dock-input,.assistant-workspace .voice-dock-input{display:contents;border-top:0;padding-top:0;overflow:visible}.voice-dock{position:absolute;right:2.2%;bottom:calc(var(--bottom-nav-h, clamp(54px, 6.4vmin, 68px)) + 8px);z-index:45;display:grid;grid-template-rows:auto minmax(52px,auto) minmax(96px,1fr) minmax(72px,auto);gap:8px;width:min(440px,calc(100vw - 32px));height:min(360px,42vh);overflow:hidden;padding:12px 14px;border-radius:var(--r-lg);background:var(--surface-3);box-shadow:var(--glow-sm),inset 0 0 15px #00f2fe14;animation:voiceDockIn var(--dur-fast) var(--ease-out) both}.voice-dock-head{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:36px;color:var(--text);font-size:14px}.voice-dock-identity{display:flex;align-items:center;gap:8px;min-width:0}.voice-dock-identity:before{content:"";width:.32vmin;min-width:3px;height:1em;border-radius:2px;background:var(--cyan);box-shadow:0 0 .6vmin var(--cyan)}.voice-dock-mark{width:10px;height:10px;border:1px solid var(--cyan);border-radius:2px;background:#00f2fe47;box-shadow:0 0 8px #00f2fe59;flex:0 0 auto}.voice-dock-identity b{font-weight:700;letter-spacing:.04em}.voice-dock-stage{color:var(--cyan2);max-width:11em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.voice-dock-meta{display:flex;align-items:center;gap:6px;flex:0 0 auto}.voice-dock-pill{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 5px;border:1px solid rgba(0,242,254,.28);border-radius:4px;color:var(--cyan2);font-size:11px;line-height:1}.voice-dock-pill.is-off{color:#64748b;border-color:#64748b73;opacity:.75}.voice-countdown{position:relative;width:36px;height:36px;display:inline-grid;place-items:center;color:var(--cyan2);font-size:10px}.voice-countdown.is-wake{color:var(--amber)}.voice-countdown svg{position:absolute;inset:0;width:36px;height:36px;transform:rotate(-90deg)}.voice-countdown-track,.voice-countdown-progress{fill:none;stroke-width:3}.voice-countdown-track{stroke:#94a3b847}.voice-countdown-progress{stroke:currentColor;stroke-linecap:round;transition:stroke-dashoffset .2s linear}.voice-countdown b{position:relative;z-index:1;font-family:var(--font-num);font-weight:600;font-variant-numeric:tabular-nums}.voice-dock-input,.voice-dock-progress,.voice-dock-result{min-height:0;border-top:1px solid rgba(0,242,254,.15);padding-top:8px;overflow:hidden}.voice-dock-input{display:grid;grid-template-columns:42px 1fr;gap:10px;align-items:start}.voice-wave{display:flex;align-items:flex-end;justify-content:space-between;height:28px;gap:3px;width:42px;flex:0 0 auto}.voice-wave i{display:block;width:3px;height:40%;border-radius:2px;background:var(--cyan2);opacity:.85;animation:voiceWave 1s ease-in-out infinite}.voice-wave i:nth-child(1){animation-delay:0s;height:35%}.voice-wave i:nth-child(2){animation-delay:.08s;height:55%}.voice-wave i:nth-child(3){animation-delay:.16s;height:80%}.voice-wave i:nth-child(4){animation-delay:.24s;height:100%}.voice-wave i:nth-child(5){animation-delay:.32s;height:70%}.voice-wave i:nth-child(6){animation-delay:.4s;height:50%}.voice-wave i:nth-child(7){animation-delay:.48s;height:30%}.voice-wave.is-idle i{animation:none;opacity:.35;height:28%}.assistant-input-dock .voice-wave{margin:2px 0}.voice-line-text{margin:0;color:#dbeafe;font-size:13px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere;max-height:3.2em;overflow:hidden}.voice-line-text.is-partial{color:#93c5fd;opacity:.92}.voice-line-text.is-final{color:#e2e8f0}.voice-line-text.is-assistant{color:#e2e8f0;max-height:4.8em}.voice-dock-progress{overflow:auto}.voice-steps{list-style:none;margin:0;padding:0;display:grid;gap:6px}.voice-step{position:relative;display:grid;grid-template-columns:12px 1fr;gap:8px;align-items:start;color:#94a3b8;font-size:12px;line-height:1.4;overflow:hidden}.voice-step-dot{width:8px;height:8px;margin-top:4px;border-radius:50%;border:1px solid rgba(148,163,184,.55);background:transparent}.voice-step.is-done{color:#cbd5e1}.voice-step.is-done .voice-step-dot{border-color:var(--cyan);background:#00f2fe59}.voice-step.is-active{color:var(--cyan2)}.voice-step.is-active .voice-step-dot{border-color:var(--cyan2);background:#00f2fe8c;box-shadow:0 0 8px #00f2fe59}.voice-step.is-active:after{content:"";position:absolute;inset:0 auto 0 -8px;width:40%;background:linear-gradient(90deg,transparent,rgba(0,242,254,.12),transparent);animation:voiceScan 1.6s linear infinite;pointer-events:none}.voice-step-label{overflow-wrap:anywhere}.voice-dock-result{display:flex;flex-direction:column;gap:8px;overflow:auto}.voice-dock-empty{margin:0;color:#64748b;font-size:12px;line-height:1.4}.voice-candidates{display:flex;flex-wrap:wrap;gap:6px}.voice-candidates .chip{cursor:pointer;font-size:12px;max-width:100%;white-space:normal;text-align:left;border-radius:6px}.voice-error{margin:0;color:var(--danger);font-size:12px;line-height:1.45;overflow-wrap:anywhere}.voice-dock.is-opening,.voice-dock.is-speaking{opacity:.88}@keyframes voiceDockIn{0%{opacity:0;transform:translate3d(12px,8px,0)}to{opacity:1;transform:translateZ(0)}}@keyframes voiceWave{0%,to{transform:scaleY(.45);opacity:.55}50%{transform:scaleY(1);opacity:1}}@keyframes voiceScan{to{transform:translate(220%)}}@media(prefers-reduced-motion:reduce){.voice-dock,.voice-step.is-active:after,.voice-wave i,.voice-countdown-progress{animation:none;transition:none}}.screen[data-effects=off] .voice-dock,.screen[data-effects=off] .voice-step.is-active:after,.screen[data-effects=off] .voice-wave i,.screen[data-effects=off] .voice-countdown-progress,.screen[data-effects=reduced] .voice-dock,.screen[data-effects=reduced] .voice-step.is-active:after,.screen[data-effects=reduced] .voice-wave i,.screen[data-effects=reduced] .voice-countdown-progress{animation:none;transition:none}.auth-splash{min-height:100vh;display:grid;place-items:center;color:#9fb4d8;background:#060b16;font-size:18px;letter-spacing:.2em}.login-shell{position:relative;min-height:100vh;display:grid;place-items:center;background:radial-gradient(ellipse at 20% 0%,rgba(38,96,189,.22),transparent 55%),radial-gradient(ellipse at 80% 100%,rgba(16,156,173,.16),transparent 55%),#060b16}.login-window-actions{position:absolute;top:16px;right:16px;z-index:5;display:flex;gap:8px}.login-card{width:min(380px,90vw);padding:40px 36px 32px;border-radius:var(--r-lg);background:var(--surface-3);box-shadow:0 24px 80px #0000008c;display:flex;flex-direction:column;gap:14px;color:#dce8ff;position:relative}.login-card:before{content:"";position:absolute;top:0;left:6%;right:6%;height:1px;background:linear-gradient(90deg,transparent,rgba(0,242,254,.55),transparent);pointer-events:none}.login-logo{width:52px;height:52px;object-fit:contain}.login-card h1{margin:0;font-size:20px;letter-spacing:.12em;background:linear-gradient(to bottom,#fff 30%,#a5f3fc);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.login-sub{margin:0 0 8px;font-size:12px;color:#7e93bd}.login-field{display:flex;flex-direction:column;gap:6px;font-size:13px;color:#9fb4d8}.login-field input{padding:10px 12px;border-radius:8px;border:1px solid rgba(94,148,235,.35);background:#060c18e6;color:#eaf2ff;font-size:15px;outline:none}.login-field input:focus{border-color:#4f8ef7}.login-error{padding:8px 10px;border-radius:8px;background:#be314429;border:1px solid rgba(240,82,105,.4);color:#ff97a8;font-size:13px}.login-submit{margin-top:6px;padding:11px;border:none;border-radius:8px;background:linear-gradient(135deg,#2f6fe0,#1e9ab0);color:#fff;font-size:15px;letter-spacing:.3em;cursor:pointer}.login-submit:disabled{opacity:.5;cursor:not-allowed}.login-api-panel{margin-top:4px;padding-top:12px;border-top:1px solid rgba(94,148,235,.22);display:flex;flex-direction:column;gap:10px}.login-api-title{font-size:12px;color:#7e93bd;letter-spacing:.08em}.login-api-actions{display:flex;gap:8px}.login-api-btn{flex:1;padding:8px 10px;border:1px solid rgba(94,148,235,.4);border-radius:8px;background:#4f8ef72e;color:#cfe0ff;font-size:13px;cursor:pointer}.login-api-btn.ghost{background:transparent}.login-api-btn:hover{background:#4f8ef752}.login-api-hint{font-size:12px;color:#9fb4d8;word-break:break-all}.account-fs{display:inline-flex;align-items:center;gap:8px;padding:4px 8px 4px 12px;border:1px solid rgba(94,148,235,.3);border-radius:999px;background:#0a1426b3;color:#bcd0f2;font-size:12px;white-space:nowrap}.account-fs .account-name{max-width:8em;overflow:hidden;text-overflow:ellipsis}.account-fs .fs-btn{width:28px;height:28px;min-width:28px;border-radius:999px}.account-warning{position:absolute;left:50%;top:100%;transform:translate(-50%);margin-top:4px;padding:4px 14px;border-radius:999px;background:#be314433;border:1px solid rgba(240,82,105,.45);color:#ff97a8;font-size:12px;z-index:30}
