/* Read-only employee notes retain their saved canvas size in the shared theme. */
.pn-workspace { display:grid; grid-template-columns:268px minmax(0,1fr); min-height:570px; border:1px solid var(--border); border-radius:6px; overflow:hidden; background:var(--surface); }
.pn-directory { padding:18px 14px; border-right:1px solid var(--border-soft); min-width:0; background:var(--surface-alt); }
.pn-directory-head { display:flex; align-items:center; justify-content:space-between; margin-bottom:12px; }
.pn-directory-head h2,.pn-reader-head h2 { margin:0; font-size:16px; font-weight:500; }
.pn-search { display:flex; align-items:center; gap:8px; background:var(--surface); border:1px solid var(--border); border-radius:4px; padding:0 10px; color:var(--muted); }
.pn-search input { width:100%; min-width:0; height:35px; border:0; outline:0; padding:0; background:transparent; }
.pn-search:focus-within { outline:2px solid var(--focus); outline-offset:2px; }
.pn-people { margin-top:10px; max-height:320px; overflow:auto; scrollbar-gutter:stable; }
.pn-person,.pn-document { display:flex; width:100%; text-align:left; color:var(--text,var(--text)); background:transparent; border:0; border-radius:4px; padding:10px; gap:9px; cursor:pointer; transition:background .14s ease-out; }
.pn-person { flex-direction:column; gap:3px; }
.pn-person span,.pn-document span { overflow-wrap:anywhere; }
.pn-person small,.pn-document small,.pn-muted { color:var(--muted); font-size:12px; }
.pn-document small { display:block; margin-top:4px; }
.pn-document .ti { margin-top:2px; color:var(--accent-text); }
.pn-person:hover,.pn-document:hover { background:var(--border-soft); }
.pn-person.is-selected,.pn-document.is-selected { background:var(--accent-soft); color:var(--accent-text); }
.pn-documents:not(:empty) { border-top:1px solid var(--border); margin-top:18px; padding-top:17px; }
.pn-documents h3 { margin:0 10px 9px; font-size:12px; font-weight:500; color:var(--muted); }
.pn-documents { max-height:420px; overflow:auto; }
.pn-reader { min-width:0; background:var(--canvas); }
.pn-reader-head { display:flex; gap:16px; align-items:center; justify-content:space-between; padding:19px 24px; background:var(--surface); border-bottom:1px solid var(--border-soft); }
.pn-reader-head h2 { overflow-wrap:anywhere; }
.pn-reader-head p { margin:6px 0 0; font-size:12px; color:var(--muted); }
.pn-reader-head .button { flex-shrink:0; }
.pn-stage { max-width:100%; overflow:auto; padding:24px; scrollbar-gutter:stable; }
.pn-note { flex:none; max-width:none; box-sizing:border-box; background:var(--canvas); border:1px solid var(--border); border-radius:6px; overflow:hidden; display:flex; flex-direction:column; font-family:'IBM Plex Sans','Segoe UI',sans-serif; font-weight:400; color:var(--text); }
.pn-note-header { flex:none; height:32px; display:grid; grid-template-columns:32px minmax(0,1fr) 32px; align-items:center; background:var(--surface); font-size:12px; }
.pn-note-header .ti { text-align:center; font-size:15px; }
.pn-note-header>span { text-overflow:ellipsis; white-space:nowrap; overflow:hidden; text-align:center; }
.pn-note-body { flex:1; min-height:0; padding:8px 10px 10px; overflow:auto; font-size:13px; line-height:1.35; overflow-wrap:anywhere; }
.pn-note-block+.pn-note-block { margin-top:8px; }
.pn-note-block:has(> .note-quote-block)+.pn-note-block, .pn-note-block+.pn-note-block:has(> .note-quote-block) { margin-top:2px; }
.pn-task-explanation { margin-left:23px; }
.pn-note-text p { margin:0; }
.pn-note-text ul,.pn-note-text ol { padding-left:22px; margin:0; }
.pn-note-table { border:0; }
.pn-note-table .pn-note-body { padding:0; }
.pn-note-grid { width:100%; table-layout:fixed; border-collapse:collapse; font-size:12px; line-height:1.35; }
.pn-note-grid td { border:1px solid var(--border); padding:1px 6px; vertical-align:middle; }
.pn-cell-heading { background:var(--selection); }
.pn-cell-text { white-space:pre-wrap; overflow-wrap:anywhere; min-height:16px; }
.pn-cell-dropdown { padding-right:17px; position:relative; }
.pn-cell-dropdown .ti { position:absolute; right:0; top:2px; font-size:12px; color:var(--muted); }
.pn-checklist { display:flex; flex-direction:column; gap:5px; }
.pn-task { display:flex; align-items:center; gap:8px; }
.pn-task .ti { flex:none; margin-top:1px; font-size:15px; }
.pn-task span { white-space:pre-wrap; }
.pn-task-complete { color:var(--muted); }
.pn-task-complete span { text-decoration:line-through; }
.pn-caption { margin:0; padding:0 24px 24px; font-size:12px; color:var(--muted); }
.pn-empty { min-height:180px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:12px; padding:24px; color:var(--muted); text-align:center; font-size:13px; }
.pn-empty>.ti { font-size:25px; }
.pn-empty p { margin:0; max-width:38ch; line-height:1.5; }
.pn-people .pn-empty { min-height:120px; padding:16px 8px; }
.pn-workspace :focus-visible,.pc-shell :focus-visible { outline:2px solid var(--focus); outline-offset:2px; }
.pn-workspace ::selection { background:var(--selection); color:var(--text); }
.pn-workspace * { scrollbar-width:thin; scrollbar-color:var(--scroll-thumb) var(--canvas); caret-color:var(--accent-text); }
.pc-shell { background:var(--surface); border:1px solid var(--border); border-radius:6px; overflow:hidden; }
.pc-backbar { margin-bottom:12px; }
.pc-backbar:has(button[hidden]) { display:none; }
.pc-header { padding:24px; display:flex; gap:20px; justify-content:space-between; align-items:flex-start; }
.pc-identity { display:flex; gap:15px; min-width:0; }
.pc-avatar { width:48px; height:48px; flex:none; display:grid; place-items:center; border-radius:6px; background:var(--accent-soft); color:var(--accent-text); font-size:23px; }
.pc-name { min-width:0; }
.pc-name h2 { font-size:22px; font-weight:500; line-height:1.25; margin:0; overflow-wrap:anywhere; }
.pc-name p { color:var(--muted); font-size:13px; margin:7px 0 0; }
.pc-availability { display:flex; gap:7px; flex-wrap:wrap; margin-top:11px; font-size:12px; }
.pc-header .profile-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; max-width:520px; gap:8px; min-width:0; }
.pc-header .profile-actions .button { min-height:32px; white-space:nowrap; text-decoration:none; }
.pc-facts { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; margin:0; padding:0 24px 24px; }
.pc-facts dt { color:var(--muted); font-size:12px; margin-bottom:6px; }
.pc-facts dd { margin:0; font-size:13px; overflow-wrap:anywhere; }
.pc-tabs { display:flex; flex-wrap:wrap; gap:6px; border-top:1px solid var(--border-soft); border-bottom:1px solid var(--border); padding:0 24px; background:var(--surface-alt); }
.pc-tabs button { position:relative; display:flex; align-items:center; justify-content:center; gap:7px; padding:13px 16px; border:0; background:transparent; color:var(--muted); cursor:pointer; transition:background .14s ease-out; }
.pc-tabs button:hover { background:var(--border-soft); }
.pc-tabs button[aria-selected=true] { color:var(--accent-text); }
.pc-tabs button[aria-selected=true]::after { content:''; position:absolute; height:2px; bottom:0; left:14px; right:14px; background:var(--accent); }
.pc-pane { padding:24px; }
.pc-period { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:20px; }
.pc-period h3 { font-size:16px; font-weight:500; margin:0 0 6px; }
.pc-period p { margin:0; color:var(--muted); font-size:12px; }
.pc-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; margin-bottom:26px; }
.pc-metric { border-right:1px solid var(--border-soft); padding-right:16px; }
.pc-metric:last-child { border:0; }
.pc-metric>span,.pc-metric small { display:block; font-size:12px; color:var(--muted); }
.pc-metric strong { display:block; font-size:25px; line-height:1.3; font-weight:400; font-variant-numeric:tabular-nums; margin:8px 0; }
.pc-summary { display:grid; grid-template-columns:1fr 1fr; gap:12px 30px; padding:20px 0; border-top:1px solid var(--border-soft); }
.pc-summary>div { display:flex; gap:18px; justify-content:space-between; font-size:13px; }
.pc-summary span { color:var(--muted); }
.pc-summary strong { font-weight:400; text-align:right; font-variant-numeric:tabular-nums; }
.pc-shell .profile-password-panel { margin:20px 0 0; }
.pc-shell .user-journal-panel { border:0; border-radius:0; margin:0; }
.pc-shell .user-journal-panel>.panel-header { padding:0 0 20px; }
.pc-shell .user-journal-panel .journal-filter-grid { padding:0 0 20px; }
.pc-shell #userITProfileRoot>.panel { margin:0; }
.pc-loading { padding:14px 24px; background:var(--accent-soft); color:var(--accent-text); font-size:13px; }
.cd-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; }
.cd-heading h3 { margin:0 0 7px; font-size:16px; }
.cd-heading p,.cd-caution { color:var(--muted); font-size:12px; line-height:1.5; }
.cd-heading p { margin:0; }
.cd-caution { padding:12px 0; border-bottom:1px solid var(--border-soft); }
.cd-message { font-size:13px; color:var(--muted); margin:12px 0; }
.cd-message:empty { display:none; }
.cd-sessions { display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:12px; margin-bottom:20px; max-height:340px; overflow:auto; }
.cd-session { padding:14px; background:var(--surface-alt); border-radius:4px; }
.cd-session>div { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:6px; }
.cd-session small,.cd-events small { display:block; color:var(--muted); font-size:11px; margin-top:5px; }
.cd-session dl { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin:14px 0 0; font-size:12px; }
.cd-session dt { color:var(--muted); margin-bottom:4px; }
.cd-session dd { margin:0; overflow-wrap:anywhere; }
.cd-events { min-width:720px; font-size:12px; }
.cd-events td { vertical-align:top; }
.cd-events details { margin-top:6px; }
.cd-events summary { cursor:pointer; color:var(--accent-text); }
.cd-events ol { margin:9px 0; padding-left:18px; }
.cd-events code { overflow-wrap:anywhere; white-space:normal; }
.cd-events .cd-stack-note { margin:10px 0; max-width:70ch; color:var(--muted); line-height:1.5; }
.cd-events .cd-thread { padding:9px 0; border-top:1px solid var(--border-soft); }
.cd-events .cd-thread summary { padding:3px 0; }
.cd-events summary:focus-visible { outline:2px solid var(--focus); outline-offset:2px; }
.cd-events td:first-child { min-width:185px; }
.cd-more { margin-top:16px; }
@media(max-width:720px) {
  .cd-sessions { grid-template-columns:minmax(0,1fr); }
  .cd-heading { gap:10px; }
  .cd-heading .button { flex-shrink:0; }
  .cd-events { display:block; min-width:0; width:100%; }
  .cd-events thead { display:none; }
  .cd-events tbody { display:block; }
  .cd-events tr { display:block; padding:14px; background:var(--surface-alt); border-radius:4px; margin-bottom:12px; }
  .cd-events td { display:block; border:0; padding:0 0 14px; overflow-wrap:anywhere; }
  .cd-events td:last-child { padding-bottom:0; }
  .cd-events td::before { display:block; color:var(--muted); font-size:11px; margin-bottom:5px; }
  .cd-events td:nth-child(1)::before { content:'Время и восстановление'; }
  .cd-events td:nth-child(2)::before { content:'Событие'; }
  .cd-events td:nth-child(3)::before { content:'Приложение'; }
  .cd-events td:nth-child(4)::before { content:'Технические детали'; }
}
@media(max-width:1050px) { .pc-header { flex-direction:column; }.pc-header .profile-actions { max-width:none; justify-content:flex-start; }.pc-facts { grid-template-columns:1fr 1fr; }.pc-metrics { grid-template-columns:1fr 1fr; }.pc-metric:nth-child(2) { border:0; }.pn-workspace { grid-template-columns:235px minmax(0,1fr); } }
@media(max-width:720px) { .pn-workspace { grid-template-columns:1fr; }.pn-directory { border-right:0; border-bottom:1px solid var(--border); padding:14px; }.pn-people { max-height:180px; }.pn-documents { max-height:200px; }.pn-reader-head { padding:16px; align-items:flex-start; }.pn-reader-head .button { font-size:0; padding:7px 9px; }.pn-reader-head .button .ti { font-size:17px; }.pn-stage { padding:16px; }.pn-caption { padding:0 16px 20px; }.pc-header { padding:18px; }.pc-name h2 { font-size:20px; }.pc-facts { padding:0 18px 18px; gap:16px; }.pc-tabs { padding:0 8px; }.pc-tabs button { padding:13px 10px; }.pc-pane { padding:18px; }.pc-period { align-items:flex-start; }.pc-metrics { gap:18px; }.pc-metric strong { font-size:23px; }.pc-summary { grid-template-columns:1fr; }.pc-header .profile-actions .button { font-size:12px; }.pc-avatar { width:40px; height:40px; }.pc-loading { padding:14px 18px; } }
@media(prefers-reduced-motion:reduce) { .pn-person,.pn-document,.pc-tabs button { transition:none; } }

/* Saved-note geometry only. Keep data-table styles outside the note canvas. */
.pn-note .pn-note-grid { min-width:0; max-width:none; border-collapse:separate; border-spacing:0; border:1px solid var(--border); }
.pn-note .pn-note-grid td { position:relative; width:auto; min-width:0; max-width:none; padding:0; border-width:0 1px 1px 0; white-space:normal; }
.pn-note .pn-note-grid td:last-child { border-right-width:0; }
.pn-note .pn-note-grid tr:last-child td { border-bottom-width:0; }
.pn-note .pn-cell-text { position:absolute; inset:0; min-height:0; padding:2px 10px 2px 7px; display:flex; align-items:center; overflow:hidden; line-height:16px; }
.pn-note .pn-cell-value { display:block; width:100%; min-width:0; max-height:100%; overflow:hidden; white-space:pre-wrap; overflow-wrap:anywhere; }
.pn-note .pn-cell-dropdown { padding-right:23px; }
.pn-note .pn-cell-dropdown .pn-cell-value { white-space:nowrap; text-overflow:ellipsis; }
.pn-note .pn-cell-dropdown .ti { right:5px; top:50%; transform:translateY(-50%); }
