/* Contact post only; existing graphite/indigo workspace tokens. */
#kontakte-view :is(#contact-post-directory,#contact-post-panel)[hidden], #kontakte-view #contact-post-mount-status[hidden] { display: none !important; }
#kontakte-view .cp-contact-entry { min-height: 44px; max-width: 100%; margin: var(--ws-space-sm); padding: var(--ws-space-sm) var(--ws-space-md); white-space: normal; overflow-wrap: anywhere; font: inherit; color: var(--ws-ink); background: var(--ws-surface); border: 1px solid var(--ws-line); border-radius: 6px; cursor: pointer; }
#kontakte-view .cp-contact-entry:hover:not(:disabled) { background: var(--ws-soft); }
#kontakte-view .cp-contact-entry:disabled { color: var(--ws-muted); cursor: default; }
#kontakte-view .cp-contact-entry:focus-visible { outline: 3px solid var(--ws-accent); outline-offset: 3px; }
#kontakte-view .cp-mount-status { color: var(--ws-ink); overflow-wrap: anywhere; margin-block: var(--ws-space-md); }
#contact-post-panel > #contact-post-back { margin-bottom: var(--ws-space-md); }
.cp-workspace { color: var(--ws-ink); background: var(--ws-bg); color-scheme: var(--ws-scheme); font-family: var(--ws-font); font-size: var(--ws-text-body); line-height: 1.55; min-width: 0; overflow-wrap: anywhere; }
.cp-workspace *, .cp-workspace *::before, .cp-workspace *::after { box-sizing: border-box; }
.cp-workspace [hidden] { display: none !important; }
.cp-workspace :is(h2,h3,h4,p) { margin: 0 0 var(--ws-space-sm); }
.cp-workspace h2 { font-size: var(--ws-text-heading); }
.cp-workspace h3 { font-size: var(--ws-text-subheading); }
.cp-workspace h4 { font-size: var(--ws-text-body); }
.cp-workspace :is(button,input,select,textarea,a) { font: inherit; }
.cp-workspace :is(button,input,select,textarea) { min-height: 44px; min-width: 0; max-width: 100%; border: 1px solid var(--ws-line); border-radius: 6px; color: var(--ws-ink); background: var(--ws-surface); padding: var(--ws-space-sm); box-shadow: none; }
.cp-workspace button { cursor: pointer; white-space: normal; }
.cp-workspace button:hover:not(:disabled) { background: var(--ws-soft); }
.cp-workspace button[aria-pressed="true"] { background: var(--ws-accent-soft); border-color: var(--ws-accent); }
.cp-workspace :is(button,input,select,textarea):disabled { cursor: default; color: var(--ws-muted); }
.cp-workspace :is(button,input,select,textarea,a,summary,[tabindex]):focus-visible { outline: 3px solid var(--ws-accent); outline-offset: 3px; scroll-margin: var(--ws-space-md); }
.cp-workspace input::placeholder, .cp-workspace textarea::placeholder { color: var(--ws-muted); opacity: 1; }
.cp-workspace :is(.cp-muted,small) { color: var(--ws-muted); font-size: var(--ws-text-meta); }
.cp-workspace :is(.cp-warning,[role="alert"]) { color: var(--ws-warn); }
.cp-workspace .cp-header { margin-bottom: var(--ws-space-lg); }
.cp-workspace .cp-message { margin-block: var(--ws-space-md); }
.cp-workspace .cp-recovery { border-block: 1px solid var(--ws-line); padding-block: var(--ws-space-sm); margin-block: var(--ws-space-md); }
.cp-workspace .cp-recovery > div { padding-block: var(--ws-space-sm); }
.cp-workspace .cp-actions { display: flex; flex-wrap: wrap; gap: var(--ws-space-sm); margin-block: var(--ws-space-md); }
.cp-workspace .cp-layout { display: grid; grid-template-columns: minmax(12rem,16rem) minmax(0,1fr); gap: var(--ws-space-lg); }
.cp-workspace :is(.cp-list,.cp-detail,.cp-preview,.cp-files) { min-width: 0; }
.cp-workspace .cp-list > button { display: block; width: 100%; text-align: left; margin-bottom: var(--ws-space-sm); }
.cp-workspace .cp-list small { display: block; margin-top: var(--ws-space-xs); }
.cp-workspace .cp-letter { white-space: pre-wrap; max-width: 72ch; }
.cp-workspace .cp-form { display: grid; gap: var(--ws-space-md); margin-block: var(--ws-space-lg); padding-block: var(--ws-space-md); border-block: 1px solid var(--ws-line); }
.cp-workspace .cp-field { display: flex; flex-direction: column; gap: var(--ws-space-xs); min-width: 0; }
.cp-workspace .cp-field :is(input,select,textarea) { width: 100%; }
.cp-workspace textarea { min-height: 10rem; resize: vertical; }
.cp-workspace .cp-files > div { border-bottom: 1px solid var(--ws-line); padding-block: var(--ws-space-md); }
.cp-workspace .cp-files button { margin: var(--ws-space-sm) var(--ws-space-sm) 0 0; }
.cp-workspace .cp-preview { margin-block: var(--ws-space-md); }
.cp-workspace .cp-preview img { display: block; width: auto; max-width: 100%; height: auto; }
.cp-workspace .cp-history { border-top: 1px solid var(--ws-line); padding-block: var(--ws-space-md); }
.cp-workspace summary { min-height: 44px; padding-block: var(--ws-space-sm); cursor: pointer; }
.cp-workspace .pdf-preview-controls { display: flex; flex-wrap: wrap; align-items: center; gap: var(--ws-space-sm); }
.cp-workspace .pdf-preview-zoom { display: flex; flex-wrap: wrap; align-items: center; gap: var(--ws-space-sm); }
/* PDF fit-width subtracts exactly 18px; preserve 8px padding + 1px border. */
.cp-workspace .pdf-preview-scroller { overflow: auto; padding: 8px; border: 1px solid var(--ws-line); min-width: 0; max-height: 70vh; }
.cp-workspace .pdf-preview-canvas { display: block; }
.cp-workspace .pdf-preview-text-content { white-space: pre-wrap; }
@media (max-width: 900px) { .cp-workspace .cp-layout { grid-template-columns: minmax(0,1fr); } }
@media (max-width: 480px) { .cp-workspace .cp-actions > button, .cp-workspace .cp-files button { width: 100%; margin-inline: 0; } }
@media (prefers-reduced-motion: reduce) { .cp-workspace * { scroll-behavior: auto !important; } }
