/* Inventory metric cards moved from the retired shared/dashboard layer; Inventory is the sole owner. */
.metric-info h2{unicode-bidi: plaintext;}
.metric-card{
            border: 1px solid var(--border);
            
            box-shadow: var(--shadow-card);}
.metric-card.success::before{background: var(--success);}
.metric-card.warning::before{background: var(--warning);}
.metric-card.danger::before{background: var(--danger);}
html[dir="rtl"] .metric-info h2{text-align: right;}
html[dir="ltr"] .metric-info h2{text-align: left;}
.metric-card{position:relative;
            overflow:hidden;
            display:flex;
            align-items:center;
            min-height:128px;
            padding: 19px;
            gap: 14px;
            border-radius: 20px;
            background: linear-gradient(180deg, var(--card-bg), color-mix(in srgb, var(--card-bg) 94%, var(--bg-main) 6%));}
.metric-card::before{display:none;}
.metric-card::after{content:""; position:absolute; inset-inline-end:-24px; inset-block-end:-35px; inline-size:105px; block-size:105px; border-radius:50%; background:rgba(194,24,117,.055);}
.metric-card.success::after{background:rgba(5,150,105,.07);}
.metric-card.warning::after{background:rgba(217,119,6,.07);}
.metric-card.danger::after{background:rgba(220,38,38,.07);}
.metric-icon{position:relative; z-index:1; inline-size:46px; block-size:46px; flex:0 0 46px; display:grid; place-items:center; border-radius:14px; background:rgba(194,24,117,.09); color:var(--secondary); font-size:21px;}
.metric-card.success .metric-icon{background:rgba(5,150,105,.10); color:var(--success);}
.metric-card.warning .metric-icon{background:rgba(217,119,6,.10); color:var(--warning);}
.metric-card.danger .metric-icon{background:rgba(220,38,38,.10); color:var(--danger);}
.metric-info{position:relative; z-index:1; min-width:0;}
.metric-info span{display:block; color:var(--text-muted); font-size:10.5px; font-weight:800; line-height:1.5;}
.metric-info h2{margin:8px 0 0; color:var(--primary);  font-variant-numeric:tabular-nums;  direction:ltr;}
.metric-sub{margin-top:5px; color:var(--text-muted);}
.metric-icon[data-ui-icon]{display:grid; place-items:center;}
.metric-icon[data-ui-icon]{--ui-icon-size: 24px;}
.warehouse-app .metric-card{color:var(--text-main);   }
.warehouse-app .metric-card{--metric-accent:var(--brand-strong); --metric-soft:rgba(185,21,104,.085);
    display:grid;  align-items:center; 
    border:1px solid var(--border); border-inline-start:4px solid var(--metric-accent);
  background:linear-gradient(145deg,var(--surface) 0%,color-mix(in srgb,var(--surface) 97%,var(--metric-soft) 3%) 100%);}
.warehouse-app .metric-card::before,.warehouse-app .metric-card::after{display:none; content:none;}
.warehouse-app .metric-card.success{--metric-accent:var(--success); --metric-soft:rgba(15,139,102,.08);}
.warehouse-app .metric-card.warning{--metric-accent:var(--warning); --metric-soft:rgba(184,102,8,.08);}
.warehouse-app .metric-card.danger{--metric-accent:var(--danger); --metric-soft:rgba(206,51,69,.08);}
.warehouse-app .metric-icon{position:relative;   display:grid; place-items:center; 
  color:var(--metric-accent); background:var(--metric-soft); border:1px solid color-mix(in srgb,var(--metric-accent) 17%,transparent); }
.warehouse-app .metric-info{min-width:0;}
.warehouse-app .metric-info > span{color:var(--text-muted);  font-weight:800; line-height:1.55;}
.warehouse-app .metric-info h2{margin:6px 0 3px; color:var(--text-main); font:900 30px/1.05 Arial,Tahoma,sans-serif; letter-spacing:-.45px;}
.warehouse-app .metric-sub{margin-top:3px; color:var(--text-muted);  font-weight:700; line-height:1.5;}
body[data-theme="dark"].warehouse-app .metric-card{color:var(--text-main); background:var(--surface); border-color:var(--border);}
body[data-theme="dark"].warehouse-app .metric-info h2{color:var(--text-main);}
body[data-theme="dark"].warehouse-app .metric-info > span,body[data-theme="dark"].warehouse-app .metric-sub{color:var(--text-muted);}

.warehouse-app .metric-info > span{font-size:9.5px;}

.warehouse-app .metric-sub{font-size:8.8px;}

