/* APS Solution Hub / Native Revit automation + QA/QC */
.hub-brand{gap:10px}.hub-brand>span{font-size:23px}.brand-small{font-size:11px;letter-spacing:0}.rail-layout-toggle{display:inline-flex}.panel-tools-actions{display:flex;align-items:center;gap:8px;margin-left:12px}.panel-toggle .icon{width:15px;height:15px}.panel-toggle{height:32px;font-size:11px;padding:0 10px}.model-panel-heading{height:42px;display:flex;align-items:center;justify-content:space-between;padding:0 14px;border-bottom:1px solid var(--border);font-size:11px;color:var(--secondary)}.model-panel-heading button{height:26px;font-size:10px;background:none;border:0;color:var(--secondary)}
@media(min-width:761px){html[data-rail=collapsed] .app-shell{grid-template-columns:minmax(0,1fr)}html[data-rail=collapsed] .app-body{grid-column:1;min-width:0}html[data-rail=collapsed] .rail{display:none}html[data-rail=collapsed] .rail-layout-toggle{background:var(--plotter-wash);color:var(--accent)}}
html[data-tools=collapsed] .workspace-layout{grid-template-columns:minmax(0,1fr)}html[data-tools=collapsed] #viewerStage{grid-column:1;min-width:0;width:100%}html[data-tools=collapsed] #modelToolsPanel{display:none}html[data-tools=collapsed] .panel-toggle{background:var(--plotter-wash);border-color:var(--accent);color:var(--accent)}
.qa-top-controls{display:grid;grid-template-columns:1fr 1fr;gap:16px}.qa-top-controls label{display:flex;flex-direction:column;gap:8px;font-size:12px;color:var(--secondary)}.qa-top-controls .form-select{height:40px}.qa-mode-strip{margin:20px 0;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px;border:1px solid var(--border);border-radius:8px;background:var(--surface);font-size:11px}.qa-mode-strip strong{font-weight:500;display:block;margin-bottom:4px}.qa-mode-strip p{color:var(--secondary);line-height:1.7}.qa-mode-strip.example{border-color:#aa8752}.qa-counters{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin:20px 0}.qa-counter{padding:16px;border:1px solid var(--border);border-radius:8px;background:var(--surface);display:flex;flex-direction:column;gap:8px}.qa-counter strong{font:27px var(--font-mono);font-weight:400}.qa-counter span{font-size:10px;color:var(--secondary)}.qa-counter.critical strong{color:var(--clash-a)}.qa-counter.warning strong{color:var(--clash-b)}.qa-counter.healthy strong{color:var(--accent)}.qa-audit-table{width:100%;border-collapse:collapse;font-size:11px;min-width:960px}.qa-audit-table th{text-align:left;padding:12px;font-size:10px;font-weight:400;color:var(--muted);background:var(--raised);border-bottom:1px solid var(--border)}.qa-audit-table td{padding:16px 12px;border-bottom:1px solid var(--border);vertical-align:top;line-height:1.8}.qa-audit-table th:first-child{width:220px}.qa-audit-table th:nth-child(2){width:310px}.qa-audit-table td strong{font-size:12px;font-weight:400}.qa-audit-table td small{display:block;color:var(--secondary);font-size:10px;margin-top:6px}.qa-status{display:inline-flex;align-items:center;gap:6px;font:9px var(--font-mono);white-space:nowrap;color:var(--secondary)}.qa-status:before{content:'';height:5px;width:5px;border-radius:50%;background:currentColor}.qa-status.HEALTHY{color:var(--accent)}.qa-status.CRITICAL{color:var(--clash-a)}.qa-status.WARNING{color:var(--clash-b)}.qa-status.UNKNOWN{color:var(--muted)}.qa-results-tools{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:20px 0}.qa-results-tools select{width:170px}.qa-benchmarks{margin-top:20px;border-top:1px solid var(--border);padding-top:16px}.qa-benchmarks summary{cursor:pointer;font-size:13px}.qa-benchmark-list{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:20px}.qa-benchmark{border:1px solid var(--border);padding:14px;border-radius:7px;background:var(--bg)}.qa-benchmark>label{display:flex;gap:8px;align-items:center;font-size:11px;margin-bottom:12px}.qa-benchmark>label input{accent-color:var(--accent)}.qa-benchmark-field{display:flex;justify-content:space-between;gap:12px;align-items:center;font-size:10px;color:var(--secondary);margin-top:8px}.qa-benchmark-field input{width:130px;height:30px;font-size:11px}.qa-rule-list{margin-top:20px}.qa-rule-row{display:flex;justify-content:space-between;gap:16px;align-items:center;border-top:1px solid var(--border);padding:12px 0;font-size:11px}.qa-rule-row small{display:block;color:var(--secondary);font-size:10px;margin-top:5px}.qa-rule-form{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:20px}.qa-rule-form label{display:flex;flex-direction:column;gap:6px;font-size:10px;color:var(--secondary)}.qa-template-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:20px}.qa-import{border:1px dashed var(--border);padding:20px;border-radius:8px;margin-top:20px}.qa-import p{font-size:11px;color:var(--secondary);line-height:1.8;margin:12px 0}.qa-import label{display:flex;gap:8px;font-size:11px;color:var(--secondary);margin:16px 0;align-items:flex-start}.qa-binding{font:10px var(--font-mono);color:var(--secondary);line-height:1.8;overflow-wrap:anywhere}.qa-link-list{max-height:420px;overflow:auto}.qa-link-row{border-top:1px solid var(--border);padding:14px 0;font-size:12px}.qa-link-row small{display:block;color:var(--secondary);font-size:10px;line-height:1.8;overflow-wrap:anywhere;margin-top:4px}.recipe-grid{display:grid;grid-template-columns:minmax(300px,1fr) minmax(0,1fr);gap:24px;align-items:start}.recipe-step{padding:14px 0;border-top:1px solid var(--border);display:flex;align-items:center;gap:12px;font-size:12px}.recipe-step input{accent-color:var(--accent)}.recipe-step small{display:block;font-size:10px;color:var(--secondary);margin-top:5px;line-height:1.7}.recipe-option-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:20px 0}.recipe-option-grid label{display:flex;flex-direction:column;gap:7px;font-size:10px;color:var(--secondary)}.recipe-option-checks label{display:flex;gap:8px;align-items:flex-start;margin:14px 0;font-size:11px;color:var(--secondary)}.recipe-flow{counter-reset:job-step;list-style:none;margin:20px 0;padding:0}.recipe-flow li{display:flex;align-items:flex-start;gap:12px;padding:14px 0;border-top:1px solid var(--border);font-size:12px}.recipe-flow li:before{counter-increment:job-step;content:counter(job-step,decimal-leading-zero);font:10px var(--font-mono);color:var(--accent);border:1px solid var(--border);padding:7px;border-radius:5px}.recipe-flow small{display:block;font-size:10px;color:var(--secondary);line-height:1.8;margin-top:4px}.job-record{padding:16px 0;border-top:1px solid var(--border)}.job-record>div{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;font-size:12px}.job-record small{display:block;font-size:10px;color:var(--secondary);margin:7px 0;line-height:1.8}.job-record .button{height:30px;font-size:10px;margin-top:6px}.job-state{font:9px var(--font-mono);color:var(--secondary)}.recipe-requirements{padding:16px;background:var(--plotter-wash);border-radius:8px;font-size:11px;line-height:1.8;color:var(--secondary);margin-top:20px}.recipe-requirements strong{color:var(--text);font-weight:400}.qa-template-editor{font:11px/1.7 var(--font-mono);width:100%;padding:16px;border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:6px;min-height:240px}.revit-banner{background:var(--plotter-wash);border:1px solid var(--border);padding:20px;border-radius:10px;margin-bottom:24px;display:flex;align-items:center;justify-content:space-between;gap:20px}.revit-banner h2{font-size:17px;font-weight:400}.revit-banner p{font-size:11px;color:var(--secondary);margin-top:7px;line-height:1.8}.qa-step-results{list-style:none;padding:0}.qa-step-results li{font-size:11px;padding:12px 0;border-top:1px solid var(--border)}.qa-step-results small{display:block;font-size:10px;color:var(--secondary);line-height:1.8;margin-top:5px}
@media(prefers-reduced-motion:no-preference){[data-motion=enhanced] .qa-counter{animation:workbench-in .4s var(--ease) both}[data-motion=enhanced] .qa-counter:nth-child(2){animation-delay:.04s}[data-motion=enhanced] .qa-counter:nth-child(3){animation-delay:.08s}[data-motion=enhanced] .recipe-flow li{animation:workbench-in .4s var(--ease) both}[data-motion=enhanced] .recipe-flow li:nth-child(2){animation-delay:.06s}[data-motion=enhanced] .recipe-flow li:nth-child(3){animation-delay:.12s}}
@media(max-width:1200px){.workspace-title{gap:12px;padding-left:16px;padding-right:16px}.workspace-title>.readout{display:none}.panel-tools-actions{margin-left:auto}.recipe-grid{gap:16px}}
@media(max-width:1000px){.recipe-grid{grid-template-columns:1fr}.qa-benchmark-list{grid-template-columns:1fr}.qa-counters{gap:10px}.qa-counter{padding:12px}.qa-counter strong{font-size:23px}.panel-tools-actions .button>span{display:none}.qa-rule-form{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.rail-layout-toggle{display:none}.qa-top-controls{grid-template-columns:1fr}.qa-counters{grid-template-columns:1fr 1fr}.qa-mode-strip{align-items:flex-start;flex-direction:column}.qa-rule-form{grid-template-columns:1fr}.qa-results-tools{align-items:flex-start;flex-direction:column}.qa-import{padding:16px}.revit-banner{flex-direction:column;align-items:flex-start}.revit-banner>.button{width:100%}.panel-tools-actions{gap:4px;margin-left:auto}.workspace-title>div:first-child p{max-width:160px;font-size:9px}.panel-toggle{width:32px;padding:0}.workspace-title .button{height:32px;padding:0 8px}.workspace-title #btnSampleLoad{font-size:0;gap:0}.workspace-title #btnSampleLoad .icon{width:15px}.model-panel-heading{height:42px}html[data-tools=collapsed] .workspace-layout{min-height:0}html[data-tools=collapsed] .viewer-stage{height:calc(100dvh - 140px);min-height:400px}.recipe-option-grid{grid-template-columns:1fr}.qa-template-actions>.button{font-size:10px}.qa-audit-table th:first-child{width:180px}}


.app-header .breadcrumb{margin-right:auto}.qa-audit-table pre,.qaParameterResults pre,#qaParameterResults pre{font:10px/1.8 var(--font-mono);white-space:pre-wrap;overflow-wrap:anywhere;max-height:320px;overflow:auto}.model-panel-heading button{display:inline-flex;align-items:center;gap:6px}.model-panel-heading .icon{width:12px;height:12px}
