/* ES12 Environmental Solutions. Shared Home header/actions; route-local body migration.
   No equipment geometry, calculation logic, state gates or global navigation overrides. */
@font-face{font-family:"Eco ES12 Technical";src:url("../../fonts/ecotracer/chakra-petch-500-v19-1.woff") format("woff");font-weight:400 500;font-style:normal;font-display:swap}
@font-face{font-family:"Eco ES12 Technical";src:url("../../fonts/ecotracer/chakra-petch-700-v19-1.woff") format("woff");font-weight:600 800;font-style:normal;font-display:swap}
body.eco-application #applicationMain .es12-page {
  --eco-font-body:"Eco ES12 Technical","Segoe UI",sans-serif;
  --eco-font-heading:"Eco ES12 Technical","Segoe UI",sans-serif;
  --eco-font-size-body:1rem; --eco-font-size-metadata:.875rem; --eco-font-size-eyebrow:.8125rem;
  --es12-rim:#32758b; --es12-copy:#c6e1ed; --es12-cyan:#8dedff;
  font-family:var(--eco-font-body); color:#e4f5fc;
}
body.eco-application #applicationMain .es12-page > .solutions-shell {
  display:grid; grid-template-columns:minmax(0,1fr); align-items:start; gap:1.35rem;
}
body.eco-application #applicationMain .es12-page > .solutions-shell > :is(section,header,div,details,nav) {
  min-width:0; max-width:100%; grid-column:1 / -1;
}
body.eco-application #applicationMain .es12-page .eco-command-header { margin:0; }
/* Same header frame and controls as Home. Equipment art keeps its entire silhouette. */
body.eco-application #applicationMain .es12-equipment-header .workspace-stage78 {
  background:radial-gradient(ellipse at 80% 60%,#0d4a60 0,transparent 50%),linear-gradient(110deg,#031d2c,#062b3c);
}
body.eco-application #applicationMain .es12-equipment-header .workspace-scene78 {
  inset:0 1.5rem 0 auto; width:48%;
}
body.eco-application #applicationMain .es12-equipment-header .workspace-scene78 > img {
  object-fit:contain; object-position:center; padding:1rem .5rem;
  filter:drop-shadow(0 18px 18px #00121ca0);
}
body.eco-application #applicationMain .es12-equipment-header .workspace-stage78::before {
  background:linear-gradient(90deg,#031d2cf5 0%,#031d2c88 38%,transparent 66%);
}
body.eco-application #applicationMain .es12-equipment-header .workspace-copy78 { inline-size:57%; }
body.eco-application #applicationMain .es12-equipment-header .workspace-copy78 h1 {
  font-size:clamp(2rem,3.1cqw,3rem)!important; overflow-wrap:anywhere;
}
body.eco-application #applicationMain .es12-record-context {
  position:relative; padding:1.1rem 1.4rem; border:1px solid var(--es12-rim); border-radius:4px;
  background:linear-gradient(115deg,#0b3345,#061e2d 75%); box-shadow:inset 0 1px #a3edff24,0 8px 24px #00111c38;
}
body.eco-application #applicationMain .es12-context-status {
  display:flex; align-items:center; flex-wrap:wrap; gap:.65rem 1rem; margin-bottom:1rem; color:var(--es12-copy); font-size:.9375rem;
}
body.eco-application #applicationMain .es12-record-meta {
  display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr)); gap:1rem 1.4rem; margin:0;
}
body.eco-application #applicationMain .es12-record-meta div { min-width:0; }
body.eco-application #applicationMain .es12-record-meta dt {
  color:var(--es12-cyan); font:700 .8125rem/1.5 var(--eco-font-heading); letter-spacing:.04em; text-transform:uppercase;
}
body.eco-application #applicationMain .es12-record-meta dd {
  margin:.25rem 0 0; color:#e4f5fc; font:500 1rem/1.5 var(--eco-font-body); overflow-wrap:anywhere;
}
body.eco-application #applicationMain .es12-context-note { margin:1rem 0 0; color:var(--es12-copy); font-size:.9375rem; line-height:1.6; }
body.eco-application #applicationMain .es12-notes { margin-top:1rem; border-top:1px solid #285467; }
body.eco-application #applicationMain .es12-notes summary { padding:.8rem 0; color:#91e5f5; cursor:pointer; font-size:.9375rem; }
body.eco-application #applicationMain .es12-notes p { max-width:100ch; margin:.25rem 0 .7rem; font-size:.9375rem; line-height:1.6; color:var(--es12-copy); }
body.eco-application #applicationMain .es12-notes summary:focus-visible { outline:2px solid #b5f3ff; outline-offset:3px; }
/* Each register sizes to its own contents, including an empty methods register. */
.es12-configuration-registers { display:grid; grid-template-columns:minmax(0,1fr); align-items:start; gap:1.35rem; min-width:0; }
body.eco-application #applicationMain .es12-page :is(#deployment-assets,#deployment-evidence,#deployment-methods) {
  border-color:var(--es12-rim); border-radius:5px; background:linear-gradient(110deg,#072b3b,#041d2b);
  box-shadow:inset 0 1px #a3edff29,0 10px 24px #00111c40;
}
body.eco-application #applicationMain .es12-page .eco-technical-heading h2 {
  color:#ecfbff; font:700 clamp(1.25rem,1.8vw,1.55rem)/1.3 var(--eco-font-heading);
}
body.eco-application #applicationMain .es12-page .eco-technical-heading p { font-size:.9375rem; line-height:1.5; }
body.eco-application #applicationMain .es12-page .eco-technical-heading small { font-size:.875rem; color:#b5d6e6; }
body.eco-application #applicationMain .es12-page .eco-technical-table { font-family:var(--eco-font-body); }
body.eco-application #applicationMain .es12-page .eco-technical-table h3 { font:700 1.0625rem/1.4 var(--eco-font-heading); }
body.eco-application #applicationMain .es12-page .eco-technical-table :is(td,th) { padding:.85rem 1rem; }
body.eco-application #applicationMain .es12-page .eco-technical-table td { font-size:.9375rem; line-height:1.5; }
body.eco-application #applicationMain .es12-page .eco-technical-table small { font-size:.875rem; line-height:1.5; }
body.eco-application #applicationMain .es12-page .eco-empty { margin:1rem; padding:1.1rem 1.3rem; min-height:0; }
body.eco-application #applicationMain .es12-page .eco-empty h3 { font:700 1.2rem/1.4 var(--eco-font-heading); margin:0 0 .4rem; }
body.eco-application #applicationMain .es12-page .eco-empty p { margin:0; font-size:.9375rem; line-height:1.5; color:var(--es12-copy); }
/* Four-column evidence/method rows fit well before the global five-column breakpoint. */
@container eco-register (min-width:52rem) {
  body.eco-application #applicationMain .es12-configuration-registers .eco-technical-table {
    display:table; width:calc(100% - 1rem); margin:0 .5rem; table-layout:fixed; border-spacing:0 .5rem;
  }
  body.eco-application #applicationMain .es12-configuration-registers .eco-technical-table thead {
    display:table-header-group; position:static; inline-size:auto; block-size:auto; margin:0; clip:auto; clip-path:none; overflow:visible; white-space:normal;
  }
  body.eco-application #applicationMain .es12-configuration-registers .eco-technical-table tbody { display:table-row-group; padding:0; }
  body.eco-application #applicationMain .es12-configuration-registers .eco-technical-table tr { display:table-row; }
  body.eco-application #applicationMain .es12-configuration-registers .eco-technical-table :is(th,td) {
    display:table-cell; vertical-align:middle; width:21%; border-bottom:1px solid #285467;
  }
  body.eco-application #applicationMain .es12-configuration-registers .eco-technical-table :is(th,td):first-child { width:37%; }
  body.eco-application #applicationMain .es12-configuration-registers .eco-technical-table td {
    background:linear-gradient(180deg,#0c3547,#072535); border-top:1px solid #2a566a;
  }
  body.eco-application #applicationMain .es12-configuration-registers .eco-technical-table .eco-cell-label { display:none; }
}
/* Calculation panel geometry is native again after the shared selector correction. */
body.eco-application #applicationMain .es12-page #recorded-facility-runs {
  font-family:var(--eco-font-body); border-color:var(--es12-rim); border-radius:5px;
  box-shadow:inset 0 1px #a3edff24,0 10px 24px #00111c30;
}
body.eco-application #applicationMain .es12-page #recorded-facility-runs .rr-header {
  background:radial-gradient(ellipse at 2% 50%,#10566a66,transparent 55%),linear-gradient(115deg,#0a3042,#052231);
}
body.eco-application #applicationMain .es12-page :is(#recorded-facility-runs,#deployment-recorded-postings,#deployment-lineage) :is(p,dd) {
  font-family:var(--eco-font-body); font-size:.9375rem; line-height:1.6;
}
body.eco-application #applicationMain .es12-page :is(#recorded-facility-runs,#deployment-recorded-postings,#deployment-lineage) :is(small,dt) {
  font-family:var(--eco-font-body); font-size:.8125rem; line-height:1.5;
}
body.eco-application #applicationMain .es12-page :is(.technology-detail-footer,.deployment-detail-footer,.method-run-footer,.authorization-footer) {
  display:flex; align-items:start; justify-content:space-between; flex-wrap:wrap; gap:1rem; font-size:.9375rem; line-height:1.6;
}
body.eco-application #applicationMain .es12-page :is(.technology-detail-footer,.deployment-detail-footer,.method-run-footer,.authorization-footer) :is(p,small,a) {
  font-size:.9375rem; line-height:1.6; white-space:normal;
}
/* Reuse accepted equipment art with the same dimensional treatment as workspace cards. */
body.eco-application #applicationMain .es12-page .s8-application-grid { gap:1.2rem; align-items:stretch; }
body.eco-application #applicationMain .es12-page .s8-application-card {
  position:relative; isolation:isolate; padding:1.15rem 1.35rem 1.4rem; border:1px solid #367f95; border-radius:5px;
  background:radial-gradient(ellipse at 50% 30%,#15596e77,transparent 65%),linear-gradient(140deg,#0a3445,#041f2e 75%);
  box-shadow:inset 0 1px #a2f2ff40,0 14px 22px #00111c55; transition:transform .18s,border-color .18s,box-shadow .18s;
}
body.eco-application #applicationMain .es12-page .s8-application-card img {
  display:block; height:210px; width:100%; padding:.4rem; object-fit:contain; border:0; background:transparent;
  filter:drop-shadow(0 12px 12px #00111c88);
}
body.eco-application #applicationMain .es12-page .s8-application-card h3 { font:700 1.375rem/1.3 var(--eco-font-heading); margin:.4rem 0; }
body.eco-application #applicationMain .es12-page .s8-application-card p { font-size:.9375rem; line-height:1.5; color:var(--es12-copy); }
body.eco-application #applicationMain .es12-page .s8-eyebrow { font:700 .8125rem/1.5 var(--eco-font-heading); color:#96e7f7; }
body.eco-application #applicationMain .es12-page .s8-application-card:hover {
  transform:translateY(-2px); border-color:#97eeff; box-shadow:inset 0 1px #d6faff55,0 16px 26px #00111c66,0 0 20px #3abed71a;
}
body.eco-application #applicationMain .es12-page .s8-application-card:focus-visible { outline:2px solid #c4f8ff; outline-offset:4px; }
@container eco-command-head (max-width:58rem) {
  body.eco-application #applicationMain .es12-equipment-header .workspace-copy78 { inline-size:64%; }
  body.eco-application #applicationMain .es12-equipment-header .workspace-scene78 { width:42%; inset-inline-end:.5rem; }
}
@container eco-command-head (max-width:40rem) {
  body.eco-application #applicationMain .es12-equipment-header .workspace-stage78 { display:flex; flex-direction:column-reverse; }
  body.eco-application #applicationMain .es12-equipment-header .workspace-scene78 { position:relative; inset:auto; width:100%; height:190px; }
  body.eco-application #applicationMain .es12-equipment-header .workspace-copy78 { inline-size:100%; }
  body.eco-application #applicationMain .es12-equipment-header .workspace-stage78::before { content:none; }
  body.eco-application #applicationMain .es12-equipment-header .workspace-copy78 h1 { font-size:1.875rem!important; }
}
@media(prefers-reduced-motion:reduce) {
  body.eco-application #applicationMain .es12-page .s8-application-card { transition:none; transform:none; }
}
@media(forced-colors:active) {
  body.eco-application #applicationMain .es12-page :is(.es12-record-context,.s8-application-card) { background:Canvas; border-color:CanvasText; box-shadow:none; }
  body.eco-application #applicationMain .es12-page :is(.es12-record-context,.s8-application-card) :is(dt,dd,p,h3,summary) { color:CanvasText; }
}
@media print {
  body.eco-application #applicationMain .es12-page :is(.es12-record-context,.s8-application-card) { background:white; color:black; border-color:#777; box-shadow:none; }
  body.eco-application #applicationMain .es12-equipment-header .workspace-scene78 { display:none; }
}