.warehouse-app .metric-card{position:relative;overflow:hidden}
.warehouse-app .metric-card::before{content:"";position:absolute;inset-inline-start:0;top:0;bottom:0;width:4px;background:var(--brand)}
.warehouse-app .metric-card{padding:12px;grid-template-columns:38px minmax(0,1fr);gap:9px;}
.warehouse-app .metric-icon{width:38px;height:38px;flex-basis:38px;border-radius:12px;}
.warehouse-app .metric-icon .ui-icon{width:20px;height:20px;}
.warehouse-app .metric-info h2{font-size:22px;}
.warehouse-app .metric-info>span{font-size:9px;}
.warehouse-app .metric-sub{display:none;}
.warehouse-app .metric-card{min-height:82px;}
.warehouse-app .metric-icon{box-shadow:inset 0 0 0 1px color-mix(in srgb,currentColor 8%,transparent),0 10px 24px -20px currentColor}
.warehouse-app .metric-card{border-color:var(--premium-line);
  box-shadow:var(--premium-shadow-sm),inset 0 1px 0 color-mix(in srgb,#fff 62%,transparent);}
.warehouse-app .metric-card{
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;}
.warehouse-app .metric-card:hover{transform:translateY(-2px);
  border-color:color-mix(in srgb,var(--brand) 17%,var(--border));
  box-shadow:0 20px 42px -30px rgba(65,22,48,.45);}
.warehouse-app .metric-card{border-radius:16px}

/* Warehouse EXP Date — Inventory module visual owner.
   v21.26 root-first ownership: module-specific selectors live here once. */

/* Migrated from app/app.css; source-order preserved inside this owner. */
.inventory-toolbar{padding: 18px;
            display: grid;
            grid-template-columns: 1.15fr 1.4fr 1fr;
            gap: 14px;
            align-items: stretch;}
@media (max-width: 1320px){
.inventory-toolbar{grid-template-columns: 1fr 1fr;}
}
@media (max-width: 880px){
.inventory-toolbar{grid-template-columns: 1fr;}
}
.stock-row-expired{background: rgba(220,38,38,.025);}
.stock-row-critical{background: rgba(245,158,11,.018);}
.multi-record-badge{display: inline-flex;
            align-items: center;
            gap: 4px;
            margin-inline-start: 6px;
            padding: 3px 7px;
            color: var(--purple);
            background: rgba(157,44,125,.09);
            border-radius: 999px;
            font-size: 9.5px;
            font-weight: 900;
            direction: ltr;}
.qty-pill{min-width: 68px;
            display: inline-flex;
            justify-content: center;
            align-items: center;
            padding: 7px 10px;
            color: var(--primary);
            background: linear-gradient(180deg, rgba(194,24,117,.08), rgba(237,28,145,.045));
            border: 1px solid rgba(194,24,117,.12);
            border-radius: 11px;
            font: 900 14px/1 Arial,Tahoma,sans-serif;
            font-variant-numeric: tabular-nums;
            direction: ltr;}
.expiry-cell{min-width: 125px; direction: ltr;}
.expiry-date-main{color: var(--primary); font: 800 12px/1.25 Arial,Tahoma,sans-serif; direction: ltr;}
.expiry-days-text{display: block; margin-top: 5px; color: var(--text-muted); font: 700 10px/1.2 Arial,Tahoma,sans-serif; direction: ltr;}
/* Migrated from app/styles/architecture-system.css; source-order preserved inside this owner. */
.warehouse-app .qty-pill{color:var(--text-main); background:var(--surface-soft); border-color:var(--border);}
body[data-theme="dark"].warehouse-app .qty-pill{color:var(--text-main); background:var(--surface-soft); border-color:var(--border);}
.warehouse-app .inventory-table{border-collapse:separate;border-spacing:0}
.warehouse-app .qty-pill{min-height:28px;font-size:11.5px;font-weight:720;}
@media (max-width:760px){
.warehouse-app .inventory-toolbar{grid-template-columns:1fr;gap:9px;}
.warehouse-app .inventory-table{display:block;width:100%;min-width:0;border:0;}
.warehouse-app .inventory-table thead{display:none;}
.warehouse-app .inventory-table tbody{display:grid;gap:9px;padding:9px;background:var(--surface-soft);}
.warehouse-app .inventory-table tbody tr{display:grid;width:100%;min-width:0;margin:0;padding:11px;border:1px solid var(--border);border-radius:15px;background:var(--surface);box-shadow:0 10px 24px -25px rgba(40,24,35,.5);overflow:hidden;}
.warehouse-app .inventory-table tbody tr{grid-template-columns:minmax(0,1fr) auto;gap:7px 10px;}
.warehouse-app .inventory-table td{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-width:0;padding:6px 0;border:0;text-align:start;overflow:visible;}
.warehouse-app .inventory-table td::before{content:attr(data-mobile-label);flex:0 0 86px;color:var(--text-muted);font-size:8px;font-weight:800;line-height:1.45;}
.warehouse-app .inventory-table td:nth-child(1){grid-column:1/2;grid-row:1;justify-content:flex-start;}
.warehouse-app .inventory-table td:nth-child(1)::before{display:none;}
.warehouse-app .inventory-table td:nth-child(2){grid-column:1/-1;grid-row:2;}
.warehouse-app .inventory-table td:nth-child(3){grid-column:1/-1;grid-row:3;align-items:flex-start;}
.warehouse-app .inventory-table td:nth-child(n/**/+4){grid-column:1/-1;}
.warehouse-app .inventory-table td:last-child{padding-top:9px;border-top:1px dashed var(--border);}
.warehouse-app .qty-pill{max-width:calc(100% - 96px);white-space:normal;overflow-wrap:anywhere;}
.warehouse-app .expiry-cell{align-items:center;}
.warehouse-app .expiry-cell>div,.warehouse-app .expiry-cell>small{text-align:end;}
}
@media (max-width:430px){
.warehouse-app .inventory-table td::before{flex-basis:74px;}
}
.warehouse-app .qty-pill{border-radius:10px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.55);}
.warehouse-app #inventorySection{position:relative;}
.warehouse-app #inventorySection::before{content:"";
  position:absolute;
  z-index:0;
  width:190px;
  height:190px;
  inset-inline-end:18px;
  top:18px;
  background:url("../assets/warehouse-exp-mark.svg") center/contain no-repeat;
  opacity:.018;
  filter:grayscale(1);
  pointer-events:none;}
