.group-avatar-widget[data-v-8515917e]{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;box-sizing:border-box;background:#e9edf2;border:none;padding:0;vertical-align:middle}.group-avatar-widget.clickable[data-v-8515917e]{cursor:pointer;transition:transform .12s ease,box-shadow .12s ease}.group-avatar-widget.clickable[data-v-8515917e]:hover{transform:scale(1.03);box-shadow:0 2px 8px #0f172a1f}.group-avatar-inner[data-v-8515917e],.group-avatar-placeholder[data-v-8515917e],.row-center[data-v-8515917e],.col-center[data-v-8515917e]{display:flex;align-items:center;justify-content:center}.col-center[data-v-8515917e]{flex-direction:column}.gap[data-v-8515917e]{flex:0 0 auto}.group-avatar-widget img[data-v-8515917e]{display:block;object-fit:cover;flex:0 0 auto}.group-avatar-widget img.single-full[data-v-8515917e]{border-radius:inherit}.group-avatar-placeholder[data-v-8515917e]{color:#b8bec8}.group-avatar-placeholder svg[data-v-8515917e]{width:42%;height:42%}*{box-sizing:border-box}:root{--app-font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", Arial, sans-serif;--brand: #07c160;--brand-dark: #059669;--brand-soft: #ecfdf5;--brand-ring: rgba(7, 193, 96, .18);--sidebar-bg: #0f1419;--sidebar-surface: rgba(255, 255, 255, .06);--sidebar-text: #e2e8f0;--sidebar-muted: #94a3b8;--surface: #ffffff;--surface-muted: #f4f6f8;--border: #e5e9ef;--text: #0f172a;--text-secondary: #475569;--text-muted: #64748b;--radius: 14px;--radius-sm: 10px;--shadow-panel: 0 1px 2px rgba(15, 23, 42, .04), 0 12px 32px rgba(15, 23, 42, .06)}body{margin:0;color:var(--text);background:linear-gradient(165deg,#f0f4f8,#f8fafb 42%,#eef2f6);font-family:var(--app-font-family);-webkit-font-smoothing:antialiased}button,input,textarea{font:inherit}button{cursor:pointer}.admin-shell{min-height:100vh;display:grid;grid-template-columns:272px minmax(0,1fr)}.login-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 12% 18%,rgba(7,193,96,.12),transparent 42%),radial-gradient(circle at 88% 0%,rgba(5,150,105,.08),transparent 38%),linear-gradient(165deg,#eef2f6,#f8fafb)}.login-panel{width:min(420px,100%);display:grid;gap:16px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:28px;box-shadow:var(--shadow-panel)}.login-brand{color:#1d2430;padding:0 0 18px;border-bottom-color:#e4e8ef}.login-panel label{display:grid;gap:8px;color:#495568;font-size:13px}.login-panel input{height:40px;border:1px solid #d8dee7;border-radius:var(--radius-sm);padding:0 12px;outline:none;transition:border-color .15s ease,box-shadow .15s ease}.login-panel input:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-ring)}.captcha-row{display:grid;grid-template-columns:minmax(0,1fr) 120px;gap:10px}.captcha-image{height:40px;overflow:hidden;border:1px solid #d8dee7;border-radius:8px;background:#f7f8fa;padding:0}.captcha-image img{width:100%;height:100%;display:block;object-fit:cover}.captcha-tip{color:#8792a3;font-size:12px}.captcha-image span{color:#667085;font-size:13px}.login-button{height:44px;border:0;border-radius:var(--radius-sm);color:#fff;background:linear-gradient(135deg,var(--brand) 0%,var(--brand-dark) 100%);font-weight:700;box-shadow:0 8px 20px var(--brand-ring)}.login-button:hover:not(:disabled){filter:brightness(1.03)}.login-button:disabled{opacity:.65}.sidebar{position:sticky;top:0;width:272px;min-width:272px;max-width:272px;height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;min-height:0;overflow:hidden;padding:20px 16px;color:var(--sidebar-text);background:linear-gradient(180deg,rgba(7,193,96,.08) 0%,transparent 28%),linear-gradient(180deg,#12181f 0%,var(--sidebar-bg) 100%);border-right:1px solid rgba(255,255,255,.06);display:grid;grid-template-rows:auto 1fr auto;gap:20px}.brand{display:flex;align-items:center;gap:12px;padding:6px 6px 16px;border-bottom:1px solid rgba(255,255,255,.08)}.brand-mark{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(145deg,var(--brand) 0%,var(--brand-dark) 100%);color:#fff;font-weight:800;box-shadow:0 8px 18px #07c16047}.brand-logo{width:42px;height:42px;flex:0 0 42px;border-radius:8px;object-fit:contain}.brand strong,.brand span{display:block}.brand strong{font-size:16px}.brand span{margin-top:3px;color:var(--sidebar-muted);font-size:12px}nav{min-height:0;overflow-y:auto;padding-right:2px;display:grid;align-content:start;gap:4px}.nav-section-label{margin:10px 4px 6px;padding:0 8px;color:#94a3b8b8;font-size:11px;font-weight:600;letter-spacing:.04em}.nav-section-label:first-child{margin-top:0}.nav-item-slot{display:contents}nav button{width:100%;height:42px;position:relative;display:flex;align-items:center;gap:10px;border:0;border-radius:var(--radius-sm);color:var(--sidebar-muted);background:transparent;padding:0 12px;text-align:left;transition:background .15s ease,color .15s ease}nav button.active{color:#fff;background:linear-gradient(90deg,#07c16038,#07c16014);box-shadow:inset 0 0 0 1px #07c16038}nav button:hover:not(.active){color:#f1f5f9;background:var(--sidebar-surface)}.nav-unread-dot{width:8px;height:8px;margin-left:auto;border-radius:50%;background:#ef4444;box-shadow:0 0 0 3px #ef44442e}.nav-tree{display:grid;gap:6px}.nav-tree-children{position:relative;display:grid;gap:4px;margin-left:18px;padding-left:14px}.nav-tree-children:before{content:"";position:absolute;left:0;top:4px;bottom:4px;width:1px;background:#cdd5df38}.nav-tree-children button{height:34px;border-radius:7px;color:#aeb8c5;padding-left:10px;font-size:13px}.nav-tree-children button.active,.nav-tree-children button:hover{color:#fff;background:#07c16029}.account-box{display:grid;gap:10px;padding-top:18px;border-top:1px solid rgba(255,255,255,.14)}.account-box span{color:#cfd6de;font-size:12px}.account-box strong{color:#fff;font-size:15px}.service-account-box{display:grid;gap:6px}.service-account-fold{border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-sm);background:#ffffff08;padding:8px 10px}.service-account-fold summary{display:flex;align-items:center;justify-content:space-between;gap:8px;list-style:none;cursor:pointer;color:#cfd6de;font-size:12px;-webkit-user-select:none;user-select:none}.service-account-fold summary::-webkit-details-marker{display:none}.service-account-fold summary:after{content:"▾";color:#94a3b8;font-size:11px;transition:transform .15s ease}.service-account-fold:not([open]) summary:after{transform:rotate(-90deg)}.service-account-fold summary small{color:#94a3b8;font-size:11px}.service-account-fold .service-account-box{margin-top:8px}.account-box button{height:38px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-sm);color:#f8fafc;background:#ffffff0a;transition:background .15s ease,border-color .15s ease}.account-box button:hover{background:#ffffff14;border-color:#ffffff29}.workspace{min-width:0;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;padding:16px 20px 0;overflow:hidden}.topbar{position:sticky;top:0;z-index:20;flex:none;min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:0;padding:12px 18px;border:1px solid var(--border);border-radius:var(--radius);background:#ffffffeb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--shadow-panel)}.topbar-main{min-width:0}.topbar-hint{margin-top:4px;color:var(--text-muted);font-size:13px;line-height:1.45}.workspace-body{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding:16px 0 28px;scroll-behavior:smooth}.eyebrow{margin:0 0 4px;color:var(--text-muted);font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:none}.account-box button span{color:#f8fafc;font-size:13px}.account-box .account-copy{justify-content:flex-start;min-width:0;padding:0 10px}.account-box .account-copy span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}h1,h2,p{margin:0}h1{font-size:22px;font-weight:700;letter-spacing:-.02em}h2{font-size:18px;font-weight:700}.ops-status{height:38px;display:inline-flex;align-items:center;gap:8px;border:1px solid var(--border);border-radius:999px;background:var(--surface);padding:0 14px;color:var(--text-secondary);cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease}.ops-status:hover{border-color:#cbd5e1;box-shadow:0 4px 14px #0f172a0f}.ops-status span{width:8px;height:8px;border-radius:99px;background:#d64545}.ops-status span.online{background:#21926f}.ops-form{display:grid;gap:22px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:22px;box-shadow:var(--shadow-panel)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;place-items:center;padding:24px;background:#1118276b}.modal-panel{width:min(1040px,100%);max-height:min(86vh,860px);overflow:auto;box-shadow:0 24px 72px #0f172a38}.modal-panel-wide{width:min(1180px,100%)}.customer-import-panel{width:min(680px,100%)}.modal-panel .permission-editor{max-height:54vh;overflow:auto;padding-right:4px}.modal-action-row{display:flex;justify-content:flex-end}.admin-call-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;display:grid;place-items:center;padding:24px;background:#0307129e}.admin-call-invite{width:min(360px,100%);display:grid;gap:18px;justify-items:center;border-radius:8px;background:#fff;padding:28px;box-shadow:0 28px 80px #03071252}.admin-call-avatar{width:72px;height:72px;overflow:hidden;border-radius:50%;background:#eef2f7}.admin-call-avatar img{width:100%;height:100%;object-fit:cover}.admin-call-invite p{margin:0;color:#111827;font-size:16px;line-height:1.5;text-align:center}.admin-call-invite.is-group{width:min(420px,100%)}.admin-call-group-title{font-weight:700}.admin-call-group-members{display:flex;flex-wrap:wrap;justify-content:center;gap:14px 12px;width:100%}.admin-call-group-member{width:72px;display:flex;flex-direction:column;align-items:center;gap:6px}.admin-call-group-member img{width:52px;height:52px;border-radius:50%;object-fit:cover;background:#eef2f7}.admin-call-group-member span{width:100%;font-size:12px;line-height:1.35;color:#4b5563;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-call-actions{display:flex;gap:14px}.admin-call-actions button,.admin-call-window header button{display:inline-flex;align-items:center;gap:6px;border:0;border-radius:6px;padding:10px 16px;color:#fff;font-weight:700;cursor:pointer}.admin-call-header-actions{display:flex;align-items:center;gap:10px}.admin-call-invite{background:#2563eb}.admin-call-decline,.admin-call-window header button:not(.admin-call-invite){background:#ef4444}.admin-call-answer{background:#16a34a}.admin-call-window{position:fixed;top:24px;right:24px;bottom:24px;left:24px;z-index:130;display:grid;grid-template-rows:auto 1fr;overflow:hidden;border-radius:8px;background:#05070d;box-shadow:0 28px 96px #03071273}.admin-call-window header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 16px;color:#fff;background:#111827}.admin-call-window iframe{width:100%;height:100%;border:0;background:#05070d}.form-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding-bottom:18px;border-bottom:1px solid #edf0f5}.form-head>div:first-child{min-width:260px;margin-right:auto}.form-head h2{font-size:20px;letter-spacing:0}.form-head p{margin-top:7px;color:#667085;font-size:14px;line-height:1.55}.ops-field{display:grid;gap:9px;color:#495568;font-size:14px;font-weight:700}.ops-field>span{display:block}.ops-field select{width:100%;height:44px;border:1px solid #d8dee7;border-radius:8px;background:#fff;padding:0 38px 0 13px;color:var(--text);font:inherit;font-weight:500;outline:none;transition:border-color .15s ease,box-shadow .15s ease}.ops-field select:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-ring)}.readonly-control{min-height:44px;display:flex;align-items:center;border:1px solid #d8dee7;border-radius:8px;background:#f6f7f9;padding:0 13px;color:#293241;font-weight:700}.customer-import-org,.customer-import-owner{max-width:420px}.customer-import-file{max-width:560px}.file-drop-control{position:relative;min-height:118px;display:grid;place-items:center;gap:6px;border:1px dashed #cbd5e1;border-radius:8px;background:#fbfcfe;padding:20px;color:#64748b;text-align:center;cursor:pointer;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}.file-drop-control:hover{border-color:var(--brand);background:var(--brand-soft)}.file-drop-control:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-ring)}.file-drop-control.selected{border-style:solid;border-color:#07c1607a;background:var(--brand-soft)}.file-drop-control svg{color:var(--brand-dark)}.file-drop-control strong{max-width:100%;overflow:hidden;color:var(--text);font-size:15px;line-height:1.45;text-overflow:ellipsis;white-space:nowrap}.file-drop-control small{color:var(--text-muted);font-size:12px;font-weight:500;line-height:1.45}.file-drop-control input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.primary-action,.secondary-action{min-width:96px;height:42px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:var(--radius-sm);color:#fff;background:linear-gradient(135deg,var(--brand) 0%,var(--brand-dark) 100%);padding:0 18px;font-weight:700;box-shadow:0 6px 16px var(--brand-ring);transition:filter .15s ease,box-shadow .15s ease}.primary-action:hover:not(:disabled){filter:brightness(1.04)}.primary-action:disabled{opacity:.6}.secondary-action{border:1px solid var(--border);color:var(--text-secondary);background:var(--surface);box-shadow:none}.secondary-action:hover:not(:disabled){border-color:#cbd5e1;background:var(--surface-muted)}.form-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;max-width:720px}.form-grid label{display:grid;gap:9px;color:#495568;font-size:14px;font-weight:700}.form-grid input,.form-grid select,.form-grid textarea{width:100%;border:1px solid #d8dee7;border-radius:8px;background:#fff;outline:none}.form-grid input,.form-grid select{height:44px;padding:0 13px;font-weight:500}.form-grid textarea{min-height:112px;padding:12px 13px;resize:vertical}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-ring)}.password-input{position:relative}.password-input input,.form-grid .password-input input{width:100%;padding-right:40px}.password-input button{position:absolute;top:50%;right:8px;width:28px;height:28px;display:inline-grid;place-items:center;border:0;border-radius:6px;background:transparent;color:#667085;cursor:pointer;transform:translateY(-50%)}.password-input button:hover{background:#eef2f6;color:#263244}.form-grid .wide-field{grid-column:1 / -1}.group-form-basic{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:20px;row-gap:8px;width:100%}.group-form-basic .form-field{display:grid;gap:8px;min-width:0}.group-form-basic .form-field-label{color:#495568;font-size:14px;font-weight:700;line-height:20px}.group-form-basic .form-field input,.group-form-basic .form-field select{width:100%;height:44px;border:1px solid #d8dee7;border-radius:8px;background:#fff;padding:0 13px;font-weight:500;outline:none}.group-form-basic .form-field input.readonly-input:disabled,.group-form-basic .form-field input:disabled,.group-form-basic .form-field select:disabled{color:#293241;background:#f6f7f9;cursor:not-allowed}.group-form-basic .form-field input:focus,.group-form-basic .form-field select:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-ring)}.group-form-basic .form-field-hint-below{grid-column:1 / -1;margin:4px 0 0;color:var(--text-muted);font-size:12px;line-height:1.5}.group-form-details{margin-top:18px;max-width:none;width:100%}.group-create-form .member-picker-create{width:100%}.user-form-grid{grid-template-columns:repeat(2,minmax(220px,1fr));max-width:none}.form-grid .form-wide,.user-form-grid .form-wide{grid-column:1 / -1}.form-grid label>span{display:block;white-space:nowrap}.ops-category-cell{display:inline-block;max-width:180px;overflow:hidden;color:#31566f;font-size:13px;font-weight:500;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}.role-checks{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px;border-top:1px solid #edf0f5;padding-top:18px;max-width:720px;color:#495568;font-size:14px}.role-checks>span{min-width:72px;color:#667085;font-weight:700}.role-checks label{min-height:38px;display:flex;align-items:center;gap:9px;border:1px solid #dfe4eb;border-radius:8px;background:#fbfcfe;padding:0 12px;font-weight:700}.role-checks label:has(input:checked){border-color:var(--brand);background:var(--brand-soft)}.admin-service-card{min-width:300px;max-width:360px;display:grid;gap:10px;border:1px solid #dfe4eb;border-radius:8px;background:#fbfcfe;padding:12px;white-space:normal}.admin-service-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.admin-service-card-head strong{color:#263244;font-size:14px}.admin-service-card-head span{flex-shrink:0;border-radius:999px;background:var(--brand-soft);color:var(--brand-dark);padding:4px 8px;font-size:12px;font-weight:700}.admin-service-card-grid{display:grid;grid-template-columns:64px minmax(0,1fr);gap:6px 10px;color:#667085;font-size:12px;line-height:1.35}.admin-service-card-grid b{min-width:0;color:#293241;font-weight:600;overflow-wrap:anywhere}.role-editor-form{margin-top:4px}.role-form-grid{grid-template-columns:minmax(220px,1.4fr) minmax(220px,1.4fr) minmax(120px,.7fr) minmax(150px,.8fr);max-width:none;margin-bottom:14px}.permission-editor{display:grid;gap:12px;border-top:1px solid #e5e9ef;padding-top:14px}.permission-editor-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.permission-editor-head strong{color:#293241;font-size:14px}.permission-editor-head div{display:inline-flex;gap:8px}.permission-tree{display:grid;gap:8px}.permission-tree-node{display:grid;border:1px solid #e1e6ee;border-radius:8px;background:#fbfcfe}.permission-tree-parent{min-height:42px;display:flex;align-items:center;gap:8px;border-bottom:1px solid #e8ecf2;padding:0 12px;color:#293241;font-size:13px;font-weight:800}.permission-tree-parent svg{color:#778294;flex:none}.permission-tree-parent small{margin-left:auto;color:#8792a3;font-size:12px;font-weight:600}.permission-tree-children{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 10px;margin:10px 12px 12px 22px;padding-left:14px}.permission-tree-children:before{content:"";position:absolute;left:0;top:0;bottom:0;width:1px;background:#d9e0ea}.permission-tree-leaf{min-height:36px;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:3px 7px;border:1px solid #e1e6ee;border-radius:8px;background:#fff;padding:7px 9px}.permission-tree-leaf input{grid-row:span 2}.permission-tree-leaf span{color:#293241;font-size:13px;font-weight:700}.permission-tree-leaf small{overflow:hidden;color:#778294;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.permission-node-summary{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.permission-node-summary article{min-height:68px;display:grid;align-content:center;gap:6px;border:1px solid #e1e6ee;border-radius:8px;background:#fff;padding:12px}.permission-node-summary span{overflow:hidden;color:#667085;font-size:12px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.permission-node-summary strong{color:#1d2430;font-size:20px}.permission-key{display:inline-block;max-width:260px;overflow:hidden;border:1px solid #e1e6ee;border-radius:6px;background:#f7f8fa;color:#344054;padding:4px 7px;font-size:12px;text-overflow:ellipsis;vertical-align:middle}.menu-badge{display:inline-flex;align-items:center;min-height:24px;border-radius:999px;background:#eef2f6;color:#475467;padding:0 9px;font-size:12px;font-weight:800}.service-editor,.customer-service-form,.group-create-form,.group-manage-panel{margin-bottom:16px}.service-grid{grid-template-columns:repeat(2,minmax(0,260px))}.form-grid input:disabled,.form-grid select:disabled,.form-grid textarea:disabled{color:#667085;background:#f6f7f9;cursor:not-allowed}.member-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.member-picker-create{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.field-hint{margin:4px 0 8px;color:var(--text-muted);font-size:12px;line-height:1.45}.service-account-picker{display:flex;flex-wrap:wrap;gap:8px}.service-account-chip{display:inline-flex;align-items:center;gap:8px;max-width:100%;min-height:38px;border:1px solid #d8dee9;border-radius:999px;background:#fff;padding:4px 12px 4px 4px;color:#293241;font-size:12px;text-align:left}.service-account-chip .avatar{width:28px;height:28px;border-radius:999px}.service-account-chip span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.service-account-chip.selected{border-color:#07c1606b;background:var(--brand-soft);color:#065f46}.selected-service-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.selected-service-tag{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 8px 0 10px;border-radius:999px;border:1px solid rgba(14,116,144,.2);background:#ecfeff;color:#0e7490;font-size:12px;font-weight:600}.selected-service-tag button{width:18px;height:18px;border:0;border-radius:999px;color:#0e7490;background:#0e74901f;line-height:1}.readonly-field input:disabled{color:#293241;background:#f6f7f9}.group-file-panel{border:1px solid #e2e7ef;border-radius:8px;background:#f8fafc;overflow:hidden}.group-file-head{min-height:48px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;border-bottom:1px solid #e2e7ef;background:#fff;padding:8px 14px}.group-file-head>div{display:flex;flex-direction:column;gap:3px;min-width:0}.group-file-head strong{color:#111827;font-size:14px}.group-file-head span{color:#667085;font-size:12px}.group-file-expire{display:inline-flex;align-items:center;gap:8px;flex:0 1 260px;margin-left:auto}.group-file-expire input{width:180px;max-width:100%;border:1px solid #d8dee8;border-radius:6px;color:#1f2937;background:#fff;padding:7px 9px;font-size:12px}.group-file-upload-btn,.group-file-upload-btn span{color:#fff}.group-file-expire-panel{display:grid;gap:10px;border-top:1px solid #e8edf3;background:#f8fafc;padding:12px 14px}.group-file-expire-label{color:#475467;font-size:13px;font-weight:600}.group-file-expire-options{display:flex;flex-wrap:wrap;gap:8px}.group-file-expire-option{height:32px;border:1px solid #d8dee8;border-radius:999px;background:#fff;color:#475467;padding:0 12px;font-size:12px;cursor:pointer;transition:border-color .12s ease,background .12s ease,color .12s ease}.group-file-expire-option:hover:not(:disabled){border-color:#9bd581;color:#0f9f2e}.group-file-expire-option.active{border-color:#07c160;background:#ecfdf3;color:#0f9f2e;font-weight:600}.group-file-expire-option:disabled{cursor:not-allowed;opacity:.65}.group-file-expire-custom{display:flex;flex-wrap:wrap;gap:10px}.group-file-expire-custom input[type=date],.group-file-expire-custom input[type=time]{min-width:148px;height:36px;border:1px solid #d8dee8;border-radius:8px;color:#1f2937;background:#fff;padding:0 10px;font-size:13px}.group-file-expire-hint{margin:0;color:#667085;font-size:12px;line-height:1.45}.group-file-expire-panel.draft{border-top:0;background:#fff;padding:0}.group-file-upload-draft{display:grid;gap:14px;border-top:1px solid #e8edf3;border-bottom:1px solid #e8edf3;background:linear-gradient(180deg,#f8fafc,#fff);padding:14px}.group-file-upload-draft-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.group-file-upload-draft-head strong{display:block;color:#111827;font-size:15px}.group-file-upload-draft-head p{margin:4px 0 0;color:#667085;font-size:12px;line-height:1.45}.group-file-upload-preview{display:flex;align-items:center;gap:12px;border:1px solid #e6ebf2;border-radius:12px;background:#fff;padding:12px}.group-file-upload-preview strong{display:block;color:#111827;font-size:14px;word-break:break-all}.group-file-upload-preview small{color:#667085;font-size:12px}.group-file-upload-actions{display:flex;justify-content:flex-end;align-items:center;gap:10px}.hidden-file-input{display:none}.group-file-list{display:grid;gap:8px;padding:10px;max-height:220px;overflow:auto}.group-file-list.empty{min-height:54px}.group-file-card{display:flex;align-items:center;gap:10px;min-width:0;border:1px solid #e6ebf2;border-radius:7px;background:#fff;padding:10px}.group-file-icon{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;border-radius:8px;color:#0f766e;background:#ecfdf5}.group-file-main{min-width:0;flex:1;display:flex;flex-direction:column;gap:3px}.group-file-main strong,.group-file-main small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.group-file-main strong{color:#111827;font-size:13px}.group-file-main small{color:#667085;font-size:12px}.group-file-actions{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto}.group-files-backdrop{z-index:105;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.group-files-modal{width:min(760px,calc(100vw - 32px));max-height:min(86vh,720px);overflow:hidden;border:0;border-radius:18px;padding:0;background:#fff;box-shadow:0 24px 64px #0f172a2e}.group-files-head{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:18px 18px 14px;border-bottom:1px solid #edf0f5;background:linear-gradient(180deg,#f8fafc,#fff)}.group-files-title{min-width:0;display:grid;gap:4px}.group-files-title strong{color:#1f2329;font-size:16px;line-height:1.35}.group-files-title small{color:#8a9099;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.group-files-count-pill{padding:4px 10px;border-radius:999px;background:#ecfdf5;color:#059669;font-size:12px;font-weight:600;white-space:nowrap}.group-files-close{width:34px;height:34px;border:1px solid #e2e7ef;border-radius:10px;background:#fff;color:#667085;font-size:22px;line-height:1;cursor:pointer}.group-files-close:hover{color:#111827;background:#f8fafc}.group-file-panel.modal-embedded{border:0;border-radius:0;background:#fff}.group-file-list.modal-list{max-height:min(58vh,520px)}.group-manage-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);gap:14px}.group-manage-tabs{margin-bottom:14px}.group-manage-tab-count{min-width:18px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#eef2f6;padding:0 6px;color:#667085;font-size:11px;font-weight:700}.sub-tabs button.active .group-manage-tab-count{background:#fff7e8;color:#9a6b1f}.group-manage-tab-panel{min-width:0}.members-tab-column{width:100%}.members-tab-search{margin:0 10px 8px}.members-tab-list{min-height:240px;max-height:min(58vh,560px)}.group-settings-panel{display:grid;gap:14px;max-width:560px}.group-settings-danger{border-color:#f3d6d6;background:snow}.group-settings-danger .row-action.danger{justify-self:start}.group-import-bar{display:grid;gap:10px;margin:0 10px 8px;border:1px dashed #d8dee7;border-radius:8px;background:#fff;padding:10px}.group-import-field{display:grid;gap:6px}.group-import-field span{color:#667085;font-size:12px}.group-import-field select{width:100%;height:36px;border:1px solid #d8dee7;border-radius:8px;background:#fff;padding:0 10px}.group-import-actions{display:flex;flex-wrap:wrap;gap:8px}.group-import-empty{margin:0 10px 8px}.member-column{min-width:0;border:1px solid #e2e7ef;border-radius:8px;background:#f8fafc;overflow:hidden}.member-column-head{min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #e2e7ef;background:#fff;padding:6px 14px}.member-column-head-title{display:flex;align-items:center;gap:8px;min-width:0}.member-column-head-title span{color:#667085;font-size:12px;white-space:nowrap}.member-pool-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.member-pool-actions .row-action{padding:4px 8px;font-size:12px}.member-pool-actions .row-action:disabled{opacity:.45;cursor:not-allowed}.member-column-head strong{font-size:14px}.member-column-head span{color:#667085;font-size:12px}.pool-search{height:36px;display:flex;align-items:center;gap:7px;margin:10px 10px 0;padding:0 10px;border:1px solid #d8dee9;border-radius:6px;color:#8f96a3;background:#fff}.pool-search input{width:100%;min-width:0;height:100%;border:0;outline:none;color:#111827;background:transparent}.pool-search input::placeholder{color:#9aa1ad}.member-list{min-height:178px;max-height:280px;display:grid;align-content:start;gap:8px;overflow:auto;padding:10px}.drop-list.empty{place-items:center}.member-card{width:100%;min-width:0;display:flex;align-items:center;gap:10px;border:1px solid #e1e7ef;border-radius:8px;background:#fff;padding:9px;text-align:left}.member-card:hover{border-color:#c89943;background:#fffaf0}.member-card.selected{border-color:#bfd9cf;background:#f2fbf7}.member-card.readonly{cursor:default}.member-card.readonly:hover{border-color:#e1e7ef;background:#fff}.member-card span,.member-card-body{min-width:0;flex:1;display:grid;gap:3px}.member-card strong,.member-card small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.member-card strong{color:#1d2430;font-size:13px}.member-card small{color:#667085;font-size:12px}.member-empty{margin:0;color:#778294;font-size:13px}.mini-danger{height:28px;border:1px solid #f1c4c4;border-radius:8px;color:#9f2626;background:#fff5f5;padding:0 10px;white-space:nowrap}.member-card-actions{display:inline-flex;gap:6px;align-items:center;flex:none;margin-left:auto}.member-card-tail{display:flex;align-items:center;gap:10px;flex:none;margin-left:auto}.member-mute-status{display:grid;gap:2px;justify-items:end;text-align:right}.member-mute-badge{display:inline-flex;align-items:center;border-radius:999px;background:#fff1f0;color:#cf1322;padding:4px 10px;font-size:12px;font-weight:600;white-space:nowrap}.member-mute-until{color:#98a2b3;font-size:11px;white-space:nowrap}.member-card-actions .mini-action{height:28px;border:1px solid #d8dee7;border-radius:8px;color:#344054;background:#fff;padding:0 10px;font-size:12px;white-space:nowrap;cursor:pointer}.member-card-actions .mini-action-unmute{border-color:#95de64;background:#f6ffed;color:#389e0d}.member-card-actions .mini-action-unmute:hover:not(:disabled){border-color:#73d13d;background:#d9f7be}.member-card-actions .mini-action:hover:not(:disabled){border-color:#c7d0dd;background:#f8fafc}.mini-action{height:28px;border:1px solid #d8dee7;border-radius:8px;color:#2f5fea;background:#f3f6ff;padding:0 10px;white-space:nowrap}.mini-action:disabled,.mini-danger:disabled{opacity:.5;cursor:not-allowed}.member-role-tag{margin-left:6px;padding:1px 6px;border-radius:6px;font-size:11px;font-style:normal;vertical-align:middle}.member-role-tag.master{color:#b26a00;background:#fff3e0}.member-role-tag.admin{color:#2f5fea;background:#eef2ff}.member-role-tag.muted{color:#cf1322;background:#fff1f0}.member-role-tag.member{color:#475569;background:#f1f5f9}.group-role-rubric{display:flex;flex-wrap:wrap;gap:10px 16px;margin-bottom:14px;padding:10px 12px;border:1px solid #e2e8f0;border-radius:8px;background:#f8fafc;color:#64748b;font-size:12px;line-height:1.5}.group-role-rubric .member-role-tag{margin-right:4px;vertical-align:middle}.manager-box .field-hint{margin:0 0 8px}.group-nospeak-backdrop{z-index:120;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.group-nospeak-modal{width:min(440px,calc(100vw - 32px));overflow:hidden;border-radius:14px}.group-nospeak-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:18px 20px 14px;border-bottom:1px solid #eef2f6;background:linear-gradient(180deg,#fffaf5,#fff)}.group-nospeak-head-main{display:flex;align-items:center;gap:12px;min-width:0}.group-nospeak-icon{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px;background:#fff4e8;color:#c2410c;flex:0 0 auto}.group-nospeak-head strong{display:block;color:#0f172a;font-size:17px;line-height:1.3}.group-nospeak-member{margin:4px 0 0;color:#64748b;font-size:13px;line-height:1.4}.group-nospeak-close{width:32px;height:32px;border:0;border-radius:8px;background:transparent;color:#94a3b8;font-size:22px;line-height:1;cursor:pointer;transition:background .15s ease,color .15s ease}.group-nospeak-close:hover{background:#f1f5f9;color:#475569}.group-nospeak-body{padding:16px 20px 8px}.group-nospeak-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:18px}.group-nospeak-summary-item{border:1px solid #e8edf3;border-radius:12px;background:#f8fafc;padding:12px 14px}.group-nospeak-summary-item span{display:block;margin-bottom:6px;font-size:12px;color:#64748b}.group-nospeak-summary-item strong{display:block;font-size:15px;color:#0f172a;line-height:1.35;word-break:break-word}.group-nospeak-summary-item small{display:block;margin-top:4px;color:#94a3b8;font-size:11px;line-height:1.3}.group-nospeak-section-label{margin:0 0 10px;color:#475569;font-size:13px;font-weight:600}.nospeak-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:14px}.nospeak-option{min-height:48px;border:1px solid #e2e8f0;border-radius:12px;padding:0 14px;background:#fff;color:#334155;font-size:14px;font-weight:600;cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease,box-shadow .15s ease,transform .12s ease}.nospeak-option:hover{border-color:#cbd5e1;background:#f8fafc}.nospeak-option.active{border-color:#07c160;box-shadow:0 0 0 3px #07c1601f;background:#effdf5;color:#047857}.nospeak-option.custom{grid-column:1 / -1}.nospeak-custom{display:grid;gap:8px;margin-bottom:6px;padding:12px 14px;border:1px dashed #dbe3ec;border-radius:12px;background:#fbfdff;font-size:13px;color:#4b5563}.nospeak-custom-input{display:flex;align-items:center;gap:8px}.nospeak-custom-input input{flex:1;height:42px;border:1px solid #d7dee7;border-radius:10px;padding:0 12px;font-size:15px;color:#0f172a;background:#fff}.nospeak-custom-input input:focus{outline:none;border-color:#07c160;box-shadow:0 0 0 3px #07c1601a}.nospeak-custom-input em{color:#64748b;font-size:14px;font-style:normal}.nospeak-custom small{color:#94a3b8;line-height:1.45}.group-nospeak-footer{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:14px 20px 18px;border-top:1px solid #eef2f6;background:#fafbfc}.form-head-actions{display:inline-flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:flex-end}.row-action.danger{color:#9f2626;border-color:#f1c4c4;background:#fff5f5}.group-nospeak-setting{display:grid;gap:12px;margin-top:12px}.group-nospeak-status-muted{color:#cf1322;font-weight:600}.group-nospeak-unmute{width:100%;justify-content:center;background:#f6ffed;border:1px solid #95de64;color:#389e0d}.group-nospeak-unmute:hover:not(:disabled){background:#d9f7be;border-color:#73d13d}.member-column-head.compact{padding:0;margin-bottom:2px}.group-nospeak-options{grid-template-columns:1fr}.group-nospeak-options .nospeak-option{text-align:left}.manager-box{display:grid;gap:12px;padding:14px}.manager-box select{width:100%;height:38px;border:1px solid #d8dee7;border-radius:8px;background:#fff;padding:0 10px;outline:none}.form-actions{display:flex;justify-content:flex-end}.reply-form{display:grid;grid-template-columns:120px minmax(220px,1fr) auto;gap:10px}.reply-form input{min-width:0;height:38px;border:1px solid #d8dee7;border-radius:8px;padding:0 10px;outline:none}.reply-form button{height:38px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:0;border-radius:var(--radius-sm);color:#fff;background:linear-gradient(135deg,var(--brand) 0%,var(--brand-dark) 100%);padding:0 13px;font-weight:700}.chat-workspace{height:min(calc(100dvh - 168px),880px);min-height:560px;display:grid;grid-template-columns:300px minmax(0,1fr) 260px;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;background:var(--surface);box-shadow:var(--shadow-panel)}.chat-workspace.audit-admin{grid-template-columns:300px minmax(0,1fr);border-color:#c8e6ea;box-shadow:0 1px 2px #0e74900f,0 12px 32px #0e749014}.chat-workspace.audit-admin .chat-profile{display:none}.chat-workspace.audit-admin .chat-sessions{background:linear-gradient(180deg,#f8fafc,#f1f5f9);color:var(--text);border-right:1px solid var(--border)}.chat-workspace.audit-admin .chat-panel-head{border-bottom-color:var(--border)}.chat-workspace.audit-admin .chat-panel-head h2{color:var(--text)}.chat-workspace.audit-admin .chat-panel-head p,.chat-workspace.audit-admin .empty-hint,.chat-workspace.audit-admin .session-list.empty .empty-hint{color:var(--text-muted);background:transparent}.chat-workspace.audit-admin .session-filter{background:#eef2f6}.chat-workspace.audit-admin .session-filter button{color:var(--text-secondary)}.chat-workspace.audit-admin .session-filter button span{background:#0f172a0f;color:var(--text-muted)}.chat-workspace.audit-admin .session-filter button:hover{color:var(--text)}.chat-workspace.audit-admin .session-filter button.active span{background:#ffffff3d;color:#fff}.chat-workspace.audit-admin .chat-search{color:var(--text-muted);background:#fff;border:1px solid var(--border)}.chat-workspace.audit-admin .chat-search input{color:var(--text)}.chat-workspace.audit-admin .chat-search input::placeholder{color:#94a3b8}.chat-workspace.audit-admin .chat-icon-button{color:var(--text-secondary);background:#fff;border:1px solid var(--border)}.chat-workspace.audit-admin .session-item{border-bottom-color:#e8ecf1}.chat-workspace.audit-admin .session-item:hover{background:#eef2f6}.chat-workspace.audit-admin .session-item.active{background:#e0f2fe;box-shadow:inset 0 0 0 1px #0e749029}.chat-workspace.audit-admin .session-main strong,.chat-workspace.audit-admin .session-main small{color:var(--text)}.chat-workspace.audit-admin .session-main small{color:var(--text-muted)}.chat-workspace.audit-admin .message-stream{display:flex;flex:1;flex-direction:column;gap:0;min-height:0;overflow:hidden;background:#f4f6f8;padding:0}.chat-workspace.audit-admin .chat-window-head{background:#fff;border-bottom-color:#e8edf2}.chat-workspace.audit-admin .chat-list-controls.audit-controls{justify-content:flex-end}.chat-workspace.audit-admin .chat-record-list.session-focused{flex:1;min-height:0;display:flex;flex-direction:column;overflow:auto;border:0;border-radius:0;background:#fff;box-shadow:none}.chat-workspace.audit-admin .chat-record-head.session-focused{position:sticky;top:0;z-index:2;min-height:44px;margin:0;padding:0 20px;border-bottom:1px solid #e5eaf0;border-radius:0;background:#f8fafc;color:#64748b;font-size:12px;font-weight:600;letter-spacing:.02em;box-shadow:0 1px #0f172a08}.chat-workspace.audit-admin .chat-record-item.session-focused{min-height:56px;margin:0;padding:14px 20px;border-bottom:1px solid #f1f4f8;background:#fff;transition:background .12s ease}.chat-workspace.audit-admin .chat-record-item.session-focused:nth-child(2n){background:#fbfcfd}.chat-workspace.audit-admin .chat-record-item.session-focused:hover{background:#f0f7fa}.chat-workspace.audit-admin .chat-record-item.session-focused.system{background:#fafafa}.chat-workspace.audit-admin .record-sender strong{font-size:13px;font-weight:600;color:#0f172a}.chat-workspace.audit-admin .record-sender small{height:20px;border-radius:4px;background:#eef2f6;color:#64748b;padding:0 6px;font-size:11px;font-weight:600}.chat-workspace.audit-admin .record-sender small.user{background:#e8f5f0;color:#0f766e}.chat-workspace.audit-admin .audit-record-text{color:#1e293b;font-size:13px;line-height:1.55}.chat-workspace.audit-admin .record-time time{color:#94a3b8;font-size:12px;font-variant-numeric:tabular-nums;white-space:nowrap}.chat-workspace.audit-admin .chat-read-receipt{min-width:44px;height:22px;justify-content:center;border-radius:999px;background:#f1f5f9;color:#64748b;padding:0 8px;font-size:11px;font-weight:600}.chat-workspace.audit-admin .chat-read-receipt:before{display:none}.chat-workspace.audit-admin .chat-read-receipt.read{background:#ecfdf3;color:#067647}.chat-workspace.audit-admin .audit-record-read-receipt{height:22px;border-radius:999px;background:#eff6ff;color:#1d4ed8;padding:0 8px;font-size:11px;font-weight:600}.chat-workspace.audit-admin .audit-record-read-muted{color:#cbd5e1}.chat-workspace.audit-admin .record-action-button{height:28px;border:1px solid #e2e8f0;border-radius:6px;background:#fff;color:#475569;padding:0 10px;font-size:12px;font-weight:600}.chat-workspace.audit-admin .record-action-button:hover:not(:disabled){border-color:#cbd5e1;background:#f8fafc;color:#0f172a}.chat-workspace.audit-admin .record-action-button.danger{border-color:#fecaca;color:#b91c1c;background:snow}.chat-workspace.audit-admin .record-action-button.danger:hover:not(:disabled){border-color:#fca5a5;background:#fef2f2}.chat-workspace.audit-admin .audit-chat-pagination{flex:none;margin:0;border:0;border-top:1px solid #e5eaf0;border-radius:0;background:#fff;box-shadow:none;padding:10px 20px}.chat-workspace.audit-admin .chat-list-controls.audit-controls .audit-page-size{width:auto;min-width:96px;height:34px}.messages-page{display:flex;flex-direction:column;gap:12px;min-height:0}.workspace.is-messages{box-sizing:border-box;height:100dvh;max-height:100dvh;min-height:0;padding-top:12px;padding-bottom:0;overflow:hidden}.workspace.is-messages .topbar{flex:none;min-height:56px;padding:8px 16px}.workspace.is-messages .topbar-hint{display:none}.workspace-body.is-messages{display:flex;flex:1;flex-direction:column;min-height:0;max-height:100%;padding:10px 0 0;overflow:hidden}.workspace-body.is-messages>.error-line,.workspace-body.is-messages>.success-line{flex:none;margin-bottom:8px}.workspace-body.is-messages .messages-page{display:flex;flex:1;flex-direction:column;min-height:0;max-height:100%;gap:0;overflow:hidden}.workspace-body.is-messages .chat-workspace,.messages-page.is-audit .chat-workspace{flex:1;width:100%;height:auto;min-height:0;max-height:100%;border-radius:var(--radius) var(--radius) 0 0;overflow:hidden}.workspace-body.is-messages .chat-workspace>.chat-sessions,.workspace-body.is-messages .chat-workspace>.chat-window{min-height:0;height:100%;overflow:hidden}.audit-workspace-banner{display:flex;align-items:center;gap:14px;padding:12px 16px;border:1px solid rgba(14,116,144,.18);border-radius:var(--radius);background:linear-gradient(135deg,#ecfeff,#f8fafc);box-shadow:0 1px 2px #0e74900f}.audit-workspace-icon{flex:none;width:40px;height:40px;display:grid;place-items:center;border-radius:10px;color:#0e7490;background:#fff;box-shadow:inset 0 0 0 1px #0e749024}.audit-workspace-copy{min-width:0;flex:1}.audit-workspace-copy strong{display:block;margin-bottom:2px;color:#0f4c5c;font-size:14px}.audit-workspace-copy p{margin:0;color:#475569;font-size:12px;line-height:1.55}.audit-workspace-role{flex:none;height:30px;display:inline-flex;align-items:center;padding:0 12px;border-radius:999px;border:1px solid rgba(14,116,144,.2);color:#0e7490;background:#fff;font-size:12px;font-weight:700}.chat-record-head.session-focused,.chat-record-item.session-focused{grid-template-columns:minmax(132px,168px) minmax(0,1fr) 148px 96px minmax(108px,auto);gap:12px 16px;align-items:center}.chat-record-item.session-focused .record-sender,.chat-record-item.session-focused .record-time,.chat-record-item.session-focused .record-read-status,.chat-record-item.session-focused .record-actions{align-self:center;padding-top:0}.chat-record-item.session-focused .record-content{align-self:center}.chat-record-head.session-focused span:nth-child(3),.chat-record-item.session-focused .record-time{text-align:left}.chat-record-head.session-focused span:nth-child(4),.chat-record-item.session-focused .record-read-status{text-align:center}.chat-record-head.session-focused span:last-child,.chat-record-item.session-focused .record-actions{text-align:right}.chat-record-item.session-focused .record-time{min-width:0;color:#94a3b8;font-size:12px;line-height:18px}.chat-record-head.session-focused span{display:block}.record-read-status{min-width:0;display:flex;align-items:center;justify-content:center}.audit-record-read-receipt{display:inline-flex;align-items:center;gap:4px;border:0;background:transparent;color:#667085;font-size:12px;cursor:pointer}.audit-record-read-muted{color:#c0c7d2;font-size:12px}.audit-record-text{margin:0;color:#1f2329;font-size:13px;line-height:22px;word-break:break-word}.audit-record-text .inline-emoji,.audit-record-text .inline-emoji-char{width:22px;height:22px;vertical-align:-4px}.audit-record-text .inline-emoji-char{display:inline-block;width:auto;font-size:18px;line-height:1}.audit-record-voice{display:flex;align-items:center;gap:8px;min-width:0}.audit-record-voice audio{width:min(240px,100%);height:32px}.audit-record-image,.audit-record-video{display:block;max-width:180px;max-height:120px;border-radius:8px;object-fit:cover;cursor:pointer}.audit-record-file{display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;color:#2563eb;padding:0;font-size:13px;cursor:pointer}.audit-record-burn-tag{display:inline-flex;align-items:center;margin-top:6px;border-radius:999px;background:#fff4e5;color:#9a5b00;padding:2px 8px;font-size:11px;font-weight:700}.audit-chat-pagination,.table-pagination{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:12px;padding:12px 16px;border:1px solid #e4e7ec;border-radius:10px;background:linear-gradient(180deg,#fff,#f8fafc);box-shadow:0 1px 2px #1018280a}.table-panel>.table-pagination{margin:0;border:none;border-top:1px solid #edf0f4;border-radius:0 0 var(--radius-sm) var(--radius-sm);box-shadow:none}.audit-chat-pagination-summary,.table-pagination-summary{color:#475467;font-size:13px;font-weight:600;white-space:nowrap}.audit-chat-pagination-actions,.table-pagination-actions{display:inline-flex;align-items:center;gap:10px;flex-shrink:0}.audit-page-btn{min-width:76px;height:34px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #d0d5dd;border-radius:8px;background:#fff;color:#344054;padding:0 14px;font-size:13px;font-weight:600;line-height:1;white-space:nowrap;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.audit-page-btn:hover:not(:disabled){border-color:#98a2b3;background:#f9fafb;color:#1d2939}.audit-page-btn:disabled{cursor:not-allowed;opacity:.45}.chat-record-empty{margin:0;padding:28px 16px;text-align:center;color:var(--text-muted);font-size:13px}.chat-placeholder.is-audit{background:radial-gradient(circle at 50% 38%,rgba(14,116,144,.06),transparent 52%),linear-gradient(180deg,#f8fafc,#fff)}.chat-placeholder.is-audit strong{color:#0f4c5c}.chat-workspace.readonly{box-shadow:0 16px 42px var(--brand-ring)}.chat-workspace.readonly .session-filter button.active{background:var(--brand)}.chat-workspace.readonly .session-item.active{background:#07c16024}.chat-workspace.readonly .message-stream{background:radial-gradient(circle at top right,rgba(7,193,96,.06),transparent 42%),linear-gradient(180deg,#f8fafc,#f3f6f4)}.chat-workspace.readonly .chat-window-head{background:linear-gradient(180deg,#fff,#fbfdfc)}.chat-workspace.readonly .chat-window:not(.empty){grid-template-rows:64px minmax(0,1fr) auto}.chat-workspace.readonly .chat-profile{border-left-color:#e2ebe6;background:linear-gradient(180deg,#fbfdfc,#fff)}.chat-workspace.readonly .profile-action{border:1px solid rgba(7,193,96,.28);color:var(--brand-dark);background:var(--brand-soft)}.chat-workspace.readonly .profile-action:hover{background:#dff7ea}.chat-title-line{display:inline-flex;align-items:center;flex-wrap:wrap;gap:8px}.chat-mode-badge{display:inline-flex;align-items:center;height:22px;padding:0 9px;border-radius:999px;border:1px solid rgba(7,193,96,.22);color:var(--brand-dark);background:var(--brand-soft);font-size:11px;font-weight:700;line-height:1;letter-spacing:.02em}.chat-mode-badge.audit{border-color:#0e749038;color:#0e7490;background:#ecfeff}.chat-sessions{display:grid;min-width:0;min-height:0;grid-template-rows:auto auto auto minmax(0,1fr);background:linear-gradient(180deg,#1a1f26,#151a21);color:#d7d9df;overflow:hidden;border-right:1px solid rgba(255,255,255,.04)}.session-filter{display:flex;gap:6px;margin:0 12px 8px;padding:3px;border-radius:8px;background:#24262b}.session-filter button{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:5px;height:30px;border:0;border-radius:6px;background:transparent;color:#9aa1ad;font-size:12px;font-weight:600;cursor:pointer;transition:background .15s ease,color .15s ease}.session-filter button span{min-width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;padding:0 4px;border-radius:999px;background:#ffffff14;color:#c2c7d0;font-size:10px;line-height:1}.session-filter button:hover{color:#e9ecf1}.session-filter button.active{background:#07c160;color:#fff}.session-filter button.active span{background:#ffffff38;color:#fff}.chat-panel-head{min-width:0;min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 14px;border-bottom:1px solid rgba(255,255,255,.06)}.chat-panel-head>div{min-width:0}.chat-panel-head h2{margin:0 0 4px;color:#fff;font-size:17px;font-weight:700}.chat-panel-head p,.empty-hint{margin:0;color:#8f96a3;font-size:12px;line-height:1.5}.session-list.empty .empty-hint{padding:20px 12px;color:#9aa1ad;font-size:13px;text-align:center;border-radius:10px;background:#ffffff0a}.chat-search{box-sizing:border-box;height:36px;display:flex;align-items:center;gap:7px;margin:10px 12px;padding:0 11px;border-radius:6px;color:#9aa1ad;background:#24262b}.chat-search input{width:100%;min-width:0;height:100%;border:0;outline:none;color:#e9ecf1;background:transparent}.chat-search input::placeholder{color:#747b87}.chat-icon-button,.composer-tools button{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:6px;color:#cbd0d8;background:#24262b;padding:0}.chat-icon-button:hover,.composer-tools button:hover{background:#e9e9e9;color:#22252b}.chat-icon-button.light{border:1px solid #d9dce2;color:#4a4f59;background:#f7f7f7}.session-list{min-height:0;height:100%;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding:0 12px 8px;-webkit-overflow-scrolling:touch}.session-list.empty{display:grid;align-content:start;padding-top:24px}.session-list>.empty-hint{padding:8px 0;text-align:center}.session-item{position:relative;width:100%;min-height:68px;display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:11px;border:0;border-bottom:1px solid rgba(255,255,255,.045);background:transparent;padding:11px 0;color:inherit;text-align:left}.session-badge{position:absolute;right:12px;bottom:12px;min-width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#fa5151;padding:0 5px;box-shadow:0 0 0 1px #fa51512e;color:#fff;font-size:11px;font-weight:700;line-height:18px}.session-badge.muted{min-width:10px;width:10px;height:10px;padding:0;background:#c8c9cc;box-shadow:0 0 0 1px #0000001f}.session-line-right{flex:0 0 auto;display:inline-flex;align-items:center;gap:4px}.session-flag-icon{flex:0 0 auto}.session-flag-icon.pinned{color:#f0a020}.session-flag-icon.muted{color:#8f96a3}.session-online-dot{position:absolute;right:12px;bottom:12px;width:8px;height:8px;border-radius:999px;background:#737b88}.session-online-dot.online{background:#07c160}.session-item:hover{background:#383b42}.session-item.active{background:#44474f}.session-main{min-width:0;display:grid;gap:6px}.session-name-line{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:8px}.session-name-text{min-width:0;display:flex;align-items:center;gap:5px;overflow:hidden}.session-type-tag{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;height:16px;padding:0 5px;border-radius:4px;background:#07c16029;color:#07c160;font-size:10px;font-weight:700;line-height:1}.chat-user-title .session-type-tag{background:#07c1601f;vertical-align:middle}.session-name-text strong{min-width:0}.session-member-count{color:#8f96a3}.session-main strong,.chat-user-title strong{overflow:hidden;color:inherit;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.session-main small,.chat-user-title small,.session-item time,.chat-bubble time{overflow:hidden;color:#8f96a3;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.chat-message-time{display:block;margin-top:6px;color:#9a9a9a;font-size:11px;line-height:1.2;white-space:nowrap}.chat-message-main.self .chat-message-time{text-align:right}.chat-message-main:not(.self) .chat-message-time{text-align:left}.chat-message-status{min-width:0;display:flex;align-items:center;justify-content:flex-end;margin-top:7px;color:#8a8f98}.chat-read-receipt{display:inline-flex;align-items:center;gap:3px;padding:0 1px;color:#8a8f98;font-size:11px;line-height:1;white-space:nowrap}.chat-read-receipt:before{width:11px;height:11px;display:inline-grid;place-items:center;border:1px solid currentColor;border-radius:999px;content:""}.chat-read-receipt.read{color:#18bc37}.chat-read-receipt.read:before{content:"✓";font-size:8px;line-height:1}.chat-group-read-receipt{gap:4px;border:0;background:transparent;cursor:pointer;font:inherit;font-size:11px;line-height:1;color:#18bc37}.chat-group-read-receipt:hover{color:#0f9f2e}.chat-online-label{margin-left:8px;color:#8f96a3}.chat-online-label.online{color:#07c160}.session-item .avatar,.session-item .group-avatar-widget,.chat-bubble-row .avatar{width:42px;height:42px;border-radius:4px;object-fit:cover}.session-item .group-avatar-widget{flex:0 0 auto}.chat-profile .profile-avatar-widget{margin-top:16px}.chat-member-avatar-action{cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.chat-member-avatar-action:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0f172a24}.group-members-panel-modal{width:min(440px,calc(100vw - 32px));max-height:min(78vh,680px);padding:0;overflow:hidden;border:1px solid #e8ecf2;box-shadow:0 24px 64px #0f172a29}.group-members-backdrop{z-index:104;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.group-members-panel-head{display:grid;grid-template-columns:48px minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:18px 18px 14px;border-bottom:1px solid #edf0f5;background:linear-gradient(180deg,#f8fafc,#fff)}.group-members-panel-title{min-width:0;display:grid;gap:4px}.group-members-panel-title strong{color:#1f2329;font-size:16px;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.group-members-panel-title small{color:#8a9099;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.group-members-count-pill{padding:4px 10px;border-radius:999px;background:#ecfdf5;color:#059669;font-size:12px;font-weight:600}.group-members-close{width:32px;height:32px;border:none;border-radius:8px;background:transparent;color:#8a9099;font-size:22px;line-height:1;cursor:pointer}.group-members-close:hover{background:#f3f5f8;color:#4b5563}.group-members-panel-list{display:grid;gap:8px;max-height:min(56vh,520px);overflow:auto;padding:14px 16px 18px}.group-members-row{width:100%;min-width:0;display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 12px;border:1px solid #e8ecf2;border-radius:12px;background:#fff;text-align:left;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}.group-members-row.actionable{cursor:pointer}.group-members-row.actionable:hover{border-color:#b8e8cd;background:#f6fcf9;box-shadow:0 4px 14px #07c16014}.group-members-row:disabled{cursor:default;opacity:1}.group-members-avatar{width:44px;height:44px;border-radius:10px;object-fit:cover;background:#f1f5f9}.group-members-info{min-width:0;display:grid;gap:4px}.group-members-name-line{display:flex;align-items:center;flex-wrap:wrap;gap:6px;min-width:0}.group-members-name-line strong{color:#1f2329;font-size:14px;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.group-members-info small{color:#8a9099;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.group-members-action-hint{color:#07c160;font-size:12px;font-weight:600}.member-role-tag.self{color:#0f766e;background:#ecfdf5}.member-role-tag.service{color:#0369a1;background:#e0f2fe}.profile-member-badges .member-role-tag{margin-left:0}.chat-member-detail-profile small{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}.record-delete-btn{margin-top:6px;padding:2px 10px;border:1px solid #fecaca;border-radius:6px;background:#fff5f5;color:#dc2626;font-size:12px;cursor:pointer}.record-delete-btn:hover{background:#fee2e2}.form-head-with-avatar{display:flex;align-items:center;gap:14px}.group-avatar-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(3,minmax(0,1fr));gap:2px;flex:0 0 auto;overflow:hidden;box-sizing:border-box;padding:3px;border-radius:6px;background:#e9edf2}.group-avatar-grid img{width:100%;height:100%;min-width:0;min-height:0;border-radius:2px;object-fit:cover}.group-avatar-grid.count-1{display:flex;padding:5px}.group-avatar-grid.count-2,.group-avatar-grid.count-3,.group-avatar-grid.count-4{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr))}.group-avatar-grid.count-2 img:first-child{grid-row:1 / span 2}.group-avatar-grid.count-2 img:nth-child(2){grid-row:1 / span 2}.group-avatar-grid.count-3 img:first-child{grid-column:1 / span 2;width:calc(50% - 1px);justify-self:center}.chat-window{min-width:0;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden;background:#fff}.chat-window.empty{grid-template-rows:minmax(0,1fr)}.chat-window-head{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px 14px 20px;border-bottom:1px solid #e4e8ef;background:#fff}.chat-user-title{min-width:0;display:grid;gap:5px;color:#1f2329}.chat-user-title strong{font-size:16px;line-height:24px}.chat-list-controls{min-width:0;display:flex;align-items:center;justify-content:flex-end;gap:10px}.chat-list-controls select{width:min(240px,22vw);height:34px;border:1px solid #d8dee7;border-radius:6px;background:#fff;color:#293241;padding:0 10px;font-size:13px;outline:none}.chat-search.compact{width:min(300px,26vw);height:34px;margin:0;border:1px solid #d8dee7;background:#fff;border-radius:6px}.message-stream{min-height:0;display:flex;flex-direction:column;gap:10px;overflow:auto;padding:14px 16px 24px;background:#f7f8fa;scroll-padding-bottom:48px}.message-end-anchor{flex:0 0 24px}.chat-bubble-row{max-width:100%;display:flex;align-items:flex-start;gap:10px}.chat-bubble-row.system{justify-content:center;padding:2px 0}.system-notice-message{max-width:min(520px,78%);border-radius:999px;background:#e6e8eb;color:#6b7280;padding:5px 12px;font-size:12px;line-height:1.45;text-align:center;word-break:break-word;box-shadow:none}.load-older-button{align-self:center;height:30px;border:1px solid #dedede;border-radius:4px;color:#68707d;background:#fff;padding:0 12px;font-size:12px}.load-older-button:hover{color:#07c160;border-color:#cfd6d2}.load-older-button:disabled{cursor:not-allowed;color:#a9afb8;background:#eee}.chat-record-list{display:grid;overflow:hidden;border:1px solid #dfe4ec;border-radius:8px;background:#fff;box-shadow:0 1px 2px #10182808}.chat-record-head,.chat-record-item{display:grid;grid-template-columns:190px 170px minmax(260px,1fr) 156px 72px;gap:16px;align-items:center}.chat-record-head{min-height:40px;border-bottom:1px solid #e4e8ef;background:#f8fafc;padding:0 16px;color:#667085;font-size:12px;font-weight:700}.chat-record-head span:nth-child(4),.chat-record-head span:nth-child(5){text-align:right}.chat-record-item{min-height:62px;border-bottom:1px solid #edf0f5;background:#fff;padding:10px 16px}.chat-record-item:last-child{border-bottom:0}.chat-record-item:hover{background:#f8fbff}.record-session,.record-sender{min-width:0;display:flex;align-items:center;gap:8px}.record-session{align-items:flex-start;flex-direction:column;gap:4px}.record-sender>span{min-width:0;display:flex;align-items:center;gap:8px}.record-content{min-width:0;display:block}.record-session strong,.record-sender strong{overflow:hidden;color:#1f2329;font-size:14px;font-weight:700;line-height:20px;text-overflow:ellipsis;white-space:nowrap;display:block}.record-session small,.record-sender small,.record-meta{color:#8a94a6;font-size:12px;line-height:18px}.record-session small,.record-sender small{display:inline-flex;align-items:center;height:20px;border-radius:999px;background:#edf7ee;color:#2f7d32;padding:0 7px;font-weight:700;white-space:nowrap}.record-session small{background:#f2f4f7;color:#667085}.record-session small.group{background:#fff7e8;color:#9a5b00}.record-sender small.user{background:#eef4ff;color:#48658f}.record-content p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;overflow:hidden;color:#1f2329;font-size:13px;line-height:20px;white-space:normal}.record-meta{display:block;text-align:right}.record-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.record-action-button{height:30px;display:inline-flex;align-items:center;gap:6px;border:0;border-radius:6px;color:#495568;background:transparent;padding:0 6px;font-size:12px;font-weight:700}.record-action-button:hover:not(:disabled){background:#fff5f4}.record-action-button.danger{color:#b42318}.record-action-button.danger:hover:not(:disabled){background:#fff5f4}.record-action-button:disabled{cursor:not-allowed;opacity:.55}.chat-bubble-row.self{justify-content:flex-end;padding-right:2px}.self-avatar{width:42px;height:42px;display:inline-flex;flex:0 0 42px;align-items:center;justify-content:center;border-radius:4px;object-fit:cover;color:#fff;background:#2f7d32;font-weight:700}.chat-message-main{max-width:min(560px,calc(100% - 62px));display:flex;flex:0 1 auto;flex-direction:column;align-items:flex-start}.chat-message-main.self{align-items:flex-end}.chat-bubble{position:relative;max-width:100%;flex:0 1 auto;border:1px solid #dedede;border-radius:4px;background:#fff;padding:9px 12px 7px;box-shadow:0 1px 1px #1418200a}.chat-bubble:before{position:absolute;top:13px;left:-6px;width:10px;height:10px;border-left:1px solid #dedede;border-bottom:1px solid #dedede;background:inherit;content:"";transform:rotate(45deg)}.chat-bubble-row.self .chat-bubble{border-color:#9bd581;background:#95ec69}.chat-bubble.call-bubble{min-width:220px;border-color:#e3e7ee;background:#fff;border-radius:8px;padding:10px 12px 8px}.chat-bubble-row.self .chat-bubble.call-bubble{border-color:#d8efe0;background:#f5fbf7}.chat-bubble-row.self .chat-bubble:before{right:-6px;left:auto;border:0;border-top:1px solid #9bd581;border-right:1px solid #9bd581}.chat-bubble-row.self .chat-bubble.call-bubble:before{border-top-color:#d8efe0;border-right-color:#d8efe0}.chat-bubble p{margin:0 0 5px;color:#111;font-size:14px;line-height:1.6;white-space:pre-wrap;word-break:break-word}.admin-voice-message,.admin-call-message,.admin-file-message,.admin-location-message,.admin-contact-message{min-width:168px;display:flex;align-items:center;gap:8px;border:0;color:#111;background:transparent;padding:0;text-align:left}.admin-voice-message audio{width:180px;height:32px}.admin-voice-message span,.admin-call-message span,.admin-file-message span,.admin-location-message span,.admin-contact-message span{font-size:13px;white-space:nowrap}.admin-call-message{min-height:30px;gap:10px}.admin-call-message svg{width:24px;height:24px;color:#07c160;background:#e8f8ee;border-radius:999px;padding:4px;box-sizing:border-box}.admin-call-message span{color:#1f2937;font-weight:700}.admin-call-message:disabled{cursor:default;opacity:.85}.admin-call-message:disabled svg{color:#8a94a6;background:#edf1f5}.admin-chat-image,.admin-chat-video{width:min(260px,100%);max-height:320px;display:block;border-radius:4px;object-fit:contain}.admin-chat-image,.admin-emoji-image{cursor:zoom-in}.admin-quote-block{max-width:280px;display:grid;gap:2px;margin-bottom:8px;border-left:3px solid #c7cdd6;border-radius:3px;background:#0000000b;padding:7px 9px;color:#6a7280}.chat-bubble-row.self .admin-quote-block{background:#ffffff5c}.admin-quote-block strong{color:#4b5563;font-size:12px;font-weight:700}.admin-quote-block span{overflow:hidden;color:#6b7280;font-size:12px;line-height:1.45;text-overflow:ellipsis;white-space:nowrap}.admin-file-message,.admin-location-message,.admin-contact-message{min-height:34px;max-width:280px}.admin-file-message small{color:#778294;font-size:12px}.admin-contact-card{width:min(300px,100%);min-height:56px;padding:10px 12px;border-radius:14px;border:1px solid rgba(15,23,42,.1);background:#ffffffc7;box-shadow:0 10px 22px #0f172a14;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease}.chat-bubble-row.self .admin-contact-card{border-color:#07c1604d;background:#ffffffb8}.admin-contact-card:hover{transform:translateY(-1px);border-color:#0f172a2e;box-shadow:0 14px 30px #0f172a1a}.admin-contact-card:active{transform:translateY(0)}.admin-contact-card-icon{width:34px;height:34px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;color:#0f9f2e;background:#18bc371f;flex:0 0 auto}.admin-contact-card-meta{min-width:0;display:grid;gap:2px;flex:1 1 auto}.admin-contact-card-meta strong{font-size:14px;line-height:1.25;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-contact-card-meta small{font-size:12px;line-height:1.25;color:#667085;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-contact-card-avatar{width:34px;height:34px;border-radius:10px;object-fit:cover;flex:0 0 auto;border:1px solid rgba(15,23,42,.08)}.contact-card-backdrop{z-index:96;background:#000000b8}.contact-card-modal{width:min(560px,calc(100vw - 28px));max-height:min(86vh,680px);overflow:hidden;border:0;border-radius:26px;padding:0;background:#fff;box-shadow:0 26px 80px #0000003d}.contact-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 20px 14px;border-bottom:1px solid rgba(15,23,42,.08);background:linear-gradient(180deg,#fff,#f7faf8)}.contact-card-head-main{min-width:0;display:flex;align-items:center;gap:12px}.contact-card-icon{width:40px;height:40px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;color:#0f9f2e;background:#18bc3724}.contact-card-head strong{display:block;font-size:16px;line-height:1.15;color:#101828}.contact-card-head p{margin:4px 0 0;font-size:13px;line-height:1.25;color:#667085;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:360px}.contact-card-close{width:38px;height:38px;border-radius:12px;border:1px solid rgba(15,23,42,.1);background:#ffffffeb;color:#475467;font-size:22px;line-height:1;cursor:pointer}.contact-card-close:hover{background:#fff;color:#101828}.contact-card-body{display:grid;gap:16px;padding:18px 20px 22px;overflow:auto;max-height:min(86vh,680px)}.contact-card-profile{display:flex;align-items:center;gap:12px;padding:12px;border-radius:18px;border:1px solid rgba(15,23,42,.08);background:linear-gradient(180deg,#f9fafbe6,#fff)}.contact-card-profile img{width:56px;height:56px;border-radius:16px;object-fit:cover;border:1px solid rgba(15,23,42,.08);flex:0 0 auto}.contact-card-profile strong{display:block;font-size:16px;line-height:1.25;color:#111827}.contact-card-profile small{display:block;margin-top:4px;font-size:13px;color:#667085}.contact-card-fields{margin:0;display:grid;gap:10px}.contact-card-field{display:grid;grid-template-columns:92px minmax(0,1fr);align-items:center;gap:10px;padding:12px 14px;border-radius:16px;border:1px solid rgba(15,23,42,.08);background:#fff}.contact-card-field dt{color:#667085;font-size:13px}.contact-card-field dd{margin:0;display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0}.contact-card-field dd span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#101828;font-size:14px;font-weight:650}.contact-card-copy{flex:0 0 auto;height:30px;padding:0 10px;border-radius:10px;border:1px solid rgba(7,193,96,.28);color:#0f9f2e;background:#07c16014;cursor:pointer}.contact-card-copy:hover{background:#07c16024}.contact-card-actions{display:flex;justify-content:flex-end}.admin-emoji-image{width:22px;height:22px;display:inline-block;vertical-align:-4px;object-fit:contain;cursor:zoom-in}.burn-message-placeholder{display:block;width:100%;margin:0;padding:0;border:0;background:transparent;color:#d93025;font:inherit;font-weight:600;text-align:left;cursor:pointer}.burn-message-placeholder:hover{text-decoration:underline}.burn-preview-backdrop{z-index:90}.burn-preview-modal{width:min(520px,calc(100vw - 32px));max-height:min(80vh,640px);display:grid;grid-template-rows:auto auto minmax(0,1fr)}.burn-preview-header{display:grid;grid-template-columns:72px 1fr 72px;align-items:center;gap:8px;padding:12px 16px;border-bottom:1px solid #e4e8ef}.burn-preview-header-simple{grid-template-columns:1fr;justify-items:center}.burn-preview-header strong{text-align:center}.burn-preview-cancel,.burn-preview-destroy{border:0;background:transparent;padding:0;color:#5f6b7a;font-size:14px}.burn-preview-destroy{justify-self:end;color:#d93025}.burn-countdown-bar{margin:0;padding:10px 16px;background:#fff4f2;color:#d93025;font-size:13px}.burn-preview-body{overflow:auto;padding:16px}.burn-preview-image,.burn-preview-video{max-width:100%}.burn-message-tag{display:inline-flex;margin:0 0 4px;color:#d93025;font-size:12px}.burn-message-tag.is-self-burn{color:#e65100}.chat-bubble-menu{position:fixed;z-index:80;min-width:132px;overflow:hidden;border:1px solid #d8d8d8;border-radius:6px;background:#fff;box-shadow:0 12px 30px #00000029}.chat-bubble-menu button{display:block;width:100%;border:0;background:transparent;padding:10px 18px;color:#111;text-align:left}.chat-bubble-menu button:hover{background:#f3f3f3}.group-read-receipt-backdrop{z-index:95;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.group-read-receipt-modal{width:min(440px,calc(100vw - 32px));overflow:hidden;border-radius:14px;padding:0}.group-read-receipt-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:18px 20px 14px;border-bottom:1px solid #eef2f6;background:linear-gradient(180deg,#f4fbf7,#fff)}.group-read-receipt-head-main{display:flex;align-items:center;gap:12px;min-width:0}.group-read-receipt-icon{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px;background:#e8f8ef;color:#047857;flex:0 0 auto}.group-read-receipt-head strong{display:block;color:#0f172a;font-size:17px;line-height:1.3}.group-read-receipt-head p{margin:4px 0 0;color:#64748b;font-size:13px;line-height:1.4}.group-read-receipt-close{width:32px;height:32px;border:0;border-radius:8px;background:transparent;color:#94a3b8;font-size:22px;line-height:1;cursor:pointer;transition:background .15s ease,color .15s ease}.group-read-receipt-close:hover{background:#f1f5f9;color:#475569}.group-read-receipt-body{padding:16px 20px 20px}.receipt-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:14px}.receipt-stat{border-radius:12px;padding:12px 14px;border:1px solid transparent}.receipt-stat.read{background:#effdf5;border-color:#bbf7d0}.receipt-stat.unread{background:#fff7ed;border-color:#fed7aa}.receipt-stat strong{display:block;font-size:22px;line-height:1.1;color:#0f172a}.receipt-stat.read strong{color:#047857}.receipt-stat.unread strong{color:#c2410c}.receipt-stat span{display:block;margin-top:4px;font-size:12px;color:#64748b}.receipt-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:4px;border-radius:12px;background:#f1f5f9}.receipt-tabs button{height:38px;border:0;border-radius:10px;background:transparent;color:#64748b;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s ease,color .15s ease,box-shadow .15s ease}.receipt-tabs button.active{background:#fff;color:#047857;box-shadow:0 2px 8px #0f172a0f}.receipt-tabs button.active:last-child{color:#047857}.receipt-member-list{max-height:min(360px,52vh);margin-top:14px;overflow-y:auto;border:1px solid #eef2f6;border-radius:12px;background:#fafbfc}.receipt-member-row{display:flex;align-items:center;gap:12px;min-height:58px;padding:10px 12px;border-bottom:1px solid #eef2f6}.receipt-member-row:last-child{border-bottom:0}.receipt-member-row:hover{background:#f8fafc}.receipt-member-row img{width:40px;height:40px;border-radius:50%;object-fit:cover;background:#e2e8f0;flex:0 0 auto}.receipt-member-meta{min-width:0;flex:1}.receipt-member-meta strong{display:block;overflow:hidden;color:#0f172a;font-size:14px;font-weight:600;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.receipt-member-meta small{display:block;margin-top:2px;color:#94a3b8;font-size:12px;line-height:1.3}.receipt-member-status{flex:0 0 auto;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:600}.receipt-member-status.read{color:#047857;background:#dcfce7}.receipt-member-status.unread{color:#c2410c;background:#ffedd5}.receipt-empty{display:grid;justify-items:center;gap:10px;margin-top:14px;padding:36px 16px;border:1px dashed #e2e8f0;border-radius:12px;background:#f8fafc;color:#94a3b8}.receipt-empty p{margin:0;font-size:14px;color:#64748b}.chat-composer{position:relative;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:34px auto minmax(0,1fr) 34px;gap:6px 12px;min-height:178px;padding:8px 16px 10px;border-top:1px solid #dedede;background:#fff}.chat-readonly-panel{padding:0 16px 14px;border-top:0;background:transparent}.readonly-strip{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;border:1px solid rgba(7,193,96,.14);border-radius:12px;background:linear-gradient(135deg,#f8fdf9,#f4f7f5);box-shadow:0 6px 18px var(--brand-ring)}.readonly-strip-brand{min-width:0;display:flex;align-items:flex-start;gap:12px}.readonly-mode-icon{flex:none;width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;border:1px solid rgba(7,193,96,.22);color:var(--brand-dark);background:var(--brand-soft)}.readonly-mode-icon.audit{border-color:#0e749038;color:#0e7490;background:#ecfeff}.readonly-strip-copy{min-width:0}.readonly-strip-copy strong{display:block;margin-bottom:3px;color:#1f2329;font-size:14px;line-height:20px}.readonly-strip-copy p{margin:0;color:#667085;font-size:12px;line-height:18px}.readonly-chip-row{flex:none;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.readonly-chip{display:inline-flex;align-items:center;gap:5px;height:30px;padding:0 11px;border-radius:999px;font-size:12px;font-weight:600;line-height:1;white-space:nowrap}.readonly-chip.enabled{border:1px solid #cde8d8;color:#1f7a4d;background:#edf9f1}.readonly-chip.disabled{border:1px solid #e4e7ec;color:#98a2b3;background:#f8f9fb}.composer-tools{position:relative;grid-column:1 / -1;display:flex;align-items:center;gap:4px}.composer-tools button{width:34px;height:34px;color:#6a6f79;background:transparent}.composer-tools button.active{color:#d93025;background:#fff1f0}.composer-tools button:disabled{cursor:not-allowed;opacity:.45}.composer-call-menu-wrap{position:relative;display:inline-flex}.composer-tools button.call-menu-trigger{color:#1f2933;background:transparent}.composer-tools button.call-menu-trigger:hover{color:#111827;background:#f0f2f5}.composer-call-menu{position:absolute;left:50%;bottom:42px;z-index:8;width:170px;display:grid;gap:2px;padding:12px;border:1px solid #d9dce2;border-radius:8px;background:#fff;box-shadow:0 12px 34px #0f172a2e;transform:translate(-50%)}.composer-call-menu:after{position:absolute;left:50%;bottom:-7px;width:12px;height:12px;border-right:1px solid #d9dce2;border-bottom:1px solid #d9dce2;background:#fff;content:"";transform:translate(-50%) rotate(45deg)}.composer-tools .composer-call-menu button{width:100%;height:42px;justify-content:flex-start;gap:12px;border-radius:6px;color:#111827;background:#fff;padding:0 10px;font-size:16px;font-weight:700}.composer-tools .composer-call-menu button:hover{background:#f3f5f8}.composer-call-menu button svg{flex:none;color:#111827}.composer-file-input{display:none}.emoji-panel{position:absolute;bottom:40px;left:0;z-index:5;width:286px;max-height:220px;display:grid;grid-template-columns:repeat(6,1fr);gap:4px;overflow:auto;border:1px solid #dedede;border-radius:6px;background:#fff;padding:8px;box-shadow:0 12px 28px #11182724}.emoji-panel button{width:42px;height:38px;display:inline-grid;place-items:center;border:0;border-radius:4px;color:#1f2329;font-size:16px;background:#fff}.emoji-panel img,.inline-emoji{width:22px;height:22px;vertical-align:-4px}.emoji-panel button:hover{background:#f0f1f3}.composer-quote-preview,.composer-at-preview{grid-column:1 / -1;min-width:0;display:flex;align-items:center;justify-content:space-between;gap:10px;border-left:3px solid #07c160;border-radius:4px;background:#f5f7fa;padding:8px 10px}.composer-at-preview{border-left-color:#576b95;background:#f2f5fb}.composer-quote-preview span,.composer-at-preview span{min-width:0;display:grid;gap:2px}.composer-quote-preview strong,.composer-at-preview strong{color:#1f2937;font-size:12px}.composer-quote-preview small,.composer-at-preview small{overflow:hidden;color:#6b7280;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.composer-quote-preview button,.composer-at-preview button,.forward-message-modal header button,.group-mention-modal header button,.image-preview-backdrop button{width:28px;height:28px;border:0;border-radius:50%;color:#6b7280;background:transparent;font-size:20px;line-height:1}.composer-quote-preview button:hover,.composer-at-preview button:hover,.forward-message-modal header button:hover,.group-mention-modal header button:hover{color:#111827;background:#e5e7eb}.chat-composer textarea,.chat-composer .composer-editor{min-width:0;width:100%;height:100%;resize:none;border:0;outline:none;color:#1d2129;background:transparent;font:inherit;line-height:1.5;overflow-y:auto;white-space:pre-wrap;word-break:break-word}.chat-composer .composer-editor:empty:before{content:attr(data-placeholder);color:#a7adb7;pointer-events:none}.chat-composer .composer-editor .composer-emoji{width:22px;height:22px;vertical-align:-4px}.composer-actions{display:flex;justify-content:flex-end;align-items:center}.composer-actions button[type=submit]{height:34px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid #d7d7d7;border-radius:4px;color:#07c160;background:#fff;padding:0 13px;font-weight:700}.composer-actions button[type=submit]:disabled{color:#a9afb8;background:#eee}.chat-forward-backdrop{z-index:100}.modal-card{border:1px solid #e5e7eb;border-radius:8px;background:#fff;box-shadow:0 24px 72px #0f172a38}.forward-message-modal{width:min(420px,100%);display:grid;gap:12px;padding:18px}.forward-message-modal header{display:flex;align-items:center;justify-content:space-between;gap:12px}.forward-message-modal header strong{color:#111827;font-size:16px}.group-mention-modal{width:min(440px,calc(100vw - 32px))}.group-read-receipt-icon.mention{font-size:20px;font-weight:800}.mention-search-input{width:100%;margin-bottom:10px}.forward-search-input{height:38px;border:1px solid #d9dee8;border-radius:6px;outline:none;padding:0 12px;color:#111827;background:#f9fafb}.forward-message-preview{margin:0;overflow:hidden;border-radius:6px;color:#6b7280;background:#f4f6f8;padding:9px 10px;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.mention-quick-list{display:flex;gap:8px;margin-bottom:10px}.mention-quick-list button{border:1px solid #d8dde8;border-radius:999px;color:#576b95;background:#f6f8fb;padding:7px 12px;font-weight:700}.mention-quick-list button:hover{background:#eef3ff}.mention-member-list{margin-top:0}.mention-member-row{width:100%;border:0;background:transparent;text-align:left;cursor:pointer}.mention-member-row:hover{background:#f8fafc}.forward-session-list{max-height:360px;display:grid;gap:4px;overflow:auto}.forward-session-list button{min-width:0;display:flex;align-items:center;gap:10px;border:0;border-radius:6px;background:#fff;padding:9px;text-align:left}.forward-session-list button:hover{background:#f3f4f6}.forward-session-list button.selected{background:#ecfdf5;box-shadow:inset 0 0 0 1px #16a34a}.forward-session-list img{width:36px;height:36px;flex:0 0 auto;border-radius:4px;object-fit:cover}.forward-session-list .group-avatar-grid{width:36px;height:36px;flex:0 0 36px}.forward-session-list .group-avatar-grid img{width:100%;height:100%;flex:initial}.forward-session-list span{min-width:0;display:grid;gap:2px}.forward-session-list strong,.forward-session-list small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.forward-session-list strong{color:#111827;font-size:14px}.forward-session-list small{color:#7b8494;font-size:12px}.group-call-backdrop{z-index:110}.group-call-modal{width:min(460px,100%);display:grid;gap:0;padding:0;overflow:hidden;border-radius:16px}.group-call-modal-header{display:grid;grid-template-columns:72px 1fr 92px;align-items:center;gap:8px;padding:14px 16px;border-bottom:1px solid #eef1f5;background:#fff}.group-call-modal-header strong{color:#111827;font-size:16px;font-weight:700;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.group-call-header-btn{border:0;background:transparent;padding:0;font-size:14px;font-weight:600;cursor:pointer}.group-call-header-btn.cancel{justify-self:start;color:#6b7280}.group-call-header-btn.cancel:hover{color:#111827}.group-call-header-btn.confirm{justify-self:end;color:#07c160}.group-call-header-btn.confirm:disabled{color:#b8c4be;cursor:not-allowed}.group-call-type-banner{display:flex;align-items:center;gap:12px;margin:14px 16px 0;padding:12px 14px;border-radius:12px;background:linear-gradient(135deg,#f3faf6,#eef8f2);border:1px solid rgba(7,193,96,.14)}.group-call-type-banner.is-video{background:linear-gradient(135deg,#f0f7ff,#eaf3ff);border-color:#2563eb24}.group-call-type-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:12px;color:#fff;background:#07c160;flex:0 0 auto}.group-call-type-banner.is-video .group-call-type-icon{background:#2563eb}.group-call-type-copy{min-width:0;display:grid;gap:2px}.group-call-type-copy strong{color:#111827;font-size:14px;font-weight:700}.group-call-type-copy span{color:#6b7280;font-size:12px}.group-call-search-wrap{position:relative;margin:12px 16px 0}.group-call-search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#9ca3af;pointer-events:none}.group-call-search-input{width:100%;height:40px;border:1px solid #e5e7eb;border-radius:10px;outline:none;padding:0 12px 0 36px;color:#111827;background:#f9fafb;box-sizing:border-box}.group-call-search-input:focus{border-color:#07c160;background:#fff;box-shadow:0 0 0 3px #07c1601a}.group-call-selected-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:12px 16px 0;padding:10px 12px;border-radius:10px;background:#f8fafc;border:1px solid #edf0f5}.group-call-selected-avatars{display:flex;align-items:center;gap:6px;min-width:0;overflow:hidden}.group-call-selected-avatars img{width:32px;height:32px;border-radius:50%;object-fit:cover;border:2px solid #ffffff;box-shadow:0 2px 8px #0f172a14}.group-call-selected-more{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;color:#4b5563;background:#e5e7eb;font-size:11px;font-weight:700;flex:0 0 auto}.group-call-selected-count{color:#07c160;font-size:12px;font-weight:700;white-space:nowrap}.group-call-member-list{max-height:360px;margin:12px 8px 14px;overflow:auto;display:grid;gap:2px}.group-call-member-row{width:100%;min-width:0;display:grid;grid-template-columns:44px 1fr 24px;align-items:center;gap:12px;border:0;border-radius:12px;background:#fff;padding:10px 12px;text-align:left;cursor:pointer;transition:background .15s ease}.group-call-member-row:hover{background:#f8fafc}.group-call-member-row.selected{background:#f0fdf4}.group-call-member-avatar{width:44px;height:44px;border-radius:50%;object-fit:cover;background:#eef2f7}.group-call-member-info{min-width:0;display:grid;gap:2px}.group-call-member-info strong,.group-call-member-info small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.group-call-member-info strong{color:#111827;font-size:14px;font-weight:600}.group-call-member-info small{color:#9ca3af;font-size:12px}.group-call-check{width:22px;height:22px;border-radius:50%;border:2px solid #d1d5db;background:#fff;display:grid;place-items:center;transition:all .15s ease}.group-call-check.checked{border-color:#07c160;background:#07c160;box-shadow:inset 0 0 0 2px #fff}.group-call-check.checked:after{content:"";width:6px;height:10px;border-right:2px solid #ffffff;border-bottom:2px solid #ffffff;transform:rotate(45deg) translate(-1px,-1px)}.image-preview-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:130;display:grid;place-items:center;padding:42px;background:#000000e0}.image-preview-backdrop img{max-width:min(92vw,1120px);max-height:88vh;border-radius:4px;object-fit:contain;box-shadow:0 20px 80px #00000073}.image-preview-backdrop button{position:fixed;top:22px;right:24px;color:#fff;background:#ffffff24}.image-preview-backdrop button:hover{background:#ffffff3d}.chat-placeholder{height:100%;min-height:420px;display:grid;align-content:center;justify-items:center;gap:12px;color:var(--text-muted);text-align:center;padding:32px 24px;background:radial-gradient(circle at 50% 38%,rgba(7,193,96,.05),transparent 52%),linear-gradient(180deg,#fafbfc,#fff)}.chat-placeholder-icon{width:80px;height:80px;display:grid;place-items:center;margin-bottom:4px;border-radius:22px;color:#94a3b8;background:#f1f5f9;box-shadow:inset 0 0 0 1px #e2e8f0}.chat-placeholder.is-readonly .chat-placeholder-icon{color:var(--brand-dark);background:linear-gradient(145deg,var(--brand-soft) 0%,#f7fdf9 100%);box-shadow:inset 0 0 0 1px #07c1602e}.chat-placeholder.is-readonly .chat-placeholder-icon.audit{color:#0e7490;background:linear-gradient(145deg,#ecfeff,#f8fffe);box-shadow:inset 0 0 0 1px #0e74902e}.chat-placeholder svg{color:inherit}.chat-placeholder strong{color:var(--text);font-size:17px;font-weight:700;letter-spacing:-.01em}.chat-placeholder.is-readonly strong{color:var(--text)}.chat-placeholder p{max-width:380px;margin:0;font-size:13px;line-height:1.65;color:var(--text-muted)}.chat-profile{position:relative;min-width:0;display:grid;align-content:start;justify-items:center;gap:10px;padding:28px 18px;border-left:1px solid #dedede;background:#fff}.profile-more{position:absolute;top:14px;right:14px}.profile-more-menu{position:absolute;top:52px;right:14px;z-index:5;width:138px;display:grid;padding:6px;border:1px solid #d8dee7;border-radius:6px;background:#fff;box-shadow:0 12px 28px #0f172a24}.profile-more-menu button{height:32px;border:0;border-radius:4px;color:#293241;background:transparent;font-size:12px;text-align:left;padding:0 9px}.profile-more-menu button:hover{background:#f3f5f8}.profile-avatar{width:76px;height:76px;margin-top:16px;border-radius:6px;object-fit:cover}.chat-profile>strong{max-width:100%;overflow:hidden;color:#1f2329;font-size:17px;text-overflow:ellipsis;white-space:nowrap}.profile-status{display:inline-flex;align-items:center;gap:6px;color:#07c160;font-size:12px}.profile-status.offline{color:#8a9099}.chat-profile dl{width:100%;display:grid;gap:12px;margin:18px 0 6px}.chat-profile dl div{min-width:0;display:grid;gap:4px;padding-bottom:11px;border-bottom:1px solid #f0f1f3}.chat-profile dt{color:#8a9099;font-size:12px}.chat-profile dd{min-width:0;margin:0;overflow:hidden;color:#2a2f38;font-size:13px;line-height:1.45;text-overflow:ellipsis;white-space:nowrap}.profile-group-members{width:100%;min-width:0;display:grid;gap:10px;margin-bottom:4px;padding-top:4px}.profile-group-members header{display:flex;align-items:center;justify-content:space-between;gap:10px}.profile-group-members header strong{color:#2a2f38;font-size:13px}.profile-group-members header span{color:#8a9099;font-size:12px}.profile-member-list{max-height:218px;display:grid;gap:8px;overflow-y:auto;padding-right:2px}.profile-member-item{width:100%;min-width:0;display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:9px;padding:8px;border:1px solid #edf0f5;border-radius:6px;background:#fafbfc;text-align:left}.profile-member-item:disabled{cursor:default;opacity:1}.profile-member-item.actionable{cursor:pointer}.profile-member-item.actionable:hover{border-color:#b8e8cd;background:#f3fbf6}.profile-member-item img{width:32px;height:32px;border-radius:6px;object-fit:cover}.profile-member-item span{min-width:0;display:grid;gap:2px}.profile-member-item strong,.profile-member-item small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-member-item strong{color:#273142;font-size:13px}.profile-member-item small{color:#8a9099;font-size:11px}.profile-member-item em:not(.member-role-tag){display:inline-flex;align-items:center;height:20px;padding:0 7px;border-radius:999px;color:#0d8f4f;background:#e8f8ef;font-size:11px;font-style:normal;font-weight:700}.profile-member-badges{display:flex;align-items:center;gap:4px}.profile-member-item em.self{color:#2563eb;background:#eaf2ff}.chat-member-detail-backdrop{z-index:105;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.chat-member-detail-modal{width:min(400px,100%);display:grid;gap:0;overflow:hidden;border-color:#dfe4eb;background:#fff;padding:0}.chat-member-detail-modal header,.chat-member-detail-profile{display:flex;align-items:center}.chat-member-detail-modal header{justify-content:space-between;padding:17px 20px 14px;border-bottom:1px solid #edf0f5}.chat-member-detail-modal header>span{display:grid;gap:2px}.chat-member-detail-modal header strong{color:#202938;font-size:16px}.chat-member-detail-modal header small{color:#9aa1ab;font-size:11px}.chat-member-detail-close{width:30px;height:30px;display:inline-grid;place-items:center;border:0;border-radius:6px;color:#737b87;background:#f4f6f8;font-size:20px;line-height:1}.chat-member-detail-close:hover{color:#202938;background:#e9edf2}.chat-member-detail-profile{gap:13px;padding:20px;background:#fafbfc}.chat-member-detail-profile img{width:58px;height:58px;flex:none;border:1px solid #e6eaf0;border-radius:8px;background:#fff;object-fit:cover}.chat-member-detail-profile span{min-width:0;display:grid;gap:4px}.chat-member-detail-profile strong{color:#202938;font-size:18px;line-height:1.25}.chat-member-detail-profile small{width:fit-content;display:inline-flex;align-items:center;gap:4px;border-radius:999px;color:#0d8f4f;background:#e8f8ef;padding:3px 8px;font-size:11px;font-weight:700}.chat-member-detail-fields{display:grid;gap:0;margin:0 20px}.chat-member-detail-fields div{display:grid;grid-template-columns:68px minmax(0,1fr);align-items:start;gap:16px;padding:12px 0;border-bottom:1px solid #edf0f5}.chat-member-detail-fields dt,.chat-member-detail-fields dd{margin:0}.chat-member-detail-fields dt{color:#8a9099;font-size:12px}.chat-member-detail-fields dd{overflow-wrap:anywhere;color:#273142;font-size:13px;line-height:1.45}.chat-member-private-action{height:40px;display:inline-flex;align-items:center;justify-content:center;gap:7px;margin:18px 20px 20px;border:0;border-radius:6px;color:#fff;background:#07a957;font-weight:700}.chat-member-private-action:hover{background:#07994f}.profile-action{width:100%;height:38px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:0;border-radius:4px;color:#fff;background:#07c160;font-weight:700}.profile-session-actions{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:8px}.profile-toggle{height:36px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid #e0e4ea;border-radius:6px;color:#4a4f59;background:#f7f8fa;font-size:12px;font-weight:600;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.profile-toggle:hover:not(:disabled){border-color:#07c160;color:#07c160}.profile-toggle.burn-toggle.active{color:#d93025;border-color:#f3c4bf;background:#fff4f2}.composer-burn-hint{margin:0 12px 8px;padding:8px 12px;border-radius:6px;background:#fff4f2;color:#d93025;font-size:13px}.profile-toggle.active{border-color:#07c160;color:#07c160;background:#07c1601a}.profile-toggle:disabled{opacity:.6;cursor:not-allowed}.row-action{height:30px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid #d8dee7;border-radius:8px;color:#1d2430;background:#fff;padding:0 10px;white-space:nowrap}.row-action:hover{border-color:var(--brand);background:var(--brand-soft)}.row-action-primary{border-color:#b9ead4;color:#0c7d4c;background:#edfbf4}.row-action-primary:hover{border-color:#10b26c;background:#def7ec}.row-actions-inline{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.apply-status-pill{display:inline-flex;align-items:center;min-height:24px;padding:0 9px;border:1px solid #d8dee7;border-radius:999px;font-size:12px;color:#334155;background:#f8fafc}.apply-status-pill.status-pending{border-color:#fdba74;color:#9a3412;background:#fff7ed}.apply-status-pill.status-processing{border-color:#93c5fd;color:#1d4ed8;background:#eff6ff}.apply-status-pill.status-resolved{border-color:#86efac;color:#15803d;background:#f0fdf4}.apply-status-pill.status-closed{border-color:#cbd5e1;color:#475569;background:#f8fafc}.ownership-cell{display:inline-flex;align-items:center;max-width:150px;overflow:hidden;border-radius:4px;color:#31566f;background:#edf6fa;padding:3px 7px;font-size:12px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.ownership-cell.operator{color:#0d7c48;background:#eaf8f0}.ownership-cell.muted{color:#7d8590;background:#f1f3f5}.muted-text{color:#98a2b3}.error-line{margin-bottom:16px;border:1px solid #f1c4c4;border-radius:8px;color:#8f1f1f;background:#fff5f5;padding:12px}.empty-permission-panel{display:flex;align-items:center;gap:12px;border:1px solid #e1e6ee;border-radius:8px;background:#fff;padding:16px;color:#536071}.empty-permission-panel svg{color:#c89943;flex:none}.empty-permission-panel strong{display:block;margin-bottom:4px;color:#293241;font-size:14px}.empty-permission-panel p{color:#667085;font-size:13px}.success-line{margin-bottom:16px;border:1px solid #b9dfc2;border-radius:8px;color:#1f7a3a;background:#f0fff4;padding:12px}.app-toast{position:fixed;left:50%;top:72px;z-index:9999;transform:translate(-50%) translateY(-8px);max-width:min(320px,calc(100vw - 32px));padding:10px 16px;border-radius:8px;background:#0f172ae0;color:#fff;font-size:14px;font-weight:600;text-align:center;opacity:0;pointer-events:none;transition:opacity .15s ease,transform .15s ease}.app-toast.show{opacity:1;transform:translate(-50%) translateY(0)}.dashboard{display:grid;gap:20px}.dashboard-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:22px 24px;border:1px solid #dbeafe;border-radius:14px;background:linear-gradient(135deg,#f8fbff,#fff 58%,#fffdf8)}.dashboard-hero-copy{min-width:0}.dashboard-eyebrow{margin:0 0 8px;color:#2f6f7e;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.dashboard-title{margin:0 0 8px;color:#171a1f;font-size:28px;line-height:1.25}.dashboard-subtitle{margin:0;max-width:640px;color:#667085;font-size:14px;line-height:1.6}.dashboard-refresh{flex:0 0 auto}.dashboard-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px}.dashboard-meta{margin:10px 0 0;color:#94a3b8;font-size:12px}.dashboard-section{display:grid;gap:14px}.dashboard-section-head h2,.board-main .dashboard-section-head h2,.board-side .dashboard-section-head h2{margin:0;font-size:17px;color:#171a1f}.dashboard-section-head p{margin:4px 0 0;color:#94a3b8;font-size:13px}.quick-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.quick-action-card{min-height:118px;display:grid;gap:8px;align-content:start;border:1px solid #e5eaf0;border-radius:12px;background:#fff;padding:16px 18px;text-align:left;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.quick-action-top{display:flex;align-items:center;gap:10px}.quick-action-icon{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:10px;background:#eef4f7;color:#2f6f7e}.quick-action-card span{color:#667085;font-size:13px;font-weight:600}.quick-action-card strong{font-size:24px;color:#171a1f;line-height:1.1}.quick-action-card small{color:#94a3b8;font-size:12px;line-height:1.5}.quick-action-card:hover{transform:translateY(-1px);box-shadow:0 10px 24px #171a1f0f}.quick-action-primary:hover{border-color:#93c5fd}.quick-action-primary .quick-action-icon{background:#eff6ff;color:#2563eb}.quick-action-warning:hover{border-color:#fdba74}.quick-action-warning .quick-action-icon{background:#fff7ed;color:#ea580c}.quick-action-danger:hover{border-color:#fca5a5}.quick-action-danger .quick-action-icon{background:#fef2f2;color:#dc2626}.metric-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.metric,.risk-card,.table-panel,.board-main,.board-side{border:1px solid #e5eaf0;border-radius:12px;background:#fff}.metric{min-height:124px;display:grid;align-content:space-between;gap:10px;padding:18px;box-shadow:0 1px 2px #1018280a}.metric-icon-wrap{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px;background:#f5f7f9;color:#2f6f7e}.metric-label{color:#667085;font-size:13px}.metric-value{font-size:30px;line-height:1;color:#171a1f}.metric-tone-blue .metric-icon-wrap{background:#eff6ff;color:#2563eb}.metric-tone-green .metric-icon-wrap{background:#ecfdf5;color:#059669}.metric-tone-teal .metric-icon-wrap{background:#ecfeff;color:#0891b2}.metric-tone-amber .metric-icon-wrap{background:#fffbeb;color:#d97706}.metric-tone-slate .metric-icon-wrap{background:#f8fafc;color:#475569}.metric-tone-rose .metric-icon-wrap{background:#fff1f2;color:#e11d48}.muted-inline{color:#94a3b8;font-size:12px}.ops-board{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(320px,.8fr);gap:16px}.board-main,.board-side{padding:20px}.board-main h2,.board-side h2,.table-head h2{font-size:17px}.radar-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:16px}.radar-list div,.radar-item{min-height:92px;border-radius:12px;background:#f8fafc;padding:16px}.radar-item{display:grid;gap:6px;border:1px solid #e5eaf0;text-align:left;transition:border-color .18s ease,background .18s ease}.radar-item span{color:#667085;font-size:13px}.radar-item strong{font-size:26px;color:#171a1f}.radar-item:not(:disabled){cursor:pointer}.radar-item:not(:disabled):hover{border-color:#cbd5e1;background:#fff}.radar-item.has-alert{background:#fff7ed;border-color:#fdba74}.radar-item small{color:#b45309;font-size:11px}.radar-item small.radar-static{color:#94a3b8}.radar-item:disabled{cursor:default;opacity:.92}.priority-list{display:grid;gap:10px;margin:16px 0 0;padding:0;list-style:none}.priority-item{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border:1px solid #eef2f6;border-radius:12px;background:#f8fafc}.priority-item.is-actionable{background:#fff}.priority-index{flex:0 0 auto;width:24px;height:24px;border-radius:999px;background:#eef4f7;color:#2f6f7e;font-size:12px;font-weight:700;line-height:24px;text-align:center}.priority-body{display:grid;gap:8px;min-width:0;color:#5f6b7a;font-size:13px;line-height:1.55}.priority-link{justify-self:start;border:0;background:transparent;color:#2f6f7e;font-size:12px;font-weight:700;white-space:nowrap;padding:0}.nav-badge{min-width:18px;height:18px;margin-left:auto;padding:0 5px;border-radius:999px;background:#ef4444;color:#fff;font-size:11px;font-weight:700;line-height:18px;text-align:center}.subtab-dot{width:7px;height:7px;border-radius:50%;background:#ef4444}.filter-tabs{display:flex;flex-wrap:wrap;gap:8px}.filter-tabs button{display:inline-flex;align-items:center;gap:6px;min-height:34px;border:1px solid #d8dee7;border-radius:999px;background:#fff;color:#495568;padding:0 12px;font-size:12px;font-weight:700}.filter-tabs button.active{border-color:var(--brand);background:var(--brand-soft);color:#065f46}.filter-tabs button.active .filter-count{background:#07c1602e;color:#047857}.filter-count{min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#eef1f4;color:#667085;font-size:11px;line-height:18px;text-align:center}.feedback-status-select.status-pending{border-color:#fdba74;background:#fff7ed}.feedback-status-select.status-processing{border-color:#93c5fd;background:#eff6ff}.feedback-status-select.status-resolved{border-color:#86efac;background:#f0fdf4}.feedback-status-select.status-closed{border-color:#cbd5e1;background:#f8fafc}.radar-list span{display:block;color:#657184;font-size:13px}.radar-list strong{display:block;margin-top:8px;font-size:24px}.board-side ul{margin:14px 0 0;padding-left:18px;color:#4d5968;line-height:1.8}.table-panel{overflow:hidden}.table-head{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;border-bottom:1px solid #e5e9ef}.table-head p{margin-top:6px;color:#667085;font-size:13px}.search-box{width:min(360px,42vw);height:38px;display:flex;align-items:center;gap:8px;border:1px solid #d8dee7;border-radius:8px;background:#fff;padding:0 12px}.search-box svg{color:#697586;flex:none}.search-box input{width:100%;min-width:0;border:0;outline:0}.table-wrap{overflow-x:auto;border-radius:0 0 var(--radius-sm) var(--radius-sm)}.table-wrap-sticky{max-height:min(72vh,920px);overflow:auto}.table-wrap-sticky thead th{position:sticky;top:0;z-index:2;box-shadow:0 1px #edf0f4}.table-wrap-sticky th.sticky-right,.table-wrap-sticky td.sticky-right{position:sticky;right:0;z-index:1;background:#fff;box-shadow:-6px 0 10px -8px #0f172a2e}.table-wrap-sticky thead th.sticky-right{z-index:3;background:#fff}.table-wrap-sticky th.sticky-left,.table-wrap-sticky td.sticky-left{position:sticky;left:0;z-index:1;background:#fff;box-shadow:6px 0 10px -8px #0f172a2e}.table-wrap-sticky thead th.sticky-left{z-index:3;background:#fff}.table-wrap-sticky tbody tr:hover td.sticky-right,.table-wrap-sticky tbody tr:hover td.sticky-left{background:#f8fafc}.table-wrap-sticky tbody tr:nth-child(2n) td.sticky-right,.table-wrap-sticky tbody tr:nth-child(2n) td.sticky-left{background:#fbfcfd}.table-wrap-sticky tbody tr:nth-child(2n):hover td.sticky-right,.table-wrap-sticky tbody tr:nth-child(2n):hover td.sticky-left{background:#f1f5f9}table tbody tr{transition:background .12s ease}table tbody tr:hover td{background:#f8fafc}table tbody tr:nth-child(2n) td{background:#f8fafc8c}table tbody tr:nth-child(2n):hover td{background:#f1f5f9}table{width:100%;min-width:880px;border-collapse:collapse}th,td{border-bottom:1px solid #edf0f4;padding:12px 14px;text-align:left;vertical-align:middle;font-size:13px}th{color:#566174;background:#f7f8fa;font-weight:700;white-space:nowrap}td{max-width:360px;color:#293241;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.muted-cell{text-align:center;color:#778294}.avatar{width:32px;height:32px;border-radius:8px;object-fit:cover;background:#eef1f5}.risk-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.risk-grid .table-panel{grid-column:1 / -1}.system-grid,.settings-page{display:grid;gap:16px}.settings-form{padding:0;overflow:hidden}.settings-form .form-head{padding:18px;border-bottom:1px solid #e5e9ef}.settings-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-bottom:1px solid #e4e8ef;background:#f7f8fa}.settings-tabs button{height:42px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-right:1px solid #e4e8ef;color:#667085;background:transparent;font-size:13px;font-weight:700}.settings-tabs svg{width:14px;height:14px;flex:none}.settings-tabs button:last-child{border-right:0}.settings-tabs button.active{color:#171a1f;background:#fff;box-shadow:inset 0 -2px 0 var(--brand)}.sub-tabs{display:flex;align-items:center;gap:6px;padding:8px 10px;border:1px solid #e4e8ef;border-radius:8px;background:#f7f8fa}.sub-tabs button{min-height:34px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid transparent;border-radius:7px;color:#667085;background:transparent;padding:0 13px;font-size:13px;font-weight:700}.sub-tabs button.active{color:#171a1f;border-color:#e2c17d;background:#fff;box-shadow:0 1px 2px #1018280f}.sub-tabs svg{width:14px;height:14px;flex:none}.system-subtabs{align-self:start;flex-wrap:wrap}.settings-subtabs{margin:0;border-width:0 0 1px;border-radius:0;flex-wrap:wrap;padding:10px 14px}.settings-panel{display:grid;gap:12px;padding:18px}.setting-row{display:grid;grid-template-columns:132px minmax(0,1fr);align-items:center;gap:12px}.setting-label{color:#495568;font-size:13px;font-weight:700;text-align:left}.setting-row input,.setting-row textarea,.setting-row select{width:min(640px,100%);border:1px solid #d8dee7;border-radius:8px;background:#fff;outline:none;color:#293241;font-size:13px}.setting-row input,.setting-row select{height:38px;padding:0 10px}.setting-row textarea{min-height:92px;padding:9px 10px;resize:vertical}.setting-save-hint{margin:-4px 0 12px;padding:0 2px;color:#b8860b;font-size:12px;line-height:1.5}.setting-row input:disabled,.setting-row textarea:disabled,.setting-row select:disabled,.option-pill:disabled,.stepper button:disabled,.toggle:disabled{color:#8791a0;background:#f6f7f9;cursor:not-allowed}.setting-stack,.setting-inline{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.setting-inline input{flex:1 1 220px}.ghost-btn{height:38px;border:1px solid #d8dee7;border-radius:8px;background:#fff;color:#495568;padding:0 14px;font-size:13px;font-weight:700;cursor:pointer}.ghost-btn:hover:not(:disabled){border-color:var(--brand);color:#171a1f}.ghost-btn:disabled{color:#8791a0;background:#f6f7f9;cursor:not-allowed}.setting-stack input{flex:1 1 320px}.logo-upload input[type=file]{display:none}.file-button{height:34px;display:inline-flex;align-items:center;gap:6px;border:1px solid #d8dee7;border-radius:8px;color:#495568;background:#fff;padding:0 12px;font-size:13px;font-weight:700;cursor:pointer}.file-button:hover{border-color:var(--brand);color:#171a1f}.file-button.disabled{pointer-events:none;opacity:.65;cursor:not-allowed}.upload-path{max-width:min(360px,100%);overflow:hidden;color:#778294;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.app-version-page .form-head{margin-bottom:16px}.app-version-page .form-head h2{margin:0 0 6px}.app-version-page .form-head p{margin:0;color:var(--muted);font-size:14px}.app-version-modal .form-grid{max-width:none}.apk-upload-field{display:grid;gap:10px}.apk-upload-label{color:#495568;font-size:14px;font-weight:700}.apk-upload-input{display:none}.apk-upload-zone{position:relative;display:flex;align-items:center;gap:16px;min-height:108px;border:1.5px dashed #cfd6e3;border-radius:12px;background:linear-gradient(180deg,#fbfcfe,#f6f8fb);padding:18px 20px 28px;cursor:pointer;transition:border-color .2s ease,background .2s ease,box-shadow .2s ease}.apk-upload-zone:hover{border-color:var(--brand);background:linear-gradient(180deg,#fffdf8,#fff8ee);box-shadow:0 8px 20px #d6a54b1f}.apk-upload-zone.uploading{pointer-events:none;border-color:var(--brand);background:linear-gradient(180deg,#fffdf8,#fff8ee)}.apk-upload-zone.disabled{cursor:wait;opacity:.88}.apk-upload-error{margin:0;border:1px solid #f1c4c4;border-radius:8px;color:#8f1f1f;background:#fff5f5;padding:10px 12px;font-size:12px;line-height:1.5}.apk-upload-zone-icon{width:52px;height:52px;display:grid;place-items:center;flex-shrink:0;border-radius:14px;color:#b7791f;background:#d6a54b24}.apk-upload-zone-copy{display:grid;gap:4px;min-width:0}.apk-upload-zone-copy strong{color:#1d2430;font-size:14px;font-weight:700}.apk-upload-zone-copy p{margin:0;color:#667085;font-size:12px;line-height:1.5}.apk-upload-progress{position:absolute;left:16px;right:16px;bottom:12px;height:6px;border-radius:999px;background:#d6a54b2e;overflow:hidden}.apk-upload-progress-bar{height:100%;border-radius:inherit;background:linear-gradient(90deg,#d6a54b,#b8862f);transition:width .2s ease}.apk-upload-result{display:flex;align-items:center;gap:10px;min-height:40px;border:1px solid #e3e8ef;border-radius:10px;background:#f8fafc;padding:0 12px}.apk-upload-result-badge{flex-shrink:0;height:22px;display:inline-flex;align-items:center;border-radius:999px;background:#22c55e1f;color:#15803d;padding:0 10px;font-size:11px;font-weight:700}.apk-upload-result-path{min-width:0;overflow:hidden;color:#475569;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.app-version-history-tabs{margin-top:28px}.app-version-history-url,.app-version-history-content{display:block;max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-version-time{display:block;margin-top:4px;color:var(--muted);font-size:12px}.app-version-panel{grid-template-columns:1fr;align-items:start}.app-version-intro{display:flex;gap:12px;align-items:flex-start;border:1px solid #dbeafe;border-radius:8px;background:#eff6ff;padding:14px 16px}.app-version-intro svg{flex:0 0 auto;color:#2563eb;margin-top:2px}.app-version-intro strong{display:block;margin-bottom:4px;color:#1e3a8a;font-size:14px}.app-version-intro p{margin:0;color:#475569;font-size:13px;line-height:1.55}.app-version-view-only{margin-top:6px!important;color:#b45309!important}@media (min-width: 1100px){.app-version-panel{grid-template-columns:repeat(2,minmax(0,1fr))}.app-version-intro{grid-column:1 / -1}}.app-version-item.needs-attention{border-color:#fed7aa;background:#fffdf8}.app-version-title-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.version-channel-badge,.version-ready-badge{display:inline-flex;align-items:center;min-height:22px;padding:0 8px;border-radius:999px;font-size:11px;font-weight:700}.version-channel-badge.channel-wgt{background:#ecfdf5;color:#047857}.version-channel-badge.channel-apk{background:#fff7ed;color:#c2410c}.version-channel-badge.channel-appstore{background:#eff6ff;color:#1d4ed8}.version-ready-badge.ready{background:#f0fdf4;color:#15803d}.version-ready-badge.warn{background:#fef2f2;color:#b91c1c}.app-version-ios-note{display:grid;gap:6px;border:1px dashed #cbd5e1;border-radius:8px;background:#f8fafc;padding:10px 12px}.app-version-ios-note span{color:#667085;font-size:12px;font-weight:700}.app-version-ios-note p{margin:0;color:#64748b;font-size:12px;line-height:1.55}.app-version-item{display:grid;gap:14px;border:1px solid #e1e6ee;border-radius:8px;background:#fff;padding:14px}.app-version-head{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #edf0f5;padding-bottom:12px}.app-version-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.app-version-readonly dl{display:grid;gap:10px;margin:0}.app-version-readonly dl>div{display:grid;gap:4px}.app-version-readonly dt{margin:0;color:#667085;font-size:12px;font-weight:700}.app-version-readonly dd{margin:0;color:#293241;font-size:13px;line-height:1.55;word-break:break-all;white-space:pre-wrap}.app-version-form-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:4px}.app-version-head div{display:grid;gap:4px}.app-version-head strong{color:#171a1f;font-size:15px}.app-version-head span,.app-version-fields>label>span,.app-version-upload>span{color:#667085;font-size:12px;font-weight:700}.app-version-fields{display:grid;gap:12px}.app-version-fields label,.app-version-upload{display:grid;gap:7px}.app-version-fields input,.app-version-fields textarea{width:100%;border:1px solid #d8dee7;border-radius:8px;background:#fff;outline:none;color:#293241;font-size:13px}.app-version-fields input{height:38px;padding:0 10px}.app-version-fields textarea{min-height:92px;padding:9px 10px;resize:vertical}.app-version-fields input:disabled,.app-version-fields textarea:disabled{color:#8791a0;background:#f6f7f9;cursor:not-allowed}.logo-preview{width:42px;height:42px;border:1px dashed #cfd6df;border-radius:8px;object-fit:cover;background:#f8fafc}.option-group{display:flex;flex-wrap:wrap;gap:8px}.option-pill{min-width:88px;height:38px;border:1px solid #d8dee7;border-radius:8px;color:#495568;background:#fff;padding:0 12px;font-size:13px;font-weight:700}.option-pill.active{border-color:var(--brand);color:#171a1f;background:#fff7e5}.mode-setting{display:grid;gap:10px}.mode-pill{min-width:108px}.mode-note-list{width:min(640px,100%);display:grid;gap:8px;color:#5f6b7a;font-size:13px;line-height:1.55}.mode-note-list p{display:flex;gap:10px;margin:0}.mode-note-list strong{flex:0 0 68px;color:#293241}.stepper{display:flex;flex-wrap:wrap;align-items:center;gap:0}.stepper button,.stepper input{width:56px;height:38px;border:1px solid #d8dee7;background:#fff;text-align:center}.stepper button:first-child{border-radius:8px 0 0 8px}.stepper button:nth-child(3){border-radius:0 8px 8px 0}.stepper input{width:112px;border-right:0;border-left:0;border-radius:0}.stepper span{margin-left:10px;color:#667085;font-size:13px}.toggle{width:54px;height:30px;border:0;border-radius:999px;background:#d7dbe3;padding:3px}.toggle span{width:24px;height:24px;display:block;border-radius:999px;background:#fff;transition:transform .18s ease}.toggle.active{background:var(--brand)}.toggle.active span{transform:translate(24px)}.checkbox-group{width:min(640px,100%);display:flex;flex-wrap:wrap;gap:8px}.checkbox-group label{min-height:34px;display:inline-flex;align-items:center;gap:7px;border:1px solid #d8dee7;border-radius:8px;background:#fff;padding:0 11px;color:#495568;font-size:13px}.checkbox-group p{color:#778294;font-size:13px}.setting-service-picker{width:min(640px,100%);display:grid;gap:8px}.setting-service-picker select{width:100%}.risk-card{min-height:128px;padding:16px;width:100%;border:0;text-align:left;font:inherit;cursor:default;transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease}.risk-card.is-actionable{cursor:pointer}.risk-card.is-actionable:hover{transform:translateY(-1px);border-color:#bbf7d0;box-shadow:0 14px 28px #0f172a1a}.risk-card:disabled{opacity:1}.risk-card span{color:#667085;font-size:13px}.risk-card strong{display:block;margin-top:8px;font-size:26px}.risk-card p{margin-top:10px;color:#667085;line-height:1.5;font-size:13px}.feedback-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:16px 18px;border-bottom:1px solid #e5e9ef}.feedback-panel-head h2{margin:0;font-size:18px}.feedback-panel-head p{margin:6px 0 0;color:#667085;font-size:13px;line-height:1.5}.feedback-toolbar{padding:12px 18px 14px;border-bottom:1px solid #edf0f4;background:#fafbfc}.feedback-toolbar .filter-tabs{gap:8px}.feedback-list{display:grid;gap:12px;padding:14px 18px 18px}.feedback-empty{padding:48px 18px;text-align:center;color:#778294;font-size:14px}.feedback-card{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:16px;padding:14px 16px;border:1px solid #e5e9ef;border-radius:12px;background:#fff}.feedback-card-main{display:grid;gap:10px;min-width:0}.feedback-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.feedback-card-customer{display:grid;gap:3px;min-width:0}.feedback-card-customer strong{color:#171a1f;font-size:15px;line-height:1.35}.feedback-card-customer span,.feedback-card-customer small{color:#667085;font-size:12px;line-height:1.35}.feedback-status-pill{flex:none;min-height:26px;display:inline-flex;align-items:center;padding:0 10px;border-radius:999px;border:1px solid #d8dee7;font-size:12px;font-weight:700}.feedback-status-pill.status-pending{border-color:#fdba74;background:#fff7ed;color:#c2410c}.feedback-status-pill.status-processing{border-color:#93c5fd;background:#eff6ff;color:#1d4ed8}.feedback-status-pill.status-resolved{border-color:#86efac;background:#f0fdf4;color:#15803d}.feedback-status-pill.status-closed{border-color:#cbd5e1;background:#f8fafc;color:#64748b}.feedback-card-body{display:grid;gap:6px;width:100%;padding:10px 12px;border:1px solid #edf0f4;border-radius:10px;background:#f8fafc;text-align:left;cursor:pointer;transition:border-color .12s ease,background .12s ease}.feedback-card-body:hover{border-color:#d8dee7;background:#f1f5f9}.feedback-card-body p{margin:0;color:#293241;font-size:13px;line-height:1.55;white-space:pre-wrap;word-break:break-word}.feedback-card-body small{color:#667085;font-size:12px}.feedback-card-meta{display:flex;flex-wrap:wrap;gap:8px 14px;color:#667085;font-size:12px;line-height:1.4}.feedback-id-inline{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;color:#94a3b8;word-break:break-all}.feedback-card-side{display:grid;gap:8px;align-content:start;padding-left:16px;border-left:1px solid #edf0f4}.feedback-field-label{color:#667085;font-size:12px;font-weight:700}.feedback-customer,.feedback-owner{display:grid;gap:3px;min-width:0}.feedback-customer strong,.feedback-owner strong{color:var(--text);font-size:13px;font-weight:700;line-height:1.35}.feedback-customer span,.feedback-owner span,.feedback-customer small{color:var(--muted);font-size:12px;line-height:1.35;word-break:break-all}.feedback-id{display:block;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:11px;color:#667085;line-height:1.4;word-break:break-all}.feedback-content{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;max-width:none;white-space:pre-wrap;color:var(--text);line-height:1.5;font-size:13px}.feedback-status-select,.feedback-remark-input{width:100%;min-width:0;height:34px;border:1px solid var(--border);border-radius:8px;color:var(--text);background:#fff;font:inherit;font-size:12px}.feedback-status-select{padding:0 8px}.feedback-remark-input{padding:0 10px}.feedback-actions{display:grid;gap:6px;margin-top:4px}.feedback-actions .row-action{width:100%;min-height:32px;height:auto;padding:6px 8px;font-size:12px}.feedback-reply-cell{display:grid;gap:8px;min-width:0}.feedback-reply-cell textarea{width:100%;min-height:64px;resize:vertical;border:1px solid var(--border);border-radius:8px;padding:9px 10px;color:var(--text);background:#fff;font:inherit;line-height:1.45}.feedback-reply-cell>div{display:flex;align-items:center;justify-content:flex-end;gap:8px}.feedback-reply-actions{display:grid;gap:10px}.feedback-reply-buttons{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.feedback-reply-hint{margin:0;color:#667085;font-size:12px;line-height:1.5}.feedback-content-btn{display:grid;gap:6px;width:100%;padding:8px 10px;border:1px solid transparent;border-radius:10px;background:transparent;text-align:left;cursor:pointer;transition:border-color .12s ease,background .12s ease}.feedback-content-btn:hover{border-color:#e2e8f0;background:#f8fafc}.feedback-content-btn small{color:var(--muted);font-size:12px}.feedback-thread-panel{width:min(760px,calc(100vw - 32px));max-height:calc(100vh - 48px);overflow:auto}.feedback-thread-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.feedback-thread-header h3{margin:0}.feedback-thread-header p{margin:6px 0 0;color:var(--muted);font-size:13px}.feedback-thread-list{display:grid;gap:12px;margin-bottom:16px;max-height:420px;overflow:auto}.feedback-thread-original{margin-bottom:14px;padding:12px 14px;border:1px solid #dbeafe;border-radius:10px;background:#f8fbff}.feedback-thread-original-label{display:inline-block;margin-bottom:8px;color:#1d4ed8;font-size:12px;font-weight:700}.feedback-thread-original p{margin:0;white-space:pre-wrap;line-height:1.55;color:var(--text)}.feedback-rating-stars{display:inline-flex;align-items:center;gap:3px;margin-bottom:8px;color:#cbd5e1;font-size:22px;line-height:1}.feedback-rating-stars span.active{color:#f59e0b}.feedback-rating-stars strong{margin-left:8px;color:#334155;font-size:13px;font-weight:700}.announcement-history{display:grid;gap:10px;padding-top:8px}.announcement-page{display:grid;gap:16px}.announcement-list-panel{min-height:0}.announcement-list-panel .form-head-actions{display:flex;align-items:center;gap:8px}.announcement-modal{width:min(680px,calc(100vw - 32px))}.compact-head{align-items:center;padding-bottom:12px}.compact-head h2{margin-bottom:2px}.compact-announcement-form{gap:10px;padding:14px 16px 16px}.compact-announcement-form .setting-row{grid-template-columns:78px minmax(0,1fr);gap:10px}.compact-announcement-form .setting-row input,.compact-announcement-form .setting-row textarea{width:100%}.compact-announcement-form .setting-row textarea{min-height:118px}.announcement-list-panel .feedback-panel-head{padding:14px 16px}.announcement-list-panel .announcement-history{max-height:calc(100vh - 260px);overflow:auto;padding:12px 16px 16px}.announcement-history-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.announcement-history-item{display:grid;gap:0;padding:14px 16px;border:1px solid #e5eaf0;border-radius:10px;background:#fff}.announcement-history-main{display:grid;gap:6px}.announcement-history-title{display:block;margin:0;color:#111827;font-size:15px;line-height:1.4}.announcement-history-preview{margin:0;color:#64748b;line-height:1.5;white-space:pre-wrap;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.announcement-history-meta{display:flex;flex-wrap:wrap;gap:18px;margin-top:12px;padding-top:12px;border-top:1px solid #eef2f6}.announcement-meta-item{display:inline-flex;align-items:baseline;gap:6px;min-width:0}.announcement-meta-item em{color:#94a3b8;font-style:normal;font-size:12px;white-space:nowrap}.announcement-meta-item strong{color:#334155;font-size:13px;font-weight:600}.feedback-thread-original small{display:block;margin-top:8px;color:var(--muted);font-size:12px}.feedback-thread-item{padding:12px 14px;border-radius:10px;background:#f8fafc;border:1px solid var(--border)}.feedback-thread-item.is-admin{background:#effcf5;border-color:#bde7d0}.feedback-thread-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px;font-size:12px;color:var(--muted)}.feedback-thread-item p{margin:0;white-space:pre-wrap;line-height:1.55;color:var(--text)}@media (max-width: 1320px){.metric-grid,.risk-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.ops-board{grid-template-columns:1fr}.chat-workspace{grid-template-columns:280px minmax(0,1fr)}.chat-profile{display:none}}@media (max-width: 820px){.admin-shell{grid-template-columns:1fr}.sidebar{position:static;top:auto;width:auto;min-width:0;max-width:none;height:auto;min-height:auto;overflow:visible}nav{overflow:visible}.workspace{padding:16px}.topbar,.table-head,.form-head,.feedback-panel-head{align-items:stretch;flex-direction:column}.feedback-card{grid-template-columns:1fr}.feedback-card-side{padding-left:0;padding-top:12px;border-left:0;border-top:1px solid #edf0f4}.metric-grid,.risk-grid,.radar-list,.app-version-panel,.reply-form,.settings-tabs,.permission-node-summary,.member-picker,.group-manage-grid,.chat-workspace{height:auto;min-height:620px;grid-template-columns:1fr}.form-grid,.group-form-basic{grid-template-columns:1fr}.group-form-basic .form-field-hint-below{grid-column:auto}.role-form-grid{grid-template-columns:1fr}.role-checks>span{width:100%}.chat-sessions{border-right:0;border-bottom:1px solid #e4e8ef}.chat-window{min-height:640px}.chat-window-head,.chat-list-controls{align-items:stretch;flex-direction:column}.chat-list-controls,.chat-list-controls select,.chat-search.compact{width:100%}.chat-readonly-panel{padding:0 12px 12px}.readonly-strip{flex-direction:column;align-items:stretch}.readonly-chip-row{justify-content:flex-start}.chat-record-head{display:none}.chat-record-item{grid-template-columns:1fr;align-items:stretch;gap:6px;padding:12px}.record-sender,.record-session,.record-sender>span{align-items:flex-start;flex-direction:column;gap:4px}.record-actions{justify-content:flex-start;flex-wrap:wrap}.record-meta{text-align:left}.record-content p{white-space:normal}.chat-bubble{max-width:78%}.setting-row,.announcement-page,.compact-announcement-form .setting-row{grid-template-columns:1fr}.announcement-list-panel .announcement-history{max-height:none}.permission-tree-children{grid-template-columns:1fr}.setting-label{text-align:left}.search-box{width:100%}.audit-workspace-banner{flex-direction:column;align-items:flex-start}.audit-workspace-role{align-self:flex-start}.workspace.is-messages{height:auto;max-height:none;overflow:visible}.workspace-body.is-messages{overflow:visible;max-height:none}.workspace-body.is-messages .messages-page,.workspace-body.is-messages .chat-workspace,.messages-page.is-audit .chat-workspace{height:auto;max-height:none;min-height:620px;overflow:visible}.workspace-body.is-messages .chat-workspace>.chat-sessions{max-height:360px;overflow:hidden}.chat-record-head.session-focused,.chat-record-item.session-focused{grid-template-columns:1fr;gap:8px}.chat-record-head.session-focused{display:none}}.message-audit-page .message-audit-panel{overflow:hidden}.message-audit-toolbar{display:grid;gap:12px}.message-audit-filter-group{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.message-audit-filter-title{min-width:56px;color:#667085;font-size:12px;font-weight:700}.message-audit-empty{display:grid;justify-items:center;gap:8px;padding:56px 24px 64px;text-align:center;color:#778294}.message-audit-empty svg{color:#98a2b3}.message-audit-empty strong{color:#344054;font-size:15px}.message-audit-empty p{margin:0;max-width:360px;font-size:13px;line-height:1.6}.message-audit-list{display:grid;gap:12px;padding:14px 18px 18px}.message-audit-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;padding:14px 16px;border:1px solid #e5e9ef;border-radius:12px;background:#fff;transition:border-color .15s ease,box-shadow .15s ease}.message-audit-card:hover{border-color:#d8dee7;box-shadow:0 8px 24px #1018280f}.message-audit-card-main{display:grid;gap:10px;min-width:0}.message-audit-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.message-audit-card-tags{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-width:0}.message-audit-card-tags time{color:#667085;font-size:12px}.message-audit-org{display:inline-flex;align-items:center;min-height:24px;padding:0 10px;border-radius:999px;background:#f4f6f8;color:#475467;font-size:12px;font-weight:700}.message-audit-route{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}.message-audit-route-names{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-width:0}.message-audit-route-names strong{color:#171a1f;font-size:14px;font-weight:700}.message-audit-route-arrow{color:#98a2b3;font-size:13px}.message-audit-type-pill{display:inline-flex;align-items:center;min-height:24px;padding:0 10px;border-radius:999px;border:1px solid #e4e8ef;background:#fafbfc;color:#667085;font-size:12px;font-weight:700}.message-audit-preview{padding:10px 12px;border-radius:10px;background:#f8fafc;color:#344054;font-size:13px;line-height:1.55;white-space:pre-wrap;word-break:break-word}.message-audit-foot{display:flex;flex-wrap:wrap;gap:12px;color:#667085;font-size:12px}.message-audit-deleted{color:#b42318;font-weight:700}.message-audit-card-side{display:flex;flex-direction:column;justify-content:center;gap:8px;min-width:108px}.message-audit-card-side .row-action{width:100%;justify-content:center}.message-audit-session{display:inline-flex;align-items:center;min-height:24px;padding:0 10px;border-radius:999px;font-size:12px;font-weight:700;line-height:1.5}.message-audit-session.is-single{color:#1d4ed8;background:#2563eb1a}.message-audit-session.is-group{color:#0f766e;background:#0f766e1f}.message-audit-status{display:inline-flex;align-items:center;flex:none;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:700}.message-audit-status.is-pending{background:#fff7ed;color:#c2410c}.message-audit-status.is-pass{background:#ecfdf5;color:#047857}.message-audit-status.is-violate{background:#fef2f2;color:#b91c1c}@media (max-width: 960px){.message-audit-card{grid-template-columns:1fr}.message-audit-card-side{flex-direction:row;min-width:0}.message-audit-card-side .row-action{flex:1}}.row-action-danger{color:#b91c1c}.strategy-rule-summary{display:grid;gap:6px;min-width:260px;color:#344054;font-size:12px;line-height:1.45}.strategy-rule-summary span{display:inline-flex;width:fit-content;padding:4px 8px;border-radius:8px;background:#f5f7fa;color:#475467;font-weight:700}.win-option-modal{gap:18px}.win-option-ops-panel{display:grid;gap:16px;padding:18px}.win-option-inline-form{display:grid;grid-template-columns:repeat(3,minmax(160px,1fr)) auto auto;gap:10px;align-items:end}.win-option-inline-form label{display:grid;gap:6px;color:#475467;font-size:12px;font-weight:700}.win-option-inline-form input,.win-option-inline-form select{width:100%;min-width:0;height:38px;padding:0 10px;border:1px solid #d8dee7;border-radius:8px;background:#fff;color:#293241}.win-option-account-strip,.win-option-calendar-list{display:flex;flex-wrap:wrap;gap:8px}.win-option-account-strip span,.win-option-calendar-list span{padding:7px 10px;border-radius:8px;background:#f3f6fa;color:#475467;font-size:12px}.win-option-calendar-list span.closed{color:#b42318;background:#fff1f0}.strategy-rule-editor{display:grid;gap:10px;padding-top:4px}.strategy-rule-grid{display:grid;grid-template-columns:1fr 1fr 1fr 1fr 1fr 86px;gap:8px;align-items:center}.strategy-rule-grid-head{color:#667085;font-size:12px;font-weight:800}.strategy-rule-grid input{width:100%;min-width:0}@media (max-width: 1100px){.win-option-inline-form,.strategy-rule-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.strategy-rule-grid-head{display:none}}@media (max-width: 680px){.win-option-inline-form{grid-template-columns:1fr}}
