/* Bedrock Communications module */
:root{--cm-navy:#13233A;--cm-acc:#C2703D;--cm-acc-s:#F6E6D8;--cm-ink:#1B2433;--cm-mut:#5F6B7A;--cm-line:#E3E0DA;--cm-bg:#fff;--cm-soft:#F6F4F0;--cm-good:#2F7D5B;--cm-bad:#B23A32;--cm-text:#2D5DA8;--cm-email:#6B4FA0}
html.cm-open,html.cm-open body{overflow:hidden}
.cm-ic{width:18px;height:18px;flex:none;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.cm-pane,.cm-inbox,.cm-set{font-size:14px;color:var(--cm-ink);min-width:0}
.cm-pane *,.cm-inbox *,.cm-set *,.cm-layer *{box-sizing:border-box}
.cm-head{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;margin:4px 0 10px}
.cm-who{min-width:0}.cm-who b{display:block;font-size:15px}.cm-who small{color:var(--cm-mut);font-size:12.5px;overflow-wrap:anywhere}
.cm-acts{display:flex;gap:8px;flex-wrap:wrap}.cm-acts.wide{margin-top:16px}.cm-acts.wide .cm-btn{flex:1}
.cm-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:40px;padding:8px 14px;border-radius:10px;border:1px solid var(--cm-line);background:var(--cm-bg);color:var(--cm-ink);font:inherit;font-weight:600;font-size:14px;cursor:pointer}
.cm-btn:hover{border-color:var(--cm-acc)}.cm-btn.call{background:var(--cm-good);border-color:var(--cm-good);color:#fff}
.cm-btn.pri{background:var(--cm-acc);border-color:var(--cm-acc);color:#fff;width:100%;margin-top:6px}
.cm-chips{display:flex;gap:6px;overflow-x:auto;padding:2px 0 8px;scrollbar-width:none}.cm-chips::-webkit-scrollbar{display:none}
.cm-chip{flex:none;border:1px solid var(--cm-line);background:var(--cm-bg);border-radius:999px;padding:6px 12px;font:inherit;font-size:13px;color:var(--cm-ink);cursor:pointer;min-height:34px}
.cm-chip i{font-style:normal;color:var(--cm-mut);margin-left:2px}.cm-chip.on{background:var(--cm-navy);border-color:var(--cm-navy);color:#fff}.cm-chip.on i{color:#C9D3E0}
.cm-srch{display:flex;align-items:center;gap:8px;border:1px solid var(--cm-line);border-radius:10px;padding:0 10px;background:var(--cm-bg);margin-bottom:10px}
.cm-srch .cm-ic{color:var(--cm-mut)}.cm-srch input{border:0;outline:0;background:transparent;font:inherit;font-size:16px;padding:9px 0;width:100%;min-width:0;color:inherit}
.cm-list{list-style:none;margin:0;padding:0;border:1px solid var(--cm-line);border-radius:12px;background:var(--cm-bg);overflow:hidden}
.cm-list>li+li{border-top:1px solid var(--cm-line)}
.cm-row{display:flex;gap:10px;align-items:flex-start;width:100%;text-align:left;background:none;border:0;padding:11px 12px;font:inherit;color:inherit;cursor:pointer}
.cm-row:hover{background:var(--cm-soft)}.cm-row.unread{background:#FBF5EF}.cm-row.unread .cm-l1{font-weight:700}
.cm-dot{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;flex:none;background:#E7F2EC;color:var(--cm-good)}
.cm-dot.t-text{background:#E6EEF9;color:var(--cm-text)}.cm-dot.t-email{background:#EFEAF7;color:var(--cm-email)}.cm-dot.t-bad{background:#F8E5E3;color:var(--cm-bad)}
.cm-rm{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.cm-rm>b{font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cm-rm>b i{font-style:normal;font-weight:500;color:var(--cm-mut);font-size:12px}
.cm-l1{display:flex;align-items:center;gap:4px;flex-wrap:wrap;font-size:13.5px}.cm-l1 .cm-ic{width:14px;height:14px;color:var(--cm-mut)}
.cm-rm small{color:var(--cm-mut);font-size:12.5px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
.cm-tag{font-style:normal;font-size:11px;font-weight:600;padding:1px 7px;border-radius:999px;background:var(--cm-acc-s);color:#8A4A22}.cm-tag.fu{background:#E6EEF9;color:var(--cm-text)}
.cm-when{flex:none;font-size:12px;color:var(--cm-mut);display:flex;flex-direction:column;align-items:flex-end;gap:6px}
.cm-new{width:9px;height:9px;border-radius:50%;background:var(--cm-acc);display:block}
.cm-empty{padding:18px;color:var(--cm-mut);text-align:center;list-style:none}
.cm-fine{font-size:11.5px;color:var(--cm-mut);margin:8px 0 0;line-height:1.4}
.cm-lnk{display:inline-flex;align-items:center;gap:5px;background:none;border:0;color:var(--cm-acc);font:inherit;font-weight:600;font-size:13px;cursor:pointer;padding:6px 0;text-decoration:none}.cm-lnk .cm-ic{width:15px;height:15px}
.cm-ihead{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between;margin-bottom:10px}
.cm-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;flex:1 1 100%;min-width:0}
.cm-stats div{background:var(--cm-bg);border:1px solid var(--cm-line);border-radius:12px;padding:10px;min-width:0}
.cm-stats b{display:block;font-size:20px;color:var(--cm-navy)}.cm-stats span{font-size:11.5px;color:var(--cm-mut)}
@media(max-width:420px){.cm-stats{gap:6px}.cm-stats div{padding:8px 6px}.cm-stats b{font-size:18px}.cm-stats span{font-size:10.5px;line-height:1.2;display:block}}
/* settings */
.cm-set{display:grid;gap:14px;max-width:760px}
.cm-card{background:var(--cm-bg);border:1px solid var(--cm-line);border-radius:14px;padding:16px}
.cm-card h3{display:flex;align-items:center;gap:8px;margin:0 0 6px;font-size:16px}.cm-card h3 .cm-ic{color:var(--cm-acc)}
.cm-card p{margin:0 0 10px;color:var(--cm-mut);line-height:1.5}
.cm-kv{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0}
.cm-kv div{background:var(--cm-soft);border-radius:10px;padding:8px 10px;min-width:0}.cm-kv span{display:block;font-size:11.5px;color:var(--cm-mut)}.cm-kv b{font-size:13.5px;overflow-wrap:anywhere}
.cm-kv select{font:inherit;font-weight:600;border:1px solid var(--cm-line);border-radius:8px;padding:4px 6px;max-width:100%;background:#fff}
.cm-pill{display:inline-block;font-size:12px;padding:2px 8px;border-radius:999px}.cm-pill.warn{background:#FCF1DC;color:#8A5A00}
.cm-steps{margin:12px 0 0;padding-left:20px;color:var(--cm-mut);line-height:1.6;font-size:13px}
.cm-reg{list-style:none;padding:0;margin:0 0 6px;display:grid;gap:6px}.cm-reg li{display:flex;gap:8px;align-items:center;font-size:13.5px;color:var(--cm-mut)}.cm-reg li .cm-ic{color:#B9B3A8}.cm-reg li.done{color:var(--cm-ink)}.cm-reg li.done .cm-ic{color:var(--cm-good)}
.cm-tg{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:10px 0;border-top:1px solid var(--cm-line);cursor:pointer}
.cm-tg span{min-width:0}.cm-tg b{display:block;font-size:14px}.cm-tg small{color:var(--cm-mut);font-size:12.5px}
.cm-tg input{position:absolute;opacity:0;width:1px;height:1px}.cm-tg i{flex:none;width:44px;height:26px;border-radius:999px;background:#CFCAC1;position:relative;transition:.15s}
.cm-tg i:after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;transition:.15s;box-shadow:0 1px 2px rgba(0,0,0,.2)}
.cm-tg input:checked+i{background:var(--cm-good)}.cm-tg input:checked+i:after{left:21px}.cm-tg input:focus-visible+i{outline:2px solid var(--cm-acc);outline-offset:2px}
.cm-note{background:#FCF1DC;border-radius:10px;padding:10px 12px;font-size:13px;color:#5C4300;line-height:1.5;margin:10px 0 0}
/* layer */
.cm-layer{position:fixed;inset:0;z-index:3000;background:rgba(10,18,30,.5);display:flex;align-items:flex-end;justify-content:center}
.cm-layer[hidden]{display:none}
.cm-sheet{background:var(--cm-bg);color:var(--cm-ink);width:100%;max-width:560px;max-height:92vh;max-height:92dvh;border-radius:18px 18px 0 0;overflow:auto;overscroll-behavior:contain;display:flex;flex-direction:column;font-size:14px}
@media(min-width:700px){.cm-layer{align-items:center}.cm-sheet{border-radius:18px;max-height:86vh}}
.cm-sh{position:sticky;top:0;z-index:2;background:var(--cm-bg);display:grid;grid-template-columns:40px 1fr 40px;gap:6px;align-items:center;padding:10px 10px;border-bottom:1px solid var(--cm-line)}
.cm-sh h2{margin:0;font-size:16px;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;outline:0}.cm-sh small{display:block;text-align:center;color:var(--cm-mut);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cm-ib{width:40px;height:40px;border-radius:10px;border:0;background:var(--cm-soft);display:grid;place-items:center;cursor:pointer;color:var(--cm-ink)}
.cm-sb{padding:14px 16px 20px;flex:1}
.cm-sec{margin-top:16px}.cm-sec h3{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--cm-mut);margin:0 0 8px}.cm-sec p{margin:0;line-height:1.5}
.cm-sec audio{width:100%;height:40px}
.cm-tr{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.cm-tr li{padding:9px 11px;border-radius:12px;background:var(--cm-soft);border-left:3px solid var(--cm-acc)}.cm-tr li.them{border-left-color:var(--cm-navy)}
.cm-tr b{font-size:12px;color:var(--cm-mut)}.cm-tr p{margin:2px 0 0;line-height:1.45}
.cm-fu{display:flex;gap:10px;align-items:flex-start;background:var(--cm-soft);padding:10px;border-radius:10px;cursor:pointer}.cm-fu input{width:20px;height:20px;margin-top:1px;accent-color:var(--cm-good)}.cm-fu small{display:block;color:var(--cm-mut)}
.cm-form{display:grid;gap:10px}.cm-form label{display:grid;gap:4px}.cm-form label>span{font-size:12.5px;font-weight:600;color:var(--cm-mut)}
.cm-form input,.cm-form select,.cm-form textarea,.cm-comp textarea{font:inherit;font-size:16px;border:1px solid var(--cm-line);border-radius:10px;padding:9px 10px;width:100%;background:#fff;color:var(--cm-ink)}
.cm-form textarea{resize:vertical}
/* thread */
.cm-sheet.cm-tall{height:92vh;height:92dvh}
.cm-thread{overflow:auto;padding-bottom:8px}
.cm-bubbles{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.cm-b{max-width:80%;padding:8px 12px;border-radius:18px;line-height:1.4;overflow-wrap:anywhere}
.cm-b.in{align-self:flex-start;background:#ECEAE5;border-bottom-left-radius:6px}
.cm-b.out{align-self:flex-end;background:var(--cm-text);color:#fff;border-bottom-right-radius:6px}
.cm-b small{display:block;font-size:10.5px;opacity:.8;margin-top:3px;text-align:right}
.cm-b.typing{display:flex;gap:4px;padding:12px}.cm-b.typing i{width:7px;height:7px;border-radius:50%;background:#9A958C;animation:cmdot 1s infinite}.cm-b.typing i:nth-child(2){animation-delay:.15s}.cm-b.typing i:nth-child(3){animation-delay:.3s}
@keyframes cmdot{0%,80%,100%{opacity:.3}40%{opacity:1}}
.cm-stamp{align-self:center;font-size:11.5px;color:var(--cm-mut);margin:8px 0 2px}
.cm-comp{border-top:1px solid var(--cm-line);padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:var(--cm-bg);position:sticky;bottom:0}
.cm-tpl{display:flex;gap:6px;overflow-x:auto;padding-bottom:8px;scrollbar-width:none}.cm-tpl::-webkit-scrollbar{display:none}
.cm-cin{display:flex;gap:8px;align-items:flex-end}.cm-cin textarea{resize:none;flex:1;min-width:0}
.cm-send{width:44px;height:44px;border-radius:50%;border:0;background:var(--cm-text);color:#fff;display:grid;place-items:center;cursor:pointer;flex:none}
.cm-mails{list-style:none;margin:0 0 12px;padding:0;display:grid;gap:10px}
.cm-mails li{border:1px solid var(--cm-line);border-radius:12px;padding:12px}.cm-mails header b{display:block}.cm-mails header small{color:var(--cm-mut);font-size:12px;overflow-wrap:anywhere}.cm-mails p{margin:8px 0 0;line-height:1.5;overflow-wrap:anywhere}
/* call screen */
.cm-sheet.cm-callsh{background:linear-gradient(180deg,#13233A,#0B1625);color:#fff;height:100%;max-height:100vh;max-height:100dvh;max-width:480px;border-radius:0}
@media(min-width:700px){.cm-sheet.cm-callsh{height:auto;min-height:640px;border-radius:22px}}
.cm-call{display:flex;flex-direction:column;align-items:center;padding:16px 18px calc(18px + env(safe-area-inset-bottom));min-height:100%;gap:14px}
.cm-rec{display:flex;align-items:center;gap:8px;font-size:12.5px;background:rgba(255,255,255,.1);padding:6px 12px;border-radius:999px}.cm-rec i{width:9px;height:9px;border-radius:50%;background:#E5534B;animation:cmdot 1.4s infinite}.cm-rec.off i{background:#999;animation:none}
.cm-cwho{text-align:center;margin-top:10px}.cm-cwho h2{margin:10px 0 2px;font-size:24px;outline:0;color:#fff}.cm-cwho p{margin:2px 0;color:#C9D3E0;font-size:14px}.cm-cwho .cm-st{color:#fff;font-weight:600;margin-top:8px}
.cm-av{width:84px;height:84px;border-radius:50%;background:var(--cm-acc);display:inline-grid;place-items:center;font-size:30px;font-weight:700;color:#fff}
.cm-cbtns{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;width:100%;max-width:360px;margin-top:6px}
.cm-cbtns button{display:flex;flex-direction:column;align-items:center;gap:6px;background:none;border:0;color:#fff;font:inherit;font-size:12px;cursor:pointer}
.cm-cbtns .cm-ic{width:56px;height:56px;padding:16px;border-radius:50%;background:rgba(255,255,255,.14);box-sizing:border-box}
.cm-cbtns button.on .cm-ic{background:#fff;color:var(--cm-navy)}
.cm-callpanel{width:100%;max-width:400px;flex:1}
.cm-callpanel .cm-comp{position:static;background:rgba(255,255,255,.08);border:0;border-radius:14px;color:#fff}.cm-callpanel .cm-chip{background:rgba(255,255,255,.12);border-color:transparent;color:#fff}.cm-callpanel .cm-fine{color:#AEB9C8}
.cm-callpanel .cm-form span{color:#C9D3E0}
.cm-keys{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;max-width:260px;margin:0 auto}
.cm-keys button{height:52px;border-radius:50%;border:0;background:rgba(255,255,255,.12);color:#fff;font:inherit;font-size:20px;cursor:pointer}.cm-keys button.hit{background:rgba(255,255,255,.35)}
.cm-endb{width:68px;height:68px;border-radius:50%;border:0;background:#E5534B;color:#fff;display:grid;place-items:center;cursor:pointer}.cm-endb .cm-ic{width:30px;height:30px}
.cm-call .cm-fine{color:#AEB9C8;text-align:center}
.cm-toast{position:fixed;left:50%;bottom:90px;transform:translateX(-50%) translateY(20px);background:var(--cm-navy);color:#fff;padding:10px 16px;border-radius:10px;font-size:14px;opacity:0;pointer-events:none;transition:.2s;z-index:4000;max-width:90vw}.cm-toast.on{opacity:1;transform:translateX(-50%)}
