.bodega-pro{
  --b-red:#c90000;
  --b-red-dark:#910000;
  --b-green:#0f9f6e;
  --b-blue:#1f6feb;
  --b-amber:#d97706;
  --b-ink:#111318;
  --b-muted:#667085;
  --b-line:#e8e3df;
  --b-soft:#fff6f0;
  color:var(--b-ink);
  display:grid;
  gap:16px;
}
.bodega-pro *{ box-sizing:border-box; }
.bodega-pro h1,
.bodega-pro h2,
.bodega-pro p{ margin:0; }
.bodega-pro .muted{ color:var(--b-muted); }
.bodega-pro .small{ font-size:12px; line-height:1.35; }

.bodHero{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(360px,620px);
  gap:18px;
  align-items:center;
  padding:22px;
  border:1px solid rgba(201,0,0,.14);
  border-radius:8px;
  color:#fff;
  background:
    linear-gradient(135deg, rgba(18,24,38,.97), rgba(145,0,0,.93) 58%, rgba(201,0,0,.90)),
    radial-gradient(circle at 90% 16%, rgba(255,255,255,.22), transparent 28%);
  box-shadow:0 22px 55px rgba(145,0,0,.18);
}
.bodHero__copy{ display:grid; gap:9px; }
.bodHero__eyebrow,
.bodPanel__kicker{
  width:max-content;
  max-width:100%;
  font-size:12px;
  font-weight:950;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.bodHero__eyebrow{
  padding:7px 10px;
  border:1px solid rgba(255,255,255,.24);
  border-radius:999px;
  background:rgba(255,255,255,.12);
}
.bodHero h1{
  font-size:clamp(34px,4vw,56px);
  line-height:1;
}
.bodHero p{
  max-width:720px;
  color:rgba(255,255,255,.88);
  line-height:1.5;
  font-size:16px;
}
.bodHero__actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:6px;
}
.bodHero__stats{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.bodStat{
  min-height:104px;
  padding:14px;
  border:1px solid rgba(255,255,255,.20);
  border-radius:8px;
  background:rgba(255,255,255,.12);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16);
}
.bodStat span{
  display:block;
  color:rgba(255,255,255,.78);
  font-size:12px;
  font-weight:900;
  text-transform:uppercase;
}
.bodStat strong{
  display:block;
  margin-top:10px;
  font-size:28px;
  line-height:1;
}

.bodLayout{
  display:grid;
  grid-template-columns:minmax(360px,.88fr) minmax(0,1.12fr);
  gap:16px;
  align-items:start;
}
.bodPanel{
  border:1px solid var(--b-line);
  border-radius:8px;
  padding:16px;
  background:#fff;
  box-shadow:0 14px 34px rgba(15,23,42,.07);
}
.bodPanel__head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:12px;
  margin-bottom:14px;
}
.bodPanel__head--stock{ align-items:flex-start; }
.bodPanel__kicker{
  color:var(--b-red);
}
.bodPanel h2{
  margin-top:3px;
  font-size:24px;
  line-height:1.05;
}
.bodMode{
  border:1px solid #ffd0d0;
  border-radius:999px;
  padding:8px 11px;
  background:#fff5f5;
  color:var(--b-red-dark);
  font-size:12px;
  font-weight:950;
}

.bodega-pro .field label{
  display:block;
  margin-bottom:6px;
  color:#20242c;
  font-size:12px;
  font-weight:950;
  text-transform:uppercase;
}
.bodega-pro .field input,
.bodega-pro .field textarea{
  width:100%;
  min-height:46px;
  border:1px solid var(--b-line);
  border-radius:8px;
  padding:11px 12px;
  outline:none;
  background:#fff;
  color:var(--b-ink);
  font:inherit;
  font-weight:850;
}
.bodega-pro .field input:focus,
.bodega-pro .field textarea:focus{
  border-color:rgba(201,0,0,.42);
  box-shadow:0 0 0 4px rgba(201,0,0,.10);
}
.bodega-pro .field textarea{ resize:vertical; min-height:86px; }

