:root{--ink:#10151b;--ink-soft:#1c2430;--ink-line:#2a3441;--paper:#f5f6f2;--paper-card:#fff;--text-primary:#1b1f23;--text-muted:#6b7280;--text-on-ink:#e7eaee;--text-on-ink-muted:#8a95a3;--accent:#2f6f5e;--accent-soft:#e4efea;--border:#e5e7eb;--danger:#b23a3a;--danger-soft:#fbeaea;--font-ui:"Inter", system-ui, sans-serif;--font-body:"IBM Plex Sans Thai", "Inter", system-ui, sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font-body);color:var(--text-primary);background:var(--paper);-webkit-font-smoothing:antialiased}button{cursor:pointer;font-family:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.login-screen{background:var(--ink);justify-content:center;align-items:center;min-height:100vh;display:flex}.login-card{background:var(--ink-soft);border:1px solid var(--ink-line);border-radius:14px;flex-direction:column;gap:14px;width:340px;padding:32px 28px;display:flex}.login-card h1{font-family:var(--font-ui);color:var(--text-on-ink);margin:4px 0 0;font-size:22px;font-weight:700}.login-subtitle{font-family:var(--font-ui);color:var(--text-on-ink-muted);margin:0 0 8px;font-size:13px}.login-field{font-family:var(--font-ui);color:var(--text-on-ink-muted);flex-direction:column;gap:6px;font-size:12.5px;display:flex}.login-field input{border:1px solid var(--ink-line);background:var(--ink);color:var(--text-on-ink);font-family:var(--font-ui);border-radius:8px;padding:10px 12px;font-size:14px}.login-field input:focus{border-color:var(--accent);outline:none}.login-error{font-family:var(--font-ui);color:#e08a8a;font-size:12.5px}.login-submit{background:var(--accent);color:#fff;font-family:var(--font-ui);border:none;border-radius:8px;margin-top:6px;padding:11px;font-size:14px;font-weight:600}.login-submit:disabled{opacity:.6;cursor:not-allowed}.app{grid-template-columns:320px 1fr;height:100vh;display:grid}.avatar-img{object-fit:cover;border-radius:50%;flex-shrink:0}.avatar-fallback{color:#fff;font-family:var(--font-ui);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:600;display:flex}.sidebar{background:var(--ink);color:var(--text-on-ink);border-right:1px solid var(--ink-line);flex-direction:column;min-width:0;display:flex}.sidebar-header{border-bottom:1px solid var(--ink-line);padding:24px 20px 16px}.brand-mark{font-family:var(--font-ui);letter-spacing:.14em;color:var(--text-on-ink-muted);font-size:11px;font-weight:600}.sidebar-header h1{font-family:var(--font-ui);color:var(--text-on-ink);margin:6px 0 0;font-size:20px;font-weight:700}.admin-bar{justify-content:space-between;align-items:center;gap:8px;margin-top:12px;display:flex}.admin-email{font-family:var(--font-ui);color:var(--text-on-ink-muted);text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;overflow:hidden}.logout-btn{color:var(--text-on-ink-muted);font-family:var(--font-ui);background:0 0;border:none;flex-shrink:0;padding:0;font-size:11.5px;text-decoration:underline}.logout-btn:hover{color:var(--text-on-ink)}.account-filter{border-bottom:1px solid var(--ink-line);flex-wrap:wrap;gap:8px;padding:16px 16px 12px;display:flex}.chip{border:1px solid var(--ink-line);color:var(--text-on-ink-muted);font-family:var(--font-ui);background:0 0;border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:12.5px;font-weight:500;transition:background .15s,color .15s;display:inline-flex}.chip:hover{color:var(--text-on-ink)}.chip-active{background:var(--ink-soft);color:var(--text-on-ink)}.chip-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.status-filter{border-bottom:1px solid var(--ink-line);flex-wrap:wrap;gap:8px;padding:12px 16px;display:flex}.status-tab{border:1px solid var(--ink-line);color:var(--text-on-ink-muted);font-family:var(--font-ui);background:0 0;border-radius:999px;align-items:center;gap:6px;padding:5px 11px;font-size:12px;font-weight:500;display:inline-flex}.status-tab:hover{color:var(--text-on-ink)}.status-tab-active{background:var(--ink-soft);color:var(--text-on-ink)}.status-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.conversation-row-meta{align-items:center;gap:8px;margin-top:2px;display:flex}.conversation-status-badge{font-family:var(--font-ui);align-items:center;gap:5px;font-size:10.5px;font-weight:600;display:inline-flex}.conversation-assignee{font-family:var(--font-ui);color:var(--text-on-ink-muted);text-overflow:ellipsis;white-space:nowrap;font-size:10.5px;overflow:hidden}.conversation-list{flex-direction:column;flex:1;gap:2px;padding:8px;display:flex;overflow-y:auto}.empty-hint{color:var(--text-on-ink-muted);text-align:center;padding:16px 12px;font-size:13px}.conversation-row{text-align:left;color:var(--text-on-ink);background:0 0;border:none;border-left:3px solid #0000;border-radius:8px;flex-direction:row;align-items:center;gap:10px;padding:10px 12px;display:flex}.conversation-texts{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.conversation-row:hover,.conversation-row-active{background:var(--ink-soft)}.conversation-row-top{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.conversation-account{font-family:var(--font-ui);color:var(--text-on-ink);white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:600;overflow:hidden}.conversation-time{font-family:var(--font-ui);color:var(--text-on-ink-muted);flex-shrink:0;font-size:11px}.conversation-row-bottom{align-items:baseline;gap:6px;min-width:0;display:flex}.conversation-account-tag{font-family:var(--font-ui);flex-shrink:0;font-size:11px;font-weight:600}.conversation-preview{color:var(--text-on-ink-muted);white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.thread-panel{background:var(--paper);flex-direction:column;min-width:0;display:flex}.error-banner{background:var(--danger-soft);color:var(--danger);font-family:var(--font-ui);padding:10px 20px;font-size:13px}.thread-empty{color:var(--text-muted);font-family:var(--font-ui);flex:1;justify-content:center;align-items:center;font-size:14px;display:flex}.thread-header{background:var(--paper-card);border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:16px 24px;display:flex}.thread-header-texts{min-width:0}.thread-account-name{font-family:var(--font-ui);font-size:14px;font-weight:600}.thread-user-id{font-family:var(--font-ui);color:var(--text-muted);font-size:12px}.refresh-profile-btn{border:1px solid var(--border);background:var(--paper-card);color:var(--text-muted);font-family:var(--font-ui);border-radius:999px;flex-shrink:0;padding:6px 12px;font-size:12px;font-weight:500}.refresh-profile-btn:hover{color:var(--accent);border-color:var(--accent)}.refresh-profile-btn:disabled{color:var(--text-muted);cursor:not-allowed}.thread-header-controls{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;margin-left:auto;display:flex}.status-select{border:1px solid var(--border);background:var(--paper-card);font-family:var(--font-ui);border-radius:999px;flex-shrink:0;padding:6px 10px;font-size:12px;font-weight:600}.assign-select{border:1px solid var(--border);background:var(--paper-card);max-width:160px;color:var(--text-muted);font-family:var(--font-ui);border-radius:999px;flex-shrink:0;padding:6px 10px;font-size:12px}.assign-me-btn{border:1px solid var(--accent);background:var(--accent-soft);color:var(--accent);font-family:var(--font-ui);border-radius:999px;flex-shrink:0;padding:6px 12px;font-size:12px;font-weight:600}.thread-mode-tag{font-family:var(--font-ui);color:var(--accent);background:var(--accent-soft);white-space:nowrap;border-radius:999px;margin-left:auto;padding:5px 10px;font-size:11.5px}.thread-scroll{flex-direction:column;flex:1;gap:2px;padding:20px 24px;display:flex;overflow-y:auto}.day-divider{font-family:var(--font-ui);color:var(--text-muted);background:var(--paper-card);border:1px solid var(--border);border-radius:999px;align-self:center;margin:16px 0;padding:3px 12px;font-size:11.5px}.bubble-row{flex-direction:column;max-width:62%;margin-bottom:12px;display:flex}.bubble-row-in{align-self:flex-start;align-items:flex-start}.bubble-row-out{align-self:flex-end;align-items:flex-end}.bubble{white-space:pre-wrap;word-break:break-word;border-radius:14px;padding:10px 14px;font-size:14.5px;line-height:1.5}.bubble-in{background:var(--paper-card);border:1px solid var(--border);color:var(--text-primary);border-bottom-left-radius:4px}.bubble-out{background:var(--accent);color:#fff;border-bottom-right-radius:4px}.bubble-time{font-family:var(--font-ui);color:var(--text-muted);margin-top:3px;padding:0 4px;font-size:10.5px}.compose-bar{background:var(--paper-card);border-top:1px solid var(--border);align-items:flex-end;gap:10px;padding:14px 24px;display:flex}.compose-input{resize:none;border:1px solid var(--border);max-height:120px;font-family:var(--font-body);color:var(--text-primary);background:var(--paper);border-radius:10px;flex:1;padding:10px 14px;font-size:14px;line-height:1.5}.compose-input:focus{border-color:var(--accent);background:var(--paper-card);outline:none}.compose-send{background:var(--accent);color:#fff;font-family:var(--font-ui);border:none;border-radius:10px;flex-shrink:0;padding:10px 20px;font-size:13.5px;font-weight:600}.compose-send:disabled{background:var(--border);color:var(--text-muted);cursor:not-allowed}@media (width<=720px){.app{grid-template-rows:260px 1fr;grid-template-columns:1fr}.sidebar{border-right:none;border-bottom:1px solid var(--ink-line)}.bubble-row{max-width:82%}}
