.loss-module {
  display: grid;
  gap: 16px;
  min-width: 0;
}
.loss-toolbar,
.loss-tools,
.loss-actions,
.loss-tabs {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}
.loss-toolbar {
  justify-content: space-between;
}
.loss-tabs {
  border-bottom: 1px solid var(--line);
  padding-bottom: 8px;
}
.loss-tabs button {
  background: white;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 10px 16px;
  min-height: 44px;
  color: var(--navy);
}
.loss-tabs button[aria-pressed=true] {
  background: var(--navy);
  color: white;
}
.loss-flow {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
  background: #fff;
  padding: 16px 24px;
  border-left: 4px solid var(--gold);
  border-radius: 8px;
  font-size: 14px;
  font-weight: 500;
}
.loss-stats {
  margin: 0;
}
.loss-stats .card {
  padding: 20px;
  min-width: 0;
}
.loss-kpi {
  font-size: 26px;
  font-weight: 500;
  overflow-wrap: anywhere;
}
.loss-note {
  font-size: 14px;
  color: var(--muted);
  line-height: 1.6;
}
.loss-module .notice {
  margin: 0;
  padding: 12px 16px;
}
.loss-module small {
  display: block;
  font-size: 13px;
  color: var(--muted);
  font-weight: 400;
  margin-top: 4px;
}
.loss-module td {
  vertical-align: top;
}
.loss-module .num {
  text-align: right;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}
