:root{background:#eef2f6;color:#1d2733;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px}html,body,#root{min-height:100%}button,input,select,textarea{font:inherit}button{border:0;border-radius:8px;cursor:pointer;font-weight:700}button:disabled{cursor:not-allowed;opacity:.6}.login-page{align-items:center;display:flex;justify-content:center;min-height:100vh;padding:24px}.login-panel{background:#fff;border:1px solid #d9e1ea;border-radius:8px;box-shadow:0 16px 50px #1c273314;max-width:420px;padding:28px;width:100%}.brand,.muted,.state-text,.error-text{margin:0}.brand{color:#19615c;font-weight:800}.brand span{color:#6a7787;font-size:.85rem;font-weight:600;margin-left:8px}.login-panel h1{font-size:1.45rem;margin:18px 0 8px}.muted,.state-text{color:#687789;font-size:.9rem}.error-text{background:#fff2f0;border:1px solid #ffd0ca;border-radius:8px;color:#a33a2a;font-size:.9rem;padding:10px 12px}.login-form{display:grid;gap:14px;margin-top:22px}label{color:#526174;display:grid;font-size:.84rem;font-weight:700;gap:7px}input,select,textarea{background:#fff;border:1px solid #cbd6e2;border-radius:8px;color:#1d2733;outline:none}input,select{min-height:40px;padding:9px 11px}textarea{min-height:72px;padding:11px;resize:none}input:focus,select:focus,textarea:focus{border-color:#23766f;box-shadow:0 0 0 3px #23766f1f}.login-form button,.composer button,.panel-header button{background:#23766f;color:#fff;min-height:40px;padding:0 14px}.app-lock-page{align-items:center;background:#eef2f6;display:flex;justify-content:center;min-height:100vh;padding:24px}.app-lock-card{background:#fff;border:1px solid #d9e1ea;border-radius:8px;box-shadow:0 16px 50px #1c273314;display:grid;gap:16px;max-width:400px;padding:28px;width:100%}.app-lock-card h1{font-size:1.35rem;margin:0}.app-lock-form,.app-lock-settings-form{display:grid;gap:12px}.app-lock-actions{display:flex;flex-wrap:wrap;gap:8px}.app-lock-actions button,.app-lock-settings-form button,.app-lock-form button{background:#23766f;color:#fff;min-height:38px;padding:0 12px}.link-button{background:transparent;color:#23766f;justify-self:start;min-height:32px;padding:0}.danger-link{color:#b42318}.mobile-app-lock-section{display:none}.workspace{display:grid;grid-template-columns:84px minmax(280px,360px) minmax(420px,1fr) minmax(260px,320px);height:100vh;overflow:hidden}.wide-workspace{grid-template-columns:84px 1fr}.nav-rail,.conversation-list,.chat-panel,.details-panel{min-height:0}.mobile-tab-bar,.mobile-back-button{display:none}.nav-rail{background:#132326;color:#fff;display:flex;flex-direction:column;gap:10px;padding:16px 10px}.nav-brand{font-size:.95rem;font-weight:800;margin-bottom:10px;text-align:center}.nav-item,.nav-footer button{background:transparent;color:#b7c6c8;min-height:38px}.nav-item{align-items:center;display:inline-flex;gap:6px;justify-content:center;position:relative}.nav-item.active{background:#234246;color:#fff}.nav-badge{align-items:center;background:#ef4444;border-radius:999px;color:#fff;display:inline-flex;font-size:.72rem;font-weight:800;justify-content:center;line-height:1;min-width:18px;padding:3px 5px}.nav-footer{display:grid;gap:8px;margin-top:auto;text-align:center}.nav-footer span{color:#d8e2e3;font-size:.8rem;overflow:hidden;text-overflow:ellipsis}.conversation-list{background:#f7f9fb;border-right:1px solid #d9e1ea;display:flex;flex-direction:column;overflow:hidden}.panel-header,.chat-header{align-items:center;border-bottom:1px solid #d9e1ea;display:flex;justify-content:space-between;min-height:72px;padding:14px 16px}.panel-header h2,.chat-header h2{font-size:1.05rem;margin:0}.panel-header p,.chat-header p{color:#687789;font-size:.84rem;margin:4px 0 0}.search-input{margin:14px 14px 10px}.filters{display:flex;gap:6px;overflow-x:auto;padding:0 14px 12px}.filters button{background:#e8eef4;color:#526174;flex:0 0 auto;min-height:32px;padding:0 10px}.filters button.active{background:#d7ebe8;color:#19615c}.conversation-items{display:grid;gap:8px;overflow-y:auto;padding:0 12px 14px}.conversation-row{background:#fff;border:1px solid #dce4ed;display:grid;gap:7px;padding:12px;text-align:left}.conversation-row.selected{border-color:#23766f;box-shadow:inset 3px 0 #23766f}.conversation-row.unread{background:#f8fbff;border-color:#bfdbfe}.conversation-row.archived{background:#f4f6f8;border-style:dashed}.bulk-bar,.archive-banner,.action-row{align-items:center;display:flex;gap:8px}.bulk-bar{background:#fff;border-bottom:1px solid #d9e1ea;border-top:1px solid #d9e1ea;flex-wrap:wrap;padding:10px 14px}.bulk-bar span{color:#526174;font-size:.82rem;font-weight:800}.bulk-bar button,.action-row button{background:#e8eef4;color:#526174;min-height:32px;padding:0 10px}.archive-banner{background:#fff7df;border-bottom:1px solid #f1d690;color:#82610c;font-size:.86rem;font-weight:700;margin:0;padding:10px 16px}.row-check{align-items:center;display:inline-flex;gap:4px}.row-check input{min-height:auto;width:auto}.unread-dot{background:#2563eb;border-radius:999px;display:inline-block;height:8px;margin-right:6px;width:8px}.unread-count{background:#2563eb;border-radius:999px;color:#fff;display:inline-flex;font-weight:800;justify-content:center;min-width:20px;padding:1px 6px}.row-top,.row-meta{align-items:center;display:flex;justify-content:space-between}.row-top strong,.preview{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row-top time,.row-meta,.message-bubble time{color:#7d8a9a;font-size:.76rem}.preview{color:#526174;font-size:.88rem}.row-meta{gap:8px}.chat-panel{background:#fff;display:grid;grid-template-rows:auto 1fr auto;min-width:0;position:relative}.socket-pill{background:#edf2f7;border-radius:999px;color:#526174;font-size:.78rem;font-weight:700;padding:6px 10px}.socket-pill.connected{background:#dff4ea;color:#177044}.messages{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:18px;touch-action:pan-y;will-change:scroll-position}.messages-content{align-content:start;contain:layout paint;display:grid;gap:12px;min-height:100%}.new-messages-button{align-self:center;background:#244c5a;border:0;border-radius:999px;bottom:90px;box-shadow:0 12px 28px #244c5a3d;color:#fff;cursor:pointer;font-size:.78rem;font-weight:800;justify-self:center;padding:7px 12px;position:absolute;z-index:4}.message{display:flex;overflow-anchor:none}.message.outgoing{justify-content:flex-end}.message.system{justify-content:center}.message-bubble{background:#f0f4f8;border-radius:8px;max-width:min(620px,76%);padding:10px 12px;-webkit-touch-callout:default;-webkit-user-select:text;user-select:text}.message-bubble.copyable-message{cursor:default}.copy-toast{align-self:center;background:#0f172adb;border-radius:999px;bottom:104px;color:#fff;font-size:.76rem;font-weight:800;justify-self:center;padding:6px 11px;pointer-events:none;position:absolute;z-index:5}.message.outgoing .message-bubble{background:#dff4ea}.message.system .message-bubble{background:#fff6da}.message-bubble p{margin:0 0 6px;white-space:pre-wrap}.message-attachments{display:grid;gap:8px;margin:4px 0 8px}.image-attachment{background:transparent;border:0;border-radius:8px;max-width:280px;overflow:hidden;padding:0}.image-attachment img{display:block;max-height:220px;max-width:100%;object-fit:contain}.authenticated-image-state{align-items:center;background:#f1f5f9;color:#526174;display:flex;font-size:.78rem;font-weight:800;justify-content:center;min-height:96px;min-width:160px;padding:12px}.authenticated-image-state.error{background:#fff2f0;color:#a33a2a}.authenticated-image-state.lightbox{min-height:320px;min-width:min(640px,80vw)}.delivery-state{align-items:center;color:#526174;display:flex;font-size:.74rem;font-weight:800;gap:8px;justify-content:flex-end;margin-top:6px}.delivery-state.sent{color:#177044}.delivery-state.pending{color:#82610c}.delivery-state.failed{color:#a33a2a}.delivery-state button{background:#fff2f0;color:#a33a2a;min-height:26px;padding:0 8px}.type-chip{color:#687789;display:block;font-size:.72rem;font-weight:800;margin-bottom:4px}.composer{border-top:1px solid #d9e1ea;position:relative;z-index:2;display:grid;gap:10px;grid-template-columns:auto 1fr auto;padding:14px}.composer.drop-active{background:#eef7ff}.composer textarea{min-height:44px}.draft-attachments{display:flex;flex-wrap:wrap;gap:8px;grid-column:1 / -1}.draft-image{align-items:center;background:#f7fafc;border:1px solid #d9e1ea;border-radius:8px;display:grid;gap:6px;grid-template-columns:44px minmax(0,120px) auto;padding:6px}.draft-image img{border-radius:6px;height:44px;object-fit:cover;width:44px}.draft-image span{color:#526174;font-size:.76rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.draft-image button{min-height:28px;padding:0 8px}.empty-chat{align-items:center;color:#687789;display:flex;height:100%;justify-content:center}.details-panel{align-content:start;background:#fbfcfd;border-left:1px solid #d9e1ea;display:grid;gap:16px;overflow-y:auto;padding:16px}.details-panel section{display:grid;gap:12px}.details-panel h3{font-size:.95rem;margin:0}dl{display:grid;gap:8px;margin:0}dt{color:#7d8a9a;font-size:.78rem;font-weight:800}dd{margin:0;overflow-wrap:anywhere}.page-grid{display:grid;grid-template-columns:minmax(280px,360px) 1fr;min-height:0;overflow:hidden}.list-panel{background:#f7f9fb;border-right:1px solid #d9e1ea;display:flex;flex-direction:column;min-height:0}.detail-workspace,.settings-page{align-content:start;display:grid;gap:14px;overflow-y:auto;padding:16px}.settings-page{grid-template-columns:repeat(2,minmax(300px,1fr))}.surface{background:#fff;border:1px solid #dce4ed;border-radius:8px;display:grid;gap:12px;padding:14px}.danger-surface{border-color:#ffd0ca}.surface h2,.surface h3{margin:0}.inline-form{display:grid;gap:10px}.inline-form.four{grid-template-columns:repeat(4,minmax(120px,1fr)) auto}.tag-list{display:flex;flex-wrap:wrap;gap:6px}.tag{background:#e8eef4;border:0;border-radius:999px;color:#526174;display:inline-flex;font-size:.78rem;font-weight:800;min-height:26px;padding:5px 9px}.tag.green{background:#dff4ea;color:#177044}.tag.blue{background:#deebff;color:#2458a7}.tag.gold{background:#fff2c7;color:#82610c}.tag.purple{background:#eee5ff;color:#6841a8}.tag.danger{background:#fff2f0;color:#a33a2a}.note-list{display:grid;gap:8px}.note-card,.settings-row,.history-row{background:#f7f9fb;border:1px solid #dce4ed;border-radius:8px;display:grid;gap:6px;padding:10px;text-align:left}.settings-row{align-items:center;grid-template-columns:minmax(0,1fr) auto}.notification-settings-section .state-text,.notification-settings-section .error-text,.note-card p{margin:0}.note-card time,.settings-row span,.history-row span{color:#687789;font-size:.82rem}.customer-meta,.details-panel dl{display:grid;gap:8px 12px;grid-template-columns:72px minmax(0,1fr);margin:0}.customer-meta dt,.details-panel dt{color:#687789;font-size:.82rem}.customer-meta dd,.details-panel dd{margin:0;min-width:0;overflow-wrap:anywhere}.remark-box{background:#f7f9fb;border:1px solid #dce4ed;border-radius:8px;display:grid;gap:8px;padding:10px}.remark-box span{color:#687789;font-size:.82rem;font-weight:800}.remark-box p{margin:0;overflow-wrap:anywhere;white-space:pre-wrap}.remark-box button{justify-self:start;min-height:32px;padding:0 10px}.settings-row{align-items:center;grid-template-columns:1fr auto auto}.history-row{width:100%}.section-label{color:#526174;font-size:.78rem;letter-spacing:0;margin:14px 16px 6px}.section-label.compact{margin:4px 2px 0}.provider-grid{display:grid;gap:8px;padding:0 16px 16px}.provider-card{background:#fff;border:1px solid #dce4ed;border-radius:8px;display:grid;gap:6px;padding:10px}.provider-card span{color:#687789;font-size:.82rem}.provider-card.disabled{opacity:.72}.surface-heading{align-items:start;display:flex;gap:12px;justify-content:space-between}.surface-heading p{color:#687789;margin:4px 0 0}.action-row{display:flex;flex-wrap:wrap;gap:8px}.danger-button{background:#c24132;color:#fff}.modal-backdrop{align-items:center;background:#0f172a47;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:20}.lightbox{align-items:center;background:#0f172ab8;display:flex;inset:0;justify-content:center;padding:24px;position:fixed;z-index:30}.lightbox-panel{display:grid;gap:12px;justify-items:end;max-height:94vh;max-width:94vw}.lightbox-panel img{background:#fff;border-radius:8px;max-height:86vh;max-width:94vw;object-fit:contain}.confirm-dialog{background:#fff;border:1px solid #dce4ed;border-radius:8px;box-shadow:0 20px 70px #1c273333;display:grid;gap:12px;max-width:440px;padding:18px;width:100%}.confirm-dialog h3,.confirm-dialog p{margin:0}.confirm-dialog p{color:#526174;line-height:1.55}.remark-dialog textarea{min-height:150px}.compact-dl{display:grid;gap:8px 16px;grid-template-columns:120px 1fr;margin:0}.compact-dl dt{color:#687789}.compact-dl dd{margin:0}.origin-list{display:flex;flex-wrap:wrap;gap:8px}.origin-pill{align-items:center;background:#eef4f8;border:1px solid #d9e1ea;border-radius:999px;display:inline-flex;gap:8px;min-height:30px;padding:4px 6px 4px 10px}.origin-pill button{min-height:22px;padding:0 8px}.embed-code{background:#14202b;border-radius:8px;color:#eaf2f8;margin:0;overflow-x:auto;padding:12px;white-space:pre-wrap}.quick-replies{border-top:1px solid #d9e1ea;display:flex;flex-wrap:wrap;gap:8px;padding:10px 14px 0;position:relative}.quick-replies button{background:#e8eef4;color:#526174;min-height:30px;padding:0 10px}.reply-picker{background:#fff;border:1px solid #cbd6e2;border-radius:8px;bottom:46px;box-shadow:0 16px 50px #1c27331f;display:grid;gap:4px;left:14px;max-height:220px;overflow-y:auto;padding:8px;position:absolute;width:min(360px,calc(100% - 28px));z-index:5}.context-menu{background:#fff;border:1px solid #cbd6e2;border-radius:8px;box-shadow:0 18px 54px #1c27332e;display:grid;gap:4px;min-width:190px;padding:8px;position:fixed;z-index:30}.context-menu button,.context-menu label{justify-content:flex-start;min-height:32px;text-align:left;width:100%}.context-menu select{margin-top:6px;width:100%}.menu-holder{position:relative}.inline-menu{position:absolute;right:0;top:38px}.danger-button{color:#b42318}@media(max-width:1180px){.workspace{grid-template-columns:72px minmax(260px,340px) minmax(360px,1fr)}.details-panel{display:none}.settings-page{grid-template-columns:1fr}}@media(max-width:768px){:root{background:#f7f9fb}html,body,#root{height:100%;overflow:hidden}body{width:100%}button,input,select,textarea{font-size:16px}.login-page,.app-lock-page{align-items:stretch;min-height:100dvh;overflow-y:auto;padding:calc(18px + env(safe-area-inset-top)) max(16px,env(safe-area-inset-left)) calc(18px + env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-right))}.login-panel,.app-lock-card{align-self:center;box-shadow:0 16px 42px #1c27331a;padding:22px}.workspace{display:grid;grid-template-columns:minmax(0,1fr);height:100dvh;min-height:100dvh;overflow:hidden;width:100%}.wide-workspace{grid-template-columns:minmax(0,1fr)}.nav-rail{display:none}.conversation-list,.list-panel,.chat-panel{border:0;min-height:0;width:100%}.panel-header,.chat-header{min-height:64px;padding:calc(10px + env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) 10px max(14px,env(safe-area-inset-left))}.panel-header{align-items:flex-start}.panel-header h2,.chat-header h2{font-size:1rem}.panel-header p,.chat-header p{font-size:.78rem}.search-input{margin:10px 12px;width:calc(100% - 24px)}.filters{padding:0 12px 10px}.bulk-bar{padding:8px 12px}.conversation-items{gap:8px;padding:0 10px calc(88px + env(safe-area-inset-bottom))}.conversation-row{border-radius:8px;padding:12px}.row-top,.row-meta{gap:8px;min-width:0}.row-top strong,.preview{min-width:0}.row-meta{flex-wrap:wrap;justify-content:flex-start}.view-inbox:not(.mobile-detail-active) .conversation-list{display:flex;height:100dvh}.view-inbox:not(.mobile-detail-active) .chat-panel,.view-inbox .details-panel{display:none}.view-inbox.mobile-detail-active .conversation-list{display:none}.view-inbox.mobile-detail-active .chat-panel{display:grid;grid-template-areas:"chat-header" "archive" "messages" "quick-replies" "composer";grid-template-rows:auto auto minmax(0,1fr) auto auto;height:100dvh;min-height:100dvh}.chat-header{grid-area:chat-header;gap:10px;justify-content:flex-start}.view-inbox.mobile-detail-active .archive-banner{grid-area:archive}.chat-header>div{min-width:0}.chat-header .action-row{margin-left:auto}.chat-header .socket-pill{display:none}.mobile-back-button{background:#e8eef4;color:#244c5a;display:inline-flex;flex:0 0 auto;min-height:34px;padding:0 10px}.messages{grid-area:messages;min-height:0;overscroll-behavior:contain;padding:14px 12px}.messages-content{align-content:end}.message-bubble{max-width:min(82vw,620px)}.new-messages-button{bottom:calc(114px + env(safe-area-inset-bottom))}.copy-toast{bottom:calc(126px + env(safe-area-inset-bottom))}.quick-replies{grid-area:quick-replies;flex-wrap:nowrap;overflow-x:auto;padding:8px 12px 0}.quick-replies button{flex:0 0 auto}.composer{align-items:end;gap:8px;grid-area:composer;grid-template-columns:auto minmax(0,1fr) auto;padding:10px max(12px,env(safe-area-inset-right)) calc(10px + env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))}.composer textarea{max-height:118px;min-height:44px}.composer button{min-height:40px;padding:0 12px}.draft-image{grid-template-columns:38px minmax(0,1fr) auto}.draft-image img{height:38px;width:38px}.page-grid{display:grid;grid-template-columns:minmax(0,1fr);height:100dvh;min-height:100dvh}.view-customers:not(.mobile-customer-detail-active) .list-panel{display:flex;height:100dvh;padding-bottom:env(safe-area-inset-bottom)}.view-customers:not(.mobile-customer-detail-active) .detail-workspace{display:none}.view-customers.mobile-customer-detail-active .list-panel{display:none}.view-customers.mobile-customer-detail-active .detail-workspace{display:grid;height:100dvh;overflow-y:auto;padding:calc(12px + env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) calc(18px + env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))}.mobile-heading-with-back{align-items:center;display:flex;gap:10px;min-width:0}.surface-heading{align-items:stretch;display:grid;gap:10px}.surface-heading .action-row{justify-content:flex-start}.inline-form,.inline-form.four{grid-template-columns:minmax(0,1fr)}.settings-page{display:grid;grid-template-columns:minmax(0,1fr);height:100dvh;overflow-y:auto;padding:calc(14px + env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) calc(90px + env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))}.mobile-app-lock-section{display:grid}.app-lock-actions{display:grid;grid-template-columns:minmax(0,1fr)}.compact-dl,.customer-meta,.details-panel dl{grid-template-columns:82px minmax(0,1fr)}.mobile-tab-bar{align-items:center;background:#fffffff5;border-top:1px solid #d9e1ea;bottom:0;box-shadow:0 -12px 32px #1c273314;display:grid;gap:6px;grid-template-columns:repeat(3,minmax(0,1fr));left:0;padding:8px max(10px,env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left));position:fixed;right:0;z-index:15}.mobile-tab-bar button{align-items:center;background:transparent;color:#687789;display:inline-flex;gap:4px;justify-content:center;min-height:42px}.mobile-tab-bar button.active{background:#d7ebe8;color:#19615c}.modal-backdrop{padding:max(16px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))}}
