.inventory-metrics { display: grid; grid-template-columns: repeat(auto-fit,minmax(170px,1fr)); gap: 12px; margin-bottom: 14px; }
.inventory-metrics article { min-width: 0; padding: 17px; border: 1px solid var(--line); border-radius: 12px; background: #fff; }
.inventory-metrics span { display: block; min-height: 23px; color: #7b867f; font-size: 9px; font-weight: 800; letter-spacing: .65px; }
.inventory-metrics strong { display: block; margin: 7px 0 4px; overflow: hidden; font-size: 21px; text-overflow: ellipsis; white-space: nowrap; }
.inventory-metrics small { color: var(--muted); font-size: 9px; }
.inventory-metrics .positive strong { color: var(--green); }
.inventory-metrics .negative strong { color: var(--red); }
.pack-publication-filter { display: grid; grid-template-columns: minmax(260px,1fr) minmax(230px,320px) auto; gap: 16px; align-items: center; margin-bottom: 14px; padding: 14px 16px; border: 1px solid #d7e5dd; border-radius: 12px; background: linear-gradient(135deg,#fff 0%,#f3f8f5 100%); }
.pack-publication-filter-title { display: flex; align-items: center; gap: 11px; min-width: 0; }
.pack-publication-filter-title > span { width: 34px; height: 34px; display: grid; flex: 0 0 auto; place-items: center; border-radius: 9px; background: #e4f2ea; color: var(--green); }
.pack-publication-filter-title .lucide { width: 17px; height: 17px; }
.pack-publication-filter-title b,.pack-publication-filter-title small { display: block; }
.pack-publication-filter-title b { color: #26473a; font-size: 12px; }
.pack-publication-filter-title small { margin-top: 3px; color: var(--muted); font-size: 9px; line-height: 1.35; }
.pack-publication-filter label { display: grid; gap: 5px; color: #65756d; font-size: 9px; font-weight: 700; }
.pack-publication-filter select { width: 100%; min-height: 38px; padding: 0 34px 0 11px; border: 1px solid #cbdad2; border-radius: 8px; background: #fff; color: #244438; font-size: 11px; font-weight: 700; }
.pack-publication-filter > strong { justify-self: end; padding: 8px 10px; border-radius: 999px; background: #e8f4ed; color: #14704e; font-size: 9px; text-align: center; white-space: nowrap; }
.inventory-analysis-panel { margin-bottom: 14px; }
.product-type-analysis { display: grid; grid-template-columns: repeat(auto-fit,minmax(145px,1fr)); gap: 10px; padding: 16px 18px 19px; }
.type-card { display: grid; grid-template-columns: 40px 1fr; align-items: center; gap: 10px; min-width: 0; padding: 11px; border: 1px solid #e3ebe6; border-radius: 10px; background: #f9fbfa; }
.type-card > span { width: 40px; height: 40px; display: grid; place-items: center; border-radius: 10px; background: #e5f2eb; color: var(--green); font-size: 17px; font-weight: 800; }
.type-card b,.type-card small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.type-card b { font-size: 11px; }.type-card small { margin-top: 4px; color: var(--muted); font-size: 9px; }
.sold-preview-panel { margin-top: 14px; }
.pack-catalog { display: grid; gap: 14px; }
.pack-empty { min-height: 290px; display: grid; place-items: center; padding: 35px; border: 1px dashed #b8cbbf; border-radius: 14px; background: #fff; text-align: center; }
.pack-empty div { max-width: 570px; }.pack-empty b,.pack-empty span { display: block; }.pack-empty b { font-size: 18px; }.pack-empty span { margin: 8px 0 18px; color: var(--muted); line-height: 1.5; }
.pack-card { overflow: hidden; border: 1px solid var(--line); border-radius: 13px; background: #fff; }
.pack-card-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; padding: 18px; border-bottom: 1px solid var(--line); }
.pack-card-head h3 { margin: 0 0 5px; font-size: 16px; }.pack-card-head p { margin: 0; color: var(--muted); font-size: 10px; }
.pack-card-head a { color: var(--green); font-size: 10px; font-weight: 700; text-decoration: none; }
.pack-card-head a:hover { text-decoration: underline; }
.pack-totals { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 7px; }
.pack-totals span { min-width: 78px; padding: 7px 9px; border-radius: 8px; background: #f1f6f3; color: #53645a; font-size: 9px; text-align: center; }
.profit-positive { color: var(--green) !important; }
.profit-negative { color: var(--red) !important; }
.pack-totals .profit-positive { background: #e9f5ee; font-weight: 800; }
.pack-totals .profit-negative { background: #fff0f0; font-weight: 800; }
.pack-lots { display: grid; gap: 10px; padding: 13px; background: #f7f9f7; }
.pack-lot { overflow: hidden; border: 1px solid #dfe7e2; border-radius: 11px; background: #fff; }
.pack-lot > summary { display: grid; grid-template-columns: minmax(180px,1.5fr) repeat(5,minmax(86px,.7fr)); align-items: center; gap: 10px; padding: 13px 15px; cursor: pointer; list-style: none; }
.pack-lot > summary::-webkit-details-marker { display: none; }
.pack-lot > summary::after { content: "⌄"; grid-column: 7; grid-row: 1; justify-self: end; color: var(--green); font-size: 17px; }
.pack-lot[open] > summary::after { transform: rotate(180deg); }
.pack-lot-name { min-width: 0; }.pack-lot-name b,.pack-lot-name small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.pack-lot-name b { font-size: 11px; }.pack-lot-name small { margin-top: 4px; color: var(--muted); font-size: 9px; }
.pack-lot-stat { min-width: 0; }.pack-lot-stat b,.pack-lot-stat small { display: block; }.pack-lot-stat b { font-size: 11px; }.pack-lot-stat small { margin-top: 3px; color: var(--muted); font-size: 8px; text-transform: uppercase; }
.pack-items { display: grid; grid-template-columns: repeat(auto-fill,minmax(240px,1fr)); gap: 11px; padding: 14px; border-top: 1px solid var(--line); }
.pack-item { min-width: 0; overflow: hidden; border: 1px solid #e3e9e5; border-radius: 10px; background: #fff; transition: transform .2s ease,border-color .2s ease,box-shadow .2s ease; }
.pack-item:hover { transform: translateY(-4px); border-color: #bfd8ca; box-shadow: 0 12px 27px #173f3117; }
.pack-item:active { transform: translateY(-1px) scale(.995); }
.pack-item-photo { position: relative; width: 100%; aspect-ratio: 1 / 1; display: grid; place-items: center; overflow: hidden; background: #e9eeeb; color: var(--muted); font-size: 10px; }
.pack-item-photo-button { width: 100%; height: 100%; display: grid; place-items: center; padding: 0; overflow: hidden; border: 0; background: transparent; color: inherit; }
.pack-item-photo-button img,.pack-item-photo-button video { display: block; width: 100%; height: 100%; object-fit: contain; object-position: 50% 50%; transition: filter .28s ease; }
.pack-item:hover .pack-item-photo-button img,.pack-item:hover .pack-item-photo-button video,.pack-item-photo-button:focus-visible img,.pack-item-photo-button:focus-visible video { filter: brightness(.84); }
.pack-item-photo-button:focus-visible { outline: 3px solid #4c9a75; outline-offset: -3px; }
.pack-photo-hint { position: absolute; left: 50%; bottom: 10px; display: inline-flex; align-items: center; gap: 5px; padding: 6px 9px; border-radius: 15px; background: #112b20df; color: #fff; font-size: 8px; font-weight: 800; opacity: 0; transform: translate(-50%,8px); transition: opacity .2s ease,transform .2s ease; pointer-events: none; white-space: nowrap; }
.pack-photo-hint .lucide { width: 13px; height: 13px; }
.pack-item:hover .pack-photo-hint,.pack-item-photo-button:focus-visible .pack-photo-hint { opacity: 1; transform: translate(-50%,0); }
.pack-item-photo .badge { position: absolute; top: 9px; right: 9px; z-index: 2; box-shadow: 0 2px 8px #0002; pointer-events: none; }
.pack-item-body { padding: 11px; }.pack-item-body > b { display: block; overflow: hidden; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }.pack-item-body > small { display: block; margin-top: 4px; overflow: hidden; color: var(--muted); font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.pack-item.is-incomplete { border-color: #edc483; }
.pack-item.is-complete { border-color: #c8dfd1; }
.badge.COMPLETE { background: #e7f5ed; color: #146b4b; }
.badge.INCOMPLETE { background: #fff0da; color: #9b5b12; }
.pack-item-missing { display: flex; align-items: flex-start; gap: 7px; margin-top: 9px; padding: 8px; border: 1px solid #efc989; border-radius: 8px; background: #fff8ec; color: #9a5a13; }
.pack-item-missing > .lucide { width: 15px; height: 15px; flex: 0 0 auto; margin-top: 1px; }
.pack-item-missing span,.pack-item-missing b,.pack-item-missing small { display: block; min-width: 0; }
.pack-item-missing b { font-size: 9px; }
.pack-item-missing small { margin-top: 3px; color: #9a6b35; font-size: 8px; line-height: 1.4; white-space: normal; }
.pack-item-publication-ready { display: inline-flex; align-items: center; gap: 4px; margin-top: 6px; color: #14704e; font-size: 8px; font-style: normal; font-weight: 800; }
.pack-item-publication-ready .lucide { width: 11px; height: 11px; }
.pack-item-prices { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; margin-top: 10px; }.pack-item-prices span { min-width: 0; padding: 7px; border-radius: 7px; background: #f5f8f6; color: var(--muted); font-size: 8px; }.pack-item-prices b { display: block; margin-top: 3px; overflow: hidden; color: #1d2922; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }.pack-item-prices small { display: block; margin-top: 4px; color: inherit; font-size: 7px; }.pack-item-profit { grid-column: 1 / -1; border: 1px solid currentColor; background: #fff !important; }.pack-item-profit b { color: inherit; }
.pack-item-actions { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-top: 10px; }.pack-item-actions small { color: var(--muted); font-size: 8px; }.pack-item-actions .sale-button { height: 29px; min-width: auto; padding: 0 9px; font-size: 9px; }
.pack-items-empty { grid-column: 1/-1; padding: 24px; color: var(--muted); font-size: 10px; text-align: center; }
.history-sale { color: var(--green) !important; font-weight: 700; }
.product-cell img,.product-cell video { display: block; width: 64px; height: 64px; flex: 0 0 64px; border-radius: 9px; object-fit: cover; object-position: 50% 50%; background: #edf1ee; }
#recentProducts td,#productTable td,#soldProductPreview td { vertical-align: middle; }
.preview video { width: 100%; height: 100%; object-fit: cover; background: #17201b; }
.pack-item-photo video { background: #17201b; }
.pack-product-dialog { width: min(960px,calc(100% - 30px)); }
.pack-product-detail { padding: 20px 24px 0; }
.pack-product-layout { display: grid; grid-template-columns: minmax(280px,1.05fr) minmax(300px,.95fr); gap: 22px; }
.pack-product-main-media { min-height: 390px; display: grid; place-items: center; overflow: hidden; padding: 12px; border-radius: 12px; background: #edf2ef; }
.pack-product-main-media img,.pack-product-main-media video { display: block; width: auto; height: auto; max-width: 100%; max-height: 68vh; object-fit: contain !important; background: #edf2ef; }
.pack-product-no-photo { display: grid; justify-items: center; gap: 8px; color: var(--muted); font-size: 10px; }
.pack-product-no-photo .lucide { width: 34px; height: 34px; }
.pack-product-thumbs { display: flex; gap: 7px; margin-top: 9px; overflow-x: auto; padding: 2px 1px 5px; }
.pack-product-thumb { width: 62px; min-width: 62px; height: 62px; overflow: hidden; padding: 0; border: 2px solid transparent; border-radius: 8px; background: #eef2ef; }
.pack-product-thumb.active { border-color: var(--green); box-shadow: 0 0 0 2px #d8eade; }
.pack-product-thumb img,.pack-product-thumb video { width: 100%; height: 100%; padding: 2px; object-fit: contain; background: #eef2ef; pointer-events: none; }
.pack-product-info { min-width: 0; }
.pack-product-status { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding-bottom: 13px; border-bottom: 1px solid var(--line); }
.pack-product-status .product-platforms { margin: 0; }
.pack-product-prices { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; margin-top: 14px; }
.pack-product-prices article { padding: 13px; border-radius: 9px; background: #f2f7f4; }
.pack-product-prices small,.pack-product-facts small { display: block; color: var(--muted); font-size: 8px; letter-spacing: .45px; }
.pack-product-prices b { display: block; margin-top: 5px; color: var(--green); font-size: 18px; }
.pack-product-prices article.urssaf b { color: #9b651f; }
.pack-product-prices article.profit-positive { background: #e9f5ee; }
.pack-product-prices article.profit-negative { background: #fff0f0; }
.pack-product-prices article.profit-positive b,.pack-product-prices article.profit-negative b { color: inherit; }
.pack-product-prices em { display: block; margin-top: 5px; color: var(--muted); font-size: 7px; font-style: normal; }
.pack-product-facts { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; margin-top: 14px; overflow: hidden; border: 1px solid var(--line); border-radius: 9px; background: var(--line); }
.pack-product-facts div { min-width: 0; padding: 10px; background: #fff; }
.pack-product-facts b { display: block; margin-top: 4px; overflow-wrap: anywhere; font-size: 10px; }
.pack-product-dates { display: grid; gap: 7px; margin-top: 14px; color: #657269; font-size: 9px; }
.pack-product-dates span { display: flex; align-items: center; gap: 6px; }
.pack-product-dates .lucide { width: 14px; height: 14px; color: var(--green); }
.pack-product-sections { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 11px; margin-top: 18px; }
.pack-product-sections section { min-width: 0; padding: 14px; border: 1px solid var(--line); border-radius: 10px; background: #fbfcfb; }
.pack-product-sections h3 { display: flex; align-items: center; gap: 7px; margin: 0 0 9px; font-size: 10px; }
.pack-product-sections h3 .lucide { width: 15px; height: 15px; color: var(--green); }
.pack-product-sections p { margin: 0; color: #536058; font-size: 10px; line-height: 1.55; white-space: pre-wrap; overflow-wrap: anywhere; }
.pack-product-measurements,.pack-product-details { display: grid; gap: 6px; margin: 0; padding: 0; list-style: none; }
.pack-product-measurements li { display: flex; justify-content: space-between; gap: 10px; padding-bottom: 5px; border-bottom: 1px dashed #dfe6e1; color: #637068; font-size: 9px; }
.pack-product-measurements li:last-child { padding-bottom: 0; border: 0; }
.pack-product-measurements b { color: var(--ink); white-space: nowrap; }
.pack-product-details li { position: relative; padding-left: 14px; color: #536058; font-size: 9px; line-height: 1.45; }
.pack-product-details li::before { content: "✓"; position: absolute; left: 0; color: var(--green); font-weight: 900; }
.pack-product-private { border-color: #eadbbd !important; background: #fffaf0 !important; }
.badge.WAITING { background: #fff2dc; color: #9b5d17; }
.product-platforms { min-height: 20px; display: flex; flex-wrap: wrap; align-items: center; gap: 4px; margin-top: 6px; }
.platform-mini { width: 18px; height: 18px; display: inline-grid; place-items: center; border-radius: 5px; background: #eef1ef; color: #445149; font-size: 7px; font-weight: 900; line-height: 1; text-decoration: none; box-shadow: inset 0 0 0 1px #dce3df; }
.platform-mini:hover { transform: translateY(-1px); }.platform-mini.ebay { background: #fff; color: #2354a0; }.platform-mini.vinted { background: #0aa5aa; color: #fff; }.platform-mini.leboncoin { background: #ff6e14; color: #fff; }.platform-mini.facebook { background: #1877f2; color: #fff; }.platform-mini.vestiaire { background: #171717; color: #fff; }.platform-mini.etsy { background: #f1641e; color: #fff; }.platform-mini.shopify { background: #8db849; color: #fff; }.platform-mini.manual { outline: 1px dashed #819087; outline-offset: 1px; }
.pack-marketplaces { gap: 6px; margin-top: 8px; padding: 5px 0 2px; }
.pack-marketplaces .platform-mini { position: relative; width: 22px; height: 22px; border-radius: 6px; font-size: 8px; transition: opacity .16s ease,filter .16s ease,transform .16s ease,box-shadow .16s ease; }
.pack-marketplaces .platform-mini.has-brand-logo { background: #fff; color: inherit; }
.pack-marketplaces .platform-mini img { display: block; width: 16px; height: 16px; object-fit: contain; }
.pack-marketplaces .platform-mini.facebook img,.pack-marketplaces .platform-mini.vestiaire img { width: 18px; height: 18px; border-radius: 4px; }
.pack-marketplaces .platform-mini::after { position: absolute; right: -4px; bottom: -4px; width: 11px; height: 11px; display: grid; place-items: center; border: 1px solid #fff; border-radius: 50%; color: #fff; font-size: 7px; font-weight: 900; line-height: 1; }
.pack-marketplaces .marketplace-published { opacity: 1; filter: none; box-shadow: 0 0 0 1px #c8ded2,0 3px 8px #173f3126; }
.pack-marketplaces .marketplace-published::after { content: "✓"; background: var(--green); }
.pack-marketplaces .marketplace-missing { opacity: .25; filter: grayscale(1); }
.pack-marketplaces .marketplace-missing::after { content: "+"; background: #6f7d75; }
.pack-marketplaces .marketplace-missing:hover,.pack-marketplaces .marketplace-missing:focus-visible { opacity: .9; filter: none; transform: translateY(-2px); box-shadow: 0 4px 10px #14201b24; }
.pack-marketplaces .marketplace-no-link { cursor: help; }
.publication-waiting { display: inline-block; margin-top: 6px; color: #a06a2d; font-size: 8px; font-weight: 700; }
.publication-choice-help { margin: 0 0 10px; color: var(--muted); font-size: 9px; line-height: 1.45; }
.manual-links-intro { display: flex; align-items: center; gap: 11px; margin: 17px 22px 8px; padding: 11px; border-radius: 9px; background: #f2f7f4; }.manual-links-intro > span { width: 30px; height: 30px; display: grid; place-items: center; border-radius: 8px; background: var(--green); color: #fff; }.manual-links-intro p { margin: 0; }.manual-links-intro b,.manual-links-intro small { display: block; }.manual-links-intro b { font-size: 10px; }.manual-links-intro small { margin-top: 3px; color: var(--muted); font-size: 8px; }
.manual-link-rows { display: grid; gap: 9px; padding: 10px 22px; }.manual-link-row { display: grid; grid-template-columns: 145px minmax(0,1fr) 34px; gap: 8px; align-items: end; padding: 10px; border: 1px solid var(--line); border-radius: 9px; }.manual-link-row label { min-width: 0; color: #59665e; font-size: 9px; font-weight: 700; }.manual-link-row input,.manual-link-row select { width: 100%; height: 37px; margin-top: 5px; padding: 0 9px; border: 1px solid var(--line); border-radius: 7px; }.manual-link-custom { grid-column: 1 / 3; }.manual-link-remove { width: 34px; height: 37px; border: 1px solid #efcece; border-radius: 7px; background: #fff4f4; color: var(--red); }.add-manual-link { margin: 0 22px 5px; }

@media (max-width: 1100px) { .inventory-metrics { grid-template-columns: repeat(2,1fr); }.pack-publication-filter { grid-template-columns: minmax(250px,1fr) minmax(220px,300px); }.pack-publication-filter > strong { grid-column: 1 / -1; justify-self: start; }.pack-lot > summary { grid-template-columns: minmax(170px,1.5fr) repeat(2,minmax(90px,.7fr)); }.pack-lot-stat:nth-of-type(n+4) { display: none; }.pack-lot > summary::after { grid-column: 4; } }
@media (max-width: 720px) { .pack-publication-filter { grid-template-columns: 1fr; align-items: stretch; }.pack-publication-filter > strong { grid-column: auto; justify-self: start; white-space: normal; }.pack-card-head { flex-direction: column; }.pack-totals { justify-content: flex-start; }.pack-lot > summary { grid-template-columns: 1fr 75px; }.pack-lot-stat { display: none; }.pack-lot-stat:nth-of-type(2) { display: block; }.pack-lot > summary::after { grid-column: 3; }.pack-items { grid-template-columns: repeat(auto-fill,minmax(180px,1fr)); }.pack-product-layout { grid-template-columns: 1fr; }.pack-product-main-media { min-height: min(390px,52vh); }.pack-product-main-media img,.pack-product-main-media video { max-height: 62vh; }.pack-product-sections { grid-template-columns: 1fr; } }
@media (max-width: 520px) { .inventory-metrics { grid-template-columns: 1fr 1fr; }.inventory-metrics article { padding: 13px; }.inventory-metrics strong { font-size: 17px; }.product-type-analysis { grid-template-columns: 1fr 1fr; padding: 12px; }.type-card { grid-template-columns: 32px 1fr; padding: 8px; }.type-card > span { width: 32px; height: 32px; }.pack-items { grid-template-columns: 1fr 1fr; padding: 9px; }.pack-item-prices { grid-template-columns: 1fr; }.pack-lot > summary { padding: 11px; } }
@media (max-width: 560px) { .manual-link-row { grid-template-columns: 1fr 34px; }.manual-link-row label { grid-column: 1; }.manual-link-row .manual-link-remove { grid-column: 2; grid-row: 1 / 3; align-self: center; }.manual-link-custom { grid-column: 1; } }

.fields label small { color: var(--muted); font-size: 9px; font-weight: 400; line-height: 1.4; }
.auto-sku-field input { background: #f0f6f2; color: var(--green); font-weight: 800; letter-spacing: .5px; }
.sku-duplicate-prompt { display: flex; align-items: flex-start; gap: 11px; padding: 12px; border: 1px solid #edc991; border-radius: 10px; background: #fff8ea; }
.sku-duplicate-prompt > span { width: 28px; height: 28px; flex: 0 0 auto; display: grid; place-items: center; border-radius: 50%; background: #d88132; color: #fff; font-weight: 900; }
.sku-duplicate-prompt b,.sku-duplicate-prompt p { display: block; margin: 0; }.sku-duplicate-prompt p { margin: 4px 0 9px; color: #76583e; font-size: 10px; }
.sku-duplicate-prompt > div > div { display: flex; flex-wrap: wrap; gap: 7px; }.sku-duplicate-prompt .btn { padding: 7px 10px; font-size: 9px; }
.create-details-fieldset { margin: 18px 24px; padding: 16px 18px 18px; border: 1px solid var(--line); border-radius: 11px; }
.create-details-fieldset legend { padding: 0 7px; color: #405047; font-size: 11px; font-weight: 800; }.create-details-fieldset > p { margin: 0 0 13px; color: var(--muted); font-size: 9px; }
.description-builder { padding-top: 2px; }.description-preview { margin: 16px 24px; padding: 15px; border: 1px solid #cfe0d6; border-radius: 10px; background: #f5faf7; }
.description-preview > span { display: block; margin-bottom: 9px; color: var(--green); font-size: 8px; font-weight: 900; letter-spacing: .8px; }.description-preview pre { margin: 0; color: #35443c; font: 10px/1.55 Inter,Segoe UI,Arial,sans-serif; white-space: pre-wrap; overflow-wrap: anywhere; }.description-builder textarea { min-height: 82px; }
@media (max-width: 650px) { .create-details-fieldset,.description-preview { margin-left: 17px; margin-right: 17px; }.create-details-fieldset .measurement-grid { grid-template-columns: 1fr 1fr; }.sku-duplicate-prompt { grid-column: auto; } }
