/* Mail and calendar share the workbench's quiet, translucent surfaces. */
.comms-page{--comms-ink:#3e5066;--comms-muted:#8291a3;--comms-line:rgba(119,141,165,.18);--comms-accent:#6485aa;color:var(--comms-ink);max-width:1500px;margin:0 auto;display:flex;flex-direction:column;min-width:0}
.comms-page button,.comms-page input,.comms-page select,.comms-connection-dialog button,.comms-connection-dialog input{font-family:inherit;letter-spacing:inherit}
.comms-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:0 0 22px}
.comms-heading-kicker{font-size:11px;color:#8c9bae;letter-spacing:.025em;margin-bottom:5px}
.comms-heading h1{font-size:28px;line-height:1.3;letter-spacing:-.05em;font-weight:650;color:#34495f}
.comms-heading p{font-size:13px;color:var(--comms-muted);margin-top:7px;line-height:1.7}
.comms-heading-actions{display:flex;align-items:center;gap:17px;flex:none}
.comms-icon{display:inline-block;width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round;flex:none;vertical-align:middle}
.comms-button,.comms-text-button,.comms-icon-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;white-space:nowrap;cursor:pointer;font-size:13px;line-height:1.5;border-radius:9px;background:transparent;color:#66809c;box-shadow:none}
.comms-button{padding:8px 12px;border:1px solid #d4dee8;background:rgba(255,255,255,.75);color:#526b86;box-shadow:0 1px 2px rgba(70,88,111,.03)}
.comms-button:hover{background:#fff;border-color:#becfde}
.comms-text-button{padding:6px 2px;border:0}
.comms-text-button:hover{color:#365d86}
.comms-icon-button{padding:6px;border:0}
.comms-icon-button:hover{background:#eaf0f6}
.comms-page button:focus-visible,.comms-page a:focus-visible,.comms-page summary:focus-visible,.comms-connection-dialog button:focus-visible{outline:3px solid #a7c2df;outline-offset:3px}
.comms-page button:disabled,.comms-connection-dialog button:disabled{opacity:.5;cursor:default}
.comms-accounts-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 0 10px}
.comms-account-select{display:flex;align-items:center;gap:9px;color:#7c90a8;min-width:0;max-width:70%}
.comms-account-select select{appearance:auto;background:transparent;border:0;color:#4a6078;min-width:0;max-width:100%;font-size:14px;padding:6px 22px 6px 0;cursor:pointer}
.comms-account-details{position:relative;font-size:12px;color:#748aa2}
.comms-account-details summary{cursor:pointer;list-style:none;white-space:nowrap;padding:6px 0}
.comms-account-details summary::-webkit-details-marker{display:none}
.comms-account-details summary span{padding:3px 6px;margin-left:4px;border-radius:5px;background:#eaf0f6;font-size:11px;color:#7f94ab}
.comms-account-popover{position:absolute;z-index:10;right:0;top:34px;width:340px;max-width:calc(100vw - 35px);background:rgba(250,252,255,.98);border:1px solid #e0e7ee;border-radius:13px;box-shadow:0 12px 40px rgba(53,79,106,.13);padding:5px 14px;backdrop-filter:blur(22px)}
.comms-account-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid #e7ecf1}
.comms-account-row:last-child{border:0}
.comms-account-row>span{min-width:0}
.comms-account-row strong{display:block;font-size:12px;font-weight:550;overflow-wrap:anywhere;color:#506781}
.comms-account-row small{display:block;font-size:11px;line-height:1.5;color:#8e9bad;margin-top:3px}
.comms-sync-note{display:flex;align-items:center;gap:7px;color:#8595a6;font-size:11px;line-height:1.7;min-height:23px;margin-bottom:13px}
.comms-sync-note.is-attention{color:#9c8d79}
.comms-sync-note .comms-text-button{font-size:11px;padding:0 3px}
.comms-status-dot{width:5px;height:5px;border-radius:50%;background:#a1b5aa;flex:none}
.comms-sync-note.is-attention .comms-status-dot{background:#c1ad8b}
.comms-status-dot.is-loading{animation:comms-breathe 1.2s ease-in-out infinite;background:#8ca6c2}
@keyframes comms-breathe{50%{opacity:.3}}
.comms-mail-tools{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:0 0 14px;flex-wrap:wrap}
.comms-filters{display:flex;gap:3px;align-items:center;flex-wrap:wrap}
.comms-filter{background:transparent;border:1px solid transparent;border-radius:8px;color:#8493a6;display:inline-flex;align-items:center;justify-content:center;gap:6px;font-size:12px;padding:6px 10px;line-height:1.55;white-space:nowrap;cursor:pointer}
.comms-filter:hover{background:rgba(228,235,244,.7)}
.comms-filter.is-active{background:rgba(255,255,255,.92);border-color:#dce4ed;color:#536e8c;box-shadow:0 1px 3px rgba(63,87,113,.04);font-weight:550}
.comms-filter>span{font-size:11px;color:#99a7b8}
.comms-filter.is-active>span{color:#7b95b2}
.comms-search{min-width:175px;max-width:290px;flex:1;display:flex;align-items:center;gap:7px;padding:5px 10px;background:rgba(232,238,245,.62);border:1px solid rgba(218,227,237,.7);border-radius:8px;color:#95a5b7}
.comms-search input{font-size:12px;line-height:1.6;padding:1px 0;width:100%;border:0;background:transparent;color:#4d6580;min-width:0}
.comms-search input::placeholder{color:#99a7b8}
.comms-search:focus-within{outline:2px solid #aac3dc;outline-offset:1px}
.comms-search input:focus{outline:none}
.comms-mail-workspace{display:grid;grid-template-columns:minmax(275px,.85fr) minmax(380px,1.65fr);border:1px solid #dfe6ee;border-radius:13px;overflow:hidden;background:rgba(255,255,255,.67);height:calc(100dvh - 286px);min-height:410px;box-shadow:0 5px 20px rgba(74,96,122,.025)}
.comms-mail-list{min-width:0;display:flex;flex-direction:column;overflow:hidden;background:rgba(248,250,253,.62);border-right:1px solid var(--comms-line)}
.comms-list-caption{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--comms-line);min-height:44px}
.comms-list-caption strong{font-size:12px;font-weight:550;color:#70859e}
.comms-list-caption>span{font-size:11px;color:#9aa8b8}
.comms-mail-rows{overflow:auto;flex:1;min-height:0;scrollbar-width:thin;scrollbar-color:#c8d2de transparent}
.comms-mail-row{display:block;position:relative;width:100%;padding:15px 17px 13px;text-align:left;background:transparent;border:0;border-bottom:1px solid var(--comms-line);color:var(--comms-ink)}
.comms-mail-row:hover{background:#eef3f9}
.comms-mail-row.is-selected{background:#e9f0fa;box-shadow:inset 3px 0 #91acca}
.comms-mail-row.is-reviewed{color:#8191a3}
.comms-mail-row-top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:5px}
.comms-mail-row-top strong{font-size:12px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.comms-mail-row-top time{font-size:10px;color:#9aabbd;white-space:nowrap}
.comms-mail-subject{display:block;font-size:14px;line-height:1.55;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;letter-spacing:-.025em}
.comms-unread-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:#8ba7c6;vertical-align:middle;margin-right:6px}
.comms-mail-snippet{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:12px;line-height:1.7;color:#8999ac;margin-top:5px;min-height:20px}
.comms-mail-row-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:8px;min-height:17px}
.comms-mail-row-bottom>small{font-size:10px;color:#9aa9ba;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.comms-follow-tag,.comms-reviewed-tag{display:inline-flex;align-items:center;gap:3px;white-space:nowrap;font-size:10px;color:#ac9271;flex:none}
.comms-reviewed-tag{color:#8da299}
.comms-follow-tag .comms-icon,.comms-reviewed-tag .comms-icon{width:11px;height:11px}
.comms-mail-detail{display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden;background:rgba(255,255,255,.54)}
.comms-detail-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 22px;min-height:44px;border-bottom:1px solid rgba(128,151,176,.1);flex:none}
.comms-detail-toolbar>span{font-size:11px;color:#9baabd;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.comms-detail-toolbar .comms-text-button{font-size:11px;padding:0}
.comms-detail-toolbar .comms-icon{width:13px;height:13px}
.comms-detail-scroll{padding:27px clamp(22px,3vw,42px) 40px;overflow:auto;min-height:0;scrollbar-width:thin;scrollbar-color:#c8d2de transparent}
.comms-message-header h2{font-size:23px;line-height:1.55;letter-spacing:-.035em;color:#3b5067;margin-bottom:18px;overflow-wrap:anywhere}
.comms-message-header>div{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.comms-message-header strong{font-size:13px;font-weight:550;overflow-wrap:anywhere}
.comms-message-header time{font-size:11px;color:#8f9fb2}
.comms-provider-unread{display:inline-block;margin-top:6px;color:#91a3b8;font-size:10px}
.comms-review-bar{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:21px;padding:11px 0 0;border-top:1px solid var(--comms-line)}
.comms-review-bar>span{font-size:11px;color:#9ba9b9;margin-right:4px}
.comms-review-button{background:transparent;border:1px solid #e0e7ef;border-radius:7px;display:inline-flex;align-items:center;gap:5px;padding:5px 8px;font-size:11px;color:#8195ad}
.comms-review-button .comms-icon{width:12px;height:12px}
.comms-review-button.is-active{background:#eaf1f5;border-color:#d0dde5;color:#688a85}
.comms-review-button[data-action="comms-follow-up"].is-active{background:#f6f1e8;border-color:#e9decc;color:#a68b64}
.comms-local-note{font-size:10px;color:#a6b2c0;margin-top:7px}
.comms-message-body{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.95;font-size:15px;color:#4b6078;margin-top:25px}
.comms-body-note{font-size:11px;color:#99a8b8;margin-top:23px;padding-top:13px;border-top:1px solid var(--comms-line)}
.comms-empty{margin:auto;text-align:center;padding:38px 24px;max-width:380px;color:#92a3b5}
.comms-mail-list .comms-empty{padding:40px 25px}
.comms-empty-symbol{display:grid;place-items:center;width:43px;height:43px;border-radius:13px;background:#eff3f8;color:#9baec2;margin:0 auto 17px}
.comms-empty-symbol .comms-icon{width:23px;height:23px;stroke-width:1.1}
.comms-empty h2{font-size:15px;line-height:1.6;font-weight:500;color:#71859d;letter-spacing:-.025em}
.comms-empty p{font-size:12px;line-height:1.9;color:#9ba9ba;margin-top:7px}
.comms-empty .comms-text-button{margin-top:12px;font-size:12px}
.comms-mail-detail.is-empty{justify-content:center;align-items:center}
.comms-pagination{display:flex;justify-content:space-between;align-items:center;padding:8px 15px;border-top:1px solid var(--comms-line);font-size:11px;color:#97a7b9}
.comms-pagination .comms-text-button{font-size:11px}
.comms-mobile-back{display:none}
.comms-calendar-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:5px 0 19px}
.comms-calendar-date{display:flex;align-items:center;gap:21px}
.comms-calendar-date>h2{font-size:21px;color:#4d647e;font-weight:550;letter-spacing:-.04em}
.comms-calendar-nav{display:flex;align-items:center;gap:9px}
.comms-calendar-nav .comms-text-button{font-size:12px;padding:4px 6px}
.comms-calendar-switch{display:flex;padding:3px;border-radius:9px;background:#eaf0f6}
.comms-calendar-switch .comms-filter{padding:3px 15px}
.comms-calendar-workspace{display:grid;grid-template-columns:minmax(0,1fr) 264px;border:1px solid #dfe6ee;border-radius:13px;overflow:hidden;background:rgba(255,255,255,.74);min-height:460px;height:calc(100dvh - 297px);box-shadow:0 5px 20px rgba(74,96,122,.025)}
.comms-calendar-board{min-width:0;overflow:auto;scrollbar-width:thin;scrollbar-color:#c8d2de transparent}
.comms-month-grid{display:flex;flex-direction:column;height:100%;min-height:460px}
.comms-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-bottom:1px solid var(--comms-line);background:rgba(248,250,253,.76)}
.comms-weekdays>span{text-align:center;padding:10px 0 8px;color:#96a5b7;font-size:11px}
.comms-weekdays>span:first-child{color:#b39799}
.comms-weekdays>span:last-child{color:#8ea3bd}
.comms-month-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-template-rows:repeat(var(--calendar-weeks,5),minmax(72px,1fr));flex:1;min-height:0}
.comms-calendar-cell{padding:6px 4px 6px;border-right:1px solid var(--comms-line);border-bottom:1px solid var(--comms-line);min-width:0;overflow:hidden}
.comms-calendar-cell:nth-child(7n){border-right:0}
.comms-calendar-cell.is-selected{background:rgba(233,241,252,.65)}
.comms-calendar-cell.is-other-month{background:rgba(245,247,250,.75)}
.comms-calendar-cell.is-other-month .comms-day-number{color:#bdc7d3}
.comms-day-number{display:block;border:0;background:transparent;border-radius:50%;width:25px;height:25px;margin:0 auto 4px;font-size:12px;color:#71849b;line-height:25px;padding:0;text-align:center}
.comms-calendar-cell.is-today .comms-day-number{background:#7796b9;color:#fff}
.comms-calendar-cell.is-selected:not(.is-today) .comms-day-number{background:#dce7f5;color:#6380a0}
.comms-day-number:hover{background:#edf1f7}
.comms-event{display:flex;width:100%;text-align:left;align-items:flex-start;gap:5px;min-width:0;border:0;background:transparent;color:#6a8098;line-height:1.5;font-size:12px;padding:7px 5px;border-radius:5px}
.comms-event:hover{background:#e9f0f8}
.comms-event-color{width:3px;min-height:13px;align-self:stretch;background:var(--event-color,#7d97b3);border-radius:3px;flex:none;opacity:.8}
.comms-event-time{color:#99a9bb;font-size:10px;white-space:nowrap}
.comms-event strong{font-size:12px;font-weight:500;overflow:hidden;text-overflow:ellipsis;min-width:0}
.comms-event.is-compact{padding:3px 2px;gap:3px;align-items:center}
.comms-event.is-compact strong{font-size:10px;white-space:nowrap}
.comms-event.is-compact .comms-event-time{font-size:9px}
.comms-event.is-compact .comms-event-color{width:2px;min-height:10px}
.comms-more-events{display:block;width:100%;text-align:left;background:transparent;border:0;font-size:10px;color:#93a5bb;padding:2px 5px}
.comms-agenda{min-width:0;border-left:1px solid var(--comms-line);background:rgba(247,250,253,.76);display:flex;flex-direction:column;overflow:hidden}
.comms-agenda>header{padding:23px 22px 18px;border-bottom:1px solid var(--comms-line)}
.comms-agenda>header>span{font-size:10px;color:#9cabbc;letter-spacing:.02em}
.comms-agenda h2{font-size:17px;font-weight:550;color:#5b718c;margin-top:4px;line-height:1.5}
.comms-agenda-list{padding:6px 12px;overflow:auto;min-height:0;scrollbar-width:thin;scrollbar-color:#c8d2de transparent;flex:1}
.comms-agenda-event{margin-bottom:3px;border-bottom:1px solid rgba(121,145,171,.1)}
.comms-agenda-event.is-selected{background:rgba(255,255,255,.75);border-radius:8px;border-color:transparent}
.comms-agenda-event-button{display:flex;align-items:stretch;gap:10px;text-align:left;border:0;background:transparent;width:100%;padding:15px 9px;color:#57708c}
.comms-agenda-event-button>span:last-child{min-width:0;flex:1}
.comms-agenda-event-button small{display:block;color:#91a3b8;font-size:11px;margin-bottom:3px}
.comms-agenda-event-button strong{display:block;font-size:13px;font-weight:550;line-height:1.7;overflow-wrap:anywhere}
.comms-event-details{padding:0 12px 17px 22px;font-size:12px;color:#8498ae;line-height:1.8;overflow-wrap:anywhere}
.comms-event-details>div{white-space:pre-wrap;color:#7188a1;margin:9px 0}
.comms-event-details>small{display:block;font-size:10px;color:#99aabd;margin:9px 0}
.comms-event-details>a{display:inline-flex;align-items:center;gap:5px;color:#6b8caf;font-size:11px}
.comms-event-details .comms-icon{width:12px;height:12px}
.comms-agenda-empty{text-align:center;padding:44px 12px;color:#a4b3c5}
.comms-agenda-empty>.comms-icon{width:25px;height:25px;stroke-width:1.15}
.comms-agenda-empty p{font-size:12px;line-height:1.9;margin-top:12px}
.comms-agenda-empty .comms-text-button{font-size:11px;margin-top:12px}
.comms-calendar-footer{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding-top:13px}
.comms-calendar-footer>span{font-size:10px;color:#a2b0c1;white-space:nowrap;padding-top:5px}
.comms-calendar-sources{display:flex;gap:6px 15px;flex-wrap:wrap}
.comms-calendar-source{display:flex;align-items:center;gap:6px;background:transparent;border:0;padding:4px 0;font-size:11px;color:#8b9bb0}
.comms-calendar-source>span{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--event-color,#7d97b3)}
.comms-calendar-source[aria-pressed="false"]{opacity:.42}
.comms-calendar-source[aria-pressed="false"]>span{background:transparent;box-shadow:inset 0 0 0 1px var(--event-color,#7d97b3)}
.comms-week-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));height:100%;min-height:460px}
.comms-week-day{border-right:1px solid var(--comms-line);min-width:0;overflow:hidden}
.comms-week-day:last-child{border-right:0}
.comms-week-day.is-selected{background:#f0f5fb}
.comms-week-day-heading{width:100%;border:0;border-bottom:1px solid var(--comms-line);background:transparent;padding:14px 0 12px;color:#8599b1;text-align:center}
.comms-week-day-heading small{font-size:11px;display:block;margin-bottom:3px}
.comms-week-day-heading strong{font-size:22px;font-weight:400;line-height:1.4}
.comms-week-day.is-today .comms-week-day-heading{color:#5f84ad}
.comms-week-day>div{padding:6px 4px}
.comms-week-day .comms-event{flex-wrap:wrap;background:#edf3f8;border-left:2px solid #a6b8cc;margin-bottom:6px;padding:6px}
.comms-week-day .comms-event .comms-event-color{display:none}
.comms-week-day .comms-event-time{display:block;width:100%}
.comms-week-day .comms-event strong{font-size:11px;line-height:1.7}
.comms-no-week-events{display:block;color:#d0d8e2;font-size:11px;text-align:center;padding-top:23px}
.comms-connection-dialog{max-width:530px;color:#4a617b}
.comms-connection-dialog>header{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px}
.comms-connection-dialog h2{font-size:21px;line-height:1.5;font-weight:600}
.comms-connection-dialog p{font-size:13px;line-height:1.9;color:#7d91a8;margin:12px 0}
.comms-connection-dialog small{display:block;font-size:11px;color:#9aaabd;line-height:1.8}
.comms-connection-dialog>footer{display:flex;justify-content:flex-end;margin-top:24px}
.comms-setup-kicker{display:block;font-size:11px;color:#96a8bc;margin-bottom:5px}
.comms-connection-dialog .comms-setup-kicker+h2{font-size:19px;overflow-wrap:anywhere}
.comms-setup-accounts{border-top:1px solid #e1e8f0;margin:15px 0 20px}
.comms-setup-account{display:flex;align-items:center;gap:12px;width:100%;padding:15px 4px;border:0;border-bottom:1px solid #e1e8f0;background:transparent;text-align:left;color:#8da0b6}
.comms-setup-account:hover{background:#f0f5fa}
.comms-setup-account>span:nth-child(2){flex:1;min-width:0}
.comms-setup-account strong{display:block;font-size:13px;font-weight:550;color:#536e8c;overflow-wrap:anywhere}
.comms-setup-account small{font-size:10px;color:#9cacc0;line-height:1.7;margin-top:3px}
.comms-setup-provider{display:grid;place-items:center;width:33px;height:33px;border-radius:10px;background:#edf3f8;flex:none}
.comms-local-setup-note{padding:12px 15px;border-radius:8px;background:#f5f0e7;color:#a08b6e!important;font-size:12px!important}
.comms-setup-form{display:flex;flex-direction:column;align-items:stretch;gap:14px;margin-top:18px}
.comms-setup-form label{font-size:12px;color:#7088a3;display:block;line-height:1.6}
.comms-setup-form input{display:block;width:100%;border:1px solid #d6e1ec;border-radius:8px;background:rgba(255,255,255,.8);color:#506c8d;padding:10px 12px;font-size:13px;line-height:1.5;margin-top:5px;box-shadow:none}
.comms-setup-form input::placeholder{color:#aab7c7;font-size:11px}
.comms-setup-form input:focus{outline:2px solid #b1c8e0;outline-offset:1px}
.comms-setup-form>.comms-button{align-self:flex-start;margin-top:2px}
.comms-setup-form small{font-size:10px}
.comms-setup-primary{background:#7796b8;color:#fff;border-color:#6d8eaf}
.comms-setup-primary:hover{background:#688aac;border-color:#5d7fa3}
.comms-google-config{border:1px solid #dfe7f0;border-radius:9px;padding:12px 14px;margin-top:14px}
.comms-google-config>summary{font-size:12px;color:#7891ad;cursor:pointer}
.comms-google-config[open]>summary{margin-bottom:13px}
.comms-google-auth-link{margin-top:18px;padding-top:10px;border-top:1px solid #e2e9f1}
.comms-google-auth-link>.comms-text-button{display:block;margin-top:10px;font-size:11px}
.comms-connection-dialog .comms-setup-error{padding:9px 12px;border-radius:7px;background:#f9f0ee;color:#b18077;font-size:12px}
@media(min-width:1500px){.comms-mail-workspace{grid-template-columns:390px minmax(0,1fr)}.comms-event.is-compact strong{font-size:11px}}
@media(max-width:1100px){.comms-calendar-workspace{grid-template-columns:minmax(0,1fr) 225px}.comms-calendar-cell{padding-left:2px;padding-right:2px}.comms-event.is-compact .comms-event-time{display:none}.comms-agenda>header{padding:21px 17px 17px}.comms-agenda h2{font-size:15px}.comms-detail-scroll{padding:24px}.comms-message-header h2{font-size:21px}.comms-mail-workspace{grid-template-columns:minmax(260px,.95fr) minmax(320px,1.3fr)}}
@media(max-width:900px){.comms-heading{gap:15px}.comms-heading p{max-width:370px;font-size:12px}.comms-heading-actions{gap:10px}.comms-mail-workspace{grid-template-columns:1fr;height:calc(100dvh - 300px);min-height:410px}.comms-mail-detail{display:none}.comms-mail-workspace.has-open-mail .comms-mail-detail{display:flex}.comms-mail-workspace.has-open-mail .comms-mail-list{display:none}.comms-mobile-back{display:inline-flex}.comms-mail-list{border-right:0}.comms-detail-toolbar{padding:12px 20px}.comms-calendar-workspace{grid-template-columns:1fr;height:auto;min-height:0}.comms-month-grid,.comms-week-grid{height:470px;min-height:470px}.comms-agenda{border-left:0;border-top:1px solid var(--comms-line);max-height:310px}.comms-agenda>header{padding:16px 20px 12px}.comms-agenda h2{font-size:16px}.comms-agenda-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;padding:3px 12px}.comms-agenda-empty{grid-column:1/-1;padding:20px}.comms-agenda-empty>.comms-icon{display:none}.comms-agenda-empty p{margin:0}.comms-calendar-footer{flex-wrap:wrap}}
@media(max-width:600px){.comms-heading{align-items:flex-start;margin-bottom:18px}.comms-heading h1{font-size:25px}.comms-heading p{font-size:11px;max-width:220px}.comms-heading-actions{align-items:flex-end;flex-direction:column;gap:2px}.comms-heading-actions .comms-text-button{font-size:11px}.comms-heading-actions .comms-button{padding:7px 9px;font-size:11px}.comms-account-select{max-width:65%}.comms-account-select select{font-size:12px}.comms-account-details summary{font-size:10px}.comms-account-details summary span{font-size:9px}.comms-sync-note{font-size:10px}.comms-mail-tools{gap:10px}.comms-filter{font-size:11px;padding:5px 7px}.comms-filter>span{font-size:10px}.comms-search{max-width:none;flex-basis:100%}.comms-mail-workspace{height:calc(100dvh - 323px);min-height:350px;border-radius:10px}.comms-mail-row{padding:14px}.comms-detail-scroll{padding:22px 18px}.comms-message-header h2{font-size:21px}.comms-message-body{font-size:14px}.comms-detail-toolbar>span{display:none}.comms-calendar-toolbar{gap:8px}.comms-calendar-date{gap:8px}.comms-calendar-date>h2{font-size:18px}.comms-calendar-nav{gap:3px}.comms-calendar-switch .comms-filter{padding:3px 10px}.comms-month-grid,.comms-week-grid{height:410px;min-height:410px}.comms-calendar-cell{padding-top:5px}.comms-day-number{font-size:11px;width:23px;height:23px;line-height:23px}.comms-cell-events .comms-event.is-compact strong{font-size:9px}.comms-more-events{font-size:9px;padding-left:2px}.comms-agenda-list{grid-template-columns:1fr}.comms-calendar-footer{padding-top:10px;gap:5px}.comms-calendar-source{font-size:10px}.comms-calendar-footer>span{font-size:9px}.comms-week-day .comms-event{padding:4px;border-left-width:1px}.comms-week-day .comms-event strong{font-size:10px}.comms-week-day .comms-event-time{font-size:9px}}
@media(prefers-reduced-motion:reduce){.comms-status-dot.is-loading{animation:none}}

/* Stronger reading hierarchy without adding cards or padding. */
.comms-page{--comms-muted:#65758a}
.comms-heading p,.comms-account-row small,.comms-sync-note,.comms-mail-snippet,.comms-message-header time,.comms-detail-toolbar>span,.comms-list-caption>span,.comms-mail-row-bottom>small,.comms-calendar-footer>span{color:#65758a}
.comms-button,.comms-text-button,.comms-filter{font-size:14px}
.comms-filters .comms-filter{font-size:13px;padding:6px 9px}
.comms-filter>span,.comms-filter.is-active>span{font-size:12px;color:#718298}
.comms-search input{font-size:13px}
.comms-search input::placeholder{color:#78889c}
.comms-account-select select{font-size:14px}
.comms-account-details summary,.comms-account-details summary span,.comms-sync-note,.comms-sync-note .comms-text-button{font-size:12px}
.comms-sync-note{flex-wrap:wrap;gap:3px 8px;line-height:1.55}
.comms-sync-note.is-attention{color:#8c7659}
.comms-coverage-note{color:#697c92}
.comms-list-caption strong{font-size:13px;color:#5d728c}
.comms-list-caption>span{font-size:12px}
.comms-mail-row-top strong{font-size:13px;color:#5b6f88}
.comms-mail-row-top time{font-size:12px;color:#65758a}
.comms-mail-subject{font-size:16px;color:#3d516b;line-height:1.5}
.comms-mail-row.is-reviewed .comms-mail-subject{color:#62738a}
.comms-mail-snippet{font-size:13px;line-height:1.65}
.comms-mail-row-bottom>small{font-size:12px}
.comms-follow-tag,.comms-reviewed-tag{font-size:11px}
.comms-follow-tag{color:#94744e}.comms-reviewed-tag{color:#628477}
.comms-message-header strong{font-size:14px}
.comms-message-header time,.comms-detail-toolbar>span,.comms-detail-toolbar .comms-text-button,.comms-provider-unread{font-size:12px}
.comms-provider-unread{color:#71839a}
.comms-message-body{font-size:16px;line-height:1.9;color:#435a73}
.comms-review-bar>span,.comms-review-button,.comms-local-note,.comms-body-note{font-size:12px;color:#65758a}
.comms-review-button{padding:5px 9px}
.comms-archived-note{display:block;margin-top:7px;font-size:12px;line-height:1.6;color:#8a735a}
.comms-empty h2{font-size:16px;color:#61768f}
.comms-empty p{font-size:13px;color:#718297}
.comms-empty .comms-text-button{font-size:13px}
.comms-pagination,.comms-pagination .comms-text-button{font-size:12px;color:#6f829b}
.comms-weekdays>span,.comms-day-number{font-size:13px;color:#687d96}
.comms-event.is-compact strong{font-size:12px;color:#536c88}
.comms-event.is-compact .comms-event-time{font-size:11px;color:#6c8099}
.comms-more-events{font-size:12px;color:#6b839f}
.comms-agenda>header>span{font-size:12px;color:#78899e}
.comms-agenda-event-button small{font-size:12px;color:#6f839d}
.comms-agenda-event-button strong{font-size:14px;color:#516b86}
.comms-event-details{font-size:13px;color:#667f9a}
.comms-event-details>small,.comms-event-details>a{font-size:12px}
.comms-agenda-empty p{font-size:13px;color:#718299}
.comms-calendar-source,.comms-calendar-footer>span{font-size:12px;color:#697d96}
.comms-week-day-heading small{font-size:12px}
.comms-week-day .comms-event strong{font-size:12px}
.comms-week-day .comms-event-time{font-size:11px;color:#6c8099}
.comms-heading,.comms-accounts-bar,.comms-sync-note,.comms-mail-tools,.comms-calendar-toolbar,.comms-calendar-footer{flex-shrink:0}
@media(min-width:901px){
  body.communications-app{height:100dvh;overflow:hidden}
  .communications-app .shell{height:100dvh;min-height:0}
  .communications-app .body{height:100dvh;min-height:0;display:flex;flex-direction:column;overflow:hidden}
  .communications-app .topbar{flex-shrink:0}
  .communications-app #main{display:flex;flex-direction:column;flex:1;width:100%;min-height:0;overflow:hidden;padding-bottom:18px}
  .communications-app .comms-page{flex:1;width:100%;height:100%;min-height:0}
  .communications-app .comms-mail-workspace,.communications-app .comms-calendar-workspace{flex:1;height:auto;min-height:0}
  .communications-app .comms-month-grid,.communications-app .comms-week-grid{height:100%;min-height:0}
  .communications-app .comms-month-days{grid-template-rows:repeat(var(--calendar-weeks,5),minmax(0,1fr))}
  .communications-app .comms-calendar-board{min-height:0}
  .communications-app .comms-week-day{display:flex;flex-direction:column}
  .communications-app .comms-week-day-heading{flex-shrink:0}
  .communications-app .comms-week-day>div{overflow:auto;scrollbar-width:thin;min-height:0}
}
@media(max-width:900px){
  body.communications-app{height:auto;overflow:auto}
  .communications-app .body{height:auto;overflow:visible}
  .communications-app #main{overflow:visible}
  .comms-page{height:auto;min-height:0}
  .comms-mail-workspace{height:max(420px,calc(100dvh - 310px))}
  .comms-calendar-workspace{height:auto;min-height:0}
  .comms-month-grid,.comms-week-grid{height:500px;min-height:500px}
}
@media(max-width:600px){
  .comms-heading p{font-size:12px}
  .comms-heading-actions .comms-button,.comms-heading-actions .comms-text-button{font-size:12px}
  .comms-filters .comms-filter{font-size:12px;padding:5px 7px}
  .comms-sync-note{font-size:11px}
  .comms-account-select select{font-size:13px}
  .comms-account-details summary,.comms-account-details summary span{font-size:11px}
  .comms-event.is-compact .comms-event-time{display:none}
  .comms-cell-events .comms-event.is-compact strong{font-size:11px}
  .comms-calendar-footer>span,.comms-calendar-source{font-size:11px}
}

/* A short month cell shows one complete event with an inline remainder count. */
.comms-calendar-cell{container-type:size;container-name:comms-month-cell}
.comms-cell-events .comms-compact-count{display:none}
@container comms-month-cell (max-height:114px){
  .comms-day-number{width:22px;height:20px;line-height:20px;margin-bottom:2px}
  .comms-cell-events{display:flex;align-items:center;gap:2px;min-width:0}
  .comms-cell-events>.comms-event:first-child{flex:1;min-width:0;padding-top:1px;padding-bottom:1px}
  .comms-cell-events>.comms-event:not(:first-child),.comms-cell-events>.comms-expanded-count{display:none}
  .comms-cell-events>.comms-event .comms-event-time{display:none}
  .comms-cell-events>.comms-compact-count{display:block;flex:none;width:auto;padding:0 3px;font-size:11px;line-height:20px;white-space:nowrap;border-radius:4px;background:#eaf0f7;color:#647e9e}
}
.comms-app-password-guide{display:grid;gap:10px;padding:16px;border-radius:12px;background:var(--surface-soft,#f4f6f4)}
.comms-app-password-guide .comms-button{justify-self:start}
.comms-app-password-guide small,.comms-connection-preserved{line-height:1.65;color:var(--text-muted,#5f6d66)}
.comms-app-password-guide>a:not(.comms-button){font-size:12px;text-underline-offset:3px}
.comms-current-connection{font-size:12px;font-weight:600;color:var(--text-muted,#5f6d66)}
.comms-connection-preserved{font-size:12px}
.comms-setup-alternative{margin-top:16px}
