/* Bar Calc — Module-Specific Styles */
/* ═══ SUPER JUICE HERO (citrus warm) ═══ */
.sj-hero{
  background:linear-gradient(135deg, #e8a340 0%, #c47a0a 100%);
  border:none;
  color:#fff;
  padding:1.5rem;
  border-radius:24px;
  box-shadow:0 10px 30px rgba(196,122,10,0.3);
  position:relative;
  overflow:hidden;
}
.sj-hero::before{
  content:'';position:absolute;top:-60px;right:-60px;
  width:200px;height:200px;
  background:radial-gradient(circle,rgba(255,255,255,0.18),transparent 70%);
  pointer-events:none;
}
.sj-hero::after{
  content:'';position:absolute;bottom:-50px;left:-40px;
  width:150px;height:150px;
  background:radial-gradient(circle,rgba(255,255,255,0.1),transparent 70%);
  pointer-events:none;
}
.sj-hero > *{position:relative;z-index:1;}
.sj-hero-top{display:flex;align-items:center;gap:14px;margin-bottom:18px;}
.sj-hero-icon{
  width:54px;height:54px;
  border-radius:15px;
  background:rgba(255,255,255,0.22);
  backdrop-filter:blur(10px);
  display:flex;align-items:center;justify-content:center;
  flex-shrink:0;
}
.sj-hero-text{flex:1;min-width:0;}
.sj-hero-title{
  font-family:'Fraunces',serif;
  font-size:24px;font-weight:600;
  letter-spacing:-0.5px;margin-bottom:4px;color:#fff;
}
.sj-hero-sub{
  font-size:12.5px;opacity:0.9;
  font-weight:400;line-height:1.4;color:#fff;
}
.sj-hero-choose{
  font-size:11px;font-weight:700;
  text-transform:uppercase;letter-spacing:1.2px;
  color:rgba(255,255,255,0.9);
  margin:0 0 12px 0;
}

/* Citrus grid inside sj-hero — 3D glass buttons with interactive depth */
.sj-hero .citrus-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:10px;
  padding:4px;
}
.sj-hero .citrus-btn{
  background:rgba(255,255,255,0.12);
  backdrop-filter:blur(10px);
  border:1.5px solid rgba(255,255,255,0.25);
  border-radius:16px;
  overflow:hidden;
  cursor:pointer;
  padding:0;
  position:relative;
  /* baseline 3D — subtle elevation */
  transform:translateY(0) translateZ(0);
  box-shadow:
    0 2px 4px rgba(0,0,0,0.08),
    inset 0 1px 0 rgba(255,255,255,0.25);
  transition:transform .25s cubic-bezier(.34,1.56,.64,1),
             box-shadow .25s cubic-bezier(.4,0,.2,1),
             border-color .25s ease;
}
/* Hover — card lifts up with bigger shadow (3D pop) */
.sj-hero .citrus-btn:hover{
  transform:translateY(-6px) scale(1.03);
  border-color:rgba(255,255,255,0.5);
  box-shadow:
    0 14px 28px rgba(0,0,0,0.22),
    0 8px 16px rgba(196,122,10,0.25),
    inset 0 1px 0 rgba(255,255,255,0.4);
  z-index:2;
}
/* Pressed — button pushes down (tactile feedback) */
.sj-hero .citrus-btn:active{
  transform:translateY(-2px) scale(0.98);
  transition-duration:.1s;
}
/* Active (selected) — stays elevated with gold halo ring */
/* Active (selected) — stays elevated with gold halo ring */
.sj-hero .citrus-btn.active{
  background:rgba(255,255,255,0.22);
  border-color:#fff;
  transform:translateY(-3px);
  box-shadow:
    0 0 0 3px rgba(255,255,255,0.35),
    0 12px 24px rgba(0,0,0,0.25),
    0 4px 10px rgba(196,122,10,0.3),
    inset 0 1px 0 rgba(255,255,255,0.45);
  z-index:1;
}
/* Hover on ACTIVE button — push 3D effect higher so it still feels interactive */
.sj-hero .citrus-btn.active:hover{
  transform:translateY(-8px) scale(1.04);
  box-shadow:
    0 0 0 3px rgba(255,255,255,0.45),
    0 18px 32px rgba(0,0,0,0.28),
    0 10px 20px rgba(196,122,10,0.35),
    inset 0 1px 0 rgba(255,255,255,0.5);
  z-index:3;
}
.sj-hero .citrus-btn.active:active{
  transform:translateY(-4px) scale(0.99);
  transition-duration:.1s;
}
.sj-hero .citrus-btn.active::after{
  content:'';
  position:absolute;
  top:6px;
  right:6px;
  width:8px;
  height:8px;
  background:#fff;
  border-radius:50%;
  box-shadow:0 0 0 2px rgba(255,255,255,0.35), 0 2px 6px rgba(0,0,0,0.2);
  animation:pulseDot 2s ease-in-out infinite;
}
@keyframes pulseDot{
  0%,100%{opacity:1;transform:scale(1);}
  50%{opacity:0.6;transform:scale(0.85);}
}
.sj-hero .citrus-face{
  width:100%;
  aspect-ratio:1;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:center;
  position:relative;
  background:transparent;
}
.sj-hero .citrus-face::before{
  content:'';
  position:absolute;
  top:0; left:0; right:0;
  height:35%;
  background:linear-gradient(180deg, rgba(255,255,255,0.3), transparent);
  pointer-events:none;
  z-index:1;
}
.sj-hero .citrus-face img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center !important;
  border-radius:0 !important;
  position:relative;
  z-index:0;
  transition:transform .3s cubic-bezier(.4,0,.2,1);
}
.sj-hero .citrus-btn:hover .citrus-face img{
  transform:scale(1.08);
}
/* Unified name — same style for all states, embossed & modern */
.sj-hero .citrus-name{
  padding:9px 2px;
  font-family:'Fraunces',serif;
  font-size:11.5px;
  font-weight:600;
  color:#fff !important;
  text-align:center;
  background:rgba(0,0,0,0.3) !important;
  letter-spacing:0.2px;
  text-shadow:0 1px 2px rgba(0,0,0,0.35);
  transition:all .25s ease;
  border-top:1px solid rgba(255,255,255,0.15);
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
/* Active — subtle brighter highlight, keeps dark bg for consistency */
.sj-hero .citrus-btn.active .citrus-name{
  color:#fff !important;
  background:rgba(0,0,0,0.4) !important;
  font-weight:700;
  letter-spacing:0.2px;
  text-shadow:
    0 1px 2px rgba(0,0,0,0.5),
    0 0 12px rgba(255,220,150,0.4);
  border-top:1px solid rgba(255,255,255,0.3);
  box-shadow:none;
}

/* ═══ CORDIAL HERO (floral pink-magenta) ═══ */
.cord-hero{
  background:linear-gradient(135deg, #e87090 0%, #a2326a 100%);
  border:none;
  color:#fff;
  padding:1.5rem;
  border-radius:24px;
  box-shadow:0 10px 30px rgba(162,50,106,0.3);
  position:relative;
  overflow:hidden;
}
.cord-hero::before{
  content:'';position:absolute;top:-60px;right:-60px;
  width:200px;height:200px;
  background:radial-gradient(circle,rgba(255,255,255,0.18),transparent 70%);
  pointer-events:none;
}
.cord-hero::after{
  content:'';position:absolute;bottom:-50px;left:-40px;
  width:160px;height:160px;
  background:radial-gradient(circle,rgba(255,255,255,0.1),transparent 70%);
  pointer-events:none;
}
.cord-hero > *{position:relative;z-index:1;}
.cord-hero-top{display:flex;align-items:center;gap:14px;margin-bottom:18px;}
.cord-hero-icon{
  width:54px;height:54px;
  border-radius:15px;
  background:rgba(255,255,255,0.22);
  backdrop-filter:blur(10px);
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
}
.cord-hero-text{flex:1;min-width:0;}
.cord-hero-title{
  font-family:'Fraunces',serif;
  font-size:24px;font-weight:600;
  letter-spacing:-0.5px;margin-bottom:4px;color:#fff;
}
.cord-hero-sub{
  font-size:12.5px;opacity:0.9;
  font-weight:400;line-height:1.4;color:#fff;
}
.cord-hero-label{
  display:block;
  font-size:11px;font-weight:700;
  text-transform:uppercase;letter-spacing:1.2px;
  color:rgba(255,255,255,0.9);
  margin-bottom:8px;
}
.cord-hero-input{
  display:flex;align-items:center;
  background:rgba(255,255,255,0.95);
  border-radius:13px;
  overflow:hidden;
}
.cord-hero-input input{
  flex:1;min-width:0;
  border:none;background:transparent;
  font-family:'Outfit',sans-serif;
  font-size:18px;font-weight:600;
  color:#1a1a1a;
  padding:12px 16px;
  outline:none;
}
.cord-hero-unit{
  padding:0 16px;
  font-size:13px;font-weight:700;
  color:rgba(0,0,0,0.55);
  border-left:1px solid rgba(0,0,0,0.15);
}

/* Cordial types card - title refined */
.cord-types-card{
  border-radius:18px !important;
}
.cord-types-title{
  font-family:'Fraunces',serif;
  font-size:15px;font-weight:600;
  color:var(--text);
  margin-bottom:12px;
  padding-left:2px;
}

/* ═══ COST HERO (emerald money) ═══ */
.cost-hero{
  background:linear-gradient(135deg, #2d8c50 0%, #0f5f4a 100%);
  border:none;
  color:#fff;
  padding:1.5rem;
  border-radius:24px;
  box-shadow:0 10px 30px rgba(45,140,80,0.3);
  position:relative;
  overflow:hidden;
}
.cost-hero::before{
  content:'';position:absolute;top:-60px;right:-60px;
  width:200px;height:200px;
  background:radial-gradient(circle,rgba(255,255,255,0.18),transparent 70%);
  pointer-events:none;
}
.cost-hero::after{
  content:'';position:absolute;bottom:-40px;left:-30px;
  width:140px;height:140px;
  background:radial-gradient(circle,rgba(255,255,255,0.1),transparent 70%);
  pointer-events:none;
}
.cost-hero > *{position:relative;z-index:1;}
.cost-hero-top{display:flex;align-items:center;gap:14px;}
.cost-hero-icon{
  width:54px;height:54px;
  border-radius:15px;
  background:rgba(255,255,255,0.22);
  backdrop-filter:blur(10px);
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
}
.cost-hero-text{flex:1;min-width:0;}
.cost-hero-title{
  font-family:'Fraunces',serif;
  font-size:24px;font-weight:600;
  letter-spacing:-0.5px;margin-bottom:4px;color:#fff;
}
.cost-hero-sub{
  font-size:12.5px;opacity:0.9;
  font-weight:400;line-height:1.4;color:#fff;
}

/* CORDIAL */
.cordial-list{display:flex;flex-direction:column;gap:8px;}
.cordial-item{border-radius:16px;background:var(--card2);cursor:pointer;overflow:hidden;transition:all .25s;border:1.5px solid var(--border);box-shadow:0 2px 8px rgba(0,0,0,0.04);}
.cordial-item:hover{border-color:var(--p);transform:translateY(-1px);box-shadow:0 4px 14px rgba(110,61,181,0.15);}
.cordial-item.active{border-color:var(--p);box-shadow:0 4px 18px rgba(110,61,181,0.25);}
.cordial-hdr{display:flex;align-items:center;gap:0;overflow:hidden;}
.cord-thumb{width:68px;height:68px;object-fit:cover;flex-shrink:0;}
.cord-thumb-ph{width:68px;height:68px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:28px;background:linear-gradient(135deg,var(--pl),var(--bl));}
.cord-info{flex:1;padding:12px 14px;min-width:0;}
.cord-name{font-family:'Fraunces',serif;font-size:14.5px;font-weight:600;color:var(--text);}
.cord-desc{font-size:11.5px;color:var(--muted);margin-top:2px;}
.cord-arrow{padding:0 14px;font-size:16px;color:var(--muted);transition:transform .2s;}
.cordial-item.active .cord-arrow{transform:rotate(90deg);color:var(--p);}
.cord-res{background:linear-gradient(135deg,var(--pl),var(--bl));border-radius:16px;padding:16px;}
.cord-res-title{font-family:'Fraunces',serif;font-size:17px;color:var(--pd);margin-bottom:14px;font-weight:600;}
.cord-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;}
.cord-i{background:var(--card);border-radius:12px;padding:12px;}
.cord-i.full{grid-column:span 2;background:linear-gradient(135deg,var(--pl),var(--bl));border:1px solid var(--p);}
.cord-i .cl{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--muted);margin-bottom:3px;}
.cord-i.full .cl{color:var(--p);}
.cord-i .cv{font-family:'Fraunces',serif;font-size:22px;color:var(--text);}
.cord-i.full .cv{color:var(--pd);}
.cord-i .cu{font-size:11px;color:var(--muted);margin-left:2px;}

/* PREBATCH */

/* Hero header — premium gradient card */
.pb-hero{
  background:linear-gradient(135deg, #7a1f2a 0%, #b52d3a 60%, #d4454f 100%);
  border:none;
  color:#fff;
  padding:1.5rem;
  border-radius:24px;
  box-shadow:0 10px 30px rgba(181,45,58,0.4);
  position:relative;
  overflow:hidden;
}
.pb-hero::before{
  content:'';
  position:absolute;
  top:-50px;
  right:-50px;
  width:180px;
  height:180px;
  background:radial-gradient(circle, rgba(255,255,255,0.15), transparent 70%);
  pointer-events:none;
}
.pb-hero::after{
  content:'';
  position:absolute;
  bottom:-60px;
  left:-40px;
  width:160px;
  height:160px;
  background:radial-gradient(circle, rgba(255,255,255,0.08), transparent 70%);
  pointer-events:none;
}
.pb-hero-top{
  display:flex;
  align-items:center;
  gap:14px;
  margin-bottom:16px;
  position:relative;
  z-index:1;
}
.pb-hero-icon{
  width:54px;
  height:54px;
  border-radius:15px;
  background:rgba(255,255,255,0.18);
  display:flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
  backdrop-filter:blur(10px);
}
.pb-hero-text{flex:1;min-width:0;}
.pb-hero-title{
  font-family:'Fraunces',serif;
  font-size:24px;
  font-weight:600;
  letter-spacing:-0.5px;
  margin-bottom:4px;
  color:#fff;
}
.pb-hero-sub{
  font-size:12.5px;
  opacity:0.88;
  font-weight:400;
  line-height:1.4;
  color:#fff;
}
.pb-hero-add{
  width:100%;
  padding:12px 16px;
  border-radius:14px;
  border:1.5px solid rgba(255,255,255,0.3);
  background:rgba(255,255,255,0.15);
  color:#fff;
  font-family:'Outfit',sans-serif;
  font-size:14px;
  font-weight:600;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  backdrop-filter:blur(10px);
  transition:all .2s;
  position:relative;
  z-index:1;
}
.pb-hero-add:hover{
  background:rgba(255,255,255,0.25);
  border-color:rgba(255,255,255,0.5);
  transform:translateY(-1px);
}
.pb-hero-add:active{transform:translateY(0);}
.pb-hero-add-icon{
  font-size:20px;
  font-weight:300;
  line-height:1;
}

/* Existing cocktail cards — upgraded with more premium look */
.pb-item{border-radius:18px;background:var(--card2);cursor:pointer;overflow:hidden;transition:all .25s cubic-bezier(.4,0,.2,1);margin-bottom:10px;border:1.5px solid var(--border);box-shadow:0 3px 10px rgba(0,0,0,0.05);}
.pb-item:hover{border-color:#b52d3a;transform:translateY(-2px);box-shadow:0 8px 20px rgba(181,45,58,0.18);}
.pb-item.active{border-color:#b52d3a;box-shadow:0 8px 24px rgba(181,45,58,0.25);}
.pb-hdr{display:flex;align-items:center;gap:0;overflow:hidden;}
.pb-thumb{width:80px;height:80px;object-fit:cover;flex-shrink:0;}
.pb-thumb-ph{width:80px;height:80px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:32px;background:linear-gradient(135deg,var(--tl),var(--bl));}
.pb-info{flex:1;padding:13px 14px;min-width:0;}
.pb-name{font-family:'Fraunces',serif;font-size:15.5px;font-weight:600;color:var(--text);letter-spacing:-0.2px;}
.pb-meta{font-size:11.5px;color:var(--muted);margin-top:3px;}
.pb-badge{display:inline-block;font-size:10px;font-weight:700;padding:3px 10px;border-radius:20px;margin-top:6px;text-transform:uppercase;letter-spacing:0.5px;}
.pb-badge.stirred{background:var(--bl);color:var(--bd);}
.pb-badge.shaken{background:var(--pl);color:var(--pd);}
.pb-badge.built{background:var(--tl);color:var(--td);}
.pb-arrow{padding:0 14px;font-size:16px;color:var(--muted);transition:transform .2s;flex-shrink:0;}
.pb-item.active .pb-arrow{transform:rotate(90deg);color:#b52d3a;}
.pb-body{display:none;padding:0 14px 14px;}
.pb-item.active .pb-body{display:block;}
.pb-res{background:linear-gradient(135deg,rgba(122,31,42,0.12),rgba(181,45,58,0.06));border-radius:14px;padding:14px;border:1px solid rgba(181,45,58,0.15);}
.pb-res-title{font-size:12px;font-weight:700;color:#b52d3a;margin-bottom:12px;display:flex;align-items:center;justify-content:space-between;text-transform:uppercase;letter-spacing:0.5px;}
.pb-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px;}
.pb-i{background:var(--card);border-radius:11px;padding:11px;}
.pb-i .pl{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.8px;color:var(--muted);margin-bottom:2px;}
.pb-i .pv{font-family:'Fraunces',serif;font-size:21px;color:var(--text);}
.pb-i .pu{font-size:11px;color:var(--muted);}
.pb-i.full{grid-column:span 2;background:linear-gradient(135deg,rgba(122,31,42,0.1),rgba(181,45,58,0.06));border:1px solid rgba(181,45,58,0.3);}
.pb-i.full .pl{color:#b52d3a;}
.pb-i.full .pv{color:#d4454f;}
.pb-scale{display:flex;align-items:center;gap:10px;margin-bottom:12px;padding:10px 14px;background:var(--card);border-radius:12px;}
.pb-scale label{font-size:12px;color:var(--muted);flex:1;font-weight:600;}
.pb-notes{font-size:12px;color:var(--muted);line-height:1.7;border-top:1px solid var(--border);padding-top:12px;margin-top:8px;}
.pb-notes b{color:var(--text);font-weight:600;}

@media print{
  .bnav,.app-hdr,.hdr-acts,.preset-scroll,.add-btn,.save-row,.io-row,.search-row,.s-acts,.photo-zone input,.warn-bar,.scale-row,.pb-scale{display:none!important;}
  body{background:#fff;color:#000;padding:0;}
  .card{box-shadow:none;border:1px solid #ddd;break-inside:avoid;}
  .sec{display:block!important;}
  #secPrebatch,#secCost,#secStock,#secAnalytics,#secFlavor{display:none!important;}
}

/* Premium toast notification */
.toast{
  position:fixed;
  bottom:88px;
  left:50%;
  transform:translateX(-50%) translateY(20px);
  background:linear-gradient(135deg, #1f1f24 0%, #2a2a30 100%);
  color:#fff;
  font-family:'Outfit',sans-serif;
  font-size:13.5px;
  font-weight:600;
  padding:12px 22px;
  border-radius:14px;
  opacity:0;
  transition:opacity .25s cubic-bezier(.4,0,.2,1),
             transform .35s cubic-bezier(.34,1.56,.64,1);
  z-index:9999;
  pointer-events:none;
  max-width:85vw;
  text-align:center;
  box-shadow:
    0 10px 30px rgba(0,0,0,0.3),
    0 4px 12px rgba(0,0,0,0.2),
    inset 0 1px 0 rgba(255,255,255,0.1);
  border:1px solid rgba(255,255,255,0.08);
  letter-spacing:0.2px;
  backdrop-filter:blur(12px);
}
[data-theme="light"] .toast{
  background:linear-gradient(135deg, #2a2a30 0%, #1f1f24 100%);
  color:#fff;
}
.toast.show{
  opacity:1;
  transform:translateX(-50%) translateY(0);
}
/* Toast variants by content prefix (detected via JS class toggle) */
.toast.toast-success{
  background:linear-gradient(135deg, #2d8c50 0%, #0f5f4a 100%);
  box-shadow:
    0 10px 30px rgba(45,140,80,0.4),
    0 4px 12px rgba(45,140,80,0.25),
    inset 0 1px 0 rgba(255,255,255,0.15);
}
.toast.toast-error{
  background:linear-gradient(135deg, #e55050 0%, #b03030 100%);
  box-shadow:
    0 10px 30px rgba(229,80,80,0.4),
    0 4px 12px rgba(229,80,80,0.25),
    inset 0 1px 0 rgba(255,255,255,0.15);
}
.toast.toast-warn{
  background:linear-gradient(135deg, #e8a340 0%, #c47a0a 100%);
  box-shadow:
    0 10px 30px rgba(232,163,64,0.4),
    0 4px 12px rgba(196,122,10,0.25),
    inset 0 1px 0 rgba(255,255,255,0.15);
}

.online-badge{font-size:10px;padding:2px 8px;border-radius:20px;background:var(--gl);color:var(--gd);font-weight:600;margin-left:6px;}
.offline-badge{font-size:10px;padding:2px 8px;border-radius:20px;background:var(--ol);color:var(--o);font-weight:600;margin-left:6px;}

/* ═══ PREMIUM COLORED BACKGROUNDS ═══ */
/* Light mode: warm cream with subtle color hints */
[data-theme="light"] body{
  background:
    radial-gradient(ellipse at top left, rgba(232,163,64,0.08), transparent 50%),
    radial-gradient(ellipse at top right, rgba(110,61,181,0.06), transparent 50%),
    radial-gradient(ellipse at bottom left, rgba(232,112,144,0.05), transparent 50%),
    radial-gradient(ellipse at bottom right, rgba(26,122,122,0.07), transparent 50%),
    linear-gradient(180deg, #faf6f0 0%, #ede5d8 100%) !important;
  background-attachment: fixed !important;
}

/* Dark mode: rich cocktail lounge with subtle color glows */
[data-theme="dark"] body{
  background:
    radial-gradient(ellipse at top left, rgba(110,61,181,0.12), transparent 45%),
    radial-gradient(ellipse at top right, rgba(45,140,80,0.08), transparent 45%),
    radial-gradient(ellipse at bottom left, rgba(232,112,144,0.08), transparent 45%),
    radial-gradient(ellipse at bottom right, rgba(232,163,64,0.07), transparent 45%),
    linear-gradient(180deg, #14121c 0%, #1a1520 50%, #12161c 100%) !important;
  background-attachment: fixed !important;
}

.card{
  border-radius:22px;
  box-shadow:0 8px 24px rgba(0,0,0,0.08);
}
[data-theme="dark"] .card{
  box-shadow:0 8px 24px rgba(0,0,0,0.35);
}

/* ═══ ABV HERO (mystical purple — matches nav icon) ═══ */
.abv-hero{
  background:linear-gradient(135deg, #6e3db5 0%, #2272b0 100%);
  border:none;
  color:#fff;
  padding:1.5rem;
  border-radius:24px;
  box-shadow:0 10px 30px rgba(110,61,181,0.3);
  position:relative;
  overflow:hidden;
}
.abv-hero::before{
  content:'';position:absolute;top:-60px;right:-60px;
  width:200px;height:200px;
  background:radial-gradient(circle,rgba(255,255,255,0.18),transparent 70%);
  pointer-events:none;
}
.abv-hero::after{
  content:'';position:absolute;bottom:-50px;left:-40px;
  width:160px;height:160px;
  background:radial-gradient(circle,rgba(255,255,255,0.1),transparent 70%);
  pointer-events:none;
}
.abv-hero > *{position:relative;z-index:1;}
.abv-hero-top{display:flex;align-items:center;gap:14px;}
.abv-hero-icon{
  width:54px;height:54px;
  border-radius:15px;
  background:rgba(255,255,255,0.22);
  backdrop-filter:blur(10px);
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
}
.abv-hero-text{flex:1;min-width:0;}
.abv-hero-title{
  font-family:'Fraunces',serif;
  font-size:24px;font-weight:600;
  letter-spacing:-0.5px;margin-bottom:4px;color:#fff;
}
.abv-hero-sub{
  font-size:12.5px;opacity:0.9;
  font-weight:400;line-height:1.4;color:#fff;
}

/* ═══ ABV INGREDIENT CARDS — subtle purple accent, not full gradient ═══ */
.abv-ingredient-card{
  border-color: rgba(110,61,181,0.18) !important;
  background: var(--card) !important;
  padding: 1.25rem !important;
  color: var(--text) !important;
}
[data-theme="dark"] .abv-ingredient-card{
  border-color: rgba(110,61,181,0.3) !important;
}

/* Remove any gradient background artifacts */
.abv-ingredient-card::before,
.abv-ingredient-card::after{display:none !important;}

/* Category header inside regular card - keep original colored icons */
.abv-ingredient-card .abv8-cat-hdr{margin-bottom:14px;}
.abv-ingredient-card .abv8-cat-title{color:var(--text) !important;font-size:16px;}
.abv-ingredient-card .abv8-cat-sub{color:var(--muted) !important;font-size:11.5px;}

/* Ingredient rows - light background, not glass */
.abv-ingredient-card .abv8-ing-row{
  background: var(--card2) !important;
  border: 1px solid var(--border) !important;
  backdrop-filter: none !important;
}
.abv-ingredient-card .abv8-ing-row:hover{
  background: var(--card) !important;
  border-color: rgba(110,61,181,0.25) !important;
}
.abv-ingredient-card .abv8-ing-label{color:var(--muted) !important;}
.abv-ingredient-card .abv8-ing-field-lbl{color:var(--muted) !important;}
.abv-ingredient-card .abv8-ing-del{color:var(--muted) !important;}
.abv-ingredient-card .abv8-ing-del:hover{
  background:var(--rl) !important;
  color:var(--r) !important;
}

/* Inputs inside ingredient cards — normal look */
.abv-ingredient-card .abv8-inp{
  background: var(--card) !important;
  border:1.5px solid var(--border) !important;
  box-shadow: none !important;
}
.abv-ingredient-card .abv8-inp:focus-within{
  border-color: #6e3db5 !important;
  box-shadow: 0 0 0 3px rgba(110,61,181,0.12) !important;
}
.abv-ingredient-card .abv8-inp input{color:var(--text) !important;}
.abv-ingredient-card .abv8-inp-unit{
  color:var(--muted) !important;
  border-left: 1px solid var(--border) !important;
}

/* 4-col inputs (other ingredients) - normal */
.abv-ingredient-card .abv8-4col-item label{color:var(--muted) !important;}
.abv-ingredient-card .abv8-sm-inp{
  background:var(--card) !important;
  border:1.5px solid var(--border) !important;
  box-shadow:none !important;
}
.abv-ingredient-card .abv8-sm-inp:focus-within{
  border-color:#6e3db5 !important;
  box-shadow:0 0 0 3px rgba(110,61,181,0.12) !important;
}
.abv-ingredient-card .abv8-sm-inp input{color:var(--text) !important;}
.abv-ingredient-card .abv8-sm-unit{
  color:var(--muted) !important;
  border-left:1px solid var(--border) !important;
}

/* Bitters slider wrap inside normal card */
.abv-ingredient-card .abv8-bit-slider-wrap{
  background:var(--card2) !important;
  border:1px solid var(--border) !important;
  backdrop-filter:none !important;
}
.abv-ingredient-card .abv8-bit-slider-lbl{color:var(--muted) !important;}
.abv-ingredient-card .abv8-bit-slider-val{color:var(--text) !important;}

/* Add button — purple dashed, subtle */
.abv-ingredient-card .abv8-add-btn{
  border:1.5px dashed rgba(110,61,181,0.4) !important;
  color:#6e3db5 !important;
  background:rgba(110,61,181,0.04) !important;
}
.abv-ingredient-card .abv8-add-btn:hover{
  background:rgba(110,61,181,0.1) !important;
  border-color:#6e3db5 !important;
  color:#6e3db5 !important;
  border-style:solid !important;
}
[data-theme="dark"] .abv-ingredient-card .abv8-add-btn{
  color:#a06be0 !important;
  border-color:rgba(160,107,224,0.4) !important;
}
[data-theme="dark"] .abv-ingredient-card .abv8-add-btn:hover{
  background:rgba(160,107,224,0.12) !important;
  border-color:#a06be0 !important;
  color:#a06be0 !important;
}

/* Other hint (non-alcoholic ingredients explanation) */
.abv-ingredient-card .abv8-other-hint{
  background:var(--card2) !important;
  color:var(--muted) !important;
  border:1px solid var(--border) !important;
  backdrop-filter:none !important;
}
.abv-ingredient-card .abv8-other-hint b{color:var(--text) !important;}

/* Dilution slider hints — normal color */
.abv-ingredient-card .abv8-dilution-hints{color:var(--muted) !important;}

/* Dilution slider — keep purple thumb */
.abv-ingredient-card .abv8-slider{
  background:var(--border) !important;
}
.abv-ingredient-card .abv8-slider::-webkit-slider-thumb{
  background:linear-gradient(135deg, #6e3db5, #2272b0) !important;
  border:3px solid var(--card) !important;
  box-shadow:0 2px 8px rgba(110,61,181,0.4) !important;
}
.abv-ingredient-card .abv8-slider::-moz-range-thumb{
  background:linear-gradient(135deg, #6e3db5, #2272b0) !important;
  border:3px solid var(--card) !important;
  box-shadow:0 2px 8px rgba(110,61,181,0.4) !important;
}

/* ═══ ABV SECTION THEMING (like other sections) ═══ */
#secAbv{
  --sec-primary: #6e3db5;
  --sec-primary-light: #8a5fd1;
  --sec-accent: #2272b0;
  --sec-cream: #f3eefb;
  --sec-soft: #e9dff5;
}
[data-theme="dark"] #secAbv{
  --sec-cream: #1e1829;
  --sec-soft: #2a1f3a;
}

/* ═══ FRESH — culoare verde lime-citric ═══ */
#costModeFresh{
  --fresh-primary:#2a8c3f;
  --fresh-light:#3db85a;
  --fresh-accent:#f5a623;
  --fresh-bg:rgba(42,140,63,0.06);
  --fresh-border:rgba(42,140,63,0.2);
}
[data-theme="dark"] #costModeFresh{
  --fresh-primary:#5ed085;
  --fresh-light:#7ee89a;
  --fresh-accent:#f0c848;
}

/* Ingredient row inside fresh builder */
.fresh-ing-row{
  background:var(--card2);
  border:1.5px solid var(--border);
  border-radius:13px;
  padding:11px 12px;
  position:relative;
  overflow:hidden;
  transition:all .2s;
}
.fresh-ing-row::before{
  content:'';position:absolute;top:0;left:0;
  width:4px;height:100%;
  background:linear-gradient(180deg,var(--fresh-primary),var(--fresh-light));
}
.fresh-ing-row:hover{border-color:rgba(42,140,63,0.3);}
.fresh-ing-header{display:flex;align-items:center;gap:8px;margin-bottom:10px;}
.fresh-ing-emoji{font-size:20px;line-height:1;flex-shrink:0;}
.fresh-ing-name-inp{
  flex:1;min-width:0;
  border:none;background:transparent;
  font-family:'Outfit',sans-serif;font-size:13.5px;font-weight:600;
  color:var(--text);outline:none;
}
.fresh-ing-name-inp:focus{color:var(--fresh-primary);}
.fresh-ing-del{
  width:26px;height:26px;border-radius:7px;
  border:1px solid var(--border);background:var(--card2);
  color:var(--muted);font-size:16px;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  transition:all .15s;padding:0;line-height:1;flex-shrink:0;
}
.fresh-ing-del:hover{border-color:var(--r);background:var(--rl);color:var(--r);}

/* Fresh ingredient fields grid */
.fresh-ing-fields{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px;margin-bottom:8px;}
@media(max-width:400px){
  .fresh-ing-fields{grid-template-columns:1fr 1fr;}
}
.fresh-ing-field label{display:block;font-size:10px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.4px;margin-bottom:3px;}

/* Yield info */
.fresh-ing-yield{
  display:flex;justify-content:space-between;align-items:center;
  padding:6px 10px;background:rgba(42,140,63,0.07);border-radius:8px;
  font-size:11.5px;color:var(--muted);
}
.fresh-ing-yield b{color:var(--fresh-primary);font-family:'Fraunces',serif;font-size:13px;}
[data-theme="dark"] .fresh-ing-yield b{color:var(--fresh-light);}

/* Type toggle (kg/buc/L) inside ingredient */
.fresh-type-toggle{display:flex;gap:4px;}
.fresh-type-btn{
  padding:4px 9px;border:1.5px solid var(--border);
  border-radius:7px;background:var(--card);
  font-family:'Outfit',sans-serif;font-size:11px;font-weight:600;
  color:var(--muted);cursor:pointer;transition:all .15s;
}
.fresh-type-btn.active{
  border-color:var(--fresh-primary);color:var(--fresh-primary);
  background:var(--fresh-bg);
}

/* Result card — gradient citric */
.fresh-result-card{
  background:linear-gradient(135deg,#1a6b2e 0%,#2a8c3f 50%,#3db85a 100%);
  border-radius:16px;padding:16px;
  box-shadow:0 8px 24px rgba(42,140,63,0.3);
  position:relative;overflow:hidden;
}
.fresh-result-card::before{
  content:'';position:absolute;top:-50px;right:-50px;
  width:160px;height:160px;
  background:radial-gradient(circle,rgba(255,255,255,0.12),transparent 70%);
  pointer-events:none;
}
.fresh-result-header{display:flex;align-items:center;gap:12px;margin-bottom:14px;position:relative;z-index:1;}
.fresh-metrics-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px;position:relative;z-index:1;}
.fresh-metric{background:rgba(255,255,255,0.12);border-radius:11px;padding:10px 12px;}
.fresh-metric-lbl{font-size:9.5px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:rgba(255,255,255,0.75);margin-bottom:4px;}
.fresh-metric-val{font-family:'Fraunces',serif;font-size:17px;font-weight:600;color:#fff;}
.fresh-cur-lbl{font-size:11px;color:rgba(255,255,255,0.7);font-family:'Outfit',sans-serif;font-weight:400;}
.fresh-markup-row{
  display:flex;justify-content:space-between;align-items:center;
  background:rgba(255,255,255,0.1);border-radius:10px;
  padding:9px 12px;position:relative;z-index:1;
}

/* Save button — fresh green */
.fresh-save-btn{
  width:100%;display:flex;align-items:center;justify-content:center;gap:8px;
  padding:12px 16px;border:none;border-radius:13px;
  background:linear-gradient(135deg,#1a6b2e,#2a8c3f);
  color:#fff;font-family:'Outfit',sans-serif;font-size:13.5px;font-weight:600;
  cursor:pointer;box-shadow:0 4px 14px rgba(42,140,63,0.35);transition:all .2s;
}
.fresh-save-btn:hover{transform:translateY(-1px);box-shadow:0 6px 20px rgba(42,140,63,0.45);}
.fresh-save-btn:active{transform:translateY(0);}

/* Saved item */
.fresh-saved-item{
  display:flex;align-items:center;gap:10px;padding:11px 14px;
  background:var(--card2);border:1px solid var(--border);border-radius:12px;
  margin-bottom:7px;cursor:pointer;transition:all .2s;
}
.fresh-saved-item:hover{
  border-color:var(--fresh-primary);transform:translateX(3px);
  background:rgba(42,140,63,0.05);box-shadow:0 3px 10px rgba(42,140,63,0.12);
}
.fresh-saved-emoji{font-size:24px;flex-shrink:0;}
.fresh-saved-name{font-family:'Fraunces',serif;font-size:14px;font-weight:600;color:var(--text);}
.fresh-saved-cat{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--fresh-primary);margin-bottom:2px;}
[data-theme="dark"] .fresh-saved-cat{color:var(--fresh-light);}
.fresh-saved-meta{font-size:11px;color:var(--muted);}
.fresh-saved-meta b{color:var(--fresh-primary);}
[data-theme="dark"] .fresh-saved-meta b{color:var(--fresh-light);}

/* Category group header */
.fresh-cat-group{margin-bottom:.875rem;}
.fresh-cat-header{
  display:flex;align-items:center;gap:8px;padding:8px 12px;
  background:linear-gradient(135deg,rgba(42,140,63,0.1),rgba(61,184,90,0.05));
  border-radius:10px;margin-bottom:6px;border:1px solid rgba(42,140,63,0.15);
}
.fresh-cat-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:var(--fresh-primary);}
[data-theme="dark"] .fresh-cat-label{color:var(--fresh-light);}
.fresh-cat-count{margin-left:auto;font-size:10.5px;font-weight:600;color:var(--muted);background:var(--card2);padding:2px 8px;border-radius:6px;}

/* ════════════════════════════════════════════════════════ */

/* ═══ FLAVOR PAIRING — culoare magenta-purpuriu ═══ */
:root{
  --flavor-primary:#8b1a6b;
  --flavor-light:#d4478a;
  --flavor-bg:rgba(139,26,107,0.07);
  --flavor-border:rgba(139,26,107,0.2);
}
[data-theme="dark"]{
  --flavor-primary:#d4478a;
  --flavor-light:#e87ab5;
}
#secFlavor{ --sec-primary:var(--flavor-primary); }

.flavor-hero{
  background:linear-gradient(135deg,#6b1252 0%,#8b1a6b 50%,#d4478a 100%)!important;
  border:none!important;color:#fff;
  box-shadow:0 10px 30px rgba(139,26,107,0.35)!important;
  padding:1.5rem!important;position:relative;overflow:hidden;
}
.flavor-hero::before{content:'';position:absolute;top:-60px;right:-60px;width:200px;height:200px;
  background:radial-gradient(circle,rgba(255,255,255,0.1),transparent 70%);pointer-events:none;}
.flavor-hero>*{position:relative;z-index:1;}
.flavor-hero-top{display:flex;align-items:center;gap:12px;}
.flavor-hero-icon{width:46px;height:46px;border-radius:13px;background:rgba(255,255,255,0.18);
  display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.flavor-hero-title{font-family:'Fraunces',serif;font-size:20px;font-weight:600;color:#fff;}
.flavor-hero-sub{font-size:12px;color:rgba(255,255,255,0.8);margin-top:2px;}

/* Category filter — same style as Cost mode toggle */
#flavorCatBtns{
  display:flex;
  flex-wrap:wrap;
  gap:5px;
  background:var(--card);
  padding:6px;
  border-radius:16px;
  margin-top:10px;
  border:1px solid rgba(139,26,107,0.25);
  box-shadow:0 3px 12px rgba(0,0,0,0.05);
}
[data-theme="dark"] #flavorCatBtns{
  border-color:rgba(139,26,107,0.4);
}
.flavor-cat-btn{
  flex:1 1 calc(25% - 8px);
  min-width:0;
  display:flex;align-items:center;justify-content:center;gap:6px;
  padding:10px 8px;
  border:none;
  background:transparent;
  border-radius:11px;
  font-family:'Outfit',sans-serif;font-size:12.5px;font-weight:600;
  color:var(--muted);cursor:pointer;
  transition:all .25s cubic-bezier(.4,0,.2,1);
  white-space:nowrap;text-overflow:ellipsis;overflow:hidden;
}
.flavor-cat-btn:hover{color:var(--text);}
.flavor-cat-btn.active{
  background:linear-gradient(135deg,#8b1a6b,#6b1252);
  color:#fff;
  box-shadow:0 4px 14px rgba(139,26,107,0.35), inset 0 1px 0 rgba(255,255,255,0.2);
  transform:translateY(-1px);
}
@media(min-width:600px){
  .flavor-cat-btn{ flex:1 1 calc(16% - 8px); }
}

/* Ingredient cards — modern card style */
.flavor-ing-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:7px;
}
@media(min-width:480px){.flavor-ing-grid{grid-template-columns:repeat(4,1fr);}}

.flavor-ing-item{
  position:relative;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:5px;padding:12px 6px 10px;
  background:var(--card);
  border:1.5px solid var(--border);
  border-radius:14px;
  cursor:pointer;
  text-align:center;
  overflow:hidden;
  /* 3D press effect */
  box-shadow:0 2px 0 rgba(0,0,0,0.10), 0 3px 8px rgba(0,0,0,0.05);
  transform:translateY(0)
  transition:transform .18s cubic-bezier(.34,1.3,.64,1), box-shadow .18s ease,
             border-color .15s ease, background .15s ease;
}
.flavor-ing-item::before{
  content:'';position:absolute;inset:0;
  background:linear-gradient(160deg,rgba(255,255,255,0.06) 0%,transparent 60%);
  border-radius:13px;pointer-events:none;
}
.flavor-ing-item:hover{
  border-color:var(--flavor-primary);
  transform:translateY(-3px)
  box-shadow:0 8px 20px rgba(139,26,107,0.2), 0 1px 0 rgba(0,0,0,0.06);
}
.flavor-ing-item:active{
  transform:translateY(0)
  box-shadow:0 2px 6px rgba(0,0,0,0.1);
  transition-duration:.06s;
}
.flavor-ing-item.selected{
  background:linear-gradient(135deg,#6b1252,#8b1a6b,#d4478a);
  border-color:transparent;
  box-shadow:0 8px 20px rgba(139,26,107,0.45), 0 2px 0 rgba(0,0,0,0.1),
             inset 0 1px 0 rgba(255,255,255,0.2);
  transform:translateY(-4px)
}
.flavor-ing-item.selected::before{
  background:linear-gradient(160deg,rgba(255,255,255,0.14) 0%,transparent 60%);
}
/* SVG icon in card */
.flavor-ing-emoji{
  width:36px;height:36px;
  display:flex;align-items:center;justify-content:center;
  border-radius:10px;
  background:var(--card2);
  flex-shrink:0;
  transition:transform .18s cubic-bezier(.34,1.3,.64,1);
  overflow:hidden;
}
.flavor-ing-emoji svg{display:block;width:28px;height:28px;}
.flavor-ing-item:hover .flavor-ing-emoji{transform:scale(1.15) translateY(-1px);}
.flavor-ing-item.selected .flavor-ing-emoji{
  transform:scale(1.1);
  background:rgba(255,255,255,0.15);
}
/* Name */
.flavor-ing-name{
  font-family:'Outfit',sans-serif;
  font-size:10.5px;font-weight:700;
  color:var(--text);
  line-height:1.2;
  letter-spacing:0.1px;
  overflow:hidden;text-overflow:ellipsis;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;
  width:100%;
}
.flavor-ing-item.selected .flavor-ing-name{color:#fff;}
.flavor-ing-item:hover .flavor-ing-name{color:var(--flavor-primary);}
.flavor-ing-item.selected:hover .flavor-ing-name{color:#fff;}
/* Check mark on selected */
.flavor-ing-check{
  position:absolute;top:5px;right:6px;
  width:14px;height:14px;border-radius:50%;
  background:rgba(255,255,255,0.9);
  display:flex;align-items:center;justify-content:center;
  font-size:8px;color:var(--flavor-primary);font-weight:900;
  opacity:0;transition:opacity .15s;
}
.flavor-ing-item.selected .flavor-ing-check{opacity:1;}

/* Selected chips — modern pill */
.flavor-chip{
  display:inline-flex;align-items:center;gap:5px;
  padding:5px 8px 5px 6px;
  background:linear-gradient(135deg,rgba(107,18,82,0.12),rgba(212,71,138,0.1));
  border:1.5px solid rgba(139,26,107,0.3);
  color:var(--flavor-primary);
  border-radius:20px;font-size:11.5px;font-weight:700;
  backdrop-filter:blur(8px);
}
[data-theme="dark"] .flavor-chip{
  background:linear-gradient(135deg,rgba(212,71,138,0.15),rgba(139,26,107,0.1));
  color:var(--flavor-light);border-color:rgba(212,71,138,0.3);
}
.flavor-chip-emoji{
  width:20px;height:20px;display:flex;align-items:center;justify-content:center;
  border-radius:5px;background:rgba(139,26,107,0.15);overflow:hidden;flex-shrink:0;
}
.flavor-chip-emoji svg{width:16px;height:16px;display:block;}
.flavor-chip-del{
  background:rgba(139,26,107,0.15);border:none;
  color:var(--flavor-primary);
  width:17px;height:17px;border-radius:50%;cursor:pointer;font-size:11px;
  display:flex;align-items:center;justify-content:center;
  line-height:1;padding:0;transition:background .15s;
}
.flavor-chip-del:hover{background:rgba(139,26,107,0.3);}
[data-theme="dark"] .flavor-chip-del{color:var(--flavor-light);}

/* Analyze button */
.flavor-analyze-btn{
  width:100%;display:flex;align-items:center;justify-content:center;gap:9px;
  padding:14px;border:none;border-radius:14px;
  background:linear-gradient(135deg,#6b1252,#8b1a6b,#d4478a);
  color:#fff;font-family:'Outfit',sans-serif;font-size:14.5px;font-weight:700;
  cursor:pointer;letter-spacing:0.3px;
  box-shadow:0 6px 20px rgba(139,26,107,0.4), inset 0 1px 0 rgba(255,255,255,0.2);
  transform:translateY(0)
  transition:transform .2s cubic-bezier(.34,1.3,.64,1), box-shadow .2s ease;
}
.flavor-analyze-btn:hover{
  transform:translateY(-3px)
  box-shadow:0 12px 28px rgba(139,26,107,0.5), inset 0 1px 0 rgba(255,255,255,0.25);
}
.flavor-analyze-btn:active{
  transform:translateY(0)
  box-shadow:0 4px 12px rgba(139,26,107,0.3);
}


/* Result card */
.flavor-result-card{
  background:var(--card);border:1.5px solid var(--border);border-radius:16px;
  overflow:hidden;margin-bottom:10px;
}
.flavor-result-header{
  padding:14px 16px;display:flex;align-items:center;gap:12px;
}
.flavor-score-circle{
  width:64px;height:64px;border-radius:50%;display:flex;align-items:center;
  justify-content:center;flex-direction:column;flex-shrink:0;
  font-family:'Fraunces',serif;font-weight:700;
}
.flavor-score-num{font-size:22px;line-height:1;}
.flavor-score-lbl{font-size:9px;text-transform:uppercase;letter-spacing:.5px;opacity:.8;}
.flavor-result-title{font-family:'Fraunces',serif;font-size:17px;font-weight:700;color:var(--text);}
.flavor-result-verdict{font-size:12px;color:var(--muted);margin-top:2px;line-height:1.4;}

/* Aroma tags */
.flavor-aroma-section{padding:12px 16px;border-top:1px solid var(--border);}
.flavor-aroma-title{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;
  color:var(--muted);margin-bottom:8px;}
.flavor-aroma-tags{display:flex;flex-wrap:wrap;gap:5px;}
.flavor-aroma-tag{
  padding:3px 9px;border-radius:6px;font-size:11px;font-weight:600;
  background:var(--flavor-bg);color:var(--flavor-primary);border:1px solid var(--flavor-border);
}
[data-theme="dark"] .flavor-aroma-tag{color:var(--flavor-light);}
.flavor-aroma-tag.shared{background:rgba(45,140,80,0.1);color:#2d8c50;border-color:rgba(45,140,80,0.2);}
.flavor-aroma-tag.clash{background:rgba(192,57,43,0.1);color:#c0392b;border-color:rgba(192,57,43,0.2);}

/* Tips & suggestions */
.flavor-tips{padding:12px 16px;border-top:1px solid var(--border);background:var(--card2);}
.flavor-tip-row{display:flex;gap:8px;margin-bottom:8px;font-size:12.5px;line-height:1.5;}
.flavor-tip-icon{flex-shrink:0;font-size:14px;}

/* Score colors */
.score-excellent{background:linear-gradient(135deg,rgba(45,140,80,0.15),rgba(45,140,80,0.05));color:#2d8c50;}
.score-good{background:linear-gradient(135deg,rgba(196,122,10,0.15),rgba(196,122,10,0.05));color:#c47a0a;}
.score-poor{background:linear-gradient(135deg,rgba(192,57,43,0.15),rgba(192,57,43,0.05));color:#c0392b;}
.score-excellent .flavor-score-num{color:#2d8c50;}
.score-good .flavor-score-num{color:#c47a0a;}
.score-poor .flavor-score-num{color:#c0392b;}

/* Cocktail suggestions */
.flavor-cocktail-item{
  display:flex;align-items:center;gap:10px;padding:9px 12px;
  background:var(--card2);border:1px solid var(--border);border-radius:11px;margin-bottom:6px;
}
.flavor-cocktail-emoji{font-size:20px;flex-shrink:0;}
.flavor-cocktail-name{font-size:13px;font-weight:700;color:var(--text);}
.flavor-cocktail-desc{font-size:11px;color:var(--muted);margin-top:1px;}
/* ═══════════════════════════════════════════════════════════ */

/* ═══ CAPSATE — culoare violet-indigo ═══ */
#costModeCapsate{
  --caps-primary:#5c35a8;
  --caps-light:#7c5ac0;
  --caps-bg:rgba(92,53,168,0.07);
  --caps-border:rgba(92,53,168,0.2);
}
[data-theme="dark"] #costModeCapsate{
  --caps-primary:#9a7ee0;
  --caps-light:#b8a0f0;
}

/* Category buttons */
.capsate-cat-btn{
  padding:7px 12px;
  border:1.5px solid var(--border);
  background:var(--card);
  border-radius:10px;
  font-family:'Outfit',sans-serif;
  font-size:12.5px;
  font-weight:600;
  color:var(--muted);
  cursor:pointer;
  transition:all .18s;
}
.capsate-cat-btn:hover{border-color:#5c35a8;color:#5c35a8;}
.capsate-cat-btn.active{
  background:linear-gradient(135deg,#5c35a8,#7c5ac0);
  color:#fff;
  border-color:transparent;
  box-shadow:0 3px 10px rgba(92,53,168,0.3);
}
[data-theme="dark"] .capsate-cat-btn.active{
  background:linear-gradient(135deg,#6b44b8,#8a68d0);
}

/* Format buttons */
.capsate-fmt-btn{
  padding:6px 11px;
  border:1.5px solid var(--border);
  background:var(--card2);
  border-radius:9px;
  font-family:'Outfit',sans-serif;
  font-size:12px;
  font-weight:600;
  color:var(--muted);
  cursor:pointer;
  transition:all .18s;
}
.capsate-fmt-btn:hover{border-color:#5c35a8;color:#5c35a8;}
.capsate-fmt-btn.active{border-color:#5c35a8;color:#5c35a8;background:rgba(92,53,168,0.1);}

/* Preview card */
.capsate-preview{
  background:linear-gradient(135deg,rgba(92,53,168,0.07),rgba(124,90,192,0.04));
  border:1.5px solid rgba(92,53,168,0.2);
  border-radius:13px;
  padding:12px 14px;
  display:flex;
  flex-direction:column;
  gap:6px;
}
.capsate-preview-row{
  display:flex;
  justify-content:space-between;
  align-items:center;
  font-size:12.5px;
  color:var(--muted);
}
.capsate-preview-row b{
  font-family:'Fraunces',serif;
  font-size:15px;
  color:var(--text);
}

/* Category group in product list */
.capsate-cat-group{
  margin-bottom:.875rem;
}
.capsate-cat-header{
  display:flex;
  align-items:center;
  gap:8px;
  padding:8px 12px;
  background:linear-gradient(135deg,rgba(92,53,168,0.1),rgba(124,90,192,0.06));
  border-radius:10px;
  margin-bottom:6px;
  border:1px solid rgba(92,53,168,0.15);
}
.capsate-cat-label{
  font-size:11px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:0.8px;
  color:#5c35a8;
}
[data-theme="dark"] .capsate-cat-label{color:#9a7ee0;}
.capsate-cat-count{
  margin-left:auto;
  font-size:10.5px;
  font-weight:600;
  color:var(--muted);
  background:var(--card2);
  padding:2px 8px;
  border-radius:6px;
}

/* Product item card */
.capsate-prod-card{
  background:var(--card);
  border:1.5px solid var(--border);
  border-radius:13px;
  padding:12px 13px;
  margin-bottom:6px;
  position:relative;
  overflow:hidden;
  transition:all .2s;
}
.capsate-prod-card::before{
  content:'';
  position:absolute;
  top:0;left:0;
  width:4px;height:100%;
  background:linear-gradient(180deg,#5c35a8,#7c5ac0);
}
.capsate-prod-card:hover{
  border-color:rgba(92,53,168,0.3);
  box-shadow:0 3px 12px rgba(92,53,168,0.1);
}
.capsate-prod-header{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:8px;
}
.capsate-prod-icon{
  width:32px;height:32px;
  border-radius:9px;
  background:rgba(92,53,168,0.1);
  display:flex;align-items:center;justify-content:center;
  font-size:16px;
  flex-shrink:0;
}
.capsate-prod-name{
  font-size:14px;
  font-weight:700;
  color:var(--text);
  flex:1;min-width:0;
}
.capsate-prod-fmt{
  font-size:10.5px;
  color:var(--muted);
  background:var(--card2);
  padding:2px 8px;
  border-radius:6px;
  font-weight:600;
}
.capsate-prod-del{
  width:28px;height:28px;
  border-radius:8px;
  border:1px solid var(--border);
  background:var(--card2);
  color:var(--muted);
  font-size:16px;
  cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  transition:all .15s;
  flex-shrink:0;
}
.capsate-prod-del:hover{border-color:var(--r);background:var(--rl);color:var(--r);}

/* Metrics grid inside product card */
.capsate-metrics{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:6px;
}
@media(max-width:400px){
  .capsate-metrics{grid-template-columns:1fr 1fr;}
}
.capsate-metric{
  background:var(--card2);
  border-radius:9px;
  padding:7px 8px;
  text-align:center;
}
.capsate-metric-lbl{
  font-size:9px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:0.5px;
  color:var(--muted);
  margin-bottom:3px;
}
.capsate-metric-val{
  font-family:'Fraunces',serif;
  font-size:14px;
  font-weight:600;
  color:var(--text);
}

/* Saved items */
.capsate-saved-item{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  padding:11px 14px;
  background:var(--card2);
  border:1px solid var(--border);
  border-radius:12px;
  margin-bottom:7px;
  cursor:pointer;
  transition:all .2s;
}
.capsate-saved-item:hover{
  border-color:#5c35a8;
  transform:translateX(3px);
  background:rgba(92,53,168,0.05);
  box-shadow:0 3px 10px rgba(92,53,168,0.12);
}
.capsate-saved-name{font-family:'Fraunces',serif;font-size:14px;font-weight:600;color:var(--text);}
.capsate-saved-meta{font-size:11px;color:var(--muted);margin-top:2px;}
.capsate-saved-meta b{color:#5c35a8;}
[data-theme="dark"] .capsate-saved-meta b{color:#9a7ee0;}

/* ═══════════════════════════════════════════════════════════ */

/* ═══ ANALYTICS — culoare portocaliu-amber ═══ */
:root{
  --an:#b5470b;
  --an-l:#e06c2a;
  --an-bg:rgba(181,71,11,0.07);
  --an-gd:#7a2f06;
}
[data-theme="dark"]{
  --an:#e8834a;
  --an-l:#f0a070;
  --an-bg:rgba(181,71,11,0.12);
  --an-gd:#c05c28;
}

.analytics-hero{
  background:linear-gradient(135deg,#7a2f06 0%,#b5470b 50%,#e06c2a 100%)!important;
  border:none!important;color:#fff;
  box-shadow:0 8px 24px rgba(181,71,11,0.35)!important;
  padding:1rem 1.25rem!important;position:relative;overflow:hidden;
}
[data-theme="dark"] .analytics-hero{
  background:linear-gradient(135deg,#5a2008 0%,#c05c28 50%,#e8834a 100%)!important;
  box-shadow:0 8px 24px rgba(181,71,11,0.5)!important;
}
.analytics-hero::before{content:'';position:absolute;top:-40px;right:-40px;width:140px;height:140px;
  background:radial-gradient(circle,rgba(255,255,255,0.12),transparent 70%);pointer-events:none;}
.analytics-hero>*{position:relative;z-index:1;}
.analytics-hero-top{display:flex;align-items:center;gap:10px;}
.analytics-hero-icon{width:40px;height:40px;border-radius:11px;background:rgba(255,255,255,0.2);
  display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.analytics-hero-title{font-family:'Fraunces',serif;font-size:18px;font-weight:600;color:#fff;line-height:1.2;}
.analytics-hero-sub{font-size:11px;color:rgba(255,255,255,0.8);margin-top:1px;}
.analytics-refresh-btn{margin-left:auto;width:34px;height:34px;border-radius:10px;
  border:1.5px solid rgba(255,255,255,0.35);background:rgba(255,255,255,0.15);
  color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;
  flex-shrink:0;transition:all .2s;}
.analytics-refresh-btn:hover{background:rgba(255,255,255,0.28);}

/* ── KPI Cards — portocaliu ── */
.analytics-kpi-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:.875rem;}
.analytics-kpi{
  background:var(--card);border:1.5px solid var(--border);border-radius:16px;
  padding:14px 12px 12px;position:relative;overflow:hidden;
  transition:transform .18s ease, box-shadow .18s ease;
}
.analytics-kpi:active{transform:scale(0.97);}
.analytics-kpi::before{
  content:'';position:absolute;left:0;top:12px;bottom:12px;
  width:3px;border-radius:0 3px 3px 0;background:var(--an);
}
.analytics-kpi::after{
  content:'';position:absolute;bottom:-20px;right:-20px;
  width:80px;height:80px;border-radius:50%;
  background:radial-gradient(circle,var(--an-bg) 0%,transparent 70%);
  pointer-events:none;
}
.analytics-kpi-icon{font-size:22px;margin-bottom:6px;display:block;}
.analytics-kpi-val{
  font-family:'Fraunces',serif;font-size:26px;font-weight:700;
  color:var(--an);line-height:1;letter-spacing:-0.5px;
}
.analytics-kpi-lbl{font-size:9px;font-weight:700;text-transform:uppercase;
  letter-spacing:.7px;color:var(--muted);margin-top:4px;}
.analytics-kpi-sub{font-size:10px;color:var(--muted);margin-top:2px;line-height:1.4;}

/* Dark mode KPI */
[data-theme="dark"] .analytics-kpi{
  box-shadow:0 1px 0 rgba(255,255,255,0.04) inset, 0 4px 16px rgba(0,0,0,0.4);
}

/* ── Section title ── */
.analytics-section-title{
  font-family:'Fraunces',serif;font-size:14px;font-weight:600;
  color:var(--an);margin-bottom:10px;
}

/* ── Analytics Card Grid ── */
.an-card{
  background:var(--card);
  border:1.5px solid var(--border);
  border-radius:16px;
  padding:16px 14px;
  cursor:pointer;
  transition:all .2s cubic-bezier(.34,1.2,.64,1);
  user-select:none;
  -webkit-tap-highlight-color:transparent;
  touch-action:manipulation;
  position:relative;
  overflow:hidden;
}
.an-card::before{
  content:'';position:absolute;inset:0;
  background:linear-gradient(135deg,var(--an) 0%,transparent 60%);
  opacity:0;transition:opacity .2s;border-radius:16px;
}
.an-card:hover{border-color:var(--an);transform:translateY(-2px);box-shadow:0 8px 20px rgba(0,0,0,.2);}
.an-card:active{transform:scale(.97);}
.an-card.open{border-color:var(--an);background:linear-gradient(135deg,rgba(234,88,12,.08) 0%,var(--card) 100%);}
.an-card.open::before{opacity:.04;}
.an-card-icon{font-size:26px;margin-bottom:8px;display:block;line-height:1;}
.an-card-val{font-family:'Fraunces',serif;font-size:22px;font-weight:700;color:var(--an);line-height:1;margin-bottom:4px;}
.an-card-lbl{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.7px;color:var(--muted);}
.an-card-sub{font-size:10px;color:var(--muted);margin-top:3px;line-height:1.3;}
.an-card-arrow{position:absolute;top:12px;right:12px;width:20px;height:20px;border-radius:6px;background:var(--card2);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:9px;color:var(--muted);transition:transform .2s,background .2s;}
.an-card.open .an-card-arrow{transform:rotate(180deg);background:var(--an);color:#fff;border-color:var(--an);}

.an-detail-panel{
  background:var(--card);
  border:1.5px solid var(--an);
  border-radius:14px;
  padding:16px;
  margin-bottom:10px;
  animation:slideDown .2s ease;
}
.an-detail-title{
  font-size:12px;font-weight:700;text-transform:uppercase;
  letter-spacing:.6px;color:var(--muted);margin-bottom:12px;
}
.analytics-collapsible{display:none;}
.analytics-collapsible-hdr{
  display:flex;align-items:center;justify-content:space-between;
  padding:13px 16px;background:var(--card);border:1.5px solid var(--border);
  border-radius:14px;cursor:pointer;user-select:none;
  box-shadow:0 2px 0 rgba(0,0,0,0.12), 0 3px 8px rgba(0,0,0,0.06);
  transform:translateY(0)
  transition:transform .18s cubic-bezier(.34,1.2,.64,1), box-shadow .18s ease, border-color .18s ease;
}
[data-theme="dark"] .analytics-collapsible-hdr{
  box-shadow:0 2px 0 rgba(0,0,0,0.3), 0 4px 10px rgba(0,0,0,0.25);
}
.analytics-collapsible-hdr:hover{
  border-color:var(--an);
  transform:translateY(-2px)
  box-shadow:0 6px 16px rgba(0,0,0,0.12), 0 1px 0 rgba(0,0,0,0.08);
}
.analytics-collapsible-hdr:active{
  transform:translateY(0)
  box-shadow:0 2px 6px rgba(0,0,0,0.1);
}
.analytics-collapsible-hdr.open{
  border-color:var(--an);border-bottom-left-radius:0;border-bottom-right-radius:0;
  background:linear-gradient(135deg,var(--an-bg) 0%,var(--card) 100%);
  box-shadow:none;transform:none;
}
.analytics-collapsible-title{
  font-size:13.5px;font-weight:700;color:var(--text);
  display:flex;align-items:center;gap:8px;
}
.analytics-collapsible-arrow{
  width:22px;height:22px;border-radius:7px;
  background:var(--card2);border:1px solid var(--border);
  display:flex;align-items:center;justify-content:center;
  font-size:10px;color:var(--muted);
  transition:transform .25s cubic-bezier(.34,1.2,.64,1), background .18s ease;
  flex-shrink:0;
}
.analytics-collapsible-hdr.open .analytics-collapsible-arrow{
  transform:rotate(180deg);background:var(--an);color:#fff;border-color:var(--an);
}
.analytics-collapsible-body{
  display:none;padding:14px 16px;background:var(--card);
  border:1.5px solid var(--an);border-top:none;
  border-bottom-left-radius:14px;border-bottom-right-radius:14px;
  animation:slideDown .2s ease;
}
.analytics-collapsible-body.open{display:block;}
@keyframes slideDown{from{opacity:0;transform:translateY(-6px);}to{opacity:1;transform:translateY(0);}}

/* ── Per-tab active colors ── */

/* Analytics — portocaliu-amber */
#bnAnalytics.active{
  background:linear-gradient(135deg,#7a2f06,#b5470b,#e06c2a)!important;
  border-color:#b5470b!important;
  box-shadow:0 10px 24px rgba(181,71,11,0.5), 0 2px 0 rgba(0,0,0,0.12), inset 0 1px 0 rgba(255,255,255,0.25)!important;
}
#bnAnalytics.active:hover{
  box-shadow:0 14px 28px rgba(181,71,11,0.6), 0 2px 0 rgba(0,0,0,0.1), inset 0 1px 0 rgba(255,255,255,0.3)!important;
}

/* Cost — verde smarald */
#bnCost.active{
  background:linear-gradient(135deg,#1a5c30,#2d8c50,#45b568)!important;
  border-color:#2d8c50!important;
  box-shadow:0 10px 24px rgba(45,140,80,0.5), 0 2px 0 rgba(0,0,0,0.12), inset 0 1px 0 rgba(255,255,255,0.25)!important;
}
#bnCost.active:hover{
  box-shadow:0 14px 28px rgba(45,140,80,0.6), 0 2px 0 rgba(0,0,0,0.1), inset 0 1px 0 rgba(255,255,255,0.3)!important;
}

/* Stoc — teal-petrol */
#bnStock.active{
  background:linear-gradient(135deg,#084f52,#0d7377,#1a9aae)!important;
  border-color:#0d7377!important;
  box-shadow:0 10px 24px rgba(13,115,119,0.5), 0 2px 0 rgba(0,0,0,0.12), inset 0 1px 0 rgba(255,255,255,0.25)!important;
}
#bnStock.active:hover{
  box-shadow:0 14px 28px rgba(13,115,119,0.6), 0 2px 0 rgba(0,0,0,0.1), inset 0 1px 0 rgba(255,255,255,0.3)!important;
}

/* ABV — violet-indigo */
#bnAbv.active{
  background:linear-gradient(135deg,#4a2280,#6e3db5,#9265d5)!important;
  border-color:#6e3db5!important;
  box-shadow:0 10px 24px rgba(110,61,181,0.5), 0 2px 0 rgba(0,0,0,0.12), inset 0 1px 0 rgba(255,255,255,0.25)!important;
}
#bnAbv.active:hover{
  box-shadow:0 14px 28px rgba(110,61,181,0.6), 0 2px 0 rgba(0,0,0,0.1), inset 0 1px 0 rgba(255,255,255,0.3)!important;
}

/* Pre-Batch — coral-roșu cald, diferit de toate celelalte tab-uri */
#bnPrebatch.active{
  background:linear-gradient(135deg,#7a1f2a,#b52d3a,#d4454f)!important;
  border-color:#b52d3a!important;
  box-shadow:0 10px 24px rgba(181,45,58,0.5), 0 2px 0 rgba(0,0,0,0.12), inset 0 1px 0 rgba(255,255,255,0.25)!important;
}
#bnPrebatch.active:hover{
  box-shadow:0 14px 28px rgba(181,45,58,0.6), 0 2px 0 rgba(0,0,0,0.1), inset 0 1px 0 rgba(255,255,255,0.3)!important;
}

/* Super Juice — amber-portocaliu ca hero-ul interior */



/* Arome — magenta-purpuriu */
#bnFlavor.active{
  background:linear-gradient(135deg,#6b1252,#8b1a6b,#d4478a)!important;
  border-color:#8b1a6b!important;
  box-shadow:0 10px 24px rgba(139,26,107,0.5), 0 2px 0 rgba(0,0,0,0.12), inset 0 1px 0 rgba(255,255,255,0.25)!important;
}
#bnFlavor.active:hover{
  box-shadow:0 14px 28px rgba(139,26,107,0.6), 0 2px 0 rgba(0,0,0,0.1), inset 0 1px 0 rgba(255,255,255,0.3)!important;
}

/* Remove the generic green active — each tab has its own color */
.bnav-btn.active{
  background:var(--g);
  color:#fff;
  border-color:var(--g);
  transform:translateY(-5px)
  box-shadow:0 10px 24px rgba(45,140,80,0.45), 0 2px 0 rgba(0,0,0,0.12), inset 0 1px 0 rgba(255,255,255,0.25);
}


/* Top products */
.analytics-top-item{display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid var(--border);}
.analytics-top-item:last-child{border-bottom:none;}
.analytics-top-rank{width:26px;height:26px;border-radius:8px;background:var(--an-bg);
  font-family:'Fraunces',serif;font-size:12px;font-weight:700;color:var(--an);
  display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.analytics-top-rank.gold{background:linear-gradient(135deg,#f5d020,#f0a500);color:#fff;}
.analytics-top-rank.silver{background:linear-gradient(135deg,#bdc3c7,#95a5a6);color:#fff;}
.analytics-top-rank.bronze{background:linear-gradient(135deg,#cd7f32,#a0522d);color:#fff;}
.analytics-top-name{flex:1;min-width:0;font-size:13px;font-weight:600;color:var(--text);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.analytics-top-cat{font-size:10px;color:var(--muted);background:var(--card2);padding:2px 7px;border-radius:5px;flex-shrink:0;}
.analytics-margin-bar-wrap{width:72px;flex-shrink:0;}
.analytics-margin-bar{height:5px;border-radius:3px;background:var(--border);overflow:hidden;}
.analytics-margin-fill{height:100%;border-radius:3px;background:linear-gradient(90deg,var(--an),var(--an-l));}
.analytics-margin-val{font-family:'Fraunces',serif;font-size:12px;font-weight:700;color:var(--an);text-align:right;margin-top:2px;}

/* Stock/sales chart bars — portocaliu */
.analytics-chart-bar{height:100%;border-radius:6px;min-width:4px;
  background:linear-gradient(90deg,var(--an),var(--an-l));
  transition:width .5s ease;display:flex;align-items:center;padding-left:6px;}
.analytics-chart-val{font-size:10.5px;font-weight:700;color:#fff;white-space:nowrap;}
.analytics-chart-date{width:55px;font-size:10px;color:var(--muted);flex-shrink:0;}

/* Alerts */
.analytics-alert-item{display:flex;align-items:center;gap:10px;padding:10px 12px;
  background:rgba(181,71,11,0.06);border:1px solid rgba(181,71,11,0.2);border-radius:11px;margin-bottom:6px;}
.analytics-alert-icon{font-size:20px;flex-shrink:0;}
.analytics-alert-name{font-size:13px;font-weight:600;color:var(--text);}
.analytics-alert-detail{font-size:11px;color:var(--an);margin-top:1px;}
.analytics-alert-actions{margin-left:auto;display:flex;gap:6px;flex-shrink:0;}
.analytics-min-inp{width:60px;border:1.5px solid var(--border);border-radius:8px;background:var(--inp);
  color:var(--text);font-family:'Fraunces',serif;font-size:13px;padding:4px 6px;text-align:center;outline:none;}
.analytics-min-inp:focus{border-color:var(--an);}

/* Stock product buttons */
.analytics-prod-btn{padding:5px 11px;border:1.5px solid var(--border);border-radius:8px;
  background:var(--card2);font-family:'Outfit',sans-serif;font-size:11.5px;font-weight:600;
  color:var(--muted);cursor:pointer;transition:all .15s;white-space:nowrap;}
.analytics-prod-btn.active{border-color:var(--an);color:var(--an);background:var(--an-bg);}

/* Stoc disponibil */
.analytics-avail-item{padding:10px 12px;background:var(--card2);border:1px solid var(--border);
  border-radius:12px;margin-bottom:7px;}
.analytics-avail-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px;}
.analytics-avail-name{font-size:13px;font-weight:600;color:var(--text);}
.analytics-avail-badge{font-size:11px;font-weight:700;padding:3px 9px;border-radius:6px;}
.analytics-avail-badge.ok{background:rgba(45,140,80,0.1);color:#2d8c50;}
.analytics-avail-badge.low{background:rgba(181,71,11,0.1);color:var(--an);}
.analytics-avail-badge.empty{background:rgba(192,57,43,0.1);color:#c0392b;}
.analytics-avail-detail{font-size:11px;color:var(--muted);}
/* ═══════════════════════════════════════════════════════════ */



/* Top products list */
.analytics-top-item{display:flex;align-items:center;gap:10px;padding:9px 0;
  border-bottom:1px solid var(--border);}
.analytics-top-item:last-child{border-bottom:none;}
.analytics-top-rank{width:24px;height:24px;border-radius:7px;background:var(--an-bg);
  font-family:'Fraunces',serif;font-size:12px;font-weight:700;color:var(--an);
  display:flex;align-items:center;justify-content:center;flex-shrink:0;}
[data-theme="dark"] .analytics-top-rank{color:var(--an-l);}
.analytics-top-rank.gold{background:linear-gradient(135deg,#f5d020,#f0a500);color:#fff;}
.analytics-top-rank.silver{background:linear-gradient(135deg,#bdc3c7,#95a5a6);color:#fff;}
.analytics-top-rank.bronze{background:linear-gradient(135deg,#cd7f32,#a0522d);color:#fff;}
.analytics-top-name{flex:1;min-width:0;font-size:13.5px;font-weight:600;color:var(--text);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.analytics-top-cat{font-size:10px;color:var(--muted);background:var(--card2);
  padding:2px 7px;border-radius:5px;flex-shrink:0;}
.analytics-margin-bar-wrap{width:80px;flex-shrink:0;}
.analytics-margin-bar{height:6px;border-radius:3px;background:var(--border);overflow:hidden;}
.analytics-margin-fill{height:100%;border-radius:3px;background:linear-gradient(90deg,var(--an),var(--an-l));}
.analytics-margin-val{font-family:'Fraunces',serif;font-size:12.5px;font-weight:700;color:var(--an);
  text-align:right;margin-top:2px;}
[data-theme="dark"] .analytics-margin-val{color:var(--an-l);}

/* Stock chart */
.analytics-chart-wrap{min-width:400px;}
.analytics-chart-row{display:flex;align-items:center;gap:8px;margin-bottom:8px;}
.analytics-chart-label{width:90px;font-size:11px;color:var(--muted);flex-shrink:0;text-align:right;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.analytics-chart-bar-wrap{flex:1;height:22px;background:var(--card2);border-radius:6px;overflow:hidden;position:relative;}
.analytics-chart-bar{height:100%;border-radius:6px;min-width:4px;
  background:linear-gradient(90deg,var(--an),var(--an-l));
  transition:width .5s ease;display:flex;align-items:center;padding-left:6px;}
.analytics-chart-val{font-size:10.5px;font-weight:700;color:#fff;white-space:nowrap;}
.analytics-chart-date{width:55px;font-size:10px;color:var(--muted);flex-shrink:0;}

/* Stock vs Recipes */
.analytics-avail-item{padding:10px 12px;background:var(--card2);border:1px solid var(--border);
  border-radius:12px;margin-bottom:7px;}
.analytics-avail-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px;}
.analytics-avail-name{font-size:13.5px;font-weight:600;color:var(--text);}
.analytics-avail-badge{font-size:11px;font-weight:700;padding:3px 9px;border-radius:6px;}
.analytics-avail-badge.ok{background:rgba(45,140,80,0.12);color:#2d8c50;}
.analytics-avail-badge.low{background:rgba(196,122,10,0.12);color:#c47a0a;}
.analytics-avail-badge.empty{background:rgba(192,57,43,0.12);color:#c0392b;}
.analytics-avail-detail{font-size:11px;color:var(--muted);line-height:1.5;}
.analytics-avail-detail b{color:var(--text);}

/* Alert items */
.analytics-alert-item{display:flex;align-items:center;gap:10px;padding:10px 12px;
  background:rgba(192,57,43,0.06);border:1px solid rgba(192,57,43,0.2);border-radius:11px;margin-bottom:6px;}
.analytics-alert-icon{font-size:20px;flex-shrink:0;}
.analytics-alert-name{font-size:13px;font-weight:600;color:var(--text);}
.analytics-alert-detail{font-size:11px;color:#c0392b;margin-top:1px;}
.analytics-alert-actions{margin-left:auto;display:flex;gap:6px;flex-shrink:0;}
.analytics-min-inp{width:60px;border:1.5px solid var(--border);border-radius:8px;background:var(--inp);
  color:var(--text);font-family:'Fraunces',serif;font-size:13px;padding:4px 6px;text-align:center;outline:none;}
.analytics-min-inp:focus{border-color:var(--an);}

/* Stock product buttons */
.analytics-prod-btn{padding:5px 11px;border:1.5px solid var(--border);border-radius:8px;
  background:var(--card2);font-family:'Outfit',sans-serif;font-size:11.5px;font-weight:600;
  color:var(--muted);cursor:pointer;transition:all .15s;white-space:nowrap;}
.analytics-prod-btn.active{border-color:var(--an);color:var(--an);
  background:var(--an-bg);}

/* ═══════════════════════════════════════════════════════════ */

/* STOC — culoare teal petrol */
:root{
  --stock-primary:#0f6b7a;
  --stock-light:#1a9aae;
  --stock-bg:#e8f6f8;
  --stock-border:rgba(15,107,122,0.2);
}
[data-theme="dark"]{
  --stock-bg:#081417;
  --stock-border:rgba(26,154,174,0.25);
}
#secStock{ --sec-primary:var(--stock-primary); }


/* ── Pie chart marjă ── */
.margin-pie-wrap{
  display:flex;align-items:center;gap:16px;
  padding:12px 14px;
  background:var(--card2);border-radius:13px;margin-top:10px;
}
.margin-pie-svg{flex-shrink:0;}
.margin-pie-legend{flex:1;min-width:0;}
.margin-pie-leg-row{display:flex;align-items:center;gap:6px;margin-bottom:4px;font-size:11.5px;color:var(--text);}
.margin-pie-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0;}

.stock-hero{
  background:linear-gradient(135deg,var(--stock-primary) 0%,var(--stock-light) 100%)!important;
  border:none!important;
  color:#fff;
  box-shadow:0 10px 30px rgba(15,107,122,0.3)!important;
  padding:1.5rem!important;
  position:relative;overflow:hidden;
}
.stock-hero::before{content:'';position:absolute;top:-60px;right:-60px;width:200px;height:200px;background:radial-gradient(circle,rgba(255,255,255,0.12),transparent 70%);pointer-events:none;}
.stock-hero>*{position:relative;z-index:1;}
.stock-hero-top{display:flex;align-items:center;gap:14px;margin-bottom:16px;}
.stock-hero-icon{width:48px;height:48px;border-radius:13px;background:rgba(255,255,255,0.18);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.stock-hero-title{font-family:'Fraunces',serif;font-size:22px;font-weight:600;color:#fff;letter-spacing:-0.3px;}
.stock-hero-sub{font-size:12px;color:rgba(255,255,255,0.8);margin-top:2px;}
.stock-meta-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.stock-meta-field{display:flex;flex-direction:column;gap:4px;}
.stock-meta-label{font-size:10.5px;font-weight:700;color:rgba(255,255,255,0.8);text-transform:uppercase;letter-spacing:0.6px;}
.stock-meta-input{background:rgba(255,255,255,0.95);border:none;border-radius:10px;padding:9px 12px;font-family:'Outfit',sans-serif;font-size:13.5px;color:#1a1a1a;outline:none;width:100%;box-sizing:border-box;}
.stock-meta-input:focus{background:#fff;box-shadow:0 0 0 3px rgba(255,255,255,0.35);}

.stock-controls{display:flex;justify-content:space-between;align-items:center;gap:6px;margin-bottom:.875rem;flex-wrap:wrap;}
.stock-controls>div{display:flex;gap:5px;flex-wrap:wrap;}
/* stock-add-btn moved to sab section */
.stock-action-btn{display:flex;align-items:center;gap:5px;padding:8px 10px;border:1.5px solid var(--border);background:var(--card);border-radius:11px;font-family:'Outfit',sans-serif;font-size:11.5px;font-weight:600;color:var(--muted);cursor:pointer;transition:all .18s;white-space:nowrap;}
.stock-action-btn:hover{border-color:var(--stock-primary);color:var(--stock-primary);background:var(--stock-bg);}
.stock-word-btn:hover{border-color:var(--stock-primary);color:var(--stock-primary);}
.chart-period-btn{padding:5px 12px;border:1.5px solid var(--border);border-radius:8px;background:var(--card2);color:var(--muted);font-family:'Outfit',sans-serif;font-size:11px;font-weight:600;cursor:pointer;transition:all .15s;}
.chart-period-btn:hover{border-color:var(--g);color:var(--g);}
.chart-period-active{border-color:var(--g)!important;color:var(--g)!important;background:rgba(45,140,80,.08)!important;}
/* ── PLAN LOCAL — Floor Plan Editor ─────────────────── */
.mese-tool-btn{padding:6px 11px;border:1.5px solid var(--border);border-radius:9px;background:var(--card2);color:var(--muted);font-family:'Outfit',sans-serif;font-size:11px;font-weight:600;cursor:pointer;transition:all .15s;white-space:nowrap;-webkit-tap-highlight-color:transparent;}
.mese-tool-btn:hover,.mese-tool-btn:active{border-color:#2563eb;color:#2563eb;background:rgba(37,99,235,.08);}
.mese-el{position:absolute;user-select:none;-webkit-user-select:none;transition:filter .15s;}
.mese-el:active{filter:brightness(1.15);}
.mese-ctx{position:fixed;background:var(--card);border:1.5px solid var(--border);border-radius:16px;box-shadow:0 16px 48px rgba(0,0,0,.4);z-index:9800;overflow:hidden;min-width:180px;}
.mese-ctx-item{padding:12px 16px;font-family:'Outfit',sans-serif;font-size:13px;color:var(--text);cursor:pointer;display:flex;align-items:center;gap:10px;-webkit-tap-highlight-color:transparent;}
.mese-ctx-item:hover,.mese-ctx-item:active{background:var(--card2);}
.mese-ctx-sep{height:1px;background:var(--border);}
.order-cat-btn{padding:11px 8px;border:2px solid #2d8c50;border-radius:12px;background:#1a4a2e;color:#fff;font-family:'Outfit',sans-serif;font-size:13px;font-weight:700;cursor:pointer;transition:all .18s;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-webkit-tap-highlight-color:transparent;text-align:center;}
.order-cat-active{border-color:#2d8c50!important;color:#fff!important;background:linear-gradient(135deg,#2d8c50,#0f5f4a)!important;box-shadow:0 4px 14px rgba(45,140,80,.45)!important;transform:translateY(-1px)!important;}
.order-item-card{display:flex;align-items:center;gap:12px;padding:11px 14px;background:var(--card2);border-radius:13px;margin-bottom:7px;cursor:pointer;border:1.5px solid transparent;transition:all .15s;-webkit-tap-highlight-color:transparent;}
.order-item-card:hover,.order-item-card:active{border-color:#2563eb;background:rgba(37,99,235,.06);}
.cf-period-btn{padding:5px 10px;border:1.5px solid var(--border);border-radius:8px;background:var(--card2);color:var(--muted);font-family:'Outfit',sans-serif;font-size:11px;font-weight:600;cursor:pointer;transition:all .15s;white-space:nowrap;}
.cf-period-active{border-color:#10b981!important;color:#10b981!important;background:rgba(16,185,129,.08)!important;}
.cf-tab-btn{flex:1;padding:6px 4px;border:none;border-radius:7px;background:transparent;color:rgba(255,255,255,.6);font-family:'Outfit',sans-serif;font-size:11px;font-weight:600;cursor:pointer;transition:all .15s;text-align:center;-webkit-tap-highlight-color:transparent;}
.cf-tab-active{background:rgba(255,255,255,.2)!important;color:#fff!important;font-weight:700!important;}
.cf-type-btn{padding:4px 9px;border:1.5px solid var(--border);border-radius:7px;background:transparent;color:var(--muted);font-family:'Outfit',sans-serif;font-size:10.5px;font-weight:600;cursor:pointer;transition:all .12s;}
.cf-type-active{border-color:#10b981!important;color:#10b981!important;}
.cf-tx-row{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--border);}
.cf-tx-row:last-child{border-bottom:none;}
.cf-tx-icon{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0;}
.cf-tx-name{font-size:13px;font-weight:600;color:var(--text);}
.cf-tx-meta{font-size:10.5px;color:var(--muted);}
.cf-tx-amt{font-family:'Fraunces',serif;font-size:15px;font-weight:700;margin-left:auto;white-space:nowrap;}
.cf-cat-row{display:flex;align-items:center;gap:8px;margin-bottom:8px;}
.cf-cat-bar-wrap{flex:1;height:6px;background:var(--card2);border-radius:3px;overflow:hidden;}
.cf-cat-bar{height:100%;border-radius:3px;transition:width .4s ease;}
/* Stock Action Buttons — 2-row wrap */
/* ── Stoc Action Buttons — 2 rânduri, verde unic ── */
.sab-row{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:6px;}
.sab-half{min-width:0;}

/* Vânzări real-time widget */
#stockRealtimeBar{display:flex;gap:8px;padding:8px 12px;background:linear-gradient(135deg,rgba(30,58,95,.4),rgba(37,99,235,.2));border-radius:12px;border:1px solid rgba(37,99,235,.25);margin-bottom:8px;align-items:center;flex-wrap:wrap;}
.rt-kpi{display:flex;flex-direction:column;align-items:center;min-width:70px;}
.rt-kpi-val{font-family:'Fraunces',serif;font-size:16px;font-weight:700;}
.rt-kpi-lbl{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.5px;margin-top:1px;}

/* Buton de baza */
.sab{
  display:flex;align-items:center;justify-content:center;
  padding:11px 3px;
  border:none;
  border-radius:14px;
  font-family:'Outfit',sans-serif;
  font-size:11.5px;
  font-weight:700;
  cursor:pointer;
  transition:transform .12s;
  white-space:normal;
  overflow:hidden;
  text-align:center;
  word-break:break-word;
  hyphens:auto;
  -webkit-tap-highlight-color:transparent;
  touch-action:manipulation;
  width:100%;
  min-width:0;
  line-height:1.25;
}
.sab svg{display:none;}
.sab:active{transform:scale(.95);}

/* Toate butoanele — verde solid, text alb */
.sab-primary,.sab-secondary{
  background:#2d8c50;
  color:#fff !important;
  border:none;
  box-shadow:none;
}
.sab-primary:active,.sab-secondary:active{background:#236e3f;}
.sab-active{background:#1a5c35 !important;outline:2px solid #fff;outline-offset:1px;}
.stock-add-btn{display:none;}

.stock-table-card{padding:0!important;overflow:hidden;}
.stock-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin;}
.stock-table{width:100%;border-collapse:collapse;min-width:460px;}
.stock-table thead tr{background:linear-gradient(135deg,rgba(15,107,122,0.08),rgba(26,154,174,0.05));}
.stock-table th{padding:8px 5px;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:0.5px;color:var(--stock-primary);border-bottom:2px solid var(--stock-border);white-space:nowrap;text-align:center;}
[data-theme="dark"] .stock-table th{color:var(--stock-light);}
.stock-table th.st-name{text-align:left;padding-left:10px;}
.stock-table td{padding:7px 4px;border-bottom:1px solid var(--border);vertical-align:middle;text-align:center;}
.stock-table tbody tr:last-child td{border-bottom:none;}
.stock-table tbody tr:hover{background:rgba(15,107,122,0.04);}
[data-theme="dark"] .stock-table tbody tr:hover{background:rgba(26,154,174,0.06);}

.st-name{text-align:left!important;min-width:140px;max-width:240px;}
@media(max-width:600px){.st-name{min-width:110px;max-width:170px;}}

/* Name input in table */
.stock-name-inp{width:100%;border:none;background:transparent;font-family:'Outfit',sans-serif;font-size:13.5px;font-weight:600;color:var(--text);padding:2px 4px;outline:none;border-radius:6px;min-width:90px;}
.stock-name-inp:focus{background:rgba(15,107,122,0.07);box-shadow:0 0 0 2px rgba(15,107,122,0.2);}

/* Unit select */
.stock-unit-sel{border:1.5px solid var(--border);border-radius:8px;background:var(--inp);color:var(--text);font-family:'Outfit',sans-serif;font-size:12px;font-weight:600;padding:4px 6px;outline:none;cursor:pointer;width:100%;}
.stock-unit-sel:focus{border-color:var(--stock-primary);}

/* Number inputs */
.stock-num-inp{width:100%;border:1.5px solid var(--border);background:var(--inp);border-radius:8px;font-family:'Fraunces',serif;font-size:14px;color:var(--text);padding:5px 6px;outline:none;text-align:center;}
.stock-num-inp:focus{border-color:var(--stock-primary);box-shadow:0 0 0 2px rgba(15,107,122,0.12);}
.stock-num-inp.st-initial-inp:focus{border-color:#2272b0;}
.stock-num-inp.st-in-inp:focus{border-color:#2d8c50;}
.stock-num-inp.st-out-inp:focus{border-color:#c0392b;}
.stock-num-inp.st-sales-inp:focus{border-color:#c47a0a;}

/* Final stock cell */
.stock-final-cell{font-family:'Fraunces',serif;font-size:15px;font-weight:700;color:var(--stock-primary);padding:6px 8px;border-radius:8px;background:var(--stock-bg);min-width:60px;display:inline-block;text-align:center;line-height:1.2;}
[data-theme="dark"] .stock-final-cell{color:var(--stock-light);}
.stock-final-cell.negative{color:var(--r);background:var(--rl);}

/* Delete button */
.stock-del-btn{width:28px;height:28px;border-radius:7px;border:1px solid var(--border);background:var(--card2);color:var(--muted);font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s;padding:0;line-height:1;}
.stock-del-btn:hover{border-color:var(--r);background:var(--rl);color:var(--r);}

/* Empty state */
.stock-empty{display:flex;flex-direction:column;align-items:center;gap:10px;padding:32px 20px;color:var(--muted);font-size:13px;text-align:center;line-height:1.5;}

/* Saved sheets list */
.stock-sheet-item{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:11px 14px;background:var(--card2);border:1px solid var(--border);border-radius:12px;margin-bottom:7px;cursor:pointer;transition:all .2s;}
.stock-sheet-item:hover{border-color:var(--stock-primary);transform:translateX(3px);background:linear-gradient(135deg,rgba(15,107,122,0.06),rgba(26,154,174,0.03));box-shadow:0 3px 10px rgba(15,107,122,0.12);}
.stock-sheet-name{font-family:'Fraunces',serif;font-size:14px;font-weight:600;color:var(--text);}
.stock-sheet-meta{font-size:11px;color:var(--muted);margin-top:2px;}
.stock-sheet-meta b{color:var(--stock-primary);}
[data-theme="dark"] .stock-sheet-meta b{color:var(--stock-light);}
.stock-sheet-acts{display:flex;gap:5px;flex-shrink:0;}
.stock-sheet-btn{width:32px;height:32px;border-radius:8px;border:1.5px solid var(--border);background:var(--card);color:var(--muted);font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s;}
.stock-sheet-btn:hover{border-color:var(--r);color:var(--r);background:var(--rl);}



/* Coffee module */
/* ═══ COFFEE RESULTS — premium colorful showcase ═══ */
.coffee-results-card{
  background:linear-gradient(135deg,
    rgba(45,140,80,0.08) 0%,
    rgba(139,69,19,0.05) 50%,
    rgba(232,163,64,0.06) 100%) !important;
  border:1.5px solid rgba(45,140,80,0.2) !important;
  padding:1.25rem !important;
  position:relative;
  overflow:hidden;
}
[data-theme="dark"] .coffee-results-card{
  background:linear-gradient(135deg,
    rgba(45,140,80,0.15) 0%,
    rgba(139,69,19,0.1) 50%,
    rgba(232,163,64,0.08) 100%) !important;
  border-color:rgba(45,140,80,0.35) !important;
}
.coffee-results-card::before{
  content:'';
  position:absolute;
  top:-60px;right:-60px;
  width:180px;height:180px;
  background:radial-gradient(circle, rgba(212,164,24,0.1), transparent 70%);
  pointer-events:none;
  z-index:0;
}
.coffee-results-card > *{position:relative;z-index:1;}

/* Header with icon */
.coffee-results-header{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:16px;
}
.coffee-results-icon{
  width:40px;height:40px;
  border-radius:12px;
  background:linear-gradient(135deg, #2d8c50, #0f5f4a);
  color:#fff;
  display:flex;align-items:center;justify-content:center;
  flex-shrink:0;
  box-shadow:0 4px 12px rgba(45,140,80,0.3);
}
.coffee-results-title-wrap{flex:1;min-width:0;}
.coffee-results-title{
  font-family:'Fraunces',serif;
  font-size:17px;
  font-weight:600;
  color:var(--text);
  letter-spacing:-0.2px;
  line-height:1.2;
}
.coffee-results-sub{
  font-size:11.5px;
  color:var(--muted);
  margin-top:2px;
}

/* Metric tiles grid */
.coffee-metric-tiles{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  margin-bottom:16px;
}
.coffee-metric-tile{
  background:var(--card);
  border:1px solid var(--border);
  border-radius:13px;
  padding:12px 13px;
  position:relative;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  transition:all .2s;
}
.coffee-metric-tile:hover{
  transform:translateY(-1px);
  box-shadow:0 4px 14px rgba(0,0,0,0.08);
}
.coffee-metric-tile::before{
  content:'';
  position:absolute;
  top:0;left:0;
  width:4px;height:100%;
  background:var(--tile-accent,#2d8c50);
}
.tile-cost{--tile-accent:#2d8c50;}
.tile-shot{--tile-accent:#6b3410;}
.tile-vat{--tile-accent:#c47a0a;}
.tile-profit{--tile-accent:#d4a418;}

.coffee-metric-icon{
  width:26px;height:26px;
  border-radius:8px;
  background:var(--tile-accent,#2d8c50);
  color:#fff;
  display:flex;align-items:center;justify-content:center;
  flex-shrink:0;
  margin-bottom:6px;
  opacity:0.85;
}
.coffee-metric-lbl{
  font-size:10.5px;
  font-weight:700;
  color:var(--muted);
  text-transform:uppercase;
  letter-spacing:0.7px;
  margin-bottom:3px;
}
.coffee-metric-val{
  font-family:'Fraunces',serif;
  font-size:19px;
  font-weight:600;
  color:var(--text);
  line-height:1.1;
  display:flex;
  align-items:baseline;
  gap:4px;
  flex-wrap:wrap;
}
.coffee-metric-cur{
  font-size:11px;
  font-weight:400;
  color:var(--muted);
  font-family:'Outfit',sans-serif;
}
.tile-profit .coffee-metric-val{color:#2d8c50;}
[data-theme="dark"] .tile-profit .coffee-metric-val{color:#5ed085;}

/* Margin showcase — center-piece centerpiece */
.coffee-margin-showcase{
  background:var(--card);
  border-radius:14px;
  padding:14px 16px;
  border:1px solid var(--border);
  margin-bottom:14px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.04);
}
.coffee-margin-header{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  margin-bottom:10px;
  gap:12px;
}
.coffee-margin-title-wrap{flex:1;min-width:0;}
.coffee-margin-title{
  font-size:12px;
  font-weight:700;
  color:var(--muted);
  text-transform:uppercase;
  letter-spacing:0.8px;
  line-height:1.2;
}
.coffee-margin-subtitle{
  font-size:10.5px;
  color:var(--muted);
  opacity:0.75;
  margin-top:2px;
  font-style:italic;
}
.coffee-margin-pct{
  font-family:'Fraunces',serif;
  font-size:28px;
  font-weight:700;
  color:var(--text);
  transition:color .3s ease;
  line-height:1;
  flex-shrink:0;
}

/* Markup (adaos comercial) — secondary metric below margin */
.coffee-markup-row{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  margin-top:12px;
  padding:10px 12px;
  background:linear-gradient(135deg, rgba(212,164,24,0.08), rgba(232,163,64,0.05));
  border:1px solid rgba(212,164,24,0.25);
  border-radius:11px;
}
[data-theme="dark"] .coffee-markup-row{
  background:linear-gradient(135deg, rgba(212,164,24,0.12), rgba(232,163,64,0.08));
  border-color:rgba(240,200,72,0.3);
}
.coffee-markup-info{flex:1;min-width:0;}
.coffee-markup-lbl{
  font-size:11.5px;
  font-weight:700;
  color:#c47a0a;
  text-transform:uppercase;
  letter-spacing:0.6px;
  line-height:1.2;
}
[data-theme="dark"] .coffee-markup-lbl{color:#f0c848;}
.coffee-markup-hint{
  font-size:10.5px;
  color:var(--muted);
  margin-top:2px;
  font-style:italic;
  line-height:1.3;
}
.coffee-markup-val{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:2px;
  flex-shrink:0;
}
.coffee-markup-val > span:first-child{
  font-family:'Fraunces',serif;
  font-size:18px;
  font-weight:700;
  color:#c47a0a;
  line-height:1;
}
[data-theme="dark"] .coffee-markup-val > span:first-child{color:#f0c848;}
.coffee-markup-x{
  font-size:11px;
  font-weight:700;
  color:var(--muted);
  letter-spacing:0.3px;
  background:rgba(0,0,0,0.05);
  padding:2px 7px;
  border-radius:6px;
}
[data-theme="dark"] .coffee-markup-x{background:rgba(255,255,255,0.08);}

.coffee-margin-bar{
  width:100%;
  height:12px;
  background:var(--border);
  border-radius:8px;
  overflow:hidden;
  margin-bottom:8px;
  box-shadow:inset 0 1px 3px rgba(0,0,0,0.15);
}
.coffee-margin-fill{
  height:100%;
  background:linear-gradient(90deg, #e55050 0%, #e8a340 50%, #2d8c50 85%);
  border-radius:8px;
  transition:width .6s cubic-bezier(.4,0,.2,1);
  box-shadow:0 0 10px rgba(45,140,80,0.35);
  position:relative;
}
.coffee-margin-fill::after{
  content:'';
  position:absolute;
  top:0;left:0;right:0;
  height:50%;
  background:linear-gradient(180deg, rgba(255,255,255,0.3), transparent);
}
.coffee-margin-scale{
  display:flex;
  justify-content:space-between;
  font-size:10px;
  font-weight:600;
  color:var(--muted);
}
.coffee-margin-tip{
  margin-top:10px;
  padding:9px 13px;
  border-radius:10px;
  font-size:12px;
  font-weight:500;
  text-align:center;
  transition:all .3s ease;
  display:none;
  line-height:1.4;
}
.coffee-margin-tip.show{display:block;}
.coffee-margin-tip.tip-good{
  background:rgba(45,140,80,0.12);
  color:#2d8c50;
  border:1px solid rgba(45,140,80,0.3);
}
[data-theme="dark"] .coffee-margin-tip.tip-good{color:#5ed085;}
.coffee-margin-tip.tip-warn{
  background:rgba(232,163,64,0.12);
  color:#c47a0a;
  border:1px solid rgba(232,163,64,0.3);
}
[data-theme="dark"] .coffee-margin-tip.tip-warn{color:#f0c848;}
.coffee-margin-tip.tip-bad{
  background:rgba(229,80,80,0.12);
  color:#e55050;
  border:1px solid rgba(229,80,80,0.3);
}

/* Empty hint when no ingredients yet */
.coffee-empty-hint{
  text-align:center;
  padding:12px 16px;
  color:var(--muted);
  font-size:12.5px;
  font-style:italic;
  line-height:1.5;
  background:rgba(45,140,80,0.04);
  border-radius:10px;
  border:1px dashed rgba(45,140,80,0.2);
  margin-bottom:10px;
}

/* Add-ingredient card (always at bottom) */
.coffee-add-card{
  background:rgba(45,140,80,0.04);
  border:1.5px dashed rgba(45,140,80,0.3);
  border-radius:13px;
  padding:12px;
}
[data-theme="dark"] .coffee-add-card{
  background:rgba(45,140,80,0.08);
}
.coffee-add-title{
  font-size:12px;
  font-weight:700;
  color:#2d8c50;
  text-transform:uppercase;
  letter-spacing:0.7px;
  margin-bottom:10px;
  padding-left:2px;
}
[data-theme="dark"] .coffee-add-title{color:#5ed085;}
.coffee-add-chips{
  display:flex;
  gap:6px;
  flex-wrap:wrap;
}

/* Colored chip buttons */
.coffee-add-ing-btn{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:7px 12px;
  border:1.5px solid var(--chip-color,#2d8c50);
  background:var(--card);
  border-radius:10px;
  font-family:'Outfit',sans-serif;
  font-size:12px;
  font-weight:600;
  color:var(--text);
  cursor:pointer;
  transition:all .18s;
  white-space:nowrap;
  position:relative;
}
.coffee-add-ing-btn::before{
  content:'';
  position:absolute;
  inset:0;
  border-radius:10px;
  background:var(--chip-color,#2d8c50);
  opacity:0.07;
  pointer-events:none;
  transition:opacity .18s;
}
.coffee-add-ing-btn:hover{
  transform:translateY(-1px);
  box-shadow:0 4px 12px color-mix(in srgb, var(--chip-color,#2d8c50) 30%, transparent);
}
.coffee-add-ing-btn:hover::before{opacity:0.15;}
.coffee-add-ing-btn .coffee-add-ico{
  font-size:15px;
  line-height:1;
}

/* Row for ingredients (more colorful) */
.coffee-ing-row{
  background:var(--card);
  border:1.5px solid var(--border);
  border-radius:14px;
  padding:12px 13px;
  position:relative;
  overflow:hidden;
}
.coffee-ing-row::before{
  content:'';
  position:absolute;
  top:0;left:0;
  width:5px;height:100%;
  background:var(--ing-color,#2d8c50);
  opacity:0.8;
}
.coffee-ing-header{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:10px;
}
.coffee-ing-icon{
  width:34px;height:34px;
  border-radius:10px;
  display:flex;align-items:center;justify-content:center;
  font-size:17px;
  flex-shrink:0;
}
.coffee-ing-name-wrap{flex:1;min-width:0;}
.coffee-ing-name{
  font-family:'Outfit',sans-serif;
  font-size:14px;
  font-weight:700;
  color:var(--text);
  line-height:1.2;
}
.coffee-ing-unit-info{
  font-size:11px;
  color:var(--muted);
  margin-top:2px;
}
.coffee-ing-del{
  width:28px;height:28px;
  border-radius:8px;
  border:1px solid var(--border);
  background:var(--card2);
  color:var(--muted);
  font-size:18px;
  cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  flex-shrink:0;
  transition:all .15s;
  line-height:1;
  padding:0;
}
.coffee-ing-del:hover{
  border-color:var(--r);
  background:var(--rl);
  color:var(--r);
}

.coffee-ing-fields{
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  gap:6px;
  margin-bottom:10px;
}
@media (max-width: 440px){
  .coffee-ing-fields{
    grid-template-columns:1fr 1fr;
  }
  .coffee-ing-fields > div:last-child{grid-column:span 2;}
}
.coffee-ing-field label{
  display:block;
  font-size:10px;
  font-weight:700;
  color:var(--muted);
  text-transform:uppercase;
  letter-spacing:0.5px;
  margin-bottom:3px;
}
.coffee-ing-cost{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:8px 10px;
  background:rgba(45,140,80,0.06);
  border-radius:9px;
  font-size:12px;
  color:var(--muted);
}
.coffee-ing-cost b{
  font-family:'Fraunces',serif;
  font-size:14px;
  font-weight:700;
  color:#2d8c50;
}
[data-theme="dark"] .coffee-ing-cost b{color:#5ed085;}

/* Pricing row */
.coffee-pricing-row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}
.coffee-price-input-wrap label{
  display:block;
  font-size:11px;
  font-weight:700;
  color:var(--muted);
  text-transform:uppercase;
  letter-spacing:0.6px;
  margin-bottom:5px;
}


/* Saved coffee list items (clickable row) */
.coffee-saved-item{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  padding:11px 14px;
  background:var(--card2);
  border:1px solid var(--border);
  border-radius:12px;
  margin-bottom:7px;
  cursor:pointer;
  transition:all .2s;
  position:relative;
}
.coffee-saved-item:hover{
  border-color:#2d8c50;
  transform:translateX(3px);
  background:linear-gradient(135deg, rgba(45,140,80,0.06), rgba(15,95,74,0.03));
  box-shadow:0 3px 10px rgba(45,140,80,0.15);
}
.coffee-saved-item:active{
  transform:translateX(1px) scale(0.99);
  transition-duration:.08s;
}
.coffee-saved-item:focus-visible{
  outline:2px solid #2d8c50;
  outline-offset:2px;
}
.coffee-saved-info{flex:1;min-width:0;}
.coffee-saved-name{
  font-family:'Fraunces',serif;
  font-size:14px;
  font-weight:600;
  color:var(--text);
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.coffee-saved-meta{
  font-size:11px;
  color:var(--muted);
  margin-top:2px;
}
.coffee-saved-meta b{color:#2d8c50;}
[data-theme="dark"] .coffee-saved-meta b{color:#5ed085;}
.coffee-saved-acts{display:flex;gap:5px;flex-shrink:0;}
.coffee-saved-btn,
.coffee-add-ing-btn{
  padding:6px 10px;
  border:1.5px solid var(--border);
  background:var(--card);
  border-radius:8px;
  font-family:'Outfit',sans-serif;
  font-size:11.5px;
  font-weight:600;
  color:var(--muted);
  cursor:pointer;
  transition:all .15s;
  white-space:nowrap;
}
.coffee-saved-btn:hover,
.coffee-add-ing-btn:hover{
  border-color:#2d8c50;
  color:#2d8c50;
  background:rgba(45,140,80,0.08);
}
.coffee-saved-btn.del:hover{
  border-color:var(--r);
  color:var(--r);
  background:var(--rl);
}

/* Saved cocktail recipes list (clickable row) */
.s-item{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  padding:2px;
  background:var(--card2);
  border:1px solid var(--border);
  border-radius:12px;
  margin-bottom:7px;
  cursor:pointer;
  transition:all .2s;
  position:relative;
}
.s-item:hover{
  border-color:#2d8c50;
  transform:translateX(3px);
  background:linear-gradient(135deg, rgba(45,140,80,0.06), rgba(15,95,74,0.03));
  box-shadow:0 3px 10px rgba(45,140,80,0.15);
}
.s-item:active{
  transform:translateX(1px) scale(0.99);
  transition-duration:.08s;
}
.s-item:focus-visible{
  outline:2px solid #2d8c50;
  outline-offset:2px;
}
.s-info{flex:1;min-width:0;}
.s-name{
  font-family:'Fraunces',serif;
  font-size:14px;
  font-weight:600;
  color:var(--text);
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.s-meta{
  font-size:11px;
  color:var(--muted);
  margin-top:2px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.s-acts{
  display:flex;
  gap:5px;
  flex-shrink:0;
  padding-right:10px;
}
.s-act{
  width:34px;height:34px;
  padding:0;
  border:1.5px solid var(--border);
  background:var(--card);
  border-radius:9px;
  font-size:14px;
  font-weight:600;
  color:var(--muted);
  cursor:pointer;
  transition:all .15s;
  display:flex;align-items:center;justify-content:center;
  line-height:1;
}
.s-act.del:hover{
  border-color:var(--r);
  color:var(--r);
  background:var(--rl);
}
/* Unified premium empty state */
.saved-empty,
.empty-state{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:12px;
  text-align:center;
  padding:32px 20px;
  color:var(--muted);
  font-size:13px;
  background:var(--card2);
  border-radius:14px;
  border:1.5px dashed var(--border);
  line-height:1.5;
}
.empty-state-icon{
  width:52px;
  height:52px;
  border-radius:14px;
  background:linear-gradient(135deg, var(--card), var(--card2));
  display:flex;
  align-items:center;
  justify-content:center;
  color:var(--muted);
  opacity:0.7;
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.05);
}
.empty-state-title{
  font-family:'Fraunces',serif;
  font-size:15px;
  font-weight:600;
  color:var(--text);
  margin-bottom:-2px;
}
.empty-state-hint{
  font-size:12px;
  color:var(--muted);
  max-width:260px;
  line-height:1.55;
}


/* ═══════════════════════════════════════════════════════════
   SECTION-SPECIFIC COLOR SYNERGY
   Each section has a coherent color story via CSS variables
   - Super Juice: citrus (orange + teal accent + cream)
   - ABV: mystical (purple + blue + magenta subtle)
   - Cordial: floral (pink + eucalypt green + cream)
   - Pre-Batch: professional (teal + coral + gold)
   - Cost: luxury (emerald + gold + navy)
   ═══════════════════════════════════════════════════════════ */

/* ═══ SUPER JUICE: citrus warm ═══ */
#pbSubContentJuice .sj-wrap{
  --sec-primary: #c47a0a;
  --sec-primary-light: #e8a340;
  --sec-accent: #1a7a7a;        /* teal complement */
  --sec-accent-light: #2d9797;
  --sec-cream: #fdf7ec;
  --sec-soft: #fef3e0;
}
[data-theme="dark"] #pbSubContentJuice .sj-wrap{
  --sec-cream: #2a241a;
  --sec-soft: #3a2f1e;
}
#pbSubContentJuice .card:not(.sj-hero){
  border-color: rgba(196,122,10,0.2) !important;
}
[data-theme="dark"] #pbSubContentJuice .card:not(.sj-hero){
  border-color: rgba(232,163,64,0.25) !important;
}

/* Recipe card at bottom (yield-banner etc) — warm accent */
#secJuice .yield-banner{
  background:linear-gradient(135deg, var(--sec-soft), var(--sec-cream)) !important;
  border:1.5px solid var(--sec-primary-light) !important;
  color:var(--sec-primary) !important;
}
[data-theme="dark"] #secJuice .yield-banner{
  color:var(--sec-primary-light) !important;
}

/* Acid inputs + results - warm tint */
#secJuice .acid-card, 
#secJuice .card:has(#juiceSteps){
  background:linear-gradient(135deg, var(--card) 0%, var(--sec-soft) 100%) !important;
}
#secJuice .inp-wrap:focus-within,
#secJuice input[type="number"]:focus{
  border-color: var(--sec-primary-light) !important;
  box-shadow: 0 0 0 3px rgba(232,163,64,0.15) !important;
}

/* Step items - accent color */
#secJuice .step-num{
  background:linear-gradient(135deg, var(--sec-primary-light), var(--sec-primary)) !important;
  color:#fff !important;
  box-shadow:0 3px 10px rgba(196,122,10,0.3) !important;
}

/* Steps title — accent */
#secJuice .steps-title{
  color:var(--sec-primary) !important;
}
[data-theme="dark"] #secJuice .steps-title{
  color:var(--sec-primary-light) !important;
}

/* Section titles / labels */
#secJuice .slabel,
#secJuice .ilabel{
  color:var(--sec-primary) !important;
}
[data-theme="dark"] #secJuice .slabel,
[data-theme="dark"] #secJuice .ilabel{
  color:var(--sec-primary-light) !important;
}

/* ═══ CORDIAL: floral pink ═══ */
#secCordial{
  --sec-primary: #a2326a;
  --sec-primary-light: #e87090;
  --sec-accent: #5a8a6d;         /* eucalypt green */
  --sec-cream: #fdf3f7;
  --sec-soft: #fce6ef;
}
[data-theme="dark"] #secCordial{
  --sec-cream: #2a1a22;
  --sec-soft: #3a1e2c;
}
#secCordial .card:not(.cord-hero){
  border-color: rgba(162,50,106,0.2) !important;
}
[data-theme="dark"] #secCordial .card:not(.cord-hero){
  border-color: rgba(232,112,144,0.25) !important;
}
#secCordial .cord-types-title{
  color:var(--sec-primary) !important;
}
[data-theme="dark"] #secCordial .cord-types-title{
  color:var(--sec-primary-light) !important;
}

/* Cordial items + active state — pink tint */
#secCordial .cordial-item{
  border-color: rgba(162,50,106,0.15) !important;
}
#secCordial .cordial-item:hover{
  border-color: var(--sec-primary-light) !important;
  box-shadow: 0 4px 14px rgba(232,112,144,0.2) !important;
}
#secCordial .cordial-item.active{
  border-color: var(--sec-primary) !important;
  box-shadow: 0 4px 18px rgba(162,50,106,0.3) !important;
}

/* Cordial result card - pink+eucalypt gradient */
#secCordial .cord-res{
  background:linear-gradient(135deg, #fce6ef, #e6f0ea) !important;
}
[data-theme="dark"] #secCordial .cord-res{
  background:linear-gradient(135deg, #3a1e2c, #1e2a24) !important;
}
#secCordial .cord-res-title{
  color:var(--sec-primary) !important;
}
[data-theme="dark"] #secCordial .cord-res-title{
  color:var(--sec-primary-light) !important;
}

#secCordial .cord-i.full{
  background:linear-gradient(135deg, #fce6ef, #f9d4e2) !important;
  border-color: var(--sec-primary-light) !important;
}
[data-theme="dark"] #secCordial .cord-i.full{
  background:linear-gradient(135deg, #3a1e2c, #4a2638) !important;
}
#secCordial .cord-i.full .cl{color:var(--sec-primary) !important;}
[data-theme="dark"] #secCordial .cord-i.full .cl{color:var(--sec-primary-light) !important;}
#secCordial .cord-i.full .cv{color:var(--sec-primary) !important;}
[data-theme="dark"] #secCordial .cord-i.full .cv{color:var(--sec-primary-light) !important;}

/* ═══ PRE-BATCH: professional teal + coral accent ═══ */
#secPrebatch{
  --sec-primary: #0f4f4f;
  --sec-primary-light: #1a7a7a;
  --sec-accent: #ff8c69;          /* coral */
  --sec-accent-deep: #e06b4a;
  --sec-cream: #edf5f5;
  --sec-soft: #d9ebeb;
}
[data-theme="dark"] #secPrebatch{
  --sec-cream: #162828;
  --sec-soft: #1e3636;
}
#secPrebatch .pb-item{
  border-color: rgba(181,45,58,0.2) !important;
}
#secPrebatch .pb-item:hover{
  border-color: #b52d3a !important;
  box-shadow: 0 8px 20px rgba(181,45,58,0.2) !important;
}
#secPrebatch .pb-item.active{
  border-color: #b52d3a !important;
  box-shadow: 0 8px 24px rgba(181,45,58,0.3) !important;
}
#secPrebatch .pb-res{
  background:linear-gradient(135deg,rgba(122,31,42,0.08),rgba(181,45,58,0.05)) !important;
  border:1px solid rgba(181,45,58,0.2) !important;
}
[data-theme="dark"] #secPrebatch .pb-res{
  background:linear-gradient(135deg,rgba(122,31,42,0.2),rgba(181,45,58,0.1)) !important;
}
#secPrebatch .pb-res-title{
  color:#b52d3a !important;
}
#secPrebatch .pb-i.full{
  background:linear-gradient(135deg,rgba(181,45,58,0.08),rgba(212,69,79,0.05)) !important;
  border-color:rgba(181,45,58,0.3) !important;
}
[data-theme="dark"] #secPrebatch .pb-i.full{
  background:linear-gradient(135deg,rgba(122,31,42,0.25),rgba(181,45,58,0.15)) !important;
}
#secPrebatch .pb-badge.stirred{
  background:rgba(181,45,58,0.15) !important;
  color:#b52d3a !important;
}
#secPrebatch .pb-badge.shaken{
  background:rgba(212,69,79,0.15) !important;
  color:#d4454f !important;
}
#secPrebatch .pb-badge.built{
  background:rgba(122,31,42,0.15) !important;
  color:#9a2535 !important;
}
[data-theme="dark"] #secPrebatch .pb-badge.built{
  color:#e06070 !important;
}

/* ═══ COST: luxury emerald + gold ═══ */
#secCost{
  --sec-primary: #0f5f4a;
  --sec-primary-light: #2d8c50;
  --sec-accent: #d4a418;          /* gold */
  --sec-accent-light: #f0c848;
  --sec-cream: #edf5f0;
  --sec-soft: #d9ebdf;
}
[data-theme="dark"] #secCost{
  --sec-cream: #1a2b22;
  --sec-soft: #1e3a2c;
}
#secCost .card:not(.cost-hero){
  border-color: rgba(45,140,80,0.2) !important;
}
[data-theme="dark"] #secCost .card:not(.cost-hero){
  border-color: rgba(45,140,80,0.3) !important;
}

/* Currency buttons use emerald + gold active */
#secCost .cost-cur-btn:hover{
  border-color: var(--sec-primary-light) !important;
  color: var(--sec-primary-light) !important;
  background: rgba(45,140,80,0.1) !important;
}
#secCost .cost-cur-btn.active{
  background: linear-gradient(135deg, var(--sec-primary-light), var(--sec-primary)) !important;
  border-color: var(--sec-primary) !important;
  color: #fff !important;
  box-shadow: 0 3px 10px rgba(45,140,80,0.3) !important;
}

/* Cost result metrics - gold accent for gains, green for primary */
#secCost .slabel{
  color: var(--sec-primary) !important;
}
[data-theme="dark"] #secCost .slabel{
  color: var(--sec-primary-light) !important;
}

/* Profit margin bars - gradient emerald */
#secCost .cost-ing-block{
  border-left: 3px solid var(--sec-primary-light) !important;
}
[data-theme="dark"] #secCost .cost-ing-block{
  background: rgba(45,140,80,0.08) !important;
}

/* Cost inputs focus state */
#secCost .inp-wrap:focus-within,
#secCost input:focus{
  border-color: var(--sec-primary-light) !important;
  box-shadow: 0 0 0 3px rgba(45,140,80,0.15) !important;
}

/* VAT chips / toggle */
#secCost .cost-cur-btn[id*="vat"]{
  border-color: var(--border) !important;
}

/* ═══ Shared polish for all hero cards - subtle parallax feel ═══ */
.sj-hero, .cord-hero, .pb-hero, .cost-hero, .abv8-cat-card, .abv8-results, .abv8-save-card, .abv8-saved-card{
  transition: transform .3s cubic-bezier(.4,0,.2,1), box-shadow .3s cubic-bezier(.4,0,.2,1);
}

/* Mobile: smaller hero padding */
@media (max-width: 440px){
  .sj-hero, .cord-hero, .pb-hero, .cost-hero{
    padding: 1.25rem !important;
  }
  .sj-hero-title, .cord-hero-title, .pb-hero-title, .cost-hero-title{
    font-size: 22px !important;
  }
}
/* ═══════════════════════════════════════════════════════════
   PREMIUM SAVE BUTTONS — adaptive per section
   Base class .save-btn + section modifiers:
   - .save-btn-cost      → emerald + gold (Cost section)
   - .save-btn-coffee    → emerald + warm amber (Coffee mode in Cost)
   - .save-btn-prebatch  → teal + coral (Pre-Batch section)
   ═══════════════════════════════════════════════════════════ */
.save-btn{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  width:100%;
  padding:14px 20px;
  margin:14px 0 6px 0;
  border:none;
  border-radius:14px;
  font-family:'Outfit',sans-serif;
  font-size:14.5px;
  font-weight:700;
  letter-spacing:0.3px;
  color:#fff;
  cursor:pointer;
  position:relative;
  overflow:hidden;
  transition:transform .25s cubic-bezier(.34,1.56,.64,1),
             box-shadow .25s ease,
             filter .25s ease;
}
.save-btn::before{
  content:'';
  position:absolute;
  top:0;left:-100%;
  width:100%;height:100%;
  background:linear-gradient(120deg, transparent, rgba(255,255,255,0.22), transparent);
  transition:left .6s ease;
  pointer-events:none;
}
.save-btn:hover::before{left:100%;}
.save-btn:hover{transform:translateY(-2px);}
.save-btn:active{transform:translateY(0) scale(0.98);transition-duration:.1s;}

.save-btn svg{
  flex-shrink:0;
  filter:drop-shadow(0 1px 2px rgba(0,0,0,0.2));
}

/* ═══ COST COCKTAIL: emerald + gold ═══ */
.save-btn-cost{
  background:linear-gradient(135deg, #2d8c50 0%, #0f5f4a 100%);
  box-shadow:
    0 4px 14px rgba(45,140,80,0.35),
    0 2px 4px rgba(15,95,74,0.25),
    inset 0 1px 0 rgba(255,255,255,0.2);
}
.save-btn-cost:hover{
  background:linear-gradient(135deg, #34a55e 0%, #156b56 100%);
  box-shadow:
    0 8px 22px rgba(45,140,80,0.45),
    0 3px 6px rgba(212,164,24,0.25),
    inset 0 1px 0 rgba(255,255,255,0.3);
}
.save-btn-cost::after{
  content:'';
  position:absolute;
  top:0;right:0;
  width:40%;height:100%;
  background:linear-gradient(90deg, transparent, rgba(212,164,24,0.15));
  pointer-events:none;
}

/* ═══ COFFEE: emerald + warm amber (coffee bean glow) ═══ */
.save-btn-coffee{
  background:linear-gradient(135deg, #2d8c50 0%, #0f5f4a 60%, #8b4513 130%);
  box-shadow:
    0 4px 14px rgba(45,140,80,0.35),
    0 2px 4px rgba(139,69,19,0.2),
    inset 0 1px 0 rgba(255,255,255,0.2);
}
.save-btn-coffee:hover{
  background:linear-gradient(135deg, #34a55e 0%, #156b56 60%, #a35520 130%);
  box-shadow:
    0 8px 22px rgba(45,140,80,0.45),
    0 3px 8px rgba(196,122,10,0.3),
    inset 0 1px 0 rgba(255,255,255,0.3);
}
.save-btn-coffee::after{
  content:'';
  position:absolute;
  top:0;right:0;
  width:35%;height:100%;
  background:linear-gradient(90deg, transparent, rgba(232,163,64,0.2));
  pointer-events:none;
}

/* ═══ PRE-BATCH: teal + coral ═══ */
.save-btn-prebatch{
  background:linear-gradient(135deg, #7a1f2a 0%, #b52d3a 60%, #d4454f 100%);
  box-shadow:
    0 4px 14px rgba(181,45,58,0.45),
    0 2px 4px rgba(122,31,42,0.25),
    inset 0 1px 0 rgba(255,255,255,0.22);
}
.save-btn-prebatch:hover{
  background:linear-gradient(135deg, #9a2535 0%, #c73040 60%, #e04f5a 100%);
  box-shadow:
    0 8px 22px rgba(181,45,58,0.55),
    0 3px 8px rgba(181,45,58,0.3),
    inset 0 1px 0 rgba(255,255,255,0.32);
}
.save-btn-prebatch::after{
  content:'';
  position:absolute;
  top:0;right:0;
  width:40%;height:100%;
  background:linear-gradient(90deg, transparent, rgba(255,140,105,0.18));
  pointer-events:none;
}

/* Disabled state (future use) */
.save-btn:disabled{
  opacity:0.55;
  cursor:not-allowed;
  transform:none !important;
  filter:grayscale(0.3);
}


/* Pre-Batch sub-taburi */
.pb-subtab-nav{display:flex;gap:6px;margin-bottom:14px;background:var(--card2);border-radius:14px;padding:5px;}
.pb-subtab-btn{flex:1;padding:8px 10px;border:none;border-radius:10px;background:transparent;font-family:'Outfit',sans-serif;font-size:12px;font-weight:600;color:var(--muted);cursor:pointer;transition:all .18s;text-align:center;}
.pb-subtab-btn.pb-sub-active{background:var(--card);color:var(--text);box-shadow:0 2px 8px rgba(0,0,0,.12);}

/* Calculator Rest */
.rest-note-btn{
  padding:8px 14px;
  border:1.5px solid var(--border);
  border-radius:10px;
  background:var(--card2);
  color:var(--text);
  font-family:'Outfit',sans-serif;
  font-size:14px;
  font-weight:700;
  cursor:pointer;
  transition:all .15s;
  touch-action:manipulation;
  min-width:44px;
  text-align:center;
}
.rest-note-btn:active{transform:scale(.94);}

/* bnav-btn hover premium */
.bnav-btn:not(.active):hover{
  background:rgba(255,255,255,.04)!important;
  border-radius:14px;
}
/* Rest note btn hover */
.rest-note-btn:hover{
  border-color:#2d8c50;
  color:#2d8c50;
  transform:scale(1.05);
}
/* Order cat btn hover */
.order-cat-btn:hover{
  filter:brightness(1.15);
  transform:scale(1.03);
}

/* ══ HOVER & INTERACTION EFFECTS — Premium UX ══ */
.card{transition:box-shadow .2s ease,transform .2s ease;}
.card:hover{box-shadow:0 8px 32px rgba(0,0,0,.25);transform:translateY(-1px);}
.analytics-kpi{transition:all .2s ease;}
.analytics-kpi:hover{border-color:rgba(234,88,12,.5)!important;box-shadow:0 0 20px rgba(234,88,12,.15),0 6px 20px rgba(0,0,0,.2);transform:translateY(-2px) scale(1.01);}
.an-card{transition:all .22s cubic-bezier(.34,1.2,.64,1);}
.an-card:hover{transform:translateY(-3px) scale(1.01);box-shadow:0 10px 30px rgba(0,0,0,.25),0 0 0 1px var(--an);}
.add-btn,.stock-add-btn{position:relative;overflow:hidden;transition:all .2s ease;}
.add-btn::after,.stock-add-btn::after{content:'';position:absolute;top:-50%;left:-60%;width:30%;height:200%;background:rgba(255,255,255,.12);transform:skewX(-20deg);transition:left .4s ease;}
.add-btn:hover::after,.stock-add-btn:hover::after{left:130%;}
.add-btn:hover,.stock-add-btn:hover{transform:translateY(-1px);box-shadow:0 6px 20px rgba(45,140,80,.35);filter:brightness(1.08);}
.sab{transition:all .15s ease;}
.sab:hover{filter:brightness(1.12);transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,.2);}
.hbtn{transition:all .18s ease;}
.hbtn:hover{background:var(--card2)!important;transform:scale(1.08);}
.inp-wrap{transition:all .18s ease;}
.inp-wrap:focus-within{box-shadow:0 0 0 2px rgba(45,140,80,.3);}
.inp-wrap.blue:focus-within{box-shadow:0 0 0 2px rgba(37,99,235,.3);}
.capsate-saved-item{transition:all .15s ease;}
.capsate-saved-item:hover{background:var(--card2)!important;transform:translateX(3px);}
.cost-mode-btn:not(.active){transition:all .18s ease;}
.cost-mode-btn:not(.active):hover{color:var(--text);background:var(--card2);}
.capsate-prod-card{transition:all .18s ease;}
.capsate-prod-card:hover{box-shadow:0 6px 20px rgba(0,0,0,.2);transform:translateY(-1px);}
.capsate-save-btn,.s-act{transition:all .15s ease;}
.capsate-save-btn:hover{filter:brightness(1.1);transform:translateY(-1px);}
.s-act.del:hover{background:var(--r)!important;color:#fff!important;transform:scale(1.15);}
.modal-close{transition:all .15s ease;}
.modal-close:hover{background:var(--rl)!important;color:var(--r)!important;transform:rotate(90deg);}
.rest-note-btn:hover{border-color:#2d8c50;color:#2d8c50;transform:scale(1.05);}
.order-cat-btn:hover{filter:brightness(1.15);transform:scale(1.03);}
.bnav-btn:not(.active):hover{background:rgba(255,255,255,.04)!important;border-radius:14px;}
@keyframes ripple{0%{transform:scale(0);opacity:.4;}100%{transform:scale(4);opacity:0;}}
.ripple-wave{position:absolute;border-radius:50%;background:rgba(255,255,255,.3);width:50px;height:50px;margin-top:-25px;margin-left:-25px;animation:ripple .5s ease-out forwards;pointer-events:none;z-index:999;}
@media(hover:none){
  .card:hover,.an-card:hover{transform:none;box-shadow:none;}
  .capsate-saved-item:hover{transform:none;}
  .card:active{transform:scale(.99);box-shadow:0 4px 16px rgba(0,0,0,.2);}
}

/* Font-size responsive cu clamp() — mobil mic */
.abv-hero-title, .abv8-res-val, .pb-hero-title {
  font-size: clamp(16px, 4vw, 24px) !important;
}
.cost-hero-title, .analytics-kpi-val {
  font-size: clamp(18px, 4vw, 28px) !important;
}
.coffee-metric-val span, .capsate-metric-val {
  font-size: clamp(13px, 3vw, 18px) !important;
}

/* Stock controls — full width grid on all screens */
.stock-controls > div {
  grid-template-columns: repeat(3, 1fr) !important;
  width: 100%;
}
