.communication-page .configuration-content {max-width:1000px}
.communication-page .configuration-form-actions {flex-wrap:wrap}
.communication-row {display:flex;gap:14px;align-items:center;padding:18px 0;border-bottom:1px solid #ccd9d7;min-width:0}
.communication-row>div:first-of-type {flex:1;min-width:0;overflow-wrap:anywhere}
.communication-row strong,.communication-row small {display:block}
.communication-row small {margin-top:5px;font-size:13px}
.communication-color {width:16px;height:16px;border-radius:50%;flex:none}
.communication-field {display:flex;flex-direction:column;gap:7px;margin:16px 0;min-width:0;font-size:14px}
.communication-field input:not([type=color]),.communication-field select,.communication-field textarea {width:100%;min-width:0;box-sizing:border-box;padding:11px;border:1px solid #aebfbd;border-radius:4px;font:inherit;color:inherit;background:white}
.communication-field textarea {min-height:110px;resize:vertical}
.communication-field input[type=color] {width:48px;height:40px;padding:2px;border:1px solid #aebfbd;background:white}
.communication-check {display:flex;gap:10px;align-items:center;margin:18px 0}
.communication-dialog {width:min(620px,calc(100% - 24px));max-height:calc(100dvh - 32px);box-sizing:border-box;border:1px solid #d4dfdd;border-radius:6px;padding:20px;color:#233e39;overflow:auto}
.communication-dialog::backdrop {background:rgba(0,0,0,.45)}
.communication-dialog>header {display:flex;justify-content:space-between;align-items:start;gap:12px}
.communication-dialog h2 {font-size:20px;line-height:1.3;margin:0;overflow-wrap:anywhere}
.communication-dialog p {font-size:14px;line-height:1.5;overflow-wrap:anywhere}
.communication-dialog .configuration-form-actions {display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end;margin-top:20px}
.communication-dialog [hidden] {display:none!important}
.communication-dialog .company-calendar-credential-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
.communication-dialog .company-calendar-credentials {margin:20px 0;min-width:0}
.communication-dialog .config-command {white-space:normal;min-height:42px}
.communication-dialog .config-icon-button {flex-shrink:0}
.communication-tabs {display:flex;gap:20px;border-bottom:1px solid #ccd9d7;margin:20px 0}
.communication-tabs button {border:0;background:none;padding:12px 2px;font:inherit;color:inherit;border-bottom:2px solid transparent}
.communication-tabs button[aria-selected=true] {border-bottom-color:var(--navigation-color,#008c78);font-weight:bold}
.communication-status {font-size:14px;line-height:1.5}
.communication-muted {font-size:13px;color:#50645f}
@media(max-width:520px){.communication-row{flex-wrap:wrap}.communication-row>.configuration-form-actions{flex-basis:100%;justify-content:flex-end}.communication-dialog{padding:16px}.communication-dialog .company-calendar-credential-grid{grid-template-columns:minmax(0,1fr)}}
.native-swaps .swap-view-scale {margin-top:1lh;margin-bottom:1lh;}
.swap-period-row { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr)); gap:12px; align-items:end; }
.swap-period-settings,.swap-period-choices { border-bottom:1px solid var(--line); padding:16px 0; }
.swap-period-members { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr)); gap:8px; margin:12px 0; }
.swap-period-members label { display:flex; align-items:center; gap:8px; min-height:44px; }
.swap-period-filter { min-width:0; align-self:start; border:1px solid #bccfcd; border-radius:4px; }
.swap-period-filter summary { padding:12px; min-height:44px; cursor:pointer; overflow-wrap:anywhere; }
.swap-period-filter > div { padding:0 12px; max-height:240px; overflow:auto; }
.native-swaps button.swap-primary-action { background:#15803d; color:#fff; border-color:#15803d; }
