.club-theme .inventory-panel :is(.inventory-mode-switch,.inventory-location-switch) button { background: #fffaf0; color: #203b30; border: 1px solid #d5cbb7; }
.club-theme .inventory-panel :is(.inventory-mode-switch,.inventory-location-switch) button.active { background: #254c3a; color: #fffaf0; border-color: #254c3a; }
.club-theme .inventory-panel :is(.inventory-mode-switch,.inventory-location-switch) button :is(b,em,small) { color: inherit; opacity: 1; }
.club-theme .inventory-panel :is(.inventory-mode-switch,.inventory-location-switch) button small { font-size: 13px; line-height: 1.4; }
.inventory-conflict-dialog { width: min(680px,90vw); max-height: 85vh; overflow: auto; padding: 24px; background: #fcf7ed; color: #193b2b; border: 1px solid #d5cdbb; border-radius: 20px; }
.inventory-conflict-dialog p { font-size: 16px; line-height: 1.5; }
.inventory-conflict-list article { display: grid; gap: 6px; padding: 12px 0; border-top: 1px solid #d5cdbb; }
.inventory-panel .inventory-confirm-count { margin-top: 10px; min-height: 44px; font-size: 14px; width: 100%; }
.inventory-panel .inventory-confirm-count[aria-pressed="true"] { background: #e5eee0; color: #193b2b; border-color: #89a781; }
.inventory-panel .inventory-row-counted { border-left: 4px solid #668952; }
.inventory-count-help,.inventory-service-period { font-size: 15px; line-height: 1.5; }
.inventory-service-period { padding: 12px 16px; background: #eee6d5; border-radius: 12px; font-weight: 700; }
.inventory-count-warning { display: block; margin-top: 8px; padding: 8px; background: #fff1d1; color: #70440a; font-size: 14px; }
.inventory-count-warning[hidden] { display: none; }
.inventory-basis { display: block; max-width: 560px; margin: 12px 0; }
.inventory-basis select { display: block; width: 100%; margin-top: 6px; }
/* Counting stays at device width; other modules keep their normal zoom. */
html.inventory-fixed-view,
html.inventory-fixed-view body { touch-action: pan-y; }
.inventory-panel { min-width: 0; }
.inventory-panel :is(input,select,textarea) { font-size: 16px; min-width: 0; }
.inventory-panel .inventory-stepper input {
  max-width: none;
  min-height: 52px;
  font-size: 22px;
  font-weight: 800;
  font-variant-numeric: tabular-nums;
}
.inventory-panel .inventory-stepper { grid-template-columns: 48px minmax(48px,1fr) 48px; }
.inventory-panel .inventory-step-button { min-height: 52px; font-size: 26px; touch-action: pan-y; }
.inventory-panel .inventory-count label { font-size: 14px; line-height: 1.4; }
.inventory-panel .inventory-count :is(strong,.inventory-pack-equivalence) { font-size: 14px; line-height: 1.4; }

@media (max-width:1180px), (pointer:coarse) {
  body[data-module="inventory"] main { padding-bottom: 120px; }
  .inventory-panel { padding: 16px 16px 110px; }
  .inventory-panel .inventory-table-head { display: none; }
  .inventory-panel .inventory-row {
    grid-template-columns: minmax(0,1fr) auto;
    grid-template-areas: "name target" "count count" "result result";
    gap: 16px;
    padding: 18px;
  }
  .inventory-panel .inventory-row > * { min-width: 0; }
  .inventory-panel .inventory-row .name { grid-area: name; overflow-wrap: anywhere; }
  .inventory-panel .inventory-row .name b { font-size: 18px; line-height: 1.4; }
  .inventory-panel .inventory-row .name small { display: block; margin-top: 4px; font-size: 14px; }
  .inventory-panel .inventory-target { grid-area: target; text-align: right; max-width: 120px; }
  .inventory-panel .mobile-label { display: block; font-size: 14px; line-height: 1.4; }
  .inventory-panel .inventory-target b { display: block; font-size: 20px; }
  .inventory-panel .inventory-stock-cell { grid-area: count; }
  .inventory-panel .inventory-count { grid-template-columns: minmax(0,1fr) auto minmax(0,1fr); gap: 10px; }
  .inventory-panel .inventory-count-single { display: block; max-width: 280px; }
  .inventory-panel .inventory-count-single strong { display: block; margin-top: 8px; text-align: left; }
  .inventory-panel .inventory-need {
    grid-area: result;
    display: grid;
    grid-template-columns: minmax(0,1fr) auto;
    gap: 6px 12px;
    padding-top: 12px;
    border-top: 1px solid var(--line);
    font-size: 16px;
  }
  .inventory-panel .inventory-need span { font-size: 14px; color: var(--muted); }
  .inventory-panel .inventory-need b { text-align: right; }
  .inventory-panel .inventory-toolbar { position: static; grid-template-columns: minmax(0,1fr) auto; }
  .inventory-panel .inventory-toolbar-status { font-size: 14px; }
  .inventory-panel :is(.inventory-mode-switch,.inventory-location-switch) { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .inventory-panel :is(.inventory-mode-switch,.inventory-location-switch) > div { grid-column: 1/-1; }
  .inventory-panel :is(.inventory-mode-switch,.inventory-location-switch) button { min-width: 0; }
  .inventory-panel .inventory-meta-fields { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .inventory-panel .inventory-meta-fields label { min-width: 0; }
  .inventory-panel .inventory-recap-row { grid-template-columns: repeat(5,minmax(0,1fr)); }
  .inventory-panel .inventory-recap-row .name { grid-column: 1/-1; }
  .inventory-panel .inventory-sticky-save {
    position: fixed;
    z-index: 20;
    left: max(12px,env(safe-area-inset-left));
    right: max(12px,env(safe-area-inset-right));
    bottom: max(10px,env(safe-area-inset-bottom));
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 12px 16px;
    border: 1px solid var(--line);
    border-radius: 16px;
    background: var(--paper);
    box-shadow: 0 6px 24px #17352f26;
  }
  .inventory-panel .inventory-sticky-save > span { min-width: 0; display: grid; gap: 4px; }
  .inventory-panel .inventory-sticky-save b { font-size: 15px; white-space: normal; }
  .inventory-panel .inventory-sticky-save small { font-size: 13px; white-space: normal; }
  .inventory-panel .inventory-sticky-save button { min-height: 52px; font-size: 16px; }
}
@media (max-width:540px) {
  .inventory-panel { padding: 12px 10px 130px; }
  .inventory-panel .inventory-row { padding: 12px; }
  .inventory-panel .inventory-count { grid-template-columns: minmax(0,1fr); }
  .inventory-panel .inventory-count-plus { display: none; }
  .inventory-panel .inventory-count :is(strong,.inventory-pack-equivalence) { grid-column: 1; grid-row: auto; text-align: left; }
  .inventory-panel .inventory-count-single { max-width: none; }
  .inventory-panel :is(.inventory-toolbar,.inventory-meta-fields) { grid-template-columns: minmax(0,1fr); }
  .inventory-panel .inventory-sticky-save { flex-wrap: wrap; padding: 10px 12px; }
  .inventory-panel .inventory-sticky-save small { display: none; }
  .inventory-panel .inventory-sticky-save button { flex: 1; }
  .inventory-panel .inventory-recap-row { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