.loss-module th {
  text-align: left;
}
.loss-module th.num {
  text-align: right;
}
.loss-module .table-wrap {
  max-height: 65vh;
  overflow: auto;
}
.loss-module th {
  position: sticky;
  top: 0;
  z-index: 1;
}
.loss-module tbody tr:nth-child(even) {
  background: #f8fafc;
}
.loss-module .card-head {
  gap: 16px;
  flex-wrap: wrap;
}
.loss-module button {
  min-height: 44px;
}
.loss-red {
  color: #b42332 !important;
}
.loss-green {
  color: #146c43 !important;
}
.loss-amber {
  color: #795508 !important;
}
.loss-top ol {
  padding-left: 24px;
}
.loss-top li {
  padding: 12px 0;
}
.loss-top li strong {
  float: right;
}
.loss-recipe-grid {
  display: grid;
  grid-template-columns: minmax(240px, 1fr) minmax(0, 2fr);
  gap: 16px;
}
.loss-menu {
  display: grid;
  gap: 8px;
  max-height: 60vh;
  overflow: auto;
  margin-top: 16px;
}
.loss-menu button {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 8px;
  text-align: left;
  padding: 12px;
  color: var(--navy);
}
.loss-menu button.active {
  border: 2px solid var(--navy);
  background: #f1f4f7;
}
.loss-check {
  display: flex !important;
  align-items: center;
  gap: 12px;
  margin: 16px 0;
}
.loss-check input {
  width: 22px !important;
  height: 22px !important;
  min-height: 22px !important;
  flex: none;
}
.loss-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  margin: 16px 0;
}
#loss-dialog {
  width: min(800px, calc(100vw - 32px));
  max-height: 90vh;
  overflow: auto;
}
#loss-dialog.loss-wide-dialog {
  width: min(1050px, calc(100vw - 32px));
}
#loss-dialog label {
  display: flex;
  flex-direction: column;
  gap: 8px;
  font-size: 14px;
  color: var(--navy);
}
#loss-dialog input,
#loss-dialog select,
#loss-dialog textarea {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  min-height: 44px;
  border: 1px solid #8b98a8;
  border-radius: 8px;
  padding: 10px 12px;
  font: inherit;
  color: var(--navy);
  background: white;
}
#loss-dialog textarea {
  resize: vertical;
}
#loss-dialog .loss-actions {
  margin-top: 20px;
}
#loss-form-error {
  color: #b42332;
  white-space: pre-wrap;
}
#loss-dialog fieldset {
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 16px;
  margin: 16px 0;
}
#loss-dialog legend {
  font-size: 16px;
  font-weight: 600;
}
#loss-dialog summary {
  cursor: pointer;
  min-height: 44px;
  padding: 12px 0;
}
.loss-ingredient {
  display: grid;
  grid-template-columns: 2fr 1fr auto;
  gap: 12px;
  align-items: end;
  padding: 16px 0;
  border-bottom: 1px solid var(--line);
}
.loss-ingredient small {
  grid-column: 1/-1;
}
.loss-primary {
  background: var(--navy) !important;
  color: white !important;
}
.loss-module button:hover,
#loss-dialog button:hover {
  filter: brightness(.94);
}
.loss-module button:disabled,
#loss-dialog button:disabled {
  opacity: .55;
  cursor: wait;
}
.loss-view > main > .notice,
.loss-view > main > header .demo,
.loss-view .eyebrow {
  display: none;
}
.loss-view footer span {
  font-size: 13px;
}
@media (max-width: 900px) {
  .loss-recipe-grid {
    grid-template-columns: 1fr;
  }
  .loss-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .loss-tools {
    width: 100%;
  }
  .loss-tools label {
    flex: 1;
    min-width: 140px;
  }
}
@media (max-width: 600px) {
  .loss-form-grid,
  .loss-ingredient {
    grid-template-columns: 1fr;
  }
  .loss-stats {
    grid-template-columns: 1fr;
  }
  .loss-toolbar {
    align-items: stretch;
  }
  .loss-flow {
    gap: 8px;
    padding: 16px;
  }
  .loss-module .card {
    padding: 16px;
  }
  .loss-module table {
    min-width: 700px;
  }
  .loss-top li strong {
    float: none;
    display: block;
  }
  .loss-kpi {
    font-size: 26px;
  }
  .loss-tabs {
    gap: 8px;
  }
  .loss-tabs button {
    flex: 1;
  }
  .loss-invoice-line {
    padding: 12px !important;
  }
}
.loss-view .heading {
  margin: 16px 0;
}
.loss-view main > header {
  min-height: 48px;
}
.loss-view .filters {
  margin-bottom: 16px;
}
.loss-kpi small {
  font-size: 14px;
  line-height: 1.4;
  margin-top: 4px;
}
.loss-module th {
  white-space: nowrap;
}
.loss-module .loss-top {
  margin: 0;
}
#loss-dialog textarea:focus-visible {
  outline: 3px solid var(--navy);
  outline-offset: 3px;
}
.loss-module [hidden] {
  display: none !important;
}
.loss-check {
  min-height: 44px;
}
#loss-dialog p {
  margin: 8px 0;
}
.loss-module table td:first-child {
  min-width: 150px;
  max-width: 320px;
  overflow-wrap: anywhere;
}
@media (max-width: 700px) {
  nav {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  nav button {
    justify-content: flex-start;
    min-width: 0;
  }
  nav button span {
    overflow-wrap: anywhere;
  }
  .loss-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .loss-stats .card {
    padding: 12px;
  }
  .loss-stats .loss-kpi {
    font-size: 26px;
  }
}
@media (max-width: 600px) {
  .loss-tabs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: stretch;
  }
  .loss-tabs button {
    min-width: 0;
    white-space: normal;
    overflow-wrap: anywhere;
    padding: 10px 12px;
    line-height: 1.4;
  }
  .loss-tabs button:last-child {
    grid-column: 1/-1;
  }
}
#loss-dialog [hidden]{display:none!important}
/* Test branch: compact EMG navigation and grouped menu comparison. */
aside{background:#0B1A33;color:#fff;border-color:#203450}aside .brand{font-size:20px}aside .brand span,aside .network span,aside .profile span{color:#B9C5D6}aside .network{border-color:#334158}aside nav button{color:#DDE5F0;font-weight:400}aside nav button:hover{background:#203450}aside nav button.active{background:#34352F;color:#F2D792;border-color:transparent;border-left:4px solid #D9B45C}aside nav button.active:hover{background:#434238}aside button:focus-visible{outline-color:#D9B45C}
.loss-view .filters>label:not(:first-child),.loss-view .filters #range{display:none}.loss-view .heading{margin-bottom:8px}.loss-view #subtitle{display:none}.loss-view .filters{margin:12px 0}.loss-month-controls{display:flex;align-items:end;gap:16px;flex-wrap:wrap}.loss-month-controls p{padding-bottom:10px;font-weight:500}.loss-toolbar{justify-content:flex-start}.loss-toolbar .loss-actions{margin-left:auto}.loss-module>.notice{background:#F1F4F7;border-color:#D5DBE3;color:#526176;font-size:13px}.menu-comparison .card-head{margin-bottom:16px}.menu-comparison .comparison-note{margin:16px 0 8px}.menu-source{font-size:14px;color:#526176;margin-bottom:12px}.menu-source summary,.comparison-table summary{cursor:pointer;min-height:44px;display:flex;align-items:center}.menu-category{margin-top:24px}.menu-category h3{font-size:19px;background:#F1F4F7;border-left:4px solid #D9B45C;padding:12px 16px;margin:0 0 4px;display:flex;align-items:center;gap:16px}.menu-category h3 span{font-size:13px;color:#526176;font-weight:400}.loss-module .comparison-table{table-layout:fixed;min-width:0;width:100%}.loss-module .comparison-table th{position:static;white-space:normal;font-size:14px;vertical-align:bottom;font-weight:500;background:white}.loss-module .comparison-table th:first-child{width:25%}.loss-module .comparison-table th:last-child{width:14%}.loss-module .comparison-table td,.loss-module .comparison-table th{padding:12px 8px;min-width:0;overflow-wrap:anywhere}.loss-module .comparison-table td.num{white-space:normal;font-size:14px}.comparison-table td strong{font-weight:500;font-size:15px}.comparison-table details{font-size:13px;color:#526176}.comparison-table details p{font-size:13px}.comparison-table button{padding:8px;font-size:14px;width:100%}.loss-module .comparison-table .loss-red small{color:#B42332}.loss-module [hidden]{display:none!important}
@media(max-width:1100px){.loss-module .comparison-table thead{display:none}.loss-module .comparison-table,.loss-module .comparison-table tbody{display:block}.loss-module .comparison-table tr{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:12px 0;border-bottom:1px solid #D5DBE3;gap:8px}.loss-module .comparison-table td{display:block;border:0;text-align:left!important;padding:4px 8px}.loss-module .comparison-table td:first-child{grid-column:1/-1}.comparison-table td[data-label]:before{content:attr(data-label);display:block;font-size:13px;color:#526176;margin-bottom:4px}.comparison-table td:last-child{align-self:end}.loss-month-controls label{flex:1;min-width:150px}}
@media(max-width:600px){.loss-module .comparison-table tr{grid-template-columns:repeat(2,minmax(0,1fr))}.loss-month-controls{gap:12px}.loss-month-controls p{width:100%}.loss-view .loss-tabs{display:flex}.loss-tabs button{flex:1 1 40%}.menu-category h3{padding:12px}.loss-view .card{padding:12px}.loss-module .loss-tools label{min-width:0;width:100%}.loss-view .filters{display:block}.loss-view .filters select{width:100%}}
/* Reference layout: paired measures in five compact columns. */
.menu-comparison .loss-tools{align-items:end;gap:16px}.menu-comparison .loss-tools label:first-child{width:230px}.menu-comparison .loss-tools label:nth-child(2){width:195px}.menu-comparison #menu-list-count{position:absolute;clip-path:inset(50%);width:1px;height:1px;overflow:hidden}.menu-comparison .menu-category{margin-top:24px}.menu-comparison .menu-category h3{font-size:20px;padding:10px 16px;background:#EEF3F6}.menu-comparison .menu-category h3 span{font-size:14px}.loss-module .comparison-table th:first-child{width:31%}.loss-module .comparison-table th:nth-child(2){width:22%}.loss-module .comparison-table th:nth-child(3){width:19%}.loss-module .comparison-table th:nth-child(4){width:18%}.loss-module .comparison-table th:last-child{width:10%}.loss-module .comparison-table th{font-weight:600;padding:10px 8px}.loss-module .comparison-table td{padding:3px 8px;vertical-align:middle;border-bottom:1px solid #E7ECF2;font-size:15px;font-weight:400}.loss-module .comparison-table td.num,.loss-module .comparison-table th.num{text-align:center}.loss-module .comparison-table td.num{font-size:15px;font-weight:500}.loss-module .comparison-table tbody tr:nth-child(even){background:white}.loss-module .comparison-table tbody tr:hover{background:#F8FAFC}.comparison-table .pair-divider,.comparison-table .pair-neutral{color:#526176}.comparison-table .purchase-price{color:#946A13}.comparison-table .sold-count{color:#146C43}.loss-module .comparison-table button{background:#102847;border:0;color:white;min-height:32px;padding:4px 8px;border-radius:5px;font-weight:400}.comparison-table button:hover{background:#203C60}.menu-comparison .menu-source{margin-top:20px}
@media(min-width:701px) and (max-width:1100px){.loss-module .comparison-table{display:table}.loss-module .comparison-table thead{display:table-header-group}.loss-module .comparison-table tbody{display:table-row-group}.loss-module .comparison-table tr{display:table-row}.loss-module .comparison-table td{display:table-cell;text-align:left!important}.loss-module .comparison-table td.num{text-align:center!important}.comparison-table td[data-label]:before{display:none}.loss-module .comparison-table th:first-child{width:27%}.loss-module .comparison-table th:last-child{width:14%}}
@media(max-width:700px){.loss-module .comparison-table thead{display:none}.loss-module .comparison-table tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:16px 0}.loss-module .comparison-table td{padding:4px}.loss-module .comparison-table td.num{text-align:left!important}.loss-module .comparison-table button{min-height:44px}.menu-comparison .loss-tools label:first-child,.menu-comparison .loss-tools label:nth-child(2){width:auto;flex:1;min-width:120px}.menu-comparison .loss-tools .category-toggle{width:auto}}
/* Unified control card matching the supplied header. */
.loss-view main>.heading,.loss-view main>.filters{display:none}.loss-header-card{margin-top:20px;padding:24px;display:grid;gap:24px}.loss-header-title{display:flex;gap:24px;align-items:center}.loss-header-title h1{font-size:30px;margin:0 0 8px;font-weight:600}.loss-header-title p{font-size:16px}.loss-header-icon{display:flex;align-items:end;gap:5px;height:38px;flex:none}.loss-header-icon i{display:block;width:8px;background:#B8923A;border-radius:4px;height:17px}.loss-header-icon i:nth-child(2){height:27px}.loss-header-icon i:nth-child(3){height:38px}.loss-header-filters{display:grid;grid-template-columns:minmax(170px,1.4fr) minmax(145px,1fr) repeat(2,minmax(145px,1fr)) auto;gap:16px;align-items:end}.loss-header-filters select,.loss-header-filters input{width:100%;height:48px}.loss-header-actions{display:flex;gap:8px;padding-left:16px;border-left:1px solid var(--line)}.loss-header-actions button{white-space:nowrap;min-height:48px}.loss-header-card .loss-toolbar{justify-content:flex-start;gap:24px}.loss-header-card .loss-toolbar .category-toggle+ .category-toggle{position:relative;margin-left:24px}.loss-header-card .loss-toolbar .category-toggle+ .category-toggle:before{content:'';position:absolute;left:-25px;top:0;height:100%;border-left:1px solid var(--line)}.loss-header-card .category-toggle button{min-width:110px}.loss-header-card .loss-tabs{border:0;padding:0;gap:12px}.loss-header-card .loss-tabs button{min-height:48px}.loss-header-card>.notice{background:#F1F4F7;border:1px solid #D5DBE3;color:#526176;font-size:14px;padding:16px}.loss-header-card>.notice:before{content:'ⓘ';font-size:20px;color:#526176;flex:none}
@media(max-width:1300px){.loss-header-filters{grid-template-columns:repeat(4,minmax(0,1fr))}.loss-header-actions{grid-column:1/-1;border:0;padding:0;justify-content:flex-end}}
@media(max-width:700px){.loss-header-card{padding:16px;gap:20px}.loss-header-title{gap:12px}.loss-header-title h1{font-size:24px}.loss-header-title p{font-size:14px}.loss-header-filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.loss-header-filters label:first-child{grid-column:1/-1}.loss-header-filters label:nth-child(2){grid-column:1/-1}.loss-header-actions{justify-content:flex-start;flex-wrap:wrap}.loss-header-card .loss-toolbar{gap:12px}.loss-header-card .loss-toolbar .category-toggle+ .category-toggle{margin-left:0}.loss-header-card .loss-toolbar .category-toggle+ .category-toggle:before{display:none}.loss-header-card .category-toggle{flex:1}.loss-header-card .category-toggle button{min-width:0;flex:1}.loss-header-card .loss-tabs{display:flex}.loss-header-card .loss-tabs button{flex:1 1 40%}}

/* Compact header after removing auxiliary controls. */
.loss-header-card .loss-header-filters { grid-template-columns: minmax(240px, 420px) minmax(200px, 300px); }
@media(max-width:700px) { .loss-header-card .loss-header-filters { grid-template-columns: 1fr; } }
