.hub-record { display:grid; gap:20px; }
.hub-record section { border-top:1px solid var(--line); padding-top:12px; min-width:0; }
.hub-record h3,.hub-panel h3 { font-size:17px; margin:8px 0 14px; }
.hub-panel .feature-line > .feature-record-link,.hub-record .feature-line > .feature-record-link { margin-inline-start:0; flex:1; min-width:0; }
.hub-panel .gantt-stats { grid-template-columns:repeat(4,minmax(0,1fr)); margin-top:14px; }
.hub-project-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.hub-project-heading h3 { margin:0; }
.hub-pinned { border-inline-start:3px solid var(--accent)!important; }
[data-hub-pin][aria-pressed=true] { color:var(--accent); }
.hub-subtask .entry-title,.hub-subtask .gantt-task-head > strong,.hub-subtask .kanban-card-title > strong { padding-inline-start:14px; border-inline-start:2px solid var(--line); }
.hub-archive-banner { padding:12px 0; border-bottom:1px solid var(--line); color:var(--muted); font-weight:600; margin-bottom:14px; }
.hub-filter { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)) auto; align-items:end; }
.hub-workload-person { padding:14px 0; border-bottom:1px solid var(--line); }
.hub-workload-person:last-child { border:0; }
.hub-workload-person h3 { display:flex; gap:12px; flex-wrap:wrap; }
.hub-workload-person small { color:var(--accent-hover); }
.hub-workload-person progress { width:100%; height:12px; accent-color:var(--accent); }
.hub-office-grid { max-width:100%; max-height:65vh; overflow:auto; margin-top:12px; }
.hub-office-grid table { border-collapse:collapse; width:100%; }
.hub-office-grid td { padding:7px 10px; border:1px solid var(--line); color:var(--ink); min-width:80px; max-width:320px; overflow-wrap:anywhere; vertical-align:top; }
.hub-office-text { max-height:70vh; overflow:auto; white-space:pre-wrap; overflow-wrap:anywhere; line-height:1.6; }
.shared-view { max-width:820px; margin:40px auto; padding:20px; }
.shared-view [hidden] { display:none!important; }
.shared-view section { border-bottom:1px solid var(--line); padding:12px 0; }
.shared-view p { white-space:pre-wrap; overflow-wrap:anywhere; }
@media(max-width:600px){.hub-filter { grid-template-columns:minmax(0,1fr); }.hub-project-heading { align-items:flex-start; flex-direction:column; }.hub-panel .gantt-stats { grid-template-columns:repeat(2,minmax(0,1fr)); }}
