.home-hero{
  position:relative;
  min-height:680px;
  border:1px solid var(--line);
  border-radius:36px;
  overflow:hidden;
  background:#07111f;
  box-shadow:var(--shadow);
  isolation:isolate;
}
.slide-bg{
  position:absolute;
  inset:0;
  background-size:cover;
  background-position:18% center;
  background-repeat:no-repeat;
  transform:scaleX(1);
}
body[data-lang="fr"] .slide-bg{transform:scaleX(-1);background-position:18% center}
.home-hero::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(2,6,12,.03),rgba(4,10,18,.16) 28%,rgba(3,7,14,.66) 60%,rgba(3,7,14,.90) 100%),
    linear-gradient(180deg,rgba(0,0,0,.02),rgba(0,0,0,.52));
  z-index:1;
}
body[data-lang="fr"] .home-hero::after{
  background:
    linear-gradient(90deg,rgba(3,7,14,.90) 0%,rgba(3,7,14,.66) 40%,rgba(4,10,18,.16) 72%,rgba(2,6,12,.03) 100%),
    linear-gradient(180deg,rgba(0,0,0,.02),rgba(0,0,0,.52));
}
.hero-content{
  position:relative;
  z-index:2;
  min-height:680px;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  padding:52px;
  text-align:right;
}
.hero-copy{max-width:680px;margin-right:0;margin-left:auto;text-align:right}
body[data-lang="fr"] .hero-content{justify-content:flex-start;text-align:left}
body[data-lang="fr"] .hero-copy{margin-left:0;margin-right:auto;text-align:left}
.hero-copy .eyebrow{color:#43b7ff;font-weight:900;font-size:21px;margin-bottom:14px}
.hero-copy h1{margin:0;font-size:clamp(45px,5.4vw,78px);line-height:1.08;letter-spacing:-2px}
.hero-copy p{margin:22px 0 30px;color:#dce8f8;font-size:20px;line-height:1.9}
.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px}
.hero-pills{margin-top:18px;display:flex;gap:10px;flex-wrap:wrap}
.scanner-grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:16px}
.scanner-card{
  position:relative;
  min-height:228px;
  border:1px solid var(--line);
  background:var(--panel);
  border-radius:22px;
  overflow:hidden;
  text-align:inherit;
  padding:13px;
  display:flex;
  align-items:flex-end;
  color:var(--text);
  box-shadow:0 18px 48px rgba(0,0,0,.26);
  transition:.15s transform,.15s border-color,.15s box-shadow;
}
.scanner-card:hover{transform:translateY(-3px);border-color:var(--line2);box-shadow:0 26px 70px rgba(0,0,0,.38)}
.scanner-card.disabled{opacity:.74}
.scanner-card .bg{position:absolute;inset:0;background-size:cover;background-position:center;filter:saturate(1.04) contrast(1.04);transform:scale(1.03)}
.scanner-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(1,5,11,.02),rgba(2,7,15,.26) 35%,rgba(2,7,15,.96) 100%)}
.scanner-card .content{position:relative;z-index:2;width:100%}
.scanner-title{font-weight:900;font-size:17px;margin-bottom:8px;text-shadow:0 2px 18px rgba(0,0,0,.6)}
.scanner-desc{color:#d1e2f8;font-size:12px;line-height:1.55;min-height:36px}
.scanner-row{margin-top:14px;display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.status{display:inline-flex;align-items:center;gap:7px;border-radius:999px;padding:8px 10px;font-size:12px;font-weight:800;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.055);color:#d9e7fb}
.status.open{color:#d4ffef;background:rgba(39,211,143,.1);border-color:rgba(39,211,143,.24)}
.status.locked{color:#ffdc9f;background:rgba(255,189,89,.1);border-color:rgba(255,189,89,.24)}
@media(max-width:1280px){.scanner-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:900px){.home-hero,.hero-content{min-height:560px}.hero-content{padding:32px}.scanner-grid{grid-template-columns:repeat(2,minmax(0,1fr))}body[data-lang="fr"] .slide-bg{background-position:center}}
@media(max-width:620px){.home-hero,.hero-content{min-height:520px}.hero-content{padding:24px}.hero-copy p{font-size:16px}.hero-actions{flex-direction:column}.scanner-grid{grid-template-columns:1fr}}


.workshop-dashboard{
  margin:26px 0 8px;
  border:1px solid rgba(112,171,255,.18);
  background:rgba(255,255,255,.035);
  border-radius:28px;
  padding:20px;
  box-shadow:0 18px 48px rgba(0,0,0,.20);
}
.dashboard-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:16px;
  margin-bottom:16px;
}
.dashboard-head h2{
  margin:0 0 8px;
  font-size:28px;
}
.dashboard-head p{
  margin:0;
  color:var(--muted);
  line-height:1.7;
  font-size:14px;
}
.dashboard-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}
.dashboard-card{
  border:1px solid rgba(255,255,255,.08);
  background:rgba(0,0,0,.16);
  color:var(--text);
  border-radius:18px;
  padding:15px;
  text-align:inherit;
  min-height:128px;
  transition:.15s transform,.15s border-color;
}
.dashboard-card:hover{
  transform:translateY(-2px);
  border-color:rgba(67,169,255,.42);
}
.dashboard-card span{
  display:block;
  font-size:26px;
  margin-bottom:10px;
}
.dashboard-card strong{
  display:block;
  font-size:15px;
  margin-bottom:6px;
}
.dashboard-card small{
  display:block;
  color:#dce8f8;
  line-height:1.5;
}
.dashboard-card em{
  display:block;
  margin-top:7px;
  color:var(--muted);
  font-style:normal;
  font-size:12px;
}
.last-scan-strip{
  margin-top:14px;
  border:1px solid rgba(255,255,255,.07);
  background:rgba(0,0,0,.14);
  border-radius:16px;
  padding:12px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
}
.last-scan-strip strong{
  font-size:14px;
}
.last-scan-strip span{
  color:#dce8f8;
  font-size:13px;
}
@media(max-width:1050px){
  .dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
  .dashboard-head,.last-scan-strip{flex-direction:column;align-items:stretch}
  .dashboard-grid{grid-template-columns:1fr}
}


.usage-page{
  margin-top:24px;
  display:grid;
  gap:18px;
}
.usage-card{
  border:1px solid rgba(112,171,255,.18);
  background:rgba(255,255,255,.035);
  border-radius:24px;
  padding:20px;
  box-shadow:0 16px 44px rgba(0,0,0,.16);
}
.usage-card h2,.usage-card h3{
  margin:0 0 10px;
}
.usage-card p,.usage-card li{
  color:#dce8f8;
  line-height:1.8;
  font-size:14px;
}
.usage-main{
  background:linear-gradient(180deg,rgba(31,162,255,.07),rgba(255,255,255,.03));
}
.usage-steps{
  display:grid;
  gap:12px;
  margin-top:16px;
}
.usage-step{
  display:grid;
  grid-template-columns:54px 46px 1fr;
  gap:12px;
  align-items:flex-start;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(0,0,0,.14);
  border-radius:18px;
  padding:14px;
}
.usage-step-num{
  border:1px solid rgba(67,169,255,.30);
  background:rgba(31,162,255,.10);
  border-radius:14px;
  padding:10px;
  text-align:center;
  font-weight:900;
  color:#8ed6ff;
}
.usage-step-icon{
  font-size:28px;
  line-height:1.2;
}
.usage-step strong{
  display:block;
  margin-bottom:6px;
  font-size:16px;
}
.usage-step p{
  margin:0;
  color:var(--muted);
}
.usage-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
}
.usage-card ul{
  margin:0;
  padding-inline-start:20px;
}
.usage-example{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
.usage-example span{
  border:1px solid rgba(255,255,255,.09);
  background:rgba(0,0,0,.14);
  border-radius:999px;
  padding:10px 12px;
  color:#dce8f8;
  font-size:13px;
}
@media(max-width:850px){
  .usage-grid{grid-template-columns:1fr}
  .usage-step{grid-template-columns:1fr}
}


.usage-options{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin:16px 0;
}
.usage-option{
  border:1px solid rgba(255,255,255,.08);
  background:rgba(0,0,0,.14);
  border-radius:18px;
  padding:14px;
  display:grid;
  grid-template-columns:40px 1fr;
  gap:10px;
}
.usage-option > span{
  font-size:28px;
}
.usage-option strong{
  display:block;
  margin-bottom:6px;
}
.usage-option p{
  margin:0;
  color:var(--muted);
  line-height:1.7;
  font-size:13px;
}
.usage-note{
  border:1px solid rgba(255,189,89,.22);
  background:rgba(255,189,89,.08);
  color:#ffedcf;
  border-radius:14px;
  padding:12px;
  line-height:1.7;
  font-size:13px;
  margin-bottom:16px;
}
@media(max-width:950px){
  .usage-options{grid-template-columns:1fr}
}


/* PWA v42 — mobile-first home refinements */
@media(max-width:900px){
  .home-hero{border-radius:26px;min-height:610px}
  .hero-content{min-height:610px;padding:34px 24px;align-items:flex-end}
  .hero-copy{max-width:100%}
  .hero-copy h1{font-size:clamp(36px,9vw,58px);letter-spacing:-1px}
  .hero-copy p{font-size:16px;line-height:1.75;margin:16px 0 22px}
  .slide-bg{background-position:30% center}
}
@media(max-width:620px){
  .home-hero{min-height:640px}
  .hero-content{min-height:640px;padding:24px 18px 28px}
  .hero-copy .eyebrow{font-size:16px}
  .hero-copy h1{font-size:38px}
  .hero-actions{display:grid;grid-template-columns:1fr;gap:10px}
  .hero-actions .btn{min-height:48px}
  .hero-pills{display:grid;grid-template-columns:1fr 1fr;gap:7px}
  .hero-pills .pill{justify-content:center;text-align:center;padding:8px 9px;font-size:11px}
}
