/* Project Materials uses existing theme tokens; no theme assets or settings changed. */
#fb62Results.fb-project-materials-results-hidden{display:none!important}
.fb-project-materials{display:grid;gap:12px;margin:12px 0 22px}
.fb-pm-card{padding:14px;border:1px solid var(--fb-edge,rgba(127,127,127,.25));border-radius:10px;background:var(--fb-panel,var(--v6-panel));}
.fb-pm-card h3{margin:0 0 5px;font-size:1.05rem}.fb-pm-card p{margin:5px 0 12px}.fb-pm-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px}.fb-pm-stat{padding:10px;border:1px solid var(--fb-edge,rgba(127,127,127,.22));border-radius:8px;display:grid;gap:4px}.fb-pm-stat strong{font-size:1.5rem}.fb-pm-stat small,.fb-pm-row small,.fb-pm-line small{opacity:.75}.fb-pm-list{display:grid;gap:6px}.fb-pm-row{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px;border-bottom:1px solid var(--fb-edge,rgba(127,127,127,.2))}.fb-pm-row-content{min-width:0;display:grid;gap:4px;overflow-wrap:anywhere}.fb-pm-check{display:flex;align-items:center;cursor:pointer}.fb-pm-check input{width:18px;height:18px}.fb-pm-muted{font-size:.8rem;opacity:.7}.fb-pm-actions,.fb-pm-footer{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:12px 0 0}.fb-pm-actions button,.fb-pm-footer button{padding:9px 13px;border:1px solid var(--fb-edge,rgba(127,127,127,.3));border-radius:8px;background:var(--fb-panel,var(--v6-panel));color:inherit;font:inherit;cursor:pointer}.fb-pm-actions .fb-pm-primary{border-color:var(--fb-accent,currentColor)}.fb-pm-line{border-bottom:1px solid var(--fb-edge,rgba(127,127,127,.2));padding:5px 0}.fb-pm-line summary{cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:8px;padding:7px}.fb-pm-line summary span{display:grid;gap:3px}.fb-pm-sources{padding:0 12px 9px}.fb-pm-review summary{cursor:pointer;padding:6px 0;font-weight:600}.fb-pm-checklist{display:grid;gap:9px;margin:12px 0}.fb-pm-checklist label{display:flex;gap:10px;align-items:center}.fb-pm-empty{padding:12px;border:1px dashed var(--fb-edge,rgba(127,127,127,.3));border-radius:8px}.fb-pm-issues{margin:8px 0;padding-left:22px}.fb-pm-issues li{margin:4px 0}
@media(max-width:650px){.fb-pm-stats{grid-template-columns:1fr}.fb-pm-row{align-items:flex-start}.fb-pm-footer button{width:100%}}
.fb-pm-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:10px 0 16px}.fb-pm-field{display:grid;gap:5px;font-size:.85rem}.fb-pm-field input,.fb-pm-field select{width:100%;min-height:38px;padding:8px;border-radius:7px;background:var(--fb-panel,var(--v6-panel));color:inherit;border:1px solid var(--fb-edge,rgba(127,127,127,.3))}.fb-pm-form button{min-height:38px;align-self:end}.fb-pm-review{margin:10px 0}.fb-pm-review>summary{padding:8px 0}@media(max-width:650px){.fb-pm-form{grid-template-columns:1fr}}

/* Stage 20: keep the material takeoff immediately visible and configuration secondary. */
.fb-pm-setup{border:1px solid var(--fb-edge,rgba(127,127,127,.25));border-radius:10px;background:var(--fb-panel,var(--v6-panel))}
.fb-pm-setup>summary{cursor:pointer;padding:13px 14px;font-weight:650}
.fb-pm-setup-body{padding:0 12px 12px;display:grid;gap:10px}
.fb-pm-setup-body .fb-pm-card{margin:0}
.fb-pm-setup>summary:focus-visible,.fb-pm-line summary:focus-visible{outline:2px solid var(--fb-accent,currentColor);outline-offset:2px}
/* Project takeoff: compact grouped lines using existing theme tokens only. */
.fb-pm-filter{display:grid;grid-template-columns:minmax(0,1fr) 170px;gap:8px;margin:12px 0}
.fb-pm-filter input,.fb-pm-filter select{min-width:0;width:100%;min-height:38px;padding:8px 10px;color:inherit;background:var(--fb-panel,var(--v6-panel));border:1px solid var(--fb-edge,rgba(127,127,127,.3));border-radius:8px}
.fb-pm-groups{display:grid;gap:8px}.fb-pm-category{border:1px solid var(--fb-edge,rgba(127,127,127,.28));border-radius:8px;overflow:hidden}.fb-pm-category>summary{cursor:pointer;font-weight:600;padding:12px}.fb-pm-material{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;border-top:1px solid var(--fb-edge,rgba(127,127,127,.2))}.fb-pm-material-name,.fb-pm-material-right{display:grid;gap:3px}.fb-pm-material-name{flex:1;min-width:160px;overflow-wrap:anywhere}.fb-pm-material-name small{opacity:.7}.fb-pm-material-right{text-align:right}.fb-pm-status-approved,.fb-pm-status-draft{font-size:.74rem;opacity:.8}.fb-pm-provenance{width:100%;font-size:.8rem}.fb-pm-provenance>summary{cursor:pointer}.fb-pm-note{margin:12px 0 0!important;font-size:.87rem}.fb-pm-category>summary:focus-visible{outline:2px solid var(--fb-accent,currentColor);outline-offset:-2px}
@media(max-width:650px){.fb-pm-filter{grid-template-columns:1fr}.fb-pm-material-right{text-align:left}}

