/* Scoped communication layer. Original corporate / commerce / ERP structure is untouched. */
.comm-dock{position:fixed;right:18px;bottom:26px;z-index:940;display:flex;flex-direction:column;gap:10px;align-items:center}.comm-fab{width:46px;height:46px;border:1px solid #d9e6ed;background:#fff;color:#0568a9;border-radius:50%;box-shadow:0 5px 18px #12334a22;position:relative;display:grid;place-items:center;cursor:pointer;padding:10px}.comm-fab svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.comm-fab.external{color:#b65c15}.comm-fab.phone{color:#248a63}.comm-fab:hover,.comm-fab:focus-visible{background:#edf6fc;outline:3px solid #83beeb;outline-offset:2px}.comm-fab b{position:absolute;right:-3px;top:-3px;min-width:18px;height:18px;border-radius:12px;background:#e76c20;color:white;font:700 11px/18px system-ui;text-align:center;padding:0 3px}.comm-fab b[hidden]{display:none}.floating-actions.comm-unified{right:16px!important;bottom:20px!important;gap:9px!important;display:flex;flex-direction:column;align-items:center}.floating-actions.comm-unified .float-shop,.floating-actions.comm-unified .float-btn{width:46px!important;height:46px!important;min-width:46px!important;margin:0!important;padding:7px!important;display:grid;place-items:center}.floating-actions.comm-unified .float-shop img{width:34px!important;height:34px!important}.floating-actions.comm-unified .float-btn svg{width:26px!important;height:26px!important}
.comm-modal{font:17px/1.55 Arial,Helvetica,sans-serif;color:#173348;position:fixed;inset:0;margin:auto;width:min(1240px,calc(100vw - 32px));max-width:calc(100vw - 24px);height:min(830px,calc(100dvh - 32px));max-height:calc(100dvh - 24px);padding:0;border:1px solid #d8e6f0;border-radius:24px;box-shadow:0 26px 100px #07273955;overflow:hidden;background:#fff;box-sizing:border-box}.comm-modal::backdrop{background:#112c4699;backdrop-filter:blur(4px)}.comm-modal *{box-sizing:border-box}.comm-modal[open]{display:flex;flex-direction:column}.comm-head{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:22px 28px;border-bottom:1px solid #e1eaf1;background:#f7fafc;flex-shrink:0}.comm-head h2{font-size:27px;color:#173348;line-height:1.25;margin:4px 0}.comm-head button{background:#fff;color:#173348;border:1px solid #d5e5ed;width:44px;height:44px;border-radius:50%;font-size:27px;cursor:pointer;flex-shrink:0}.comm-eyebrow{color:#0767a9;font-size:11px;font-weight:800;letter-spacing:2px}.comm-muted{font-size:14px;color:#627b8d}.comm-modal button,.comm-modal input,.comm-modal select,.comm-modal textarea{font:inherit}.comm-modal button{cursor:pointer}.comm-modal button:disabled{opacity:.55;cursor:not-allowed}.comm-modal :focus-visible{outline:3px solid #76b7e6;outline-offset:2px}.comm-modal label{display:flex;flex-direction:column;gap:7px;font-size:16px;font-weight:600}.comm-modal input,.comm-modal textarea,.comm-modal select{width:100%;padding:12px 14px;color:#173348;background:white;border:1px solid #c7d9e5;border-radius:11px;min-width:0;font-size:17px}.comm-modal textarea{resize:vertical;min-height:100px}.comm-modal input[type=checkbox]{width:auto;accent-color:#0669b2}.comm-modal select[multiple]{min-height:140px}.comm-button{border:1px solid #096bab;background:#096bab;color:#fff;padding:11px 17px;border-radius:11px;font-weight:700}.comm-button.light{border-color:#d3e1e9;background:#fff;color:#164363}.comm-button.danger{background:#b93b42;border-color:#b93b42;color:white}.comm-button.green{background:#1a825c;border-color:#1a825c}.comm-tools{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:16px 22px;border-bottom:1px solid #e2ecf2}.comm-tools input{flex:1;min-width:160px}.comm-tools select{width:auto}.comm-tabs{display:flex;gap:6px;padding:12px 20px;background:#fff;border-bottom:1px solid #e1eaf1}.comm-tabs button{padding:12px 16px;border:0;background:transparent;color:#456078;border-radius:10px;font-weight:700}.comm-tabs button.active{background:#eaf4fc;color:#0669b2}.comm-split{display:grid;grid-template-columns:330px minmax(0,1fr);flex:1;min-height:0}.comm-list{overflow:auto;border-right:1px solid #e1eaf1;background:#fbfdff}.comm-thread-item{display:block;width:100%;text-align:left;border:0;border-bottom:1px solid #e7eef4;background:transparent;padding:18px 20px;color:#173348}.comm-thread-item.active{background:#eaf4fc;border-left:4px solid #076bac;padding-left:16px}.comm-thread-item strong{display:block;font-size:17px;overflow-wrap:anywhere}.comm-thread-item small{display:block;color:#6b8293;font-size:13px}.comm-thread-item b{background:#0872b5;border-radius:12px;color:#fff;padding:2px 8px;float:right;font-size:12px}.comm-thread-view{display:flex;flex-direction:column;min-width:0;min-height:0}.comm-thread-top{padding:18px 22px;border-bottom:1px solid #e3ecf3;display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.comm-thread-top h3{font-size:20px;margin:0;overflow-wrap:anywhere}.comm-thread-actions{display:flex;gap:8px;flex-wrap:wrap}.comm-thread-actions button{font-size:13px;padding:7px 10px}.comm-messages{padding:22px;flex:1;overflow:auto;background:linear-gradient(135deg,#f8fbfd,#fff);display:flex;flex-direction:column;gap:12px}.comm-bubble{max-width:85%;align-self:flex-start;background:#edf3f8;border:1px solid #e0e9ef;border-radius:16px 16px 16px 3px;padding:12px 16px;overflow-wrap:anywhere}.comm-bubble.mine{align-self:flex-end;background:#e8f4ff;border-color:#d3e7f8;border-radius:16px 16px 3px 16px}.comm-bubble .comm-body{white-space:pre-wrap;font-size:17px}.comm-bubble small{display:block;font-size:11px;color:#5d7689}.comm-bubble button{font-size:11px;padding:0;border:0;background:transparent;color:#6e8190}.comm-reply{display:flex;gap:12px;align-items:flex-end;padding:16px 20px;background:white;border-top:1px solid #dfeaf2}.comm-reply label{flex:1}.comm-reply textarea{min-height:74px;max-height:180px}.comm-empty{padding:45px 24px;text-align:center;color:#647f91;margin:auto;max-width:650px}.comm-empty strong{display:block;font-size:24px;color:#1e425c;margin-bottom:10px}.comm-form{padding:26px;display:grid;gap:20px}.comm-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.comm-form .wide{grid-column:1/-1}.comm-compose-modal{max-width:880px;height:auto;max-height:calc(100dvh - 32px)}#commComposeContent{overflow:auto}.comm-tip{padding:12px 16px;border-radius:12px;background:#edf6fc;color:#355d76;font-size:14px}.comm-error{padding:12px 20px;background:#fff0ef;color:#9d2e33;white-space:pre-wrap}.comm-error:empty{display:none}#commNotice:not(:empty){padding:12px 22px;color:#9d2e33;background:#fff0ef}#commContent{display:flex;flex-direction:column;flex:1;min-height:0;overflow:auto}.comm-directory{padding:22px;overflow:auto}.comm-user{display:flex;align-items:center;gap:14px;padding:16px;border:1px solid #e0eaf2;border-radius:14px;margin-bottom:12px}.comm-user>span{display:grid;place-items:center;background:#e9f3fc;width:44px;height:44px;border-radius:13px;color:#0669b2;font-size:21px;font-weight:bold}.comm-user>strong{flex:1;overflow-wrap:anywhere}.comm-user button{font-size:14px}.comm-history{width:100%;border-collapse:collapse}.comm-history td,.comm-history th{padding:14px;border-bottom:1px solid #e4edf3;text-align:left;font-size:15px}.comm-incoming{position:fixed;right:78px;bottom:26px;z-index:1200;padding:17px 22px;box-shadow:0 8px 30px #18344933;border:1px solid #c4e3d5;border-radius:16px;background:white;display:flex;align-items:center;gap:16px;max-width:calc(100vw - 96px);color:#173348;font:16px/1.4 Arial}.comm-incoming[hidden]{display:none}.comm-incoming button{background:#1a825c;color:white;border:0;padding:10px 16px;border-radius:10px}.comm-call-modal{max-width:850px;height:auto}.comm-call-stage{text-align:center;overflow:auto;padding:32px}.comm-call-avatar{width:94px;height:94px;margin:0 auto 18px;display:grid;place-items:center;border-radius:30px;background:#e7f4ff;color:#086eae;font-size:38px;font-weight:bold}.comm-video-grid{display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap}.comm-video-grid video{display:none;background:#173348;border-radius:14px;max-width:100%;max-height:330px}.comm-video-grid.video-mode video{display:block;width:65%}.comm-video-grid.video-mode #commLocal{width:28%}.comm-call-controls{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin:24px 0}.comm-call-controls button{min-width:110px}.comm-call-active{box-shadow:0 0 0 4px #b5e9d3}.comm-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.comm-card{padding:28px;border:1px solid #dce8f0;border-radius:22px;background:white}.comm-card h2{font-size:24px}.comm-card p{font-size:17px;color:#597487}.comm-card button{font:inherit}.comm-private-body{font-family:Arial,Helvetica,sans-serif;background:#eff5fa;margin:0;color:#193c54}.comm-private{width:min(880px,calc(100% - 30px));margin:40px auto;border-radius:24px;background:#fff;border:1px solid #d8e6ee;overflow:hidden}.comm-private header{padding:26px 30px;border-bottom:1px solid #dfebf2}.comm-private h1{font-size:28px}.comm-private #guestMessages{min-height:160px;max-height:55vh}.comm-private input,.comm-private textarea{font:17px Arial;width:100%;border:1px solid #c7dbe8;border-radius:10px;padding:12px}.comm-private .comm-form{font-size:17px}.comm-private label{display:block}.comm-private .comm-body{white-space:pre-wrap}
@media(max-width:760px){.comm-modal{width:calc(100vw - 16px);max-width:none;height:calc(100dvh - 16px);max-height:none;border-radius:18px}.comm-head{padding:16px}.comm-head h2{font-size:22px}.comm-tabs{padding:8px;gap:3px}.comm-tabs button{font-size:14px;padding:10px}.comm-split{grid-template-columns:1fr;grid-template-rows:160px minmax(0,1fr)}.comm-list{border-right:0;border-bottom:1px solid #d8e5ef}.comm-thread-item{padding:12px 16px}.comm-thread-top{padding:12px 16px}.comm-thread-top h3{font-size:18px}.comm-messages{padding:15px}.comm-reply{padding:12px;gap:8px}.comm-reply textarea{min-height:65px}.comm-reply button{padding:10px;font-size:14px}.comm-tools{padding:12px;gap:8px}.comm-tools input{min-width:110px}.comm-tools button{font-size:14px}.comm-form{padding:18px}.comm-form-grid{grid-template-columns:1fr}.comm-user{padding:12px;gap:9px;flex-wrap:wrap}.comm-user strong{min-width:150px}.comm-directory{padding:14px}.comm-cards{grid-template-columns:1fr}.comm-bubble{max-width:95%}.comm-call-stage{padding:20px}.comm-call-modal{height:auto;max-height:calc(100dvh - 20px)}.comm-history{min-width:470px}.comm-fab,.floating-actions.comm-unified .float-btn,.floating-actions.comm-unified .float-shop{width:40px!important;height:40px!important;min-width:40px!important}.floating-actions.comm-unified{gap:7px!important;right:10px!important}.comm-dock{right:10px;bottom:20px;gap:7px}.comm-incoming{bottom:18px;right:60px;flex-direction:column;gap:8px;align-items:flex-start}.comm-private{margin:15px auto}.comm-bubble .comm-body{font-size:16px}}
@media(prefers-reduced-motion:reduce){.comm-modal *, .comm-fab{scroll-behavior:auto!important;transition:none!important}}

/* V4.0.4 message surface: constrained scrolling leaves the composer accessible. */
.comm-form-grid .full{grid-column:1/-1}.comm-button.secondary{border-color:#cddfeb;background:white;color:#174b6e}.comm-pagination{display:flex;align-items:center;gap:8px;justify-content:center;padding:18px 10px;flex-wrap:wrap;font-size:13px}.comm-pagination button{padding:8px;font-size:13px}.comm-thread-top{display:block}.comm-thread-top p{font-size:13px;color:#677f91;margin:6px 0;overflow-wrap:anywhere}.comm-thread-top .comm-tools{padding:10px 0 0;border:0}.comm-thread-top .comm-tools button{font-size:13px;padding:7px 9px}.comm-thread-view .comm-messages{min-height:90px}.comm-bubble>div{display:flex;gap:12px;justify-content:space-between;align-items:baseline}.comm-bubble strong{font-size:14px}.comm-bubble time,.comm-bubble>small{font-size:11px;white-space:nowrap}.comm-bubble p{white-space:pre-wrap;overflow-wrap:anywhere;margin:8px 0;font-size:17px}.comm-user-avatar{background:#e9f3fc;width:42px;height:42px;display:grid;place-items:center;border-radius:13px;color:#086aa6;flex-shrink:0}.comm-history-row{display:flex;align-items:center;gap:18px;padding:14px 4px;border-bottom:1px solid #e5edf4;flex-wrap:wrap}.comm-history-row strong{flex:1}.comm-history-row time{font-size:13px;color:#587487}.comm-reply{flex-wrap:wrap;flex-shrink:0}.comm-reply .comm-error:not(:empty){order:3;width:100%;padding:8px}.comm-reply label{min-width:130px}.comm-split{overflow:hidden;flex-basis:0}.comm-tools{flex-shrink:0}.comm-tools label{flex-direction:row;align-items:center}.comm-compose-modal[open]{max-height:90dvh}.comm-private .comm-form label{display:flex;flex-direction:column;gap:8px}.comm-private .comm-bubble{width:auto}.comm-private .comm-button{font-size:16px}.comm-private textarea{box-sizing:border-box}
@media(max-width:760px){.comm-thread-top{padding:12px}.comm-thread-top .comm-tools{gap:5px}.comm-split{grid-template-rows:110px minmax(0,1fr)}.comm-head h2{font-size:21px}.comm-bubble>div{flex-wrap:wrap;gap:4px}.comm-bubble p{font-size:16px}.comm-tools input{flex-basis:150px}.comm-reply textarea{max-height:95px}.comm-incoming strong{overflow-wrap:anywhere}.comm-cards{padding-right:18px}}
/* Explicit state visibility: component layouts must not override the HTML hidden attribute. */
.comm-modal [hidden],.comm-private [hidden],.comm-dock [hidden],.comm-unified [hidden],.comm-incoming[hidden]{display:none!important}
