
:root{
  --pink:#ef3f77;
  --pink2:#f85c8c;
  --soft:#fff7fa;
  --border:#f2d9e1;
  --text:#2d2428;
  --muted:#7f6e75;
  --white:#fff;
  --shadow:0 8px 25px rgba(231,71,116,.10);
}
*{box-sizing:border-box}
body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:#fff9fb;color:var(--text)}
.yb-app{display:flex;min-height:100vh}
.yb-sidebar{width:250px;position:fixed;left:0;top:0;bottom:0;padding:10px 14px;background:#fff;border-right:1px solid var(--border);display:flex;flex-direction:column;z-index:10}
.yb-logo-box{height:180px;border:1px solid var(--border);border-radius:22px;background:#fff;display:flex;align-items:center;justify-content:center;padding:10px}
.yb-logo-img{max-width:100%;max-height:155px;object-fit:contain}
.yb-nav{display:flex;flex-direction:column;gap:7px;margin-top:10px}
.yb-nav a{height:48px;padding:0 15px;border-radius:13px;display:flex;align-items:center;gap:12px;font-weight:600;color:#45363d}
.yb-nav a span{width:24px;text-align:center;color:var(--pink)}
.yb-nav a b{margin-left:auto;background:var(--pink);color:white;border-radius:999px;min-width:26px;height:26px;display:grid;place-items:center;font-size:12px}
.yb-nav a.active,.yb-nav a:hover{background:linear-gradient(180deg,var(--pink2),var(--pink));color:#fff}
.yb-nav a.active span,.yb-nav a:hover span{color:white}
.yb-promo-card{margin-top:auto;height:250px;border:1px solid var(--border);border-radius:18px;background:linear-gradient(180deg,#fff1f5,#ffe8ef);position:relative;overflow:hidden;padding:16px}
.yb-promo-copy strong{font-family:Georgia,serif;color:var(--pink);font-size:26px;line-height:1}
.yb-promo-copy small{display:block;margin-top:10px;color:#826c75;max-width:120px}
.yb-promo-card img{position:absolute;right:-3px;bottom:-4px;width:150px;height:190px;object-fit:contain}
.yb-main{margin-left:250px;flex:1;min-width:0}
.yb-topbar{height:95px;background:#fff;border-bottom:1px solid var(--border);display:flex;align-items:center;padding:0 28px;gap:24px;position:sticky;top:0;z-index:9}
.yb-brand{display:flex;align-items:center;gap:18px}
.yb-brand-name{font-family:Georgia,serif;font-size:38px;font-weight:700;color:var(--pink);white-space:nowrap}
.yb-brand-name span{color:#684a41}
.yb-love-badge{background:#fff6f8;border:1px solid var(--border);border-radius:999px;padding:10px 15px;color:var(--pink);font-weight:700;white-space:nowrap}
.yb-search{margin-left:auto;max-width:520px;flex:1;height:45px;border:1px solid #e8dfe3;border-radius:13px;display:flex;align-items:center;padding:0 16px;color:#95858d;background:#fff}
.yb-profile{display:flex;align-items:center;gap:10px}
.yb-bell{position:relative;font-size:22px}
.yb-bell b{position:absolute;right:-8px;top:-8px;background:var(--pink);color:white;width:18px;height:18px;border-radius:50%;display:grid;place-items:center;font-size:10px}
.yb-avatar{width:48px;height:48px;border-radius:50%;background:#ffe4ed;display:grid;place-items:center;font-size:24px}
.yb-profile strong,.yb-profile small{display:block}
.yb-profile small{color:var(--muted)}
.yb-content{padding:18px}
.yb-shell-card{border:1px solid var(--border);border-radius:25px;background:#fff;box-shadow:var(--shadow);overflow:hidden}
.yb-pos-grid{display:grid;grid-template-columns:minmax(0,1fr) 370px;gap:18px;padding:18px}
.yb-section-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}
.yb-section-head h1{margin:0;font-size:24px}
.yb-section-head p{margin:6px 0 0;color:var(--muted)}
.yb-view-switch{border:1px solid var(--border);border-radius:14px;padding:4px;background:#fff8fa}
.yb-view-switch button{height:40px;border:0;border-radius:10px;padding:0 18px;background:transparent;color:var(--pink);font-weight:700}
.yb-view-switch .active{background:linear-gradient(180deg,var(--pink2),var(--pink));color:white}
.yb-product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.yb-product-card{position:relative;border:1px solid var(--border);border-radius:18px;padding:12px;background:#fff;min-height:250px;display:flex;flex-direction:column;align-items:center;box-shadow:0 5px 16px rgba(240,94,135,.05)}
.yb-product-image{height:170px;width:100%;display:flex;align-items:center;justify-content:center}
.yb-product-image img{width:155px;height:155px;object-fit:contain;filter:drop-shadow(0 8px 15px rgba(150,50,80,.15))}
.yb-product-label{width:100%;background:linear-gradient(180deg,var(--pink2),var(--pink));color:white;text-align:center;border-radius:999px;padding:9px 8px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.yb-product-price{margin-top:7px;font-weight:800}
.yb-product-card>button{position:absolute;inset:0;opacity:0;cursor:pointer}
.yb-kpi-strip{margin-top:18px;display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--border);border-radius:18px;background:#fff;overflow:hidden}
.yb-kpi-strip article{min-height:150px;padding:18px;display:grid;grid-template-columns:50px 1fr;gap:12px;border-right:1px solid var(--border);position:relative}
.yb-kpi-strip article:last-child{border-right:0}
.yb-kpi-icon{width:50px;height:50px;border-radius:50%;background:#ffe8ef;color:var(--pink);display:grid;place-items:center;font-size:24px}
.yb-kpi-strip small,.yb-kpi-strip strong,.yb-kpi-strip em{display:block}
.yb-kpi-strip strong{font-size:22px;margin-top:6px}
.yb-kpi-strip em{font-style:normal;color:#27a85e;margin-top:5px;font-size:12px}
.yb-kpi-strip i{position:absolute;left:20px;right:20px;bottom:14px;height:36px;background:linear-gradient(170deg,transparent 46%,#ff5e91 47%,#ff5e91 50%,transparent 51%)}
.yb-cart{border:1px solid var(--border);border-radius:18px;background:#fff;padding:15px;display:flex;flex-direction:column;gap:12px}
.yb-cart-head{display:flex;justify-content:space-between;align-items:center}
.yb-cart-head h2{margin:0;font-size:18px}
.yb-cart-head button{border:1px solid var(--border);background:#fff8fa;color:var(--pink);border-radius:10px;padding:9px 12px}
.yb-cart-list{display:flex;flex-direction:column;gap:10px}
.yb-cart-item{display:grid;grid-template-columns:52px minmax(0,1fr) auto auto auto;gap:8px;align-items:center}
.yb-cart-item img{width:52px;height:52px;object-fit:contain}
.yb-cart-info strong{display:block}
.yb-cart-info small{color:var(--muted)}
.yb-qty{display:flex;align-items:center;border:1px solid var(--border);border-radius:10px;overflow:hidden}
.yb-qty button{border:0;background:white;color:var(--pink);width:28px;height:30px}
.yb-qty span{min-width:24px;text-align:center}
.yb-remove{border:0;background:transparent;color:var(--pink);font-size:24px}
.yb-love-note{border:1px dashed #f2c4d1;background:#fff8fa;color:var(--pink);border-radius:12px;padding:11px;text-align:center;font-weight:700}
.yb-totals{display:flex;flex-direction:column;gap:9px}
.yb-totals>div{display:flex;justify-content:space-between}
.yb-totals .total{font-size:18px;margin-top:4px}
.yb-totals .total b{font-size:24px;color:var(--pink)}
.yb-checkout-form{display:flex;flex-direction:column;gap:8px}
.yb-checkout-form input,.yb-checkout-form select{height:42px;border:1px solid var(--border);border-radius:10px;padding:0 12px}
.yb-checkout-form button{height:52px;border:0;border-radius:12px;background:linear-gradient(180deg,var(--pink2),var(--pink));color:#fff;font-size:17px;font-weight:800}
.yb-quick-actions{border-top:1px solid var(--border);padding-top:12px}
.yb-quick-actions h3{margin:0 0 10px;color:var(--pink)}
.yb-quick-actions>div{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.yb-quick-actions a{border:1px solid var(--border);border-radius:10px;background:#fff8fa;color:var(--pink);padding:11px;text-align:center;font-weight:700}
.yb-footer{border-top:1px solid var(--border);background:#fff8fa;display:flex;justify-content:center;gap:30px;flex-wrap:wrap;padding:13px;color:var(--pink);font-weight:600}
.yb-flashes{padding:0 18px}
.yb-flash{padding:12px;border-radius:10px;margin-top:10px}
.yb-flash.success{background:#ecfff3;color:#16834a}
.yb-flash.danger{background:#fff1f4;color:#b4385e}
@media(max-width:1400px){.yb-product-grid{grid-template-columns:repeat(3,1fr)}.yb-kpi-strip{grid-template-columns:repeat(2,1fr)}}
@media(max-width:1100px){.yb-pos-grid{grid-template-columns:1fr}.yb-cart{order:2}}
@media(max-width:900px){.yb-sidebar{display:none}.yb-main{margin-left:0}.yb-search{display:none}.yb-topbar{padding:0 14px}.yb-brand-name{font-size:28px}}
@media(max-width:650px){.yb-product-grid,.yb-kpi-strip{grid-template-columns:1fr}.yb-section-head{flex-direction:column;gap:12px}.yb-profile{display:none}}

/* V5 - imágenes reales */
.yb-product-image img{
  width:168px;
  height:168px;
  object-fit:contain;
  filter:drop-shadow(0 12px 20px rgba(130,40,65,.20));
}
.yb-cart-item img{
  width:58px;
  height:58px;
  object-fit:contain;
}
.yb-stgr-watermark{
  position:fixed;
  right:18px;
  bottom:16px;
  width:120px;
  opacity:.08;
  pointer-events:none;
  z-index:2;
}
.yb-stgr-watermark img{
  width:100%;
  height:auto;
}

.yb-search input{border:0;outline:0;width:100%;font:inherit;color:#51444a}.yb-profile a{color:var(--pink);font-weight:700;text-decoration:none}.yb-coupon-form{display:grid;grid-template-columns:1fr 90px;gap:8px}.yb-coupon-form input{height:42px;border:1px solid var(--border);border-radius:10px;padding:0 12px}.yb-coupon-form button,.yb-quick-actions button,.generic-card button{border:0;border-radius:10px;background:var(--pink);color:white;padding:10px;font-weight:700;cursor:pointer}.yb-quick-actions form{display:block}.yb-quick-actions form button{width:100%;height:100%;background:#fff8fa;color:var(--pink);border:1px solid var(--border)}.yb-product-grid.list-view{grid-template-columns:1fr}.yb-product-grid.list-view .yb-product-card{min-height:105px;display:grid;grid-template-columns:110px 1fr 90px;gap:14px}.yb-product-grid.list-view .yb-product-image{height:80px}.yb-product-grid.list-view .yb-product-image img{width:80px;height:80px}.yb-product-grid.list-view .yb-product-label{align-self:center}.yb-product-grid.list-view .yb-product-price{align-self:center;text-align:right}.mini-form select{height:44px;border:1px solid var(--border);border-radius:12px;padding:0 12px}.generic-card table form{margin:0}.generic-card table button{padding:7px 10px}.generic-card table a{color:var(--pink);font-weight:700}


/* =========================================================
   V6 PROFESSIONAL — identidad construida sin foto original
   ========================================================= */
.pro-login-page{
  min-height:100vh;
  margin:0;
  background:#f7f3f5;
  color:#291f24;
}
.pro-login-shell{
  min-height:100vh;
  display:grid;
  grid-template-columns:minmax(520px,1.08fr) minmax(460px,.92fr);
}
.pro-login-showcase{
  position:relative;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  padding:52px 64px 34px;
  background:
    radial-gradient(circle at 78% 20%,rgba(255,255,255,.45),transparent 28%),
    radial-gradient(circle at 12% 92%,rgba(255,255,255,.28),transparent 30%),
    linear-gradient(145deg,#f44f82 0%,#ed3a72 52%,#d82e62 100%);
  color:#fff;
}
.pro-login-showcase:before,
.pro-login-showcase:after{
  content:"";
  position:absolute;
  border:1px solid rgba(255,255,255,.16);
  border-radius:50%;
}
.pro-login-showcase:before{width:560px;height:560px;right:-260px;top:-220px}
.pro-login-showcase:after{width:380px;height:380px;left:-180px;bottom:-170px}
.pro-brand-lockup{
  position:relative;
  z-index:2;
  display:flex;
  align-items:center;
  gap:17px;
}
.pro-brand-copy{display:flex;flex-direction:column}
.pro-brand-copy strong,
.pro-mobile-brand strong,
.yb-system-brand strong{
  font-family:Georgia,"Times New Roman",serif;
  font-size:34px;
  line-height:1;
  color:#fff;
}
.pro-brand-copy strong span{color:#5f3d34}
.pro-brand-copy small{margin-top:7px;font-size:13px;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.78)}
.pro-cupcake-mark{
  position:relative;
  width:74px;
  height:74px;
  flex:none;
}
.pro-cupcake-mark .base{
  position:absolute;
  left:14px;right:14px;bottom:4px;height:34px;
  border-radius:7px 7px 18px 18px;
  background:repeating-linear-gradient(100deg,#7a483b 0 7px,#986052 7px 14px);
  clip-path:polygon(5% 0,95% 0,82% 100%,18% 100%);
}
.pro-cupcake-mark .cream{
  position:absolute;
  left:9px;right:9px;top:16px;height:34px;
  border-radius:50% 50% 45% 45%;
  background:
    radial-gradient(circle at 35% 65%,#fff 0 20%,transparent 21%),
    radial-gradient(circle at 63% 58%,#fff5f7 0 27%,transparent 28%),
    linear-gradient(180deg,#fff,#ffe4ec);
  box-shadow:0 4px 10px rgba(89,34,49,.14);
}
.pro-cupcake-mark .cream:before{
  content:"";
  position:absolute;
  width:28px;height:28px;left:23px;top:-13px;
  border-radius:50%;
  background:#fff5f7;
}
.pro-cupcake-mark .berry{
  position:absolute;
  width:17px;height:17px;border-radius:50%;
  background:#d91f50;
  box-shadow:inset -3px -3px 5px rgba(103,9,35,.2);
}
.pro-cupcake-mark .berry:after{
  content:"";
  position:absolute;
  width:8px;height:4px;left:4px;top:-3px;
  border-radius:50%;
  background:#5eaf66;
}
.pro-cupcake-mark .berry.one{left:20px;top:7px}
.pro-cupcake-mark .berry.two{right:17px;top:10px}
.pro-cupcake-mark.small{width:48px;height:48px}
.pro-cupcake-mark.small .base{left:9px;right:9px;height:22px;bottom:3px}
.pro-cupcake-mark.small .cream{left:6px;right:6px;top:11px;height:22px}
.pro-cupcake-mark.small .cream:before{width:18px;height:18px;left:15px;top:-9px}
.pro-cupcake-mark.small .berry{width:11px;height:11px}
.pro-cupcake-mark.small .berry.one{left:13px;top:4px}
.pro-cupcake-mark.small .berry.two{right:11px;top:6px}
.pro-showcase-copy{
  position:relative;
  z-index:2;
  max-width:620px;
  margin-top:clamp(72px,11vh,130px);
}
.pro-eyebrow{
  display:inline-flex;
  padding:8px 12px;
  border:1px solid rgba(255,255,255,.28);
  border-radius:999px;
  background:rgba(255,255,255,.10);
  font-size:12px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.pro-showcase-copy h1{
  margin:23px 0 16px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(42px,4.2vw,66px);
  line-height:1.02;
  letter-spacing:-.035em;
}
.pro-showcase-copy p{
  max-width:570px;
  margin:0;
  font-size:17px;
  line-height:1.7;
  color:rgba(255,255,255,.82);
}
.pro-product-stage{
  position:relative;
  z-index:2;
  flex:1;
  min-height:290px;
  margin-top:28px;
}
.pro-product-orbit{
  position:absolute;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.22);
  border-radius:32px;
  background:rgba(255,255,255,.13);
  box-shadow:0 26px 60px rgba(95,19,47,.20);
  backdrop-filter:blur(14px);
}
.pro-product-orbit img{
  width:100%;height:100%;object-fit:contain;
  filter:drop-shadow(0 16px 22px rgba(75,13,36,.28));
}
.orbit-one{left:2%;bottom:3%;width:235px;height:235px;transform:rotate(-5deg)}
.orbit-two{left:31%;bottom:13%;width:205px;height:205px;transform:rotate(4deg)}
.orbit-three{left:57%;bottom:0;width:225px;height:225px;transform:rotate(-2deg)}
.pro-showcase-footer{
  position:relative;
  z-index:2;
  display:flex;
  justify-content:space-between;
  gap:20px;
  padding-top:24px;
  border-top:1px solid rgba(255,255,255,.20);
  color:rgba(255,255,255,.76);
  font-size:13px;
}
.pro-login-form-panel{
  min-height:100vh;
  display:flex;
  flex-direction:column;
  background:#fff;
}
.pro-mobile-brand{display:none}
.pro-login-content{
  width:min(470px,calc(100% - 72px));
  margin:auto;
  padding:60px 0 36px;
}
.pro-login-heading{margin-bottom:34px}
.pro-login-kicker{
  color:#ef3f77;
  font-size:12px;
  font-weight:850;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.pro-login-heading h2{
  margin:10px 0 8px;
  font-size:38px;
  line-height:1.12;
  letter-spacing:-.03em;
}
.pro-login-heading p{margin:0;color:#7f7077;font-size:15px}
.pro-alert{
  display:grid;
  grid-template-columns:28px 1fr;
  gap:10px;
  align-items:center;
  margin-bottom:18px;
  padding:13px 14px;
  border-radius:13px;
  font-size:14px;
}
.pro-alert span{
  width:24px;height:24px;border-radius:50%;
  display:grid;place-items:center;font-weight:900;
}
.pro-alert.danger{background:#fff0f4;border:1px solid #f4c4d2;color:#9e3155}
.pro-alert.danger span{background:#ef3f77;color:white}
.pro-alert.success{background:#edfff5;border:1px solid #bfe9d0;color:#24784a}
.pro-login-form{display:grid;gap:20px}
.pro-field>span{display:block;margin-bottom:8px;font-size:14px;font-weight:750}
.pro-input-wrap{position:relative}
.pro-input-wrap i{
  position:absolute;left:16px;top:50%;transform:translateY(-50%);
  width:22px;color:#ef3f77;font-style:normal;font-weight:900;text-align:center;
}
.pro-input-wrap input{
  width:100%;
  height:54px;
  border:1px solid #e8dfe3;
  border-radius:14px;
  padding:0 50px 0 49px;
  outline:none;
  background:#fff;
  color:#291f24;
  font-size:15px;
  transition:.2s ease;
}
.pro-input-wrap input:focus{
  border-color:#ef3f77;
  box-shadow:0 0 0 4px rgba(239,63,119,.11);
}
.pro-password-toggle{
  position:absolute;right:9px;top:8px;
  width:38px;height:38px;border:0;border-radius:10px;
  background:transparent;color:#8b7b82;font-size:17px;cursor:pointer;
}
.pro-password-toggle:hover{background:#fff2f6;color:#ef3f77}
.pro-login-options{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  color:#81727a;
  font-size:12px;
}
.pro-login-options label{display:flex;align-items:center;gap:7px;cursor:pointer}
.pro-login-options input{accent-color:#ef3f77}
.pro-login-submit{
  height:56px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  border:0;
  border-radius:15px;
  background:linear-gradient(135deg,#f55485,#e9346e);
  color:#fff;
  font-size:15px;
  font-weight:850;
  box-shadow:0 14px 28px rgba(226,47,102,.25);
  cursor:pointer;
  transition:.2s ease;
}
.pro-login-submit:hover{transform:translateY(-1px);box-shadow:0 18px 34px rgba(226,47,102,.31)}
.pro-login-submit b{font-size:21px}
.pro-security-note{
  display:flex;
  align-items:flex-start;
  gap:10px;
  margin-top:22px;
  padding:14px;
  border-radius:13px;
  background:#faf7f8;
  color:#75676e;
  font-size:12px;
}
.pro-security-note span{
  flex:none;width:22px;height:22px;border-radius:50%;
  display:grid;place-items:center;background:#e9fff2;color:#258153;font-weight:900;
}
.pro-security-note p{margin:2px 0 0;line-height:1.5}
.pro-login-credits{
  display:flex;
  justify-content:space-between;
  gap:14px;
  padding:20px 32px;
  border-top:1px solid #eee5e9;
  color:#998a91;
  font-size:11px;
}
.pro-login-credits b{color:#5e4f56}
.yb-system-brand{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
}
.yb-system-brand .pro-cupcake-mark{
  filter:drop-shadow(0 4px 8px rgba(178,48,90,.12));
}
.yb-system-brand strong{
  display:block;
  color:#ef3f77;
  font-size:25px;
}
.yb-system-brand strong span{color:#694b42}
.yb-system-brand small{
  display:block;
  margin-top:4px;
  color:#9a7f89;
  font-size:9px;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.yb-logout-link{
  padding:8px 11px;
  border:1px solid #f1d6df;
  border-radius:10px;
  color:#ef3f77;
  background:#fff8fa;
  font-size:12px;
  font-weight:800;
}
.yb-logout-link:hover{background:#ef3f77;color:#fff}

/* Refinamiento transversal: nada improvisado */
.yb-shell-card,.generic-card,.yb-cart,.yb-product-card,.mini-stat{
  box-shadow:0 10px 30px rgba(91,39,58,.06);
}
.yb-product-card,.yb-nav a,.yb-checkout-form button,.yb-quick-actions a,
.mini-form button,.settings-form button{
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease;
}
.yb-product-card:hover{transform:translateY(-3px);box-shadow:0 16px 32px rgba(195,54,100,.12)}
.yb-checkout-form button:hover,.mini-form button:hover,.settings-form button:hover{
  transform:translateY(-1px);
  box-shadow:0 13px 25px rgba(239,63,119,.24);
}
table thead th{background:#fff7fa}
table tbody tr:hover{background:#fffafb}
input,select,button{font:inherit}

@media(max-width:1080px){
  .pro-login-shell{grid-template-columns:1fr}
  .pro-login-showcase{display:none}
  .pro-login-form-panel{min-height:100vh;background:linear-gradient(180deg,#fff4f8,#fff 38%)}
  .pro-mobile-brand{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    padding:30px 20px 0;
  }
  .pro-mobile-brand strong{color:#ef3f77;font-size:28px}
  .pro-mobile-brand strong span{color:#684a41}
}
@media(max-width:560px){
  .pro-login-content{width:calc(100% - 36px);padding-top:42px}
  .pro-login-heading h2{font-size:31px}
  .pro-login-options{align-items:flex-start;flex-direction:column}
  .pro-login-credits{flex-direction:column;text-align:center;padding:16px}
}

/* Layout estable del POS: catalogo y pedido nunca se superponen. */
.yb-content{max-width:1800px;margin:0 auto;padding:20px}
.yb-pos-grid{grid-template-columns:minmax(0,1fr) minmax(330px,390px);align-items:start;gap:22px;padding:22px}
.yb-catalog{min-width:0}
.yb-product-grid{grid-template-columns:repeat(auto-fill,minmax(178px,1fr));align-items:stretch}
.yb-product-card{min-width:0;min-height:244px;overflow:hidden}
.yb-product-image{height:154px;flex:0 0 154px}
.yb-product-image img{max-width:100%;width:150px;height:150px}
.yb-product-label{min-height:42px;display:flex;align-items:center;justify-content:center;white-space:normal;line-height:1.15}
.yb-cart{position:sticky;top:115px;max-height:calc(100vh - 135px);overflow:auto;min-width:0;padding:18px;scrollbar-color:#ef3f77 #fff5f8}
.yb-cart-list{max-height:300px;overflow-y:auto;padding-right:3px}
.yb-cart-item{grid-template-columns:46px minmax(0,1fr) auto;gap:8px;padding:8px 0;border-bottom:1px solid #f7e7ec}
.yb-cart-item img{width:46px;height:46px;grid-row:span 2}
.yb-cart-info strong{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.yb-cart-item>.yb-qty{grid-column:2;justify-self:start}
.yb-cart-item>b{font-size:13px;white-space:nowrap;justify-self:end}
.yb-cart-item>form:last-child{grid-column:3;grid-row:2;justify-self:end;margin-top:-32px}
.yb-kpi-strip{grid-template-columns:repeat(4,minmax(0,1fr))}
.yb-kpi-strip article{min-width:0;padding:15px;grid-template-columns:42px 1fr}
.yb-kpi-icon{width:42px;height:42px;font-size:15px;font-weight:850}
.yb-kpi-strip strong{font-size:18px;overflow:hidden;text-overflow:ellipsis}
.yb-kpi-strip small{font-size:12px}
.yb-kpi-strip em{display:none}
.yb-topbar{min-width:0}
.yb-brand{min-width:0}.yb-brand-name{font-size:clamp(25px,2.5vw,38px);overflow:hidden;text-overflow:ellipsis}.yb-search{min-width:190px}
.yb-nav a span{font-size:10px;font-weight:850}
@media(max-width:1180px){
  .yb-pos-grid{grid-template-columns:minmax(0,1fr) 335px;padding:18px;gap:18px}
  .yb-product-grid{grid-template-columns:repeat(auto-fill,minmax(158px,1fr));gap:12px}
  .yb-product-card{min-height:225px;padding:10px}.yb-product-image{height:135px;flex-basis:135px}.yb-product-image img{width:128px;height:128px}
}
@media(max-width:960px){
  .yb-pos-grid{grid-template-columns:1fr}.yb-cart{position:static;max-height:none}.yb-cart-list{max-height:340px}
  .yb-search{display:none}.yb-topbar{height:76px}.yb-brand-name{font-size:28px}
}
@media(max-width:650px){
  .yb-content{padding:12px}.yb-shell-card{border-radius:16px}.yb-pos-grid{padding:14px;gap:14px}
  .yb-product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.yb-product-card{min-height:205px}.yb-product-image{height:112px;flex-basis:112px}.yb-product-image img{width:105px;height:105px}
  .yb-product-label{font-size:12px;min-height:38px;padding:7px}.yb-product-price{font-size:13px}.yb-kpi-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.yb-kpi-strip article{min-height:100px}
  .yb-section-head{align-items:stretch}.yb-view-switch{display:flex}.yb-view-switch button{flex:1;padding:0 10px}
}

/* Superficies compartidas de productos, caja, inventario y reportes. */
.generic-card{border:1px solid var(--border);border-radius:18px;background:#fff;padding:20px;overflow:hidden}
.generic-card h1,.generic-card h2{margin:0 0 16px;color:#34232b;font-size:22px}
.generic-card table{width:100%;border-collapse:collapse;min-width:620px}
.generic-card th,.generic-card td{padding:12px 14px;border-bottom:1px solid #f4e4ea;text-align:left;vertical-align:middle}
.generic-card th{font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:#8f717c}
.generic-card td{font-size:14px}
.generic-card{overflow-x:auto}
.mini-form,.settings-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;align-items:end}
.mini-form input,.mini-form select,.settings-form input,.settings-form select{width:100%;height:44px;border:1px solid #ead9df;border-radius:11px;background:#fff;padding:0 12px;color:#34232b}
.mini-form input:focus,.mini-form select:focus,.settings-form input:focus,.settings-form select:focus,.yb-search:focus-within{outline:3px solid rgba(239,63,119,.13);border-color:#ef3f77}
.stats-top-mini{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}
.mini-stat{min-height:112px;border:1px solid var(--border);border-radius:16px;background:#fff;padding:18px;display:flex;flex-direction:column;justify-content:space-between}
.mini-stat span{font-size:12px;font-weight:750;color:#8f717c}.mini-stat strong{font-size:24px;color:#34232b}
.mini-stat:nth-child(1){border-top:4px solid #ef3f77}.mini-stat:nth-child(2){border-top:4px solid #f7a934}.mini-stat:nth-child(3){border-top:4px solid #7857c8}.mini-stat:nth-child(4){border-top:4px solid #2ca86b}
.yb-kpi-strip article:nth-child(1) .yb-kpi-icon{background:#fff0f5;color:#d92c67}.yb-kpi-strip article:nth-child(2) .yb-kpi-icon{background:#fff7e6;color:#ba7600}.yb-kpi-strip article:nth-child(3) .yb-kpi-icon{background:#f1edff;color:#6845b3}.yb-kpi-strip article:nth-child(4) .yb-kpi-icon{background:#e9faef;color:#16834a}
@media(max-width:760px){
  .stats-top-mini{grid-template-columns:repeat(2,minmax(0,1fr))}.mini-stat{min-height:96px;padding:14px}.mini-stat strong{font-size:20px}
  .generic-card{padding:14px}.generic-card h1,.generic-card h2{font-size:19px}
  .mini-form,.settings-form{grid-template-columns:1fr}
}

/* Gestion profesional de pedidos sin cambiar la identidad visual. */
.order-list-card{margin-top:18px}
.order-filter{grid-template-columns:minmax(240px,2fr) minmax(170px,1fr) 180px}
.order-actions{display:flex;align-items:center;gap:8px;white-space:nowrap}.order-actions form{margin:0}
.table-link{display:inline-flex;align-items:center;min-height:34px;padding:0 11px;border:1px solid #f0ccd8;border-radius:9px;background:#fff7fa;color:#cf2e62;font-weight:800;text-decoration:none;font-size:12px}
.table-link:hover{background:#ef3f77;color:#fff}
.order-status{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:850;letter-spacing:.04em}.status-pagado{background:#e9faef;color:#16834a}.status-pendiente{background:#fff4d9;color:#a76800}.status-cancelado{background:#fff0f2;color:#bd2f54}
.order-titlebar{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin:0 0 18px}.order-titlebar h1{margin:6px 0;font-size:28px}.order-titlebar p{margin:0;color:#806d74}
.order-management-grid{align-items:start}.order-management-grid .page-card{overflow:auto}.inline-quantity{display:flex;gap:6px;min-width:130px}.inline-quantity input{width:58px;height:35px;border:1px solid #ead9df;border-radius:8px;padding:0 7px}.inline-quantity button{border:0;border-radius:8px;background:#fff0f5;color:#c92d60;font-weight:800;padding:0 8px}
.add-item-form{margin-top:18px;padding-top:16px;border-top:1px solid #f1dfe5}.order-summary-card label{display:grid;gap:6px;font-size:12px;font-weight:800;color:#725c65}.order-summary-card textarea{resize:vertical;min-height:78px;border:1px solid #ead9df;border-radius:11px;padding:10px;font:inherit}.order-total-lines{display:grid;gap:10px;margin-top:18px;padding-top:16px;border-top:1px solid #f1dfe5}.order-total-lines>div:not(.cash-big){display:flex;justify-content:space-between}.danger-zone{display:grid;gap:9px;margin-top:18px;padding-top:16px;border-top:1px solid #f1dfe5}.danger-zone input{height:42px;border:1px solid #f3b7c6;border-radius:10px;padding:0 11px}.danger-button{border:1px solid #f2a8ba!important;background:#fff1f4!important;color:#bd2f54!important;box-shadow:none!important}.danger-button:hover{background:#bd2f54!important;color:#fff!important;transform:none!important}
@media(max-width:760px){.order-filter{grid-template-columns:1fr}.order-titlebar{flex-direction:column}.order-titlebar .receipt-link{width:100%;justify-content:center}.order-actions{flex-wrap:wrap}.order-management-grid{grid-template-columns:1fr}.inline-quantity{min-width:118px}}

/* Herramientas operativas para todos los menus. */
.compact-filter{grid-template-columns:minmax(210px,1fr) auto;margin:0 0 14px}.compact-filter button{min-height:42px}
.generic-card small{display:block;margin-top:3px;color:#937d86;font-size:11px}.favorite-tag{display:inline-block!important;margin-left:6px!important;color:#a46800!important;background:#fff4d9;padding:3px 6px;border-radius:999px;font-weight:800}
.stock-alert{color:#b34b00!important;font-weight:850}.positive-value{color:#16834a!important;font-weight:850}.negative-value{color:#bd2f54!important;font-weight:850}
.inline-details{position:relative}.inline-details summary{list-style:none;cursor:pointer;min-height:34px;padding:9px 11px;border:1px solid #f0ccd8;border-radius:9px;background:#fff7fa;color:#cf2e62;font-size:12px;font-weight:800}.inline-details summary::-webkit-details-marker{display:none}.inline-details[open] summary{background:#ef3f77;color:#fff}
.inline-details>form{position:absolute;z-index:12;right:0;top:42px;width:260px;padding:12px;border:1px solid #ead9df;border-radius:12px;background:#fff;box-shadow:0 18px 36px rgba(74,28,46,.18)}
.edit-grid{display:grid;gap:8px}.edit-grid input,.edit-grid select{width:100%;height:37px;border:1px solid #ead9df;border-radius:8px;padding:0 9px}.edit-grid button{height:38px}.check-line{font-size:12px;color:#725c65}.check-line input{width:auto;height:auto}.secondary-button{background:#fff!important;color:#cf2e62!important;border:1px solid #f0ccd8!important}
.report-toolbar{display:flex;justify-content:space-between;gap:20px;align-items:flex-end;margin-bottom:18px}.report-toolbar h1{margin-bottom:6px}.report-toolbar p{margin:0;color:#806d74}.report-toolbar .mini-form{min-width:min(100%,480px)}
@media(max-width:760px){.compact-filter{grid-template-columns:1fr}.inline-details>form{position:fixed;top:18vh;left:16px;right:16px;width:auto;z-index:30}.report-toolbar{flex-direction:column;align-items:stretch}.report-toolbar .mini-form{min-width:0}.order-actions{align-items:flex-start}}
@media print{.yb-sidebar,.yb-topbar,.yb-stgr-watermark,.yb-promo-card,.report-toolbar form,.order-actions,.inline-details,.mini-form,button{display:none!important}.yb-main{margin:0}.yb-content{padding:0}.generic-card{box-shadow:none;border:0;padding:0;overflow:visible}.generic-card table{min-width:0;font-size:10px}.generic-card th,.generic-card td{padding:6px}.stats-top-mini{grid-template-columns:repeat(4,1fr)}}

/* Navegacion jerarquica: cada grupo muestra solo sus funciones relacionadas. */
.yb-nav-groups{gap:5px;overflow-y:auto;padding-right:2px}.yb-nav-groups>details{border:1px solid transparent;border-radius:13px}.yb-nav-groups>details[open]{background:#fff8fa;border-color:#f4dce4}.yb-nav-groups summary{height:39px;padding:0 15px;display:flex;align-items:center;cursor:pointer;color:#745d67;font-size:12px;font-weight:850;letter-spacing:.04em;text-transform:uppercase;list-style:none}.yb-nav-groups summary::-webkit-details-marker{display:none}.yb-nav-groups summary:after{content:'+';margin-left:auto;color:#ef3f77;font-size:18px}.yb-nav-groups details[open] summary:after{content:'-';}.yb-nav-groups details a{height:40px;margin:0 6px 5px;padding-left:14px;font-size:13px}.yb-nav-groups details a span{width:26px}.yb-sidebar{overflow:hidden}.yb-promo-card{min-height:155px;height:155px;margin-top:10px}.yb-promo-card img{width:106px;height:130px}.yb-promo-copy strong{font-size:21px}
.dashboard-hero{min-height:180px;border:1px solid #efcedb;border-radius:20px;padding:26px 28px;display:flex;align-items:flex-end;justify-content:space-between;gap:20px;background:radial-gradient(circle at 85% 0%,#ffddea,transparent 34%),linear-gradient(135deg,#fff 0%,#fff6f9 60%,#fff 100%)}.dashboard-hero span{font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:#cf2e62;font-weight:850}.dashboard-hero h1{margin:8px 0;font-size:clamp(26px,3vw,39px);line-height:1.05;color:#38252d}.dashboard-hero p{max-width:650px;margin:0;color:#806d74;line-height:1.55}.pink-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 16px;border:0;border-radius:11px;background:#ef3f77;color:#fff;font-weight:850;text-decoration:none;white-space:nowrap}.color-swatch{display:inline-block;width:14px;height:14px;border-radius:50%;margin-right:6px;vertical-align:middle;border:1px solid rgba(0,0,0,.12)}
@media(max-width:900px){.yb-nav-groups{overflow:visible}.dashboard-hero{align-items:flex-start;flex-direction:column}.dashboard-hero .pink-btn{width:100%}}

/* Resumen del POS: tarjetas accionables, sin trazos decorativos ni iconos inconsistentes. */
.yb-kpi-strip{margin-top:20px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid #f1d8e1;border-radius:16px;overflow:hidden;background:#fff}
.yb-kpi-card{min-width:0;min-height:128px;padding:18px 19px;display:grid;grid-template-columns:38px minmax(0,1fr);align-content:start;gap:12px;border-right:1px solid #f3dce4;text-decoration:none;color:#38252d;position:relative;transition:background .18s ease,transform .18s ease,box-shadow .18s ease}.yb-kpi-card:last-child{border-right:0}.yb-kpi-card:hover{z-index:1;background:#fff8fa;box-shadow:inset 0 -3px 0 #ef3f77}.yb-kpi-card:focus-visible{outline:3px solid rgba(239,63,119,.25);outline-offset:-3px}
.yb-kpi-card .yb-kpi-icon{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;font-family:Inter,Segoe UI,Arial,sans-serif;font-size:14px;font-weight:900;box-shadow:none}.yb-kpi-card small,.yb-kpi-card strong,.yb-kpi-card em{display:block}.yb-kpi-card small{font-size:11px;font-weight:750;color:#7e6670;white-space:nowrap}.yb-kpi-card strong{margin-top:5px;font-size:21px;line-height:1.05;letter-spacing:0;color:#2b2025;overflow:hidden;text-overflow:ellipsis}.yb-kpi-card em{margin-top:9px;font-size:11px;color:#b12b58;font-style:normal;font-weight:750}.yb-kpi-card em:after{content:'  ->';font-weight:900}
.kpi-sales .yb-kpi-icon{background:#e9faef;color:#16834a}.kpi-orders .yb-kpi-icon{background:#fff3da;color:#af7100}.kpi-customers .yb-kpi-icon{background:#f0ebff;color:#6a4bb6}.kpi-products .yb-kpi-icon{background:#e8f8f2;color:#147d5d}
.yb-kpi-strip article,.yb-kpi-strip i{display:none}
.yb-footer{min-height:54px;padding:13px 22px;gap:18px;font-size:12px;line-height:1.25;border-top-color:#f1d8e1}.yb-footer span{white-space:nowrap}
@media(max-width:850px){.yb-kpi-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.yb-kpi-card:nth-child(2){border-right:0}.yb-kpi-card:nth-child(-n+2){border-bottom:1px solid #f3dce4}}@media(max-width:440px){.yb-kpi-card{padding:14px;grid-template-columns:34px minmax(0,1fr);gap:9px;min-height:112px}.yb-kpi-card .yb-kpi-icon{width:34px;height:34px}.yb-kpi-card strong{font-size:18px}.yb-kpi-card em{font-size:10px}.yb-footer{justify-content:center;text-align:center}.yb-footer span{white-space:normal}}

/* El arte de cada producto permanece dentro de su espacio y nunca invade la etiqueta. */
.yb-product-card{display:grid;grid-template-rows:154px auto auto;align-content:start;gap:0;isolation:isolate}
.yb-product-image{height:154px;min-height:154px;overflow:hidden;position:relative;padding:0 4px 8px;background:#fff;z-index:0}
.yb-product-image img{display:block;max-height:138px;width:100%;height:138px;object-fit:contain}
.yb-product-label{position:relative;z-index:2;margin:0;box-shadow:0 -1px 0 rgba(255,255,255,.85),0 7px 12px rgba(214,42,94,.12)}
.yb-product-price{position:relative;z-index:2;margin:8px 0 0;min-height:22px;background:#fff}
@media(max-width:1180px){.yb-product-card{grid-template-rows:135px auto auto}.yb-product-image{height:135px;min-height:135px}.yb-product-image img{height:120px;max-height:120px}}@media(max-width:650px){.yb-product-card{grid-template-rows:112px auto auto}.yb-product-image{height:112px;min-height:112px}.yb-product-image img{height:98px;max-height:98px}}

/* El arte nunca invade el nombre: ventana propia, separador blanco y recorte inferior. */
.yb-product-card{grid-template-rows:144px auto auto;background:#fff}
.yb-product-image{height:144px;min-height:144px;overflow:hidden!important;clip-path:inset(0);padding:0 4px 12px;background:#fff}
.yb-product-image:after{content:"";position:absolute;z-index:1;left:0;right:0;bottom:0;height:36px;background:#fff;pointer-events:none}
.yb-product-image img{position:relative;z-index:0;width:132px;height:132px;max-height:132px;object-fit:contain;transform:translateY(-8px)}
.yb-product-label{z-index:3;min-height:42px;background:linear-gradient(180deg,#ff6797,#f34378);box-shadow:0 -2px 0 #fff,0 7px 12px rgba(214,42,94,.12)}
.yb-product-price{z-index:3;background:#fff}
@media(max-width:1180px){.yb-product-card{grid-template-rows:128px auto auto}.yb-product-image{height:128px;min-height:128px;padding-bottom:10px}.yb-product-image:after{height:31px}.yb-product-image img{width:116px;height:116px;max-height:116px;transform:translateY(-7px)}}
@media(max-width:650px){.yb-product-card{grid-template-rows:106px auto auto}.yb-product-image{height:106px;min-height:106px;padding-bottom:8px}.yb-product-image:after{height:25px}.yb-product-image img{width:94px;height:94px;max-height:94px;transform:translateY(-5px)}}
