:root{color-scheme:light;font-family:IBM Plex Sans,PingFang SC,Microsoft YaHei,sans-serif;--bg: #f5f1ea;--sidebar-bg: #f3efe8;--surface: #ffffff;--surface-muted: #fbf8f2;--border: rgba(23, 33, 43, .09);--border-strong: rgba(23, 33, 43, .18);--text: #17212b;--muted: #66707a;--muted-strong: #4f5963;--accent: #121a24;--accent-weak: #eef2f5;--warning: #b35a00;--danger: #b42318;--shadow: 0 10px 26px rgba(23, 33, 43, .06);--shadow-soft: 0 4px 14px rgba(23, 33, 43, .04);--radius-panel: 12px;--radius-control: 10px}*{box-sizing:border-box}html,body,#root{min-height:100vh}body{margin:0;background:radial-gradient(circle at top left,rgba(18,26,36,.05),transparent 26%),linear-gradient(180deg,#f7f4ef 0%,var(--bg) 100%);color:var(--text)}button,input,select,textarea{font:inherit}button{cursor:pointer}input,select,textarea{width:100%;border:1px solid var(--border);border-radius:var(--radius-control);background:#fff;color:var(--text);transition:border-color .12s ease,box-shadow .12s ease}input,select,.solid,.ghost,.tool-button{height:40px}input,select{padding:0 12px}textarea{min-height:110px;padding:12px;resize:vertical}input:focus,select:focus,textarea:focus{outline:none;border-color:#121a2442;box-shadow:0 0 0 3px #121a240f}a{color:inherit}.hidden-input{display:none}.auth-shell,.app-shell{min-height:100vh}.auth-shell{display:grid;place-items:center;padding:24px}.auth-panel{width:min(92vw,380px);display:grid;gap:18px;padding:24px;border:1px solid var(--border);border-radius:16px;background:#fffffff0;box-shadow:var(--shadow)}.auth-title{font-size:20px;font-weight:600;letter-spacing:-.01em}.auth-form,.stack-form,.panel-form{display:grid;gap:14px}.field{display:grid;gap:6px}.field span{font-size:12px;color:var(--muted)}.app-shell{display:grid;grid-template-columns:220px minmax(0,1fr)}.sidebar{padding:18px 14px;border-right:1px solid rgba(23,33,43,.06);background:var(--sidebar-bg)}.sidebar-title{min-height:40px;display:flex;align-items:center;padding:0 10px;font-size:16px;font-weight:700}.sidebar-nav{display:grid;gap:6px;margin-top:12px}.nav-link{height:40px;padding:0 14px;text-align:left;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--text);font-size:14px;font-weight:600}.nav-link:hover{background:#fff9;border-color:#17212b14}.nav-link.active{background:#ffffffeb;border-color:#17212b1a;box-shadow:var(--shadow-soft)}.main-shell{padding:16px;display:grid;gap:12px}.topbar{min-height:52px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 14px;border:1px solid var(--border);border-radius:12px;background:#ffffffeb;box-shadow:var(--shadow-soft)}.topbar-title{font-size:20px;font-weight:600;letter-spacing:-.01em}.topbar-actions,.toolbar-metrics,.inline-actions,.composer-tools,.toolbar-inline,.job-row,.message-meta,.session-primary,.session-secondary,.plain-row-head{display:flex;align-items:center;gap:8px}.topbar-actions{justify-content:flex-end;flex-wrap:wrap}.top-tag,.panel-chip,.typing-badge,.state-pill{min-height:28px;display:inline-flex;align-items:center;padding:0 10px;border-radius:999px;font-size:12px;white-space:nowrap}.top-tag,.panel-chip,.state-pill.default{border:1px solid var(--border);background:#fffffff5;color:var(--muted-strong)}.top-tag.emphasis{color:var(--text);font-weight:600}.state-pill.warning{color:var(--warning);border:1px solid rgba(179,90,0,.18);background:#fff5e6f5}.state-pill.danger{color:var(--danger);border:1px solid rgba(180,35,24,.18);background:#fff1eff5}.typing-badge{color:var(--text);background:#121a2414}.solid,.ghost,.tool-button{padding:0 14px;border-radius:10px;border:1px solid var(--border-strong);transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease}.solid{background:var(--accent);color:#fff;box-shadow:0 8px 18px #121a2424}.ghost,.tool-button{background:#fff;color:var(--text)}.ghost.compact,.compact-solid{height:38px;padding:0 12px}.solid:hover:not(:disabled),.ghost:hover:not(:disabled),.tool-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-soft)}button:disabled{opacity:.6;cursor:default;transform:none;box-shadow:none}.error-strip{padding:10px 12px;border:1px solid rgba(180,35,24,.2);border-radius:12px;background:#fff1eff5;color:var(--danger);font-size:13px}.panel{min-width:0;border:1px solid var(--border);border-radius:var(--radius-panel);background:#fffffff2;box-shadow:var(--shadow-soft);overflow:hidden}.panel-head{min-height:46px;display:flex;align-items:center;padding:0 16px;border-bottom:1px solid rgba(23,33,43,.06);font-size:15px;font-weight:600}.panel-head.split{justify-content:space-between}.panel-subtitle{font-size:15px;font-weight:600}.workspace-grid{display:grid;grid-template-columns:290px minmax(0,1fr) 350px;gap:12px;min-height:calc(100vh - 98px)}.session-list,.plain-list,.job-list{display:grid}.session-row{padding:12px 14px;border:0;border-bottom:1px solid rgba(23,33,43,.06);background:transparent;text-align:left;display:grid;gap:6px}.session-row:hover{background:#ffffff8c}.session-row.active{background:#f3f6f9eb}.session-primary{justify-content:space-between}.session-primary strong,.plain-row strong,.job-row strong,.reply-picker-item strong{font-size:14px;font-weight:600}.session-secondary,.plain-row-head,.job-row,.message-meta{justify-content:space-between}.session-secondary span,.plain-row-head span,.job-row span,.message-meta span,.reply-picker-item span{font-size:12px;color:var(--muted)}.chat-panel{display:grid;grid-template-rows:auto minmax(0,1fr) auto auto}.message-feed{min-height:0;overflow-y:auto;padding:16px;display:grid;align-content:start;gap:10px;background:linear-gradient(180deg,#fbf8f2b8,#fffffff5)}.message-row{max-width:82%;display:grid;gap:8px;padding:12px 13px;border-radius:16px;box-shadow:0 5px 14px #17212b0d}.message-row.visitor{justify-self:start;border:1px solid rgba(23,33,43,.08);background:#fff}.message-row.admin{justify-self:end;background:var(--accent);color:#fff}.message-row.admin .message-meta span{color:#ffffffb8}.message-body,.plain-row p{margin:0;font-size:14px;line-height:1.65;white-space:pre-wrap;word-break:break-word}.typing-strip{min-height:36px;display:flex;align-items:center;gap:10px;padding:0 16px;border-top:1px solid rgba(23,33,43,.05);font-size:12px;color:var(--muted);background:var(--surface-muted)}.typing-strip.hidden{display:none}.typing-dots{display:inline-flex;gap:4px}.typing-dots i{width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.35;animation:typing-pulse 1.1s ease-in-out infinite}.typing-dots i:nth-child(2){animation-delay:.18s}.typing-dots i:nth-child(3){animation-delay:.36s}@keyframes typing-pulse{0%,to{opacity:.35;transform:translateY(0)}50%{opacity:.92;transform:translateY(-2px)}}.composer-card{position:relative;padding:14px 16px 16px;display:grid;gap:10px;border-top:1px solid rgba(23,33,43,.06);background:#fff}.composer-card textarea{min-height:118px}.composer-tools{flex-wrap:wrap}.composer-spacer{flex:1 1 auto}.reply-picker{display:grid;gap:8px;max-height:220px;padding:10px;overflow:auto;border:1px solid rgba(23,33,43,.08);border-radius:10px;background:var(--surface-muted)}.reply-picker-item{padding:10px 12px;border:1px solid rgba(23,33,43,.06);border-radius:10px;background:#fff;text-align:left;display:grid;gap:4px}.attachment-pill{min-height:30px;display:inline-flex;align-items:center;width:fit-content;padding:0 10px;border-radius:999px;background:#121a2414;color:var(--muted-strong);font-size:12px}.side-panel{display:grid;align-content:start}.panel-block{display:grid;gap:14px;padding:16px}.panel-block+.panel-block{border-top:1px solid rgba(23,33,43,.06)}.operator-preview{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid rgba(23,33,43,.08);border-radius:12px;background:var(--surface-muted)}.operator-avatar{width:48px;height:48px;border-radius:12px;object-fit:cover;background:#e9e3d8;border:1px solid rgba(23,33,43,.06)}.operator-avatar.placeholder{display:grid;place-items:center;font-size:16px;font-weight:700}.operator-name{font-size:14px;font-weight:600}.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.info-cell{padding:12px;border:1px solid rgba(23,33,43,.08);border-radius:10px;background:#fff}.info-cell dt{font-size:12px;color:var(--muted)}.info-cell dd{margin:6px 0 0;font-size:13px;line-height:1.5}.quick-reply-shortcuts{display:grid;gap:10px}.quick-reply-shortcuts-head{font-size:13px;font-weight:600}.quick-reply-shortcuts-grid{display:flex;flex-wrap:wrap;gap:8px}.links-screen{display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:12px;min-height:calc(100vh - 100px)}.links-toolbar{padding:12px 16px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end}.toolbar-metrics{flex-wrap:wrap}.toolbar-metric{display:grid;gap:2px}.toolbar-label{font-size:12px;color:var(--muted)}.toolbar-metric strong{font-size:28px;line-height:1;letter-spacing:-.02em}.batch-inline-form{display:grid;grid-template-columns:124px 144px auto;gap:10px;align-items:end}.batch-inline-form .field{gap:6px}.table-panel{display:grid;grid-template-rows:auto minmax(0,1fr);min-height:0}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{padding:12px 16px;text-align:left;vertical-align:top;border-bottom:1px solid rgba(23,33,43,.06);font-size:13px}thead th{position:sticky;top:0;background:#fffffffa;z-index:1;font-weight:600}td strong{display:block;font-size:14px;font-weight:600}.domain-cell{min-width:210px}.link-mode-cell{min-width:360px;display:grid;grid-template-columns:90px minmax(0,1fr) auto;gap:8px;align-items:center}.cell-error{margin-top:6px;font-size:12px;color:var(--danger)}.plain-row{display:grid;gap:8px;padding:14px 16px;border-bottom:1px solid rgba(23,33,43,.06)}.jobs-panel.compact-panel{align-self:end}.job-list.compact{padding:0 16px 10px}.job-item{display:grid;gap:6px;padding:10px 0;border-bottom:1px solid rgba(23,33,43,.06)}.job-item:last-child{border-bottom:0}.compact-job strong{font-size:13px}.compact-job .job-row span{font-size:12px}.job-row.muted span{color:var(--muted)}.attachment-image-link{display:block;width:fit-content}.attachment-image{display:block;width:176px;max-width:100%;border-radius:12px;border:1px solid rgba(23,33,43,.08)}.message-attachment{width:fit-content;display:inline-flex;align-items:center;padding:8px 10px;border-radius:10px;border:1px solid rgba(23,33,43,.08);background:#ffffffeb;font-size:12px;text-decoration:none}.message-row.admin .message-attachment{background:#ffffff1f;border-color:#ffffff2e;color:#fff}.empty-state{padding:16px;color:var(--muted);font-size:13px}.two-column-layout{display:grid;grid-template-columns:340px minmax(0,1fr);gap:12px}.narrow-panel{align-self:start}@media (max-width: 1440px){.workspace-grid{grid-template-columns:270px minmax(0,1fr) 320px}}@media (max-width: 1280px){.workspace-grid,.two-column-layout{grid-template-columns:1fr}.links-toolbar{grid-template-columns:1fr;align-items:stretch}}@media (max-width: 920px){.app-shell{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid rgba(23,33,43,.06)}.main-shell{padding:12px}.topbar{align-items:start;flex-direction:column}.topbar-actions,.toolbar-metrics,.batch-inline-form,.composer-tools,.inline-actions{width:100%}.topbar-actions,.toolbar-metrics,.batch-inline-form,.composer-tools,.inline-actions,.quick-reply-shortcuts-grid{display:grid}.detail-grid{grid-template-columns:1fr}.message-row{max-width:100%}.link-mode-cell{min-width:0;grid-template-columns:1fr}}
