/* EngineCore inspection shell. Report paper and technical drawings retain their own colors. */
@media screen {
:root {
  color-scheme: light;
  --canvas: #edf0f4; --panel: #fff; --surface: #f6f8fa; --control: #fff;
  --ink: #182638; --muted: #607083; --line: #dbe2e9; --line-dark: #b7c3d0;
  --blue: #1674d1; --accent-soft: #e9f2fd; --green: #267347; --amber: #946015; --red: #ad3b3b;
  --shadow: 0 2px 8px #172b4410;
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  font-size: 15px;
}
:root[data-tone="1"] { --canvas:#aeb5bd; --panel:#dfe4e9; --surface:#d5dce3; --control:#f0f3f6; --line:#99a6b4; --line-dark:#8293a5; --muted:#495b6c; --accent-soft:#cbdff4; }
:root[data-tone="0"] { color-scheme:dark; --canvas:#242c36; --panel:#354150; --surface:#303b49; --control:#2c3745; --ink:#f1f5fa; --muted:#bdcad8; --line:#556679; --line-dark:#6b7f94; --blue:#8fc6ff; --accent-soft:#304e6b; --green:#92d6aa; --amber:#f0c579; --red:#ffb0ae; --shadow:0 2px 8px #08142126; }
html,body { background:var(--canvas); color:var(--ink); }
body { min-width:0; margin:0; }
.workspace,.panel,.procedure-card,.notes-card,.drawer,.job-drawer,.user-drawer,.assignment-drawer,.form-grid>*,fieldset { min-width:0; }
input,select,textarea { min-width:0; max-width:100%; }
.drawer-head>div,.drawer-section-head>h3,.section-heading>div,.signature-head>label,.finding-register-head>div { min-width:0; }
.drawer-head h2,.job-button strong,.field-record-profile>summary,.finding-card>summary,.oim-system-record>summary { overflow-wrap:anywhere; }
.drawer-section-head,.signature-head,.completion-actions,.finding-register-head { flex-wrap:wrap; }
.drawer-section-head h3 { margin-bottom:0; }
.credential-option img { max-width:min(360px,100%); }
.form-grid fieldset { min-inline-size:0; }
.check,.mode-check,.water-check { min-height:44px; }
.oim-reference>div,.oim-source-strip>div { min-width:0;overflow-wrap:anywhere; }
[hidden] { display:none!important; }
button,input,select,textarea { font:inherit; }
button,a { -webkit-tap-highlight-color:transparent; }
button:disabled { cursor:not-allowed; opacity:.5; }
.enginecore-rail { position:fixed; inset:0 auto 0 0; width:208px; z-index:12; display:flex; flex-direction:column; padding:28px 16px 18px; background:var(--panel); border-right:1px solid var(--line); }
.enginecore-brand { display:flex; align-items:center; gap:10px; color:var(--ink); text-decoration:none; font-size:19px; font-weight:750; letter-spacing:-.5px; }
.enginecore-mark { display:grid; place-items:center; width:33px; height:33px; border-radius:9px; background:#1674d1; color:#fff; font-size:13px; letter-spacing:-1px; }
.enginecore-rail small { display:block; margin:10px 0 28px 43px; color:var(--muted); font-size:11px; letter-spacing:.07em; text-transform:uppercase; }
.enginecore-nav { display:grid; gap:5px; }
.enginecore-nav a { display:flex; align-items:center; gap:12px; min-height:43px; padding:10px 12px; border-radius:7px; color:var(--muted); font-size:13px; font-weight:600; text-decoration:none; }
.enginecore-nav a:hover { background:var(--surface); color:var(--ink); }
.enginecore-nav a[aria-current="page"] { color:var(--blue); background:var(--accent-soft); }
.enginecore-nav svg { width:18px; height:18px; flex-shrink:0; stroke:currentColor; fill:none; stroke-width:1.7; }
.enginecore-nav .enginecore-nav-divider { margin-top:13px; padding-top:18px; border-top:1px solid var(--line); border-radius:0; }
.enginecore-rail-footer { margin-top:auto; padding:20px 8px 0; color:var(--muted); font-size:11px; line-height:1.6; }
.enginecore-topbar { position:relative; display:flex; justify-content:space-between; align-items:center; gap:24px; min-height:82px; margin-left:208px; padding:16px 28px; border-bottom:1px solid var(--line); background:var(--panel); }
.enginecore-breadcrumb { color:var(--muted); font-size:12px; margin-bottom:5px; }
.enginecore-topbar strong { color:var(--ink); font-size:17px; font-weight:650; }
.enginecore-tone { width:190px; flex-shrink:0; }
.enginecore-tone-label { display:flex; align-items:center; justify-content:space-between; gap:12px; font-size:11px; color:var(--muted); font-weight:500; }
.enginecore-tone output { color:var(--ink); font-weight:600; }
.enginecore-tone input[type="range"] { display:block; width:100%; height:18px; padding:0; margin:5px 0 0; accent-color:var(--blue); border:0!important; background:transparent; }
.workspace { width:calc(100% - 256px); max-width:1500px; margin:24px 24px 64px 232px; }
.panel { background:var(--panel); border:1px solid var(--line); border-radius:11px; box-shadow:var(--shadow); padding:24px; margin-bottom:20px; }
h1,h2 { font-weight:650; letter-spacing:-.4px; text-transform:none; line-height:1.3; }
h1 { font-size:1.55rem; } h2 { font-size:1.2rem; } h3 { font-size:1rem; font-weight:650; letter-spacing:0; text-transform:none; }
.eyebrow { color:var(--muted); font-size:10px; font-weight:650; letter-spacing:.08em; }
.subtle,.section-heading p,.field-note { color:var(--muted); font-size:.875rem; line-height:1.55; }
.job-brand-row,.brand-row { gap:24px; }
.company-logo,.brand .company-logo { width:240px; height:60px; max-width:42%; object-fit:contain; object-position:left center; }
.brand .company-logo { max-width:100%; }
:root[data-tone="0"] .company-logo { background:#fff; border-radius:6px; padding:6px; }
.inspection-title,.title { text-align:right; }
.primary,.primary-button,.icon-button { background:#1674d1!important; border:1px solid #1674d1!important; color:#fff!important; border-radius:7px!important; box-shadow:none!important; min-height:42px; font-size:.875rem; font-weight:650; }
.icon-button { font-size:24px; }
.primary:hover,.primary-button:hover,.icon-button:hover { background:#115dab!important; }
.secondary,.secondary-button,.job-button,.job-picker-button,.sync,.sync-badge { background:var(--control)!important; color:var(--ink)!important; border:1px solid var(--line)!important; border-radius:7px!important; box-shadow:none!important; font-size:.875rem; min-height:42px; font-weight:600; }
.secondary:hover,.secondary-button:hover { border-color:var(--blue)!important; }
.secondary-button[aria-pressed="true"] { color:var(--blue)!important; border-color:var(--blue)!important; background:var(--accent-soft)!important; }
.rule,.heading-rule { height:1px!important; background:var(--line)!important; border:0!important; margin:20px 0; }
.job-action-row,.toolbar-row { align-items:flex-start; flex-wrap:wrap; gap:12px; }
.toolbar,.job-toolbar { flex-wrap:wrap; gap:7px; }
.job-picker-button,.job-button { width:min(360px,100%); }
.job-grid { gap:24px; }
.job-grid dl>div { grid-template-columns:105px minmax(0,1fr); margin:10px 0; }
.job-grid dt,.job-grid dd { font-size:.875rem; line-height:1.5; overflow-wrap:anywhere; }
.job-grid dd { font-weight:600; }
.status-strip,.status-grid,.review-status-grid { align-items:stretch; gap:12px; }
.status-card,.status-grid>.status { display:grid; align-content:start; grid-template-rows:minmax(1.4em,auto) auto; gap:10px; padding:16px; border-radius:8px; box-shadow:none; min-height:98px; }
.status-card>span,.status-grid>.status>span { font-size:.75rem; line-height:1.4; font-weight:500; text-transform:none; letter-spacing:0; margin:0; }
.status-card>strong,.status-grid>.status>strong { font-size:1.2rem; line-height:1.3; margin:0; font-weight:650; }
.status-card.neutral,.status.neutral,.status-card.total,.status.summary { background:var(--accent-soft); border-color:var(--line); color:var(--ink); }
.status-card.good,.status.good { background:#edf7f0; border-color:#cde2d4; color:#25613b; }
.status-card.warning,.status.warning { background:#fff6e4; border-color:#ead8b3; color:#765012; }
.status-card.bad,.status.danger { background:#fff0ef; border-color:#e8c6c2; color:#963d35; }
.status-card.good span,.status.good>span { color:#41724f; }
.status-card.warning span,.status.warning>span { color:#84622a; }
.status.summary { text-align:left; }
.status.summary>span { display:block; }
label { color:var(--muted); font-size:.8125rem; line-height:1.5; font-weight:600; }
input,select,textarea { border-color:var(--line)!important; border-radius:6px!important; background:var(--control); color:var(--ink); font-size:.9375rem; }
input::placeholder,textarea::placeholder { color:var(--muted); opacity:.9; }
input[type="checkbox"],input[type="radio"] { accent-color:#1674d1; }
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible,summary:focus-visible { outline:3px solid #63adf4; outline-offset:3px; }
.drawer,.user-drawer,.job-drawer,.conflict-drawer,.assignment-drawer { color:var(--ink); background:var(--panel); border-left:1px solid var(--line); }
.drawer-head,.drawer-header { border-bottom:1px solid var(--line); }
.drawer-actions,.assignment-actions { background:var(--panel); }
.drawer:not(.open),.user-drawer:not(.open),.job-drawer:not(.open),.conflict-drawer:not(.open),.assignment-drawer:not(.open) { display:none; }
.table-shell,.filter-box { background:var(--panel); }
tbody tr:hover,tbody tr:focus-within { background:var(--surface); }
.text-button { background:var(--control); color:var(--ink); border:1px solid var(--line); }
.user-dialog,.review-dialog { color:var(--ink); }
.system-review-card,.oim-reference,.completion-validation,.job-list-item,.compact-editor-card,.equipment-editor-card,.cylinder-card,.total-flood-card,.compact-plenum-card>legend,.calculated-field,.core-spray-bar-card,.plenum-nozzle-card,.link-card,.shared-flow-card,.assignment-item,.system-drawing-guidance { background:var(--surface); color:var(--ink); border-color:var(--line); }
.system-review-card span,.calculated-field span,.evidence-status { color:var(--muted); }
.completion-validation ul,.system-review-card.incomplete>b { color:var(--amber); }
.completion-validation p { color:var(--green); }
.order-actions button,.card-bottom-actions [data-move-equipment],.delete-card-button,.remove-equipment { background:var(--control); color:var(--ink); border-color:var(--line); }
.delete-card-button,.remove-equipment { color:var(--red); }
.hood-pane,.schematic { --canvas:#fff; --panel:#fff; --surface:#f6f8fa; --control:#fff; --ink:#182638; --muted:#607083; --line:#dbe2e9; --blue:#1674d1; --red:#a94f50; --amber:#b98b2f; --green:#4f8b5e; color:#182638; color-scheme:light; }
.search-control input { background:var(--control); color:var(--ink); }
.queued-row { background:var(--surface); }
.queued-label { color:var(--amber); }
.table-controls { flex-wrap:wrap; gap:12px; }
.table-controls .toolbar { align-items:center; }
.close,.close-button { background:var(--control); color:var(--ink); }
.procedure-card,.notes-card,.area-card,.system-card,.user-card,.job-result,.sync-item,.choice-card,.evidence,.oim-system-record,.oim-section,.complete-report,.form-grid fieldset { background:var(--panel); color:var(--ink); border-color:var(--line); }
.job-result:hover,.job-result:focus { background:var(--surface); border-color:var(--blue); }
.area-card,.system-card { border-radius:8px; box-shadow:none; }
.system-card:hover { border-color:var(--blue); box-shadow:0 2px 8px #172b4410; }
th { background:var(--surface); color:var(--muted); }
td { border-color:var(--line); }
.inventory-table tbody tr:hover { background:var(--surface); }
.danger-action { color:var(--red)!important; }
.auth-gate,.auth-screen { background:var(--canvas); }
.auth-gate { margin-left:208px; min-height:calc(100vh - 83px); }
.auth-screen { z-index:100; }
.auth-pending .auth-gate { position:fixed; inset:0; z-index:100; margin:0; min-height:100vh; }
.auth-card { border:1px solid var(--line); border-radius:12px; box-shadow:0 12px 40px #172b4412; background:var(--panel); padding:36px; color:var(--ink); }
.auth-card h1 { text-transform:none; font-size:25px; }
.auth-card .eyebrow { color:var(--blue); }
.enginecore-login { display:grid; gap:14px; margin-top:24px; }
.enginecore-login a { display:flex; align-items:center; justify-content:center; text-decoration:none; padding:12px 18px; }
.enginecore-login p { margin:0; color:var(--muted); font-size:12px; line-height:1.6; }
.enginecore-login-error { color:var(--red)!important; }
.enginecore-recovery { display:block; margin-top:18px; padding:0; background:none; border:0; color:var(--muted); cursor:pointer; font-size:12px; text-decoration:underline; }
.legend { flex-wrap:wrap; gap:12px 22px; }
.span-two { min-width:0; }
.enginecore-skip { position:fixed; left:220px; top:-50px; z-index:100; padding:12px; background:var(--panel); color:var(--ink); }
.enginecore-skip:focus { top:10px; }
@media(min-width:1900px) { .workspace { margin-left:calc(208px + (100% - 208px - 1500px)/2); } }
@media(max-width:1200px) { .enginecore-rail { width:180px; padding:24px 12px; }.enginecore-brand{font-size:17px}.enginecore-nav a{font-size:12px;gap:9px;padding:9px}.enginecore-topbar{margin-left:180px;padding:16px 20px}.workspace{width:calc(100% - 220px);margin-left:200px;margin-right:20px}.auth-gate{margin-left:180px}.job-brand-row,.brand-row{align-items:flex-start;gap:16px}.inspection-title,.title{max-width:60%}.job-toolbar{justify-content:flex-start}.status-grid,.status-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.panel{padding:20px}.job-grid{gap:18px}.form-grid.three{grid-template-columns:repeat(2,minmax(0,1fr))} }
@media(max-width:1100px) { .enginecore-rail{position:relative;inset:auto;width:100%;padding:14px 18px;border-right:0;border-bottom:1px solid var(--line);gap:12px}.enginecore-rail small,.enginecore-rail-footer{display:none}.enginecore-nav{display:flex;overflow:auto;gap:4px}.enginecore-nav a{white-space:nowrap;min-height:36px;padding:8px 10px}.enginecore-nav a.enginecore-nav-divider{margin:0;border:0;border-radius:7px;padding:8px 10px}.enginecore-topbar{margin-left:0;min-height:75px;padding:16px 18px}.workspace{width:calc(100% - 32px);margin:18px 16px 50px;max-width:none}.auth-gate{margin-left:0;min-height:70vh}.enginecore-skip{left:18px}.job-grid{gap:18px}.review-layout{grid-template-columns:1fr}.inventory-panel{overflow:auto} }
@media(max-width:600px) { .enginecore-topbar{gap:12px;align-items:flex-start}.enginecore-topbar strong{font-size:15px}.enginecore-tone{width:140px}.enginecore-tone-label>span{display:none}.enginecore-tone-label{justify-content:flex-end}.enginecore-breadcrumb{font-size:10px}.workspace{width:calc(100% - 20px);margin:12px 10px 40px}.panel{padding:16px}.job-brand-row,.brand-row{flex-direction:column;gap:16px}.company-logo,.brand .company-logo{width:200px;height:52px;max-width:100%}.inspection-title,.title{max-width:100%;text-align:left}h1{font-size:1.35rem}.job-grid,.form-grid.two,.form-grid.three,.photo-input-grid,.area-grid{grid-template-columns:1fr}.span-two{grid-column:auto}.toolbar,.job-toolbar{width:100%;gap:6px}.toolbar button{flex-grow:1}.job-picker-button,.job-button{width:100%}.status-card>strong,.status-grid>.status>strong{font-size:1.05rem}.status-card,.status-grid>.status{padding:12px;min-height:92px}.drawer,.job-drawer,.user-drawer,.conflict-drawer{max-width:100vw;width:100vw;padding:22px 18px 30px}.drawer-actions{margin:22px -18px -30px;padding:14px 18px 20px;bottom:-30px;flex-wrap:wrap}.drawer-actions button{flex-grow:1}.section-heading,.review-footer,.inventory-footer{flex-wrap:wrap;gap:12px}.auth-card{padding:26px}.auth-gate{padding:24px 16px}.review-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))} }
@media(max-width:600px) { .search-control{width:100%;min-width:0}.search-control input{width:100%;min-width:0}.table-controls .toolbar{justify-content:flex-start}.table-controls .progress-copy{width:100%;font-size:12px}.form-grid.four,.compact-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.equipment-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.completion-validation ul{columns:1}.system-review-card{flex-wrap:wrap}.system-review-status{width:100%} }

/* Keep the application switcher readable without making the field page pan. */
@media(max-width:1100px) {
  .enginecore-nav{flex-wrap:wrap;overflow-x:hidden}
  .enginecore-nav a,.enginecore-nav a.enginecore-nav-divider{flex:1 1 150px;min-width:0;white-space:normal}
  .primary,.secondary,button{min-height:44px}
  input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),select,textarea{font-size:16px}
  .field-tool-modal input:not([type="checkbox"]):not([type="radio"]),.field-tool-modal select,.field-tool-modal textarea{font-size:16px}
  .cylinder-card-fields{grid-template-columns:90px minmax(0,1fr)}
  .cylinder-card-fields>*{min-width:0}
  .equipment-card-title>strong{min-width:0;overflow-wrap:anywhere}
  .component-photo-actions{grid-template-columns:repeat(3,minmax(0,1fr))}
  .evidence-status,.lineup-validation{flex-wrap:wrap}
}
@media(max-width:600px) {
  .enginecore-topbar{flex-wrap:wrap}
  .enginecore-nav a,.enginecore-nav a.enginecore-nav-divider{flex-basis:calc(50% - 4px)}
  .system-card-head{align-items:stretch;flex-direction:column;gap:10px}
  .system-title{min-width:0}
  .system-title strong,.system-meta{overflow-wrap:anywhere}
  .system-card-actions{width:100%;align-items:stretch;flex-direction:column;gap:8px}
  .add-hood-button{width:100%;white-space:normal}
  .component-photo-actions,.additional-nozzle-row,.credential-option{grid-template-columns:minmax(0,1fr)}
  .additional-nozzle-row button{width:100%}
  .drawer-section-head .editor-actions{width:100%;flex-wrap:wrap}
  .drawer-section-head .editor-actions button{flex:1 1 140px;min-width:0}
  .equipment-fields,.duct-stat-grid,.stat-row{grid-template-columns:minmax(0,1fr)}
  .equipment-fields .wide{grid-column:auto}
  .compact-equipment-card,.compact-link-card,.compact-space-card{width:calc(100% - 8px)}
  .compact-equipment-card>.equipment-fields,.compact-link-card>.equipment-fields,.compact-space-card>.equipment-fields{width:100%}
  .cylinder-card-fields{grid-template-columns:minmax(0,1fr)}
  .cylinder-card-fields label:last-child{grid-column:auto}
  .finding-register-head button,.completion-actions button{width:100%}
}
}
@media print { .enginecore-rail,.enginecore-topbar,.enginecore-skip,.enginecore-login,.enginecore-recovery{display:none!important}html,body{background:#fff!important;color:#111!important}.workspace{width:100%;margin:0}.panel{box-shadow:none;border-color:#ccc;background:#fff;color:#111}.company-logo{background:transparent!important;padding:0!important} }