/* Compact category rows, using existing theme tokens. */
.fb-pm-category>summary{padding:8px 11px}
.fb-pm-material{padding:6px 11px;gap:6px}
.fb-pm-material-name,.fb-pm-material-right{gap:1px}
.fb-pm-provenance:not([open]){margin:0}

/* Stage 29: compact inline draft editor; existing theme tokens only. */
.fb-pm-edit-line{display:grid;grid-template-columns:minmax(140px,1fr) minmax(220px,1fr);gap:12px;align-items:center;padding:7px 11px;border-top:1px solid var(--fb-edge,rgba(127,127,127,.2))}
.fb-pm-edit-controls{display:grid;grid-template-columns:82px 36px minmax(90px,1fr);align-items:center;gap:7px}
.fb-pm-edit-controls input{min-width:0;width:100%;min-height:34px;padding:5px 7px;border:1px solid var(--fb-edge,rgba(127,127,127,.3));border-radius:7px;background:var(--fb-panel,var(--v6-panel));color:inherit;font:inherit}
.fb-pm-edit-status{font-size:.85rem;opacity:.8;margin:0!important}
@media(max-width:750px){.fb-pm-edit-line{grid-template-columns:1fr;gap:5px}.fb-pm-edit-controls{grid-template-columns:78px 30px minmax(70px,1fr)}}

/* Stage 32: workflow-first layout. Reuse all original theme variables. */
.fb-project-materials{gap:10px}.fb-pm-card{padding:12px}.fb-pm-stats{grid-template-columns:repeat(4,minmax(0,1fr))}.fb-pm-stat{padding:9px}.fb-pm-stat strong{font-size:1.3rem}.fb-pm-state{font-size:.85rem;margin:9px 0 0!important;opacity:.85}.fb-pm-export-more{margin-top:10px}.fb-pm-export-more>summary{cursor:pointer;font-size:.85rem;opacity:.85;padding:5px 0}.fb-pm-export-more .fb-pm-footer{margin-top:5px}.fb-pm-additions .fb-pm-card,.fb-pm-suggestions .fb-pm-card{border:0;padding:6px 0;background:transparent}.fb-pm-edit-line{padding:5px 9px}.fb-pm-category>summary{padding:8px 10px}.fb-pm-footer .fb-pm-primary{border-color:var(--fb-accent,currentColor)}
@media(max-width:750px){.fb-pm-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Phase 4: project equipment planning, using existing themed form and cards. */
.fb-pm-equipment-form{display:grid;grid-template-columns:minmax(200px,2fr) minmax(85px,.6fr) minmax(135px,1fr) auto;gap:10px;align-items:end;margin:10px 0 12px}
.fb-pm-equipment-form .fb-pm-field{min-width:0}.fb-pm-equipment-form select,.fb-pm-equipment-form input{width:100%;min-width:0;box-sizing:border-box}
.fb-pm-equipment-form button{min-height:38px}.fb-pm-remove{align-self:center}
@media(max-width:900px){.fb-pm-equipment-form{grid-template-columns:repeat(2,minmax(0,1fr))}.fb-pm-equipment-form button{grid-column:1/-1}}
@media(max-width:550px){.fb-pm-equipment-form{grid-template-columns:1fr}.fb-pm-equipment-form button{grid-column:auto}}

/* Phase 4 review summary uses the existing theme and page gutter. */
.fb-pm-draft-review{padding:9px 11px;margin-top:10px;border:1px solid var(--fb-edge,rgba(127,127,127,.25));border-radius:8px;background:var(--fb-panel,var(--v6-panel));font-size:.85rem}
.fb-pm-actions button:disabled{opacity:.5;cursor:not-allowed}
