:root{--blue:#1669f2;--blue2:#4a8cff;--navy:#102a56;--bg:#f5f8fc;--card:#fff;--muted:#6f7d92;--line:#e6ebf2;--danger:#e44747;--warn:#ed9b27;--ok:#1f9d63;--shadow:0 10px 30px rgba(32,67,119,.10)}*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:#17243b}.hidden{display:none!important}.splash{position:fixed;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(145deg,#fff,#eaf2ff);z-index:99}.logoMark,.brandMark{color:#fff;background:var(--blue);border-radius:18px;padding:12px 16px;font-weight:900}.logoText{font-size:38px;font-weight:800;color:var(--navy);margin-top:18px}.logoText span,.brand span{color:var(--blue)}.splashSub{color:var(--muted);margin-top:8px}.app{min-height:100vh;padding-bottom:82px}.topbar{position:sticky;top:0;z-index:20;height:66px;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);display:flex;align-items:center;gap:12px;padding:0 18px;border-bottom:1px solid var(--line)}.brand{font-size:22px;font-weight:800;color:var(--navy);display:flex;align-items:center;gap:9px;flex:1}.brandMark{font-size:13px;padding:7px 9px;border-radius:10px}.statusPill{font-size:12px;padding:6px 10px;border-radius:999px;background:#eaf8f0;color:var(--ok);font-weight:700}.statusPill.offline{background:#fff0f0;color:var(--danger)}.iconBtn{border:0;background:#eef3fb;border-radius:10px;padding:8px 12px;font-size:18px;cursor:pointer}main{max-width:1040px;margin:0 auto;padding:22px 16px}.hero{background:linear-gradient(135deg,#155eea,#4b8fff);border-radius:26px;padding:24px;color:white;box-shadow:var(--shadow)}.hero h1{font-size:30px;margin:0 0 6px}.hero p{opacity:.9;margin:0}.grid{display:grid;gap:14px}.stats{grid-template-columns:repeat(4,1fr);margin-top:16px}.card{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:18px;box-shadow:var(--shadow)}.stat strong{display:block;font-size:26px;color:var(--navy)}.stat span{font-size:13px;color:var(--muted)}.sectionTitle{display:flex;justify-content:space-between;align-items:center;margin:28px 2px 12px}.sectionTitle h2{margin:0;font-size:20px}.btn{border:0;border-radius:13px;padding:12px 16px;font-weight:800;cursor:pointer}.btnPrimary{background:var(--blue);color:#fff}.btnSecondary{background:#eef4ff;color:var(--blue)}.btnDanger{background:#fff0f0;color:var(--danger)}.productRow,.shopRow,.lotRow{display:flex;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid var(--line)}.productRow:last-child,.shopRow:last-child,.lotRow:last-child{border:0}.productIcon{width:46px;height:46px;border-radius:13px;background:#eef4ff;display:flex;align-items:center;justify-content:center;font-size:23px;overflow:hidden}.productIcon img{width:100%;height:100%;object-fit:cover}.grow{flex:1}.muted{color:var(--muted);font-size:13px}.qty{font-weight:800;padding:6px 10px;border-radius:10px;background:#eef4ff;color:var(--blue)}.low{background:#fff0f0;color:var(--danger)}.warning{color:var(--warn)}.danger{color:var(--danger)}.ok{color:var(--ok)}.chips{display:flex;gap:8px;flex-wrap:wrap}.chip{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 12px;font-size:13px}.formGrid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field{display:flex;flex-direction:column;gap:6px}.field label{font-size:13px;font-weight:700}.field input,.field select{padding:12px;border:1px solid var(--line);border-radius:12px;font:inherit;background:white}.full{grid-column:1/-1}.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.bottomNav{position:fixed;left:0;right:0;bottom:0;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-top:1px solid var(--line);display:flex;justify-content:center;z-index:30;padding-bottom:env(safe-area-inset-bottom)}.navItem{height:68px;max-width:150px;flex:1;border:0;background:transparent;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:#8090a5;font-size:20px}.navItem span{font-size:11px}.navItem.active{color:var(--blue);font-weight:800}.scanBtn{color:var(--blue)}dialog{border:0;border-radius:20px;padding:0;max-width:520px;width:calc(100% - 28px);box-shadow:0 20px 60px rgba(0,0,0,.2)}dialog::backdrop{background:rgba(11,25,45,.45)}.modalCard{padding:22px}.cameraWrap{position:relative;background:#101522;border-radius:20px;overflow:hidden;min-height:300px}.cameraWrap video{width:100%;height:360px;object-fit:cover}.scanFrame{position:absolute;inset:25% 12%;border:3px solid white;border-radius:18px;box-shadow:0 0 0 999px rgba(0,0,0,.25)}.scanLine{position:absolute;left:14%;right:14%;top:50%;height:3px;background:#38a1ff;box-shadow:0 0 12px #38a1ff}.adBox{margin:18px 0;min-height:70px;border:1px dashed #cbd6e7;border-radius:16px;display:flex;align-items:center;justify-content:center;color:#98a5b6;font-size:12px;background:#fbfcfe}.empty{padding:32px;text-align:center;color:var(--muted)}.badge{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:12px;font-weight:800}.badgeWarn{background:#fff4df;color:#b9740c}.badgeOk{background:#eaf8f0;color:var(--ok)}.badgeDanger{background:#fff0f0;color:var(--danger)}.toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.search{flex:1;min-width:200px;padding:12px 14px;border:1px solid var(--line);border-radius:13px}.notice{padding:12px 14px;border-radius:14px;background:#edf5ff;color:#295b9c;font-size:13px}.adEnabled{display:block!important}@media(max-width:760px){.stats{grid-template-columns:1fr 1fr}.formGrid{grid-template-columns:1fr}.full{grid-column:auto}.hero h1{font-size:25px}main{padding:16px 12px}.card{padding:15px}.topbar{padding:0 12px}}@media(min-width:761px){.bottomNav{max-width:700px;left:50%;transform:translateX(-50%);border:1px solid var(--line);border-bottom:0;border-radius:20px 20px 0 0}}

.betaNotice{margin-bottom:14px}.settingsLink{width:100%;display:flex;align-items:center;justify-content:space-between;padding:15px 4px;border:0;border-bottom:1px solid var(--line);background:transparent;text-align:left;font:inherit;color:inherit;text-decoration:none;cursor:pointer}.settingsLink:last-child{border-bottom:0}.maintenance{max-width:560px;margin:12vh auto;text-align:center;padding:36px}.maintenanceIcon{font-size:56px}.maintenance h1{color:var(--navy)}.legalText{line-height:1.65}.legalText h3{margin-top:24px;color:var(--navy)}.legalRow{padding:10px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:minmax(140px,220px) 1fr;gap:12px}.legalRow strong{color:var(--navy)}.center{text-align:center}.aboutLogo{width:70px;height:70px;border-radius:22px;background:var(--blue);color:#fff;display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:900;margin-bottom:16px}@media(max-width:620px){.legalRow{grid-template-columns:1fr;gap:3px}}

/* --- V1.3 UI Refresh --- */
:root{--soft-blue:#edf5ff;--soft-green:#ecf8f1;--soft-red:#fff0f1;--soft-yellow:#fff7e2;--soft-orange:#fff1df}
body{background:linear-gradient(180deg,#f8fbff 0%,#f3f7fc 100%)}
.heroPro{display:grid;grid-template-columns:1.1fr 1fr;align-items:end;gap:24px;background:radial-gradient(circle at 85% 20%,rgba(255,255,255,.22),transparent 34%),linear-gradient(135deg,#0f5fe7,#3d84f8);overflow:hidden}
.eyebrow{display:block;font-size:11px;font-weight:900;letter-spacing:.14em;opacity:.75;margin-bottom:5px}.hero .eyebrow{color:#fff}.statSoft{background:rgba(255,255,255,.96);box-shadow:none;border-color:rgba(255,255,255,.55)}
.environmentGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.environmentCard{border:1px solid var(--line);background:#fff;border-radius:18px;padding:15px;display:flex;gap:12px;text-align:left;align-items:center;box-shadow:0 8px 24px rgba(34,67,114,.07);cursor:pointer;transition:.18s transform,.18s box-shadow}.environmentCard:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(34,67,114,.12)}.environmentIcon{width:44px;height:44px;border-radius:14px;background:var(--soft-blue);display:grid;place-items:center;font-size:22px;flex:0 0 auto}.miniMeta{display:flex;gap:7px;margin-top:7px;font-size:11px;font-weight:800}.miniDanger{color:var(--danger)}.miniWarn{color:var(--warn)}.miniOk{color:var(--ok)}.dashboardCols{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.viewSwitcher{display:flex;gap:7px;background:#eaf1fa;padding:5px;border-radius:15px;width:max-content;max-width:100%;margin:0 0 16px;overflow:auto}.viewSwitcher button{border:0;background:transparent;padding:10px 14px;border-radius:11px;font-weight:800;color:#60728a;white-space:nowrap;cursor:pointer}.viewSwitcher button.active{background:white;color:var(--blue);box-shadow:0 4px 14px rgba(42,75,120,.12)}
.inventoryToolbar{margin-bottom:10px}.inventoryTable{padding-top:4px;padding-bottom:4px}.productCardGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.premiumProductCard{border:1px solid var(--line);background:white;border-radius:20px;overflow:hidden;padding:0;text-align:left;cursor:pointer;box-shadow:0 9px 28px rgba(25,66,120,.08);transition:.18s transform,.18s box-shadow}.premiumProductCard:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(25,66,120,.13)}.premiumImage{height:132px;background:linear-gradient(160deg,#f9fbff,#eef5ff);display:grid;place-items:center;font-size:45px}.premiumImage img{max-width:82%;max-height:112px;object-fit:contain}.premiumBody{padding:14px}.premiumTitle{font-weight:850;color:var(--navy);font-size:15px;margin-bottom:4px}.gauge{height:8px;background:#e9eef6;border-radius:999px;overflow:hidden;margin:13px 0 8px}.gauge span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#34b97b,#1b8f5e)}.premiumMeta{display:flex;justify-content:space-between;align-items:center;font-size:12px}.expiryMini{margin-top:9px;font-size:11px;color:#8a6512}
.visualStock{display:grid;gap:20px}.shelfSection{border-radius:22px;border:1px solid #e6d8bf;background:linear-gradient(180deg,#fbf7ef,#f4ead9);overflow:hidden;box-shadow:0 13px 35px rgba(103,77,37,.09)}.shelfHeader{padding:14px 16px;background:rgba(255,255,255,.7);border-bottom:1px solid #eadbc3}.shelfIcon{font-size:22px;margin-right:8px}.shelf{display:grid;grid-template-columns:repeat(5,1fr);gap:2px;padding:18px;background:repeating-linear-gradient(180deg,transparent 0 145px,rgba(145,99,47,.18) 146px 150px)}.shelfItem{min-height:145px;border:0;background:rgba(255,255,255,.78);padding:10px;border-radius:14px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:8px;cursor:pointer}.shelfProductImage{height:65px;display:grid;place-items:center;font-size:36px}.shelfProductImage img{max-width:70px;max-height:65px;object-fit:contain}.shelfItem strong{font-size:12px;text-align:center}
.badgeInfo{background:#eaf3ff;color:#2868b8}.expiryStats{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-bottom:16px}.expiryStat{border-radius:18px;padding:15px;border:1px solid var(--line);display:flex;flex-direction:column;box-shadow:0 7px 20px rgba(33,64,104,.06)}.expiryStat strong{font-size:26px}.expiryStat span{font-size:12px;font-weight:700}.dangerBox{background:var(--soft-red);color:#c83232}.warnBox{background:var(--soft-orange);color:#c67015}.yellowBox{background:var(--soft-yellow);color:#94720c}.blueBox{background:#edf5ff;color:#2463b5}.greenBox{background:var(--soft-green);color:#228757}.neutralBox{background:white;color:var(--navy)}
.expiryTable{padding:0;overflow:hidden}.expiryTableHead,.expiryTableRow{display:grid;grid-template-columns:2.2fr 1.25fr .45fr 1fr 1fr;gap:10px;align-items:center;padding:11px 14px}.expiryTableHead{background:#f4f7fb;color:#5b6c83;font-size:12px;font-weight:850}.expiryTableRow{border-top:1px solid var(--line);cursor:pointer}.expiryTableRow:hover{background:#f9fbfe}.expiryProduct{display:flex;align-items:center;gap:10px;min-width:0}.expiryProduct strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.calendarMonths{display:grid;gap:16px}.calendarMonth h3{margin-top:0}.calendarGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.calendarDay{border:1px solid var(--line);background:#fff;border-radius:15px;padding:12px;text-align:left;display:grid;gap:5px;cursor:pointer}.calendarDay>span:first-child{font-size:24px;font-weight:900;color:var(--blue)}.calendarDay small{color:var(--muted)}
.timeline{position:relative;padding-left:16px}.timeline:before{content:"";position:absolute;left:24px;top:8px;bottom:8px;width:2px;background:#dce6f3}.timelineItem{position:relative;width:100%;display:grid;grid-template-columns:18px 110px 1fr auto;gap:12px;align-items:center;border:0;background:white;padding:14px 16px;margin:0 0 9px;border-radius:17px;box-shadow:0 6px 18px rgba(37,67,110,.06);text-align:left;cursor:pointer}.timelineDot{width:12px;height:12px;border-radius:50%;z-index:2;background:var(--ok);box-shadow:0 0 0 4px #edf8f2}.dangerDot{background:var(--danger);box-shadow:0 0 0 4px #fff0f0}.warnDot{background:var(--warn);box-shadow:0 0 0 4px #fff5e6}.timelineDate{font-size:12px;font-weight:850;color:#40526b}.timelineContent{min-width:0}
.periodGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.periodHead{display:flex;justify-content:space-between;align-items:center;margin-bottom:9px}.periodHead h3{margin:0}.periodHead span{background:#edf3fb;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:850}.periodItem{width:100%;border:0;border-top:1px solid var(--line);background:transparent;padding:10px 0;text-align:left;display:flex;justify-content:space-between;gap:10px;cursor:pointer}.periodItem small{color:var(--muted);text-align:right}
@media(max-width:980px){.environmentGrid{grid-template-columns:repeat(2,1fr)}.productCardGrid{grid-template-columns:repeat(3,1fr)}.expiryStats{grid-template-columns:repeat(3,1fr)}.shelf{grid-template-columns:repeat(4,1fr)}.periodGrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.heroPro{grid-template-columns:1fr}.dashboardCols{grid-template-columns:1fr}.environmentGrid{grid-template-columns:1fr 1fr}.productCardGrid{grid-template-columns:repeat(2,1fr)}.premiumImage{height:105px}.shelf{grid-template-columns:repeat(2,1fr)}.expiryStats{grid-template-columns:repeat(2,1fr)}.expiryTable{overflow-x:auto}.expiryTableHead,.expiryTableRow{min-width:760px}.calendarGrid{grid-template-columns:repeat(2,1fr)}.timelineItem{grid-template-columns:18px 1fr auto}.timelineDate{grid-column:2}.timelineContent{grid-column:2}.periodGrid{grid-template-columns:1fr}}
@media(max-width:430px){.productCardGrid{grid-template-columns:1fr 1fr;gap:9px}.premiumBody{padding:10px}.premiumTitle{font-size:13px}.environmentGrid{grid-template-columns:1fr}.calendarGrid{grid-template-columns:1fr}.expiryStats{gap:7px}.expiryStat{padding:12px}.expiryStat strong{font-size:21px}.viewSwitcher{width:100%}.viewSwitcher button{flex:1;font-size:11px;padding:9px 8px}}

/* V1.4 — Splash premium */
.splash{overflow:hidden;background:radial-gradient(circle at 50% 42%,#fff 0,#f7faff 44%,#eaf2ff 100%)}
.splashGlow{position:absolute;width:280px;height:280px;border-radius:50%;background:rgba(22,105,242,.12);filter:blur(30px);animation:splashGlow 1.8s ease-in-out infinite alternate}
.splashLogoWrap{position:relative;width:112px;height:112px;display:grid;place-items:center;z-index:1;animation:splashFloat 1.8s ease-in-out infinite}
.splashLogoHouse{position:relative;width:76px;height:66px;margin-top:13px}
.splashRoof{position:absolute;left:11px;top:2px;width:54px;height:54px;border-left:8px solid var(--blue);border-top:8px solid var(--blue);border-radius:8px 0 0 0;transform:rotate(45deg);animation:roofDraw .55s cubic-bezier(.4,0,.2,1) both}
.splashBody{position:absolute;left:9px;top:26px;width:58px;height:43px;background:linear-gradient(145deg,#1669f2,#4a8cff);border-radius:8px 8px 15px 15px;box-shadow:0 14px 35px rgba(22,105,242,.28);animation:bodyRise .5s .15s cubic-bezier(.2,.8,.2,1) both}
.splashCheck{position:absolute;z-index:2;left:27px;top:30px;color:#fff;font-size:28px;font-weight:900;opacity:0;transform:scale(.55) rotate(-8deg);animation:checkPop .35s .55s cubic-bezier(.2,1.5,.5,1) forwards}
.splashTitle{z-index:1;margin-top:12px;opacity:0;transform:translateY(8px);animation:titleIn .45s .35s ease forwards}
.splashProgress{z-index:1;width:116px;height:4px;background:#dbe7f8;border-radius:999px;overflow:hidden;margin-top:22px}
.splashProgress span{display:block;width:38%;height:100%;border-radius:inherit;background:linear-gradient(90deg,#1669f2,#6ca4ff);animation:progressSweep 1.05s ease-in-out infinite}
.splashStatus{z-index:1;margin-top:12px;color:#7a8aa2;font-size:12px;font-weight:650;letter-spacing:.01em;min-height:18px;transition:opacity .2s ease}
.splash.splashExit{animation:splashExit .32s ease forwards}
@keyframes roofDraw{from{opacity:0;transform:rotate(45deg) scale(.72)}to{opacity:1;transform:rotate(45deg) scale(1)}}
@keyframes bodyRise{from{opacity:0;transform:translateY(10px) scale(.92)}to{opacity:1;transform:none}}
@keyframes checkPop{to{opacity:1;transform:scale(1) rotate(0)}}
@keyframes titleIn{to{opacity:1;transform:none}}
@keyframes splashFloat{50%{transform:translateY(-4px)}}
@keyframes splashGlow{to{transform:scale(1.12);opacity:.7}}
@keyframes progressSweep{0%{transform:translateX(-115%)}50%{transform:translateX(155%)}100%{transform:translateX(310%)}}
@keyframes splashExit{to{opacity:0;transform:scale(1.015);visibility:hidden}}
@media (prefers-reduced-motion:reduce){.splash *{animation-duration:.01ms!important;animation-iteration-count:1!important}}

/* V1.4 — davantage d'espace pour la navigation mobile et les overlays externes */
@media(max-width:760px){.app{padding-bottom:calc(92px + env(safe-area-inset-bottom))}.bottomNav{min-height:72px;padding-bottom:max(env(safe-area-inset-bottom),8px)}}

/* V1.5 — Vues fidèles aux maquettes validées */
.environmentShowcase{grid-template-columns:repeat(5,minmax(0,1fr));}
.environmentShowcaseCard{position:relative;min-height:128px;align-items:flex-start;padding:13px 14px 14px;overflow:hidden;background:linear-gradient(180deg,#fff,#f8fbff)}
.environmentVisual{width:52px;height:52px;border-radius:15px;background:linear-gradient(145deg,#e8f2ff,#f7fbff);display:grid;place-items:center;font-size:28px;box-shadow:inset 0 0 0 1px #dce9fb;flex:0 0 auto}
.environmentCardBody{min-width:0;flex:1}.environmentCardBody>strong{display:block;color:var(--navy);font-size:15px;margin:3px 0 3px}.envChevron{position:absolute;right:12px;top:12px;color:#6c84a5;font-size:20px}.alertPill{padding:4px 7px;border-radius:999px;background:#f4f7fb}
.environmentStrip{display:flex;gap:10px;overflow:auto;padding:2px 2px 14px;scrollbar-width:none}.environmentStrip::-webkit-scrollbar{display:none}.envStripCard{min-width:130px;border:1px solid var(--line);background:#fff;border-radius:16px;padding:10px 12px;display:grid;grid-template-columns:40px 1fr;grid-template-rows:auto auto;text-align:left;column-gap:9px;cursor:pointer;box-shadow:0 6px 18px rgba(35,70,116,.06)}.envStripCard.selected{background:linear-gradient(145deg,#1768ef,#2d7bf4);color:#fff;border-color:transparent}.envStripIcon{grid-row:1/3;width:40px;height:40px;border-radius:12px;background:#edf5ff;display:grid;place-items:center;font-size:22px}.envStripCard.selected .envStripIcon{background:rgba(255,255,255,.17)}.envStripCard strong{font-size:13px;align-self:end}.envStripCard small{font-size:11px;color:var(--muted)}.envStripCard.selected small{color:#dceaff}.addEnvCard .envStripIcon{font-size:27px;color:var(--blue)}
.practicalInventory{padding:0;overflow:hidden}.practicalHead,.practicalRow{display:grid;grid-template-columns:minmax(220px,2fr) 90px 160px 150px;gap:12px;align-items:center;padding:12px 14px}.practicalHead{background:#f4f7fb;font-size:12px;font-weight:850;color:#60728a}.practicalRow{width:100%;border:0;border-top:1px solid var(--line);background:#fff;text-align:left;cursor:pointer}.practicalRow:hover{background:#fafcff}.practicalProduct{display:flex;align-items:center;gap:11px;min-width:0}.practicalProduct strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.envTag,.envMiniTag{display:inline-flex;align-items:center;width:max-content;background:#edf5ff;color:#315d91;border-radius:999px;padding:5px 8px;font-size:11px;font-weight:750}.statusChip{display:inline-flex;width:max-content;border-radius:999px;padding:6px 9px;font-size:11px;font-weight:850}.dangerChip{background:#fff0f0;color:#d13e3e}.warnChip{background:#fff5df;color:#bd7815}.okChip{background:#ebf8f0;color:#21885a}
.premiumExactGrid{grid-template-columns:repeat(5,minmax(0,1fr))}.exactPremiumCard{border-radius:18px}.exactPremiumImage{height:150px;position:relative;background:linear-gradient(160deg,#fff,#f5f9ff)}.fallbackProductEmoji{font-size:56px}.heartGhost{position:absolute;top:10px;right:11px;color:#8796aa;font-size:19px}.envMiniTag{margin-top:7px}.semiGauge{position:relative;width:92px;height:52px;margin:12px auto 2px;overflow:hidden}.semiGaugeArc{position:absolute;width:92px;height:92px;border-radius:50%;background:conic-gradient(var(--meter) calc(var(--pct)*1%),#e4e9f0 0);transform:rotate(-90deg);-webkit-mask:radial-gradient(farthest-side,transparent 62%,#000 63%);mask:radial-gradient(farthest-side,transparent 62%,#000 63%)}.semiGauge:after{content:"";position:absolute;left:0;right:0;bottom:0;height:46px;background:#fff}.semiGaugeText{position:absolute;z-index:2;left:0;right:0;bottom:2px;text-align:center;font-size:14px;color:var(--navy)}.premiumStatus{text-align:center;font-size:11px;font-weight:850;margin-top:2px}.exactPremiumCard .expiryMini{text-align:center}
.exactVisualStock{gap:24px}.shelfSection{overflow:visible}.woodShelf{background:linear-gradient(180deg,#f9f1e4,#ead2ac);border-color:#dcc29b}.coldShelf{background:linear-gradient(180deg,#edf8ff,#cfe6f4);border-color:#b9d5e8}.exactShelfHeader{border-radius:20px 20px 0 0;background:rgba(255,255,255,.86)}.shelfCabinet{padding:16px}.woodShelf .shelfCabinet{background:linear-gradient(90deg,#d7aa70 0 2%,transparent 2% 98%,#d7aa70 98%),linear-gradient(#f5dfbf,#e9c997)}.coldShelf .shelfCabinet{background:linear-gradient(90deg,#b5d2e3 0 2%,transparent 2% 98%,#b5d2e3 98%),linear-gradient(#edfaff,#d4e8f3)}.shelfBand{position:relative;padding:28px 10px 14px;border-bottom:12px solid rgba(138,91,42,.27)}.coldShelf .shelfBand{border-bottom-color:rgba(104,151,179,.28)}.shelfCategory{position:absolute;top:0;left:10px;background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:999px;padding:5px 10px;font-size:11px;font-weight:850;color:#604623}.coldShelf .shelfCategory{color:#315d7c}.exactShelf{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:0;background:none}.exactShelfItem{min-height:190px;border:1px solid rgba(255,255,255,.75);background:rgba(255,255,255,.82);backdrop-filter:blur(2px);justify-content:flex-start;align-items:stretch;padding:10px}.shelfProductImage{height:78px}.shelfProductImage img{max-width:90px;max-height:78px}.shelfInfo{background:rgba(255,255,255,.96);border-radius:11px;padding:8px;display:grid;gap:3px;text-align:left}.shelfInfo strong{font-size:12px}.shelfInfo span,.shelfInfo small{font-size:10px;color:#53657d}.shelfInfo em{width:max-content;max-width:100%;font-style:normal;font-size:10px;font-weight:850;border-radius:999px;padding:4px 7px}.shelfOk{background:#eaf8f0;color:#168453}.shelfLow{background:#fff0e3;color:#b86a0f}
@media(max-width:980px){.environmentShowcase{grid-template-columns:repeat(3,1fr)}.premiumExactGrid{grid-template-columns:repeat(3,1fr)}.exactShelf{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.environmentShowcase{grid-template-columns:1fr}.environmentShowcaseCard{min-height:auto;padding:11px 12px;align-items:center}.environmentVisual{width:46px;height:46px;font-size:24px}.environmentCardBody{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;column-gap:8px}.environmentCardBody>strong{grid-column:1}.environmentCardBody>.muted{grid-column:1}.environmentCardBody>.miniMeta{grid-column:2;grid-row:1/3;align-self:center}.envChevron{right:8px;top:50%;transform:translateY(-50%)}.environmentShowcaseCard .miniMeta{padding-right:22px}.inventoryTitle{margin-top:8px}.environmentStrip{margin:0 -12px;padding:2px 12px 13px}.envStripCard{min-width:105px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:3px}.envStripIcon{width:46px;height:46px}.premiumExactGrid{grid-template-columns:1fr}.exactPremiumCard{display:grid;grid-template-columns:105px 1fr}.exactPremiumImage{height:100%;min-height:148px}.exactPremiumCard .premiumBody{padding:12px}.semiGauge{position:absolute;right:13px;bottom:30px;width:70px;height:42px;transform:scale(.82);transform-origin:right bottom}.exactPremiumCard{position:relative}.premiumStatus{text-align:left}.exactShelf{grid-template-columns:repeat(2,1fr)}.shelfCabinet{padding:10px}.exactShelfItem{min-height:165px}.practicalInventory{overflow-x:auto}.practicalHead,.practicalRow{min-width:660px}.inventoryViewSwitcher{width:100%}.inventoryViewSwitcher button{flex:1}.inventoryFilters{display:grid;grid-template-columns:1fr 1fr}.inventoryFilters .search{min-width:0;width:100%}}
@media(max-width:430px){.exactShelf{grid-template-columns:1fr 1fr;gap:8px}.shelfProductImage{height:65px}.exactShelfItem{min-height:152px}.premiumExactGrid{grid-template-columns:1fr}.environmentShowcaseCard .miniMeta{font-size:10px;gap:4px}.alertPill{padding:3px 5px}}

/* =========================================================
   V1.6 — RECONSTRUCTION FIDELE AUX MAQUETTES VALIDÉES
   Desktop: sidebar + dashboard large / Mobile: app native-like
   ========================================================= */
:root{
  --ds-blue:#1267e8;--ds-blue2:#2180f5;--ds-navy:#0e2d5b;--ds-ink:#13233d;
  --ds-bg:#f4f8fd;--ds-panel:#ffffff;--ds-border:#dce6f2;--ds-soft:#eef5ff;
  --ds-green:#1eaa67;--ds-orange:#f29a2e;--ds-red:#e75050;
  --ds-shadow:0 8px 24px rgba(24,65,120,.08);
}
body{background:#f4f8fd;color:var(--ds-ink)}
.app{min-height:100vh;padding:0;display:flex;background:#f4f8fd}
.appContent{min-width:0;flex:1;min-height:100vh}
.desktopSidebar{display:none}
.mobileBell{display:none}
main{max-width:none;margin:0;padding:28px 32px 110px}

/* Desktop shell exactly like the reference screens */
@media(min-width:900px){
  .desktopSidebar{display:flex;position:fixed;inset:0 auto 0 0;width:236px;z-index:50;flex-direction:column;padding:24px 16px 20px;background:linear-gradient(180deg,#0f65dc 0%,#0b4dad 48%,#0a3f8e 100%);color:#fff;box-shadow:8px 0 30px rgba(13,54,111,.08)}
  .appContent{margin-left:236px;width:calc(100% - 236px)}
  .topbar{display:none!important}.bottomNav{display:none!important}
  .sideBrand{display:flex;align-items:center;gap:10px;font-size:22px;font-weight:900;padding:3px 8px}.sideBrand span{color:#d9ecff}.sideLogo{width:38px;height:38px;border-radius:10px;background:#fff;color:#1267e8;display:grid;place-items:center;font-size:24px;font-weight:900;box-shadow:0 5px 15px rgba(0,0,0,.13)}
  .sideTagline{font-size:10px;color:#d6e8ff;padding:3px 8px 22px}
  .sideNav{display:flex;flex-direction:column;gap:6px}
  .sideNavItem{max-width:none!important;width:100%;height:48px!important;flex:none!important;display:flex!important;flex-direction:row!important;justify-content:flex-start!important;align-items:center!important;gap:12px!important;padding:0 14px!important;border-radius:10px!important;color:#eaf4ff!important;background:transparent!important;font-size:14px!important;text-align:left;cursor:pointer}
  .sideNavItem span{font-size:14px!important}.sideNavItem .sideIcon{width:24px;text-align:center;font-size:18px!important}.sideNavItem.active{background:rgba(255,255,255,.16)!important;color:#fff!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.11)}
  .sideNavItem:hover{background:rgba(255,255,255,.10)!important}.sideFooter{margin-top:auto;border-top:1px solid rgba(255,255,255,.18);padding:18px 10px 0;display:flex;align-items:center;gap:8px;font-size:11px;color:#d6e8ff}.sideFooter span:first-child{width:8px;height:8px;border-radius:50%;background:#53d68c;box-shadow:0 0 0 4px rgba(83,214,140,.12)}.sideFooter span:first-child.offline{background:#ff7b7b}
  main{padding:30px 36px 56px;max-width:1500px;margin:0 auto}
}

/* Dashboard - Concept B */
.dashHeader{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.dashHeader h1{margin:0 0 3px;font-size:28px;color:#0c2851;letter-spacing:-.02em}.dashHeader p{margin:0;color:#677992;font-size:13px}.dashSearch{width:min(360px,40vw);height:42px;border:1px solid #d7e2ef;border-radius:16px;background:#fff;display:flex;align-items:center;gap:8px;padding:0 14px;box-shadow:0 4px 14px rgba(25,66,117,.04);color:#8494aa}.dashSearch input{border:0;outline:0;background:transparent;width:100%;font:inherit;color:#273a55}
.dashboardKpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:22px}.kpiCard{min-height:92px;border:1px solid rgba(26,72,128,.07);border-radius:18px;padding:16px 18px;display:flex;align-items:center;gap:13px;box-shadow:0 5px 18px rgba(22,57,103,.04)}.kpiCard small{display:block;font-size:11px;font-weight:800;color:#576c87;margin-bottom:3px}.kpiCard strong{font-size:29px;line-height:1;color:#0d2d5b}.kpiIcon{width:43px;height:43px;border-radius:50%;display:grid;place-items:center;font-size:21px;background:rgba(255,255,255,.75)}.kpiGreen{background:linear-gradient(135deg,#edf9f3,#e4f6ee)}.kpiOrange{background:linear-gradient(135deg,#fff8e9,#fff1db)}.kpiRed{background:linear-gradient(135deg,#fff2f4,#ffe8ec)}.kpiBlue{background:linear-gradient(135deg,#eef6ff,#e2efff)}
.mockSectionTitle{margin:18px 0 10px}.mockSectionTitle h2{font-size:18px;color:#102d56}.textAction{border:0;background:transparent;color:#1267e8;font-weight:800;font-size:12px;cursor:pointer}
.mockEnvStrip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.mockEnvCard{min-width:0;position:relative;display:flex;align-items:center;gap:11px;border:1px solid #dce6f1;border-radius:15px;background:#fff;padding:11px;text-align:left;cursor:pointer;box-shadow:0 5px 16px rgba(30,69,117,.05);transition:.18s}.mockEnvCard:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(30,69,117,.10)}.mockEnvVisual{width:58px;height:58px;border-radius:12px;background:linear-gradient(145deg,#eef6ff,#dceeff);display:grid;place-items:center;font-size:31px;flex:0 0 auto}.mockEnvCard strong{display:block;font-size:14px;color:#102c55}.mockEnvCard small{display:block;font-size:11px;color:#75849a;margin-top:2px}.envAlert{position:absolute;right:8px;top:8px;min-width:19px;height:19px;padding:0 5px;border-radius:999px;background:#fff0f0;color:#dc4848;font-size:10px;font-weight:900;display:grid;place-items:center}
.homeProductGrid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.homeBottomCards{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:16px}.actionBanner{border:0;border-radius:18px;padding:17px 19px;display:flex;align-items:center;justify-content:space-between;text-align:left;cursor:pointer;box-shadow:0 5px 18px rgba(30,69,117,.04)}.actionBanner strong{display:block;font-size:16px;margin-bottom:4px}.actionBanner span{font-size:12px}.buyBanner{background:linear-gradient(135deg,#fff0f1,#ffe7e9);color:#b7323f}.expiryBanner{background:linear-gradient(135deg,#eef9f0,#e1f5e8);color:#1b7b49}.actionBanner>span{font-size:28px}

/* Exact premium product cards */
.productCardGrid{display:grid;gap:13px}.premiumExactGrid{grid-template-columns:repeat(5,minmax(0,1fr))}.premiumProductCard{appearance:none;border:1px solid #dce5ef;background:#fff;border-radius:17px;overflow:hidden;padding:0;text-align:left;cursor:pointer;box-shadow:0 7px 19px rgba(25,66,117,.07);transition:transform .15s,box-shadow .15s}.premiumProductCard:hover{transform:translateY(-2px);box-shadow:0 12px 25px rgba(25,66,117,.12)}.exactPremiumImage{height:128px;background:linear-gradient(180deg,#fff,#f7f9fc);display:flex;align-items:center;justify-content:center;position:relative;padding:12px}.exactPremiumImage img{max-width:100%;max-height:108px;object-fit:contain}.premiumBody{padding:11px 12px 13px}.premiumTitle{font-weight:850;font-size:13px;color:#142947;min-height:33px;line-height:1.22}.envMiniTag{display:inline-flex;margin-top:6px;padding:4px 7px;border-radius:999px;background:#eef5ff;color:#4a678a;font-size:10px;font-weight:750}.heartGhost{position:absolute;right:10px;top:8px;font-size:18px;color:#8d9caf}.semiGauge{width:84px;height:46px;margin:9px auto 1px}.semiGaugeArc{width:84px;height:84px}.semiGaugeText{font-size:13px}.premiumStatus{font-size:10px}.expiryMini{font-size:9px;margin-top:5px;text-align:center}

/* Inventory page - reference A/B/C */
.inventoryTitle{margin-top:0}.inventoryTitle h2{font-size:26px;color:#0d2c57}.environmentStrip{display:flex;gap:10px;overflow-x:auto;padding:2px 1px 14px;scrollbar-width:none}.envStripCard{min-width:145px;background:#fff;border:1px solid #dbe6f2;border-radius:14px;box-shadow:0 5px 16px rgba(23,66,115,.05);padding:10px;display:grid;grid-template-columns:48px 1fr;grid-template-rows:auto auto;column-gap:10px;text-align:left}.envStripIcon{grid-row:1/3;width:48px;height:48px;border-radius:10px;background:#edf5ff;display:grid;place-items:center;font-size:25px}.envStripCard strong{font-size:13px;color:#142c50}.envStripCard small{font-size:10px;color:#7b8a9e}.envStripCard.selected{background:#1267e8;color:#fff;border-color:#1267e8}.envStripCard.selected strong,.envStripCard.selected small{color:#fff}.envStripCard.selected .envStripIcon{background:rgba(255,255,255,.18)}
.viewSwitcher{display:flex;border:1px solid #d8e2ee;background:#eef3f9;border-radius:13px;padding:3px;width:max-content;margin:0 0 13px auto}.viewSwitcher button{border:0;background:transparent;padding:8px 13px;border-radius:10px;font-size:11px;font-weight:800;color:#647690;cursor:pointer}.viewSwitcher button.active{background:#1267e8;color:#fff;box-shadow:0 4px 10px rgba(18,103,232,.22)}
.inventoryToolbar,.inventoryFilters{background:transparent}.search{background:#fff;border-color:#dbe5f0;box-shadow:none}.practicalInventory{border-radius:16px;padding:0;overflow:hidden}.practicalHead,.practicalRow{grid-template-columns:minmax(240px,2fr) 100px 170px 150px;padding:12px 16px}.practicalHead{background:#f2f6fb}.practicalRow{background:#fff}.productIcon{background:#f5f8fc}

/* Placard visual - much closer to reference C */
.visualStock{display:grid;gap:22px}.shelfSection{border-radius:19px;overflow:hidden;box-shadow:0 10px 25px rgba(31,65,108,.09);border:1px solid #d7e1ec}.shelfHeader{display:flex;align-items:center;justify-content:space-between;padding:13px 17px;background:#fff}.shelfHeader strong{font-size:19px;color:#0e2d5a}.shelfIcon{font-size:23px;margin-right:8px}.shelfCabinet{padding:13px 16px 18px}.woodShelf .shelfCabinet{background:linear-gradient(90deg,#c79458 0 1.5%,transparent 1.5% 98.5%,#c79458 98.5%),linear-gradient(180deg,#edc997,#dba86e)}.coldShelf .shelfCabinet{background:linear-gradient(90deg,#a7c8dc 0 1.5%,transparent 1.5% 98.5%,#a7c8dc 98.5%),linear-gradient(180deg,#edf9ff,#c7e0ee)}.shelfBand{position:relative;padding:31px 8px 13px;border-bottom:10px solid rgba(133,77,31,.33);box-shadow:0 6px 6px rgba(91,53,23,.11)}.coldShelf .shelfBand{border-bottom-color:rgba(81,131,159,.28);box-shadow:0 6px 7px rgba(58,102,129,.09)}.shelfCategory{position:absolute;top:4px;left:9px;background:rgba(255,255,255,.94);border:1px solid rgba(0,0,0,.06);border-radius:999px;padding:5px 10px;font-size:10px;font-weight:850}.exactShelf{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.exactShelfItem{border:0;background:transparent;min-height:170px;padding:0;display:flex;flex-direction:column;justify-content:flex-end;position:relative;cursor:pointer}.shelfProductImage{height:82px;display:flex;align-items:flex-end;justify-content:center;font-size:48px}.shelfProductImage img{max-height:78px;max-width:88%;object-fit:contain;filter:drop-shadow(0 7px 5px rgba(62,42,23,.14))}.shelfInfo{background:rgba(255,255,255,.95);border-radius:10px;padding:8px;box-shadow:0 5px 14px rgba(62,42,23,.08);text-align:left}.shelfInfo strong{font-size:11px}.shelfInfo span,.shelfInfo small{font-size:9px}.shelfInfo em{font-size:9px;padding:3px 6px;margin-top:3px}

/* Expiry page closer to dedicated mockup */
.expiryStats{display:grid;grid-template-columns:repeat(6,1fr);gap:11px;margin-bottom:15px}.expiryStat{border-radius:16px;padding:15px 13px;min-height:82px;display:flex;flex-direction:column;justify-content:center;border:1px solid rgba(25,65,115,.05)}.expiryStat strong{font-size:25px}.expiryStat span{font-size:10px;font-weight:750}.dangerBox{background:#fff0f1;color:#d9363e}.warnBox{background:#fff2e3;color:#d56f17}.yellowBox{background:#fff8dd;color:#ad7c0a}.blueBox{background:#eaf4ff;color:#175cae}.greenBox{background:#ecf8ef;color:#16854c}.neutralBox{background:#fff;color:#17345b}.expirySwitcher{margin-left:auto}.expiryTable{overflow:hidden;padding:0}.expiryTableHead{background:#f3f6fa;font-size:11px;font-weight:850}

/* Mobile = mockups mobile, not scaled desktop */
@media(max-width:899px){
  body{background:#f8fbff}.desktopSidebar{display:none}.app{display:block;padding-bottom:calc(82px + env(safe-area-inset-bottom))}.appContent{margin:0;width:100%}.topbar{height:60px;padding:0 14px;background:#fff;border-bottom:0;box-shadow:0 2px 11px rgba(26,62,106,.05)}.brand{font-size:19px}.brandMark{width:30px;height:30px;padding:0;display:grid;place-items:center;border-radius:9px}.statusPill{display:none}.mobileBell{display:block;border:0;background:transparent;font-size:18px;padding:8px}.bottomNav{display:flex;min-height:70px;padding:3px 4px max(7px,env(safe-area-inset-bottom));box-shadow:0 -8px 25px rgba(28,61,105,.08);border-top:1px solid #edf1f6}.navItem{height:60px;font-size:19px}.navItem span{font-size:10px}.scanBtn{width:48px;max-width:72px}.scanBtn:first-line{background:#1267e8;color:#fff;border-radius:50%}
  main{padding:15px 13px calc(90px + env(safe-area-inset-bottom))}.dashHeader{margin:2px 0 12px}.dashHeader h1{font-size:22px}.dashHeader p{font-size:11px}.dashSearch{display:none}.dashboardKpis{grid-template-columns:1fr 1fr;gap:8px}.kpiCard{min-height:77px;padding:10px 11px;border-radius:14px;gap:9px}.kpiIcon{width:34px;height:34px;font-size:17px}.kpiCard small{font-size:9px}.kpiCard strong{font-size:23px}.mockSectionTitle{margin-top:18px}.mockSectionTitle h2{font-size:16px}.textAction{font-size:10px}.mockEnvStrip{display:flex;overflow-x:auto;gap:8px;margin:0 -13px;padding:2px 13px 10px;scrollbar-width:none}.mockEnvCard{min-width:92px;width:92px;display:flex;flex-direction:column;align-items:center;text-align:center;padding:8px 6px;border-radius:13px}.mockEnvVisual{width:46px;height:46px;font-size:24px}.mockEnvCard strong{font-size:11px}.mockEnvCard small{font-size:9px}.envAlert{right:4px;top:4px}.homeProductGrid{display:flex;flex-direction:column;gap:8px}.homeProductGrid .exactPremiumCard{display:grid;grid-template-columns:72px 1fr;min-height:88px}.homeProductGrid .exactPremiumImage{height:100%;min-height:88px;padding:8px}.homeProductGrid .exactPremiumImage img{max-height:68px}.homeProductGrid .fallbackProductEmoji{font-size:36px}.homeProductGrid .premiumBody{padding:9px 10px}.homeProductGrid .premiumTitle{min-height:0}.homeProductGrid .semiGauge{position:absolute;right:9px;bottom:17px;transform:scale(.68);transform-origin:right bottom}.homeProductGrid .exactPremiumCard{position:relative}.homeBottomCards{grid-template-columns:1fr;gap:8px}.actionBanner{padding:13px 14px}.actionBanner strong{font-size:13px}.actionBanner span{font-size:10px}
  .inventoryTitle h2{font-size:21px}.inventoryTitle .eyebrow{display:none}.environmentStrip{margin:0 -13px;padding:0 13px 12px}.envStripCard{min-width:82px;width:82px;display:flex;flex-direction:column;align-items:center;text-align:center;padding:7px 5px;gap:3px;border-radius:12px}.envStripIcon{width:43px;height:43px;font-size:22px}.envStripCard strong{font-size:10px}.envStripCard small{font-size:8px}.inventoryViewSwitcher{width:100%;margin:0 0 10px}.viewSwitcher button{flex:1;padding:8px 5px;font-size:9px}.inventoryToolbar{display:grid;grid-template-columns:1fr auto}.inventoryFilters{display:grid;grid-template-columns:1fr 1fr;gap:7px}.inventoryFilters .search{min-width:0;width:100%;font-size:11px;padding:10px}.premiumExactGrid{grid-template-columns:1fr!important;gap:8px}.exactPremiumCard{display:grid;grid-template-columns:88px 1fr;min-height:114px;position:relative}.exactPremiumImage{height:100%;min-height:114px;padding:8px}.exactPremiumImage img{max-height:88px}.fallbackProductEmoji{font-size:42px}.premiumBody{padding:10px}.premiumTitle{font-size:12px;min-height:auto;padding-right:70px}.envMiniTag{font-size:9px}.semiGauge{position:absolute;right:8px;bottom:21px;transform:scale(.72);transform-origin:right bottom}.premiumStatus{text-align:left;font-size:9px}.expiryMini{text-align:left;font-size:8px}.heartGhost{display:none}
  .practicalInventory{border:0;background:transparent;box-shadow:none}.practicalHead{display:none}.practicalRow{min-width:0!important;display:grid!important;grid-template-columns:44px 1fr auto!important;grid-template-rows:auto auto!important;gap:2px 8px!important;margin-bottom:8px;border:1px solid #dfe7f1!important;border-radius:13px!important;padding:9px!important;box-shadow:0 4px 13px rgba(24,65,110,.04)}.practicalProduct{grid-column:1/3;grid-row:1/3}.practicalProduct .productIcon{width:40px;height:40px}.practicalRow>.qty{grid-column:3;grid-row:1}.practicalRow>.envTag{grid-column:2;grid-row:2;margin-left:50px}.practicalRow>.statusChip{grid-column:3;grid-row:2}.practicalProduct strong{font-size:11px}
  .visualStock{gap:14px}.shelfSection{border-radius:16px}.shelfHeader{padding:10px 12px}.shelfHeader strong{font-size:17px}.shelfCabinet{padding:8px}.shelfBand{padding:28px 5px 9px}.exactShelf{grid-template-columns:repeat(2,1fr);gap:7px}.exactShelfItem{min-height:142px}.shelfProductImage{height:65px}.shelfProductImage img{max-height:62px}.shelfInfo{padding:6px}.shelfInfo strong{font-size:9px}.shelfInfo span,.shelfInfo small,.shelfInfo em{font-size:8px}
  .expiryStats{grid-template-columns:repeat(3,1fr);gap:7px}.expiryStat{min-height:67px;padding:10px}.expiryStat strong{font-size:20px}.expiryStat span{font-size:8px}.expirySwitcher{width:100%;overflow-x:auto;margin:0 0 10px}.expirySwitcher button{min-width:82px}.expiryTable{overflow-x:auto}.expiryTableHead,.expiryTableRow{min-width:620px}
}

@media(min-width:900px) and (max-width:1180px){.dashboardKpis{grid-template-columns:repeat(2,1fr)}.mockEnvStrip{grid-template-columns:repeat(3,1fr)}.homeProductGrid,.premiumExactGrid{grid-template-columns:repeat(3,1fr)}.expiryStats{grid-template-columns:repeat(3,1fr)}}

/* ==========================================================
   V1.7 - TROIS VUES DE REFERENCE INTEGREES
   A Pratique / B Premium / C Placard visuel
   ========================================================== */
.inventoryReferenceHeader{display:flex;align-items:center;justify-content:space-between;margin:2px 0 14px}.inventoryReferenceHeader h1{margin:2px 0 0;font-size:28px;color:#0b2b59}.inventoryReferenceHeader .eyebrow{font-size:10px;font-weight:900;letter-spacing:.15em;color:#4a76aa}.viewChoiceBar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 18px}.viewChoice{border:1px solid #d9e5f2;background:#fff;border-radius:16px;padding:12px 14px;display:flex;align-items:center;gap:11px;text-align:left;cursor:pointer;box-shadow:0 6px 18px rgba(22,59,107,.05);color:#15355d}.viewChoice.active{border:2px solid #176df3;background:linear-gradient(180deg,#f8fbff,#edf5ff);box-shadow:0 8px 22px rgba(23,109,243,.13)}.viewChoiceIcon{width:38px;height:38px;border-radius:10px;background:#edf5ff;color:#176df3;display:grid;place-items:center;font-size:20px;flex:0 0 38px}.viewChoice.active .viewChoiceIcon{background:#176df3;color:#fff}.viewChoice strong{display:block;font-size:13px}.viewChoice small{display:block;font-size:9px;color:#7d8da3;margin-top:2px}

/* A - Pratique */
.conceptA{background:#f8fbff;border-radius:18px;padding:2px}.conceptATop{display:flex;align-items:center;justify-content:space-between;margin:0 0 14px}.conceptATop h2{margin:0;color:#0b2a56;font-size:23px}.conceptATop p{margin:3px 0 0;color:#64758b;font-size:11px}.conceptASearch{height:39px;min-width:270px;background:#fff;border:1px solid #dce6f1;border-radius:12px;padding:0 12px;display:flex;align-items:center;gap:7px;color:#8aa0bb}.conceptASearch input{border:0;outline:0;width:100%;font:inherit;background:transparent;color:#243c5e}.conceptAEnvGrid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:15px}.conceptAEnvCard{position:relative;min-height:112px;background:linear-gradient(180deg,#fff,#f8fbff);border:1px solid #d9e5f2;border-radius:15px;padding:13px;display:grid;grid-template-columns:48px 1fr;gap:10px;text-align:left;cursor:pointer;box-shadow:0 6px 16px rgba(22,62,112,.05)}.conceptAEnvCard.selected{border-color:#1971f5;box-shadow:0 0 0 2px rgba(25,113,245,.1)}.conceptAEnvCard.add{place-items:center;text-align:center;display:flex;flex-direction:column;justify-content:center}.conceptAEnvIcon{width:48px;height:48px;border-radius:11px;background:#edf5ff;display:grid;place-items:center;font-size:25px}.conceptAEnvText strong{display:block;font-size:14px;color:#17345b}.conceptAEnvText>span{font-size:10px;color:#75879c}.conceptAEnvMeta{display:grid;gap:3px;margin-top:9px}.conceptAEnvMeta b{font-size:8px;font-weight:800}.metaDanger{color:#d84b50}.metaWarn{color:#d47c12}.metaOk{color:#23844f}.metaNeutral{color:#8796aa}.conceptAChevron{position:absolute;right:10px;top:10px;color:#6f86a2}.conceptABody{display:grid;grid-template-columns:minmax(0,1fr) 255px;gap:13px;align-items:start}.conceptATable{padding:0;overflow:hidden}.conceptATableTitle{padding:13px 15px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e7eef6}.conceptATableTitle strong{font-size:16px;color:#102f5b}.conceptATableTitle span{font-size:9px;color:#73859d;margin-left:5px}.conceptASide{display:grid;gap:12px}.conceptASideCard{background:#fff;border:1px solid #dfe8f2;border-radius:15px;padding:12px;box-shadow:0 6px 17px rgba(22,62,112,.05)}.conceptASideHead{display:flex;justify-content:space-between;align-items:center;margin-bottom:9px}.conceptASideHead strong{font-size:13px}.conceptASideHead span{background:#176df3;color:#fff;border-radius:999px;font-size:9px;padding:3px 7px}.miniListRow{display:grid;grid-template-columns:17px 1fr auto;gap:6px;align-items:center;padding:6px 0;border-bottom:1px solid #edf2f7;font-size:9px}.miniListRow strong{font-size:10px}.miniListRow em{font-style:normal;color:#61758f}.miniAlertRow{display:grid;grid-template-columns:18px 1fr;gap:6px;padding:6px 0;border-bottom:1px solid #edf2f7}.miniAlertRow strong,.miniAlertRow small{display:block;font-size:9px}.miniAlertRow small{color:#7f8fa3}.emptyMini{font-size:9px;color:#8392a6;padding:10px 0}.textAction.full{width:100%;margin-top:8px;text-align:center}

/* B - Premium */
.conceptB{background:#f8fbff;border-radius:18px}.conceptBHello{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.conceptBHello h2{margin:0;font-size:24px;color:#102f5b}.conceptBHello p{margin:2px 0 0;font-size:10px;color:#63758d}.conceptBSearch{min-width:270px;height:39px;background:#fff;border:1px solid #d8e4f0;border-radius:14px;display:flex;align-items:center;padding:0 12px;gap:7px}.conceptBSearch input{border:0;outline:0;background:transparent;width:100%}.conceptBKpis{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:17px}.conceptBKpi{min-height:76px;border-radius:16px;padding:13px;display:flex;align-items:center;gap:12px;border:1px solid rgba(25,75,130,.06)}.conceptBKpi>span{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.75);font-size:19px}.conceptBKpi small{display:block;font-size:9px;font-weight:800}.conceptBKpi strong{display:block;font-size:24px;margin-top:2px}.conceptBKpi.green{background:#eafbF0;color:#15874d}.conceptBKpi.orange{background:#fff3de;color:#d17a10}.conceptBKpi.red{background:#fff0f0;color:#d94b50}.conceptBKpi.blue{background:#edf5ff;color:#1768d7}.conceptBSectionHead{display:flex;align-items:center;justify-content:space-between;margin:12px 0 9px}.conceptBSectionHead h3{font-size:16px;margin:0;color:#15345d}.conceptBSectionHead h3 span{color:#8b9aad;font-size:11px}.conceptBEnvRow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.conceptBEnv{background:#fff;border:1px solid #dbe6f1;border-radius:14px;padding:8px;display:grid;grid-template-columns:48px 1fr;gap:9px;text-align:left;align-items:center;cursor:pointer;box-shadow:0 5px 15px rgba(25,65,110,.04)}.conceptBEnv.selected{border-color:#176df3;background:#f1f7ff}.conceptBEnvPic{width:48px;height:48px;border-radius:10px;background:linear-gradient(150deg,#eff6ff,#e5eef9);display:grid;place-items:center;font-size:25px}.conceptBEnv strong{display:block;font-size:11px}.conceptBEnv small{font-size:9px;color:#72849b}.conceptBChips{display:flex;gap:6px}.conceptBChips span{font-size:8px;padding:5px 8px;border-radius:999px;background:#fff;border:1px solid #dde6ef;color:#62758d}.conceptBChips .active{background:#176df3;color:#fff;border-color:#176df3}.conceptBGrid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.conceptB .exactPremiumCard{border-radius:15px;box-shadow:0 7px 18px rgba(25,67,115,.07)}.conceptB .exactPremiumImage{height:145px}.conceptB .premiumTitle{font-size:12px}.conceptBBottom{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}.conceptBAction{border:0;border-radius:16px;padding:13px 15px;display:grid;grid-template-columns:38px 1fr auto;align-items:center;text-align:left;cursor:pointer}.conceptBAction .big{font-size:22px}.conceptBAction strong,.conceptBAction small{display:block}.conceptBAction strong{font-size:13px}.conceptBAction small{font-size:9px;margin-top:2px}.conceptBAction b{font-size:20px}.conceptBAction.buyBanner{background:#fff0f1;color:#b83943}.conceptBAction.expiryBanner{background:#eaf8ef;color:#16814b}

/* C - Placard visuel */
.conceptC{background:#f8fbff;border-radius:18px}.conceptCTop{display:flex;gap:10px;align-items:center;margin-bottom:11px}.conceptCSearch{flex:1;max-width:520px;height:42px;border:1px solid #d8e4ef;background:#fff;border-radius:14px;padding:0 13px;display:flex;align-items:center;gap:8px}.conceptCSearch input{width:100%;border:0;outline:0;background:transparent}.squareAction{width:42px;height:42px;border-radius:12px;border:1px solid #d8e4ef;background:#fff;color:#176df3;font-size:20px}.conceptCEnvTabs{display:flex;gap:8px;overflow-x:auto;padding:1px 0 10px;scrollbar-width:none}.conceptCEnvTab{min-width:116px;border:1px solid #dde6f0;background:#fff;border-radius:13px;padding:9px 10px;display:grid;grid-template-columns:31px 1fr;grid-template-rows:auto auto;text-align:left;cursor:pointer}.conceptCEnvTab>span{grid-row:1/3;width:31px;height:31px;border-radius:8px;background:#eef5ff;display:grid;place-items:center;font-size:17px}.conceptCEnvTab strong{font-size:10px}.conceptCEnvTab small{font-size:8px;color:#798ba1}.conceptCEnvTab.active{background:#176df3;color:#fff;border-color:#176df3}.conceptCEnvTab.active>span{background:rgba(255,255,255,.2)}.conceptCEnvTab.active small{color:#dceaff}.conceptCBody{display:grid;grid-template-columns:180px 1fr;gap:12px;align-items:start}.conceptCFilters{background:#fff;border:1px solid #dfe8f1;border-radius:15px;padding:12px;display:flex;flex-direction:column;gap:6px;box-shadow:0 5px 15px rgba(25,65,110,.04)}.conceptCFilters h4{margin:0 0 5px;font-size:14px}.conceptCFilters>strong{font-size:9px;margin-top:7px}.conceptCFilters label{font-size:8px;color:#4d627d}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:3px}.dot.green{background:#23aa66}.dot.orange{background:#ef9b24}.dot.red{background:#e24e54}.conceptCMain{min-width:0}.conceptCHeader{display:flex;align-items:center;justify-content:space-between;background:#fff;border:1px solid #dfe8f1;border-radius:15px 15px 0 0;padding:12px 15px}.conceptCHeader>div:first-child{display:flex;align-items:center;gap:7px}.conceptCHeader h2{margin:0;font-size:21px;color:#17375f}.conceptCHeader small{font-size:9px;color:#788ba2}.conceptCHeaderIcon{font-size:24px}.conceptCViewTools{display:flex;gap:5px}.conceptCViewTools button{border:1px solid #dce5ee;background:#fff;border-radius:9px;padding:7px 9px;font-size:9px}.conceptCViewTools .active{background:#176df3;color:#fff}.conceptCCabinet{border:1px solid #cda16f;border-top:0;padding:14px;border-radius:0 0 16px 16px;overflow:hidden}.conceptCCabinet.wood{background:linear-gradient(90deg,#bb7c42 0 1.3%,transparent 1.3% 98.7%,#bb7c42 98.7%),linear-gradient(180deg,#edc897,#d79d60)}.conceptCCabinet.cold{border-color:#9fc3d8;background:linear-gradient(90deg,#9fc7dd 0 1.3%,transparent 1.3% 98.7%,#9fc7dd 98.7%),linear-gradient(180deg,#f4fbff,#c9e4f2)}.conceptCShelf{position:relative;padding:29px 7px 11px;border-bottom:10px solid rgba(120,68,28,.30);box-shadow:0 6px 5px rgba(94,57,28,.10)}.conceptCCabinet.cold .conceptCShelf{border-bottom-color:rgba(77,126,153,.25)}.conceptCShelfLabel{position:absolute;top:3px;left:8px;background:rgba(255,255,255,.94);border-radius:999px;padding:5px 10px;font-size:9px;font-weight:900}.conceptCShelfProducts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.conceptCProduct{border:0;background:transparent;min-height:155px;display:flex;flex-direction:column;justify-content:flex-end;cursor:pointer}.conceptCProductPic{height:75px;display:grid;place-items:end center;font-size:45px}.conceptCProductPic img{max-height:73px;max-width:90%;object-fit:contain;filter:drop-shadow(0 6px 5px rgba(69,43,21,.15))}.conceptCProductInfo{background:rgba(255,255,255,.96);border-radius:10px;padding:7px;text-align:left;box-shadow:0 5px 12px rgba(72,45,23,.08)}.conceptCProductInfo strong,.conceptCProductInfo small{display:block}.conceptCProductInfo strong{font-size:10px;line-height:1.15}.conceptCProductInfo small{font-size:8px;margin-top:2px}.conceptCProductInfo em{display:inline-block;font-style:normal;font-size:8px;font-weight:850;border-radius:999px;padding:3px 6px;margin-top:4px}.conceptCProductInfo em.ok{background:#daf6e6;color:#16864d}.conceptCProductInfo em.low{background:#fff0d9;color:#be6d0c}.emptyShelf{padding:30px;text-align:center;color:#75889f;font-size:11px}

/* MOBILE - chaque concept reproduit sa maquette mobile */
@media(max-width:899px){
  .inventoryReferenceHeader{margin:0 0 10px}.inventoryReferenceHeader h1{font-size:21px}.inventoryReferenceHeader .btn{font-size:10px;padding:9px 11px}.viewChoiceBar{display:flex;overflow-x:auto;gap:7px;margin:0 -13px 13px;padding:1px 13px 8px;scrollbar-width:none}.viewChoice{min-width:145px;padding:8px 9px;border-radius:13px}.viewChoiceIcon{width:30px;height:30px;flex-basis:30px;font-size:16px}.viewChoice strong{font-size:10px}.viewChoice small{font-size:7px}
  /* A mobile = cartes environnements verticales */
  .conceptATop{display:none}.conceptAEnvGrid{display:flex;flex-direction:column;gap:7px}.conceptAEnvCard{min-height:64px;grid-template-columns:42px 1fr;grid-template-rows:auto auto;padding:8px 10px;border-radius:12px}.conceptAEnvCard.add{display:none}.conceptAEnvIcon{width:42px;height:42px;font-size:21px}.conceptAEnvText strong{font-size:12px}.conceptAEnvText>span{font-size:8px}.conceptAEnvMeta{display:flex;gap:5px;margin-top:3px;flex-wrap:wrap}.conceptAEnvMeta b{font-size:7px;padding:2px 4px;border-radius:999px;background:#f6f8fb}.conceptABody{display:block}.conceptASide{display:none}.conceptATableTitle{padding:10px}.conceptATableTitle strong{font-size:13px}.conceptATableTitle span{font-size:7px}.conceptATable .practicalHead{display:none}.conceptATable .practicalRow{display:grid!important;grid-template-columns:44px 1fr auto!important;grid-template-rows:auto auto!important;min-width:0!important;margin:0;border-radius:0!important;border-width:0 0 1px!important;box-shadow:none!important;padding:9px 10px!important}.conceptATable .practicalProduct{grid-column:1/3}.conceptATable .envTag{grid-column:2;grid-row:2;margin-left:50px}.conceptATable .statusChip{grid-column:3;grid-row:2}.conceptATable .qty{grid-column:3;grid-row:1}
  /* B mobile = kpis 2x2, envs horizontaux, produits cartes horizontales */
  .conceptBHello{margin-top:2px}.conceptBHello h2{font-size:20px}.conceptBHello p{font-size:9px}.conceptBSearch{display:none}.conceptBKpis{grid-template-columns:1fr 1fr;gap:7px}.conceptBKpi{min-height:66px;padding:9px;gap:8px;border-radius:13px}.conceptBKpi>span{width:30px;height:30px;font-size:15px}.conceptBKpi small{font-size:7px}.conceptBKpi strong{font-size:20px}.conceptBSectionHead h3{font-size:14px}.conceptBSectionHead .textAction{font-size:8px}.conceptBEnvRow{display:flex;overflow-x:auto;margin:0 -13px;padding:0 13px 7px;gap:7px;scrollbar-width:none}.conceptBEnv{min-width:82px;width:82px;display:flex;flex-direction:column;align-items:center;text-align:center;padding:7px 5px}.conceptBEnvPic{width:43px;height:43px;font-size:22px}.conceptBEnv strong{font-size:9px}.conceptBEnv small{font-size:7px}.conceptBChips{display:none}.conceptBGrid{display:flex;flex-direction:column;gap:7px}.conceptBGrid .exactPremiumCard{display:grid;grid-template-columns:78px 1fr;min-height:100px}.conceptBGrid .exactPremiumImage{height:100%;min-height:100px}.conceptBGrid .premiumBody{padding:9px}.conceptBGrid .premiumTitle{font-size:11px;padding-right:65px}.conceptBGrid .semiGauge{right:6px;bottom:17px;transform:scale(.65)}.conceptBBottom{grid-template-columns:1fr;gap:7px}.conceptBAction{padding:11px}.conceptBAction strong{font-size:11px}.conceptBAction small{font-size:8px}
  /* C mobile = choix environnement puis vrai frigo/placard vertical */
  .conceptCTop{display:none}.conceptCEnvTabs{margin:0 -13px;padding:0 13px 9px}.conceptCEnvTab{min-width:76px;display:flex;flex-direction:column;align-items:center;text-align:center;padding:7px 5px}.conceptCEnvTab>span{width:34px;height:34px;font-size:18px}.conceptCEnvTab strong{font-size:8px}.conceptCEnvTab small{display:none}.conceptCBody{display:block}.conceptCFilters{display:none}.conceptCHeader{border-radius:14px 14px 0 0;padding:10px 11px}.conceptCHeader h2{font-size:18px}.conceptCHeader small{font-size:8px}.conceptCViewTools{display:none}.conceptCCabinet{padding:8px;border-radius:0 0 15px 15px}.conceptCShelf{padding:25px 4px 8px;border-bottom-width:8px}.conceptCShelfLabel{font-size:8px;padding:4px 8px}.conceptCShelfProducts{grid-template-columns:1fr;gap:6px}.conceptCProduct{min-height:82px;display:grid;grid-template-columns:85px 1fr;align-items:center;background:rgba(255,255,255,.08);border-radius:10px}.conceptCProductPic{height:78px;align-items:center;font-size:38px}.conceptCProductPic img{max-height:70px}.conceptCProductInfo{padding:7px 8px}.conceptCProductInfo strong{font-size:10px}.conceptCProductInfo small,.conceptCProductInfo em{font-size:7px}
}

/* V1.8 - édition rapide de l'environnement produit */
.environmentStat{position:relative;padding-bottom:42px!important}.miniEditBtn{position:absolute;left:12px;right:12px;bottom:10px;border:0;border-radius:10px;padding:7px 10px;background:#eef5ff;color:#1265d8;font-weight:800;cursor:pointer}.miniEditBtn:hover{background:#dfeeff}.environmentStat strong{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:760px){.environmentStat{padding-bottom:38px!important}.miniEditBtn{padding:6px 8px;font-size:12px}}

/* V1.9 — DLC/DDM + affichage images */
.inventoryHeaderActions{display:flex;gap:8px;align-items:center}.noProductImage .premiumBody{padding-top:16px}.premiumProductCard.noProductImage{min-height:210px}.premiumProductCard.noProductImage .semiGauge{margin-top:12px}.practicalProduct.noProductImage{padding-left:4px}.conceptCProduct:has(.conceptCProductInfo):not(:has(.conceptCProductPic)){min-height:92px}.conceptCProduct:not(:has(.conceptCProductPic)){display:block;padding:8px}.conceptCProduct:not(:has(.conceptCProductPic)) .conceptCProductInfo{height:100%;display:flex;flex-direction:column;justify-content:center}.shelfItem:not(:has(.shelfProductImage)){min-height:84px}.noImageRow{gap:8px}.expiredDlcLot{background:#fff5f5!important;border-color:#ffd6d6!important}.dangerNotice{background:#fff0f0!important;color:#a63a40!important;display:flex;align-items:center;gap:10px;justify-content:space-between;flex-wrap:wrap;margin-top:14px}.dateTypeTiny{display:block;color:var(--muted);font-size:10px;margin-top:2px}.expiryTypeSummary{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 12px}.typePill{border-radius:999px;padding:7px 10px;font-size:11px;font-weight:800}.typePill.dlc{background:#fff0f0;color:#b63b42}.typePill.ddm{background:#eef5ff;color:#2668b8}.typePill.unknown{background:#f1f3f6;color:#66758a}@media(max-width:700px){.inventoryHeaderActions{flex-direction:column;align-items:stretch}.inventoryHeaderActions .btn{width:100%}.premiumProductCard.noProductImage{min-height:165px}.conceptCProduct:not(:has(.conceptCProductPic)){min-height:70px}}

/* V1.9.4 — actions rapides de stock dans les vues récap */
.quickStockActions{display:flex;align-items:center;justify-content:center;gap:5px;margin-top:9px;position:relative;z-index:3}
.quickStockBtn,.quickDeleteBtn{appearance:none;border:1px solid #dbe5f0;background:#fff;color:#1f4e82;width:30px;height:30px;border-radius:9px;display:grid;place-items:center;font-size:18px;font-weight:850;line-height:1;cursor:pointer;box-shadow:0 2px 7px rgba(25,66,117,.06);transition:.15s transform,.15s background,.15s border-color}
.quickStockBtn:hover,.quickDeleteBtn:hover{transform:translateY(-1px);border-color:#a8c6e8;background:#f6faff}
.quickStockBtn:disabled{opacity:.38;cursor:not-allowed;transform:none}
.quickStockBtn.plus{background:#176df3;color:#fff;border-color:#176df3}
.quickStockBtn.plus:hover{background:#0d5edb}
.quickDeleteBtn{font-size:14px;color:#c74752;background:#fff7f7;border-color:#f1d6d9}
.quickDeleteBtn:hover{background:#ffeded;border-color:#eebfc4}
.quickStockValue{min-width:31px;text-align:center;font-size:12px;font-weight:900;color:#17375f;font-variant-numeric:tabular-nums}
.practicalRow{grid-template-columns:minmax(220px,2fr) 90px 150px 145px minmax(150px,auto)!important}
.practicalHead{grid-template-columns:minmax(220px,2fr) 90px 150px 145px minmax(150px,auto)!important}
.practicalHead::after{content:'Actions'}
.practicalRow>.quickStockActions{margin-top:0;justify-content:flex-end}
.premiumProductCard .quickStockActions{margin-top:10px;border-top:1px solid #edf1f6;padding-top:9px}
.conceptCProduct .quickStockActions{justify-content:flex-start;margin-top:6px;gap:4px}
.conceptCProduct .quickStockBtn,.conceptCProduct .quickDeleteBtn{width:25px;height:25px;border-radius:7px;font-size:14px}
.conceptCProduct .quickDeleteBtn{font-size:11px}
.conceptCProduct .quickStockValue{min-width:24px;font-size:9px}
.homeProductGrid .quickStockActions{justify-content:flex-start}
.productRow>.quickStockActions{margin:0 0 0 auto}

@media(max-width:760px){
  .quickStockBtn,.quickDeleteBtn{width:34px;height:34px;border-radius:10px}.quickStockValue{font-size:13px;min-width:30px}
  .conceptATable .practicalRow{grid-template-columns:44px 1fr auto!important;grid-template-rows:auto auto auto!important}
  .conceptATable .practicalRow>.quickStockActions{grid-column:2/4;grid-row:3;justify-content:flex-end;margin-top:6px}
  .conceptATable .practicalRow>.practicalQty{display:none}
  .practicalRow>.quickStockActions{grid-column:2/4;grid-row:3;justify-content:flex-end;margin-top:6px}
  .practicalRow>.practicalQty{display:none}
  .homeProductGrid .exactPremiumCard{grid-template-columns:72px 1fr}
  .homeProductGrid .quickStockActions{justify-content:flex-start;padding-top:6px;margin-top:6px}
  .homeProductGrid .semiGauge{display:none}
  .premiumProductCard .quickStockActions{justify-content:center}
  .conceptCProduct{min-height:115px!important}
  .conceptCProduct .quickStockActions{justify-content:flex-start}
}


/* V1.9.5 — Iconographie vectorielle DomiStock */
.uiIcon,.envSvgIcon,.quickActionIcon,.btnInlineIcon,.sectionInlineIcon,.settingsInlineIcon,.switcherIcon,.aboutSvgIcon{display:inline-block;width:1.35em;height:1.35em;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;vertical-align:-.2em;flex:0 0 auto}
.sideLogo .uiIcon,.brandMark .uiIcon{width:26px;height:26px;stroke-width:1.9}
.sideIcon{display:grid;place-items:center;width:26px;height:26px}.sideIcon .uiIcon{width:22px;height:22px}
.bottomNav .uiIcon{width:24px;height:24px;margin-bottom:3px;stroke-width:1.9}
.bottomNav .scanBtn .uiIcon{width:31px;height:31px;stroke-width:1.8}
.mobileBell .uiIcon{width:22px;height:22px}
.envSvgIcon{width:34px;height:34px;color:#1469e8;stroke-width:1.65}
.mockEnvVisual .envSvgIcon,.conceptAEnvIcon .envSvgIcon,.shelfIcon .envSvgIcon{width:38px;height:38px}
.quickActionIcon{width:18px;height:18px;stroke-width:2}
.quickDeleteBtn .quickActionIcon{width:17px;height:17px}
.btnInlineIcon,.sectionInlineIcon,.settingsInlineIcon,.switcherIcon{width:18px;height:18px;margin-right:6px}
.viewChoiceIcon .uiIcon{width:25px;height:25px;color:#1669f2}
.environmentIconBox{display:grid;place-items:center}
.aboutSvgIcon{width:56px;height:56px;color:#1669f2;stroke-width:1.6}
.navItem,.sideNavItem,.settingsLink,.viewSwitcher button,.btn{gap:8px}
.quickStockBtn,.quickDeleteBtn{display:inline-grid;place-items:center}
@media(max-width:760px){.bottomNav .uiIcon{width:23px;height:23px}.bottomNav .scanBtn .uiIcon{width:30px;height:30px}.envSvgIcon{width:30px;height:30px}}

/* V1.9.6 — stock minimum comme référence + option ne pas renouveler */
.checkLine{display:flex;align-items:center;gap:10px;min-height:44px;padding:10px 12px;border:1px solid #dbe7f3;border-radius:14px;background:#f8fbff;color:#173453;font-weight:600}
.checkLine input{width:20px;height:20px;accent-color:#1674ea;flex:0 0 auto}
.renewField small{display:block;margin-top:7px;line-height:1.35}
.semiGaugeText{display:flex!important;flex-direction:column;align-items:center;justify-content:center;line-height:1.05}
.semiGaugeText small{font-size:.68rem;color:#75879a;font-weight:700;margin-top:3px}

/* V1.9.7 — Paramètres premium + accès Admin */
.settingsCard{background:#fff;border:1px solid #dfe8f2;border-radius:22px;box-shadow:0 12px 32px rgba(31,74,125,.08);overflow:hidden;margin-bottom:24px}
.settingsInfoRow{display:flex;align-items:center;gap:14px;padding:16px 18px;border-bottom:1px solid #e8eef5;min-height:76px}
.settingsInfoRow:last-child{border-bottom:0}
.settingsIconBox{width:46px;height:46px;border-radius:15px;background:linear-gradient(180deg,#f4f9ff,#eaf3ff);display:grid;place-items:center;color:#126ee8;flex:0 0 auto;border:1px solid #e1ecfa}
.settingsHeroIcon{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.settingsMenu{padding:0}
.settingsLinkPro{width:100%;display:flex;align-items:center;gap:14px;padding:15px 18px;border:0;border-bottom:1px solid #e8eef5;background:#fff;color:#173453;text-align:left;text-decoration:none;cursor:pointer;transition:.16s ease}
.settingsLinkPro:last-child{border-bottom:0}
.settingsLinkPro:hover{background:#f8fbff}
.settingsText{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}
.settingsText strong{font-size:15px;color:#102d4f}
.settingsText small{font-size:12.5px;color:#7890a9;line-height:1.3}
.chevron{font-size:24px;color:#8aa0b5;line-height:1}
.settingPill{font-size:11px;font-weight:800;color:#126ee8;background:#eaf3ff;border:1px solid #d6e7ff;padding:6px 9px;border-radius:999px}
.fileButton{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border-radius:12px;background:#eef5ff;color:#126ee8;font-weight:700;cursor:pointer;white-space:nowrap}
.adminAccess{background:linear-gradient(90deg,#f8fbff,#f4f8ff)}
.adminIconBox{background:linear-gradient(180deg,#eaf3ff,#dfeeff);color:#0d63db}
@media(max-width:760px){.settingsCard{border-radius:18px;margin-bottom:18px}.settingsInfoRow,.settingsLinkPro{padding:14px}.settingsIconBox{width:42px;height:42px;border-radius:13px}.settingsHeroIcon{width:22px;height:22px}.settingsText strong{font-size:14px}.settingsText small{font-size:11.5px}.fileButton{padding:9px 11px;font-size:12px}}

/* V1.9.8 — AdSense/RGPD ready */
.globalPrivacyChoices{position:fixed;right:16px;bottom:90px;z-index:26;border:1px solid var(--line);background:rgba(255,255,255,.96);color:var(--navy);border-radius:999px;padding:9px 13px;font-size:12px;font-weight:800;box-shadow:0 8px 22px rgba(32,67,119,.12);backdrop-filter:blur(10px)}
.globalPrivacyChoices:hover{color:var(--blue);border-color:#c8daf8}
@media(min-width:1100px){.globalPrivacyChoices{bottom:18px;right:22px}}
