:root{--bg:#f3f5f9;--panel:#fff;--panel-2:#f8fafc;--text:#0f172a;--muted:#64748b;--border:#e2e8f0;--border-strong:#cbd5e1;--accent:#2563eb;--accent-hover:#1d4ed8;--accent-soft:#e8efff;--accent-text:#fff;--bubble-in:#f1f5f9;--bubble-bot:#e8efff;--bubble-admin:#e3f7ea;--ok:#16a34a;--ok-soft:#e3f7ea;--danger:#dc2626;--danger-soft:#fdecec;--line:#06c755;--facebook:#0866ff;--tiktok:#111;--test:#9333ea;--warn-bg:#fef3c7;--warn-text:#92400e;--issue:#b45309;--sidebar:#0f172a;--sidebar-text:#cbd5e1;--sidebar-muted:#64748b;--sidebar-hover:#1e293b;--shadow-sm:0 1px 2px #0f172a0f;--shadow:0 1px 3px #0f172a14, 0 4px 12px #0f172a0a;--radius:14px;--radius-sm:10px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0b0f17;--panel:#141a24;--panel-2:#10151e;--text:#e5e9f0;--muted:#8b95a7;--border:#232b38;--border-strong:#334155;--accent:#5b8cff;--accent-hover:#7aa2ff;--accent-soft:#1b2a4a;--bubble-in:#1c2330;--bubble-bot:#1b2a4a;--bubble-admin:#153325;--ok:#4ade80;--ok-soft:#153325;--danger:#f87171;--danger-soft:#3a1c1f;--tiktok:#e5e9f0;--warn-bg:#3d2a0a;--warn-text:#fcd34d;--issue:#fbbf24;--sidebar:#0a0e15;--sidebar-hover:#161d29;--shadow-sm:0 1px 2px #0006;--shadow:0 1px 3px #00000080;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#0b0f17;--panel:#141a24;--panel-2:#10151e;--text:#e5e9f0;--muted:#8b95a7;--border:#232b38;--border-strong:#334155;--accent:#5b8cff;--accent-hover:#7aa2ff;--accent-soft:#1b2a4a;--bubble-in:#1c2330;--bubble-bot:#1b2a4a;--bubble-admin:#153325;--ok:#4ade80;--ok-soft:#153325;--danger:#f87171;--danger-soft:#3a1c1f;--tiktok:#e5e9f0;--warn-bg:#3d2a0a;--warn-text:#fcd34d;--issue:#fbbf24;--sidebar:#0a0e15;--sidebar-hover:#161d29;--shadow-sm:0 1px 2px #0006;--shadow:0 1px 3px #00000080;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{height:100%;margin:0}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;font-family:IBM Plex Sans Thai,Noto Sans Thai,Leelawadee UI,system-ui,sans-serif;font-size:15px;line-height:1.55}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}h1{letter-spacing:-.01em;margin:4px 0 6px;font-size:24px;font-weight:700}h2{font-weight:600}::selection{background:var(--accent-soft)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.shell{grid-template-columns:232px 1fr;height:100vh;display:grid}main{min-width:0;min-height:0;overflow-y:auto}.sidebar{background:var(--sidebar);color:var(--sidebar-text);flex-direction:column;gap:8px;padding:14px 10px;display:flex;overflow-y:auto}.sidebar-brand{align-items:center;gap:10px;padding:4px 8px 12px;display:flex}.sidebar-brand .logo{background:linear-gradient(135deg,#3b82f6,#06c755);border-radius:10px;place-items:center;width:36px;height:36px;font-size:18px;display:grid}.sidebar-brand strong{color:#fff;font-size:15px;line-height:1.2;display:block}.sidebar-brand small{color:var(--sidebar-muted);font-size:12px}.sidebar-links{flex-direction:column;flex:1;gap:14px;display:flex}.sidebar-group{flex-direction:column;gap:2px;display:flex}.sidebar-title{letter-spacing:.06em;color:var(--sidebar-muted);padding:0 10px 4px;font-size:11px;font-weight:600}.sidebar a{color:var(--sidebar-text);white-space:nowrap;border-radius:9px;align-items:center;gap:10px;padding:8px 10px;font-size:14px;text-decoration:none;transition:background .12s;display:flex}.sidebar a:hover{background:var(--sidebar-hover);text-decoration:none}.sidebar a.active{background:var(--accent);color:#fff;font-weight:500}.sidebar a .icon{text-align:center;width:20px}.sidebar a .label{flex:1}.sidebar a .count{background:var(--danger);color:#fff;border-radius:999px;padding:0 7px;font-size:11px;font-weight:600;line-height:18px}.sidebar-foot{border-top:1px solid var(--sidebar-hover);padding:8px 4px 0}.theme-toggle{background:var(--sidebar-hover);border-radius:999px;gap:2px;padding:3px;display:flex}.theme-toggle button{box-shadow:none;background:0 0;border:none;border-radius:999px;flex:1;padding:4px 0;font-size:13px}.theme-toggle button:hover{background:#ffffff0f}.theme-toggle button.on{background:var(--sidebar);box-shadow:0 1px 2px #0006}button,input,textarea,select{font:inherit;color:inherit}input,textarea,select{background:var(--panel);border:1px solid var(--border-strong);border-radius:var(--radius-sm);width:100%;padding:9px 12px;transition:border-color .12s,box-shadow .12s}input:hover,textarea:hover,select:hover{border-color:var(--muted)}input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}input:disabled,select:disabled{background:var(--panel-2);color:var(--muted)}input::placeholder,textarea::placeholder{color:var(--muted);opacity:.8}textarea{resize:vertical}button{border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--panel);cursor:pointer;white-space:nowrap;box-shadow:var(--shadow-sm);padding:8px 14px;font-weight:500;transition:background .12s,border-color .12s,transform 60ms}button:hover{background:var(--panel-2);border-color:var(--muted)}button:active{transform:translateY(1px)}button.primary{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}button.primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}button.danger{color:var(--danger)}button.danger:hover{background:var(--danger-soft);border-color:var(--danger)}button:disabled{opacity:.5;cursor:default;transform:none}.switch{cursor:pointer;align-items:center;gap:8px;font-size:14px;display:inline-flex}.switch input{width:auto;accent-color:var(--accent);width:16px;height:16px;box-shadow:none}.page{max-width:920px;margin:0 auto;padding:28px 24px 80px}.page>h1+.hint,.page>h1+p.hint{margin-top:0;margin-bottom:20px}.card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:16px;padding:18px 20px}.card h2{margin:0 0 12px;font-size:16px}.field{margin-bottom:14px}.field label{color:var(--muted);margin-bottom:5px;font-size:13px;font-weight:500;display:block}.hint{color:var(--muted);font-size:13px}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.error{color:var(--danger);font-size:13px}code{background:var(--panel-2);border:1px solid var(--border);word-break:break-all;border-radius:6px;padding:1px 6px;font-size:12.5px}.grid2{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:0 16px;display:grid}.list-item{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.mono{font-family:ui-monospace,Cascadia Code,Consolas,monospace;font-size:13px;line-height:1.5}.table-wrap{overflow-x:auto}.page>.row[style*=sticky]{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:10px 12px}.tabs{background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:12px;flex-wrap:wrap;gap:4px;margin-bottom:18px;padding:4px;display:inline-flex}.tabs button{box-shadow:none;background:0 0;border:none;border-radius:9px;padding:6px 14px}.tabs button:hover{background:var(--panel-2)}.tabs button.active{background:var(--accent);color:var(--accent-text)}details.card>summary{cursor:pointer;align-items:center;gap:8px;font-weight:600;list-style:none;display:flex}details.card>summary::-webkit-details-marker{display:none}details.card>summary:after{content:"›";color:var(--muted);margin-left:auto;font-size:20px;transition:transform .15s}details.card[open]>summary:after{transform:rotate(90deg)}details.card[open]>summary{margin-bottom:4px}pre.context{white-space:pre-wrap;background:var(--panel-2);border:1px solid var(--border);border-radius:10px;max-height:480px;padding:12px;font-size:12px;overflow:auto}.badge{color:#fff;vertical-align:middle;border-radius:999px;padding:1px 8px;font-size:11px;font-weight:600;line-height:18px;display:inline-block}.badge.line{background:var(--line)}.badge.facebook{background:var(--facebook)}.badge.tiktok{background:var(--tiktok);color:var(--bg)}.badge.test{background:var(--test)}.pill{white-space:nowrap;border-radius:999px;padding:3px 10px;font-size:12px;font-weight:500}.pill.ok{background:var(--ok-soft);color:var(--ok)}.pill.warn{background:var(--warn-bg);color:var(--warn-text)}.unread{background:var(--danger);color:#fff;border-radius:999px;padding:0 7px;font-size:11px;font-weight:600;line-height:18px;display:inline-block}.price-table{border-collapse:separate;border-spacing:0;width:100%}.price-table th{text-align:left;color:var(--muted);white-space:nowrap;border-bottom:1px solid var(--border);padding:6px 4px;font-size:12px;font-weight:600}.price-table td{vertical-align:top;padding:3px 4px}.price-table input,.price-table select{border-radius:8px;min-width:70px;padding:5px 8px;font-size:13px}.price-table td:first-child input{min-width:180px}.price-table select{min-width:110px}.price-table tr.brand td{padding-top:16px;font-weight:600}.price-table button{box-shadow:none;padding:4px 9px}.row-issue{color:var(--issue);font-size:12px}.inbox{grid-template-columns:340px 1fr;height:100%;display:grid}.contacts{border-right:1px solid var(--border);background:var(--panel);overflow-y:auto}.contacts>div:first-child{background:var(--panel);z-index:1;position:sticky;top:0}.contact{cursor:pointer;border-bottom:1px solid var(--border);border-left:3px solid #0000;align-items:center;gap:12px;padding:12px 14px;transition:background .1s;display:flex}.contact:hover{background:var(--panel-2)}.contact.selected{background:var(--accent-soft);border-left-color:var(--accent)}.avatar{object-fit:cover;background:var(--bubble-in);width:42px;height:42px;color:var(--muted);box-shadow:0 0 0 2px var(--panel), 0 0 0 4px var(--border);border-radius:50%;flex:none;place-items:center;font-weight:600;display:grid}.contact .meta{flex:1;min-width:0}.contact .name{align-items:center;gap:6px;font-weight:600;display:flex}.contact .last{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.chat{background:var(--bg);flex-direction:column;min-width:0;min-height:0;display:flex}.chat-head{background:var(--panel);border-bottom:1px solid var(--border);box-shadow:var(--shadow-sm);flex-wrap:wrap;align-items:center;gap:10px;padding:12px 18px;display:flex}.chat-head button{padding:6px 12px;font-size:13px}.messages{flex-direction:column;flex:1;gap:10px;padding:20px;display:flex;overflow-y:auto}.msg{white-space:pre-wrap;word-break:break-word;max-width:72%;box-shadow:var(--shadow-sm);border-radius:16px;padding:10px 14px;line-height:1.6}.msg.customer{background:var(--panel);border:1px solid var(--border);border-bottom-left-radius:6px;align-self:flex-start}.msg.bot{background:var(--bubble-bot);border-bottom-right-radius:6px;align-self:flex-end}.msg.admin{background:var(--bubble-admin);border-bottom-right-radius:6px;align-self:flex-end}.msg .info{color:var(--muted);margin-top:6px;font-size:11px}.composer{background:var(--panel);border-top:1px solid var(--border);align-items:flex-end;gap:10px;padding:14px 18px;display:flex}.composer textarea{border-radius:14px;flex:1}.composer button{padding:10px 20px}.empty{height:100%;color:var(--muted);text-align:center;place-items:center;padding:16px;font-size:15px;display:grid}.empty:before{content:"💬";opacity:.6;margin-bottom:8px;font-size:44px;display:block}.back{display:none}@media (max-width:900px){.shell{grid-template-rows:auto 1fr;grid-template-columns:1fr}.sidebar{flex-direction:row;align-items:center;gap:6px;padding:8px 10px;overflow:auto hidden}.sidebar-brand{padding:0 6px 0 0}.sidebar-brand span:last-child{display:none}.sidebar-links,.sidebar-group{flex-direction:row;gap:2px}.sidebar-title{display:none}.sidebar a{padding:6px 10px}.sidebar-foot{border:none;flex:none;padding:0}.theme-toggle button{padding:4px 8px}}@media (max-width:720px){.page{padding:20px 16px 60px}.inbox{grid-template-columns:1fr}.inbox.has-selection .contacts,.inbox:not(.has-selection) .chat{display:none}.back{display:inline-block}.msg{max-width:88%}.sidebar a .label{display:none}.sidebar a.active .label{display:inline}}.notes-panel{border-bottom:1px solid var(--border);background:var(--panel);padding:8px 16px}.linkish{color:var(--muted);cursor:pointer;box-shadow:none;background:0 0;border:none;padding:0;font-size:13px}.linkish:hover{color:var(--accent);background:0 0}.msg-photo{object-fit:cover;border-radius:10px;max-width:220px;max-height:260px;margin-bottom:6px;display:block}.typing-dots span{opacity:.4;background:currentColor;border-radius:50%;width:6px;height:6px;margin:0 2px;animation:1.2s infinite typing-dot;display:inline-block}.typing-dots span:nth-child(2){animation-delay:.2s}.typing-dots span:nth-child(3){animation-delay:.4s}@keyframes typing-dot{0%,60%,to{opacity:.25;transform:translateY(0)}30%{opacity:.9;transform:translateY(-3px)}}.natural-score{font-weight:600}.stats{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;margin-bottom:14px;display:grid}.stat{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:12px 14px}.stat strong{margin-top:2px;font-size:22px;display:block}.sidebar .count.danger{color:#fff;background:#ef4444}.sidebar .count.muted{color:inherit;background:#ffffff2e}.alert-card{border-left:4px solid var(--border);border-radius:0 12px 12px 0;align-items:flex-start;gap:12px;display:flex}.alert-card.danger{border-left-color:#ef4444}.alert-card.warn{border-left-color:#f59e0b}.alert-card.info{border-left-color:var(--accent)}.alert-card .alert-icon{font-size:20px;line-height:1.4}label.button-like{border:1px solid var(--border-strong);background:var(--panel);cursor:pointer;border-radius:9px;align-items:center;gap:6px;padding:7px 14px;font-size:14px;display:inline-flex}label.button-like:hover{background:var(--panel-2)}.shell:has(.login-page){grid-template-columns:1fr}.login-page{background:var(--bg);place-items:center;min-height:100vh;padding:16px;display:grid}.login-card{text-align:left;width:100%;max-width:360px}.login-card h1{margin:6px 0 2px}.login-logo{background:linear-gradient(135deg,#3b82f6,#06c755);border-radius:14px;place-items:center;width:48px;height:48px;font-size:24px;display:grid}.sidebar-foot .logout{color:inherit;background:0 0;border:1px solid #ffffff24;width:100%;margin-top:8px;padding:5px 10px;font-size:12px}.sidebar-foot .logout:hover{background:#ffffff14}.shell:has(.public-page){grid-template-columns:1fr}.public-page{background:var(--bg);min-height:100vh;padding:32px 16px}.public-doc{max-width:760px;margin:0 auto;line-height:1.75}.public-doc h2{margin-top:20px}.public-doc hr{border:none;border-top:1px solid var(--border);margin:28px 0}
