/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}
}
}
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}
}
@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}
::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}
html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}
hr{height:0;color:inherit;border-top-width:1px}
abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}
h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}
a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}
b,strong{font-weight:bolder}
code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}
small{font-size:80%}
sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}
sub{bottom:-.25em}
sup{top:-.5em}
table{text-indent:0;border-color:inherit;border-collapse:collapse}
:-moz-focusring{outline:auto}
progress{vertical-align:baseline}
summary{display:list-item}
ol,ul,menu{list-style:none}
img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}
img,video{max-width:100%;height:auto}
button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}
::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}
:where(select:is([multiple],[size])) optgroup{font-weight:bolder}
:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}
::file-selector-button{margin-inline-end:4px}
::placeholder{opacity:1}
@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}
@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}
}
}
textarea{resize:vertical}
::-webkit-search-decoration{-webkit-appearance:none}
::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}
::-webkit-datetime-edit{display:inline-flex}
::-webkit-datetime-edit-fields-wrapper{padding:0}
::-webkit-datetime-edit{padding-block:0}
::-webkit-datetime-edit-year-field{padding-block:0}
::-webkit-datetime-edit-month-field{padding-block:0}
::-webkit-datetime-edit-day-field{padding-block:0}
::-webkit-datetime-edit-hour-field{padding-block:0}
::-webkit-datetime-edit-minute-field{padding-block:0}
::-webkit-datetime-edit-second-field{padding-block:0}
::-webkit-datetime-edit-millisecond-field{padding-block:0}
::-webkit-datetime-edit-meridiem-field{padding-block:0}
::-webkit-calendar-picker-indicator{line-height:1}
:-moz-ui-invalid{box-shadow:none}
button,input:where([type=button],[type=reset],[type=submit]){appearance:button}
::file-selector-button{appearance:button}
::-webkit-inner-spin-button{height:auto}
::-webkit-outer-spin-button{height:auto}
[hidden]:where(:not([hidden=until-found])){display:none!important}
}
@layer components;@layer utilities{.visible{visibility:visible}
.fixed{position:fixed}
.relative{position:relative}
.static{position:static}
.start{inset-inline-start:var(--spacing)}
.end{inset-inline-end:var(--spacing)}
.container{width:100%}
@media (width>=40rem){.container{max-width:40rem}
}
@media (width>=48rem){.container{max-width:48rem}
}
@media (width>=64rem){.container{max-width:64rem}
}
@media (width>=80rem){.container{max-width:80rem}
}
@media (width>=96rem){.container{max-width:96rem}
}
.block{display:block}
.grid{display:grid}
.inline{display:inline}
.table{display:table}
.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}
.resize{resize:both}
.outline{outline-style:var(--tw-outline-style);outline-width:1px}
.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}
}
:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--ink:#191919;--muted:#888;--line:#dedede;--panel:#fff;--canvas:#ededed;--accent:#07c160;--green:#07c160;--bubble-green:#95ec69}
@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}
}
*{box-sizing:border-box}
html,body{overscroll-behavior:none;background:var(--canvas);width:100%;max-width:100%;height:100%;min-height:100%;color:var(--ink);margin:0;font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,-apple-system,sans-serif;overflow-x:hidden}
body{min-height:100dvh}
button,input,textarea{font:inherit}
button{color:inherit}
.app-shell{background:var(--panel);border:1px solid #1b253814;border-radius:8px;grid-template-columns:328px minmax(0,1fr);width:min(1180px,100% - 48px);height:min(820px,100dvh - 48px);min-height:0;max-height:calc(100dvh - 48px);margin:24px auto;display:grid;overflow:hidden;box-shadow:0 18px 54px #00000024}
.chat-list{border-right:1px solid var(--line);background:#f7f7f7;flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden}
.brand-row{align-items:center;gap:11px;padding:22px 20px 17px;display:flex}
.brand-mark{background:var(--green);color:#fff;width:38px;height:38px;box-shadow:none;border-radius:6px;place-items:center;font-weight:750;display:grid}
.brand-row>div:nth-child(2){flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}
.brand-row strong{letter-spacing:.01em;font-size:15px}
.brand-row span,.connection-card span,.chat-summary>span:last-child{color:var(--muted);font-size:12px}
.sidebar-quick-actions,.mobile-quick-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}
.sidebar-quick-actions{margin:0 18px 14px}
.sidebar-quick-actions button,.sidebar-quick-actions a,.mobile-quick-actions button,.mobile-quick-actions a{color:#087b40;cursor:pointer;white-space:nowrap;background:#f3fbf6;border:1px solid #cfe5d8;border-radius:7px;justify-content:center;align-items:center;gap:5px;min-width:0;height:38px;font-size:11px;font-weight:700;text-decoration:none;display:flex}
.sidebar-quick-actions span,.mobile-quick-actions span{color:#07a653;font-size:14px;font-weight:800}
.mobile-quick-actions{display:none}
.workspace-primary-nav{background:#e9ecea;border-radius:8px;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;margin:0 18px 14px;padding:4px;display:grid}
.workspace-primary-nav button{color:#69716f;cursor:pointer;background:0 0;border:0;border-radius:6px;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-width:0;min-height:44px;font-size:10px;font-weight:700;display:flex}
.workspace-primary-nav button span{font-size:15px}
.workspace-primary-nav button.active{color:#087b40;background:#fff;box-shadow:0 1px 4px #1e30261f}
.workspace-view-hidden{display:none}
.workspace-section{background:#ededed;grid-template-rows:auto minmax(0,1fr);min-width:0;display:grid;overflow:hidden}
.workspace-section-header{border-bottom:1px solid var(--line);background:#fff;align-items:center;min-height:76px;padding:16px 24px;display:flex}
.workspace-section-header>div{flex-direction:column;gap:4px;display:flex}
.workspace-section-header strong{font-size:18px}
.workspace-section-header span{color:var(--muted);font-size:12px}
.directory-content,.me-content{padding:24px;overflow-y:auto}
.directory-block{background:#fff;border-radius:8px;max-width:680px;margin:0 auto 18px;overflow:hidden}
.directory-block h2{border-bottom:1px solid #eee;margin:0;padding:14px 18px;font-size:14px}
.directory-empty{color:var(--muted);margin:0;padding:24px 18px;font-size:12px}
.directory-row{cursor:pointer;text-align:left;background:#fff;border:0;border-bottom:1px solid #eee;align-items:center;gap:12px;width:100%;min-height:66px;padding:10px 18px;display:flex}
.directory-row:last-child{border-bottom:0}
.directory-row>span:nth-child(2){flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}
.directory-row strong{font-size:13px}
.directory-row small{color:var(--muted);font-size:10px}
.directory-row b{color:#087b40;font-size:11px}
.me-profile-card{cursor:pointer;text-align:left;background:#fff;border:0;border-radius:8px;align-items:center;gap:14px;width:min(680px,100%);min-height:106px;margin:0 auto;padding:18px;display:flex}
.me-avatar{border-radius:13px;flex:none;width:64px;height:64px;overflow:hidden}
.me-profile-card>span:nth-child(2){flex-direction:column;flex:1;gap:5px;min-width:0;display:flex}
.me-profile-card strong{font-size:16px}
.me-profile-card small,.me-content>p{color:var(--muted);font-size:11px}
.me-profile-card b{color:#087b40;font-size:11px}
.me-content>p{width:min(680px,100%);margin:12px auto;padding:0 4px}
.me-settings-list{background:#fff;border-radius:8px;width:min(680px,100%);margin:20px auto 0;overflow:hidden}
.me-settings-list>button{width:100%;min-height:72px;color:var(--ink);cursor:pointer;text-align:left;background:#fff;border:0;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 18px;display:grid}
.me-setting-icon{background:#e4f6eb;border-radius:9px;place-items:center;width:38px;height:38px;font-size:18px;display:grid}
.me-settings-list>button>span:nth-child(2){flex-direction:column;gap:4px;min-width:0;display:flex}
.me-settings-list strong{font-size:14px}
.me-settings-list small{color:var(--muted);font-size:10px}
.me-settings-list b{color:#949b97;font-size:11px}
.me-settings-list b.enabled{color:#07a653}
.me-setting-message{color:#737a76;border-top:1px solid #eee;margin:0;padding:10px 18px;font-size:11px;line-height:1.6}
.mobile-primary-nav,.mobile-messages-home,.mobile-chat-back,.mobile-chat-more{display:none}
.discover-content{align-content:start;gap:1px;padding:24px;display:grid;overflow-y:auto}
.discover-content a,.discover-content button{width:min(680px,100%);min-height:72px;color:var(--ink);cursor:pointer;text-align:left;background:#fff;border:0;border-bottom:1px solid #eee;grid-template-rows:auto auto;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;column-gap:12px;margin:0 auto;padding:12px 18px;text-decoration:none;display:grid}
.discover-content a:first-child{border-radius:8px 8px 0 0}
.discover-content a:last-child{border-bottom:0;border-radius:0 0 8px 8px}
.discover-content a>span,.discover-content button>span{color:#078d49;background:#e4f6eb;border-radius:9px;grid-row:1/3;place-items:center;width:40px;height:40px;font-weight:800;display:grid}
.discover-content strong{align-self:end;font-size:14px}
.discover-content small{color:var(--muted);align-self:start;font-size:11px}
.discover-content b{color:#a0a5a2;grid-area:1/3/3}
.search-box{color:#8991a0;background:#eaeaea;border:1px solid #0000;border-radius:5px;align-items:center;gap:8px;margin:0 18px 14px;padding:9px 12px;display:flex}
.search-box:focus-within{background:#fff;border-color:#b9ddc8}
.search-box input{width:100%;color:var(--ink);background:0 0;border:0;outline:0;font-size:13px}
.section-label{color:#9aa1ae;letter-spacing:.08em;padding:6px 20px 8px;font-size:11px;font-weight:650}
.chat-list nav{overflow-y:auto}
.chat-row{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:5px;align-items:center;gap:12px;width:calc(100% - 16px);margin:2px 8px;padding:13px 12px;display:flex}
.chat-row:hover{background:#e9e9e9}
.chat-row.selected{background:#dedede}
.avatar{color:#fff;border-radius:6px;flex:none;place-items:center;width:44px;height:44px;font-size:15px;font-weight:750;display:inline-grid}
.chat-summary{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}
.chat-title-line{justify-content:space-between;align-items:center;gap:8px;display:flex}
.chat-title-line strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}
.assistant-note{color:#0a8e49;vertical-align:1px;background:#ddf5e7;border-radius:4px;margin-left:6px;padding:1px 4px;font-size:9px;font-weight:650;display:inline-block}
.assistant-avatar{background:0 0;padding:0;overflow:hidden}
.assistant-avatar-art{width:100%;height:100%;display:block}
.chat-title-line time{color:#a0a6b1;flex:none;font-size:10px}
.chat-summary>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}
.chat-summary .running-copy{color:#079849}
.connection-card{border:1px solid var(--line);background:#fff;border-radius:6px;align-items:center;gap:10px;margin:auto 18px 18px;padding:12px 13px;display:flex}
.connection-card>div{flex-direction:column;gap:2px;display:flex}
.connection-card strong{font-size:12px}
.admin-link{color:#078d49;font-size:10px;text-decoration:none}
.admin-actions{flex-direction:column;align-items:flex-end;gap:3px;margin-left:auto;display:flex}
.status-dot{background:var(--green);border-radius:999px;width:8px;height:8px;box-shadow:0 0 0 4px #2fb36d1a}
.status-dot.offline{background:#e6a23c;box-shadow:0 0 0 4px #e6a23c1f}
.conversation{background:var(--canvas);grid-template-rows:auto minmax(0,1fr) auto;min-width:0;min-height:0;display:grid;overflow:hidden}
.conversation-header{z-index:2;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:linear-gradient(90deg,#ffffffd1,#ffffff94),url(/workspace-meadow-header.jpg) 50%/100% 100% no-repeat;align-items:center;gap:12px;min-width:0;min-height:76px;padding:16px 24px;display:flex}
.conversation-header>.conversation-title{flex:1;min-width:0}
.conversation-header h1,.conversation-header p{margin:0}
.conversation-header h1{font-size:16px;line-height:1.45}
.conversation-header p{color:var(--muted);margin-top:2px;font-size:11px}
.mobile-avatar{width:40px;height:40px;display:none}
.ai-window-actions{align-items:center;gap:7px;margin-left:auto;display:flex}
.ai-window-button{color:#566171;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #dfe3ef;border-radius:5px;align-items:center;gap:7px;min-height:34px;padding:0 11px;font-size:11px;display:inline-flex}
.ai-window-button:hover,.ai-window-button.running{color:#078d49;background:#f3fbf6;border-color:#b8dec7}
.ai-window-button small{color:#078d49;background:#e4f6eb;border-radius:99px;min-width:17px;padding:1px 5px;font-size:9px;font-weight:700}
.ai-window-button .status-dot{width:6px;height:6px}
.notification-button{color:#777;cursor:pointer;background:0 0;border:0;border-radius:5px;flex:none;place-items:center;width:32px;height:32px;font-size:16px;display:grid}
.scan-login-button{color:#526059;border-radius:5px;flex:none;align-items:center;gap:5px;min-height:34px;padding:0 9px;font-size:16px;text-decoration:none;display:inline-flex}
.scan-login-button small{white-space:nowrap;font-size:10px}
.scan-login-button:hover{color:#078d49;background:#e8e8e8}
.notification-button:hover{background:#e8e8e8}
.notification-button.enabled{color:var(--green)}
.group-settings-button{color:#667080;cursor:pointer;background:0 0;border:0;border-radius:5px;flex:none;width:34px;height:32px;font-size:17px;font-weight:800}
.group-settings-button:hover{background:#e8e8e8}
.profile-avatar-button{cursor:pointer;background:#ffffffd1;border:1px solid #d9dee6;border-radius:11px;flex:none;justify-content:center;align-items:center;width:38px;height:38px;padding:2px;text-decoration:none;display:flex}
.profile-avatar-button:hover{background:#f0faf4;border-color:#7c9}
.profile-button-art{border-radius:8px;flex:none;width:32px;height:32px;position:relative;overflow:hidden}
.profile-button-art>span{background:var(--green);color:#fff;border:1px solid #fff;border-radius:50%;place-items:center;width:15px;height:15px;font-size:8px;font-weight:800;display:grid;position:absolute;bottom:-1px;right:-1px}
.avatar-artwork,.avatar-photo{width:100%;height:100%;display:block}
.avatar-photo{object-fit:cover}
.messages{overscroll-behavior:contain;scrollbar-gutter:stable;min-height:0;padding:22px clamp(20px,5vw,58px) 28px;overflow:hidden auto}
.messages.selection-mode{padding-left:clamp(50px,8vw,82px)}
.load-older-messages{color:var(--muted);font:inherit;cursor:pointer;background:#50685f1f;border:0;border-radius:999px;margin:0 auto 14px;padding:5px 11px;font-size:11px;display:block}
.load-older-messages:disabled{cursor:default;opacity:.62}
.date-divider,.system-message{color:#9aa1ad;width:fit-content;margin:0 auto 18px;font-size:10px}
.system-message{text-align:center;background:#858fa01a;border-radius:8px;max-width:78%;padding:6px 10px}
.message-row{align-items:flex-start;gap:10px;max-width:78%;margin:0 0 22px;display:flex;position:relative}
.message-row.mine{flex-direction:row-reverse;margin-left:auto}
.message-row>div{min-width:0;max-width:calc(100% - 44px)}
.message-avatar{border-radius:10px;width:34px;height:34px;font-size:12px}
.contact-avatar-button{cursor:pointer;border:0;padding:0}
.friend-profile-dialog{width:min(520px,100% - 24px)}
.own-avatar-button{cursor:pointer;border:0;padding:0}
.own-avatar-button:hover{box-shadow:0 0 0 2px #07c16038}
.profile-art-avatar{padding:0;overflow:hidden}
.bubble{border:1px solid var(--line);overflow-wrap:anywhere;white-space:pre-wrap;word-break:break-word;background:#fff;border-radius:5px;max-width:100%;padding:11px 14px;font-size:14px;line-height:1.62;box-shadow:0 4px 14px #28344c0a}
.message-text{overflow-wrap:anywhere;word-break:break-word}
.mine .bubble{background:var(--bubble-green);color:var(--ink);border-color:#83d45d;border-radius:5px}
.message-row time{color:#a1a7b2;margin-top:5px;font-size:9px;display:block}
.message-sender-name{color:#858c89;margin:0 0 4px 2px;font-size:10px;display:block}
.mine time{text-align:right}
.attachment{color:inherit;touch-action:manipulation;border-top:1px solid #1e5a1929;margin-top:9px;padding-top:8px;font-size:12px;display:block}
.attachment-bubble{min-width:min(260px,68vw)}
.attachment-bubble .message-text{margin-bottom:8px;display:block}
.image-bubble{padding:5px;overflow:hidden}
.image-bubble .message-text{padding:6px 8px 0}
.image-bubble .attachment{border-top:0;margin-top:0;padding-top:0}
.image-bubble .message-text+.attachment{margin-top:8px}
.message-image-attachment{object-fit:contain;background:#0000000a;border-radius:4px;width:min(280px,64vw);max-height:330px;display:block}
.message-image-button{cursor:zoom-in;touch-action:manipulation;background:0 0;border:0;border-radius:4px;margin:0;padding:0;display:block}
.message-image-thumbnail{object-fit:contain;object-position:center;background:#edf0ed;border-radius:4px;width:min(280px,64vw);min-width:132px;min-height:96px;max-height:330px;display:block}
.message-file-card{width:100%;min-width:min(250px,62vw);color:inherit;font:inherit;text-align:left;cursor:pointer;touch-action:manipulation;background:0 0;border:0;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:10px;margin:0;padding:0;text-decoration:none;display:grid}
.message-file-card>b{color:#178b4e;background:#ffffffb8;border-radius:4px;place-items:center;width:38px;height:44px;font-size:20px;display:grid}
.message-file-card>span{flex-direction:column;gap:4px;min-width:0;display:flex}
.message-file-card strong,.message-file-card small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}
.message-file-card strong{font-size:12px}
.message-file-card small{color:#6d756f;font-size:10px}
.attachment-actions{justify-content:flex-end;gap:8px;margin-top:7px;display:flex}
.attachment-actions button,.attachment-actions a{color:#237346;min-height:30px;font:inherit;cursor:pointer;touch-action:manipulation;background:#ffffff9e;border:1px solid #1e5a1938;border-radius:7px;justify-content:center;align-items:center;padding:4px 10px;font-size:11px;font-weight:650;text-decoration:none;display:inline-flex}
.attachment-actions button:active,.attachment-actions a:active,.message-file-card:active,.message-image-button:active{opacity:.68}
.attachment-action-hint{color:#5d7665;text-align:right;margin-top:7px;font-size:10px;line-height:1.45;display:block}
.message-selection-check{background:var(--panel);color:#fff;cursor:pointer;border:1px solid #b9bfbb;border-radius:50%;place-items:center;width:24px;height:24px;padding:0;font-size:14px;font-weight:800;display:grid;position:absolute;top:8px;left:-34px}
.message-selection-check.selected{background:#07c160;border-color:#07c160}
.message-row.forward-selected .bubble{box-shadow:0 0 0 3px #07c16033}
.message-selection-bar{border-top:1px solid var(--line);background:var(--panel);grid-template-columns:84px minmax(0,1fr) 84px;align-items:center;gap:12px;height:104px;padding:12px 18px;display:grid}
.message-selection-bar button{height:38px;color:var(--ink);cursor:pointer;background:#eef1ef;border:0;border-radius:6px}
.message-selection-bar strong{color:var(--muted);text-align:center;font-size:13px}
.message-selection-bar .message-selection-forward{color:#fff;background:#07c160;font-weight:700}
.message-selection-bar .message-selection-forward:disabled{cursor:default;opacity:.45}
.message-action-backdrop,.forward-dialog-backdrop{z-index:110;background:#0000002e;place-items:center;padding:18px;display:grid;position:fixed;inset:0}
.message-action-sheet{background:#424542;border-radius:12px;grid-template-columns:repeat(3,minmax(0,1fr));width:min(330px,100vw - 36px);display:grid;overflow:hidden;box-shadow:0 16px 50px #00000057}
.message-action-sheet button{color:#fff;cursor:pointer;background:0 0;border:0;border-right:1px solid #ffffff1a;flex-direction:column;justify-content:center;align-items:center;gap:7px;min-height:88px;display:flex}
.message-action-sheet a{color:#fff;cursor:pointer;background:0 0;border-right:1px solid #ffffff1a;flex-direction:column;justify-content:center;align-items:center;gap:7px;min-height:88px;text-decoration:none;display:flex}
.message-action-sheet button>span,.message-action-sheet a>span{font-size:25px}
.message-action-sheet button>strong,.message-action-sheet a>strong{font-size:14px;font-weight:500}
.message-action-sheet .message-action-cancel{border-top:1px solid #ffffff1a;border-right:0;grid-column:1/-1;min-height:44px;font-size:13px}
.forward-dialog{border:1px solid var(--line);background:var(--panel);border-radius:14px;grid-template-rows:auto minmax(0,1fr) auto auto;width:min(460px,100vw - 36px);max-height:min(680px,100dvh - 36px);display:grid;overflow:hidden;box-shadow:0 22px 70px #0000004d}
.forward-dialog>header,.forward-dialog>footer{justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}
.forward-dialog>header{border-bottom:1px solid var(--line)}
.forward-dialog>header>div{flex-direction:column;gap:3px;min-width:0;display:flex}
.forward-dialog>header strong{font-size:16px}
.forward-dialog>header span{color:var(--muted);font-size:10px}
.forward-dialog>header>button{background:var(--canvas);width:32px;height:32px;color:var(--ink);cursor:pointer;border:0;border-radius:7px;font-size:21px}
.forward-target-list{padding:8px 12px;overflow-y:auto}
.forward-target-list>button{border:0;border-bottom:1px solid var(--line);width:100%;min-height:62px;color:var(--ink);cursor:pointer;text-align:left;background:0 0;grid-template-columns:42px minmax(0,1fr) 24px;align-items:center;gap:11px;padding:8px;display:grid}
.forward-target-list>button.selected{background:#07c16017;border-radius:7px}
.forward-target-list>button>span:nth-child(2){flex-direction:column;gap:3px;min-width:0;display:flex}
.forward-target-list strong,.forward-target-list small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}
.forward-target-list small,.forward-target-list>p{color:var(--muted);font-size:11px}
.forward-target-list i{color:#07c160;border:1px solid #b9bfbb;border-radius:50%;place-items:center;width:22px;height:22px;font-style:normal;display:grid}
.forward-target-list>button.selected i{color:#fff;background:#07c160;border-color:#07c160}
.forward-error{color:#c23d34;background:#c23d3414;margin:0;padding:8px 16px;font-size:11px}
.forward-dialog>footer{border-top:1px solid var(--line);justify-content:flex-end}
.progress-card{background:#fff;border:1px solid #d9e7dc;border-radius:5px;width:min(430px,100%);overflow:hidden;box-shadow:0 3px 10px #00000009}
.ai-running-bubble{width:min(430px,100%);color:inherit;cursor:pointer;text-align:left;background:#fff;border:1px solid #d9e7dc;border-radius:5px;align-items:center;gap:11px;padding:12px 13px;display:flex;box-shadow:0 3px 10px #00000009}
.ai-running-bubble>span:nth-child(2){flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}
.ai-running-bubble strong{font-size:13px}
.ai-running-bubble small{color:var(--muted);font-size:10px}
.ai-running-bubble b{color:#079849;font-size:10px;font-weight:600}
.progress-card summary{cursor:pointer;align-items:center;gap:11px;min-width:0;padding:12px 13px;list-style:none;display:flex}
.progress-card summary::-webkit-details-marker{display:none}
.progress-summary{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}
.progress-summary strong{color:#202020;font-size:13px}
.progress-summary small,.progress-step small{color:var(--muted);font-size:10px;font-weight:400}
.progress-toggle{color:#079849;flex:none;font-size:10px}
.progress-card[open] .progress-toggle:after{content:"收起";font-size:0}
.progress-details{border-top:1px solid #f0f0f0;padding:2px 14px 13px 43px}
.progress-step{gap:10px;padding-top:12px;display:flex;position:relative}
.progress-step:not(:last-child):after{content:"";background:#cae9d4;width:1px;position:absolute;top:22px;bottom:-13px;left:4px}
.progress-step>i{z-index:1;background:#fff;border:2px solid #aeb6b0;border-radius:50%;width:9px;height:9px;margin-top:3px}
.progress-step>i.done{border-color:var(--green);background:var(--green)}
.progress-step>i.current{border-color:var(--green);box-shadow:0 0 0 4px #07c1601a}
.progress-step>span{flex-direction:column;gap:2px;display:flex}
.progress-step strong{font-size:11px;font-weight:600}
.thinking-dots{gap:3px;display:flex}
.thinking-dots i{background:var(--green);border-radius:50%;width:5px;height:5px;animation:1.2s ease-in-out infinite pulse}
.thinking-dots i:nth-child(2){animation-delay:.15s}
.thinking-dots i:nth-child(3){animation-delay:.3s}
@keyframes pulse{50%{opacity:.5}
}
.composer{border-top:1px solid var(--line);background:#f7f7f7fa;min-width:0;height:104px;padding:10px 18px 13px;position:relative}
.active-turn{z-index:3;color:#257348;background:#edf8f1;border-radius:5px;justify-content:space-between;align-items:center;gap:8px;margin:0 6px 8px;padding:6px 9px;font-size:10px;display:flex;position:absolute;bottom:calc(100% + 8px);left:18px;right:18px}
.active-turn span:first-child{color:var(--accent);font-weight:700}
.active-turn.supplemented{background:#e2f6e9}
.active-turn button{color:#078d49;cursor:pointer;background:0 0;border:0;font-size:10px;font-weight:650}
.pending-file{color:#5f6878;background:#eef7f1;border-radius:5px;justify-content:space-between;align-items:center;min-width:0;margin:0;padding:3px 6px;font-size:11px;display:flex}
.pending-file button{color:var(--accent);cursor:pointer;background:0 0;border:0;font-size:10px}
.pending-file>div{gap:8px;display:flex}
.pending-file>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}
.voice-preview{color:#697284;background:#f1f3f7;border-radius:9px;align-items:center;gap:9px;min-height:38px;margin:0 6px 8px;padding:7px 10px;font-size:10px;display:flex}
.voice-preview audio{width:190px;height:30px}
.voice-preview button{color:var(--accent);cursor:pointer;background:0 0;border:0;margin-left:auto}
.voice-preview.recording{color:#d8433a;background:#fff0ef}
.voice-preview.recording i{background:#f0443b;border-radius:50%;width:7px;height:7px;margin-right:5px;animation:1s infinite pulse;display:inline-block}
.composer form{background:#fff;border:1px solid #dfe2e8;border-radius:6px;align-items:center;gap:9px;min-width:0;height:58px;padding:7px;display:flex;box-shadow:0 5px 20px #232f4a0d}
.composer-draft-stack{flex-direction:column;flex:1;justify-content:center;min-width:0;height:46px;display:flex;overflow-y:auto}
.composer-draft-stack.with-attachment{justify-content:flex-start}
.composer-draft-stack.with-attachment textarea{height:20px;min-height:20px;max-height:20px;padding:0 4px;line-height:20px}
.composer-left-tools{flex:none;align-items:center;gap:5px;display:flex}
.composer textarea{resize:none;width:100%;min-width:0;height:36px;min-height:36px;max-height:36px;color:var(--ink);background:0 0;border:0;outline:0;flex:none;padding:8px 4px;font-size:13px;line-height:20px}
.send-error{color:#c23d34;text-overflow:ellipsis;white-space:nowrap;padding:1px 4px 0;font-size:10px;display:block;overflow:hidden}
.composer textarea::placeholder{color:#a2a8b3}
.attach-button{color:#536276;cursor:pointer;background:#f0f2f6;border:0;border-radius:5px;flex:none;place-items:center;width:36px;height:36px;display:grid}
.attach-button:hover,.voice-button:hover,.attach-button.active{color:#079c50;background:#e7f7ee}
.cartoon-icon{stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:23px;height:23px;overflow:visible}
.cartoon-icon circle:not(:first-child){fill:#07c1601a}
.voice-button{color:#697284;cursor:pointer;background:#f0f2f6;border:0;border-radius:5px;flex:none;place-items:center;width:44px;height:36px;display:grid}
.voice-button.active{color:#079c50;background:#e7f7ee}
.emoji-panel{background:#fff;border:1px solid #e1e4e8;border-radius:10px;width:min(430px,100% - 12px);margin:0 6px 8px;padding:12px;box-shadow:0 -8px 24px #1f2a3d14}
.emoji-panel-title{align-items:center;gap:12px;margin-bottom:9px;display:flex}
.emoji-panel-title strong{font-size:12px}
.emoji-panel-title span{color:#9aa1ad;flex:1;font-size:9px}
.emoji-panel-close{color:#4f5967;cursor:pointer;background:#f0f2f5;border:0;border-radius:6px;min-width:44px;height:30px;font-size:12px}
.emoji-grid{grid-template-columns:repeat(10,1fr);gap:4px;display:grid}
.emoji-grid button{aspect-ratio:1;cursor:pointer;background:0 0;border:0;border-radius:7px;place-items:center;font-size:21px;display:grid}
.emoji-grid button:disabled{cursor:wait;opacity:.5}
.attachment-panel{z-index:6;border-top:1px solid var(--line);background:var(--panel);grid-template-columns:minmax(0,220px) minmax(82px,96px);justify-content:start;gap:22px;padding:18px 22px 20px;display:grid;position:absolute;bottom:calc(100% - 1px);left:0;right:0;box-shadow:0 -8px 22px #1f2a3d14}
.attachment-photo-section{gap:8px;min-width:0;display:grid}
.attachment-photo-section>small{color:var(--muted);text-align:left;font-size:10px}
.attachment-photo-actions{grid-template-columns:repeat(2,minmax(82px,96px));gap:18px;display:grid}
.attachment-file-action{align-self:end;padding-left:18px;border-left:1px solid var(--line)!important}
.attachment-panel button{min-width:0;color:var(--ink);background:0 0;border:0;flex-direction:column;align-items:center;gap:5px;display:flex}
.attachment-panel button>span{border:1px solid var(--line);background:var(--canvas);border-radius:13px;place-items:center;width:58px;height:58px;display:grid}
.attachment-panel strong{font-size:12px}
.attachment-panel small{color:var(--muted);font-size:9px}
.emoji-grid button:hover{background:#f0f2f4}
.hold-to-talk{color:#303642;cursor:pointer;touch-action:none;-webkit-user-select:none;user-select:none;background:#f7f8fa;border:1px solid #d7dbe2;border-radius:5px;flex:1;min-width:120px;height:36px;font-size:13px;font-weight:650}
.hold-to-talk:active,.hold-to-talk.recording{background:#dfe3e8}
.hold-to-talk.canceling{color:#d8433a;background:#fff0ef;border-color:#e15a53}
.voice-record-overlay{z-index:80;color:#fff;pointer-events:none;text-align:center;background:#23272de0;border-radius:18px;flex-direction:column;justify-content:center;align-items:center;gap:9px;width:190px;min-height:170px;padding:22px;display:flex;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 18px 45px #00000047}
.voice-record-overlay.canceling{background:#b93731eb}
.voice-record-icon{letter-spacing:-5px;background:#ffffff26;border-radius:50%;place-items:center;width:70px;height:70px;font-size:23px;display:grid}
.voice-record-overlay strong{font-size:14px}
.voice-record-overlay span{color:#ffffffc7;font-size:11px}
.microphone-permission-backdrop{z-index:500;padding:max(18px, env(safe-area-inset-top)) 18px max(18px, env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0a0e0ca3;place-items:center;display:grid;position:fixed;inset:0}
.microphone-permission-dialog{color:#202722;background:#fff;border:1px solid #22844e29;border-radius:24px;gap:17px;width:min(410px,100%);max-height:calc(100dvh - 36px);padding:30px 24px 22px;display:grid;position:relative;overflow-y:auto;box-shadow:0 26px 80px #0000004d}
.microphone-permission-close{color:#7e8880;cursor:pointer;width:34px;height:34px;font:inherit;background:0 0;border:0;font-size:28px;line-height:1;position:absolute;top:12px;right:14px}
.microphone-permission-icon{color:#fff;background:linear-gradient(145deg,#4ed38a,#168451);border-radius:22px;place-items:center;width:66px;height:66px;margin:2px auto 0;display:grid;box-shadow:0 10px 26px #1684513d}
.microphone-permission-icon .cartoon-icon{stroke:currentColor;stroke-width:1.8px;width:36px;height:36px}
.microphone-permission-dialog>header{text-align:center;gap:8px;display:grid}
.microphone-permission-dialog>header strong{font-size:22px;line-height:1.3}
.microphone-permission-dialog>header span{color:#69736b;font-size:14px;line-height:1.65}
.microphone-permission-points{gap:10px;display:grid}
.microphone-permission-points article{background:#f3f8f5;border-radius:14px;align-items:center;gap:12px;padding:12px 13px;display:flex}
.microphone-permission-points article>b{color:#fff;background:#20a563;border-radius:50%;flex:none;place-items:center;width:28px;height:28px;font-size:13px;display:grid}
.microphone-permission-points span{gap:2px;display:grid}
.microphone-permission-points strong{font-size:14px}
.microphone-permission-points small{color:#727b74;font-size:12px;line-height:1.5}
.microphone-permission-notice{color:#137647;text-align:center;background:#e7f7ed;border-radius:10px;margin:-4px 0 0;padding:9px 11px;font-size:12px}
.microphone-permission-dialog>footer{gap:9px;display:grid}
.microphone-permission-dialog>footer button{cursor:pointer;min-height:48px;font:inherit;border-radius:13px;font-size:15px;font-weight:650}
.microphone-permission-dialog>footer button:disabled{cursor:wait;opacity:.68}
.microphone-permission-primary{color:#fff;background:#18a55e;border:1px solid #159255}
.microphone-permission-secondary{color:#18754a;background:#f3faf6;border:1px solid #b8d8c4}
.microphone-permission-cancel{color:#79817b;background:0 0;border:0}
@media (width<=520px){.microphone-permission-backdrop{align-items:end;padding:0}
.microphone-permission-dialog{width:100%;max-height:min(88dvh,760px);padding:28px 20px max(18px, env(safe-area-inset-bottom));border-radius:24px 24px 0 0}
}
@media (prefers-color-scheme:dark){.microphone-permission-dialog{color:#f1f4f2;background:#1c211e;border-color:#39483e}
.microphone-permission-dialog>header span,.microphone-permission-points small{color:#aeb8b1}
.microphone-permission-points article{background:#252d28}
.microphone-permission-secondary{color:#a5e0bd;background:#25382c;border-color:#3d5d49}
}
.voice-message{min-width:82px;min-height:24px;color:inherit;cursor:pointer;font:inherit;touch-action:manipulation;background:0 0;border:0;justify-content:flex-end;align-items:center;gap:8px;padding:2px 0;font-size:13px;font-weight:600;display:inline-flex}
.voice-message.playing .voice-waves{animation:.68s ease-in-out infinite alternate voice-wave}
.voice-waves{justify-content:flex-end;align-items:center;gap:2px;width:14px;height:17px;display:inline-flex}
.voice-waves i{transform-origin:50%;background:currentColor;border-radius:999px;width:2px;display:block}
.voice-waves i:first-child{opacity:.55;height:5px}
.voice-waves i:nth-child(2){opacity:.75;height:10px}
.voice-waves i:nth-child(3){height:15px}
.mine .voice-message{flex-direction:row-reverse;justify-content:flex-start}
@keyframes voice-wave{0%{opacity:.46;transform:scaleY(.72)}
to{opacity:1;transform:scaleY(1.12)}
}
.send-button{background:var(--accent);color:#fff;cursor:pointer;border:0;border-radius:5px;flex:none;min-width:68px;height:36px;padding:0 14px;font-size:12px;font-weight:650}
.send-button:hover{background:#06ae56}
.send-button:disabled{cursor:wait;opacity:.65}
.composer-meta{color:#9aa1ad;justify-content:flex-start;padding:7px 6px 0;font-size:9px;display:flex}
.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}
.ai-drawer-backdrop{z-index:90;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#13192161;justify-content:flex-end;display:flex;position:fixed;inset:0}
.ai-drawer{background:#f5f6f7;flex-direction:column;width:min(440px,100%);height:100%;animation:.18s ease-out drawer-in;display:flex;overflow:hidden;box-shadow:-18px 0 60px #0f172a2e}
@keyframes drawer-in{0%{opacity:0;transform:translate(24px)}
}
.ai-drawer>header{border-bottom:1px solid var(--line);background:#fff;align-items:center;gap:12px;min-height:74px;padding:14px 18px;display:flex}
.ai-drawer>header>div{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}
.ai-drawer>header span{color:#079849;font-size:10px}
.ai-drawer>header strong{font-size:17px}
.ai-drawer>header button{cursor:pointer;background:#f0f2f4;border:0;border-radius:6px;place-items:center;width:34px;height:34px;font-size:20px;display:grid}
.ai-drawer-content,.deliverables-list{padding:16px;overflow-y:auto}
.task-status-panel{background:linear-gradient(135deg,#f3fbf6,#fff);border:1px solid #d8eadf;border-radius:8px;align-items:center;gap:13px;padding:17px;display:flex}
.task-status-panel>div{flex-direction:column;gap:4px;min-width:0;display:flex}
.task-status-panel strong{font-size:14px}
.task-status-panel small{color:var(--muted);font-size:10px}
.task-brief{background:#fff;border:1px solid #e0e3e6;border-radius:8px;margin-top:14px;padding:15px}
.drawer-section-title{justify-content:space-between;align-items:center;gap:12px;display:flex}
.drawer-section-title strong{font-size:13px}
.drawer-section-title span{color:#078d49;font-size:10px}
.task-brief ol{flex-direction:column;gap:10px;margin:12px 0 0;padding:0;list-style:none;display:flex}
.task-brief li{background:#f6f7f8;border-radius:6px;flex-direction:column;gap:4px;padding:10px 11px;display:flex}
.task-brief li small{color:#079849;font-size:9px;font-weight:700}
.task-brief li span{color:#2f343b;white-space:pre-wrap;font-size:12px;line-height:1.55}
.task-brief li b{color:#78808c;font-size:9px;font-weight:500}
.task-brief p{color:var(--muted);margin:12px 0 0;font-size:11px}
.task-stage-list{background:#fff;border:1px solid #e0e3e6;border-radius:8px;flex-direction:column;gap:12px;margin-top:14px;padding:14px 16px;display:flex}
.task-stage-list>div{color:#4d5662;align-items:center;gap:10px;font-size:11px;display:flex}
.task-stage-list i{background:#fff;border:2px solid #adb6b1;border-radius:50%;width:8px;height:8px}
.task-stage-list i.done{border-color:var(--green);background:var(--green)}
.task-stage-list i.current{border-color:var(--green);box-shadow:0 0 0 4px #07c1601a}
.stop-task-button{color:#b4443d;cursor:pointer;background:snow;border:1px solid #e5c9c6;border-radius:7px;width:100%;min-height:40px;margin-top:14px;font-size:11px}
.stop-task-button:disabled{color:#999;cursor:wait}
.drawer-empty-state{color:#7b838e;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:320px;padding:30px;display:flex}
.drawer-empty-state>span{color:#079849;background:#e6f6ec;border-radius:50%;place-items:center;width:54px;height:54px;margin-bottom:6px;font-size:22px;display:grid}
.drawer-empty-state strong{color:#343a42;font-size:14px}
.drawer-empty-state p{max-width:260px;margin:0;font-size:11px;line-height:1.6}
.deliverables-list{flex-direction:column;gap:9px;display:flex}
.deliverables-list>a{min-width:0;color:inherit;background:#fff;border:1px solid #e0e3e6;border-radius:8px;align-items:center;gap:11px;padding:13px;text-decoration:none;display:flex}
.deliverables-list>a:hover{background:#f8fcf9;border-color:#b8dec7}
.deliverables-list>a>span{color:#078d49;background:#e7f7ed;border-radius:7px;flex:none;place-items:center;width:38px;height:38px;display:grid}
.deliverables-list>a>div{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}
.deliverables-list strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}
.deliverables-list small{color:var(--muted);font-size:9px}
.deliverables-list b{color:#078d49;font-size:10px;font-weight:600}
.annotation-backdrop{z-index:20;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#111723ad;place-items:center;padding:24px;display:grid;position:fixed;inset:0}
.annotation-dialog{background:#fff;border-radius:18px;grid-template-rows:auto auto minmax(0,1fr) auto;width:min(820px,100%);max-height:calc(100dvh - 48px);display:grid;overflow:hidden;box-shadow:0 24px 80px #00000047}
.annotation-dialog>header,.annotation-dialog>footer{justify-content:space-between;align-items:center;gap:12px;padding:15px 18px;display:flex}
.file-preview-stage{background:#eceef3;place-items:center;min-height:420px;display:grid;overflow:hidden}
.file-preview-stage img,.file-preview-stage iframe{object-fit:contain;background:#fff;border:0;width:100%;height:min(68dvh,650px);display:block}
.annotation-dialog>header{border-bottom:1px solid var(--line)}
.annotation-dialog>header>div{flex-direction:column;gap:3px;display:flex}
.annotation-dialog>header strong{font-size:14px}
.annotation-dialog>header span{color:var(--muted);font-size:10px}
.annotation-dialog>header button{cursor:pointer;background:#f0f2f6;border:0;border-radius:9px;width:32px;height:32px;font-size:20px}
.annotation-toolbar{border-bottom:1px solid var(--line);background:#fafbfc;align-items:center;gap:14px;min-height:50px;padding:8px 18px;display:flex}
.annotation-tools{gap:6px;display:flex}
.annotation-tools button{color:#4b5260;cursor:pointer;background:#fff;border:1px solid #d9dde5;border-radius:9px;height:32px;padding:0 12px;font-size:11px}
.annotation-tools button.active{color:#087940;background:#07c1601a;border-color:#07c1607a;box-shadow:0 0 0 2px #07c1600f}
.annotation-colors{align-items:center;gap:8px;display:flex}
.annotation-colors button{background:var(--annotation-color);border:2px solid #fff;border-radius:50%;width:24px;height:24px;padding:0}
@supports (color:color-mix(in lab, red, red)){.annotation-colors button{background:color-mix(in srgb, var(--annotation-color) 72%, transparent)}
}
.annotation-colors button{cursor:pointer;box-shadow:0 0 0 1px #1e242e26}
.annotation-colors button.active{box-shadow:0 0 0 2px white, 0 0 0 4px var(--annotation-color)}
@supports (color:color-mix(in lab, red, red)){.annotation-colors button.active{box-shadow:0 0 0 2px white, 0 0 0 4px color-mix(in srgb, var(--annotation-color) 62%, transparent)}
}
.annotation-text-field{background:#fff;border:1px solid #d9dde5;border-radius:9px;align-items:center;height:32px;display:flex;overflow:hidden}
.annotation-text-field span{color:#697180;white-space:nowrap;padding-left:9px;font-size:10px}
.annotation-text-field input{color:#343b47;background:0 0;border:0;outline:none;width:112px;height:100%;padding:0 9px 0 6px;font-size:10px}
.annotation-line-note{color:var(--muted);white-space:nowrap;margin-left:auto;font-size:10px}
.annotation-stage{background:linear-gradient(45deg,#e7e9ee 25%,#0000 25%) 0 0/18px 18px,linear-gradient(-45deg,#e7e9ee 25%,#0000 25%) 0 9px/18px 18px,linear-gradient(45deg,#0000 75%,#e7e9ee 75%) 9px -9px/18px 18px,linear-gradient(-45deg,#0000 75%,#e7e9ee 75%) -9px 0/18px 18px,#f4f5f8;place-items:center;min-height:280px;padding:22px;display:grid;position:relative;overflow:auto}
.annotation-stage img{object-fit:contain;-webkit-user-select:none;user-select:none;max-width:100%;max-height:calc(100dvh - 220px);display:block}
.annotation-stage canvas{touch-action:none;cursor:crosshair;position:absolute}
.annotation-loupe{z-index:3;pointer-events:none;background-color:#fff;background-repeat:no-repeat;border:2px solid;border-radius:50%;width:100px;height:100px;position:absolute;overflow:hidden;transform:translate(-50%,calc(-100% - 22px));box-shadow:0 10px 30px #1016203d,inset 0 0 0 1px #ffffffd9}
.annotation-loupe:before,.annotation-loupe:after,.annotation-loupe>span{content:"";pointer-events:none;position:absolute}
.annotation-loupe:before{border-top:1px solid #141c288c;width:24%;top:50%;left:38%}
.annotation-loupe:after{border-left:1px solid #141c288c;height:24%;top:38%;left:50%}
.annotation-loupe>span{border:1px solid;border-radius:50%;width:10px;height:10px;top:50%;left:50%;transform:translate(-50%,-50%)}
.annotation-dialog>footer{border-top:1px solid var(--line);justify-content:flex-end}
@media (width<=680px){.annotation-backdrop{padding:0}
.annotation-dialog{border-radius:0;width:100%;min-height:100dvh;max-height:100dvh}
.annotation-toolbar{flex-wrap:wrap;gap:9px 12px;padding:9px 12px}
.annotation-tools{flex:auto}
.annotation-tools button{flex:1;min-width:86px}
.annotation-colors{flex:auto;order:3;justify-content:space-between}
.annotation-colors button{width:28px;height:28px}
.annotation-line-note{margin-left:0}
.annotation-text-field{flex:100%;order:4}
.annotation-text-field input{flex:1;width:100%}
.annotation-stage{padding:12px}
.annotation-stage img{max-height:calc(100dvh - 240px)}
}
.secondary-button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:10px;height:36px;padding:0 14px;font-size:12px}
.contact-dialog,.avatar-dialog,.group-dialog{background:#f7f7f7;border-radius:8px;width:min(480px,100%);max-height:min(720px,100dvh - 48px);overflow:hidden;box-shadow:0 22px 72px #00000047}
.contact-dialog>header,.contact-dialog>footer,.avatar-dialog>header,.avatar-dialog>footer,.group-dialog>header,.group-dialog>footer{background:#fff;align-items:center;gap:12px;padding:16px 18px;display:flex}
.contact-dialog>header,.avatar-dialog>header,.group-dialog>header{border-bottom:1px solid var(--line)}
.contact-dialog>header>div,.avatar-dialog>header>div,.group-dialog>header>div{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}
.contact-dialog>header strong,.avatar-dialog>header strong,.group-dialog>header strong{font-size:15px}
.contact-dialog>header span,.contact-dialog>footer span,.avatar-dialog>header span,.avatar-dialog>footer span,.group-dialog>header span,.group-dialog>footer span{color:var(--muted);font-size:10px}
.contact-dialog>header button,.avatar-dialog>header button,.group-dialog>header button{cursor:pointer;background:0 0;border:0;width:30px;height:30px;font-size:21px}
.group-dialog{width:min(520px,100%)}
.group-name-field{color:#697284;background:#fff;border-radius:6px;align-items:center;gap:12px;margin:13px;padding:10px 12px;font-size:11px;display:flex}
.group-name-field input{border:0;outline:0;flex:1;min-width:0;font-size:12px}
.group-member-heading{color:#687284;justify-content:space-between;padding:4px 16px 9px;font-size:10px;display:flex}
.group-member-list{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff;grid-template-columns:repeat(2,minmax(0,1fr));max-height:min(310px,100dvh - 360px);display:grid;overflow-y:auto}
.group-member-row,.assistant-invite-row{cursor:pointer;border-bottom:1px solid #eee;align-items:center;gap:9px;min-width:0;min-height:60px;padding:8px 13px;display:flex}
.group-member-row:nth-child(odd){border-right:1px solid #eee}
.group-member-row>span:last-child,.assistant-invite-row>span:last-child{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}
.group-member-row .avatar,.assistant-invite-row .avatar{border-radius:7px;width:36px;height:36px;font-size:12px}
.group-member-row strong,.assistant-invite-row strong{font-size:11px}
.group-member-row small,.assistant-invite-row small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}
.assistant-invite-row{background:#f2fbf6;border:1px solid #d8ebdf;border-radius:7px;margin:10px 13px}
.group-dialog>footer{border-top:1px solid var(--line);justify-content:space-between}
.send-button:disabled{cursor:not-allowed;background:#cbd0d6}
.avatar-dialog{width:min(620px,100%);overflow-y:auto}
.avatar-grid{background:#f7f7f7;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;padding:16px;display:grid}
.avatar-choice{color:#596170;cursor:pointer;background:#fff;border:2px solid #0000;border-radius:10px;flex-direction:column;align-items:center;gap:6px;min-width:0;padding:7px;display:flex}
.avatar-choice:hover{border-color:#c8ead7}
.avatar-choice.selected{border-color:var(--green);color:#087b40;background:#f0fbf5}
.avatar-choice .avatar-artwork{border-radius:12px;width:64px;height:64px}
.avatar-choice span{font-size:10px}
.avatar-upload-row{border:1px solid var(--line);background:#fff;border-radius:8px;align-items:center;gap:11px;margin:0 16px 16px;padding:12px;display:flex}
.profile-id-card{background:#f1faf5;border:1px solid #d6eadf;border-radius:8px;align-items:center;gap:11px;margin:16px 16px 0;padding:12px;display:flex}
.profile-id-card>span{flex-direction:column;gap:3px;min-width:0;display:flex}
.profile-id-card>span:nth-child(2){flex:1}
.profile-id-card strong{font-size:12px}
.profile-id-card small{color:var(--muted);font-size:9px}
.profile-id-card .public-id-value{min-width:92px}
.profile-id-card .public-id-value strong{color:#087b40;letter-spacing:.04em;font-size:14px}
.profile-invite-card{background:#f1faf5;border:1px solid #d6eadf;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;margin:10px 16px 0;padding:12px;display:flex}
.profile-invite-card>span{flex-direction:column;gap:3px;min-width:0;display:flex}
.profile-invite-card strong{color:#087b40;letter-spacing:.16em;font-size:18px}
.profile-invite-card small{color:var(--muted);font-size:9px}
.profile-action-menu{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:12px 16px 16px;display:grid}
.profile-action-menu button,.profile-action-menu a{min-width:0;color:var(--ink);cursor:pointer;text-align:left;background:#fff;border:1px solid #d6eadf;border-radius:8px;grid-template-rows:auto auto;grid-template-columns:34px minmax(0,1fr);align-items:center;column-gap:9px;padding:12px;text-decoration:none;display:grid}
.profile-action-menu button>span,.profile-action-menu a>span{color:#087b40;background:#eaf8f0;border-radius:9px;grid-row:1/3;place-items:center;width:34px;height:34px;font-size:16px;font-weight:800;display:grid}
.profile-action-menu strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}
.profile-action-menu small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:8px;overflow:hidden}
.avatar-current-preview{border-radius:10px;flex:none;width:48px;height:48px;overflow:hidden}
.avatar-upload-row>div:nth-child(2){flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}
.avatar-upload-row strong{font-size:12px}
.avatar-upload-row span{color:var(--muted);font-size:9px}
.avatar-dialog>footer{border-top:1px solid var(--line);justify-content:space-between}
.contact-search{color:#8a8a8a;background:#fff;border-radius:5px;align-items:center;gap:8px;margin:12px;padding:9px 11px;display:flex}
.contact-search input{background:0 0;border:0;outline:0;flex:1;min-width:0;font-size:12px}
.external-friend-row{gap:8px;margin:0 12px 12px;display:flex}
.external-friend-row input{border:1px solid var(--line);border-radius:5px;outline:0;flex:1;min-width:0;padding:9px 11px;font-size:11px}
.external-friend-row button{background:var(--green);color:#fff;cursor:pointer;border:0;border-radius:5px;padding:0 12px;font-size:10px}
.external-friend-row button:disabled{background:#cbd0d6}
.friend-search-status{color:#c3423b;margin:-4px 14px 10px;font-size:10px}
.contact-list{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff;max-height:min(500px,100dvh - 220px);overflow-y:auto}
.contact-row{border-bottom:1px solid #eee;align-items:center;gap:11px;min-height:66px;margin-left:16px;padding:9px 16px 9px 0;display:flex}
.contact-row:last-child{border-bottom:0}
.contact-row>span:nth-child(2){flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}
.contact-row strong{font-size:13px}
.contact-row small{color:var(--muted);font-size:10px}
.contact-row button{background:var(--green);color:#fff;cursor:pointer;border:0;border-radius:4px;min-width:62px;height:30px;font-size:11px}
.contact-row button.requested{color:#999;background:#eee}
.contact-dialog>footer{justify-content:space-between}
@media (width<=760px){.app-shell{border:0;border-radius:0;width:100%;height:100dvh;min-height:0;margin:0;display:block}
.chat-list{display:none}
.conversation{grid-template-rows:auto minmax(0,1fr) auto;height:100dvh}
.conversation.mobile-chat-closed{display:none}
.mobile-messages-home{height:calc(100dvh - 58px - env(safe-area-inset-bottom));background:#ededed;grid-template-rows:auto auto auto minmax(0,1fr);display:grid;position:relative;overflow:hidden}
.mobile-messages-header{min-height:66px;padding:max(12px, env(safe-area-inset-top)) 18px 12px;background:linear-gradient(#f7fbf68f,#f7fbf6b3),url(/workspace-meadow-header.jpg) 50% 58%/cover no-repeat;grid-template-columns:1fr auto 1fr;align-items:end;display:grid;position:relative;box-shadow:inset 0 -1px #1f4e321a}
.mobile-messages-header>strong{color:#163d29;text-shadow:0 1px 7px #ffffffe6;grid-column:2;font-size:17px}
.mobile-messages-header>button{background:0 0;border:0;grid-column:3;justify-self:end;width:34px;height:34px;font-size:28px;font-weight:300;line-height:1}
.mobile-plus-menu{z-index:35;background:#3c3d3f;border-radius:7px;width:142px;display:grid;position:absolute;top:calc(100% - 5px);right:12px;overflow:hidden;box-shadow:0 8px 24px #00000047}
.mobile-plus-menu button,.mobile-plus-menu a{color:#fff;text-align:left;background:0 0;border:0;border-bottom:1px solid #555658;min-height:46px;padding:0 16px;font-size:13px;line-height:46px;text-decoration:none}
.mobile-message-search{color:#a0a4a2;background:#fff;border-radius:7px;align-items:center;gap:8px;margin:4px 14px 12px;padding:9px 14px;display:flex}
.mobile-message-search input{background:0 0;border:0;outline:0;width:100%;font-size:14px}
.server-status-row{color:#5c625f;background:#fff;border-bottom:1px solid #ddd;align-items:center;gap:14px;min-height:58px;padding:0 18px;display:flex}
.server-status-row>.server-status-icon{font-size:25px}
.server-status-copy{flex:1;gap:3px;min-width:0;display:grid}
.server-status-copy strong{font-size:13px;font-weight:500}
.server-status-copy small{color:#858b88;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}
.server-status-row i{background:#a0a4a2;border-radius:50%;width:9px;height:9px;box-shadow:0 0 0 4px #a0a4a221}
.server-status-row.connected i{background:#07c160;box-shadow:0 0 0 4px #07c16021}
.server-status-row.offline i{background:#d95c4d;box-shadow:0 0 0 4px #d95c4d21}
.mobile-chat-list{background:#fff;overflow-y:auto}
.mobile-chat-list button{text-align:left;background:#fff;border:0;border-bottom:1px solid #eee;align-items:center;gap:12px;width:100%;min-height:76px;padding:10px 16px;display:flex}
.mobile-chat-list button>span:nth-child(2){flex-direction:column;flex:1;gap:5px;min-width:0;display:flex}
.mobile-chat-list strong{text-overflow:ellipsis;white-space:nowrap;font-size:15px;overflow:hidden}
.mobile-chat-list small{color:#a0a4a2;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}
.mobile-chat-list time{color:#b1b4b2;align-self:flex-start;padding-top:3px;font-size:10px}
.mobile-chat-empty{color:#999;text-align:center;margin:0;padding:42px 20px;font-size:13px}
.mobile-chat-back{z-index:4;color:#181818;text-align:left;white-space:nowrap;background:0 0;border:0;flex:none;width:72px;height:34px;font-size:16px;display:block;position:relative}
.workspace-section{height:calc(100dvh - 58px - env(safe-area-inset-bottom))}
.conversation-header{min-height:68px;padding:max(10px, env(safe-area-inset-top)) 14px 10px;background:#edededf7;justify-content:space-between;position:relative}
.conversation-header .conversation-title{text-align:center;min-width:0;position:absolute;left:78px;right:78px}
.conversation-header .conversation-title h1{text-overflow:ellipsis;white-space:nowrap;font-size:17px;overflow:hidden}
.conversation-header .conversation-title p,.conversation-header .conversation-title .assistant-note{display:none}
.mobile-quick-actions{border-bottom:1px solid var(--line);background:#fff;gap:0;display:grid}
.mobile-quick-actions button,.mobile-quick-actions a{background:#fff;border:0;border-right:1px solid #e5ebe7;border-radius:0;height:45px;font-size:12px}
.mobile-quick-actions>:last-child{border-right:0}
.mobile-primary-nav{z-index:20;min-height:calc(58px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fafafaf7;border-top:1px solid #dcdedc;grid-template-columns:repeat(4,minmax(0,1fr));display:grid;position:fixed;bottom:0;left:0;right:0}
.mobile-primary-nav.chat-open{display:none}
.mobile-primary-nav button{color:#727775;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-width:0;font-size:10px;font-weight:700;display:flex}
.mobile-primary-nav button>span{place-items:center;width:25px;height:25px;font-size:17px;display:grid}
.mobile-primary-nav button.active{color:#07a653}
.mobile-nav-avatar{border-radius:7px;overflow:hidden}
.workspace-section-header{min-height:64px;padding:max(12px, env(safe-area-inset-top)) 18px 12px}
.directory-content,.me-content,.discover-content{padding:14px}
.directory-row{padding:9px 13px}
.me-profile-card{min-height:96px;padding:14px}
.me-profile-card b{font-size:0}
.me-profile-card b:after{content:"›";font-size:22px}
.mobile-avatar,.ai-window-actions,.scan-login-button,.profile-avatar-button,.notification-button,.conversation-header>.group-settings-button{display:none}
.mobile-chat-more{color:#181818;letter-spacing:2px;text-align:right;background:0 0;border:0;flex:none;width:64px;height:34px;margin-left:auto;font-size:20px;font-weight:700;display:block}
.messages{padding:18px 13px 20px}
.message-row{max-width:92%;margin-bottom:18px}
.bubble{font-size:13px}
.composer{height:calc(114px + env(safe-area-inset-bottom));padding:7px 10px calc(33px + env(safe-area-inset-bottom))}
.composer form{grid-template-rows:1fr;grid-template-columns:auto minmax(0,1fr) auto auto;gap:5px;height:56px;padding:5px;display:grid}
.composer-draft-stack{grid-area:1/2;width:100%;height:46px}
.composer textarea{height:46px;min-height:46px;max-height:46px;padding:11px 7px;font-size:16px}
.composer .voice-button{grid-area:1/1}
.composer .emoji-button{grid-area:1/3}
.composer .send-button,.composer .composer-plus-button{grid-area:1/4}
.active-turn{bottom:calc(100% + 5px);left:10px;right:10px}
.composer-meta span{display:none}
.composer-meta .send-error{flex:1;min-width:0;display:block}
.composer-meta{justify-content:flex-start;gap:6px}
.send-button{min-width:50px;padding:0 8px}
.attach-button,.voice-button{width:36px;height:32px}
.voice-button{width:34px}
.hold-to-talk{height:32px}
.cartoon-icon{width:21px;height:21px}
.emoji-panel{width:calc(100% - 12px)}
.attachment-panel{grid-template-columns:minmax(0,176px) minmax(72px,82px);gap:12px;padding:18px 16px 22px}
.attachment-photo-actions{grid-template-columns:repeat(2,minmax(72px,82px));gap:12px}
.attachment-file-action{padding-left:10px}
.emoji-grid{grid-template-columns:repeat(8,1fr)}
.voice-preview audio{flex:1;min-width:0}
.annotation-backdrop{padding:0}
.annotation-dialog{border-radius:0;width:100%;height:100dvh;max-height:none}
.contact-dialog,.group-dialog{border-radius:0;width:100%;max-height:100dvh}
.group-member-list{grid-template-columns:1fr;max-height:calc(100dvh - 330px)}
.group-member-row:nth-child(odd){border-right:0}
.avatar-dialog{border-radius:0;width:100%;max-height:100dvh}
.avatar-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;padding:12px}
.avatar-choice .avatar-artwork{width:56px;height:56px}
.avatar-upload-row{margin:0 12px 12px}
.profile-id-card{flex-wrap:wrap;margin:12px 12px 0}
.profile-id-card>span:nth-child(2){min-width:calc(100% - 64px)}
.profile-id-card .public-id-value{flex:1}
.profile-invite-card{margin:10px 12px 0}
.profile-action-menu{grid-template-columns:1fr;margin:10px 12px 14px}
.annotation-stage img{max-height:calc(100dvh - 190px)}
.file-preview-stage{min-height:0}
.file-preview-stage img,.file-preview-stage iframe{height:calc(100dvh - 126px)}
.messages.selection-mode{padding-left:50px}
.message-selection-bar{height:calc(74px + env(safe-area-inset-bottom));padding:10px 12px calc(10px + env(safe-area-inset-bottom));grid-template-columns:70px minmax(0,1fr) 70px}
.message-action-backdrop{place-items:center;padding:18px}
.forward-dialog-backdrop{padding:10px 10px max(10px, env(safe-area-inset-bottom));align-items:end}
.message-action-sheet{width:min(330px,100vw - 36px)}
.forward-dialog{border-radius:14px 14px 8px 8px;width:100%;max-height:min(76dvh,680px)}
}
@media (prefers-color-scheme:dark){:root{--ink:#f1f3f2;--muted:#a4aba7;--line:#353b37;--panel:#171b18;--canvas:#101310;--bubble-green:#276f43}
html,body,.workspace-section,.mobile-messages-home,.messages{background:#101310}
.chat-list,.composer,.conversation-header,.mobile-primary-nav{background:#191e1bfa}
.search-box,.search-box:focus-within,.composer form,.bubble,.progress-card,.ai-running-bubble,.emoji-panel,.attachment-panel,.workspace-section-header,.directory-block,.directory-row,.me-profile-card,.me-settings-list,.me-settings-list>button,.discover-content a,.discover-content button,.mobile-message-search,.mobile-chat-list,.mobile-chat-list button,.server-status-row,.profile-action-menu button,.profile-action-menu a,.attachment-panel button,.attachment-panel button>span,.message-selection-bar,.forward-dialog,.forward-dialog>header>button{color:#f1f3f2;background:#1b201c;border-color:#353b37}
.message-selection-bar button,.message-selection-check{color:#f1f3f2;background:#242b26;border-color:#4a514c}
.message-selection-check.selected,.message-selection-bar .message-selection-forward{color:#fff;background:#07c160;border-color:#07c160}
.forward-target-list>button.selected{background:#07c16029}
.mine .bubble{background:#276f43;border-color:#397b52}
.attach-button,.voice-button,.pending-file,.workspace-primary-nav{color:#dce2de;background:#242b26}
.workspace-primary-nav button{color:#b4bbb7}
.workspace-primary-nav button.active,.emoji-grid button:hover{color:#72d69c;background:#303832}
.ai-window-button,.hold-to-talk,.voice-preview,.active-turn{color:#dce2de;background:#242b26;border-color:#353b37}
.ai-window-button:hover,.ai-window-button.running,.attach-button:hover,.voice-button:hover,.attach-button.active,.voice-button.active{color:#72d69c;background:#1b3525;border-color:#355444}
.notification-button,.scan-login-button,.group-settings-button,.mobile-chat-back,.mobile-chat-more{color:#dce2de}
.notification-button:hover,.scan-login-button:hover,.group-settings-button:hover{color:#72d69c;background:#303832}
.profile-avatar-button{background:#242b26e6;border-color:#353b37}
.conversation-header{color:#f1f3f2;background:linear-gradient(90deg,#111813e6,#111813b8),url(/workspace-meadow-header.jpg) 50%/100% 100% no-repeat}
.conversation-header h1,.progress-step strong,.emoji-panel-title strong,.message-file-card strong,.group-member-row strong,.assistant-invite-row strong,.contact-row strong,.avatar-upload-row strong,.profile-id-card strong,.annotation-dialog strong,.contact-dialog strong,.avatar-dialog strong,.group-dialog strong,.progress-summary strong,.task-brief li span,.task-stage-list>div,.drawer-empty-state strong{color:#f1f3f2}
.progress-details{border-color:#353b37}
.progress-step>i,.task-stage-list i{background:#1b201c}
.ai-drawer{background:#101310;box-shadow:-18px 0 60px #0000007a}
.ai-drawer>header,.task-status-panel,.task-brief,.task-stage-list,.deliverables-list>a,.annotation-dialog,.annotation-dialog>header,.annotation-dialog>footer,.annotation-toolbar,.annotation-tools button,.annotation-text-field,.contact-dialog,.avatar-dialog,.group-dialog,.contact-dialog>header,.contact-dialog>footer,.avatar-dialog>header,.avatar-dialog>footer,.group-dialog>header,.group-dialog>footer,.group-name-field,.group-member-list,.avatar-grid,.avatar-choice,.avatar-upload-row,.profile-id-card,.profile-invite-card,.contact-search,.contact-list,.secondary-button{color:#f1f3f2;background:#1b201c;border-color:#353b37}
.ai-drawer>header button,.annotation-dialog>header button,.task-brief li,.avatar-choice.selected,.assistant-invite-row,.profile-action-menu button>span,.profile-action-menu a>span{color:#72d69c;background:#242b26;border-color:#355444}
.deliverables-list>a:hover{background:#202b24;border-color:#4a765c}
.annotation-tools button.active{color:#72d69c;background:#1b3525;border-color:#4d8d67}
.annotation-text-field span,.group-name-field,.group-member-heading,.avatar-choice{color:#b4bbb7}
.annotation-text-field input,.group-name-field input,.contact-search input,.external-friend-row input{color:#f1f3f2;background:0 0}
.external-friend-row input{border-color:#353b37}
.group-member-row,.assistant-invite-row,.contact-row{border-color:#303632}
.file-preview-stage{background:#0c0f0d}
.annotation-stage{background:linear-gradient(45deg,#202522 25%,#0000 25%) 0 0/18px 18px,linear-gradient(-45deg,#202522 25%,#0000 25%) 0 9px/18px 18px,linear-gradient(45deg,#0000 75%,#202522 75%) 9px -9px/18px 18px,linear-gradient(-45deg,#0000 75%,#202522 75%) -9px 0/18px 18px,#171b18}
.stop-task-button{color:#f08e85;background:#2a1d1b;border-color:#74423e}
.contact-row button.requested,.send-button:disabled,.external-friend-row button:disabled{color:#a4aba7;background:#353b37}
.sidebar-quick-actions button,.sidebar-quick-actions a,.mobile-quick-actions button,.mobile-quick-actions a{color:#72d69c;background:#1b2b21;border-color:#355444}
.mobile-messages-header{background:linear-gradient(#0e1811a3,#0e1811c7),url(/workspace-meadow-header.jpg) 50% 58%/cover no-repeat}
.mobile-messages-header>strong{color:#e5f5e9;text-shadow:0 1px 7px #000c}
.message-file-card>b{color:#76dfa1;background:#0000002e}
.message-file-card small,.mobile-chat-list small,.mobile-chat-list time{color:#9aa29d}
input,textarea,select{color:#f1f3f2}
}
@supports (display:tangban-garden-disabled){:root{--ink:#17211b;--muted:#748078;--line:#2246301c;--panel:#fff;--canvas:#eef2ee;--accent:#08ad5b;--green:#08ad5b;--bubble-green:#95e66f;--garden-shadow:0 22px 70px #1b3f2929}
.navigation-icon{stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px;display:block}
.app-shell{width:min(1240px,100% - 48px);box-shadow:var(--garden-shadow);border-color:#2c5b3d1f;border-radius:20px;grid-template-columns:342px minmax(0,1fr)}
.chat-list{background:linear-gradient(#f8fcf7f0,#f4f7f4fa),url(/workspace-meadow-header.jpg) top/100% 150px no-repeat;border-right-color:#2d533a1a}
.brand-row{min-height:86px;padding:19px 20px 14px;position:relative;overflow:hidden}
.brand-row:after{content:"堂伴 · 一起把事做好";color:#1e573385;letter-spacing:.12em;font-size:9px;font-weight:750;position:absolute;top:11px;right:19px}
.brand-mark{border:2px solid #ffffffe6;border-radius:15px;width:48px;height:48px;overflow:hidden;box-shadow:0 8px 22px #1f5f3833}
.brand-row strong{color:#173d28;font-size:17px}
.workspace-primary-nav{background:#e8efeadb;border:1px solid #2d583c14;border-radius:14px;gap:3px;margin:0 16px 15px;padding:5px}
.workspace-primary-nav button{border-radius:10px;gap:4px;min-height:51px;font-size:10px}
.workspace-primary-nav button.active{color:#087a42;box-shadow:0 4px 14px #2b52391c}
.workspace-primary-nav .navigation-icon{width:20px;height:20px}
.search-box,.mobile-message-search{background:#ffffffd6;border:1px solid #294e3514;border-radius:12px;box-shadow:0 4px 18px #2746310a}
.search-box .navigation-icon,.mobile-message-search .navigation-icon{width:17px;height:17px}
.chat-row{border-radius:12px;width:calc(100% - 20px);margin:2px 10px;padding:12px}
.chat-row:hover{background:#e4ede6d6}
.chat-row.selected{background:#d2e8d9e6;box-shadow:inset 3px 0 #08ad5b}
.avatar,.message-avatar,.avatar-current-preview,.profile-button-art,.mobile-nav-avatar{border:1px solid #ffffffd1;overflow:hidden;box-shadow:0 4px 13px #1a3f281f}
.avatar{border-radius:13px}
.avatar-artwork{transform:scale(1.015)}
.conversation-header{background:linear-gradient(90deg,#f8fcf7e6,#f7fcf6ad),url(/workspace-meadow-header.jpg) 50% 55%/cover no-repeat;border-bottom-color:#2a53381c;min-height:78px;box-shadow:0 3px 18px #22432d0f}
.conversation-header h1{color:#173d28;font-size:17px}
.messages{background:radial-gradient(circle at 5% 3%,#ffffffb3,#0000 24%),radial-gradient(circle at 95% 85%,#b8e0c233,#0000 25%),linear-gradient(#eef2ee 0%,#e9eeea 100%)}
.bubble{background:#fffffff5;border-color:#2f47381a;border-radius:7px;box-shadow:0 3px 12px #273d2f0f}
.mine .bubble{background:var(--bubble-green);border-color:#469f4533;border-radius:7px;box-shadow:0 3px 12px #3b7d3a14}
.message-image-attachment{cursor:zoom-in;border-radius:6px;min-width:120px}
.composer{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#f6f9f6f5;border-top-color:#2949331a;height:98px}
.composer form{border-color:#2c4f3821;border-radius:13px;height:62px;box-shadow:0 7px 24px #23422e12}
.composer textarea{font-size:14px}
.attach-button,.emoji-button,.voice-mode-button{border-radius:9px}
.friend-remark-field{border:1px solid var(--line);background:#fff;border-radius:10px;grid-template-columns:minmax(120px,1fr) minmax(140px,220px) auto;align-items:center;gap:10px;margin:10px 16px 16px;padding:12px;display:grid}
.friend-remark-field>span{gap:3px;display:grid}
.friend-remark-field strong{font-size:12px}
.friend-remark-field small{color:var(--muted);font-size:9px}
.friend-remark-field input{background:#f7faf8;border:1px solid #d8e2db;border-radius:7px;outline:none;width:100%;min-height:36px;padding:0 10px}
.friend-remark-field input:focus{border-color:#79c99c;box-shadow:0 0 0 3px #07c1601a}
.friend-remark-error{color:#c5463d;margin:-8px 28px 14px;font-size:11px}
.group-dialog{border-radius:18px;box-shadow:0 26px 80px #16332140}
.group-dialog>header{background:linear-gradient(#f9fdf8db,#f9fdf8e6),url(/workspace-meadow-header.jpg) 50%/cover}
.group-name-field{border-radius:10px}
.group-error{color:#c5463d;margin:0 18px 10px;font-size:11px}
@media (width<=760px){.app-shell{width:100%;max-width:none;height:100dvh;min-height:0;box-shadow:none;border:0;border-radius:0;margin:0;display:block;overflow:hidden}
.mobile-messages-home{background:#f2f4f2}
.mobile-messages-header{min-height:82px;padding:max(15px, env(safe-area-inset-top)) 18px 13px;background:linear-gradient(#f5fcf485,#f5fcf4c7),url(/workspace-meadow-header.jpg) 50% 58%/cover no-repeat;align-items:end}
.mobile-messages-header:before{content:"花草作伴 · 认真做事";color:#173d289e;letter-spacing:.08em;font-size:9px;font-weight:700;position:absolute;bottom:12px;left:18px}
.mobile-messages-header>strong{letter-spacing:.12em;font-size:19px}
.mobile-message-search{margin:8px 12px 10px;padding:9px 13px}
.server-status-row{background:#ffffffed;border:1px solid #264e3314;border-radius:12px;min-height:62px;margin:0 12px 8px;padding:0 14px;box-shadow:0 5px 18px #24412e0d}
.server-status-icon .navigation-icon{width:25px;height:25px}
.mobile-chat-list{background:#fff}
.mobile-chat-list button{border-bottom-color:#2e483714;min-height:78px;padding:10px 15px}
.mobile-chat-list .avatar{width:50px;height:50px}
.mobile-primary-nav{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f9fbf9f0;border-top-color:#25422f1a}
.mobile-primary-nav .navigation-icon{width:24px;height:24px}
.conversation-header{min-height:calc(58px + env(safe-area-inset-top));padding-top:env(safe-area-inset-top);background:linear-gradient(#f8fcf7d1,#f8fcf7e6),url(/workspace-meadow-header.jpg) 50% 55%/cover no-repeat}
.conversation-header h1{font-size:16px}
.messages{padding:18px 12px 22px}
.message-row{max-width:94%}
.bubble{padding:10px 12px;font-size:15px;line-height:1.52}
.composer{height:calc(76px + env(safe-area-inset-bottom));padding:7px 8px calc(7px + env(safe-area-inset-bottom))}
.composer form{border-radius:12px;height:58px}
.composer textarea{font-size:16px}
.friend-remark-field{grid-template-columns:minmax(0,1fr) auto;margin:10px 12px 14px}
.friend-remark-field>span{grid-column:1/-1}
.group-dialog{border-radius:0;width:100%;height:100dvh;max-height:none}
.group-dialog>header{min-height:calc(62px + env(safe-area-inset-top));padding-top:env(safe-area-inset-top)}
.group-member-list{max-height:none}
}
@media (prefers-color-scheme:dark){:root{--ink:#eef4ef;--muted:#9ba79f;--line:#cae3d21f;--panel:#151a17;--canvas:#111512;--bubble-green:#306f45}
.chat-list{background:linear-gradient(#151c17e0,#141916fa),url(/workspace-meadow-header.jpg) top/100% 150px no-repeat}
.brand-row strong,.conversation-header h1{color:#e9f6ec}
.brand-row:after,.mobile-messages-header:before{color:#d3f0db9e}
.workspace-primary-nav{background:#27302adb;border-color:#bdddc714}
.workspace-primary-nav button.active,.search-box,.mobile-message-search,.server-status-row,.mobile-chat-list,.mobile-chat-list button,.friend-remark-field{color:#edf3ef;background:#202622}
.chat-row:hover{background:#252e28}
.chat-row.selected{background:#29382f}
.conversation-header,.mobile-messages-header{background:linear-gradient(#0f1712b8,#0f1712db),url(/workspace-meadow-header.jpg) 50% 58%/cover no-repeat}
.messages{background:radial-gradient(circle at 90% 85%,#3d684929,#0000 26%),linear-gradient(#151a17,#111512)}
.bubble{color:#f1f5f2;background:#252b27;border-color:#d1e7d814}
.mine .bubble{color:#f4fff7;background:#306f45;border-color:#5eab712e}
.composer,.mobile-primary-nav{background:#171c19f5}
.composer form,.friend-remark-field input{color:#eff4f0;background:#202622;border-color:#cce2d31f}
.group-dialog>header{background:linear-gradient(#171f1ad1,#171f1aeb),url(/workspace-meadow-header.jpg) 50%/cover}
}
@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important}
}
}
.navigation-icon{stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px;display:block}
.friend-remark-field{border:1px solid var(--line);background:var(--panel);border-radius:7px;grid-template-columns:minmax(120px,1fr) minmax(140px,220px) auto;align-items:center;gap:10px;margin:10px 16px 16px;padding:12px;display:grid}
.friend-remark-field>span{gap:3px;display:grid}
.friend-remark-field small{color:var(--muted);font-size:9px}
.friend-remark-field input{border:1px solid var(--line);background:0 0;border-radius:5px;width:100%;min-height:36px;padding:0 10px}
.friend-remark-error,.group-error{color:#c5463d;margin:0 18px 10px;font-size:11px}
.avatar.group-avatar{border-radius:5px;padding:0;overflow:hidden}
.group-avatar-collage{box-sizing:border-box;background:#d8d8d8;flex-wrap:wrap;place-content:center;align-items:center;gap:1px;width:100%;height:100%;padding:2px;display:flex;overflow:hidden}
.group-avatar-cell{aspect-ratio:1;background:#f3f3f3;flex:0 0 calc(33.333% - 1px);min-width:0;display:block;overflow:hidden}
.group-avatar-count-1 .group-avatar-cell{flex-basis:calc(100% - 1px)}
.group-avatar-count-2 .group-avatar-cell,.group-avatar-count-3 .group-avatar-cell,.group-avatar-count-4 .group-avatar-cell{flex-basis:calc(50% - 1px)}
.group-avatar-cell .avatar-artwork,.group-avatar-cell .avatar-photo,.group-avatar-cell .assistant-avatar-art{object-fit:cover;border-radius:0;width:100%;height:100%;display:block}
.wechat-group-dialog{background:#ededed;flex-direction:column;min-height:min(680px,100dvh - 48px);display:flex}
.group-dialog>.wechat-group-header{background:#f7f7f7;grid-template-columns:82px minmax(0,1fr) 82px;align-items:center;gap:0;min-height:56px;padding:0 12px;display:grid}
.wechat-group-header>strong{text-align:center;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}
.group-dialog>.wechat-group-header>button{width:auto;min-width:0;height:36px;color:var(--ink);background:0 0;border:0;border-radius:5px;padding:0 8px;font-size:14px}
.group-dialog>.wechat-group-header>.wechat-group-done-button{color:#fff;background:#07c160;justify-self:end;font-size:12px}
.group-dialog>.wechat-group-header>.wechat-group-done-button:disabled{cursor:default;background:#9cddb9}
.group-dialog>.wechat-group-header>.wechat-group-back-button{justify-self:start;font-size:30px;line-height:1}
.wechat-group-search{color:#8a8a8a;background:#fff;border-radius:5px;align-items:center;gap:7px;margin:10px 12px;padding:0 11px;display:flex}
.wechat-group-search input{width:100%;min-height:36px;color:var(--ink);background:0 0;border:0;outline:0;font-size:13px}
.wechat-member-selector{background:#fff;flex:1;min-height:0;overflow-y:auto}
.wechat-member-selector>p{color:var(--muted);margin:0;padding:10px 16px 7px;font-size:11px}
.wechat-member-select-row{border-bottom:1px solid var(--line);cursor:pointer;grid-template-columns:25px 42px minmax(0,1fr);align-items:center;gap:11px;min-height:62px;margin-left:14px;padding:7px 14px 7px 0;display:grid}
.wechat-member-select-row>input{accent-color:#07c160;width:20px;height:20px}
.wechat-member-select-row>.avatar{width:42px;height:42px}
.wechat-member-select-row>span:last-child{gap:3px;min-width:0;display:grid}
.wechat-member-select-row strong,.wechat-member-select-row small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}
.wechat-member-select-row small{color:var(--muted);font-size:10px}
.wechat-group-member-grid{background:#fff;grid-template-columns:repeat(5,minmax(0,1fr));gap:17px 10px;padding:22px 18px;display:grid}
.wechat-group-member-tile,.wechat-group-member-action{min-width:0;color:var(--ink);background:0 0;border:0;justify-items:center;gap:6px;display:grid}
.wechat-group-member-tile .avatar,.wechat-group-member-action>span{border-radius:5px;width:48px;height:48px}
.wechat-group-member-action>span{color:#8c8c8c;background:#fff;border:1px dashed #b8b8b8;place-items:center;font-size:31px;font-weight:300;display:grid}
.wechat-group-member-tile small,.wechat-group-member-action small{color:#666;text-align:center;text-overflow:ellipsis;white-space:nowrap;width:100%;font-size:10px;overflow:hidden}
.wechat-group-setting-list{background:var(--line);gap:1px;margin-top:10px;display:grid}
.wechat-group-setting-list>button,.wechat-group-setting-list>div{min-height:52px;color:var(--ink);text-align:left;background:#fff;border:0;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:0 16px;font-size:13px;display:grid}
.wechat-group-setting-list>button:disabled{opacity:1;cursor:default}
.wechat-group-setting-list b{color:var(--muted);text-align:right;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:400;overflow:hidden}
.wechat-group-setting-list i{color:#b4b4b4;font-size:22px;font-style:normal}
.wechat-group-setting-list>.conversation-mute-setting{cursor:pointer;grid-template-columns:minmax(0,1fr) auto}
.conversation-mute-setting>span{gap:3px;display:grid}
.conversation-mute-setting strong{color:var(--ink);font-size:13px;font-weight:500}
.conversation-mute-setting small{color:var(--muted);font-size:10px}
.conversation-mute-setting>i{background:#d5d8d6;border-radius:999px;width:42px;height:24px;transition:background .18s;position:relative}
.conversation-mute-setting>i>u{background:#fff;border-radius:50%;width:20px;height:20px;text-decoration:none;transition:transform .18s;position:absolute;top:2px;left:2px;box-shadow:0 1px 4px #0000002e}
.conversation-mute-setting>i.enabled{background:#07c160}
.conversation-mute-setting>i.enabled>u{transform:translate(18px)}
.friend-chat-setting-list{border:1px solid var(--line);background:#fff;border-radius:10px;margin:0 16px 16px;overflow:hidden}
.friend-chat-setting-list .conversation-mute-setting{text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;min-height:56px;padding:10px 12px;display:grid}
.friend-chat-setting-list .friend-remark-error{margin:0;padding:0 12px 10px}
.chat-muted-indicator{color:#a7aca9;flex:none;font-size:13px;line-height:1}
@media (prefers-color-scheme:dark){.friend-chat-setting-list,.wechat-group-setting-list>.conversation-mute-setting{background:#1d201f}
}
.wechat-group-name-editor{background:#fff;grid-template-columns:minmax(0,1fr) auto;align-items:center;margin-top:10px;padding:0 16px;display:grid}
.wechat-group-name-editor input{min-height:52px;color:var(--ink);background:0 0;border:0;outline:0;font-size:15px}
.wechat-group-name-editor small,.wechat-group-tip{color:var(--muted);font-size:10px}
.wechat-group-tip{margin:9px 16px}
@media (width<=760px){.app-shell{width:100%;max-width:none;height:100dvh;min-height:0;box-shadow:none;border:0;border-radius:0;margin:0;display:block;overflow:hidden}
.friend-remark-field{grid-template-columns:minmax(0,1fr) auto;margin:10px 12px 14px}
.friend-remark-field>span{grid-column:1/-1}
.group-dialog{border-radius:0;width:100%;height:100dvh;max-height:none}
.wechat-group-dialog{min-height:100dvh}
.group-dialog>.wechat-group-header{padding-top:env(safe-area-inset-top);min-height:calc(54px + env(safe-area-inset-top))}
.group-member-list{max-height:none}
}
@media (prefers-color-scheme:dark){.friend-remark-field,.friend-remark-field input{color:var(--ink);background:var(--panel)}
.wechat-group-dialog,.group-dialog>.wechat-group-header{color:#f3f3f3;background:#191919}
.wechat-group-search,.wechat-member-selector,.wechat-group-member-grid,.wechat-group-setting-list>button,.wechat-group-setting-list>div,.wechat-group-name-editor{color:#f3f3f3;background:#262626}
.group-dialog>.wechat-group-header>button,.wechat-group-search input,.wechat-group-name-editor input,.wechat-group-member-tile,.wechat-group-member-action{color:#f3f3f3}
.wechat-group-member-action>span{background:#262626}
}
.message-sender-name{width:fit-content;color:var(--muted);cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;margin:0 0 3px;padding:0;font-size:10px;display:block}
.mention-picker{z-index:12;border:1px solid var(--line);background:#fff;border-radius:12px;max-height:min(430px,52dvh);position:absolute;bottom:calc(100% + 8px);left:14px;right:14px;overflow:hidden;box-shadow:0 16px 48px #14221933}
.mention-picker>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:42px;padding:0 12px 0 15px;display:flex}
.mention-picker>header strong{font-size:13px}
.mention-picker>header button{width:32px;height:32px;color:var(--muted);background:0 0;border:0;font-size:24px}
.mention-candidate-list{overscroll-behavior:contain;max-height:min(386px,52dvh - 42px);display:grid;overflow-y:auto}
.mention-candidate-list>p{color:var(--muted);text-align:center;margin:0;padding:22px;font-size:12px}
.mention-candidate{border:0;border-bottom:1px solid var(--line);min-width:0;min-height:56px;color:var(--ink);cursor:pointer;text-align:left;background:0 0;grid-template-columns:40px minmax(0,1fr);align-items:center;gap:10px;padding:7px 14px;display:grid}
.mention-candidate:last-child{border-bottom:0}
.mention-candidate:hover,.mention-candidate:active{background:#07c16014}
.mention-candidate>span:last-child{gap:2px;min-width:0;display:grid}
.mention-candidate strong,.mention-candidate small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}
.mention-candidate strong{font-size:13px}
.mention-candidate small{color:var(--muted);font-size:10px}
.mention-avatar{width:40px;height:40px;color:var(--accent);background:#edf6ef;border-radius:5px;place-items:center;display:grid;overflow:hidden}
.mention-avatar.all{font-size:20px}
@media (width<=760px){.mention-picker{max-height:min(460px,58dvh);left:8px;right:8px}
.mention-candidate-list{max-height:min(418px,58dvh - 42px)}
}
@media (prefers-color-scheme:dark){.mention-picker{color:#f3f5f3;background:#242824}
.mention-candidate{color:#f3f5f3}
.mention-avatar{background:#303a32}
}
@media (width>=761px) and (height<=720px){.app-shell{width:min(1180px,100% - 16px);height:calc(100dvh - 16px);max-height:calc(100dvh - 16px);margin:8px auto}
.conversation-header{min-height:60px;padding:10px 16px}
.composer{height:82px;padding:8px 14px 10px}
}
@media (width>=761px) and (width<=1024px){.app-shell{grid-template-columns:280px minmax(0,1fr);width:calc(100% - 24px);margin-left:12px;margin-right:12px}
.conversation-header{gap:7px;padding-left:12px;padding-right:12px}
.ai-window-actions{gap:4px}
.ai-window-button{padding:0 7px}
.scan-login-button small{display:none}
}
@media (width>=761px) and (width<=860px){.app-shell{grid-template-columns:256px minmax(0,1fr)}
.conversation-header p,.assistant-note,.scan-login-button{display:none}
}
.message-action-sheet{background:#3f3f3f;border-radius:13px;grid-template-columns:repeat(5,minmax(0,1fr));width:min(680px,100vw - 36px)}
.message-action-sheet button{gap:8px;min-height:106px}
.message-action-sheet button>span{font-size:31px;font-weight:400}
.message-action-sheet button>strong{font-size:15px}
.message-action-sheet .message-action-cancel{min-height:50px}
@media (width<=460px){.message-action-sheet button{min-height:90px}
.message-action-sheet button>span{font-size:27px}
.message-action-sheet button>strong{font-size:13px}
}
.tangban-image-icon{width:1em;height:1em;display:block}
.tangban-image-popover-layer{z-index:380;position:fixed;inset:0}
.tangban-image-popover{background:#444;border-radius:9px;grid-template-columns:repeat(5,minmax(0,1fr));width:min(330px,100vw - 24px);display:grid;position:fixed;overflow:visible;box-shadow:0 14px 36px #00000054}
.tangban-image-popover:after{content:"";border-top:8px solid #444;border-left:9px solid #0000;border-right:9px solid #0000;width:0;height:0;position:absolute;bottom:-8px;left:50%;transform:translate(-50%)}
.tangban-image-popover button{color:#fff;cursor:pointer;min-height:88px;font:inherit;background:0 0;border:0;border-right:1px solid #ffffff17;align-content:center;place-items:center;gap:7px;padding:12px 4px 10px;display:grid}
.tangban-image-popover button:last-child{border-right:0}
.tangban-image-popover button:active{background:#0003}
.tangban-image-popover .tangban-image-icon{font-size:27px}
.tangban-image-popover span{font-size:13px;font-weight:500}
.tangban-image-viewer{z-index:320;color:#fff;overscroll-behavior:contain;background:#000;place-items:center;display:grid;position:fixed;inset:0;overflow:hidden}
.tangban-image-viewer>img{object-fit:contain;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-user-drag:none;max-width:100vw;max-height:100dvh;transition:transform .16s ease-out;display:block}
.message-image-button,.message-image-button img{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}
.tangban-image-close{z-index:1;top:max(13px, env(safe-area-inset-top));color:#ffffffeb;cursor:pointer;background:#00000029;border:0;border-radius:50%;width:42px;height:42px;font-size:28px;position:absolute;left:13px}
.tangban-image-viewer-tools{right:max(25px, env(safe-area-inset-right));bottom:max(28px, calc(20px + env(safe-area-inset-bottom)));gap:14px;display:flex;position:absolute}
.tangban-image-viewer-tools button{color:#f7f7f7;cursor:pointer;background:#505050f0;border:0;border-radius:50%;place-items:center;width:55px;height:55px;padding:0;display:grid}
.tangban-image-viewer-tools button:active{background:#7e7e7ef0}
.tangban-image-viewer-tools .tangban-image-icon{font-size:27px}
.tangban-image-viewer-tools button:last-child .tangban-image-icon{font-size:25px}
.tangban-image-more-layer{z-index:350;background:#00000080;align-items:end;display:flex;position:fixed;inset:0}
.tangban-image-more-sheet{width:100%;padding:25px 21px max(12px, env(safe-area-inset-bottom));color:#f3f3f3;background:#202020}
.tangban-image-more-sheet>strong{margin-bottom:19px;font-size:18px;font-weight:600;display:block}
.tangban-image-recent-targets{border-bottom:1px solid #ffffff1f;grid-template-columns:repeat(6,minmax(0,1fr));gap:11px;padding-bottom:22px;display:grid}
.tangban-image-recent-targets button,.tangban-image-more-tools button{color:#dadada;cursor:pointer;min-width:0;font:inherit;background:0 0;border:0}
.tangban-image-recent-avatar{background:#393939;border-radius:8px;place-items:center;width:58px;height:58px;margin:0 auto 7px;display:grid;overflow:hidden}
.tangban-image-recent-avatar.assistant{background:#168557}
.tangban-image-recent-targets small,.tangban-image-more-tools small{color:#c7c7c7;text-align:center;text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.32;display:block;overflow:hidden}
.tangban-image-more-tools{grid-template-columns:repeat(5,minmax(0,1fr));gap:23px 12px;padding:24px 0 25px;display:grid}
.tangban-image-more-tools button>span{color:#f5f5f5;background:#363636;border-radius:12px;place-items:center;width:64px;height:64px;margin:0 auto 8px;display:grid}
.tangban-image-more-tools .tangban-image-icon{font-size:30px}
.tangban-image-more-cancel{color:#b9cce9;cursor:pointer;width:calc(100% + 42px);min-height:60px;font:inherit;background:#262626;border:0;border-top:1px solid #ffffff1c;margin:0 -21px -12px;font-size:18px;display:block}
.tangban-image-gallery{z-index:360;padding:max(9px, env(safe-area-inset-top)) 0 0;color:#fff;background:#101010;display:grid;position:fixed;inset:0}
.tangban-image-gallery>section{min-height:0;overflow:auto}
.tangban-image-gallery header{z-index:1;background:#101010f5;grid-template-columns:50px minmax(0,1fr) 58px;align-items:center;min-height:58px;display:grid;position:sticky;top:0}
.tangban-image-gallery header button{color:#fff;cursor:pointer;background:0 0;border:0;place-items:center;font-size:28px;display:grid}
.tangban-image-gallery header strong{text-align:center;font-size:17px}
.tangban-image-gallery header span{color:#999;text-align:center;font-size:12px}
.tangban-image-gallery section>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;display:grid}
.tangban-image-gallery section>div button{aspect-ratio:1;cursor:pointer;background:#242424;border:0;padding:0;overflow:hidden}
.tangban-image-gallery img{object-fit:cover;width:100%;height:100%}
.tangban-image-toast{z-index:400;bottom:max(100px, calc(78px + env(safe-area-inset-bottom)));color:#fff;text-align:center;background:#181818e0;border-radius:8px;max-width:min(420px,100vw - 36px);padding:11px 16px;font-size:14px;line-height:1.35;position:fixed;left:50%;transform:translate(-50%)}
@media (width<=460px){.tangban-image-popover{width:min(318px,100vw - 20px)}
.tangban-image-popover button{min-height:78px}
.tangban-image-popover .tangban-image-icon{font-size:24px}
.tangban-image-popover span{font-size:12px}
.tangban-image-viewer-tools{gap:12px;right:18px}
.tangban-image-viewer-tools button{width:51px;height:51px}
.tangban-image-more-sheet{padding-left:14px;padding-right:14px}
.tangban-image-recent-targets{gap:7px}
.tangban-image-recent-avatar{width:49px;height:49px}
.tangban-image-more-tools{gap:18px 4px}
.tangban-image-more-tools button>span{width:56px;height:56px}
.tangban-image-more-cancel{width:calc(100% + 28px);margin-left:-14px;margin-right:-14px}
}
@property --tw-rotate-x{syntax:"*";inherits:false}
@property --tw-rotate-y{syntax:"*";inherits:false}
@property --tw-rotate-z{syntax:"*";inherits:false}
@property --tw-skew-x{syntax:"*";inherits:false}
@property --tw-skew-y{syntax:"*";inherits:false}
@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}
@property --tw-blur{syntax:"*";inherits:false}
@property --tw-brightness{syntax:"*";inherits:false}
@property --tw-contrast{syntax:"*";inherits:false}
@property --tw-grayscale{syntax:"*";inherits:false}
@property --tw-hue-rotate{syntax:"*";inherits:false}
@property --tw-invert{syntax:"*";inherits:false}
@property --tw-opacity{syntax:"*";inherits:false}
@property --tw-saturate{syntax:"*";inherits:false}
@property --tw-sepia{syntax:"*";inherits:false}
@property --tw-drop-shadow{syntax:"*";inherits:false}
@property --tw-drop-shadow-color{syntax:"*";inherits:false}
@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}
@property --tw-drop-shadow-size{syntax:"*";inherits:false}
._page_c9j1q_1{--ink:#102622;--paper:#f4f1e9;--signal:#e95a33;--moss:#395e51;background:linear-gradient(122deg, #e95a330f, transparent 32%), var(--paper);min-height:100dvh;color:var(--ink)}
._header_c9j1q_13{border-bottom:1px solid #1026222e;justify-content:space-between;align-items:center;min-height:62px;padding:0 max(24px,50vw - 590px);display:flex}
._header_c9j1q_13 a{color:var(--ink);font-size:14px;text-decoration:none}
._header_c9j1q_13 span{color:#10262294;font-size:12px}
._hero_c9j1q_33,._workbench_c9j1q_34,._boundary_c9j1q_35{width:min(1180px,100% - 48px);margin-left:auto;margin-right:auto}
._hero_c9j1q_33{padding:clamp(58px,10vw,126px) 0 52px}
._hero_c9j1q_33>p:first-child,._workbenchHeading_c9j1q_46 p,._result_c9j1q_47>span{color:var(--signal);letter-spacing:.18em;margin:0;font-size:11px;font-weight:700}
._hero_c9j1q_33 h1{letter-spacing:-.08em;margin:15px 0 2px;font-family:STSong,Songti SC,serif;font-size:clamp(72px,12vw,172px);font-weight:500;line-height:.94}
._hero_c9j1q_33 strong{letter-spacing:.15em;margin-left:.2em;font-size:clamp(20px,3.2vw,42px);font-weight:500;display:block}
._heroRule_c9j1q_72{background:var(--signal);width:min(330px,56vw);height:7px;margin:42px 0 22px}
._summary_c9j1q_79{color:#102622c2;max-width:690px;margin:0;font-size:16px;line-height:1.9}
._workbench_c9j1q_34{background:#fffdf8;border:1px solid #1026223d;padding:clamp(24px,4vw,50px);box-shadow:16px 16px #395e511f}
._workbenchHeading_c9j1q_46,._formFooter_c9j1q_95{justify-content:space-between;align-items:flex-end;gap:22px;display:flex}
._workbenchHeading_c9j1q_46 h2{margin:5px 0 0;font-family:STSong,Songti SC,serif;font-size:clamp(32px,4vw,48px);font-weight:500}
._ready_c9j1q_109,._running_c9j1q_110{color:var(--moss);background:#395e511c;border-radius:999px;padding:7px 10px;font-size:12px}
._running_c9j1q_110{color:#af3517;background:#e95a3321}
._form_c9j1q_95{gap:10px;margin-top:34px;display:grid}
._form_c9j1q_95 label{color:#102622bd;font-size:14px;font-weight:700}
._form_c9j1q_95 textarea{min-height:230px;color:var(--ink);resize:vertical;background:#fffefa;border:1px solid #10262254;border-radius:0;outline:none;padding:17px;font:15px/1.72 ui-monospace,SFMono-Regular,Menlo,monospace}
._form_c9j1q_95 textarea:focus{border-color:var(--signal);box-shadow:0 0 0 3px #e95a331f}
._formFooter_c9j1q_95{margin-top:5px}
._formFooter_c9j1q_95 small{color:#10262299;max-width:570px;font-size:12px;line-height:1.6}
._form_c9j1q_95 button{border:1px solid var(--ink);background:var(--ink);color:#fff;cursor:pointer;font:inherit;border-radius:0;padding:13px 18px;font-size:14px;font-weight:700}
._form_c9j1q_95 button:hover:not(:disabled){background:var(--signal);border-color:var(--signal)}
._form_c9j1q_95 button:disabled{cursor:wait;opacity:.58}
._error_c9j1q_185{color:#ad321d;margin:22px 0 0;font-size:14px}
._result_c9j1q_47{border-top:3px solid var(--signal);background:#f4f7f2;margin-top:28px;padding:22px}
._result_c9j1q_47 pre{color:var(--ink);white-space:pre-wrap;word-break:break-word;margin:12px 0 0;font:14px/1.8 ui-monospace,SFMono-Regular,Menlo,monospace}
._boundary_c9j1q_35{grid-template-columns:repeat(3,1fr);gap:1px;padding:66px 0;display:grid}
._boundary_c9j1q_35>div{background:#10262214;min-height:190px;padding:24px}
._boundary_c9j1q_35 span{color:var(--signal);font-size:12px;font-weight:700}
._boundary_c9j1q_35 strong{margin-top:30px;font-size:17px;display:block}
._boundary_c9j1q_35 p{color:#102622ad;margin:9px 0 0;font-size:13px;line-height:1.7}
@media (width<=720px){._header_c9j1q_13{min-height:54px;padding:0 14px}
._header_c9j1q_13 span{display:none}
._hero_c9j1q_33,._workbench_c9j1q_34,._boundary_c9j1q_35{width:calc(100% - 28px)}
._hero_c9j1q_33{padding-top:52px}
._hero_c9j1q_33 h1{letter-spacing:-.12em}
._workbench_c9j1q_34{padding:22px;box-shadow:8px 8px #395e511f}
._workbenchHeading_c9j1q_46,._formFooter_c9j1q_95{flex-direction:column;align-items:flex-start}
._formFooter_c9j1q_95 button{width:100%}
._boundary_c9j1q_35{grid-template-columns:1fr;padding:42px 0}
}
._page_ushsj_1{color:#172a3d;background:radial-gradient(circle at 50% 0,#2e78c42e,#0000 42%),linear-gradient(145deg,#e8f2fb,#f8fafc 52%,#e7f0f8);place-items:center;min-height:100dvh;padding:28px;display:grid;position:relative}
._homeLink_ushsj_13{z-index:2;color:#2869aa;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffe6;border:1px solid #2e78c42e;border-radius:11px;align-items:center;gap:8px;height:42px;padding:0 14px;font-size:12px;font-weight:750;text-decoration:none;display:inline-flex;position:fixed;top:22px;left:22px}
._homeLink_ushsj_13 span{font-size:17px}
._card_ushsj_35{background:#fffffff7;border:1px solid #2e78c424;border-radius:28px;grid-template-columns:minmax(280px,.9fr) minmax(360px,1.1fr);width:min(900px,100%);display:grid;overflow:hidden;box-shadow:0 34px 100px #2a58842e}
._visual_ushsj_46{background:radial-gradient(circle at 30% 20%,#7ec7ff75,#0000 34%),linear-gradient(145deg,#173a5b,#235f95 55%,#2e78c4);place-items:center;min-height:540px;display:grid;position:relative;overflow:hidden}
._visual_ushsj_46:before,._visual_ushsj_46:after{content:"";border:1px solid #ffffff1f;border-radius:50%;width:230px;height:230px;position:absolute}
._visual_ushsj_46:before{top:-80px;right:-60px}
._visual_ushsj_46:after{bottom:-110px;left:-80px}
._screen_ushsj_70{background:linear-gradient(135deg,#dff1ff,#fff);border:8px solid #fffffff0;border-radius:15px;place-items:center;width:210px;height:142px;display:grid;position:relative;box-shadow:0 28px 60px #051f3952}
._screen_ushsj_70:before{content:"";background:url(/bantang-logo.png) 50%/cover;border-radius:24px;width:76px;height:76px;box-shadow:0 9px 24px #185c9738}
._screen_ushsj_70:after{content:"";background:#ffffffeb;border-radius:999px;width:92px;height:8px;position:absolute;bottom:-31px}
._screen_ushsj_70 i{background:#ffffffeb;width:10px;height:25px;position:absolute;bottom:-25px}
._signal_ushsj_109{color:#dff2ff;letter-spacing:.12em;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0a27424d;border:1px solid #ffffff40;border-radius:999px;padding:8px 13px;font-size:11px;font-weight:750;position:absolute;bottom:58px}
._content_ushsj_123{flex-direction:column;justify-content:center;padding:48px;display:flex}
._content_ushsj_123>small{color:#2e78c4;letter-spacing:.18em;font-size:10px;font-weight:800}
._content_ushsj_123 h1{letter-spacing:-.04em;margin:10px 0 12px;font-size:clamp(32px,4vw,45px)}
._content_ushsj_123>p{color:#687a8b;margin:0;font-size:14px;line-height:1.8}
._actions_ushsj_150{grid-template-columns:1.35fr .9fr;gap:11px;margin-top:29px;display:grid}
._actions_ushsj_150 a{border-radius:11px;place-items:center;min-height:50px;font-size:14px;font-weight:800;text-decoration:none;display:grid}
._primary_ushsj_167{color:#fff;background:#2e78c4;box-shadow:0 12px 28px #2e78c440}
._secondary_ushsj_173{color:#2869aa;background:#f3f8fc;border:1px solid #a9c8e5}
._notes_ushsj_179{background:#f7fafc;border:1px solid #dce9f4;border-radius:14px;gap:9px;margin-top:25px;padding:17px;display:grid}
._notes_ushsj_179 span{color:#5d7183;align-items:center;gap:10px;font-size:12px;display:flex}
._notes_ushsj_179 b{color:#2e78c4;background:#dceeff;border-radius:50%;flex:none;place-items:center;width:23px;height:23px;font-size:11px;display:grid}
._footerLinks_ushsj_209{flex-wrap:wrap;gap:10px 18px;margin-top:20px;display:flex}
._footerLinks_ushsj_209 a{color:#55748f;font-size:12px;text-decoration:none}
._version_ushsj_222{color:#a3b0bb;margin-top:18px;font-size:9px}
@media (width<=760px){._page_ushsj_1{background:#fff;padding:0}
._homeLink_ushsj_13{top:14px;left:14px}
._card_ushsj_35{min-height:100dvh;box-shadow:none;border:0;border-radius:0;grid-template-columns:1fr}
._visual_ushsj_46{min-height:250px}
._screen_ushsj_70{width:170px;height:112px}
._screen_ushsj_70:before{border-radius:19px;width:62px;height:62px}
._signal_ushsj_109{bottom:22px;right:22px}
._content_ushsj_123{padding:32px 22px 38px}
._actions_ushsj_150{grid-template-columns:1fr}
}
@media (prefers-color-scheme:dark){._page_ushsj_1{color:#eef5fa;background:radial-gradient(circle at 50% 0,#2e78c42e,#0000 42%),#111820}
._card_ushsj_35{background:#17212a;border-color:#33495c}
._homeLink_ushsj_13,._secondary_ushsj_173,._notes_ushsj_179{color:#8bc1ef;background:#1d2a35;border-color:#36536c}
._content_ushsj_123>p,._notes_ushsj_179 span,._footerLinks_ushsj_209 a{color:#a7b6c3}
._content_ushsj_123 h1{color:#f4f8fb}
}
._page_16wk9_1{color:#15221c;background:radial-gradient(circle at 50% 0,#07c1602b,#0000 38%),#eef3f0;min-height:100dvh;padding:0 20px 48px}
._header_16wk9_8{color:#64736b;justify-content:space-between;align-items:center;width:min(720px,100%);min-height:64px;margin:0 auto;font-size:12px;display:flex}
._header_16wk9_8 a{color:#087a43;font-weight:750;text-decoration:none}
._installCard_16wk9_21{background:#fffffff7;border:1px solid #045e341f;border-radius:24px;width:min(720px,100%);margin:24px auto 0;padding:34px;box-shadow:0 24px 70px #1c4d3521}
._appIdentity_16wk9_31{align-items:center;gap:20px;display:flex}
._appIdentity_16wk9_31 img{object-fit:cover;border-radius:23px;flex:none;width:86px;height:86px;box-shadow:0 10px 28px #07794433}
._appIdentity_16wk9_31 small{color:#079350;letter-spacing:.08em;font-size:11px;font-weight:800}
._appIdentity_16wk9_31 h1{margin:5px 0 7px;font-size:clamp(25px,5vw,36px)}
._appIdentity_16wk9_31 p,._huaweiNote_16wk9_42{color:#6d7c74;margin:0;font-size:13px;line-height:1.75}
._primary_16wk9_44{color:#fff;cursor:pointer;background:#07c160;border:0;border-radius:12px;place-items:center;width:100%;min-height:54px;margin-top:28px;font-size:16px;font-weight:800;text-decoration:none;display:grid;box-shadow:0 12px 28px #07c16038}
._platformChoices_16wk9_61{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:28px;display:grid}
._platformChoices_16wk9_61 article{background:#f8faf9;border:1px solid #dce6e0;border-radius:16px;padding:20px;position:relative}
._platformChoices_16wk9_61 article._recommended_16wk9_76{background:#f1fbf5;border-color:#07ad58;box-shadow:inset 0 0 0 1px #07ad581f}
._platformChoices_16wk9_61 em{color:#078348;background:#dff6e9;border-radius:999px;padding:4px 7px;font-size:10px;font-style:normal;font-weight:800;position:absolute;top:12px;right:12px}
._platformChoices_16wk9_61 span{color:#078348;font-size:12px;font-weight:800;display:block}
._platformChoices_16wk9_61 strong{color:#17271f;margin-top:7px;font-size:18px;display:block}
._platformChoices_16wk9_61 p{color:#6d7c74;min-height:47px;margin:9px 0 0;font-size:12px;line-height:1.6}
._platformChoices_16wk9_61 ._primary_16wk9_44{min-height:46px;margin-top:18px;font-size:14px}
._secondary_16wk9_100{color:#087a43;cursor:pointer;background:#fff;border:1px solid #8eb9a2;border-radius:12px;width:100%;min-height:46px;margin-top:18px;font-size:14px;font-weight:800}
._status_16wk9_113{color:#11643e;background:#edf8f1;border-radius:9px;margin:13px 0 0;padding:12px 14px;font-size:13px;line-height:1.65}
._manualGuide_16wk9_123{border-top:1px solid #e1e8e4;margin-top:26px;padding-top:24px}
._manualGuide_16wk9_123>span{color:#34463d;font-size:13px;font-weight:800}
._manualGuide_16wk9_123 ol{gap:10px;margin:15px 0 0;padding:0;list-style:none;display:grid}
._manualGuide_16wk9_123 li{background:#f8faf9;border:1px solid #e0e9e4;border-radius:11px;align-items:center;gap:13px;padding:13px 15px;display:flex}
._manualGuide_16wk9_123 b{color:#078546;background:#dff5e8;border-radius:50%;flex:none;place-items:center;width:28px;height:28px;display:grid}
._manualGuide_16wk9_123 p{color:#56665e;margin:0;font-size:13px;line-height:1.65}
._manualGuide_16wk9_123 strong{color:#102c1e;margin:0 3px}
._huaweiNote_16wk9_42{color:#765d28;background:#fff8e8;border-radius:10px;margin-top:18px;padding:13px 15px}
@media (width<=600px){._page_16wk9_1{padding:0 0 28px}
._header_16wk9_8{padding:0 16px}
._installCard_16wk9_21{box-shadow:none;border-left:0;border-right:0;border-radius:0;margin-top:0;padding:28px 18px}
._appIdentity_16wk9_31{align-items:flex-start}
._appIdentity_16wk9_31 img{border-radius:19px;width:72px;height:72px}
._platformChoices_16wk9_61{grid-template-columns:1fr}
._platformChoices_16wk9_61 p{min-height:0}
}
._page_gb0a1_1{color:#17231d;background:#ededed;min-height:100dvh}
._header_gb0a1_2{min-height:58px;padding:max(8px, env(safe-area-inset-top)) 12px 8px;text-align:center;background:#fafafaf5;border-bottom:1px solid #d8d8d8;grid-template-columns:48px 1fr 80px;align-items:center;display:grid}
._header_gb0a1_2 a{color:#17231d;font-size:34px;text-decoration:none}
._header_gb0a1_2 strong{font-size:17px}
._header_gb0a1_2 span{color:#8b918e;font-size:8px}
._card_gb0a1_6{background:#fff;border-radius:18px;width:min(460px,100% - 28px);margin:22px auto;overflow:hidden;box-shadow:0 18px 50px #21372c17}
._loading_gb0a1_7{color:#66716b;text-align:center;padding:120px 20px}
._scanner_gb0a1_8,._confirm_gb0a1_8,._success_gb0a1_8{text-align:center;flex-direction:column;align-items:center;padding:22px;display:flex}
._camera_gb0a1_9{aspect-ratio:1;color:#ffffffa8;background:#0c1611;border-radius:14px;place-items:center;width:100%;display:grid;position:relative;overflow:hidden}
._camera_gb0a1_9 video{object-fit:cover;width:100%;height:100%}
._camera_gb0a1_9>span{max-width:210px;line-height:1.7;position:absolute}
._camera_gb0a1_9 i{border:2px solid #74e8aad9;border-radius:18px;position:absolute;inset:12%;box-shadow:inset 0 0 40px #07c16014}
._scanner_gb0a1_8>button,._confirm_gb0a1_8>button{color:#fff;background:#07c160;border:0;border-radius:10px;width:100%;min-height:48px;margin-top:16px;font-size:15px;font-weight:750}
._scanner_gb0a1_8>button:disabled{background:#b9d9c8}
._systemScanner_gb0a1_15{border-radius:10px;place-items:center;width:100%;min-height:48px;margin-top:10px;font-size:15px;font-weight:750;text-decoration:none;display:grid;color:#078d49!important;background:0 0!important;border:1px solid #07c160!important}
._systemHelp_gb0a1_16{color:#66716b;margin:12px 8px 0;font-size:12px;line-height:1.7}
._divider_gb0a1_17{background:#eceeec;width:100%;height:1px;margin:24px 0}
._divider_gb0a1_17 span{color:#9aa09c;background:#fff;padding:0 12px;font-size:11px;position:relative;top:-9px}
._scanner_gb0a1_8 label{text-align:left;width:100%}
._scanner_gb0a1_8 label span{color:#66716b;margin-bottom:8px;font-size:12px;display:block}
._scanner_gb0a1_8 input{letter-spacing:.16em;text-align:center;text-transform:uppercase;border:1px solid #dfe4e1;border-radius:9px;width:100%;height:50px;font-size:18px}
._notice_gb0a1_22{color:#bd563e;margin-top:14px;font-size:12px;line-height:1.7}
._computerIcon_gb0a1_23{color:#078d49;background:#e5f7ec;border-radius:22px;place-items:center;width:82px;height:82px;margin:20px 0;font-size:42px;display:grid}
._confirm_gb0a1_8 small{color:#758079}
._confirm_gb0a1_8 h1,._success_gb0a1_8 h1{margin:8px 0 0;font-size:24px}
._confirm_gb0a1_8 p{color:#69736d;margin:18px 0 12px;font-size:13px;line-height:1.8}
._confirm_gb0a1_8>a{color:#68716c;margin-top:18px;text-decoration:none}
._success_gb0a1_8{padding:65px 24px}
._success_gb0a1_8 i{color:#fff;background:#07c160;border-radius:50%;place-items:center;width:74px;height:74px;font-size:36px;font-style:normal;display:grid}
._success_gb0a1_8 p{color:#66716b}
@media (prefers-color-scheme:dark){._page_gb0a1_1{color:#f1f3f2;background:#101310}
._header_gb0a1_2{background:#1b201cf5;border-color:#353b37}
._header_gb0a1_2 a{color:#f1f3f2}
._card_gb0a1_6{background:#1b201c;box-shadow:0 18px 50px #0000004d}
._loading_gb0a1_7,._systemHelp_gb0a1_16,._scanner_gb0a1_8 label span,._confirm_gb0a1_8 small,._confirm_gb0a1_8 p,._confirm_gb0a1_8>a,._success_gb0a1_8 p{color:#a4aba7}
._divider_gb0a1_17{background:#353b37}
._divider_gb0a1_17 span{color:#a4aba7;background:#1b201c}
._computerIcon_gb0a1_23{color:#72d69c;background:#1b3525}
}
._success_gb0a1_8 a{color:#fff;background:#07c160;border-radius:9px;min-width:180px;margin-top:18px;padding:13px;text-decoration:none}
@media (width>=700px){._card_gb0a1_6{margin-top:50px}
}
._page_1fjec_1{--green:#79efb0;--line:#79efb033;color:#f3faf6;background:radial-gradient(circle at 82% 5%,#35b4792e,#0000 28%),#07100e;min-height:100dvh}
._header_1fjec_11{background:#07100ee6;border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;min-height:64px;padding:0 max(24px,50vw - 640px);display:flex}
._header_1fjec_11 a{color:var(--green);font-size:14px;text-decoration:none}
._header_1fjec_11 span{color:#ffffff94;font-size:12px}
._hero_1fjec_32{border:1px solid var(--line);border-radius:18px;width:min(1280px,100% - 48px);height:min(44vw,500px);min-height:320px;margin:24px auto 0;position:relative;overflow:hidden}
._hero_1fjec_32 img{object-fit:cover;width:100%;height:100%}
._hero_1fjec_32:after{content:"";background:linear-gradient(90deg,#040e0beb,#040e0b1f);position:absolute;inset:0}
._heroOverlay_1fjec_56{z-index:2;width:min(560px,70%);position:absolute;top:50%;left:clamp(24px,6vw,80px);transform:translateY(-50%)}
._heroOverlay_1fjec_56 small,._introduction_1fjec_66>small,._caseArea_1fjec_67>small{color:var(--green);letter-spacing:.18em;font-size:11px}
._heroOverlay_1fjec_56>span{color:#ffffff6b;margin-top:22px;font-size:18px;display:block}
._heroOverlay_1fjec_56 h1{margin:8px 0 14px;font-family:STSong,Songti SC,serif;font-size:clamp(42px,6vw,76px);font-weight:500}
._heroOverlay_1fjec_56 p{color:#ffffffb8;margin:0;font-size:18px}
._content_1fjec_93{grid-template-columns:1.4fr .9fr;gap:18px;width:min(1280px,100% - 48px);margin:18px auto 0;padding-bottom:48px;display:grid}
._introduction_1fjec_66,._caseArea_1fjec_67,._contact_1fjec_104{border:1px solid var(--line);background:#0d1916f0;border-radius:16px;padding:clamp(24px,3vw,42px)}
._introduction_1fjec_66 h2,._caseArea_1fjec_67 h2{margin:10px 0 16px;font-family:STSong,Songti SC,serif;font-size:30px;font-weight:500}
._introduction_1fjec_66 p,._caseArea_1fjec_67 p{color:#ebf5f0b8;margin:0;font-size:16px;line-height:1.9}
._highlights_1fjec_127{gap:10px;display:grid}
._highlights_1fjec_127 div{border:1px solid var(--line);background:#0d1916f0;border-radius:14px;grid-template-columns:40px 1fr;align-items:center;gap:12px;min-height:86px;padding:18px 22px;display:grid}
._highlights_1fjec_127 span{color:var(--green);font-size:12px}
._highlights_1fjec_127 strong{font-size:17px}
._bidEntry_1fjec_153{color:#f3faf6;background:linear-gradient(122deg,#32b07333,#0d1916f7),#0d1916f0;border:1px solid #79efb08a;border-radius:14px;align-content:center;gap:7px;min-height:150px;padding:26px 28px;text-decoration:none;transition:border-color .16s,transform .16s,background .16s;display:grid}
._bidEntry_1fjec_153:hover{background:linear-gradient(122deg,#32b0734f,#0d1916f7),#0d1916f0;border-color:#a7ffd0;transform:translateY(-2px)}
._bidEntry_1fjec_153 span{color:var(--green);letter-spacing:.16em;font-size:11px}
._bidEntry_1fjec_153 strong{font-family:STSong,Songti SC,serif;font-size:clamp(22px,2.3vw,30px);font-weight:500}
._bidEntry_1fjec_153 small{color:#ebf5f0ad;font-size:13px;line-height:1.55}
._caseArea_1fjec_67{min-height:230px}
._contact_1fjec_104{text-align:center;align-content:center;justify-items:center;display:grid}
._contact_1fjec_104 span,._contact_1fjec_104 small{color:#ffffff94;font-size:13px}
._contact_1fjec_104 strong{margin:8px 0 4px;font-size:28px}
._contact_1fjec_104 a{color:var(--green);font-size:clamp(24px,3vw,38px);font-weight:700;text-decoration:none}
._contact_1fjec_104 small{margin-top:5px}
@media (width<=720px){._header_1fjec_11{min-height:52px;padding:0 14px}
._header_1fjec_11 span{display:none}
._hero_1fjec_32{border-radius:12px;width:calc(100% - 24px);height:52vh;min-height:300px;margin-top:12px}
._heroOverlay_1fjec_56{width:calc(100% - 44px);left:22px}
._heroOverlay_1fjec_56 h1{font-size:clamp(38px,12vw,58px)}
._content_1fjec_93{grid-template-columns:1fr;width:calc(100% - 24px)}
._introduction_1fjec_66,._caseArea_1fjec_67,._contact_1fjec_104{border-radius:12px;padding:24px 20px}
._introduction_1fjec_66 p,._caseArea_1fjec_67 p{font-size:15px}
}

/* Tangban workspace refresh: calm, spacious, system-native surfaces. */
.app-shell{--apple-ink:#1d1d1f;--apple-subtle:#6e6e73;--apple-blue:#0071e3;--apple-line:rgba(29,29,31,.10);--apple-surface:rgba(255,255,255,.82);--apple-wash:#f5f5f7;color:var(--apple-ink);font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","PingFang SC","Helvetica Neue",Arial,sans-serif;background:linear-gradient(145deg,#fff 0%,#f5f5f7 60%,#edf2f7 100%);border:1px solid rgba(255,255,255,.75);border-radius:26px;width:min(1320px,calc(100% - 48px));height:min(860px,calc(100dvh - 48px));margin:24px auto;box-shadow:0 24px 70px rgba(15,23,42,.15),0 2px 8px rgba(15,23,42,.06)}
.app-shell button,.app-shell input,.app-shell textarea{font-family:inherit}.app-shell button{transition:background-color .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease}.app-shell button:focus-visible,.app-shell input:focus-visible,.app-shell textarea:focus-visible{outline:3px solid rgba(0,113,227,.28);outline-offset:2px}
.app-shell .chat-list{background:rgba(247,247,249,.76);border-right:1px solid var(--apple-line);-webkit-backdrop-filter:blur(28px);backdrop-filter:blur(28px)}
.app-shell .brand-row{padding:25px 22px 19px}.app-shell .brand-mark{background:linear-gradient(145deg,#0a84ff,#005ecb);border-radius:13px;width:42px;height:42px;box-shadow:0 8px 20px rgba(0,113,227,.24)}.app-shell .brand-row strong{font-size:16px;letter-spacing:-.02em}.app-shell .brand-row span{color:var(--apple-subtle)}
.app-shell .sidebar-quick-actions{gap:8px;margin:0 20px 16px}.app-shell .sidebar-quick-actions button,.app-shell .sidebar-quick-actions a{color:#075cb5;background:rgba(255,255,255,.84);border:1px solid rgba(0,113,227,.12);border-radius:12px;height:40px;box-shadow:0 1px 2px rgba(15,23,42,.04)}.app-shell .sidebar-quick-actions button:hover,.app-shell .sidebar-quick-actions a:hover{background:#fff;border-color:rgba(0,113,227,.32);box-shadow:0 5px 14px rgba(15,23,42,.08);transform:translateY(-1px)}
.app-shell .workspace-primary-nav{background:rgba(229,229,234,.72);border-radius:13px;gap:3px;margin:0 20px 16px;padding:4px}.app-shell .workspace-primary-nav button{color:#5d5d62;border-radius:10px;min-height:46px}.app-shell .workspace-primary-nav button.active{color:var(--apple-ink);background:rgba(255,255,255,.94);box-shadow:0 1px 3px rgba(0,0,0,.10)}
.app-shell .conversation,.app-shell .workspace-section{background:var(--apple-wash)}.app-shell .conversation-header,.app-shell .workspace-section-header{background:rgba(255,255,255,.72);border-bottom:1px solid var(--apple-line);min-height:80px;padding:17px 28px;-webkit-backdrop-filter:blur(28px);backdrop-filter:blur(28px)}.app-shell .conversation-header h1{font-size:17px;letter-spacing:-.025em}.app-shell .conversation-header p{color:var(--apple-subtle);font-size:12px}.app-shell .ai-window-button,.app-shell .notification-button{background:rgba(255,255,255,.78);border:1px solid var(--apple-line);border-radius:11px}.app-shell .ai-window-button:hover,.app-shell .ai-window-button.running{color:#075cb5;background:#fff;border-color:rgba(0,113,227,.26)}
.app-shell .messages{padding:28px clamp(24px,5vw,64px) 30px}.app-shell .message-row{gap:11px;margin-bottom:24px}.app-shell .message-avatar{border-radius:13px}.app-shell .bubble{border:1px solid rgba(29,29,31,.08);border-radius:18px;background:rgba(255,255,255,.94);box-shadow:0 4px 15px rgba(15,23,42,.055);padding:12px 15px;line-height:1.68}.app-shell .mine .bubble{background:linear-gradient(145deg,#0a84ff,#0071e3);border-color:transparent;box-shadow:0 6px 18px rgba(0,113,227,.22)}
.app-shell .composer{height:116px;background:rgba(255,255,255,.78);border-top:1px solid var(--apple-line);padding:13px 20px 16px;-webkit-backdrop-filter:blur(28px);backdrop-filter:blur(28px)}.app-shell .composer textarea,.app-shell .composer input{background:rgba(245,245,247,.9);border:1px solid rgba(29,29,31,.10);border-radius:16px}.app-shell .send-button{background:var(--apple-blue);border-radius:999px;box-shadow:0 4px 12px rgba(0,113,227,.22)}.app-shell .send-button:hover{background:#0077ed;transform:translateY(-1px)}
.annotation-backdrop .contact-dialog{background:rgba(248,248,250,.92);border:1px solid rgba(255,255,255,.9);border-radius:24px;width:min(540px,calc(100% - 28px));box-shadow:0 28px 80px rgba(15,23,42,.25);-webkit-backdrop-filter:blur(32px);backdrop-filter:blur(32px)}.annotation-backdrop .contact-dialog>header,.annotation-backdrop .contact-dialog>footer{background:rgba(255,255,255,.74);border-color:var(--apple-line);padding:20px 22px}.annotation-backdrop .contact-dialog>header strong{font-size:18px;letter-spacing:-.025em}.annotation-backdrop .contact-dialog>header span{color:var(--apple-subtle);font-size:12px}.annotation-backdrop .external-friend-row{gap:10px;padding:16px 20px;background:transparent}.annotation-backdrop .external-friend-row input{background:#fff;border:1px solid rgba(29,29,31,.13);border-radius:13px;min-height:42px;padding:0 13px}.annotation-backdrop .external-friend-row button,.annotation-backdrop .contact-row button{background:var(--apple-blue);border-radius:999px;min-width:76px;box-shadow:none}.annotation-backdrop .external-friend-row button:hover,.annotation-backdrop .contact-row button:hover{background:#0077ed;transform:translateY(-1px)}
.annotation-backdrop .contact-list{padding:0 20px 12px}.annotation-backdrop .contact-list:has(.contact-row)::before{content:"好友管理：可在每位好友右侧直接删除；仅解除好友关系，聊天记录、文件和对方账号都会保留。";color:var(--apple-subtle);background:rgba(0,113,227,.07);border:1px solid rgba(0,113,227,.11);border-radius:12px;margin:2px 0 8px;padding:9px 11px;font-size:11px;line-height:1.5;display:block}.annotation-backdrop .contact-row{background:rgba(255,255,255,.72);border:1px solid rgba(29,29,31,.07);border-radius:16px;min-height:72px;margin:0 0 8px;padding:10px 12px;box-shadow:0 2px 7px rgba(15,23,42,.035)}.annotation-backdrop .contact-row:last-child{border-bottom:1px solid rgba(29,29,31,.07)}.annotation-backdrop .contact-row-actions{gap:8px;display:flex}.annotation-backdrop .contact-row-actions button:last-child{color:#c51b29!important;background:#fff1f2;border:1px solid rgba(197,27,41,.18)}.annotation-backdrop .contact-row-actions button:last-child:hover{color:#fff!important;background:#d70015;border-color:#d70015}.annotation-backdrop .contact-dialog>footer span{color:var(--apple-subtle);font-size:11px}
@media (width<=760px){.app-shell{border:0;border-radius:0;width:100%;height:100dvh;margin:0;box-shadow:none}.app-shell .conversation-header,.app-shell .workspace-section-header{padding:14px 18px}.app-shell .messages{padding:20px 16px 24px}.app-shell .composer{height:110px;padding:10px 12px 14px}.annotation-backdrop .contact-dialog{border-radius:22px;width:calc(100% - 20px)}}

/* System-aware Tangban workspace: calm moon-white by day, a luminous midnight atelier by night. */
html:has(.app-shell),body:has(.app-shell){color-scheme:light dark;background:#f5f5f7;color:#1d1d1f}
.app-shell{color:#1d1d1f;color-scheme:light}
.app-shell .conversation,.app-shell .workspace-section,.app-shell .messages,.app-shell .mobile-messages-home{color:#1d1d1f;background:#f5f5f7}
.app-shell .conversation-header,.app-shell .workspace-section-header{color:#1d1d1f;background:rgba(255,255,255,.86)}
.app-shell .conversation-header h1,.app-shell .mobile-chat-back,.app-shell .mobile-chat-more{color:#1d1d1f}
.app-shell .conversation-header p,.app-shell .message-row time{color:#6e6e73}
.app-shell .bubble{color:#1d1d1f;background:rgba(255,255,255,.94)}
.app-shell .mine .bubble{color:#fff;background:linear-gradient(145deg,#0a84ff,#0071e3)}
.app-shell .message-text{color:inherit}
.app-shell .composer,.app-shell .mobile-primary-nav{color:#1d1d1f;background:rgba(255,255,255,.86)}
.app-shell .composer textarea,.app-shell .composer input{color:#1d1d1f;background:#f5f5f7;border-color:rgba(29,29,31,.10)}
.app-shell .composer textarea::placeholder,.app-shell .composer input::placeholder{color:#86868b}
.app-shell .attach-button,.app-shell .voice-button{color:#1d1d1f;background:#fff}
@media (prefers-color-scheme:dark){
html:has(.app-shell),body:has(.app-shell){color-scheme:dark;background:#090a0f;color:#f5f7ff}
.app-shell{--apple-ink:#f5f7ff;--apple-subtle:#9da8bd;--apple-line:rgba(196,208,255,.13);--apple-surface:rgba(22,25,35,.76);--apple-wash:#0d0f16;color:#f5f7ff;color-scheme:dark;background:radial-gradient(circle at 82% -14%,#395ee82e 0,transparent 38%),radial-gradient(circle at -10% 102%,#7f4fc722 0,transparent 36%),linear-gradient(145deg,#151925 0%,#0b0d14 53%,#10121b 100%);border-color:rgba(210,220,255,.14);box-shadow:0 28px 88px #0000008f,0 1px 0 #ffffff12 inset}
.app-shell .chat-list{background:linear-gradient(180deg,rgba(26,30,42,.88),rgba(14,16,24,.94));border-color:rgba(204,215,255,.10)}
.app-shell .brand-row strong,.app-shell .conversation-header h1{color:#f8f9ff}.app-shell .brand-row span{color:#aeb8cd}.app-shell .brand-mark{background:linear-gradient(145deg,#82adff,#5664df 54%,#9f69ea);box-shadow:0 10px 28px #5578ee4a}
.app-shell .sidebar-quick-actions button,.app-shell .sidebar-quick-actions a{color:#d7e3ff;background:#ffffff0b;border-color:#cbd8ff1f;box-shadow:0 1px 0 #ffffff0f inset}.app-shell .sidebar-quick-actions button:hover,.app-shell .sidebar-quick-actions a:hover{color:#fff;background:#ffffff16;border-color:#a8bcff5c;box-shadow:0 8px 22px #00000038}
.app-shell .workspace-primary-nav{background:#ffffff0c}.app-shell .workspace-primary-nav button{color:#aeb8cb}.app-shell .workspace-primary-nav button.active{color:#f8f9ff;background:linear-gradient(145deg,#ffffff1d,#ffffff0e);box-shadow:0 1px 0 #ffffff20 inset,0 7px 18px #00000028}
.app-shell .conversation,.app-shell .workspace-section,.app-shell .messages,.app-shell .mobile-messages-home{color:#f5f7ff;background:radial-gradient(circle at 88% 6%,#517bff18 0,transparent 27%),radial-gradient(circle at 9% 92%,#b878e015 0,transparent 29%),#0d0f16}
.app-shell .conversation-header,.app-shell .workspace-section-header,.app-shell .mobile-messages-header{color:#f5f7ff;background:linear-gradient(105deg,#151a28ed,#10131dec);border-color:#cbd8ff14;box-shadow:0 10px 30px #00000020;isolation:isolate;position:relative;overflow:hidden}.app-shell .conversation-header:before,.app-shell .workspace-section-header:before{content:"";opacity:.72;background:radial-gradient(circle at 82% -90%,#7e9dff6e 0,transparent 63%),linear-gradient(90deg,transparent,#a671ff17);pointer-events:none;position:absolute;inset:0}.app-shell .conversation-header>*,.app-shell .workspace-section-header>*{z-index:1;position:relative}
.app-shell .conversation-header h1,.app-shell .mobile-chat-back,.app-shell .mobile-chat-more{color:#f8f9ff}.app-shell .conversation-header p,.app-shell .message-row time{color:#9da8bd}
.app-shell .ai-window-button,.app-shell .notification-button{color:#dce6ff;background:#ffffff0b;border-color:#cbd8ff22}.app-shell .ai-window-button:hover,.app-shell .ai-window-button.running{color:#fff;background:#6f8fff36;border-color:#91aaff70}
.app-shell .message-avatar{box-shadow:0 0 0 2px #dce7ff14,0 7px 18px #0000003d}.app-shell .bubble{color:#f5f7ff;background:linear-gradient(145deg,#242938e8,#191d2ae8);border-color:#d5dfff18;box-shadow:0 12px 28px #0000002e,0 1px 0 #ffffff0b inset}.app-shell .bubble .message-text{color:inherit}.app-shell .mine .bubble{color:#fff;background:linear-gradient(135deg,#487df5,#285dcf 56%,#7352ca);border-color:#bbccff38;box-shadow:0 13px 29px #264eaa50,0 1px 0 #ffffff2e inset}
.app-shell .composer,.app-shell .mobile-primary-nav{color:#f5f7ff;background:#121622ed;border-color:#cbd8ff14;box-shadow:0 -12px 32px #0000002b}.app-shell .composer textarea,.app-shell .composer input{color:#f5f7ff;background:#ffffff0c;border-color:#cbd8ff24;box-shadow:0 1px 0 #ffffff0c inset}.app-shell .composer textarea::placeholder,.app-shell .composer input::placeholder{color:#8490a8}.app-shell .attach-button,.app-shell .voice-button{color:#dce6ff;background:#ffffff0c;border-color:#cbd8ff1a}.app-shell .send-button{background:linear-gradient(135deg,#6c9dff,#4776e5 56%,#7658d3);box-shadow:0 8px 20px #3d64d55c}
.annotation-backdrop .contact-dialog{color:#f5f7ff;background:#171b27f2;border-color:#d6e0ff20;box-shadow:0 30px 92px #00000088}.annotation-backdrop .contact-dialog>header,.annotation-backdrop .contact-dialog>footer{background:#ffffff08;border-color:#d6e0ff16}.annotation-backdrop .contact-dialog>header strong{color:#f8f9ff}.annotation-backdrop .contact-dialog>header span,.annotation-backdrop .contact-dialog>footer span{color:#9da8bd}.annotation-backdrop .external-friend-row input{color:#f5f7ff;background:#ffffff0b;border-color:#d6e0ff22}.annotation-backdrop .contact-row{color:#f5f7ff;background:#ffffff08;border-color:#d6e0ff14;box-shadow:0 1px 0 #ffffff09 inset}.annotation-backdrop .contact-list:has(.contact-row)::before{color:#b8c9ff;background:#6585ff14;border-color:#8ea8ff25}.annotation-backdrop .contact-row-actions button:last-child{color:#ffabb3!important;background:#5a1f2b5c;border-color:#ff7f9140}
}

/* Mobile chat: deliberate clearance above the system gesture area. */
@media (width<=760px){
.app-shell .conversation{height:calc(100dvh - 12px)}
}
