:root{--comm-ink:#2d3028;--comm-soft:#737267;--comm-line:#ded8ce;--comm-paper:#fffdf9;--comm-sage:#536247;--comm-sage-soft:#edf1e8;--comm-gold:#b58d4f;--comm-bg:#f5f1e9}
.communication-page{margin:0;background:var(--comm-bg);color:var(--comm-ink)}
.communication-shell{padding:16px clamp(14px,2vw,26px) 48px}
.communication-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:12px;padding:16px 18px;background:rgba(255,253,249,.9);border:1px solid var(--comm-line);border-radius:16px;box-shadow:0 5px 18px rgba(46,39,30,.035)}
.communication-head h1{margin:3px 0;font:400 clamp(28px,2.7vw,38px)/1.05 Georgia,serif}.communication-head p{margin:3px 0 0;color:var(--comm-soft);font-size:13px}.eyebrow{color:var(--comm-gold);font-size:11px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
.communication-button{min-height:40px;padding:9px 14px;border:1px solid var(--comm-line);border-radius:10px;background:var(--comm-paper);color:var(--comm-ink);font:700 13px/1.1 inherit;cursor:pointer}.communication-button.primary{border-color:var(--comm-sage);background:var(--comm-sage);color:#fff}.communication-button.secondary{border-color:#b9c3b0;background:var(--comm-sage-soft);color:#37442f}.communication-button.subtle{background:#f6f1e8}.communication-button:disabled{cursor:wait;opacity:.6}
.communication-status:empty{display:none}.communication-status{margin-bottom:10px;padding:10px 12px;border:1px solid #d6c8aa;border-radius:10px;background:#fff9eb;font-size:13px}.communication-status.error{border-color:#d8b5ad;background:#fff4f1;color:#7b3027}.communication-status.success{border-color:#bdccb5;background:#f3f8ef;color:#35482e}
.communication-workspace{display:grid;grid-template-columns:200px minmax(280px,370px) minmax(420px,1fr);min-height:620px;overflow:hidden;background:var(--comm-paper);border:1px solid var(--comm-line);border-radius:16px;box-shadow:0 8px 28px rgba(46,39,30,.05)}
.communication-folders{padding:12px;background:#f1ede5;border-right:1px solid var(--comm-line)}.communication-folders>button{display:flex;width:100%;align-items:center;justify-content:space-between;gap:10px;min-height:42px;margin:2px 0;padding:9px 10px;border:0;border-radius:9px;background:transparent;color:#55554d;font:700 13px inherit;text-align:left;cursor:pointer}.communication-folders>button strong{min-width:25px;padding:3px 7px;border-radius:999px;background:rgba(255,255,255,.72);font-size:11px;text-align:center}.communication-folders>button.active{background:var(--comm-paper);color:#33402d;box-shadow:0 1px 5px rgba(46,39,30,.07)}
.communication-privacy{margin-top:18px;padding:12px;border-top:1px solid rgba(181,141,79,.3);color:var(--comm-soft);font-size:12px;line-height:1.45}.communication-privacy strong{color:#435039}.communication-privacy p{margin:5px 0 0}
.communication-list-panel{min-width:0;border-right:1px solid var(--comm-line)}.communication-list-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 14px 8px}.communication-list-head span{color:var(--comm-gold);font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.communication-list-head h2{margin:3px 0 0;font:400 22px/1.1 Georgia,serif}.icon-button{width:38px;height:38px;border:1px solid var(--comm-line);border-radius:9px;background:#fff;color:#4d5944;font-size:18px;cursor:pointer}
.communication-search{display:flex;align-items:center;gap:8px;margin:4px 12px 10px;padding:0 10px;background:#f7f4ee;border:1px solid var(--comm-line);border-radius:9px;color:#7c7a70}.communication-search input{width:100%;min-height:38px;border:0!important;outline:0;background:transparent!important;padding:7px 0!important;font-size:13px}
.communication-list{display:grid;max-height:535px;overflow:auto}.communication-list-item{display:grid;grid-template-columns:1fr auto;gap:5px 10px;width:100%;padding:13px 14px;border:0;border-top:1px solid #ece7df;background:#fffdf9;color:var(--comm-ink);text-align:left;cursor:pointer}.communication-list-item:hover,.communication-list-item.active{background:#f6f3ec}.communication-list-item strong{overflow:hidden;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.communication-list-item time{color:var(--comm-soft);font-size:11px}.communication-list-item p{grid-column:1/-1;margin:0;overflow:hidden;color:var(--comm-soft);font-size:12px;line-height:1.4;text-overflow:ellipsis;white-space:nowrap}.communication-list-item .item-meta{display:flex;align-items:center;gap:6px;color:var(--comm-soft);font-size:11px}.unread-dot{width:8px;height:8px;border-radius:50%;background:var(--comm-gold)}.status-chip{display:inline-flex;width:max-content;padding:3px 7px;border-radius:999px;background:#ede9e0;color:#626057;font-size:10px;font-weight:800}.status-chip.failed{background:#f8e3de;color:#8a342b}.status-chip.sent{background:#e7efe2;color:#3d5434}
.communication-detail{min-width:0;padding:16px;background:#fff}.communication-empty{display:flex;min-height:140px;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:22px;color:var(--comm-soft);border:1px dashed #d8d0c4;border-radius:11px;background:#fbf8f2;font-size:13px;text-align:center}.detail-empty{min-height:100%}.thread-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding-bottom:13px;border-bottom:1px solid var(--comm-line)}.thread-head h2{margin:3px 0;font:400 25px/1.1 Georgia,serif}.thread-head p{margin:0;color:var(--comm-soft);font-size:12px}.thread-messages{display:flex;height:390px;flex-direction:column;gap:9px;overflow:auto;padding:15px 4px}.message-bubble{max-width:78%;padding:10px 12px;border-radius:13px;background:#f1eee7;color:#36362f;font-size:13px;line-height:1.5;white-space:pre-wrap}.message-bubble.coach{align-self:flex-end;background:#e8eee3}.message-bubble small{display:block;margin-top:5px;color:#7f7b71;font-size:10px}.reply-box{display:grid;gap:8px;padding-top:12px;border-top:1px solid var(--comm-line)}.reply-box textarea{width:100%;min-height:82px;padding:10px;border:1px solid var(--comm-line);border-radius:10px;background:#fff;font:13px/1.45 inherit;resize:vertical}.reply-actions{display:flex;align-items:center;justify-content:space-between;gap:10px}.reply-actions label{display:flex;align-items:center;gap:7px;color:var(--comm-soft);font-size:11px}
.template-card,.delivery-card,.draft-card{display:grid;gap:6px;width:100%;padding:13px 14px;border:0;border-top:1px solid #ece7df;background:#fffdf9;color:var(--comm-ink);text-align:left;cursor:pointer}.template-card:hover,.delivery-card:hover,.draft-card:hover{background:#f6f3ec}.template-card p,.delivery-card p,.draft-card p{margin:0;color:var(--comm-soft);font-size:12px;line-height:1.4}.template-card span,.delivery-card span,.draft-card span{font-size:11px;color:var(--comm-gold)}
.compose-dialog{width:min(720px,calc(100vw - 24px));max-height:calc(100vh - 28px);padding:0;border:1px solid var(--comm-line);border-radius:16px;background:var(--comm-paper);box-shadow:0 24px 80px rgba(25,25,20,.22)}.compose-dialog::backdrop{background:rgba(38,38,31,.45);backdrop-filter:blur(3px)}.compose-dialog form{padding:18px}.compose-dialog header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.compose-dialog h2{margin:3px 0;font:400 27px Georgia,serif}.dialog-close{width:36px;height:36px;border:1px solid var(--comm-line);border-radius:9px;background:#fff;font-size:21px;cursor:pointer}.compose-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.compose-grid label,.compose-field{display:grid;gap:5px;color:var(--comm-soft);font-size:12px;font-weight:700}.compose-grid .wide{grid-column:1/-1}.compose-grid input,.compose-grid select,.compose-grid textarea{width:100%;min-height:40px;padding:9px 10px;border:1px solid var(--comm-line);border-radius:9px;background:#fff;font:13px/1.45 inherit;color:var(--comm-ink)}.compose-grid textarea{min-height:180px;resize:vertical}.compose-field>small{min-height:16px;color:var(--comm-soft);font-size:11px;font-weight:400;line-height:1.35}.recipient-picker{position:relative}.recipient-picker input{padding-right:34px}.recipient-options{position:absolute;z-index:8;top:calc(100% + 5px);right:0;left:0;max-height:230px;overflow:auto;border:1px solid var(--comm-line);border-radius:10px;background:#fff;box-shadow:0 14px 34px rgba(36,34,27,.16)}.recipient-options[hidden]{display:none}.recipient-options button{display:grid;width:100%;gap:2px;padding:10px 12px;border:0;border-bottom:1px solid #eee9e1;background:#fff;color:var(--comm-ink);text-align:left;cursor:pointer}.recipient-options button:last-child{border-bottom:0}.recipient-options button:hover,.recipient-options button:focus{background:#f3f6ef;outline:0}.recipient-options button strong{font-size:13px}.recipient-options button small{color:var(--comm-soft);font-size:11px;font-weight:400}.recipient-empty{padding:12px;color:var(--comm-soft);font-size:11px;font-weight:400}.notification-choice{display:flex;gap:9px;align-items:flex-start;margin:12px 0;padding:11px;border:1px solid #d8dfd2;border-radius:10px;background:var(--comm-sage-soft);font-size:13px}.notification-choice[hidden]{display:none}.notification-choice span{display:grid;gap:2px}.notification-choice small{color:var(--comm-soft);font-weight:400}.compose-safety{padding:9px 11px;border-left:3px solid var(--comm-gold);background:#fbf6ea;color:#665d4d;font-size:11px;line-height:1.45}.compose-safety.external-warning{border-left-color:#b86245;background:#fff1eb;color:#713a2c}.compose-dialog footer{display:flex;align-items:center;gap:8px;margin-top:14px}.footer-spacer{flex:1}.compose-feedback{min-height:18px;margin-top:8px;color:#775629;font-size:12px}
@media(max-width:1050px){.communication-workspace{grid-template-columns:170px minmax(260px,330px) minmax(360px,1fr)}}
@media(max-width:820px){.communication-shell{padding:10px 12px 88px}.communication-head{align-items:flex-start;padding:13px}.communication-head p{display:none}.communication-workspace{display:block;min-height:0;overflow:visible}.communication-folders{display:flex;gap:4px;overflow-x:auto;padding:6px;border:0;border-bottom:1px solid var(--comm-line)}.communication-folders>button{flex:0 0 auto;width:auto;min-height:38px}.communication-privacy{display:none}.communication-list-panel{border:0}.communication-list{max-height:none}.communication-detail{min-height:420px;border-top:1px solid var(--comm-line)}.compose-grid{grid-template-columns:1fr}.compose-grid .wide{grid-column:auto}.compose-dialog footer{flex-wrap:wrap}.footer-spacer{display:none}.compose-dialog footer .communication-button{flex:1 1 auto}.thread-messages{height:auto;max-height:50vh}}