.bodImageRow{
  display:grid;
  grid-template-columns:minmax(0,1fr) 92px;
  gap:12px;
  align-items:start;
}
.thumb{
  width:88px;
  height:88px;
  border-radius:8px;
  border:1px solid var(--b-line);
  background:#f5f7fb;
  display:grid;
  place-items:center;
  color:#98a2b3;
  overflow:hidden;
  font-size:11px;
  font-weight:950;
}
.thumb img{ width:100%; height:100%; object-fit:cover; display:block; }
.bodFormGrid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:12px;
}
.btn{
  min-height:42px;
  border:none;
  background:var(--b-red);
  color:#fff;
  padding:10px 13px;
  border-radius:8px;
  cursor:pointer;
  font-weight:950;
}
.btn--mini{ min-height:36px; padding:8px 10px; font-size:12px; }
.btn--ghost{
  background:#fff;
  border:1px solid rgba(201,0,0,.35);
  color:var(--b-red);
}
.btn:hover{ opacity:.97; }

.pick{
  margin-top:8px;
  border:1px solid var(--b-line);
  border-radius:8px;
  overflow:hidden;
  background:#fff;
  box-shadow:0 10px 24px rgba(17,17,17,.06);
}
.pick button{
  width:100%;
  text-align:left;
  padding:12px;
  border:none;
  background:#fff;
  cursor:pointer;
  border-bottom:1px solid #f1f1f1;
}
.pick button:hover{ background:#fff8f8; }
.pick .sub{ display:flex; gap:8px; flex-wrap:wrap; font-size:12px; color:#666; margin-top:4px; }

.bodSearch{ min-width:260px; }
.movList{
  display:flex;
  flex-direction:column;
  gap:12px;
  max-height:680px;
  overflow:auto;
  padding-right:3px;
}
.mcard{
  border:1px solid var(--b-line);
  border-radius:8px;
  padding:12px;
  display:flex;
  gap:12px;
  align-items:flex-start;
  background:linear-gradient(180deg,#fff 0%,#fcfcfc 100%);
  box-shadow:0 8px 18px rgba(17,17,17,.05);
}
.mimg{
  width:58px;
  height:58px;
  border-radius:8px;
  background:#f4f4f5;
  flex:0 0 auto;
  overflow:hidden;
  display:grid;
  place-items:center;
  color:#999;
  font-size:11px;
  border:1px solid var(--b-line);
}
.mimg img{ width:100%; height:100%; object-fit:cover; display:block; }
.mmeta{ flex:1; min-width:0; }
.mmeta .title{ font-weight:950; font-size:16px; }
.mmeta .sub{ font-size:12px; color:#666; display:flex; gap:8px; flex-wrap:wrap; margin-top:6px; }
.mmeta .sub span{ background:#fafafa; border:1px solid #ececec; padding:4px 8px; border-radius:999px; font-weight:800; }
.mactions{ display:flex; flex-direction:column; gap:8px; align-items:flex-end; }
.mactions .btn{ width:118px; }

.stockTools{ display:flex; gap:12px; align-items:flex-end; flex-wrap:wrap; }
.bodSearch--small{ min-width:280px; }
.tableWrap{
  overflow:auto;
  border:1px solid var(--b-line);
  border-radius:8px;
  background:#fff;
}
.stockTable{ width:100%; border-collapse:collapse; }
.stockTable th,
.stockTable td{ padding:12px 10px; border-bottom:1px solid var(--b-line); text-align:left; font-size:14px; }
.stockTable th{ background:#fff7f4; position:sticky; top:0; z-index:1; color:#4a1b1b; font-size:12px; text-transform:uppercase; font-weight:950; }
.stockTable tbody tr:hover{ background:#fff8f8; }
.stockName{ font-weight:950; }
.stockTag{ display:inline-block; background:#fafafa; border:1px solid #ececec; padding:4px 8px; border-radius:999px; font-size:12px; font-weight:850; }
.stockQty{ font-weight:950; color:var(--b-red-dark); }

@media(max-width:1100px){
  .bodHero,
  .bodLayout{ grid-template-columns:1fr; }
}
@media(max-width:720px){
  .bodHero{ padding:18px; }
  .bodHero__stats,
  .bodFormGrid,
  .bodImageRow{ grid-template-columns:1fr; }
  .bodPanel__head,
  .bodPanel__head--stock{ align-items:stretch; flex-direction:column; }
  .bodSearch,
  .bodSearch--small{ min-width:0; width:100%; }
  .actions .btn,
  .bodHero__actions .btn{ flex:1; }
  .mcard{ flex-direction:column; }
  .mactions{ flex-direction:row; flex-wrap:wrap; align-items:stretch; }
  .mactions .btn{ width:auto; flex:1; }
}
