/* Meldinger uses the accepted Ressursplan surfaces, type and interaction states.
   Scoped to correspondence; planning dialogs, permissions and workflows remain intact. */
#comms{
  --card:inherit;--ink:inherit;--line:inherit;--muted:var(--ink2);--bg:var(--board);
  --inbox-accent:var(--tv-petrol,#315d78);--inbox-hover:var(--tv-hover,var(--soft));
  --inbox-selected:color-mix(in srgb,var(--inbox-accent) 10%,var(--card));
  --inbox-warn:var(--tw-away-ink,#866016);
  color:var(--ink);background:var(--card);border-color:var(--line);border-radius:10px;
  font:13px/1.5 Inter,"Segoe UI",-apple-system,BlinkMacSystemFont,Arial,sans-serif;
}
body[data-session=app]:has(#v-meldinger.on) .stage{padding:20px}
#comms.comms-page{padding:0;background:transparent;border:0;min-height:0}
#comms .comms-header{gap:12px;align-items:center;margin:0 0 18px}
#comms .comms-header small{font-size:10px;font-weight:600;letter-spacing:1.2px;color:var(--ink2)}
#comms .comms-header h2{font-size:25px;font-weight:650;letter-spacing:-.6px;margin:2px 0 4px;color:var(--ink)}
#comms .hint{color:var(--ink2);font-size:12px;line-height:1.5;margin:4px 0}
#comms .comms-actions{gap:6px;margin-bottom:10px}
#comms .comms-header .comms-actions{margin:0}
#comms button{
  min-height:32px;padding:6px 10px;border:1px solid var(--line);border-radius:6px;
  background:var(--card);color:var(--ink);font-family:inherit;font-size:12px;font-weight:550;line-height:1.4;
  transition:background .12s,border-color .12s,transform .08s;
}
#comms button:hover:not(:disabled){background:var(--inbox-hover);box-shadow:none;border-color:var(--inbox-accent)}
#comms button:active:not(:disabled){transform:translateY(1px);filter:none}
#comms :is(button,input,select,textarea):focus-visible{outline:2px solid var(--hivis);outline-offset:2px}
#comms button:disabled{opacity:.55;cursor:default}
#comms #comms-new,#comms form button:not([type=button]){
  background:var(--hivis);border-color:var(--hivis);color:#251d0c;font-weight:650;
}
#comms #comms-new:hover,#comms form button:not([type=button]):hover{filter:brightness(.97)}
#comms button.comms-delete{color:var(--red);background:var(--reds);border-color:transparent}
#comms label{font-size:11px;color:var(--ink2);font-weight:550}
#comms :is(input:not([type=checkbox]),textarea,select){
  background:var(--card);color:var(--ink);border:1px solid var(--line);border-radius:6px;
  font-family:inherit;font-size:12px;line-height:1.5;padding:7px 9px;margin-top:4px;
}
#comms input::placeholder,#comms textarea::placeholder{color:var(--ink3)}
#comms input[type=checkbox]{accent-color:var(--hivis)}
#comms fieldset{border-color:var(--line);border-radius:7px}
#comms .inbox-tabs{gap:4px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding:0 0 10px}
#comms .inbox-tabs button{color:var(--ink2);background:transparent;border:1px solid transparent;box-shadow:none}
#comms .inbox-tabs button[aria-pressed=true]{
  color:var(--ink);background:var(--card);border-color:var(--line);box-shadow:inset 0 -2px var(--hivis);font-weight:650;
}
#comms .inbox-main-filters{
  margin:12px 0 8px;padding:12px;gap:12px;background:var(--card);border:1px solid var(--line);border-radius:8px;
}
#comms .inbox-main-filters label{margin:0}
#comms .inbox-more{padding:0 2px;color:var(--ink2);font-size:11px}
#comms .inbox-more summary{font-size:11px;color:var(--ink2)}
#comms .inbox-result{gap:8px;margin:10px 0;color:var(--ink2);font-size:11px;flex-wrap:wrap}
#comms .inbox-result button{background:transparent;color:var(--ink2);font-size:11px;padding:4px 8px;min-height:28px}
#comms .inbox-workspace{margin-top:10px;border-color:var(--line);border-radius:9px;background:var(--card);grid-template-columns:minmax(270px,33%) minmax(0,1fr)!important}
#comms .inbox-workspace>aside{padding:0;background:var(--board);border-color:var(--line);max-height:clamp(280px,calc(100vh - 320px),780px)}
#comms .inbox-list-row{border-color:var(--line)}
#comms .inbox-workspace .comms-item{
  color:var(--ink)!important;background:transparent!important;padding:13px 15px!important;
  gap:4px;border:0;border-radius:0;box-shadow:none;margin:0;
}
#comms .inbox-workspace .comms-item:hover{background:var(--inbox-hover)!important;border-color:transparent;box-shadow:none}
#comms .inbox-workspace .comms-item[aria-current=true]{background:var(--inbox-selected)!important;border:0;box-shadow:inset 3px 0 var(--hivis)}
#comms .inbox-row-top{margin:0 0 3px;gap:6px;flex-wrap:wrap}
#comms .inbox-row-top small,#comms .comms-item small{color:var(--ink2);font-size:10px}
#comms .inbox-person{font-size:13px;font-weight:650;line-height:1.4}
#comms .inbox-topic{font-size:12px;font-weight:550;line-height:1.4}
#comms .inbox-project{color:var(--ink2);font-size:11px}
#comms .inbox-preview{color:var(--ink2);font-size:11px;line-height:1.5}
#comms .inbox-channel{border-radius:4px;font-size:10px;padding:3px 6px;font-weight:600}
#comms .channel-account{color:var(--inbox-accent);background:color-mix(in srgb,var(--inbox-accent) 10%,var(--card));border-color:color-mix(in srgb,var(--inbox-accent) 24%,var(--card))}
#comms .channel-internal{color:var(--ink2);background:var(--soft);border-color:var(--line)}
#comms .channel-email{color:var(--inbox-warn);background:color-mix(in srgb,var(--hivis) 12%,var(--card));border-color:color-mix(in srgb,var(--hivis) 32%,var(--line))}
#comms .inbox-state{font-size:10px;padding:2px 0;margin:0;color:var(--ink2)}
#comms .state-attention,#comms .state-failed{color:var(--red);font-weight:650}
#comms .state-waiting{color:var(--inbox-warn)}
#comms .state-resolved,#comms .state-answered{color:var(--green)}
#comms .inbox-delivery{font-size:10px;color:var(--ink2);background:var(--soft);padding:2px 5px;border-radius:4px}
#comms #comms-detail{padding:20px;max-height:clamp(280px,calc(100vh - 320px),780px);overflow:auto;min-width:0}
#comms .inbox-conversation-head{border-color:var(--line);padding-bottom:14px;margin-bottom:16px}
#comms .inbox-conversation-head h3{font-size:19px;line-height:1.35;letter-spacing:-.3px;margin:12px 0 6px;color:var(--ink)}
#comms .inbox-channel-note{font-size:11px;color:var(--ink2)}
#comms .inbox-subject{font-size:12px;color:var(--ink2);margin:0 0 12px}
#comms .inbox-dates{background:var(--board);border:1px solid var(--line);border-radius:6px;padding:10px 12px;gap:16px;color:var(--ink2);font-size:11px}
#comms .inbox-dates strong{font-size:13px;color:var(--ink)}
#comms .inbox-management{gap:6px;margin:12px 0 0}
#comms .inbox-management button{padding:5px 8px;background:var(--board);color:var(--ink2);font-size:11px}
#comms .comms-post{background:var(--board);border:1px solid var(--line);padding:12px 14px;border-radius:7px;margin:10px 0}
#comms .comms-post b{font-size:12px;font-weight:650}
#comms .comms-post small{color:var(--ink2);font-size:10px;float:none;margin-top:3px}
#comms .comms-post p{font-size:12px;margin-top:8px;margin-bottom:0}
#comms .inbox-timeline{gap:0}
#comms .inbox-metadata,#comms .inbox-group-history{border-color:var(--line);color:var(--ink2);margin-top:16px;padding-top:12px}
#comms .inbox-group-context,#comms .inbox-external-note,#comms .inbox-reply-destination{background:var(--board);color:var(--ink2);border-color:var(--inbox-accent);border-radius:6px;padding:10px 12px;font-size:11px}
#comms #followup-reply,#comms #comms-reply{border-color:var(--line);margin-top:16px;padding-top:12px}
#comms #followup-reply .hint{color:var(--ink2);font-size:11px}
#comms .inbox-select-row{background:var(--board)}
#comms .inbox-bulk{color:var(--ink);background:var(--soft);border-color:var(--line);border-radius:6px}
#comms .inbox-bulk button{background:var(--hivis);border-color:var(--hivis);color:#251d0c}
#comms .inbox-empty{padding:28px 18px;color:var(--ink2);font-size:12px}
#comms .inbox-empty h3{font-size:16px;color:var(--ink)}
#comms-status{color:var(--ink2);margin:0}
#comms-status:not(:empty){margin:0 0 12px;background:var(--board);border-color:var(--line);font-size:12px}
#comms #comms-status[role=alert],#comms .inbox-send-error{background:var(--reds);color:var(--red);border-color:var(--red)}
#comms-dialog{background:var(--card);border-radius:10px}
#comms .comms-context,#comms .comms-calendar p{color:var(--ink2)}
#comms .comms-calendar{border-color:var(--line)}
#comms-notices{font-family:Inter,"Segoe UI",-apple-system,BlinkMacSystemFont,Arial,sans-serif}
#comms-notices section{background:var(--card);color:var(--ink);border-color:var(--line);border-left-color:var(--tv-petrol,#315d78);border-radius:8px}
#comms-notices small{color:var(--ink2)}
#comms-notices button{background:var(--board);color:var(--ink);border-color:var(--line);border-radius:6px}
/* Keep pending notices for later without covering the active editor's actions. */
body:has(#modalov.on) #comms-notices{visibility:hidden;pointer-events:none}
@media(max-width:850px){
  #comms .inbox-workspace{grid-template-columns:1fr!important}
  #comms .inbox-workspace>aside{max-height:300px;border-right:0;border-bottom:1px solid var(--line)}
  #comms #comms-detail{max-height:none;padding:16px}
}
@media(max-width:600px){
  body[data-session=app]:has(#v-meldinger.on) .stage{padding:12px}
  #comms .comms-header{align-items:flex-start;flex-direction:column;gap:8px}
  #comms .inbox-main-filters{grid-template-columns:1fr;gap:8px;padding:10px}
  #comms .inbox-main-filters .inbox-search{grid-column:auto}
  #comms .inbox-tabs{flex-wrap:nowrap;overflow:auto}
  #comms .inbox-tabs button{white-space:nowrap;flex-shrink:0}
  #comms .inbox-result>span{flex-basis:100%}
  #comms .inbox-result button{padding:4px 6px;font-size:10px}
}

/* Quiet case list, three folders and permanently discoverable selection. */
#comms .inbox-tab-count {display:inline-block;margin-left:7px;padding:0 6px;border-radius:4px;background:var(--soft);color:var(--ink2);font-size:10px;font-variant-numeric:tabular-nums}
#comms .inbox-quick-filters {display:flex;align-items:center;flex-wrap:wrap;gap:5px;margin:10px 0}
#comms .inbox-quick-filters>button {border-radius:999px;min-height:29px;padding:4px 10px;font-size:11px;background:transparent;color:var(--ink2)}
#comms .inbox-quick-filters>button[aria-pressed=true] {background:var(--soft);border-color:var(--inbox-accent);color:var(--ink);font-weight:650}
#comms .inbox-search-scope {display:inline-flex;align-items:center;gap:6px;margin-left:auto;font-size:11px;cursor:pointer}
#comms .inbox-search-scope input {margin:0}
#comms .inbox-bulk {position:sticky;top:8px;z-index:12;gap:8px;padding:8px 10px;box-shadow:0 1px 3px #1723230a}
#comms .inbox-bulk label {font-size:11px;cursor:pointer;white-space:nowrap}
#comms .inbox-bulk strong {font-size:11px;font-weight:600;margin-right:auto;white-space:nowrap}
#comms .inbox-bulk button {margin:0;padding:5px 9px;min-height:30px;font-size:11px;background:var(--card);border-color:var(--line);color:var(--ink)}
#comms .inbox-bulk button[data-bulk-action=delete] {color:var(--red);background:var(--reds)}
#comms .inbox-bulk button[hidden],#comms .comms-header button[hidden] {display:none!important}
#comms .inbox-bulk #inbox-selection-note:not(:empty) {flex-basis:100%;color:var(--ink2);font-size:11px}
#comms .inbox-select-row {padding:0 7px 0 11px;cursor:pointer}
#comms .inbox-select-row input {margin:0;width:17px;height:17px}
#comms .inbox-list-row.is-selected {background:var(--inbox-selected)}
#comms .inbox-workspace .comms-item {padding:10px 12px!important;gap:3px}
#comms .inbox-row-top {margin-bottom:1px;gap:8px}
#comms .inbox-row-top .inbox-project {overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px}
#comms .inbox-row-top small {flex-shrink:0}
#comms .inbox-person {display:flex;align-items:center;gap:6px;font-size:12px}
#comms .inbox-unread-dot {display:inline-block;width:6px;height:6px;flex:none;border-radius:50%;background:var(--inbox-accent)}
#comms .inbox-topic {font-size:12px;font-weight:550}
#comms .inbox-channel-compact {font-size:10px;font-weight:400;color:var(--ink2)}
#comms .inbox-location {margin-left:auto;font-size:10px;color:var(--ink2);border:1px solid var(--line);padding:0 4px;border-radius:3px}
#comms .inbox-row-bottom {gap:8px;margin-top:2px}
@media(max-width:600px){
 #comms .inbox-search-scope {margin:4px 0 0;flex-basis:100%}
 #comms .inbox-bulk {top:0;gap:6px}
 #comms .inbox-bulk button {padding:5px 7px}
 #comms .inbox-workspace>aside {max-height:45vh}
}
