/* Inventory is scoped to its section; shared navigation and stored themes stay intact. */
#inventorySection { --inv-blue:var(--accent-blue);--inv-teal:#55b3b8;--inv-amber:#d7a84c;--inv-hover:var(--panel-strong-bg);color:var(--primary-text); }
:root:not([data-theme="light"]) #inventorySection { --panel-bg:#122235;--panel-strong-bg:#17293d;--panel-border:#263a50;--primary-text:#f4f7fc;--secondary-text:#98a9bc;--accent-gold:#e4b64f;--field-bg:#0d1b2b;--field-border:#263a50;--field-text:#f4f7fc; }
:root[data-theme="light"] #inventorySection { --inv-teal:#247b80;--inv-amber:#936810;--accent-gold:var(--label-text); }
#inventorySection *, #inventorySection { box-sizing:border-box;min-width:0; }
#inventorySection svg { display:block;width:20px;height:20px;flex-shrink:0; }
#inventorySection .inv-sr-only { position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap; }
#inventorySection .inv-heading { display:flex;justify-content:space-between;align-items:center;gap:20px; }
#inventorySection .inv-heading h2 { margin:0;font-size:30px;line-height:1.2;font-weight:600;letter-spacing:-.6px; }
#inventorySection .inv-heading p { margin:6px 0 0;font-size:14px;color:var(--secondary-text); }
#inventorySection .inv-header-actions { display:flex;gap:10px;flex-wrap:wrap; }
#inventorySection :is(button,input,select,textarea) { font-family:inherit; }
#inventorySection :is(.inv-button,.inv-link,.inv-item-name,.inv-tabs button,.inv-menu button) { cursor:pointer;box-shadow:none;transform:none; }
#inventorySection .inv-button { display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;border:1px solid var(--panel-border);border-radius:8px;padding:10px 14px;background:transparent;color:var(--primary-text);font-size:13px;font-weight:500; }
#inventorySection .inv-primary { background:var(--accent-gold);border-color:var(--accent-gold);color:#101e30;font-weight:600; }
:root[data-theme="light"] #inventorySection .inv-primary { background:var(--gold-400);border-color:var(--gold-400); }
#inventorySection .inv-icon-button { width:44px;padding:10px;flex-shrink:0; }
#inventorySection .inv-link { display:inline-flex;align-items:center;gap:7px;min-height:44px;background:transparent;color:var(--accent-gold);border:0;border-radius:5px;padding:7px 0;font-size:13px;font-weight:500;text-align:left; }
#inventorySection :is(.inv-button,.inv-link,.inv-item-name,.inv-tabs button,.inv-menu button):hover:not(:disabled) { background:var(--inv-hover); }
#inventorySection .inv-primary:hover:not(:disabled) { background:color-mix(in srgb,var(--accent-gold) 85%,white); }
#inventorySection :is(button,input,select,textarea):focus-visible { outline:2px solid var(--accent-blue);outline-offset:3px; }
#inventorySection button:disabled { cursor:wait;opacity:.6; }
#inventorySection .inv-summary { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px; }
#inventorySection .inv-summary-card { display:flex;align-items:flex-start;gap:14px;padding:18px;border:1px solid var(--panel-border);border-radius:13px;background:var(--panel-bg);box-shadow:var(--metric-card-shadow); }
#inventorySection .inv-summary-icon { display:flex;align-items:center;justify-content:center;flex-shrink:0;width:46px;height:46px;border-radius:11px;background:color-mix(in srgb,currentColor 12%,transparent); }
#inventorySection .inv-summary-icon svg { width:27px;height:27px; }
#inventorySection .inv-blue { color:var(--inv-blue); }
#inventorySection .inv-teal { color:var(--inv-teal); }
#inventorySection .inv-gold { color:var(--accent-gold); }
#inventorySection .inv-amber { color:var(--inv-amber); }
#inventorySection .inv-summary-card h3 { font-size:12px;line-height:1.4;font-weight:500;margin:0 0 8px; }
#inventorySection .inv-summary-card strong { display:block;font-size:25px;font-weight:600;line-height:1.2;font-variant-numeric:tabular-nums;overflow-wrap:anywhere; }
#inventorySection .inv-summary-card p { margin:6px 0 0;font-size:12px;line-height:1.45;color:var(--secondary-text); }
#inventorySection .inv-layout { display:grid;grid-template-columns:minmax(0,7fr) minmax(285px,3fr);gap:20px;align-items:start; }
#inventorySection .inv-panel { border:1px solid var(--panel-border);border-radius:13px;padding:18px;background:var(--panel-bg);box-shadow:var(--metric-card-shadow); }
#inventorySection .inv-panel-head { display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px; }
#inventorySection .inv-panel h3 { margin:0;font-size:18px;font-weight:600;line-height:1.3; }
#inventorySection .inv-panel-head h3 { display:flex;align-items:center;gap:10px;flex-wrap:wrap; }
#inventorySection .inv-panel-head .inv-link { flex-shrink:0;color:var(--secondary-text); }
#inventorySection .inv-count { padding:3px 9px;background:var(--panel-strong-bg);border-radius:8px;font-size:14px; }
#inventorySection .inv-tabs { display:flex;gap:3px;padding:3px;border:1px solid var(--panel-border);border-radius:9px;width:fit-content;max-width:100%;overflow-x:auto; }
#inventorySection .inv-tabs button { white-space:nowrap;flex:1 0 auto;min-height:44px;padding:10px 16px;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--secondary-text);font-size:12px;font-weight:500; }
#inventorySection .inv-tabs button.active { color:var(--accent-gold);border-color:var(--accent-gold);background:color-mix(in srgb,var(--accent-gold) 7%,transparent); }
#inventorySection .inv-toolbar { display:grid;grid-template-columns:minmax(170px,1.7fr) minmax(125px,1fr) minmax(140px,1.2fr) 44px;gap:10px;margin:16px 0; }
#inventorySection .inv-search { display:flex;align-items:center;gap:10px;background:var(--field-bg);border:1px solid var(--panel-border);border-radius:8px;padding:0 10px;color:var(--secondary-text); }
#inventorySection .inv-search input { display:block;width:100%;min-height:44px;border:0;padding:10px 0;background:transparent;color:var(--primary-text);font-size:13px; }
#inventorySection .inv-search input:focus { outline:0;box-shadow:none; }
#inventorySection .inv-search:focus-within { outline:2px solid var(--accent-blue);outline-offset:2px; }
#inventorySection select { appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237e94ac' stroke-width='1.7'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:16px; }
#inventorySection :is(.inv-toolbar,.inv-sort-panel) select { width:100%;min-height:44px;border:1px solid var(--panel-border);border-radius:8px;padding:10px 28px 10px 10px;background-color:var(--field-bg);color:var(--primary-text);font-size:12px; }
#inventorySection .inv-sort-panel { padding:12px 0;color:var(--secondary-text);font-size:13px; }
#inventorySection .inv-sort-panel select { width:auto;display:inline-block;margin-left:12px; }
#inventorySection .inv-table-scroll { overflow:auto;border:1px solid var(--panel-border);border-radius:10px;scrollbar-width:thin; }
#inventorySection .inv-table { width:100%;min-width:750px;border-collapse:collapse;table-layout:auto; }
#inventorySection .inv-table th { padding:12px 9px;background:var(--panel-strong-bg);color:var(--secondary-text);border-bottom:1px solid var(--panel-border);text-align:left;font-size:11px;white-space:nowrap;font-weight:500; }
#inventorySection .inv-table td { padding:10px 9px;border-bottom:1px solid var(--panel-border);font-size:12px;vertical-align:middle;color:var(--primary-text);background:transparent; }
#inventorySection .inv-table tr:last-child td { border-bottom:0; }
#inventorySection .inv-table td:first-child { min-width:130px;max-width:200px; }
#inventorySection .inv-item-name { display:block;text-align:left;min-height:44px;overflow-wrap:anywhere;padding:4px 0;font-size:13px;color:var(--primary-text);font-weight:500;border:0;background:none; }
#inventorySection .inv-table small { display:block;color:var(--secondary-text);font-size:11px;overflow-wrap:anywhere; }
#inventorySection .inv-number { white-space:nowrap;font-variant-numeric:tabular-nums; }
#inventorySection .inv-badge { display:inline-block;font-size:11px;font-weight:500;line-height:1.4;padding:4px 7px;border-radius:6px;background:var(--panel-strong-bg);color:var(--secondary-text); }
#inventorySection :is(.inv-in,.inv-positive) { color:var(--accent-emerald); }
#inventorySection :is(.inv-out,.inv-negative) { color:var(--danger); }
#inventorySection .inv-low { color:var(--inv-amber); }
#inventorySection .inv-adjustment { color:var(--accent-blue); }
#inventorySection .inv-mobile-items { display:none; }
#inventorySection .inv-empty { display:flex;flex-direction:column;align-items:center;text-align:center;padding:50px 20px 42px; }
#inventorySection .inv-empty-icon { display:flex;align-items:center;justify-content:center;width:68px;height:68px;border-radius:50%;background:var(--panel-strong-bg);color:var(--secondary-text);margin-bottom:18px; }
#inventorySection .inv-empty-icon svg { width:34px;height:34px; }
#inventorySection .inv-empty h4 { margin:0 0 8px;font-size:17px;font-weight:600; }
#inventorySection .inv-empty p { margin:0 0 20px;font-size:13px;line-height:1.6;color:var(--secondary-text); }
#inventorySection .inv-aside { display:grid;gap:20px; }
#inventorySection .inv-aside .inv-panel-head { flex-wrap:wrap;gap:6px; }
#inventorySection .inv-aside .inv-panel h3 { font-size:17px; }
#inventorySection .inv-aside .inv-tabs { width:100%; }
#inventorySection .inv-aside .inv-tabs button { padding:10px; }
#inventorySection .inv-empty-recent { padding:30px 0 12px; }
#inventorySection .inv-setup { display:flex;gap:14px;align-items:flex-start; }
#inventorySection .inv-setup > span svg { width:30px;height:30px;color:var(--accent-gold); }
#inventorySection .inv-setup p { font-size:13px;color:var(--secondary-text);line-height:1.6;margin:8px 0 0; }
#inventorySection .inv-movements { list-style:none;padding:0;margin:16px 0 0; }
#inventorySection .inv-movement { display:grid;grid-template-columns:28px minmax(0,1fr);gap:10px;padding:16px 0;border-bottom:1px solid var(--panel-border); }
#inventorySection .inv-movement:last-child { border:0;padding-bottom:0; }
#inventorySection .inv-movement-icon { margin-top:2px; }
#inventorySection .inv-movement-top { display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;font-size:12px; }
#inventorySection .inv-movement-top strong { font-weight:500; }
#inventorySection .inv-movement-item { color:var(--primary-text);font-size:13px;overflow-wrap:anywhere; }
#inventorySection .inv-movement small { display:block;color:var(--secondary-text);font-size:11px;line-height:1.5;overflow-wrap:anywhere; }
#inventorySection .inv-movement p { font-size:12px;margin:6px 0;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere; }
#inventorySection .inv-feedback { font-size:14px;color:var(--secondary-text); }
#inventorySection .inv-skeleton { display:grid;gap:16px;padding:30px 0; }
#inventorySection .inv-skeleton span { height:22px;border-radius:6px;background:var(--panel-strong-bg); }
#inventorySection .inv-skeleton span:last-child { width:60%; }
#inventorySection .inv-menu { position:fixed;margin:0;width:220px;max-width:calc(100vw - 16px);max-height:calc(100dvh - 16px);overflow:auto;padding:5px;border:1px solid var(--panel-border);border-radius:9px;background:var(--panel-bg);color:var(--primary-text);box-shadow:0 8px 24px #0002; }
#inventorySection .inv-menu button { display:block;width:100%;min-height:44px;border:0;border-radius:5px;padding:10px;text-align:left;background:transparent;color:inherit;font-size:13px; }
#inventorySection .inv-menu .inv-negative { color:var(--danger); }
body.inventory-modal-open { overflow:hidden; }
#inventorySection .inv-dialog { width:min(480px,calc(100% - 32px));max-width:100%;max-height:calc(100vh - 32px);max-height:calc(var(--inv-viewport-height,100dvh) - 32px);border:1px solid var(--panel-border);border-radius:13px;padding:20px;background:var(--panel-bg);color:var(--primary-text);overflow:auto; }
#inventorySection .inv-dialog::backdrop { background:rgb(4 12 23 / .65); }
#inventorySection .inv-drawer { position:fixed;inset:0 0 0 auto;margin:0;width:min(480px,100%);height:100vh;height:var(--inv-viewport-height,100dvh);max-height:none;border-radius:13px 0 0 13px; }
#inventorySection .inv-dialog-head { position:sticky;top:-20px;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--panel-bg);padding:12px 0;border-bottom:1px solid var(--panel-border);margin-bottom:20px; }
#inventorySection .inv-dialog h2 { font-size:21px;font-weight:600;margin:0;overflow-wrap:anywhere; }
#inventorySection .inv-dialog h3 { font-size:16px;font-weight:600;margin:8px 0 0; }
#inventorySection .inv-dialog p { line-height:1.6; }
#inventorySection .inv-form { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px; }
#inventorySection .inv-wide { grid-column:1/-1; }
#inventorySection .inv-form label { display:block;font-size:13px;font-weight:500;color:var(--primary-text); }
#inventorySection .inv-form :is(input,select,textarea) { display:block;width:100%;min-height:48px;margin-top:7px;border:1px solid var(--field-border);border-radius:8px;padding:11px;background-color:var(--field-bg);color:var(--field-text);font-size:16px; }
#inventorySection .inv-form select { padding-right:32px; }
#inventorySection .inv-form textarea { min-height:86px;resize:vertical; }
#inventorySection .inv-form input:disabled { opacity:.8;color:var(--secondary-text); }
#inventorySection .inv-hint { color:var(--secondary-text);font-size:13px;line-height:1.5;margin:0; }
#inventorySection .inv-error, #inventorySection .inv-field-error { display:block;color:var(--danger);font-size:12px;line-height:1.4;margin:5px 0 0; }
#inventorySection .inv-error:empty, #inventorySection .inv-field-error:empty { display:none; }
#inventorySection .inv-form [aria-invalid="true"] { border-color:var(--danger); }
#inventorySection .inv-form-actions { position:sticky;bottom:-20px;display:flex;justify-content:flex-end;gap:12px;flex-wrap:wrap;padding:14px 0;background:var(--panel-bg);border-top:1px solid var(--panel-border); }
#inventorySection .inv-detail-fields { display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;font-size:14px;margin:24px 0; }
#inventorySection .inv-detail-fields dt { color:var(--secondary-text); }
#inventorySection .inv-detail-fields dd { margin:0;overflow-wrap:anywhere; }
#inventorySection .inv-detail-text { white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px; }
#inventorySection .inv-detail-actions { display:flex;flex-wrap:wrap;gap:10px;margin:24px 0; }
@media (min-width:768px) and (max-width:1279px) {
  #inventorySection .inv-summary { grid-template-columns:repeat(2,minmax(0,1fr)); }
  #inventorySection .inv-layout { grid-template-columns:minmax(0,1fr); }
  #inventorySection .inv-aside { grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:start; }
  #inventorySection .inv-heading { align-items:flex-start;flex-direction:column; }
}
@media (max-width:767px) {
  #inventorySection .inv-heading { flex-direction:column;align-items:stretch;gap:16px; }
  #inventorySection .inv-heading h2 { font-size:28px; }
  #inventorySection .inv-header-actions { display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px; }
  #inventorySection .inv-header-actions [data-inv-create] { grid-column:1/-1;grid-row:1; }
  #inventorySection .inv-button { font-size:13px;padding:10px; }
  #inventorySection .inv-summary { grid-template-columns:repeat(2,minmax(0,1fr));gap:12px; }
  #inventorySection .inv-summary-card { display:block;padding:14px; }
  #inventorySection .inv-summary-icon { width:44px;height:44px;margin-bottom:12px; }
  #inventorySection .inv-summary-card h3 { font-size:13px; }
  #inventorySection .inv-summary-card strong { font-size:22px; }
  #inventorySection .inv-summary-card p { font-size:12px; }
  #inventorySection .inv-layout { grid-template-columns:minmax(0,1fr);gap:16px; }
  #inventorySection .inv-panel { padding:14px; }
  #inventorySection .inv-toolbar { grid-template-columns:minmax(0,1fr) minmax(0,1fr) 44px;gap:8px; }
  #inventorySection .inv-search { grid-column:1/-1; }
  #inventorySection .inv-search input { font-size:16px; }
  #inventorySection :is(.inv-toolbar,.inv-sort-panel) select { font-size:16px; }
  #inventorySection .inv-tabs button { padding:10px 12px; }
  #inventorySection .inv-table-scroll { display:none; }
  #inventorySection .inv-mobile-items { display:grid;gap:12px; }
  #inventorySection .inv-mobile-card { padding:14px;border:1px solid var(--panel-border);border-radius:10px;background:var(--panel-strong-bg); }
  #inventorySection .inv-mobile-card header { display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:12px; }
  #inventorySection .inv-mobile-card h4 { font-size:16px;line-height:1.4;margin:0 0 4px;font-weight:600;overflow-wrap:anywhere; }
  #inventorySection .inv-mobile-card small { color:var(--secondary-text);font-size:12px;overflow-wrap:anywhere; }
  #inventorySection .inv-mobile-card dl { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:16px 0; }
  #inventorySection .inv-mobile-card dt { font-size:12px;color:var(--secondary-text);margin-bottom:5px; }
  #inventorySection .inv-mobile-card dd { font-size:14px;margin:0;overflow-wrap:anywhere; }
  #inventorySection .inv-empty { padding:32px 10px; }
  #inventorySection .inv-drawer { top:var(--inv-viewport-top,0);width:100%;border:0;border-radius:0;padding:max(12px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left)); }
  #inventorySection .inv-dialog-head { top:calc(-1 * max(12px,env(safe-area-inset-top))); }
  #inventorySection .inv-form { grid-template-columns:minmax(0,1fr);gap:16px; }
  #inventorySection .inv-form-actions { bottom:calc(-1 * max(16px,env(safe-area-inset-bottom)));padding-bottom:max(14px,env(safe-area-inset-bottom)); }
  #inventorySection .inv-sort-panel select { display:block;width:100%;margin:8px 0 0; }
}
@media (max-width:359px) { #inventorySection .inv-summary { grid-template-columns:minmax(0,1fr); } }
@media (prefers-reduced-motion:reduce) { #inventorySection * { scroll-behavior:auto;transition:none;animation:none; } }
