.comms-dialog,.comms-notify-block,.comms-banner{--comms-bg:#fff;--comms-ink:#21332e;--comms-muted:#62766e;--comms-line:#dce5e0;--comms-soft:#f3f7f5;--comms-danger:#b52d26;font:14px/1.5 system-ui,sans-serif;color:var(--comms-ink);box-sizing:border-box}
.comms-dialog{padding:0;width:min(740px,calc(100vw - 32px));max-height:calc(100dvh - 40px);border:1px solid var(--comms-line);border-radius:18px;background:var(--comms-bg);box-shadow:0 24px 90px #102e3040}
.comms-dialog[open]{display:flex;flex-direction:column}.comms-dialog::backdrop{background:#142b3c80;backdrop-filter:blur(3px)}
.comms-head,.comms-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 22px;flex-shrink:0}.comms-head{border-bottom:1px solid var(--comms-line)}.comms-head h2{font-size:19px;font-weight:650;margin:0}
.comms-dialog button,.comms-notify-block button{font:inherit;cursor:pointer;min-height:36px;line-height:1.3}.comms-close{height:36px;width:36px;border:1px solid var(--comms-line);border-radius:9px;background:var(--comms-bg);color:var(--comms-ink);font-size:25px!important}
.comms-body{padding:20px 22px;overflow-y:auto;min-height:0;overscroll-behavior:contain}.comms-summary{margin:0;font-size:17px;font-weight:650;color:#348367}.comms-summary[data-state=warning]{color:var(--comms-danger)}.comms-summary[data-state=unknown]{color:var(--comms-muted)}
.comms-schedule,.comms-note{font-size:12px;color:var(--comms-muted);margin:6px 0 18px}.comms-note{margin:18px 0 0;line-height:1.6}
.comms-check{padding:14px 0;border-bottom:1px solid var(--comms-line)}.comms-check:last-child{border:0}.comms-check-head{display:flex;align-items:center;gap:9px}.comms-check h3{font-size:14px;font-weight:650;margin:0;flex:1}.comms-dot{height:7px;width:7px;flex-shrink:0;border-radius:50%;background:#409271}.comms-check[data-level=info] .comms-dot{background:#89968f}.comms-check[data-level=warning] .comms-dot{background:#c68526}.comms-check[data-level=error] .comms-dot{background:#cb4036}.comms-check-label{font-size:11px;color:var(--comms-muted)}.comms-check p{margin:6px 0 0 16px;overflow-wrap:anywhere;font-size:13px;color:var(--comms-muted)}
.comms-footer{border-top:1px solid var(--comms-line);background:var(--comms-soft)}.comms-feedback{font-size:12px;color:var(--comms-muted)}.comms-refresh{padding:10px 16px;border:0;border-radius:9px;background:#388269;color:#fff;white-space:nowrap;font-weight:600!important}.comms-refresh:disabled{opacity:.6;cursor:wait}
.comms-notify-block{padding:14px 16px;background:var(--comms-soft);border-bottom:1px solid var(--comms-line)}.comms-notify-block p{font-size:12px;overflow-wrap:anywhere;margin:5px 0 10px;color:var(--comms-muted)}.comms-notify-block[data-state=warning] strong{color:var(--comms-danger)}.comms-details{padding:7px 11px;border:1px solid var(--comms-line);border-radius:8px;background:var(--comms-bg);color:var(--comms-ink)}
#btn-admin-pending-contracts.comms-has-issues{position:relative;color:#c0392b!important}#btn-admin-pending-contracts.comms-has-issues:after{content:'';position:absolute;top:4px;right:4px;width:7px;height:7px;border-radius:50%;background:#c0392b;border:2px solid #fff}
.comms-banner{position:fixed;z-index:10050;right:20px;bottom:20px;width:min(380px,calc(100vw - 32px));padding:13px 17px;text-align:left;border:1px solid #ebc3bd;border-left:4px solid #bc4436;border-radius:11px;background:var(--comms-bg);box-shadow:0 5px 25px #172b2520;cursor:pointer;font-size:13px}.comms-banner[hidden]{display:none}
.comms-dialog button:focus-visible,.comms-notify-block button:focus-visible,.comms-banner:focus-visible{outline:3px solid #65a991;outline-offset:3px}
@media(max-width:600px){.comms-dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 20px);border-radius:14px}.comms-head,.comms-footer{padding:12px 16px}.comms-body{padding:16px}.comms-head h2{font-size:17px}.comms-check-head{flex-wrap:wrap}.comms-check-label{font-size:10px}.comms-footer{flex-wrap:wrap;gap:8px}.comms-feedback:empty{display:none}.comms-refresh{margin-left:auto}.comms-banner{right:16px;bottom:calc(80px + env(safe-area-inset-bottom));font-size:12px}}
[data-theme=dark] .comms-dialog,[data-theme=dark] .comms-notify-block,[data-theme=dark] .comms-banner{--comms-bg:#162822;--comms-ink:#e5efe9;--comms-muted:#b5c5be;--comms-line:#364c42;--comms-soft:#1b3027;--comms-danger:#ff9d91}

/* Keep notices clear of form actions; the bell retains the full report. */
.comms-banner{display:flex;align-items:flex-start;gap:8px;z-index:90;top:calc(80px + env(safe-area-inset-top));bottom:auto;padding:8px;cursor:default}
.comms-banner[data-level=warning]{border-color:#e8d8b3;border-left-color:#b88628}
.comms-banner-open,.comms-banner-close{font:inherit;color:inherit;background:transparent;border:0;cursor:pointer}
.comms-banner-open{flex:1;min-width:0;text-align:left;padding:8px;line-height:1.5;overflow-wrap:anywhere}
.comms-banner-close{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;border-radius:8px;font-size:24px;line-height:1}
.comms-banner-close:hover{background:var(--comms-soft)}
.comms-banner button:focus-visible{outline:3px solid #65a991;outline-offset:1px}
@media(max-width:600px){.comms-banner{top:calc(72px + env(safe-area-inset-top));bottom:auto}.comms-banner-close{flex-basis:44px;width:44px;height:44px}}
