/* Remaining Option 2 workspaces. Native controls, existing semantic theme tokens. */
.rm-workspace { min-width:0; }
.rm-metrics { display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); margin:16px 0 20px; }
.rm-metrics > div { display:flex; gap:16px; align-items:center; padding:20px; border-right:1px solid var(--border); }
.rm-metrics > div:last-child { border-right:0; }
.rm-metrics .ap-metric-symbol { width:54px; height:54px; flex-basis:54px; }
.rm-red { color:var(--red); background:var(--bg-danger-light); }
.rm-split { display:grid; grid-template-columns:minmax(0,2fr) minmax(280px,1fr); gap:16px; align-items:start; }
.rm-split > *, .rm-dashboard-layout > * { min-width:0; }
.rm-split.rm-no-detail { grid-template-columns:minmax(0,1fr); }
.rm-toolbar { display:flex; align-items:center; flex-wrap:wrap; justify-content:space-between; gap:12px; padding:16px; border-bottom:1px solid var(--border); }
.rm-toolbar .ap-tabs { border-bottom:0; margin:0; }
.rm-toolbar :is(input,button,select),.rm-filters :is(input,select,button),.rm-view-switch button { font-size:12px; }
.rm-toolbar input,.rm-filters input,.rm-filters select { border:1px solid var(--border); border-radius:6px; background:var(--surface); color:var(--text); padding:9px 10px; min-width:0; min-height:38px; }
.rm-toolbar input { width:min(300px,100%); }
.rm-filters { display:flex; flex-wrap:wrap; gap:8px; padding:14px; border-bottom:1px solid var(--border); }
.rm-filters input[type=search] { flex:1 1 160px; }
.rm-filters select { flex:1 1 100px; max-width:180px; }
.rm-filters input[type=date] { max-width:145px; }
.rm-filters button { background:none; border:0; color:var(--primary); cursor:pointer; }
.rm-workspace .ap-table { font-size:12px; }
.rm-workspace .ap-table :is(th,td) { padding:12px 10px; vertical-align:middle; }
.rm-workspace .ap-table th { font-size:11px; white-space:nowrap; }
.rm-workspace .ap-table th button { border:0; padding:0; background:none; color:inherit; font:inherit; cursor:pointer; }
.rm-workspace .ap-table :is(button,.ap-person) { font-size:12px; }
.rm-task-table { min-width:800px; }
.rm-task-table td:first-child { width:35%; }
.rm-task-table .pill { white-space:nowrap; }
.rm-workspace .ap-row-open { font-weight:500; text-align:left; }
.rm-desc { display:block; color:var(--muted); font-size:11px; margin-top:4px; max-width:320px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.rm-actions { display:flex; gap:4px; }
.rm-actions button,.rm-detail header > button,.rm-project-card footer > button,.rm-project-table td:last-child button { display:inline-flex; align-items:center; justify-content:center; border:0; color:var(--muted); background:none; padding:6px; border-radius:4px; min-width:30px; min-height:30px; cursor:pointer; }
.rm-actions .ap-icon { width:16px; height:16px; flex-basis:16px; }
.rm-actions button:hover { background:var(--bg-primary-light); color:var(--text); }
.rm-pagination { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px; color:var(--muted); padding:16px; font-size:12px; }
.rm-pagination > div { display:flex; gap:12px; align-items:center; }
.rm-pagination button,.rm-view-switch button,.rm-wide { background:var(--surface); border:1px solid var(--border); color:var(--text); padding:8px 12px; border-radius:5px; cursor:pointer; min-height:36px; }
.rm-pagination button:disabled { opacity:.4; cursor:default; }
.rm-detail { padding:20px; overflow-wrap:anywhere; }
.rm-detail header { display:flex; gap:12px; justify-content:space-between; align-items:flex-start; }
.rm-detail h3 { margin:0 0 12px; font-size:17px; font-weight:650; }
.rm-detail h4 { font-size:13px; margin:24px 0 10px; }
.rm-detail p { font-size:12px; line-height:1.65; }
.rm-detail dl { display:grid; grid-template-columns:minmax(70px,1fr) minmax(0,2fr); margin:20px 0; font-size:12px; }
.rm-detail :is(dt,dd) { margin:0; padding:12px 0; border-bottom:1px solid var(--border); }
.rm-detail dt { color:var(--muted); }
.rm-detail .rm-description { white-space:pre-wrap; }
.rm-wide { display:flex; gap:8px; justify-content:center; align-items:center; width:100%; margin-top:20px; }
.rm-view-switch { display:flex; gap:6px; }
.rm-view-switch button { display:flex; gap:8px; align-items:center; }
.rm-view-switch [aria-pressed=true] { background:var(--primary); color:var(--on-primary,#FFFFFF); border-color:var(--primary); }
.rm-progress { height:8px; border-radius:5px; overflow:hidden; background:var(--surface-2); margin-top:7px; }
.rm-progress i { display:block; background:var(--green); height:100%; border-radius:5px; }
.rm-engineer-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; padding:12px; }
.rm-person-card { text-align:left; border:1px solid var(--border); border-radius:8px; padding:14px; color:var(--text); background:var(--surface); cursor:pointer; min-width:0; }
.rm-person-card h3 { margin:0 0 6px; font-size:13px; }
.rm-person-card h3 .ap-person { font-size:14px; }
.rm-person-card .ap-avatar { width:36px; height:36px; background:var(--bg-info-light,var(--bg-primary-light)); color:var(--blue); font-size:14px; }
.rm-engineer-detail h3 .ap-person { font-size:18px; }
.rm-engineer-detail h3 .ap-avatar { width:42px; height:42px; background:var(--bg-info-light,var(--bg-primary-light)); color:var(--blue); font-size:18px; }
.rm-person-card .ap-person { flex-wrap:wrap; gap:6px; }
.rm-person-card.ap-selected { outline:1px solid var(--primary); background:var(--bg-primary-light); }
.rm-person-card p { font-size:11px; margin:16px 0 0; }
.rm-person-stats { display:flex; justify-content:space-between; gap:8px; margin-top:20px; }
.rm-person-stats span { display:flex; flex-direction:column; font-size:10px; color:var(--muted); }
.rm-person-stats strong { font-size:17px; font-weight:650; color:var(--text); }
.rm-person-stats .green,.rm-workspace .green { color:var(--green); }
.rm-workspace .red { color:var(--red); }
.rm-workspace .amber { color:var(--amber); }
.rm-engineer-table { min-width:730px; }
.rm-engineer-table .ap-person { white-space:nowrap; }
.rm-engineer-detail { display:flex; flex-direction:column; gap:12px; }
.rm-priority { display:block; position:relative; width:100%; border:0; border-bottom:1px solid var(--border); padding:12px 0; background:none; color:var(--text); text-align:left; cursor:pointer; }
.rm-priority strong { display:block; font-size:12px; line-height:1.6; font-weight:500; }
.rm-priority small { display:block; color:var(--muted); font-size:11px; margin:4px 0 8px; }
.rm-priority .pill { font-size:10px; }
.rm-project-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; padding:12px; }
.rm-project-card { padding:16px; border:1px solid var(--border); border-radius:8px; min-width:0; }
.rm-project-card.ap-selected { outline:1px solid var(--primary); background:var(--bg-primary-light); }
.rm-project-card header { display:flex; justify-content:space-between; gap:8px; align-items:flex-start; }
.rm-project-card header button { font-size:14px; font-weight:650; }
.rm-project-card :is(p,footer) { font-size:12px; }
.rm-project-card footer { display:flex; justify-content:space-between; gap:8px; align-items:center; margin-top:16px; }
.rm-project-card strong,.rm-detail p > strong { float:right; }
.rm-project-meta { display:flex; flex-wrap:wrap; gap:5px; margin:10px 0; }
.rm-project-meta span { font-size:10px; padding:2px 6px; border-radius:4px; background:var(--surface-2); color:var(--muted); }
.rm-project-table { min-width:800px; }
.rm-project-table .rm-project-meta { margin-bottom:0; }
.rm-deliverable { display:flex; align-items:center; gap:8px; padding:5px 0; font-size:12px; }
.rm-deliverable input { accent-color:var(--green); }
#view-projects :is(.projects-head,.proj-filters) { background:var(--surface); border:1px solid var(--border); padding:12px; margin-bottom:0; }
#view-projects .projects-head { border-radius:8px 8px 0 0; border-bottom:0; }
#view-projects .proj-filters { margin-bottom:14px; border-radius:0 0 8px 8px; }
#view-projects .section-head { margin-bottom:8px; }
#view-projects:has(#projectDashboard:not(.hidden)) > .section-head { display:none; }
#view-projects .proj-view-toggle { gap:6px; padding:4px; }
#view-projects .proj-view-btn { display:flex; align-items:center; gap:8px; min-width:74px; min-height:36px; padding:8px 12px; }
#view-projects .proj-view-btn svg { display:block; width:16px; height:16px; }
#view-projects :is(.rm-project-card,.rm-detail,#projectDashboard) .ps-executing { background:var(--bg-info-light,var(--bg-primary-light)); color:var(--blue); }
#view-projects :is(.rm-project-card,.rm-detail,#projectDashboard) .ps-closing { background:var(--bg-warning-light); color:var(--amber); }
#view-projects :is(.rm-project-card,.rm-detail,#projectDashboard) .ps-warranty_ma { background:var(--bg-success-light); color:var(--green); }
#view-projects .ap-page-head { margin:0; }
#view-projects #projectDashboard { max-width:none; }
.rm-todo-layout { display:grid; grid-template-columns:minmax(0,2fr) minmax(280px,1fr); gap:16px; margin-top:16px; align-items:start; }
.rm-todo-main { padding:14px; min-width:0; }
.rm-todo-main .ap-tabs { margin-bottom:12px; }
.rm-todo-overview { display:flex; flex-direction:column; gap:14px; }
.rm-todo-days { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:2px; margin:18px 0; }
.rm-todo-days > div { display:flex; flex-direction:column; text-align:center; gap:8px; font-size:12px; padding:8px 0; border-right:1px solid var(--border); }
.rm-todo-days > div:first-child { border-radius:6px; background:var(--bg-primary-light); }
.rm-todo-days small { font-size:10px; color:var(--muted); }
#view-todo h2 { font-size:32px; margin:0; }
#view-todo .todo-quickadd { position:static; background:var(--surface); border-radius:8px; margin-bottom:14px; }
#view-todo .todo-row { padding:12px 8px; gap:8px; }
#view-todo .todo-title { font-size:12px; }
#view-todo .todo-due { white-space:nowrap; }
#view-todo .todo-section-label { font-size:12px; }
.todo-due.completed { background:var(--bg-success-light); color:var(--green); }
.rm-empty { padding:20px 12px; font-size:13px; }
.rm-dashboard-layout { display:grid; grid-template-columns:minmax(0,1.8fr) minmax(300px,1fr); gap:16px; align-items:start; }
.rm-dashboard-main,.rm-dashboard-side { display:flex; flex-direction:column; gap:14px; min-width:0; }
#projectDashboard :is(.pd-header,.pd-kpi,.pd-section,.pd-scope-block) { background:var(--surface); border:1px solid var(--border); border-radius:8px; box-shadow:none; padding:18px; margin:0; }
#projectDashboard .pd-header { margin:12px 0 16px; }
#projectDashboard .pd-title { font-size:30px; }
#projectDashboard .pd-head-actions button { display:inline-flex; align-items:center; gap:8px; padding:8px 12px; border:1px solid var(--border); border-radius:6px; min-height:38px; }
#projectDashboard .pd-kpis { margin:0 0 18px; gap:12px; }
#projectDashboard .pd-impl-group { border:1px solid var(--border); border-radius:6px; margin:10px 0; padding:12px; }
#projectDashboard .pd-impl-group-title { cursor:pointer; font-size:13px; }
#projectDashboard .rm-rollup-summary { float:right; color:var(--muted); font-weight:400; font-size:11px; margin-left:8px; }
#projectDashboard .pd-impl-table { display:block; max-width:100%; max-height:440px; overflow:auto; font-size:12px; }
#projectDashboard .pd-impl-table th { position:sticky; top:0; background:var(--surface); z-index:1; }
#projectDashboard .pd-impl-progress { overflow:hidden; }
#projectDashboard .pd-scope { display:flex; flex-direction:column; gap:12px; }
#projectDashboard .pd-section-title { font-size:16px; margin-bottom:12px; }
#projectDashboard .pd-eng-list { flex-wrap:wrap; }
#projectDashboard .pd-kpi-value { color:var(--text); }
#projectDashboard .pd-impl-group-title:focus-visible { outline:2px solid var(--primary); }
@media(max-width:1250px) { .rm-engineer-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:1050px) { .rm-split,.rm-todo-layout,.rm-dashboard-layout { grid-template-columns:minmax(0,1fr); } .rm-engineer-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(max-width:760px) {
  .rm-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); gap:0; }
  .rm-metrics > div { padding:12px; gap:10px; }
  .rm-metrics .ap-metric-symbol { width:32px; height:32px; flex-basis:32px; }
  .rm-metrics .ap-metric-copy strong { font-size:24px; }
  .rm-metrics .ap-metric-copy > span { font-size:11px; }
  .rm-engineer-grid,.rm-project-grid { grid-template-columns:minmax(0,1fr); }
  .rm-detail { padding:16px; }
  .rm-toolbar { padding:12px; }
  .rm-toolbar .ap-tabs { flex-wrap:wrap; }
  .rm-actions button { min-width:40px; min-height:40px; }
  #view-todo .todo-row { flex-wrap:wrap; }
  #view-todo .todo-body { flex:1 1 150px; }
  #view-todo .todo-quickadd { flex-wrap:wrap; }
  #view-todo .todo-quickadd input[type=text] { flex:1 1 100%; }
  #view-projects .section-head { flex-wrap:wrap; gap:12px; }
  #projectDashboard .pd-title { font-size:24px; }
  #projectDashboard .pd-kpis { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
