/* Information hierarchy only. All values, editors and permission gates are retained. */
#primary-navigation { display:contents; }
.mobile-menu-toggle { display:none; }
.ui-disclosure { border-bottom:1px solid var(--divider); }
.ui-disclosure > summary, .panel-secondary-actions > summary {
  cursor:pointer; min-height:40px; padding:10px 4px;
  color:var(--text); font-size:calc(13px + var(--ui-font-step, 0px)); font-weight:600;
}
.ui-disclosure > summary:focus-visible, .panel-secondary-actions > summary:focus-visible,
.project-open-button:focus-visible, .mobile-menu-toggle:focus-visible {
  outline:2px solid var(--accent); outline-offset:2px; border-radius:5px;
}
.disclosure-hint { display:inline; margin-left:12px; color:var(--muted); font-size:calc(11px + var(--ui-font-step, 0px)); font-weight:400; }
.annual-profit-display { display:inline-flex; align-items:baseline; flex-wrap:wrap; gap:6px 12px; margin-left:20px; font-size:calc(11px + var(--ui-font-step, 0px)); font-weight:400; color:var(--muted); }
.annual-profit-display strong { font-family:var(--font-mono); font-size:calc(19px + var(--ui-font-step, 0px)); font-weight:600; color:var(--green); }
.ui-disclosure > .stats { padding:10px 0 14px; }
.project-filter-disclosure { margin-left:auto; }
.project-filter-disclosure[open] { flex-basis:100%; }
.project-filter-disclosure .project-mini-stat { margin:8px 0; justify-content:flex-start; }
.list-display-bar { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:8px; margin:12px 0; font-size:calc(12px + var(--ui-font-step, 0px)); color:var(--muted); }
.list-display-toggle { display:flex; gap:4px; flex-shrink:0; }
.list-display-toggle .mode-btn { min-height:36px; padding:7px 12px; }
.is-compact-list .list-secondary { display:none; }
.project-open-button { background:none; border:0; color:inherit; font:inherit; font-weight:inherit; text-align:left; cursor:pointer; }
.project-open-button:hover { color:var(--accent); text-decoration:underline; text-underline-offset:3px; }
.project-status-compact { display:none; }
@media screen {
  #view-projects .proj-summary-line {
    display:flex; align-items:center; flex-wrap:wrap; gap:6px 12px; margin-top:8px;
  }
  #view-projects .proj-summary-line .proj-client { margin-top:0; overflow-wrap:anywhere; }
  #view-projects .proj-summary-line .proj-alert-inline { margin-top:0; min-height:28px; padding:3px 8px; }
  #view-projects.is-compact-list .proj-status-slot { display:none; }
  #view-projects.is-compact-list .project-status-compact {
    display:inline-flex; color:var(--muted); font-size:calc(11px + var(--ui-font-step, 0px)); line-height:1.5;
  }
}
@media screen and (min-width:769px) {
  /* Leave breathing room between projects and columns, not more badges. */
  #view-projects .tbl-wrap .project-data-row td { padding:20px 16px; }
  #view-projects .tbl-wrap .project-data-row .list-name-cell { padding-left:18px; padding-right:22px; }
  #view-projects.is-compact-list th:nth-child(2),
  #view-projects.is-compact-list .project-data-row td:nth-child(2) { display:none; }
}
#view-maintenance.is-compact-list .tbl-wrap th:nth-child(3),
#view-maintenance.is-compact-list .tbl-wrap td:nth-child(3),
#view-maintenance.is-compact-list .tbl-wrap th:nth-child(5),
#view-maintenance.is-compact-list .tbl-wrap td:nth-child(5),
#view-maintenance.is-compact-list .tbl-wrap th:nth-child(6),
#view-maintenance.is-compact-list .tbl-wrap td:nth-child(6),
#view-maintenance.is-compact-list .tbl-wrap th:nth-child(9),
#view-maintenance.is-compact-list .tbl-wrap td:nth-child(9),
#view-maintenance.is-compact-list .tbl-wrap th:nth-child(10),
#view-maintenance.is-compact-list .tbl-wrap td:nth-child(10) { display:none; }
.panel:has(.project-detail-content), .panel:has(.project-detail-content) .panel-inner { width:540px; max-width:100vw; }
.panel:has(.project-detail-content) .panel-title { white-space:normal; line-height:1.5; }
.project-detail-section { margin-bottom:6px; }
.disclosure-body { padding:6px 0 14px; }
.project-detail-alerts { display:flex; gap:6px; flex-wrap:wrap; margin-bottom:12px; }
.project-detail-totals { display:grid; grid-template-columns:1fr 1fr; gap:12px; padding:12px; margin:12px 0; background:var(--surface2); border-radius:8px; }
.project-detail-totals > span { font-size:calc(11px + var(--ui-font-step, 0px)); color:var(--muted); }
.project-detail-totals strong { display:block; color:var(--text); font-size:calc(16px + var(--ui-font-step, 0px)); margin-top:4px; }
.panel-secondary-actions { position:relative; }
.panel-secondary-actions > summary { font-size:calc(12px + var(--ui-font-step, 0px)); color:var(--muted); }
.panel-secondary-menu { position:absolute; left:0; bottom:calc(100% + 8px); width:210px; padding:8px; display:flex; flex-direction:column; gap:6px; background:var(--surface); border:1px solid var(--border); border-radius:10px; box-shadow:var(--shadow-overlay); }
#view-resources .res-brand { display:none; }
@media (max-width:768px) {
  .sidebar { justify-content:space-between; }
  .mobile-menu-toggle { display:inline-flex; align-items:center; min-height:42px; }
  #primary-navigation { display:none; }
  .sidebar.mobile-nav-open #primary-navigation { display:flex; flex-direction:column; gap:10px; flex-basis:100%; min-width:0; }
  .sidebar.mobile-nav-open .nav-group { display:flex; flex-wrap:wrap; width:100%; }
  .sidebar.mobile-nav-open .nav-label { display:none; }
  .sidebar.mobile-nav-open .sidebar-utility { margin-left:0; width:100%; flex-wrap:wrap; }
  .sidebar .nav-item { min-height:40px; }
  .sidebar-utility-panel { right:auto; left:0; }
  .projects-overview { padding:8px; }
  .projects-overview .filters-row { padding:6px 0; margin-top:4px; }
  .project-filter-disclosure { margin-left:0; width:100%; }
  .project-alert-summary { margin-top:4px; padding:8px 0; }
  .project-alert-chip { min-height:34px; }
  .disclosure-hint { margin-left:8px; }
  .annual-profit-display { display:flex; justify-content:space-between; margin:6px 0 0 14px; }
  .list-display-bar { margin:8px 0; }
  .panel:has(.project-detail-content), .panel:has(.project-detail-content) .panel-inner { width:100%; }
  .panel:has(.project-detail-content) .detail-row { flex-direction:row; gap:10px; }
  .panel:has(.project-detail-content) .detail-key { width:38%; flex-shrink:0; }
  .panel:has(.project-detail-content) .detail-val { width:auto; flex:1; text-align:right; min-width:0; overflow-wrap:anywhere; }
  #view-projects.is-compact-list .tbl-wrap { border:0; background:transparent; overflow:visible; }
  #view-projects.is-compact-list table { display:block; min-width:0; width:100%; }
  #view-projects.is-compact-list thead { display:none; }
  #view-projects.is-compact-list tbody { display:block; }
  #view-projects.is-compact-list .project-section-row { display:block; margin:8px 0; }
  #view-projects.is-compact-list .project-section-row td { display:block; border-radius:8px; }
  #view-projects.is-compact-list .project-data-row { display:grid; grid-template-columns:1fr 1fr; gap:10px 14px; margin-bottom:10px; padding:14px; border:1px solid var(--border); border-radius:10px; background:var(--surface); }
  #view-projects.is-compact-list .project-data-row td { display:block; padding:0; border:0; min-width:0; text-align:left; }
  #view-projects.is-compact-list .project-data-row td:first-child,
  #view-projects.is-compact-list .project-data-row td:last-child { grid-column:1 / -1; }
  #view-projects.is-compact-list .project-data-row td:nth-child(2) { display:none; }
  #view-projects.is-compact-list .project-data-row td[data-label]::before { content:attr(data-label); display:block; font-size:calc(11px + var(--ui-font-step, 0px)); color:var(--muted); margin-bottom:3px; }
  #view-projects.is-compact-list .project-data-row .amt, #view-projects.is-compact-list .project-data-row .amt-sub { text-align:left; }
  #view-projects.is-compact-list .proj-cell-main { display:flex; flex-direction:column; align-items:flex-start; gap:6px; }
  #view-projects.is-compact-list .proj-summary-line { gap:8px 12px; margin-top:10px; }
  #view-projects.is-compact-list .proj-summary-line .proj-alert-inline { min-height:32px; }
  #view-projects.is-compact-list .proj-name { font-size:calc(14px + var(--ui-font-step, 0px)); }
  #view-maintenance.is-compact-list .tbl-wrap { border:0; background:transparent; overflow:visible; }
  #view-maintenance.is-compact-list table { display:block; min-width:0; width:100%; }
  #view-maintenance.is-compact-list thead { display:none; }
  #view-maintenance.is-compact-list tbody { display:block; }
  #view-maintenance.is-compact-list .maintenance-data-row { display:grid; grid-template-columns:1fr 1fr; gap:10px 14px; margin-bottom:10px; padding:14px; border:1px solid var(--border); border-radius:10px; background:var(--surface); }
  #view-maintenance.is-compact-list .maintenance-data-row td { padding:0; border:0; min-width:0; text-align:left; }
  #view-maintenance.is-compact-list .maintenance-data-row td:first-child { grid-column:1 / -1; }
  #view-maintenance.is-compact-list .maintenance-data-row td:nth-child(4) { order:2; }
  #view-maintenance.is-compact-list .maintenance-data-row td:nth-child(8) { order:3; }
  #view-maintenance.is-compact-list .maintenance-data-row td:nth-child(2) { order:4; }
  #view-maintenance.is-compact-list .maintenance-data-row td:nth-child(7) { order:5; }
  #view-maintenance.is-compact-list .maintenance-data-row td[data-label]::before { content:attr(data-label); display:block; font-size:calc(11px + var(--ui-font-step, 0px)); color:var(--muted); margin-bottom:3px; }
  #view-maintenance.is-compact-list .maintenance-data-row .amt { text-align:left; }
}
@media print {
  .mobile-menu-toggle, .list-display-toggle { display:none !important; }
}
