/* Plain-language inventory views; calculations remain in the existing API. */
.inv-table{white-space:normal}
.inv-table .inv-cell,.inv-table .inv-details{overflow-wrap:anywhere}
.inv-summary-grid:has(>.inv-summary:nth-child(3):last-child){grid-template-columns:repeat(3,minmax(0,1fr))}
.inv-available-qty{font-size:24px;line-height:1.35;font-variant-numeric:tabular-nums;color:var(--text)}
.inv-available-qty small{font-size:13px}
.inv-available-qty .inv-uncertain{font-size:16px;line-height:1.5;color:#9c482f;display:block}
.inv-stock-table .inv-main-cell{width:23%}
.inv-stock-table .inv-emphasis{width:17%}
.inv-stock-table .inv-note{margin-top:6px;font-size:12px;line-height:1.65}
.inv-stock-table .badge{white-space:normal;line-height:1.6}
.inv-stock-table .inv-details{max-width:390px;width:100%;margin:8px 0 0}
.inv-stock-table .inv-details[open]{min-width:0}
.inv-stock-table .inv-details>summary{font-size:12px;padding:8px 0;line-height:1.5}
.inv-stock-table .inv-details p,.inv-stock-table .inv-details li{font-size:12px;line-height:1.8}
.inv-stock-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.inv-stock-actions>.btn{margin:0;min-height:40px}
.inv-suggest-qty{font-size:20px;line-height:1.35;font-variant-numeric:tabular-nums}
.inv-suggest-qty>small{font-size:13px}
.inv-stock-table .inv-suggest-qty>.inv-note{display:block;margin:0;font-size:14px;line-height:1.5}
.inv-form-more{margin:18px 0 4px;padding:12px 14px;background:#fcf7ee;border:1px solid var(--line);border-radius:8px}
.inv-form-more>summary{font-size:13px;font-weight:600;cursor:pointer}
.inv-form-more .preview-formgrid{margin-top:15px}
.inv-form-more>.field{margin-top:12px}
.inv-count-form .inv-count-row .check-label{font-size:12px;white-space:normal;line-height:1.6}
.inv-count-form .count-input input{min-height:44px;font-size:17px;font-variant-numeric:tabular-nums}
.inv-simple-form .field{font-size:13px;line-height:1.65}
.inv-simple-form input,.inv-simple-form select{min-height:44px}
@media(max-width:950px){.inv-stock-table .inv-main-cell{width:25%}.inv-stock-table .inv-details{max-width:100%}}
@media(min-width:761px) and (max-width:950px){
  .inv-interval-table,.inv-interval-table tbody{display:block;width:100%;min-width:0}
  .inv-interval-table thead{display:none}
  .inv-interval-table tr.inv-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px;padding:16px;border-top:1px solid var(--line)}
  .inv-interval-table td.inv-cell{display:block;padding:0;border:0;min-width:0;width:auto;font-size:13px}
  .inv-interval-table .inv-cell::before{content:attr(data-label);display:block;color:#897869;font-size:11px;margin-bottom:5px}
  .inv-interval-table .inv-main-cell{grid-column:1/-1}
  .inv-interval-table td.inv-action-cell{grid-column:1/-1;display:flex;gap:8px 12px;align-items:center;flex-wrap:wrap}
  .inv-interval-table .inv-action-cell::before{flex-basis:100%;margin-bottom:0}
  .inv-interval-table .inv-action-cell .badge{white-space:normal;max-width:100%}
  .inv-interval-table .inv-action-cell .inv-flags{flex-basis:100%;max-width:none;margin:0}
  .inv-interval-table .inv-inline-link{margin:0;min-height:36px}
}
@media(max-width:760px){
  .inv-table tr.inv-row{grid-template-columns:repeat(2,minmax(0,1fr))}
  .inv-forecast-table .inv-cell:last-child{grid-column:1/-1}
  .inv-forecast-table .badge{white-space:normal;max-width:100%}
  .inv-forecast-table .inv-details{max-width:100%;min-width:0}
  .inv-sticky-actions{bottom:calc(70px + env(safe-area-inset-bottom))}
  .inv-count-form input{scroll-margin-bottom:calc(180px + env(safe-area-inset-bottom))}
  .inv-summary-grid:has(>.inv-summary:nth-child(3):last-child){grid-template-columns:1fr 1fr}
  .inv-summary-grid:has(>.inv-summary:nth-child(3):last-child)>.inv-summary:last-child{grid-column:1/-1;display:grid;grid-template-columns:1fr auto;align-items:center;column-gap:15px}
  .inv-summary-grid:has(>.inv-summary:nth-child(3):last-child)>.inv-summary:last-child>strong{grid-column:2;grid-row:1/3;margin:0}
  .inv-stock-panel{background:transparent;border:0;box-shadow:none;overflow:visible}
  .inv-stock-panel>.inv-toolbar{padding:0 0 14px;gap:12px}
  .inv-stock-panel .inv-filters{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .inv-stock-panel .inv-filters input,.inv-stock-panel .inv-filters select{width:100%;min-width:0;min-height:44px;background:#fff}
  .inv-stock-table tr.inv-row{gap:12px 0;padding:16px;margin-bottom:12px;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}
  .inv-stock-table .inv-main-cell,.inv-stock-table .inv-emphasis{width:auto}
  .inv-stock-table .inv-name{gap:8px;align-items:center}
  .inv-stock-table .inv-name>strong{font-size:17px;line-height:1.45}
  .inv-stock-table .inv-main-cell>.inv-inline-link{margin-top:3px;font-size:12px;line-height:1.65;color:#887767}
  .inv-stock-table td.inv-stock-metric{padding:12px!important;background:#faf5ec;min-width:0}
  .inv-stock-table .inv-emphasis{border-radius:8px 0 0 8px}
  .inv-stock-table .inv-stock-suggestion{border-radius:0 8px 8px 0;border-left:1px solid #eadfcd!important}
  .inv-stock-table .inv-stock-metric::before{font-size:12px;margin-bottom:6px;color:#786c60}
  .inv-stock-table .inv-stock-metric .inv-inline-link{display:inline-flex;align-items:center;min-height:32px;font-size:12px;margin:0}
  .inv-stock-table .inv-stock-notice{grid-column:1/-1;display:flex!important;flex-wrap:wrap;align-items:center;gap:6px 8px}
  .inv-stock-table .inv-stock-notice::before{display:none}
  .inv-stock-table .inv-stock-notice>.badge{flex:none;font-size:11px;padding:3px 7px}
  .inv-stock-table .inv-stock-notice>.inv-note{margin:0;flex:1 1 180px}
  .inv-stock-table .inv-note{font-size:12px;line-height:1.6}
  .inv-stock-table td.inv-action-cell{display:block}
  .inv-stock-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .inv-stock-table .inv-stock-actions>.btn{width:100%;min-width:0;min-height:44px;font-size:14px;padding:9px 8px;line-height:1.5;white-space:normal;text-align:center}
  .inv-stock-table .inv-stock-actions>.inv-note{margin:0;align-self:center}
  .inv-stock-table .inv-details{margin:6px 0 -6px;max-width:none}
  .inv-stock-table .inv-details>summary{font-size:12px;padding:8px 0;min-height:36px;line-height:20px}
  .inv-stock-table .inv-details[open]{margin-bottom:0}
  .inv-available-qty,.inv-suggest-qty{font-size:26px;line-height:1.2}
  .inv-available-qty .inv-uncertain{font-size:16px;line-height:1.5}
  .inv-stock-table .inv-available-qty>.inv-note{margin-top:4px;font-weight:400}
  .inv-count-form .inv-count-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .inv-count-form .inv-count-row .check-label{justify-self:start;font-size:12px}
  .inv-count-form .inv-count-row .check-label input{flex:none}
  .inv-count-form .count-input input{width:100%;min-width:0}
  .inv-form-more>summary{font-size:12px}
  .inv-simple-form .field{font-size:13px}
}

/* Secondary inventory tasks share a title, values, status and action rhythm. */
.inv-record-panel .inv-toolbar h2{display:flex;flex-wrap:wrap;align-items:center;gap:8px;line-height:1.6}
.inv-record-panel .inv-toolbar>.inv-note{margin:0;font-size:12px}
.inv-record-panel .inv-name{min-width:0;align-items:flex-start}
.inv-record-panel .inv-name>strong{overflow-wrap:anywhere}
.inv-record-panel .inv-record-metric>strong{font-size:18px;font-variant-numeric:tabular-nums}
.inv-record-panel .inv-record-time{font-variant-numeric:tabular-nums}
.inv-record-panel .badge{white-space:normal;line-height:1.6}
.inv-record-panel .inv-flags{font-size:12px;line-height:1.65}
.inv-record-panel .inv-action-cell>.btn{white-space:normal;line-height:1.5}
.inv-record-panel .inv-details{max-width:100%;min-width:0}
.inv-count-guide{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 0;font-size:12px;color:var(--muted);line-height:1.6}
.inv-count-guide>span:first-child>strong{display:block;font-size:15px;color:var(--text);margin-bottom:2px}
.inv-count-guide>span:last-child{text-align:right;flex:none}
.inv-count-guide b{color:var(--text)}
.inv-count-form .inv-count-search{align-items:flex-end;gap:12px}
.inv-count-form .inv-count-search>.field{flex:1 1 240px}
.inv-count-form .inv-count-search>.inv-note{flex:1 1 220px;font-size:12px;line-height:1.7}
.inv-count-form .count-input{border:1px solid #e4d8ca;border-radius:8px;background:#fffaf5;overflow:hidden;gap:0}
.inv-count-form .count-input input{border:0;border-radius:0;background:transparent;max-width:none;box-shadow:none}
.inv-count-form .count-input:focus-within{outline:2px solid #b7605038;border-color:var(--green)}
.inv-count-form .count-input>span{flex:none;padding:0 12px;color:#7d6553;font-size:14px;max-width:45%;white-space:normal;overflow-wrap:anywhere}
.inv-count-form .inv-count-name>.inv-note{line-height:1.7}
.inv-count-form .check-label input{width:18px;height:18px;min-height:18px;flex:none}
.inv-rule-grid .preview-card{display:flex;flex-direction:column;align-items:flex-start}
.inv-rule-grid .preview-card>h2{margin-bottom:4px;overflow-wrap:anywhere}
.inv-rule-grid .preview-card>p{font-size:13px;line-height:1.7;overflow-wrap:anywhere}
.inv-rule-grid .preview-card>p:first-of-type{color:var(--text);font-size:14px;padding:10px 12px;background:#fbf5ea;border-radius:8px;width:100%;margin:8px 0}
.inv-rule-grid .preview-card>.inv-details{width:100%;margin:4px 0 12px}
.inv-rule-grid .preview-card>.btn{margin-top:auto}
.inv-loss-history>summary{font-weight:600;color:var(--text);line-height:1.6}
.inv-loss-history>.preview-history{padding:18px 0}
.inv-loss-history .preview-history p{font-size:13px;line-height:1.7;margin:8px 0}
.inv-loss-history .preview-history small{color:var(--muted);font-size:12px;line-height:1.7}
:is(#v22-rule,#v22-forecast,#v22-incoming,#v22-batch,#v22-sample,#v22-loss-void) .field{min-width:0;font-size:13px;line-height:1.6}
:is(#v22-rule,#v22-forecast,#v22-incoming,#v22-batch,#v22-sample,#v22-loss-void) :is(input:not([type=checkbox]):not([type=radio]),select){width:100%;min-width:0;max-width:100%;min-height:44px;font-size:15px}
:is(#v22-rule,#v22-forecast,#v22-incoming,#v22-batch,#v22-sample,#v22-loss-void) .inv-note{font-size:12px;line-height:1.7}
:is(#v22-rule,#v22-forecast,#v22-incoming,#v22-batch,#v22-sample,#v22-loss-void) .check-label{font-size:13px;line-height:1.7;align-items:flex-start}
:is(#v22-rule,#v22-forecast,#v22-incoming,#v22-batch,#v22-sample,#v22-loss-void) input[type=checkbox]{width:18px;height:18px;min-height:18px;flex:none;margin-top:3px}

@media(max-width:760px){
  .inv-subnav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
  .inv-subnav>a{display:flex;align-items:center;justify-content:center;min-width:0;min-height:42px;padding:9px 5px;font-size:12px;line-height:1.5;text-align:center;white-space:normal}
  .inv-subnav>.inv-advanced-nav{grid-column:1/-1;min-width:0}
  .inv-advanced-nav>summary{min-height:40px;padding:10px 2px;line-height:20px}
  .inv-advanced-nav>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:10px;max-width:100%}
  .inv-advanced-nav>div>a{min-height:42px;display:flex;align-items:center;white-space:normal;line-height:1.5;font-size:12px}
  .inv-advanced-nav>div>a:last-child:nth-child(odd){grid-column:1/-1}
  .inv-record-panel{border:0;background:transparent;box-shadow:none;overflow:visible}
  .inv-record-panel>.inv-toolbar{padding:0 0 13px;border:0;gap:6px}
  .inv-record-panel>.inv-toolbar>h2{font-size:15px}
  .inv-record-panel>.inv-toolbar>.inv-note{width:100%;font-size:12px}
  .inv-table:not(.inv-stock-table) tr.inv-row{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px;margin:0 0 12px;gap:14px 12px;overflow:hidden}
  .inv-table:not(.inv-stock-table) .inv-main-cell{padding-bottom:12px;border-bottom:1px solid #f0e7dc}
  .inv-table:not(.inv-stock-table) .inv-name>strong{font-size:16px;line-height:1.55}
  .inv-table:not(.inv-stock-table) .inv-note{font-size:12px;line-height:1.6}
  .inv-table:not(.inv-stock-table) .inv-cell::before{font-size:12px;line-height:1.5;margin-bottom:5px;color:#8a7765}
  .inv-table:not(.inv-stock-table) .inv-record-metric{font-variant-numeric:tabular-nums}
  .inv-table:not(.inv-stock-table) .inv-record-metric>strong{font-size:21px;line-height:1.35;color:var(--text)}
  .inv-table:not(.inv-stock-table) .inv-record-metric>small:not(.inv-note){font-size:12px;color:var(--muted)}
  .inv-table:not(.inv-stock-table) .inv-record-status{grid-column:1/-1;display:block;padding:10px 12px;background:#faf6ef;border-radius:8px}
  .inv-table:not(.inv-stock-table) .inv-record-status::before{display:none}
  .inv-table:not(.inv-stock-table) .badge{max-width:100%;font-size:12px;white-space:normal;line-height:1.6}
  .inv-table:not(.inv-stock-table) .inv-flags{font-size:12px;line-height:1.7;max-width:none}
  .inv-table:not(.inv-stock-table) .inv-action-cell{display:flex;align-items:center;justify-content:flex-start;gap:8px 12px;padding-top:12px;border-top:1px solid #f0e7dc}
  .inv-table:not(.inv-stock-table) .inv-action-cell>.btn{width:100%;min-height:44px;font-size:14px;padding:10px 12px;justify-content:center}
  .inv-table:not(.inv-stock-table) .inv-action-cell>.inv-inline-link{min-height:36px;display:inline-flex;align-items:center;font-size:13px;line-height:1.6;margin:0}
  .inv-interval-table .inv-action-cell>.badge,.inv-interval-table .inv-action-cell>.inv-flags{flex-basis:100%;margin:0}
  .inv-interval-table .inv-action-cell>.inv-inline-link{margin-top:2px!important;min-height:42px!important;padding:9px 12px;background:#faf3e9;border:1px solid #e7d8c7;border-radius:7px}
  .inv-forecast-table .inv-record-time,.inv-forecast-table .inv-cell:last-child{grid-column:1/-1}
  .inv-forecast-table .inv-cell:last-child{padding-top:12px;border-top:1px solid #f0e7dc}
  .inv-table:not(.inv-stock-table) .inv-details{margin-top:6px;font-size:12px;line-height:1.7}
  .inv-table:not(.inv-stock-table) .inv-details>summary{font-size:12px;min-height:38px;padding:8px 0;line-height:1.6}
  .inv-table:not(.inv-stock-table) .inv-details[open]{padding:0;border:0;background:transparent;max-width:100%}
  .inv-subnav~.inv-details{padding:13px 15px;background:#fff;border:1px solid var(--line);border-radius:10px;margin-top:14px;font-size:12px;line-height:1.7}
  .inv-subnav~.inv-details>summary{font-size:13px;line-height:1.6;padding:3px 0}
  .inv-subnav~.inv-details>div{padding-top:12px}
  .inv-subnav~.inv-details .preview-history{padding:13px 0}
  .inv-subnav~.inv-details .preview-history>summary{font-size:12px;line-height:1.7;min-height:38px;padding:6px 0}
  .preview-form.inv-count-form{background:transparent;border:0;box-shadow:none;padding:0;overflow:visible}
  .inv-count-form .inv-count-time{padding:15px;background:#fff;border:1px solid var(--line);border-radius:12px;margin-bottom:12px;gap:8px}
  .inv-count-form .inv-count-time .field{min-width:0;font-size:13px;gap:7px}
  .inv-count-form .inv-count-time input{min-width:0;max-width:100%;width:100%;min-height:46px;font-size:16px;padding:10px}
  .inv-count-form .inv-count-time>.inv-note{font-size:12px;margin:0}
  .inv-count-form .inv-count-search{padding:15px;background:#fff;border:1px solid var(--line);border-radius:12px;gap:8px}
  .inv-count-form .inv-count-search>.field{font-size:13px;gap:7px;flex-basis:100%}
  .inv-count-form .inv-count-search input{font-size:16px;min-height:46px;padding:10px 12px}
  .inv-count-form .inv-count-search>.inv-note{margin:0;flex-basis:100%;font-size:12px}
  .inv-count-guide{padding:16px 2px 12px;gap:12px}
  .inv-count-guide>span:first-child>strong{font-size:14px}
  .inv-count-form .inv-count-list{border:0}
  .inv-count-form .inv-count-row{background:#fff;border:1px solid var(--line);border-radius:12px;margin-bottom:10px;padding:15px;gap:12px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .inv-count-form .inv-count-name>strong{font-size:16px;line-height:1.5}
  .inv-count-form .inv-count-name>.inv-note{font-size:12px;margin-top:5px}
  .inv-count-form .count-input{margin:0;min-width:0}
  .inv-count-form .count-input input{min-height:46px;font-size:18px;padding:10px}
  .inv-count-form .count-input>span{padding:0 9px;font-size:13px}
  .inv-count-form .inv-count-row .check-label{min-width:0;gap:7px;font-size:12px;line-height:1.6;justify-self:start}
  .inv-count-form .inv-sticky-actions{margin-top:14px;padding:12px;box-shadow:0 -4px 18px #4d2d2008;border-radius:10px}
  .inv-count-form .inv-sticky-actions .inv-count-progress{font-size:12px;line-height:1.6}
  .inv-count-form .inv-sticky-actions>.btn{min-height:44px;font-size:13px;flex:1;white-space:normal}
  #v22-loss{padding:16px;border-radius:12px}
  #v22-loss .preview-formgrid{grid-template-columns:minmax(0,1fr);gap:17px}
  #v22-loss .field{font-size:13px;line-height:1.6;gap:7px}
  #v22-loss :is(input,select){min-height:46px;font-size:16px;padding:10px 12px}
  #v22-loss>.inv-note{font-size:12px;line-height:1.7;padding:12px;background:#faf6ef;border-radius:8px;margin-top:18px}
  #v22-loss .preview-submit{gap:10px}
  #v22-loss .preview-submit>.btn{min-height:44px;font-size:13px;min-width:0;white-space:normal}
  .inv-loss-history{padding:15px;border-radius:12px}
  .inv-loss-history>.preview-history>.flex{align-items:flex-start;gap:8px}
  .inv-loss-history .preview-history strong{font-size:14px;line-height:1.6;overflow-wrap:anywhere}
  .inv-loss-history .preview-history .link{font-size:12px;min-height:36px}
  .inv-rule-grid{grid-template-columns:minmax(0,1fr);gap:12px}
  .inv-rule-grid .preview-card{padding:16px;border-radius:12px}
  .inv-rule-grid .preview-card>h2{font-size:17px}
  .inv-rule-grid .preview-card>.btn{width:100%;min-height:44px;font-size:14px;justify-content:center}
  .inv-rule-grid .preview-card>.inv-details{font-size:12px;line-height:1.7}
  .inv-rule-grid .inv-details>summary{font-size:13px;min-height:40px;line-height:1.6;padding:9px 0}
  :is(#v22-rule,#v22-forecast,#v22-incoming,#v22-batch,#v22-sample,#v22-loss-void) .preview-formgrid{grid-template-columns:minmax(0,1fr);gap:16px}
  :is(#v22-rule,#v22-forecast,#v22-incoming,#v22-batch,#v22-sample,#v22-loss-void) .stack{gap:16px}
  :is(#v22-rule,#v22-forecast,#v22-incoming,#v22-batch,#v22-sample,#v22-loss-void) .field{font-size:13px;gap:7px}
  :is(#v22-rule,#v22-forecast,#v22-incoming,#v22-batch,#v22-sample,#v22-loss-void) :is(input:not([type=checkbox]):not([type=radio]),select){min-height:46px;font-size:16px;padding:10px 12px}
  :is(#v22-rule,#v22-forecast,#v22-incoming,#v22-batch,#v22-sample,#v22-loss-void) .subtitle{font-size:13px;line-height:1.7;padding:12px;background:#faf6ef;border-radius:8px;margin-bottom:16px}
  :is(#v22-rule,#v22-forecast,#v22-incoming,#v22-batch,#v22-sample,#v22-loss-void) .modal-actions{gap:10px;align-items:stretch}
  :is(#v22-rule,#v22-forecast,#v22-incoming,#v22-batch,#v22-sample,#v22-loss-void) .modal-actions>.btn{min-width:0;min-height:44px;white-space:normal;line-height:1.5;font-size:13px;padding:10px 12px}
  #v22-incoming .inv-details{font-size:12px;line-height:1.7}
  #v22-incoming .inv-details>summary{font-size:12px;min-height:42px;line-height:1.7}
  .inv-movement{font-size:13px;gap:9px 12px;padding:15px 0}
  .inv-movement .inv-note{font-size:12px;line-height:1.6}
  .inv-movement>a{font-size:13px;min-height:36px;display:flex;align-items:center;overflow-wrap:anywhere}
}