.warehouse-app #inventorySection>*{position:relative;z-index:1}
@media (max-width:760px){
.warehouse-app #inventorySection::before{width:120px;height:120px;opacity:.012}
}

/* Inventory quick audit action — canonical owner. */
.inventory-quick-log-link{border: 0;
            background: rgba(194,24,117,.08);
            color: var(--secondary);
            min-height:32px;
            padding: 6px 12px;
            border-radius: 10px;
            font: 700 11.5px/1.2 Tahoma,Arial,sans-serif;
            cursor: pointer;}
.inventory-quick-log-link:hover{background: rgba(194,24,117,.14); transform: translateY(-1px);}

/* v21.29 scanner + filtered-export workflow owner */
.warehouse-app .scanner-runtime-status{grid-column:1/-1;display:flex;align-items:center;gap:9px;min-width:0;padding:9px 11px;border:1px solid var(--border);border-radius:12px;background:var(--surface-soft);color:var(--text-muted);}
.warehouse-app .scanner-runtime-status>span:last-child{display:grid;gap:2px;min-width:0}
.warehouse-app .scanner-runtime-status strong{font-size:11px;line-height:1.45;color:var(--text-main);font-weight:760;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.warehouse-app .scanner-runtime-status small{font-size:9.5px;line-height:1.45;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.warehouse-app .scanner-runtime-dot{width:8px;height:8px;flex:0 0 8px;border-radius:50%;background:#8d8490;box-shadow:0 0 0 4px color-mix(in srgb,#8d8490 11%,transparent)}
.warehouse-app .scanner-runtime-status.status-working .scanner-runtime-dot{background:#4169a8;box-shadow:0 0 0 4px color-mix(in srgb,#4169a8 12%,transparent)}
.warehouse-app .scanner-runtime-status.status-success .scanner-runtime-dot{background:#0f9f75;box-shadow:0 0 0 4px color-mix(in srgb,#0f9f75 12%,transparent)}
.warehouse-app .scanner-runtime-status.status-warning .scanner-runtime-dot,.warehouse-app .scanner-runtime-status.status-duplicate .scanner-runtime-dot{background:#d58a12;box-shadow:0 0 0 4px color-mix(in srgb,#d58a12 12%,transparent)}
.warehouse-app .scanner-runtime-status.status-error .scanner-runtime-dot{background:#dc3545;box-shadow:0 0 0 4px color-mix(in srgb,#dc3545 12%,transparent)}
.warehouse-app .inventory-export-action{display:grid;gap:4px;min-width:0}
.warehouse-app .inventory-export-action small{max-width:260px;color:var(--text-muted);font-size:9.5px;line-height:1.45}
@media(max-width:760px){.warehouse-app .scanner-runtime-status strong,.warehouse-app .scanner-runtime-status small{white-space:normal}.warehouse-app .inventory-export-action{width:100%}.warehouse-app .inventory-export-action .btn{width:100%}.warehouse-app .inventory-export-action small{max-width:none}}
