/* M&M COFFEE v4.9 generated bundle. Source files remain editable. */
/* assets/css/styles.css */
:root {
  --accent: #a50e18;
  --accent-dark: #7e0710;
  --ink: #17110f;
  --muted: #746962;
  --line: #e8dfd8;
  --page: #f4eee9;
  --surface: #fffaf6;
  --surface-2: #fdf5ef;
  --white: #fff;
  --shadow: 0 20px 60px rgba(46, 25, 17, .14);
  --soft-shadow: 0 8px 26px rgba(44, 29, 22, .08);
  --radius-lg: 26px;
  --radius-md: 14px;
  --radius-sm: 10px;
  --nav-h: 98px;
}

* {
  box-sizing: border-box;
}

html {
  min-height: 100%;
  background: var(--page);
}

body {
  min-height: 100%;
  margin: 0;
  overflow-x: hidden;
  color: var(--ink);
  background:
    radial-gradient(circle at 12% 8%, rgba(165, 14, 24, .08), transparent 28%),
    linear-gradient(135deg, #f7f1ec 0%, #eee4dd 100%);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

button,
input,
textarea,
select {
  font: inherit;
}

button {
  cursor: pointer;
}

img {
  display: block;
  max-width: 100%;
}

.app-stage {
  min-height: 100dvh;
  display: flex;
  justify-content: center;
  padding: 0;
  overflow-x: hidden;
}

.phone-shell {
  width: 100%;
  max-width: 430px;
  min-height: 100dvh;
  position: relative;
  overflow: hidden;
  background: var(--surface);
}

.route-shell {
  opacity: 0;
}

.route-shell.is-ready {
  opacity: 1;
  transition: opacity .18s ease;
}

.hero {
  height: 262px;
  position: relative;
  overflow: visible;
  color: var(--white);
  background: #2b0d07;
}

.hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(180deg, rgba(19, 4, 1, .54), rgba(31, 6, 1, .7)),
    var(--hero-img);
  background-size: cover;
  background-position: center;
  filter: blur(1.5px) saturate(.9) contrast(1.04);
}

.hero::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  height: 120px;
  background: linear-gradient(180deg, transparent, rgba(24, 5, 1, .62));
}

.hero-home {
  --hero-img: url("../images/brand/mm-coffee-hero.webp");
}

.hero-menu {
  --hero-img: url("../images/brand/mm-coffee-hero.webp");
}

.hero-about {
  --hero-img: url("../images/brand/mm-coffee-hero.webp");
}

.status-bar {
  position: relative;
  z-index: 2;
  height: 42px;
  padding: 16px 24px 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 14px;
  font-weight: 800;
  letter-spacing: .01em;
}

.status-icons {
  display: inline-flex;
  align-items: center;
  gap: 5px;
}

.signal {
  display: inline-grid;
  grid-template-columns: repeat(4, 3px);
  align-items: end;
  gap: 2px;
  height: 13px;
}

.signal i {
  display: block;
  width: 3px;
  border-radius: 3px 3px 0 0;
  background: currentColor;
}

.signal i:nth-child(1) { height: 4px; }
.signal i:nth-child(2) { height: 7px; }
.signal i:nth-child(3) { height: 10px; }
.signal i:nth-child(4) { height: 13px; }

.wifi {
  width: 15px;
  height: 11px;
  border: 2px solid currentColor;
  border-bottom: 0;
  border-left-color: transparent;
  border-right-color: transparent;
  border-radius: 12px 12px 0 0;
  position: relative;
  top: 1px;
}

.battery {
  width: 21px;
  height: 10px;
  border: 2px solid currentColor;
  border-radius: 3px;
  position: relative;
}

.battery::after {
  content: "";
  position: absolute;
  right: -5px;
  top: 2px;
  width: 3px;
  height: 4px;
  border-radius: 0 2px 2px 0;
  background: currentColor;
}

.back-btn {
  position: absolute;
  z-index: 3;
  top: 64px;
  left: 22px;
  width: 34px;
  height: 34px;
  border: 0;
  border-radius: 999px;
  color: var(--ink);
  background: rgba(255, 255, 255, .9);
  display: grid;
  place-items: center;
  box-shadow: 0 8px 22px rgba(0, 0, 0, .12);
}

.hero-copy {
  position: absolute;
  z-index: 3;
  left: 24px;
  right: 24px;
  bottom: 40px;
  display: grid;
  justify-items: center;
  text-align: center;
}

.hero-copy h1 {
  margin: 14px 0 4px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 27px;
  line-height: 1;
  font-weight: 700;
  letter-spacing: 0;
}

.hero-copy p {
  margin: 0;
  font-size: 13px;
  line-height: 1.35;
  font-weight: 600;
}

.brand-mark {
  width: 62px;
  color: var(--white);
  text-align: center;
  display: grid;
  justify-items: center;
  gap: 4px;
}

.brand-mark-icon {
  width: 48px;
  height: 58px;
  border: 2px solid currentColor;
  border-bottom-width: 4px;
  border-radius: 26px 26px 4px 4px;
  position: relative;
}

.brand-mark-icon::before,
.brand-mark-icon::after {
  content: "";
  position: absolute;
  left: 8px;
  right: 8px;
  border-top: 1.5px solid currentColor;
}

.brand-mark-icon::before { top: 16px; }
.brand-mark-icon::after { top: 32px; }

.brand-rays {
  position: absolute;
  inset: 6px 7px auto;
  height: 22px;
  border-top: 1.5px solid currentColor;
}

.brand-rays::before,
.brand-rays::after {
  content: "";
  position: absolute;
  top: -1px;
  width: 20px;
  border-top: 1.5px solid currentColor;
}

.brand-rays::before {
  left: -2px;
  transform: rotate(22deg);
  transform-origin: left center;
}

.brand-rays::after {
  right: -2px;
  transform: rotate(-22deg);
  transform-origin: right center;
}

.brand-word {
  font-family: Georgia, "Times New Roman", serif;
  font-size: 10px;
  line-height: 1;
  letter-spacing: .22em;
}

.logo-tab .brand-mark {
  width: 58px;
  height: 58px;
  color: var(--white);
  background: var(--accent);
  border-radius: 50%;
  align-content: center;
  gap: 1px;
  box-shadow: 0 8px 20px rgba(126, 7, 16, .24);
}

.logo-tab .brand-mark-icon {
  width: 29px;
  height: 34px;
  border-width: 1.2px;
  border-bottom-width: 2px;
}

.logo-tab .brand-mark-icon::before,
.logo-tab .brand-mark-icon::after,
.logo-tab .brand-rays,
.logo-tab .brand-rays::before,
.logo-tab .brand-rays::after {
  border-top-width: 1px;
}

.logo-tab .brand-mark-icon::before { top: 10px; }
.logo-tab .brand-mark-icon::after { top: 20px; }
.logo-tab .brand-rays { inset: 4px 4px auto; height: 12px; }
.logo-tab .brand-word { font-size: 6px; letter-spacing: .18em; }

.floating-search {
  position: absolute;
  z-index: 5;
  left: 16px;
  right: 16px;
  bottom: -27px;
}

.search-box {
  height: 56px;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 0 18px;
  border: 1px solid rgba(214, 201, 192, .8);
  border-radius: 24px;
  background: rgba(255, 252, 249, .96);
  box-shadow: 0 10px 24px rgba(54, 30, 21, .11);
}

.search-box input {
  width: 100%;
  min-width: 0;
  border: 0;
  outline: 0;
  color: var(--ink);
  background: transparent;
  font-size: 12px;
}

.search-box svg {
  color: var(--accent);
  flex: 0 0 auto;
}

.page-panel {
  position: relative;
  z-index: 4;
  min-height: calc(100dvh - 220px);
  margin-top: -12px;
  padding: 58px 16px calc(var(--nav-h) + 18px);
  border-radius: var(--radius-lg) var(--radius-lg) 0 0;
  background: linear-gradient(180deg, #fffdfb 0%, var(--surface) 100%);
}

.home-panel {
  padding-top: 54px;
}

.filter-row,
.menu-tabs {
  display: flex;
  gap: 9px;
  overflow-x: auto;
  padding: 0 0 14px;
  scrollbar-width: none;
}

.filter-row::-webkit-scrollbar,
.menu-tabs::-webkit-scrollbar,
.related-strip::-webkit-scrollbar {
  display: none;
}

.chip {
  flex: 0 0 auto;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: transparent;
  color: var(--ink);
  padding: 10px 16px;
  font-size: 12px;
  font-weight: 700;
}

.chip.active {
  border-color: var(--accent);
  background: var(--accent);
  color: var(--white);
}

.product-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.product-card {
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: 9px;
  overflow: hidden;
  background: rgba(255, 255, 255, .76);
  text-align: left;
  box-shadow: var(--soft-shadow);
}

.product-card button,
.menu-row {
  width: 100%;
  min-width: 0;
  border: 0;
  color: inherit;
  background: transparent;
  text-align: left;
}

.product-card-media {
  aspect-ratio: 1 / 1.04;
  background: #eee1d9 center / cover no-repeat;
  overflow: hidden;
}

.product-card-media img,
.menu-thumb img,
.related-card img,
.gallery-tile img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.product-card-body {
  padding: 12px 12px 16px;
}

.product-card-title {
  min-height: 39px;
  font-size: 15px;
  line-height: 1.28;
  font-weight: 800;
}

.price {
  color: var(--accent-dark);
  font-weight: 900;
}

.product-card .price {
  margin-top: 8px;
  font-size: 18px;
}

.empty-state {
  grid-column: 1 / -1;
  padding: 28px 18px;
  border: 1px dashed var(--line);
  border-radius: var(--radius-md);
  color: var(--muted);
  background: rgba(255, 255, 255, .55);
  text-align: center;
}

.menu-tabs-shell {
  margin-bottom: 18px;
  padding: 18px 12px 14px;
  border: 1px solid rgba(226, 215, 207, .88);
  border-radius: 28px;
  background: rgba(255, 252, 249, .98);
  box-shadow: 0 12px 24px rgba(44, 25, 18, .06);
}

.menu-tabs {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 4px;
  align-items: start;
  overflow: visible;
  padding-bottom: 0;
}

.menu-tab {
  width: auto;
  flex: initial;
  border: 0;
  color: #201815;
  background: transparent;
  display: grid;
  justify-items: center;
  align-content: start;
  gap: 8px;
  padding: 0;
  font-size: 11px;
  font-weight: 700;
}

.menu-tab-icon {
  width: 52px;
  height: 52px;
  border-radius: 18px;
  display: grid;
  place-items: center;
  color: #1b1513;
}

.menu-tab.active .menu-tab-icon {
  width: 58px;
  height: 58px;
  border-radius: 20px;
  color: var(--white);
  background: var(--accent);
  box-shadow: 0 10px 18px rgba(165, 14, 24, .22);
}

.menu-tab svg {
  width: 31px;
  height: 31px;
}

.menu-tab span:last-child {
  line-height: 1.15;
  white-space: nowrap;
}

.menu-list {
  display: grid;
}

.menu-row {
  display: grid;
  grid-template-columns: 102px minmax(0, 1fr) auto;
  gap: 16px;
  align-items: center;
  padding: 10px 0;
  border-top: 1px solid var(--line);
}

.menu-row:first-child {
  border-top: 0;
}

.menu-thumb {
  width: 102px;
  height: 94px;
  border-radius: 12px;
  overflow: hidden;
  background: #efe1d8;
}

.menu-title {
  font-size: 14px;
  font-weight: 800;
  margin-bottom: 8px;
}

.menu-desc {
  color: #3e3430;
  font-size: 12px;
  line-height: 1.45;
}

.menu-row .price {
  font-size: 17px;
}

.section-title {
  margin: 0 0 12px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 21px;
  line-height: 1.2;
}

.section-title .accent-line {
  display: block;
  width: 25px;
  height: 3px;
  margin-top: 9px;
  border-radius: 99px;
  background: var(--accent);
}

.story {
  color: #261d19;
  font-size: 12px;
  line-height: 1.6;
  margin: 0 0 18px;
}

.branch-pill {
  display: grid;
  grid-template-columns: 1fr 1fr;
  border: 1px solid var(--line);
  border-radius: 12px;
  overflow: hidden;
  background: rgba(255, 255, 255, .62);
}

.branch-pill span {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-height: 46px;
  color: #291f1b;
  font-size: 12px;
  font-weight: 700;
}

.branch-pill span + span {
  border-left: 1px solid var(--line);
}

.gallery-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 8px;
  margin: 14px 0 28px;
}

.gallery-tile {
  aspect-ratio: .86 / 1;
  overflow: hidden;
  border-radius: 8px;
  background: #eadbd0;
}

.social-card {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr) 20px;
  gap: 12px;
  align-items: center;
  min-height: 62px;
  padding: 9px;
  border: 1px solid var(--line);
  border-radius: 12px;
  color: inherit;
  text-decoration: none;
  background: rgba(255, 255, 255, .62);
}

.instagram-icon {
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  color: var(--white);
  background: var(--accent);
}

.social-name {
  font-size: 12px;
  font-weight: 800;
}

.social-desc {
  margin-top: 4px;
  color: #3a302b;
  font-size: 11px;
}

.detail-shell {
  min-height: 100dvh;
  background: var(--surface);
  padding-bottom: calc(var(--nav-h) + 12px);
}

.detail-media {
  position: relative;
  height: 318px;
  overflow: hidden;
  background: #eadfd7;
}

.detail-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.detail-media .back-btn {
  top: 57px;
}

.detail-sheet {
  position: relative;
  z-index: 2;
  margin-top: -28px;
  padding: 26px 22px 22px;
  border-radius: var(--radius-lg) var(--radius-lg) 0 0;
  background: var(--surface);
}

.detail-heading {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: start;
}

.detail-heading h1 {
  margin: 0;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 27px;
  line-height: 1.1;
}

.detail-heading .price {
  font-size: 20px;
}

.detail-desc {
  margin: 12px 0 20px;
  color: #2d2420;
  font-size: 12px;
  line-height: 1.5;
}

.hairline {
  height: 1px;
  background: var(--line);
  margin: 18px 0;
}

.ingredient-row {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0;
  border-bottom: 1px solid var(--line);
  padding-bottom: 18px;
}

.ingredient {
  min-width: 0;
  display: grid;
  justify-items: center;
  gap: 8px;
  min-height: 66px;
  border-left: 1px solid var(--line);
  color: #312723;
  font-size: 10px;
  text-align: center;
}

.ingredient:first-child {
  border-left: 0;
}

.ingredient svg {
  width: 29px;
  height: 29px;
}

.related-strip {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: 30%;
  gap: 9px;
  overflow-x: auto;
  padding-bottom: 18px;
}

.related-card {
  border: 1px solid var(--line);
  border-radius: 9px;
  overflow: hidden;
  background: rgba(255, 255, 255, .7);
}

.related-card img {
  height: 84px;
}

.related-card span {
  display: block;
  padding: 8px;
  font-size: 11px;
  font-weight: 800;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.dots {
  display: flex;
  justify-content: center;
  gap: 7px;
  margin: 0 0 24px;
}

.dots i {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #ded5cd;
}

.dots i:first-child {
  background: var(--accent);
}

.info-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  padding: 3px 0 15px;
  border-bottom: 1px solid var(--line);
}

.info-row h3,
.detail-section h3 {
  margin: 0 0 8px;
  font-size: 13px;
}

.info-row p,
.detail-section p {
  margin: 0;
  color: #403630;
  font-size: 11px;
  line-height: 1.45;
}

.branch-detail {
  display: flex;
  flex-wrap: wrap;
  gap: 18px;
  color: #211916;
  font-size: 11px;
}

.branch-detail span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
}

.bottom-nav {
  position: fixed;
  z-index: 70;
  left: 50%;
  bottom: env(safe-area-inset-bottom, 0px);
  width: 100%;
  max-width: 430px;
  height: var(--nav-h);
  transform: translateX(-50%);
  display: grid;
  grid-template-columns: 1fr 1fr 1.35fr 1fr 1fr;
  align-items: center;
  padding: 10px 12px 12px;
  border: 1px solid rgba(226, 215, 207, .88);
  border-bottom: 0;
  border-radius: 28px 28px 0 0;
  background: rgba(255, 252, 249, .98);
  backdrop-filter: blur(16px);
  box-shadow: 0 -14px 34px rgba(44, 25, 18, .08);
}

.nav-btn {
  min-width: 0;
  height: 66px;
  border: 0;
  color: #211916;
  background: transparent;
  display: grid;
  justify-items: center;
  align-content: center;
  gap: 6px;
  text-decoration: none;
  font-size: 9.5px;
  font-weight: 700;
}

.nav-btn svg {
  width: 22px;
  height: 22px;
}

.nav-btn span {
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.nav-btn.active {
  color: var(--accent);
}

.logo-tab {
  position: relative;
  top: -30px;
  display: grid;
  place-items: center;
}

.admin-stage {
  min-height: 100dvh;
  width: 100%;
  background:
    radial-gradient(circle at 80% 8%, rgba(165, 14, 24, .16), transparent 31%),
    linear-gradient(135deg, #2a0d07 0%, #100604 44%, #f4eee9 44.2%, #f4eee9 100%);
  padding: 28px;
}

.admin-login {
  width: min(100%, 420px);
  margin: 8vh auto 0;
  padding: 30px;
  border: 1px solid rgba(255, 255, 255, .2);
  border-radius: 20px;
  color: var(--white);
  background: rgba(32, 10, 6, .8);
  box-shadow: var(--shadow);
  backdrop-filter: blur(14px);
}

.admin-login .brand-mark {
  margin-bottom: 22px;
}

.admin-login h1,
.admin-title h1 {
  margin: 0;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 31px;
  line-height: 1.08;
}

.admin-login p {
  color: rgba(255, 255, 255, .72);
  font-size: 13px;
  line-height: 1.5;
}

.form-grid {
  display: grid;
  gap: 13px;
}

.field {
  display: grid;
  gap: 7px;
  font-size: 12px;
  font-weight: 800;
}

.field input,
.field textarea,
.field select {
  width: 100%;
  border: 1px solid var(--line);
  border-radius: 10px;
  outline: 0;
  color: var(--ink);
  background: rgba(255, 255, 255, .86);
  padding: 11px 12px;
  font-size: 13px;
}

.field textarea {
  min-height: 86px;
  resize: vertical;
}

.login-field input {
  border-color: rgba(255, 255, 255, .22);
  color: var(--white);
  background: rgba(255, 255, 255, .08);
}

.primary-btn,
.secondary-btn,
.danger-btn,
.ghost-btn {
  min-height: 42px;
  border-radius: 10px;
  padding: 0 15px;
  font-size: 13px;
  font-weight: 900;
}

.primary-btn {
  border: 1px solid var(--accent);
  color: var(--white);
  background: var(--accent);
}

.secondary-btn {
  border: 1px solid var(--line);
  color: var(--ink);
  background: var(--white);
}

.danger-btn {
  border: 1px solid #d8a9a9;
  color: #9a1017;
  background: #fff5f4;
}

.ghost-btn {
  border: 0;
  color: var(--muted);
  background: transparent;
}

.form-error {
  min-height: 17px;
  color: #ffd3d3;
  font-size: 12px;
  font-weight: 800;
}

.admin-shell {
  width: min(100%, 1220px);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 244px minmax(0, 1fr);
  gap: 18px;
}

.admin-sidebar,
.admin-main,
.admin-card {
  border: 1px solid rgba(230, 218, 209, .86);
  border-radius: 18px;
  background: rgba(255, 252, 249, .94);
  box-shadow: var(--soft-shadow);
}

.admin-sidebar {
  min-height: calc(100dvh - 56px);
  padding: 20px;
}

.admin-sidebar .brand-mark {
  color: var(--accent);
  margin-bottom: 22px;
}

.admin-nav {
  display: grid;
  gap: 9px;
}

.admin-nav button {
  min-height: 42px;
  border: 0;
  border-radius: 10px;
  color: #241a17;
  background: transparent;
  text-align: left;
  padding: 0 12px;
  font-size: 13px;
  font-weight: 900;
}

.admin-nav button.active {
  color: var(--white);
  background: var(--accent);
}

.admin-main {
  padding: 22px;
}

.admin-topbar {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: center;
  margin-bottom: 18px;
}

.admin-title p {
  margin: 8px 0 0;
  color: var(--muted);
  font-size: 13px;
}

.admin-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 380px;
  gap: 18px;
  align-items: start;
}

.admin-card {
  padding: 16px;
}

.admin-card h2 {
  margin: 0 0 14px;
  font-size: 17px;
}

.admin-list {
  display: grid;
  gap: 10px;
}

.admin-product-row {
  display: grid;
  grid-template-columns: 64px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 9px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: rgba(255, 255, 255, .64);
}

.admin-product-row img,
.admin-preview img {
  width: 64px;
  height: 66px;
  object-fit: cover;
  border-radius: 10px;
  background: #efe1d9;
}

.admin-product-row strong {
  display: block;
  font-size: 13px;
}

.admin-product-row small {
  display: block;
  color: var(--muted);
  margin-top: 5px;
}

.admin-actions {
  display: flex;
  gap: 7px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.admin-actions button {
  min-height: 34px;
  padding: 0 10px;
  border-radius: 8px;
  font-size: 12px;
}

.admin-preview {
  display: grid;
  grid-template-columns: 74px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  min-height: 78px;
  padding: 10px;
  border: 1px dashed var(--line);
  border-radius: 12px;
  background: #fff;
}

.admin-note {
  color: var(--muted);
  font-size: 11px;
  line-height: 1.45;
}

.inline-fields {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

.admin-footer-actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-top: 4px;
}

.category-list {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}

.category-token {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 9px 10px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: var(--white);
  font-size: 12px;
  font-weight: 800;
}

.category-token button {
  width: 22px;
  height: 22px;
  border: 0;
  border-radius: 50%;
  color: var(--accent);
  background: #fff0f0;
}

.site-settings {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 13px;
}

.site-settings .wide {
  grid-column: 1 / -1;
}

.brand-mark {
  width: auto;
  color: inherit;
  text-align: center;
  display: inline-grid;
  justify-items: center;
  gap: 4px;
}

.brand-logo-img {
  width: 58px;
  height: auto;
  object-fit: contain;
}

.brand-mark-light .brand-logo-img {
  filter: invert(1);
}

.brand-mark-dark .brand-logo-img {
  filter: none;
}

.brand-mark-hero .brand-logo-img {
  width: 108px;
}

.brand-mark-round {
  width: 82px;
  height: 82px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  align-content: center;
  background: var(--accent);
  box-shadow: 0 16px 30px rgba(126, 7, 16, .28);
}

.brand-mark-round .brand-logo-img {
  width: 46px;
}

.brand-mark-badge {
  width: 58px;
  height: 58px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  align-content: center;
  background: #f2e8df;
}

.brand-mark-badge .brand-logo-img {
  width: 34px;
}

.brand-mark-inline {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.brand-mark-inline .brand-logo-img {
  width: 34px;
}

.brand-word {
  font-family: Georgia, "Times New Roman", serif;
  font-size: 10px;
  line-height: 1;
  letter-spacing: .2em;
}

.brand-mark-round .brand-word {
  color: var(--white);
  font-size: 6px;
}

.home-landing-hero {
  min-height: 410px;
  position: relative;
  color: var(--white);
  background: #260902;
  overflow: visible;
  border-radius: 0 0 34px 34px;
}

.home-landing-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(23, 4, 0, .2) 0%, rgba(24, 4, 0, .12) 45%, rgba(24, 4, 0, .62) 100%),
    var(--hero-img, url("../images/brand/mm-coffee-hero.webp")) center / cover no-repeat;
}

.home-landing-hero::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  height: 130px;
  background: linear-gradient(180deg, transparent, rgba(22, 4, 0, .68));
  pointer-events: none;
}

.hero-location-pill {
  position: absolute;
  z-index: 3;
  top: 56px;
  right: 24px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 44px;
  padding: 0 15px;
  border: 1px solid rgba(255, 255, 255, .28);
  border-radius: 999px;
  background: rgba(255, 255, 255, .14);
  backdrop-filter: blur(12px);
  font-size: 13px;
  font-weight: 800;
}

.home-hero-copy {
  position: absolute;
  z-index: 3;
  left: 22px;
  right: 22px;
  bottom: 88px;
  display: grid;
  justify-items: center;
  text-align: center;
  gap: 2px;
}

.home-hero-copy h1 {
  margin: 12px 0 8px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 54px;
  line-height: .94;
  font-weight: 500;
  letter-spacing: 0;
}

.home-hero-copy p {
  margin: 10px 0 0;
  font-size: 17px;
  font-weight: 600;
}

.home-hero-copy > span {
  margin-top: 7px;
  color: #ffd890;
  font-family: "Segoe Script", "Brush Script MT", cursive;
  font-size: 24px;
  transform: rotate(-5deg);
}

.home-floating-search {
  bottom: -39px;
  left: 22px;
  right: 22px;
}

.home-search-box {
  height: 78px;
  border-radius: 999px;
  padding: 0 26px;
}

.home-search-box input {
  font-size: 24px;
}

.home-modern-panel {
  margin-top: -18px;
  padding-top: 82px;
}

.home-category-row {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
  margin-bottom: 24px;
}

.home-category-card {
  min-width: 0;
  min-height: 126px;
  border: 1px solid var(--line);
  border-radius: 24px;
  color: var(--ink);
  background: rgba(255, 255, 255, .62);
  display: grid;
  place-items: center;
  align-content: center;
  gap: 11px;
  font-size: 14px;
  box-shadow: var(--soft-shadow);
}

.home-category-card.active,
.home-category-card:hover {
  color: var(--white);
  border-color: var(--accent);
  background: var(--accent);
}

.home-section {
  margin-top: 20px;
}

.home-section-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 13px;
}

.home-section-head h2 {
  margin: 0;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 29px;
  font-weight: 500;
}

.home-section-head button {
  border: 0;
  color: var(--accent-dark);
  background: transparent;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 15px;
  font-weight: 900;
  white-space: nowrap;
}

.featured-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.featured-card {
  border: 1px solid var(--line);
  border-radius: 16px;
  overflow: hidden;
  background: rgba(255, 255, 255, .76);
  box-shadow: var(--soft-shadow);
}

.featured-card button,
.special-card button,
.home-story-row {
  width: 100%;
  border: 0;
  color: inherit;
  background: transparent;
  text-align: left;
}

.featured-media {
  position: relative;
  aspect-ratio: 1.42 / 1;
  overflow: hidden;
}

.featured-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.featured-media .featured-ribbon {
  position: absolute;
  left: 14px;
  top: 12px;
  min-height: 28px;
  display: inline-flex;
  align-items: center;
  padding: 0 11px;
  border-radius: 999px;
  color: #ffe0a5;
  background: rgba(51, 28, 20, .82);
  font-size: 12px;
  font-weight: 800;
}

.featured-body {
  padding: 12px 14px 14px;
}

.featured-body h3 {
  margin: 0 0 7px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 21px;
  font-weight: 500;
}

.featured-body p {
  min-height: 42px;
  margin: 0 0 8px;
  color: #514640;
  font-size: 13px;
  line-height: 1.45;
}

.featured-body div {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.featured-body .price {
  font-size: 22px;
}

.featured-body b,
.special-card i {
  width: 38px;
  height: 38px;
  border: 1px solid var(--line);
  border-radius: 50%;
  color: var(--accent-dark);
  display: grid;
  place-items: center;
  font-style: normal;
  background: rgba(255, 252, 249, .82);
}

.special-row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.special-card {
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: rgba(255, 255, 255, .66);
}

.special-card button {
  min-height: 118px;
  display: grid;
  grid-template-columns: 92px minmax(0, 1fr) 30px;
  gap: 10px;
  align-items: center;
  padding: 10px;
}

.special-card img {
  width: 92px;
  height: 92px;
  object-fit: cover;
  border-radius: 12px;
}

.special-card strong,
.home-story-row strong,
.home-social-row strong {
  display: block;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 17px;
  line-height: 1.08;
  font-weight: 500;
}

.special-card em,
.home-story-row em,
.home-social-row em {
  display: block;
  margin-top: 6px;
  color: #514640;
  font-style: normal;
  font-size: 12px;
  line-height: 1.35;
}

.special-card .price {
  display: block;
  margin-top: 7px;
  font-size: 17px;
}

.home-story-row,
.home-social-row {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr) 142px 34px;
  gap: 13px;
  align-items: center;
  min-height: 88px;
  margin-top: 20px;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 16px;
  color: inherit;
  text-decoration: none;
  background: rgba(255, 255, 255, .66);
}

.home-story-row img {
  width: 142px;
  height: 66px;
  border-radius: 13px;
  object-fit: cover;
}

.home-social-row {
  grid-template-columns: 58px minmax(0, 1fr) minmax(120px, .8fr) 30px;
}

.social-copy {
  color: #514640;
  font-size: 12px;
  line-height: 1.35;
}


.hero-menu .hero-copy {
  bottom: 68px;
}

.hero-menu .hero-copy h1 {
  margin: 8px 0 6px;
  font-size: 36px;
}

.hero-menu .hero-copy p {
  font-size: 16px;
}

.page-panel-menu {
  padding-top: 64px;
}

.menu-context-banner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 16px;
  padding: 13px 14px;
  border: 1px solid rgba(165, 14, 24, .12);
  border-radius: 18px;
  background: rgba(165, 14, 24, .05);
}

.menu-context-banner strong {
  font-size: 14px;
}

.menu-context-banner button {
  border: 0;
  color: var(--accent-dark);
  background: transparent;
  font-size: 12px;
  font-weight: 800;
}

.assistant-widget {
  position: fixed;
  right: 14px;
  bottom: calc(var(--nav-h) + 18px + env(safe-area-inset-bottom, 0px));
  z-index: 35;
  display: grid;
  justify-items: end;
  gap: 10px;
}

.assistant-fab {
  width: 60px;
  height: 60px;
  border: 0;
  border-radius: 50%;
  padding: 0;
  color: var(--white);
  background: linear-gradient(135deg, #a50e18, #7e0710);
  display: inline-grid;
  place-items: center;
  box-shadow: 0 18px 32px rgba(126, 7, 16, .24);
}

.assistant-fab-icon {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  display: grid;
  place-items: center;
}

.assistant-fab svg {
  width: 28px;
  height: 28px;
}

.assistant-panel {
  width: min(348px, calc(100vw - 24px));
  max-height: min(70vh, 560px);
  border: 1px solid rgba(226, 215, 207, .92);
  border-radius: 24px;
  overflow: hidden;
  background: rgba(255, 252, 249, .98);
  box-shadow: 0 22px 48px rgba(44, 25, 18, .16);
  backdrop-filter: blur(18px);
}

.assistant-panel-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  padding: 16px 16px 12px;
  border-bottom: 1px solid var(--line);
}

.assistant-panel-head strong {
  display: block;
  font-size: 15px;
}

.assistant-panel-head p {
  margin: 4px 0 0;
  color: var(--muted);
  font-size: 12px;
}

.assistant-close {
  width: 32px;
  height: 32px;
  border: 0;
  border-radius: 50%;
  background: rgba(0, 0, 0, .04);
  font-size: 22px;
  line-height: 1;
}

.assistant-suggestions {
  display: flex;
  gap: 8px;
  overflow-x: auto;
  padding: 12px 16px 0;
  scrollbar-width: none;
}

.assistant-suggestions::-webkit-scrollbar {
  display: none;
}

.assistant-suggestions button {
  flex: 0 0 auto;
  border: 1px solid var(--line);
  border-radius: 999px;
  padding: 8px 12px;
  background: #fff;
  font-size: 12px;
  font-weight: 700;
}

.assistant-messages {
  display: grid;
  gap: 10px;
  max-height: 300px;
  overflow: auto;
  padding: 14px 16px;
}

.assistant-message {
  display: flex;
}

.assistant-message p {
  margin: 0;
  max-width: 90%;
  padding: 10px 12px;
  border-radius: 16px;
  font-size: 13px;
  line-height: 1.45;
}

.assistant-message.is-assistant p {
  color: #251b17;
  background: #fff;
  border: 1px solid var(--line);
}

.assistant-message.is-user {
  justify-content: flex-end;
}

.assistant-message.is-user p {
  color: var(--white);
  background: var(--accent);
}

.assistant-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  padding: 12px 16px 16px;
  border-top: 1px solid var(--line);
}

.assistant-form input {
  min-width: 0;
  height: 46px;
  padding: 0 14px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: #fff;
}

.assistant-form button {
  height: 46px;
  border: 0;
  border-radius: 14px;
  padding: 0 16px;
  color: var(--white);
  background: var(--accent);
  font-weight: 800;
}

.desktop-top-nav {
  display: none;
}

.admin-choice-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.admin-choice-grid h3 {
  margin: 0 0 10px;
  font-size: 15px;
}

.admin-checkbox-list {
  display: grid;
  gap: 9px;
  max-height: 430px;
  overflow: auto;
  padding-right: 4px;
}

.admin-check-row {
  display: grid;
  grid-template-columns: 18px 48px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  padding: 8px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: rgba(255, 255, 255, .64);
}

.admin-check-row img {
  width: 48px;
  height: 48px;
  object-fit: cover;
  border-radius: 9px;
}

.admin-category-choice-media {
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  overflow: hidden;
  border-radius: 9px;
  background: var(--surface-soft, #f5f1ef);
  color: var(--accent, #7a1733);
}

.admin-category-choice-media img,
.admin-category-choice-media svg {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.admin-category-choice-media svg {
  width: 26px;
  height: 26px;
}

.admin-check-row strong,
.admin-check-row em {
  display: block;
}

.admin-check-row strong {
  font-size: 12px;
}

.admin-check-row em {
  margin-top: 3px;
  color: var(--muted);
  font-size: 11px;
  font-style: normal;
}

@media (min-width: 768px) {
  .app-stage {
    padding: 22px;
  }

  .phone-shell {
    width: 100%;
    max-width: 820px;
    min-height: calc(100dvh - 44px);
    border: 1px solid rgba(226, 215, 207, .85);
    border-radius: 28px;
    box-shadow: var(--shadow);
  }

  .desktop-top-nav {
    position: sticky;
    top: 0;
    z-index: 30;
    height: 72px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 22px;
    padding: 0 24px;
    border-bottom: 1px solid rgba(232, 223, 216, .76);
    background: rgba(255, 250, 246, .92);
    backdrop-filter: blur(16px);
  }

  .desktop-brand {
    border: 0;
    color: var(--ink);
    background: transparent;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 22px;
  }

  .desktop-top-nav nav {
    display: inline-flex;
    align-items: center;
    gap: 8px;
  }

  .desktop-top-nav nav button,
  .desktop-top-nav nav a {
    min-height: 38px;
    border: 1px solid transparent;
    border-radius: 999px;
    color: var(--ink);
    background: transparent;
    display: inline-flex;
    align-items: center;
    padding: 0 14px;
    text-decoration: none;
    font-size: 13px;
    font-weight: 800;
  }

  .desktop-top-nav nav .active,
  .desktop-top-nav nav button:hover,
  .desktop-top-nav nav a:hover {
    border-color: var(--line);
    color: var(--accent-dark);
    background: rgba(255, 255, 255, .68);
  }

  .hero {
    height: 284px;
  }

  .hero-copy h1 {
    font-size: 34px;
  }

  .page-panel {
    padding-left: 24px;
    padding-right: 24px;
  }

  .product-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
  }

  .menu-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 24px;
  }

  .gallery-grid {
    grid-template-columns: repeat(6, 1fr);
  }

  .bottom-nav {
    display: none;
  }

  .home-landing-hero {
    min-height: 500px;
    border-radius: 0 0 34px 34px;
  }

  .home-hero-copy {
    bottom: 102px;
  }

  .home-hero-copy h1 {
    font-size: 76px;
  }

  .home-floating-search {
    left: 42px;
    right: 42px;
    bottom: -44px;
  }

  .home-modern-panel {
    padding: 92px 42px 46px;
  }

  .home-category-card {
    min-height: 138px;
  }

  .phone-shell {
    padding-bottom: 0;
  }

  .detail-media {
    height: 420px;
  }

  .related-strip {
    grid-auto-columns: 160px;
  }
}

@media (min-width: 1160px) {
  .phone-shell {
    width: 100%;
    max-width: 1120px;
  }

  .product-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .hero {
    height: 306px;
  }

  .page-panel {
    padding-left: 30px;
    padding-right: 30px;
  }

  .bottom-nav {
    display: none;
  }

  .featured-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .home-category-row {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (max-width: 520px) {
  .app-stage {
    justify-content: flex-start;
  }

  .phone-shell,
  .bottom-nav {
    max-width: none;
  }

  .special-row {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(250px, 78%);
    grid-template-columns: none;
    overflow-x: auto;
    padding-bottom: 8px;
    scrollbar-width: none;
  }

  .special-row::-webkit-scrollbar {
    display: none;
  }
}

@media (max-width: 900px) {
  .admin-stage {
    padding: 16px;
  }

  .admin-shell {
    grid-template-columns: 1fr;
  }

  .admin-sidebar {
    min-height: auto;
  }

  .admin-nav {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .admin-grid,
  .site-settings {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 430px) {
  .hero {
    height: 254px;
  }

  .hero-copy h1 {
    font-size: 26px;
  }

  .home-landing-hero {
    min-height: 390px;
  }

  .home-hero-copy {
    bottom: 82px;
  }

  .home-hero-copy h1 {
    font-size: 45px;
  }

  .home-hero-copy p {
    font-size: 15px;
  }

  .home-search-box {
    height: 66px;
    padding: 0 18px;
  }

  .home-search-box input {
    font-size: 19px;
  }

  .home-category-row {
    gap: 9px;
  }

  .home-category-card {
    min-height: 104px;
    border-radius: 19px;
    font-size: 12px;
  }

  .featured-grid,
  .special-row {
    gap: 10px;
  }

  .featured-body h3 {
    font-size: 18px;
  }

  .home-story-row,
  .home-social-row {
    grid-template-columns: 58px minmax(0, 1fr) 30px;
  }

  .home-story-row img,
  .social-copy {
    display: none;
  }

  .menu-row {
    grid-template-columns: 102px minmax(0, 1fr) 54px;
    gap: 14px;
  }

  .admin-nav {
    grid-template-columns: 1fr 1fr;
  }
}

/* Controlled fixes: remove fake device bar, stabilize public UI, and add lightbox/auto-scroll support. */
.status-bar {
  display: none !important;
}

.back-btn,
.detail-media .back-btn {
  top: 22px;
}

.hero-location-pill {
  top: 22px;
}

.home-modern-panel {
  padding-top: 70px;
}

.home-category-row {
  display: none;
}

.gallery-tile {
  width: 100%;
  border: 0;
  padding: 0;
  cursor: zoom-in;
  text-align: left;
  box-shadow: none;
}

.gallery-tile:focus-visible {
  outline: 3px solid rgba(165, 14, 24, .32);
  outline-offset: 2px;
}

.gallery-lightbox {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: grid;
  place-items: center;
  padding: 22px;
  background: rgba(16, 7, 4, .78);
  backdrop-filter: blur(14px);
}

.lightbox-frame {
  width: min(100%, 980px);
  max-height: min(82dvh, 720px);
  margin: 0;
  display: grid;
  place-items: center;
}

.lightbox-frame img {
  width: auto;
  max-width: 100%;
  max-height: min(82dvh, 720px);
  border-radius: 18px;
  object-fit: contain;
  box-shadow: 0 24px 70px rgba(0, 0, 0, .34);
}

.lightbox-close,
.lightbox-arrow {
  position: fixed;
  z-index: 1001;
  border: 1px solid rgba(255, 255, 255, .22);
  color: var(--white);
  background: rgba(255, 255, 255, .14);
  backdrop-filter: blur(10px);
  display: grid;
  place-items: center;
}

.lightbox-close {
  top: 20px;
  right: 20px;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  font-size: 30px;
  line-height: 1;
}

.lightbox-arrow {
  top: 50%;
  width: 46px;
  height: 46px;
  border-radius: 50%;
  transform: translateY(-50%);
}

.lightbox-prev {
  left: 20px;
}

.lightbox-next {
  right: 20px;
}

.related-strip {
  scroll-behavior: smooth;
  overscroll-behavior-x: contain;
}

@media (max-width: 520px) {
  .home-modern-panel {
    padding-top: 60px;
  }

  .lightbox-arrow {
    width: 40px;
    height: 40px;
  }

  .lightbox-prev {
    left: 10px;
  }

  .lightbox-next {
    right: 10px;
  }

  .lightbox-close {
    top: 12px;
    right: 12px;
  }
}

/* Database/admin enhancement pass */
.admin-save-status {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  padding: 0 12px;
  border-radius: 999px;
  background: rgba(85, 42, 22, .08);
  color: var(--muted);
  font-size: 12px;
  font-weight: 700;
  white-space: nowrap;
}

.admin-product-row.is-passive {
  opacity: .58;
  background: rgba(0, 0, 0, .025);
}

.admin-toggle-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.admin-switch {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 14px;
  border: 1px solid rgba(84, 42, 23, .13);
  border-radius: 14px;
  background: rgba(255, 255, 255, .72);
  color: var(--brown);
  font-weight: 800;
  cursor: pointer;
}

.admin-switch.wide {
  grid-column: 1 / -1;
}

.admin-switch input {
  width: 18px;
  height: 18px;
  accent-color: var(--red);
}

.admin-pairing-box {
  grid-column: 1 / -1;
  padding: 16px;
  border-radius: 18px;
  background: rgba(245, 238, 229, .72);
  border: 1px solid rgba(84, 42, 23, .1);
}

.admin-pairing-box h3 {
  margin: 0 0 12px;
  font-size: 15px;
}

.admin-checkbox-list.compact {
  max-height: 260px;
}

.small-list {
  max-height: 440px;
  overflow: auto;
}

.gallery-admin-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
  gap: 14px;
}

.gallery-admin-item {
  padding: 10px;
  border: 1px solid rgba(84, 42, 23, .12);
  border-radius: 18px;
  background: #fff;
}

.gallery-admin-item img {
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  border-radius: 14px;
  margin-bottom: 10px;
}

.detail-product-info {
  margin-top: 12px;
  padding: 13px 14px;
  border-radius: 16px;
  background: rgba(255, 246, 236, .92);
  color: var(--brown);
  font-size: 13px;
  line-height: 1.55;
}

.detail-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}

.detail-badges span {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 0 10px;
  border-radius: 999px;
  background: rgba(165, 14, 24, .09);
  color: var(--red);
  font-size: 12px;
  font-weight: 900;
}

.muted-line {
  opacity: .72;
  margin-top: 6px !important;
}

.empty-state.compact {
  min-height: auto;
  padding: 12px;
  font-size: 12px;
}

.promo-popup {
  position: fixed;
  inset: 0;
  z-index: 950;
  display: grid;
  place-items: center;
  padding: 22px;
  background: rgba(19, 9, 5, .55);
  backdrop-filter: blur(10px);
}

.promo-popup-card {
  position: relative;
  width: min(92vw, 430px);
  overflow: hidden;
  border-radius: 28px;
  background: #fffaf5;
  box-shadow: 0 26px 80px rgba(0, 0, 0, .32);
  border: 1px solid rgba(255, 255, 255, .42);
}

.promo-popup-card img {
  width: 100%;
  height: 190px;
  object-fit: cover;
  display: block;
}

.promo-popup-body {
  padding: 22px;
}

.promo-popup-body h2 {
  margin: 0 0 8px;
  font-size: 24px;
  color: var(--brown);
}

.promo-popup-body p {
  margin: 0 0 16px;
  color: var(--muted);
  line-height: 1.55;
}

.promo-popup-close {
  position: absolute;
  top: 12px;
  right: 12px;
  z-index: 1;
  width: 38px;
  height: 38px;
  border: 0;
  border-radius: 50%;
  background: rgba(255, 255, 255, .88);
  color: var(--brown);
  font-size: 25px;
  line-height: 1;
  box-shadow: 0 8px 20px rgba(0, 0, 0, .16);
}

@media (max-width: 720px) {
  .admin-toggle-grid {
    grid-template-columns: 1fr;
  }

  .admin-save-status {
    width: 100%;
    justify-content: center;
    white-space: normal;
    text-align: center;
  }
}


@media (max-width: 520px) {
  .assistant-widget {
    right: 12px;
    bottom: calc(var(--nav-h) + 14px + env(safe-area-inset-bottom, 0px));
  }

  .assistant-panel {
    width: calc(100vw - 24px);
  }

  .menu-tab {
    font-size: 10px;
  }

  .menu-tab-icon {
    width: 50px;
    height: 50px;
  }

  .menu-tab.active .menu-tab-icon {
    width: 56px;
    height: 56px;
  }
}

@media (min-width: 768px) {
  .assistant-widget {
    right: 34px;
    bottom: 28px;
  }
}


/* Hotfix: fixed bottom navbar + clean center logo + stable category tabs */
.bottom-nav {
  position: fixed !important;
  left: 50% !important;
  right: auto !important;
  bottom: env(safe-area-inset-bottom, 0px) !important;
  transform: translateX(-50%) !important;
  z-index: 70 !important;
}

.logo-tab {
  top: -28px;
  height: 70px;
}

.logo-tab .brand-mark-round,
.brand-mark-round {
  width: 78px;
  height: 78px;
  border-radius: 50%;
  background: var(--accent);
  display: grid;
  place-items: center;
  align-content: center;
  gap: 1px;
  padding: 8px 0 7px;
  overflow: hidden;
  box-shadow: 0 16px 30px rgba(126, 7, 16, .28);
}

.logo-tab .brand-mark-round .brand-logo-img,
.brand-mark-round .brand-logo-img {
  width: 45px;
  height: auto;
  max-height: 50px;
  object-fit: contain;
  filter: invert(1);
}

.logo-tab .brand-mark-round .brand-word,
.brand-mark-round .brand-word {
  display: block;
  color: #fff;
  font-size: 7px;
  line-height: 1;
  letter-spacing: .18em;
  margin-top: 0;
}

.page-panel,
.detail-sheet,
.home-modern-panel {
  padding-bottom: calc(var(--nav-h) + 34px) !important;
}

.menu-tabs-shell {
  margin: 0 0 20px;
  padding: 18px 11px 15px;
  border-radius: 30px;
  background: rgba(255, 252, 249, .98);
  border: 1px solid rgba(226, 215, 207, .96);
  box-shadow: 0 10px 26px rgba(44, 25, 18, .06);
}

.menu-tabs {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  align-items: start;
  gap: 2px;
  overflow: visible;
}

.menu-tab {
  min-width: 0;
  display: grid;
  justify-items: center;
  align-content: start;
  gap: 8px;
  padding: 0;
  font-size: 10.5px;
  line-height: 1.15;
}

.menu-tab-icon {
  width: 50px;
  height: 50px;
  border-radius: 18px;
  display: grid;
  place-items: center;
}

.menu-tab-icon svg,
.menu-tab svg {
  width: 31px;
  height: 31px;
  stroke-width: 1.85;
}

.menu-tab.active .menu-tab-icon {
  width: 58px;
  height: 58px;
  border-radius: 20px;
  color: var(--white);
  background: var(--accent);
  box-shadow: 0 12px 22px rgba(165, 14, 24, .22);
}

.menu-tab span:last-child {
  min-height: 24px;
  display: grid;
  place-items: start center;
  white-space: normal;
  text-align: center;
  font-weight: 800;
}

.assistant-widget {
  right: 14px;
  bottom: calc(var(--nav-h) + 20px + env(safe-area-inset-bottom, 0px));
  z-index: 60;
}

.assistant-fab {
  width: 56px;
  height: 56px;
  border-radius: 50%;
}

@media (min-width: 768px) {
  .bottom-nav { display: none !important; }
}


/* Final category panel + Barista refinement */
.menu-tabs-shell {
  margin: 0 0 18px;
  padding: 18px 12px 16px;
  border-radius: 28px;
  background: rgba(255, 252, 249, .99);
  border: 1px solid rgba(226, 215, 207, .92);
  box-shadow: 0 8px 20px rgba(44, 25, 18, .05);
}

.menu-tabs {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  align-items: start;
  gap: 4px;
  overflow: visible;
}

.menu-tab {
  min-width: 0;
  display: grid;
  justify-items: center;
  align-content: start;
  gap: 9px;
  padding: 0;
  font-size: 10.5px;
  line-height: 1.12;
  color: #2a201c;
}

.menu-tab-icon {
  width: 52px;
  height: 52px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  color: #211916;
  background: transparent;
}

.menu-tab-icon svg,
.menu-tab svg {
  width: 33px;
  height: 33px;
  stroke-width: 1.8;
}

.menu-tab.active .menu-tab-icon {
  width: 58px;
  height: 58px;
  border-radius: 50%;
  color: var(--white);
  background: var(--accent);
  box-shadow: 0 12px 22px rgba(165, 14, 24, .24);
}

.menu-tab span:last-child {
  min-height: 24px;
  display: grid;
  place-items: start center;
  white-space: normal;
  text-align: center;
  font-weight: 800;
}

.menu-tab.active span:last-child {
  color: var(--accent-dark);
}

.assistant-panel-head strong::after {
  content: ' • Barista';
  display: none;
}


/* Category reference lock v4 - forced + cache-busted */
.page-panel-menu .menu-tabs-shell {
  margin: -2px 0 20px !important;
  padding: 18px 10px 14px !important;
  border-radius: 30px !important;
  border: 1px solid rgba(226, 215, 207, .94) !important;
  background: rgba(255, 252, 249, .995) !important;
  box-shadow: 0 10px 24px rgba(44, 25, 18, .055) !important;
}

.page-panel-menu .menu-tabs {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  align-items: start !important;
  justify-items: stretch !important;
  gap: 0 !important;
  overflow: visible !important;
  padding: 0 !important;
}

.page-panel-menu .menu-tab {
  width: auto !important;
  min-width: 0 !important;
  min-height: 88px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #221916 !important;
  display: grid !important;
  justify-items: center !important;
  align-content: start !important;
  gap: 6px !important;
  font-size: 11px !important;
  line-height: 1.1 !important;
  font-weight: 700 !important;
}

.page-panel-menu .menu-tab-icon {
  width: 58px !important;
  height: 58px !important;
  border-radius: 50% !important;
  display: grid !important;
  place-items: center !important;
  color: #1e1715 !important;
  background: transparent !important;
  box-shadow: none !important;
  transition: none !important;
}

.page-panel-menu .menu-tab-icon svg,
.page-panel-menu .menu-tab svg {
  width: 38px !important;
  height: 38px !important;
  stroke-width: 1.65 !important;
}

.page-panel-menu .menu-tab.active .menu-tab-icon {
  width: 62px !important;
  height: 62px !important;
  border-radius: 50% !important;
  color: #fff !important;
  background: var(--accent) !important;
  box-shadow: 0 12px 20px rgba(165, 14, 24, .22) !important;
}

.page-panel-menu .menu-tab.active .menu-tab-icon svg {
  width: 39px !important;
  height: 39px !important;
}

.page-panel-menu .menu-tab span:last-child {
  min-height: 22px !important;
  width: 100% !important;
  display: grid !important;
  place-items: start center !important;
  white-space: normal !important;
  overflow: visible !important;
  text-align: center !important;
  color: #211916 !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  line-height: 1.1 !important;
}

.page-panel-menu .menu-tab.active span:last-child {
  color: var(--accent-dark) !important;
}

@media (max-width: 380px) {
  .page-panel-menu .menu-tabs-shell {
    padding-left: 8px !important;
    padding-right: 8px !important;
  }

  .page-panel-menu .menu-tab {
    font-size: 10px !important;
  }

  .page-panel-menu .menu-tab-icon {
    width: 54px !important;
    height: 54px !important;
  }

  .page-panel-menu .menu-tab.active .menu-tab-icon {
    width: 58px !important;
    height: 58px !important;
  }

  .page-panel-menu .menu-tab-icon svg,
  .page-panel-menu .menu-tab svg {
    width: 35px !important;
    height: 35px !important;
  }
}


/* Category strip reference refinement v5 */
.page-panel-menu .menu-tabs-shell {
  margin: 0 0 18px !important;
  padding: 16px 10px 14px !important;
  border-radius: 28px !important;
  border: 1px solid rgba(224, 213, 205, .96) !important;
  background: #fffdfa !important;
  box-shadow: 0 6px 18px rgba(46, 27, 18, .05) !important;
}

.page-panel-menu .menu-tabs {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  align-items: start !important;
  justify-items: center !important;
  gap: 2px !important;
  overflow: visible !important;
  padding: 0 !important;
}

.page-panel-menu .menu-tab {
  width: 100% !important;
  min-width: 0 !important;
  min-height: 82px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #221917 !important;
  display: grid !important;
  justify-items: center !important;
  align-content: start !important;
  gap: 7px !important;
  font-size: 10.5px !important;
  line-height: 1.1 !important;
  font-weight: 700 !important;
}

.page-panel-menu .menu-tab-icon {
  width: 48px !important;
  height: 48px !important;
  border-radius: 999px !important;
  display: grid !important;
  place-items: center !important;
  color: #231b18 !important;
  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
}

.page-panel-menu .menu-tab-icon svg,
.page-panel-menu .menu-tab svg {
  width: 30px !important;
  height: 30px !important;
  stroke-width: 1.75 !important;
}

.page-panel-menu .menu-tab.active .menu-tab-icon {
  width: 56px !important;
  height: 56px !important;
  border-radius: 999px !important;
  color: #fff !important;
  background: var(--accent) !important;
  box-shadow: 0 10px 20px rgba(165, 14, 24, .22) !important;
}

.page-panel-menu .menu-tab.active .menu-tab-icon svg {
  width: 31px !important;
  height: 31px !important;
}

.page-panel-menu .menu-tab span:last-child {
  min-height: 24px !important;
  width: 100% !important;
  margin-top: 0 !important;
  display: grid !important;
  place-items: start center !important;
  white-space: normal !important;
  overflow: visible !important;
  text-align: center !important;
  color: #1f1715 !important;
  font-size: 10.5px !important;
  font-weight: 800 !important;
  line-height: 1.15 !important;
}

.page-panel-menu .menu-tab.active span:last-child {
  color: var(--accent-dark) !important;
}

@media (max-width: 380px) {
  .page-panel-menu .menu-tabs-shell {
    padding: 16px 8px 12px !important;
  }

  .page-panel-menu .menu-tab {
    min-height: 80px !important;
  }

  .page-panel-menu .menu-tab-icon {
    width: 46px !important;
    height: 46px !important;
  }

  .page-panel-menu .menu-tab.active .menu-tab-icon {
    width: 54px !important;
    height: 54px !important;
  }

  .page-panel-menu .menu-tab-icon svg,
  .page-panel-menu .menu-tab svg {
    width: 28px !important;
    height: 28px !important;
  }
}


/* Category reference rebuild v6 - independent class names */
.page-panel-menu {
  padding-left: 0 !important;
  padding-right: 0 !important;
  padding-top: 62px !important;
}

.page-panel-menu > .menu-list,
.page-panel-menu > .menu-context-banner {
  margin-left: 16px !important;
  margin-right: 16px !important;
}

.category-reference-shell {
  margin: -4px 0 20px !important;
  padding: 0 0 18px !important;
  background: transparent !important;
}

.category-reference-strip {
  width: 100% !important;
  min-height: 116px !important;
  padding: 18px 14px 15px !important;
  border: 0 !important;
  border-radius: 30px 30px 0 0 !important;
  background: #fffdfa !important;
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  align-items: start !important;
  justify-items: center !important;
  gap: 0 !important;
  box-shadow:
    0 -1px 0 rgba(226, 215, 207, .84) inset,
    0 12px 22px rgba(44, 25, 18, .045) !important;
}

.category-reference-item {
  width: 100% !important;
  min-width: 0 !important;
  min-height: 82px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: #211916 !important;
  display: grid !important;
  justify-items: center !important;
  align-content: start !important;
  gap: 8px !important;
  text-align: center !important;
  cursor: pointer !important;
}

.category-reference-icon {
  width: 58px !important;
  height: 58px !important;
  border-radius: 999px !important;
  display: grid !important;
  place-items: center !important;
  color: #26201d !important;
  background: transparent !important;
  box-shadow: none !important;
}

.category-reference-icon svg {
  width: 37px !important;
  height: 37px !important;
  stroke-width: 1.45 !important;
}

.category-reference-item.active .category-reference-icon {
  width: 64px !important;
  height: 64px !important;
  color: #fff !important;
  background: var(--accent) !important;
  box-shadow: 0 12px 22px rgba(165, 14, 24, .22) !important;
}

.category-reference-item.active .category-reference-icon svg {
  width: 39px !important;
  height: 39px !important;
}

.category-reference-label {
  width: 100% !important;
  min-height: 22px !important;
  display: block !important;
  color: #2a201d !important;
  font-size: 11px !important;
  line-height: 1.12 !important;
  font-weight: 800 !important;
  text-align: center !important;
  white-space: normal !important;
  overflow: visible !important;
}

.category-reference-item.active .category-reference-label {
  color: var(--accent-dark) !important;
}

@media (max-width: 380px) {
  .category-reference-strip {
    min-height: 110px !important;
    padding-left: 8px !important;
    padding-right: 8px !important;
  }

  .category-reference-icon {
    width: 52px !important;
    height: 52px !important;
  }

  .category-reference-icon svg {
    width: 33px !important;
    height: 33px !important;
  }

  .category-reference-item.active .category-reference-icon {
    width: 58px !important;
    height: 58px !important;
  }

  .category-reference-label {
    font-size: 10px !important;
  }
}



/* Emoji category icons v8 */
.category-reference-strip {
  min-height: 112px !important;
  padding-top: 17px !important;
}

.category-reference-icon.category-reference-emoji {
  font-family: "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", system-ui, sans-serif !important;
  font-size: 31px !important;
  line-height: 1 !important;
  border-radius: 999px !important;
  display: grid !important;
  place-items: center !important;
  color: inherit !important;
  background: transparent !important;
  filter: saturate(.95) contrast(1.02) !important;
}

.category-reference-item.active .category-reference-icon.category-reference-emoji {
  font-size: 32px !important;
  color: #fff !important;
  background: var(--accent) !important;
  box-shadow: 0 12px 22px rgba(165, 14, 24, .22) !important;
}

.category-reference-item.active .category-reference-icon.category-reference-emoji::before {
  content: "";
}

.category-reference-label {
  margin-top: 1px !important;
}


/* Vector category icons v9 */
.category-reference-icon.category-reference-vector {
  font-size: 0 !important;
  background: transparent !important;
}

.category-reference-icon.category-reference-vector svg {
  width: 34px !important;
  height: 34px !important;
  display: block !important;
  color: currentColor !important;
}

.category-reference-item.active .category-reference-icon.category-reference-vector {
  color: #fff !important;
  background: var(--accent) !important;
}

.category-reference-item.active .category-reference-icon.category-reference-vector svg {
  width: 35px !important;
  height: 35px !important;
}

@media (max-width: 380px) {
  .category-reference-icon.category-reference-vector svg {
    width: 31px !important;
    height: 31px !important;
  }
}


/* Home categories + Admin usability + Barista smart v11 */
.home-menu-categories { margin-top: 18px !important; }

.home-category-strip {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 4px;
  padding: 14px 8px 12px;
  border: 1px solid rgba(226, 215, 207, .92);
  border-radius: 24px;
  background: #fffdfa;
  box-shadow: 0 8px 20px rgba(44, 25, 18, .045);
}

.home-category-pill {
  min-width: 0;
  border: 0;
  background: transparent;
  color: #211916;
  display: grid;
  justify-items: center;
  gap: 7px;
  padding: 0;
  font-size: 10px;
  line-height: 1.1;
  font-weight: 800;
  text-align: center;
}

.home-category-icon {
  width: 46px;
  height: 46px;
  border-radius: 999px;
  display: grid;
  place-items: center;
  color: #211916;
}

.home-category-icon svg {
  width: 29px;
  height: 29px;
}

.home-category-pill:active .home-category-icon,
.home-category-pill:hover .home-category-icon {
  color: #fff;
  background: var(--accent);
}

.admin-shell { gap: 18px; }
.admin-sidebar { border-radius: 24px; }
.admin-nav { gap: 8px; }
.admin-nav button { min-height: 42px; border-radius: 14px; text-align: left; }

.admin-topbar {
  position: sticky;
  top: 14px;
  z-index: 5;
  border: 1px solid rgba(232, 223, 216, .8);
  border-radius: 22px;
  padding: 16px;
  background: rgba(255, 250, 246, .94);
  backdrop-filter: blur(16px);
  box-shadow: 0 10px 28px rgba(44, 25, 18, .06);
}

.admin-card { border-radius: 22px; }
.admin-grid-wide { grid-template-columns: 1fr; }

.admin-card-title-row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 16px;
}

.admin-card-title-row h2 { margin-bottom: 4px; }

.admin-card-title-row p,
.admin-help-text {
  margin: 0 0 12px;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}

.admin-checkbox-list.compact { max-height: 520px; }

.barista-analytics-list { display: grid; gap: 10px; }

.barista-analytics-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 13px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: rgba(255, 255, 255, .65);
}

.barista-analytics-row strong,
.barista-analytics-row em,
.barista-analytics-row b { display: block; }

.barista-analytics-row em {
  margin-top: 4px;
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}

.barista-analytics-row b {
  margin-top: 6px;
  color: var(--accent-dark);
  font-size: 12px;
}

.assistant-widget.open .assistant-fab {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

.assistant-message.is-thinking p {
  min-width: 58px;
  display: inline-flex;
  gap: 5px;
  align-items: center;
}

.assistant-message.is-thinking span {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--accent);
  opacity: .35;
  animation: barista-thinking 1s infinite ease-in-out;
}

.assistant-message.is-thinking span:nth-child(2) { animation-delay: .16s; }
.assistant-message.is-thinking span:nth-child(3) { animation-delay: .32s; }

@keyframes barista-thinking {
  0%, 80%, 100% { transform: translateY(0); opacity: .35; }
  40% { transform: translateY(-4px); opacity: 1; }
}

.assistant-form button:disabled,
.assistant-form input:disabled {
  opacity: .65;
  cursor: wait;
}

@media (max-width: 760px) {
  .admin-stage { padding: 14px; }
  .admin-shell { grid-template-columns: 1fr; }
  .admin-sidebar { position: static; }
  .admin-nav { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .admin-topbar { top: 8px; }
  .admin-choice-grid { grid-template-columns: 1fr; }
  .barista-analytics-row { grid-template-columns: 1fr; }
}

@media (max-width: 380px) {
  .home-category-strip { padding-left: 5px; padding-right: 5px; }
  .home-category-pill { font-size: 9px; }
  .home-category-icon { width: 42px; height: 42px; }
  .home-category-icon svg { width: 26px; height: 26px; }
}

/* Professional admin + Barista intelligence v12 */
.admin-grid-pro {
  grid-template-columns: minmax(0, 1fr) minmax(360px, .9fr);
  align-items: start;
}

.wide-card {
  grid-column: 1 / -1;
}

.admin-overview-card {
  background: linear-gradient(135deg, rgba(255, 253, 250, .98), rgba(255, 245, 240, .92));
}

.admin-stat-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-top: 14px;
}

.admin-stat-grid article {
  padding: 14px;
  border: 1px solid rgba(228, 218, 210, .9);
  border-radius: 18px;
  background: rgba(255, 255, 255, .72);
}

.admin-stat-grid strong {
  display: block;
  color: var(--accent-dark);
  font-size: 24px;
  line-height: 1;
  letter-spacing: -.04em;
}

.admin-stat-grid span {
  display: block;
  margin-top: 6px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}

.admin-product-insights {
  margin-top: 12px;
  padding: 12px 14px;
  border-radius: 16px;
  background: rgba(165, 14, 24, .06);
  color: var(--text);
  font-size: 12px;
  line-height: 1.45;
}

.admin-product-insights strong {
  display: block;
  margin-bottom: 4px;
  color: var(--accent-dark);
}

.admin-filter-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(160px, 220px);
  gap: 10px;
  margin-bottom: 14px;
}

.field.compact input,
.field.compact select {
  min-height: 42px;
}

.admin-product-list-pro {
  max-height: 720px;
  overflow: auto;
  padding-right: 4px;
}

.admin-health-ok,
.admin-health-warn {
  display: inline-flex;
  width: fit-content;
  margin-top: 6px;
  padding: 5px 8px;
  border-radius: 999px;
  font-size: 11px;
  font-style: normal;
  font-weight: 900;
}

.admin-health-ok {
  color: #235437;
  background: rgba(35, 84, 55, .1);
}

.admin-health-warn {
  color: var(--accent-dark);
  background: rgba(165, 14, 24, .09);
}

.admin-editor-card {
  position: sticky;
  top: 96px;
}

.product-editor-form {
  gap: 14px;
}

.admin-form-section {
  display: grid;
  gap: 12px;
  padding: 14px;
  border: 1px solid rgba(228, 218, 210, .86);
  border-radius: 18px;
  background: rgba(255, 255, 255, .62);
}

.admin-form-section h3 {
  margin: 0;
  color: var(--accent-dark);
  font-size: 13px;
  letter-spacing: -.01em;
}

.detail-barista-btn {
  width: 100%;
  margin: 14px 0 10px;
  border: 0;
  border-radius: 18px;
  padding: 13px 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  color: #fff;
  background: var(--accent);
  font-weight: 900;
  box-shadow: 0 12px 22px rgba(165, 14, 24, .18);
}

.barista-analytics-row.is-hot {
  border-color: rgba(165, 14, 24, .28);
  background: rgba(165, 14, 24, .06);
}

.barista-log-list {
  display: grid;
  gap: 10px;
  max-height: 520px;
  overflow: auto;
}

.barista-log-row {
  padding: 13px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: rgba(255, 255, 255, .68);
}

.barista-log-row.not-found {
  border-color: rgba(165, 14, 24, .24);
  background: rgba(165, 14, 24, .045);
}

.barista-log-row strong,
.barista-log-row p,
.barista-log-row em {
  display: block;
}

.barista-log-row strong {
  color: var(--text);
  font-size: 13px;
}

.barista-log-row p {
  margin: 6px 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}

.barista-log-row em {
  color: rgba(71, 51, 43, .66);
  font-size: 11px;
  font-style: normal;
}

.assistant-widget.open .assistant-fab {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

@media (max-width: 1080px) {
  .admin-grid-pro {
    grid-template-columns: 1fr;
  }

  .admin-editor-card {
    position: static;
  }
}

@media (max-width: 760px) {
  .admin-stat-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .admin-filter-row {
    grid-template-columns: 1fr;
  }
}


/* Barista compact product cards + stronger gallery sizing v13 */
.assistant-bubble {
  display: grid;
  gap: 10px;
  max-width: 92%;
}
.assistant-bubble > p {
  max-width: 100% !important;
}
.assistant-product-cards {
  display: grid;
  gap: 8px;
}
.assistant-product-card {
  width: 100%;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: rgba(255,255,255,.92);
  padding: 8px;
  display: grid;
  grid-template-columns: 56px minmax(0,1fr) auto;
  gap: 10px;
  align-items: center;
  text-align: left;
  box-shadow: 0 6px 14px rgba(44,25,18,.05);
}
.assistant-product-card img {
  width: 56px;
  height: 56px;
  border-radius: 12px;
  object-fit: cover;
}
.assistant-product-copy {
  min-width: 0;
  display: grid;
  gap: 3px;
}
.assistant-product-copy strong {
  color: #231916;
  font-size: 12px;
  line-height: 1.2;
}
.assistant-product-copy em {
  color: var(--muted);
  font-size: 11px;
  font-style: normal;
  line-height: 1.25;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.assistant-product-price {
  color: var(--accent-dark);
  font-size: 12px;
  font-weight: 800;
  white-space: nowrap;
}
.gallery-grid {
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
  margin: 16px 0 30px;
}
.gallery-tile {
  aspect-ratio: .92 / 1;
  border-radius: 16px;
}
.gallery-tile img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.lightbox-frame {
  width: min(92vw, 520px);
  max-height: min(84dvh, 760px);
}
.lightbox-frame img {
  width: 100%;
  max-width: min(92vw, 520px);
  max-height: min(84dvh, 760px);
  aspect-ratio: .92 / 1;
  object-fit: cover;
  border-radius: 20px;
}
@media (min-width: 760px) {
  .gallery-grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 14px;
  }
  .lightbox-frame {
    width: min(78vw, 760px);
  }
  .lightbox-frame img {
    max-width: min(78vw, 760px);
    aspect-ratio: auto;
    object-fit: contain;
  }
}


/* v14 analytics + category customization */
.category-reference-icon .icon-media,
.home-category-icon .icon-media,
.category-admin-visual .icon-media {
  width: 100%;
  height: 100%;
  display: grid;
  place-items: center;
}
.category-reference-icon .icon-media img,
.home-category-icon .icon-media img,
.category-admin-visual .icon-media img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.stack-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 6px;
}

.mini-btn {
  border: 1px solid var(--line);
  background: #fff;
  color: var(--text);
  border-radius: 10px;
  min-width: 34px;
  height: 34px;
  font-weight: 800;
}
.mini-btn:disabled { opacity: .35; cursor: not-allowed; }

.category-admin-list {
  display: grid;
  gap: 12px;
}
.category-admin-row {
  border: 1px solid var(--line);
  border-radius: 18px;
  padding: 14px;
  display: grid;
  gap: 12px;
  background: rgba(255,255,255,.7);
}
.category-admin-main {
  display: grid;
  grid-template-columns: 58px minmax(0,1fr);
  gap: 12px;
  align-items: start;
}
.category-admin-visual {
  width: 58px;
  height: 58px;
  border-radius: 16px;
  display: grid;
  place-items: center;
  background: #faf6f1;
  color: var(--accent-dark);
  border: 1px solid var(--line);
}
.category-admin-visual svg { width: 32px; height: 32px; }
.category-admin-fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 10px;
  align-items: start;
}
.category-admin-fields.inline-one { grid-template-columns: minmax(0,1fr); }
.category-admin-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}
.mini-preview {
  width: 46px;
  height: 46px;
  border-radius: 12px;
  object-fit: contain;
  background: #fff;
  border: 1px solid var(--line);
  padding: 5px;
}
.small-note { grid-column: 1 / -1; }

.admin-log-row {
  border: 1px solid var(--line);
  border-radius: 14px;
  padding: 12px;
  display: grid;
  gap: 6px;
  background: rgba(255,255,255,.6);
}
.admin-log-row small,
.admin-log-row em { color: var(--muted); font-style: normal; }

.ingredient {
  min-width: 88px;
}
.ingredient svg {
  color: var(--accent-dark);
}

@media (max-width: 760px) {
  .category-admin-fields { grid-template-columns: 1fr; }
  .category-admin-main { grid-template-columns: 1fr; }
  .category-admin-visual { width: 52px; height: 52px; }
}


/* Barista smart engine v15 */
.assistant-product-card {
  cursor: pointer;
  transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
.assistant-product-card:active {
  transform: scale(.985);
}
.assistant-product-card:hover {
  border-color: rgba(165, 14, 24, .24);
  box-shadow: 0 8px 18px rgba(44,25,18,.08);
}
.assistant-product-card::after {
  content: '›';
  color: var(--accent-dark);
  font-size: 18px;
  font-weight: 900;
  margin-left: 2px;
}


/* Barista card arrow alignment v16 */
.assistant-product-card {
  position: relative;
  padding-right: 30px;
}

.assistant-product-price {
  justify-self: end;
  align-self: end;
  text-align: right;
  padding-right: 2px;
}

.assistant-product-card::after {
  position: absolute;
  top: 10px;
  right: 12px;
  margin-left: 0;
  line-height: 1;
}

/* Barista recommendation completion v205 */
.assistant-completion {
  display: grid;
  gap: 8px;
  padding: 10px 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: rgba(255, 255, 255, .88);
}

.assistant-completion > span {
  color: #251b17;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.35;
}

.assistant-completion-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.assistant-completion-actions button {
  min-width: 0;
  min-height: 36px;
  border: 1px solid var(--accent);
  border-radius: 8px;
  padding: 7px 10px;
  color: var(--accent);
  background: #fff;
  font: inherit;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.2;
}

.assistant-completion-actions button:first-child {
  color: var(--white);
  background: var(--accent);
}

.assistant-completion-actions button:focus-visible {
  outline: 2px solid rgba(0, 122, 204, .9);
  outline-offset: 2px;
}

/* Barista social-to-menu bridge v209 */
.assistant-quick-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 9px;
}

.assistant-quick-actions button {
  min-height: 34px;
  max-width: 100%;
  padding: 7px 11px;
  border: 1px solid var(--accent);
  border-radius: 8px;
  color: var(--accent);
  background: var(--white);
  font: inherit;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.2;
  cursor: pointer;
}

.assistant-quick-actions button:focus-visible {
  outline: 2px solid rgba(0, 122, 204, .9);
  outline-offset: 2px;
}


/* v17 horizontal categories + hybrid ingredient dictionary */
.page-panel-menu .category-reference-shell {
  margin-left: calc(var(--page-pad) * -1) !important;
  margin-right: calc(var(--page-pad) * -1) !important;
  padding-left: var(--page-pad) !important;
  padding-right: 0 !important;
  overflow: hidden !important;
}

.page-panel-menu .category-reference-strip {
  display: flex !important;
  grid-template-columns: none !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  gap: 12px !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  scroll-snap-type: x proximity !important;
  -webkit-overflow-scrolling: touch !important;
  scrollbar-width: none !important;
  padding: 18px var(--page-pad) 15px 0 !important;
}

.page-panel-menu .category-reference-strip::-webkit-scrollbar { display: none !important; }

.page-panel-menu .category-reference-item {
  flex: 0 0 74px !important;
  width: 74px !important;
  min-width: 74px !important;
  scroll-snap-align: center !important;
}

.page-panel-menu .category-reference-icon .icon-media img,
.home-category-icon .icon-media img {
  width: 30px !important;
  height: 30px !important;
  object-fit: contain !important;
}

.detail-accordion {
  border-top: 1px solid var(--line);
  padding: 14px 0;
}
.detail-accordion summary {
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  cursor: pointer;
  font-size: 14px;
  font-weight: 900;
  color: #1f1715;
}
.detail-accordion summary::-webkit-details-marker { display: none; }
.detail-accordion summary svg { transition: transform .2s ease; }
.detail-accordion[open] summary svg { transform: rotate(90deg); }
.detail-accordion .ingredient-row,
.detail-accordion .related-strip,
.detail-accordion .info-row,
.detail-accordion .branch-detail {
  margin-top: 14px;
}
.compact-info {
  min-height: auto;
  padding: 0;
  border: 0;
  background: transparent;
}
.ingredient-media {
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
}
.ingredient-media img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.ingredient-icon-admin-list {
  display: grid;
  gap: 12px;
}
.ingredient-icon-row {
  display: grid;
  grid-template-columns: 52px repeat(3, minmax(0, 1fr));
  gap: 10px;
  align-items: end;
  border: 1px solid var(--line);
  border-radius: 18px;
  padding: 12px;
  background: rgba(255,255,255,.68);
}
.ingredient-icon-preview {
  width: 52px;
  height: 52px;
  border: 1px solid var(--line);
  border-radius: 14px;
  display: grid;
  place-items: center;
  color: var(--accent-dark);
  background: #fffaf7;
}
.ingredient-icon-preview svg { width: 30px; height: 30px; }
.ingredient-icon-preview img {
  width: 34px;
  height: 34px;
  object-fit: contain;
}
.ingredient-icon-actions {
  grid-column: 1 / -1;
  display: flex;
  justify-content: flex-end;
  gap: 8px;
}

@media (max-width: 760px) {
  .ingredient-icon-row {
    grid-template-columns: 52px minmax(0, 1fr);
  }
  .ingredient-icon-row .field,
  .ingredient-icon-row .mini-preview,
  .ingredient-icon-row .small-note {
    grid-column: 1 / -1;
  }
}


/* v18 stabilization: Barista chat, related loop, category scroll, accordions */
.related-strip {
  scroll-snap-type: x mandatory;
  scroll-padding-left: 0;
  overscroll-behavior-x: contain;
}
.related-card {
  scroll-snap-align: start;
  min-width: 0;
}
.related-card img {
  width: 100%;
  object-fit: cover;
}

.page-panel-menu .category-reference-strip {
  scroll-snap-type: x proximity !important;
  scroll-padding-left: var(--page-pad) !important;
  padding-bottom: 18px !important;
}
.page-panel-menu .category-reference-item {
  flex-basis: 78px !important;
  min-width: 78px !important;
  width: 78px !important;
}

.detail-accordion {
  border-top: 1px solid var(--line);
}
.detail-accordion summary {
  min-height: 40px;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
}
.detail-accordion[open] {
  padding-bottom: 18px;
}
.detail-accordion .related-strip {
  margin-bottom: -6px;
}

@media (max-width: 420px) {
  .page-panel-menu .category-reference-item {
    flex-basis: 74px !important;
    min-width: 74px !important;
    width: 74px !important;
  }
  .detail-accordion summary {
    font-size: 13px;
  }
}

/* v19 admin usability + Barista rule system */
.admin-filter-row-3 {
  grid-template-columns: minmax(0, 1fr) minmax(150px, 210px) minmax(150px, 190px);
}

.quick-price-field {
  min-height: 34px;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 0 8px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: rgba(255,255,255,.76);
  color: var(--accent-dark);
  font-weight: 900;
  font-size: 12px;
}
.quick-price-field input {
  width: 58px;
  border: 0;
  outline: 0;
  background: transparent;
  color: var(--accent-dark);
  font: inherit;
}

.admin-editor-tabs {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  padding: 6px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: rgba(255,255,255,.62);
}
.admin-editor-tabs button {
  min-height: 42px;
  border: 0;
  border-radius: 13px;
  padding: 0 8px;
  color: #3a2822;
  background: transparent;
  font-size: 12px;
  font-weight: 900;
}
.admin-editor-tabs button.active {
  color: #fff;
  background: var(--accent);
  box-shadow: 0 10px 18px rgba(165,14,24,.16);
}
.admin-editor-panel { display: none; }
.admin-editor-panel.active { display: grid; }

.barista-rule-card {
  overflow: hidden;
}
.barista-rule-form {
  display: grid;
  grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr) minmax(190px, .7fr) auto;
  gap: 10px;
  align-items: end;
  padding: 13px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: rgba(255,255,255,.66);
}
.barista-rule-form textarea {
  min-height: 92px;
}
.barista-rule-form select[multiple] {
  min-height: 92px;
  padding: 8px;
}
.barista-rule-list {
  display: grid;
  gap: 10px;
  margin-top: 14px;
}
.barista-rule-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 13px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: rgba(255,255,255,.68);
}
.barista-rule-row strong,
.barista-rule-row em,
.barista-rule-row b {
  display: block;
}
.barista-rule-row strong {
  color: var(--accent-dark);
  font-size: 13px;
}
.barista-rule-row em {
  margin-top: 4px;
  color: var(--text);
  font-style: normal;
  font-size: 12px;
  line-height: 1.45;
}
.barista-rule-row b {
  margin-top: 5px;
  color: var(--muted);
  font-size: 11px;
}
.barista-test-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  margin-bottom: 12px;
}
.barista-test-result {
  padding: 14px;
  border: 1px solid rgba(165,14,24,.18);
  border-radius: 18px;
  background: rgba(165,14,24,.055);
}
.barista-test-result strong,
.barista-test-result p {
  display: block;
}
.barista-test-result strong {
  color: var(--accent-dark);
  font-size: 13px;
}
.barista-test-result p {
  margin: 7px 0 0;
  color: var(--text);
  font-size: 13px;
  line-height: 1.5;
}
.barista-test-result div {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 10px;
}
.barista-test-result span {
  padding: 6px 9px;
  border-radius: 999px;
  color: var(--accent-dark);
  background: rgba(255,255,255,.75);
  font-size: 11px;
  font-weight: 900;
}
.barista-analytics-row.is-action {
  background: rgba(35,84,55,.055);
  border-color: rgba(35,84,55,.16);
}

@media (max-width: 1080px) {
  .barista-rule-form {
    grid-template-columns: 1fr 1fr;
  }
  .barista-rule-form button {
    grid-column: 1 / -1;
  }
}

@media (max-width: 760px) {
  .admin-filter-row-3,
  .barista-rule-form,
  .barista-test-form,
  .barista-rule-row {
    grid-template-columns: 1fr;
  }
  .admin-editor-tabs {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .admin-product-row {
    grid-template-columns: 54px minmax(0, 1fr);
  }
  .admin-product-row .admin-actions {
    grid-column: 1 / -1;
    justify-content: flex-start;
  }
  .quick-price-field input {
    width: 70px;
  }
}


/* Barista language cleanup v20 */
.barista-test-result p, .assistant-bubble p { word-break: normal; }


/* v21 desktop / web layout pass */
@media (min-width: 1100px) {
  :root {
    --desktop-pad: 30px;
  }

  body {
    background:
      radial-gradient(circle at 8% 0%, rgba(165, 14, 24, .09), transparent 30%),
      radial-gradient(circle at 92% 12%, rgba(126, 7, 16, .07), transparent 28%),
      linear-gradient(135deg, #f5eee8 0%, #efe3da 100%);
  }

  .app-stage {
    align-items: flex-start;
    padding: 28px;
  }

  .phone-shell {
    max-width: 1240px !important;
    min-height: calc(100dvh - 56px);
    overflow: visible;
    border-radius: 34px;
    background: rgba(255,250,246,.98);
    box-shadow: 0 28px 80px rgba(48, 26, 18, .16);
  }

  .desktop-top-nav {
    height: 78px;
    padding: 0 34px;
    border-radius: 34px 34px 0 0;
  }

  .desktop-top-nav nav {
    gap: 10px;
  }

  .desktop-top-nav nav button,
  .desktop-top-nav nav a {
    min-height: 42px;
    padding: 0 18px;
  }

  .home-landing-hero,
  .hero {
    border-radius: 0;
  }

  .home-landing-hero {
    min-height: 560px;
  }

  .home-hero-copy {
    left: 80px;
    right: auto;
    bottom: 128px;
    max-width: 560px;
    justify-items: start;
    text-align: left;
  }

  .home-hero-copy .brand-mark {
    justify-items: start;
  }

  .home-hero-copy p {
    max-width: 520px;
    font-size: 20px;
    line-height: 1.45;
  }

  .hero-location-pill {
    top: 96px;
    right: 48px;
  }

  .home-floating-search {
    left: 80px;
    right: 80px;
    bottom: -42px;
    max-width: 760px;
  }

  .home-modern-panel {
    padding: 100px 64px 70px;
  }

  .home-section-head h2 {
    font-size: 34px;
  }

  .home-category-strip {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 14px;
    overflow: visible;
    padding: 0;
  }

  .home-category-pill {
    min-width: 0;
    border: 1px solid var(--line);
    border-radius: 24px;
    padding: 18px 12px;
    background: rgba(255,255,255,.68);
    box-shadow: 0 12px 26px rgba(44,25,18,.06);
  }

  .home-category-icon {
    width: 62px;
    height: 62px;
  }

  .featured-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
  }

  .featured-card {
    border-radius: 24px;
  }

  .featured-body {
    padding: 18px 20px 20px;
  }

  .special-row {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
  }

  .home-story-row,
  .home-social-row {
    border-radius: 22px;
    min-height: 104px;
    padding: 14px;
  }

  .hero-menu {
    height: 300px;
  }

  .hero-menu .hero-copy {
    left: 64px;
    right: auto;
    bottom: 64px;
    max-width: 580px;
    justify-items: start;
    text-align: left;
  }

  .hero-menu .hero-copy .brand-mark {
    justify-items: start;
  }

  .hero-menu .hero-copy h1 {
    font-size: 52px;
  }

  .hero .floating-search {
    left: auto;
    right: 64px;
    bottom: 42px;
    width: min(420px, 36vw);
  }

  .hero .search-box {
    min-height: 64px;
    border-radius: 22px;
  }

  .page-panel,
  .home-modern-panel {
    max-width: none;
  }

  .page-panel-menu {
    display: grid;
    grid-template-columns: 252px minmax(0, 1fr);
    gap: 28px;
    align-items: start;
    padding: 36px 42px 70px !important;
  }

  .page-panel-menu .category-reference-shell {
    position: sticky;
    top: 104px;
    grid-column: 1;
    margin: 0 !important;
    padding: 14px !important;
    overflow: visible !important;
    border: 1px solid var(--line);
    border-radius: 28px;
    background: rgba(255,255,255,.76);
    box-shadow: 0 16px 34px rgba(44,25,18,.07);
  }

  .page-panel-menu .category-reference-shell::before {
    content: 'Kategoriler';
    display: block;
    margin: 4px 6px 14px;
    color: #231916;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 22px;
    line-height: 1;
  }

  .page-panel-menu .category-reference-strip {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
    overflow: visible !important;
    padding: 0 !important;
    scroll-snap-type: none !important;
  }

  .page-panel-menu .category-reference-item {
    width: 100% !important;
    min-width: 0 !important;
    flex-basis: auto !important;
    display: grid !important;
    grid-template-columns: 48px minmax(0, 1fr);
    gap: 12px;
    align-items: center;
    justify-items: start;
    min-height: 64px;
    padding: 8px 10px !important;
    border: 1px solid transparent;
    border-radius: 20px;
    text-align: left;
  }

  .page-panel-menu .category-reference-item:hover,
  .page-panel-menu .category-reference-item.active {
    border-color: rgba(165,14,24,.12);
    background: rgba(165,14,24,.055);
  }

  .page-panel-menu .category-reference-icon {
    width: 48px !important;
    height: 48px !important;
    border-radius: 17px !important;
  }

  .page-panel-menu .category-reference-item.active .category-reference-icon {
    width: 48px !important;
    height: 48px !important;
    border-radius: 17px !important;
  }

  .page-panel-menu .category-reference-icon svg,
  .page-panel-menu .category-reference-icon .icon-media img {
    width: 27px !important;
    height: 27px !important;
  }

  .page-panel-menu .category-reference-label {
    width: 100%;
    margin: 0 !important;
    font-size: 13px !important;
    line-height: 1.2 !important;
    text-align: left !important;
    white-space: normal !important;
  }

  .page-panel-menu .menu-context-banner,
  .page-panel-menu .menu-list {
    grid-column: 2;
  }

  .page-panel-menu .menu-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
  }

  .page-panel-menu .menu-row {
    min-height: 128px;
    border: 1px solid var(--line) !important;
    border-radius: 24px;
    padding: 12px !important;
    background: rgba(255,255,255,.72);
    box-shadow: 0 12px 28px rgba(44,25,18,.055);
    transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
  }

  .page-panel-menu .menu-row:hover {
    transform: translateY(-2px);
    border-color: rgba(165,14,24,.18) !important;
    box-shadow: 0 18px 34px rgba(44,25,18,.09);
  }

  .page-panel-menu .menu-thumb {
    width: 96px;
    height: 96px;
    border-radius: 18px;
  }

  .page-panel-menu .menu-title {
    display: block;
    margin-bottom: 8px;
    font-size: 16px;
  }

  .page-panel-menu .menu-desc {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    font-size: 13px;
  }

  .page-panel-menu .menu-row .price {
    align-self: start;
    padding-top: 4px;
    font-size: 18px;
  }

  .detail-shell {
    min-height: auto;
    display: grid;
    grid-template-columns: minmax(380px, .9fr) minmax(0, 1.1fr);
    gap: 30px;
    padding: 34px 42px 72px;
    background: transparent;
  }

  .detail-media {
    height: min(660px, calc(100dvh - 150px));
    min-height: 520px;
    border-radius: 30px;
    box-shadow: 0 20px 50px rgba(44,25,18,.12);
  }

  .detail-media .back-btn {
    top: 22px;
    left: 22px;
  }

  .detail-sheet {
    margin-top: 0;
    border: 1px solid var(--line);
    border-radius: 30px;
    padding: 34px;
    background: rgba(255,250,246,.96);
    box-shadow: 0 18px 44px rgba(44,25,18,.08);
  }

  .detail-heading h1 {
    font-size: 42px;
  }

  .detail-heading .price {
    font-size: 26px;
  }

  .detail-desc,
  .detail-product-info {
    max-width: 620px;
    font-size: 14px;
    line-height: 1.6;
  }

  .ingredient-row {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0;
  }

  .ingredient {
    min-height: 84px;
    font-size: 12px;
  }

  .related-strip {
    grid-auto-columns: 150px;
    gap: 12px;
  }

  .related-card {
    border-radius: 16px;
  }

  .related-card img {
    height: 108px;
  }

  .assistant-widget {
    right: max(34px, calc((100vw - 1240px) / 2 + 34px));
    bottom: 34px;
  }

  .assistant-panel {
    width: 388px;
    max-height: min(72vh, 620px);
    border-radius: 28px;
  }

  .gallery-grid {
    grid-template-columns: repeat(6, 1fr);
    gap: 12px;
  }
}

@media (min-width: 1300px) {
  .page-panel-menu .menu-list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .page-panel-menu .menu-row {
    grid-template-columns: 86px minmax(0, 1fr);
  }

  .page-panel-menu .menu-row .price {
    grid-column: 2;
    justify-self: start;
    padding-top: 0;
  }
}

@media (min-width: 1100px) and (max-width: 1220px) {
  .page-panel-menu {
    grid-template-columns: 228px minmax(0, 1fr);
    gap: 22px;
    padding-left: 32px !important;
    padding-right: 32px !important;
  }

  .page-panel-menu .menu-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .page-panel-menu .menu-row {
    grid-template-columns: 82px minmax(0, 1fr);
  }

  .page-panel-menu .menu-row .price {
    grid-column: 2;
    justify-self: start;
  }
}


/* v22 desktop web refinement */
@media (min-width: 1100px) {
  .app-stage {
    padding: 12px;
  }

  .phone-shell {
    width: min(96vw, 1520px) !important;
    max-width: min(96vw, 1520px) !important;
    min-height: calc(100dvh - 24px);
    border-radius: 28px;
  }

  .desktop-top-nav {
    height: 86px;
    padding: 0 40px;
    border-radius: 28px 28px 0 0;
  }

  .desktop-brand-logo {
    padding: 0;
    width: 130px;
    height: 52px;
    justify-content: flex-start;
  }

  .desktop-brand-logo img {
    width: 130px;
    height: 52px;
    object-fit: contain;
    object-position: left center;
    display: block;
  }

  .desktop-top-nav nav {
    gap: 14px;
  }

  .desktop-top-nav nav button,
  .desktop-top-nav nav a {
    min-height: 44px;
    padding: 0 20px;
    font-size: 14px;
  }

  .hero-menu {
    height: 355px;
  }

  .hero-menu .hero-copy {
    left: 56px;
    bottom: 54px;
    max-width: 430px;
    display: grid;
    gap: 10px;
    justify-items: start;
    text-align: left;
  }

  .hero-menu .hero-copy .brand-mark {
    width: auto;
    justify-items: start;
    gap: 12px;
  }

  .hero-menu .hero-copy .brand-logo-img {
    width: 124px;
    max-width: 124px;
    filter: brightness(0) invert(1);
  }

  .hero-menu .hero-copy .brand-word {
    display: none;
  }

  .hero-menu .hero-copy h1 {
    margin-top: 2px;
    font-size: 64px;
    line-height: .95;
  }

  .hero-menu .hero-copy p {
    max-width: 360px;
    font-size: 24px;
    line-height: 1.12;
    font-weight: 700;
  }

  .hero .floating-search {
    right: 56px;
    bottom: 46px;
    width: min(500px, 34vw);
  }

  .hero .search-box {
    min-height: 68px;
  }

  .page-panel-menu {
    grid-template-columns: 280px minmax(0, 1fr);
    gap: 34px;
    padding: 40px 48px 78px !important;
  }

  .page-panel-menu .category-reference-shell {
    top: 110px;
    padding: 16px !important;
    border-radius: 30px;
  }

  .page-panel-menu .category-reference-strip {
    gap: 10px !important;
  }

  .page-panel-menu .category-reference-item {
    grid-template-columns: 54px minmax(0, 1fr);
    min-height: 72px;
    padding: 10px 12px !important;
    border-radius: 22px;
  }

  .page-panel-menu .category-reference-icon,
  .page-panel-menu .category-reference-item.active .category-reference-icon {
    width: 54px !important;
    height: 54px !important;
    border-radius: 18px !important;
  }

  .page-panel-menu .category-reference-label {
    font-size: 14px !important;
  }

  .page-panel-menu .menu-list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
  }

  .page-panel-menu .menu-row {
    min-height: 144px;
    padding: 14px !important;
    border-radius: 26px;
  }

  .page-panel-menu .menu-thumb {
    width: 108px;
    height: 108px;
    border-radius: 18px;
  }

  .page-panel-menu .menu-title {
    font-size: 17px;
  }

  .page-panel-menu .menu-desc {
    font-size: 13px;
    -webkit-line-clamp: 3;
  }
}


/* v23 desktop only: full web layout refinement, mobile untouched */
@media (min-width: 1100px) {
  html,
  body {
    min-height: 100%;
  }

  body {
    background: #fffaf6;
  }

  .app-stage {
    width: 100%;
    min-height: 100dvh;
    padding: 0 !important;
    align-items: stretch;
    justify-content: flex-start;
    background:
      radial-gradient(circle at 6% 0%, rgba(165, 14, 24, .055), transparent 28%),
      radial-gradient(circle at 96% 8%, rgba(126, 7, 16, .045), transparent 25%),
      #fffaf6;
  }

  .phone-shell {
    width: 100% !important;
    max-width: none !important;
    min-height: 100dvh !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    overflow: visible;
    background: #fffaf6;
  }

  .desktop-top-nav {
    position: sticky;
    top: 0;
    height: 88px;
    padding: 0 clamp(54px, 7vw, 118px) !important;
    border-radius: 0 !important;
    background: rgba(255, 250, 246, .94);
    border-bottom: 1px solid rgba(232, 223, 216, .88);
    backdrop-filter: blur(18px);
    z-index: 60;
  }

  .desktop-brand-logo {
    width: 112px;
    height: 58px;
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
  }

  .desktop-brand-logo img {
    width: 92px;
    height: 52px;
    object-fit: contain;
    object-position: left center;
  }

  .desktop-top-nav nav {
    gap: 10px;
  }

  .desktop-top-nav nav button,
  .desktop-top-nav nav a {
    min-height: 42px;
    padding: 0 18px;
    border-radius: 999px;
    font-size: 13px;
    letter-spacing: -.01em;
  }

  .hero-menu {
    height: 360px;
    border-radius: 0 !important;
    overflow: hidden;
  }

  .hero-menu::before {
    background-position: center 46%;
    background-size: cover;
  }

  .hero-menu::after {
    background:
      linear-gradient(90deg, rgba(38, 9, 4, .78) 0%, rgba(38, 9, 4, .48) 34%, rgba(38, 9, 4, .2) 100%),
      linear-gradient(0deg, rgba(38, 9, 4, .28), rgba(38, 9, 4, .18));
  }

  .hero-menu .hero-copy {
    left: clamp(58px, 8vw, 132px) !important;
    right: auto !important;
    bottom: 62px !important;
    max-width: 560px !important;
    display: grid !important;
    grid-template-columns: 104px minmax(0, 1fr);
    grid-template-areas:
      "mark title"
      "mark subtitle";
    column-gap: 22px;
    row-gap: 8px;
    align-items: center;
    justify-items: start;
    text-align: left;
  }

  .hero-menu .hero-copy .brand-mark {
    grid-area: mark;
    width: 104px;
    height: 132px;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .hero-menu .hero-copy .brand-logo-img {
    width: 104px !important;
    height: 132px !important;
    max-width: none !important;
    object-fit: contain;
    filter: brightness(0) invert(1);
  }

  .hero-menu .hero-copy .brand-word {
    display: none !important;
  }

  .hero-menu .hero-copy h1 {
    grid-area: title;
    margin: 0 !important;
    font-size: clamp(58px, 5.3vw, 82px) !important;
    line-height: .88 !important;
    letter-spacing: -.045em;
  }

  .hero-menu .hero-copy p {
    grid-area: subtitle;
    margin: 0 !important;
    max-width: 420px !important;
    font-size: clamp(19px, 1.35vw, 23px) !important;
    line-height: 1.18 !important;
    font-weight: 800;
  }

  .hero .floating-search {
    right: clamp(58px, 7vw, 118px) !important;
    bottom: 58px !important;
    width: min(520px, 34vw) !important;
  }

  .hero .search-box {
    min-height: 66px;
    border-radius: 24px;
    box-shadow: 0 18px 42px rgba(34, 16, 10, .18);
  }

  .page-panel-menu {
    width: min(100%, 1380px);
    margin: 0 auto;
    display: grid;
    grid-template-columns: 254px minmax(0, 1fr) !important;
    gap: 36px !important;
    align-items: start;
    padding: 44px clamp(36px, 5vw, 72px) 92px !important;
    background: #fffaf6;
  }

  .page-panel-menu::before {
    display: none !important;
  }

  .page-panel-menu .category-reference-shell {
    position: sticky;
    top: 116px;
    grid-column: 1;
    margin: 0 !important;
    padding: 14px !important;
    border: 1px solid rgba(226, 215, 207, .92);
    border-radius: 28px;
    background: rgba(255, 255, 255, .72);
    box-shadow: 0 18px 44px rgba(44, 25, 18, .07);
    overflow: visible !important;
  }

  .page-panel-menu .category-reference-shell::before {
    content: 'Kategoriler';
    display: block;
    margin: 2px 6px 16px;
    color: #231916;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 23px;
    font-weight: 500;
    line-height: 1;
  }

  .page-panel-menu .category-reference-strip {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
    padding: 0 !important;
    overflow: visible !important;
    scroll-snap-type: none !important;
  }

  .page-panel-menu .category-reference-item {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 62px;
    display: grid !important;
    grid-template-columns: 46px minmax(0, 1fr);
    align-items: center;
    justify-items: start;
    gap: 12px;
    padding: 8px 10px !important;
    border: 1px solid transparent;
    border-radius: 19px;
    text-align: left;
    background: transparent;
  }

  .page-panel-menu .category-reference-item:hover,
  .page-panel-menu .category-reference-item.active {
    border-color: rgba(165, 14, 24, .12);
    background: rgba(165, 14, 24, .055);
  }

  .page-panel-menu .category-reference-icon,
  .page-panel-menu .category-reference-item.active .category-reference-icon {
    width: 46px !important;
    height: 46px !important;
    border-radius: 16px !important;
    flex: 0 0 46px !important;
  }

  .page-panel-menu .category-reference-icon svg,
  .page-panel-menu .category-reference-icon .icon-media img {
    width: 25px !important;
    height: 25px !important;
  }

  .page-panel-menu .category-reference-label {
    width: 100%;
    margin: 0 !important;
    color: #231916;
    font-size: 13px !important;
    line-height: 1.15 !important;
    text-align: left !important;
    white-space: normal !important;
  }

  .page-panel-menu .menu-context-banner,
  .page-panel-menu .menu-list {
    grid-column: 2;
  }

  .page-panel-menu .menu-list {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 22px !important;
    align-items: stretch;
  }

  .page-panel-menu .menu-row {
    position: relative;
    min-height: 0 !important;
    height: 100%;
    display: grid !important;
    grid-template-columns: 1fr !important;
    grid-template-rows: 190px minmax(108px, auto) auto;
    gap: 0 !important;
    align-items: stretch !important;
    justify-items: stretch;
    padding: 0 !important;
    overflow: hidden;
    border: 1px solid rgba(226, 215, 207, .94) !important;
    border-radius: 28px !important;
    background: rgba(255, 255, 255, .76) !important;
    box-shadow: 0 18px 42px rgba(44, 25, 18, .065);
    text-align: left;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
  }

  .page-panel-menu .menu-row:hover {
    transform: translateY(-3px);
    border-color: rgba(165, 14, 24, .18) !important;
    box-shadow: 0 24px 54px rgba(44, 25, 18, .105);
  }

  .page-panel-menu .menu-thumb {
    width: 100% !important;
    height: 190px !important;
    border-radius: 0 !important;
    background: #efe1d8;
  }

  .page-panel-menu .menu-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
  }

  .page-panel-menu .menu-row > span:nth-child(2) {
    display: block;
    padding: 18px 18px 10px;
  }

  .page-panel-menu .menu-title {
    display: block;
    margin: 0 0 9px !important;
    color: #19110e;
    font-size: 18px !important;
    line-height: 1.12;
    letter-spacing: -.02em;
  }

  .page-panel-menu .menu-desc {
    display: -webkit-box !important;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    min-height: 54px;
    color: #4b3a33;
    font-size: 13px !important;
    line-height: 1.38;
  }

  .page-panel-menu .menu-row .price {
    justify-self: start;
    align-self: end !important;
    padding: 0 18px 20px !important;
    color: var(--accent-dark);
    font-size: 20px !important;
    line-height: 1;
  }

  .assistant-launcher {
    right: 42px;
    bottom: 34px;
  }
}

@media (min-width: 1100px) and (max-width: 1280px) {
  .page-panel-menu {
    grid-template-columns: 238px minmax(0, 1fr) !important;
    gap: 26px !important;
    padding-left: 34px !important;
    padding-right: 34px !important;
  }

  .page-panel-menu .menu-list {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .hero .floating-search {
    width: min(460px, 38vw) !important;
  }
}


/* v24 final desktop cleanup: web only, mobile untouched */
@media (min-width: 1100px) {
  html, body { min-height: 100%; }
  body {
    background:
      radial-gradient(circle at 0% 0%, rgba(165,14,24,.05), transparent 22%),
      linear-gradient(180deg, #fcf8f4 0%, #f7f1ec 100%);
  }

  .app-stage {
    width: 100%;
    min-height: 100dvh;
    padding: 0 !important;
    align-items: stretch;
    justify-content: flex-start;
  }

  .phone-shell {
    width: 100% !important;
    max-width: none !important;
    min-height: 100dvh !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    overflow: visible !important;
  }

  .desktop-top-nav {
    position: sticky;
    top: 0;
    z-index: 60;
    height: 82px !important;
    padding: 0 clamp(42px, 6vw, 96px) !important;
    border-radius: 0 !important;
    border-bottom: 1px solid rgba(232,223,216,.9);
    background: rgba(255,250,246,.94);
    backdrop-filter: blur(14px);
  }

  .desktop-brand-logo {
    width: 126px !important;
    height: 58px !important;
  }

  .desktop-brand-logo img {
    width: 108px !important;
    height: 56px !important;
    object-fit: contain;
    object-position: left center;
  }

  .desktop-top-nav nav {
    gap: 10px !important;
  }

  .desktop-top-nav nav button,
  .desktop-top-nav nav a {
    min-height: 40px !important;
    padding: 0 18px !important;
    font-size: 14px !important;
    font-weight: 700;
  }

  /* home hero */
  .hero-home {
    height: 470px !important;
    border-radius: 0 !important;
  }

  .hero-home::before { background-position: center 42%; }

  .hero-home .hero-copy {
    left: clamp(42px, 6vw, 88px) !important;
    right: auto !important;
    bottom: 92px !important;
    max-width: 470px !important;
    text-align: left !important;
    justify-items: start !important;
  }

  .hero-home .hero-copy .brand-mark { justify-items: start !important; }
  .hero-home .hero-copy .brand-logo-img {
    width: 92px !important;
    max-width: 92px !important;
  }
  .hero-home .hero-copy h1 {
    font-size: clamp(54px, 5vw, 76px) !important;
    line-height: .94 !important;
    margin: 12px 0 6px !important;
  }
  .hero-home .hero-copy p {
    max-width: 430px !important;
    font-size: 17px !important;
    line-height: 1.45 !important;
  }
  .hero-location-pill {
    right: clamp(42px, 6vw, 88px) !important;
    top: 92px !important;
  }
  .home-floating-search {
    left: clamp(42px, 6vw, 88px) !important;
    right: auto !important;
    bottom: -30px !important;
    width: min(560px, 42vw) !important;
    max-width: 560px !important;
  }

  .home-modern-panel {
    width: min(1440px, calc(100% - 64px));
    margin: 0 auto;
    padding: 72px 0 76px !important;
  }

  .home-section { margin-bottom: 34px; }

  .home-section-head {
    margin-bottom: 16px !important;
    align-items: center;
  }

  .home-section-head h2 {
    font-size: 48px !important;
    line-height: .98;
    letter-spacing: -.035em;
  }

  .home-section-head button {
    font-size: 15px !important;
    font-weight: 700;
  }

  .home-category-strip {
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 18px !important;
    overflow: visible !important;
    padding: 0 !important;
  }

  .home-category-pill {
    min-width: 0 !important;
    min-height: 110px;
    border-radius: 24px !important;
    padding: 18px 14px !important;
    background: rgba(255,255,255,.72) !important;
    border: 1px solid rgba(226,215,207,.92) !important;
    box-shadow: 0 12px 30px rgba(44,25,18,.06);
  }

  .home-category-icon {
    width: 58px !important;
    height: 58px !important;
    border-radius: 18px !important;
  }

  .home-category-pill span:last-child,
  .home-category-pill strong {
    font-size: 13px !important;
    line-height: 1.2;
  }

  .featured-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px !important;
  }

  .featured-card {
    border-radius: 28px !important;
    overflow: hidden;
    box-shadow: 0 18px 42px rgba(44,25,18,.08);
  }

  .featured-media {
    height: 330px !important;
  }

  .featured-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .featured-body {
    padding: 18px 18px 20px !important;
  }

  .featured-body h3 {
    font-size: 32px !important;
    line-height: 1.02;
    margin-bottom: 8px !important;
  }

  .featured-body p {
    min-height: auto !important;
    font-size: 14px !important;
    line-height: 1.45 !important;
  }

  .featured-body div {
    margin-top: 14px;
    align-items: center;
  }

  .special-row {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px !important;
    overflow: visible !important;
    padding: 0 !important;
  }

  .special-card {
    min-width: 0 !important;
  }

  .special-card button {
    min-height: 122px;
    padding: 12px !important;
    border-radius: 24px !important;
    background: rgba(255,255,255,.72) !important;
    border: 1px solid rgba(226,215,207,.92) !important;
    box-shadow: 0 12px 30px rgba(44,25,18,.05);
  }

  .special-card img {
    width: 86px !important;
    height: 86px !important;
    border-radius: 16px !important;
    object-fit: cover;
  }

  .home-story-row,
  .home-social-row {
    width: 100%;
    min-height: 102px !important;
    padding: 16px 18px !important;
    border-radius: 24px !important;
    background: rgba(255,255,255,.72) !important;
    border: 1px solid rgba(226,215,207,.92) !important;
    box-shadow: 0 12px 30px rgba(44,25,18,.05);
  }

  .home-story-row img {
    width: 112px !important;
    height: 66px !important;
    border-radius: 14px !important;
    object-fit: cover;
  }

  /* menu hero */
  .hero-menu {
    height: 350px !important;
    border-radius: 0 !important;
  }

  .hero-menu::before { background-position: center 44% !important; }

  .hero-menu .hero-copy {
    left: clamp(42px, 6vw, 88px) !important;
    bottom: 60px !important;
    max-width: 560px !important;
    display: grid !important;
    grid-template-columns: 96px minmax(0, 1fr);
    grid-template-areas:
      "mark title"
      "mark subtitle";
    column-gap: 18px !important;
    row-gap: 8px !important;
    align-items: center !important;
    justify-items: start !important;
    text-align: left !important;
  }

  .hero-menu .hero-copy .brand-mark {
    grid-area: mark;
    width: 96px !important;
    height: 120px !important;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .hero-menu .hero-copy .brand-logo-img {
    width: 96px !important;
    height: 120px !important;
    object-fit: contain;
    filter: brightness(0) invert(1);
  }

  .hero-menu .hero-copy .brand-word { display: none !important; }

  .hero-menu .hero-copy h1 {
    grid-area: title;
    margin: 0 !important;
    font-size: clamp(48px, 5vw, 72px) !important;
    line-height: .92 !important;
    letter-spacing: -.04em;
  }

  .hero-menu .hero-copy p {
    grid-area: subtitle;
    margin: 0 !important;
    max-width: 360px !important;
    font-size: 17px !important;
    line-height: 1.35 !important;
    font-weight: 700;
  }

  .hero .floating-search {
    right: clamp(42px, 6vw, 88px) !important;
    bottom: 46px !important;
    width: min(430px, 30vw) !important;
  }

  .hero .search-box {
    min-height: 64px !important;
    border-radius: 24px !important;
  }

  .page-panel-menu {
    width: min(1440px, calc(100% - 64px)) !important;
    margin: 0 auto !important;
    display: grid !important;
    grid-template-columns: 260px minmax(0, 1fr) !important;
    gap: 28px !important;
    align-items: start !important;
    padding: 34px 0 80px !important;
    background: transparent !important;
  }

  .page-panel-menu .category-reference-shell {
    position: sticky !important;
    top: 102px !important;
    padding: 14px !important;
    border-radius: 26px !important;
    border: 1px solid rgba(226,215,207,.92) !important;
    background: rgba(255,255,255,.74) !important;
    box-shadow: 0 14px 36px rgba(44,25,18,.06) !important;
  }

  .page-panel-menu .category-reference-shell::before {
    margin: 4px 8px 14px !important;
    font-size: 18px !important;
  }

  .page-panel-menu .category-reference-strip {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
  }

  .page-panel-menu .category-reference-item {
    width: 100% !important;
    min-height: 64px !important;
    display: grid !important;
    grid-template-columns: 46px minmax(0, 1fr) !important;
    gap: 12px !important;
    padding: 8px 10px !important;
    border-radius: 18px !important;
    border: 1px solid transparent !important;
    background: transparent !important;
    text-align: left !important;
  }

  .page-panel-menu .category-reference-icon,
  .page-panel-menu .category-reference-item.active .category-reference-icon {
    width: 46px !important;
    height: 46px !important;
    border-radius: 16px !important;
  }

  .page-panel-menu .category-reference-label {
    font-size: 13px !important;
    text-align: left !important;
  }

  .page-panel-menu .menu-context-banner,
  .page-panel-menu .menu-list {
    grid-column: 2;
  }

  .page-panel-menu .menu-list {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 20px !important;
    align-items: stretch !important;
  }

  .page-panel-menu .menu-row {
    position: relative !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    grid-template-rows: 220px auto auto !important;
    gap: 0 !important;
    height: 100% !important;
    min-height: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    border: 1px solid rgba(226,215,207,.95) !important;
    border-radius: 28px !important;
    background: rgba(255,255,255,.78) !important;
    box-shadow: 0 16px 38px rgba(44,25,18,.06) !important;
    text-align: left !important;
    align-items: stretch !important;
    justify-items: stretch !important;
  }

  .page-panel-menu .menu-thumb {
    width: 100% !important;
    height: 220px !important;
    border-radius: 0 !important;
    background: #efe4dd;
    overflow: hidden !important;
  }

  .page-panel-menu .menu-thumb img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
    display: block !important;
  }

  .page-panel-menu .menu-row > span:nth-child(2) {
    display: block !important;
    padding: 16px 18px 10px !important;
  }

  .page-panel-menu .menu-title {
    display: block !important;
    margin: 0 0 8px !important;
    font-size: 22px !important;
    line-height: 1.05 !important;
    letter-spacing: -.025em !important;
    color: #17110f !important;
  }

  .page-panel-menu .menu-desc {
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 3 !important;
    overflow: hidden !important;
    min-height: 56px !important;
    color: #4e3e36 !important;
    font-size: 14px !important;
    line-height: 1.42 !important;
  }

  .page-panel-menu .menu-row .price {
    justify-self: start !important;
    align-self: end !important;
    padding: 0 18px 18px !important;
    font-size: 28px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    color: var(--accent-dark) !important;
  }

  .page-panel-menu .empty-state {
    grid-column: 1 / -1;
    min-height: 220px;
    border-radius: 24px;
    border: 1px dashed rgba(126,7,16,.15);
    background: rgba(255,255,255,.72);
  }

  /* detail page */
  .detail-shell {
    width: min(1440px, calc(100% - 64px));
    margin: 28px auto 72px;
    display: grid !important;
    grid-template-columns: minmax(420px, .9fr) minmax(560px, 1.1fr) !important;
    gap: 32px !important;
    padding: 0 !important;
    background: transparent !important;
  }

  .detail-media {
    position: sticky;
    top: 108px;
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: 1 / 1;
    max-height: min(640px, calc(100dvh - 140px));
    border-radius: 30px !important;
    overflow: hidden !important;
    background: #efe4dd !important;
    box-shadow: 0 18px 46px rgba(44,25,18,.09) !important;
  }

  .detail-media .status-bar { display: none !important; }
  .detail-media .back-btn {
    top: 18px !important;
    left: 18px !important;
    width: 40px !important;
    height: 40px !important;
  }

  .detail-media img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
  }

  .detail-sheet {
    margin: 0 !important;
    min-height: 100%;
    border: 1px solid rgba(226,215,207,.95) !important;
    border-radius: 30px !important;
    padding: 34px 32px !important;
    background: rgba(255,250,246,.9) !important;
    box-shadow: 0 16px 38px rgba(44,25,18,.06) !important;
  }

  .detail-heading {
    align-items: flex-start !important;
    gap: 18px !important;
  }

  .detail-heading h1 {
    font-size: clamp(34px, 3.1vw, 56px) !important;
    line-height: .98 !important;
    letter-spacing: -.035em;
  }

  .detail-heading .price {
    font-size: 24px !important;
    white-space: nowrap;
    padding-top: 8px;
  }

  .detail-desc,
  .detail-product-info {
    max-width: none !important;
    font-size: 15px !important;
    line-height: 1.55 !important;
  }

  .detail-barista-btn {
    min-height: 54px !important;
    border-radius: 18px !important;
    font-size: 16px !important;
    font-weight: 700;
  }

  .detail-badges {
    gap: 10px !important;
    margin-top: 14px;
  }

  .detail-badges span {
    min-height: 34px;
    padding: 0 12px;
    border-radius: 999px;
  }

  .detail-accordion {
    border-top: 1px solid rgba(226,215,207,.95) !important;
    padding: 0 !important;
  }

  .detail-accordion summary {
    min-height: 68px;
    padding: 0 4px !important;
    font-size: 20px !important;
    font-weight: 700 !important;
  }

  .ingredient-row {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 12px !important;
    padding: 0 0 14px !important;
  }

  .ingredient {
    min-height: 118px !important;
    border-radius: 18px !important;
    border: 1px solid rgba(226,215,207,.92) !important;
    background: rgba(255,255,255,.8) !important;
    padding: 14px 10px !important;
    font-size: 13px !important;
    line-height: 1.25 !important;
    gap: 10px !important;
  }

  .ingredient svg,
  .ingredient .ingredient-media img {
    width: 28px !important;
    height: 28px !important;
  }

  .related-strip {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(118px, 1fr)) !important;
    gap: 12px !important;
    overflow: visible !important;
    padding-bottom: 0 !important;
  }

  .related-card {
    border-radius: 18px !important;
    padding: 8px !important;
    min-height: 0 !important;
    background: rgba(255,255,255,.82) !important;
  }

  .related-card img {
    height: 92px !important;
    border-radius: 12px !important;
    object-fit: cover !important;
  }

  .related-card span {
    font-size: 13px !important;
    line-height: 1.2 !important;
  }

  .dots { display: none !important; }

  .compact-info,
  .branch-detail {
    padding: 0 0 16px !important;
  }

  .assistant-widget {
    right: clamp(24px, 2.2vw, 40px) !important;
    bottom: 28px !important;
  }

  .assistant-fab {
    width: 56px !important;
    height: 56px !important;
    box-shadow: 0 18px 38px rgba(126,7,16,.24) !important;
  }

  .assistant-panel {
    width: 390px !important;
    max-height: min(72vh, 680px) !important;
    border-radius: 28px !important;
  }

  .gallery-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
    gap: 14px !important;
  }
}

@media (min-width: 1100px) and (max-width: 1340px) {
  .home-modern-panel,
  .page-panel-menu,
  .detail-shell {
    width: min(100%, calc(100% - 44px)) !important;
  }

  .page-panel-menu {
    grid-template-columns: 236px minmax(0, 1fr) !important;
    gap: 22px !important;
  }

  .page-panel-menu .menu-list {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .featured-body h3 { font-size: 28px !important; }
}


/* v25 hard desktop menu card reset - fixes leftover mobile row rules */
@media (min-width: 1100px) {
  main.page-panel.page-panel-menu .menu-list {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 22px !important;
    align-items: stretch !important;
  }

  main.page-panel.page-panel-menu .menu-list > button.menu-row,
  main.page-panel.page-panel-menu button.menu-row {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    border: 1px solid rgba(226, 215, 207, .95) !important;
    border-radius: 28px !important;
    background: rgba(255, 255, 255, .82) !important;
    box-shadow: 0 16px 38px rgba(44, 25, 18, .065) !important;
    text-align: left !important;
  }

  main.page-panel.page-panel-menu button.menu-row:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 24px 56px rgba(44, 25, 18, .105) !important;
    border-color: rgba(165, 14, 24, .18) !important;
  }

  main.page-panel.page-panel-menu button.menu-row > .menu-thumb {
    order: 1 !important;
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: 1.45 / 1 !important;
    flex: 0 0 auto !important;
    border-radius: 0 !important;
    overflow: hidden !important;
    background: #efe4dd !important;
  }

  main.page-panel.page-panel-menu button.menu-row > .menu-thumb img {
    width: 100% !important;
    height: 100% !important;
    display: block !important;
    object-fit: cover !important;
    object-position: center !important;
  }

  main.page-panel.page-panel-menu button.menu-row > span:nth-child(2) {
    order: 2 !important;
    display: block !important;
    width: 100% !important;
    min-height: 112px !important;
    padding: 18px 20px 8px !important;
  }

  main.page-panel.page-panel-menu button.menu-row .menu-title {
    display: block !important;
    margin: 0 0 8px !important;
    color: #17110f !important;
    font-size: 22px !important;
    line-height: 1.08 !important;
    letter-spacing: -.025em !important;
    font-weight: 900 !important;
  }

  main.page-panel.page-panel-menu button.menu-row .menu-desc {
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 3 !important;
    overflow: hidden !important;
    min-height: 58px !important;
    color: #4c3c35 !important;
    font-size: 14px !important;
    line-height: 1.42 !important;
  }

  main.page-panel.page-panel-menu button.menu-row > .price {
    order: 3 !important;
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 20px 20px !important;
    align-self: stretch !important;
    justify-self: auto !important;
    color: var(--accent-dark) !important;
    font-size: 28px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    text-align: left !important;
  }
}

@media (min-width: 1100px) and (max-width: 1340px) {
  main.page-panel.page-panel-menu .menu-list {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}


/* v26 tablet / medium desktop hero stabilization */
@media (min-width: 768px) and (max-width: 1099px) {
  .desktop-top-nav {
    padding: 0 18px !important;
    gap: 14px !important;
  }

  .desktop-brand-logo {
    width: 88px !important;
    height: 48px !important;
  }

  .desktop-brand-logo img {
    width: 78px !important;
    height: 44px !important;
    object-fit: contain;
  }

  .desktop-top-nav nav {
    gap: 2px !important;
    flex-wrap: nowrap !important;
  }

  .desktop-top-nav nav button,
  .desktop-top-nav nav a {
    white-space: nowrap !important;
    padding: 0 12px !important;
    font-size: 12px !important;
    letter-spacing: 0 !important;
  }

  .hero-menu {
    height: 292px !important;
    overflow: hidden !important;
  }

  .hero-menu .hero-copy {
    left: 50% !important;
    right: auto !important;
    bottom: 44px !important;
    transform: translateX(-50%) !important;
    width: min(88%, 520px) !important;
    max-width: 520px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    text-align: center !important;
    z-index: 2 !important;
    overflow: hidden !important;
  }

  .hero-menu .hero-copy .brand-mark {
    width: auto !important;
    height: auto !important;
    max-width: 88px !important;
    display: grid !important;
    justify-items: center !important;
    gap: 6px !important;
  }

  .hero-menu .hero-copy .brand-logo-img {
    display: block !important;
    width: 84px !important;
    max-width: 84px !important;
    max-height: 110px !important;
    height: auto !important;
    object-fit: contain !important;
    filter: brightness(0) invert(1) !important;
  }

  /* hide any legacy duplicate logo drawing layers in hero at medium widths */
  .hero-menu .hero-copy .brand-mark-icon,
  .hero-menu .hero-copy .brand-rays,
  .hero-menu .hero-copy .brand-mark > .brand-mark:not(:first-child),
  .hero-menu .hero-copy .brand-mark + .brand-mark {
    display: none !important;
  }

  .hero-menu .hero-copy h1 {
    margin: 0 !important;
    font-size: 56px !important;
    line-height: .94 !important;
    letter-spacing: -.03em !important;
  }

  .hero-menu .hero-copy p {
    margin: 0 !important;
    max-width: 360px !important;
    font-size: 17px !important;
    line-height: 1.3 !important;
    font-weight: 700 !important;
  }

  .hero .floating-search {
    left: 50% !important;
    right: auto !important;
    bottom: -26px !important;
    transform: translateX(-50%) !important;
    width: min(90%, 760px) !important;
    max-width: 760px !important;
  }

  .hero .search-box {
    min-height: 54px !important;
  }
}


/* v27 tablet layout polish */
@media (min-width: 768px) and (max-width: 1099px) {
  .app-stage {
    padding: 22px !important;
  }

  .phone-shell {
    max-width: 820px !important;
    border-radius: 28px !important;
    overflow: hidden !important;
    background: var(--panel) !important;
  }

  .hero-menu {
    height: 328px !important;
    border-radius: 0 !important;
    position: relative !important;
    overflow: visible !important;
  }

  .hero-menu::before {
    border-radius: 0 !important;
    background-position: center 44% !important;
  }

  .hero-menu .hero-copy {
    bottom: 76px !important;
    width: min(88%, 520px) !important;
    max-width: 520px !important;
    gap: 6px !important;
  }

  .hero-menu .hero-copy .brand-mark {
    max-width: 82px !important;
  }

  .hero-menu .hero-copy .brand-logo-img {
    width: 78px !important;
    max-width: 78px !important;
    max-height: 104px !important;
  }

  .hero-menu .hero-copy h1 {
    font-size: 54px !important;
    line-height: .96 !important;
  }

  .hero-menu .hero-copy p {
    font-size: 16px !important;
    max-width: 340px !important;
  }

  .hero .floating-search {
    left: 50% !important;
    right: auto !important;
    bottom: -28px !important;
    transform: translateX(-50%) !important;
    width: min(92%, 770px) !important;
    max-width: 770px !important;
    z-index: 12 !important;
  }

  .hero .search-box {
    min-height: 56px !important;
    border-radius: 28px !important;
    box-shadow: 0 14px 28px rgba(44,25,18,.08) !important;
  }

  main.page-panel.page-panel-menu {
    padding-top: 56px !important;
  }

  .page-panel-menu {
    position: relative;
    z-index: 2;
  }

  /* keep tablet menu in 2-column content with horizontal categories */
  .page-panel-menu .category-reference-shell {
    margin-top: 6px !important;
    padding: 18px 14px 16px !important;
    border-radius: 24px !important;
  }

  .page-panel-menu .category-reference-shell::before {
    margin: 0 6px 14px !important;
    font-size: 18px !important;
  }

  .page-panel-menu .category-reference-strip {
    gap: 8px !important;
    overflow-x: auto !important;
    padding-bottom: 4px !important;
    scrollbar-width: none;
  }
  .page-panel-menu .category-reference-strip::-webkit-scrollbar { display:none; }

  .page-panel-menu .category-reference-item {
    min-width: 108px !important;
    min-height: 94px !important;
    padding: 10px 10px 12px !important;
    border-radius: 18px !important;
    justify-items: center !important;
    text-align: center !important;
  }

  .page-panel-menu .category-reference-icon,
  .page-panel-menu .category-reference-item.active .category-reference-icon {
    width: 52px !important;
    height: 52px !important;
    border-radius: 18px !important;
  }

  .page-panel-menu .category-reference-label {
    font-size: 12px !important;
    line-height: 1.2 !important;
  }

  .page-panel-menu .menu-list {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 0 24px !important;
    padding-top: 14px !important;
  }

  .assistant-widget {
    right: 16px !important;
    bottom: 18px !important;
  }
}


/* v28 admin UI/UX refinement */
:root {
  --admin-bg: #f7f1ec;
  --admin-panel: rgba(255, 252, 249, .94);
  --admin-soft: rgba(255, 255, 255, .68);
}

.admin-stage {
  min-height: 100dvh;
  padding: 22px !important;
  background:
    radial-gradient(circle at 8% 0%, rgba(165,14,24,.09), transparent 26%),
    radial-gradient(circle at 92% 8%, rgba(126,7,16,.06), transparent 26%),
    linear-gradient(180deg, #fbf7f3 0%, var(--admin-bg) 100%) !important;
}

.admin-shell {
  width: min(100%, 1480px) !important;
  min-height: calc(100dvh - 44px);
  display: grid !important;
  grid-template-columns: 260px minmax(0, 1fr) !important;
  gap: 18px !important;
  margin: 0 auto !important;
}

.admin-sidebar,
.admin-main,
.admin-card {
  border-color: rgba(226, 215, 207, .92) !important;
  background: var(--admin-panel) !important;
  box-shadow: 0 18px 46px rgba(44,25,18,.07) !important;
}

.admin-sidebar {
  position: sticky;
  top: 22px;
  height: calc(100dvh - 44px);
  min-height: 0 !important;
  display: flex;
  flex-direction: column;
  padding: 18px !important;
  border-radius: 28px !important;
  overflow: hidden;
}

.admin-sidebar .brand-mark {
  margin: 2px 0 18px !important;
  color: var(--accent-dark) !important;
  justify-self: start;
}

.admin-sidebar .brand-logo-img {
  width: 62px !important;
}

.admin-nav {
  display: grid !important;
  gap: 7px !important;
  overflow-y: auto;
  padding-right: 4px;
  scrollbar-width: thin;
}

.admin-nav button {
  min-height: 44px !important;
  display: flex !important;
  align-items: center;
  justify-content: flex-start;
  border-radius: 15px !important;
  padding: 0 13px !important;
  color: #31241f !important;
  background: transparent !important;
  font-size: 13px !important;
  font-weight: 850 !important;
  line-height: 1.15;
  transition: background .16s ease, color .16s ease, transform .16s ease, box-shadow .16s ease;
}

.admin-nav button:hover {
  background: rgba(165,14,24,.065) !important;
  color: var(--accent-dark) !important;
}

.admin-nav button.active {
  color: #fff !important;
  background: linear-gradient(135deg, var(--accent), var(--accent-dark)) !important;
  box-shadow: 0 12px 24px rgba(126,7,16,.2) !important;
}

.admin-main {
  min-width: 0;
  border-radius: 28px !important;
  padding: 18px !important;
  overflow: visible;
}

.admin-topbar {
  top: 18px !important;
  min-height: 84px;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto auto auto;
  align-items: center !important;
  gap: 10px !important;
  margin-bottom: 18px !important;
  padding: 16px 18px !important;
  border-radius: 24px !important;
  background: rgba(255,250,246,.92) !important;
  box-shadow: 0 14px 34px rgba(44,25,18,.07) !important;
}

.admin-title h1 {
  font-size: clamp(26px, 2.1vw, 36px) !important;
  letter-spacing: -.035em;
}

.admin-title p {
  max-width: 720px;
  margin-top: 6px !important;
  font-size: 12px !important;
  line-height: 1.45;
}

.admin-save-status {
  max-width: 220px;
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  padding: 0 12px;
  border-radius: 999px;
  color: var(--muted);
  background: rgba(255,255,255,.64);
  border: 1px solid rgba(226,215,207,.85);
  font-size: 12px;
  font-weight: 800;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.admin-grid,
.admin-grid-pro,
.admin-grid-wide {
  gap: 18px !important;
}

.admin-grid {
  grid-template-columns: minmax(0, 1fr) minmax(340px, 420px) !important;
}

.admin-grid-pro {
  grid-template-columns: minmax(0, 1.08fr) minmax(390px, .92fr) !important;
}

.admin-card {
  padding: 18px !important;
  border-radius: 24px !important;
}

.admin-card h2,
.admin-card-title-row h2 {
  color: #201611;
  font-size: 20px !important;
  letter-spacing: -.02em;
}

.admin-card-title-row {
  margin-bottom: 18px !important;
  padding-bottom: 14px;
  border-bottom: 1px solid rgba(226,215,207,.72);
}

.admin-card-title-row p,
.admin-help-text,
.admin-note {
  color: #7b6f68 !important;
}

.admin-stat-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 12px !important;
}

.admin-stat-grid article {
  min-height: 92px;
  display: grid;
  align-content: center;
  border-radius: 20px !important;
  background: rgba(255,255,255,.78) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.64);
}

.admin-stat-grid strong {
  font-size: 30px !important;
}

.field {
  gap: 7px !important;
  color: #31241f;
  font-size: 12px !important;
  letter-spacing: -.005em;
}

.field input,
.field textarea,
.field select,
.barista-test-form input {
  min-height: 44px;
  border-radius: 14px !important;
  border-color: rgba(226,215,207,.95) !important;
  background: rgba(255,255,255,.82) !important;
  transition: border-color .16s ease, box-shadow .16s ease, background .16s ease;
}

.field textarea {
  min-height: 104px !important;
  line-height: 1.48;
}

.field input:focus,
.field textarea:focus,
.field select:focus,
.barista-test-form input:focus {
  border-color: rgba(165,14,24,.42) !important;
  background: #fff !important;
  box-shadow: 0 0 0 4px rgba(165,14,24,.08) !important;
}

.primary-btn,
.secondary-btn,
.danger-btn,
.ghost-btn {
  border-radius: 14px !important;
  min-height: 42px !important;
  transition: transform .16s ease, box-shadow .16s ease, background .16s ease, border-color .16s ease;
}

.primary-btn:hover,
.secondary-btn:hover,
.danger-btn:hover {
  transform: translateY(-1px);
}

.primary-btn {
  box-shadow: 0 12px 22px rgba(126,7,16,.16);
}

.secondary-btn {
  background: rgba(255,255,255,.8) !important;
}

.secondary-btn:hover {
  border-color: rgba(165,14,24,.22) !important;
  color: var(--accent-dark) !important;
  box-shadow: 0 8px 18px rgba(44,25,18,.06);
}

.admin-filter-row,
.admin-filter-row-3 {
  gap: 10px !important;
  align-items: end;
  margin-bottom: 14px !important;
}

.admin-product-list-pro,
.admin-list.small-list,
.barista-analytics-list,
.barista-log-list,
.category-admin-list,
.barista-rule-list {
  scrollbar-width: thin;
}

.admin-product-list-pro {
  max-height: min(760px, calc(100dvh - 260px)) !important;
  padding-right: 6px !important;
}

.admin-product-row {
  position: relative;
  grid-template-columns: 70px minmax(0, 1fr) auto !important;
  gap: 13px !important;
  padding: 10px !important;
  border-radius: 18px !important;
  background: rgba(255,255,255,.72) !important;
  transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.admin-product-row:hover {
  border-color: rgba(165,14,24,.18) !important;
  box-shadow: 0 12px 24px rgba(44,25,18,.07);
  transform: translateY(-1px);
}

.admin-product-row img,
.admin-preview img {
  width: 70px !important;
  height: 70px !important;
  border-radius: 15px !important;
}

.admin-product-row strong {
  font-size: 14px !important;
  line-height: 1.18;
}

.admin-product-row small {
  line-height: 1.35;
}

.admin-actions {
  gap: 6px !important;
}

.admin-actions button,
.quick-price-field {
  border-radius: 12px !important;
}

.quick-price-field {
  background: rgba(165,14,24,.055) !important;
  border-color: rgba(165,14,24,.13) !important;
}

.admin-editor-card {
  top: 122px !important;
}

.admin-editor-card .admin-card-title-row {
  position: sticky;
  top: 122px;
  z-index: 2;
  margin: -18px -18px 16px;
  padding: 18px;
  border-radius: 24px 24px 0 0;
  background: rgba(255,250,246,.94);
  backdrop-filter: blur(12px);
}

.admin-editor-tabs {
  position: sticky;
  top: 212px;
  z-index: 2;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 7px !important;
  margin-bottom: 14px;
  border-radius: 18px !important;
  background: rgba(245,237,231,.82) !important;
  backdrop-filter: blur(10px);
}

.admin-editor-tabs button {
  min-height: 44px !important;
  border-radius: 13px !important;
  font-size: 12px !important;
  line-height: 1.15;
}

.admin-form-section {
  border-radius: 20px !important;
  background: rgba(255,255,255,.68) !important;
}

.inline-fields,
.category-admin-fields,
.site-settings,
.ingredient-icon-row {
  gap: 12px !important;
}

.admin-preview {
  border-radius: 18px !important;
  background: rgba(255,255,255,.72) !important;
}

.category-admin-row,
.ingredient-icon-row,
.barista-rule-row,
.barista-analytics-row,
.barista-log-row {
  border-radius: 18px !important;
  background: rgba(255,255,255,.72) !important;
  transition: border-color .16s ease, box-shadow .16s ease;
}

.category-admin-row:hover,
.ingredient-icon-row:hover,
.barista-rule-row:hover,
.barista-analytics-row:hover,
.barista-log-row:hover {
  border-color: rgba(165,14,24,.16) !important;
  box-shadow: 0 10px 22px rgba(44,25,18,.055);
}

.category-admin-visual {
  border-radius: 18px !important;
  background: rgba(245,237,231,.82) !important;
}

.barista-rule-form,
.barista-test-form {
  border-radius: 20px !important;
  background: rgba(255,255,255,.7) !important;
}

.barista-rule-form {
  grid-template-columns: minmax(150px,.75fr) minmax(260px,1.2fr) minmax(200px,.75fr) auto !important;
}

.barista-test-result {
  border-radius: 20px !important;
  background: linear-gradient(135deg, rgba(165,14,24,.07), rgba(255,255,255,.75)) !important;
}

.admin-health-ok,
.admin-health-warn {
  border-radius: 999px !important;
}

.admin-login {
  border-radius: 28px !important;
  background: rgba(32,10,6,.84) !important;
  box-shadow: 0 28px 80px rgba(16,6,4,.26) !important;
}

@media (max-width: 1180px) {
  .admin-stage { padding: 16px !important; }
  .admin-shell {
    grid-template-columns: 220px minmax(0,1fr) !important;
    gap: 14px !important;
  }
  .admin-sidebar {
    top: 16px;
    height: calc(100dvh - 32px);
    padding: 14px !important;
  }
  .admin-main { padding: 14px !important; }
  .admin-grid,
  .admin-grid-pro {
    grid-template-columns: 1fr !important;
  }
  .admin-editor-card {
    position: static !important;
  }
  .admin-editor-card .admin-card-title-row,
  .admin-editor-tabs {
    position: static !important;
  }
  .barista-rule-form {
    grid-template-columns: 1fr 1fr !important;
  }
  .barista-rule-form button { grid-column: 1 / -1; }
}

@media (max-width: 820px) {
  .admin-stage { padding: 10px !important; }
  .admin-shell {
    min-height: auto;
    grid-template-columns: 1fr !important;
  }
  .admin-sidebar {
    position: static !important;
    height: auto !important;
    border-radius: 24px !important;
  }
  .admin-sidebar .brand-mark { margin-bottom: 12px !important; }
  .admin-nav {
    grid-template-columns: repeat(3, minmax(0,1fr)) !important;
    overflow: visible;
    padding-right: 0;
  }
  .admin-nav button {
    justify-content: center;
    min-height: 42px !important;
    padding: 0 8px !important;
    text-align: center !important;
    font-size: 12px !important;
  }
  .admin-topbar {
    position: static !important;
    grid-template-columns: 1fr !important;
  }
  .admin-save-status {
    max-width: none;
    width: 100%;
    justify-content: center;
  }
  .admin-topbar .secondary-btn { width: 100%; }
  .admin-stat-grid { grid-template-columns: repeat(2, minmax(0,1fr)) !important; }
  .admin-filter-row,
  .admin-filter-row-3,
  .inline-fields,
  .category-admin-fields,
  .barista-rule-form,
  .barista-test-form {
    grid-template-columns: 1fr !important;
  }
  .admin-product-row {
    grid-template-columns: 62px minmax(0,1fr) !important;
  }
  .admin-product-row img { width: 62px !important; height: 62px !important; }
  .admin-product-row .admin-actions {
    grid-column: 1 / -1;
    justify-content: flex-start !important;
  }
  .admin-editor-tabs { grid-template-columns: repeat(2, minmax(0,1fr)) !important; }
}

@media (max-width: 480px) {
  .admin-main,
  .admin-card,
  .admin-sidebar { border-radius: 20px !important; }
  .admin-card { padding: 14px !important; }
  .admin-title h1 { font-size: 25px !important; }
  .admin-nav { grid-template-columns: repeat(2, minmax(0,1fr)) !important; }
  .admin-stat-grid { grid-template-columns: 1fr !important; }
}


/* v29 admin management UX revision */
.admin-main {
  --admin-danger-soft: rgba(165, 14, 24, .075);
  --admin-border-strong: rgba(221, 207, 198, .96);
}

/* Product list: readable rows and clean action hierarchy */
.admin-product-list-pro {
  max-height: none !important;
  overflow: visible !important;
  padding-right: 0 !important;
  display: grid !important;
  gap: 12px !important;
}

.admin-filter-row-3 {
  display: grid !important;
  grid-template-columns: minmax(180px, 1fr) minmax(190px, .9fr) minmax(170px, .8fr) !important;
  gap: 12px !important;
}

.admin-filter-row-3 .field input,
.admin-filter-row-3 .field select {
  min-height: 52px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
}

.admin-product-row {
  display: grid !important;
  grid-template-columns: 86px minmax(0, 1fr) !important;
  grid-template-areas:
    "image info"
    "actions actions" !important;
  align-items: center !important;
  gap: 12px 16px !important;
  padding: 14px !important;
  border: 1px solid var(--admin-border-strong) !important;
  border-radius: 22px !important;
  background: rgba(255, 255, 255, .78) !important;
}

.admin-product-row > img {
  grid-area: image;
  width: 86px !important;
  height: 86px !important;
  border-radius: 18px !important;
  object-fit: cover !important;
}

.admin-product-row > span:not(.admin-actions) {
  grid-area: info;
  min-width: 0;
  display: grid !important;
  gap: 7px !important;
  align-content: center;
}

.admin-product-row > span:not(.admin-actions) strong {
  max-width: 100%;
  color: #1f1410;
  font-size: 17px !important;
  line-height: 1.15 !important;
  letter-spacing: -.02em;
  white-space: normal !important;
}

.admin-product-row > span:not(.admin-actions) small {
  color: #75685f;
  font-size: 12px !important;
  line-height: 1.45 !important;
  word-break: normal !important;
}

.admin-health-ok,
.admin-health-warn {
  width: fit-content;
  max-width: 100%;
  display: inline-flex !important;
  align-items: center;
  min-height: 28px;
  padding: 0 10px !important;
  border-radius: 999px !important;
  font-size: 11px !important;
  line-height: 1.15 !important;
}

.admin-health-warn {
  color: var(--accent-dark) !important;
  background: rgba(165,14,24,.09) !important;
}

.admin-product-row .admin-actions,
.admin-product-row .stack-actions {
  grid-area: actions;
  width: 100%;
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 8px !important;
  padding-top: 12px;
  border-top: 1px solid rgba(226,215,207,.78);
}

.admin-product-row .mini-btn {
  width: 36px !important;
  min-width: 36px !important;
  height: 36px !important;
  border-radius: 12px !important;
}

.quick-price-field {
  min-width: 112px !important;
  height: 40px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  padding: 0 12px !important;
  color: var(--accent-dark) !important;
  font-weight: 900 !important;
  background: rgba(165,14,24,.06) !important;
  border: 1px solid rgba(165,14,24,.16) !important;
  border-radius: 14px !important;
}

.quick-price-field input {
  width: 66px !important;
  height: 34px !important;
  min-height: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: var(--accent-dark) !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  box-shadow: none !important;
}

.admin-product-row .secondary-btn,
.admin-product-row .danger-btn {
  min-height: 40px !important;
  padding: 0 13px !important;
  font-size: 12px !important;
  white-space: nowrap !important;
}

.admin-product-row .danger-btn {
  margin-left: auto;
}

/* Category management: compact dashboard instead of long cramped cards */
.admin-grid-wide {
  align-items: start !important;
}

.admin-grid-wide > .admin-card:has(.category-admin-list) {
  position: sticky;
  top: 120px;
}

.category-admin-list {
  max-height: none !important;
  display: grid !important;
  gap: 12px !important;
  overflow: visible !important;
  padding-right: 0 !important;
}

.category-admin-row {
  display: grid !important;
  gap: 12px !important;
  padding: 14px !important;
  border: 1px solid var(--admin-border-strong) !important;
  border-radius: 22px !important;
  background: rgba(255,255,255,.78) !important;
}

.category-admin-main {
  display: grid !important;
  grid-template-columns: 54px minmax(0, 1fr) !important;
  gap: 12px !important;
  align-items: start !important;
}

.category-admin-visual {
  width: 54px !important;
  height: 54px !important;
  border-radius: 18px !important;
  background: rgba(165,14,24,.07) !important;
}

.category-admin-fields {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px !important;
}

.category-admin-fields .field {
  min-width: 0 !important;
}

.category-admin-fields .field input,
.category-admin-fields .field select {
  min-height: 40px !important;
  font-size: 12px !important;
}

.category-admin-fields .mini-preview {
  width: 42px !important;
  height: 42px !important;
  border-radius: 12px !important;
  object-fit: contain !important;
  background: rgba(245,237,231,.8);
  padding: 5px;
}

.category-admin-fields .small-note {
  grid-column: 1 / -1;
  margin-top: -2px !important;
  color: #8a7d75 !important;
  font-size: 11px !important;
}

.category-admin-actions {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: flex-end !important;
  gap: 8px !important;
  padding-top: 10px !important;
  border-top: 1px solid rgba(226,215,207,.78);
}

.category-admin-actions .mini-btn {
  width: 34px !important;
  min-width: 34px !important;
  height: 34px !important;
  border-radius: 11px !important;
}

.category-admin-actions .secondary-btn,
.category-admin-actions .danger-btn {
  min-height: 36px !important;
  padding: 0 12px !important;
  font-size: 12px !important;
}

.admin-card:has([data-category-form]) .form-grid {
  gap: 12px !important;
}

.admin-card:has([data-category-form]) .admin-preview {
  min-height: 82px !important;
  display: grid !important;
  grid-template-columns: 64px minmax(0, 1fr) !important;
  gap: 12px !important;
  align-items: center !important;
  padding: 10px !important;
}

.admin-card:has([data-category-form]) .admin-preview img {
  width: 64px !important;
  height: 64px !important;
  object-fit: contain !important;
}

/* Home filters are compact editable rows */
.admin-card:has([data-home-filter-form]) .form-grid {
  gap: 10px !important;
}

.admin-card:has([data-home-filter-form]) .category-admin-row,
.admin-card:has([data-home-filter-form]) form {
  min-height: auto !important;
}

/* Barista management: broader panels and cleaner reading rhythm */
.admin-grid-wide:has(.barista-rule-card) {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(360px, .72fr) !important;
  gap: 18px !important;
}

.admin-grid-wide:has(.barista-rule-card) > .admin-card:nth-child(1) {
  grid-column: 1 / -1;
}

.admin-grid-wide:has(.barista-rule-card) > .admin-card:nth-child(2) {
  grid-column: 1 / -1;
}

.admin-grid-wide:has(.barista-rule-card) > .barista-rule-card,
.admin-grid-wide:has(.barista-rule-card) > .admin-card:nth-child(5) {
  grid-column: 1;
}

.admin-grid-wide:has(.barista-rule-card) > .admin-card:nth-child(4),
.admin-grid-wide:has(.barista-rule-card) > .admin-card:nth-child(6) {
  grid-column: 2;
}

.admin-choice-grid.wide {
  display: grid !important;
  grid-template-columns: minmax(310px, .8fr) minmax(0, 1.2fr) !important;
  gap: 18px !important;
  align-items: start !important;
}

.admin-checkbox-list.compact,
.admin-checkbox-list {
  display: grid !important;
  gap: 10px !important;
}

.admin-choice-grid.wide .admin-checkbox-list.compact {
  max-height: 430px !important;
  overflow-y: auto !important;
  padding-right: 4px !important;
  scrollbar-width: thin;
}

.admin-check-row {
  grid-template-columns: 22px 54px minmax(0, 1fr) !important;
  gap: 10px !important;
  padding: 9px !important;
  border-radius: 16px !important;
}

.admin-check-row img {
  width: 54px !important;
  height: 54px !important;
  border-radius: 13px !important;
  object-fit: cover !important;
}

.admin-category-choice-media {
  width: 54px !important;
  height: 54px !important;
  border-radius: 13px !important;
}

.admin-check-row strong {
  font-size: 12px !important;
  line-height: 1.2 !important;
}

.admin-check-row em {
  font-size: 11px !important;
}

.admin-choice-grid.wide textarea {
  min-height: 132px !important;
  resize: vertical;
}

.admin-footer-actions.wide {
  display: flex !important;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 10px !important;
  padding-top: 14px;
  border-top: 1px solid rgba(226,215,207,.72);
}

.barista-rule-form {
  display: grid !important;
  grid-template-columns: minmax(180px, .75fr) minmax(0, 1.25fr) minmax(240px, .85fr) !important;
  gap: 12px !important;
  align-items: end !important;
  padding: 14px !important;
}

.barista-rule-form button {
  grid-column: 1 / -1;
  justify-self: end;
  min-width: 160px;
}

.barista-rule-form textarea {
  min-height: 118px !important;
}

.barista-rule-form select[multiple] {
  min-height: 118px !important;
}

.barista-rule-row,
.barista-analytics-row,
.barista-log-row {
  padding: 14px !important;
  border: 1px solid var(--admin-border-strong) !important;
}

.barista-rule-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 14px !important;
  align-items: center !important;
}

.barista-rule-row em,
.barista-log-row p,
.barista-log-row small {
  word-break: normal !important;
  overflow-wrap: anywhere;
}

.barista-analytics-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 14px !important;
  align-items: center !important;
}

.barista-analytics-row strong,
.barista-rule-row strong,
.barista-log-row strong {
  font-size: 14px !important;
  line-height: 1.25 !important;
}

.barista-analytics-row em,
.barista-rule-row em,
.barista-log-row p,
.barista-log-row em {
  font-size: 12px !important;
  line-height: 1.45 !important;
}

.barista-test-form {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 10px !important;
  padding: 12px !important;
}

.barista-test-form input {
  min-height: 44px !important;
}

.barista-test-result,
.empty-state {
  line-height: 1.45 !important;
}

.barista-log-list {
  max-height: 520px !important;
  overflow-y: auto !important;
  padding-right: 5px !important;
  scrollbar-width: thin;
}

/* Responsive admin refinements */
@media (min-width: 1181px) {
  .admin-grid-pro {
    grid-template-columns: minmax(0, .95fr) minmax(440px, .9fr) !important;
  }
}

@media (max-width: 1280px) {
  .admin-filter-row-3,
  .category-admin-fields,
  .admin-choice-grid.wide,
  .barista-rule-form {
    grid-template-columns: 1fr !important;
  }

  .admin-product-row .danger-btn {
    margin-left: 0;
  }

  .admin-grid-wide:has(.barista-rule-card) {
    grid-template-columns: 1fr !important;
  }

  .admin-grid-wide:has(.barista-rule-card) > .admin-card,
  .admin-grid-wide:has(.barista-rule-card) > .barista-rule-card {
    grid-column: 1 !important;
  }

  .admin-choice-grid.wide .admin-checkbox-list.compact {
    max-height: 320px !important;
  }
}

@media (max-width: 820px) {
  .admin-product-row {
    grid-template-columns: 72px minmax(0, 1fr) !important;
  }

  .admin-product-row > img {
    width: 72px !important;
    height: 72px !important;
  }

  .admin-product-row .admin-actions,
  .admin-product-row .stack-actions,
  .category-admin-actions,
  .admin-footer-actions.wide {
    justify-content: flex-start !important;
  }

  .quick-price-field {
    min-width: 100px !important;
  }

  .category-admin-main {
    grid-template-columns: 48px minmax(0,1fr) !important;
  }

  .category-admin-visual {
    width: 48px !important;
    height: 48px !important;
  }

  .barista-test-form {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 520px) {
  .admin-product-row {
    grid-template-columns: 62px minmax(0, 1fr) !important;
    padding: 12px !important;
  }

  .admin-product-row > img {
    width: 62px !important;
    height: 62px !important;
    border-radius: 15px !important;
  }

  .admin-product-row .secondary-btn,
  .admin-product-row .danger-btn,
  .category-admin-actions .secondary-btn,
  .category-admin-actions .danger-btn {
    flex: 1 1 auto;
  }
}


/* v30 admin home filter row hotfix */
.admin-card:has([data-home-filter-form]) {
  overflow: visible !important;
}

.admin-card:has([data-home-filter-form]) .form-grid,
.admin-card:has([data-home-filter-form]) .category-admin-list {
  display: grid !important;
  gap: 10px !important;
}

form[data-home-filter-form],
.admin-card:has([data-home-filter-form]) form.category-admin-row {
  width: 100% !important;
  min-height: auto !important;
  display: grid !important;
  grid-template-columns: minmax(240px, 1fr) auto !important;
  gap: 14px !important;
  align-items: end !important;
  padding: 14px !important;
  border-radius: 18px !important;
  background: rgba(255,255,255,.78) !important;
}

form[data-home-filter-form] .field,
.admin-card:has([data-home-filter-form]) form.category-admin-row .field {
  width: 100% !important;
  min-width: 0 !important;
  display: grid !important;
  gap: 7px !important;
  margin: 0 !important;
  white-space: normal !important;
}

form[data-home-filter-form] .field > span,
form[data-home-filter-form] .field label,
.admin-card:has([data-home-filter-form]) form.category-admin-row .field {
  white-space: normal !important;
}

form[data-home-filter-form] .field input,
.admin-card:has([data-home-filter-form]) form.category-admin-row .field input {
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  min-height: 46px !important;
  height: 46px !important;
  padding: 0 14px !important;
  border-radius: 14px !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  text-align: left !important;
  display: block !important;
}

form[data-home-filter-form] .category-admin-actions,
.admin-card:has([data-home-filter-form]) form.category-admin-row .category-admin-actions {
  width: auto !important;
  min-width: max-content !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 8px !important;
  padding-top: 0 !important;
  border-top: 0 !important;
  align-self: end !important;
}

form[data-home-filter-form] .category-admin-actions .mini-btn,
.admin-card:has([data-home-filter-form]) form.category-admin-row .category-admin-actions .mini-btn {
  width: 38px !important;
  min-width: 38px !important;
  height: 38px !important;
  border-radius: 13px !important;
}

form[data-home-filter-form] .category-admin-actions .secondary-btn,
form[data-home-filter-form] .category-admin-actions .danger-btn,
.admin-card:has([data-home-filter-form]) form.category-admin-row .category-admin-actions .secondary-btn,
.admin-card:has([data-home-filter-form]) form.category-admin-row .category-admin-actions .danger-btn {
  min-height: 40px !important;
  padding: 0 14px !important;
  border-radius: 14px !important;
  white-space: nowrap !important;
}

@media (max-width: 760px) {
  form[data-home-filter-form],
  .admin-card:has([data-home-filter-form]) form.category-admin-row {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  form[data-home-filter-form] .category-admin-actions,
  .admin-card:has([data-home-filter-form]) form.category-admin-row .category-admin-actions {
    width: 100% !important;
    min-width: 0 !important;
    justify-content: flex-start !important;
    padding-top: 10px !important;
    border-top: 1px solid rgba(226,215,207,.78) !important;
  }
}


/* v31 admin login contrast and form polish */
.admin-login {
  width: min(100%, 440px) !important;
  margin: clamp(34px, 8vh, 86px) auto 0 !important;
  padding: 34px 34px 32px !important;
  border-radius: 30px !important;
  color: #fffaf6 !important;
  background:
    radial-gradient(circle at 12% 0%, rgba(255,255,255,.10), transparent 34%),
    linear-gradient(145deg, rgba(72,46,40,.98), rgba(55,35,30,.98)) !important;
  border: 1px solid rgba(255,255,255,.16) !important;
  box-shadow: 0 32px 86px rgba(42,22,17,.26) !important;
}

.admin-login .brand-mark {
  margin-bottom: 24px !important;
}

.admin-login .brand-logo-img {
  width: 76px !important;
  max-width: 76px !important;
  filter: brightness(0) invert(1) !important;
}

.admin-login h1 {
  margin-bottom: 14px !important;
  color: #fffaf6 !important;
  font-size: clamp(34px, 4vw, 42px) !important;
  letter-spacing: -.025em;
}

.admin-login p {
  margin: 0 0 22px !important;
  max-width: 360px;
  color: rgba(255,250,246,.78) !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
}

.admin-login .form-grid {
  gap: 16px !important;
}

.admin-login .field,
.admin-login .login-field {
  gap: 8px !important;
  color: rgba(255,250,246,.86) !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  letter-spacing: -.01em;
}

.admin-login .login-field input,
.admin-login .field input[type="password"],
.admin-login .field input[name="name"] {
  min-height: 56px !important;
  border-radius: 16px !important;
  border: 1px solid rgba(255,255,255,.22) !important;
  color: #1f1714 !important;
  background: rgba(255,250,246,.88) !important;
  padding: 0 18px !important;
  font-size: 16px !important;
  font-weight: 650 !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.55) !important;
}

.admin-login .login-field input::placeholder {
  color: rgba(31,23,20,.42) !important;
}

.admin-login .login-field input:focus,
.admin-login .field input[type="password"]:focus,
.admin-login .field input[name="name"]:focus {
  border-color: rgba(255,255,255,.52) !important;
  background: #fffaf6 !important;
  box-shadow: 0 0 0 4px rgba(255,250,246,.12), inset 0 1px 0 rgba(255,255,255,.65) !important;
}

.admin-login .primary-btn {
  margin-top: 12px !important;
  min-height: 58px !important;
  border-radius: 16px !important;
  font-size: 15px !important;
  letter-spacing: -.01em;
  box-shadow: 0 18px 34px rgba(126,7,16,.26) !important;
}

.admin-login .ghost-btn {
  margin-top: 4px !important;
  min-height: 46px !important;
  color: rgba(255,250,246,.72) !important;
  border: 1px solid rgba(255,255,255,.08) !important;
  background: rgba(255,255,255,.04) !important;
  border-radius: 14px !important;
}

.admin-login .ghost-btn:hover {
  color: #fffaf6 !important;
  border-color: rgba(255,255,255,.18) !important;
  background: rgba(255,255,255,.075) !important;
}

.admin-login .form-error {
  min-height: 20px !important;
  color: #ffd4d0 !important;
  background: transparent !important;
  font-size: 12px !important;
  line-height: 1.35;
}

@media (max-width: 520px) {
  .admin-login {
    width: 100% !important;
    margin-top: 14px !important;
    padding: 28px 22px 24px !important;
    border-radius: 26px !important;
  }

  .admin-login h1 {
    font-size: 34px !important;
  }

  .admin-login .login-field input,
  .admin-login .field input[type="password"],
  .admin-login .field input[name="name"] {
    min-height: 54px !important;
  }
}


/* v32 premium admin navigation polish */
.admin-stage {
  --admin-sidebar-w: 286px;
}

@media (min-width: 821px) {
  .admin-shell {
    grid-template-columns: var(--admin-sidebar-w) minmax(0, 1fr) !important;
    gap: 22px !important;
  }

  .admin-sidebar {
    padding: 22px 18px !important;
    border-radius: 32px !important;
    background:
      linear-gradient(180deg, rgba(255,250,246,.98), rgba(252,246,241,.94)) !important;
    border: 1px solid rgba(226,215,207,.92) !important;
    box-shadow:
      0 24px 70px rgba(44,25,18,.10),
      inset 0 1px 0 rgba(255,255,255,.7) !important;
  }

  .admin-sidebar::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    border-radius: inherit;
    background:
      radial-gradient(circle at 30% 0%, rgba(165,14,24,.08), transparent 34%),
      linear-gradient(180deg, rgba(255,255,255,.28), transparent 44%);
    opacity: .9;
  }

  .admin-sidebar::after {
    content: "M&M COFFEE QR Menü Yönetimi";
    position: relative;
    margin-top: auto;
    padding: 13px 14px;
    border: 1px solid rgba(226,215,207,.86);
    border-radius: 18px;
    color: #7a6c64;
    background: rgba(255,255,255,.58);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .01em;
    text-align: center;
  }

  .admin-sidebar .brand-mark {
    position: relative;
    z-index: 1;
    width: 100% !important;
    margin: 0 0 18px !important;
    padding: 8px 0 18px;
    display: grid !important;
    justify-items: center !important;
    border-bottom: 1px solid rgba(226,215,207,.72);
  }

  .admin-sidebar .brand-logo-img {
    width: 76px !important;
    height: auto !important;
  }

  .admin-sidebar .brand-word {
    display: block !important;
    margin-top: 4px;
    color: var(--accent-dark) !important;
    font-size: 9px !important;
    letter-spacing: .28em !important;
  }

  .admin-nav {
    position: relative;
    z-index: 1;
    display: flex !important;
    flex-direction: column;
    gap: 6px !important;
    overflow-y: auto;
    padding: 0 2px 14px 0 !important;
    scrollbar-width: thin;
    scrollbar-color: rgba(165,14,24,.24) transparent;
  }

  .admin-nav::-webkit-scrollbar { width: 5px; }
  .admin-nav::-webkit-scrollbar-thumb {
    border-radius: 999px;
    background: rgba(165,14,24,.2);
  }

  .admin-nav button {
    position: relative;
    width: 100%;
    min-height: 46px !important;
    display: grid !important;
    grid-template-columns: 34px minmax(0, 1fr) 8px;
    align-items: center;
    gap: 10px;
    padding: 0 12px 0 10px !important;
    border: 1px solid transparent !important;
    border-radius: 17px !important;
    color: #3b2d27 !important;
    background: transparent !important;
    font-size: 13px !important;
    font-weight: 850 !important;
    letter-spacing: -.01em;
    text-align: left !important;
    box-shadow: none !important;
  }

  .admin-nav button::before {
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    border-radius: 13px;
    color: var(--accent-dark);
    background: rgba(165,14,24,.065);
    font-size: 14px;
    line-height: 1;
    transition: transform .18s ease, background .18s ease, color .18s ease;
  }

  .admin-nav button::after {
    content: "";
    width: 6px;
    height: 6px;
    justify-self: end;
    border-radius: 999px;
    background: transparent;
    transition: background .18s ease, transform .18s ease;
  }

  .admin-nav button:nth-child(1)::before { content: "☕"; }
  .admin-nav button:nth-child(2)::before { content: "▦"; }
  .admin-nav button:nth-child(3)::before { content: "✦"; }
  .admin-nav button:nth-child(4)::before { content: "◌"; }
  .admin-nav button:nth-child(5)::before { content: "◷"; }
  .admin-nav button:nth-child(6)::before { content: "⌂"; }
  .admin-nav button:nth-child(7)::before { content: "%"; }
  .admin-nav button:nth-child(8)::before { content: "▣"; }
  .admin-nav button:nth-child(9)::before { content: "!"; }
  .admin-nav button:nth-child(10)::before { content: "⚙"; }
  .admin-nav button:nth-child(11)::before { content: "↗"; }

  .admin-nav button:nth-child(4),
  .admin-nav button:nth-child(6),
  .admin-nav button:nth-child(10) {
    margin-top: 8px;
  }

  .admin-nav button:nth-child(4)::before,
  .admin-nav button:nth-child(6)::before,
  .admin-nav button:nth-child(10)::before {
    box-shadow: 0 -15px 0 -14px rgba(226,215,207,.95);
  }

  .admin-nav button:hover {
    border-color: rgba(165,14,24,.10) !important;
    color: var(--accent-dark) !important;
    background: rgba(255,255,255,.72) !important;
    transform: translateX(2px);
  }

  .admin-nav button:hover::before {
    transform: scale(1.04);
    background: rgba(165,14,24,.11);
  }

  .admin-nav button.active {
    color: #fff !important;
    border-color: rgba(126,7,16,.18) !important;
    background:
      linear-gradient(135deg, var(--accent), var(--accent-dark)) !important;
    box-shadow: 0 16px 32px rgba(126,7,16,.23) !important;
  }

  .admin-nav button.active::before {
    color: var(--accent-dark);
    background: rgba(255,255,255,.92);
  }

  .admin-nav button.active::after {
    background: #fff;
    transform: scale(1.12);
  }

  .admin-main {
    border-radius: 32px !important;
  }

  .admin-topbar {
    border-radius: 26px !important;
    border: 1px solid rgba(226,215,207,.86) !important;
  }
}

@media (min-width: 821px) and (max-width: 1180px) {
  .admin-stage { --admin-sidebar-w: 238px; }
  .admin-shell { gap: 16px !important; }
  .admin-sidebar { padding: 16px 12px !important; }
  .admin-sidebar .brand-logo-img { width: 60px !important; }
  .admin-nav button {
    min-height: 42px !important;
    grid-template-columns: 30px minmax(0, 1fr) 6px;
    gap: 8px;
    padding-left: 8px !important;
    font-size: 12px !important;
  }
  .admin-nav button::before {
    width: 30px;
    height: 30px;
    border-radius: 11px;
    font-size: 12px;
  }
}

@media (max-width: 820px) {
  .admin-sidebar {
    padding: 14px !important;
    border-radius: 24px !important;
    background: rgba(255,250,246,.96) !important;
    border: 1px solid rgba(226,215,207,.92) !important;
  }

  .admin-sidebar .brand-mark {
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
    margin: 0 0 12px !important;
    padding-bottom: 12px;
    border-bottom: 1px solid rgba(226,215,207,.72);
  }

  .admin-sidebar .brand-logo-img { width: 56px !important; }

  .admin-nav {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
    padding: 0 !important;
  }

  .admin-nav button {
    min-height: 42px !important;
    border-radius: 14px !important;
    border: 1px solid rgba(226,215,207,.8) !important;
    background: rgba(255,255,255,.62) !important;
    color: #30231e !important;
    font-size: 12px !important;
    font-weight: 850 !important;
    justify-content: center !important;
    text-align: center !important;
  }

  .admin-nav button.active {
    color: #fff !important;
    border-color: rgba(126,7,16,.18) !important;
    background: linear-gradient(135deg, var(--accent), var(--accent-dark)) !important;
    box-shadow: 0 10px 22px rgba(126,7,16,.18) !important;
  }
}


/* v33 admin category page + sticky topbar fix */
.admin-topbar {
  position: sticky !important;
  top: 14px !important;
  z-index: 50 !important;
  backdrop-filter: blur(18px) !important;
  -webkit-backdrop-filter: blur(18px) !important;
}

.admin-main {
  overflow: visible !important;
}

/* Category management page: avoid huge empty grid gaps */
.admin-grid-wide:has([data-category-form]) {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 16px !important;
  align-items: start !important;
}

.admin-grid-wide:has([data-category-form]) > .admin-card {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
}

.admin-card:has([data-category-form]) .form-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 12px !important;
  align-items: end !important;
}

.admin-card:has([data-category-form]) .form-grid .admin-preview,
.admin-card:has([data-category-form]) .form-grid .primary-btn,
.admin-card:has([data-category-form]) .form-grid input[type="file"] {
  grid-column: 1 / -1 !important;
}

.admin-card:has([data-category-form]) .admin-preview {
  min-height: 74px !important;
  display: grid !important;
  grid-template-columns: 64px minmax(0, 1fr) !important;
  gap: 12px !important;
  align-items: center !important;
  padding: 10px 12px !important;
}

.admin-card:has([data-category-form]) .admin-preview img {
  width: 56px !important;
  height: 56px !important;
  border-radius: 14px !important;
}

/* Menu categories as clean responsive grid */
.admin-grid-wide:has([data-category-form]) .admin-card:has(.category-admin-list) .category-admin-list {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 12px !important;
  max-height: none !important;
  overflow: visible !important;
  padding-right: 0 !important;
}

.admin-grid-wide:has([data-category-form]) .category-admin-row {
  min-height: auto !important;
  padding: 14px !important;
  border-radius: 20px !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 12px !important;
}

.admin-grid-wide:has([data-category-form]) .category-admin-main {
  display: grid !important;
  grid-template-columns: 52px minmax(0, 1fr) !important;
  gap: 12px !important;
  align-items: start !important;
}

.admin-grid-wide:has([data-category-form]) .category-admin-visual {
  width: 52px !important;
  height: 52px !important;
  border-radius: 16px !important;
}

.admin-grid-wide:has([data-category-form]) .category-admin-fields {
  width: 100% !important;
  min-width: 0 !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px !important;
}

.admin-grid-wide:has([data-category-form]) .category-admin-fields .field {
  min-width: 0 !important;
}

.admin-grid-wide:has([data-category-form]) .category-admin-fields .field input,
.admin-grid-wide:has([data-category-form]) .category-admin-fields .field select {
  width: 100% !important;
  min-width: 0 !important;
  height: 42px !important;
  min-height: 42px !important;
  font-size: 12px !important;
}

.admin-grid-wide:has([data-category-form]) .category-admin-fields .inline-one,
.admin-grid-wide:has([data-category-form]) .category-admin-fields .field:has(.mini-preview),
.admin-grid-wide:has([data-category-form]) .category-admin-fields .small-note {
  grid-column: 1 / -1 !important;
}

.admin-grid-wide:has([data-category-form]) .category-admin-fields input[type="file"] {
  font-size: 11px !important;
  overflow: hidden !important;
}

.admin-grid-wide:has([data-category-form]) .category-admin-actions {
  width: 100% !important;
  display: flex !important;
  justify-content: flex-end !important;
  align-items: center !important;
  gap: 8px !important;
  padding-top: 12px !important;
  border-top: 1px solid rgba(226,215,207,.76) !important;
}

.admin-grid-wide:has([data-category-form]) .category-admin-actions .mini-btn {
  width: 36px !important;
  min-width: 36px !important;
  height: 36px !important;
  border-radius: 12px !important;
}

.admin-grid-wide:has([data-category-form]) .category-admin-actions .secondary-btn,
.admin-grid-wide:has([data-category-form]) .category-admin-actions .danger-btn {
  min-height: 38px !important;
  padding: 0 14px !important;
  border-radius: 13px !important;
  white-space: nowrap !important;
}

/* Home filters: force readable compact rows */
.admin-card:has([data-home-filter-form]) {
  overflow: visible !important;
}

.admin-card:has([data-home-filter-form]) .category-admin-list,
.admin-card:has([data-home-filter-form]) .form-grid {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 10px !important;
}

form[data-home-filter-form],
.admin-card:has([data-home-filter-form]) form.category-admin-row {
  width: 100% !important;
  min-height: auto !important;
  display: grid !important;
  grid-template-columns: minmax(260px, 1fr) auto !important;
  gap: 14px !important;
  align-items: end !important;
  padding: 14px !important;
  border-radius: 18px !important;
  background: rgba(255,255,255,.78) !important;
}

form[data-home-filter-form] .field,
.admin-card:has([data-home-filter-form]) form.category-admin-row .field {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 7px !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
}

form[data-home-filter-form] .field input,
.admin-card:has([data-home-filter-form]) form.category-admin-row .field input {
  width: 100% !important;
  max-width: none !important;
  min-width: 240px !important;
  height: 44px !important;
  min-height: 44px !important;
  padding: 0 14px !important;
  text-align: left !important;
  font-size: 14px !important;
  font-weight: 800 !important;
}

form[data-home-filter-form] .category-admin-actions,
.admin-card:has([data-home-filter-form]) form.category-admin-row .category-admin-actions {
  width: auto !important;
  min-width: max-content !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 8px !important;
  padding-top: 0 !important;
  border-top: 0 !important;
}

@media (min-width: 1181px) {
  .admin-topbar {
    top: 18px !important;
  }
}

@media (max-width: 1280px) {
  .admin-grid-wide:has([data-category-form]) .admin-card:has(.category-admin-list) .category-admin-list {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 760px) {
  .admin-card:has([data-category-form]) .form-grid,
  .admin-grid-wide:has([data-category-form]) .category-admin-fields,
  form[data-home-filter-form],
  .admin-card:has([data-home-filter-form]) form.category-admin-row {
    grid-template-columns: 1fr !important;
  }

  form[data-home-filter-form] .field input,
  .admin-card:has([data-home-filter-form]) form.category-admin-row .field input {
    min-width: 0 !important;
  }

  form[data-home-filter-form] .category-admin-actions,
  .admin-card:has([data-home-filter-form]) form.category-admin-row .category-admin-actions {
    width: 100% !important;
    min-width: 0 !important;
    justify-content: flex-start !important;
    padding-top: 10px !important;
    border-top: 1px solid rgba(226,215,207,.78) !important;
  }
}


/* v34 admin real fixed/sticky topbar: scroll only inside admin content */
@media (min-width: 821px) {
  .admin-stage:has(.admin-shell) {
    height: 100dvh !important;
    min-height: 100dvh !important;
    overflow: hidden !important;
    padding: 18px 28px !important;
  }

  .admin-shell {
    height: calc(100dvh - 36px) !important;
    min-height: 0 !important;
    overflow: hidden !important;
    align-items: stretch !important;
  }

  .admin-sidebar {
    height: 100% !important;
    min-height: 0 !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;
  }

  .admin-main {
    height: 100% !important;
    min-height: 0 !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    overscroll-behavior: contain;
    scroll-padding-top: 118px;
    padding: 18px !important;
  }

  .admin-main::-webkit-scrollbar,
  .admin-sidebar::-webkit-scrollbar {
    width: 8px;
  }

  .admin-main::-webkit-scrollbar-thumb,
  .admin-sidebar::-webkit-scrollbar-thumb {
    border-radius: 999px;
    background: rgba(126, 7, 16, .18);
  }

  .admin-main::-webkit-scrollbar-track,
  .admin-sidebar::-webkit-scrollbar-track {
    background: transparent;
  }

  .admin-topbar {
    position: sticky !important;
    top: 0 !important;
    z-index: 500 !important;
    margin: 0 0 18px !important;
    background: rgba(255, 250, 246, .96) !important;
    box-shadow: 0 14px 34px rgba(44,25,18,.08) !important;
  }
}

@media (max-width: 820px) {
  .admin-stage:has(.admin-shell) {
    overflow: visible !important;
  }

  .admin-main {
    overflow: visible !important;
  }

  .admin-topbar {
    position: sticky !important;
    top: 10px !important;
    z-index: 120 !important;
    background: rgba(255, 250, 246, .96) !important;
  }
}


/* v35 real fixed admin topbar: viewport fixed, body scroll locked */
@media (min-width: 821px) {
  html:has(.admin-shell),
  body:has(.admin-shell) {
    height: 100dvh !important;
    min-height: 100dvh !important;
    overflow: hidden !important;
  }

  .admin-stage:has(.admin-shell) {
    --admin-pad-x: 28px;
    --admin-pad-y: 18px;
    --admin-gap: 22px;
    --admin-max: 1220px;
    --admin-topbar-space: 116px;
    position: fixed !important;
    inset: 0 !important;
    width: 100vw !important;
    height: 100dvh !important;
    min-height: 0 !important;
    overflow: hidden !important;
    padding: var(--admin-pad-y) var(--admin-pad-x) !important;
  }

  .admin-stage:has(.admin-shell) .admin-shell {
    width: min(100%, var(--admin-max)) !important;
    height: calc(100dvh - (var(--admin-pad-y) * 2)) !important;
    min-height: 0 !important;
    margin: 0 auto !important;
    overflow: visible !important;
    align-items: stretch !important;
  }

  .admin-stage:has(.admin-shell) .admin-sidebar {
    height: 100% !important;
    max-height: 100% !important;
    min-height: 0 !important;
    position: sticky !important;
    top: 0 !important;
    overflow-y: auto !important;
    overscroll-behavior: contain !important;
  }

  .admin-stage:has(.admin-shell) .admin-main {
    height: 100% !important;
    max-height: 100% !important;
    min-height: 0 !important;
    position: relative !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    overscroll-behavior: contain !important;
    padding: var(--admin-topbar-space) 18px 18px !important;
    scroll-padding-top: calc(var(--admin-topbar-space) + 20px) !important;
  }

  .admin-stage:has(.admin-shell) .admin-topbar {
    position: fixed !important;
    top: var(--admin-pad-y) !important;
    left: max(
      calc(var(--admin-pad-x) + var(--admin-sidebar-w) + var(--admin-gap)),
      calc((100vw - var(--admin-max)) / 2 + var(--admin-sidebar-w) + var(--admin-gap))
    ) !important;
    right: max(var(--admin-pad-x), calc((100vw - var(--admin-max)) / 2)) !important;
    z-index: 9999 !important;
    margin: 0 !important;
    min-height: 92px !important;
    border-radius: 26px !important;
    background: rgba(255, 250, 246, .97) !important;
    border: 1px solid rgba(226, 215, 207, .95) !important;
    box-shadow: 0 18px 42px rgba(44, 25, 18, .10) !important;
    backdrop-filter: blur(18px) !important;
    -webkit-backdrop-filter: blur(18px) !important;
  }

  .admin-stage:has(.admin-shell) .admin-main::-webkit-scrollbar,
  .admin-stage:has(.admin-shell) .admin-sidebar::-webkit-scrollbar {
    width: 7px !important;
  }

  .admin-stage:has(.admin-shell) .admin-main::-webkit-scrollbar-thumb,
  .admin-stage:has(.admin-shell) .admin-sidebar::-webkit-scrollbar-thumb {
    border-radius: 999px !important;
    background: rgba(126, 7, 16, .18) !important;
  }
}

@media (min-width: 821px) and (max-width: 1180px) {
  .admin-stage:has(.admin-shell) {
    --admin-gap: 16px;
    --admin-topbar-space: 108px;
  }

  .admin-stage:has(.admin-shell) .admin-topbar {
    min-height: 84px !important;
  }
}

@media (max-width: 820px) {
  html:has(.admin-shell),
  body:has(.admin-shell) {
    overflow: auto !important;
  }
}


/* v36 admin product management redesign + undo narrow fixed layout */
@media (min-width: 821px) {
  html:has(.admin-shell),
  body:has(.admin-shell) {
    height: auto !important;
    min-height: 100dvh !important;
    overflow: auto !important;
  }

  .admin-stage:has(.admin-shell) {
    --admin-sidebar-w: 278px;
    --admin-gap: 24px;
    --admin-max: 1680px;
    position: relative !important;
    inset: auto !important;
    width: 100% !important;
    min-height: 100dvh !important;
    height: auto !important;
    overflow: visible !important;
    padding: 22px 28px !important;
  }

  .admin-stage:has(.admin-shell) .admin-shell {
    width: min(100%, var(--admin-max)) !important;
    max-width: var(--admin-max) !important;
    min-height: calc(100dvh - 44px) !important;
    height: auto !important;
    margin: 0 auto !important;
    display: grid !important;
    grid-template-columns: var(--admin-sidebar-w) minmax(0, 1fr) !important;
    gap: var(--admin-gap) !important;
    overflow: visible !important;
    align-items: start !important;
  }

  .admin-stage:has(.admin-shell) .admin-sidebar {
    position: sticky !important;
    top: 22px !important;
    height: calc(100dvh - 44px) !important;
    max-height: calc(100dvh - 44px) !important;
    min-height: 0 !important;
    overflow-y: auto !important;
  }

  .admin-stage:has(.admin-shell) .admin-main {
    position: relative !important;
    height: auto !important;
    max-height: none !important;
    min-height: calc(100dvh - 44px) !important;
    overflow: visible !important;
    padding: 16px !important;
    border-radius: 32px !important;
  }

  .admin-stage:has(.admin-shell) .admin-topbar {
    position: sticky !important;
    top: 18px !important;
    left: auto !important;
    right: auto !important;
    z-index: 200 !important;
    width: 100% !important;
    min-height: 86px !important;
    margin: 0 0 18px !important;
    border-radius: 28px !important;
    background: rgba(255, 250, 246, .97) !important;
    border: 1px solid rgba(226, 215, 207, .95) !important;
    box-shadow: 0 18px 42px rgba(44,25,18,.08) !important;
    backdrop-filter: blur(18px) !important;
    -webkit-backdrop-filter: blur(18px) !important;
  }
}

@media (min-width: 1180px) {
  .admin-grid-pro:has([data-product-form]) {
    display: grid !important;
    grid-template-columns: minmax(720px, 1fr) minmax(440px, 520px) !important;
    grid-template-areas:
      "overview overview"
      "list editor" !important;
    gap: 18px !important;
    align-items: start !important;
  }

  .admin-grid-pro:has([data-product-form]) .admin-overview-card {
    grid-area: overview !important;
  }

  .admin-grid-pro:has([data-product-form]) > .admin-card:has(.admin-product-list-pro) {
    grid-area: list !important;
    display: flex !important;
    flex-direction: column !important;
    min-height: 680px !important;
    height: calc(100dvh - 232px) !important;
    padding: 22px !important;
    overflow: hidden !important;
  }

  .admin-grid-pro:has([data-product-form]) > .admin-editor-card {
    grid-area: editor !important;
    position: sticky !important;
    top: 126px !important;
    max-height: calc(100dvh - 146px) !important;
    overflow-y: auto !important;
    padding: 22px !important;
  }

  .admin-grid-pro:has([data-product-form]) .admin-card-title-row {
    gap: 18px !important;
  }

  .admin-grid-pro:has([data-product-form]) > .admin-card:has(.admin-product-list-pro) .admin-card-title-row {
    flex: 0 0 auto !important;
    margin-bottom: 14px !important;
    padding-bottom: 14px !important;
    border-bottom: 1px solid rgba(226,215,207,.8) !important;
  }

  .admin-filter-row.admin-filter-row-3 {
    flex: 0 0 auto !important;
    display: grid !important;
    grid-template-columns: minmax(260px, 1.2fr) minmax(190px, .9fr) minmax(170px, .75fr) !important;
    gap: 10px !important;
    margin-bottom: 12px !important;
    align-items: end !important;
  }

  .admin-filter-row.admin-filter-row-3 .field {
    min-width: 0 !important;
    margin: 0 !important;
  }

  .admin-filter-row.admin-filter-row-3 input,
  .admin-filter-row.admin-filter-row-3 select {
    height: 44px !important;
    min-height: 44px !important;
    border-radius: 14px !important;
    font-size: 13px !important;
  }

  .admin-product-list-pro {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    display: grid !important;
    align-content: start !important;
    gap: 8px !important;
    padding: 0 8px 0 0 !important;
    border: 0 !important;
    background: transparent !important;
    scrollbar-width: thin;
    scrollbar-color: rgba(126,7,16,.22) transparent;
  }

  .admin-product-list-pro::-webkit-scrollbar { width: 7px; }
  .admin-product-list-pro::-webkit-scrollbar-thumb {
    border-radius: 999px;
    background: rgba(126,7,16,.22);
  }

  .admin-product-row {
    width: 100% !important;
    min-height: 92px !important;
    display: grid !important;
    grid-template-columns: 70px minmax(250px, 1fr) minmax(380px, auto) !important;
    gap: 12px !important;
    align-items: center !important;
    padding: 12px !important;
    border-radius: 20px !important;
    border: 1px solid rgba(226,215,207,.92) !important;
    background: rgba(255,255,255,.78) !important;
    box-shadow: 0 8px 22px rgba(44,25,18,.035) !important;
  }

  .admin-product-row:hover {
    transform: none !important;
    border-color: rgba(165,14,24,.20) !important;
    box-shadow: 0 12px 28px rgba(44,25,18,.055) !important;
  }

  .admin-product-row > img {
    width: 66px !important;
    height: 66px !important;
    min-width: 66px !important;
    border-radius: 16px !important;
    object-fit: cover !important;
  }

  .admin-product-row > span:not(.admin-actions) {
    min-width: 0 !important;
    display: grid !important;
    gap: 4px !important;
  }

  .admin-product-row > span:not(.admin-actions) strong {
    display: block !important;
    max-width: 100% !important;
    color: #18110e !important;
    font-size: 15px !important;
    line-height: 1.16 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  .admin-product-row > span:not(.admin-actions) small {
    color: #766a63 !important;
    font-size: 12px !important;
    line-height: 1.3 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  .admin-health-warn,
  .admin-health-ok {
    width: max-content !important;
    max-width: 100% !important;
    min-height: 24px !important;
    display: inline-flex !important;
    align-items: center !important;
    padding: 0 9px !important;
    border-radius: 999px !important;
    font-size: 11px !important;
    font-weight: 850 !important;
    line-height: 1 !important;
  }

  .admin-product-row .admin-actions.stack-actions {
    width: 100% !important;
    display: grid !important;
    grid-template-columns: 32px 32px 92px 86px 76px 92px 58px !important;
    gap: 6px !important;
    align-items: center !important;
    justify-content: end !important;
    padding: 0 !important;
    border: 0 !important;
  }

  .admin-product-row .mini-btn {
    width: 32px !important;
    min-width: 32px !important;
    height: 34px !important;
    min-height: 34px !important;
    border-radius: 11px !important;
    padding: 0 !important;
    font-size: 13px !important;
  }

  .quick-price-field {
    height: 36px !important;
    min-width: 92px !important;
    display: grid !important;
    grid-template-columns: 18px minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 0 !important;
    padding: 0 8px !important;
    border-radius: 12px !important;
    color: var(--accent-dark) !important;
    background: rgba(165,14,24,.07) !important;
    border: 1px solid rgba(165,14,24,.16) !important;
    font-size: 13px !important;
    font-weight: 900 !important;
  }

  .quick-price-field input {
    width: 100% !important;
    min-width: 0 !important;
    height: 30px !important;
    min-height: 30px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: var(--accent-dark) !important;
    font-size: 13px !important;
    font-weight: 900 !important;
  }

  .admin-product-row .secondary-btn,
  .admin-product-row .danger-btn {
    min-width: 0 !important;
    width: 100% !important;
    min-height: 36px !important;
    height: 36px !important;
    padding: 0 9px !important;
    border-radius: 12px !important;
    white-space: nowrap !important;
    font-size: 12px !important;
    line-height: 1 !important;
  }

  .admin-product-row .danger-btn {
    color: #b20b17 !important;
    background: rgba(178,11,23,.055) !important;
  }

  .admin-editor-card .product-editor-form {
    gap: 14px !important;
  }

  .admin-editor-card .admin-editor-tabs {
    position: sticky !important;
    top: -22px !important;
    z-index: 5 !important;
    margin: -8px -8px 2px !important;
    padding: 8px !important;
    border-radius: 20px !important;
    background: rgba(255,250,246,.97) !important;
    backdrop-filter: blur(12px) !important;
  }

  .admin-editor-card .admin-editor-tabs button {
    min-height: 42px !important;
    font-size: 12px !important;
  }

  .admin-editor-card .admin-form-section {
    padding: 14px !important;
    border-radius: 18px !important;
  }

  .admin-editor-card .inline-fields {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }

  .admin-editor-card .field input,
  .admin-editor-card .field select,
  .admin-editor-card .field textarea {
    border-radius: 13px !important;
  }
}

@media (min-width: 1180px) and (max-width: 1450px) {
  .admin-stage:has(.admin-shell) { --admin-sidebar-w: 244px; --admin-gap: 18px; }
  .admin-grid-pro:has([data-product-form]) {
    grid-template-columns: minmax(620px, 1fr) minmax(390px, 460px) !important;
  }
  .admin-product-row {
    grid-template-columns: 64px minmax(210px, 1fr) minmax(318px, auto) !important;
    gap: 10px !important;
  }
  .admin-product-row > img {
    width: 60px !important;
    height: 60px !important;
    min-width: 60px !important;
  }
  .admin-product-row .admin-actions.stack-actions {
    grid-template-columns: 30px 30px 80px 72px 62px 76px 48px !important;
    gap: 5px !important;
  }
  .admin-product-row .secondary-btn,
  .admin-product-row .danger-btn { font-size: 11px !important; padding: 0 6px !important; }
  .quick-price-field { min-width: 80px !important; }
}

@media (max-width: 1179px) {
  .admin-grid-pro:has([data-product-form]) {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }

  .admin-grid-pro:has([data-product-form]) > .admin-card:has(.admin-product-list-pro),
  .admin-grid-pro:has([data-product-form]) > .admin-editor-card {
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    position: static !important;
  }

  .admin-product-row {
    grid-template-columns: 68px minmax(0, 1fr) !important;
    gap: 10px !important;
  }

  .admin-product-row .admin-actions.stack-actions {
    grid-column: 1 / -1 !important;
    display: grid !important;
    grid-template-columns: 34px 34px minmax(90px, 1fr) repeat(4, minmax(72px, auto)) !important;
    gap: 7px !important;
  }
}


/* v38 product actions bugfix */
.admin-grid-pro:has([data-product-form]) > .admin-card:has(.admin-product-list-pro) {
  overflow: hidden !important;
}

.admin-product-list-pro {
  padding-right: 8px !important;
}

.admin-product-row {
  position: relative !important;
  grid-template-columns: 72px minmax(0,1fr) !important;
  align-items: start !important;
  gap: 14px !important;
  min-height: 106px !important;
  padding: 14px 228px 14px 14px !important;
}

.admin-product-row > img {
  grid-column: 1 !important;
  grid-row: 1 / span 2 !important;
  align-self: start !important;
}

.admin-product-row > span:not(.admin-actions) {
  grid-column: 2 !important;
  grid-row: 1 !important;
  min-width: 0 !important;
  padding-top: 2px !important;
}

.admin-product-row > span:not(.admin-actions) strong {
  padding-right: 0 !important;
}

.admin-product-row .admin-actions.stack-actions,
.admin-product-row .admin-actions {
  position: absolute !important;
  top: 12px !important;
  right: 12px !important;
  width: 204px !important;
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: flex-end !important;
  align-items: center !important;
  gap: 6px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

.admin-product-row .admin-actions.stack-actions > *,
.admin-product-row .admin-actions > * {
  flex: 0 0 auto !important;
}

.admin-product-row .mini-btn {
  order: 1;
}

.admin-product-row .quick-price-field {
  order: 2;
  width: 86px !important;
  min-width: 86px !important;
}

.admin-product-row .secondary-btn,
.admin-product-row .danger-btn {
  min-width: 0 !important;
  width: auto !important;
  padding: 0 10px !important;
}

.admin-product-row .secondary-btn { order: 3; }
.admin-product-row .danger-btn { order: 4; }

.admin-product-row .admin-health-warn,
.admin-product-row .admin-health-ok {
  margin-top: 6px !important;
}

@media (max-width: 1179px) {
  .admin-product-row {
    padding-right: 14px !important;
    grid-template-columns: 68px minmax(0,1fr) !important;
    min-height: 120px !important;
  }

  .admin-product-row .admin-actions.stack-actions,
  .admin-product-row .admin-actions {
    position: static !important;
    grid-column: 1 / -1 !important;
    width: 100% !important;
    margin-top: 8px !important;
    justify-content: flex-start !important;
  }
}


/* v39 product list layout hard reset */
.admin-product-list-pro {
  display: grid !important;
  align-content: start !important;
  gap: 10px !important;
}

.admin-product-row {
  position: relative !important;
  display: grid !important;
  grid-template-columns: 72px minmax(0, 1fr) 252px !important;
  align-items: start !important;
  gap: 14px !important;
  min-height: 112px !important;
  padding: 14px !important;
}

.admin-product-row > img {
  grid-column: 1 !important;
  grid-row: 1 / span 2 !important;
  align-self: start !important;
}

.admin-product-row > span:not(.admin-actions) {
  grid-column: 2 !important;
  grid-row: 1 / span 2 !important;
  min-width: 0 !important;
}

.admin-product-row > span:not(.admin-actions) strong {
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

.admin-product-row .admin-actions.stack-actions,
.admin-product-row .admin-actions {
  position: static !important;
  top: auto !important;
  right: auto !important;
  left: auto !important;
  bottom: auto !important;
  transform: none !important;
  grid-column: 3 !important;
  grid-row: 1 / span 2 !important;
  width: 252px !important;
  max-width: 252px !important;
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: flex-end !important;
  align-content: flex-start !important;
  align-items: center !important;
  gap: 6px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.admin-product-row .admin-actions.stack-actions > *,
.admin-product-row .admin-actions > * {
  flex: 0 0 auto !important;
  margin: 0 !important;
}

.admin-product-row .mini-btn {
  width: 30px !important;
  min-width: 30px !important;
  height: 34px !important;
}

.admin-product-row .quick-price-field {
  width: 86px !important;
  min-width: 86px !important;
  order: 2 !important;
}

.admin-product-row .secondary-btn,
.admin-product-row .danger-btn {
  width: auto !important;
  min-width: 82px !important;
  max-width: none !important;
  order: 3 !important;
}

.admin-product-row .danger-btn {
  min-width: 58px !important;
  order: 4 !important;
}

@media (max-width: 1360px) {
  .admin-product-row {
    grid-template-columns: 68px minmax(0, 1fr) 224px !important;
  }
  .admin-product-row .admin-actions.stack-actions,
  .admin-product-row .admin-actions {
    width: 224px !important;
    max-width: 224px !important;
  }
  .admin-product-row .secondary-btn,
  .admin-product-row .danger-btn {
    min-width: 74px !important;
    font-size: 11px !important;
  }
}

@media (max-width: 1179px) {
  .admin-product-row {
    grid-template-columns: 68px minmax(0, 1fr) !important;
    min-height: 122px !important;
  }
  .admin-product-row > span:not(.admin-actions) {
    grid-column: 2 !important;
    grid-row: 1 !important;
  }
  .admin-product-row .admin-actions.stack-actions,
  .admin-product-row .admin-actions {
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
    width: 100% !important;
    max-width: none !important;
    justify-content: flex-start !important;
    padding-top: 4px !important;
  }
}


/* v42 rollback-safe analytics-only refinement */
.admin-grid-wide:has(.admin-stat-grid) {
  align-items: start !important;
}

.admin-grid-wide:has(.admin-stat-grid) > .admin-card:first-child,
.admin-grid-wide:has(.admin-stat-grid) > .admin-card:nth-child(2) {
  min-height: auto !important;
}

.admin-grid-wide:has(.admin-stat-grid) .admin-stat-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 12px !important;
}

.admin-grid-wide:has(.admin-stat-grid) .admin-stat-grid article {
  min-height: 86px !important;
  padding: 16px !important;
  border: 1px solid rgba(226,215,207,.92) !important;
  border-radius: 18px !important;
  background: linear-gradient(180deg, rgba(255,255,255,.92), rgba(255,250,246,.76)) !important;
  box-shadow: 0 8px 22px rgba(44,25,18,.035) !important;
}

.admin-grid-wide:has(.admin-stat-grid) .admin-stat-grid strong {
  color: var(--accent-dark) !important;
  font-size: 28px !important;
  line-height: 1 !important;
}

.admin-grid-wide:has(.admin-stat-grid) .barista-analytics-list,
.admin-grid-wide:has(.admin-stat-grid) .admin-list.small-list {
  display: grid !important;
  gap: 10px !important;
  max-height: 430px !important;
  overflow: auto !important;
  padding-right: 4px !important;
}

.admin-grid-wide:has(.admin-stat-grid) .barista-analytics-row,
.admin-grid-wide:has(.admin-stat-grid) .admin-product-row,
.admin-grid-wide:has(.admin-stat-grid) .admin-log-row {
  border: 1px solid rgba(226,215,207,.92) !important;
  border-radius: 17px !important;
  background: rgba(255,255,255,.82) !important;
  box-shadow: 0 8px 20px rgba(44,25,18,.028) !important;
}

.admin-grid-wide:has(.admin-stat-grid) .barista-analytics-row {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) auto !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 14px 16px !important;
}

.admin-grid-wide:has(.admin-stat-grid) .barista-analytics-row span {
  min-width: 0 !important;
}

.admin-grid-wide:has(.admin-stat-grid) .barista-analytics-row strong,
.admin-grid-wide:has(.admin-stat-grid) .admin-product-row strong,
.admin-grid-wide:has(.admin-stat-grid) .admin-log-row strong {
  color: #17110f !important;
  font-size: 14px !important;
  line-height: 1.25 !important;
}

.admin-grid-wide:has(.admin-stat-grid) .barista-analytics-row em,
.admin-grid-wide:has(.admin-stat-grid) .barista-analytics-row b,
.admin-grid-wide:has(.admin-stat-grid) .admin-product-row small,
.admin-grid-wide:has(.admin-stat-grid) .admin-log-row small,
.admin-grid-wide:has(.admin-stat-grid) .admin-log-row em {
  color: #776a63 !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
}

.admin-grid-wide:has(.admin-stat-grid) .barista-analytics-row.is-action {
  border-color: rgba(165,14,24,.16) !important;
  background: rgba(165,14,24,.045) !important;
}

.admin-grid-wide:has(.admin-stat-grid) .barista-analytics-row.is-action strong::before {
  content: 'Öncelik';
  display: inline-flex;
  align-items: center;
  height: 22px;
  padding: 0 8px;
  margin-right: 8px;
  border-radius: 999px;
  color: #fff;
  background: var(--accent);
  font-size: 10px;
  font-weight: 800;
  vertical-align: middle;
}

.admin-grid-wide:has(.admin-stat-grid) .admin-product-row {
  grid-template-columns: 58px minmax(0,1fr) auto !important;
  min-height: 78px !important;
  padding: 10px 12px !important;
}

.admin-grid-wide:has(.admin-stat-grid) .admin-product-row img {
  width: 56px !important;
  height: 56px !important;
  min-width: 56px !important;
  border-radius: 14px !important;
}

.admin-grid-wide:has(.admin-stat-grid) .admin-product-row .admin-actions {
  justify-self: end !important;
  align-self: center !important;
}

.admin-grid-wide:has(.admin-stat-grid) .admin-log-row {
  padding: 14px !important;
  display: grid !important;
  gap: 7px !important;
}

.admin-grid-wide:has(.admin-stat-grid) .admin-log-row small {
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}

@media (max-width: 1180px) {
  .admin-grid-wide:has(.admin-stat-grid) .admin-stat-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 680px) {
  .admin-grid-wide:has(.admin-stat-grid) .admin-stat-grid {
    grid-template-columns: 1fr !important;
  }
  .admin-grid-wide:has(.admin-stat-grid) .barista-analytics-row,
  .admin-grid-wide:has(.admin-stat-grid) .admin-product-row {
    grid-template-columns: 1fr !important;
  }
  .admin-grid-wide:has(.admin-stat-grid) .admin-product-row img {
    display: none !important;
  }
}


/* M&M COFFEE logo placement */
.brand-logo-img {
  display: block;
  object-fit: contain;
}

/* Live wordmark stays separate from the generated emblem for sharp, accessible text. */
.brand-mark .brand-word {
  display: block !important;
}

@media (min-width: 768px) {
  .desktop-top-nav .desktop-brand {
    display: inline-flex !important;
    align-items: center !important;
    gap: 14px !important;
    min-width: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    text-decoration: none !important;
  }

  .desktop-top-nav .desktop-brand .brand-mark,
  .desktop-top-nav .desktop-brand .brand-mark-inline {
    width: 42px !important;
    min-width: 42px !important;
    height: 56px !important;
    display: grid !important;
    place-items: center !important;
    gap: 0 !important;
    color: var(--ink) !important;
  }

  .desktop-top-nav .desktop-brand .brand-logo-img {
    width: 42px !important;
    height: 56px !important;
    max-width: 42px !important;
    max-height: 56px !important;
    object-fit: contain !important;
    object-position: center !important;
    filter: none !important;
  }

  .desktop-top-nav .desktop-brand > span {
    display: inline-block !important;
    margin-left: 0 !important;
    color: var(--ink) !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: clamp(22px, 2.1vw, 30px) !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    letter-spacing: -.03em !important;
    white-space: nowrap !important;
  }
}

@media (min-width: 1100px) {
  .desktop-top-nav {
    min-height: 82px !important;
  }

  .desktop-top-nav .desktop-brand .brand-mark,
  .desktop-top-nav .desktop-brand .brand-mark-inline {
    width: 46px !important;
    min-width: 46px !important;
    height: 60px !important;
  }

  .desktop-top-nav .desktop-brand .brand-logo-img {
    width: 46px !important;
    height: 60px !important;
    max-width: 46px !important;
    max-height: 60px !important;
  }
}

@media (max-width: 767px) {
  /* Mobile keeps existing layout, only uses the correct uploaded logo. */
  .brand-logo-img {
    object-fit: contain !important;
  }
}


/* v44 web header logo only */
@media (min-width: 768px) {
  .desktop-top-nav .desktop-brand-logo-only,
  .desktop-top-nav .desktop-brand {
    min-width: auto !important;
    width: auto !important;
    height: 72px !important;
    padding: 0 !important;
    gap: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    background: transparent !important;
    border: 0 !important;
  }

  .desktop-top-nav .desktop-brand-logo-only > span,
  .desktop-top-nav .desktop-brand > span {
    display: none !important;
  }

  .desktop-top-nav .desktop-brand-logo-only .brand-mark,
  .desktop-top-nav .desktop-brand-logo-only .brand-mark-inline,
  .desktop-top-nav .desktop-brand .brand-mark,
  .desktop-top-nav .desktop-brand .brand-mark-inline {
    width: auto !important;
    height: 68px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 0 !important;
  }

  .desktop-top-nav .desktop-brand-logo-only .brand-logo-img,
  .desktop-top-nav .desktop-brand .brand-logo-img {
    width: 82px !important;
    height: 62px !important;
    max-width: none !important;
    object-fit: contain !important;
    object-position: left center !important;
    display: block !important;
  }

  .desktop-top-nav .desktop-brand-logo-only .brand-word,
  .desktop-top-nav .desktop-brand .brand-word {
    display: none !important;
  }
}

@media (min-width: 1100px) {
  .desktop-top-nav .desktop-brand-logo-only .brand-logo-img,
  .desktop-top-nav .desktop-brand .brand-logo-img {
    width: 96px !important;
    height: 70px !important;
  }

  .desktop-top-nav .desktop-brand-logo-only,
  .desktop-top-nav .desktop-brand {
    height: 82px !important;
  }
}

/* === v45 focused fixes: header, hero, sidebar, editable hero images === */
.desktop-top-nav .desktop-brand-logo-only,
.desktop-top-nav .desktop-brand {
  min-width: 110px !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.desktop-header-logo {
  display: block;
  width: 74px;
  height: auto;
  object-fit: contain;
}

.desktop-top-nav .desktop-brand-logo-only .brand-word,
.desktop-top-nav .desktop-brand .brand-word {
  display: none !important;
}

.hero-copy {
  gap: 0;
}

.hero-copy .brand-mark {
  width: 98px;
  gap: 6px;
}

.hero-copy .brand-logo-img {
  width: 82px !important;
  height: auto;
}

.hero-copy .brand-word {
  font-size: 17px;
  letter-spacing: .22em;
}

.hero-menu .hero-copy {
  left: 58px;
  right: auto;
  bottom: 56px;
  display: flex;
  align-items: flex-end;
  justify-content: flex-start;
  gap: 22px;
  text-align: left;
}

.hero-menu .hero-copy .brand-mark {
  width: 110px;
  justify-items: center;
  flex: 0 0 auto;
}

.hero-menu .hero-copy .brand-logo-img {
  width: 96px !important;
}

.hero-menu .hero-copy h1 {
  margin: 0 0 10px;
  font-size: clamp(42px, 4vw, 76px);
  line-height: .95;
}

.hero-menu .hero-copy p {
  max-width: 420px;
  font-size: 16px;
  line-height: 1.35;
}

.admin-sidebar {
  position: sticky;
  top: 22px;
  align-self: start;
  padding: 18px 16px 20px;
  border: 1px solid rgba(226, 214, 206, .92);
  background: linear-gradient(180deg, rgba(255,253,250,.98), rgba(249,242,236,.96));
  box-shadow: 0 22px 40px rgba(49, 29, 19, .08);
}

.admin-sidebar-brand {
  display: grid;
  justify-items: center;
  gap: 10px;
  padding: 8px 0 16px;
  margin-bottom: 14px;
  border-bottom: 1px solid rgba(220, 208, 199, .8);
}

.admin-sidebar .brand-mark {
  color: #241713;
  width: 100%;
}

.admin-sidebar .brand-logo-img {
  width: 72px !important;
  height: auto;
}

.admin-sidebar .brand-word {
  font-size: 13px;
  letter-spacing: .3em;
  color: var(--accent-dark);
}

.admin-nav {
  display: grid;
  gap: 10px;
}

.admin-nav-btn {
  position: relative;
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) 8px;
  align-items: center;
  gap: 12px;
  width: 100%;
  min-height: 54px !important;
  padding: 0 14px 0 10px !important;
  border: 1px solid transparent !important;
  border-radius: 18px !important;
  background: transparent !important;
  color: #2a1a15 !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  text-align: left !important;
  box-shadow: none !important;
}

.admin-nav-btn::before,
.admin-nav-btn::after {
  content: none !important;
}

.admin-nav-ico {
  width: 42px;
  height: 42px;
  border-radius: 14px;
  display: grid;
  place-items: center;
  background: rgba(165,14,24,.06);
  color: var(--accent-dark);
}

.admin-nav-label {
  min-width: 0;
  line-height: 1.2;
}

.admin-nav-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: transparent;
}

.admin-nav-btn:hover {
  border-color: rgba(165,14,24,.16) !important;
  background: rgba(255,255,255,.64) !important;
  transform: translateX(2px);
}

.admin-nav-btn.active {
  color: #fff !important;
  background: linear-gradient(135deg, #b10917, #7f0913) !important;
  box-shadow: 0 18px 30px rgba(165,14,24,.22) !important;
}

.admin-nav-btn.active .admin-nav-ico {
  background: rgba(255,255,255,.16);
  color: #fff;
}

.admin-nav-btn.active .admin-nav-dot {
  background: #fff;
}

.admin-sidebar-foot {
  margin-top: 18px;
  padding: 12px 14px;
  border: 1px solid rgba(223, 210, 202, .92);
  border-radius: 16px;
  background: rgba(255,255,255,.68);
  color: #7d665b;
  font-size: 12px;
  font-weight: 700;
  text-align: center;
}

.admin-image-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.admin-image-card {
  display: grid;
  gap: 10px;
  align-content: start;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: rgba(255,255,255,.72);
}

.admin-image-card h3 {
  margin: 0;
  font-size: 15px;
}

.admin-image-card img {
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  border-radius: 14px;
  border: 1px solid rgba(222,210,201,.92);
  background: #f8f2ed;
}

.admin-image-card input[type="file"] {
  width: 100%;
}

@media (max-width: 1180px) {
  .hero-menu .hero-copy {
    left: 40px;
    gap: 18px;
  }

  .hero-menu .hero-copy .brand-logo-img {
    width: 84px !important;
  }

  .admin-image-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  .desktop-header-logo {
    width: 58px;
  }

  .hero-copy .brand-logo-img {
    width: 70px !important;
  }

  .hero-menu .hero-copy {
    left: 20px;
    right: 20px;
    bottom: 64px;
    display: grid;
    justify-items: center;
    gap: 10px;
    text-align: center;
  }

  .hero-menu .hero-copy h1 {
    margin: 8px 0 4px;
    font-size: 28px;
  }

  .hero-menu .hero-copy p {
    max-width: none;
    font-size: 14px;
  }

  .admin-sidebar {
    position: static;
  }

  .admin-nav-btn {
    grid-template-columns: 38px minmax(0, 1fr) 6px;
    min-height: 50px !important;
    padding-right: 12px !important;
  }

  .admin-nav-ico {
    width: 38px;
    height: 38px;
  }
}

/* === v46 PART 1: brand/header/hero/transition polish === */
.desktop-top-nav {
  overflow: hidden !important;
}

.desktop-top-nav .desktop-brand-logo-only,
.desktop-top-nav .desktop-brand {
  min-width: 96px !important;
  width: 96px !important;
  height: 100% !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.desktop-top-nav .desktop-brand-logo-only > span,
.desktop-top-nav .desktop-brand > span,
.desktop-top-nav .desktop-brand-logo-only .brand-mark,
.desktop-top-nav .desktop-brand .brand-mark,
.desktop-top-nav .desktop-brand-logo-only .brand-word,
.desktop-top-nav .desktop-brand .brand-word {
  display: none !important;
}

.desktop-header-logo {
  display: block !important;
  width: 62px !important;
  height: auto !important;
  max-height: 62px !important;
  object-fit: contain !important;
  object-position: center !important;
  opacity: .86;
}

.desktop-top-nav .desktop-header-logo {
  transform: translateY(0) !important;
}

/* hero logo balance: desktop */
@media (min-width: 1100px) {
  .hero-menu .hero-copy {
    left: clamp(54px, 6vw, 96px) !important;
    bottom: 62px !important;
    display: flex !important;
    align-items: flex-end !important;
    justify-content: flex-start !important;
    gap: 22px !important;
    text-align: left !important;
    max-width: 620px !important;
  }

  .hero-menu .hero-copy .brand-mark {
    width: 118px !important;
    flex: 0 0 118px !important;
    justify-items: center !important;
  }

  .hero-menu .hero-copy .brand-logo-img {
    width: 104px !important;
    max-width: 104px !important;
    height: auto !important;
    filter: brightness(0) invert(1) !important;
  }

  .hero-menu .hero-copy .brand-word {
    display: block !important;
    margin-top: 4px !important;
    font-size: 14px !important;
    letter-spacing: .25em !important;
    color: rgba(255,255,255,.84) !important;
  }

  .hero-menu .hero-copy h1 {
    margin: 0 0 8px !important;
    font-size: clamp(58px, 5vw, 82px) !important;
    line-height: .92 !important;
  }

  .hero-menu .hero-copy p {
    margin: 0 !important;
    max-width: 420px !important;
    font-size: 17px !important;
    line-height: 1.35 !important;
  }
}

/* hero logo balance: tablet */
@media (min-width: 761px) and (max-width: 1099px) {
  .hero-menu .hero-copy,
  .hero-about .hero-copy {
    left: 50% !important;
    right: auto !important;
    bottom: 60px !important;
    transform: translateX(-50%) !important;
    display: grid !important;
    justify-items: center !important;
    text-align: center !important;
    gap: 8px !important;
    width: min(92%, 560px) !important;
  }

  .hero-menu .hero-copy .brand-mark,
  .hero-about .hero-copy .brand-mark {
    width: 92px !important;
  }

  .hero-menu .hero-copy .brand-logo-img,
  .hero-about .hero-copy .brand-logo-img {
    width: 78px !important;
    max-width: 78px !important;
  }

  .hero-menu .hero-copy h1,
  .hero-about .hero-copy h1 {
    margin: 6px 0 2px !important;
    font-size: 48px !important;
  }
}

/* mobile: only hero top block, navbar/products unchanged */
@media (max-width: 760px) {
  .hero-menu,
  .hero-about {
    min-height: 246px !important;
    height: 246px !important;
  }

  .hero-menu::before,
  .hero-about::before {
    background-position: center !important;
  }

  .hero-menu::after,
  .hero-about::after {
    background: linear-gradient(180deg, rgba(35,7,3,.52), rgba(35,7,3,.78)) !important;
  }

  .hero-menu .hero-copy,
  .hero-about .hero-copy {
    left: 22px !important;
    right: 22px !important;
    bottom: 72px !important;
    display: grid !important;
    justify-items: center !important;
    text-align: center !important;
    gap: 5px !important;
  }

  .hero-menu .hero-copy .brand-mark,
  .hero-about .hero-copy .brand-mark {
    width: 76px !important;
  }

  .hero-menu .hero-copy .brand-logo-img,
  .hero-about .hero-copy .brand-logo-img {
    width: 64px !important;
    max-width: 64px !important;
    height: auto !important;
  }

  .hero-menu .hero-copy .brand-word,
  .hero-about .hero-copy .brand-word {
    display: block !important;
    margin-top: 1px !important;
    font-size: 10px !important;
    letter-spacing: .25em !important;
    color: rgba(255,255,255,.82) !important;
  }

  .hero-menu .hero-copy h1,
  .hero-about .hero-copy h1 {
    margin: 5px 0 2px !important;
    font-size: 30px !important;
    line-height: .98 !important;
  }

  .hero-menu .hero-copy p,
  .hero-about .hero-copy p {
    font-size: 13px !important;
    line-height: 1.25 !important;
  }

  .hero .floating-search {
    bottom: -26px !important;
    left: 16px !important;
    right: 16px !important;
    z-index: 8 !important;
  }
}

/* about/social text fix */
.social-card > span:not(.instagram-icon) {
  display: grid !important;
  gap: 3px !important;
  min-width: 0 !important;
}

.social-name,
.social-desc {
  display: block !important;
}

.social-name {
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

.social-desc {
  line-height: 1.35 !important;
}

/* lightweight public page transition */
.route-transition {
  position: fixed;
  inset: 0;
  z-index: 999;
  display: grid;
  place-items: center;
  background: rgba(248,244,240,.86);
  backdrop-filter: blur(8px);
  opacity: 0;
  pointer-events: none;
  transition: opacity .18s ease;
}

.route-transition.is-active {
  opacity: 1;
  pointer-events: auto;
}

.route-transition-card {
  display: grid;
  justify-items: center;
  gap: 18px;
  transform: translateY(8px) scale(.98);
  opacity: .96;
  transition: transform .22s ease;
}

.route-transition.is-active .route-transition-card {
  transform: translateY(0) scale(1);
}

.route-transition-card img {
  width: 96px;
  height: auto;
  object-fit: contain;
  opacity: .9;
}

.route-transition-card span {
  position: relative;
  width: 74px;
  height: 2px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(35, 29, 25, .16);
}

.route-transition-card span::after {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 42%;
  border-radius: inherit;
  background: #2a241f;
  animation: lunqaRouteLine .62s ease-in-out infinite;
}

@keyframes lunqaRouteLine {
  0% { transform: translateX(-120%); }
  100% { transform: translateX(245%); }
}

@media (max-width: 760px) {
  .route-transition-card img { width: 78px; }
  .route-transition-card span { width: 62px; }
}

@media (prefers-reduced-motion: reduce) {
  .route-transition,
  .route-transition-card,
  .route-transition-card span::after {
    transition: none !important;
    animation: none !important;
  }
}


/* === Part 2 v47: premium admin sidebar + clean home filters === */
.admin-sidebar {
  min-height: calc(100dvh - 48px) !important;
  max-height: calc(100dvh - 48px) !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
  padding: 18px 16px !important;
  border-radius: 30px !important;
  background:
    radial-gradient(circle at 50% 0%, rgba(165,14,24,.075), transparent 34%),
    linear-gradient(180deg, rgba(255,253,250,.98), rgba(249,242,236,.96)) !important;
  border: 1px solid rgba(226,214,206,.95) !important;
  box-shadow: 0 24px 54px rgba(49,29,19,.10) !important;
  overflow: hidden !important;
}

.admin-sidebar-brand {
  flex: 0 0 auto;
  display: grid !important;
  justify-items: center !important;
  gap: 6px !important;
  padding: 8px 0 14px !important;
  margin: 0 0 14px !important;
  border-bottom: 1px solid rgba(220,208,199,.78) !important;
}

.admin-sidebar-brand .brand-mark {
  width: 94px !important;
  color: #231713 !important;
}

.admin-sidebar-brand .brand-logo-img {
  width: 76px !important;
  height: auto !important;
  object-fit: contain !important;
}

.admin-sidebar-brand .brand-word {
  display: block !important;
  color: var(--accent-dark) !important;
  font-size: 12px !important;
  line-height: 1 !important;
  letter-spacing: .28em !important;
}

.admin-nav {
  flex: 1 1 auto !important;
  min-height: 0 !important;
  overflow: auto !important;
  display: grid !important;
  align-content: start !important;
  gap: 16px !important;
  padding: 2px 2px 8px !important;
}

.admin-nav::-webkit-scrollbar { width: 4px; }
.admin-nav::-webkit-scrollbar-thumb { background: rgba(126,7,16,.2); border-radius: 999px; }

.admin-nav-group {
  display: grid;
  gap: 7px;
}

.admin-nav-group-label {
  display: block;
  padding: 0 8px 2px;
  color: #9d8174;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .11em;
  text-transform: uppercase;
}

.admin-nav-btn,
.admin-nav button.admin-nav-btn {
  position: relative !important;
  display: grid !important;
  grid-template-columns: 38px minmax(0, 1fr) 7px !important;
  align-items: center !important;
  gap: 10px !important;
  width: 100% !important;
  min-height: 48px !important;
  padding: 0 12px 0 8px !important;
  border: 1px solid transparent !important;
  border-radius: 16px !important;
  background: transparent !important;
  color: #2a1a15 !important;
  box-shadow: none !important;
  font-size: 13px !important;
  font-weight: 850 !important;
  text-align: left !important;
  transition: transform .18s ease, background .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.admin-nav-btn::before,
.admin-nav-btn::after,
.admin-nav button.admin-nav-btn::before,
.admin-nav button.admin-nav-btn::after {
  content: none !important;
  display: none !important;
}

.admin-nav-ico {
  width: 38px !important;
  height: 38px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 14px !important;
  background: rgba(165,14,24,.065) !important;
  color: var(--accent-dark) !important;
}

.admin-nav-ico svg {
  width: 17px !important;
  height: 17px !important;
}

.admin-nav-label {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.admin-nav-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: transparent;
}

.admin-nav-btn:hover {
  transform: translateX(2px) !important;
  background: rgba(255,255,255,.72) !important;
  border-color: rgba(165,14,24,.12) !important;
}

.admin-nav-btn.active {
  color: #fff !important;
  background: linear-gradient(135deg, #b50b18, #800711) !important;
  border-color: rgba(128,7,17,.36) !important;
  box-shadow: 0 16px 28px rgba(165,14,24,.22) !important;
}

.admin-nav-btn.active .admin-nav-ico {
  color: #fff !important;
  background: rgba(255,255,255,.16) !important;
}

.admin-nav-btn.active .admin-nav-dot {
  background: #fff !important;
}

.admin-sidebar-foot {
  flex: 0 0 auto;
  margin-top: 14px !important;
  padding: 12px 14px !important;
  border: 1px solid rgba(223,210,202,.95) !important;
  border-radius: 16px !important;
  background: rgba(255,255,255,.72) !important;
  color: #7d665b !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  text-align: center !important;
}

.home-filter-manager-card {
  grid-column: 1 / -1;
}

.home-filter-admin-list {
  display: grid;
  gap: 10px;
}

.home-filter-admin-row {
  display: grid;
  grid-template-columns: 54px minmax(260px, 1fr) auto;
  align-items: center;
  gap: 14px;
  min-height: 76px;
  padding: 12px 14px;
  border: 1px solid rgba(226,214,206,.95);
  border-radius: 18px;
  background: rgba(255,255,255,.76);
  box-shadow: 0 10px 24px rgba(44,25,18,.035);
}

.home-filter-order {
  width: 42px;
  height: 42px;
  border-radius: 14px;
  display: grid;
  place-items: center;
  background: rgba(165,14,24,.07);
  color: var(--accent-dark);
  font-size: 12px;
  font-weight: 900;
}

.home-filter-name {
  min-width: 0;
  display: grid;
  gap: 6px;
  font-size: 11px;
  color: #7b6257;
  font-weight: 900;
}

.home-filter-name span {
  display: block;
}

.home-filter-name input {
  width: 100% !important;
  min-width: 0 !important;
  height: 44px !important;
  padding: 0 14px !important;
  border: 1px solid rgba(220,208,199,.98) !important;
  border-radius: 14px !important;
  background: #fff !important;
  color: #221512 !important;
  font-size: 14px !important;
  font-weight: 750 !important;
}

.home-filter-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 8px;
}

.home-filter-actions .mini-btn {
  width: 36px !important;
  height: 36px !important;
  min-width: 36px !important;
  border-radius: 12px !important;
}

.home-filter-actions .secondary-btn,
.home-filter-actions .danger-btn,
.locked-filter {
  min-height: 38px !important;
  border-radius: 13px !important;
  padding: 0 14px !important;
  font-size: 12px !important;
  font-weight: 850 !important;
}

.locked-filter {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(220,208,199,.9);
  color: #8d756a;
  background: #fffaf7;
}

@media (max-width: 980px) {
  .home-filter-admin-row {
    grid-template-columns: 46px minmax(0, 1fr);
  }
  .home-filter-actions {
    grid-column: 2;
    justify-content: flex-start;
  }
}

@media (max-width: 760px) {
  .admin-sidebar {
    min-height: auto !important;
    max-height: none !important;
    position: static !important;
    overflow: visible !important;
  }
  .admin-nav {
    overflow: visible !important;
  }
  .admin-nav-group-label {
    padding-top: 6px;
  }
  .home-filter-admin-row {
    grid-template-columns: 1fr;
  }
  .home-filter-order {
    width: 38px;
    height: 38px;
  }
  .home-filter-actions {
    grid-column: auto;
  }
}

/* === Part 3 v48: operational polish / 100+ item management === */
/* Web hero layout: M&M COFFEE emblem and live wordmark */
@media (min-width: 1100px) {
  .desktop-top-nav .desktop-brand-logo-only,
  .desktop-top-nav .desktop-brand {
    width: 96px !important;
    min-width: 96px !important;
    height: 72px !important;
    overflow: hidden !important;
    display: grid !important;
    place-items: center !important;
  }
  .desktop-header-logo {
    width: 62px !important;
    height: 62px !important;
    object-fit: contain !important;
    display: block !important;
  }

  .hero-menu .hero-copy {
    left: 72px !important;
    right: 72px !important;
    bottom: 54px !important;
    display: grid !important;
    grid-template-columns: minmax(260px, auto) minmax(280px, 1fr) !important;
    grid-template-areas:
      "brand subtitle"
      "title subtitle" !important;
    align-items: end !important;
    justify-items: start !important;
    gap: 2px 54px !important;
    text-align: left !important;
    width: auto !important;
    max-width: none !important;
    transform: none !important;
  }
  .hero-menu .hero-copy .brand-mark {
    grid-area: brand !important;
    width: 122px !important;
    max-width: 122px !important;
    justify-items: center !important;
    margin: 0 !important;
  }
  .hero-menu .hero-copy .brand-logo-img {
    width: 116px !important;
    max-width: 116px !important;
    height: auto !important;
    filter: brightness(0) invert(1) !important;
  }
  .hero-menu .hero-copy .brand-word {
    display: none !important;
  }
  .hero-menu .hero-copy h1 {
    grid-area: title !important;
    margin: 8px 0 0 !important;
    font-size: clamp(54px, 5.1vw, 90px) !important;
    line-height: .9 !important;
  }
  .hero-menu .hero-copy p {
    grid-area: subtitle !important;
    align-self: center !important;
    margin: 36px 0 0 !important;
    max-width: 460px !important;
    font-size: 18px !important;
    line-height: 1.35 !important;
  }
}

/* Mobile hero only: keep navbar/product/category areas unchanged */
@media (max-width: 760px) {
  .hero-menu,
  .hero-about {
    height: 224px !important;
    min-height: 224px !important;
  }
  .hero-menu .hero-copy,
  .hero-about .hero-copy {
    left: 20px !important;
    right: 20px !important;
    bottom: 54px !important;
    display: grid !important;
    justify-items: center !important;
    gap: 6px !important;
    text-align: center !important;
    transform: none !important;
  }
  .hero-menu .hero-copy .brand-mark,
  .hero-about .hero-copy .brand-mark {
    width: 82px !important;
    max-width: 82px !important;
    justify-items: center !important;
  }
  .hero-menu .hero-copy .brand-logo-img,
  .hero-about .hero-copy .brand-logo-img {
    width: 72px !important;
    max-width: 72px !important;
    height: auto !important;
  }
  .hero-menu .hero-copy .brand-word,
  .hero-about .hero-copy .brand-word {
    display: none !important;
  }
  .hero-menu .hero-copy h1,
  .hero-about .hero-copy h1 {
    margin: 2px 0 0 !important;
    font-size: 30px !important;
    line-height: .95 !important;
  }
  .hero-menu .hero-copy p,
  .hero-about .hero-copy p {
    margin: 0 !important;
    max-width: 260px !important;
    font-size: 13px !important;
  }
}

/* Product admin: compact 100+ product control surface */
.admin-product-list-pro {
  max-height: min(900px, calc(100dvh - 330px));
  overflow: auto;
  padding: 8px 8px 8px 0;
  display: grid;
  gap: 8px;
}
.admin-product-row {
  display: grid !important;
  grid-template-columns: 58px minmax(240px, 1fr) 88px 96px 236px !important;
  align-items: center !important;
  gap: 12px !important;
  min-height: 76px !important;
  padding: 10px 12px !important;
  border-radius: 16px !important;
  background: rgba(255,255,255,.78) !important;
}
.admin-product-row > img {
  width: 58px !important;
  height: 58px !important;
  border-radius: 13px !important;
  object-fit: cover !important;
}
.admin-product-row > span:not(.admin-actions) {
  min-width: 0 !important;
}
.admin-product-row > span:not(.admin-actions) strong {
  display: block !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
.admin-product-row > span:not(.admin-actions) small {
  display: block !important;
  color: var(--muted) !important;
}
.admin-product-row .quick-price-field {
  width: 82px !important;
  justify-self: end !important;
}
.admin-product-row .admin-actions.stack-actions,
.admin-product-row .admin-actions {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: flex-end !important;
  gap: 6px !important;
  margin: 0 !important;
  padding: 0 !important;
  position: static !important;
  width: auto !important;
  max-width: none !important;
}
.admin-product-row .admin-actions .mini-btn {
  width: 30px !important;
  height: 30px !important;
}
.admin-product-row .admin-actions .secondary-btn,
.admin-product-row .admin-actions .danger-btn {
  min-height: 30px !important;
  padding: 0 9px !important;
  font-size: 11px !important;
}
@media (max-width: 1280px) {
  .admin-product-row {
    grid-template-columns: 58px minmax(0,1fr) !important;
  }
  .admin-product-row .admin-actions.stack-actions,
  .admin-product-row .admin-actions {
    grid-column: 1 / -1 !important;
    justify-content: flex-start !important;
    padding-top: 4px !important;
  }
}

/* Ingredient icon library: selected-row editor, search, paging */
.ingredient-manager-grid {
  grid-template-columns: minmax(420px,.95fr) minmax(520px,1.05fr) !important;
  align-items: start;
}
.ingredient-library-card {
  position: sticky;
  top: 18px;
  max-height: calc(100dvh - 64px);
  overflow: hidden;
  display: grid;
  grid-template-rows: auto auto minmax(0,1fr) auto;
}
.ingredient-filter-row {
  grid-template-columns: 1fr 240px !important;
  margin-bottom: 12px;
}
.ingredient-library-list {
  min-height: 0;
  overflow: auto;
  padding-right: 6px;
  display: grid;
  gap: 8px;
}
.ingredient-library-item {
  border: 1px solid var(--line);
  border-radius: 16px;
  background: rgba(255,255,255,.72);
  overflow: hidden;
}
.ingredient-library-summary {
  width: 100%;
  border: 0;
  background: transparent;
  display: grid;
  grid-template-columns: 44px minmax(0,1fr) auto;
  align-items: center;
  gap: 12px;
  padding: 10px 12px;
  color: var(--ink);
  text-align: left;
}
.ingredient-library-summary strong {
  display: block;
  font-size: 14px;
}
.ingredient-library-summary small {
  display: block;
  margin-top: 2px;
  color: var(--muted);
  font-size: 11px;
}
.ingredient-library-summary em {
  font-style: normal;
  color: var(--accent-dark);
  font-size: 12px;
  font-weight: 800;
}
.ingredient-icon-edit-panel {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 10px;
  padding: 12px;
  border-top: 1px solid var(--line);
  background: rgba(255,250,246,.8);
}
.ingredient-icon-edit-panel .mini-preview {
  width: 48px;
  height: 48px;
  align-self: end;
}
.ingredient-icon-edit-panel .small-note {
  grid-column: 1 / -1;
}
.ingredient-icon-edit-panel .ingredient-icon-actions {
  grid-column: 1 / -1;
  justify-content: flex-end;
}
.ingredient-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding-top: 12px;
}
.ingredient-pagination span {
  font-weight: 800;
  color: var(--muted);
}
@media (max-width: 1180px) {
  .ingredient-manager-grid {
    grid-template-columns: 1fr !important;
  }
  .ingredient-library-card {
    position: static;
    max-height: none;
  }
}
@media (max-width: 760px) {
  .ingredient-filter-row,
  .ingredient-icon-edit-panel {
    grid-template-columns: 1fr !important;
  }
}
.admin-product-row > .admin-actions.stack-actions,
.admin-product-row > .admin-actions { grid-column: 3 / -1 !important; }
@media (max-width: 1280px) {
  .admin-product-row > .admin-actions.stack-actions,
  .admin-product-row > .admin-actions { grid-column: 1 / -1 !important; }
}

/* === v49 Admin Product Command Center === */
.product-command-shell {
  display: grid;
  gap: 18px;
  position: relative;
}

.product-command-top {
  padding: 18px 20px !important;
}

.product-command-title {
  margin-bottom: 14px !important;
}

.product-kpi-strip {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
}

.product-kpi-strip article {
  min-height: 74px;
  padding: 14px 15px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: rgba(255,255,255,.72);
}

.product-kpi-strip strong {
  display: block;
  color: var(--accent);
  font-size: 25px;
  line-height: 1;
  margin-bottom: 8px;
}

.product-kpi-strip span {
  display: block;
  color: #5e4a42;
  font-size: 12px;
  font-weight: 800;
}

.product-table-card {
  padding: 18px 20px 20px !important;
  overflow: visible !important;
}

.product-toolbar {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
  margin-bottom: 16px;
}

.product-toolbar h2 {
  margin: 0 0 4px;
}

.product-toolbar p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
}

.product-toolbar-count {
  min-width: max-content;
  padding: 9px 12px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: #fff;
  color: var(--accent-dark);
  font-size: 12px;
  font-weight: 900;
}

.product-filter-row {
  grid-template-columns: minmax(260px, 1.1fr) minmax(190px, .65fr) minmax(190px, .65fr) !important;
  align-items: end;
  margin-bottom: 12px !important;
}

.product-bulk-bar {
  display: none;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  margin: 0 0 12px;
  padding: 10px 12px;
  border: 1px solid rgba(165,14,24,.16);
  border-radius: 16px;
  background: rgba(165,14,24,.055);
}

.product-bulk-bar.active {
  display: flex;
}

.product-bulk-bar strong {
  margin-right: 6px;
  color: var(--accent-dark);
  font-size: 13px;
}

.ghost-mini-btn {
  height: 36px;
  padding: 0 12px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
  color: #5b4a42;
  font-size: 12px;
  font-weight: 800;
}

.product-table-head {
  display: grid;
  grid-template-columns: minmax(270px, 1.45fr) minmax(120px, .55fr) 100px 86px 78px 150px;
  gap: 12px;
  align-items: center;
  padding: 10px 12px;
  border-bottom: 1px solid var(--line);
  color: #8b756b;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .045em;
  text-transform: uppercase;
}

.product-table-head label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.product-table-list {
  display: grid;
  gap: 8px;
  max-height: min(62vh, 690px);
  overflow: auto;
  padding: 10px 6px 4px 0;
  scrollbar-width: thin;
  scrollbar-color: rgba(165,14,24,.32) transparent;
}

.product-table-row {
  position: relative;
  display: grid;
  grid-template-columns: minmax(270px, 1.45fr) minmax(120px, .55fr) 100px 86px 78px 150px;
  gap: 12px;
  align-items: center;
  min-height: 74px;
  padding: 10px 12px;
  border: 1px solid rgba(224, 211, 203, .95);
  border-radius: 18px;
  background: rgba(255,255,255,.82);
  box-shadow: 0 8px 18px rgba(46,27,18,.035);
}

.product-table-row:hover {
  border-color: rgba(165,14,24,.22);
  box-shadow: 0 14px 28px rgba(46,27,18,.06);
}

.product-table-row.is-passive {
  opacity: .68;
  background: rgba(255,255,255,.55);
}

.product-table-main {
  display: grid;
  grid-template-columns: 18px 58px minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  min-width: 0;
}

.product-table-main input[type="checkbox"],
.product-table-head input[type="checkbox"] {
  width: 16px;
  height: 16px;
  accent-color: var(--accent);
}

.product-table-main img {
  width: 58px;
  height: 58px;
  border-radius: 14px;
  object-fit: cover;
  border: 1px solid var(--line);
}

.product-table-main strong {
  display: block;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: #17100e;
  font-size: 14px;
  line-height: 1.2;
}

.product-table-main small {
  display: block;
  margin-top: 4px;
  color: #7d6c63;
  font-size: 12px;
  line-height: 1.25;
}

.product-cell-muted {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: #4f4039;
  font-size: 12px;
  font-weight: 800;
}

.product-price-cell {
  width: 92px !important;
  min-width: 92px !important;
  height: 38px !important;
  margin: 0 !important;
}

.status-pill {
  display: inline-flex;
  width: max-content;
  align-items: center;
  justify-content: center;
  min-width: 64px;
  height: 34px;
  padding: 0 11px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 900;
}

.status-pill.active {
  color: #23633c;
  background: rgba(35,99,60,.09);
  border: 1px solid rgba(35,99,60,.18);
}

.status-pill.passive {
  color: #8b5c00;
  background: rgba(139,92,0,.08);
  border: 1px solid rgba(139,92,0,.18);
}

.product-missing-cell b,
.product-missing-cell em {
  display: inline-flex;
  height: 32px;
  align-items: center;
  padding: 0 10px;
  border-radius: 999px;
  font-size: 11px;
  font-style: normal;
  font-weight: 900;
}

.product-missing-cell b {
  color: var(--accent-dark);
  background: rgba(165,14,24,.09);
}

.product-missing-cell em {
  color: #2f6b40;
  background: rgba(47,107,64,.08);
}

.product-actions-compact {
  position: relative;
  display: inline-flex;
  justify-content: flex-end;
  align-items: center;
  gap: 7px;
  min-width: 0;
}

.product-actions-compact .secondary-btn {
  min-width: 88px !important;
  height: 38px !important;
  padding: 0 10px !important;
  font-size: 12px !important;
}

.product-more-actions {
  position: relative;
}

.product-more-actions summary {
  list-style: none;
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border: 1px solid var(--line);
  border-radius: 13px;
  background: #fff;
  color: var(--accent-dark);
  font-weight: 900;
  cursor: pointer;
}

.product-more-actions summary::-webkit-details-marker {
  display: none;
}

.product-more-actions[open] summary {
  border-color: rgba(165,14,24,.25);
  box-shadow: 0 10px 22px rgba(165,14,24,.1);
}

.product-more-actions div {
  position: absolute;
  right: 0;
  top: calc(100% + 8px);
  z-index: 20;
  min-width: 170px;
  padding: 8px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: #fffdfa;
  box-shadow: 0 20px 50px rgba(38,22,14,.16);
  display: grid;
  gap: 4px;
}

.product-more-actions button {
  width: 100%;
  min-height: 34px;
  border: 0;
  border-radius: 10px;
  padding: 0 10px;
  background: transparent;
  color: #2b1c17;
  font-size: 12px;
  font-weight: 800;
  text-align: left;
}

.product-more-actions button:hover {
  background: rgba(165,14,24,.065);
}

.product-more-actions button.danger {
  color: var(--accent-dark);
}

.product-editor-backdrop {
  position: fixed;
  inset: 0;
  z-index: 79;
  background: rgba(31, 18, 12, .18);
  opacity: 0;
  pointer-events: none;
  transition: opacity .18s ease;
}

.product-editor-backdrop.open {
  opacity: 1;
  pointer-events: auto;
}

.product-editor-drawer {
  position: fixed;
  top: 18px;
  right: 18px;
  bottom: 18px;
  z-index: 80;
  width: min(560px, calc(100vw - 36px));
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 26px;
  background: rgba(255, 252, 249, .98);
  box-shadow: 0 30px 90px rgba(31,18,12,.24);
  overflow: auto;
  transform: translateX(calc(100% + 40px));
  transition: transform .24s ease;
}

.product-editor-drawer.open {
  transform: translateX(0);
}

.product-drawer-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 14px;
  padding-bottom: 14px;
  border-bottom: 1px solid var(--line);
}

.product-drawer-head h2 {
  margin: 0 0 4px;
  font-size: 22px;
}

.product-drawer-head p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
}

.drawer-close-btn {
  width: 38px;
  height: 38px;
  border: 1px solid var(--line);
  border-radius: 13px;
  background: #fff;
  color: var(--accent-dark);
  font-size: 22px;
  line-height: 1;
  font-weight: 700;
}

.product-editor-drawer .product-editor-form {
  display: grid;
  gap: 14px;
}

.product-editor-drawer .admin-editor-tabs {
  position: sticky;
  top: -18px;
  z-index: 2;
  padding-top: 4px;
  background: rgba(255,252,249,.98);
}

@media (max-width: 1320px) {
  .product-table-head,
  .product-table-row {
    grid-template-columns: minmax(250px, 1.35fr) 110px 94px 76px 68px 140px;
    gap: 8px;
  }
}

@media (max-width: 1080px) {
  .product-kpi-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .product-filter-row {
    grid-template-columns: 1fr !important;
  }
  .product-table-head {
    display: none;
  }
  .product-table-row {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px;
    padding: 12px;
  }
  .product-table-main {
    grid-column: 1 / -1;
  }
  .product-cell-muted,
  .product-price-cell,
  .status-pill,
  .product-missing-cell {
    grid-column: auto;
  }
  .product-actions-compact {
    grid-column: 1 / -1;
    justify-content: flex-start;
  }
}

@media (max-width: 640px) {
  .product-kpi-strip {
    grid-template-columns: 1fr;
  }
  .product-table-main {
    grid-template-columns: 18px 52px minmax(0, 1fr);
  }
  .product-table-main img {
    width: 52px;
    height: 52px;
  }
  .product-actions-compact .secondary-btn {
    min-width: 78px !important;
  }
}

/* --- v50 targeted polish overrides --- */
.hero.hero-menu {
  min-height: 270px;
}
.hero-copy-menu-layout {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
}
.hero-menu-head {
  display: flex;
  align-items: flex-end;
  gap: 26px;
}
.hero-menu-title-block {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 8px;
  padding-bottom: 8px;
}
.hero-menu-title-block h1,
.hero-menu-title-block p {
  margin: 0;
}
.hero-menu-title-block p {
  font-size: 1.12rem;
  font-weight: 700;
  max-width: 320px;
}
.hero-menu .hero-copy .brand-mark {
  justify-items: center;
  min-width: 118px;
}
.hero-menu .hero-copy .brand-logo-img {
  width: 94px;
  height: auto;
}
.hero-menu .hero-copy .brand-word {
  display: block !important;
  margin-top: 6px;
  letter-spacing: .22em;
  font-size: .88rem;
}
.hero-menu .hero-copy h1 {
  font-size: clamp(3rem, 6vw, 5.2rem);
  line-height: .92;
}
.hero-menu .hero-copy p {
  text-align: left;
}

.desktop-top-nav .desktop-brand-logo-only {
  padding: 10px 14px;
}
.desktop-top-nav .desktop-brand-logo-only .desktop-header-logo,
.desktop-top-nav .desktop-header-logo {
  width: 54px;
  height: auto;
  object-fit: contain;
}

.admin-nav-btn {
  grid-template-columns: 48px 1fr 12px;
  align-items: center;
}
.admin-nav-ico {
  width: 40px;
  height: 40px;
  border-radius: 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(122, 20, 20, 0.05);
  color: #7a1414;
  flex-shrink: 0;
}
.admin-nav-ico svg {
  width: 18px;
  height: 18px;
}
.admin-nav-btn.active {
  background: linear-gradient(135deg, #b10f18, #870d14);
  color: #fff;
  box-shadow: 0 14px 34px rgba(144, 18, 24, .22);
}
.admin-nav-btn.active .admin-nav-ico {
  background: rgba(255,255,255,.16);
  color: #fff;
}
.admin-nav-btn.active .admin-nav-label {
  color: #fff;
}
.admin-nav-btn.active .admin-nav-dot {
  background: #fff;
  opacity: 1;
}
.admin-sidebar-foot {
  margin-top: 18px;
  text-align: center;
  font-weight: 700;
  letter-spacing: .02em;
}

.ingredient-library-list {
  display: grid;
  gap: 12px;
}
.ingredient-library-item {
  border: 1px solid rgba(88, 39, 28, .12);
  border-radius: 20px;
  overflow: hidden;
  background: #fff;
}
.ingredient-library-summary {
  width: 100%;
  border: 0;
  background: transparent;
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  padding: 14px 16px;
  text-align: left;
}
.ingredient-library-summary > span:nth-child(2) {
  min-width: 0;
}
.ingredient-library-summary strong,
.ingredient-library-summary small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.ingredient-library-summary em {
  font-style: normal;
  font-weight: 700;
  color: #8e1418;
}
.ingredient-icon-preview {
  width: 50px;
  height: 50px;
  border-radius: 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(88, 39, 28, .12);
  background: #fff8f7;
}
.ingredient-icon-preview img,
.ingredient-icon-edit-panel .mini-preview {
  object-fit: contain;
}
.ingredient-icon-edit-panel {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px 14px;
  padding: 0 16px 16px;
}
.ingredient-icon-edit-panel .field,
.ingredient-icon-edit-panel .admin-note,
.ingredient-icon-edit-panel .ingredient-icon-actions {
  min-width: 0;
}
.ingredient-icon-edit-panel .mini-preview {
  width: 54px;
  height: 54px;
  border-radius: 14px;
  border: 1px solid rgba(88,39,28,.12);
  background: #fff;
  padding: 8px;
}
.ingredient-icon-actions {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  grid-column: 1 / -1;
}

@media (max-width: 1024px) {
  .hero-menu-head {
    align-items: center;
    gap: 20px;
  }
  .hero-menu-title-block h1 {
    font-size: clamp(2.4rem, 8vw, 4rem);
  }
}

@media (max-width: 767px) {
  .hero.hero-menu {
    min-height: 300px;
  }
  .hero-copy-menu-layout,
  .hero-menu-head {
    width: 100%;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    text-align: center;
  }
  .hero-menu-title-block {
    align-items: center;
    padding-bottom: 0;
  }
  .hero-menu .hero-copy h1,
  .hero-menu .hero-copy p,
  .hero-menu-title-block p {
    text-align: center;
    max-width: 100%;
  }
  .hero-menu .hero-copy .brand-logo-img {
    width: 86px;
  }
  .hero-menu .hero-copy .brand-word {
    font-size: .82rem;
  }
  .hero-menu .floating-search {
    left: 50%;
    transform: translateX(-50%);
    width: min(92%, 420px);
  }
  .ingredient-library-summary {
    grid-template-columns: 50px minmax(0, 1fr);
  }
  .ingredient-library-summary em {
    grid-column: 2;
    justify-self: start;
    margin-top: 2px;
  }
  .ingredient-icon-edit-panel {
    grid-template-columns: 1fr;
  }
}


/* --- v51 Admin menu + QR management implementation --- */
.admin-stage {
  background:
    radial-gradient(circle at 10% 4%, rgba(177, 15, 24, .08), transparent 32%),
    linear-gradient(135deg, #fbf6f1, #f7efea 58%, #f4e8e3);
}

.admin-shell {
  max-width: 1580px;
  align-items: flex-start;
  gap: 24px;
}

.admin-sidebar {
  width: 260px;
  min-width: 260px;
  position: sticky;
  top: 18px;
  max-height: calc(100vh - 36px);
  display: flex;
  flex-direction: column;
  padding: 26px 18px 18px;
  overflow: hidden;
  border-radius: 28px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.92), rgba(255,248,245,.82)),
    radial-gradient(circle at 50% 0, rgba(139, 19, 25, .08), transparent 35%);
  border: 1px solid rgba(88, 39, 28, .13);
  box-shadow: 0 28px 80px rgba(59, 30, 21, .12);
}

.admin-sidebar-brand {
  padding-bottom: 20px;
  border-bottom: 1px solid rgba(88,39,28,.12);
  margin-bottom: 16px;
}

.admin-sidebar .brand-mark {
  transform: none !important;
  justify-items: center;
}

.admin-sidebar .brand-logo-img {
  width: 88px !important;
  height: auto !important;
}

.admin-nav {
  flex: 1;
  overflow-y: auto;
  overflow-x: hidden;
  padding-right: 4px;
  margin-right: -4px;
  scrollbar-width: thin;
  scrollbar-color: rgba(177,15,24,.35) transparent;
}

.admin-nav::-webkit-scrollbar { width: 5px; }
.admin-nav::-webkit-scrollbar-thumb { background: rgba(177,15,24,.32); border-radius: 999px; }

.admin-nav-group {
  display: grid;
  gap: 7px;
  margin-bottom: 18px;
}

.admin-nav-group-label {
  margin: 4px 7px 3px;
  font-size: .68rem;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: rgba(77, 44, 34, .58);
  font-weight: 900;
}

.admin-nav-btn {
  width: 100%;
  border: 0;
  padding: 9px 10px;
  min-height: 50px;
  border-radius: 17px;
  display: grid;
  grid-template-columns: 42px 1fr 10px;
  gap: 11px;
  align-items: center;
  background: transparent;
  color: #231713;
  cursor: pointer;
  transition: transform .18s ease, background .18s ease, box-shadow .18s ease, color .18s ease;
}

.admin-nav-btn:hover {
  background: rgba(255,255,255,.62);
  transform: translateX(2px);
}

.admin-nav-ico {
  width: 38px;
  height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 15px;
  color: #8d1119;
  background: #fae9e6;
  border: 1px solid rgba(141,17,25,.08);
}

.admin-nav-ico svg {
  width: 18px;
  height: 18px;
  stroke-width: 2;
}

.admin-nav-label {
  text-align: left;
  font-size: .91rem;
  font-weight: 850;
  white-space: nowrap;
  color: inherit;
}

.admin-nav-dot {
  width: 6px;
  height: 6px;
  border-radius: 999px;
  opacity: 0;
  background: currentColor;
}

.admin-nav-btn.active {
  background: linear-gradient(135deg, #bd101c, #8b0f16);
  color: #fff;
  box-shadow: 0 18px 34px rgba(146, 17, 25, .25);
}

.admin-nav-btn.active .admin-nav-ico {
  color: #9b1119;
  background: #fff;
  border-color: rgba(255,255,255,.7);
}

.admin-nav-btn.active .admin-nav-label,
.admin-nav-btn.active svg {
  color: inherit;
}

.admin-nav-btn.active .admin-nav-dot {
  opacity: 1;
  background: #fff;
}

.admin-sidebar-foot {
  margin-top: 14px;
  width: 100%;
  border: 1px solid rgba(141,17,25,.18);
  background: rgba(255,255,255,.72);
  color: #8b1017;
  min-height: 44px;
  border-radius: 16px;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  font-weight: 850;
  font-size: .83rem;
  cursor: pointer;
  box-shadow: 0 8px 22px rgba(59, 30, 21, .08);
}

.admin-sidebar-foot + .admin-sidebar-foot { display: none !important; }

.admin-topbar-premium {
  position: sticky;
  top: 18px;
  z-index: 20;
  align-items: center;
  gap: 16px;
  padding: 18px 22px;
  border-radius: 24px;
  backdrop-filter: blur(16px);
  background: rgba(255,255,255,.86);
  border: 1px solid rgba(88, 39, 28, .14);
  box-shadow: 0 18px 45px rgba(59, 30, 21, .08);
}

.admin-breadcrumb {
  display: inline-flex;
  margin-bottom: 4px;
  font-size: .72rem;
  font-weight: 900;
  color: #a4111a;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.admin-top-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-left: auto;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.admin-top-actions .secondary-btn {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  white-space: nowrap;
}

/* QR Kod Yönetimi */
.admin-page-adminqr {
  display: grid;
  gap: 18px;
}

.admin-qr-hero {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 18px;
}

.admin-qr-hero-copy {
  display: flex;
  align-items: center;
  gap: 16px;
}

.admin-qr-icon {
  width: 58px;
  height: 58px;
  border-radius: 20px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #a30f18;
  background: #fae8e4;
  border: 1px solid rgba(163,15,24,.12);
}

.admin-qr-hero h2 {
  font-family: var(--serif, Georgia, serif);
  font-size: clamp(2rem, 3vw, 3.2rem);
  margin: 0 0 6px;
  color: #251713;
}

.admin-qr-hero p {
  margin: 0;
  color: rgba(37,23,19,.64);
  font-weight: 600;
}

.admin-qr-hero-actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.admin-qr-hero-actions button,
.admin-qr-hero-actions .secondary-btn,
.admin-qr-hero-actions .primary-btn,
.qr-actions-grid a,
.qr-actions-grid button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}

.qr-stability-card {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.qr-stability-card article {
  min-height: 92px;
  border: 1px solid rgba(88,39,28,.1);
  background: linear-gradient(180deg, #fff, #fff9f7);
  border-radius: 20px;
  padding: 16px;
  display: grid;
  grid-template-columns: 44px 1fr;
  gap: 4px 12px;
  align-items: center;
}

.qr-stability-card article span {
  grid-row: span 2;
  width: 42px;
  height: 42px;
  border-radius: 15px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #a20f18;
  background: #fae8e5;
}

.qr-stability-card strong {
  font-weight: 900;
  color: #251713;
}

.qr-stability-card small {
  color: rgba(37,23,19,.58);
  line-height: 1.45;
}

.admin-qr-grid {
  display: grid;
  grid-template-columns: minmax(320px, .9fr) minmax(420px, 1.25fr) minmax(280px, .8fr);
  gap: 18px;
  align-items: stretch;
}

.qr-preview-card,
.qr-control-card,
.qr-mobile-preview {
  min-width: 0;
}

.qr-preview-frame {
  position: relative;
  width: min(430px, 100%);
  aspect-ratio: 1;
  margin: 20px auto 12px;
  border-radius: 30px;
  background: #fff;
  border: 1px dashed rgba(88,39,28,.24);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 28px;
  overflow: hidden;
}

.qr-preview-frame img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  image-rendering: pixelated;
}

.qr-style-soft img {
  border-radius: 18px;
}

.qr-style-frame {
  box-shadow: inset 0 0 0 14px #fff, inset 0 0 0 17px rgba(145,17,25,.14);
}

.qr-center-brand {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 86px;
  height: 86px;
  transform: translate(-50%, -50%);
  border-radius: 22px;
  background: rgba(255,255,255,.95);
  display: grid;
  place-items: center;
  padding: 8px;
  box-shadow: 0 8px 26px rgba(0,0,0,.12);
}

.qr-center-brand img {
  width: 46px;
  height: 46px;
  object-fit: contain;
  image-rendering: auto;
}

.qr-center-brand b {
  font-size: .62rem;
  letter-spacing: .18em;
  color: #a30f18;
  line-height: 1;
}

.qr-lock-note {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0 auto;
  padding: 8px 12px;
  border-radius: 999px;
  background: #fbf1ea;
  color: #4c2b22;
  font-weight: 750;
}

.qr-link-field {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 10px;
}

.qr-link-field input {
  font-weight: 700;
}

.qr-option-block {
  margin-top: 18px;
  padding-top: 16px;
  border-top: 1px solid rgba(88,39,28,.1);
}

.qr-option-block h3 {
  margin: 0 0 10px;
  font-size: 1rem;
}

.qr-actions-grid,
.qr-size-options,
.qr-style-options {
  display: grid;
  gap: 10px;
}

.qr-actions-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.qr-size-options {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.qr-style-options {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.qr-size-options button,
.qr-style-options button {
  border: 1px solid rgba(88,39,28,.14);
  background: #fff;
  border-radius: 16px;
  min-height: 58px;
  padding: 10px;
  cursor: pointer;
  font-weight: 850;
  color: #251713;
}

.qr-style-options button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
}

.qr-size-options button small {
  display: block;
  margin-top: 3px;
  color: rgba(37,23,19,.52);
  font-size: .72rem;
}

.qr-size-options button.active,
.qr-style-options button.active {
  border-color: rgba(163,15,24,.55);
  background: #fff2f0;
  color: #9b1119;
  box-shadow: 0 10px 25px rgba(163,15,24,.08);
}

.qr-phone {
  width: min(245px, 100%);
  margin: 14px auto 10px;
  border-radius: 34px;
  padding: 18px 16px;
  background: #fff;
  border: 9px solid #1d1715;
  box-shadow: 0 22px 45px rgba(0,0,0,.12);
  display: grid;
  gap: 10px;
  text-align: center;
}

.qr-phone-top {
  width: 76px;
  height: 9px;
  border-radius: 999px;
  background: #1d1715;
  margin: -8px auto 6px;
}

.qr-phone > img {
  width: 52px;
  height: auto;
  margin: 0 auto;
}

.qr-phone small {
  font-weight: 900;
  letter-spacing: .2em;
  color: #7a1414;
}

.qr-phone-product {
  display: grid;
  gap: 6px;
  text-align: left;
}

.qr-phone-product img {
  width: 100%;
  aspect-ratio: 1.22;
  object-fit: cover;
  border-radius: 15px;
}

.qr-phone-product strong {
  font-size: .9rem;
}

.qr-phone-product b {
  color: #a30f18;
}

.qr-phone button {
  border: 0;
  border-radius: 12px;
  padding: 11px;
  background: #b20f1a;
  color: #fff;
  font-weight: 900;
}

.qr-preview-note {
  text-align: center;
  color: rgba(37,23,19,.6);
  font-weight: 650;
}

.admin-qr-bottom-grid {
  display: grid;
  grid-template-columns: 1.25fr .75fr;
  gap: 18px;
}

.qr-security-list ul {
  list-style: none;
  padding: 0;
  margin: 14px 0 0;
  display: grid;
  gap: 10px;
}

.qr-security-list li {
  display: grid;
  grid-template-columns: 42px minmax(0, .6fr) 1fr;
  gap: 12px;
  align-items: center;
  padding: 12px;
  border: 1px solid rgba(88,39,28,.1);
  border-radius: 17px;
  background: #fff;
}

.qr-security-list li > span {
  width: 38px;
  height: 38px;
  border-radius: 14px;
  display: grid;
  place-items: center;
  color: #168544;
  background: #edf9f1;
}

.qr-security-list strong {
  font-weight: 900;
}

.qr-security-list small {
  color: rgba(37,23,19,.58);
}

.qr-status-card {
  display: grid;
  gap: 14px;
}

.qr-status-ok {
  min-height: 148px;
  border-radius: 22px;
  background: linear-gradient(135deg, #edf9f1, #f7fff9);
  border: 1px solid rgba(41,133,75,.2);
  display: grid;
  place-items: center;
  text-align: center;
  color: #148447;
  padding: 20px;
}

.qr-status-ok strong {
  display: block;
  color: #148447;
  font-size: 1.15rem;
}

.qr-status-ok small {
  color: rgba(20,132,71,.82);
}

.qr-mini-stats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
}

.qr-mini-stats article {
  border: 1px solid rgba(88,39,28,.1);
  border-radius: 16px;
  background: #fff;
  padding: 14px;
  text-align: center;
}

.qr-mini-stats b {
  display: block;
  font-size: 1.3rem;
  color: #9b1119;
}

.qr-mini-stats span {
  color: rgba(37,23,19,.58);
  font-weight: 750;
  font-size: .82rem;
}

@media (max-width: 1180px) {
  .admin-shell {
    grid-template-columns: 1fr;
  }
  .admin-sidebar {
    position: relative;
    top: auto;
    width: 100%;
    min-width: 0;
    max-height: none;
  }
  .admin-nav {
    max-height: 360px;
  }
  .admin-qr-grid,
  .admin-qr-bottom-grid {
    grid-template-columns: 1fr;
  }
  .qr-stability-card {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 760px) {
  .admin-topbar-premium,
  .admin-qr-hero {
    position: relative;
    top: auto;
    flex-direction: column;
    align-items: flex-start;
  }
  .admin-top-actions,
  .admin-qr-hero-actions {
    width: 100%;
    justify-content: flex-start;
  }
  .qr-stability-card,
  .qr-actions-grid,
  .qr-size-options,
  .qr-style-options,
  .qr-security-list li,
  .qr-mini-stats {
    grid-template-columns: 1fr;
  }
  .qr-link-field {
    grid-template-columns: 1fr;
  }
}

/* === v53 product drawer hotfix ===
   Yeni Ürün paneli admin topbar'ın altında kalıyordu. Drawer artık en üst katmanda,
   başlığı görünür ve scroll'u kendi içinde kontrollü çalışır. */
.product-editor-backdrop {
  z-index: 11990 !important;
  background: rgba(34, 21, 15, .34) !important;
  backdrop-filter: blur(2px);
  -webkit-backdrop-filter: blur(2px);
}
.product-editor-drawer {
  z-index: 12000 !important;
  top: 22px !important;
  right: 22px !important;
  bottom: 22px !important;
  width: min(540px, calc(100vw - 44px)) !important;
  max-height: calc(100dvh - 44px) !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  isolation: isolate;
}
.product-editor-drawer.open {
  transform: translateX(0) !important;
}
.product-drawer-head {
  position: sticky;
  top: -18px;
  z-index: 4;
  margin: -18px -18px 14px;
  padding: 18px 18px 14px;
  border-radius: 26px 26px 0 0;
  background: rgba(255, 252, 249, .985);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}
.product-editor-drawer .admin-editor-tabs {
  top: 0 !important;
  margin-bottom: 14px !important;
  border: 1px solid rgba(226, 215, 207, .86);
  border-radius: 18px;
}
.product-editor-drawer .form-section {
  background: rgba(255,255,255,.78);
}
.product-editor-drawer .product-editor-form {
  padding-bottom: 10px;
}
body:has(.product-editor-drawer.open) .admin-topbar {
  pointer-events: none;
}
@media (max-width: 720px) {
  .product-editor-drawer {
    inset: 10px !important;
    width: auto !important;
    max-height: calc(100dvh - 20px) !important;
    border-radius: 24px !important;
  }
  .product-drawer-head {
    border-radius: 24px 24px 0 0;
  }
}

/* --- v54 menu hero layout fix --- */
.hero.hero-menu {
  min-height: 330px;
}

.hero-menu .hero-copy {
  left: 34px;
  right: 34px;
  bottom: 52px;
  justify-items: start;
  text-align: left;
}

.hero-copy-menu-layout {
  display: flex;
  align-items: flex-end;
  justify-content: flex-start;
  width: auto;
}

.hero-menu-head {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 26px;
  max-width: min(58vw, 920px);
}

.hero-menu-brand {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  flex: 0 0 auto;
}

.hero-menu-logo {
  display: block;
  width: 110px;
  height: auto;
  object-fit: contain;
}

.hero-menu-brand-word {
  font-family: Georgia, "Times New Roman", serif;
  font-size: 0.98rem;
  line-height: 1;
  letter-spacing: 0.34em;
  color: rgba(255,255,255,.98);
}

.hero-menu-divider {
  width: 1px;
  height: 150px;
  background: rgba(255,255,255,.76);
  box-shadow: 0 0 0 1px rgba(255,255,255,.06);
  flex: 0 0 auto;
}

.hero-menu-title-block {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 12px;
  min-width: 0;
}

.hero-menu .hero-copy h1,
.hero-menu-title-block h1 {
  margin: 0;
  font-size: clamp(4.1rem, 6vw, 6.3rem);
  line-height: 0.9;
}

.hero-menu .hero-copy p,
.hero-menu-title-block p {
  margin: 0;
  font-size: clamp(1.1rem, 1.7vw, 1.45rem);
  line-height: 1.15;
  font-weight: 600;
  max-width: 22ch;
  text-align: left;
}

.hero-menu .floating-search {
  right: 40px;
}

@media (max-width: 1200px) {
  .hero-menu-head {
    max-width: min(64vw, 760px);
    gap: 22px;
  }
  .hero-menu-logo {
    width: 96px;
  }
  .hero-menu-divider {
    height: 130px;
  }
  .hero-menu .hero-copy h1,
  .hero-menu-title-block h1 {
    font-size: clamp(3.4rem, 5.8vw, 5rem);
  }
}

@media (max-width: 767px) {
  .hero.hero-menu {
    min-height: 300px;
  }

  .hero-menu .hero-copy {
    left: 20px;
    right: 20px;
    bottom: 82px;
    justify-items: center;
    text-align: center;
  }

  .hero-copy-menu-layout {
    width: 100%;
    justify-content: center;
  }

  .hero-menu-head {
    width: 100%;
    max-width: 100%;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
  }

  .hero-menu-brand {
    gap: 6px;
  }

  .hero-menu-logo {
    width: 84px;
  }

  .hero-menu-brand-word {
    font-size: 0.86rem;
    letter-spacing: 0.28em;
  }

  .hero-menu-divider {
    display: none;
  }

  .hero-menu-title-block {
    align-items: center;
    gap: 8px;
  }

  .hero-menu .hero-copy h1,
  .hero-menu-title-block h1 {
    font-size: clamp(2.8rem, 12vw, 3.8rem);
    text-align: center;
  }

  .hero-menu .hero-copy p,
  .hero-menu-title-block p {
    max-width: 260px;
    text-align: center;
    font-size: 1.05rem;
  }

  .hero-menu .floating-search {
    left: 50%;
    right: auto;
    transform: translateX(-50%);
    width: min(92%, 420px);
  }
}

/* --- v55 persistence + menu visual fixes --- */
.hero-menu-logo {
  filter: brightness(0) invert(1) drop-shadow(0 8px 18px rgba(0,0,0,.22));
}

.hero-menu .hero-copy {
  bottom: 58px;
}

.hero-menu .floating-search {
  left: auto !important;
  right: clamp(24px, 4vw, 64px) !important;
  bottom: -28px !important;
  width: min(34vw, 520px) !important;
  transform: none !important;
}

.hero-menu .search-box {
  width: 100%;
}

.story-logo {
  width: 58px;
  height: 58px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #f2e8df;
  border: 1px solid rgba(88,39,28,.10);
  overflow: hidden;
}

.story-logo img {
  width: 36px;
  height: 36px;
  object-fit: contain;
  display: block;
}

@media (min-width: 768px) {
  .hero-menu .hero-menu-head {
    align-items: center;
  }
  .hero-menu .hero-menu-logo {
    width: clamp(104px, 8vw, 150px);
  }
  .hero-menu .hero-menu-brand-word {
    color: #fff;
  }
  .hero-menu .hero-menu-divider {
    height: clamp(128px, 10vw, 178px);
  }
}

@media (max-width: 767px) {
  .hero.hero-menu {
    min-height: 300px;
  }
  .hero-menu .hero-copy {
    left: 18px !important;
    right: 18px !important;
    bottom: 74px !important;
    width: auto !important;
    justify-items: center !important;
    text-align: center !important;
  }
  .hero-menu .hero-menu-head {
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    gap: 8px !important;
  }
  .hero-menu .hero-menu-logo {
    width: 78px !important;
  }
  .hero-menu .hero-menu-brand-word {
    color: #fff !important;
    letter-spacing: .26em !important;
  }
  .hero-menu .hero-menu-title-block {
    align-items: center !important;
    text-align: center !important;
  }
  .hero-menu .hero-menu-title-block h1 {
    text-align: center !important;
  }
  .hero-menu .hero-menu-title-block p {
    text-align: center !important;
    max-width: 260px !important;
  }
  .hero-menu .floating-search {
    left: 50% !important;
    right: auto !important;
    bottom: -28px !important;
    width: min(92%, 420px) !important;
    transform: translateX(-50%) !important;
  }
}


/* --- v56 menu hero search + mobile centering hotfix --- */
@media (min-width: 768px) {
  .hero.hero-menu {
    min-height: 330px !important;
  }

  .hero-menu .hero-copy {
    left: clamp(34px, 3.8vw, 74px) !important;
    right: 42% !important;
    bottom: 54px !important;
    width: auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    text-align: left !important;
  }

  .hero-menu .hero-copy-menu-layout {
    width: 100% !important;
    justify-content: flex-start !important;
  }

  .hero-menu .hero-menu-head {
    width: auto !important;
    max-width: 900px !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: clamp(18px, 2vw, 34px) !important;
    margin: 0 !important;
  }

  .hero-menu .hero-menu-brand {
    align-items: center !important;
    justify-content: center !important;
    gap: 9px !important;
  }

  .hero-menu .hero-menu-logo {
    width: clamp(96px, 7vw, 132px) !important;
  }

  .hero-menu .hero-menu-brand-word {
    display: block !important;
    color: #fff !important;
    font-size: clamp(.74rem, .85vw, .96rem) !important;
    line-height: 1 !important;
    letter-spacing: .32em !important;
    padding-left: .32em !important;
  }

  .hero-menu .hero-menu-divider {
    display: block !important;
    width: 1px !important;
    height: clamp(112px, 8.5vw, 158px) !important;
    background: rgba(255,255,255,.78) !important;
    flex: 0 0 auto !important;
  }

  .hero-menu .hero-menu-title-block {
    align-items: flex-start !important;
    text-align: left !important;
    gap: clamp(10px, 1vw, 16px) !important;
    padding: 0 !important;
  }

  .hero-menu .hero-menu-title-block h1 {
    margin: 0 !important;
    font-size: clamp(4.2rem, 5.5vw, 6.15rem) !important;
    line-height: .9 !important;
    text-align: left !important;
    color: #fff !important;
    text-shadow: 0 10px 28px rgba(0,0,0,.28) !important;
  }

  .hero-menu .hero-menu-title-block p {
    margin: 0 !important;
    max-width: none !important;
    text-align: left !important;
    color: #fff !important;
    font-size: clamp(1rem, 1.2vw, 1.28rem) !important;
    line-height: 1.15 !important;
    font-weight: 700 !important;
    text-shadow: 0 8px 18px rgba(0,0,0,.28) !important;
  }

  .hero-menu .floating-search {
    top: 50% !important;
    bottom: auto !important;
    left: auto !important;
    right: clamp(28px, 4vw, 72px) !important;
    width: min(33vw, 520px) !important;
    min-width: 330px !important;
    transform: translateY(-50%) !important;
    z-index: 5 !important;
  }
}

@media (max-width: 767px) {
  .hero.hero-menu {
    min-height: 318px !important;
  }

  .hero-menu .hero-copy {
    left: 0 !important;
    right: 0 !important;
    bottom: 88px !important;
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    justify-items: center !important;
    text-align: center !important;
    padding: 0 20px !important;
  }

  .hero-menu .hero-copy-menu-layout {
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
  }

  .hero-menu .hero-menu-head {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    text-align: center !important;
  }

  .hero-menu .hero-menu-brand {
    width: 100% !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 5px !important;
  }

  .hero-menu .hero-menu-logo {
    width: 82px !important;
    margin: 0 auto !important;
  }

  .hero-menu .hero-menu-brand-word {
    display: block !important;
    color: #fff !important;
    font-size: .78rem !important;
    letter-spacing: .26em !important;
    line-height: 1 !important;
    padding-left: .26em !important;
    text-align: center !important;
  }

  .hero-menu .hero-menu-divider {
    display: none !important;
  }

  .hero-menu .hero-menu-title-block {
    width: 100% !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 7px !important;
    padding: 0 !important;
    text-align: center !important;
  }

  .hero-menu .hero-menu-title-block h1 {
    width: 100% !important;
    margin: 0 !important;
    color: #fff !important;
    text-align: center !important;
    font-size: clamp(2.75rem, 13vw, 3.7rem) !important;
    line-height: .95 !important;
    text-shadow: 0 9px 22px rgba(0,0,0,.32) !important;
  }

  .hero-menu .hero-menu-title-block p {
    width: 100% !important;
    margin: 0 !important;
    max-width: 280px !important;
    color: #fff !important;
    text-align: center !important;
    font-size: .98rem !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
    text-shadow: 0 8px 18px rgba(0,0,0,.34) !important;
  }

  .hero-menu .floating-search {
    left: 50% !important;
    right: auto !important;
    bottom: -26px !important;
    top: auto !important;
    width: min(91%, 420px) !important;
    min-width: 0 !important;
    transform: translateX(-50%) !important;
    z-index: 6 !important;
  }
}

/* --- v57 targeted user fixes: card media, related rail, mobile browser chrome, admin icons --- */
:root {
  --browser-bottom-offset: 0px;
}

.bottom-nav {
  bottom: calc(var(--browser-bottom-offset, 0px) + env(safe-area-inset-bottom, 0px)) !important;
  transition: bottom .22s ease, transform .22s ease;
}

.featured-card > button {
  display: grid !important;
  grid-template-rows: auto 1fr;
  height: 100%;
  padding: 0 !important;
  overflow: hidden;
}

.featured-media {
  width: 100% !important;
  margin: 0 !important;
  border-radius: 0 !important;
  background: #efe5dc center / cover no-repeat;
}

.featured-media img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  transform: scale(1.035);
  transform-origin: center center;
}

.featured-body {
  min-width: 0;
}

.special-card {
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
}

.special-card button {
  min-height: 0 !important;
  height: auto !important;
  overflow: hidden;
  align-items: center !important;
  border: 1px solid rgba(226, 215, 207, .92) !important;
  border-radius: 18px !important;
  background: rgba(255, 255, 255, .72) !important;
  box-shadow: 0 12px 30px rgba(44, 25, 18, .05) !important;
}

.special-card img {
  display: block !important;
  flex: 0 0 auto;
  object-fit: cover !important;
  object-position: center center !important;
}

.special-card span {
  min-width: 0;
  align-self: center;
}

.special-card strong,
.related-card span {
  color: #1f1715 !important;
}

.detail-accordion {
  min-width: 0;
}

.detail-accordion .related-strip,
.related-strip[data-related-strip] {
  display: grid !important;
  grid-auto-flow: column !important;
  grid-template-columns: none !important;
  grid-auto-columns: clamp(112px, 28vw, 138px) !important;
  max-width: 100% !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  gap: 12px !important;
  padding: 0 2px 14px !important;
  scroll-snap-type: x mandatory !important;
  overscroll-behavior-x: contain;
  scrollbar-width: none;
}

.detail-accordion .related-strip::-webkit-scrollbar,
.related-strip[data-related-strip]::-webkit-scrollbar {
  display: none;
}

.detail-accordion .related-card,
.related-card {
  width: 100% !important;
  min-width: 0 !important;
  scroll-snap-align: start;
  text-decoration: none !important;
}

.detail-accordion .related-card img,
.related-card img {
  display: block !important;
  width: 100% !important;
  height: 92px !important;
  border-radius: 12px !important;
  object-fit: cover !important;
  object-position: center center !important;
}

@media (min-width: 768px) {
  .detail-accordion .related-strip,
  .related-strip[data-related-strip] {
    grid-auto-columns: minmax(124px, 152px) !important;
  }

  .home-social-row {
    grid-template-columns: 58px max-content minmax(0, 1fr) 30px !important;
  }

  .home-social-row .social-copy {
    justify-self: start !important;
    align-self: center !important;
    margin-left: clamp(18px, 2.8vw, 54px);
    max-width: 390px;
    text-align: left;
  }
}

.ingredient-library-card {
  max-height: none !important;
  overflow: visible !important;
  grid-template-rows: auto !important;
}

.ingredient-library-list {
  max-height: none !important;
  min-height: 0 !important;
  overflow: visible !important;
  gap: 12px !important;
  padding-right: 0 !important;
}

.ingredient-library-item {
  min-height: 74px;
  overflow: visible !important;
}

.ingredient-library-summary {
  min-height: 72px !important;
  padding: 12px 16px !important;
  align-items: center !important;
}

.ingredient-icon-preview {
  width: 50px !important;
  height: 50px !important;
  min-width: 50px !important;
  overflow: hidden;
}

.ingredient-icon-preview svg {
  width: 28px !important;
  height: 28px !important;
}

.ingredient-icon-preview img {
  display: block !important;
  width: 34px !important;
  height: 34px !important;
  object-fit: contain !important;
}

.ingredient-icon-edit-panel {
  padding-top: 14px !important;
}

/* v60 mobile special rail: contained, swipeable cards */
@media (max-width: 767px) {
  .special-row {
    display: flex !important;
    width: 100% !important;
    max-width: 100% !important;
    gap: 12px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    padding: 0 0 12px !important;
    grid-template-columns: none !important;
    grid-auto-columns: auto !important;
    grid-auto-flow: unset !important;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-x: contain;
    touch-action: pan-x pan-y;
    scroll-snap-type: x proximity;
    scrollbar-width: none;
  }

  .special-row::-webkit-scrollbar {
    display: none;
  }

  .special-card {
    flex: 0 0 clamp(238px, 72vw, 282px) !important;
    width: clamp(238px, 72vw, 282px) !important;
    min-width: clamp(238px, 72vw, 282px) !important;
    max-width: clamp(238px, 72vw, 282px) !important;
    height: auto !important;
    scroll-snap-align: start;
  }

  .special-card button {
    width: 100% !important;
    height: 122px !important;
    min-height: 122px !important;
    max-height: 122px !important;
    grid-template-columns: 82px minmax(0, 1fr) 34px !important;
    gap: 10px !important;
    padding: 10px !important;
    align-items: center !important;
  }

  .special-card img {
    width: 82px !important;
    height: 82px !important;
    border-radius: 14px !important;
  }

  .special-card span {
    overflow: hidden !important;
    align-self: center !important;
  }

  .special-card strong,
  .special-card em {
    display: -webkit-box !important;
    -webkit-box-orient: vertical;
    overflow: hidden !important;
  }

  .special-card strong {
    -webkit-line-clamp: 2;
    font-size: 16px !important;
    line-height: 1.08 !important;
  }

  .special-card em {
    -webkit-line-clamp: 2;
    margin-top: 5px !important;
    font-size: 11px !important;
    line-height: 1.25 !important;
  }

  .special-card .price {
    margin-top: 6px !important;
    font-size: 16px !important;
  }
}

/* v61 admin ready-state: 100+ product paging and pairing search */
.product-pagination {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  flex-wrap: wrap;
  padding-top: 14px;
  border-top: 1px solid rgba(224, 211, 203, .72);
}

.product-pagination label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #6f5d55;
  font-size: 12px;
  font-weight: 900;
}

.product-pagination select {
  height: 38px;
  min-width: 74px;
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 0 10px;
  background: #fffdfa;
  color: var(--ink);
  font-weight: 800;
}

.product-pagination span {
  min-width: 64px;
  text-align: center;
  color: var(--accent-dark);
  font-size: 13px;
  font-weight: 900;
}

.product-pagination button:disabled {
  opacity: .45;
  cursor: not-allowed;
}

.pairing-search-field {
  margin: 8px 0 10px !important;
}

.admin-pairing-box .admin-checkbox-list.compact {
  max-height: min(46vh, 430px);
  overflow: auto;
  padding-right: 6px;
}

.admin-check-row[hidden] {
  display: none !important;
}

@media (max-width: 760px) {
  .product-pagination {
    justify-content: stretch;
  }

  .product-pagination label,
  .product-pagination button,
  .product-pagination select {
    width: 100%;
  }

  .product-pagination span {
    width: 100%;
  }
}


/* v104 toplu düzeltme: bordo ton, kategori akışı, içerik grid, Barista fiyat gizleme */
:root {
  --lunqa-deep-bordeaux: #4a0c21;
}

.hero-menu {
  background: var(--lunqa-deep-bordeaux) !important;
}
.hero-menu::before {
  background-image:
    linear-gradient(180deg, rgba(74, 12, 33, .72), rgba(74, 12, 33, .82)),
    var(--hero-img, url("../images/brand/mm-coffee-hero.webp")) !important;
  filter: saturate(.88) contrast(1.03) !important;
}
.hero-about::before {
  background-image:
    linear-gradient(180deg, rgba(35, 7, 3, .44), rgba(35, 7, 3, .72)),
    var(--hero-img, url("../images/brand/mm-coffee-hero.webp")) !important;
}
.hero-menu::after {
  background: linear-gradient(180deg, transparent, rgba(74, 12, 33, .72)) !important;
}
.logo-tab .brand-mark,
.brand-mark-round {
  background: var(--lunqa-deep-bordeaux) !important;
  box-shadow: 0 16px 34px rgba(74, 12, 33, .28) !important;
}

.page-panel-menu .category-reference-shell,
.category-reference-shell {
  margin: -4px 0 22px !important;
  padding: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  overflow: hidden !important;
}
.page-panel-menu .category-reference-strip,
.category-reference-strip {
  width: 100% !important;
  min-height: 112px !important;
  display: flex !important;
  grid-template-columns: none !important;
  align-items: flex-start !important;
  justify-items: initial !important;
  gap: 18px !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  padding: 14px 18px 13px !important;
  border-radius: 0 !important;
  border-top: 1px solid rgba(226, 215, 207, .92) !important;
  border-bottom: 1px solid rgba(226, 215, 207, .92) !important;
  border-left: 0 !important;
  border-right: 0 !important;
  background: #fffdfa !important;
  box-shadow: none !important;
  scrollbar-width: none !important;
  overscroll-behavior-x: contain;
}
.page-panel-menu .category-reference-strip::-webkit-scrollbar,
.category-reference-strip::-webkit-scrollbar { display: none !important; }
.page-panel-menu .category-reference-item,
.category-reference-item {
  flex: 0 0 78px !important;
  width: 78px !important;
  min-width: 78px !important;
  min-height: 86px !important;
  padding: 0 !important;
  border-radius: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  gap: 7px !important;
}
.page-panel-menu .category-reference-icon,
.page-panel-menu .category-reference-item.active .category-reference-icon,
.category-reference-icon,
.category-reference-item.active .category-reference-icon {
  width: 58px !important;
  height: 58px !important;
  border-radius: 999px !important;
  overflow: hidden !important;
  display: grid !important;
  place-items: center !important;
  background: #f4ebe6 !important;
  color: #211916 !important;
  border: 1px solid rgba(226, 215, 207, .95) !important;
  box-shadow: none !important;
  transition: width .18s ease, height .18s ease, border-color .18s ease, border-width .18s ease;
}
.page-panel-menu .category-reference-item:not(.active) .category-reference-icon,
.category-reference-item:not(.active) .category-reference-icon {
  width: 54px !important;
  height: 54px !important;
}
.page-panel-menu .category-reference-item.active .category-reference-icon,
.category-reference-item.active .category-reference-icon {
  width: 64px !important;
  height: 64px !important;
  border: 4px solid #b40819 !important;
  background: #fff7f3 !important;
}
.category-reference-icon .icon-media,
.category-reference-icon .icon-media img {
  width: 100% !important;
  height: 100% !important;
}
.category-reference-icon .icon-media img {
  display: block !important;
  object-fit: cover !important;
  border-radius: 999px !important;
}
.category-reference-item.is-all .category-reference-icon .icon-media img,
.category-reference-icon .icon-media-all img {
  object-fit: contain !important;
  padding: 7px !important;
  background: #f4ebe6 !important;
}
.category-reference-item.active .category-reference-label,
.category-reference-label {
  color: #211916 !important;
  font-size: 11px !important;
  line-height: 1.08 !important;
  font-weight: 900 !important;
}
.category-reference-item.active .category-reference-label {
  color: #b40819 !important;
}

.home-menu-categories .home-category-strip,
.home-category-strip {
  display: flex !important;
  grid-template-columns: none !important;
  align-items: flex-start !important;
  gap: 18px !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  padding: 12px 18px 13px !important;
  border-radius: 0 !important;
  border-top: 1px solid rgba(226, 215, 207, .92) !important;
  border-bottom: 1px solid rgba(226, 215, 207, .92) !important;
  border-left: 0 !important;
  border-right: 0 !important;
  background: #fffdfa !important;
  box-shadow: none !important;
  scrollbar-width: none !important;
}
.home-category-strip::-webkit-scrollbar { display: none !important; }
.home-category-pill {
  flex: 0 0 76px !important;
  width: 76px !important;
  min-width: 76px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.home-category-icon {
  width: 58px !important;
  height: 58px !important;
  border-radius: 999px !important;
  overflow: hidden !important;
  border: 1px solid rgba(226, 215, 207, .95) !important;
  background: #f4ebe6 !important;
}
.home-category-icon .icon-media,
.home-category-icon .icon-media img {
  width: 100% !important;
  height: 100% !important;
}
.home-category-icon .icon-media img {
  display: block !important;
  object-fit: cover !important;
  border-radius: 999px !important;
}
.home-category-pill span:last-child,
.home-category-pill strong {
  font-size: 10.5px !important;
  line-height: 1.08 !important;
  font-weight: 900 !important;
}

.detail-accordion .ingredient-row,
.ingredient-row {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 16px 8px !important;
  border: 0 !important;
  padding: 2px 0 8px !important;
}
.detail-accordion .ingredient,
.ingredient {
  border-left: 0 !important;
  min-height: 72px !important;
  padding: 0 4px !important;
}
.detail-accordion .ingredient:first-child,
.ingredient:first-child { border-left: 0 !important; }
.detail-accordion .ingredient svg,
.ingredient svg {
  width: 30px !important;
  height: 30px !important;
}

.detail-accordion .related-card,
.related-card {
  padding: 0 !important;
  overflow: hidden !important;
  border-radius: 10px !important;
  background: #fffdfb !important;
}
.detail-accordion .related-card img,
.related-card img {
  display: block !important;
  width: 100% !important;
  height: 92px !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  object-fit: cover !important;
  object-position: center center !important;
}
.related-card span {
  display: block !important;
  padding: 8px 7px 9px !important;
}

.assistant-product-card {
  grid-template-columns: 56px minmax(0, 1fr) 18px !important;
}
.assistant-product-card::after {
  content: "›";
  color: var(--accent-dark);
  font-size: 24px;
  font-weight: 900;
  line-height: 1;
}
.assistant-product-price {
  display: none !important;
}


/* v129 - FINAL mobile bottom nav fix
   Sadece mobil alt navbar alanını düzeltir. */
:root {
  --browser-bottom-offset: 0px !important;
  --lunqa-nav-bottom-offset: 0px !important;
  --nav-h: 92px !important;
}

@media (max-width: 768px) {
  html,
  body {
    min-height: 100% !important;
    height: auto !important;
  }

  html body .bottom-nav {
    box-sizing: border-box !important;
    position: fixed !important;
    left: 50% !important;
    right: auto !important;
    bottom: 0 !important;
    top: auto !important;
    transform: translateX(-50%) !important;
    width: min(100vw, 430px) !important;
    max-width: 430px !important;
    height: 94px !important;
    min-height: 94px !important;
    max-height: 94px !important;
    padding: 10px 10px 0 !important;
    margin: 0 !important;
    display: grid !important;
    grid-template-columns: 1fr 1fr 1.28fr 1fr 1fr !important;
    align-items: start !important;
    justify-items: center !important;
    border-radius: 30px 30px 0 0 !important;
    border-bottom: 0 !important;
    overflow: visible !important;
    contain: none !important;
    background: rgba(255, 252, 249, .98) !important;
  }

  html body .bottom-nav .nav-btn {
    box-sizing: border-box !important;
    width: 100% !important;
    height: 70px !important;
    min-height: 70px !important;
    max-height: 70px !important;
    padding: 0 !important;
    margin: 0 !important;
    display: grid !important;
    place-items: center !important;
    align-content: center !important;
    justify-items: center !important;
    gap: 5px !important;
    overflow: visible !important;
  }

  html body .bottom-nav .nav-btn svg {
    width: 25px !important;
    height: 25px !important;
  }

  html body .bottom-nav .nav-btn span {
    display: block !important;
    max-width: 72px !important;
    line-height: 1.05 !important;
    text-align: center !important;
  }

  html body .bottom-nav .logo-tab {
    position: relative !important;
    top: -38px !important;
    width: 92px !important;
    height: 92px !important;
    min-width: 92px !important;
    min-height: 92px !important;
    max-width: 92px !important;
    max-height: 92px !important;
    padding: 0 !important;
    margin: 0 auto !important;
    display: grid !important;
    place-items: center !important;
    justify-self: center !important;
    align-self: start !important;
    border-radius: 999px !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
  }

  html body .bottom-nav .logo-tab .brand-mark,
  html body .bottom-nav .logo-tab .brand-mark-round {
    box-sizing: border-box !important;
    width: 82px !important;
    height: 82px !important;
    min-width: 82px !important;
    min-height: 82px !important;
    max-width: 82px !important;
    max-height: 82px !important;
    aspect-ratio: 1 / 1 !important;
    border-radius: 50% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 2px !important;
    padding: 7px 0 6px !important;
    margin: 0 !important;
    overflow: hidden !important;
    background: #4a0c21 !important;
    box-shadow: 0 16px 34px rgba(74, 12, 33, .28) !important;
  }

  html body .bottom-nav .logo-tab .brand-logo-img {
    display: block !important;
    width: 46px !important;
    height: 49px !important;
    max-width: 46px !important;
    max-height: 49px !important;
    object-fit: contain !important;
    object-position: center center !important;
    margin: 0 auto !important;
    transform: translateY(-1px) !important;
  }

  html body .bottom-nav .logo-tab .brand-word {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #fff !important;
    text-align: center !important;
    font-size: 7px !important;
    line-height: 1 !important;
    letter-spacing: .18em !important;
  }

  html body .phone-shell,
  html body .route-shell,
  html body [data-screen-root] {
    padding-bottom: 104px !important;
  }

  html body .menu-list,
  html body .page-panel,
  html body .page-panel-menu {
    padding-bottom: 112px !important;
  }
}


/* v131 - Admin Barista / Analiz ekranı layout düzeltmesi
   Sadece admin içindeki Barista ve Analiz sayfalarını toparlar. */
.admin-owner-page {
  display: grid !important;
  gap: 18px !important;
  width: 100% !important;
  max-width: 100% !important;
}

.owner-hero-card {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
  padding: 20px 22px !important;
}

.owner-hero-copy {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  min-width: 0 !important;
}

.owner-hero-copy h2 {
  margin: 0 0 4px !important;
  font-size: 22px !important;
  line-height: 1.12 !important;
}

.owner-hero-copy p {
  margin: 0 !important;
  color: rgba(38, 27, 22, .62) !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
}

.owner-hero-icon,
.owner-status-pill {
  flex: 0 0 auto !important;
}

.owner-hero-icon {
  width: 46px !important;
  height: 46px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 16px !important;
  color: #9f0d1a !important;
  background: rgba(159, 13, 26, .08) !important;
}

.owner-status-pill {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 34px !important;
  padding: 0 14px !important;
  border-radius: 999px !important;
  color: #167445 !important;
  background: rgba(22, 116, 69, .10) !important;
  font-size: 12px !important;
  font-weight: 900 !important;
}

.owner-summary-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 14px !important;
}

.owner-summary-card {
  min-height: 92px !important;
  padding: 18px !important;
  display: grid !important;
  align-content: center !important;
  gap: 8px !important;
}

.owner-summary-card strong {
  display: block !important;
  max-width: 100% !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  color: #4a0c21 !important;
  font-size: 24px !important;
  line-height: 1.05 !important;
}

.owner-summary-card span {
  color: rgba(38, 27, 22, .64) !important;
  font-size: 12px !important;
  font-weight: 800 !important;
}

.owner-section-card {
  min-width: 0 !important;
  overflow: hidden !important;
}

.owner-section-card .admin-card-title-row {
  align-items: flex-start !important;
}

.owner-section-card .admin-card-title-row h2 {
  margin: 0 0 4px !important;
  font-size: 18px !important;
}

.owner-section-card .admin-card-title-row p,
.owner-mini-head p {
  margin: 0 !important;
  color: rgba(38, 27, 22, .60) !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
}

.owner-product-picker {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important;
  gap: 10px !important;
  max-height: 360px !important;
  overflow: auto !important;
  padding: 2px 4px 8px !important;
  margin-bottom: 18px !important;
}

.owner-featured-product-toolbar {
  display: flex !important;
  align-items: end !important;
  justify-content: space-between !important;
  gap: 14px !important;
  margin-bottom: 12px !important;
}

.owner-featured-product-toolbar .field {
  flex: 1 1 360px !important;
  max-width: 520px !important;
}

.owner-featured-product-toolbar > span {
  flex: 0 0 auto !important;
  padding: 10px 12px !important;
  color: rgba(38, 27, 22, .68) !important;
  font-size: 12px !important;
  white-space: nowrap !important;
}

.owner-featured-product-toolbar > span strong {
  color: #4a0c21 !important;
  font-size: 15px !important;
}

.owner-featured-product-groups {
  display: grid !important;
  gap: 10px !important;
  margin-bottom: 18px !important;
}

.owner-featured-product-group {
  border: 1px solid rgba(226, 215, 207, .88) !important;
  border-radius: 12px !important;
  background: rgba(255, 251, 247, .62) !important;
  overflow: hidden !important;
}

.owner-featured-product-group > summary {
  min-height: 62px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  padding: 8px 12px !important;
  cursor: pointer !important;
  list-style: none !important;
}

.owner-featured-product-group > summary::-webkit-details-marker {
  display: none !important;
}

.owner-featured-product-group > summary > b {
  color: #4a0c21 !important;
  font-size: 11px !important;
  white-space: nowrap !important;
}

.owner-featured-category-title {
  min-width: 0 !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
}

.owner-featured-category-title .admin-category-choice-media {
  width: 44px !important;
  height: 44px !important;
  flex: 0 0 44px !important;
}

.owner-featured-category-title > span:last-child {
  min-width: 0 !important;
  display: grid !important;
  gap: 3px !important;
}

.owner-featured-category-title strong,
.owner-featured-category-title em {
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.owner-featured-category-title strong {
  color: #1f1714 !important;
  font-size: 13px !important;
}

.owner-featured-category-title em {
  color: rgba(38, 27, 22, .58) !important;
  font-size: 11px !important;
  font-style: normal !important;
}

.owner-featured-product-group[open] > summary {
  border-bottom: 1px solid rgba(226, 215, 207, .72) !important;
  background: rgba(159, 13, 26, .035) !important;
}

.owner-featured-product-group .owner-product-picker {
  max-height: 320px !important;
  margin: 0 !important;
  padding: 12px !important;
}

.owner-product-choice,
.owner-product-row,
.owner-question-row,
.owner-action-row,
.owner-category-row,
.owner-rule-row,
.owner-log-row {
  box-sizing: border-box !important;
  min-width: 0 !important;
  border: 1px solid rgba(226, 215, 207, .88) !important;
  border-radius: 16px !important;
  background: rgba(255, 255, 255, .72) !important;
}

.owner-product-choice {
  position: relative !important;
  display: grid !important;
  grid-template-columns: 52px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 12px !important;
  min-height: 70px !important;
  padding: 9px 12px !important;
  cursor: pointer !important;
}

.owner-product-choice.selected {
  border-color: rgba(159, 13, 26, .36) !important;
  background: rgba(159, 13, 26, .055) !important;
}

.owner-product-choice input {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

.owner-product-choice img,
.owner-product-row img {
  display: block !important;
  width: 52px !important;
  height: 52px !important;
  min-width: 52px !important;
  min-height: 52px !important;
  max-width: 52px !important;
  max-height: 52px !important;
  object-fit: cover !important;
  object-position: center !important;
  border-radius: 14px !important;
  background: #f2ebe6 !important;
}

.owner-product-choice span,
.owner-product-row span,
.owner-question-row span,
.owner-action-row span,
.owner-category-row span,
.owner-rule-row span {
  min-width: 0 !important;
  display: grid !important;
  gap: 3px !important;
}

.owner-product-choice strong,
.owner-product-row strong,
.owner-question-row strong,
.owner-action-row strong,
.owner-category-row strong,
.owner-rule-row strong {
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  color: #1f1714 !important;
  font-size: 13px !important;
  line-height: 1.2 !important;
}

.owner-product-choice em,
.owner-product-row em,
.owner-question-row em,
.owner-action-row em,
.owner-category-row em,
.owner-rule-row em,
.owner-log-row em,
.owner-rule-row b {
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  color: rgba(38, 27, 22, .58) !important;
  font-size: 11px !important;
  font-style: normal !important;
  line-height: 1.3 !important;
}

.owner-two-col,
.owner-grid-two {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 16px !important;
  align-items: start !important;
}

.owner-soft-panel {
  min-width: 0 !important;
  padding: 16px !important;
  border: 1px solid rgba(226, 215, 207, .88) !important;
  border-radius: 18px !important;
  background: rgba(255, 251, 247, .72) !important;
}

.owner-mini-head h3 {
  margin: 0 0 4px !important;
  font-size: 15px !important;
}

.owner-prompt-list {
  display: grid !important;
  gap: 8px !important;
  margin-top: 12px !important;
}

.owner-prompt-list label {
  display: grid !important;
  grid-template-columns: 34px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 8px !important;
}

.owner-prompt-list label span {
  color: #9f0d1a !important;
  font-size: 11px !important;
  font-weight: 900 !important;
}

.owner-prompt-list input,
.owner-test-inline input,
.owner-rule-form input,
.owner-rule-form textarea,
.owner-rule-form select,
.owner-advanced-box textarea {
  box-sizing: border-box !important;
  width: 100% !important;
  min-width: 0 !important;
}

.owner-test-inline {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 10px !important;
  margin-top: 12px !important;
}

.owner-test-result {
  margin-top: 12px !important;
  padding: 12px !important;
  border: 1px solid rgba(159, 13, 26, .18) !important;
  border-radius: 15px !important;
  background: rgba(159, 13, 26, .045) !important;
}

.owner-test-result strong,
.owner-test-result p {
  display: block !important;
  margin: 0 !important;
}

.owner-test-result p {
  margin-top: 6px !important;
  color: rgba(38, 27, 22, .70) !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
}

.owner-test-result div {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 6px !important;
  margin-top: 10px !important;
}

.owner-test-result div span {
  display: inline-flex !important;
  padding: 5px 8px !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.88) !important;
  color: #4a0c21 !important;
  font-size: 11px !important;
  font-weight: 800 !important;
}

.owner-rule-form {
  display: grid !important;
  gap: 12px !important;
}

.owner-rule-actions {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 8px !important;
  flex-wrap: wrap !important;
}

.owner-rule-test-result {
  display: block !important;
  margin-top: 6px !important;
  padding: 8px 10px !important;
  border-left: 3px solid #6d0b2d !important;
  background: rgba(109, 11, 45, .05) !important;
  color: #352824 !important;
  font-size: 11px !important;
  line-height: 1.45 !important;
  white-space: normal !important;
}

.owner-rule-list,
.owner-question-list,
.owner-log-list,
.owner-action-list,
.owner-product-list,
.owner-category-list {
  display: grid !important;
  gap: 10px !important;
}

.owner-rule-row,
.owner-question-row,
.owner-product-row,
.owner-category-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 12px !important;
}

.owner-product-row {
  grid-template-columns: 52px minmax(0, 1fr) auto !important;
}

.owner-action-row {
  display: grid !important;
  grid-template-columns: 34px minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 12px !important;
}

.owner-action-row > b {
  width: 34px !important;
  height: 34px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 12px !important;
  color: #9f0d1a !important;
  background: rgba(159, 13, 26, .08) !important;
  font-size: 13px !important;
}

.owner-log-row {
  padding: 12px !important;
  display: grid !important;
  gap: 6px !important;
}

.owner-log-row p {
  margin: 0 !important;
  color: rgba(38, 27, 22, .70) !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
}

.owner-advanced-box {
  margin-top: 16px !important;
  border: 1px solid rgba(226, 215, 207, .88) !important;
  border-radius: 16px !important;
  background: rgba(255, 251, 247, .72) !important;
  overflow: hidden !important;
}

.owner-advanced-box > summary {
  cursor: pointer !important;
  padding: 14px 16px !important;
  color: #4a0c21 !important;
  font-size: 13px !important;
  font-weight: 900 !important;
}

.owner-advanced-box > *:not(summary) {
  margin-left: 16px !important;
  margin-right: 16px !important;
}

.admin-analytics-owner .owner-product-list,
.admin-barista-owner .owner-product-picker {
  scrollbar-width: thin !important;
}

.admin-analytics-owner .owner-product-list img,
.admin-barista-owner .owner-product-picker img {
  max-width: 52px !important;
}

@media (max-width: 1180px) {
  .owner-summary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .owner-two-col,
  .owner-grid-two {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 768px) {
  .owner-hero-card {
    align-items: flex-start !important;
    padding: 16px !important;
  }

  .owner-summary-grid {
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
  }

  .owner-summary-card {
    min-height: 78px !important;
    padding: 14px !important;
  }

  .owner-summary-card strong {
    font-size: 18px !important;
  }

  .owner-featured-product-toolbar {
    align-items: stretch !important;
    flex-direction: column !important;
    gap: 4px !important;
  }

  .owner-featured-product-toolbar .field {
    width: 100% !important;
    max-width: none !important;
  }

  .owner-featured-product-toolbar > span {
    padding: 4px 2px 8px !important;
  }

  .owner-featured-product-group > summary {
    align-items: center !important;
  }

  .owner-featured-product-group > summary > b {
    max-width: 96px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  .owner-product-picker {
    grid-template-columns: 1fr !important;
    max-height: 320px !important;
  }

  .owner-action-row,
  .owner-product-row,
  .owner-question-row,
  .owner-category-row,
  .owner-rule-row {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .owner-rule-actions {
    justify-content: stretch !important;
  }

  .owner-rule-actions .primary-btn,
  .owner-rule-actions .secondary-btn,
  .owner-rule-actions .danger-btn {
    flex: 1 1 auto !important;
  }

  .owner-product-row {
    grid-template-columns: 52px minmax(0, 1fr) !important;
  }

  .owner-product-row .secondary-btn,
  .owner-action-row .secondary-btn,
  .owner-question-row .secondary-btn {
    width: 100% !important;
  }
}


/* v132 - Barista seçimleri ve menüde aranan ürün analizi */
.owner-product-choice {
  user-select: none !important;
  cursor: pointer !important;
}

.owner-product-choice * {
  pointer-events: none !important;
}

.owner-product-choice input {
  pointer-events: none !important;
}

.owner-product-choice.selected {
  border-color: rgba(159, 13, 26, .44) !important;
  background: rgba(159, 13, 26, .075) !important;
  box-shadow: inset 0 0 0 1px rgba(159, 13, 26, .12) !important;
}

.owner-product-choice.selected::after {
  content: "✓";
  position: absolute !important;
  top: 8px !important;
  right: 10px !important;
  width: 20px !important;
  height: 20px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 999px !important;
  color: #fff !important;
  background: #4a0c21 !important;
  font-size: 12px !important;
  font-weight: 900 !important;
}

.owner-demand-card {
  border-color: rgba(159, 13, 26, .18) !important;
  background: rgba(255, 252, 249, .86) !important;
}

.owner-demand-list {
  display: grid !important;
  gap: 10px !important;
}

.owner-demand-row {
  display: grid !important;
  grid-template-columns: 34px minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 12px !important;
  border: 1px solid rgba(226, 215, 207, .88) !important;
  border-radius: 16px !important;
  background: rgba(255, 255, 255, .76) !important;
}

.owner-demand-row > b {
  width: 34px !important;
  height: 34px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 12px !important;
  color: #fff !important;
  background: #4a0c21 !important;
  font-size: 13px !important;
}

.owner-demand-row span {
  min-width: 0 !important;
  display: grid !important;
  gap: 3px !important;
}

.owner-demand-row strong {
  min-width: 0 !important;
  color: #4a0c21 !important;
  font-size: 15px !important;
  line-height: 1.2 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.owner-demand-row em {
  min-width: 0 !important;
  color: rgba(38, 27, 22, .62) !important;
  font-size: 11px !important;
  font-style: normal !important;
  line-height: 1.35 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

@media (max-width: 768px) {
  .owner-demand-row {
    grid-template-columns: 34px minmax(0, 1fr) !important;
  }

  .owner-demand-row .secondary-btn {
    grid-column: 1 / -1 !important;
    width: 100% !important;
  }
}


/* v133 - Admin sol menü aktif ikon ve logo merkezleme düzeltmesi */
.admin-sidebar-brand {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  text-align: center !important;
}

.admin-sidebar-brand .brand-mark,
.admin-sidebar-brand .brand-mark-dark {
  width: 100% !important;
  max-width: 132px !important;
  margin: 0 auto !important;
  display: grid !important;
  justify-items: center !important;
  align-items: center !important;
  text-align: center !important;
  transform: translateX(4px) !important;
}

.admin-sidebar-brand .brand-logo-img {
  display: block !important;
  margin: 0 auto !important;
  object-fit: contain !important;
  object-position: center center !important;
  transform: translateX(2px) !important;
}

.admin-sidebar-brand .brand-word {
  display: block !important;
  width: 100% !important;
  margin: 8px auto 0 !important;
  text-align: center !important;
  transform: translateX(2px) !important;
}

.admin-sidebar .admin-nav-btn.active,
.admin-sidebar .admin-nav-btn[aria-current="page"],
.admin-sidebar .admin-nav-btn:focus-visible {
  border-color: rgba(74, 12, 33, .24) !important;
  background: rgba(74, 12, 33, .075) !important;
  color: #4a0c21 !important;
  box-shadow: inset 0 0 0 1px rgba(74, 12, 33, .08) !important;
}

.admin-sidebar .admin-nav-btn.active .admin-nav-ico,
.admin-sidebar .admin-nav-btn[aria-current="page"] .admin-nav-ico,
.admin-sidebar .admin-nav-btn:focus-visible .admin-nav-ico {
  background: #4a0c21 !important;
  color: #fff !important;
  opacity: 1 !important;
  visibility: visible !important;
  box-shadow: 0 10px 20px rgba(74, 12, 33, .16) !important;
}

.admin-sidebar .admin-nav-btn.active .admin-nav-ico svg,
.admin-sidebar .admin-nav-btn[aria-current="page"] .admin-nav-ico svg,
.admin-sidebar .admin-nav-btn:focus-visible .admin-nav-ico svg {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  color: #fff !important;
  stroke: currentColor !important;
}

.admin-sidebar .admin-nav-btn.active .admin-nav-label,
.admin-sidebar .admin-nav-btn[aria-current="page"] .admin-nav-label,
.admin-sidebar .admin-nav-btn:focus-visible .admin-nav-label {
  color: #4a0c21 !important;
  opacity: 1 !important;
}

.admin-sidebar .admin-nav-btn.active .admin-nav-dot,
.admin-sidebar .admin-nav-btn[aria-current="page"] .admin-nav-dot {
  display: block !important;
  background: #4a0c21 !important;
  opacity: 1 !important;
}

@media (max-width: 768px) {
  .admin-sidebar-brand .brand-mark,
  .admin-sidebar-brand .brand-mark-dark {
    transform: translateX(3px) !important;
  }

  .admin-sidebar-brand .brand-logo-img,
  .admin-sidebar-brand .brand-word {
    transform: translateX(2px) !important;
  }
}


/* v134 - Admin ürün listesi kaydırma performans düzeltmesi
   Sadece Ürün Listesi tablo/kaydırma alanına odaklanır. */
.product-table-card {
  contain: layout paint !important;
  overflow: hidden !important;
}

.product-table-list {
  max-height: min(64vh, 660px) !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  overscroll-behavior: contain !important;
  scrollbar-gutter: stable !important;
  -webkit-overflow-scrolling: touch !important;
  contain: layout paint style !important;
  will-change: scroll-position !important;
  transform: translateZ(0) !important;
  backface-visibility: hidden !important;
}

.product-table-row {
  contain: layout paint !important;
  content-visibility: auto !important;
  contain-intrinsic-size: 76px !important;
  min-height: 76px !important;
  transform: none !important;
  transition: background-color .12s ease, border-color .12s ease !important;
  box-shadow: none !important;
  will-change: auto !important;
}

.product-table-row:hover {
  transform: none !important;
  box-shadow: none !important;
}

.product-table-row::before,
.product-table-row::after {
  content: none !important;
  display: none !important;
}

.product-table-main img,
.product-table-row img {
  transform: translateZ(0) !important;
  backface-visibility: hidden !important;
  will-change: auto !important;
}

.product-table-row .secondary-btn,
.product-table-row .danger-btn,
.product-table-row button,
.product-table-row .product-more-actions summary {
  transition: background-color .12s ease, border-color .12s ease, color .12s ease !important;
  transform: none !important;
}

.product-table-row .secondary-btn:hover,
.product-table-row .danger-btn:hover,
.product-table-row button:hover,
.product-table-row .product-more-actions summary:hover {
  transform: none !important;
}

.product-table-card .admin-footer-actions,
.product-table-card .pagination-row,
.product-table-card .product-pagination {
  contain: layout paint !important;
}

@media (max-width: 768px) {
  .product-table-list {
    max-height: min(58vh, 560px) !important;
    contain: layout style !important;
    transform: none !important;
  }

  .product-table-row {
    content-visibility: visible !important;
    contain: layout style !important;
    contain-intrinsic-size: 98px !important;
    min-height: 98px !important;
  }
}


/* v136 - Analiz ekranı normal menü arama istatistikleri */
.analytics-summary-grid {
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
}

.owner-search-card {
  border-color: rgba(74, 12, 33, .12) !important;
}

.owner-search-list,
.owner-search-log-list {
  display: grid !important;
  gap: 10px !important;
}

.owner-search-row {
  display: grid !important;
  grid-template-columns: 34px minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 12px !important;
  border: 1px solid rgba(226, 215, 207, .88) !important;
  border-radius: 16px !important;
  background: rgba(255,255,255,.76) !important;
}

.owner-search-row > b {
  width: 34px !important;
  height: 34px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 12px !important;
  color: #4a0c21 !important;
  background: rgba(74, 12, 33, .08) !important;
  font-size: 13px !important;
  font-weight: 900 !important;
}

.owner-search-row span {
  min-width: 0 !important;
  display: grid !important;
  gap: 3px !important;
}

.owner-search-row strong {
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  color: #1f1714 !important;
  font-size: 14px !important;
  line-height: 1.2 !important;
}

.owner-search-row em {
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  color: rgba(38, 27, 22, .60) !important;
  font-size: 11px !important;
  font-style: normal !important;
  line-height: 1.35 !important;
}

.owner-search-row small {
  display: inline-flex !important;
  justify-content: center !important;
  min-width: 76px !important;
  padding: 7px 10px !important;
  border-radius: 999px !important;
  color: #167445 !important;
  background: rgba(22, 116, 69, .10) !important;
  font-size: 11px !important;
  font-weight: 900 !important;
}

.owner-search-row.no-result {
  border-color: rgba(159, 13, 26, .22) !important;
  background: rgba(159, 13, 26, .045) !important;
}

.owner-search-row.no-result > b,
.owner-search-row.no-result small {
  color: #fff !important;
  background: #4a0c21 !important;
}

@media (max-width: 1180px) {
  .analytics-summary-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 768px) {
  .analytics-summary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .owner-search-row {
    grid-template-columns: 34px minmax(0, 1fr) !important;
  }

  .owner-search-row small {
    grid-column: 1 / -1 !important;
    width: 100% !important;
  }
}


/* v138 - Popup image-only: fotoğraf dışı arka plan/yan boşlukları kaldır */
.promo-popup-card.promo-popup-card--image-only {
  width: min(88vw, calc((100vh - 96px) * .5625), 520px) !important;
  max-width: min(88vw, 520px) !important;
  height: auto !important;
  max-height: calc(100vh - 96px) !important;
  aspect-ratio: 9 / 16 !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 24px !important;
  background: transparent !important;
  box-shadow: 0 28px 80px rgba(0, 0, 0, .34) !important;
}

.promo-popup-card.promo-popup-card--image-only .promo-popup-image {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  min-width: 100% !important;
  min-height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  border: 0 !important;
  border-radius: inherit !important;
  background: transparent !important;
}

.promo-popup-card.promo-popup-card--image-only .promo-popup-cta {
  z-index: 3 !important;
}

.promo-popup-card.promo-popup-card--image-only .promo-popup-close {
  z-index: 4 !important;
}

@media (max-width: 768px) {
  .promo-popup {
    align-items: center !important;
    padding: max(16px, env(safe-area-inset-top, 0px)) 12px calc(16px + env(safe-area-inset-bottom, 0px)) !important;
  }

  .promo-popup-card.promo-popup-card--image-only {
    width: min(88vw, calc((100vh - 92px) * .5625), 430px) !important;
    max-height: calc(100vh - 92px) !important;
    margin-top: 0 !important;
    border-radius: 22px !important;
  }

  .promo-popup-card.promo-popup-card--image-only .promo-popup-close {
    top: -15px !important;
    right: -12px !important;
  }
}


/* v139 - Popup kapatma butonu görünürlük düzeltmesi */
.promo-popup-card.promo-popup-card--image-only {
  overflow: visible !important;
}

.promo-popup-card.promo-popup-card--image-only .promo-popup-image {
  overflow: hidden !important;
  border-radius: 24px !important;
}

.promo-popup-card.promo-popup-card--image-only .promo-popup-close {
  position: absolute !important;
  top: -20px !important;
  right: -20px !important;
  width: 58px !important;
  height: 58px !important;
  min-width: 58px !important;
  min-height: 58px !important;
  display: grid !important;
  place-items: center !important;
  border: 3px solid rgba(52, 52, 52, .9) !important;
  border-radius: 999px !important;
  background: #fff !important;
  color: #111 !important;
  font-size: 32px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  box-shadow: 0 14px 30px rgba(0, 0, 0, .22) !important;
  z-index: 10 !important;
  clip-path: none !important;
}

@media (max-width: 768px) {
  .promo-popup-card.promo-popup-card--image-only {
    overflow: visible !important;
  }

  .promo-popup-card.promo-popup-card--image-only .promo-popup-image {
    border-radius: 22px !important;
  }

  .promo-popup-card.promo-popup-card--image-only .promo-popup-close {
    top: -18px !important;
    right: -14px !important;
    width: 54px !important;
    height: 54px !important;
    min-width: 54px !important;
    min-height: 54px !important;
    font-size: 30px !important;
  }
}


/* v140 - Yeni ürün kategori çerçevesi: fotoğraf içinde beyaz halka yok, süre 3 gün */
.category-reference-item.has-new-product .category-reference-icon::after,
.category-reference-item.has-new-product .category-reference-vector::after,
.home-category-pill.has-new-product .home-category-icon::after,
.home-category-item.has-new-product .home-category-icon::after,
.category-card.has-new-product .category-card-icon::after {
  content: none !important;
  display: none !important;
  border: 0 !important;
  box-shadow: none !important;
}

.category-reference-item.has-new-product .category-reference-icon,
.category-reference-item.has-new-product .category-reference-vector,
.home-category-pill.has-new-product .home-category-icon,
.home-category-item.has-new-product .home-category-icon,
.category-card.has-new-product .category-card-icon {
  overflow: hidden !important;
}

.category-reference-item.has-new-product .category-reference-icon .icon-media,
.category-reference-item.has-new-product .category-reference-vector .icon-media,
.home-category-pill.has-new-product .home-category-icon .icon-media,
.home-category-item.has-new-product .home-category-icon .icon-media,
.category-card.has-new-product .category-card-icon .icon-media {
  border-radius: inherit !important;
  overflow: hidden !important;
}


/* v142 - Web ana sayfa "Bugün Sana Özel" kart hizalama düzeltmesi */
@media (min-width: 769px) {
  .home-panel .special-row {
    align-items: stretch !important;
  }

  .home-panel .special-card {
    height: 100% !important;
    min-height: 128px !important;
    display: block !important;
  }

  .home-panel .special-card button {
    height: 100% !important;
    min-height: 128px !important;
    display: grid !important;
    grid-template-columns: 92px minmax(0, 1fr) 38px !important;
    align-items: center !important;
  }

  .home-panel .special-card span {
    min-width: 0 !important;
    height: 100% !important;
    min-height: 92px !important;
    display: grid !important;
    grid-template-rows: auto 1fr auto !important;
    align-content: start !important;
  }

  .home-panel .special-card strong {
    min-height: 21px !important;
    display: -webkit-box !important;
    overflow: hidden !important;
    -webkit-line-clamp: 1 !important;
    -webkit-box-orient: vertical !important;
  }

  .home-panel .special-card em {
    min-height: 35px !important;
    max-height: 35px !important;
    display: -webkit-box !important;
    overflow: hidden !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
  }

  .home-panel .special-card .price {
    align-self: end !important;
    margin-top: 8px !important;
  }

  .home-panel .special-card i {
    align-self: center !important;
    justify-self: center !important;
  }
}

@media (min-width: 1180px) {
  .home-panel .special-card button {
    min-height: 132px !important;
  }

  .home-panel .special-card {
    min-height: 132px !important;
  }
}


/* assets/css/lunqa-category-active-soft-v69.css */
/* v69 - Kategori aktif rengi yumuşatma override
   Bu dosya mevcut styles.css'i değiştirmez. index.html içinde styles.css'ten sonra çağrılmalıdır. */

.page-panel-menu .category-reference-item.active,
.page-panel-menu .category-reference-item:hover,
.category-reference-item.active {
  background: rgba(112, 77, 61, 0.075) !important;
  border-color: rgba(112, 77, 61, 0.14) !important;
  box-shadow: none !important;
}

.page-panel-menu .category-reference-item.active .category-reference-icon,
.category-reference-item.active .category-reference-icon,
.category-reference-item.active .category-reference-icon.category-reference-vector,
.category-reference-item.active .category-reference-icon.category-reference-emoji,
.page-panel-menu .category-reference-item.active .category-reference-icon.category-reference-vector,
.page-panel-menu .category-reference-item.active .category-reference-icon.category-reference-emoji {
  background: #f1e5dd !important;
  color: #8f0713 !important;
  border: 1px solid rgba(143, 7, 19, 0.16) !important;
  box-shadow: 0 10px 22px rgba(74, 43, 31, 0.08) !important;
}

.page-panel-menu .category-reference-item.active .category-reference-icon svg,
.page-panel-menu .category-reference-item.active .category-reference-icon svg *,
.category-reference-item.active .category-reference-icon svg,
.category-reference-item.active .category-reference-icon svg * {
  color: #8f0713 !important;
  stroke: currentColor !important;
}

.page-panel-menu .category-reference-item.active .category-reference-label,
.category-reference-item.active .category-reference-label {
  color: #8f0713 !important;
}


/* assets/css/lunqa-category-clean-v71.css */
/* v72: v71 override neutralized. Main styles.css now contains the safe category fix. */


/* assets/css/lunqa-popup-mode-v74.css */
/* v74 - Popup optional image-only mode
   Başlık/açıklama/buton boşsa popup sadece görsel olarak görünür.
   Başlık/açıklama/buton varsa eski kartlı popup korunur. */

.promo-popup-card.promo-popup-image-only {
  width: min(92vw, 430px) !important;
  max-height: calc(100dvh - 44px) !important;
  overflow: visible !important;
  border-radius: 16px !important;
  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
}

.promo-popup-card.promo-popup-image-only > img {
  width: 100% !important;
  height: auto !important;
  max-height: calc(100dvh - 44px) !important;
  object-fit: contain !important;
  display: block !important;
  border-radius: 16px !important;
  border: 2px solid rgba(255, 255, 255, .86) !important;
  box-shadow: 0 26px 80px rgba(0, 0, 0, .38) !important;
  background: transparent !important;
}

.promo-popup-card.promo-popup-image-only .promo-popup-body {
  display: none !important;
}

.promo-popup-card.promo-popup-image-only .promo-popup-close {
  top: -16px !important;
  right: -16px !important;
  z-index: 5 !important;
  width: 38px !important;
  height: 38px !important;
  background: #fff !important;
  color: #1f1714 !important;
  border: 1px solid rgba(0, 0, 0, .10) !important;
  box-shadow: 0 10px 26px rgba(0, 0, 0, .22) !important;
}

@media (max-width: 520px) {
  .promo-popup-card.promo-popup-image-only {
    width: min(88vw, 430px) !important;
  }

  .promo-popup-card.promo-popup-image-only .promo-popup-close {
    top: -14px !important;
    right: -14px !important;
    width: 36px !important;
    height: 36px !important;
  }
}


/* assets/css/lunqa-home-category-fix-v75.css */
/* v75 - Ana sayfa kategori alanı düzeltmesi
   Eski menü importundan sonra kategori sayısı artınca ana sayfada sıkışmayı engeller.
   Sadece ana sayfa kategori strip alanını etkiler. */

.home-menu-categories .home-category-strip {
  display: flex !important;
  flex-wrap: nowrap !important;
  grid-template-columns: none !important;
  gap: 10px !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  padding: 14px 12px 13px !important;
  scroll-snap-type: x proximity !important;
  -webkit-overflow-scrolling: touch !important;
  scrollbar-width: none !important;
}

.home-menu-categories .home-category-strip::-webkit-scrollbar {
  display: none !important;
}

.home-menu-categories .home-category-pill {
  width: 72px !important;
  min-width: 72px !important;
  max-width: 72px !important;
  flex: 0 0 72px !important;
  scroll-snap-align: start !important;
  display: grid !important;
  justify-items: center !important;
  align-content: start !important;
  gap: 6px !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.home-menu-categories .home-category-icon {
  width: 44px !important;
  height: 44px !important;
  border-radius: 999px !important;
  background: transparent !important;
  color: #211916 !important;
  border: 1px solid transparent !important;
  box-shadow: none !important;
}

.home-menu-categories .home-category-icon svg {
  width: 27px !important;
  height: 27px !important;
}

.home-menu-categories .home-category-pill > span:last-child {
  width: 100% !important;
  min-height: 24px !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  color: #211916 !important;
  font-size: 9.5px !important;
  line-height: 1.12 !important;
  font-weight: 900 !important;
  text-align: center !important;
}

.home-menu-categories .home-category-pill:active .home-category-icon,
.home-menu-categories .home-category-pill:hover .home-category-icon {
  color: #8a0711 !important;
  background: #f4e9e4 !important;
  border-color: rgba(138, 7, 17, .12) !important;
  box-shadow: 0 6px 14px rgba(76, 31, 25, .06) !important;
}

.home-menu-categories .home-category-pill:active > span:last-child,
.home-menu-categories .home-category-pill:hover > span:last-child {
  color: #8a0711 !important;
}

/* Dar ekranda biraz daha kompakt */
@media (max-width: 420px) {
  .home-menu-categories .home-category-strip {
    gap: 8px !important;
    padding-inline: 10px !important;
  }

  .home-menu-categories .home-category-pill {
    width: 66px !important;
    min-width: 66px !important;
    max-width: 66px !important;
    flex-basis: 66px !important;
  }

  .home-menu-categories .home-category-icon {
    width: 42px !important;
    height: 42px !important;
  }

  .home-menu-categories .home-category-pill > span:last-child {
    font-size: 9px !important;
  }
}


/* assets/css/lunqa-radius-fix-v77.css */
/* v77 - Ana sayfa kart radius tutarlılığı
   Sadece ana sayfadaki kart/kutu köşe yuvarlaklıklarını hizalar.
   Ürün, SQL, JS, admin ve Barista tarafına dokunmaz. */

:root {
  --lunqa-card-radius-v77: 22px;
  --lunqa-inner-radius-v77: 16px;
}

/* Ana sayfa ana kartlar */
.home-panel .featured-card,
.home-panel .product-card,
.home-panel .special-card,
.home-panel .home-story-row,
.home-panel .home-social-row,
.home-panel .directions-card {
  border-radius: var(--lunqa-card-radius-v77) !important;
  overflow: hidden !important;
}

/* Kart içindeki tıklanabilir alanların dış kartla aynı davranması */
.home-panel .featured-card > button,
.home-panel .product-card > button,
.home-panel .special-card > button {
  border-radius: var(--lunqa-card-radius-v77) !important;
  overflow: hidden !important;
}

/* Bugün Sana Özel yatay kartlarında taşan köşe farklarını temizle */
.home-panel .special-card {
  background-clip: padding-box !important;
}

.home-panel .special-card button {
  background: transparent !important;
}

/* İç görseller aynı aileden, dış karttan biraz daha küçük radius */
.home-panel .special-card img,
.home-panel .home-story-row img,
.home-panel .featured-media,
.home-panel .product-card-media {
  border-radius: var(--lunqa-inner-radius-v77) !important;
  overflow: hidden !important;
}

/* Öne çıkan kartlarda üst görsel dış köşeye oturuyorsa kartla uyumlu kalsın */
.home-panel .featured-card .featured-media {
  border-radius: var(--lunqa-card-radius-v77) var(--lunqa-card-radius-v77) 0 0 !important;
}

/* Ürün grid kartlarında alt/dış köşelerin tamamı aynı olsun */
.home-panel .product-card {
  background: rgba(255, 255, 255, .76) !important;
}

/* Hikayemiz ve sosyal kartların yükseklik farkı olsa bile köşe dili aynı kalsın */
.home-panel .home-story-row,
.home-panel .home-social-row {
  background-clip: padding-box !important;
}

/* Plus, Instagram ve logo gibi bilinçli yuvarlak ikonlara dokunma */
.home-panel .featured-body b,
.home-panel .special-card i,
.home-panel .instagram-icon,
.home-panel .story-logo,
.bottom-nav .center-logo,
.assistant-toggle {
  border-radius: 999px !important;
}

@media (max-width: 520px) {
  :root {
    --lunqa-card-radius-v77: 21px;
    --lunqa-inner-radius-v77: 15px;
  }
}


/* assets/css/lunqa-v80-restore.css */
/* v80 - Hakkımızda Yol Tarifi geri dönüş + Menü satırı açıklama hizası
   JS/database/ürün datası değiştirmez; sadece görünümü destekler. */

/* Menü sayfasında açıklama ürün adının altından başlasın */
.menu-row .menu-copy {
  min-width: 0 !important;
  display: grid !important;
  gap: 4px !important;
  align-content: center !important;
}

.menu-row .menu-title,
.menu-row .menu-desc {
  display: block !important;
}

.menu-row .menu-title {
  max-width: 100% !important;
  white-space: normal !important;
  line-height: 1.15 !important;
}

.menu-row .menu-desc {
  max-width: 100% !important;
  margin-top: 0 !important;
  line-height: 1.35 !important;
}

/* Hakkımızda yol tarifi kartı */
.directions-card {
  width: 100% !important;
  min-height: 58px !important;
  display: grid !important;
  grid-template-columns: 46px minmax(0, 1fr) 22px !important;
  align-items: center !important;
  gap: 12px !important;
  margin: 12px 0 28px !important;
  padding: 11px 13px !important;
  border: 1px solid var(--line, rgba(226, 215, 207, .92)) !important;
  border-radius: 15px !important;
  background: rgba(255, 255, 255, .66) !important;
  color: var(--ink, #211916) !important;
  text-decoration: none !important;
  box-shadow: 0 10px 24px rgba(44, 25, 18, .045) !important;
}

.directions-card:visited,
.directions-card:hover,
.directions-card:focus {
  color: var(--ink, #211916) !important;
  text-decoration: none !important;
}

.directions-icon {
  width: 44px !important;
  height: 44px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 14px !important;
  background: rgba(138, 7, 17, .08) !important;
  color: var(--accent-dark, #8a0711) !important;
}

.directions-icon svg,
.directions-icon svg * {
  color: var(--accent-dark, #8a0711) !important;
  stroke: currentColor !important;
}

.directions-copy {
  min-width: 0 !important;
  display: grid !important;
  gap: 3px !important;
}

.directions-card strong {
  display: block !important;
  color: var(--accent-dark, #8a0711) !important;
  font-size: 14px !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  text-decoration: none !important;
}

.directions-card small {
  display: block !important;
  color: #6f5d55 !important;
  font-size: 11px !important;
  line-height: 1.25 !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

.directions-card > svg {
  color: var(--accent-dark, #8a0711) !important;
  justify-self: end !important;
}

@media (max-width: 520px) {
  .directions-card {
    margin-top: 10px !important;
    margin-bottom: 26px !important;
    grid-template-columns: 42px minmax(0, 1fr) 20px !important;
    border-radius: 14px !important;
  }

  .directions-icon {
    width: 40px !important;
    height: 40px !important;
  }
}


/* assets/css/lunqa-barista-thinking-v90.css */
/* LUNQA v90 - Barista düşünüyor animasyonu
   Sadece Barista cevap bekleme görünümünü güzelleştirir. */

.assistant-message.is-thinking {
  align-items: flex-start !important;
}

.assistant-message.is-thinking > p,
.assistant-message.is-thinking .assistant-thinking-bubble {
  position: relative !important;
  min-width: 156px !important;
  min-height: 48px !important;
  margin: 0 !important;
  padding: 13px 16px 13px 54px !important;
  border: 1px solid rgba(226, 215, 207, .95) !important;
  border-radius: 18px 18px 18px 8px !important;
  background:
    radial-gradient(circle at 20px 50%, rgba(165, 14, 24, .09), transparent 24px),
    rgba(255, 253, 250, .96) !important;
  box-shadow: 0 12px 28px rgba(44, 25, 18, .08) !important;
  color: #4f403a !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  overflow: hidden !important;
}

.assistant-message.is-thinking > p::before,
.assistant-message.is-thinking .assistant-thinking-bubble::before {
  content: "☕" !important;
  position: absolute !important;
  left: 17px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 25px !important;
  height: 25px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 999px !important;
  background: rgba(138, 7, 17, .10) !important;
  color: #8a0711 !important;
  font-size: 14px !important;
  line-height: 1 !important;
}

.assistant-message.is-thinking > p::after,
.assistant-message.is-thinking .assistant-thinking-bubble::after {
  content: "Barista düşünüyor" !important;
  margin-left: 4px !important;
  color: #6b5c55 !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  letter-spacing: -.01em !important;
  white-space: nowrap !important;
}

.assistant-message.is-thinking span {
  width: 7px !important;
  height: 7px !important;
  display: inline-block !important;
  border-radius: 999px !important;
  background: #8a0711 !important;
  opacity: .35 !important;
  animation: lunqaThinkingDots 1.05s infinite ease-in-out !important;
}

.assistant-message.is-thinking span:nth-child(1) {
  animation-delay: 0s !important;
}

.assistant-message.is-thinking span:nth-child(2) {
  animation-delay: .16s !important;
}

.assistant-message.is-thinking span:nth-child(3) {
  animation-delay: .32s !important;
}

@keyframes lunqaThinkingDots {
  0%, 80%, 100% {
    transform: translateY(0) scale(.88);
    opacity: .32;
  }
  40% {
    transform: translateY(-4px) scale(1);
    opacity: 1;
  }
}

/* Kahve buharı hissi */
.assistant-message.is-thinking {
  position: relative !important;
}

.assistant-message.is-thinking::before,
.assistant-message.is-thinking::after {
  content: "" !important;
  position: absolute !important;
  left: 25px !important;
  top: 8px !important;
  width: 5px !important;
  height: 14px !important;
  border-radius: 999px !important;
  border-left: 1.5px solid rgba(138, 7, 17, .35) !important;
  transform: rotate(12deg) !important;
  animation: lunqaSteam 1.45s infinite ease-in-out !important;
  pointer-events: none !important;
}

.assistant-message.is-thinking::after {
  left: 33px !important;
  animation-delay: .34s !important;
  transform: rotate(-10deg) !important;
}

@keyframes lunqaSteam {
  0% {
    opacity: 0;
    transform: translateY(6px) rotate(8deg);
  }
  35% {
    opacity: .8;
  }
  100% {
    opacity: 0;
    transform: translateY(-9px) rotate(16deg);
  }
}

@media (max-width: 520px) {
  .assistant-message.is-thinking > p,
  .assistant-message.is-thinking .assistant-thinking-bubble {
    min-width: 146px !important;
    min-height: 44px !important;
    padding: 12px 14px 12px 50px !important;
  }

  .assistant-message.is-thinking > p::after,
  .assistant-message.is-thinking .assistant-thinking-bubble::after {
    font-size: 11.5px !important;
  }
}


/* assets/css/lunqa-barista-chat-scroll-fix-v91.css */
/* LUNQA v92 - Barista hazır soru tıklama/scroll CSS */

.assistant-suggestions {
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: 8px !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  max-width: 100% !important;
  padding-bottom: 5px !important;
  scrollbar-width: thin !important;
  -webkit-overflow-scrolling: touch !important;
  overscroll-behavior-x: contain !important;
  cursor: default !important;
}

.assistant-suggestions button {
  flex: 0 0 auto !important;
  white-space: nowrap !important;
  max-width: none !important;
  pointer-events: auto !important;
  cursor: pointer !important;
  user-select: none !important;
}

.assistant-panel {
  overflow: hidden !important;
}

.assistant-messages {
  overflow-y: auto !important;
  overscroll-behavior: contain !important;
  scroll-behavior: smooth !important;
}

.assistant-form input {
  scroll-margin-bottom: 120px !important;
}

@media (min-width: 768px) {
  .assistant-panel {
    max-height: min(720px, calc(100vh - 40px)) !important;
  }
}


/* assets/css/lunqa-barista-prompt-click-fix-v93.css */
/* LUNQA v93 - Barista hazır soru tıklama CSS düzeltmesi */

.assistant-suggestions {
  position: relative !important;
  z-index: 4 !important;
  pointer-events: auto !important;
  touch-action: pan-x !important;
}

.assistant-suggestions button,
.assistant-suggestions [data-assistant-prompt] {
  position: relative !important;
  z-index: 5 !important;
  pointer-events: auto !important;
  cursor: pointer !important;
  touch-action: manipulation !important;
  user-select: none !important;
}

.assistant-suggestions button:active,
.assistant-suggestions [data-assistant-prompt]:active {
  transform: translateY(1px) !important;
}

/* Web scrollbar butonların tıklama alanını ezmesin */
.assistant-suggestions {
  padding-bottom: 8px !important;
}


/* assets/css/lunqa-cnc-qr-admin-v95.css */
/* LUNQA v95 - CNC uyumlu düz QR yönetimi */
.admin-page-cncqr .qr-preview-frame,
.admin-page-cncqr .cnc-qr-preview-frame {
  background: #fff !important;
  border: 1px solid rgba(20, 20, 20, .14) !important;
  border-radius: 18px !important;
  padding: 28px !important;
  box-shadow: none !important;
}

.admin-page-cncqr .qr-preview-frame img,
.admin-page-cncqr .cnc-qr-preview-frame img {
  width: min(100%, 420px) !important;
  aspect-ratio: 1 / 1 !important;
  display: block !important;
  margin: 0 auto !important;
  image-rendering: pixelated !important;
  background: #fff !important;
}

.admin-page-cncqr .qr-center-brand {
  display: none !important;
}

.admin-page-cncqr .qr-style-options {
  display: none !important;
}

.cnc-qr-link-field {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto auto !important;
  gap: 8px !important;
}

.cnc-qr-link-field input {
  min-width: 0 !important;
}

.qr-helper-text,
.qr-warning-text {
  margin: 9px 0 0 !important;
  color: #6b5c55 !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
}

.qr-helper-text code {
  padding: 2px 6px !important;
  border-radius: 8px !important;
  background: rgba(0, 0, 0, .045) !important;
  color: #2b211d !important;
}

.qr-warning-text {
  padding: 10px 12px !important;
  border: 1px solid rgba(165, 14, 24, .16) !important;
  border-radius: 14px !important;
  background: rgba(165, 14, 24, .055) !important;
  color: #8a0711 !important;
  font-weight: 800 !important;
}

.cnc-size-guide {
  margin-top: 18px !important;
}

.cnc-size-guide h3,
.cnc-qr-control-card h3 {
  margin: 0 0 10px !important;
}

.cnc-size-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 10px !important;
}

.cnc-size-grid article {
  min-height: 76px !important;
  border: 1px solid var(--line) !important;
  border-radius: 16px !important;
  background: rgba(255, 255, 255, .7) !important;
  display: grid !important;
  place-items: center !important;
  text-align: center !important;
  padding: 10px !important;
}

.cnc-size-grid b {
  color: #8a0711 !important;
  font-size: 18px !important;
}

.cnc-size-grid span {
  color: #6b5c55 !important;
  font-size: 11px !important;
  font-weight: 800 !important;
}

.cnc-plate-preview {
  width: min(100%, 300px) !important;
  margin: 16px auto !important;
  padding: 22px !important;
  border-radius: 28px !important;
  background: linear-gradient(145deg, #e7d6c8, #f7eee6) !important;
  border: 1px solid rgba(80, 55, 42, .18) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.65), 0 18px 36px rgba(44,25,18,.08) !important;
  display: grid !important;
  gap: 12px !important;
  place-items: center !important;
}

.cnc-plate-qr {
  width: 172px !important;
  height: 172px !important;
  padding: 12px !important;
  border-radius: 10px !important;
  background: #fff !important;
}

.cnc-plate-qr img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  image-rendering: pixelated !important;
}

.cnc-plate-preview span {
  color: #2a201d !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: .16em !important;
}

.cnc-check-list {
  display: grid !important;
  gap: 9px !important;
  margin: 14px 0 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.cnc-check-list li {
  display: flex !important;
  gap: 9px !important;
  align-items: center !important;
  padding: 10px 12px !important;
  border: 1px solid var(--line) !important;
  border-radius: 14px !important;
  background: rgba(255,255,255,.66) !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  color: #2a201d !important;
}

.cnc-status-ok small {
  max-width: 100% !important;
  word-break: break-word !important;
}

@media (max-width: 720px) {
  .cnc-qr-link-field {
    grid-template-columns: 1fr !important;
  }

  .cnc-size-grid {
    grid-template-columns: 1fr !important;
  }

  .admin-page-cncqr .qr-preview-frame img,
  .admin-page-cncqr .cnc-qr-preview-frame img {
    width: min(100%, 320px) !important;
  }
}


/* assets/css/lunqa-admin-owner-simplify-v96.css */
/* LUNQA v96 - Admin Barista + Analiz sade kullanım ekranları
   Sadece admin Barista ve admin Analiz görünümlerini sadeleştirir. */

.admin-owner-page {
  display: grid;
  gap: 18px;
}

.owner-hero-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 20px !important;
  background:
    radial-gradient(circle at 12% 10%, rgba(165, 14, 24, .08), transparent 34%),
    rgba(255, 253, 250, .9) !important;
}

.owner-hero-copy {
  display: flex;
  align-items: center;
  gap: 14px;
  min-width: 0;
}

.owner-hero-icon {
  width: 54px;
  height: 54px;
  border-radius: 18px;
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  color: var(--accent-dark);
  background: rgba(165, 14, 24, .08);
  border: 1px solid rgba(165, 14, 24, .12);
}

.owner-hero-copy h2 {
  margin: 0;
  font-size: 22px;
  letter-spacing: -.02em;
}

.owner-hero-copy p {
  max-width: 680px;
  margin: 5px 0 0;
  color: var(--muted);
  line-height: 1.45;
}

.owner-status-pill {
  min-height: 38px;
  padding: 0 14px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  font-weight: 900;
  white-space: nowrap;
}

.owner-status-pill.active {
  color: #13733d;
  background: rgba(31, 160, 85, .11);
  border: 1px solid rgba(31, 160, 85, .18);
}

.owner-summary-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.owner-summary-card {
  min-height: 92px;
  display: grid;
  align-content: center;
  gap: 8px;
}

.owner-summary-card strong {
  color: var(--accent-dark);
  font-size: 26px;
  line-height: 1;
  font-weight: 950;
  word-break: break-word;
}

.owner-summary-card span {
  color: #5c504b;
  font-size: 12px;
  font-weight: 800;
}

.owner-section-card {
  padding: 20px !important;
}

.owner-product-picker {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  max-height: 470px;
  overflow: auto;
  padding: 4px 4px 4px 0;
}

.owner-product-choice {
  position: relative;
  min-height: 76px;
  display: grid;
  grid-template-columns: 22px 56px minmax(0, 1fr);
  align-items: center;
  gap: 11px;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: rgba(255, 255, 255, .72);
  cursor: pointer;
}

.owner-product-choice[hidden] {
  display: none !important;
}

.owner-product-choice.selected {
  border-color: rgba(165, 14, 24, .24);
  background: rgba(165, 14, 24, .055);
}

.owner-product-choice input {
  width: 16px;
  height: 16px;
  accent-color: var(--accent);
}

.owner-product-choice img,
.owner-product-row img {
  width: 56px;
  height: 56px;
  border-radius: 13px;
  object-fit: cover;
  background: #efe5dd;
}

.owner-product-choice strong,
.owner-product-row strong,
.owner-rule-row strong,
.owner-question-row strong,
.owner-action-row strong,
.owner-category-row strong,
.owner-log-row strong {
  display: block;
  color: #231915;
  font-size: 13px;
  line-height: 1.25;
  font-weight: 900;
}

.owner-product-choice em,
.owner-product-row em,
.owner-rule-row em,
.owner-question-row em,
.owner-action-row em,
.owner-category-row em {
  display: block;
  margin-top: 4px;
  color: var(--muted);
  font-style: normal;
  font-size: 11.5px;
  line-height: 1.35;
}

.owner-two-col,
.owner-grid-two {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.owner-two-col {
  margin-top: 18px;
}

.owner-soft-panel {
  border: 1px solid var(--line);
  border-radius: 18px;
  padding: 16px;
  background: rgba(255, 255, 255, .64);
}

.owner-mini-head h3 {
  margin: 0;
  font-size: 15px;
}

.owner-mini-head p {
  margin: 5px 0 14px;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}

.owner-prompt-list {
  display: grid;
  gap: 8px;
}

.owner-prompt-list label {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  align-items: center;
  gap: 9px;
}

.owner-prompt-list label span {
  height: 34px;
  border-radius: 12px;
  display: grid;
  place-items: center;
  color: var(--accent-dark);
  background: rgba(165, 14, 24, .08);
  font-weight: 900;
  font-size: 11px;
}

.owner-prompt-list input,
.owner-test-inline input,
.owner-rule-form input,
.owner-rule-form textarea,
.owner-rule-form select,
.owner-advanced-box textarea {
  width: 100%;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: rgba(255, 255, 255, .82);
}

.owner-prompt-list input,
.owner-test-inline input {
  min-height: 38px;
  padding: 0 12px;
}

.owner-test-inline {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 9px;
  align-items: center;
}

.owner-test-result {
  margin-top: 12px;
  border: 1px solid rgba(165, 14, 24, .13);
  border-radius: 16px;
  padding: 12px;
  background: rgba(165, 14, 24, .045);
}

.owner-test-result strong {
  display: block;
  color: var(--accent-dark);
  font-weight: 900;
}

.owner-test-result p {
  margin: 7px 0 0;
  color: #332723;
  line-height: 1.45;
}

.owner-test-result div {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 10px;
}

.owner-test-result span {
  padding: 6px 9px;
  border-radius: 999px;
  color: var(--accent-dark);
  background: #fff;
  border: 1px solid var(--line);
  font-size: 11px;
  font-weight: 800;
}

.owner-advanced-box {
  margin-top: 16px;
  border: 1px dashed rgba(165, 14, 24, .2);
  border-radius: 16px;
  padding: 12px 14px;
  background: rgba(255, 255, 255, .42);
}

.owner-advanced-box summary {
  cursor: pointer;
  color: #2b201c;
  font-weight: 900;
}

.owner-advanced-box textarea {
  margin-top: 10px;
  min-height: 130px;
  padding: 12px;
}

.owner-rule-form {
  display: grid;
  gap: 12px;
}

.owner-rule-form textarea {
  padding: 12px;
  resize: vertical;
}

.owner-rule-form select {
  padding: 10px;
}

.owner-rule-list,
.owner-question-list,
.owner-log-list,
.owner-product-list,
.owner-action-list,
.owner-category-list {
  display: grid;
  gap: 10px;
}

.owner-rule-list {
  margin-top: 16px;
}

.owner-rule-row,
.owner-question-row,
.owner-action-row,
.owner-product-row,
.owner-category-row,
.owner-log-row {
  border: 1px solid var(--line);
  border-radius: 16px;
  background: rgba(255,255,255,.68);
}

.owner-rule-row,
.owner-question-row,
.owner-action-row,
.owner-product-row,
.owner-category-row {
  display: grid;
  align-items: center;
  gap: 12px;
  padding: 12px;
}

.owner-rule-row {
  grid-template-columns: minmax(0, 1fr) auto;
}

.owner-question-row {
  grid-template-columns: minmax(0, 1fr) auto;
}

.owner-product-row {
  grid-template-columns: 56px minmax(0, 1fr) auto;
}

.owner-action-row {
  grid-template-columns: 34px minmax(0, 1fr) auto;
}

.owner-action-row > b {
  width: 34px;
  height: 34px;
  border-radius: 12px;
  display: grid;
  place-items: center;
  color: #fff;
  background: var(--accent);
  font-size: 12px;
}

.owner-category-row {
  grid-template-columns: minmax(0, 1fr) auto;
}

.owner-category-row > b {
  padding: 7px 10px;
  border-radius: 999px;
  color: var(--accent-dark);
  background: rgba(165, 14, 24, .07);
  font-size: 11px;
  white-space: nowrap;
}

.owner-product-row em b {
  display: inline-flex;
  margin: 3px 5px 0 0;
  padding: 5px 8px;
  border-radius: 999px;
  color: var(--accent-dark);
  background: rgba(165, 14, 24, .07);
  font-style: normal;
  font-size: 10.5px;
}

.owner-rule-row b {
  display: block;
  margin-top: 4px;
  color: var(--accent-dark);
  font-size: 11px;
}

.owner-log-row {
  padding: 12px;
}

.owner-log-row p {
  margin: 6px 0;
  color: #403530;
  line-height: 1.45;
}

.owner-log-row em {
  color: var(--muted);
  font-size: 11px;
  font-style: normal;
}

.owner-log-row.not-found {
  background: rgba(165, 14, 24, .045);
  border-color: rgba(165, 14, 24, .14);
}

.empty-state.compact {
  min-height: 68px;
  padding: 16px;
}

@media (max-width: 1100px) {
  .owner-summary-grid,
  .owner-product-picker,
  .owner-two-col,
  .owner-grid-two {
    grid-template-columns: 1fr;
  }

  .owner-hero-card {
    align-items: flex-start;
    flex-direction: column;
  }

  .owner-product-row,
  .owner-action-row {
    grid-template-columns: 48px minmax(0, 1fr);
  }

  .owner-product-row .secondary-btn,
  .owner-action-row .secondary-btn {
    grid-column: 1 / -1;
    justify-self: stretch;
  }
}


/* assets/css/lunqa-about-directions-v97.css */
/* LUNQA v97 - Hakkımızda Yol Tarifi Al kalıcı düzeltme */

.directions-link {
  width: 100%;
  min-height: 44px;
  margin: 12px 0 0;
  padding: 10px 12px;
  border: 1px solid rgba(226, 215, 207, .95);
  border-radius: 14px;
  display: grid;
  grid-template-columns: auto auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 7px;
  color: #8a0711;
  background: rgba(255, 253, 250, .76);
  text-decoration: none;
  box-shadow: 0 8px 20px rgba(44, 25, 18, .04);
}

.directions-link span {
  font-weight: 900;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.directions-link small {
  min-width: 0;
  overflow: hidden;
  color: #5e514b;
  font-size: 12px;
  font-weight: 700;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.directions-link svg {
  flex: 0 0 auto;
}

.directions-link:hover {
  background: rgba(165, 14, 24, .055);
  border-color: rgba(165, 14, 24, .18);
}

@media (max-width: 520px) {
  .directions-link {
    grid-template-columns: auto auto minmax(0, 1fr) auto;
    margin-top: 10px;
  }
}


/* assets/css/lunqa-v104-from-v103-fixes.css */

/* LUNQA v104 - v103 bazlı düzeltmeler */
:root {
  --lunqa-deep-burgundy: #4a0c21;
}

/* Menü üst hero ve mobil alt orta buton */
.hero,
.page-hero,
.hero-menu,
.menu-hero,
[data-page="menu"] .hero,
[data-route="menu"] .hero {
  background-color: var(--lunqa-deep-burgundy) !important;
}

.bottom-nav .center-action,
.bottom-nav .nav-center,
.bottom-nav .brand-action,
.mobile-bottom-nav .center-action,
.mobile-bottom-nav .nav-center,
.mobile-bottom-nav .brand-action,
.nav-fab,
.bottom-nav-fab,
.mobile-nav-fab {
  background: var(--lunqa-deep-burgundy) !important;
  border-color: var(--lunqa-deep-burgundy) !important;
}

.assistant-fab,
.barista-fab,
.chat-fab {
  background: var(--lunqa-deep-burgundy) !important;
}

/* Menü ve ana sayfa kategori alanları daha düz */
.category-reference-shell,
.home-category-shell,
.home-categories-shell,
.categories-strip-shell,
.home-category-panel,
.category-panel {
  border-radius: 0 !important;
  border-left: 0 !important;
  border-right: 0 !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
}

.category-reference-strip,
.home-category-strip,
.home-categories-strip,
.categories-strip {
  border-radius: 0 !important;
  box-shadow: none !important;
}

.category-reference-item,
.home-category-item,
.category-card {
  background: transparent !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}

/* Seçili kategori dairenin kırmızı kalın çerçevesiyle belli olsun */
.category-reference-icon,
.home-category-icon,
.category-card-icon {
  transform: scale(.94);
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.category-reference-item.active .category-reference-icon,
.home-category-item.active .home-category-icon,
.category-card.active .category-card-icon {
  transform: scale(1.05);
  border: 3px solid #b80f20 !important;
  box-shadow: 0 0 0 4px rgba(184, 15, 32, .10) !important;
}

.category-reference-item.active,
.home-category-item.active,
.category-card.active {
  background: transparent !important;
  box-shadow: none !important;
}

/* Yanına Yakışır kartlarında görsel tam otursun */
.related-card img,
.pairing-card img,
.product-related-card img,
.recommend-card img,
[data-related-products] img {
  width: 100% !important;
  height: 86px !important;
  object-fit: cover !important;
  display: block !important;
  border-radius: 10px 10px 0 0 !important;
}

.related-card .related-thumb,
.pairing-card .pairing-thumb,
.product-related-card .related-thumb,
.recommend-card .recommend-thumb,
[data-related-products] .related-thumb {
  padding: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
  background: transparent !important;
}

/* Ürün detay içindekiler alanı: çizgisiz 3x2 */
.ingredients-grid,
.ingredient-grid,
.product-ingredients-grid,
.ingredients-list,
.product-ingredients-list {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 18px 12px !important;
  border: 0 !important;
}

.ingredients-grid > *,
.ingredient-grid > *,
.product-ingredients-grid > *,
.ingredients-list > *,
.product-ingredients-list > *,
.ingredient-item {
  border: 0 !important;
  box-shadow: none !important;
}

.ingredients-grid > *::before,
.ingredients-grid > *::after,
.ingredient-grid > *::before,
.ingredient-grid > *::after,
.product-ingredients-grid > *::before,
.product-ingredients-grid > *::after,
.ingredients-list > *::before,
.ingredients-list > *::after,
.product-ingredients-list > *::before,
.product-ingredients-list > *::after,
.product-ingredients-grid::before,
.product-ingredients-grid::after,
.ingredient-grid::before,
.ingredient-grid::after,
.ingredients-list::before,
.ingredients-list::after {
  display: none !important;
}

@media (max-width: 420px) {
  .ingredients-grid,
  .ingredient-grid,
  .product-ingredients-grid,
  .ingredients-list,
  .product-ingredients-list {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

/* LUNQA v105 - web görünüm düzeltmeleri (v104 üzerine) */
:root {
  --lunqa-deep-burgundy: #4a0c21;
  --lunqa-soft-border: rgba(74, 12, 33, .16);
}

/* Barista kutucuğu ve aksiyon rengi */
.assistant-fab,
.barista-fab,
.chat-fab,
.assistant-form button,
.assistant-message.is-user p {
  background: var(--lunqa-deep-burgundy) !important;
  border-color: var(--lunqa-deep-burgundy) !important;
}

.assistant-panel {
  border: 1px solid rgba(74, 12, 33, .18) !important;
  box-shadow: 0 24px 70px rgba(74, 12, 33, .20) !important;
}

.assistant-panel-head {
  background: var(--lunqa-deep-burgundy) !important;
  color: #fff !important;
  border-color: var(--lunqa-deep-burgundy) !important;
}

.assistant-panel-head strong,
.assistant-panel-head p {
  color: #fff !important;
}

.assistant-close {
  color: #fff !important;
  background: rgba(255, 255, 255, .12) !important;
  border-color: rgba(255, 255, 255, .22) !important;
}

.assistant-suggestions button:hover,
.assistant-suggestions button:focus-visible {
  color: #fff !important;
  background: var(--lunqa-deep-burgundy) !important;
  border-color: var(--lunqa-deep-burgundy) !important;
}

/* Hakkımızda üst alanı: bordo kimliği korurken yönetim paneli görselini kullanır */
.hero-about,
[data-page="about"] .hero,
[data-route="about"] .hero {
  background: var(--lunqa-deep-burgundy) !important;
  background-color: var(--lunqa-deep-burgundy) !important;
}

.hero-about::before,
[data-page="about"] .hero::before,
[data-route="about"] .hero::before {
  opacity: 1 !important;
  background-image:
    linear-gradient(180deg, rgba(74, 12, 33, .5), rgba(74, 12, 33, .78)),
    var(--hero-img, url("../images/brand/lunqa-cafe-hero.webp")) !important;
  background-position: center !important;
  background-size: cover !important;
}

.hero-about::after,
[data-page="about"] .hero::after,
[data-route="about"] .hero::after {
  opacity: 1 !important;
  background: linear-gradient(180deg, transparent, rgba(74, 12, 33, .72)) !important;
}

.hero-about .hero-copy,
.hero-about .hero-copy h1,
.hero-about .hero-copy p {
  color: #fff !important;
}

/* Yol tarifi satırı geri getirildi / görünürlük kilidi */
.directions-link,
[data-directions-link] {
  display: flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  align-items: center !important;
  gap: 12px !important;
  width: 100% !important;
  min-height: 58px !important;
  margin: 16px 0 28px !important;
  padding: 0 18px !important;
  border: 1px solid rgba(74, 12, 33, .16) !important;
  border-radius: 14px !important;
  background: rgba(255, 255, 255, .88) !important;
  color: var(--lunqa-deep-burgundy) !important;
  text-decoration: none !important;
  box-shadow: 0 12px 28px rgba(74, 12, 33, .06) !important;
}

.directions-link span,
[data-directions-link] span {
  font-weight: 800 !important;
}

.directions-link small,
[data-directions-link] small {
  margin-left: auto !important;
  color: rgba(20, 12, 14, .62) !important;
  font-weight: 700 !important;
}

/* Sadece masaüstü/web görünüm: kategori şeritleri tam genişlik ve çizgiye kadar uzar */
@media (min-width: 769px) {
  .page-panel-menu {
    display: block !important;
    grid-template-columns: none !important;
    width: min(100% - 96px, 1440px) !important;
    max-width: 1440px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .category-reference-shell {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 0 30px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
  }

  .category-reference-shell::before {
    content: "Kategoriler";
    display: block !important;
    padding: 0 0 18px !important;
    margin: 0 0 12px !important;
    border-bottom: 1px solid var(--lunqa-soft-border) !important;
    color: #070204 !important;
    font-family: Georgia, 'Times New Roman', serif !important;
    font-size: clamp(38px, 3.1vw, 58px) !important;
    font-weight: 500 !important;
    line-height: .95 !important;
    letter-spacing: -.045em !important;
  }

  .category-reference-strip {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    gap: clamp(18px, 2.2vw, 34px) !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    padding: 0 18px 28px !important;
    border-bottom: 1px solid var(--lunqa-soft-border) !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scrollbar-width: thin !important;
  }

  .category-reference-item {
    display: flex !important;
    flex: 0 0 112px !important;
    width: 112px !important;
    min-width: 112px !important;
    max-width: 112px !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 10px !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    text-align: center !important;
  }

  .category-reference-icon,
  .category-reference-vector {
    display: grid !important;
    place-items: center !important;
    width: 58px !important;
    height: 58px !important;
    min-width: 58px !important;
    min-height: 58px !important;
    border: 1px solid rgba(74, 12, 33, .13) !important;
    border-radius: 999px !important;
    background: #f3eee9 !important;
    box-shadow: none !important;
    overflow: hidden !important;
    transform: none !important;
  }

  .category-reference-icon svg,
  .category-reference-icon .icon-media,
  .category-reference-icon img,
  .category-reference-vector svg,
  .category-reference-vector .icon-media,
  .category-reference-vector img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
  }

  .category-reference-icon svg,
  .category-reference-vector svg {
    width: 30px !important;
    height: 30px !important;
    object-fit: contain !important;
  }

  .category-reference-item.active .category-reference-icon,
  .category-reference-item.active .category-reference-vector {
    width: 64px !important;
    height: 64px !important;
    min-width: 64px !important;
    min-height: 64px !important;
    border: 4px solid #b80f20 !important;
    box-shadow: 0 0 0 5px rgba(184, 15, 32, .10) !important;
    transform: none !important;
  }

  .category-reference-label {
    display: block !important;
    width: 100% !important;
    max-width: 112px !important;
    min-height: 34px !important;
    color: #080304 !important;
    font-size: 12px !important;
    font-weight: 900 !important;
    line-height: 1.18 !important;
    letter-spacing: -.02em !important;
    text-align: center !important;
    white-space: normal !important;
    word-break: keep-all !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
    text-wrap: balance !important;
  }

  .page-panel-menu .menu-list {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
  }

  .home-panel,
  .home-modern-panel {
    width: min(100% - 96px, 1440px) !important;
    max-width: 1440px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .home-menu-categories,
  .home-section.home-menu-categories {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .home-menu-categories .home-section-head {
    width: 100% !important;
    padding: 0 0 18px !important;
    margin: 0 0 12px !important;
    border-bottom: 1px solid var(--lunqa-soft-border) !important;
  }

  .home-menu-categories .home-section-head h2 {
    font-family: Georgia, 'Times New Roman', serif !important;
    font-size: clamp(38px, 3.1vw, 58px) !important;
    font-weight: 500 !important;
    line-height: .95 !important;
    letter-spacing: -.045em !important;
  }

  .home-menu-categories .home-section-head button {
    color: #990716 !important;
    font-weight: 900 !important;
  }

  .home-category-strip {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    gap: clamp(18px, 2.2vw, 34px) !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    padding: 0 18px 28px !important;
    border-bottom: 1px solid var(--lunqa-soft-border) !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scrollbar-width: thin !important;
  }

  .home-category-pill {
    display: flex !important;
    flex: 0 0 112px !important;
    width: 112px !important;
    min-width: 112px !important;
    max-width: 112px !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 10px !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    text-align: center !important;
  }

  .home-category-icon {
    display: grid !important;
    place-items: center !important;
    width: 58px !important;
    height: 58px !important;
    min-width: 58px !important;
    min-height: 58px !important;
    border: 1px solid rgba(74, 12, 33, .13) !important;
    border-radius: 999px !important;
    background: #f3eee9 !important;
    overflow: hidden !important;
    transform: none !important;
  }

  .home-category-icon svg,
  .home-category-icon .icon-media,
  .home-category-icon img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
  }

  .home-category-icon svg {
    width: 30px !important;
    height: 30px !important;
    object-fit: contain !important;
  }

  .home-category-pill > span:not(.home-category-icon) {
    display: block !important;
    width: 100% !important;
    max-width: 112px !important;
    color: #080304 !important;
    font-size: 12px !important;
    font-weight: 900 !important;
    line-height: 1.18 !important;
    letter-spacing: -.02em !important;
    text-align: center !important;
    white-space: normal !important;
    word-break: keep-all !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
    text-wrap: balance !important;
  }

  .directions-link,
  [data-directions-link] {
    max-width: none !important;
  }
}

@media (min-width: 1280px) {
  .category-reference-strip,
  .home-category-strip {
    justify-content: flex-start !important;
  }
}

@media (max-width: 768px) {
  .hero-about,
  [data-page="about"] .hero,
  [data-route="about"] .hero {
    background: var(--lunqa-deep-burgundy) !important;
  }
}


/* v106 - web kategori başlık kırılma düzeltmesi */
@media (min-width: 769px) {
  .category-reference-item,
  .home-category-pill {
    writing-mode: horizontal-tb !important;
  }

  .category-reference-label,
  .home-category-pill > span:not(.home-category-icon) {
    writing-mode: horizontal-tb !important;
    text-orientation: mixed !important;
    max-inline-size: 112px !important;
  }
}


/* v107 - web menü kategori alanını tekrar sola al ve düzenli göster */
@media (min-width: 769px) {
  .page-panel-menu {
    display: grid !important;
    grid-template-columns: 290px minmax(0, 1fr) !important;
    align-items: start !important;
    gap: 28px !important;
    width: min(100% - 96px, 1440px) !important;
    max-width: 1440px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .page-panel-menu .category-reference-shell {
    grid-column: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid var(--lunqa-soft-border) !important;
    border-radius: 0 !important;
    background: rgba(255,255,255,.62) !important;
    box-shadow: none !important;
    overflow: hidden !important;
    position: sticky !important;
    top: 24px !important;
  }

  .page-panel-menu .category-reference-shell::before {
    content: "Kategoriler";
    display: block !important;
    padding: 18px 18px 14px !important;
    margin: 0 !important;
    border-bottom: 1px solid var(--lunqa-soft-border) !important;
    color: #070204 !important;
    font-family: Georgia, 'Times New Roman', serif !important;
    font-size: 20px !important;
    font-weight: 500 !important;
    line-height: 1.1 !important;
    letter-spacing: -.02em !important;
  }

  .page-panel-menu .category-reference-strip {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 2px !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    padding: 12px 14px 14px !important;
    border-bottom: 0 !important;
    background: transparent !important;
    overflow: visible !important;
  }

  .page-panel-menu .category-reference-item {
    display: flex !important;
    flex: none !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 12px !important;
    padding: 10px 12px !important;
    border-radius: 14px !important;
    text-align: left !important;
    background: transparent !important;
    transition: background-color .18s ease, border-color .18s ease, box-shadow .18s ease;
  }

  .page-panel-menu .category-reference-item:hover,
  .page-panel-menu .category-reference-item:focus-visible {
    background: rgba(74, 12, 33, .05) !important;
  }

  .page-panel-menu .category-reference-icon,
  .page-panel-menu .category-reference-vector {
    width: 50px !important;
    height: 50px !important;
    min-width: 50px !important;
    min-height: 50px !important;
    flex: 0 0 50px !important;
  }

  .page-panel-menu .category-reference-item.active {
    background: rgba(74, 12, 33, .06) !important;
  }

  .page-panel-menu .category-reference-item.active .category-reference-icon,
  .page-panel-menu .category-reference-item.active .category-reference-vector {
    width: 54px !important;
    height: 54px !important;
    min-width: 54px !important;
    min-height: 54px !important;
    flex-basis: 54px !important;
    border: 4px solid #b80f20 !important;
    box-shadow: 0 0 0 5px rgba(184, 15, 32, .10) !important;
  }

  .page-panel-menu .category-reference-label {
    width: auto !important;
    max-width: none !important;
    min-height: 0 !important;
    flex: 1 1 auto !important;
    color: #080304 !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
    letter-spacing: -.02em !important;
    text-align: left !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: anywhere !important;
    text-wrap: pretty !important;
  }

  .page-panel-menu .menu-list {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
  }
}


/* v108 - popup görseli referanstaki gibi image-only poster olarak göster */
.promo-popup {
  position: fixed !important;
  inset: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 28px 18px calc(28px + env(safe-area-inset-bottom, 0px)) !important;
  background: rgba(15, 8, 10, .62) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  z-index: 1400 !important;
}

.promo-popup-card {
  position: relative !important;
  width: min(92vw, 620px) !important;
  max-height: min(92vh, 980px) !important;
  overflow: visible !important;
  border-radius: 26px !important;
  border: 4px solid rgba(255,255,255,.88) !important;
  background: transparent !important;
  box-shadow: 0 28px 80px rgba(0,0,0,.30) !important;
}

.promo-popup-card--image-only {
  padding: 0 !important;
}

.promo-popup-image {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-height: min(84vh, 900px) !important;
  object-fit: contain !important;
  border-radius: 22px !important;
  background: #120607 !important;
}

.promo-popup-body {
  padding: 28px 26px !important;
  border-radius: 22px !important;
  background: #fff !important;
}

.promo-popup-close {
  position: absolute !important;
  top: -18px !important;
  right: -18px !important;
  width: 60px !important;
  height: 60px !important;
  display: grid !important;
  place-items: center !important;
  border: 3px solid rgba(52,52,52,.9) !important;
  border-radius: 999px !important;
  background: #fff !important;
  color: #111 !important;
  font-size: 32px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  box-shadow: 0 14px 30px rgba(0,0,0,.22) !important;
  z-index: 2 !important;
}

.promo-popup-cta {
  position: absolute !important;
  left: 50% !important;
  bottom: 18px !important;
  transform: translateX(-50%) !important;
}

@media (max-width: 768px) {
  .promo-popup {
    padding: max(18px, env(safe-area-inset-top, 0px)) 14px calc(18px + env(safe-area-inset-bottom, 0px)) !important;
    align-items: flex-start !important;
  }

  .promo-popup-card {
    width: min(92vw, 640px) !important;
    margin-top: max(26px, env(safe-area-inset-top, 0px)) !important;
    border-radius: 22px !important;
    border-width: 4px !important;
  }

  .promo-popup-image {
    max-height: calc(100vh - 120px) !important;
    border-radius: 18px !important;
  }

  .promo-popup-close {
    top: -16px !important;
    right: -14px !important;
    width: 54px !important;
    height: 54px !important;
    font-size: 30px !important;
  }
}


/* v109 - kategori ikon boyutlarını mobil ve webte tekrar dengeli hale getir */
.category-reference-icon,
.home-category-icon,
.category-card-icon,
.category-reference-vector {
  display: grid !important;
  place-items: center !important;
  overflow: hidden !important;
}

.category-reference-icon .icon-media,
.home-category-icon .icon-media,
.category-card-icon .icon-media,
.category-reference-vector .icon-media {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
}

.category-reference-icon .icon-media img,
.home-category-icon .icon-media img,
.category-card-icon .icon-media img,
.category-reference-vector .icon-media img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
}

.category-reference-icon svg,
.home-category-icon svg,
.category-card-icon svg,
.category-reference-vector svg {
  width: 56% !important;
  height: 56% !important;
}

@media (max-width: 768px) {
  .category-reference-icon,
  .home-category-icon,
  .category-card-icon,
  .category-reference-vector {
    width: 72px !important;
    height: 72px !important;
    min-width: 72px !important;
    min-height: 72px !important;
  }

  .category-reference-item.active .category-reference-icon,
  .home-category-item.active .home-category-icon,
  .category-card.active .category-card-icon,
  .category-reference-item.active .category-reference-vector,
  .home-category-pill.active .home-category-icon {
    width: 74px !important;
    height: 74px !important;
    min-width: 74px !important;
    min-height: 74px !important;
  }

  .category-reference-icon svg,
  .home-category-icon svg,
  .category-card-icon svg,
  .category-reference-vector svg {
    width: 54% !important;
    height: 54% !important;
  }
}

@media (min-width: 769px) {
  .page-panel-menu .category-reference-icon,
  .page-panel-menu .category-reference-vector {
    width: 58px !important;
    height: 58px !important;
    min-width: 58px !important;
    min-height: 58px !important;
    flex-basis: 58px !important;
  }

  .page-panel-menu .category-reference-item.active .category-reference-icon,
  .page-panel-menu .category-reference-item.active .category-reference-vector {
    width: 62px !important;
    height: 62px !important;
    min-width: 62px !important;
    min-height: 62px !important;
    flex-basis: 62px !important;
  }

  .page-panel-menu .category-reference-label,
  .home-category-pill > span:not(.home-category-icon) {
    line-height: 1.2 !important;
  }
}


/* v110 - Hakkımızda Yol Tarifi Al kartını görünürlük kilidiyle geri getir */
main.page-panel .directions-link,
main.page-panel .direction-card,
main.page-panel a[data-directions-link],
.route-shell main.page-panel a.directions-link.direction-card[data-directions-link] {
  display: flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  position: relative !important;
  z-index: 5 !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 12px !important;
  width: 100% !important;
  min-height: 58px !important;
  margin: 16px 0 30px !important;
  padding: 0 18px !important;
  border: 1px solid rgba(74, 12, 33, .18) !important;
  border-radius: 14px !important;
  background: rgba(255, 255, 255, .94) !important;
  color: #4a0c21 !important;
  text-decoration: none !important;
  box-shadow: 0 12px 28px rgba(74, 12, 33, .07) !important;
}

main.page-panel .directions-link svg,
main.page-panel .direction-card svg,
main.page-panel a[data-directions-link] svg {
  display: block !important;
  width: 20px !important;
  height: 20px !important;
  flex: 0 0 20px !important;
  color: #4a0c21 !important;
  stroke: currentColor !important;
}

main.page-panel .directions-link > span,
main.page-panel .direction-card > span,
main.page-panel a[data-directions-link] > span {
  display: inline-flex !important;
  align-items: center !important;
  color: #4a0c21 !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
}

main.page-panel .directions-link > small,
main.page-panel .direction-card > small,
main.page-panel a[data-directions-link] > small {
  display: inline-flex !important;
  margin-left: auto !important;
  color: rgba(20, 12, 14, .62) !important;
  font-size: 13px !important;
  font-weight: 800 !important;
}

@media (max-width: 768px) {
  main.page-panel .directions-link,
  main.page-panel .direction-card,
  main.page-panel a[data-directions-link],
  .route-shell main.page-panel a.directions-link.direction-card[data-directions-link] {
    min-height: 56px !important;
    margin: 14px 0 24px !important;
    padding: 0 16px !important;
    border-radius: 16px !important;
  }

  main.page-panel .directions-link > small,
  main.page-panel .direction-card > small,
  main.page-panel a[data-directions-link] > small {
    max-width: 42% !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }
}


/* v111 - mobil alt navbarı tarayıcı çubuğu açılıp kapanınca gerçek ekran altına sabitle */
@media (max-width: 768px) {
  .bottom-nav {
    position: fixed !important;
    left: 50% !important;
    right: auto !important;
    bottom: 0 !important;
    transform: translate3d(-50%, 0, 0) !important;
    width: min(100vw, 430px) !important;
    max-width: 430px !important;
    min-height: 96px !important;
    height: auto !important;
    padding: 18px 10px calc(16px + env(safe-area-inset-bottom, 0px)) !important;
    margin: 0 !important;
    border-radius: 34px 34px 0 0 !important;
    border: 1px solid rgba(74, 12, 33, .14) !important;
    border-bottom: 0 !important;
    background: rgba(255, 251, 247, .96) !important;
    box-shadow: 0 -18px 54px rgba(74, 12, 33, .12) !important;
    z-index: 1200 !important;
    contain: layout paint !important;
    will-change: transform !important;
  }

  .bottom-nav .nav-btn {
    min-width: 0 !important;
  }

  .bottom-nav .logo-tab {
    position: relative !important;
    top: -34px !important;
    margin-bottom: -34px !important;
    width: 88px !important;
    height: 88px !important;
    min-width: 88px !important;
    min-height: 88px !important;
    border-radius: 999px !important;
    background: #4a0c21 !important;
    box-shadow: 0 18px 44px rgba(74, 12, 33, .22) !important;
    z-index: 2 !important;
  }

  .bottom-nav .logo-tab svg,
  .bottom-nav .logo-tab img {
    width: 58px !important;
    height: 58px !important;
    object-fit: contain !important;
  }

  .phone-shell,
  .route-shell,
  [data-screen-root] {
    padding-bottom: calc(122px + env(safe-area-inset-bottom, 0px)) !important;
  }

  .menu-list,
  .page-panel,
  .page-panel-menu {
    padding-bottom: calc(142px + env(safe-area-inset-bottom, 0px)) !important;
  }

  html,
  body {
    min-height: 100dvh !important;
  }
}

@supports (height: 100svh) {
  @media (max-width: 768px) {
    .bottom-nav {
      bottom: 0 !important;
    }
  }
}


/* v112 - mobil admin menüsü düzeni */
@media (max-width: 768px) {
  .admin-stage {
    width: 100% !important;
    min-height: 100dvh !important;
    padding: 0 12px calc(24px + env(safe-area-inset-bottom, 0px)) !important;
    overflow-x: hidden !important;
  }

  .admin-shell {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  .admin-sidebar {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 0 18px !important;
    padding: 18px 16px 16px !important;
    border-radius: 0 0 28px 28px !important;
    background: rgba(255, 251, 247, .94) !important;
    box-shadow: 0 18px 44px rgba(74, 12, 33, .10) !important;
    overflow: visible !important;
  }

  .admin-sidebar-brand {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    margin: 0 0 16px !important;
    padding: 0 0 14px !important;
    border-bottom: 1px solid rgba(74, 12, 33, .14) !important;
  }

  .admin-sidebar-brand svg,
  .admin-sidebar-brand img {
    width: 110px !important;
    max-width: 110px !important;
    height: auto !important;
  }

  .admin-nav {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 14px !important;
    width: 100% !important;
    max-height: none !important;
    overflow: visible !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  .admin-nav-group {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .admin-nav-group-label {
    grid-column: 1 / -1 !important;
    display: block !important;
    margin: 4px 0 2px !important;
    padding: 0 2px !important;
    color: rgba(40, 26, 27, .56) !important;
    font-size: 11px !important;
    line-height: 1.2 !important;
    font-weight: 900 !important;
    letter-spacing: .22em !important;
    text-transform: uppercase !important;
  }

  .admin-nav-btn {
    display: grid !important;
    grid-template-columns: 42px minmax(0, 1fr) !important;
    align-items: center !important;
    justify-content: stretch !important;
    gap: 9px !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 58px !important;
    height: auto !important;
    padding: 8px 10px !important;
    margin: 0 !important;
    border: 1px solid rgba(74, 12, 33, .10) !important;
    border-radius: 18px !important;
    background: rgba(255, 255, 255, .58) !important;
    color: #1b1213 !important;
    box-shadow: none !important;
    text-align: left !important;
  }

  .admin-nav-btn.active {
    background: rgba(74, 12, 33, .08) !important;
    border-color: rgba(184, 15, 32, .22) !important;
    color: #7b0716 !important;
  }

  .admin-nav-ico {
    display: grid !important;
    place-items: center !important;
    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;
    border-radius: 15px !important;
    background: rgba(184, 15, 32, .08) !important;
    color: #990716 !important;
  }

  .admin-nav-ico svg {
    width: 21px !important;
    height: 21px !important;
  }

  .admin-nav-label {
    display: block !important;
    min-width: 0 !important;
    max-width: 100% !important;
    color: inherit !important;
    font-size: 15px !important;
    line-height: 1.15 !important;
    font-weight: 900 !important;
    letter-spacing: -.03em !important;
    white-space: normal !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    overflow-wrap: anywhere !important;
  }

  .admin-nav-dot {
    display: none !important;
  }

  .admin-sidebar-foot {
    position: static !important;
    transform: none !important;
    display: flex !important;
    width: 100% !important;
    min-height: 54px !important;
    margin: 16px 0 0 !important;
    padding: 0 16px !important;
    border-radius: 18px !important;
    background: #4a0c21 !important;
    color: #fff !important;
    box-shadow: 0 14px 30px rgba(74, 12, 33, .18) !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 10px !important;
    font-size: 15px !important;
    font-weight: 900 !important;
  }

  .admin-main {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 0 120px !important;
    overflow: visible !important;
  }

  .admin-topbar,
  .admin-topbar-premium {
    display: block !important;
    width: 100% !important;
    margin: 0 0 14px !important;
    padding: 18px 16px !important;
    border-radius: 24px !important;
  }

  .admin-title h1 {
    font-size: 26px !important;
    line-height: 1.04 !important;
    letter-spacing: -.04em !important;
  }

  .admin-title p {
    font-size: 13px !important;
    line-height: 1.45 !important;
  }

  .admin-top-actions {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 8px !important;
    width: 100% !important;
    margin-top: 14px !important;
  }

  .admin-save-status {
    grid-column: 1 / -1 !important;
    display: block !important;
    width: 100% !important;
    font-size: 12px !important;
  }

  .admin-top-actions .secondary-btn {
    min-width: 0 !important;
    width: 100% !important;
    min-height: 42px !important;
    padding: 0 10px !important;
    justify-content: center !important;
    font-size: 12px !important;
    white-space: nowrap !important;
  }
}

@media (max-width: 380px) {
  .admin-nav-group {
    grid-template-columns: 1fr !important;
  }

  .admin-nav-btn {
    min-height: 54px !important;
  }
}


/* v113 - Yeni ürün kategori story çerçevesi ve Barista diyet/kalori alanları */
.category-reference-item.has-new-product .category-reference-icon,
.category-reference-item.has-new-product .category-reference-vector,
.home-category-pill.has-new-product .home-category-icon,
.home-category-item.has-new-product .home-category-icon,
.category-card.has-new-product .category-card-icon {
  position: relative !important;
  background:
    linear-gradient(#f6eee9, #f6eee9) padding-box,
    conic-gradient(from 210deg, #f7b267, #e94b5f, #8a0b2d, #f7b267) border-box !important;
  border: 3px solid transparent !important;
  box-shadow: 0 10px 24px rgba(138, 11, 45, .14) !important;
}

.category-reference-item.has-new-product .category-reference-icon::after,
.category-reference-item.has-new-product .category-reference-vector::after,
.home-category-pill.has-new-product .home-category-icon::after,
.home-category-item.has-new-product .home-category-icon::after,
.category-card.has-new-product .category-card-icon::after {
  content: "";
  position: absolute !important;
  inset: 5px !important;
  border-radius: inherit !important;
  border: 2px solid rgba(255, 255, 255, .85) !important;
  pointer-events: none !important;
  z-index: 1 !important;
}

.category-reference-item.has-new-product .category-reference-label::after,
.home-category-pill.has-new-product > span:not(.home-category-icon)::after {
  content: "Yeni";
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-left: 6px !important;
  padding: 2px 6px !important;
  border-radius: 999px !important;
  background: #4a0c21 !important;
  color: #fff !important;
  font-size: 9px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  vertical-align: middle !important;
}

.product-editor-form input[name="calories"] {
  font-weight: 900 !important;
  color: #4a0c21 !important;
}

@media (max-width: 768px) {
  .category-reference-item.has-new-product .category-reference-icon,
  .category-reference-item.has-new-product .category-reference-vector,
  .home-category-pill.has-new-product .home-category-icon,
  .home-category-item.has-new-product .home-category-icon,
  .category-card.has-new-product .category-card-icon {
    border-width: 4px !important;
  }

  .category-reference-item.has-new-product .category-reference-label::after,
  .home-category-pill.has-new-product > span:not(.home-category-icon)::after {
    display: none !important;
  }
}


/* v114 - kategori fotoğraflarını mobil ve webte tekrar büyük ve net hale getir */
.category-reference-icon,
.category-reference-vector,
.home-category-icon,
.category-card-icon {
  overflow: hidden !important;
  image-rendering: auto !important;
}

.category-reference-icon .icon-media,
.category-reference-vector .icon-media,
.home-category-icon .icon-media,
.category-card-icon .icon-media,
.category-reference-icon .icon-media img,
.category-reference-vector .icon-media img,
.home-category-icon .icon-media img,
.category-card-icon .icon-media img {
  width: 100% !important;
  height: 100% !important;
  display: block !important;
}

.category-reference-icon .icon-media img,
.category-reference-vector .icon-media img,
.home-category-icon .icon-media img,
.category-card-icon .icon-media img {
  object-fit: cover !important;
  object-position: center center !important;
  transform: scale(1.08) !important;
  image-rendering: -webkit-optimize-contrast !important;
}

@media (max-width: 768px) {
  .category-reference-icon,
  .category-reference-vector,
  .home-category-icon,
  .category-card-icon {
    width: 82px !important;
    height: 82px !important;
    min-width: 82px !important;
    min-height: 82px !important;
  }

  .category-reference-item.active .category-reference-icon,
  .category-reference-item.active .category-reference-vector,
  .home-category-pill.active .home-category-icon,
  .category-card.active .category-card-icon {
    width: 86px !important;
    height: 86px !important;
    min-width: 86px !important;
    min-height: 86px !important;
  }

  .category-reference-icon svg,
  .category-reference-vector svg,
  .home-category-icon svg,
  .category-card-icon svg {
    width: 36px !important;
    height: 36px !important;
  }
}

@media (min-width: 769px) {
  .page-panel-menu .category-reference-icon,
  .page-panel-menu .category-reference-vector {
    width: 74px !important;
    height: 74px !important;
    min-width: 74px !important;
    min-height: 74px !important;
    flex-basis: 74px !important;
  }

  .page-panel-menu .category-reference-item.active .category-reference-icon,
  .page-panel-menu .category-reference-item.active .category-reference-vector {
    width: 80px !important;
    height: 80px !important;
    min-width: 80px !important;
    min-height: 80px !important;
    flex-basis: 80px !important;
  }

  .page-panel-menu .category-reference-icon svg,
  .page-panel-menu .category-reference-vector svg {
    width: 34px !important;
    height: 34px !important;
  }

  .home-category-icon,
  .category-card-icon {
    width: 70px !important;
    height: 70px !important;
    min-width: 70px !important;
    min-height: 70px !important;
  }

  .home-category-pill.active .home-category-icon,
  .category-card.active .category-card-icon {
    width: 76px !important;
    height: 76px !important;
    min-width: 76px !important;
    min-height: 76px !important;
  }

  .home-category-icon svg,
  .category-card-icon svg {
    width: 32px !important;
    height: 32px !important;
  }
}


/* v115 - kategori fotoğraflarını daireyi tamamen dolduracak kadar yakınlaştır */
.category-reference-icon .icon-media,
.category-reference-vector .icon-media,
.home-category-icon .icon-media,
.category-card-icon .icon-media {
  overflow: hidden !important;
  border-radius: inherit !important;
}

.category-reference-icon .icon-media img,
.category-reference-vector .icon-media img,
.home-category-icon .icon-media img,
.category-card-icon .icon-media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  transform: scale(1.9) !important;
  transform-origin: center center !important;
}

@media (min-width: 769px) {
  .page-panel-menu .category-reference-icon .icon-media img,
  .page-panel-menu .category-reference-vector .icon-media img {
    transform: scale(2.15) !important;
  }

  .home-category-icon .icon-media img,
  .category-card-icon .icon-media img {
    transform: scale(1.75) !important;
  }
}

@media (max-width: 768px) {
  .category-reference-icon .icon-media img,
  .category-reference-vector .icon-media img,
  .home-category-icon .icon-media img,
  .category-card-icon .icon-media img {
    transform: scale(2.1) !important;
  }

  .category-reference-item.active .category-reference-icon .icon-media img,
  .category-reference-item.active .category-reference-vector .icon-media img,
  .home-category-pill.active .home-category-icon .icon-media img,
  .category-card.active .category-card-icon .icon-media img {
    transform: scale(2.2) !important;
  }
}


/* v116 - kategori görsellerini çok daha yakın crop ile daireyi tamamen doldur */
.category-reference-icon .icon-media img,
.category-reference-vector .icon-media img,
.home-category-icon .icon-media img,
.category-card-icon .icon-media img {
  transform: scale(3.1) !important;
  object-position: center center !important;
}

.category-reference-icon .icon-media,
.category-reference-vector .icon-media,
.home-category-icon .icon-media,
.category-card-icon .icon-media {
  width: 100% !important;
  height: 100% !important;
}

@media (min-width: 769px) {
  .page-panel-menu .category-reference-icon .icon-media img,
  .page-panel-menu .category-reference-vector .icon-media img {
    transform: scale(3.45) !important;
  }

  .home-category-icon .icon-media img,
  .category-card-icon .icon-media img {
    transform: scale(2.9) !important;
  }
}

@media (max-width: 768px) {
  .category-reference-icon .icon-media img,
  .category-reference-vector .icon-media img,
  .home-category-icon .icon-media img,
  .category-card-icon .icon-media img {
    transform: scale(3.35) !important;
  }

  .category-reference-item.active .category-reference-icon .icon-media img,
  .category-reference-item.active .category-reference-vector .icon-media img,
  .home-category-pill.active .home-category-icon .icon-media img,
  .category-card.active .category-card-icon .icon-media img {
    transform: scale(3.5) !important;
  }
}


/* v117 - kategori görsellerini daire içinde tam merkeze al */
.category-reference-icon,
.category-reference-vector,
.home-category-icon,
.category-card-icon {
  position: relative !important;
  overflow: hidden !important;
}

.category-reference-icon .icon-media,
.category-reference-vector .icon-media,
.home-category-icon .icon-media,
.category-card-icon .icon-media {
  position: relative !important;
  width: 100% !important;
  height: 100% !important;
  overflow: hidden !important;
  border-radius: inherit !important;
}

.category-reference-icon .icon-media img,
.category-reference-vector .icon-media img,
.home-category-icon .icon-media img,
.category-card-icon .icon-media img {
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 100% !important;
  min-height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  transform-origin: center center !important;
  translate: -50% -50% !important;
}

@media (min-width: 769px) {
  .page-panel-menu .category-reference-icon .icon-media img,
  .page-panel-menu .category-reference-vector .icon-media img {
    transform: scale(3.45) !important;
  }

  .home-category-icon .icon-media img,
  .category-card-icon .icon-media img {
    transform: scale(2.9) !important;
  }
}

@media (max-width: 768px) {
  .category-reference-icon .icon-media img,
  .category-reference-vector .icon-media img,
  .home-category-icon .icon-media img,
  .category-card-icon .icon-media img {
    transform: scale(3.35) !important;
  }

  .category-reference-item.active .category-reference-icon .icon-media img,
  .category-reference-item.active .category-reference-vector .icon-media img,
  .home-category-pill.active .home-category-icon .icon-media img,
  .category-card.active .category-card-icon .icon-media img {
    transform: scale(3.5) !important;
  }
}


/* v118 - kategori görselleri yakınlık dengesini geri ayarla */
.category-reference-icon .icon-media img,
.category-reference-vector .icon-media img,
.home-category-icon .icon-media img,
.category-card-icon .icon-media img {
  transform: scale(2.35) !important;
}

@media (min-width: 769px) {
  .page-panel-menu .category-reference-icon .icon-media img,
  .page-panel-menu .category-reference-vector .icon-media img {
    transform: scale(2.45) !important;
  }

  .home-category-icon .icon-media img,
  .category-card-icon .icon-media img {
    transform: scale(2.2) !important;
  }
}

@media (max-width: 768px) {
  .category-reference-icon .icon-media img,
  .category-reference-vector .icon-media img,
  .home-category-icon .icon-media img,
  .category-card-icon .icon-media img {
    transform: scale(2.45) !important;
  }

  .category-reference-item.active .category-reference-icon .icon-media img,
  .category-reference-item.active .category-reference-vector .icon-media img,
  .home-category-pill.active .home-category-icon .icon-media img,
  .category-card.active .category-card-icon .icon-media img {
    transform: scale(2.55) !important;
  }
}


/* v119 - kategori görselleri bir tık daha yakın */
.category-reference-icon .icon-media img,
.category-reference-vector .icon-media img,
.home-category-icon .icon-media img,
.category-card-icon .icon-media img {
  transform: scale(2.55) !important;
}

@media (min-width: 769px) {
  .page-panel-menu .category-reference-icon .icon-media img,
  .page-panel-menu .category-reference-vector .icon-media img {
    transform: scale(2.65) !important;
  }

  .home-category-icon .icon-media img,
  .category-card-icon .icon-media img {
    transform: scale(2.35) !important;
  }
}

@media (max-width: 768px) {
  .category-reference-icon .icon-media img,
  .category-reference-vector .icon-media img,
  .home-category-icon .icon-media img,
  .category-card-icon .icon-media img {
    transform: scale(2.62) !important;
  }

  .category-reference-item.active .category-reference-icon .icon-media img,
  .category-reference-item.active .category-reference-vector .icon-media img,
  .home-category-pill.active .home-category-icon .icon-media img,
  .category-card.active .category-card-icon .icon-media img {
    transform: scale(2.72) !important;
  }
}


/* v120 - kategori görselleri için nokta atışı denge ayarı */
.category-reference-icon .icon-media img,
.category-reference-vector .icon-media img,
.home-category-icon .icon-media img,
.category-card-icon .icon-media img {
  object-position: 50% 50% !important;
  transform: scale(2.26) !important;
}

@media (min-width: 769px) {
  .page-panel-menu .category-reference-icon .icon-media img,
  .page-panel-menu .category-reference-vector .icon-media img {
    object-position: 50% 50% !important;
    transform: scale(2.34) !important;
  }

  .page-panel-menu .category-reference-item.active .category-reference-icon .icon-media img,
  .page-panel-menu .category-reference-item.active .category-reference-vector .icon-media img {
    transform: scale(2.42) !important;
  }

  .home-category-icon .icon-media img,
  .category-card-icon .icon-media img {
    transform: scale(2.18) !important;
  }
}

@media (max-width: 768px) {
  .category-reference-icon .icon-media img,
  .category-reference-vector .icon-media img,
  .home-category-icon .icon-media img,
  .category-card-icon .icon-media img {
    object-position: 50% 50% !important;
    transform: scale(2.32) !important;
  }

  .category-reference-item.active .category-reference-icon .icon-media img,
  .category-reference-item.active .category-reference-vector .icon-media img,
  .home-category-pill.active .home-category-icon .icon-media img,
  .category-card.active .category-card-icon .icon-media img {
    transform: scale(2.4) !important;
  }
}

/* v121 - mobil alt nav orta logo yuvarlak ucunu geri getir */
@media (max-width: 768px) {
  .bottom-nav {
    contain: layout !important;
    overflow: visible !important;
  }

  .bottom-nav .logo-tab,
  .bottom-nav .logo-tab .brand-mark-round {
    border-radius: 999px !important;
    clip-path: none !important;
    overflow: visible !important;
  }

  .bottom-nav .logo-tab .brand-mark-round {
    overflow: hidden !important;
  }
}

/* v122 - category image crop balance */
.category-reference-icon .icon-media img,
.category-reference-vector .icon-media img,
.home-category-icon .icon-media img,
.category-card-icon .icon-media img {
  width: 100% !important;
  height: 100% !important;
  min-width: 100% !important;
  min-height: 100% !important;
  object-position: 50% 50% !important;
  translate: -50% -50% !important;
  transform: scale(1.08) !important;
  transform-origin: center center !important;
}

@media (min-width: 769px) {
  .page-panel-menu .category-reference-icon .icon-media img,
  .page-panel-menu .category-reference-vector .icon-media img {
    transform: scale(1.1) !important;
  }

  .page-panel-menu .category-reference-item.active .category-reference-icon .icon-media img,
  .page-panel-menu .category-reference-item.active .category-reference-vector .icon-media img {
    transform: scale(1.12) !important;
  }

  .home-category-icon .icon-media img,
  .category-card-icon .icon-media img {
    transform: scale(1.06) !important;
  }
}

@media (max-width: 768px) {
  .category-reference-icon .icon-media img,
  .category-reference-vector .icon-media img,
  .home-category-icon .icon-media img,
  .category-card-icon .icon-media img {
    transform: scale(1.08) !important;
  }

  .category-reference-item.active .category-reference-icon .icon-media img,
  .category-reference-item.active .category-reference-vector .icon-media img,
  .home-category-pill.active .home-category-icon .icon-media img,
  .category-card.active .category-card-icon .icon-media img {
    transform: scale(1.1) !important;
  }
}

/* v123 - show full category images inside the circle */
.category-reference-icon .icon-media img,
.category-reference-vector .icon-media img,
.home-category-icon .icon-media img,
.category-card-icon .icon-media img {
  width: 100% !important;
  height: 100% !important;
  min-width: 100% !important;
  min-height: 100% !important;
  object-fit: contain !important;
  object-position: 50% 50% !important;
  translate: -50% -50% !important;
  transform: scale(1) !important;
  transform-origin: center center !important;
}

@media (min-width: 769px) {
  .page-panel-menu .category-reference-icon .icon-media img,
  .page-panel-menu .category-reference-vector .icon-media img,
  .page-panel-menu .category-reference-item.active .category-reference-icon .icon-media img,
  .page-panel-menu .category-reference-item.active .category-reference-vector .icon-media img,
  .home-category-icon .icon-media img,
  .category-card-icon .icon-media img {
    object-fit: contain !important;
    transform: scale(1) !important;
  }
}

@media (max-width: 768px) {
  .category-reference-icon .icon-media img,
  .category-reference-vector .icon-media img,
  .home-category-icon .icon-media img,
  .category-card-icon .icon-media img,
  .category-reference-item.active .category-reference-icon .icon-media img,
  .category-reference-item.active .category-reference-vector .icon-media img,
  .home-category-pill.active .home-category-icon .icon-media img,
  .category-card.active .category-card-icon .icon-media img {
    object-fit: contain !important;
    transform: scale(1) !important;
  }
}

/* v124 - mobile nav center lock and immediate menu rendering */
@media (max-width: 768px) {
  .bottom-nav {
    left: 0 !important;
    right: 0 !important;
    width: min(100%, 430px) !important;
    max-width: 430px !important;
    margin: 0 auto !important;
    transform: none !important;
  }

  .bottom-nav .logo-tab {
    justify-self: center !important;
    align-self: start !important;
    display: grid !important;
    place-items: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .bottom-nav .logo-tab .brand-mark-round {
    display: grid !important;
    place-items: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .bottom-nav .logo-tab .brand-mark-round .brand-logo-img {
    display: block !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

.route-shell:has(.page-panel-menu),
.route-shell.is-ready:has(.page-panel-menu),
.page-panel-menu,
.page-panel-menu .menu-list,
.page-panel-menu .menu-row,
.page-panel-menu .menu-thumb,
.page-panel-menu .menu-thumb img {
  opacity: 1 !important;
  animation: none !important;
  transition: none !important;
}

.page-panel-menu .menu-row,
main.page-panel.page-panel-menu button.menu-row:hover {
  transform: none !important;
}


/* v129 - FINAL mobile bottom nav fix
   Sadece mobil alt navbar alanını düzeltir. */
:root {
  --browser-bottom-offset: 0px !important;
  --lunqa-nav-bottom-offset: 0px !important;
  --nav-h: 92px !important;
}

@media (max-width: 768px) {
  html,
  body {
    min-height: 100% !important;
    height: auto !important;
  }

  html body .bottom-nav {
    box-sizing: border-box !important;
    position: fixed !important;
    left: 50% !important;
    right: auto !important;
    bottom: 0 !important;
    top: auto !important;
    transform: translateX(-50%) !important;
    width: min(100vw, 430px) !important;
    max-width: 430px !important;
    height: 94px !important;
    min-height: 94px !important;
    max-height: 94px !important;
    padding: 10px 10px 0 !important;
    margin: 0 !important;
    display: grid !important;
    grid-template-columns: 1fr 1fr 1.28fr 1fr 1fr !important;
    align-items: start !important;
    justify-items: center !important;
    border-radius: 30px 30px 0 0 !important;
    border-bottom: 0 !important;
    overflow: visible !important;
    contain: none !important;
    background: rgba(255, 252, 249, .98) !important;
  }

  html body .bottom-nav .nav-btn {
    box-sizing: border-box !important;
    width: 100% !important;
    height: 70px !important;
    min-height: 70px !important;
    max-height: 70px !important;
    padding: 0 !important;
    margin: 0 !important;
    display: grid !important;
    place-items: center !important;
    align-content: center !important;
    justify-items: center !important;
    gap: 5px !important;
    overflow: visible !important;
  }

  html body .bottom-nav .nav-btn svg {
    width: 25px !important;
    height: 25px !important;
  }

  html body .bottom-nav .nav-btn span {
    display: block !important;
    max-width: 72px !important;
    line-height: 1.05 !important;
    text-align: center !important;
  }

  html body .bottom-nav .logo-tab {
    position: relative !important;
    top: -38px !important;
    width: 92px !important;
    height: 92px !important;
    min-width: 92px !important;
    min-height: 92px !important;
    max-width: 92px !important;
    max-height: 92px !important;
    padding: 0 !important;
    margin: 0 auto !important;
    display: grid !important;
    place-items: center !important;
    justify-self: center !important;
    align-self: start !important;
    border-radius: 999px !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
  }

  html body .bottom-nav .logo-tab .brand-mark,
  html body .bottom-nav .logo-tab .brand-mark-round {
    box-sizing: border-box !important;
    width: 82px !important;
    height: 82px !important;
    min-width: 82px !important;
    min-height: 82px !important;
    max-width: 82px !important;
    max-height: 82px !important;
    aspect-ratio: 1 / 1 !important;
    border-radius: 50% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 2px !important;
    padding: 7px 0 6px !important;
    margin: 0 !important;
    overflow: hidden !important;
    background: #4a0c21 !important;
    box-shadow: 0 16px 34px rgba(74, 12, 33, .28) !important;
  }

  html body .bottom-nav .logo-tab .brand-logo-img {
    display: block !important;
    width: 46px !important;
    height: 49px !important;
    max-width: 46px !important;
    max-height: 49px !important;
    object-fit: contain !important;
    object-position: center center !important;
    margin: 0 auto !important;
    transform: translateY(-1px) !important;
  }

  html body .bottom-nav .logo-tab .brand-word {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #fff !important;
    text-align: center !important;
    font-size: 7px !important;
    line-height: 1 !important;
    letter-spacing: .18em !important;
  }

  html body .phone-shell,
  html body .route-shell,
  html body [data-screen-root] {
    padding-bottom: 104px !important;
  }

  html body .menu-list,
  html body .page-panel,
  html body .page-panel-menu {
    padding-bottom: 112px !important;
  }
}


/* v131 - Admin Barista / Analiz ekranı layout düzeltmesi
   Sadece admin içindeki Barista ve Analiz sayfalarını toparlar. */
.admin-owner-page {
  display: grid !important;
  gap: 18px !important;
  width: 100% !important;
  max-width: 100% !important;
}

.owner-hero-card {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
  padding: 20px 22px !important;
}

.owner-hero-copy {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  min-width: 0 !important;
}

.owner-hero-copy h2 {
  margin: 0 0 4px !important;
  font-size: 22px !important;
  line-height: 1.12 !important;
}

.owner-hero-copy p {
  margin: 0 !important;
  color: rgba(38, 27, 22, .62) !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
}

.owner-hero-icon,
.owner-status-pill {
  flex: 0 0 auto !important;
}

.owner-hero-icon {
  width: 46px !important;
  height: 46px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 16px !important;
  color: #9f0d1a !important;
  background: rgba(159, 13, 26, .08) !important;
}

.owner-status-pill {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 34px !important;
  padding: 0 14px !important;
  border-radius: 999px !important;
  color: #167445 !important;
  background: rgba(22, 116, 69, .10) !important;
  font-size: 12px !important;
  font-weight: 900 !important;
}

.owner-summary-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 14px !important;
}

.owner-summary-card {
  min-height: 92px !important;
  padding: 18px !important;
  display: grid !important;
  align-content: center !important;
  gap: 8px !important;
}

.owner-summary-card strong {
  display: block !important;
  max-width: 100% !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  color: #4a0c21 !important;
  font-size: 24px !important;
  line-height: 1.05 !important;
}

.owner-summary-card span {
  color: rgba(38, 27, 22, .64) !important;
  font-size: 12px !important;
  font-weight: 800 !important;
}

.owner-section-card {
  min-width: 0 !important;
  overflow: hidden !important;
}

.owner-section-card .admin-card-title-row {
  align-items: flex-start !important;
}

.owner-section-card .admin-card-title-row h2 {
  margin: 0 0 4px !important;
  font-size: 18px !important;
}

.owner-section-card .admin-card-title-row p,
.owner-mini-head p {
  margin: 0 !important;
  color: rgba(38, 27, 22, .60) !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
}

.owner-product-picker {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important;
  gap: 10px !important;
  max-height: 360px !important;
  overflow: auto !important;
  padding: 2px 4px 8px !important;
  margin-bottom: 18px !important;
}

.owner-product-choice,
.owner-product-row,
.owner-question-row,
.owner-action-row,
.owner-category-row,
.owner-rule-row,
.owner-log-row {
  box-sizing: border-box !important;
  min-width: 0 !important;
  border: 1px solid rgba(226, 215, 207, .88) !important;
  border-radius: 16px !important;
  background: rgba(255, 255, 255, .72) !important;
}

.owner-product-choice {
  position: relative !important;
  display: grid !important;
  grid-template-columns: 52px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 12px !important;
  min-height: 70px !important;
  padding: 9px 12px !important;
  cursor: pointer !important;
}

.owner-product-choice.selected {
  border-color: rgba(159, 13, 26, .36) !important;
  background: rgba(159, 13, 26, .055) !important;
}

.owner-product-choice input {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

.owner-product-choice img,
.owner-product-row img {
  display: block !important;
  width: 52px !important;
  height: 52px !important;
  min-width: 52px !important;
  min-height: 52px !important;
  max-width: 52px !important;
  max-height: 52px !important;
  object-fit: cover !important;
  object-position: center !important;
  border-radius: 14px !important;
  background: #f2ebe6 !important;
}

.owner-product-choice span,
.owner-product-row span,
.owner-question-row span,
.owner-action-row span,
.owner-category-row span,
.owner-rule-row span {
  min-width: 0 !important;
  display: grid !important;
  gap: 3px !important;
}

.owner-product-choice strong,
.owner-product-row strong,
.owner-question-row strong,
.owner-action-row strong,
.owner-category-row strong,
.owner-rule-row strong {
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  color: #1f1714 !important;
  font-size: 13px !important;
  line-height: 1.2 !important;
}

.owner-product-choice em,
.owner-product-row em,
.owner-question-row em,
.owner-action-row em,
.owner-category-row em,
.owner-rule-row em,
.owner-log-row em,
.owner-rule-row b {
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  color: rgba(38, 27, 22, .58) !important;
  font-size: 11px !important;
  font-style: normal !important;
  line-height: 1.3 !important;
}

.owner-two-col,
.owner-grid-two {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 16px !important;
  align-items: start !important;
}

.owner-soft-panel {
  min-width: 0 !important;
  padding: 16px !important;
  border: 1px solid rgba(226, 215, 207, .88) !important;
  border-radius: 18px !important;
  background: rgba(255, 251, 247, .72) !important;
}

.owner-mini-head h3 {
  margin: 0 0 4px !important;
  font-size: 15px !important;
}

.owner-prompt-list {
  display: grid !important;
  gap: 8px !important;
  margin-top: 12px !important;
}

.owner-prompt-list label {
  display: grid !important;
  grid-template-columns: 34px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 8px !important;
}

.owner-prompt-list label span {
  color: #9f0d1a !important;
  font-size: 11px !important;
  font-weight: 900 !important;
}

.owner-prompt-list input,
.owner-test-inline input,
.owner-rule-form input,
.owner-rule-form textarea,
.owner-rule-form select,
.owner-advanced-box textarea {
  box-sizing: border-box !important;
  width: 100% !important;
  min-width: 0 !important;
}

.owner-test-inline {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 10px !important;
  margin-top: 12px !important;
}

.owner-test-result {
  margin-top: 12px !important;
  padding: 12px !important;
  border: 1px solid rgba(159, 13, 26, .18) !important;
  border-radius: 15px !important;
  background: rgba(159, 13, 26, .045) !important;
}

.owner-test-result strong,
.owner-test-result p {
  display: block !important;
  margin: 0 !important;
}

.owner-test-result p {
  margin-top: 6px !important;
  color: rgba(38, 27, 22, .70) !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
}

.owner-test-result div {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 6px !important;
  margin-top: 10px !important;
}

.owner-test-result div span {
  display: inline-flex !important;
  padding: 5px 8px !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.88) !important;
  color: #4a0c21 !important;
  font-size: 11px !important;
  font-weight: 800 !important;
}

.owner-rule-form {
  display: grid !important;
  gap: 12px !important;
}

.owner-rule-list,
.owner-question-list,
.owner-log-list,
.owner-action-list,
.owner-product-list,
.owner-category-list {
  display: grid !important;
  gap: 10px !important;
}

.owner-rule-row,
.owner-question-row,
.owner-product-row,
.owner-category-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 12px !important;
}

.owner-product-row {
  grid-template-columns: 52px minmax(0, 1fr) auto !important;
}

.owner-action-row {
  display: grid !important;
  grid-template-columns: 34px minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 12px !important;
}

.owner-action-row > b {
  width: 34px !important;
  height: 34px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 12px !important;
  color: #9f0d1a !important;
  background: rgba(159, 13, 26, .08) !important;
  font-size: 13px !important;
}

.owner-log-row {
  padding: 12px !important;
  display: grid !important;
  gap: 6px !important;
}

.owner-log-row p {
  margin: 0 !important;
  color: rgba(38, 27, 22, .70) !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
}

.owner-advanced-box {
  margin-top: 16px !important;
  border: 1px solid rgba(226, 215, 207, .88) !important;
  border-radius: 16px !important;
  background: rgba(255, 251, 247, .72) !important;
  overflow: hidden !important;
}

.owner-advanced-box > summary {
  cursor: pointer !important;
  padding: 14px 16px !important;
  color: #4a0c21 !important;
  font-size: 13px !important;
  font-weight: 900 !important;
}

.owner-advanced-box > *:not(summary) {
  margin-left: 16px !important;
  margin-right: 16px !important;
}

.admin-analytics-owner .owner-product-list,
.admin-barista-owner .owner-product-picker {
  scrollbar-width: thin !important;
}

.admin-analytics-owner .owner-product-list img,
.admin-barista-owner .owner-product-picker img {
  max-width: 52px !important;
}

@media (max-width: 1180px) {
  .owner-summary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .owner-two-col,
  .owner-grid-two {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 768px) {
  .owner-hero-card {
    align-items: flex-start !important;
    padding: 16px !important;
  }

  .owner-summary-grid {
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
  }

  .owner-summary-card {
    min-height: 78px !important;
    padding: 14px !important;
  }

  .owner-summary-card strong {
    font-size: 18px !important;
  }

  .owner-product-picker {
    grid-template-columns: 1fr !important;
    max-height: 320px !important;
  }

  .owner-action-row,
  .owner-product-row,
  .owner-question-row,
  .owner-category-row,
  .owner-rule-row {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .owner-product-row {
    grid-template-columns: 52px minmax(0, 1fr) !important;
  }

  .owner-product-row .secondary-btn,
  .owner-action-row .secondary-btn,
  .owner-question-row .secondary-btn {
    width: 100% !important;
  }
}


/* v132 - Barista seçimleri ve menüde aranan ürün analizi */
.owner-product-choice {
  user-select: none !important;
  cursor: pointer !important;
}

.owner-product-choice * {
  pointer-events: none !important;
}

.owner-product-choice input {
  pointer-events: none !important;
}

.owner-product-choice.selected {
  border-color: rgba(159, 13, 26, .44) !important;
  background: rgba(159, 13, 26, .075) !important;
  box-shadow: inset 0 0 0 1px rgba(159, 13, 26, .12) !important;
}

.owner-product-choice.selected::after {
  content: "✓";
  position: absolute !important;
  top: 8px !important;
  right: 10px !important;
  width: 20px !important;
  height: 20px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 999px !important;
  color: #fff !important;
  background: #4a0c21 !important;
  font-size: 12px !important;
  font-weight: 900 !important;
}

.owner-demand-card {
  border-color: rgba(159, 13, 26, .18) !important;
  background: rgba(255, 252, 249, .86) !important;
}

.owner-demand-list {
  display: grid !important;
  gap: 10px !important;
}

.owner-demand-row {
  display: grid !important;
  grid-template-columns: 34px minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 12px !important;
  border: 1px solid rgba(226, 215, 207, .88) !important;
  border-radius: 16px !important;
  background: rgba(255, 255, 255, .76) !important;
}

.owner-demand-row > b {
  width: 34px !important;
  height: 34px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 12px !important;
  color: #fff !important;
  background: #4a0c21 !important;
  font-size: 13px !important;
}

.owner-demand-row span {
  min-width: 0 !important;
  display: grid !important;
  gap: 3px !important;
}

.owner-demand-row strong {
  min-width: 0 !important;
  color: #4a0c21 !important;
  font-size: 15px !important;
  line-height: 1.2 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.owner-demand-row em {
  min-width: 0 !important;
  color: rgba(38, 27, 22, .62) !important;
  font-size: 11px !important;
  font-style: normal !important;
  line-height: 1.35 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

@media (max-width: 768px) {
  .owner-demand-row {
    grid-template-columns: 34px minmax(0, 1fr) !important;
  }

  .owner-demand-row .secondary-btn {
    grid-column: 1 / -1 !important;
    width: 100% !important;
  }
}


/* v133 - Admin sol menü aktif ikon ve logo merkezleme düzeltmesi */
.admin-sidebar-brand {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  text-align: center !important;
}

.admin-sidebar-brand .brand-mark,
.admin-sidebar-brand .brand-mark-dark {
  width: 100% !important;
  max-width: 132px !important;
  margin: 0 auto !important;
  display: grid !important;
  justify-items: center !important;
  align-items: center !important;
  text-align: center !important;
  transform: translateX(4px) !important;
}

.admin-sidebar-brand .brand-logo-img {
  display: block !important;
  margin: 0 auto !important;
  object-fit: contain !important;
  object-position: center center !important;
  transform: translateX(2px) !important;
}

.admin-sidebar-brand .brand-word {
  display: block !important;
  width: 100% !important;
  margin: 8px auto 0 !important;
  text-align: center !important;
  transform: translateX(2px) !important;
}

.admin-sidebar .admin-nav-btn.active,
.admin-sidebar .admin-nav-btn[aria-current="page"],
.admin-sidebar .admin-nav-btn:focus-visible {
  border-color: rgba(74, 12, 33, .24) !important;
  background: rgba(74, 12, 33, .075) !important;
  color: #4a0c21 !important;
  box-shadow: inset 0 0 0 1px rgba(74, 12, 33, .08) !important;
}

.admin-sidebar .admin-nav-btn.active .admin-nav-ico,
.admin-sidebar .admin-nav-btn[aria-current="page"] .admin-nav-ico,
.admin-sidebar .admin-nav-btn:focus-visible .admin-nav-ico {
  background: #4a0c21 !important;
  color: #fff !important;
  opacity: 1 !important;
  visibility: visible !important;
  box-shadow: 0 10px 20px rgba(74, 12, 33, .16) !important;
}

.admin-sidebar .admin-nav-btn.active .admin-nav-ico svg,
.admin-sidebar .admin-nav-btn[aria-current="page"] .admin-nav-ico svg,
.admin-sidebar .admin-nav-btn:focus-visible .admin-nav-ico svg {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  color: #fff !important;
  stroke: currentColor !important;
}

.admin-sidebar .admin-nav-btn.active .admin-nav-label,
.admin-sidebar .admin-nav-btn[aria-current="page"] .admin-nav-label,
.admin-sidebar .admin-nav-btn:focus-visible .admin-nav-label {
  color: #4a0c21 !important;
  opacity: 1 !important;
}

.admin-sidebar .admin-nav-btn.active .admin-nav-dot,
.admin-sidebar .admin-nav-btn[aria-current="page"] .admin-nav-dot {
  display: block !important;
  background: #4a0c21 !important;
  opacity: 1 !important;
}

@media (max-width: 768px) {
  .admin-sidebar-brand .brand-mark,
  .admin-sidebar-brand .brand-mark-dark {
    transform: translateX(3px) !important;
  }

  .admin-sidebar-brand .brand-logo-img,
  .admin-sidebar-brand .brand-word {
    transform: translateX(2px) !important;
  }
}


/* v134 - Admin ürün listesi kaydırma performans düzeltmesi
   Sadece Ürün Listesi tablo/kaydırma alanına odaklanır. */
.product-table-card {
  contain: layout paint !important;
  overflow: hidden !important;
}

.product-table-list {
  max-height: min(64vh, 660px) !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  overscroll-behavior: contain !important;
  scrollbar-gutter: stable !important;
  -webkit-overflow-scrolling: touch !important;
  contain: layout paint style !important;
  will-change: scroll-position !important;
  transform: translateZ(0) !important;
  backface-visibility: hidden !important;
}

.product-table-row {
  contain: layout paint !important;
  content-visibility: auto !important;
  contain-intrinsic-size: 76px !important;
  min-height: 76px !important;
  transform: none !important;
  transition: background-color .12s ease, border-color .12s ease !important;
  box-shadow: none !important;
  will-change: auto !important;
}

.product-table-row:hover {
  transform: none !important;
  box-shadow: none !important;
}

.product-table-row::before,
.product-table-row::after {
  content: none !important;
  display: none !important;
}

.product-table-main img,
.product-table-row img {
  transform: translateZ(0) !important;
  backface-visibility: hidden !important;
  will-change: auto !important;
}

.product-table-row .secondary-btn,
.product-table-row .danger-btn,
.product-table-row button,
.product-table-row .product-more-actions summary {
  transition: background-color .12s ease, border-color .12s ease, color .12s ease !important;
  transform: none !important;
}

.product-table-row .secondary-btn:hover,
.product-table-row .danger-btn:hover,
.product-table-row button:hover,
.product-table-row .product-more-actions summary:hover {
  transform: none !important;
}

.product-table-card .admin-footer-actions,
.product-table-card .pagination-row,
.product-table-card .product-pagination {
  contain: layout paint !important;
}

@media (max-width: 768px) {
  .product-table-list {
    max-height: min(58vh, 560px) !important;
  }

  .product-table-row {
    contain-intrinsic-size: 98px !important;
    min-height: 98px !important;
  }
}


/* v136 - Analiz ekranı normal menü arama istatistikleri */
.analytics-summary-grid {
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
}

.owner-search-card {
  border-color: rgba(74, 12, 33, .12) !important;
}

.owner-search-list,
.owner-search-log-list {
  display: grid !important;
  gap: 10px !important;
}

.owner-search-row {
  display: grid !important;
  grid-template-columns: 34px minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 12px !important;
  border: 1px solid rgba(226, 215, 207, .88) !important;
  border-radius: 16px !important;
  background: rgba(255,255,255,.76) !important;
}

.owner-search-row > b {
  width: 34px !important;
  height: 34px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 12px !important;
  color: #4a0c21 !important;
  background: rgba(74, 12, 33, .08) !important;
  font-size: 13px !important;
  font-weight: 900 !important;
}

.owner-search-row span {
  min-width: 0 !important;
  display: grid !important;
  gap: 3px !important;
}

.owner-search-row strong {
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  color: #1f1714 !important;
  font-size: 14px !important;
  line-height: 1.2 !important;
}

.owner-search-row em {
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  color: rgba(38, 27, 22, .60) !important;
  font-size: 11px !important;
  font-style: normal !important;
  line-height: 1.35 !important;
}

.owner-search-row small {
  display: inline-flex !important;
  justify-content: center !important;
  min-width: 76px !important;
  padding: 7px 10px !important;
  border-radius: 999px !important;
  color: #167445 !important;
  background: rgba(22, 116, 69, .10) !important;
  font-size: 11px !important;
  font-weight: 900 !important;
}

.owner-search-row.no-result {
  border-color: rgba(159, 13, 26, .22) !important;
  background: rgba(159, 13, 26, .045) !important;
}

.owner-search-row.no-result > b,
.owner-search-row.no-result small {
  color: #fff !important;
  background: #4a0c21 !important;
}

@media (max-width: 1180px) {
  .analytics-summary-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 768px) {
  .analytics-summary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .owner-search-row {
    grid-template-columns: 34px minmax(0, 1fr) !important;
  }

  .owner-search-row small {
    grid-column: 1 / -1 !important;
    width: 100% !important;
  }
}


/* v138 - Popup image-only: fotoğraf dışı arka plan/yan boşlukları kaldır */
.promo-popup-card.promo-popup-card--image-only {
  width: min(88vw, calc((100vh - 96px) * .5625), 520px) !important;
  max-width: min(88vw, 520px) !important;
  height: auto !important;
  max-height: calc(100vh - 96px) !important;
  aspect-ratio: 9 / 16 !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 24px !important;
  background: transparent !important;
  box-shadow: 0 28px 80px rgba(0, 0, 0, .34) !important;
}

.promo-popup-card.promo-popup-card--image-only .promo-popup-image {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  min-width: 100% !important;
  min-height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  border: 0 !important;
  border-radius: inherit !important;
  background: transparent !important;
}

.promo-popup-card.promo-popup-card--image-only .promo-popup-cta {
  z-index: 3 !important;
}

.promo-popup-card.promo-popup-card--image-only .promo-popup-close {
  z-index: 4 !important;
}

@media (max-width: 768px) {
  .promo-popup {
    align-items: center !important;
    padding: max(16px, env(safe-area-inset-top, 0px)) 12px calc(16px + env(safe-area-inset-bottom, 0px)) !important;
  }

  .promo-popup-card.promo-popup-card--image-only {
    width: min(88vw, calc((100vh - 92px) * .5625), 430px) !important;
    max-height: calc(100vh - 92px) !important;
    margin-top: 0 !important;
    border-radius: 22px !important;
  }

  .promo-popup-card.promo-popup-card--image-only .promo-popup-close {
    top: -15px !important;
    right: -12px !important;
  }
}


/* v139 - Popup kapatma butonu görünürlük düzeltmesi */
.promo-popup-card.promo-popup-card--image-only {
  overflow: visible !important;
}

.promo-popup-card.promo-popup-card--image-only .promo-popup-image {
  overflow: hidden !important;
  border-radius: 24px !important;
}

.promo-popup-card.promo-popup-card--image-only .promo-popup-close {
  position: absolute !important;
  top: -20px !important;
  right: -20px !important;
  width: 58px !important;
  height: 58px !important;
  min-width: 58px !important;
  min-height: 58px !important;
  display: grid !important;
  place-items: center !important;
  border: 3px solid rgba(52, 52, 52, .9) !important;
  border-radius: 999px !important;
  background: #fff !important;
  color: #111 !important;
  font-size: 32px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  box-shadow: 0 14px 30px rgba(0, 0, 0, .22) !important;
  z-index: 10 !important;
  clip-path: none !important;
}

@media (max-width: 768px) {
  .promo-popup-card.promo-popup-card--image-only {
    overflow: visible !important;
  }

  .promo-popup-card.promo-popup-card--image-only .promo-popup-image {
    border-radius: 22px !important;
  }

  .promo-popup-card.promo-popup-card--image-only .promo-popup-close {
    top: -18px !important;
    right: -14px !important;
    width: 54px !important;
    height: 54px !important;
    min-width: 54px !important;
    min-height: 54px !important;
    font-size: 30px !important;
  }
}


/* v140 - Yeni ürün kategori çerçevesi: fotoğraf içinde beyaz halka yok, süre 3 gün */
.category-reference-item.has-new-product .category-reference-icon::after,
.category-reference-item.has-new-product .category-reference-vector::after,
.home-category-pill.has-new-product .home-category-icon::after,
.home-category-item.has-new-product .home-category-icon::after,
.category-card.has-new-product .category-card-icon::after {
  content: none !important;
  display: none !important;
  border: 0 !important;
  box-shadow: none !important;
}

.category-reference-item.has-new-product .category-reference-icon,
.category-reference-item.has-new-product .category-reference-vector,
.home-category-pill.has-new-product .home-category-icon,
.home-category-item.has-new-product .home-category-icon,
.category-card.has-new-product .category-card-icon {
  overflow: hidden !important;
}

.category-reference-item.has-new-product .category-reference-icon .icon-media,
.category-reference-item.has-new-product .category-reference-vector .icon-media,
.home-category-pill.has-new-product .home-category-icon .icon-media,
.home-category-item.has-new-product .home-category-icon .icon-media,
.category-card.has-new-product .category-card-icon .icon-media {
  border-radius: inherit !important;
  overflow: hidden !important;
}


/* v142 - Web ana sayfa "Bugün Sana Özel" kart hizalama düzeltmesi */
@media (min-width: 769px) {
  .home-panel .special-row {
    align-items: stretch !important;
  }

  .home-panel .special-card {
    height: 100% !important;
    min-height: 128px !important;
    display: block !important;
  }

  .home-panel .special-card button {
    height: 100% !important;
    min-height: 128px !important;
    display: grid !important;
    grid-template-columns: 92px minmax(0, 1fr) 38px !important;
    align-items: center !important;
  }

  .home-panel .special-card span {
    min-width: 0 !important;
    height: 100% !important;
    min-height: 92px !important;
    display: grid !important;
    grid-template-rows: auto 1fr auto !important;
    align-content: start !important;
  }

  .home-panel .special-card strong {
    min-height: 21px !important;
    display: -webkit-box !important;
    overflow: hidden !important;
    -webkit-line-clamp: 1 !important;
    -webkit-box-orient: vertical !important;
  }

  .home-panel .special-card em {
    min-height: 35px !important;
    max-height: 35px !important;
    display: -webkit-box !important;
    overflow: hidden !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
  }

  .home-panel .special-card .price {
    align-self: end !important;
    margin-top: 8px !important;
  }

  .home-panel .special-card i {
    align-self: center !important;
    justify-self: center !important;
  }
}

@media (min-width: 1180px) {
  .home-panel .special-card button {
    min-height: 132px !important;
  }

  .home-panel .special-card {
    min-height: 132px !important;
  }
}

/* v125 - ana sayfa kategori ikonlarını web görünümde tam daire kilitle */
@media (min-width: 769px) {
  .home-menu-categories .home-category-pill,
  .home-category-strip .home-category-pill,
  .home-category-pill {
    align-items: center !important;
  }

  .home-menu-categories .home-category-icon,
  .home-category-strip .home-category-icon,
  .home-category-pill .home-category-icon {
    display: grid !important;
    place-items: center !important;
    width: 72px !important;
    height: 72px !important;
    min-width: 72px !important;
    min-height: 72px !important;
    max-width: 72px !important;
    max-height: 72px !important;
    flex: 0 0 72px !important;
    aspect-ratio: 1 / 1 !important;
    border-radius: 50% !important;
    overflow: hidden !important;
    clip-path: circle(50% at 50% 50%) !important;
  }

  .home-menu-categories .home-category-pill.active .home-category-icon,
  .home-category-strip .home-category-pill.active .home-category-icon,
  .home-category-pill.active .home-category-icon {
    width: 72px !important;
    height: 72px !important;
    min-width: 72px !important;
    min-height: 72px !important;
    max-width: 72px !important;
    max-height: 72px !important;
    flex-basis: 72px !important;
    aspect-ratio: 1 / 1 !important;
    border-radius: 50% !important;
    clip-path: circle(50% at 50% 50%) !important;
  }

  .home-menu-categories .home-category-icon .icon-media,
  .home-category-strip .home-category-icon .icon-media,
  .home-category-pill .home-category-icon .icon-media,
  .home-menu-categories .home-category-icon img,
  .home-category-strip .home-category-icon img,
  .home-category-pill .home-category-icon img {
    width: 100% !important;
    height: 100% !important;
    min-width: 100% !important;
    min-height: 100% !important;
    border-radius: inherit !important;
  }
}


/* v126 - ana sayfa kategori ikonlarını biraz büyüt ve aralıkları aç */
@media (min-width: 769px) {
  .home-menu-categories .home-category-strip,
  .home-category-strip {
    gap: clamp(28px, 2.6vw, 44px) !important;
    padding-left: 28px !important;
    padding-right: 28px !important;
    padding-bottom: 30px !important;
  }

  .home-menu-categories .home-category-pill,
  .home-category-strip .home-category-pill,
  .home-category-pill {
    flex: 0 0 126px !important;
    width: 126px !important;
    min-width: 126px !important;
    max-width: 126px !important;
    gap: 12px !important;
  }

  .home-menu-categories .home-category-icon,
  .home-category-strip .home-category-icon,
  .home-category-pill .home-category-icon {
    width: 82px !important;
    height: 82px !important;
    min-width: 82px !important;
    min-height: 82px !important;
    max-width: 82px !important;
    max-height: 82px !important;
    flex-basis: 82px !important;
    aspect-ratio: 1 / 1 !important;
    border-radius: 50% !important;
    clip-path: circle(50% at 50% 50%) !important;
  }

  .home-menu-categories .home-category-pill.active .home-category-icon,
  .home-category-strip .home-category-pill.active .home-category-icon,
  .home-category-pill.active .home-category-icon {
    width: 82px !important;
    height: 82px !important;
    min-width: 82px !important;
    min-height: 82px !important;
    max-width: 82px !important;
    max-height: 82px !important;
    flex-basis: 82px !important;
    aspect-ratio: 1 / 1 !important;
    border-radius: 50% !important;
    clip-path: circle(50% at 50% 50%) !important;
  }

  .home-menu-categories .home-category-pill > span:not(.home-category-icon),
  .home-category-strip .home-category-pill > span:not(.home-category-icon),
  .home-category-pill > span:not(.home-category-icon) {
    max-width: 126px !important;
    font-size: 12.5px !important;
    line-height: 1.12 !important;
  }
}


/* v127 - ana sayfa kategori yuvarlaklarını bir kademe daha büyüt */
@media (min-width: 769px) {
  .home-menu-categories .home-category-strip,
  .home-category-strip {
    gap: clamp(30px, 2.8vw, 48px) !important;
    padding-left: 28px !important;
    padding-right: 28px !important;
    padding-bottom: 32px !important;
  }

  .home-menu-categories .home-category-pill,
  .home-category-strip .home-category-pill,
  .home-category-pill {
    flex: 0 0 136px !important;
    width: 136px !important;
    min-width: 136px !important;
    max-width: 136px !important;
    gap: 12px !important;
  }

  .home-menu-categories .home-category-icon,
  .home-category-strip .home-category-icon,
  .home-category-pill .home-category-icon,
  .home-menu-categories .home-category-pill.active .home-category-icon,
  .home-category-strip .home-category-pill.active .home-category-icon,
  .home-category-pill.active .home-category-icon {
    width: 96px !important;
    height: 96px !important;
    min-width: 96px !important;
    min-height: 96px !important;
    max-width: 96px !important;
    max-height: 96px !important;
    flex: 0 0 96px !important;
    aspect-ratio: 1 / 1 !important;
    border-radius: 50% !important;
    clip-path: circle(50% at 50% 50%) !important;
    overflow: hidden !important;
  }

  .home-menu-categories .home-category-icon .icon-media,
  .home-category-strip .home-category-icon .icon-media,
  .home-category-pill .home-category-icon .icon-media,
  .home-menu-categories .home-category-icon .icon-media img,
  .home-category-strip .home-category-icon .icon-media img,
  .home-category-pill .home-category-icon .icon-media img {
    width: 100% !important;
    height: 100% !important;
    min-width: 100% !important;
    min-height: 100% !important;
    border-radius: inherit !important;
  }

  .home-menu-categories .home-category-pill > span:not(.home-category-icon),
  .home-category-strip .home-category-pill > span:not(.home-category-icon),
  .home-category-pill > span:not(.home-category-icon) {
    max-width: 136px !important;
    font-size: 12.5px !important;
    line-height: 1.1 !important;
  }
}

/* v128 - ana sayfa kategori yuvarlaklarını webte bir kademe daha büyüt */
@media (min-width: 769px) {
  .home-menu-categories .home-category-strip,
  .home-category-strip {
    gap: clamp(30px, 2.7vw, 46px) !important;
    padding-left: 24px !important;
    padding-right: 24px !important;
    padding-bottom: 32px !important;
  }

  .home-menu-categories .home-category-pill,
  .home-category-strip .home-category-pill,
  .home-category-pill {
    flex: 0 0 144px !important;
    width: 144px !important;
    min-width: 144px !important;
    max-width: 144px !important;
    gap: 12px !important;
  }

  .home-menu-categories .home-category-icon,
  .home-category-strip .home-category-icon,
  .home-category-pill .home-category-icon,
  .home-menu-categories .home-category-pill.active .home-category-icon,
  .home-category-strip .home-category-pill.active .home-category-icon,
  .home-category-pill.active .home-category-icon {
    width: 108px !important;
    height: 108px !important;
    min-width: 108px !important;
    min-height: 108px !important;
    max-width: 108px !important;
    max-height: 108px !important;
    flex: 0 0 108px !important;
    aspect-ratio: 1 / 1 !important;
    border-radius: 50% !important;
    clip-path: circle(50% at 50% 50%) !important;
    overflow: hidden !important;
  }

  .home-menu-categories .home-category-pill > span:not(.home-category-icon),
  .home-category-strip .home-category-pill > span:not(.home-category-icon),
  .home-category-pill > span:not(.home-category-icon) {
    max-width: 144px !important;
    font-size: 12.5px !important;
    line-height: 1.1 !important;
  }
}


/* v129 - FINAL: ana sayfa kategori görselleri tam daire + daha büyük */
@media (min-width: 769px) {
  .home-menu-categories .home-category-strip,
  .home-category-strip,
  section.home-menu-categories .home-category-strip {
    gap: clamp(34px, 3vw, 54px) !important;
    padding-left: 28px !important;
    padding-right: 28px !important;
  }

  .home-menu-categories .home-category-pill,
  .home-category-strip .home-category-pill,
  .home-category-pill {
    flex: 0 0 148px !important;
    width: 148px !important;
    min-width: 148px !important;
    max-width: 148px !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 12px !important;
  }

  .home-menu-categories .home-category-icon,
  .home-category-strip .home-category-icon,
  .home-category-pill .home-category-icon {
    box-sizing: border-box !important;
    display: block !important;
    position: relative !important;
    width: 112px !important;
    height: 112px !important;
    min-width: 112px !important;
    min-height: 112px !important;
    max-width: 112px !important;
    max-height: 112px !important;
    flex: 0 0 112px !important;
    aspect-ratio: 1 / 1 !important;
    border-radius: 9999px !important;
    overflow: hidden !important;
    clip-path: circle(50% at 50% 50%) !important;
  }

  .home-menu-categories .home-category-pill.active .home-category-icon,
  .home-category-strip .home-category-pill.active .home-category-icon,
  .home-category-pill.active .home-category-icon {
    width: 112px !important;
    height: 112px !important;
    min-width: 112px !important;
    min-height: 112px !important;
    max-width: 112px !important;
    max-height: 112px !important;
    flex: 0 0 112px !important;
    aspect-ratio: 1 / 1 !important;
    border-radius: 9999px !important;
    overflow: hidden !important;
    clip-path: circle(50% at 50% 50%) !important;
  }

  .home-menu-categories .home-category-icon .icon-media,
  .home-category-strip .home-category-icon .icon-media,
  .home-category-pill .home-category-icon .icon-media {
    box-sizing: border-box !important;
    display: block !important;
    position: absolute !important;
    inset: 0 !important;
    width: 112px !important;
    height: 112px !important;
    min-width: 112px !important;
    min-height: 112px !important;
    max-width: 112px !important;
    max-height: 112px !important;
    aspect-ratio: 1 / 1 !important;
    border-radius: 9999px !important;
    overflow: hidden !important;
    clip-path: circle(50% at 50% 50%) !important;
  }

  .home-menu-categories .home-category-icon .icon-media img,
  .home-category-strip .home-category-icon .icon-media img,
  .home-category-pill .home-category-icon .icon-media img,
  .home-menu-categories .home-category-icon > img,
  .home-category-strip .home-category-icon > img,
  .home-category-pill .home-category-icon > img {
    box-sizing: border-box !important;
    display: block !important;
    position: absolute !important;
    inset: 0 !important;
    top: 0 !important;
    left: 0 !important;
    width: 112px !important;
    height: 112px !important;
    min-width: 112px !important;
    min-height: 112px !important;
    max-width: 112px !important;
    max-height: 112px !important;
    aspect-ratio: 1 / 1 !important;
    object-fit: cover !important;
    object-position: center center !important;
    border-radius: 9999px !important;
    overflow: hidden !important;
    clip-path: circle(50% at 50% 50%) !important;
    transform: none !important;
    translate: none !important;
  }

  .home-menu-categories .home-category-pill > span:not(.home-category-icon),
  .home-category-strip .home-category-pill > span:not(.home-category-icon),
  .home-category-pill > span:not(.home-category-icon) {
    max-width: 148px !important;
    font-size: 12.5px !important;
    line-height: 1.1 !important;
  }
}

/* v130 - ana sayfa kategoriler: ikinci referans görseldeki ikon boyutuna dön */
@media (min-width: 769px) {
  .home-menu-categories .home-category-strip,
  .home-category-strip,
  section.home-menu-categories .home-category-strip {
    gap: clamp(18px, 2vw, 30px) !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
    padding-bottom: 28px !important;
  }

  .home-menu-categories .home-category-pill,
  .home-category-strip .home-category-pill,
  .home-category-pill {
    flex: 0 0 112px !important;
    width: 112px !important;
    min-width: 112px !important;
    max-width: 112px !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 10px !important;
  }

  .home-menu-categories .home-category-icon,
  .home-category-strip .home-category-icon,
  .home-category-pill .home-category-icon,
  .home-menu-categories .home-category-pill.active .home-category-icon,
  .home-category-strip .home-category-pill.active .home-category-icon,
  .home-category-pill.active .home-category-icon {
    box-sizing: border-box !important;
    display: block !important;
    position: relative !important;
    width: 74px !important;
    height: 74px !important;
    min-width: 74px !important;
    min-height: 74px !important;
    max-width: 74px !important;
    max-height: 74px !important;
    flex: 0 0 74px !important;
    aspect-ratio: 1 / 1 !important;
    border-radius: 9999px !important;
    overflow: hidden !important;
    clip-path: circle(50% at 50% 50%) !important;
  }

  .home-menu-categories .home-category-icon .icon-media,
  .home-category-strip .home-category-icon .icon-media,
  .home-category-pill .home-category-icon .icon-media {
    box-sizing: border-box !important;
    display: block !important;
    position: absolute !important;
    inset: 0 !important;
    width: 74px !important;
    height: 74px !important;
    min-width: 74px !important;
    min-height: 74px !important;
    max-width: 74px !important;
    max-height: 74px !important;
    aspect-ratio: 1 / 1 !important;
    border-radius: 9999px !important;
    overflow: hidden !important;
    clip-path: circle(50% at 50% 50%) !important;
  }

  .home-menu-categories .home-category-icon .icon-media img,
  .home-category-strip .home-category-icon .icon-media img,
  .home-category-pill .home-category-icon .icon-media img,
  .home-menu-categories .home-category-icon > img,
  .home-category-strip .home-category-icon > img,
  .home-category-pill .home-category-icon > img {
    box-sizing: border-box !important;
    display: block !important;
    position: absolute !important;
    inset: 0 !important;
    top: 0 !important;
    left: 0 !important;
    width: 74px !important;
    height: 74px !important;
    min-width: 74px !important;
    min-height: 74px !important;
    max-width: 74px !important;
    max-height: 74px !important;
    aspect-ratio: 1 / 1 !important;
    object-fit: cover !important;
    object-position: center center !important;
    border-radius: 9999px !important;
    overflow: hidden !important;
    clip-path: circle(50% at 50% 50%) !important;
    transform: none !important;
    translate: none !important;
  }

  .home-menu-categories .home-category-pill > span:not(.home-category-icon),
  .home-category-strip .home-category-pill > span:not(.home-category-icon),
  .home-category-pill > span:not(.home-category-icon) {
    max-width: 112px !important;
    font-size: 12px !important;
    line-height: 1.12 !important;
  }
}

/* v131 - web kategori ikonları: hepsi aynı boyut + tam daire kilidi */
@media (min-width: 769px) {
  .home-menu-categories .home-category-icon,
  .home-category-strip .home-category-icon,
  .home-category-pill .home-category-icon,
  .home-category-pill.active .home-category-icon,
  .home-category-item .home-category-icon,
  .home-category-item.active .home-category-icon {
    box-sizing: border-box !important;
    display: block !important;
    position: relative !important;
    padding: 0 !important;
    margin: 0 auto !important;
    width: 74px !important;
    height: 74px !important;
    min-width: 74px !important;
    min-height: 74px !important;
    max-width: 74px !important;
    max-height: 74px !important;
    flex: 0 0 74px !important;
    aspect-ratio: 1 / 1 !important;
    border-radius: 50% !important;
    overflow: hidden !important;
    clip-path: circle(50% at 50% 50%) !important;
  }

  .home-menu-categories .home-category-icon > .icon-media,
  .home-category-strip .home-category-icon > .icon-media,
  .home-category-pill .home-category-icon > .icon-media,
  .home-category-item .home-category-icon > .icon-media,
  .home-menu-categories .home-category-icon > picture,
  .home-category-strip .home-category-icon > picture,
  .home-category-pill .home-category-icon > picture,
  .home-category-item .home-category-icon > picture,
  .home-menu-categories .home-category-icon > img,
  .home-category-strip .home-category-icon > img,
  .home-category-pill .home-category-icon > img,
  .home-category-item .home-category-icon > img {
    box-sizing: border-box !important;
    display: block !important;
    position: absolute !important;
    inset: 0 !important;
    width: 74px !important;
    height: 74px !important;
    min-width: 74px !important;
    min-height: 74px !important;
    max-width: 74px !important;
    max-height: 74px !important;
    aspect-ratio: 1 / 1 !important;
    border-radius: 50% !important;
    overflow: hidden !important;
    clip-path: circle(50% at 50% 50%) !important;
  }

  .home-menu-categories .home-category-icon > .icon-media img,
  .home-category-strip .home-category-icon > .icon-media img,
  .home-category-pill .home-category-icon > .icon-media img,
  .home-category-item .home-category-icon > .icon-media img,
  .home-menu-categories .home-category-icon > picture img,
  .home-category-strip .home-category-icon > picture img,
  .home-category-pill .home-category-icon > picture img,
  .home-category-item .home-category-icon > picture img,
  .home-menu-categories .home-category-icon > img,
  .home-category-strip .home-category-icon > img,
  .home-category-pill .home-category-icon > img,
  .home-category-item .home-category-icon > img {
    box-sizing: border-box !important;
    display: block !important;
    position: absolute !important;
    inset: 0 !important;
    width: 74px !important;
    height: 74px !important;
    min-width: 74px !important;
    min-height: 74px !important;
    max-width: 74px !important;
    max-height: 74px !important;
    aspect-ratio: 1 / 1 !important;
    object-fit: cover !important;
    object-position: center center !important;
    border-radius: 50% !important;
    overflow: hidden !important;
    clip-path: circle(50% at 50% 50%) !important;
    transform: none !important;
    translate: none !important;
  }
}

/* v132 - FINAL LOCK: ana sayfa kategori ikonlarının hepsi tam yuvarlak ve aynı boyut */
@media (min-width: 769px) {
  .home-menu-categories .home-category-pill,
  .home-category-strip .home-category-pill,
  .home-category-pill,
  .home-category-item {
    flex: 0 0 112px !important;
    width: 112px !important;
    min-width: 112px !important;
    max-width: 112px !important;
    gap: 10px !important;
    align-items: center !important;
    justify-content: flex-start !important;
  }

  .home-menu-categories .home-category-icon,
  .home-category-strip .home-category-icon,
  .home-category-pill .home-category-icon,
  .home-category-item .home-category-icon,
  .home-menu-categories .home-category-pill.active .home-category-icon,
  .home-category-strip .home-category-pill.active .home-category-icon,
  .home-category-pill.active .home-category-icon,
  .home-category-item.active .home-category-icon {
    box-sizing: border-box !important;
    display: block !important;
    position: relative !important;
    padding: 0 !important;
    margin: 0 auto !important;
    width: 74px !important;
    height: 74px !important;
    min-width: 74px !important;
    min-height: 74px !important;
    max-width: 74px !important;
    max-height: 74px !important;
    flex: 0 0 74px !important;
    aspect-ratio: 1 / 1 !important;
    border-radius: 50% !important;
    overflow: hidden !important;
    clip-path: circle(50% at 50% 50%) !important;
    -webkit-clip-path: circle(50% at 50% 50%) !important;
    -webkit-mask-image: radial-gradient(circle, #000 99%, transparent 100%) !important;
    mask-image: radial-gradient(circle, #000 99%, transparent 100%) !important;
    box-shadow: none !important;
  }

  .home-menu-categories .home-category-icon::before,
  .home-menu-categories .home-category-icon::after,
  .home-category-strip .home-category-icon::before,
  .home-category-strip .home-category-icon::after,
  .home-category-pill .home-category-icon::before,
  .home-category-pill .home-category-icon::after,
  .home-category-item .home-category-icon::before,
  .home-category-item .home-category-icon::after {
    border-radius: 50% !important;
    clip-path: circle(50% at 50% 50%) !important;
    -webkit-clip-path: circle(50% at 50% 50%) !important;
  }

  .home-menu-categories .home-category-icon > .icon-media,
  .home-category-strip .home-category-icon > .icon-media,
  .home-category-pill .home-category-icon > .icon-media,
  .home-category-item .home-category-icon > .icon-media,
  .home-menu-categories .home-category-icon > picture,
  .home-category-strip .home-category-icon > picture,
  .home-category-pill .home-category-icon > picture,
  .home-category-item .home-category-icon > picture,
  .home-menu-categories .home-category-icon > img,
  .home-category-strip .home-category-icon > img,
  .home-category-pill .home-category-icon > img,
  .home-category-item .home-category-icon > img {
    box-sizing: border-box !important;
    display: block !important;
    position: absolute !important;
    inset: 0 !important;
    width: 74px !important;
    height: 74px !important;
    min-width: 74px !important;
    min-height: 74px !important;
    max-width: 74px !important;
    max-height: 74px !important;
    aspect-ratio: 1 / 1 !important;
    border-radius: 50% !important;
    overflow: hidden !important;
    clip-path: circle(50% at 50% 50%) !important;
    -webkit-clip-path: circle(50% at 50% 50%) !important;
    -webkit-mask-image: radial-gradient(circle, #000 99%, transparent 100%) !important;
    mask-image: radial-gradient(circle, #000 99%, transparent 100%) !important;
  }

  .home-menu-categories .home-category-icon > .icon-media img,
  .home-category-strip .home-category-icon > .icon-media img,
  .home-category-pill .home-category-icon > .icon-media img,
  .home-category-item .home-category-icon > .icon-media img,
  .home-menu-categories .home-category-icon > picture img,
  .home-category-strip .home-category-icon > picture img,
  .home-category-pill .home-category-icon > picture img,
  .home-category-item .home-category-icon > picture img,
  .home-menu-categories .home-category-icon > img,
  .home-category-strip .home-category-icon > img,
  .home-category-pill .home-category-icon > img,
  .home-category-item .home-category-icon > img {
    box-sizing: border-box !important;
    display: block !important;
    position: absolute !important;
    inset: 0 !important;
    width: 74px !important;
    height: 74px !important;
    min-width: 74px !important;
    min-height: 74px !important;
    max-width: 74px !important;
    max-height: 74px !important;
    aspect-ratio: 1 / 1 !important;
    object-fit: cover !important;
    object-position: center center !important;
    border-radius: 50% !important;
    overflow: hidden !important;
    clip-path: circle(50% at 50% 50%) !important;
    -webkit-clip-path: circle(50% at 50% 50%) !important;
    -webkit-mask-image: radial-gradient(circle, #000 99%, transparent 100%) !important;
    mask-image: radial-gradient(circle, #000 99%, transparent 100%) !important;
    transform: none !important;
    translate: none !important;
    box-shadow: none !important;
  }
}

/* v133 - web ana sayfa kategoriler: tek üst çizgi + hepsi aynı boyut, tam yuvarlak ve biraz daha büyük */
@media (min-width: 769px) {
  /* başlığın altındaki tek çizgiyi bırak, ikonlardan önce çıkan ekstra çizgiyi kaldır */
  .home-menu-categories .home-section-head {
    margin: 0 0 10px !important;
    padding: 0 0 16px !important;
    border-bottom: 1px solid var(--lunqa-soft-border) !important;
  }

  .home-menu-categories .home-category-shell,
  .home-menu-categories .home-categories-shell,
  .home-menu-categories .home-category-panel,
  .home-menu-categories .categories-strip-shell,
  .home-menu-categories .home-modern-panel {
    border-top: 0 !important;
    box-shadow: none !important;
  }

  .home-menu-categories .home-category-strip,
  .home-category-strip,
  .home-categories-strip {
    border-top: 0 !important;
    margin-top: 0 !important;
    padding-top: 10px !important;
    gap: clamp(20px, 2vw, 30px) !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
    padding-bottom: 30px !important;
  }

  .home-menu-categories .home-category-pill,
  .home-category-strip .home-category-pill,
  .home-category-pill,
  .home-category-item {
    flex: 0 0 118px !important;
    width: 118px !important;
    min-width: 118px !important;
    max-width: 118px !important;
    gap: 10px !important;
    align-items: center !important;
    justify-content: flex-start !important;
    text-align: center !important;
  }

  .home-menu-categories .home-category-icon,
  .home-category-strip .home-category-icon,
  .home-category-pill .home-category-icon,
  .home-category-item .home-category-icon,
  .home-menu-categories .home-category-pill.active .home-category-icon,
  .home-category-strip .home-category-pill.active .home-category-icon,
  .home-category-pill.active .home-category-icon,
  .home-category-item.active .home-category-icon {
    box-sizing: border-box !important;
    position: relative !important;
    display: block !important;
    width: 82px !important;
    height: 82px !important;
    min-width: 82px !important;
    min-height: 82px !important;
    max-width: 82px !important;
    max-height: 82px !important;
    flex: 0 0 82px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    aspect-ratio: 1 / 1 !important;
    border-radius: 50% !important;
    overflow: hidden !important;
    clip-path: circle(50% at 50% 50%) !important;
    -webkit-clip-path: circle(50% at 50% 50%) !important;
    background: #f4ebe6 !important;
  }

  .home-menu-categories .home-category-pill.active .home-category-icon,
  .home-category-strip .home-category-pill.active .home-category-icon,
  .home-category-pill.active .home-category-icon,
  .home-category-item.active .home-category-icon {
    border: 2px solid #b80f20 !important;
    box-shadow: 0 0 0 3px rgba(184, 15, 32, .10) !important;
  }

  .home-menu-categories .home-category-icon > .icon-media,
  .home-category-strip .home-category-icon > .icon-media,
  .home-category-pill .home-category-icon > .icon-media,
  .home-category-item .home-category-icon > .icon-media,
  .home-menu-categories .home-category-icon > picture,
  .home-category-strip .home-category-icon > picture,
  .home-category-pill .home-category-icon > picture,
  .home-category-item .home-category-icon > picture,
  .home-menu-categories .home-category-icon > img,
  .home-category-strip .home-category-icon > img,
  .home-category-pill .home-category-icon > img,
  .home-category-item .home-category-icon > img {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-width: 100% !important;
    min-height: 100% !important;
    border-radius: 50% !important;
    overflow: hidden !important;
    clip-path: circle(50% at 50% 50%) !important;
    -webkit-clip-path: circle(50% at 50% 50%) !important;
  }

  .home-menu-categories .home-category-icon > .icon-media img,
  .home-category-strip .home-category-icon > .icon-media img,
  .home-category-pill .home-category-icon > .icon-media img,
  .home-category-item .home-category-icon > .icon-media img,
  .home-menu-categories .home-category-icon > picture img,
  .home-category-strip .home-category-icon > picture img,
  .home-category-pill .home-category-icon > picture img,
  .home-category-item .home-category-icon > picture img,
  .home-menu-categories .home-category-icon > img,
  .home-category-strip .home-category-icon > img,
  .home-category-pill .home-category-icon > img,
  .home-category-item .home-category-icon > img,
  .home-menu-categories .home-category-icon > svg,
  .home-category-strip .home-category-icon > svg,
  .home-category-pill .home-category-icon > svg,
  .home-category-item .home-category-icon > svg {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-width: 100% !important;
    min-height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    border-radius: 50% !important;
    overflow: hidden !important;
    clip-path: circle(50% at 50% 50%) !important;
    -webkit-clip-path: circle(50% at 50% 50%) !important;
    transform: none !important;
    translate: none !important;
  }

  .home-menu-categories .home-category-pill > span:not(.home-category-icon),
  .home-category-strip .home-category-pill > span:not(.home-category-icon),
  .home-category-pill > span:not(.home-category-icon),
  .home-category-item > span:not(.home-category-icon) {
    max-width: 118px !important;
    font-size: 12px !important;
    line-height: 1.12 !important;
  }
}


/* assets/css/lunqa-category-web-final-v134.css */
/* LUNQA category web final v134
   Bu dosya kategori ikonlarını webte aynı ölçüde ve tam yuvarlak kilitler. */
:root {
  --lunqa-soft-border: rgba(74, 12, 33, .16);
}

@media (min-width: 769px) {
  /* Kategoriler başlığı altında tek çizgi kalsın */
  .home-menu-categories .home-section-head,
  .home-section.home-menu-categories .home-section-head {
    border-bottom: 1px solid var(--lunqa-soft-border) !important;
    margin: 0 !important;
    padding: 0 0 18px !important;
  }

  /* Başlık ile ikonlar arasında oluşan ikinci çizgiyi kapat */
  .home-menu-categories .home-category-strip,
  .home-section.home-menu-categories .home-category-strip,
  .home-category-strip,
  .home-categories-strip,
  .categories-strip {
    border-top: 0 !important;
    box-shadow: none !important;
  }

  .home-menu-categories .home-category-strip::before,
  .home-menu-categories .home-category-strip::after,
  .home-section.home-menu-categories .home-category-strip::before,
  .home-section.home-menu-categories .home-category-strip::after,
  .home-category-strip::before,
  .home-category-strip::after,
  .home-categories-strip::before,
  .home-categories-strip::after,
  .categories-strip::before,
  .categories-strip::after {
    display: none !important;
    content: none !important;
    border: 0 !important;
  }

  /* Şerit yerleşimi */
  .home-menu-categories .home-category-strip,
  .home-section.home-menu-categories .home-category-strip,
  .home-category-strip {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    gap: clamp(22px, 2vw, 34px) !important;
    width: 100% !important;
    padding: 16px 18px 32px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
  }

  /* Her kategori aynı kutu ölçüsünde */
  .home-menu-categories .home-category-pill,
  .home-section.home-menu-categories .home-category-pill,
  .home-category-strip .home-category-pill,
  .home-category-pill,
  .home-category-item {
    box-sizing: border-box !important;
    display: flex !important;
    flex: 0 0 120px !important;
    width: 120px !important;
    min-width: 120px !important;
    max-width: 120px !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 10px !important;
    padding: 0 !important;
    margin: 0 !important;
    text-align: center !important;
  }

  /* İkon dış çemberi: tüm durumlarda aynı 86x86 ve tam daire */
  .home-menu-categories .home-category-icon,
  .home-section.home-menu-categories .home-category-icon,
  .home-category-strip .home-category-icon,
  .home-category-pill .home-category-icon,
  .home-category-item .home-category-icon,
  .home-category-pill.active .home-category-icon,
  .home-category-item.active .home-category-icon,
  .home-category-pill:hover .home-category-icon,
  .home-category-item:hover .home-category-icon,
  .home-category-pill:active .home-category-icon,
  .home-category-item:active .home-category-icon {
    box-sizing: border-box !important;
    display: block !important;
    position: relative !important;
    inline-size: 86px !important;
    block-size: 86px !important;
    width: 86px !important;
    height: 86px !important;
    min-width: 86px !important;
    min-height: 86px !important;
    max-width: 86px !important;
    max-height: 86px !important;
    flex: 0 0 86px !important;
    aspect-ratio: 1 / 1 !important;
    padding: 0 !important;
    margin: 0 auto !important;
    border-radius: 9999px !important;
    overflow: hidden !important;
    clip-path: circle(50% at 50% 50%) !important;
    -webkit-clip-path: circle(50% at 50% 50%) !important;
    background: #f4ebe6 !important;
    transform: none !important;
  }

  .home-category-pill.active .home-category-icon,
  .home-category-item.active .home-category-icon {
    border: 2px solid #b80f20 !important;
    box-shadow: 0 0 0 4px rgba(184, 15, 32, .10) !important;
  }

  /* İkon iç medya alanı da aynı kare ölçüsünde kilitlenir */
  .home-category-icon > .icon-media,
  .home-category-icon > picture,
  .home-category-icon > img {
    box-sizing: border-box !important;
    display: block !important;
    position: absolute !important;
    inset: 0 !important;
    inline-size: 100% !important;
    block-size: 100% !important;
    width: 100% !important;
    height: 100% !important;
    min-width: 100% !important;
    min-height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    aspect-ratio: 1 / 1 !important;
    border-radius: 9999px !important;
    overflow: hidden !important;
    clip-path: circle(50% at 50% 50%) !important;
    -webkit-clip-path: circle(50% at 50% 50%) !important;
    transform: none !important;
    translate: none !important;
  }

  .home-category-icon > .icon-media img,
  .home-category-icon > picture img,
  .home-category-icon > img,
  .home-category-icon > svg {
    box-sizing: border-box !important;
    display: block !important;
    position: absolute !important;
    inset: 0 !important;
    inline-size: 100% !important;
    block-size: 100% !important;
    width: 100% !important;
    height: 100% !important;
    min-width: 100% !important;
    min-height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    aspect-ratio: 1 / 1 !important;
    object-fit: cover !important;
    object-position: center center !important;
    border-radius: 9999px !important;
    overflow: hidden !important;
    clip-path: circle(50% at 50% 50%) !important;
    -webkit-clip-path: circle(50% at 50% 50%) !important;
    transform: none !important;
    translate: none !important;
  }

  .home-category-pill > span:not(.home-category-icon),
  .home-category-item > span:not(.home-category-icon) {
    display: block !important;
    width: 100% !important;
    max-width: 120px !important;
    font-size: 12px !important;
    line-height: 1.1 !important;
    font-weight: 900 !important;
    text-align: center !important;
  }
}

/* v135 - web kategoriler alana taşmasın, yatay scroll olmasın, boyutlar korunsun */
@media (min-width: 769px) {
  .home-menu-categories .home-category-strip,
  .home-section.home-menu-categories .home-category-strip,
  .home-category-strip,
  .home-categories-strip {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    overflow-x: hidden !important;
    overflow-y: hidden !important;
    justify-content: space-between !important;
    gap: 12px !important;
    padding: 16px 12px 32px !important;
  }

  .home-menu-categories .home-category-pill,
  .home-section.home-menu-categories .home-category-pill,
  .home-category-strip .home-category-pill,
  .home-category-pill,
  .home-category-item {
    flex: 1 1 0 !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: 112px !important;
  }

  .home-menu-categories .home-category-icon,
  .home-section.home-menu-categories .home-category-icon,
  .home-category-strip .home-category-icon,
  .home-category-pill .home-category-icon,
  .home-category-item .home-category-icon,
  .home-category-pill.active .home-category-icon,
  .home-category-item.active .home-category-icon,
  .home-category-pill:hover .home-category-icon,
  .home-category-item:hover .home-category-icon,
  .home-category-pill:active .home-category-icon,
  .home-category-item:active .home-category-icon {
    inline-size: 86px !important;
    block-size: 86px !important;
    width: 86px !important;
    height: 86px !important;
    min-width: 86px !important;
    min-height: 86px !important;
    max-width: 86px !important;
    max-height: 86px !important;
    flex: 0 0 86px !important;
    border-radius: 50% !important;
    clip-path: circle(50% at 50% 50%) !important;
    -webkit-clip-path: circle(50% at 50% 50%) !important;
  }

  .home-menu-categories .home-category-icon > .icon-media,
  .home-category-strip .home-category-icon > .icon-media,
  .home-category-pill .home-category-icon > .icon-media,
  .home-category-item .home-category-icon > .icon-media,
  .home-menu-categories .home-category-icon > picture,
  .home-category-strip .home-category-icon > picture,
  .home-category-pill .home-category-icon > picture,
  .home-category-item .home-category-icon > picture,
  .home-menu-categories .home-category-icon > img,
  .home-category-strip .home-category-icon > img,
  .home-category-pill .home-category-icon > img,
  .home-category-item .home-category-icon > img,
  .home-menu-categories .home-category-icon > .icon-media img,
  .home-category-strip .home-category-icon > .icon-media img,
  .home-category-pill .home-category-icon > .icon-media img,
  .home-category-item .home-category-icon > .icon-media img,
  .home-menu-categories .home-category-icon > picture img,
  .home-category-strip .home-category-icon > picture img,
  .home-category-pill .home-category-icon > picture img,
  .home-category-item .home-category-icon > picture img,
  .home-menu-categories .home-category-icon > svg,
  .home-category-strip .home-category-icon > svg,
  .home-category-pill .home-category-icon > svg,
  .home-category-item .home-category-icon > svg {
    border-radius: 50% !important;
    clip-path: circle(50% at 50% 50%) !important;
    -webkit-clip-path: circle(50% at 50% 50%) !important;
  }

  .home-category-pill > span:not(.home-category-icon),
  .home-category-item > span:not(.home-category-icon) {
    max-width: 112px !important;
  }
}


/* assets/css/lunqa-admin-product-menu-fix-v136.css */
/* LUNQA admin product 3-dot menu final fix v136
   Ürün listesinde üç nokta menüsünün satır/kart içinde kırpılmasını engeller. */

.product-table-card:has(.product-more-actions[open]),
.product-table-list:has(.product-more-actions[open]),
.product-table-row:has(.product-more-actions[open]) {
  contain: none !important;
  overflow: visible !important;
}

.product-table-list:has(.product-more-actions[open]) {
  max-height: none !important;
  overflow-x: visible !important;
  overflow-y: visible !important;
  transform: none !important;
  backface-visibility: visible !important;
}

.product-table-row {
  position: relative !important;
  overflow: visible !important;
}

.product-table-row:has(.product-more-actions[open]) {
  z-index: 500 !important;
  contain: none !important;
  content-visibility: visible !important;
  overflow: visible !important;
}

.product-actions-compact,
.product-more-actions,
.product-more-actions[open] {
  position: relative !important;
  z-index: 700 !important;
  overflow: visible !important;
  contain: none !important;
}

.product-more-actions summary {
  position: relative !important;
  z-index: 701 !important;
}

.product-more-actions[open] > div,
.product-more-actions div {
  position: absolute !important;
  right: 0 !important;
  top: calc(100% + 8px) !important;
  z-index: 9999 !important;
  min-width: 178px !important;
  max-width: 220px !important;
  overflow: visible !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  transform: none !important;
  clip-path: none !important;
}

.product-table-head {
  z-index: 1 !important;
}

.product-table-card .product-pagination {
  position: relative !important;
  z-index: 1 !important;
}

@media (max-width: 760px) {
  .admin-nav-label {
    font-size: .88rem !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }
}

@media (max-width: 760px) {
  .admin-nav-label {
    font-size: .88rem !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }
}


/* assets/css/lunqa-new-product-marker-v142.css */
/* LUNQA new product marker
   Single source for category story rings and product "Yeni" chips. */

.home-category-pill.has-new-product,
.home-category-item.has-new-product,
.category-reference-item.has-new-product,
.category-card.has-new-product {
  position: relative !important;
  overflow: visible !important;
}

.home-category-pill.has-new-product > span:not(.home-category-icon)::after,
.home-category-item.has-new-product > span:not(.home-category-icon)::after,
.category-reference-item.has-new-product .category-reference-label::after {
  content: none !important;
  display: none !important;
}

.home-category-pill.has-new-product .home-category-icon,
.home-category-item.has-new-product .home-category-icon,
.category-reference-item.has-new-product .category-reference-icon,
.category-reference-item.has-new-product .category-reference-vector,
.category-card.has-new-product .category-card-icon {
  position: relative !important;
  box-sizing: border-box !important;
  border: 3px solid transparent !important;
  border-radius: 9999px !important;
  overflow: hidden !important;
  background:
    linear-gradient(#f8eee8, #f8eee8) padding-box,
    conic-gradient(from 220deg, #feda75, #fa7e1e, #d62976, #962fbf, #4f5bd5, #feda75) border-box !important;
  box-shadow: 0 10px 24px rgba(150, 47, 191, .12) !important;
}

.home-category-pill.has-new-product .home-category-icon > .icon-media,
.home-category-item.has-new-product .home-category-icon > .icon-media,
.category-reference-item.has-new-product .category-reference-icon > .icon-media,
.category-reference-item.has-new-product .category-reference-vector > .icon-media,
.category-card.has-new-product .category-card-icon > .icon-media {
  position: absolute !important;
  inset: 3px !important;
  width: calc(100% - 6px) !important;
  height: calc(100% - 6px) !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: none !important;
  max-height: none !important;
  border-radius: 9999px !important;
  overflow: hidden !important;
  clip-path: circle(50% at 50% 50%) !important;
  -webkit-clip-path: circle(50% at 50% 50%) !important;
}

.home-category-pill.has-new-product .home-category-icon > .icon-media img,
.home-category-item.has-new-product .home-category-icon > .icon-media img,
.category-reference-item.has-new-product .category-reference-icon > .icon-media img,
.category-reference-item.has-new-product .category-reference-vector > .icon-media img,
.category-card.has-new-product .category-card-icon > .icon-media img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 100% !important;
  min-height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  border-radius: 9999px !important;
  transform: none !important;
  translate: none !important;
}

.product-card.is-new-product .product-card-media,
.featured-card.is-new-product .featured-media,
.special-card.is-new-product .special-card-media,
.menu-row.is-new-product .menu-thumb {
  position: relative !important;
  overflow: hidden !important;
}

.special-card-media {
  position: relative !important;
  display: block !important;
  width: 92px !important;
  height: 92px !important;
  min-width: 92px !important;
  border-radius: 12px !important;
  overflow: hidden !important;
}

.special-card-media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

.new-product-chip {
  position: absolute !important;
  top: 10px !important;
  left: 10px !important;
  z-index: 6 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 22px !important;
  padding: 0 9px !important;
  border-radius: 999px !important;
  background: #4a0c21 !important;
  color: #fff !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  box-shadow: 0 8px 18px rgba(74, 12, 33, .22) !important;
  pointer-events: none !important;
}

.featured-card.is-new-product .featured-ribbon {
  top: 40px !important;
}

.menu-row .new-product-chip,
.special-card .new-product-chip {
  top: 7px !important;
  left: 7px !important;
  min-height: 18px !important;
  padding: 0 7px !important;
  font-size: 9px !important;
}

.new-product-badge-settings {
  align-items: end !important;
}

.new-product-badge-note {
  margin-top: -4px !important;
  color: rgba(43, 28, 23, .62) !important;
}


/* v153 - Yeni ürün: kategori ikonunda sadece story çerçevesi, ürün kartında Yeni etiketi */
.home-category-pill.has-new-product::after,
.home-category-item.has-new-product::after,
.category-reference-item.has-new-product::after,
.category-card.has-new-product::after,
.home-category-pill.has-new-product > span:not(.home-category-icon)::after,
.home-category-item.has-new-product > span:not(.home-category-icon)::after,
.category-reference-item.has-new-product .category-reference-label::after,
.category-card.has-new-product .category-card-label::after {
  content: none !important;
  display: none !important;
}

.home-category-pill.has-new-product .home-category-icon,
.home-category-item.has-new-product .home-category-icon,
.category-reference-item.has-new-product .category-reference-icon,
.category-reference-item.has-new-product .category-reference-vector,
.category-card.has-new-product .category-card-icon {
  position: relative !important;
  overflow: hidden !important;
  border: 4px solid transparent !important;
  border-radius: 9999px !important;
  background:
    linear-gradient(#f8eee8, #f8eee8) padding-box,
    conic-gradient(from 220deg, #feda75, #fa7e1e, #d62976, #962fbf, #4f5bd5, #feda75) border-box !important;
  box-shadow: 0 10px 24px rgba(150, 47, 191, .13) !important;
}

.home-category-pill.has-new-product .home-category-icon::before,
.home-category-pill.has-new-product .home-category-icon::after,
.home-category-item.has-new-product .home-category-icon::before,
.home-category-item.has-new-product .home-category-icon::after,
.category-reference-item.has-new-product .category-reference-icon::before,
.category-reference-item.has-new-product .category-reference-icon::after,
.category-reference-item.has-new-product .category-reference-vector::before,
.category-reference-item.has-new-product .category-reference-vector::after,
.category-card.has-new-product .category-card-icon::before,
.category-card.has-new-product .category-card-icon::after {
  content: none !important;
  display: none !important;
}

.product-card.is-new-product,
.featured-card.is-new-product,
.special-card.is-new-product,
.menu-row.is-new-product {
  position: relative !important;
}

.product-card.is-new-product .new-product-chip,
.featured-card.is-new-product .new-product-chip,
.special-card.is-new-product .new-product-chip,
.menu-row.is-new-product .new-product-chip {
  display: inline-flex !important;
  position: absolute !important;
  top: 9px !important;
  left: 9px !important;
  z-index: 8 !important;
}

.menu-row.is-new-product .new-product-chip,
.special-card.is-new-product .new-product-chip {
  top: 7px !important;
  left: 7px !important;
}

/* v154 - Mobile Bugün Sana Özel kart fotoğraf hizalama düzeltmesi */
@media (max-width: 768px) {
  .home-panel .special-row,
  .special-row {
    align-items: stretch !important;
  }

  .home-panel .special-card,
  .special-card {
    overflow: hidden !important;
  }

  .home-panel .special-card > button,
  .special-card > button {
    display: grid !important;
    grid-template-columns: 72px minmax(0, 1fr) 34px !important;
    align-items: center !important;
    gap: 10px !important;
    min-height: 98px !important;
    padding: 12px !important;
  }

  .home-panel .special-card-media,
  .special-card-media {
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: 72px !important;
    height: 72px !important;
    min-width: 72px !important;
    max-width: 72px !important;
    border-radius: 14px !important;
    overflow: hidden !important;
    align-self: center !important;
    justify-self: start !important;
    margin: 0 !important;
    transform: none !important;
  }

  .home-panel .special-card-media img,
  .special-card-media img {
    width: 100% !important;
    height: 100% !important;
    display: block !important;
    object-fit: cover !important;
    object-position: center center !important;
    transform: none !important;
  }

  .home-panel .special-card > button > span:not(.special-card-media),
  .special-card > button > span:not(.special-card-media) {
    grid-column: 2 !important;
    grid-row: 1 !important;
    min-width: 0 !important;
    width: 100% !important;
    display: grid !important;
    grid-template-rows: auto 1fr auto !important;
    align-content: center !important;
    gap: 3px !important;
    margin: 0 !important;
    overflow: hidden !important;
  }

  .home-panel .special-card > button > i,
  .special-card > button > i {
    grid-column: 3 !important;
    grid-row: 1 !important;
    align-self: center !important;
    justify-self: end !important;
    margin: 0 !important;
  }

  .home-panel .special-card strong,
  .special-card strong {
    display: -webkit-box !important;
    overflow: hidden !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    line-height: 1.05 !important;
  }

  .home-panel .special-card em,
  .special-card em {
    display: -webkit-box !important;
    overflow: hidden !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    line-height: 1.25 !important;
  }

  .home-panel .special-card .price,
  .special-card .price {
    display: block !important;
    margin-top: 2px !important;
    line-height: 1 !important;
  }

  .special-card.is-new-product .new-product-chip {
    top: 6px !important;
    left: 6px !important;
  }
}


/* v155 - Yeni ürün etiketi görünürlük düzeltmesi: ürün kartının üstünde kesin görünür */
.product-card.is-new-product,
.featured-card.is-new-product,
.special-card.is-new-product,
.menu-row.is-new-product {
  position: relative !important;
  overflow: visible !important;
}

.product-card.is-new-product .new-product-chip,
.featured-card.is-new-product .new-product-chip,
.special-card.is-new-product .new-product-chip,
.menu-row.is-new-product .new-product-chip {
  display: none !important;
}

.product-card.is-new-product::before,
.featured-card.is-new-product::before,
.special-card.is-new-product::before,
.menu-row.is-new-product::before {
  content: "Yeni" !important;
  position: absolute !important;
  top: 9px !important;
  left: 9px !important;
  z-index: 60 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 22px !important;
  padding: 0 9px !important;
  border-radius: 999px !important;
  background: #4a0c21 !important;
  color: #fff !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  box-shadow: 0 8px 18px rgba(74, 12, 33, .22) !important;
  pointer-events: none !important;
}

.menu-row.is-new-product::before,
.special-card.is-new-product::before {
  top: 7px !important;
  left: 7px !important;
  min-height: 18px !important;
  padding: 0 7px !important;
  font-size: 9px !important;
}

@media (max-width: 768px) {
  .special-card.is-new-product::before {
    top: 8px !important;
    left: 8px !important;
    min-height: 18px !important;
    padding: 0 7px !important;
    font-size: 9px !important;
  }

  .featured-card.is-new-product::before,
  .product-card.is-new-product::before {
    top: 10px !important;
    left: 10px !important;
  }
}


/* v156 - Reported issue fixes: round categories, calorie detail, mobile logo, mobile category strip, special cards, Barista click-through */

/* 1) Ana sayfa kategori görselleri tam yuvarlak */
.home-category-pill,
.home-category-pill .home-category-icon,
.home-category-pill .icon-media,
.home-category-pill .icon-media img,
.home-category-icon img,
.home-category-strip .home-category-pill > span:first-child {
  box-sizing: border-box !important;
}

.home-category-pill .home-category-icon,
.home-category-strip .home-category-pill > span:first-child {
  width: 76px !important;
  height: 76px !important;
  min-width: 76px !important;
  min-height: 76px !important;
  max-width: 76px !important;
  max-height: 76px !important;
  aspect-ratio: 1 / 1 !important;
  border-radius: 9999px !important;
  overflow: hidden !important;
  display: grid !important;
  place-items: center !important;
  flex: 0 0 76px !important;
}

.home-category-pill .home-category-icon img,
.home-category-strip .home-category-pill > span:first-child img,
.home-category-pill .icon-media img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: cover !important;
  object-position: center center !important;
  border-radius: 9999px !important;
}

/* 7) Yeni ürün: kategori story çerçevesi + küçük Yeni yazısı, Tümü hariç */
.home-category-pill.has-new-product,
.category-reference-item.has-new-product {
  position: relative !important;
}

.home-category-pill.has-new-product::after,
.category-reference-item.has-new-product::after {
  content: "Yeni" !important;
  position: absolute !important;
  z-index: 7 !important;
  top: 2px !important;
  right: 2px !important;
  min-height: 16px !important;
  padding: 0 6px !important;
  border-radius: 999px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #4a0c21 !important;
  color: #fff !important;
  font-size: 8px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  box-shadow: 0 7px 16px rgba(74, 12, 33, .20) !important;
  pointer-events: none !important;
}

.category-reference-item.has-new-product .category-reference-icon,
.home-category-pill.has-new-product .home-category-icon,
.category-reference-item.has-new-product .category-reference-vector {
  border: 3px solid transparent !important;
  background:
    linear-gradient(#f8eee8, #f8eee8) padding-box,
    conic-gradient(from 220deg, #feda75, #fa7e1e, #d62976, #962fbf, #4f5bd5, #feda75) border-box !important;
  box-shadow: 0 10px 24px rgba(150, 47, 191, .12) !important;
}

/* Ürün kartı üstü Yeni etiketi garanti görünür */
.product-card.is-new-product,
.featured-card.is-new-product,
.special-card.is-new-product,
.menu-row.is-new-product {
  position: relative !important;
  overflow: visible !important;
}

.product-card.is-new-product::before,
.featured-card.is-new-product::before,
.special-card.is-new-product::before,
.menu-row.is-new-product::before {
  content: "Yeni" !important;
  position: absolute !important;
  z-index: 12 !important;
  top: 9px !important;
  left: 9px !important;
  min-height: 20px !important;
  padding: 0 8px !important;
  border-radius: 999px !important;
  background: #4a0c21 !important;
  color: #fff !important;
  font-size: 9px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: 0 8px 18px rgba(74, 12, 33, .22) !important;
  pointer-events: none !important;
}

.product-card.is-new-product .new-product-chip,
.featured-card.is-new-product .new-product-chip,
.special-card.is-new-product .new-product-chip,
.menu-row.is-new-product .new-product-chip {
  display: none !important;
}

/* 2) Ürün detay kalori paneli */
.detail-calorie-badge {
  background: rgba(74, 12, 33, .10) !important;
  color: #4a0c21 !important;
}

.detail-calorie-panel {
  margin: 12px 0 16px !important;
  padding: 12px 14px !important;
  border: 1px solid rgba(226, 215, 207, .92) !important;
  border-radius: 16px !important;
  background: rgba(255, 250, 246, .78) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
}

.detail-calorie-panel strong,
.detail-calorie-panel span {
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;
}

.detail-calorie-panel strong {
  color: #4a0c21 !important;
  font-weight: 900 !important;
}

.detail-calorie-panel span {
  color: #2b1c17 !important;
  font-weight: 800 !important;
}

/* 3) Mobil orta navbar logo: tek görsel, nizami */
.brand-mark-round.brand-mark-full-logo,
.logo-tab .brand-mark-round.brand-mark-full-logo {
  width: 86px !important;
  height: 86px !important;
  min-width: 86px !important;
  min-height: 86px !important;
  border-radius: 9999px !important;
  background: #4a0c21 !important;
  display: grid !important;
  place-items: center !important;
  overflow: hidden !important;
  padding: 0 !important;
}

.brand-mark-round.brand-mark-full-logo .brand-logo-full-img,
.logo-tab .brand-logo-full-img {
  width: 76% !important;
  height: 76% !important;
  object-fit: contain !important;
  object-position: center center !important;
  display: block !important;
  margin: 0 auto !important;
  transform: translateY(1px) !important;
}

.brand-mark-round.brand-mark-full-logo .brand-word {
  display: none !important;
}

/* 6) Barista düşünürken web arka plan tıklanabilsin */
.assistant-widget {
  pointer-events: none !important;
}

.assistant-widget .assistant-fab,
.assistant-widget .assistant-panel,
.assistant-widget.open .assistant-panel,
.assistant-widget.open .assistant-fab {
  pointer-events: auto !important;
}

.assistant-message.is-thinking {
  pointer-events: none !important;
}

.assistant-form button[aria-disabled="true"] {
  pointer-events: none !important;
  opacity: .72 !important;
}

.assistant-product-price {
  display: none !important;
}

@media (max-width: 768px) {
  /* 4) Mobil kategori alanı: arka kutu yerine düz çizgi */
  .home-categories,
  .home-section.home-categories {
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 0 !important;
    border-left: 0 !important;
    border-right: 0 !important;
    border-top: 1px solid rgba(226, 215, 207, .92) !important;
    border-bottom: 1px solid rgba(226, 215, 207, .92) !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
  }

  .home-categories .home-section-head,
  .home-section.home-categories .home-section-head {
    display: none !important;
  }

  .home-categories .home-category-strip,
  .home-section.home-categories .home-category-strip {
    margin: 0 !important;
    padding: 12px 14px 10px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 20px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .home-category-pill {
    min-width: 74px !important;
    max-width: 84px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    display: grid !important;
    justify-items: center !important;
    gap: 7px !important;
  }

  .home-category-pill .home-category-icon,
  .home-category-strip .home-category-pill > span:first-child {
    width: 66px !important;
    height: 66px !important;
    min-width: 66px !important;
    min-height: 66px !important;
    max-width: 66px !important;
    max-height: 66px !important;
    flex-basis: 66px !important;
  }

  .home-category-pill > span:not(.home-category-icon) {
    width: 82px !important;
    min-height: 28px !important;
    text-align: center !important;
    display: block !important;
    font-size: 11px !important;
    line-height: 1.05 !important;
    font-weight: 900 !important;
  }

  .home-category-pill.has-new-product::after {
    top: -2px !important;
    right: 0 !important;
  }

  /* 5) Mobil Bugün Sana Özel görseli büyütme ve sol/üst hizalama */
  .special-row {
    align-items: stretch !important;
  }

  .special-card {
    min-width: 270px !important;
  }

  .special-card button {
    min-height: 104px !important;
    display: grid !important;
    grid-template-columns: 96px minmax(0, 1fr) 38px !important;
    gap: 10px !important;
    align-items: center !important;
    padding: 0 10px 0 0 !important;
    overflow: hidden !important;
  }

  .special-card-media {
    width: 96px !important;
    height: 104px !important;
    min-width: 96px !important;
    min-height: 104px !important;
    max-width: 96px !important;
    max-height: 104px !important;
    align-self: stretch !important;
    margin: 0 !important;
    border-radius: 18px 0 0 18px !important;
    overflow: hidden !important;
  }

  .special-card-media img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
  }

  .special-card button > span:not(.special-card-media) {
    min-width: 0 !important;
    display: grid !important;
    align-content: center !important;
  }

  .special-card strong {
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    line-height: 1.05 !important;
  }

  .special-card em {
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
  }

  .special-card.is-new-product::before {
    top: 7px !important;
    left: 7px !important;
  }

  .brand-mark-round.brand-mark-full-logo,
  .logo-tab .brand-mark-round.brand-mark-full-logo {
    width: 84px !important;
    height: 84px !important;
    min-width: 84px !important;
    min-height: 84px !important;
  }
}


/* v157 - Story dış ring, mobil logo büyütme, mobil kategori çizgileri */

/* 1) Yeni ürün kategori halkası fotoğrafın içine değil dışına alınır */
.home-category-pill.has-new-product .home-category-icon,
.home-category-item.has-new-product .home-category-icon,
.category-reference-item.has-new-product .category-reference-icon,
.category-reference-item.has-new-product .category-reference-vector,
.category-card.has-new-product .category-card-icon {
  position: relative !important;
  isolation: isolate !important;
  overflow: visible !important;
  border: 0 !important;
  padding: 0 !important;
  background: #f8eee8 !important;
  box-shadow: none !important;
}

.home-category-pill.has-new-product .home-category-icon::before,
.home-category-item.has-new-product .home-category-icon::before,
.category-reference-item.has-new-product .category-reference-icon::before,
.category-reference-item.has-new-product .category-reference-vector::before,
.category-card.has-new-product .category-card-icon::before {
  content: "" !important;
  position: absolute !important;
  z-index: -1 !important;
  inset: -6px !important;
  border-radius: 9999px !important;
  background: conic-gradient(from 215deg, #feda75 0deg, #fa7e1e 68deg, #d62976 142deg, #962fbf 220deg, #4f5bd5 294deg, #feda75 360deg) !important;
  box-shadow: 0 10px 22px rgba(214, 41, 118, .16) !important;
  pointer-events: none !important;
}

.home-category-pill.has-new-product .home-category-icon::after,
.home-category-item.has-new-product .home-category-icon::after,
.category-reference-item.has-new-product .category-reference-icon::after,
.category-reference-item.has-new-product .category-reference-vector::after,
.category-card.has-new-product .category-card-icon::after {
  content: "" !important;
  position: absolute !important;
  z-index: -1 !important;
  inset: -2px !important;
  border-radius: 9999px !important;
  background: #fffaf6 !important;
  pointer-events: none !important;
}

.home-category-pill.has-new-product .home-category-icon > .icon-media,
.home-category-item.has-new-product .home-category-icon > .icon-media,
.category-reference-item.has-new-product .category-reference-icon > .icon-media,
.category-reference-item.has-new-product .category-reference-vector > .icon-media,
.category-card.has-new-product .category-card-icon > .icon-media {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  width: 100% !important;
  height: 100% !important;
  border-radius: 9999px !important;
  overflow: hidden !important;
  background: #f8eee8 !important;
  clip-path: circle(50% at 50% 50%) !important;
  -webkit-clip-path: circle(50% at 50% 50%) !important;
}

.home-category-pill.has-new-product .home-category-icon img,
.home-category-item.has-new-product .home-category-icon img,
.category-reference-item.has-new-product .category-reference-icon img,
.category-reference-item.has-new-product .category-reference-vector img,
.category-card.has-new-product .category-card-icon img {
  position: relative !important;
  z-index: 2 !important;
  border-radius: 9999px !important;
}

/* Yeni etiketi ringin üzerinde kalır */
.home-category-pill.has-new-product::after,
.home-category-item.has-new-product::after,
.category-reference-item.has-new-product::after,
.category-card.has-new-product::after {
  z-index: 12 !important;
}

/* 2) Mobil alt navbar merkez logosu biraz büyütülür */
.brand-mark-round.brand-mark-full-logo .brand-logo-full-img,
.logo-tab .brand-logo-full-img {
  width: 94% !important;
  height: 94% !important;
  max-width: 94% !important;
  max-height: 94% !important;
  object-fit: contain !important;
  transform: translateY(1px) !important;
}

/* 3) Mobil menü kategori alanındaki elips/kutu kalkar, üst-alt çizgi kalır */
@media (max-width: 768px) {
  .category-reference-shell {
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 0 !important;
    border-left: 0 !important;
    border-right: 0 !important;
    border-top: 1px solid rgba(226, 215, 207, .95) !important;
    border-bottom: 1px solid rgba(226, 215, 207, .95) !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
  }

  .category-reference-shell::before,
  .category-reference-shell::after,
  .category-reference-strip::before,
  .category-reference-strip::after {
    content: none !important;
    display: none !important;
  }

  .category-reference-strip {
    margin: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  .category-reference-item {
    background: transparent !important;
    box-shadow: none !important;
  }

  .category-reference-item.has-new-product .category-reference-icon::before,
  .category-reference-item.has-new-product .category-reference-vector::before,
  .home-category-pill.has-new-product .home-category-icon::before {
    inset: -5px !important;
  }

  .category-reference-item.has-new-product .category-reference-icon::after,
  .category-reference-item.has-new-product .category-reference-vector::after,
  .home-category-pill.has-new-product .home-category-icon::after {
    inset: -2px !important;
  }
}


/* v158 - Mobil menü kategori alanı: kenar kıvrımları kaldır, çizgiyi yukarı hizala */
@media (max-width: 768px) {
  .page-panel.page-panel-menu:not(.is-special-list) {
    border-top-left-radius: 0 !important;
    border-top-right-radius: 0 !important;
    padding-top: 0 !important;
    overflow: visible !important;
  }

  .page-panel.page-panel-menu:not(.is-special-list) .category-reference-shell {
    position: relative !important;
    margin: 0 -14px 8px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
  }

  .page-panel.page-panel-menu:not(.is-special-list) .category-reference-shell::before,
  .page-panel.page-panel-menu:not(.is-special-list) .category-reference-shell::after {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    height: 1px !important;
    background: rgba(226, 215, 207, .95) !important;
    display: block !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    pointer-events: none !important;
  }

  .page-panel.page-panel-menu:not(.is-special-list) .category-reference-shell::before {
    top: 0 !important;
  }

  .page-panel.page-panel-menu:not(.is-special-list) .category-reference-shell::after {
    bottom: 0 !important;
  }

  .page-panel.page-panel-menu:not(.is-special-list) .category-reference-strip {
    margin: 0 !important;
    padding: 12px 14px 8px !important;
    min-height: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    align-items: flex-start !important;
  }

  .page-panel.page-panel-menu:not(.is-special-list) .category-reference-item {
    padding-top: 2px !important;
    padding-bottom: 2px !important;
  }
}


/* v159 - Menü kategori çizgisi ana sayfa mantığı, navbar logo büyütme, kalori görünümü */

/* Mobil navbar orta logo daha okunur */
.brand-mark-round.brand-mark-full-logo .brand-logo-full-img,
.logo-tab .brand-logo-full-img {
  width: 118% !important;
  height: 118% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: contain !important;
  transform: translateY(2px) !important;
}

/* Kalori detay bloğu net görünür */
.detail-calorie-accordion .detail-calorie-info,
.detail-calorie-info {
  background: rgba(255, 250, 246, .82) !important;
  border: 1px solid rgba(226, 215, 207, .92) !important;
  border-radius: 16px !important;
  padding: 13px 15px !important;
}

.detail-calorie-info strong {
  color: #4a0c21 !important;
  font-weight: 900 !important;
}

@media (max-width: 768px) {
  /* v158'deki fazla page-panel müdahalesini geri yumuşat */
  .page-panel.page-panel-menu:not(.is-special-list) {
    padding-top: 0 !important;
    overflow: hidden !important;
  }

  /* Menü kategori şeridi ana sayfadaki gibi sade çizgili yapı */
  .page-panel.page-panel-menu:not(.is-special-list) .category-reference-shell {
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    border-radius: 0 !important;
    border-left: 0 !important;
    border-right: 0 !important;
    border-top: 1px solid rgba(226, 215, 207, .95) !important;
    border-bottom: 1px solid rgba(226, 215, 207, .95) !important;
    background: #fffaf6 !important;
    box-shadow: none !important;
    overflow: hidden !important;
  }

  .page-panel.page-panel-menu:not(.is-special-list) .category-reference-shell::before,
  .page-panel.page-panel-menu:not(.is-special-list) .category-reference-shell::after,
  .page-panel.page-panel-menu:not(.is-special-list) .category-reference-strip::before,
  .page-panel.page-panel-menu:not(.is-special-list) .category-reference-strip::after {
    content: none !important;
    display: none !important;
  }

  .page-panel.page-panel-menu:not(.is-special-list) .category-reference-strip {
    margin: 0 !important;
    padding: 12px 14px 10px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: flex-start !important;
    gap: 20px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .page-panel.page-panel-menu:not(.is-special-list) .category-reference-item {
    background: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
    border-radius: 0 !important;
    padding: 0 !important;
    min-width: 74px !important;
    max-width: 84px !important;
    display: grid !important;
    justify-items: center !important;
    gap: 7px !important;
  }

  .page-panel.page-panel-menu:not(.is-special-list) .category-reference-icon,
  .page-panel.page-panel-menu:not(.is-special-list) .category-reference-vector {
    width: 62px !important;
    height: 62px !important;
    min-width: 62px !important;
    min-height: 62px !important;
    max-width: 62px !important;
    max-height: 62px !important;
    border-radius: 9999px !important;
    overflow: hidden !important;
    display: grid !important;
    place-items: center !important;
  }

  .page-panel.page-panel-menu:not(.is-special-list) .category-reference-label {
    width: 82px !important;
    min-height: 28px !important;
    text-align: center !important;
    font-size: 11px !important;
    line-height: 1.05 !important;
    font-weight: 900 !important;
  }
}


/* v160 - Menü kategori çizgisi netleştirme, logo büyütme ve kalori görünürlüğü */
.detail-calorie-inline {
  margin: 10px 0 14px !important;
  padding: 12px 14px !important;
  border: 1px solid rgba(226, 215, 207, .92) !important;
  border-radius: 15px !important;
  background: rgba(255, 250, 246, .86) !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  color: #2b1c17 !important;
  font-weight: 800 !important;
}

.detail-calorie-inline strong {
  color: #4a0c21 !important;
  font-weight: 900 !important;
}

.detail-calorie-inline span {
  color: #4a0c21 !important;
  font-weight: 900 !important;
}

@media (max-width: 768px) {
  /* Menü kategori alanı: ana sayfa Kategoriler görünümündeki gibi sadece düz şerit + çizgi */
  .page-panel.page-panel-menu:not(.is-special-list) {
    border-top-left-radius: 0 !important;
    border-top-right-radius: 0 !important;
    padding-top: 0 !important;
    overflow: hidden !important;
  }

  .page-panel.page-panel-menu:not(.is-special-list) .category-reference-shell {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 0 !important;
    border: 0 !important;
    border-top: 1px solid rgba(226, 215, 207, .95) !important;
    border-bottom: 1px solid rgba(226, 215, 207, .95) !important;
    background: #fffaf6 !important;
    box-shadow: none !important;
    overflow: hidden !important;
  }

  .page-panel.page-panel-menu:not(.is-special-list) .category-reference-shell::before,
  .page-panel.page-panel-menu:not(.is-special-list) .category-reference-shell::after,
  .page-panel.page-panel-menu:not(.is-special-list) .category-reference-strip::before,
  .page-panel.page-panel-menu:not(.is-special-list) .category-reference-strip::after {
    content: none !important;
    display: none !important;
    background: none !important;
    box-shadow: none !important;
    border: 0 !important;
  }

  .page-panel.page-panel-menu:not(.is-special-list) .category-reference-strip {
    width: 100% !important;
    margin: 0 !important;
    padding: 12px 14px 10px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 20px !important;
    align-items: flex-start !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .page-panel.page-panel-menu:not(.is-special-list) .category-reference-item,
  .page-panel.page-panel-menu:not(.is-special-list) .category-reference-item.active {
    min-width: 74px !important;
    max-width: 84px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    display: grid !important;
    justify-items: center !important;
    gap: 7px !important;
  }

  .page-panel.page-panel-menu:not(.is-special-list) .category-reference-icon,
  .page-panel.page-panel-menu:not(.is-special-list) .category-reference-vector {
    width: 62px !important;
    height: 62px !important;
    min-width: 62px !important;
    min-height: 62px !important;
    max-width: 62px !important;
    max-height: 62px !important;
    border-radius: 9999px !important;
    overflow: hidden !important;
    display: grid !important;
    place-items: center !important;
  }

  .page-panel.page-panel-menu:not(.is-special-list) .category-reference-label {
    width: 82px !important;
    min-height: 28px !important;
    text-align: center !important;
    font-size: 11px !important;
    line-height: 1.05 !important;
    font-weight: 900 !important;
  }

  /* Navbar orta logo daha büyük ve okunur */
  .brand-mark-round.brand-mark-full-logo,
  .logo-tab .brand-mark-round.brand-mark-full-logo {
    width: 90px !important;
    height: 90px !important;
    min-width: 90px !important;
    min-height: 90px !important;
  }

  .brand-mark-round.brand-mark-full-logo .brand-logo-full-img,
  .logo-tab .brand-logo-full-img {
    width: 132% !important;
    height: 132% !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: contain !important;
    transform: translateY(3px) !important;
  }

  .detail-calorie-inline {
    display: flex !important;
    justify-content: space-between !important;
    width: 100% !important;
  }
}


/* v161 - Force apply: mobil menü çizgisi, logo ve kalori */
.detail-calorie-inline {
  margin: 10px 0 14px !important;
  padding: 12px 14px !important;
  border: 1px solid rgba(226, 215, 207, .95) !important;
  border-radius: 15px !important;
  background: rgba(255, 250, 246, .92) !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  color: #2b1c17 !important;
  font-weight: 800 !important;
}

.detail-calorie-inline strong,
.detail-calorie-inline span {
  color: #4a0c21 !important;
  font-weight: 900 !important;
}

@media (max-width: 768px) {
  .phone-shell .bottom-nav .logo-tab .brand-mark-round.brand-mark-full-logo,
  .bottom-nav .logo-tab .brand-mark-round.brand-mark-full-logo,
  .logo-tab .brand-mark-round.brand-mark-full-logo {
    width: 92px !important;
    height: 92px !important;
    min-width: 92px !important;
    min-height: 92px !important;
    max-width: 92px !important;
    max-height: 92px !important;
    padding: 0 !important;
    overflow: hidden !important;
    display: grid !important;
    place-items: center !important;
  }

  .phone-shell .bottom-nav .logo-tab img.brand-logo-full-img,
  .bottom-nav .logo-tab img.brand-logo-full-img,
  .logo-tab img.brand-logo-full-img {
    width: 108% !important;
    height: 108% !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: contain !important;
    object-position: center center !important;
    transform: translateY(0) !important;
  }

  .page-panel-menu .category-reference-shell,
  .page-panel.page-panel-menu .category-reference-shell {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 0 !important;
    border-left: 0 !important;
    border-right: 0 !important;
    border-top: 1px solid rgba(226, 215, 207, .95) !important;
    border-bottom: 1px solid rgba(226, 215, 207, .95) !important;
    background: #fffaf6 !important;
    box-shadow: none !important;
    overflow: hidden !important;
  }

  .page-panel-menu .category-reference-shell::before,
  .page-panel-menu .category-reference-shell::after,
  .page-panel-menu .category-reference-strip::before,
  .page-panel-menu .category-reference-strip::after,
  .page-panel.page-panel-menu .category-reference-shell::before,
  .page-panel.page-panel-menu .category-reference-shell::after,
  .page-panel.page-panel-menu .category-reference-strip::before,
  .page-panel.page-panel-menu .category-reference-strip::after {
    content: none !important;
    display: none !important;
    opacity: 0 !important;
    background: none !important;
    box-shadow: none !important;
    border: 0 !important;
  }

  .page-panel-menu .category-reference-strip,
  .page-panel.page-panel-menu .category-reference-strip {
    width: 100% !important;
    margin: 0 !important;
    padding: 12px 14px 10px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: flex-start !important;
    gap: 20px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .page-panel-menu .category-reference-item,
  .page-panel-menu .category-reference-item.active,
  .page-panel.page-panel-menu .category-reference-item,
  .page-panel.page-panel-menu .category-reference-item.active {
    min-width: 74px !important;
    max-width: 84px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    display: grid !important;
    justify-items: center !important;
    gap: 7px !important;
  }

  .page-panel-menu .category-reference-icon,
  .page-panel-menu .category-reference-vector,
  .page-panel.page-panel-menu .category-reference-icon,
  .page-panel.page-panel-menu .category-reference-vector {
    width: 62px !important;
    height: 62px !important;
    min-width: 62px !important;
    min-height: 62px !important;
    max-width: 62px !important;
    max-height: 62px !important;
    border-radius: 9999px !important;
    overflow: hidden !important;
    display: grid !important;
    place-items: center !important;
  }
}


/* v162 - Menü kategori konumu eski hizasına alındı; search alanına dokunulmadı */
@media (max-width: 768px) {
  .page-panel-menu .category-reference-shell,
  .page-panel.page-panel-menu .category-reference-shell {
    margin-top: 42px !important;
  }

  .page-panel-menu .category-reference-strip,
  .page-panel.page-panel-menu .category-reference-strip {
    padding-top: 13px !important;
    padding-bottom: 10px !important;
  }
}


/* v163 - Mobil navbar orta logo yuvarlağa tam sığdırma */
@media (max-width: 768px) {
  .phone-shell .bottom-nav .logo-tab .brand-mark-round.brand-mark-full-logo,
  .bottom-nav .logo-tab .brand-mark-round.brand-mark-full-logo,
  .logo-tab .brand-mark-round.brand-mark-full-logo {
    width: 88px !important;
    height: 88px !important;
    min-width: 88px !important;
    min-height: 88px !important;
    max-width: 88px !important;
    max-height: 88px !important;
    padding: 0 !important;
    overflow: hidden !important;
    display: grid !important;
    place-items: center !important;
  }

  .phone-shell .bottom-nav .logo-tab img.brand-logo-full-img,
  .bottom-nav .logo-tab img.brand-logo-full-img,
  .logo-tab img.brand-logo-full-img {
    width: 82% !important;
    height: 82% !important;
    max-width: 82% !important;
    max-height: 82% !important;
    object-fit: contain !important;
    object-position: center center !important;
    transform: translateY(0) !important;
  }
}


/* v164 - Kalori tek yerde görünsün */
.detail-calorie-inline,
.detail-calorie-badge,
.detail-calorie-panel {
  display: none !important;
}

.detail-calorie-accordion {
  display: block !important;
}

.detail-calorie-accordion .detail-calorie-info {
  display: flex !important;
}

.detail-calorie-accordion summary {
  font-weight: 900 !important;
}


/* v165 - Mobil navbar orta logo beyaz ve yuvarlağa sığacak şekilde */
@media (max-width: 768px) {
  .phone-shell .bottom-nav .logo-tab .brand-mark-round.brand-mark-full-logo,
  .bottom-nav .logo-tab .brand-mark-round.brand-mark-full-logo,
  .logo-tab .brand-mark-round.brand-mark-full-logo {
    background: #4a0c21 !important;
    width: 88px !important;
    height: 88px !important;
    min-width: 88px !important;
    min-height: 88px !important;
    max-width: 88px !important;
    max-height: 88px !important;
    overflow: hidden !important;
    padding: 0 !important;
    display: grid !important;
    place-items: center !important;
  }
  .phone-shell .bottom-nav .logo-tab img.brand-logo-full-img,
  .bottom-nav .logo-tab img.brand-logo-full-img,
  .logo-tab img.brand-logo-full-img {
    width: 84% !important;
    height: 84% !important;
    max-width: 84% !important;
    max-height: 84% !important;
    object-fit: contain !important;
    object-position: center center !important;
    transform: translateY(0) !important;
    filter: none !important;
    opacity: 1 !important;
  }
}


/* v166 - Mobil navbar logo boyutu büyütme: yuvarlağa sığacak maksimum okunurluk */
@media (max-width: 768px) {
  .phone-shell .bottom-nav .logo-tab .brand-mark-round.brand-mark-full-logo,
  .bottom-nav .logo-tab .brand-mark-round.brand-mark-full-logo,
  .logo-tab .brand-mark-round.brand-mark-full-logo {
    width: 88px !important;
    height: 88px !important;
    min-width: 88px !important;
    min-height: 88px !important;
    max-width: 88px !important;
    max-height: 88px !important;
    padding: 0 !important;
    overflow: hidden !important;
    display: grid !important;
    place-items: center !important;
  }

  .phone-shell .bottom-nav .logo-tab img.brand-logo-full-img,
  .bottom-nav .logo-tab img.brand-logo-full-img,
  .logo-tab img.brand-logo-full-img {
    width: 96% !important;
    height: 96% !important;
    max-width: 96% !important;
    max-height: 96% !important;
    object-fit: contain !important;
    object-position: center center !important;
    transform: translateY(0) !important;
    filter: none !important;
    opacity: 1 !important;
  }
}


/* v167 - Navbar logo oranı korunarak büyütme */
@media (max-width: 768px) {
  .phone-shell .bottom-nav .logo-tab .brand-mark-round.brand-mark-full-logo,
  .bottom-nav .logo-tab .brand-mark-round.brand-mark-full-logo,
  .logo-tab .brand-mark-round.brand-mark-full-logo {
    width: 88px !important;
    height: 88px !important;
    min-width: 88px !important;
    min-height: 88px !important;
    max-width: 88px !important;
    max-height: 88px !important;
    padding: 0 !important;
    overflow: hidden !important;
    display: grid !important;
    place-items: center !important;
    background: #4a0c21 !important;
  }

  .phone-shell .bottom-nav .logo-tab img.brand-logo-full-img,
  .bottom-nav .logo-tab img.brand-logo-full-img,
  .logo-tab img.brand-logo-full-img {
    width: auto !important;
    height: 90% !important;
    max-width: 90% !important;
    max-height: 90% !important;
    object-fit: contain !important;
    object-position: center center !important;
    transform: translateY(0) !important;
    filter: none !important;
    opacity: 1 !important;
  }
}


/* v168 - Admin ürün listesi mouse ile sürükle-bırak sıralama */
.product-table-list[data-product-sort-list] {
  position: relative !important;
}

.product-table-row[draggable="true"] {
  cursor: grab !important;
  user-select: none !important;
  transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease, background .16s ease !important;
}

.product-table-row[draggable="true"]:active {
  cursor: grabbing !important;
}

.product-table-row.is-dragging {
  opacity: .58 !important;
  transform: scale(.995) !important;
  box-shadow: 0 16px 42px rgba(74, 12, 33, .12) !important;
}

.product-table-row.drag-over-before,
.product-table-row.drag-over-after {
  border-color: rgba(176, 12, 31, .44) !important;
  background: rgba(176, 12, 31, .035) !important;
}

.product-table-row.drag-over-before::before,
.product-table-row.drag-over-after::after {
  content: "" !important;
  position: absolute !important;
  left: 18px !important;
  right: 18px !important;
  height: 3px !important;
  border-radius: 99px !important;
  background: #b00c1f !important;
  box-shadow: 0 7px 18px rgba(176, 12, 31, .24) !important;
  pointer-events: none !important;
  z-index: 3 !important;
}

.product-table-row.drag-over-before::before {
  top: -3px !important;
}

.product-table-row.drag-over-after::after {
  bottom: -3px !important;
}

.product-drag-handle {
  width: 28px !important;
  height: 34px !important;
  border: 1px solid rgba(226, 215, 207, .86) !important;
  border-radius: 11px !important;
  background: #fffaf6 !important;
  color: #8b746c !important;
  display: inline-grid !important;
  place-items: center !important;
  cursor: grab !important;
  font-size: 16px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  margin-right: 4px !important;
  flex: 0 0 28px !important;
}

.product-drag-handle:active {
  cursor: grabbing !important;
}

.product-drag-handle:hover {
  border-color: rgba(176, 12, 31, .35) !important;
  color: #b00c1f !important;
  background: rgba(176, 12, 31, .045) !important;
}

.product-table-main {
  gap: 10px !important;
}

.product-table-main input[type="checkbox"],
.product-table-main img,
.product-table-main span {
  user-select: none !important;
}

.product-table-main input,
.product-actions-compact button,
.product-actions-compact details,
.quick-price-field input {
  cursor: auto !important;
}

@media (max-width: 768px) {
  .product-drag-handle {
    width: 30px !important;
    height: 36px !important;
  }
}


/* v169 - Admin ürün listesi eski satır düzeni korunarak drag tutamacı */
.product-table-row[draggable="true"] {
  position: relative !important;
  display: grid !important;
  grid-template-columns: minmax(360px, 1.75fr) minmax(170px, .8fr) minmax(120px, .5fr) minmax(92px, .42fr) minmax(92px, .42fr) minmax(170px, .7fr) !important;
  align-items: center !important;
  column-gap: 18px !important;
  min-height: 78px !important;
  padding-left: 58px !important;
  cursor: default !important;
}

.product-table-row[draggable="true"] .product-table-main {
  display: grid !important;
  grid-template-columns: 18px 64px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 14px !important;
  min-width: 0 !important;
  width: 100% !important;
}

.product-table-row[draggable="true"] .product-table-main img {
  width: 56px !important;
  height: 56px !important;
  min-width: 56px !important;
  border-radius: 14px !important;
  object-fit: cover !important;
}

.product-table-row[draggable="true"] .product-table-main span {
  min-width: 0 !important;
  display: block !important;
}

.product-table-row[draggable="true"] .product-table-main strong {
  display: block !important;
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: clip !important;
  line-height: 1.22 !important;
  max-width: none !important;
}

.product-table-row[draggable="true"] .product-table-main small {
  display: block !important;
  white-space: normal !important;
  line-height: 1.25 !important;
  margin-top: 3px !important;
}

.product-drag-handle {
  position: absolute !important;
  left: 18px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 30px !important;
  height: 34px !important;
  margin: 0 !important;
  z-index: 4 !important;
  border: 1px solid rgba(226, 215, 207, .86) !important;
  border-radius: 11px !important;
  background: #fffaf6 !important;
  color: #8b746c !important;
  display: inline-grid !important;
  place-items: center !important;
  cursor: grab !important;
  font-size: 16px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  flex: none !important;
}

.product-drag-handle:active {
  cursor: grabbing !important;
}

.product-table-row.is-dragging {
  opacity: .68 !important;
  transform: scale(.998) !important;
}

.product-table-row.drag-over-before::before,
.product-table-row.drag-over-after::after {
  left: 20px !important;
  right: 20px !important;
}

@media (max-width: 1100px) {
  .product-table-row[draggable="true"] {
    grid-template-columns: minmax(280px, 1.45fr) minmax(140px, .75fr) minmax(110px, .5fr) minmax(86px, .42fr) minmax(86px, .42fr) minmax(150px, .7fr) !important;
    column-gap: 12px !important;
  }
}

@media (max-width: 768px) {
  .product-table-row[draggable="true"] {
    padding-left: 52px !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  .product-drag-handle {
    left: 14px !important;
    top: 26px !important;
    transform: none !important;
  }

  .product-table-row[draggable="true"] .product-table-main {
    grid-template-columns: 18px 58px minmax(0, 1fr) !important;
  }
}


/* v170 - Admin ürün sıralama tutamacı dikey hizalama */
.product-table-row[draggable="true"] .product-drag-handle {
  top: 50% !important;
  transform: translateY(-50%) !important;
  align-self: center !important;
}

@media (min-width: 769px) {
  .product-table-row[draggable="true"] .product-drag-handle {
    top: 50% !important;
    transform: translateY(-50%) !important;
  }
}

@media (max-width: 768px) {
  .product-table-row[draggable="true"] .product-drag-handle {
    top: 50% !important;
    transform: translateY(-50%) !important;
  }
}


/* v172 - Admin kategori kartları mouse ile sürükle-bırak sıralama */
.category-sort-note {
  margin: 4px 0 14px !important;
}

.category-admin-list[data-category-sort-list] {
  position: relative !important;
}

.category-admin-row[draggable="true"] {
  position: relative !important;
  padding-left: 46px !important;
  transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease, background .16s ease !important;
}

.category-admin-row.is-dragging {
  opacity: .68 !important;
  transform: scale(.998) !important;
  box-shadow: 0 18px 46px rgba(74, 12, 33, .12) !important;
}

.category-admin-row.drag-over-before,
.category-admin-row.drag-over-after {
  border-color: rgba(176, 12, 31, .44) !important;
  background: rgba(176, 12, 31, .035) !important;
}

.category-admin-row.drag-over-before::before,
.category-admin-row.drag-over-after::after {
  content: "" !important;
  position: absolute !important;
  left: 18px !important;
  right: 18px !important;
  height: 3px !important;
  border-radius: 99px !important;
  background: #b00c1f !important;
  box-shadow: 0 7px 18px rgba(176, 12, 31, .24) !important;
  pointer-events: none !important;
  z-index: 5 !important;
}

.category-admin-row.drag-over-before::before {
  top: -3px !important;
}

.category-admin-row.drag-over-after::after {
  bottom: -3px !important;
}

.category-drag-handle {
  position: absolute !important;
  left: 12px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 28px !important;
  height: 34px !important;
  border: 1px solid rgba(226, 215, 207, .86) !important;
  border-radius: 11px !important;
  background: #fffaf6 !important;
  color: #8b746c !important;
  display: inline-grid !important;
  place-items: center !important;
  cursor: grab !important;
  font-size: 16px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  z-index: 6 !important;
}

.category-drag-handle:active {
  cursor: grabbing !important;
}

.category-drag-handle:hover {
  border-color: rgba(176, 12, 31, .35) !important;
  color: #b00c1f !important;
  background: rgba(176, 12, 31, .045) !important;
}

.category-admin-row input,
.category-admin-row select,
.category-admin-row button:not(.category-drag-handle) {
  cursor: auto !important;
}

@media (max-width: 768px) {
  .category-admin-row[draggable="true"] {
    padding-left: 42px !important;
  }

  .category-drag-handle {
    left: 10px !important;
    width: 28px !important;
    height: 34px !important;
  }
}


/* assets/css/lunqa-performance-v222.css */
.menu-row {
  content-visibility: auto;
  contain-intrinsic-block-size: 98px;
}

.assistant-message {
  content-visibility: auto;
  contain-intrinsic-block-size: 86px;
}

@supports not (content-visibility: auto) {
  .menu-row,
  .assistant-message {
    content-visibility: visible;
  }
}


/* assets/css/lunqa-barista-drink-finder-v301.css */
/* LUNQA Barista drink finder v3.1 */
.assistant-discovery-launch {
  width: calc(100% - 32px);
  min-height: 66px;
  margin: 12px 16px 0;
  padding: 10px 12px;
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  border: 1px solid rgba(142, 11, 23, .18);
  border-radius: 16px;
  color: #fff;
  background:
    radial-gradient(circle at 86% 0%, rgba(255, 255, 255, .18), transparent 35%),
    linear-gradient(135deg, #76101b, #a40f20);
  box-shadow: 0 10px 24px rgba(118, 16, 27, .18);
  text-align: left;
  cursor: pointer;
  overflow: hidden;
  position: relative;
}

.assistant-discovery-launch::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(105deg, transparent 25%, rgba(255, 255, 255, .14) 48%, transparent 70%);
  transform: translateX(-110%);
  pointer-events: none;
}

.assistant-discovery-launch:hover::after,
.assistant-discovery-launch:focus-visible::after {
  animation: lunqa-discovery-shine .8s ease-out both;
}

.assistant-discovery-launch:focus-visible {
  outline: 3px solid rgba(164, 15, 32, .24);
  outline-offset: 3px;
}

.assistant-discovery-mark {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(255, 255, 255, .26);
  border-radius: 50%;
  background: rgba(255, 255, 255, .12);
  font-size: 18px;
}

.assistant-discovery-copy {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.assistant-discovery-copy strong {
  color: #fff;
  font-size: 12px;
  line-height: 1.2;
}

.assistant-discovery-copy small {
  color: rgba(255, 255, 255, .78);
  font-size: 10px;
  line-height: 1.25;
}

.assistant-discovery-launch > em {
  color: #fff;
  font-size: 10px;
  font-style: normal;
  font-weight: 900;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.assistant-quick-actions.is-drink-finder {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
}

.assistant-quick-actions.is-drink-finder button {
  min-height: 44px;
  border-color: rgba(142, 11, 23, .18);
  border-radius: 12px;
  color: #76101b;
  background: #fffaf7;
}

.assistant-message.is-reveal {
  width: 100%;
  animation: lunqa-reveal-entry .58s cubic-bezier(.2, .86, .25, 1) both;
}

.assistant-message.is-reveal .assistant-bubble {
  width: 100%;
  max-width: 100%;
  gap: 7px;
  padding: 8px;
  border: 1px solid rgba(142, 11, 23, .14);
  border-radius: 20px;
  background:
    radial-gradient(circle at 100% 0%, rgba(164, 15, 32, .09), transparent 42%),
    #fffaf7;
  box-shadow: 0 16px 34px rgba(74, 34, 25, .11);
}

.assistant-message.is-reveal .assistant-bubble > p {
  padding: 0 2px;
  border: 0;
  background: transparent;
}

.assistant-reveal-heading {
  display: grid;
  gap: 2px;
  padding: 1px 2px 0;
}

.assistant-reveal-heading span {
  color: #9b1422;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .11em;
  text-transform: uppercase;
}

.assistant-reveal-heading strong {
  color: #281a15;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 18px;
  line-height: 1.15;
}

.assistant-product-card.is-reveal-card {
  grid-template-columns: 82px minmax(0, 1fr) !important;
  grid-template-rows: auto auto !important;
  gap: 0 10px;
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
  padding: 7px;
  border: 1px solid rgba(142, 11, 23, .14);
  border-radius: 16px;
  background: #fff;
  overflow: hidden;
  box-shadow: 0 10px 24px rgba(62, 34, 26, .1);
  animation: lunqa-card-unfold .72s .08s cubic-bezier(.17, .82, .2, 1) both;
}

.assistant-product-card.is-reveal-card::before {
  content: "";
  position: absolute;
  z-index: 2;
  inset: 0;
  background: linear-gradient(112deg, transparent 20%, rgba(255, 255, 255, .7) 48%, transparent 72%);
  transform: translateX(-125%);
  animation: lunqa-card-glint .85s .5s ease-out both;
  pointer-events: none;
}

.assistant-product-card.is-reveal-card::after {
  display: none;
}

.assistant-product-card.is-reveal-card img {
  grid-column: 1 !important;
  grid-row: 1 / 3 !important;
  width: 82px !important;
  height: 96px !important;
  align-self: stretch;
  border-radius: 11px;
  object-fit: cover;
  transform: scale(1.035);
  animation: lunqa-card-image-settle .9s .12s ease-out both;
}

.assistant-product-card.is-reveal-card .assistant-product-copy {
  grid-column: 2 !important;
  grid-row: 1 !important;
  gap: 4px;
  padding: 5px 3px 3px 0;
}

.assistant-product-card.is-reveal-card .assistant-product-copy strong {
  color: #281a15;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 16px;
}

.assistant-product-card.is-reveal-card .assistant-product-copy em {
  font-size: 11px;
  -webkit-line-clamp: 2;
}

.assistant-reveal-open {
  grid-column: 2 !important;
  grid-row: 2 !important;
  min-width: 0;
  min-height: 30px;
  margin: 0 3px 0 0;
  padding-top: 5px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-top: 1px solid rgba(142, 11, 23, .1);
  color: #8e0b17;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .02em;
}

@media (max-width: 520px) {
  .assistant-widget {
    right: 12px !important;
    left: 12px !important;
    width: auto !important;
    justify-items: stretch;
  }

  .assistant-widget .assistant-fab {
    justify-self: end;
  }

  .assistant-widget .assistant-panel {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box;
  }
}

@keyframes lunqa-discovery-shine {
  to { transform: translateX(110%); }
}

@keyframes lunqa-reveal-entry {
  from { opacity: 0; transform: translateY(18px) scale(.965); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}

@keyframes lunqa-card-unfold {
  from { opacity: 0; transform: perspective(700px) rotateX(9deg) translateY(14px) scale(.94); }
  to { opacity: 1; transform: perspective(700px) rotateX(0) translateY(0) scale(1); }
}

@keyframes lunqa-card-glint {
  to { transform: translateX(125%); }
}

@keyframes lunqa-card-image-settle {
  from { opacity: .65; transform: scale(1.12); filter: saturate(.7); }
  to { opacity: 1; transform: scale(1.035); filter: saturate(1); }
}

@media (prefers-reduced-motion: reduce) {
  .assistant-discovery-launch::after,
  .assistant-message.is-reveal,
  .assistant-product-card.is-reveal-card,
  .assistant-product-card.is-reveal-card::before,
  .assistant-product-card.is-reveal-card img {
    animation: none !important;
    transform: none !important;
    transition: none !important;
  }
}


/* assets/css/lunqa-operations-v320.css */
/* LUNQA v3.2 customer preferences + availability operations */

.assistant-quick-actions {
  scrollbar-width: none;
}

.assistant-quick-actions::-webkit-scrollbar {
  display: none;
}

.menu-preference-shell {
  margin: 14px 0 6px;
  padding: 12px;
  border: 1px solid rgba(142, 11, 23, .1);
  border-radius: 18px;
  background: rgba(255, 250, 247, .82);
  box-shadow: 0 10px 24px rgba(65, 36, 28, .045);
}

.menu-preference-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 9px;
}

.menu-preference-head > span {
  display: grid;
  gap: 2px;
}

.menu-preference-head strong {
  color: #3a2821;
  font-size: 13px;
}

.menu-preference-head small {
  color: rgba(58, 40, 33, .62);
  font-size: 10px;
  line-height: 1.35;
}

.menu-preference-head > button {
  min-height: 32px;
  padding: 0 10px;
  border: 0;
  color: #8e0b17;
  background: transparent;
  font-size: 11px;
  font-weight: 800;
}

.menu-preference-chips {
  display: flex;
  gap: 7px;
  overflow-x: auto;
  padding: 2px 1px 4px;
  scrollbar-width: none;
  scroll-snap-type: x proximity;
}

.menu-preference-chips::-webkit-scrollbar {
  display: none;
}

.menu-preference-chips button {
  flex: 0 0 auto;
  min-height: 44px;
  padding: 0 15px;
  border: 1px solid rgba(91, 62, 52, .13);
  border-radius: 999px;
  color: #4a352e;
  background: #fff;
  box-shadow: 0 5px 14px rgba(55, 32, 24, .045);
  font-size: 11px;
  font-weight: 800;
  scroll-snap-align: start;
}

.menu-preference-chips button.active {
  border-color: #8e0b17;
  color: #fff;
  background: #8e0b17;
  box-shadow: 0 8px 18px rgba(142, 11, 23, .18);
}

.menu-row.is-sold-out {
  opacity: .72;
}

.menu-row.is-sold-out .menu-thumb img {
  filter: saturate(.55);
}

.sold-out-chip {
  position: absolute;
  right: 6px;
  bottom: 6px;
  z-index: 2;
  padding: 4px 7px;
  border-radius: 999px;
  color: #fff;
  background: rgba(43, 34, 30, .9);
  font-size: 8px;
  font-weight: 900;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.menu-favorite-mark {
  display: inline-grid;
  place-items: center;
  margin-left: 7px;
  color: #a40f20;
  font-family: Arial, sans-serif;
  font-size: .72em;
  vertical-align: .12em;
}

.product-availability-note {
  display: grid;
  gap: 2px;
  margin: 8px 0 12px;
  padding: 11px 13px;
  border: 1px solid rgba(142, 11, 23, .14);
  border-radius: 14px;
  color: #5a302a;
  background: #fff5f1;
}

.product-availability-note strong {
  color: #8e0b17;
  font-size: 12px;
}

.product-availability-note span {
  font-size: 10px;
  line-height: 1.4;
}

.detail-primary-actions {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 46px 46px;
  gap: 8px;
  align-items: stretch;
  margin: 14px 0 10px;
}

.detail-primary-actions .detail-barista-btn {
  margin: 0 !important;
}

.detail-icon-action {
  width: 46px;
  min-height: 46px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(142, 11, 23, .15);
  border-radius: 15px;
  color: #8e0b17;
  background: #fffaf7;
  font-size: 18px;
  font-weight: 900;
}

.detail-icon-action.active {
  color: #fff;
  background: #8e0b17;
}

.detail-icon-action.copied {
  color: #fff;
  background: #366a4a;
}

.product-quality-console {
  display: grid;
  grid-template-columns: minmax(190px, .7fr) minmax(0, 2fr);
  gap: 18px;
  align-items: stretch;
}

.product-quality-score {
  display: grid;
  align-content: center;
  gap: 4px;
  min-height: 124px;
  padding: 18px;
  border: 1px solid rgba(142, 11, 23, .1);
  border-radius: 18px;
  background:
    radial-gradient(circle at 100% 0%, rgba(164, 15, 32, .1), transparent 46%),
    #fffaf7;
}

.product-quality-score strong {
  color: #8e0b17;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 30px;
}

.product-quality-score span {
  color: #34241f;
  font-size: 13px;
  font-weight: 900;
}

.product-quality-score small {
  color: rgba(52, 36, 31, .6);
  font-size: 10px;
}

.product-quality-actions {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 9px;
}

.product-quality-actions button {
  min-width: 0;
  min-height: 112px;
  display: grid;
  align-content: center;
  justify-items: start;
  gap: 4px;
  padding: 14px;
  border: 1px solid rgba(83, 57, 48, .11);
  border-radius: 16px;
  color: #392720;
  background: #fff;
  text-align: left;
}

.product-quality-actions button:hover {
  border-color: rgba(142, 11, 23, .24);
  box-shadow: 0 10px 24px rgba(62, 34, 26, .08);
}

.product-quality-actions strong {
  color: #8e0b17;
  font-size: 22px;
}

.product-quality-actions span {
  font-size: 11px;
  font-weight: 900;
}

.product-quality-actions small {
  color: rgba(57, 39, 32, .6);
  font-size: 9px;
  line-height: 1.35;
}

.product-availability-cell {
  display: grid;
  gap: 3px;
  justify-items: start;
}

.product-availability-cell .status-pill {
  min-height: 32px;
  cursor: pointer;
}

.product-availability-cell .status-pill.sold-out {
  border-color: rgba(142, 11, 23, .18);
  color: #8e0b17;
  background: #fff1ed;
}

.product-availability-cell small {
  color: rgba(61, 43, 36, .58);
  font-size: 8px;
}

@media (max-width: 900px) {
  .product-quality-console {
    grid-template-columns: 1fr;
  }

  .product-quality-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 560px) {
  .menu-preference-shell {
    margin: 10px 0 4px;
    padding: 10px;
    border-radius: 16px;
  }

  .detail-primary-actions {
    grid-template-columns: minmax(0, 1fr) 44px 44px;
  }

  .detail-icon-action {
    width: 44px;
    min-height: 44px;
  }

  .product-quality-actions {
    grid-template-columns: 1fr 1fr;
  }

  .product-quality-actions button {
    min-height: 98px;
    padding: 11px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .menu-preference-chips {
    scroll-behavior: auto;
  }
}


/* assets/css/lunqa-menu-responsive-v330.css */
/* LUNQA v3.3 - responsive desktop menu workspace
   Keeps the existing visual language while removing the legacy grid auto-placement gap. */

.menu-content-column {
  box-sizing: border-box;
  min-width: 0;
  width: 100%;
}

.menu-results-summary {
  box-sizing: border-box;
  min-height: 44px;
  margin: 8px 0 12px;
  padding: 8px 4px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  color: #4d403b;
}

.menu-results-copy {
  min-width: 0;
  display: inline-flex;
  align-items: baseline;
  gap: 5px;
  font-size: 13px;
  font-weight: 800;
}

.menu-results-copy strong {
  color: #7d0a17;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 22px;
  line-height: 1;
}

.menu-results-copy small {
  margin-left: 4px;
  color: #766863;
  font-size: 11.5px;
  font-weight: 750;
}

.menu-active-filters {
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 7px;
  overflow-x: auto;
  scrollbar-width: none;
}

.menu-active-filters::-webkit-scrollbar {
  display: none;
}

.menu-active-filters button {
  min-height: 34px;
  padding: 0 11px;
  border: 1px solid rgba(125, 10, 23, .14);
  border-radius: 999px;
  color: #7d0a17;
  background: #fff8f5;
  font-size: 11px;
  font-weight: 900;
  white-space: nowrap;
}

.menu-active-filters button span {
  margin-left: 4px;
  font-size: 15px;
  line-height: 1;
}

.category-reference-item:focus-visible,
.menu-preference-chips button:focus-visible,
.menu-active-filters button:focus-visible,
.page-panel-menu .menu-row:focus-visible {
  outline: 3px solid #7d0a17 !important;
  outline-offset: 3px !important;
}

@media (max-width: 768px) {
  .page-panel-menu .menu-content-column {
    display: block;
    width: 100%;
  }

  .page-panel-menu .menu-results-summary {
    width: calc(100% - 32px);
    min-height: 42px;
    margin: 7px 16px 10px;
    padding: 6px 0;
  }

  .menu-results-copy {
    flex-wrap: wrap;
    gap: 3px 5px;
  }

  .menu-results-copy strong {
    font-size: 20px;
  }

  .menu-results-copy small {
    flex-basis: 100%;
    margin-left: 0;
    font-size: 10.5px;
  }

  .menu-active-filters {
    max-width: 52%;
  }

  .menu-active-filters button {
    min-height: 36px;
  }

  .page-panel-menu .menu-content-column > .menu-list {
    width: calc(100% - 32px) !important;
    margin: 0 16px !important;
    padding: 0 0 112px !important;
  }

  .page-panel-menu.is-special-list .menu-content-column {
    width: 100%;
    max-width: none;
    margin: 0;
  }
}

@media (min-width: 769px) {
  .page-panel-menu,
  .page-panel.page-panel-menu {
    box-sizing: border-box !important;
    width: min(calc(100% - 40px), 1380px) !important;
    max-width: 1380px !important;
    margin: -12px auto 0 !important;
    padding: 42px 0 126px !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: auto !important;
    align-items: start !important;
    column-gap: 28px !important;
    row-gap: 16px !important;
  }

  /* Beat the legacy `main.page-panel` spacing rule without changing mobile. */
  html body main.page-panel.page-panel-menu {
    padding: 28px 0 126px !important;
  }

  .page-panel-menu > .category-reference-shell,
  .page-panel.page-panel-menu > .category-reference-shell {
    box-sizing: border-box !important;
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    position: relative !important;
    top: auto !important;
    overflow: hidden !important;
    border: 1px solid rgba(74, 12, 33, .13) !important;
    border-radius: 22px !important;
    background: rgba(255, 252, 249, .72) !important;
    box-shadow: 0 16px 34px rgba(57, 29, 23, .055) !important;
  }

  .page-panel-menu > .category-reference-shell::before,
  .page-panel.page-panel-menu > .category-reference-shell::before {
    content: "Kategoriler" !important;
    display: block !important;
    margin: 0 !important;
    padding: 14px 18px 10px !important;
    border: 0 !important;
    color: #2b1c17 !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 18px !important;
    font-weight: 600 !important;
    line-height: 1.1 !important;
    letter-spacing: -.02em !important;
  }

  .page-panel-menu > .category-reference-shell .category-reference-strip,
  .page-panel.page-panel-menu > .category-reference-shell .category-reference-strip {
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 4px 14px 13px !important;
    display: flex !important;
    flex-flow: row nowrap !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    gap: 8px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    border: 0 !important;
    background: transparent !important;
    scrollbar-width: thin !important;
    scroll-snap-type: x proximity;
  }

  .page-panel-menu > .category-reference-shell .category-reference-item,
  .page-panel.page-panel-menu > .category-reference-shell .category-reference-item,
  .page-panel-menu > .category-reference-shell .category-reference-item.active {
    box-sizing: border-box !important;
    flex: 0 0 94px !important;
    width: 94px !important;
    min-width: 94px !important;
    max-width: 94px !important;
    min-height: 88px !important;
    margin: 0 !important;
    padding: 6px 5px 8px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 7px !important;
    border: 1px solid transparent !important;
    border-radius: 16px !important;
    background: transparent !important;
    box-shadow: none !important;
    text-align: center !important;
    scroll-snap-align: start;
  }

  .page-panel-menu > .category-reference-shell .category-reference-item:hover,
  .page-panel-menu > .category-reference-shell .category-reference-item:focus-visible {
    border-color: rgba(125, 10, 23, .1) !important;
    background: rgba(125, 10, 23, .045) !important;
  }

  .page-panel-menu > .category-reference-shell .category-reference-item.active {
    border-color: rgba(125, 10, 23, .13) !important;
    background: rgba(125, 10, 23, .07) !important;
  }

  .page-panel-menu > .category-reference-shell .category-reference-icon,
  .page-panel-menu > .category-reference-shell .category-reference-vector,
  .page-panel-menu > .category-reference-shell .menu-category-photo-media,
  .page-panel-menu > .category-reference-shell .category-reference-item.active .category-reference-icon,
  .page-panel-menu > .category-reference-shell .category-reference-item.active .category-reference-vector,
  .page-panel-menu > .category-reference-shell .category-reference-item.active .menu-category-photo-media {
    box-sizing: border-box !important;
    flex: 0 0 52px !important;
    width: 52px !important;
    height: 52px !important;
    min-width: 52px !important;
    min-height: 52px !important;
    max-width: 52px !important;
    max-height: 52px !important;
    border: 2px solid rgba(125, 10, 23, .12) !important;
    border-radius: 50% !important;
    background: #f5ebe5 !important;
    box-shadow: 0 7px 16px rgba(64, 37, 29, .08) !important;
    transform: none !important;
    overflow: hidden !important;
  }

  .page-panel-menu > .category-reference-shell .category-reference-item.active .category-reference-icon,
  .page-panel-menu > .category-reference-shell .category-reference-item.active .category-reference-vector,
  .page-panel-menu > .category-reference-shell .category-reference-item.active .menu-category-photo-media {
    border: 3px solid #9d1020 !important;
    box-shadow: 0 0 0 3px rgba(157, 16, 32, .09) !important;
  }

  .page-panel-menu > .category-reference-shell .category-reference-label,
  .page-panel-menu > .category-reference-shell .menu-category-photo-label {
    width: 100% !important;
    max-width: 84px !important;
    min-height: 24px !important;
    color: #2a1d18 !important;
    font-size: 11px !important;
    font-weight: 850 !important;
    line-height: 1.08 !important;
    text-align: center !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }

  .page-panel-menu > .menu-content-column,
  .page-panel.page-panel-menu > .menu-content-column {
    grid-column: 1 !important;
    grid-row: 2 !important;
    min-width: 0 !important;
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 0 !important;
  }

  .page-panel-menu .menu-preference-shell {
    box-sizing: border-box !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 14px 16px !important;
    border-radius: 20px !important;
  }

  .page-panel-menu .menu-preference-chips {
    gap: 8px !important;
  }

  .page-panel-menu .menu-preference-chips button {
    min-height: 40px !important;
    padding-inline: 15px !important;
  }

  .page-panel-menu .menu-results-summary {
    width: 100%;
    margin: 7px 0 10px;
    padding-inline: 3px;
  }

  .page-panel-menu .menu-content-column > .menu-list {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    align-items: stretch !important;
    gap: 18px !important;
  }

  .page-panel-menu .menu-content-column > .menu-list > .empty-state {
    grid-column: 1 / -1;
  }

  .page-panel-menu .menu-row {
    box-sizing: border-box !important;
    min-width: 0 !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 0 16px !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: auto minmax(76px, 1fr) auto !important;
    gap: 0 !important;
    align-content: stretch !important;
    overflow: hidden !important;
    border: 1px solid rgba(74, 12, 33, .12) !important;
    border-radius: 18px !important;
    background: rgba(255, 255, 255, .86) !important;
    box-shadow: 0 12px 28px rgba(53, 30, 23, .075) !important;
    text-align: left !important;
    transform: none !important;
  }

  .page-panel-menu .menu-row:hover {
    border-color: rgba(125, 10, 23, .22) !important;
    box-shadow: 0 18px 36px rgba(53, 30, 23, .12) !important;
    transform: translateY(-2px) !important;
  }

  .page-panel-menu .menu-row .menu-thumb {
    box-sizing: border-box !important;
    width: 100% !important;
    height: auto !important;
    min-width: 0 !important;
    aspect-ratio: 4 / 3 !important;
    border-radius: 0 !important;
    overflow: hidden !important;
  }

  .page-panel-menu .menu-row .menu-thumb img {
    width: 100% !important;
    height: 100% !important;
    min-width: 100% !important;
    object-fit: cover !important;
    border-radius: 0 !important;
  }

  .page-panel-menu .menu-row > span:nth-child(2) {
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    padding: 14px 15px 4px !important;
    display: block !important;
  }

  .page-panel-menu .menu-row .menu-title {
    display: block !important;
    color: #251914 !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 17px !important;
    font-weight: 750 !important;
    line-height: 1.12 !important;
    white-space: normal !important;
  }

  .page-panel-menu .menu-row .menu-desc {
    margin-top: 7px !important;
    display: -webkit-box !important;
    min-height: 34px !important;
    color: #74655f !important;
    font-size: 11.5px !important;
    line-height: 1.42 !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
  }

  .page-panel-menu .menu-row .price {
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 8px 0 0 !important;
    padding: 0 15px !important;
    align-self: end !important;
    justify-self: stretch !important;
    color: #8e0b17 !important;
    font-size: 17px !important;
    font-weight: 950 !important;
    text-align: left !important;
  }

  .page-panel-menu.is-special-list,
  .page-panel.page-panel-menu.is-special-list {
    display: block !important;
  }

  .page-panel-menu.is-special-list > .menu-content-column {
    width: min(100%, 1080px) !important;
    margin: 0 auto !important;
  }
}

@media (min-width: 769px) and (max-width: 1199px) {
  html body main.page-panel.page-panel-menu > nav.category-reference-shell {
    min-height: 0 !important;
    margin: 0 !important;
  }

  html body main.page-panel.page-panel-menu > nav.category-reference-shell .category-reference-strip {
    min-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 4px 14px 13px !important;
    scrollbar-width: none !important;
  }

  html body main.page-panel.page-panel-menu > nav.category-reference-shell .category-reference-strip::-webkit-scrollbar {
    display: none !important;
  }
}

@media (min-width: 900px) and (max-width: 1199px) {
  .page-panel-menu .menu-content-column > .menu-list {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (min-width: 1200px) {
  .page-panel-menu:not(.is-special-list),
  .page-panel.page-panel-menu:not(.is-special-list) {
    grid-template-columns: 248px minmax(0, 1fr) !important;
    grid-template-rows: auto !important;
    row-gap: 0 !important;
  }

  .page-panel-menu:not(.is-special-list) > .category-reference-shell {
    grid-column: 1 !important;
    grid-row: 1 !important;
    position: sticky !important;
    top: 22px !important;
    max-height: calc(100vh - 44px) !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;
  }

  .page-panel-menu:not(.is-special-list) > .category-reference-shell::before {
    padding: 18px 18px 14px !important;
    font-size: 20px !important;
  }

  .page-panel-menu:not(.is-special-list) > .category-reference-shell .category-reference-strip {
    padding: 9px 10px 12px !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 3px !important;
    overflow: visible !important;
    scroll-snap-type: none;
  }

  .page-panel-menu:not(.is-special-list) > .category-reference-shell .category-reference-item,
  .page-panel-menu:not(.is-special-list) > .category-reference-shell .category-reference-item.active {
    flex: none !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    min-height: 58px !important;
    padding: 7px 9px !important;
    flex-direction: row !important;
    justify-content: flex-start !important;
    gap: 11px !important;
    text-align: left !important;
  }

  .page-panel-menu:not(.is-special-list) > .category-reference-shell .category-reference-icon,
  .page-panel-menu:not(.is-special-list) > .category-reference-shell .category-reference-vector,
  .page-panel-menu:not(.is-special-list) > .category-reference-shell .menu-category-photo-media,
  .page-panel-menu:not(.is-special-list) > .category-reference-shell .category-reference-item.active .category-reference-icon,
  .page-panel-menu:not(.is-special-list) > .category-reference-shell .category-reference-item.active .category-reference-vector,
  .page-panel-menu:not(.is-special-list) > .category-reference-shell .category-reference-item.active .menu-category-photo-media {
    flex: 0 0 44px !important;
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    min-height: 44px !important;
    max-width: 44px !important;
    max-height: 44px !important;
  }

  .page-panel-menu:not(.is-special-list) > .category-reference-shell .category-reference-label,
  .page-panel-menu:not(.is-special-list) > .category-reference-shell .menu-category-photo-label {
    width: auto !important;
    max-width: none !important;
    min-height: 0 !important;
    flex: 1 1 auto !important;
    font-size: 12px !important;
    line-height: 1.16 !important;
    text-align: left !important;
  }

  .page-panel-menu:not(.is-special-list) > .menu-content-column {
    grid-column: 2 !important;
    grid-row: 1 !important;
  }

  .page-panel-menu .menu-content-column > .menu-list {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .page-panel-menu .menu-row {
    transition: none !important;
  }

  .page-panel-menu .menu-row:hover {
    transform: none !important;
  }
}


/* assets/css/lunqa-barista-reasoning-v340.css */
/* LUNQA v3.4 - explainable Barista and focused admin workspace */

.admin-topbar-premium {
  position: sticky !important;
  top: 14px !important;
  z-index: 24 !important;
  border-color: rgba(74, 12, 33, .1) !important;
  background: rgba(255, 252, 249, .9) !important;
  box-shadow: 0 18px 44px rgba(53, 30, 23, .08) !important;
  backdrop-filter: blur(18px) saturate(1.08);
}

.admin-title h1 {
  letter-spacing: -.035em !important;
}

.admin-nav-btn {
  grid-template-columns: 40px minmax(0, 1fr) auto 8px !important;
}

.admin-nav-badge {
  min-width: 24px;
  height: 24px;
  padding: 0 7px;
  display: inline-grid;
  place-items: center;
  border: 1px solid rgba(125, 10, 23, .12);
  border-radius: 999px;
  color: #7d0a17;
  background: rgba(125, 10, 23, .07);
  font-size: 10px;
  font-weight: 950;
  line-height: 1;
}

.admin-nav-btn.active .admin-nav-badge {
  color: #fff;
  border-color: transparent;
  background: #8f0c19;
}

.admin-shell button:focus-visible,
.admin-shell input:focus-visible,
.admin-shell select:focus-visible,
.admin-shell textarea:focus-visible,
.admin-shell summary:focus-visible {
  outline: 3px solid #9f0d1a !important;
  outline-offset: 3px !important;
}

.admin-barista-owner {
  gap: 18px !important;
}

.admin-barista-owner .owner-hero-card {
  overflow: hidden;
  position: relative;
  border-color: rgba(125, 10, 23, .12) !important;
  background:
    radial-gradient(circle at 90% 10%, rgba(125, 10, 23, .1), transparent 28%),
    linear-gradient(135deg, rgba(255, 252, 249, .98), rgba(255, 246, 242, .92)) !important;
}

.admin-barista-owner .owner-hero-card::after {
  content: "";
  width: 150px;
  height: 150px;
  position: absolute;
  right: -50px;
  bottom: -72px;
  border: 1px solid rgba(125, 10, 23, .11);
  border-radius: 50%;
  pointer-events: none;
}

.barista-engine-status {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  flex-wrap: wrap;
}

.barista-engine-status .owner-status-pill:not(.active) {
  color: #685b55 !important;
  border-color: rgba(74, 12, 33, .11) !important;
  background: rgba(255, 255, 255, .74) !important;
}

.admin-barista-owner .owner-summary-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

.admin-barista-owner .owner-summary-card {
  min-height: 96px !important;
}

.barista-insight-strip {
  min-height: 76px;
  padding: 14px 16px !important;
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) auto;
  align-items: center;
  gap: 13px;
  border-color: rgba(125, 10, 23, .12) !important;
  background: linear-gradient(90deg, rgba(125, 10, 23, .055), rgba(255, 255, 255, .84)) !important;
}

.barista-insight-strip > span {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 14px;
  color: #8f0c19;
  background: rgba(125, 10, 23, .09);
}

.barista-insight-strip strong,
.barista-insight-strip p {
  display: block;
  margin: 0;
}

.barista-insight-strip strong {
  color: #2c1e19;
  font-size: 12px;
}

.barista-insight-strip p {
  margin-top: 3px;
  color: #70625d;
  font-size: 12px;
  line-height: 1.4;
}

.barista-decision-lab {
  padding: 22px !important;
  overflow: hidden;
  border-color: rgba(125, 10, 23, .13) !important;
  background:
    radial-gradient(circle at 100% 0, rgba(125, 10, 23, .07), transparent 30%),
    rgba(255, 252, 249, .94) !important;
}

.barista-lab-head {
  align-items: flex-start !important;
  gap: 20px !important;
}

.barista-lab-kicker {
  margin-bottom: 5px;
  display: block;
  color: #9f0d1a;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.barista-lab-head h2 {
  margin-bottom: 5px !important;
  font-size: clamp(23px, 2vw, 31px) !important;
  letter-spacing: -.035em !important;
}

.barista-lab-head p {
  max-width: 700px;
}

.barista-lab-scenarios {
  max-width: 460px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 7px;
}

.barista-lab-scenarios button {
  min-height: 34px;
  padding: 0 11px;
  border: 1px solid rgba(125, 10, 23, .12);
  border-radius: 999px;
  color: #6f151e;
  background: rgba(255, 255, 255, .78);
  font-size: 10.5px;
  font-weight: 900;
  white-space: nowrap;
}

.barista-lab-scenarios button:hover {
  border-color: rgba(125, 10, 23, .28);
  background: #fff7f4;
}

.barista-lab-query {
  margin-top: 18px;
  padding: 14px;
  border: 1px solid rgba(74, 12, 33, .1);
  border-radius: 18px;
  background: rgba(255, 255, 255, .76);
}

.barista-lab-query > label {
  margin: 0 0 7px 2px;
  display: block;
  color: #4f403a;
  font-size: 11px;
  font-weight: 900;
}

.barista-lab-query > div {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 9px;
}

.barista-lab-query input {
  min-width: 0;
  height: 46px !important;
  border-radius: 14px !important;
  background: #fff !important;
}

.barista-lab-query button {
  min-height: 46px !important;
  border-radius: 14px !important;
}

.barista-lab-result,
.barista-lab-placeholder {
  margin-top: 15px;
  border: 1px solid rgba(74, 12, 33, .1);
  border-radius: 20px;
  background: rgba(255, 255, 255, .72);
}

.barista-lab-result {
  padding: 17px;
}

.barista-lab-placeholder {
  min-height: 154px;
  padding: 28px;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 6px;
  color: #766963;
  text-align: center;
}

.barista-lab-placeholder > span {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  border-radius: 15px;
  color: #8f0c19;
  background: rgba(125, 10, 23, .07);
}

.barista-lab-placeholder strong {
  color: #2f211c;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 18px;
}

.barista-lab-placeholder p {
  max-width: 580px;
  margin: 0;
  font-size: 12px;
  line-height: 1.5;
}

.barista-lab-result-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
}

.barista-lab-result-head > div:first-child {
  min-width: 0;
  display: grid;
  justify-items: start;
  gap: 5px;
}

.barista-lab-result-head > div:first-child > strong {
  color: #211712;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 22px;
}

.barista-lab-result-head small {
  color: #776a64;
  font-size: 11px;
}

.barista-decision-status {
  min-height: 25px;
  padding: 0 9px;
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  color: #5c4c46;
  background: rgba(83, 67, 60, .08);
  font-size: 9.5px;
  font-weight: 950;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.barista-decision-status.recommend,
.barista-decision-status.answer {
  color: #17613d;
  background: rgba(32, 131, 82, .1);
}

.barista-decision-status.clarify {
  color: #875b00;
  background: rgba(201, 139, 0, .12);
}

.barista-decision-status.refuse,
.barista-decision-status.no-match {
  color: #8f0c19;
  background: rgba(143, 12, 25, .1);
}

.barista-confidence-ring {
  --barista-confidence: 0;
  width: 92px;
  height: 92px;
  flex: 0 0 92px;
  display: grid;
  place-items: center;
  align-content: center;
  position: relative;
  border-radius: 50%;
  background:
    radial-gradient(circle, #fffaf6 58%, transparent 60%),
    conic-gradient(#8f0c19 calc(var(--barista-confidence) * 1%), rgba(143, 12, 25, .1) 0);
}

.barista-confidence-ring strong {
  color: #7d0a17;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 21px;
  line-height: 1;
}

.barista-confidence-ring span {
  max-width: 62px;
  margin-top: 4px;
  color: #75665f;
  font-size: 8.5px;
  font-weight: 850;
  line-height: 1.08;
  text-align: center;
}

.barista-lab-result blockquote {
  margin: 14px 0 0;
  padding: 13px 15px;
  border: 0;
  border-left: 3px solid #9f0d1a;
  border-radius: 0 14px 14px 0;
  color: #3e302a;
  background: rgba(125, 10, 23, .045);
  font-size: 12.5px;
  font-style: normal;
  line-height: 1.55;
}

.barista-lab-products,
.barista-constraint-chips {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
}

.barista-lab-products {
  margin-top: 10px;
}

.barista-lab-products span,
.barista-constraint-chips span {
  min-height: 27px;
  padding: 0 9px;
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  color: #7d0a17;
  background: rgba(125, 10, 23, .075);
  font-size: 9.5px;
  font-weight: 900;
}

.barista-decision-steps {
  margin-top: 15px;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
}

.barista-decision-steps article {
  min-width: 0;
  min-height: 78px;
  padding: 10px;
  display: grid;
  grid-template-columns: 25px minmax(0, 1fr);
  align-items: start;
  gap: 8px;
  border: 1px solid rgba(74, 12, 33, .09);
  border-radius: 14px;
  background: rgba(255, 252, 249, .86);
}

.barista-decision-steps article > b {
  width: 25px;
  height: 25px;
  display: grid;
  place-items: center;
  border-radius: 9px;
  color: #7d0a17;
  background: rgba(125, 10, 23, .08);
  font-size: 9px;
}

.barista-decision-steps article > span {
  min-width: 0;
  display: grid;
  gap: 4px;
}

.barista-decision-steps strong {
  color: #30211c;
  font-size: 10.5px;
}

.barista-decision-steps small {
  display: -webkit-box;
  overflow: hidden;
  color: #7a6d67;
  font-size: 8.8px;
  line-height: 1.3;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.barista-decision-steps article.complete {
  border-color: rgba(38, 133, 82, .16);
}

.barista-decision-steps article.complete > b {
  color: #17613d;
  background: rgba(38, 133, 82, .1);
}

.barista-decision-steps article.attention {
  border-color: rgba(196, 132, 0, .2);
}

.barista-decision-steps article.blocked {
  border-color: rgba(143, 12, 25, .19);
}

.barista-lab-grid {
  margin-top: 12px;
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
  gap: 10px;
}

.barista-lab-panel {
  min-width: 0;
  padding: 13px;
  border: 1px solid rgba(74, 12, 33, .09);
  border-radius: 15px;
  background: rgba(255, 252, 249, .86);
}

.barista-lab-panel-head {
  margin-bottom: 10px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.barista-lab-panel-head strong {
  color: #34251f;
  font-size: 11px;
}

.barista-lab-panel-head span {
  color: #7d7069;
  font-size: 9.5px;
  font-weight: 800;
}

.barista-candidate-funnel {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 7px;
}

.barista-candidate-funnel article {
  min-height: 58px;
  padding: 9px;
  display: grid;
  align-content: center;
  gap: 2px;
  border-radius: 12px;
  background: rgba(125, 10, 23, .045);
}

.barista-candidate-funnel strong {
  color: #7d0a17;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 20px;
}

.barista-candidate-funnel span {
  color: #786b65;
  font-size: 9px;
  font-weight: 850;
}

.barista-constraint-chips {
  margin-top: 9px;
}

.barista-exclusion-list {
  margin-top: 9px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 5px;
}

.barista-exclusion-list span {
  min-width: 0;
  padding: 7px 8px;
  display: flex;
  align-items: center;
  gap: 6px;
  border-radius: 10px;
  color: #736660;
  background: rgba(83, 67, 60, .045);
  font-size: 8.8px;
}

.barista-exclusion-list b {
  color: #8f0c19;
  font-size: 10px;
}

.barista-ranking-list {
  display: grid;
  gap: 6px;
}

.barista-ranking-list article {
  min-width: 0;
  min-height: 48px;
  padding: 7px 9px;
  display: grid;
  grid-template-columns: 26px minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
  border: 1px solid rgba(74, 12, 33, .07);
  border-radius: 11px;
  background: rgba(255, 255, 255, .72);
}

.barista-ranking-list article > b {
  width: 26px;
  height: 26px;
  display: grid;
  place-items: center;
  border-radius: 9px;
  color: #8f0c19;
  background: rgba(125, 10, 23, .08);
  font-size: 10px;
}

.barista-ranking-list article > span {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.barista-ranking-list strong {
  overflow: hidden;
  color: #30221d;
  font-size: 10.5px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.barista-ranking-list small {
  overflow: hidden;
  color: #796c66;
  font-size: 8.6px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.barista-ranking-list em {
  color: #7d0a17;
  font-size: 11px;
  font-style: normal;
  font-weight: 950;
}

.barista-lab-empty {
  margin: 0;
  padding: 14px;
  border-radius: 12px;
  color: #7c6f69;
  background: rgba(83, 67, 60, .04);
  font-size: 10px;
  text-align: center;
}

.barista-counterfactual {
  margin-top: 10px;
  padding: 11px 13px;
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr);
  align-items: center;
  gap: 9px;
  border: 1px solid rgba(125, 10, 23, .11);
  border-radius: 14px;
  background: linear-gradient(90deg, rgba(125, 10, 23, .065), rgba(255, 255, 255, .72));
}

.barista-counterfactual > span {
  width: 32px;
  height: 32px;
  display: grid;
  place-items: center;
  border-radius: 11px;
  color: #8f0c19;
  background: rgba(125, 10, 23, .09);
}

.barista-counterfactual p {
  margin: 0;
  color: #675952;
  font-size: 10.5px;
  line-height: 1.45;
}

.barista-counterfactual strong {
  margin-bottom: 2px;
  display: block;
  color: #382923;
  font-size: 10.5px;
}

.barista-guardrail-list {
  display: grid;
  gap: 7px;
}

.barista-guardrail-list article {
  padding: 9px 10px;
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  border: 1px solid rgba(74, 12, 33, .08);
  border-radius: 12px;
  background: rgba(255, 255, 255, .7);
}

.barista-guardrail-list article > span {
  width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
  border-radius: 10px;
  color: #8f0c19;
  background: rgba(125, 10, 23, .07);
}

.barista-guardrail-list p {
  margin: 0;
  color: #766963;
  font-size: 9.5px;
  line-height: 1.35;
}

.barista-guardrail-list strong {
  display: block;
  color: #352721;
  font-size: 10px;
}

@media (max-width: 1180px) {
  .admin-barista-owner .owner-summary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .barista-lab-head {
    display: grid !important;
  }

  .barista-lab-scenarios {
    max-width: none;
    justify-content: flex-start;
  }

  .barista-decision-steps {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .barista-lab-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 768px) {
  .admin-topbar-premium {
    position: relative !important;
    top: auto !important;
  }

  .admin-barista-owner {
    gap: 12px !important;
  }

  .barista-engine-status {
    width: 100%;
    justify-content: flex-start;
  }

  .barista-insight-strip {
    grid-template-columns: 38px minmax(0, 1fr);
  }

  .barista-insight-strip > button {
    grid-column: 1 / -1;
    width: 100%;
  }

  .barista-decision-lab {
    padding: 15px !important;
  }

  .barista-lab-scenarios {
    width: 100%;
    padding-bottom: 4px;
    flex-wrap: nowrap;
    justify-content: flex-start;
    overflow-x: auto;
    scrollbar-width: none;
  }

  .barista-lab-scenarios::-webkit-scrollbar {
    display: none;
  }

  .barista-lab-query > div {
    grid-template-columns: 1fr;
  }

  .barista-lab-query button {
    width: 100%;
  }

  .barista-lab-result {
    padding: 12px;
  }

  .barista-lab-result-head {
    align-items: flex-start;
  }

  .barista-confidence-ring {
    width: 78px;
    height: 78px;
    flex-basis: 78px;
  }

  .barista-decision-steps {
    grid-template-columns: 1fr;
  }

  .barista-decision-steps article {
    min-height: 58px;
  }

  .barista-exclusion-list {
    grid-template-columns: 1fr;
  }
}

@media (prefers-reduced-motion: reduce) {
  .admin-shell *,
  .admin-shell *::before,
  .admin-shell *::after {
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
  }
}


/* assets/css/lunqa-experience-v350.css */
/* LUNQA v3.5 - discoverable Barista, mood-led menu entry and live QA polish */

.menu-mood-discovery,
.menu-mood-discovery *,
.assistant-fab,
.assistant-fab *,
.assistant-correction-actions,
.assistant-correction-actions * {
  box-sizing: border-box;
}

.menu-mood-discovery {
  position: relative;
  isolation: isolate;
  width: 100%;
  margin: 0 0 12px;
  padding: 17px;
  display: grid;
  grid-template-columns: minmax(190px, .72fr) minmax(0, 2fr);
  align-items: stretch;
  gap: 14px;
  overflow: hidden;
  border: 1px solid rgba(125, 10, 23, .11);
  border-radius: 22px;
  background:
    radial-gradient(circle at 7% 12%, rgba(125, 10, 23, .09), transparent 28%),
    linear-gradient(135deg, #fffaf7 0%, #fffefd 55%, #f9efeb 100%);
  box-shadow: 0 13px 32px rgba(74, 12, 33, .055);
}

.menu-mood-discovery::after {
  content: "✦";
  position: absolute;
  right: -15px;
  bottom: -38px;
  z-index: -1;
  color: rgba(125, 10, 23, .045);
  font-family: Georgia, serif;
  font-size: 132px;
  line-height: 1;
  transform: rotate(-9deg);
}

.menu-mood-intro {
  padding: 6px 7px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.menu-mood-intro b {
  margin-bottom: 6px;
  color: #8e0b17;
  font-size: 9px;
  font-weight: 950;
  letter-spacing: .17em;
}

.menu-mood-intro h2 {
  margin: 0;
  color: #2e211c;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(22px, 2.15vw, 31px);
  font-weight: 700;
  letter-spacing: -.035em;
  line-height: 1.02;
}

.menu-mood-intro p {
  max-width: 300px;
  margin: 8px 0 0;
  color: #72645e;
  font-size: 10.5px;
  line-height: 1.45;
}

.menu-mood-options {
  min-width: 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 9px;
}

.menu-mood-options button {
  position: relative;
  min-width: 0;
  min-height: 116px;
  padding: 13px;
  display: grid;
  grid-template-columns: 29px minmax(0, 1fr);
  grid-template-rows: auto auto 1fr;
  align-content: start;
  align-items: center;
  gap: 2px 8px;
  overflow: hidden;
  border: 1px solid rgba(80, 58, 49, .1);
  border-radius: 17px;
  color: #30221d;
  background: rgba(255, 255, 255, .86);
  box-shadow: 0 8px 20px rgba(50, 29, 22, .035);
  font: inherit;
  text-align: left;
  cursor: pointer;
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease, background .2s ease;
}

.menu-mood-options button > span {
  grid-row: 1 / 3;
  width: 29px;
  height: 29px;
  display: grid;
  place-items: center;
  border-radius: 10px;
  color: #8e0b17;
  background: rgba(125, 10, 23, .075);
  font-size: 9px;
  font-weight: 950;
}

.menu-mood-options strong,
.menu-mood-options small,
.menu-mood-options em {
  min-width: 0;
}

.menu-mood-options strong {
  overflow: hidden;
  font-size: 11.5px;
  font-weight: 900;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.menu-mood-options small {
  overflow: hidden;
  color: #81736c;
  font-size: 8.7px;
  line-height: 1.25;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.menu-mood-options em {
  grid-column: 1 / -1;
  align-self: end;
  margin-top: 9px;
  padding-top: 8px;
  display: flex;
  justify-content: space-between;
  border-top: 1px solid rgba(125, 10, 23, .08);
  color: #8e0b17;
  font-size: 9px;
  font-style: normal;
  font-weight: 900;
}

.menu-mood-options i {
  font-style: normal;
  transition: transform .2s ease;
}

.menu-mood-options button:hover {
  border-color: rgba(125, 10, 23, .24);
  background: #fff;
  box-shadow: 0 13px 26px rgba(74, 12, 33, .09);
  transform: translateY(-2px);
}

.menu-mood-options button:hover i {
  transform: translateX(3px);
}

.menu-mood-options button:focus-visible,
.assistant-fab:focus-visible,
.assistant-correction-actions button:focus-visible {
  outline: 3px solid #7d0a17 !important;
  outline-offset: 3px !important;
}

.assistant-fab-copy {
  display: none;
}

.assistant-correction-actions {
  margin-top: 9px;
  padding: 10px;
  display: grid;
  gap: 7px;
  border: 1px solid rgba(125, 10, 23, .09);
  border-radius: 13px;
  background: linear-gradient(135deg, rgba(125, 10, 23, .035), rgba(255, 255, 255, .72));
}

.assistant-correction-actions > span {
  color: #6c5b54;
  font-size: 9.5px;
  font-weight: 750;
}

.assistant-correction-actions > div {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px;
}

.assistant-correction-actions button {
  min-width: 0;
  min-height: 36px;
  padding: 7px 8px;
  border: 1px solid rgba(125, 10, 23, .16);
  border-radius: 10px;
  color: #7d0a17;
  background: rgba(255, 255, 255, .92);
  font: inherit;
  font-size: 9.5px;
  font-weight: 850;
  line-height: 1.15;
  cursor: pointer;
}

.assistant-correction-actions button:hover {
  border-color: #8e0b17;
  background: #fff8f5;
}

.admin-sidebar .admin-nav {
  overflow-x: hidden !important;
}

.admin-sidebar .admin-nav-btn {
  min-width: 0;
  max-width: 100%;
}

.barista-confidence-ring.is-waiting {
  background: conic-gradient(rgba(125, 10, 23, .09) 0 100%);
}

.barista-confidence-ring.is-waiting strong {
  font-size: 20px;
}

@media (max-width: 899px) {
  .menu-mood-discovery {
    grid-template-columns: 1fr;
  }

  .menu-mood-intro p {
    max-width: 520px;
  }
}

@media (max-width: 768px) {
  .page-panel-menu .menu-mood-discovery {
    width: calc(100% - 32px);
    margin: 10px 16px 8px;
    padding: 14px 13px 13px;
    gap: 12px;
    border-radius: 20px;
  }

  .menu-mood-discovery::after {
    right: -8px;
    bottom: -28px;
    font-size: 104px;
  }

  .menu-mood-intro {
    padding: 2px 2px 0;
  }

  .menu-mood-intro b {
    margin-bottom: 4px;
    font-size: 8px;
  }

  .menu-mood-intro h2 {
    font-size: 24px;
  }

  .menu-mood-intro p {
    max-width: 330px;
    margin-top: 6px;
    font-size: 9.5px;
  }

  .menu-mood-options {
    margin-inline: -1px;
    padding: 1px 1px 5px;
    display: flex;
    gap: 8px;
    overflow-x: auto;
    scroll-snap-type: x proximity;
    scrollbar-width: none;
  }

  .menu-mood-options::-webkit-scrollbar {
    display: none;
  }

  .menu-mood-options button {
    flex: 0 0 min(76vw, 246px);
    min-height: 104px;
    scroll-snap-align: start;
  }

  .assistant-widget .assistant-fab {
    width: auto !important;
    min-width: 154px;
    height: 58px !important;
    padding: 4px 4px 4px 16px !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: flex-end;
    gap: 11px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .4);
    border-radius: 20px !important;
    box-shadow: 0 17px 34px rgba(74, 12, 33, .28), inset 0 1px 0 rgba(255, 255, 255, .18);
    animation: lunqa-barista-fab-arrive .46s cubic-bezier(.2, .9, .25, 1) both;
  }

  .assistant-widget .assistant-fab-copy {
    min-width: 0;
    display: grid;
    gap: 1px;
    color: #fff;
    text-align: left;
  }

  .assistant-widget .assistant-fab-copy strong {
    font-family: Georgia, "Times New Roman", serif;
    font-size: 14px;
    line-height: 1;
  }

  .assistant-widget .assistant-fab-copy small {
    color: rgba(255, 255, 255, .76);
    font-size: 9px;
    font-weight: 750;
    letter-spacing: .02em;
    line-height: 1.15;
  }

  .assistant-widget .assistant-fab-icon {
    width: 48px !important;
    height: 48px !important;
    flex: 0 0 48px;
    border: 1px solid rgba(255, 255, 255, .24);
    border-radius: 16px !important;
    background: rgba(255, 255, 255, .1);
  }

  .assistant-widget .assistant-fab-icon svg {
    width: 24px;
    height: 24px;
  }

  html body .admin-sidebar .admin-nav-btn {
    position: relative;
    padding: 9px 6px !important;
    grid-template-columns: 38px minmax(0, 1fr) 6px !important;
    gap: 6px !important;
  }

  .admin-nav-label {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .admin-nav-badge {
    position: absolute;
    top: 4px;
    right: 4px;
    min-width: 21px;
    height: 21px;
    padding-inline: 5px;
    font-size: 9px;
  }
}

@media (max-width: 370px) {
  .assistant-widget .assistant-fab {
    min-width: 144px;
    height: 56px !important;
    padding-left: 14px !important;
  }

  .assistant-widget .assistant-fab-icon {
    width: 46px !important;
    height: 46px !important;
    flex-basis: 46px;
  }

  .assistant-correction-actions > div {
    grid-template-columns: 1fr;
  }
}

@keyframes lunqa-barista-fab-arrive {
  from {
    opacity: 0;
    transform: translateX(18px) scale(.94);
  }
  to {
    opacity: 1;
    transform: translateX(0) scale(1);
  }
}

@media (prefers-reduced-motion: reduce) {
  .menu-mood-options button,
  .menu-mood-options i,
  .assistant-widget .assistant-fab {
    scroll-behavior: auto !important;
    transition: none !important;
    animation: none !important;
  }
}


/* assets/css/mm-coffee-brand-v360.css */
/* M&M COFFEE visible identity. Internal lunqa-* selectors remain for compatibility. */
.desktop-brand-word {
  display: none;
}

@media (min-width: 768px) {
  .desktop-top-nav .desktop-brand.desktop-brand-logo-only {
    display: inline-flex !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    gap: 10px !important;
    align-items: center !important;
    padding: 4px 8px 4px 4px !important;
    color: #4a0c21 !important;
  }

  .desktop-top-nav .desktop-brand.desktop-brand-logo-only .desktop-header-logo {
    width: 42px !important;
    height: 42px !important;
    max-width: 42px !important;
    max-height: 42px !important;
    object-fit: contain !important;
    filter: none !important;
  }

  .desktop-top-nav .desktop-brand.desktop-brand-logo-only > .desktop-brand-word {
    display: inline-block !important;
    margin-left: 0 !important;
    color: #4a0c21 !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: .82rem !important;
    font-weight: 700 !important;
    letter-spacing: .16em !important;
    line-height: 1 !important;
    white-space: nowrap !important;
  }
}

.hero-menu-logo,
.story-logo img,
.admin-sidebar-brand .brand-logo-img {
  filter: none !important;
}

.hero-menu-brand-word {
  max-width: 14ch;
  text-align: center;
  line-height: 1.2;
  letter-spacing: .22em;
}

.admin-sidebar-brand .brand-word {
  max-width: 13ch !important;
  font-size: .78rem !important;
  line-height: 1.25 !important;
  letter-spacing: .16em !important;
}

@media (max-width: 767px) {
  .bottom-nav .logo-tab .brand-word,
  .bottom-nav .brand-mark-round .brand-word {
    display: none !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .desktop-brand,
  .brand-logo-img {
    transition: none !important;
  }
}


/* assets/css/mm-coffee-final-v370.css */
/* M&M COFFEE v3.7 final UX pass: multi-filter menu and admin control center. */

.menu-preference-shell,
.menu-preference-shell *,
.admin-dashboard,
.admin-dashboard * {
  box-sizing: border-box;
}

.menu-preference-shell {
  position: relative;
  overflow: hidden;
  border-color: rgba(74, 12, 33, .13);
  background:
    radial-gradient(circle at 96% 0%, rgba(74, 12, 33, .075), transparent 30%),
    linear-gradient(145deg, rgba(255, 252, 249, .97), rgba(250, 240, 235, .9));
}

.menu-preference-head > span {
  min-width: 0;
}

.menu-preference-head b {
  color: #8e0b17;
  font-size: 8px;
  font-weight: 950;
  letter-spacing: .17em;
}

.menu-preference-head strong {
  font-family: Georgia, "Times New Roman", serif;
  font-size: 16px;
  letter-spacing: -.015em;
}

.menu-preference-head > button {
  flex: 0 0 auto;
  min-height: 34px;
  padding-inline: 12px;
  border: 1px solid rgba(74, 12, 33, .12);
  border-radius: 999px;
  background: rgba(255, 255, 255, .72);
}

.menu-preference-chips {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 8px;
  overflow: visible;
}

.menu-preference-chips button {
  min-width: 0;
  min-height: 46px;
  padding: 7px 10px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  border-radius: 15px;
  text-align: left;
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

.menu-preference-chips button:hover:not(:disabled) {
  border-color: rgba(74, 12, 33, .28);
  box-shadow: 0 9px 18px rgba(74, 12, 33, .08);
  transform: translateY(-1px);
}

.menu-preference-chips button > span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.menu-preference-chips button > small {
  min-width: 24px;
  height: 24px;
  padding: 0 6px;
  display: inline-grid;
  place-items: center;
  border-radius: 9px;
  color: #755d55;
  background: rgba(74, 12, 33, .055);
  font-size: 9px;
  font-weight: 900;
}

.menu-preference-chips button.active > small {
  color: #4a0c21;
  background: rgba(255, 255, 255, .88);
}

.menu-preference-chips button:disabled {
  opacity: .42;
  cursor: not-allowed;
}

.menu-preference-foot {
  margin-top: 9px;
  padding-top: 9px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  border-top: 1px solid rgba(74, 12, 33, .08);
  color: #765f57;
}

.menu-preference-foot span {
  font-size: 10px;
  font-weight: 800;
}

.menu-preference-foot span strong {
  margin-right: 3px;
  color: #8e0b17;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 18px;
}

.menu-preference-foot small {
  font-size: 9.5px;
  font-weight: 700;
}

.admin-dashboard {
  min-width: 0;
  display: grid;
  gap: 18px;
}

.admin-stage,
.admin-shell,
.admin-main,
.admin-topbar-premium,
.admin-top-actions {
  min-width: 0;
}

.admin-top-actions {
  flex-wrap: wrap;
  justify-content: flex-end;
}

.admin-overview-hero {
  position: relative;
  isolation: isolate;
  min-height: 210px;
  padding: 30px;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 28px;
  overflow: hidden;
  border: 1px solid rgba(74, 12, 33, .18);
  border-radius: 28px;
  color: #fff9f4;
  background:
    radial-gradient(circle at 88% 12%, rgba(255, 255, 255, .19), transparent 26%),
    linear-gradient(135deg, #4a0c21 0%, #76112c 56%, #aa2038 100%);
  box-shadow: 0 24px 55px rgba(74, 12, 33, .2);
}

.admin-overview-hero::after {
  content: "M&M";
  position: absolute;
  right: -18px;
  top: -44px;
  z-index: -1;
  color: rgba(255, 255, 255, .065);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 170px;
  font-weight: 700;
  letter-spacing: -.12em;
  line-height: 1;
}

.admin-overview-hero > div:first-child {
  min-width: 0;
  max-width: 720px;
}

.admin-overview-kicker {
  display: block;
  margin-bottom: 9px;
  color: rgba(255, 249, 244, .72);
  font-size: 9px;
  font-weight: 950;
  letter-spacing: .18em;
}

.admin-overview-hero h2 {
  margin: 0;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(30px, 4vw, 50px);
  line-height: .98;
  letter-spacing: -.04em;
}

.admin-overview-hero p {
  max-width: 650px;
  margin: 12px 0 0;
  color: rgba(255, 249, 244, .78);
  font-size: 12px;
  line-height: 1.55;
}

.admin-overview-status {
  flex: 0 0 auto;
  display: grid;
  justify-items: end;
  gap: 8px;
}

.admin-overview-status > span {
  min-height: 40px;
  padding: 0 15px;
  display: inline-flex;
  align-items: center;
  border: 1px solid rgba(255, 255, 255, .25);
  border-radius: 999px;
  color: #fff;
  background: rgba(255, 255, 255, .13);
  font-size: 11px;
  font-weight: 900;
}

.admin-overview-status > span.is-ready::before,
.admin-overview-status > span.is-attention::before {
  content: "";
  width: 8px;
  height: 8px;
  margin-right: 8px;
  border-radius: 999px;
  background: #73e5a2;
  box-shadow: 0 0 0 5px rgba(115, 229, 162, .12);
}

.admin-overview-status > span.is-attention::before {
  background: #ffc66d;
  box-shadow: 0 0 0 5px rgba(255, 198, 109, .13);
}

.admin-overview-status small {
  color: rgba(255, 249, 244, .7);
  font-size: 9px;
  font-weight: 700;
}

.admin-dashboard-kpis {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
}

.admin-dashboard-kpis button {
  min-width: 0;
  min-height: 116px;
  padding: 16px;
  display: grid;
  align-content: center;
  justify-items: start;
  gap: 4px;
  border: 1px solid rgba(74, 12, 33, .105);
  border-radius: 20px;
  color: #2f201b;
  background: rgba(255, 255, 255, .8);
  box-shadow: 0 12px 28px rgba(65, 36, 28, .055);
  text-align: left;
  cursor: pointer;
}

.admin-dashboard-kpis button:hover {
  border-color: rgba(74, 12, 33, .24);
  background: #fff;
  transform: translateY(-2px);
}

.admin-dashboard-kpis span {
  color: #75615a;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.admin-dashboard-kpis strong {
  color: #8e0b17;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 30px;
  line-height: 1;
}

.admin-dashboard-kpis small {
  color: #76645d;
  font-size: 9px;
}

.admin-dashboard-grid {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(300px, .85fr);
  gap: 16px;
  align-items: start;
}

.admin-dashboard-card {
  min-width: 0;
  padding: 20px;
  border: 1px solid rgba(74, 12, 33, .105);
  border-radius: 24px;
  background: rgba(255, 255, 255, .82);
  box-shadow: 0 14px 34px rgba(65, 36, 28, .06);
}

.admin-dashboard-card-head {
  margin-bottom: 16px;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
}

.admin-dashboard-card-head > span {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.admin-dashboard-card-head b {
  color: #9b1221;
  font-size: 8px;
  font-weight: 950;
  letter-spacing: .15em;
}

.admin-dashboard-card-head h3 {
  margin: 0;
  color: #2e201b;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 20px;
}

.admin-dashboard-card-head > button {
  flex: 0 0 auto;
  min-height: 34px;
  padding: 0 12px;
  border: 1px solid rgba(74, 12, 33, .13);
  border-radius: 999px;
  color: #7d0a17;
  background: #fffaf7;
  font-size: 9px;
  font-weight: 900;
}

.admin-readiness-list,
.admin-attention-list,
.admin-category-bars {
  display: grid;
  gap: 10px;
}

.admin-readiness-list article {
  display: grid;
  grid-template-columns: minmax(150px, .9fr) minmax(120px, 1fr) 42px;
  align-items: center;
  gap: 12px;
}

.admin-readiness-list article > span {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.admin-readiness-list article strong {
  color: #382721;
  font-size: 10.5px;
}

.admin-readiness-list article small {
  overflow: hidden;
  color: #846f67;
  font-size: 8.5px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.admin-readiness-list article > div,
.admin-category-bars article > div {
  height: 8px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(74, 12, 33, .07);
}

.admin-readiness-list article > div i,
.admin-category-bars article > div i {
  width: var(--readiness, 0%);
  height: 100%;
  display: block;
  border-radius: inherit;
  background: linear-gradient(90deg, #741029, #bd334a);
}

.admin-readiness-list article > b {
  color: #7d0a17;
  font-size: 10px;
  text-align: right;
}

.admin-attention-list > button {
  min-width: 0;
  padding: 12px;
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr) 18px;
  align-items: center;
  gap: 10px;
  border: 1px solid rgba(74, 12, 33, .09);
  border-radius: 16px;
  color: #35251f;
  background: #fffaf7;
  text-align: left;
}

.admin-attention-list > button > strong {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border-radius: 13px;
  color: #8e0b17;
  background: rgba(142, 11, 23, .08);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 18px;
}

.admin-attention-list > button > span {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.admin-attention-list > button b {
  color: #35251f;
  font-size: 10px;
  letter-spacing: 0;
}

.admin-attention-list > button small {
  color: #806c64;
  font-size: 8.5px;
  line-height: 1.35;
}

.admin-attention-list > button > i {
  color: #8e0b17;
  font-style: normal;
}

.admin-all-clear {
  min-height: 150px;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 5px;
  border: 1px dashed rgba(38, 125, 76, .28);
  border-radius: 18px;
  color: #287b4c;
  background: rgba(235, 249, 241, .72);
  text-align: center;
}

.admin-all-clear span {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 14px;
  color: #fff;
  background: #318458;
  font-weight: 900;
}

.admin-all-clear strong {
  font-size: 11px;
}

.admin-all-clear small {
  max-width: 250px;
  color: #5c846d;
  font-size: 8.8px;
  line-height: 1.4;
}

.admin-category-bars article {
  display: grid;
  grid-template-columns: minmax(130px, .8fr) minmax(100px, 1fr) 28px;
  align-items: center;
  gap: 10px;
}

.admin-category-bars article > span {
  overflow: hidden;
  color: #514039;
  font-size: 9.5px;
  font-weight: 800;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.admin-category-bars article > div i {
  width: var(--category-width, 0%);
}

.admin-category-bars article > b {
  color: #8e0b17;
  font-size: 10px;
  text-align: right;
}

.admin-quick-actions > div:last-child {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
}

.admin-quick-actions > div:last-child > button {
  min-width: 0;
  min-height: 84px;
  padding: 12px;
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr);
  align-items: center;
  gap: 9px;
  border: 1px solid rgba(74, 12, 33, .09);
  border-radius: 17px;
  color: #8e0b17;
  background: #fffaf7;
  text-align: left;
}

.admin-quick-actions > div:last-child > button > span {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.admin-quick-actions strong {
  color: #392821;
  font-size: 10px;
}

.admin-quick-actions small {
  color: #826e66;
  font-size: 8px;
  line-height: 1.35;
}

.admin-sidebar .admin-nav-btn:focus-visible,
.admin-dashboard button:focus-visible {
  outline: 3px solid rgba(125, 10, 23, .46) !important;
  outline-offset: 2px !important;
}

@media (max-width: 1180px) {
  .menu-preference-chips {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .admin-dashboard-kpis {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .admin-dashboard-grid {
    grid-template-columns: 1fr;
  }

  .admin-shell {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .admin-sidebar {
    width: 100% !important;
    min-width: 0 !important;
    max-height: none !important;
    position: relative !important;
    top: auto !important;
    padding: 12px !important;
    display: grid !important;
    grid-template-columns: 104px minmax(0, 1fr) 164px !important;
    align-items: center !important;
    gap: 12px !important;
  }

  .admin-sidebar-brand {
    margin: 0 !important;
    padding: 0 12px 0 0 !important;
    border: 0 !important;
    border-right: 1px solid rgba(74, 12, 33, .1) !important;
  }

  .admin-sidebar-brand .brand-logo-img {
    width: 54px !important;
  }

  .admin-sidebar-brand .brand-word {
    margin-top: 4px !important;
    font-size: 9px !important;
  }

  .admin-sidebar .admin-nav {
    min-width: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 2px !important;
    display: flex !important;
    gap: 8px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scrollbar-width: none !important;
  }

  .admin-sidebar .admin-nav::-webkit-scrollbar {
    display: none !important;
  }

  .admin-sidebar .admin-nav-group {
    display: contents !important;
  }

  .admin-sidebar .admin-nav-group-label {
    display: none !important;
  }

  .admin-sidebar .admin-nav-btn {
    flex: 0 0 138px !important;
    min-height: 50px !important;
    padding: 6px 8px !important;
    grid-template-columns: 34px minmax(0, 1fr) 5px !important;
    gap: 7px !important;
  }

  .admin-sidebar .admin-nav-ico {
    width: 34px !important;
    height: 34px !important;
  }

  .admin-sidebar-foot {
    width: 100% !important;
    margin: 0 !important;
  }
}

@media (max-width: 760px) {
  .page-panel-menu .menu-preference-shell {
    width: calc(100% - 32px) !important;
    margin: 8px 16px 4px !important;
    padding: 13px !important;
  }

  .menu-preference-head {
    align-items: center;
  }

  .menu-preference-head strong {
    font-size: 15px;
  }

  .menu-preference-head small {
    max-width: 260px;
    font-size: 9px;
  }

  .menu-preference-chips {
    margin-inline: -1px;
    padding: 2px 1px 5px;
    display: flex;
    gap: 7px;
    overflow-x: auto;
    scroll-snap-type: x proximity;
  }

  .menu-preference-chips button {
    flex: 0 0 auto;
    min-width: 112px;
    min-height: 44px;
    scroll-snap-align: start;
  }

  .menu-preference-foot {
    align-items: flex-end;
  }

  .menu-preference-foot small {
    max-width: 180px;
    text-align: right;
  }

  .admin-sidebar {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 9px !important;
    border-radius: 18px !important;
  }

  .admin-sidebar-brand {
    display: none !important;
  }

  .admin-sidebar .admin-nav-btn {
    flex-basis: 132px !important;
  }

  .admin-sidebar-foot {
    min-height: 40px !important;
  }

  .admin-main {
    width: 100% !important;
    padding: 12px !important;
    overflow: visible !important;
  }

  .admin-topbar-premium {
    position: relative !important;
    top: auto !important;
    padding: 15px !important;
  }

  .admin-top-actions {
    width: 100%;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .admin-top-actions > * {
    width: 100% !important;
    min-width: 0 !important;
  }

  .admin-save-status {
    grid-column: 1 / -1;
  }

  .admin-overview-hero {
    min-height: 260px;
    padding: 22px;
    display: grid;
    align-content: end;
    gap: 18px;
    border-radius: 23px;
  }

  .admin-overview-hero::after {
    top: -24px;
    right: -12px;
    font-size: 110px;
  }

  .admin-overview-hero h2 {
    font-size: 34px;
  }

  .admin-overview-status {
    justify-items: start;
  }

  .admin-dashboard-kpis {
    margin-inline: -1px;
    padding: 1px 1px 6px;
    display: flex;
    gap: 9px;
    overflow-x: auto;
    scroll-snap-type: x proximity;
  }

  .admin-dashboard-kpis button {
    flex: 0 0 148px;
    min-height: 106px;
    scroll-snap-align: start;
  }

  .admin-dashboard-card {
    padding: 16px;
    border-radius: 20px;
  }

  .admin-readiness-list article {
    grid-template-columns: minmax(120px, 1fr) 42px;
  }

  .admin-readiness-list article > div {
    grid-column: 1 / -1;
    grid-row: 2;
  }

  .admin-readiness-list article > b {
    grid-column: 2;
    grid-row: 1;
  }

  .admin-quick-actions > div:last-child {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 390px) {
  .menu-preference-head {
    align-items: flex-start;
  }

  .menu-preference-head > button {
    padding-inline: 9px;
    font-size: 9px;
  }

  .menu-preference-foot small {
    max-width: 145px;
  }

  .admin-category-bars article {
    grid-template-columns: minmax(100px, .9fr) minmax(70px, 1fr) 24px;
  }

  .admin-top-actions {
    grid-template-columns: 1fr;
  }

  .admin-save-status {
    grid-column: auto;
  }
}

@media (prefers-reduced-motion: reduce) {
  .menu-preference-chips button,
  .admin-dashboard-kpis button {
    transition: none !important;
  }
}


/* assets/css/mm-coffee-redesign-v380.css */
/* M&M COFFEE v3.8 — editorial cafe shell, card menu and operator workspace. */

:root {
  --mm-ink: #211713;
  --mm-wine: #741326;
  --mm-wine-dark: #420b19;
  --mm-rose: #b93248;
  --mm-cream: #f7f0e9;
  --mm-paper: #fffdf9;
  --mm-sand: #e9ddd2;
  --mm-muted: #78675f;
  --mm-success: #24744a;
  --mm-shadow: 0 18px 55px rgba(46, 25, 19, .1);
}

html,
body {
  background: #ede5dd !important;
}

body {
  color: var(--mm-ink);
}

button,
input,
select,
textarea {
  font: inherit;
}

.app-stage {
  background:
    radial-gradient(circle at 8% 0%, rgba(116, 19, 38, .07), transparent 25%),
    #ede5dd !important;
}

.phone-shell.route-shell {
  width: min(100%, 1540px) !important;
  max-width: 1540px !important;
  min-height: 100dvh;
  margin: 0 auto !important;
  overflow: visible !important;
  border-radius: 0 !important;
  background: var(--mm-paper) !important;
  box-shadow: 0 0 80px rgba(45, 24, 18, .12) !important;
}

.desktop-top-nav {
  width: 100% !important;
  min-height: 76px !important;
  padding: 11px clamp(20px, 4vw, 62px) !important;
  position: sticky !important;
  top: 0 !important;
  z-index: 120 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 24px !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(66, 11, 25, .1) !important;
  border-radius: 0 !important;
  background: rgba(255, 253, 249, .94) !important;
  box-shadow: none !important;
  backdrop-filter: blur(18px) saturate(1.2);
}

.desktop-brand {
  min-width: 0;
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
}

.desktop-header-logo {
  width: 46px !important;
  height: 46px !important;
  object-fit: contain;
}

.desktop-brand-word {
  color: var(--mm-ink) !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 15px !important;
  letter-spacing: .08em !important;
}

.desktop-top-nav > nav {
  display: flex !important;
  align-items: center !important;
  gap: 4px !important;
}

.desktop-top-nav > nav > button,
.desktop-top-nav > nav > a {
  min-height: 42px !important;
  padding: 0 14px !important;
  border: 0 !important;
  border-radius: 999px !important;
  color: #5f5049 !important;
  background: transparent !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  text-decoration: none !important;
}

.desktop-top-nav > nav > button:hover,
.desktop-top-nav > nav > a:hover,
.desktop-top-nav > nav > .active {
  color: var(--mm-wine) !important;
  background: rgba(116, 19, 38, .07) !important;
}

.desktop-top-nav > nav > .desktop-barista-cta {
  margin-left: 8px !important;
  padding-inline: 18px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;
  color: #fffaf6 !important;
  background: var(--mm-wine) !important;
  box-shadow: 0 9px 22px rgba(116, 19, 38, .22) !important;
}

.database-alert {
  width: min(1180px, calc(100% - 32px));
  min-height: 62px;
  margin: 14px auto 0;
  padding: 11px 13px;
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr) auto;
  align-items: center;
  gap: 11px;
  border: 1px solid rgba(154, 74, 25, .25);
  border-radius: 16px;
  color: #5f2f13;
  background: #fff6e8;
  box-shadow: 0 10px 24px rgba(83, 47, 24, .08);
}

.database-alert-icon {
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  color: #fff;
  background: #b86629;
  font-weight: 950;
}

.database-alert > span:nth-child(2) {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.database-alert strong {
  font-size: 11px;
}

.database-alert small {
  color: #826047;
  font-size: 9px;
  line-height: 1.4;
}

.database-alert button {
  min-height: 36px;
  padding: 0 13px;
  border: 0;
  border-radius: 999px;
  color: #fff;
  background: #7e3a16;
  font-size: 9px;
  font-weight: 900;
}

/* Home: asymmetrical editorial opening instead of a phone-app hero. */
.home-landing-hero {
  min-height: min(720px, calc(100dvh - 76px)) !important;
  margin: 0 !important;
  padding: clamp(32px, 6vw, 82px) clamp(20px, 5vw, 78px) !important;
  display: grid !important;
  grid-template-columns: minmax(0, .95fr) minmax(340px, .75fr) !important;
  align-items: end !important;
  overflow: hidden !important;
  border-radius: 0 !important;
  isolation: isolate;
  background: #241713 !important;
}

.home-landing-hero::before {
  content: "";
  position: absolute;
  inset: 0 0 0 42%;
  z-index: -2;
  background-image: var(--hero-img) !important;
  background-position: center !important;
  background-size: cover !important;
  filter: saturate(.86) contrast(1.04);
}

.home-landing-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background:
    linear-gradient(90deg, #211511 0%, rgba(33, 21, 17, .97) 36%, rgba(33, 21, 17, .58) 64%, rgba(33, 21, 17, .18) 100%),
    linear-gradient(0deg, rgba(18, 10, 8, .45), transparent 48%);
}

.home-hero-copy {
  width: min(100%, 650px) !important;
  max-width: none !important;
  padding: 0 !important;
  position: relative !important;
  inset: auto !important;
  display: grid !important;
  justify-items: start !important;
  gap: 13px !important;
  color: #fffaf5 !important;
}

.home-hero-eyebrow {
  color: #d6a39f;
  font-size: 9px;
  font-weight: 950;
  letter-spacing: .23em;
}

.home-hero-copy .brand-mark {
  justify-items: start !important;
}

.home-hero-copy .brand-logo-img {
  width: clamp(116px, 13vw, 176px) !important;
}

.home-hero-copy .brand-word {
  margin-top: 4px !important;
  color: #fffaf5 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(22px, 2.8vw, 38px) !important;
  letter-spacing: .1em !important;
}

.home-hero-copy > p {
  max-width: 560px !important;
  margin: 2px 0 0 !important;
  color: rgba(255, 250, 245, .82) !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(20px, 2.4vw, 34px) !important;
  line-height: 1.16 !important;
  letter-spacing: -.025em !important;
}

.home-hero-copy > span {
  color: rgba(255, 250, 245, .57) !important;
  font-size: 10px !important;
  font-weight: 800 !important;
}

.home-hero-actions {
  margin-top: 8px;
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}

.home-hero-actions button {
  min-height: 48px;
  padding: 0 17px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: 1px solid rgba(255, 255, 255, .2);
  border-radius: 14px;
  color: #fff;
  background: rgba(255, 255, 255, .08);
  font-size: 10px;
  font-weight: 900;
}

.home-hero-actions button:first-child {
  border-color: #fff7ef;
  color: var(--mm-wine-dark);
  background: #fff7ef;
}

.home-hero-facts {
  width: min(100%, 530px);
  margin-top: 14px;
  padding-top: 16px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  border-top: 1px solid rgba(255, 255, 255, .16);
}

.home-hero-facts span {
  min-width: 0;
  display: grid;
  gap: 3px;
  color: rgba(255, 250, 245, .72);
  font-size: 9px;
}

.home-hero-facts b {
  color: #fff;
  font-size: 8px;
  letter-spacing: .11em;
  text-transform: uppercase;
}

.home-landing-hero .hero-location-pill {
  top: 30px !important;
  right: clamp(20px, 5vw, 78px) !important;
  left: auto !important;
  color: #fff !important;
  background: rgba(30, 17, 13, .56) !important;
  backdrop-filter: blur(12px);
}

.home-landing-hero .floating-search {
  width: min(440px, calc(100% - 40px)) !important;
  right: clamp(20px, 5vw, 78px) !important;
  bottom: clamp(32px, 6vw, 82px) !important;
  left: auto !important;
  transform: none !important;
}

.home-landing-hero .search-box {
  min-height: 64px !important;
  border: 1px solid rgba(255, 255, 255, .22) !important;
  border-radius: 18px !important;
  background: rgba(255, 253, 249, .94) !important;
  box-shadow: 0 22px 55px rgba(15, 8, 6, .24) !important;
}

.home-modern-panel {
  width: min(100%, 1280px) !important;
  margin: 0 auto !important;
  padding: clamp(34px, 5vw, 72px) clamp(18px, 4vw, 54px) 120px !important;
  background: var(--mm-paper) !important;
}

.home-section {
  margin: 0 0 clamp(42px, 6vw, 76px) !important;
}

.home-section-head {
  margin-bottom: 18px !important;
  align-items: end !important;
  border-bottom: 1px solid var(--mm-sand);
  padding-bottom: 12px;
}

.home-section-head h2 {
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(25px, 3vw, 40px) !important;
  letter-spacing: -.035em !important;
}

.home-category-strip {
  display: grid !important;
  grid-template-columns: repeat(7, minmax(0, 1fr)) !important;
  gap: 9px !important;
  overflow: visible !important;
}

.home-category-pill {
  min-width: 0 !important;
  min-height: 112px !important;
  padding: 13px 9px !important;
  display: grid !important;
  place-items: center !important;
  align-content: center !important;
  gap: 8px !important;
  border: 1px solid var(--mm-sand) !important;
  border-radius: 18px !important;
  color: var(--mm-ink) !important;
  background: #fff !important;
  box-shadow: none !important;
}

.home-category-pill:hover {
  color: var(--mm-wine) !important;
  border-color: rgba(116, 19, 38, .26) !important;
  transform: translateY(-3px);
  box-shadow: var(--mm-shadow) !important;
}

.home-category-icon {
  width: 48px !important;
  height: 48px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 15px !important;
  color: var(--mm-wine) !important;
  background: rgba(116, 19, 38, .07) !important;
}

.featured-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 18px !important;
}

.featured-card,
.special-card,
.home-story-row,
.home-social-row {
  border-color: var(--mm-sand) !important;
  border-radius: 20px !important;
  box-shadow: none !important;
}

.featured-card:hover,
.special-card:hover {
  transform: translateY(-3px);
  box-shadow: var(--mm-shadow) !important;
}

/* Menu: horizontal category rail + editorial product grid. */
.hero-menu {
  min-height: 290px !important;
  border-radius: 0 !important;
  background: var(--mm-wine-dark) !important;
}

.hero-menu::after {
  background: linear-gradient(90deg, rgba(35, 10, 18, .95), rgba(48, 11, 23, .65) 54%, rgba(48, 11, 23, .18)) !important;
}

.hero-menu .hero-copy {
  width: min(1180px, calc(100% - 40px)) !important;
  margin: 0 auto !important;
  padding: 58px 0 86px !important;
}

.hero-menu .floating-search {
  width: min(560px, calc(100% - 40px)) !important;
  right: clamp(20px, 7vw, 110px) !important;
  bottom: 36px !important;
  left: auto !important;
  transform: none !important;
}

.hero-menu .search-box {
  min-height: 58px !important;
  border-radius: 16px !important;
  box-shadow: 0 18px 42px rgba(32, 7, 15, .2) !important;
}

html body main.page-panel.page-panel-menu,
html body main.page-panel.page-panel-menu:not(.is-special-list) {
  width: min(100%, 1280px) !important;
  max-width: 1280px !important;
  margin: 0 auto !important;
  padding: 26px clamp(16px, 3.5vw, 46px) 120px !important;
  display: block !important;
  background: var(--mm-paper) !important;
}

html body .page-panel-menu > .category-reference-shell,
html body .page-panel.page-panel-menu > .category-reference-shell,
html body .page-panel-menu:not(.is-special-list) > .category-reference-shell {
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  height: auto !important;
  margin: 0 0 18px !important;
  padding: 9px !important;
  position: sticky !important;
  top: 84px !important;
  z-index: 60 !important;
  overflow: hidden !important;
  border: 1px solid var(--mm-sand) !important;
  border-radius: 20px !important;
  background: rgba(255, 253, 249, .95) !important;
  box-shadow: 0 13px 34px rgba(46, 25, 19, .07) !important;
  backdrop-filter: blur(15px);
}

html body .page-panel-menu > .category-reference-shell::before,
html body .page-panel-menu > .category-reference-shell::after,
html body .page-panel-menu .category-reference-strip::before,
html body .page-panel-menu .category-reference-strip::after {
  display: none !important;
}

html body .page-panel-menu > .category-reference-shell .category-reference-strip,
html body .page-panel.page-panel-menu > .category-reference-shell .category-reference-strip {
  width: 100% !important;
  height: auto !important;
  padding: 0 1px 3px !important;
  display: flex !important;
  flex-direction: row !important;
  gap: 7px !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  scroll-snap-type: x proximity;
}

html body .page-panel-menu > .category-reference-shell .category-reference-item,
html body .page-panel.page-panel-menu > .category-reference-shell .category-reference-item {
  flex: 0 0 auto !important;
  width: auto !important;
  min-width: 112px !important;
  min-height: 54px !important;
  padding: 7px 11px !important;
  display: grid !important;
  grid-template-columns: 34px auto !important;
  align-items: center !important;
  justify-content: start !important;
  gap: 8px !important;
  border: 1px solid transparent !important;
  border-radius: 14px !important;
  background: transparent !important;
  scroll-snap-align: start;
}

html body main.page-panel.page-panel-menu:not(.is-special-list) > nav.category-reference-shell .category-reference-strip > button.category-reference-item,
html body main.page-panel.page-panel-menu:not(.is-special-list) > nav.category-reference-shell .category-reference-strip > button.category-reference-item.active {
  width: max-content !important;
  max-width: 230px !important;
  min-width: 112px !important;
  flex: 0 0 auto !important;
}

html body .page-panel-menu > .category-reference-shell .category-reference-item.active {
  color: var(--mm-wine) !important;
  border-color: rgba(116, 19, 38, .15) !important;
  background: rgba(116, 19, 38, .07) !important;
  box-shadow: none !important;
}

html body .page-panel-menu > .category-reference-shell .category-reference-icon,
html body .page-panel-menu > .category-reference-shell .category-reference-vector {
  width: 34px !important;
  height: 34px !important;
  min-width: 34px !important;
  border: 0 !important;
  border-radius: 11px !important;
  background: #f2e9e2 !important;
  box-shadow: none !important;
}

html body .page-panel-menu > .category-reference-shell .category-reference-label {
  width: auto !important;
  max-width: 120px !important;
  color: inherit !important;
  font-size: 9px !important;
  white-space: nowrap !important;
}

html body .page-panel-menu > .menu-content-column,
html body .page-panel.page-panel-menu > .menu-content-column,
html body .page-panel-menu:not(.is-special-list) > .menu-content-column {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
}

.menu-mood-discovery {
  min-height: 230px !important;
  padding: 25px !important;
  grid-template-columns: minmax(260px, .72fr) minmax(0, 1.28fr) !important;
  gap: 24px !important;
  border: 0 !important;
  border-radius: 22px !important;
  color: #fffaf5 !important;
  background:
    radial-gradient(circle at 90% 0%, rgba(255, 255, 255, .13), transparent 28%),
    linear-gradient(135deg, var(--mm-wine-dark), #7b1830) !important;
}

.menu-mood-intro b,
.menu-mood-intro h2,
.menu-mood-intro p {
  color: inherit !important;
}

.menu-mood-intro p {
  color: rgba(255, 250, 245, .7) !important;
}

.menu-mood-options > button {
  border-color: rgba(255, 255, 255, .14) !important;
  color: #fffaf5 !important;
  background: rgba(255, 255, 255, .09) !important;
  box-shadow: none !important;
}

.menu-mood-options > button small,
.menu-mood-options > button em {
  color: rgba(255, 250, 245, .7) !important;
}

.menu-preference-shell {
  margin-top: 14px !important;
  border-radius: 20px !important;
  background: #f7f0ea !important;
  box-shadow: none !important;
}

.menu-results-summary {
  margin: 26px 0 14px !important;
}

html body .page-panel-menu .menu-content-column > .menu-list,
html body main.page-panel.page-panel-menu .menu-list {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 15px !important;
}

html body main.page-panel.page-panel-menu button.menu-row {
  min-width: 0 !important;
  min-height: 360px !important;
  padding: 0 0 15px !important;
  position: relative !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  grid-template-rows: 220px minmax(82px, 1fr) auto !important;
  align-items: start !important;
  gap: 0 !important;
  overflow: hidden !important;
  border: 1px solid var(--mm-sand) !important;
  border-radius: 20px !important;
  background: #fff !important;
  box-shadow: none !important;
  text-align: left !important;
}

html body main.page-panel.page-panel-menu button.menu-row:hover {
  border-color: rgba(116, 19, 38, .24) !important;
  transform: translateY(-3px) !important;
  box-shadow: var(--mm-shadow) !important;
}

html body main.page-panel.page-panel-menu button.menu-row > .menu-thumb {
  width: 100% !important;
  height: 220px !important;
  min-width: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
}

html body main.page-panel.page-panel-menu button.menu-row > .menu-thumb img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

html body main.page-panel.page-panel-menu button.menu-row > span:nth-child(2) {
  min-width: 0 !important;
  padding: 15px 16px 8px !important;
}

html body main.page-panel.page-panel-menu button.menu-row .menu-title {
  color: var(--mm-ink) !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 17px !important;
  line-height: 1.18 !important;
}

html body main.page-panel.page-panel-menu button.menu-row .menu-desc {
  margin-top: 7px !important;
  color: var(--mm-muted) !important;
  font-size: 9.5px !important;
  line-height: 1.5 !important;
  display: -webkit-box !important;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}

html body main.page-panel.page-panel-menu button.menu-row > .price {
  padding: 0 16px !important;
  position: static !important;
  justify-self: start !important;
  color: var(--mm-wine) !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 18px !important;
}

/* Admin: dark operator rail and restrained workspace. */
.admin-stage {
  min-height: 100dvh !important;
  padding: 0 !important;
  background: #eee7df !important;
}

.admin-shell {
  width: min(100%, 1760px) !important;
  max-width: 1760px !important;
  min-height: 100dvh !important;
  margin: 0 auto !important;
  gap: 0 !important;
  align-items: stretch !important;
  background: #f7f2ec !important;
}

.admin-sidebar {
  width: 252px !important;
  min-width: 252px !important;
  height: 100dvh !important;
  max-height: 100dvh !important;
  top: 0 !important;
  padding: 22px 14px 16px !important;
  border: 0 !important;
  border-radius: 0 !important;
  color: #fff8f2 !important;
  background:
    radial-gradient(circle at 50% 0%, rgba(255, 255, 255, .08), transparent 25%),
    #3a0b18 !important;
  box-shadow: none !important;
}

.admin-sidebar-brand {
  margin: 0 0 18px !important;
  padding: 14px !important;
  border: 1px solid rgba(255, 255, 255, .1) !important;
  border-radius: 17px !important;
  background: rgba(255, 255, 255, .06) !important;
}

.admin-sidebar-brand .brand-logo-img {
  width: 66px !important;
  filter: brightness(0) invert(1);
}

.admin-sidebar-brand .brand-word {
  color: #fff8f2 !important;
}

.admin-sidebar .admin-nav {
  padding: 0 2px 10px !important;
}

.admin-sidebar .admin-nav-group-label {
  color: rgba(255, 248, 242, .42) !important;
  font-size: 7px !important;
}

.admin-sidebar .admin-nav-btn {
  min-height: 46px !important;
  padding: 6px 8px !important;
  grid-template-columns: 34px minmax(0, 1fr) 8px !important;
  border-radius: 13px !important;
  color: rgba(255, 248, 242, .73) !important;
}

.admin-sidebar .admin-nav-btn:hover {
  color: #fff !important;
  background: rgba(255, 255, 255, .07) !important;
}

.admin-sidebar .admin-nav-btn.active,
.admin-sidebar .admin-nav-btn[aria-current="page"] {
  color: var(--mm-wine-dark) !important;
  background: #fff8f1 !important;
  box-shadow: 0 12px 28px rgba(20, 3, 8, .24) !important;
}

.admin-sidebar .admin-nav-ico {
  width: 34px !important;
  height: 34px !important;
  border: 0 !important;
  border-radius: 11px !important;
  color: inherit !important;
  background: rgba(255, 255, 255, .08) !important;
}

.admin-sidebar .admin-nav-btn.active .admin-nav-ico,
.admin-sidebar .admin-nav-btn[aria-current="page"] .admin-nav-ico {
  color: var(--mm-wine) !important;
  background: rgba(116, 19, 38, .08) !important;
}

.admin-sidebar-foot {
  border-color: rgba(255, 255, 255, .14) !important;
  color: #fff !important;
  background: rgba(255, 255, 255, .07) !important;
}

.admin-main {
  min-width: 0 !important;
  padding: 22px clamp(18px, 3vw, 38px) 46px !important;
  background: #f7f2ec !important;
}

.admin-topbar-premium {
  top: 14px !important;
  padding: 17px 19px !important;
  border: 1px solid #e3d7cd !important;
  border-radius: 18px !important;
  background: rgba(255, 253, 249, .94) !important;
  box-shadow: 0 10px 34px rgba(49, 26, 19, .07) !important;
}

.admin-title h1 {
  font-family: Georgia, "Times New Roman", serif !important;
  letter-spacing: -.025em !important;
}

.admin-overview-hero {
  min-height: 230px !important;
  border: 0 !important;
  border-radius: 20px !important;
  background:
    radial-gradient(circle at 82% 12%, rgba(255, 255, 255, .12), transparent 25%),
    linear-gradient(135deg, #261615, #591126 62%, #7e1c32) !important;
  box-shadow: 0 20px 48px rgba(56, 15, 29, .17) !important;
}

.admin-dashboard-kpis button,
.admin-dashboard-card,
.admin-card,
.admin-table-card,
.admin-toolbar {
  border-color: #e3d7cd !important;
  border-radius: 17px !important;
  background: #fffdfa !important;
  box-shadow: none !important;
}

.admin-dashboard-kpis button:hover,
.admin-dashboard-card button:hover {
  border-color: rgba(116, 19, 38, .24) !important;
}

@media (max-width: 1180px) {
  .home-category-strip {
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  }

  html body .page-panel-menu .menu-content-column > .menu-list,
  html body main.page-panel.page-panel-menu .menu-list {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .admin-shell {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .admin-sidebar {
    width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    max-height: none !important;
    padding: 11px !important;
    position: relative !important;
    display: grid !important;
    grid-template-columns: 82px minmax(0, 1fr) 150px !important;
    align-items: center !important;
    gap: 9px !important;
  }

  .admin-sidebar-brand {
    margin: 0 !important;
    padding: 6px !important;
  }

  .admin-sidebar-brand .brand-logo-img {
    width: 45px !important;
  }

  .admin-sidebar-brand .brand-word {
    display: none !important;
  }

  .admin-sidebar .admin-nav {
    display: flex !important;
    gap: 6px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
  }

  .admin-sidebar .admin-nav-group {
    display: contents !important;
  }

  .admin-sidebar .admin-nav-group-label {
    display: none !important;
  }

  .admin-sidebar .admin-nav-btn {
    flex: 0 0 132px !important;
  }
}

@media (max-width: 820px) {
  .desktop-top-nav {
    display: none !important;
  }

  .phone-shell.route-shell {
    padding-bottom: calc(82px + env(safe-area-inset-bottom)) !important;
  }

  .bottom-nav {
    display: grid !important;
    position: fixed !important;
    z-index: 150 !important;
  }

  .home-landing-hero {
    min-height: 700px !important;
    padding: 94px 20px 122px !important;
    grid-template-columns: 1fr !important;
    align-items: end !important;
  }

  .home-landing-hero::before {
    inset: 0 !important;
    background-position: 62% center !important;
  }

  .home-landing-hero::after {
    background: linear-gradient(0deg, rgba(28, 15, 12, .98) 0%, rgba(28, 15, 12, .78) 48%, rgba(28, 15, 12, .18) 100%) !important;
  }

  .home-hero-copy > p {
    max-width: 440px !important;
  }

  .home-landing-hero .floating-search {
    width: calc(100% - 40px) !important;
    right: 20px !important;
    bottom: 32px !important;
  }

  .home-hero-facts {
    margin-bottom: 74px;
  }

  .home-category-strip {
    margin-inline: -18px !important;
    padding: 2px 18px 8px !important;
    display: flex !important;
    gap: 8px !important;
    overflow-x: auto !important;
  }

  .home-category-pill {
    flex: 0 0 112px !important;
  }

  .hero-menu {
    min-height: 250px !important;
  }

  .hero-menu .hero-copy {
    padding: 34px 0 82px !important;
  }

  html body .page-panel-menu > .category-reference-shell,
  html body .page-panel.page-panel-menu > .category-reference-shell {
    top: 8px !important;
  }

  .menu-mood-discovery {
    grid-template-columns: 1fr !important;
  }

  .admin-sidebar {
    grid-template-columns: 1fr !important;
    border-radius: 0 !important;
  }

  .admin-sidebar-brand {
    display: none !important;
  }

  .admin-sidebar-foot {
    min-height: 40px !important;
  }

  .admin-main {
    padding: 12px !important;
  }
}

@media (max-width: 640px) {
  .database-alert {
    grid-template-columns: 34px minmax(0, 1fr);
  }

  .database-alert button {
    grid-column: 1 / -1;
    width: 100%;
  }

  .home-landing-hero {
    min-height: 680px !important;
  }

  .home-hero-facts {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .home-hero-facts span:last-child {
    display: none;
  }

  .featured-grid {
    grid-template-columns: 1fr !important;
  }

  .menu-mood-discovery {
    padding: 18px !important;
  }

  html body .page-panel-menu .menu-content-column > .menu-list,
  html body main.page-panel.page-panel-menu .menu-list {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  html body main.page-panel.page-panel-menu button.menu-row {
    min-height: 128px !important;
    padding: 0 !important;
    grid-template-columns: 116px minmax(0, 1fr) auto !important;
    grid-template-rows: 1fr !important;
    align-items: stretch !important;
    border-radius: 17px !important;
  }

  html body main.page-panel.page-panel-menu button.menu-row > .menu-thumb {
    width: 116px !important;
    height: 100% !important;
    min-height: 128px !important;
  }

  html body main.page-panel.page-panel-menu button.menu-row > span:nth-child(2) {
    padding: 15px 10px 12px 13px !important;
    align-self: center !important;
  }

  html body main.page-panel.page-panel-menu button.menu-row .menu-title {
    font-size: 14px !important;
  }

  html body main.page-panel.page-panel-menu button.menu-row .menu-desc {
    -webkit-line-clamp: 3;
    font-size: 8.7px !important;
  }

  html body main.page-panel.page-panel-menu button.menu-row > .price {
    padding: 0 12px 0 0 !important;
    align-self: center !important;
    font-size: 15px !important;
  }
}

@media (max-width: 390px) {
  .home-hero-actions {
    display: grid;
    grid-template-columns: 1fr;
    width: 100%;
  }

  .home-hero-actions button {
    width: 100%;
    justify-content: center;
  }

  html body main.page-panel.page-panel-menu button.menu-row {
    grid-template-columns: 102px minmax(0, 1fr) !important;
  }

  html body main.page-panel.page-panel-menu button.menu-row > .menu-thumb {
    width: 102px !important;
  }

  html body main.page-panel.page-panel-menu button.menu-row > .price {
    grid-column: 2;
    padding: 0 13px 12px !important;
    align-self: end !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .home-category-pill,
  .featured-card,
  .special-card,
  .menu-row,
  .admin-nav-btn {
    transition: none !important;
  }
}


/* assets/css/mm-coffee-redesign-v390.css */
/* M&M COFFEE v3.9 — editorial public experience rebuild. */

:root {
  --mm39-wine: #4b0d1d;
  --mm39-wine-bright: #7e1730;
  --mm39-ink: #211916;
  --mm39-muted: #736864;
  --mm39-paper: #f7f2eb;
  --mm39-card: #fffdf9;
  --mm39-line: #d9cec3;
  --mm39-accent: #d88455;
  --mm39-green: #3f765d;
  --mm39-shadow: 0 24px 70px rgba(49, 28, 21, .11);
}

html body {
  color: var(--mm39-ink) !important;
  background: #e9e1d8 !important;
}

html body .route-shell {
  width: 100% !important;
  max-width: none !important;
  min-height: 100dvh !important;
  margin: 0 !important;
  overflow: clip !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: var(--mm39-paper) !important;
  box-shadow: none !important;
}

html body .desktop-top-nav {
  height: 76px !important;
  padding: 0 clamp(24px, 4vw, 70px) !important;
  position: sticky !important;
  top: 0 !important;
  z-index: 120 !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(75, 13, 29, .12) !important;
  border-radius: 0 !important;
  color: var(--mm39-ink) !important;
  background: rgba(247, 242, 235, .94) !important;
  box-shadow: none !important;
  backdrop-filter: blur(18px) !important;
}

html body .desktop-top-nav .desktop-brand {
  gap: 11px !important;
}

html body .desktop-top-nav .desktop-header-logo {
  width: 38px !important;
  height: 38px !important;
  object-fit: contain !important;
}

html body .desktop-top-nav .desktop-brand-word {
  display: inline !important;
  color: var(--mm39-wine) !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 15px !important;
  letter-spacing: .08em !important;
}

html body .desktop-top-nav nav {
  gap: 3px !important;
}

html body .desktop-top-nav nav > button:not(.desktop-barista-cta),
html body .desktop-top-nav nav > a {
  min-height: 42px !important;
  padding: 0 15px !important;
  border: 0 !important;
  border-radius: 2px !important;
  color: #5d504c !important;
  background: transparent !important;
  font-size: 12px !important;
  font-weight: 650 !important;
}

html body .desktop-top-nav nav > button.active,
html body .desktop-top-nav nav > button:hover,
html body .desktop-top-nav nav > a:hover {
  color: var(--mm39-wine) !important;
  background: rgba(75, 13, 29, .06) !important;
}

html body .desktop-top-nav .desktop-barista-cta {
  min-height: 44px !important;
  margin-left: 11px !important;
  padding: 0 18px !important;
  border: 1px solid var(--mm39-wine) !important;
  border-radius: 2px !important;
  color: #fffaf3 !important;
  background: var(--mm39-wine) !important;
  box-shadow: none !important;
}

/* Home: a restrained editorial storefront instead of stacked app cards. */
html body .home-landing-hero {
  min-height: min(790px, calc(100svh - 76px)) !important;
  border: 0 !important;
  border-radius: 0 !important;
  background-position: center 42% !important;
}

html body .home-landing-hero::before {
  background:
    linear-gradient(90deg, rgba(25, 8, 13, .91) 0%, rgba(41, 11, 20, .72) 43%, rgba(41, 11, 20, .14) 74%),
    linear-gradient(0deg, rgba(20, 8, 10, .35), transparent 45%) !important;
}

html body .home-hero-copy {
  width: min(620px, calc(100% - 80px)) !important;
  margin: 0 !important;
  padding: clamp(88px, 12vh, 138px) 0 76px clamp(34px, 7vw, 112px) !important;
  align-items: flex-start !important;
  text-align: left !important;
}

html body .home-hero-copy .brand-logo-img {
  width: clamp(150px, 18vw, 240px) !important;
  margin: 18px 0 12px !important;
}

html body .home-hero-copy .brand-word {
  color: #fffaf3 !important;
}

html body .home-hero-copy > p {
  max-width: 560px !important;
  margin: 0 !important;
  color: #fffaf3 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(31px, 4.2vw, 61px) !important;
  font-weight: 500 !important;
  line-height: .98 !important;
  letter-spacing: -.045em !important;
}

html body .home-hero-copy > span {
  margin-top: 20px !important;
  padding: 0 !important;
  color: rgba(255, 250, 243, .68) !important;
  background: transparent !important;
  font-size: 12px !important;
  font-style: normal !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
}

html body .home-hero-eyebrow {
  color: var(--mm39-accent) !important;
  font-size: 10px !important;
  letter-spacing: .24em !important;
}

html body .home-hero-actions {
  width: min(480px, 100%) !important;
  margin-top: 28px !important;
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 1px !important;
  background: rgba(255, 255, 255, .25) !important;
}

html body .home-hero-actions > button {
  min-height: 56px !important;
  border: 0 !important;
  border-radius: 0 !important;
  color: var(--mm39-wine) !important;
  background: #fffaf3 !important;
  box-shadow: none !important;
}

html body .home-hero-actions > button + button {
  color: #fffaf3 !important;
  background: rgba(50, 10, 21, .82) !important;
}

html body .home-hero-facts {
  width: min(530px, 100%) !important;
  margin-top: 34px !important;
  padding: 19px 0 0 !important;
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  border: 0 !important;
  border-top: 1px solid rgba(255, 255, 255, .27) !important;
  border-radius: 0 !important;
  background: transparent !important;
}

html body .home-hero-facts > span {
  padding: 0 15px !important;
  border-right: 1px solid rgba(255, 255, 255, .18) !important;
  color: rgba(255, 250, 243, .74) !important;
}

html body .home-hero-facts > span:first-child {
  padding-left: 0 !important;
}

html body .home-hero-facts > span:last-child {
  border-right: 0 !important;
}

html body .home-hero-facts b {
  color: #fffaf3 !important;
}

html body .hero-location-pill {
  top: 30px !important;
  right: clamp(28px, 5vw, 76px) !important;
  border: 1px solid rgba(255, 255, 255, .25) !important;
  border-radius: 2px !important;
  background: rgba(30, 8, 14, .46) !important;
  box-shadow: none !important;
}

html body .home-floating-search {
  width: min(600px, calc(100% - 70px)) !important;
  right: clamp(34px, 7vw, 112px) !important;
  bottom: 34px !important;
  left: auto !important;
  transform: none !important;
}

html body .home-search-box,
html body .hero-menu .search-box {
  min-height: 62px !important;
  border: 1px solid rgba(75, 13, 29, .13) !important;
  border-radius: 2px !important;
  background: rgba(255, 253, 249, .96) !important;
  box-shadow: var(--mm39-shadow) !important;
}

html body main.home-panel.home-modern-panel {
  width: min(100%, 1440px) !important;
  max-width: 1440px !important;
  margin: 0 auto !important;
  padding: 70px clamp(24px, 5vw, 80px) 130px !important;
  background: var(--mm39-paper) !important;
}

html body .home-section {
  margin: 0 0 86px !important;
}

html body .home-section-head {
  min-height: 70px !important;
  margin-bottom: 24px !important;
  padding-bottom: 17px !important;
  align-items: flex-end !important;
  border-bottom: 1px solid var(--mm39-line) !important;
}

html body .home-section-head > span b {
  display: block !important;
  margin-bottom: 6px !important;
  color: var(--mm39-wine-bright) !important;
  font-size: 9px !important;
  letter-spacing: .21em !important;
}

html body .home-section-head h2 {
  color: var(--mm39-ink) !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(28px, 3vw, 44px) !important;
  font-weight: 500 !important;
  line-height: 1 !important;
  letter-spacing: -.035em !important;
}

html body .home-section-head > button {
  min-height: 42px !important;
  padding: 0 !important;
  border: 0 !important;
  border-bottom: 1px solid var(--mm39-wine) !important;
  border-radius: 0 !important;
  color: var(--mm39-wine) !important;
  background: transparent !important;
  box-shadow: none !important;
}

html body .home-section.home-menu-categories .home-category-strip {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 1px !important;
  overflow: visible !important;
  background: var(--mm39-line) !important;
}

html body .home-menu-categories .home-category-strip > .home-category-pill {
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  flex: none !important;
  justify-self: stretch !important;
  min-height: 136px !important;
  padding: 20px !important;
  display: grid !important;
  grid-template-columns: 34px 50px minmax(0, 1fr) 20px !important;
  align-items: center !important;
  gap: 15px !important;
  border: 0 !important;
  border-radius: 0 !important;
  color: var(--mm39-ink) !important;
  background: var(--mm39-card) !important;
  box-shadow: none !important;
  text-align: left !important;
}

html body .home-menu-categories .home-category-strip > .home-category-pill:hover {
  color: #fffaf3 !important;
  background: var(--mm39-wine) !important;
  transform: none !important;
}

html body .home-category-index {
  color: var(--mm39-accent) !important;
  font-size: 10px !important;
  letter-spacing: .12em !important;
}

html body .home-menu-categories .home-category-strip > .home-category-pill .home-category-icon {
  width: 48px !important;
  height: 48px !important;
  display: grid !important;
  place-items: center !important;
  border: 1px solid currentColor !important;
  border-radius: 50% !important;
  background: transparent !important;
  box-shadow: none !important;
}

html body .home-menu-categories .home-category-strip > .home-category-pill .home-category-icon svg,
html body .home-menu-categories .home-category-strip > .home-category-pill .home-category-icon img {
  width: 25px !important;
  height: 25px !important;
  object-fit: cover !important;
  border-radius: 50% !important;
}

html body .home-menu-categories .home-category-strip > .home-category-pill .home-category-copy {
  min-width: 0 !important;
  display: grid !important;
  gap: 6px !important;
}

html body .home-menu-categories .home-category-strip > .home-category-pill .home-category-copy strong {
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 18px !important;
  font-weight: 500 !important;
  line-height: 1.15 !important;
}

html body .home-menu-categories .home-category-strip > .home-category-pill .home-category-copy small {
  color: var(--mm39-muted) !important;
  font-size: 10px !important;
}

html body .home-menu-categories .home-category-strip > .home-category-pill:hover small {
  color: rgba(255, 250, 243, .65) !important;
}

html body .home-menu-categories .home-category-strip > .home-category-pill > i {
  font-style: normal !important;
}

html body .featured-grid,
html body .special-row {
  gap: 18px !important;
}

html body .featured-card,
html body .special-card,
html body .home-story-row,
html body .home-social-row {
  border: 1px solid var(--mm39-line) !important;
  border-radius: 2px !important;
  background: var(--mm39-card) !important;
  box-shadow: none !important;
}

html body .featured-media,
html body .featured-media img {
  border-radius: 0 !important;
}

html body .featured-body h3,
html body .special-card strong,
html body .home-story-row strong,
html body .home-social-row strong {
  font-family: Georgia, "Times New Roman", serif !important;
  font-weight: 500 !important;
}

/* Menu hero and core information architecture. */
html body .hero-menu {
  min-height: 330px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background-position: center 44% !important;
}

html body .hero-menu::after {
  background: linear-gradient(90deg, rgba(37, 8, 16, .92), rgba(53, 11, 24, .64) 53%, rgba(53, 11, 24, .12)) !important;
}

html body .hero-menu .hero-copy,
html body .hero-menu .hero-copy.hero-copy-menu-layout {
  width: min(1390px, calc(100% - 64px)) !important;
  max-width: 1390px !important;
  margin: 0 auto !important;
  padding: 74px 0 78px !important;
  align-items: flex-start !important;
  text-align: left !important;
}

html body .hero-menu .hero-copy h1 {
  color: #fffaf3 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(50px, 7vw, 92px) !important;
  font-weight: 500 !important;
  line-height: .9 !important;
  letter-spacing: -.06em !important;
}

html body .hero-menu .hero-copy p {
  max-width: 480px !important;
  margin-top: 14px !important;
  color: rgba(255, 250, 243, .7) !important;
  font-size: 13px !important;
}

html body .hero-menu .floating-search {
  width: min(520px, calc(100% - 64px)) !important;
  right: max(32px, calc((100vw - 1390px) / 2)) !important;
  bottom: 45px !important;
  left: auto !important;
  transform: none !important;
}

html body main.page-panel.page-panel-menu,
html body main.page-panel.page-panel-menu:not(.is-special-list) {
  width: min(100%, 1440px) !important;
  max-width: 1440px !important;
  min-height: 800px !important;
  margin: 0 auto !important;
  padding: 58px clamp(24px, 4vw, 64px) 140px !important;
  display: grid !important;
  grid-template-columns: 258px minmax(0, 1fr) !important;
  align-items: start !important;
  gap: clamp(34px, 4vw, 62px) !important;
  background: var(--mm39-paper) !important;
}

html body main.page-panel.page-panel-menu.is-special-list {
  display: block !important;
}

.menu-directory {
  min-width: 0 !important;
  display: block !important;
}

.menu-directory-heading {
  margin-bottom: 22px !important;
  padding: 0 4px 18px !important;
  border-bottom: 1px solid var(--mm39-line) !important;
}

.menu-directory-heading > b,
.menu-selection-head b {
  display: block !important;
  margin-bottom: 7px !important;
  color: var(--mm39-wine-bright) !important;
  font-size: 8px !important;
  letter-spacing: .22em !important;
}

.menu-directory-heading h2,
.menu-selection-head h2 {
  margin: 0 !important;
  color: var(--mm39-ink) !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 32px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
  letter-spacing: -.035em !important;
}

.menu-directory-heading p,
.menu-selection-head p {
  margin: 11px 0 0 !important;
  color: var(--mm39-muted) !important;
  font-size: 10px !important;
  line-height: 1.55 !important;
}

html body .page-panel-menu .category-reference-shell {
  width: 100% !important;
  max-height: calc(100dvh - 115px) !important;
  margin: 0 !important;
  padding: 0 7px 0 0 !important;
  position: sticky !important;
  top: 98px !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  scrollbar-width: thin !important;
  scrollbar-color: rgba(75, 13, 29, .24) transparent !important;
}

html body .page-panel-menu .category-reference-shell::before,
html body .page-panel-menu .category-reference-shell::after,
html body .page-panel-menu .category-reference-strip::before,
html body .page-panel-menu .category-reference-strip::after {
  display: none !important;
}

html body .page-panel-menu .category-reference-strip {
  width: 100% !important;
  height: auto !important;
  padding: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 1px !important;
  overflow: visible !important;
  scroll-snap-type: none !important;
}

html body .page-panel-menu .category-reference-item {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  min-height: 61px !important;
  padding: 11px 9px !important;
  display: grid !important;
  grid-template-columns: 27px minmax(0, 1fr) 18px !important;
  align-items: center !important;
  gap: 8px !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(115, 104, 100, .18) !important;
  border-radius: 0 !important;
  color: var(--mm39-ink) !important;
  background: transparent !important;
  box-shadow: none !important;
  text-align: left !important;
}

html body .page-panel-menu .category-reference-item:hover {
  padding-left: 13px !important;
  color: var(--mm39-wine) !important;
  background: rgba(75, 13, 29, .045) !important;
}

html body .page-panel-menu .category-reference-item.active {
  padding: 13px 12px !important;
  border-bottom-color: var(--mm39-wine) !important;
  border-radius: 2px !important;
  color: #fffaf3 !important;
  background: var(--mm39-wine) !important;
}

.category-reference-index {
  color: var(--mm39-accent) !important;
  font-size: 9px !important;
  letter-spacing: .09em !important;
}

.category-reference-copy {
  min-width: 0 !important;
  display: grid !important;
  gap: 4px !important;
}

.category-reference-copy strong {
  overflow: hidden !important;
  color: inherit !important;
  font-size: 11px !important;
  font-weight: 720 !important;
  line-height: 1.2 !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.category-reference-copy small {
  color: var(--mm39-muted) !important;
  font-size: 8px !important;
}

.category-reference-item.active .category-reference-copy small {
  color: rgba(255, 250, 243, .58) !important;
}

.category-reference-item > i {
  color: inherit !important;
  font-size: 12px !important;
  font-style: normal !important;
  opacity: .55 !important;
}

.menu-directory-barista {
  width: 100% !important;
  min-height: 132px !important;
  margin-top: 25px !important;
  padding: 17px !important;
  display: grid !important;
  grid-template-columns: 26px minmax(0, 1fr) 18px !important;
  align-items: start !important;
  gap: 10px !important;
  border: 0 !important;
  border-radius: 2px !important;
  color: #fffaf3 !important;
  background: var(--mm39-wine) !important;
  box-shadow: none !important;
  text-align: left !important;
}

.menu-directory-barista > span:first-child {
  width: 26px !important;
  height: 26px !important;
  display: grid !important;
  place-items: center !important;
  border: 1px solid rgba(255, 255, 255, .3) !important;
  border-radius: 50% !important;
  color: var(--mm39-accent) !important;
}

.menu-directory-barista > span:nth-child(2) {
  display: grid !important;
  gap: 5px !important;
}

.menu-directory-barista small {
  color: var(--mm39-accent) !important;
  font-size: 7px !important;
  letter-spacing: .18em !important;
}

.menu-directory-barista strong {
  color: inherit !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 19px !important;
  font-weight: 500 !important;
}

.menu-directory-barista em {
  color: rgba(255, 250, 243, .65) !important;
  font-size: 9px !important;
  font-style: normal !important;
  line-height: 1.4 !important;
}

.menu-directory-barista > i {
  color: var(--mm39-accent) !important;
  font-style: normal !important;
}

html body .page-panel-menu .menu-content-column {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
}

.menu-mobile-tools {
  display: none !important;
}

.menu-selection-head {
  min-height: 126px !important;
  margin-bottom: 22px !important;
  padding: 0 0 24px !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: end !important;
  gap: 24px !important;
  border-bottom: 1px solid var(--mm39-line) !important;
}

.menu-selection-head > span {
  max-width: 610px !important;
}

.menu-selection-head > strong {
  color: var(--mm39-wine) !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 78px !important;
  font-weight: 500 !important;
  line-height: .8 !important;
  letter-spacing: -.07em !important;
}

html body .page-panel-menu .menu-results-summary {
  min-height: auto !important;
  margin: 0 0 17px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.menu-results-copy {
  display: flex !important;
  align-items: baseline !important;
  gap: 7px !important;
}

.menu-results-copy > strong {
  color: var(--mm39-wine) !important;
  font-size: 17px !important;
}

.menu-results-copy > span,
.menu-results-copy > small {
  color: var(--mm39-muted) !important;
  font-size: 9px !important;
}

.menu-results-copy > small::before {
  content: "—" !important;
  margin-right: 7px !important;
}

html body main.page-panel.page-panel-menu .menu-list {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 14px !important;
}

html body main.page-panel.page-panel-menu .menu-list > button.menu-row {
  width: 100% !important;
  min-width: 0 !important;
  min-height: 186px !important;
  padding: 0 !important;
  position: relative !important;
  display: grid !important;
  flex-direction: initial !important;
  grid-template-columns: 150px minmax(0, 1fr) !important;
  grid-template-rows: minmax(0, 1fr) auto !important;
  align-items: stretch !important;
  gap: 0 !important;
  overflow: hidden !important;
  border: 1px solid var(--mm39-line) !important;
  border-radius: 2px !important;
  color: var(--mm39-ink) !important;
  background: var(--mm39-card) !important;
  box-shadow: none !important;
  text-align: left !important;
  transition: border-color .2s ease, background-color .2s ease !important;
}

html body main.page-panel.page-panel-menu .menu-list > button.menu-row:hover {
  border-color: rgba(75, 13, 29, .45) !important;
  background: #fff !important;
  transform: none !important;
  box-shadow: 0 18px 42px rgba(49, 28, 21, .09) !important;
}

html body main.page-panel.page-panel-menu .menu-list > button.menu-row > .menu-thumb {
  width: 150px !important;
  height: 100% !important;
  min-width: 150px !important;
  order: 0 !important;
  flex: none !important;
  aspect-ratio: auto !important;
  grid-row: 1 / 3 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #e8dfd7 !important;
}

html body main.page-panel.page-panel-menu .menu-list > button.menu-row > .menu-thumb img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

html body main.page-panel.page-panel-menu .menu-list > button.menu-row > .menu-row-copy {
  min-width: 0 !important;
  width: auto !important;
  min-height: 0 !important;
  padding: 20px 20px 7px !important;
  display: block !important;
  order: 0 !important;
}

html body main.page-panel.page-panel-menu button.menu-row .menu-title {
  color: var(--mm39-ink) !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 18px !important;
  font-weight: 500 !important;
  line-height: 1.12 !important;
  letter-spacing: -.02em !important;
}

html body main.page-panel.page-panel-menu button.menu-row .menu-desc {
  margin-top: 9px !important;
  color: var(--mm39-muted) !important;
  font-size: 9px !important;
  line-height: 1.5 !important;
  display: -webkit-box !important;
  overflow: hidden !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 2 !important;
}

.menu-row-meta {
  margin-top: 12px !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 5px !important;
}

.menu-row-meta small {
  padding: 4px 7px !important;
  border: 1px solid var(--mm39-line) !important;
  border-radius: 1px !important;
  color: #756965 !important;
  font-size: 7px !important;
  line-height: 1 !important;
}

html body main.page-panel.page-panel-menu .menu-list > button.menu-row > .menu-row-side {
  min-width: 0 !important;
  width: auto !important;
  padding: 6px 20px 16px !important;
  display: flex !important;
  align-items: end !important;
  justify-content: space-between !important;
  gap: 10px !important;
  order: 0 !important;
}

html body main.page-panel.page-panel-menu button.menu-row .menu-row-side > .price {
  padding: 0 !important;
  color: var(--mm39-wine) !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 18px !important;
  font-weight: 600 !important;
}

.menu-row-side > small {
  color: var(--mm39-muted) !important;
  font-size: 8px !important;
}

.menu-row-side > small i {
  color: var(--mm39-wine) !important;
  font-style: normal !important;
}

.new-product-chip,
.sold-out-chip,
.featured-ribbon {
  border-radius: 1px !important;
}

/* Product and About routes adopt the same flat editorial language. */
html body .detail-shell {
  width: min(100%, 1440px) !important;
  max-width: 1440px !important;
  margin: 0 auto !important;
  padding: 46px clamp(24px, 5vw, 76px) 130px !important;
  display: grid !important;
  grid-template-columns: minmax(0, .95fr) minmax(420px, 1.05fr) !important;
  gap: clamp(36px, 6vw, 88px) !important;
  background: var(--mm39-paper) !important;
}

html body .detail-media,
html body .detail-sheet {
  border-radius: 2px !important;
  box-shadow: none !important;
}

html body .detail-media {
  height: min(690px, calc(100dvh - 150px)) !important;
  position: sticky !important;
  top: 102px !important;
}

html body .detail-sheet {
  padding: clamp(26px, 4vw, 54px) !important;
  border: 1px solid var(--mm39-line) !important;
  background: var(--mm39-card) !important;
}

html body .detail-heading h1 {
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(36px, 4vw, 58px) !important;
  font-weight: 500 !important;
  letter-spacing: -.045em !important;
}

html body .detail-primary-actions button,
html body .detail-badges span,
html body .detail-accordion,
html body .related-card,
html body .direction-card,
html body .social-card,
html body .gallery-tile {
  border-radius: 2px !important;
  box-shadow: none !important;
}

html body .page-panel:not(.page-panel-menu):not(.home-panel) {
  width: min(100%, 1180px) !important;
  max-width: 1180px !important;
  margin: 0 auto !important;
  padding: 70px clamp(24px, 5vw, 76px) 130px !important;
  background: var(--mm39-paper) !important;
}

html body .page-panel:not(.page-panel-menu) .section-title {
  margin-top: 40px !important;
  padding-bottom: 16px !important;
  border-bottom: 1px solid var(--mm39-line) !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(30px, 4vw, 48px) !important;
  font-weight: 500 !important;
}

/* Barista remains prominent without occupying a full filter block. */
html body .assistant-widget {
  right: 22px !important;
  bottom: 22px !important;
}

html body .assistant-fab {
  min-width: 174px !important;
  min-height: 56px !important;
  padding: 0 8px 0 17px !important;
  border: 1px solid rgba(255, 255, 255, .2) !important;
  border-radius: 2px !important;
  color: #fffaf3 !important;
  background: var(--mm39-wine) !important;
  box-shadow: 0 18px 42px rgba(43, 8, 18, .24) !important;
}

html body .assistant-fab-icon {
  border-radius: 1px !important;
  background: rgba(255, 255, 255, .11) !important;
}

html body .assistant-panel {
  border: 1px solid var(--mm39-line) !important;
  border-radius: 2px !important;
  background: var(--mm39-card) !important;
  box-shadow: 0 30px 90px rgba(35, 12, 18, .25) !important;
}

@media (max-width: 1179px) and (min-width: 821px) {
  html body main.page-panel.page-panel-menu,
  html body main.page-panel.page-panel-menu:not(.is-special-list) {
    grid-template-columns: 230px minmax(0, 1fr) !important;
    gap: 34px !important;
  }

  html body main.page-panel.page-panel-menu .menu-list {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 820px) {
  html.lunqa-barista-keyboard-open .bottom-nav {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }

  html body .phone-shell .bottom-nav {
    width: 100% !important;
    height: 70px !important;
    min-height: 70px !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    padding: 4px 7px !important;
    border: 0 !important;
    border-top: 1px solid var(--mm39-line) !important;
    border-radius: 0 !important;
    background: rgba(255, 253, 249, .97) !important;
    box-shadow: 0 -10px 32px rgba(49, 28, 21, .08) !important;
    transform: none !important;
  }

  html body .phone-shell .bottom-nav .nav-btn {
    min-width: 0 !important;
    min-height: 58px !important;
    padding: 5px 2px !important;
    border-radius: 2px !important;
    font-size: 8px !important;
  }

  html body .phone-shell .bottom-nav button.logo-tab {
    width: 58px !important;
    height: 58px !important;
    min-width: 58px !important;
    min-height: 58px !important;
    max-width: 58px !important;
    max-height: 58px !important;
    top: -8px !important;
  }

  html body .phone-shell .bottom-nav button.logo-tab .brand-mark-round.brand-mark-full-logo {
    width: 54px !important;
    height: 54px !important;
    min-width: 54px !important;
    min-height: 54px !important;
    max-width: 54px !important;
    max-height: 54px !important;
    padding: 0 !important;
    border-radius: 2px !important;
    background: var(--mm39-wine) !important;
  }

  html body .phone-shell .bottom-nav button.logo-tab img.brand-logo-symbol-img {
    width: auto !important;
    height: 38px !important;
    max-width: 38px !important;
    max-height: 38px !important;
    object-fit: contain !important;
  }

  html body .assistant-panel .assistant-suggestions {
    padding: 8px 12px !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 6px !important;
    overflow: visible !important;
  }

  html body .assistant-panel .assistant-suggestions > button {
    min-width: 0 !important;
    min-height: 42px !important;
    padding: 7px 8px !important;
    border-radius: 2px !important;
    white-space: normal !important;
    line-height: 1.2 !important;
  }

  html body .assistant-panel .assistant-suggestions > button:nth-child(n + 5) {
    display: none !important;
  }

  .route-shell:has(.page-panel-menu) + .assistant-widget:not(.open) .assistant-fab {
    display: none !important;
  }

  html body .desktop-top-nav {
    display: none !important;
  }

  html body .home-landing-hero {
    min-height: 900px !important;
    padding: 0 !important;
    display: block !important;
  }

  html body .home-landing-hero::before {
    background:
      linear-gradient(180deg, rgba(27, 8, 14, .30) 0%, rgba(38, 9, 18, .82) 55%, rgba(28, 8, 14, .96) 100%) !important;
  }

  html body .hero-location-pill {
    top: 22px !important;
    right: 18px !important;
    max-width: calc(100% - 36px) !important;
  }

  html body .home-hero-copy {
    width: calc(100% - 36px) !important;
    margin: 0 auto !important;
    padding: 118px 0 142px !important;
    align-items: flex-start !important;
  }

  html body .home-hero-copy .brand-logo-img {
    width: 132px !important;
  }

  html body .home-hero-copy > p {
    font-size: clamp(34px, 11vw, 47px) !important;
    line-height: 1 !important;
  }

  html body .home-hero-actions {
    grid-template-columns: 1fr !important;
  }

  html body .home-hero-facts {
    display: none !important;
  }

  html body .home-hero-facts > span {
    padding: 0 9px !important;
    font-size: 8px !important;
  }

  html body .home-floating-search {
    width: calc(100% - 36px) !important;
    right: 18px !important;
    bottom: 74px !important;
  }

  html body main.home-panel.home-modern-panel {
    padding: 48px 16px 118px !important;
  }

  html body .home-section {
    margin-bottom: 62px !important;
  }

  html body .home-section-head {
    align-items: end !important;
  }

  html body .home-section-head h2 {
    font-size: 29px !important;
  }

  html body .home-section-head > button {
    min-width: auto !important;
    font-size: 9px !important;
  }

  html body .home-section.home-menu-categories .home-category-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  html body .home-menu-categories .home-category-strip > .home-category-pill {
    min-height: 132px !important;
    padding: 15px !important;
    grid-template-columns: 24px 42px minmax(0, 1fr) !important;
    grid-template-rows: auto auto !important;
    gap: 10px !important;
  }

  html body .home-menu-categories .home-category-strip > .home-category-pill .home-category-icon {
    width: 42px !important;
    height: 42px !important;
  }

  html body .home-menu-categories .home-category-strip > .home-category-pill .home-category-copy {
    grid-column: 2 / 4 !important;
  }

  html body .home-menu-categories .home-category-strip > .home-category-pill .home-category-copy strong {
    font-size: 14px !important;
  }

  html body .home-menu-categories .home-category-strip > .home-category-pill > i {
    display: none !important;
  }

  html body .hero-menu {
    min-height: 270px !important;
  }

  html body .hero-menu .hero-copy,
  html body .hero-menu .hero-copy.hero-copy-menu-layout {
    width: calc(100% - 34px) !important;
    padding: 56px 0 92px !important;
  }

  html body .hero-menu .hero-copy h1 {
    font-size: 55px !important;
  }

  html body .hero-menu .floating-search {
    width: calc(100% - 34px) !important;
    right: 17px !important;
    bottom: 22px !important;
  }

  html body .hero-menu .search-box {
    min-height: 54px !important;
  }

  html body main.page-panel.page-panel-menu,
  html body main.page-panel.page-panel-menu:not(.is-special-list) {
    width: 100% !important;
    min-height: 700px !important;
    padding: 0 16px 116px !important;
    display: block !important;
    background: var(--mm39-paper) !important;
  }

  .menu-directory {
    display: none !important;
  }

  .menu-mobile-tools {
    width: calc(100% + 32px) !important;
    margin: 0 -16px 28px !important;
    padding: 14px 16px !important;
    position: sticky !important;
    top: 0 !important;
    z-index: 90 !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 116px !important;
    gap: 8px !important;
    border-bottom: 1px solid var(--mm39-line) !important;
    background: rgba(247, 242, 235, .96) !important;
    backdrop-filter: blur(15px) !important;
  }

  .menu-mobile-category {
    min-width: 0 !important;
    min-height: 62px !important;
    padding: 8px 12px !important;
    display: grid !important;
    align-content: center !important;
    gap: 5px !important;
    border: 1px solid var(--mm39-line) !important;
    border-radius: 2px !important;
    background: var(--mm39-card) !important;
  }

  .menu-mobile-category > span {
    color: var(--mm39-wine-bright) !important;
    font-size: 7px !important;
    font-weight: 800 !important;
    letter-spacing: .16em !important;
    text-transform: uppercase !important;
  }

  .menu-mobile-category select {
    width: 100% !important;
    min-width: 0 !important;
    padding: 0 24px 0 0 !important;
    border: 0 !important;
    color: var(--mm39-ink) !important;
    background: transparent !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    text-overflow: ellipsis !important;
  }

  .menu-mobile-barista {
    min-width: 0 !important;
    min-height: 62px !important;
    padding: 8px 10px !important;
    display: grid !important;
    grid-template-columns: 22px minmax(0, 1fr) !important;
    grid-template-rows: auto auto !important;
    align-content: center !important;
    column-gap: 7px !important;
    border: 0 !important;
    border-radius: 2px !important;
    color: #fffaf3 !important;
    background: var(--mm39-wine) !important;
    box-shadow: none !important;
    text-align: left !important;
  }

  .menu-mobile-barista > span {
    grid-row: 1 / 3 !important;
    align-self: center !important;
    color: var(--mm39-accent) !important;
  }

  .menu-mobile-barista strong {
    color: inherit !important;
    font-size: 11px !important;
  }

  .menu-mobile-barista small {
    overflow: hidden !important;
    color: rgba(255, 250, 243, .62) !important;
    font-size: 7px !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  .menu-selection-head {
    min-height: auto !important;
    margin: 0 0 15px !important;
    padding: 0 0 20px !important;
    align-items: end !important;
    gap: 12px !important;
  }

  .menu-selection-head h2 {
    font-size: 28px !important;
  }

  .menu-selection-head p {
    max-width: 255px !important;
    font-size: 8.5px !important;
  }

  .menu-selection-head > strong {
    font-size: 54px !important;
  }

  html body .page-panel-menu .menu-results-summary {
    margin-bottom: 12px !important;
  }

  html body main.page-panel.page-panel-menu .menu-list {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  html body main.page-panel.page-panel-menu .menu-list > button.menu-row {
    min-height: 142px !important;
    grid-template-columns: 108px minmax(0, 1fr) !important;
  }

  html body main.page-panel.page-panel-menu .menu-list > button.menu-row > .menu-thumb {
    width: 108px !important;
    min-width: 108px !important;
  }

  html body main.page-panel.page-panel-menu .menu-list > button.menu-row > .menu-row-copy {
    padding: 15px 14px 3px !important;
  }

  html body main.page-panel.page-panel-menu button.menu-row .menu-title {
    font-size: 15px !important;
  }

  html body main.page-panel.page-panel-menu button.menu-row .menu-desc {
    margin-top: 6px !important;
    font-size: 8px !important;
    -webkit-line-clamp: 2 !important;
  }

  .menu-row-meta {
    margin-top: 7px !important;
  }

  .menu-row-meta small {
    padding: 3px 5px !important;
    font-size: 6px !important;
  }

  html body main.page-panel.page-panel-menu .menu-list > button.menu-row > .menu-row-side {
    padding: 3px 14px 12px !important;
  }

  html body main.page-panel.page-panel-menu button.menu-row .menu-row-side > .price {
    font-size: 16px !important;
  }

  .menu-row-side > small {
    font-size: 7px !important;
  }

  html body .detail-shell {
    width: 100% !important;
    padding: 0 0 118px !important;
    display: block !important;
  }

  html body .detail-media {
    width: 100% !important;
    height: 52svh !important;
    position: relative !important;
    top: auto !important;
    border-radius: 0 !important;
  }

  html body .detail-sheet {
    margin: 0 !important;
    padding: 28px 18px !important;
    border-width: 0 0 1px !important;
  }

  html body .detail-heading h1 {
    font-size: 34px !important;
  }

  html body .page-panel:not(.page-panel-menu):not(.home-panel) {
    padding: 45px 16px 118px !important;
  }

  html body .assistant-widget {
    right: 14px !important;
    bottom: 82px !important;
  }

  html body .assistant-fab {
    min-width: 148px !important;
    min-height: 52px !important;
  }

  html body .bottom-nav {
    border: 0 !important;
    border-top: 1px solid var(--mm39-line) !important;
    border-radius: 0 !important;
    background: rgba(255, 253, 249, .96) !important;
    box-shadow: 0 -12px 35px rgba(49, 28, 21, .08) !important;
    backdrop-filter: blur(16px) !important;
  }

  html body .bottom-nav .logo-tab {
    border-radius: 2px !important;
    background: var(--mm39-wine) !important;
  }
}

@media (max-width: 430px) {
  html body .home-menu-categories .home-category-strip > .home-category-pill {
    min-height: 122px !important;
  }

  .menu-mobile-tools {
    grid-template-columns: minmax(0, 1fr) 106px !important;
  }

  html body main.page-panel.page-panel-menu .menu-list > button.menu-row {
    min-height: 136px !important;
    grid-template-columns: 100px minmax(0, 1fr) !important;
  }

  html body main.page-panel.page-panel-menu .menu-list > button.menu-row > .menu-thumb {
    width: 100px !important;
    min-width: 100px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .home-category-pill,
  .category-reference-item,
  .menu-row {
    transition: none !important;
  }
}


/* assets/css/mm-coffee-uiux-v400.css */
/* M&M COFFEE v4.0 — warm patisserie UI/UX system and true full-width layouts. */

:root {
  --mm4-espresso: #2d201c;
  --mm4-cocoa: #49332d;
  --mm4-berry: #9d3152;
  --mm4-berry-dark: #6f1f3a;
  --mm4-rose: #f1cbd2;
  --mm4-blush: #f8e8e3;
  --mm4-vanilla: #fff8ed;
  --mm4-cream: #fffcf7;
  --mm4-apricot: #f0b77b;
  --mm4-pistachio: #768f69;
  --mm4-mint: #dce8d5;
  --mm4-line: #e4d5ca;
  --mm4-muted: #75645e;
  --mm4-shadow: 0 22px 60px rgba(74, 45, 36, .11);
  --mm4-shadow-soft: 0 12px 32px rgba(74, 45, 36, .075);
  --mm4-radius-xl: 30px;
  --mm4-radius-lg: 22px;
  --mm4-radius-md: 16px;
}

html,
html body {
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  color: var(--mm4-espresso) !important;
  background: var(--mm4-vanilla) !important;
}

html body #app,
html body .app-stage {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
}

html body .app-stage > .phone-shell.route-shell,
html body .app-stage > .route-shell[data-screen-root] {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: var(--mm4-vanilla) !important;
  box-shadow: none !important;
}

html body button,
html body a,
html body input,
html body select,
html body summary {
  -webkit-tap-highlight-color: transparent;
}

html body button:focus-visible,
html body a:focus-visible,
html body input:focus-visible,
html body select:focus-visible,
html body summary:focus-visible {
  outline: 3px solid var(--mm4-apricot) !important;
  outline-offset: 3px !important;
}

html body button,
html body a.nav-btn,
html body .desktop-nav-links > *,
html body .detail-primary-actions > *,
html body .admin-stage button {
  min-height: 44px;
}

.mobile-top-nav {
  display: none !important;
}

/* Desktop navbar: full-width, calm hierarchy, clear active state. */
html body .app-stage > .route-shell .desktop-top-nav {
  width: 100% !important;
  max-width: none !important;
  height: 82px !important;
  min-height: 82px !important;
  padding: 0 !important;
  position: sticky !important;
  top: 0 !important;
  z-index: 160 !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(73, 51, 45, .1) !important;
  border-radius: 0 !important;
  background: rgba(255, 248, 237, .95) !important;
  box-shadow: 0 7px 26px rgba(65, 41, 34, .055) !important;
  backdrop-filter: blur(18px) saturate(1.1) !important;
}

.desktop-nav-inner {
  width: 100% !important;
  height: 100% !important;
  padding: 0 clamp(24px, 3.7vw, 78px) !important;
  display: grid !important;
  grid-template-columns: minmax(230px, 1fr) auto minmax(260px, 1fr) !important;
  align-items: center !important;
  gap: clamp(18px, 3vw, 48px) !important;
}

html body .desktop-top-nav .desktop-brand {
  width: max-content !important;
  min-width: 0 !important;
  min-height: 58px !important;
  padding: 6px 12px 6px 5px !important;
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  border: 0 !important;
  border-radius: 16px !important;
  color: var(--mm4-espresso) !important;
  background: transparent !important;
  box-shadow: none !important;
  text-align: left !important;
}

html body .desktop-top-nav .desktop-brand:hover {
  background: var(--mm4-blush) !important;
}

html body .desktop-top-nav .desktop-header-logo {
  width: 46px !important;
  height: 46px !important;
  object-fit: contain !important;
}

html body .desktop-top-nav .desktop-brand .desktop-brand-meta {
  display: grid !important;
  gap: 2px !important;
}

.desktop-brand-meta strong {
  color: var(--mm4-berry-dark) !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 15px !important;
  letter-spacing: .1em !important;
}

.desktop-brand-meta small {
  color: var(--mm4-muted) !important;
  font-size: 8px !important;
  font-weight: 700 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
}

html body .desktop-top-nav .desktop-nav-links {
  min-height: 52px !important;
  padding: 5px !important;
  display: flex !important;
  align-items: center !important;
  gap: 3px !important;
  border: 1px solid rgba(73, 51, 45, .09) !important;
  border-radius: 18px !important;
  background: rgba(255, 252, 247, .88) !important;
}

html body .desktop-top-nav .desktop-nav-links > button,
html body .desktop-top-nav .desktop-nav-links > a {
  height: 44px !important;
  min-height: 44px !important;
  padding: 0 17px !important;
  border: 0 !important;
  border-radius: 13px !important;
  color: #6f5b54 !important;
  background: transparent !important;
  font-size: 11px !important;
  font-weight: 750 !important;
  line-height: 44px !important;
  text-decoration: none !important;
}

html body .desktop-top-nav .desktop-nav-links > button:hover,
html body .desktop-top-nav .desktop-nav-links > a:hover {
  color: var(--mm4-berry-dark) !important;
  background: var(--mm4-blush) !important;
}

html body .desktop-top-nav .desktop-nav-links > button.active {
  color: #fff !important;
  background: var(--mm4-berry) !important;
  box-shadow: 0 8px 18px rgba(157, 49, 82, .18) !important;
}

html body .desktop-top-nav .desktop-barista-cta {
  width: max-content !important;
  min-width: 220px !important;
  min-height: 54px !important;
  margin: 0 0 0 auto !important;
  padding: 7px 16px !important;
  display: grid !important;
  grid-template-columns: 30px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 10px !important;
  border: 0 !important;
  border-radius: 17px !important;
  color: #fff !important;
  background: linear-gradient(135deg, var(--mm4-berry-dark), var(--mm4-berry)) !important;
  box-shadow: 0 12px 25px rgba(111, 31, 58, .19) !important;
  text-align: left !important;
}

html body .desktop-top-nav .desktop-barista-cta > span:first-child {
  width: 30px !important;
  height: 30px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 10px !important;
  color: var(--mm4-apricot) !important;
  background: rgba(255, 255, 255, .12) !important;
}

html body .desktop-top-nav .desktop-barista-cta > span:last-child {
  display: grid !important;
  gap: 1px !important;
}

html body .desktop-top-nav .desktop-barista-cta small {
  color: rgba(255, 255, 255, .68) !important;
  font-size: 7px !important;
}

html body .desktop-top-nav .desktop-barista-cta strong {
  color: #fff !important;
  font-size: 12px !important;
}

/* Home hero: brighter storytelling, useful actions and a tangible product pick. */
html body .app-stage > .route-shell .home-landing-hero {
  width: 100% !important;
  max-width: none !important;
  min-height: 720px !important;
  margin: 0 !important;
  padding: 0 !important;
  display: block !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 0 0 34px 34px !important;
  background-position: center 43% !important;
}

html body .app-stage > .route-shell .home-landing-hero::before {
  background:
    linear-gradient(90deg, rgba(44, 26, 25, .88) 0%, rgba(75, 35, 45, .67) 46%, rgba(75, 35, 45, .14) 80%),
    linear-gradient(0deg, rgba(54, 28, 25, .34), transparent 46%) !important;
}

.home-hero-layout {
  width: 100% !important;
  min-height: 720px !important;
  padding: 70px clamp(32px, 6vw, 118px) 120px !important;
  position: relative !important;
  z-index: 2 !important;
  display: grid !important;
  grid-template-columns: minmax(500px, 1.25fr) minmax(300px, .65fr) !important;
  align-items: center !important;
  gap: clamp(48px, 8vw, 150px) !important;
}

html body .home-hero-layout .home-hero-copy {
  width: min(720px, 100%) !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  display: grid !important;
  justify-items: start !important;
  align-content: center !important;
  text-align: left !important;
}

html body .home-hero-layout .home-hero-copy .brand-logo-img {
  width: clamp(118px, 11vw, 178px) !important;
  margin: 14px 0 10px !important;
}

html body .home-hero-layout .home-hero-copy > p {
  max-width: 690px !important;
  margin: 0 !important;
  color: #fffaf3 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(46px, 4.7vw, 82px) !important;
  font-weight: 500 !important;
  line-height: .96 !important;
  letter-spacing: -.055em !important;
}

html body .home-hero-layout .home-hero-copy > span {
  margin-top: 17px !important;
  color: rgba(255, 250, 243, .77) !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: .17em !important;
  text-transform: uppercase !important;
}

html body .home-hero-eyebrow {
  color: #ffd0a0 !important;
  font-size: 9px !important;
  letter-spacing: .25em !important;
}

html body .home-hero-actions {
  width: min(520px, 100%) !important;
  margin-top: 28px !important;
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 10px !important;
  background: transparent !important;
}

html body .home-hero-actions > button {
  min-height: 56px !important;
  padding: 0 18px !important;
  border: 1px solid rgba(255, 255, 255, .28) !important;
  border-radius: 16px !important;
  color: var(--mm4-berry-dark) !important;
  background: #fffaf3 !important;
  box-shadow: 0 12px 28px rgba(23, 9, 11, .14) !important;
}

html body .home-hero-actions > button + button {
  color: #fff !important;
  background: rgba(157, 49, 82, .86) !important;
}

html body .home-hero-facts {
  width: min(610px, 100%) !important;
  margin-top: 26px !important;
  padding: 15px 0 0 !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  border: 0 !important;
  border-top: 1px solid rgba(255, 255, 255, .25) !important;
  border-radius: 0 !important;
  background: transparent !important;
}

html body .home-hero-facts > span {
  padding: 0 15px !important;
  border-right: 1px solid rgba(255, 255, 255, .17) !important;
  color: rgba(255, 250, 243, .72) !important;
}

html body .home-hero-facts > span:first-child { padding-left: 0 !important; }
html body .home-hero-facts > span:last-child { border-right: 0 !important; }
html body .home-hero-facts b { color: #fff !important; }

.home-hero-pick {
  width: min(380px, 100%) !important;
  min-height: 438px !important;
  margin: 0 auto !important;
  padding: 14px !important;
  display: grid !important;
  grid-template-rows: auto 1fr auto !important;
  gap: 12px !important;
  overflow: hidden !important;
  border: 1px solid rgba(255, 255, 255, .34) !important;
  border-radius: 28px !important;
  color: var(--mm4-espresso) !important;
  background: rgba(255, 248, 237, .92) !important;
  box-shadow: 0 30px 80px rgba(30, 10, 15, .24) !important;
  backdrop-filter: blur(16px) !important;
  text-align: left !important;
  transform: rotate(1.3deg) !important;
}

.home-hero-pick:hover {
  transform: rotate(0deg) translateY(-5px) !important;
}

.home-hero-pick-label {
  min-height: 38px !important;
  padding: 0 5px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  color: var(--mm4-berry) !important;
  font-size: 8px !important;
  letter-spacing: .16em !important;
}

.home-hero-pick-label i {
  width: 30px !important;
  height: 30px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 50% !important;
  color: #fff !important;
  background: var(--mm4-berry) !important;
  font-style: normal !important;
}

.home-hero-pick-media {
  min-height: 265px !important;
  overflow: hidden !important;
  border-radius: 20px !important;
  background: var(--mm4-blush) !important;
}

.home-hero-pick-media img {
  width: 100% !important;
  height: 100% !important;
  display: block !important;
  object-fit: cover !important;
}

.home-hero-pick-copy {
  min-height: 72px !important;
  padding: 3px 5px !important;
  display: grid !important;
  grid-template-columns: 1fr auto !important;
  align-items: end !important;
  gap: 3px 12px !important;
}

.home-hero-pick-copy strong {
  color: var(--mm4-espresso) !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 21px !important;
  font-weight: 500 !important;
}

.home-hero-pick-copy small {
  grid-column: 1 !important;
  color: var(--mm4-muted) !important;
  font-size: 9px !important;
}

.home-hero-pick-copy > b {
  grid-column: 2 !important;
  grid-row: 1 / 3 !important;
  color: var(--mm4-berry-dark) !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 20px !important;
}

html body .home-landing-hero .hero-location-pill {
  top: 28px !important;
  right: clamp(28px, 4vw, 78px) !important;
  z-index: 3 !important;
  border: 1px solid rgba(255, 255, 255, .3) !important;
  border-radius: 14px !important;
  background: rgba(45, 32, 28, .47) !important;
}

html body .home-landing-hero .home-floating-search {
  width: min(620px, calc(100% - 64px)) !important;
  right: clamp(32px, 6vw, 118px) !important;
  bottom: 38px !important;
  left: auto !important;
  z-index: 4 !important;
}

html body .home-landing-hero .home-search-box,
html body .hero-menu .search-box {
  min-height: 62px !important;
  padding: 0 18px !important;
  border: 1px solid rgba(73, 51, 45, .13) !important;
  border-radius: 18px !important;
  background: rgba(255, 252, 247, .96) !important;
  box-shadow: var(--mm4-shadow) !important;
}

/* Full-width home content and friendly category tiles. */
html body .app-stage > .route-shell main.home-panel.home-modern-panel {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 82px clamp(24px, 4vw, 82px) 138px !important;
  background:
    radial-gradient(circle at 96% 5%, rgba(240, 183, 123, .13), transparent 23%),
    var(--mm4-vanilla) !important;
}

html body .home-modern-panel .home-section {
  width: 100% !important;
  margin: 0 0 90px !important;
}

html body .home-modern-panel .home-section-head {
  min-height: 74px !important;
  margin-bottom: 25px !important;
  padding: 0 0 17px !important;
  border: 0 !important;
  border-bottom: 1px solid var(--mm4-line) !important;
}

html body .home-modern-panel .home-section-head h2 {
  color: var(--mm4-espresso) !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(32px, 3.1vw, 52px) !important;
  font-weight: 500 !important;
  letter-spacing: -.045em !important;
}

html body .home-modern-panel .home-section-head > span b {
  color: var(--mm4-berry) !important;
}

html body .home-modern-panel .home-section-head > button {
  min-height: 44px !important;
  padding: 0 17px !important;
  border: 1px solid var(--mm4-line) !important;
  border-radius: 14px !important;
  color: var(--mm4-berry-dark) !important;
  background: var(--mm4-cream) !important;
}

html body .home-section.home-menu-categories .home-category-strip {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  display: grid !important;
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  gap: 12px !important;
  overflow: visible !important;
  border: 0 !important;
  background: transparent !important;
}

html body .home-menu-categories .home-category-strip > .home-category-pill {
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  min-height: 174px !important;
  padding: 20px !important;
  display: grid !important;
  grid-template-columns: 1fr auto !important;
  grid-template-rows: auto 1fr auto !important;
  align-items: start !important;
  gap: 10px !important;
  border: 1px solid rgba(73, 51, 45, .08) !important;
  border-radius: 22px !important;
  color: var(--mm4-espresso) !important;
  background: var(--mm4-blush) !important;
  box-shadow: var(--mm4-shadow-soft) !important;
  text-align: left !important;
}

html body .home-menu-categories .home-category-strip > .home-category-pill:nth-child(2n) { background: #f8e6d2 !important; }
html body .home-menu-categories .home-category-strip > .home-category-pill:nth-child(3n) { background: var(--mm4-mint) !important; }

html body .home-menu-categories .home-category-strip > .home-category-pill:hover {
  color: #fff !important;
  background: var(--mm4-berry) !important;
  transform: translateY(-5px) !important;
}

html body .home-menu-categories .home-category-pill .home-category-index {
  color: var(--mm4-berry) !important;
  font-size: 9px !important;
}

html body .home-menu-categories .home-category-pill .home-category-icon {
  width: 58px !important;
  height: 58px !important;
  grid-column: 2 !important;
  grid-row: 1 / 3 !important;
  display: grid !important;
  place-items: center !important;
  overflow: hidden !important;
  border: 1px solid rgba(73, 51, 45, .18) !important;
  border-radius: 50% !important;
  background: rgba(255, 255, 255, .55) !important;
}

html body .home-menu-categories .home-category-pill .home-category-icon img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

html body .home-menu-categories .home-category-pill .home-category-copy {
  grid-column: 1 / 3 !important;
  align-self: end !important;
  display: grid !important;
  gap: 5px !important;
}

html body .home-menu-categories .home-category-pill .home-category-copy strong {
  color: inherit !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 18px !important;
  font-weight: 500 !important;
}

html body .home-menu-categories .home-category-pill .home-category-copy small {
  color: var(--mm4-muted) !important;
}

html body .home-menu-categories .home-category-pill:hover .home-category-copy small { color: rgba(255, 255, 255, .7) !important; }

html body .home-menu-categories .home-category-pill > i {
  grid-column: 2 !important;
  justify-self: end !important;
  font-style: normal !important;
}

html body .home-modern-panel .featured-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 22px !important;
}

html body .home-modern-panel .featured-card,
html body .home-modern-panel .special-card,
html body .home-modern-panel .home-story-row,
html body .home-modern-panel .home-social-row {
  overflow: hidden !important;
  border: 1px solid var(--mm4-line) !important;
  border-radius: 24px !important;
  background: var(--mm4-cream) !important;
  box-shadow: var(--mm4-shadow-soft) !important;
}

html body .home-modern-panel .featured-card:hover,
html body .home-modern-panel .special-card:hover {
  transform: translateY(-4px) !important;
  box-shadow: var(--mm4-shadow) !important;
}

html body .home-modern-panel .featured-media,
html body .home-modern-panel .featured-media img {
  border-radius: 0 !important;
}

html body .home-modern-panel .featured-ribbon,
html body .home-modern-panel .new-product-chip {
  border-radius: 10px !important;
  background: var(--mm4-berry) !important;
}

html body .home-modern-panel .special-row {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 16px !important;
}

/* Menu: true full width and density that scales from two to three columns. */
html body .app-stage > .route-shell .hero-menu {
  width: 100% !important;
  max-width: none !important;
  min-height: 316px !important;
  margin: 0 !important;
  border-radius: 0 0 32px 32px !important;
}

html body .app-stage > .route-shell .hero-menu::after {
  background: linear-gradient(90deg, rgba(45, 32, 28, .88), rgba(111, 31, 58, .59) 56%, rgba(111, 31, 58, .13)) !important;
}

html body .hero-menu .hero-copy,
html body .hero-menu .hero-copy.hero-copy-menu-layout {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 65px clamp(32px, 5vw, 96px) 78px !important;
}

html body .hero-menu .hero-copy h1 {
  font-size: clamp(54px, 6vw, 94px) !important;
}

html body .hero-menu .floating-search {
  width: min(600px, calc(100% - 64px)) !important;
  right: clamp(32px, 5vw, 96px) !important;
  bottom: 46px !important;
}

html body .app-stage > .route-shell main.page-panel.page-panel-menu,
html body .app-stage > .route-shell main.page-panel.page-panel-menu:not(.is-special-list) {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 54px clamp(24px, 4vw, 78px) 150px !important;
  display: grid !important;
  grid-template-columns: 286px minmax(0, 1fr) !important;
  align-items: start !important;
  gap: clamp(28px, 3vw, 54px) !important;
  background: var(--mm4-vanilla) !important;
}

html body .page-panel-menu .category-reference-shell {
  max-height: calc(100dvh - 112px) !important;
  padding: 0 5px 0 0 !important;
  top: 102px !important;
}

.menu-directory-heading {
  margin-bottom: 14px !important;
  padding: 5px 8px 19px !important;
  border-bottom: 1px solid var(--mm4-line) !important;
}

.menu-directory-heading > b,
.menu-selection-head b {
  color: var(--mm4-berry) !important;
}

.menu-directory-heading h2,
.menu-selection-head h2 {
  color: var(--mm4-espresso) !important;
}

html body .page-panel-menu .category-reference-strip {
  gap: 5px !important;
}

html body .page-panel-menu .category-reference-item {
  min-height: 58px !important;
  padding: 10px 11px !important;
  border: 1px solid transparent !important;
  border-radius: 14px !important;
}

html body .page-panel-menu .category-reference-item:hover {
  padding-left: 14px !important;
  border-color: var(--mm4-line) !important;
  background: var(--mm4-blush) !important;
}

html body .page-panel-menu .category-reference-item.active {
  padding: 11px 12px !important;
  border-color: rgba(111, 31, 58, .08) !important;
  border-radius: 14px !important;
  color: #fff !important;
  background: linear-gradient(135deg, var(--mm4-berry-dark), var(--mm4-berry)) !important;
  box-shadow: 0 11px 25px rgba(111, 31, 58, .17) !important;
}

.category-reference-index { color: var(--mm4-apricot) !important; }

.menu-directory-barista {
  min-height: 140px !important;
  border-radius: 20px !important;
  background:
    radial-gradient(circle at 90% 15%, rgba(240, 183, 123, .36), transparent 34%),
    linear-gradient(135deg, var(--mm4-berry-dark), var(--mm4-berry)) !important;
  box-shadow: 0 16px 35px rgba(111, 31, 58, .18) !important;
}

.menu-selection-head {
  min-height: 116px !important;
  margin-bottom: 20px !important;
  padding: 8px 0 22px !important;
  border-bottom-color: var(--mm4-line) !important;
}

.menu-selection-head > strong {
  width: 76px !important;
  height: 76px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 50% !important;
  color: var(--mm4-berry-dark) !important;
  background: #f7dfc6 !important;
  font-size: 43px !important;
  line-height: 1 !important;
  letter-spacing: -.055em !important;
}

html body main.page-panel.page-panel-menu .menu-results-summary {
  margin: 0 0 14px !important;
}

html body main.page-panel.page-panel-menu .menu-list {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 15px !important;
}

html body main.page-panel.page-panel-menu .menu-list > button.menu-row {
  min-height: 205px !important;
  grid-template-columns: 158px minmax(0, 1fr) !important;
  overflow: hidden !important;
  border: 1px solid var(--mm4-line) !important;
  border-radius: 20px !important;
  background: var(--mm4-cream) !important;
  box-shadow: var(--mm4-shadow-soft) !important;
}

html body main.page-panel.page-panel-menu .menu-list > button.menu-row:hover {
  border-color: rgba(157, 49, 82, .35) !important;
  background: #fff !important;
  box-shadow: var(--mm4-shadow) !important;
  transform: translateY(-3px) !important;
}

html body main.page-panel.page-panel-menu .menu-list > button.menu-row > .menu-thumb {
  width: 158px !important;
  min-width: 158px !important;
  border-radius: 0 !important;
}

html body main.page-panel.page-panel-menu .menu-list > button.menu-row > .menu-row-copy {
  padding: 20px 18px 6px !important;
}

html body main.page-panel.page-panel-menu button.menu-row .menu-title {
  color: var(--mm4-espresso) !important;
  font-size: 19px !important;
}

html body main.page-panel.page-panel-menu button.menu-row .menu-desc {
  color: var(--mm4-muted) !important;
  font-size: 9.5px !important;
}

.menu-row-meta small {
  border-color: #dfd3c8 !important;
  border-radius: 8px !important;
  background: #fbf4ea !important;
}

html body main.page-panel.page-panel-menu .menu-list > button.menu-row > .menu-row-side {
  padding: 7px 18px 16px !important;
}

html body main.page-panel.page-panel-menu button.menu-row .menu-row-side > .price {
  color: var(--mm4-berry-dark) !important;
  font-size: 20px !important;
}

/* Product detail and about pages use the same full-width visual language. */
html body .app-stage > .route-shell .detail-shell {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 46px clamp(24px, 5vw, 96px) 142px !important;
  display: grid !important;
  grid-template-columns: minmax(420px, .88fr) minmax(520px, 1.12fr) !important;
  gap: clamp(34px, 5vw, 90px) !important;
  background: var(--mm4-vanilla) !important;
}

html body .detail-media {
  height: min(740px, calc(100dvh - 146px)) !important;
  top: 108px !important;
  overflow: hidden !important;
  border-radius: 28px !important;
  box-shadow: var(--mm4-shadow) !important;
}

html body .detail-sheet {
  padding: clamp(28px, 3.8vw, 60px) !important;
  border: 1px solid var(--mm4-line) !important;
  border-radius: 28px !important;
  background: var(--mm4-cream) !important;
  box-shadow: var(--mm4-shadow-soft) !important;
}

html body .detail-heading h1 {
  color: var(--mm4-espresso) !important;
  font-size: clamp(40px, 4vw, 66px) !important;
}

html body .detail-heading .price { color: var(--mm4-berry-dark) !important; }

html body .detail-primary-actions button,
html body .detail-badges span,
html body .detail-accordion,
html body .related-card,
html body .direction-card,
html body .social-card,
html body .gallery-tile {
  border-radius: 16px !important;
}

html body .detail-barista-btn {
  color: #fff !important;
  background: linear-gradient(135deg, var(--mm4-berry-dark), var(--mm4-berry)) !important;
}

html body .app-stage > .route-shell .page-panel:not(.page-panel-menu):not(.home-panel) {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 74px clamp(32px, 7vw, 140px) 140px !important;
  background: var(--mm4-vanilla) !important;
}

html body .page-panel:not(.page-panel-menu) .section-title {
  color: var(--mm4-espresso) !important;
  border-bottom-color: var(--mm4-line) !important;
}

html body .gallery-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 16px !important;
}

/* Barista: warmer, clearer and still compact. */
html body .assistant-widget {
  right: 24px !important;
  bottom: 24px !important;
}

html body .assistant-fab {
  min-width: 184px !important;
  min-height: 60px !important;
  padding: 0 9px 0 18px !important;
  border: 0 !important;
  border-radius: 19px !important;
  background: linear-gradient(135deg, var(--mm4-berry-dark), var(--mm4-berry)) !important;
  box-shadow: 0 18px 42px rgba(111, 31, 58, .23) !important;
}

html body .assistant-panel {
  width: min(410px, calc(100vw - 28px)) !important;
  max-height: min(760px, calc(100dvh - 34px)) !important;
  overflow: hidden !important;
  border: 1px solid var(--mm4-line) !important;
  border-radius: 26px !important;
  background: var(--mm4-cream) !important;
  box-shadow: 0 32px 90px rgba(54, 29, 34, .28) !important;
}

html body .assistant-panel-head {
  background: linear-gradient(135deg, var(--mm4-berry-dark), var(--mm4-berry)) !important;
}

html body .assistant-discovery-launch {
  border-radius: 18px !important;
  background: linear-gradient(135deg, #b63c61, var(--mm4-berry)) !important;
}

html body .assistant-suggestions {
  scrollbar-color: var(--mm4-apricot) transparent !important;
}

html body .assistant-panel:has(.assistant-message.is-user) .assistant-suggestions {
  display: none !important;
}

html body .assistant-suggestions > button,
html body .assistant-quick-actions > button,
html body .assistant-correction-actions button,
html body .assistant-completion-actions button {
  min-height: 40px !important;
  border-radius: 12px !important;
}

html body .assistant-product-card {
  border-radius: 18px !important;
  box-shadow: var(--mm4-shadow-soft) !important;
}

html body .assistant-form {
  background: var(--mm4-cream) !important;
}

html body .assistant-form input,
html body .assistant-form button {
  min-height: 48px !important;
  border-radius: 14px !important;
}

/* Admin: a lighter work surface with a cocoa navigation rail. */
html body .admin-stage {
  width: 100vw !important;
  max-width: none !important;
  min-height: 100dvh !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #f7efe5 !important;
}

html body .admin-stage .admin-shell {
  width: 100% !important;
  max-width: none !important;
  min-height: 100dvh !important;
  margin: 0 !important;
  display: grid !important;
  grid-template-columns: 292px minmax(0, 1fr) !important;
  gap: 0 !important;
  background: #f7efe5 !important;
}

@media (min-width: 821px) {
  html body .admin-stage:has(> .admin-shell) {
    width: 100% !important;
    max-width: none !important;
    min-height: 100dvh !important;
    margin: 0 !important;
    padding: 0 !important;
    position: relative !important;
    inset: auto !important;
    overflow: visible !important;
    background: #f7efe5 !important;
  }

  html body .admin-stage:has(> .admin-shell) > .admin-shell {
    width: 100% !important;
    max-width: none !important;
    min-height: 100dvh !important;
    margin: 0 !important;
    grid-template-columns: 292px minmax(0, 1fr) !important;
    gap: 0 !important;
  }
}

html body .admin-stage .admin-sidebar {
  width: 292px !important;
  min-width: 292px !important;
  height: 100dvh !important;
  max-height: 100dvh !important;
  padding: 24px 18px 18px !important;
  position: sticky !important;
  top: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
  border-right: 1px solid rgba(255, 255, 255, .08) !important;
  border-radius: 0 !important;
  background:
    radial-gradient(circle at 15% 4%, rgba(157, 49, 82, .22), transparent 30%),
    var(--mm4-espresso) !important;
  box-shadow: none !important;
}

html body .admin-stage .admin-sidebar-brand {
  min-height: 112px !important;
  margin: 0 0 20px !important;
  padding: 12px !important;
  border: 1px solid rgba(255, 255, 255, .11) !important;
  border-radius: 20px !important;
  background: rgba(255, 255, 255, .045) !important;
}

html body .admin-stage .admin-nav {
  height: calc(100dvh - 220px) !important;
  padding: 0 4px 14px !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  scrollbar-width: thin !important;
  scrollbar-color: rgba(240, 183, 123, .4) transparent !important;
}

html body .admin-stage .admin-nav-group-label {
  color: rgba(255, 255, 255, .42) !important;
}

html body .admin-stage .admin-nav-btn {
  min-height: 48px !important;
  margin: 2px 0 !important;
  padding: 6px 10px !important;
  border: 0 !important;
  border-radius: 14px !important;
  color: rgba(255, 255, 255, .72) !important;
  background: transparent !important;
}

html body .admin-stage .admin-nav-btn:hover {
  color: #fff !important;
  background: rgba(255, 255, 255, .075) !important;
}

html body .admin-stage .admin-nav-btn.active {
  color: var(--mm4-espresso) !important;
  background: #fff5e8 !important;
  box-shadow: 0 10px 24px rgba(0, 0, 0, .15) !important;
}

html body .admin-stage .admin-nav-btn.active .admin-nav-ico {
  color: var(--mm4-berry) !important;
  background: var(--mm4-blush) !important;
}

html body .admin-stage .admin-sidebar-foot {
  width: calc(100% - 36px) !important;
  min-height: 48px !important;
  left: 18px !important;
  bottom: 16px !important;
  border: 1px solid rgba(255, 255, 255, .14) !important;
  border-radius: 14px !important;
  color: #fff !important;
  background: rgba(157, 49, 82, .27) !important;
}

html body .admin-stage .admin-main {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  padding: 24px clamp(24px, 3vw, 58px) 80px !important;
  background:
    radial-gradient(circle at 100% 0%, rgba(240, 183, 123, .13), transparent 23%),
    #f7efe5 !important;
}

html body .admin-stage .admin-topbar {
  width: 100% !important;
  min-height: 126px !important;
  margin: 0 0 22px !important;
  padding: 22px 26px !important;
  border: 1px solid var(--mm4-line) !important;
  border-radius: 22px !important;
  background: rgba(255, 252, 247, .94) !important;
  box-shadow: var(--mm4-shadow-soft) !important;
}

html body .admin-stage .admin-title h1 {
  color: var(--mm4-espresso) !important;
}

html body .admin-stage .admin-top-actions button {
  min-height: 44px !important;
  border-radius: 13px !important;
}

html body .admin-stage .admin-overview-hero {
  min-height: 214px !important;
  padding: 34px 38px !important;
  border: 0 !important;
  border-radius: 26px !important;
  background:
    radial-gradient(circle at 92% 10%, rgba(240, 183, 123, .24), transparent 30%),
    linear-gradient(135deg, var(--mm4-espresso), var(--mm4-berry-dark)) !important;
  box-shadow: 0 22px 48px rgba(64, 36, 34, .15) !important;
}

html body .admin-stage .admin-dashboard-kpis {
  gap: 12px !important;
}

html body .admin-stage .admin-dashboard-kpis > button,
html body .admin-stage .admin-dashboard-card,
html body .admin-stage .admin-card,
html body .admin-stage .admin-table-card,
html body .admin-stage .admin-toolbar {
  border: 1px solid var(--mm4-line) !important;
  border-radius: 20px !important;
  background: var(--mm4-cream) !important;
  box-shadow: var(--mm4-shadow-soft) !important;
}

html body .admin-stage .admin-dashboard-kpis > button:nth-child(1) { background: #f8e8e3 !important; }
html body .admin-stage .admin-dashboard-kpis > button:nth-child(2) { background: #f8e6d2 !important; }
html body .admin-stage .admin-dashboard-kpis > button:nth-child(3) { background: #e8efdf !important; }
html body .admin-stage .admin-dashboard-kpis > button:nth-child(4) { background: #efe5f2 !important; }
html body .admin-stage .admin-dashboard-kpis > button:nth-child(5) { background: #fffaf2 !important; }

html body .admin-stage input,
html body .admin-stage select,
html body .admin-stage textarea {
  border-color: var(--mm4-line) !important;
  border-radius: 13px !important;
  background: #fffdf9 !important;
}

html body .admin-stage .primary-btn {
  border-radius: 13px !important;
  background: var(--mm4-berry) !important;
}

html body .admin-login {
  border: 1px solid var(--mm4-line) !important;
  border-radius: 28px !important;
  background: var(--mm4-cream) !important;
  box-shadow: var(--mm4-shadow) !important;
}

@media (min-width: 1700px) {
  html body main.page-panel.page-panel-menu .menu-list {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  html body .admin-stage .admin-dashboard-grid {
    grid-template-columns: minmax(0, 1.25fr) minmax(380px, .75fr) !important;
  }
}

@media (max-width: 1380px) {
  .desktop-nav-inner {
    grid-template-columns: minmax(190px, 1fr) auto minmax(220px, 1fr) !important;
    padding-inline: 24px !important;
    gap: 16px !important;
  }

  html body .desktop-top-nav .desktop-nav-links > button,
  html body .desktop-top-nav .desktop-nav-links > a {
    padding-inline: 12px !important;
  }

  html body .desktop-top-nav .desktop-barista-cta {
    min-width: 198px !important;
  }

  html body .home-section.home-menu-categories .home-category-strip {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 1100px) and (min-width: 821px) {
  .desktop-brand-meta small,
  html body .desktop-top-nav .desktop-barista-cta small {
    display: none !important;
  }

  html body .desktop-top-nav .desktop-barista-cta {
    min-width: 154px !important;
  }

  .home-hero-layout {
    grid-template-columns: minmax(0, 1fr) 300px !important;
    gap: 34px !important;
  }

  .home-hero-pick {
    min-height: 390px !important;
  }

  html body .app-stage > .route-shell main.page-panel.page-panel-menu,
  html body .app-stage > .route-shell main.page-panel.page-panel-menu:not(.is-special-list) {
    grid-template-columns: 230px minmax(0, 1fr) !important;
    gap: 26px !important;
  }

  html body main.page-panel.page-panel-menu .menu-list {
    grid-template-columns: 1fr !important;
  }

  html body .admin-stage .admin-shell {
    grid-template-columns: 244px minmax(0, 1fr) !important;
  }

  html body .admin-stage .admin-sidebar {
    width: 244px !important;
    min-width: 244px !important;
  }
}

@media (max-width: 820px) {
  html body .app-stage > .route-shell .desktop-top-nav {
    display: none !important;
  }

  .mobile-top-nav {
    width: 100% !important;
    height: 66px !important;
    min-height: 66px !important;
    padding: 7px 12px !important;
    position: sticky !important;
    top: 0 !important;
    z-index: 160 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
    border-bottom: 1px solid rgba(73, 51, 45, .1) !important;
    background: rgba(255, 248, 237, .96) !important;
    backdrop-filter: blur(16px) !important;
  }

  .mobile-brand {
    min-width: 0 !important;
    min-height: 52px !important;
    padding: 3px 7px !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    border: 0 !important;
    border-radius: 13px !important;
    color: var(--mm4-espresso) !important;
    background: transparent !important;
    text-align: left !important;
  }

  .mobile-brand img {
    width: 37px !important;
    height: 37px !important;
    object-fit: contain !important;
  }

  .mobile-brand > span,
  .mobile-nav-barista > span:last-child {
    display: grid !important;
    gap: 1px !important;
  }

  .mobile-brand strong {
    color: var(--mm4-berry-dark) !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 11px !important;
    letter-spacing: .08em !important;
  }

  .mobile-brand small,
  .mobile-nav-barista small {
    color: var(--mm4-muted) !important;
    font-size: 7px !important;
  }

  .mobile-nav-barista {
    min-width: 142px !important;
    min-height: 50px !important;
    padding: 5px 9px !important;
    display: grid !important;
    grid-template-columns: 27px minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 7px !important;
    border: 0 !important;
    border-radius: 14px !important;
    color: #fff !important;
    background: linear-gradient(135deg, var(--mm4-berry-dark), var(--mm4-berry)) !important;
    box-shadow: 0 9px 20px rgba(111, 31, 58, .16) !important;
    text-align: left !important;
  }

  .mobile-nav-barista > span:first-child {
    width: 27px !important;
    height: 27px !important;
    display: grid !important;
    place-items: center !important;
    border-radius: 9px !important;
    color: var(--mm4-apricot) !important;
    background: rgba(255, 255, 255, .12) !important;
  }

  .mobile-nav-barista small { color: rgba(255, 255, 255, .65) !important; }
  .mobile-nav-barista strong { color: #fff !important; font-size: 10px !important; }

  html body .app-stage > .route-shell .home-landing-hero {
    min-height: 780px !important;
    border-radius: 0 0 26px 26px !important;
  }

  html body .app-stage > .route-shell .home-landing-hero::before {
    background: linear-gradient(180deg, rgba(45, 32, 28, .32), rgba(70, 30, 42, .86) 60%, rgba(45, 32, 28, .94)) !important;
  }

  .home-hero-layout {
    min-height: 780px !important;
    padding: 48px 18px 128px !important;
    display: block !important;
  }

  html body .home-hero-layout .home-hero-copy {
    width: 100% !important;
    padding: 0 !important;
  }

  html body .home-hero-layout .home-hero-copy .brand-logo-img {
    width: 108px !important;
  }

  html body .home-hero-layout .home-hero-copy > p {
    max-width: 350px !important;
    font-size: clamp(37px, 11.5vw, 52px) !important;
    line-height: .98 !important;
  }

  html body .home-hero-actions {
    grid-template-columns: 1fr !important;
    gap: 8px !important;
  }

  html body .home-hero-actions > button {
    min-height: 52px !important;
  }

  html body .home-hero-facts {
    display: none !important;
  }

  .home-hero-pick {
    width: 100% !important;
    min-height: 112px !important;
    margin-top: 18px !important;
    padding: 8px !important;
    grid-template-columns: 82px minmax(0, 1fr) !important;
    grid-template-rows: auto 1fr !important;
    gap: 5px 10px !important;
    border-radius: 18px !important;
    transform: none !important;
  }

  .home-hero-pick-label {
    grid-column: 2 !important;
    min-height: 26px !important;
    padding: 0 !important;
  }

  .home-hero-pick-label i { display: none !important; }

  .home-hero-pick-media {
    min-height: 94px !important;
    grid-column: 1 !important;
    grid-row: 1 / 3 !important;
    border-radius: 13px !important;
  }

  .home-hero-pick-copy {
    min-height: 58px !important;
    padding: 0 !important;
  }

  .home-hero-pick-copy strong { font-size: 17px !important; }

  html body .home-landing-hero .hero-location-pill { display: none !important; }

  html body .home-landing-hero .home-floating-search {
    width: calc(100% - 36px) !important;
    right: 18px !important;
    bottom: 24px !important;
  }

  html body .app-stage > .route-shell main.home-panel.home-modern-panel {
    padding: 52px 14px 112px !important;
  }

  html body .home-modern-panel .home-section {
    margin-bottom: 64px !important;
  }

  html body .home-modern-panel .home-section-head {
    min-height: 64px !important;
    align-items: end !important;
  }

  html body .home-modern-panel .home-section-head h2 {
    font-size: 30px !important;
  }

  html body .home-modern-panel .home-section-head > button {
    padding-inline: 10px !important;
    font-size: 8px !important;
  }

  html body .home-section.home-menu-categories .home-category-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 9px !important;
  }

  html body .home-menu-categories .home-category-strip > .home-category-pill {
    min-height: 148px !important;
    padding: 14px !important;
    border-radius: 18px !important;
  }

  html body .home-menu-categories .home-category-pill .home-category-icon {
    width: 48px !important;
    height: 48px !important;
  }

  html body .home-menu-categories .home-category-pill .home-category-copy strong {
    font-size: 16px !important;
  }

  html body .home-modern-panel .featured-grid,
  html body .home-modern-panel .special-row {
    grid-template-columns: 1fr !important;
  }

  html body .home-modern-panel .featured-card,
  html body .home-modern-panel .special-card,
  html body .home-modern-panel .home-story-row,
  html body .home-modern-panel .home-social-row {
    border-radius: 18px !important;
  }

  html body .app-stage > .route-shell .hero-menu {
    min-height: 254px !important;
    border-radius: 0 0 25px 25px !important;
  }

  html body .hero-menu .hero-copy,
  html body .hero-menu .hero-copy.hero-copy-menu-layout {
    padding: 38px 17px 83px !important;
  }

  html body .hero-menu .hero-copy h1 { font-size: 55px !important; }

  html body .hero-menu .floating-search {
    width: calc(100% - 34px) !important;
    right: 17px !important;
    bottom: 20px !important;
  }

  html body .app-stage > .route-shell main.page-panel.page-panel-menu,
  html body .app-stage > .route-shell main.page-panel.page-panel-menu:not(.is-special-list) {
    width: 100% !important;
    padding: 0 14px 112px !important;
    display: block !important;
  }

  .menu-directory { display: none !important; }

  .menu-mobile-tools {
    width: calc(100% + 28px) !important;
    margin: 0 -14px 25px !important;
    padding: 12px 14px !important;
    top: 66px !important;
    grid-template-columns: minmax(0, 1fr) 124px !important;
    border-bottom: 1px solid var(--mm4-line) !important;
    background: rgba(255, 248, 237, .96) !important;
  }

  .menu-mobile-category,
  .menu-mobile-barista {
    min-height: 60px !important;
    border-radius: 14px !important;
  }

  .menu-mobile-category { background: var(--mm4-cream) !important; }
  .menu-mobile-barista { background: linear-gradient(135deg, var(--mm4-berry-dark), var(--mm4-berry)) !important; }

  .menu-selection-head {
    min-height: 96px !important;
    margin-top: 66px !important;
    margin-bottom: 14px !important;
  }

  .menu-selection-head > strong {
    width: 58px !important;
    height: 58px !important;
    font-size: 32px !important;
  }

  html body main.page-panel.page-panel-menu .menu-list {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  html body main.page-panel.page-panel-menu .menu-list > button.menu-row {
    min-height: 142px !important;
    grid-template-columns: 106px minmax(0, 1fr) !important;
    border-radius: 16px !important;
  }

  html body main.page-panel.page-panel-menu .menu-list > button.menu-row > .menu-thumb {
    width: 106px !important;
    min-width: 106px !important;
  }

  html body main.page-panel.page-panel-menu .menu-list > button.menu-row > .menu-row-copy {
    padding: 14px 13px 3px !important;
  }

  html body main.page-panel.page-panel-menu button.menu-row .menu-title { font-size: 15px !important; }

  html body main.page-panel.page-panel-menu .menu-list > button.menu-row > .menu-row-side {
    padding: 3px 13px 11px !important;
  }

  html body .app-stage > .route-shell .detail-shell {
    padding: 0 0 106px !important;
    display: block !important;
  }

  html body .detail-media {
    width: 100% !important;
    height: 50svh !important;
    position: relative !important;
    top: auto !important;
    border-radius: 0 0 24px 24px !important;
  }

  html body .detail-sheet {
    margin: 12px !important;
    padding: 24px 17px !important;
    border-radius: 20px !important;
  }

  html body .app-stage > .route-shell .page-panel:not(.page-panel-menu):not(.home-panel) {
    padding: 48px 14px 112px !important;
  }

  html body .gallery-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 9px !important;
  }

  html body .phone-shell .bottom-nav {
    width: 100% !important;
    height: 70px !important;
    min-height: 70px !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    padding: 6px 8px !important;
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    border: 0 !important;
    border-top: 1px solid var(--mm4-line) !important;
    border-radius: 0 !important;
    background: rgba(255, 252, 247, .97) !important;
    box-shadow: 0 -10px 32px rgba(66, 39, 32, .09) !important;
    transform: none !important;
  }

  html body .phone-shell .bottom-nav .nav-btn {
    min-width: 0 !important;
    min-height: 56px !important;
    padding: 5px 2px !important;
    border-radius: 13px !important;
    color: #77635b !important;
    font-size: 8px !important;
  }

  html body .phone-shell .bottom-nav .nav-btn.active {
    color: var(--mm4-berry-dark) !important;
    background: var(--mm4-blush) !important;
  }

  html body .assistant-widget { right: 12px !important; bottom: 82px !important; }

  html body .assistant-fab {
    min-width: 154px !important;
    min-height: 52px !important;
    border-radius: 16px !important;
  }

  html body .assistant-widget .assistant-fab {
    display: none !important;
  }

  html body .assistant-panel {
    width: calc(100vw - 20px) !important;
    max-height: calc(100dvh - 86px) !important;
    border-radius: 21px !important;
  }

  html body .assistant-panel .assistant-suggestions {
    padding: 8px 11px !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 6px !important;
    overflow: visible !important;
  }

  html body .assistant-panel .assistant-suggestions > button:nth-child(n + 5) { display: none !important; }

  html body .assistant-panel:has(.assistant-message.is-user) .assistant-suggestions {
    display: none !important;
  }

  html body .assistant-panel .assistant-messages {
    max-height: min(380px, calc(100dvh - 320px)) !important;
  }

  html body .admin-stage:has(> .admin-shell) {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
  }

  html body .admin-stage:has(> .admin-shell) > .admin-shell {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    display: block !important;
    box-sizing: border-box !important;
  }

  html body .admin-stage:has(> .admin-shell) > .admin-shell > .admin-sidebar {
    width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    max-height: none !important;
    padding: 12px !important;
    position: relative !important;
    border-radius: 0 !important;
  }

  html body .admin-stage .admin-sidebar-brand { display: none !important; }

  html body .admin-stage .admin-nav {
    width: 100% !important;
    height: auto !important;
    padding: 0 !important;
    display: flex !important;
    gap: 6px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
  }

  html body .admin-stage .admin-nav-group {
    display: contents !important;
  }

  html body .admin-stage .admin-nav-group-label { display: none !important; }

  html body .admin-stage .admin-nav-btn {
    min-width: max-content !important;
    padding-inline: 13px !important;
  }

  html body .admin-stage .admin-sidebar-foot { display: none !important; }

  html body .admin-stage:has(> .admin-shell) > .admin-shell > .admin-main {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding: 14px 12px 70px !important;
    box-sizing: border-box !important;
  }

  html body .admin-stage .admin-topbar {
    min-height: 0 !important;
    padding: 18px !important;
    display: block !important;
    border-radius: 18px !important;
  }

  html body .admin-stage .admin-top-actions {
    margin-top: 14px !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  html body .admin-stage .admin-overview-hero {
    min-height: 250px !important;
    padding: 26px 20px !important;
    border-radius: 20px !important;
  }

  html body .admin-stage .admin-dashboard-kpis {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 430px) {
  .mobile-nav-barista {
    min-width: 132px !important;
  }

  .mobile-brand small { display: none !important; }

  html body .home-hero-layout .home-hero-copy > p {
    font-size: 38px !important;
  }

  .home-hero-pick-copy strong {
    font-size: 15px !important;
  }

  .menu-mobile-tools {
    grid-template-columns: minmax(0, 1fr) 110px !important;
  }

  html body main.page-panel.page-panel-menu .menu-list > button.menu-row {
    grid-template-columns: 98px minmax(0, 1fr) !important;
  }

  html body main.page-panel.page-panel-menu .menu-list > button.menu-row > .menu-thumb {
    width: 98px !important;
    min-width: 98px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
  }
}


/* assets/css/mm-coffee-categories-v410.css */
/* M&M COFFEE v4.1 — category cards with fixed visual slots across desktop and mobile. */

html body .home-section.home-menu-categories {
  --mm-category-card-height: 218px;
}

html body .home-section.home-menu-categories .home-section-head {
  margin-bottom: 20px !important;
}

html body .home-menu-categories .home-category-strip > .home-category-pill {
  min-height: var(--mm-category-card-height) !important;
  padding: 18px !important;
  position: relative !important;
  isolation: isolate !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 74px !important;
  grid-template-rows: 74px minmax(0, 1fr) auto !important;
  align-items: start !important;
  gap: 12px 14px !important;
  overflow: hidden !important;
  border: 1px solid rgba(73, 51, 45, .10) !important;
  border-radius: 24px !important;
  box-shadow: 0 16px 36px rgba(67, 43, 35, .07) !important;
}

html body .home-menu-categories .home-category-strip > .home-category-pill::before {
  content: "" !important;
  position: absolute !important;
  z-index: -1 !important;
  inset: 0 0 auto !important;
  height: 5px !important;
  display: block !important;
  background: linear-gradient(90deg, var(--mm4-berry), #ce7a7e) !important;
  opacity: .92 !important;
  pointer-events: none !important;
}

html body .home-menu-categories .home-category-pill .home-category-index {
  width: 46px !important;
  height: 46px !important;
  min-width: 46px !important;
  min-height: 46px !important;
  max-width: 46px !important;
  max-height: 46px !important;
  grid-column: 1 !important;
  grid-row: 1 !important;
  display: inline-grid !important;
  place-items: center !important;
  border: 1px solid rgba(111, 31, 58, .14) !important;
  border-radius: 15px !important;
  color: var(--mm4-berry-dark) !important;
  background: rgba(255, 255, 255, .64) !important;
  box-shadow: 0 7px 16px rgba(73, 51, 45, .06) !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  letter-spacing: -.02em !important;
}

html body .home-menu-categories .home-category-pill .home-category-icon,
html body .home-menu-categories .home-category-strip .home-category-pill > span.home-category-icon:first-child {
  width: 74px !important;
  height: 74px !important;
  min-width: 74px !important;
  min-height: 74px !important;
  max-width: 74px !important;
  max-height: 74px !important;
  grid-column: 2 !important;
  grid-row: 1 !important;
  align-self: start !important;
  justify-self: end !important;
  border-width: 2px !important;
  box-shadow: 0 10px 22px rgba(73, 51, 45, .11) !important;
  transform: none !important;
}

/* Explicitly neutralise the old mobile rail rule that constrained every text span to 82px. */
html body .home-menu-categories .home-category-pill > span.home-category-copy:not(.home-category-icon) {
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  min-height: 0 !important;
  grid-column: 1 / 3 !important;
  grid-row: 2 / 4 !important;
  align-self: end !important;
  justify-self: stretch !important;
  display: grid !important;
  grid-template-rows: 48px 28px !important;
  align-items: end !important;
  gap: 9px !important;
  padding-right: 46px !important;
  text-align: left !important;
  font-size: inherit !important;
  line-height: normal !important;
}

html body .home-menu-categories .home-category-strip > .home-category-pill .home-category-copy strong {
  width: auto !important;
  min-height: 48px !important;
  display: flex !important;
  align-items: flex-end !important;
  color: inherit !important;
  font-size: clamp(17px, 1.08vw, 20px) !important;
  line-height: 1.02 !important;
  letter-spacing: -.035em !important;
  text-align: left !important;
  text-wrap: balance !important;
}

html body .home-menu-categories .home-category-pill .home-category-copy small {
  width: max-content !important;
  min-width: 0 !important;
  min-height: 28px !important;
  padding: 0 10px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 1px solid rgba(73, 51, 45, .08) !important;
  border-radius: 999px !important;
  color: rgba(45, 32, 28, .68) !important;
  background: rgba(255, 255, 255, .54) !important;
  font-size: 10px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
}

html body .home-menu-categories .home-category-pill > i {
  width: 34px !important;
  height: 34px !important;
  position: absolute !important;
  right: 17px !important;
  bottom: 17px !important;
  display: grid !important;
  place-items: center !important;
  border: 1px solid rgba(73, 51, 45, .10) !important;
  border-radius: 50% !important;
  color: var(--mm4-berry-dark) !important;
  background: rgba(255, 255, 255, .58) !important;
  font-size: 13px !important;
  line-height: 1 !important;
  transition: transform .22s ease, background-color .22s ease !important;
}

html body .home-menu-categories .home-category-pill.has-new-product::after {
  top: 18px !important;
  right: 104px !important;
  min-height: 24px !important;
  padding: 0 9px !important;
  border: 1px solid rgba(255, 255, 255, .30) !important;
  font-size: 9px !important;
  letter-spacing: .04em !important;
  box-shadow: 0 8px 18px rgba(74, 12, 33, .16) !important;
}

html body .home-menu-categories .home-category-pill:hover .home-category-index,
html body .home-menu-categories .home-category-pill:hover .home-category-copy small,
html body .home-menu-categories .home-category-pill:hover > i {
  border-color: rgba(255, 255, 255, .18) !important;
  color: #fff !important;
  background: rgba(255, 255, 255, .12) !important;
}

html body .home-menu-categories .home-category-pill:hover > i {
  transform: translate(2px, -2px) !important;
}

@media (max-width: 1380px) and (min-width: 821px) {
  html body .home-section.home-menu-categories {
    --mm-category-card-height: 196px;
  }

  html body .home-section.home-menu-categories .home-category-strip {
    gap: 14px !important;
  }
}

@media (max-width: 820px) {
  html body .home-section.home-menu-categories {
    --mm-category-card-height: 190px;
  }

  html body .home-section.home-menu-categories .home-section-head {
    min-height: 70px !important;
    margin-bottom: 17px !important;
    align-items: end !important;
  }

  html body .home-section.home-menu-categories .home-section-head > span b {
    margin-bottom: 7px !important;
    font-size: 8px !important;
    letter-spacing: .19em !important;
  }

  html body .home-section.home-menu-categories .home-section-head h2 {
    font-size: clamp(29px, 8.2vw, 35px) !important;
    line-height: .98 !important;
  }

  html body .home-section.home-menu-categories .home-section-head > button {
    min-width: 96px !important;
    min-height: 42px !important;
    padding: 0 11px !important;
    border-radius: 13px !important;
    font-size: 10px !important;
    line-height: 1.05 !important;
  }

  html body .home-section.home-menu-categories .home-category-strip {
    gap: 10px !important;
  }

  html body .home-menu-categories .home-category-strip > .home-category-pill {
    min-height: var(--mm-category-card-height) !important;
    padding: 13px !important;
    grid-template-columns: minmax(0, 1fr) 62px !important;
    grid-template-rows: 62px minmax(0, 1fr) auto !important;
    gap: 10px 8px !important;
    border-radius: 20px !important;
    box-shadow: 0 12px 25px rgba(67, 43, 35, .07) !important;
    -webkit-tap-highlight-color: transparent !important;
  }

  html body .home-menu-categories .home-category-strip > .home-category-pill::before {
    height: 4px !important;
  }

  html body .home-menu-categories .home-category-pill .home-category-index {
    width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
    min-height: 38px !important;
    max-width: 38px !important;
    max-height: 38px !important;
    border-radius: 13px !important;
    font-size: 13px !important;
  }

  html body .home-menu-categories .home-category-pill .home-category-icon,
  html body .home-menu-categories .home-category-strip .home-category-pill > span.home-category-icon:first-child {
    width: 62px !important;
    height: 62px !important;
    min-width: 62px !important;
    min-height: 62px !important;
    max-width: 62px !important;
    max-height: 62px !important;
  }

  html body .home-menu-categories .home-category-pill > span.home-category-copy:not(.home-category-icon) {
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    min-height: 0 !important;
    grid-template-rows: 42px 27px !important;
    gap: 8px !important;
    padding-right: 36px !important;
    text-align: left !important;
  }

  html body .home-menu-categories .home-category-strip > .home-category-pill .home-category-copy strong {
    min-height: 42px !important;
    font-size: clamp(16px, 4.35vw, 17px) !important;
    line-height: 1.03 !important;
    text-align: left !important;
  }

  html body .home-menu-categories .home-category-pill .home-category-copy small {
    min-height: 27px !important;
    padding: 0 8px !important;
    font-size: 9px !important;
  }

  html body .home-menu-categories .home-category-pill > i {
    width: 30px !important;
    height: 30px !important;
    right: 12px !important;
    bottom: 12px !important;
    font-size: 11px !important;
  }

  html body .home-menu-categories .home-category-pill.has-new-product::after {
    top: 80px !important;
    right: 12px !important;
    min-height: 21px !important;
    padding: 0 7px !important;
    font-size: 8px !important;
  }

  html body .home-menu-categories .home-category-strip > .home-category-pill:hover {
    color: var(--mm4-espresso) !important;
    background: var(--mm4-blush) !important;
    transform: none !important;
  }

  html body .home-menu-categories .home-category-strip > .home-category-pill:nth-child(2n):hover {
    background: #f8e6d2 !important;
  }

  html body .home-menu-categories .home-category-strip > .home-category-pill:nth-child(3n):hover {
    background: var(--mm4-mint) !important;
  }

  html body .home-menu-categories .home-category-pill:hover .home-category-index,
  html body .home-menu-categories .home-category-pill:hover .home-category-copy small,
  html body .home-menu-categories .home-category-pill:hover > i {
    border-color: rgba(73, 51, 45, .10) !important;
    color: var(--mm4-berry-dark) !important;
    background: rgba(255, 255, 255, .58) !important;
  }

  html body .home-menu-categories .home-category-strip > .home-category-pill:active {
    transform: scale(.985) !important;
  }
}

@media (max-width: 370px) {
  html body .home-section.home-menu-categories {
    --mm-category-card-height: 184px;
  }

  html body .home-menu-categories .home-category-strip > .home-category-pill {
    padding: 12px !important;
  }

  html body .home-menu-categories .home-category-strip > .home-category-pill .home-category-copy strong {
    font-size: 15px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  html body .home-menu-categories .home-category-strip > .home-category-pill,
  html body .home-menu-categories .home-category-pill > i {
    transition: none !important;
  }
}


/* assets/css/mm-coffee-category-carousel-v411.css */
/* M&M COFFEE v4.1.1 — lightweight, circular and touch-scrollable mobile categories. */

.home-category-swipe-hint {
  display: none;
}

@media (max-width: 820px) {
  html body .home-section.home-menu-categories {
    --mm-category-orb: 82px;
    --mm-category-item: 98px;
    overflow: visible !important;
  }

  html body .home-section.home-menu-categories .home-section-head {
    margin-bottom: 12px !important;
  }

  html body .home-section.home-menu-categories .home-category-swipe-hint {
    min-height: 28px !important;
    margin: 0 0 8px !important;
    padding: 0 3px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
    color: rgba(45, 32, 28, .56) !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 9px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
  }

  html body .home-section.home-menu-categories .home-category-swipe-hint i {
    min-width: 44px !important;
    height: 24px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: 1px solid rgba(111, 31, 58, .12) !important;
    border-radius: 999px !important;
    color: var(--mm4-berry) !important;
    background: rgba(255, 255, 255, .56) !important;
    font-size: 14px !important;
    font-style: normal !important;
    letter-spacing: 0 !important;
  }

  html body .home-section.home-menu-categories .home-category-strip {
    width: calc(100% + 28px) !important;
    margin: 0 -14px !important;
    padding: 4px 18px 15px !important;
    display: flex !important;
    grid-template-columns: none !important;
    flex-wrap: nowrap !important;
    align-items: flex-start !important;
    gap: 14px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    overscroll-behavior-x: contain !important;
    scroll-behavior: smooth !important;
    scroll-padding-inline: 18px !important;
    scroll-snap-type: x proximity !important;
    touch-action: pan-x !important;
    cursor: grab !important;
    scrollbar-width: none !important;
    -ms-overflow-style: none !important;
    -webkit-overflow-scrolling: touch !important;
  }

  html body .home-section.home-menu-categories .home-category-strip:active {
    cursor: grabbing !important;
  }

  html body .home-section.home-menu-categories .home-category-strip::-webkit-scrollbar {
    width: 0 !important;
    height: 0 !important;
    display: none !important;
  }

  html body .home-menu-categories .home-category-strip > .home-category-pill {
    width: var(--mm-category-item) !important;
    min-width: var(--mm-category-item) !important;
    max-width: var(--mm-category-item) !important;
    min-height: 160px !important;
    flex: 0 0 var(--mm-category-item) !important;
    padding: 0 !important;
    position: relative !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    grid-template-rows: var(--mm-category-orb) auto !important;
    justify-items: center !important;
    align-items: start !important;
    gap: 9px !important;
    overflow: visible !important;
    border: 0 !important;
    border-radius: 0 !important;
    color: var(--mm4-espresso) !important;
    background: transparent !important;
    box-shadow: none !important;
    text-align: center !important;
    scroll-snap-align: start !important;
    scroll-snap-stop: normal !important;
    -webkit-tap-highlight-color: transparent !important;
  }

  html body .home-menu-categories .home-category-strip > .home-category-pill:nth-child(2n),
  html body .home-menu-categories .home-category-strip > .home-category-pill:nth-child(3n),
  html body .home-menu-categories .home-category-strip > .home-category-pill:nth-child(6n) {
    background: transparent !important;
  }

  html body .home-menu-categories .home-category-strip > .home-category-pill::before {
    content: none !important;
    display: none !important;
  }

  html body .home-menu-categories .home-category-pill .home-category-index {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    min-height: 28px !important;
    max-width: 28px !important;
    max-height: 28px !important;
    position: absolute !important;
    z-index: 6 !important;
    top: 1px !important;
    left: 1px !important;
    display: grid !important;
    place-items: center !important;
    border: 2px solid var(--mm4-paper) !important;
    border-radius: 50% !important;
    color: #fff !important;
    background: var(--mm4-berry) !important;
    box-shadow: 0 6px 14px rgba(111, 31, 58, .20) !important;
    font-size: 10px !important;
    font-weight: 900 !important;
  }

  html body .home-menu-categories .home-category-pill .home-category-icon,
  html body .home-menu-categories .home-category-strip > .home-category-pill .home-category-icon {
    width: var(--mm-category-orb) !important;
    height: var(--mm-category-orb) !important;
    min-width: var(--mm-category-orb) !important;
    min-height: var(--mm-category-orb) !important;
    max-width: var(--mm-category-orb) !important;
    max-height: var(--mm-category-orb) !important;
    grid-column: 1 !important;
    grid-row: 1 !important;
    align-self: start !important;
    justify-self: center !important;
    display: grid !important;
    place-items: center !important;
    overflow: hidden !important;
    border: 2px solid rgba(111, 31, 58, .28) !important;
    border-radius: 50% !important;
    color: var(--mm4-espresso) !important;
    background: rgba(255, 255, 255, .64) !important;
    box-shadow: 0 10px 24px rgba(73, 51, 45, .10) !important;
    transform: none !important;
    transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease !important;
  }

  html body .home-menu-categories .home-category-strip > .home-category-pill:nth-child(3n) .home-category-icon {
    background: rgba(222, 236, 217, .84) !important;
  }

  html body .home-menu-categories .home-category-strip > .home-category-pill:nth-child(2n) .home-category-icon {
    background: rgba(248, 230, 210, .86) !important;
  }

  html body .home-menu-categories .home-category-pill .home-category-icon img,
  html body .home-menu-categories .home-category-pill .home-category-icon svg {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    border-radius: 50% !important;
  }

  html body .home-menu-categories .home-category-pill .home-category-icon svg {
    width: 31px !important;
    height: 31px !important;
    object-fit: contain !important;
  }

  html body .home-menu-categories .home-category-pill > span.home-category-copy:not(.home-category-icon) {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    min-height: 66px !important;
    grid-column: 1 !important;
    grid-row: 2 !important;
    align-self: start !important;
    justify-self: stretch !important;
    display: grid !important;
    grid-template-rows: 41px 22px !important;
    justify-items: center !important;
    align-items: start !important;
    gap: 5px !important;
    padding: 0 !important;
    text-align: center !important;
  }

  html body .home-menu-categories .home-category-strip > .home-category-pill .home-category-copy strong {
    width: 100% !important;
    height: 41px !important;
    min-height: 41px !important;
    max-height: 41px !important;
    display: flex !important;
    align-items: flex-start !important;
    justify-content: center !important;
    color: var(--mm4-espresso) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1.04 !important;
    letter-spacing: -.025em !important;
    text-align: center !important;
    text-wrap: balance !important;
  }

  html body .home-menu-categories .home-category-pill .home-category-copy small {
    width: max-content !important;
    min-width: 0 !important;
    min-height: 22px !important;
    padding: 0 8px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: 1px solid rgba(73, 51, 45, .08) !important;
    border-radius: 999px !important;
    color: rgba(45, 32, 28, .62) !important;
    background: rgba(255, 255, 255, .62) !important;
    font-size: 8px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
  }

  html body .home-menu-categories .home-category-pill > i {
    display: none !important;
  }

  html body .home-menu-categories .home-category-pill.has-new-product::after {
    top: 62px !important;
    right: 2px !important;
    min-height: 20px !important;
    padding: 0 7px !important;
    border: 2px solid var(--mm4-paper) !important;
    font-size: 7px !important;
    box-shadow: 0 7px 15px rgba(74, 12, 33, .18) !important;
  }

  html body .home-menu-categories .home-category-strip > .home-category-pill:hover,
  html body .home-menu-categories .home-category-strip > .home-category-pill:nth-child(2n):hover,
  html body .home-menu-categories .home-category-strip > .home-category-pill:nth-child(3n):hover {
    color: var(--mm4-espresso) !important;
    background: transparent !important;
    box-shadow: none !important;
    transform: none !important;
  }

  html body .home-menu-categories .home-category-strip > .home-category-pill:active .home-category-icon {
    border-color: var(--mm4-berry) !important;
    box-shadow: 0 7px 17px rgba(111, 31, 58, .15) !important;
    transform: scale(.96) !important;
  }
}

@media (max-width: 370px) {
  html body .home-section.home-menu-categories {
    --mm-category-orb: 78px;
    --mm-category-item: 92px;
  }

  html body .home-section.home-menu-categories .home-category-strip {
    gap: 12px !important;
  }

  html body .home-menu-categories .home-category-strip > .home-category-pill {
    min-height: 155px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  html body .home-section.home-menu-categories .home-category-strip {
    scroll-behavior: auto !important;
  }

  html body .home-menu-categories .home-category-pill .home-category-icon {
    transition: none !important;
  }
}


/* assets/css/mm-coffee-navigation-v420.css */
/* M&M COFFEE v4.2 — expressive navigation with a persistent Barista entry point. */

@media (min-width: 821px) {
  html body .app-stage > .route-shell .desktop-top-nav {
    background:
      linear-gradient(90deg, rgba(255, 248, 237, .98), rgba(255, 252, 247, .96) 46%, rgba(250, 236, 226, .97)) !important;
    box-shadow: 0 9px 30px rgba(65, 41, 34, .075) !important;
  }

  html body .desktop-top-nav .desktop-header-logo {
    width: 48px !important;
    height: 48px !important;
    padding: 3px !important;
    border: 1px solid rgba(111, 31, 58, .10) !important;
    border-radius: 16px !important;
    background: rgba(255, 255, 255, .62) !important;
    box-shadow: 0 8px 20px rgba(73, 51, 45, .08) !important;
  }

  html body .desktop-top-nav .desktop-nav-links {
    border-color: rgba(111, 31, 58, .10) !important;
    border-radius: 20px !important;
    background: rgba(255, 255, 255, .60) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .75), 0 9px 24px rgba(73, 51, 45, .055) !important;
  }

  html body .desktop-top-nav .desktop-nav-links > button,
  html body .desktop-top-nav .desktop-nav-links > a {
    border-radius: 15px !important;
    transition: color .2s ease, background-color .2s ease, transform .2s ease !important;
  }

  html body .desktop-top-nav .desktop-nav-links > button:hover,
  html body .desktop-top-nav .desktop-nav-links > a:hover {
    transform: translateY(-1px) !important;
  }

  html body .desktop-top-nav .desktop-barista-cta {
    min-width: 232px !important;
    min-height: 58px !important;
    padding: 7px 16px 7px 9px !important;
    grid-template-columns: 38px minmax(0, 1fr) !important;
    border: 1px solid rgba(255, 255, 255, .16) !important;
    border-radius: 20px !important;
    background:
      radial-gradient(circle at 16% 12%, rgba(255, 214, 168, .22), transparent 31%),
      linear-gradient(135deg, var(--mm4-berry-dark), var(--mm4-berry)) !important;
    box-shadow: 0 14px 28px rgba(111, 31, 58, .22) !important;
    transition: transform .22s ease, box-shadow .22s ease !important;
  }

  html body .desktop-top-nav .desktop-barista-cta:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 18px 34px rgba(111, 31, 58, .27) !important;
  }

  html body .desktop-top-nav .desktop-barista-cta > .desktop-barista-symbol {
    width: 38px !important;
    height: 38px !important;
    position: relative !important;
    display: grid !important;
    place-items: center !important;
    border: 1px solid rgba(255, 255, 255, .20) !important;
    border-radius: 14px !important;
    color: #ffe0b8 !important;
    background: rgba(255, 255, 255, .12) !important;
  }

  html body .desktop-top-nav .desktop-barista-symbol > i {
    width: 16px !important;
    height: 16px !important;
    position: absolute !important;
    top: -4px !important;
    right: -4px !important;
    display: grid !important;
    place-items: center !important;
    border-radius: 50% !important;
    color: var(--mm4-berry-dark) !important;
    background: #ffd8a9 !important;
    box-shadow: 0 4px 10px rgba(45, 18, 25, .22) !important;
  }
}

@media (max-width: 820px) {
  html body .app-stage > .route-shell .mobile-top-nav {
    width: 100% !important;
    height: 72px !important;
    min-height: 72px !important;
    padding: 8px 11px !important;
    position: sticky !important;
    top: 0 !important;
    z-index: 170 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 9px !important;
    overflow: visible !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(111, 31, 58, .09) !important;
    border-radius: 0 !important;
    background:
      linear-gradient(90deg, rgba(255, 248, 237, .98), rgba(255, 252, 247, .96) 55%, rgba(250, 234, 226, .97)) !important;
    box-shadow: 0 9px 26px rgba(65, 41, 34, .075) !important;
    backdrop-filter: blur(18px) saturate(1.08) !important;
  }

  html body .mobile-top-nav .mobile-brand {
    min-width: 0 !important;
    min-height: 54px !important;
    padding: 4px 7px 4px 3px !important;
    gap: 8px !important;
    border-radius: 17px !important;
  }

  html body .mobile-top-nav .mobile-brand img {
    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;
    padding: 3px !important;
    border: 1px solid rgba(111, 31, 58, .10) !important;
    border-radius: 14px !important;
    background: rgba(255, 255, 255, .62) !important;
    box-shadow: 0 7px 17px rgba(73, 51, 45, .08) !important;
  }

  html body .mobile-top-nav .mobile-brand strong {
    font-size: 11px !important;
    letter-spacing: .075em !important;
  }

  html body .mobile-top-nav .mobile-nav-barista {
    width: auto !important;
    min-width: 145px !important;
    min-height: 52px !important;
    padding: 6px 11px 6px 7px !important;
    display: grid !important;
    grid-template-columns: 36px minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 8px !important;
    border: 1px solid rgba(255, 255, 255, .16) !important;
    border-radius: 18px !important;
    color: #fff !important;
    background:
      radial-gradient(circle at 14% 8%, rgba(255, 218, 175, .24), transparent 34%),
      linear-gradient(135deg, var(--mm4-berry-dark), var(--mm4-berry)) !important;
    box-shadow: 0 11px 23px rgba(111, 31, 58, .21) !important;
  }

  html body .mobile-top-nav .mobile-nav-barista > .mobile-barista-symbol {
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    min-height: 36px !important;
    position: relative !important;
    display: grid !important;
    place-items: center !important;
    border: 1px solid rgba(255, 255, 255, .20) !important;
    border-radius: 13px !important;
    color: #ffe0b8 !important;
    background: rgba(255, 255, 255, .12) !important;
  }

  html body .mobile-top-nav .mobile-barista-symbol > i {
    width: 15px !important;
    height: 15px !important;
    position: absolute !important;
    top: -4px !important;
    right: -4px !important;
    display: grid !important;
    place-items: center !important;
    border-radius: 50% !important;
    color: var(--mm4-berry-dark) !important;
    background: #ffd8a9 !important;
    box-shadow: 0 4px 9px rgba(45, 18, 25, .20) !important;
  }

  html body .mobile-top-nav .mobile-nav-barista > span:last-child {
    min-width: 0 !important;
    display: grid !important;
    gap: 2px !important;
    text-align: left !important;
  }

  html body .mobile-top-nav .mobile-nav-barista small {
    color: rgba(255, 255, 255, .67) !important;
    font-size: 7px !important;
  }

  html body .mobile-top-nav .mobile-nav-barista strong {
    color: #fff !important;
    font-size: 10px !important;
  }

  html body .phone-shell .bottom-nav {
    width: calc(100% - 16px) !important;
    height: 74px !important;
    min-height: 74px !important;
    left: 8px !important;
    right: 8px !important;
    bottom: max(8px, env(safe-area-inset-bottom)) !important;
    padding: 5px 6px 6px !important;
    position: fixed !important;
    z-index: 180 !important;
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    align-items: end !important;
    gap: 2px !important;
    overflow: visible !important;
    border: 1px solid rgba(111, 31, 58, .11) !important;
    border-radius: 22px !important;
    background: rgba(255, 252, 247, .94) !important;
    box-shadow: 0 18px 45px rgba(65, 38, 31, .18), inset 0 1px 0 rgba(255, 255, 255, .86) !important;
    backdrop-filter: blur(22px) saturate(1.12) !important;
    transform: none !important;
  }

  html body .phone-shell .bottom-nav::before {
    content: "" !important;
    width: 78px !important;
    height: 39px !important;
    position: absolute !important;
    z-index: 0 !important;
    top: -16px !important;
    left: 50% !important;
    display: block !important;
    border: 1px solid rgba(111, 31, 58, .10) !important;
    border-bottom: 0 !important;
    border-radius: 999px 999px 0 0 !important;
    background: rgba(255, 252, 247, .97) !important;
    box-shadow: 0 -9px 24px rgba(65, 38, 31, .08) !important;
    transform: translateX(-50%) !important;
    pointer-events: none !important;
  }

  html body .phone-shell .bottom-nav .nav-btn:not(.nav-barista-main) {
    width: 100% !important;
    height: 60px !important;
    min-width: 0 !important;
    min-height: 60px !important;
    max-height: 60px !important;
    padding: 6px 2px 5px !important;
    position: relative !important;
    z-index: 1 !important;
    display: grid !important;
    grid-template-rows: 27px 12px !important;
    place-items: center !important;
    align-content: center !important;
    gap: 2px !important;
    border-radius: 16px !important;
    color: #806b62 !important;
    background: transparent !important;
    font-size: 8px !important;
    font-weight: 750 !important;
  }

  html body .phone-shell .bottom-nav .nav-btn:not(.nav-barista-main) > svg {
    width: 21px !important;
    height: 21px !important;
    stroke-width: 1.8 !important;
  }

  html body .phone-shell .bottom-nav .nav-btn:not(.nav-barista-main) > span {
    color: inherit !important;
    font-size: 8px !important;
    line-height: 1 !important;
    white-space: nowrap !important;
  }

  html body .phone-shell .bottom-nav .nav-btn:not(.nav-barista-main).active {
    color: var(--mm4-berry-dark) !important;
    background: linear-gradient(180deg, rgba(248, 226, 224, .82), rgba(248, 226, 224, .48)) !important;
    box-shadow: inset 0 0 0 1px rgba(111, 31, 58, .05) !important;
  }

  html body .phone-shell .bottom-nav .nav-barista-main {
    width: 100% !important;
    height: 60px !important;
    min-width: 0 !important;
    min-height: 60px !important;
    max-height: 60px !important;
    padding: 0 !important;
    position: relative !important;
    z-index: 3 !important;
    top: auto !important;
    display: block !important;
    overflow: visible !important;
    border: 0 !important;
    border-radius: 18px !important;
    color: var(--mm4-berry-dark) !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  html body .phone-shell .bottom-nav .nav-barista-orb {
    width: 58px !important;
    height: 58px !important;
    min-width: 58px !important;
    min-height: 58px !important;
    position: absolute !important;
    top: -26px !important;
    left: 50% !important;
    margin-left: -29px !important;
    display: grid !important;
    place-items: center !important;
    overflow: visible !important;
    border: 3px solid var(--mm4-paper) !important;
    border-radius: 50% !important;
    color: #ffe2ba !important;
    background:
      radial-gradient(circle at 30% 20%, rgba(255, 219, 175, .27), transparent 30%),
      linear-gradient(145deg, var(--mm4-berry), var(--mm4-berry-dark)) !important;
    box-shadow: 0 13px 27px rgba(111, 31, 58, .31), inset 0 1px 0 rgba(255, 255, 255, .20) !important;
    transition: transform .2s ease, box-shadow .2s ease !important;
  }

  html body .phone-shell .bottom-nav .nav-barista-orb > i {
    width: 18px !important;
    height: 18px !important;
    position: absolute !important;
    top: -4px !important;
    right: -5px !important;
    display: grid !important;
    place-items: center !important;
    border: 2px solid var(--mm4-paper) !important;
    border-radius: 50% !important;
    color: var(--mm4-berry-dark) !important;
    background: #ffd8a9 !important;
    box-shadow: 0 5px 11px rgba(45, 18, 25, .22) !important;
  }

  html body .phone-shell .bottom-nav .nav-barista-label {
    position: absolute !important;
    right: 0 !important;
    bottom: 4px !important;
    left: 0 !important;
    display: block !important;
    color: var(--mm4-berry-dark) !important;
    font-size: 8px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    letter-spacing: .02em !important;
  }

  html body .phone-shell .bottom-nav .nav-barista-main:active .nav-barista-orb,
  html body .phone-shell .bottom-nav .nav-barista-main.is-active .nav-barista-orb,
  html body:has(.assistant-widget.open) .phone-shell .bottom-nav .nav-barista-orb {
    box-shadow: 0 9px 20px rgba(111, 31, 58, .25), 0 0 0 5px rgba(157, 49, 82, .11) !important;
    transform: scale(.96) !important;
  }

  html.lunqa-barista-keyboard-open body .phone-shell .bottom-nav {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }
}

@media (max-width: 370px) {
  html body .app-stage > .route-shell .mobile-top-nav {
    padding-inline: 8px !important;
    gap: 6px !important;
  }

  html body .mobile-top-nav .mobile-nav-barista {
    min-width: 136px !important;
    padding-right: 8px !important;
  }

  html body .phone-shell .bottom-nav {
    width: calc(100% - 12px) !important;
    left: 6px !important;
    right: 6px !important;
    padding-inline: 4px !important;
  }

  html body .phone-shell .bottom-nav .nav-btn:not(.nav-barista-main) > span,
  html body .phone-shell .bottom-nav .nav-barista-label {
    font-size: 7px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  html body .desktop-top-nav .desktop-nav-links > *,
  html body .desktop-top-nav .desktop-barista-cta,
  html body .phone-shell .bottom-nav .nav-barista-orb {
    transition: none !important;
  }
}


/* assets/css/mm-coffee-specials-v430.css */
/* M&M COFFEE v4.3 — editorial, swipeable “Bugün Sana Özel” collection. */

html body .home-modern-panel .home-specials-head {
  align-items: flex-end !important;
}

html body .home-modern-panel .home-specials-head > span {
  min-width: 0 !important;
}

html body .home-modern-panel .home-specials-head > button {
  flex: 0 0 auto !important;
  min-width: 116px !important;
  min-height: 44px !important;
  padding: 0 14px !important;
  border: 1px solid rgba(111, 31, 58, .2) !important;
  border-radius: 999px !important;
  color: #6f1f3a !important;
  background: rgba(255, 252, 247, .92) !important;
  box-shadow: 0 8px 22px rgba(72, 36, 31, .06) !important;
  font-size: 11px !important;
  line-height: 1 !important;
  letter-spacing: .01em !important;
  white-space: nowrap !important;
}

html body .home-modern-panel .home-specials-head > button:hover {
  border-color: #6f1f3a !important;
  color: #fffaf4 !important;
  background: #6f1f3a !important;
  transform: translateY(-1px) !important;
}

html body .home-modern-panel .home-specials-section .special-row {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 16px !important;
}

html body .home-modern-panel .home-specials-section .special-card {
  position: relative !important;
  min-width: 0 !important;
  overflow: hidden !important;
  border: 1px solid rgba(111, 31, 58, .13) !important;
  border-radius: 22px !important;
  background: #f8e9e5 !important;
  box-shadow: 0 14px 34px rgba(67, 39, 31, .07) !important;
}

html body .home-modern-panel .home-specials-section .special-card:nth-child(2) {
  background: #edf2e7 !important;
}

html body .home-modern-panel .home-specials-section .special-card:nth-child(3) {
  background: #f8ead7 !important;
}

html body .home-modern-panel .home-specials-section .special-card button {
  position: relative !important;
  min-height: 132px !important;
  display: grid !important;
  grid-template-columns: 106px minmax(0, 1fr) !important;
  gap: 0 !important;
  align-items: stretch !important;
  padding: 0 !important;
  overflow: hidden !important;
}

html body .home-modern-panel .home-specials-section .special-card-media {
  width: 106px !important;
  height: 132px !important;
  min-width: 106px !important;
  min-height: 132px !important;
  max-width: 106px !important;
  max-height: 132px !important;
  margin: 0 !important;
  overflow: hidden !important;
  border-radius: 21px 0 0 21px !important;
  background: #eadcd2 !important;
}

html body .home-modern-panel .home-specials-section .special-card-media img {
  width: 100% !important;
  height: 100% !important;
  border-radius: 0 !important;
  object-fit: cover !important;
  transition: transform .35s ease !important;
}

html body .home-modern-panel .home-specials-section .special-card:hover .special-card-media img {
  transform: scale(1.04) !important;
}

html body .home-modern-panel .home-specials-section .special-card-copy {
  min-width: 0 !important;
  display: grid !important;
  align-content: center !important;
  padding: 16px 46px 16px 15px !important;
}

html body .home-modern-panel .home-specials-section .special-card-copy small {
  margin-bottom: 7px !important;
  color: #9b314f !important;
  font-size: 8px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
}

html body .home-modern-panel .home-specials-section .special-card strong {
  display: -webkit-box !important;
  overflow: hidden !important;
  color: #30231f !important;
  font-size: 18px !important;
  line-height: 1.05 !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 2 !important;
}

html body .home-modern-panel .home-specials-section .special-card em {
  display: -webkit-box !important;
  overflow: hidden !important;
  margin-top: 6px !important;
  color: #685852 !important;
  font-size: 11px !important;
  line-height: 1.3 !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 2 !important;
}

html body .home-modern-panel .home-specials-section .special-card .price {
  margin-top: 8px !important;
  color: #a20f23 !important;
  font-size: 18px !important;
  line-height: 1 !important;
}

html body .home-modern-panel .home-specials-section .special-card > button > i {
  position: absolute !important;
  right: 12px !important;
  bottom: 12px !important;
  width: 32px !important;
  height: 32px !important;
  border: 1px solid rgba(111, 31, 58, .2) !important;
  color: #7a1734 !important;
  background: rgba(255, 253, 249, .88) !important;
}

html body .home-modern-panel .home-specials-section .special-card button:focus-visible,
html body .home-modern-panel .home-specials-head > button:focus-visible {
  outline: 3px solid rgba(163, 48, 78, .28) !important;
  outline-offset: 3px !important;
}

@media (max-width: 820px) {
  html body .home-modern-panel .home-specials-section {
    overflow: visible !important;
  }

  html body .home-modern-panel .home-specials-head {
    min-height: 74px !important;
    margin-bottom: 16px !important;
    padding-bottom: 14px !important;
    gap: 12px !important;
  }

  html body .home-modern-panel .home-specials-head > span b {
    margin-bottom: 6px !important;
    font-size: 8px !important;
    letter-spacing: .17em !important;
  }

  html body .home-modern-panel .home-specials-head h2 {
    max-width: 210px !important;
    font-size: clamp(27px, 7.8vw, 31px) !important;
    line-height: .98 !important;
  }

  html body .home-modern-panel .home-specials-head > button {
    min-width: 112px !important;
    min-height: 42px !important;
    padding: 0 12px !important;
    font-size: 10px !important;
  }

  html body .home-modern-panel .home-specials-section .special-row {
    width: calc(100% + 28px) !important;
    margin-inline: -14px !important;
    padding: 4px 14px 16px !important;
    display: flex !important;
    grid-template-columns: none !important;
    gap: 12px !important;
    align-items: stretch !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    overscroll-behavior-inline: contain !important;
    scroll-padding-inline: 14px !important;
    scroll-snap-type: x proximity !important;
    scrollbar-width: none !important;
    touch-action: pan-x !important;
    -webkit-overflow-scrolling: touch !important;
  }

  html body .home-modern-panel .home-specials-section .special-row::-webkit-scrollbar {
    display: none !important;
  }

  html body .home-modern-panel .home-specials-section .special-card {
    flex: 0 0 min(78vw, 292px) !important;
    width: auto !important;
    min-width: 0 !important;
    scroll-snap-align: start !important;
    border-radius: 22px !important;
  }

  html body .home-modern-panel .home-specials-section .special-card button {
    min-height: 154px !important;
    grid-template-columns: 112px minmax(0, 1fr) !important;
  }

  html body .home-modern-panel .home-specials-section .special-card-media {
    width: 112px !important;
    height: 154px !important;
    min-width: 112px !important;
    min-height: 154px !important;
    max-width: 112px !important;
    max-height: 154px !important;
    border-radius: 21px 0 0 21px !important;
  }

  html body .home-modern-panel .home-specials-section .special-card-copy {
    padding: 16px 42px 16px 14px !important;
  }

  html body .home-modern-panel .home-specials-section .special-card strong {
    font-size: 18px !important;
  }

  html body .home-modern-panel .home-specials-section .special-card em {
    font-size: 10.5px !important;
  }
}

@media (max-width: 365px) {
  html body .home-modern-panel .home-specials-head h2 {
    max-width: 190px !important;
    font-size: 27px !important;
  }

  html body .home-modern-panel .home-specials-head > button {
    min-width: 106px !important;
    padding-inline: 10px !important;
    font-size: 9.5px !important;
  }

  html body .home-modern-panel .home-specials-section .special-card {
    flex-basis: 280px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  html body .home-modern-panel .home-specials-section .special-row {
    scroll-behavior: auto !important;
  }

  html body .home-modern-panel .home-specials-section .special-card-media img,
  html body .home-modern-panel .home-specials-head > button {
    transition: none !important;
  }
}


/* assets/css/mm-coffee-menu-detail-v440.css */
/* M&M COFFEE v4.4 — visual category discovery and rebuilt product information. */

/* A database interruption stays useful without exposing browser jargon or breaking the hero. */
html body .database-alert {
  position: relative !important;
  z-index: 8 !important;
  width: min(1180px, calc(100% - 32px)) !important;
  min-height: 58px !important;
  margin: 12px auto !important;
  padding: 10px 12px !important;
  grid-template-columns: 34px minmax(0, 1fr) auto !important;
  gap: 10px !important;
  border: 1px solid rgba(177, 99, 40, .2) !important;
  border-radius: 16px !important;
  background: #fff7e9 !important;
  box-shadow: 0 9px 24px rgba(77, 42, 25, .06) !important;
}

html body .database-alert-icon {
  width: 34px !important;
  height: 34px !important;
  border-radius: 11px !important;
  font-size: 15px !important;
}

html body .database-alert strong { font-size: 11px !important; }
html body .database-alert small { font-size: 9px !important; line-height: 1.35 !important; }

html body .database-alert button {
  width: auto !important;
  min-width: 104px !important;
  min-height: 36px !important;
  grid-column: auto !important;
  padding: 0 12px !important;
  border-radius: 999px !important;
  font-size: 9px !important;
  white-space: nowrap !important;
}

/* One category experience for desktop and mobile. */
html body .app-stage > .route-shell main.page-panel.page-panel-menu,
html body .app-stage > .route-shell main.page-panel.page-panel-menu:not(.is-special-list) {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 58px clamp(24px, 4.8vw, 78px) 144px !important;
  display: block !important;
  grid-template-columns: none !important;
  background: var(--mm4-vanilla, #fff8ed) !important;
}

html body .page-panel-menu .menu-category-explorer {
  width: 100% !important;
  margin: 0 0 58px !important;
  padding: 28px 30px 24px !important;
  overflow: hidden !important;
  border: 1px solid rgba(111, 31, 58, .12) !important;
  border-radius: 30px !important;
  background:
    radial-gradient(circle at 94% 0, rgba(240, 183, 123, .24), transparent 28%),
    linear-gradient(135deg, rgba(255, 253, 249, .98), rgba(249, 234, 226, .9)) !important;
  box-shadow: 0 22px 54px rgba(66, 39, 32, .07) !important;
}

.menu-category-explorer-head {
  display: flex !important;
  align-items: flex-end !important;
  justify-content: space-between !important;
  gap: 28px !important;
  margin-bottom: 22px !important;
  padding-bottom: 20px !important;
  border-bottom: 1px solid rgba(111, 31, 58, .12) !important;
}

.menu-category-explorer-head > span { min-width: 0 !important; }

.menu-category-explorer-head > span > b,
.menu-selection-head > span > b {
  display: block !important;
  margin-bottom: 7px !important;
  color: #9d3152 !important;
  font-size: 9px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  letter-spacing: .18em !important;
}

.menu-category-explorer-head h2 {
  margin: 0 !important;
  color: #30231f !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(31px, 3.4vw, 50px) !important;
  font-weight: 500 !important;
  line-height: .98 !important;
  letter-spacing: -.045em !important;
}

.menu-category-explorer-head p {
  margin: 9px 0 0 !important;
  color: #74625a !important;
  font-size: 11px !important;
  line-height: 1.45 !important;
}

.menu-explorer-barista {
  flex: 0 0 auto !important;
  min-width: 264px !important;
  min-height: 64px !important;
  padding: 10px 15px !important;
  display: grid !important;
  grid-template-columns: 34px minmax(0, 1fr) 18px !important;
  align-items: center !important;
  gap: 10px !important;
  border: 0 !important;
  border-radius: 18px !important;
  color: #fffaf5 !important;
  background: linear-gradient(135deg, #6f1f3a, #a43153) !important;
  box-shadow: 0 14px 30px rgba(111, 31, 58, .18) !important;
  text-align: left !important;
}

.menu-explorer-barista > span:first-child {
  width: 34px !important;
  height: 34px !important;
  display: grid !important;
  place-items: center !important;
  border: 1px solid rgba(255, 255, 255, .28) !important;
  border-radius: 50% !important;
  color: #f6c88e !important;
}

.menu-explorer-barista > span:nth-child(2) { display: grid !important; gap: 3px !important; }
.menu-explorer-barista small { color: #f1bf82 !important; font-size: 7px !important; letter-spacing: .14em !important; }
.menu-explorer-barista strong { font-size: 12px !important; line-height: 1.2 !important; }

.menu-category-swipe-hint {
  display: none !important;
}

html body .page-panel-menu .menu-category-carousel {
  width: 100% !important;
  padding: 4px 3px 12px !important;
  display: flex !important;
  gap: 13px !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  overscroll-behavior-inline: contain !important;
  scroll-padding-inline: 3px !important;
  scroll-snap-type: x proximity !important;
  scrollbar-width: none !important;
  touch-action: pan-x !important;
  -webkit-overflow-scrolling: touch !important;
}

html body .page-panel-menu .menu-category-carousel::-webkit-scrollbar { display: none !important; }

html body .page-panel-menu .menu-category-orb {
  position: relative !important;
  flex: 0 0 126px !important;
  min-width: 126px !important;
  min-height: 156px !important;
  padding: 8px 7px 10px !important;
  display: grid !important;
  grid-template-rows: 88px auto !important;
  align-content: start !important;
  justify-items: center !important;
  gap: 9px !important;
  scroll-snap-align: start !important;
  border: 1px solid transparent !important;
  border-radius: 22px !important;
  color: #392b26 !important;
  background: transparent !important;
  box-shadow: none !important;
  text-align: center !important;
  transition: background-color .2s ease, border-color .2s ease, transform .2s ease !important;
}

html body .page-panel-menu .menu-category-orb:hover {
  border-color: rgba(111, 31, 58, .12) !important;
  background: rgba(255, 255, 255, .66) !important;
  transform: translateY(-2px) !important;
}

html body .page-panel-menu .menu-category-orb.active {
  border-color: rgba(111, 31, 58, .16) !important;
  color: #6f1f3a !important;
  background: rgba(255, 255, 255, .9) !important;
  box-shadow: 0 13px 28px rgba(72, 36, 31, .09) !important;
}

.menu-category-visual {
  position: relative !important;
  width: 86px !important;
  height: 86px !important;
  display: grid !important;
  place-items: center !important;
  overflow: hidden !important;
  border: 1px solid rgba(111, 31, 58, .14) !important;
  border-radius: 50% !important;
  background: #f1e5dc !important;
  box-shadow: 0 8px 20px rgba(62, 35, 27, .1) !important;
}

.menu-category-orb.active .menu-category-visual {
  border: 3px solid #8f2446 !important;
  box-shadow: 0 0 0 4px rgba(255, 253, 249, .95), 0 10px 23px rgba(111, 31, 58, .16) !important;
}

.menu-category-visual > img,
.menu-category-visual .icon-media,
.menu-category-visual .icon-media img {
  width: 100% !important;
  height: 100% !important;
  display: block !important;
  object-fit: cover !important;
  border-radius: 50% !important;
}

.menu-category-visual > svg {
  width: 38px !important;
  height: 38px !important;
}

.menu-category-order {
  position: absolute !important;
  top: 5px !important;
  left: 7px !important;
  z-index: 2 !important;
  min-width: 28px !important;
  height: 23px !important;
  padding: 0 6px !important;
  display: grid !important;
  place-items: center !important;
  border: 1px solid rgba(111, 31, 58, .1) !important;
  border-radius: 999px !important;
  color: #8d2747 !important;
  background: rgba(255, 253, 249, .94) !important;
  font-size: 8px !important;
  font-weight: 900 !important;
}

.menu-category-copy { min-width: 0 !important; display: grid !important; gap: 4px !important; }
.menu-category-copy strong { display: -webkit-box !important; overflow: hidden !important; font-family: Georgia, "Times New Roman", serif !important; font-size: 13px !important; font-weight: 600 !important; line-height: 1.08 !important; -webkit-box-orient: vertical !important; -webkit-line-clamp: 2 !important; }
.menu-category-copy small { color: #806f67 !important; font-size: 8px !important; font-weight: 800 !important; }

html body .page-panel-menu .menu-content-column {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
}

html body .page-panel-menu .menu-selection-head {
  min-height: 120px !important;
  margin: 0 0 14px !important;
  padding: 0 0 22px !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: end !important;
  gap: 24px !important;
  border-bottom: 1px solid rgba(111, 31, 58, .14) !important;
}

.menu-selection-head > span:first-child { max-width: 760px !important; }
.menu-selection-head h2 { margin: 0 !important; color: #30231f !important; font-family: Georgia, "Times New Roman", serif !important; font-size: clamp(35px, 4vw, 58px) !important; font-weight: 500 !important; line-height: .98 !important; letter-spacing: -.05em !important; }
.menu-selection-head p { max-width: 660px !important; margin: 10px 0 0 !important; color: #76655e !important; font-size: 10.5px !important; line-height: 1.5 !important; }

.menu-selection-stats {
  min-width: 104px !important;
  display: grid !important;
  justify-items: end !important;
  gap: 1px !important;
}

.menu-selection-stats > strong {
  width: auto !important;
  height: auto !important;
  display: block !important;
  color: #7b1535 !important;
  background: transparent !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 52px !important;
  font-weight: 500 !important;
  line-height: .85 !important;
  letter-spacing: -.06em !important;
}

.menu-selection-stats > small { color: #806f67 !important; font-size: 8px !important; font-weight: 900 !important; letter-spacing: .14em !important; text-transform: uppercase !important; }
.menu-selection-stats > button { margin-top: 8px !important; padding: 0 0 3px !important; border: 0 !important; border-bottom: 1px solid #8d2747 !important; color: #8d2747 !important; background: transparent !important; font-size: 9px !important; font-weight: 850 !important; }
.menu-selection-stats > button[hidden] { display: none !important; }

html body main.page-panel.page-panel-menu .menu-results-summary {
  margin: 0 0 15px !important;
}

html body main.page-panel.page-panel-menu .menu-list {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 16px !important;
}

html body main.page-panel.page-panel-menu .menu-list > button.menu-row {
  width: 100% !important;
  min-width: 0 !important;
  min-height: 202px !important;
  padding: 0 !important;
  position: relative !important;
  display: grid !important;
  grid-template-columns: 142px minmax(0, 1fr) !important;
  grid-template-rows: minmax(0, 1fr) auto !important;
  align-items: stretch !important;
  overflow: hidden !important;
  border: 1px solid rgba(111, 31, 58, .12) !important;
  border-radius: 22px !important;
  color: #30231f !important;
  background: rgba(255, 253, 249, .93) !important;
  box-shadow: 0 13px 32px rgba(68, 39, 31, .065) !important;
  text-align: left !important;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease !important;
}

html body main.page-panel.page-panel-menu .menu-list > button.menu-row:hover {
  border-color: rgba(142, 36, 69, .32) !important;
  background: #fff !important;
  box-shadow: 0 20px 42px rgba(68, 39, 31, .11) !important;
  transform: translateY(-3px) !important;
}

html body main.page-panel.page-panel-menu .menu-list > button.menu-row > .menu-thumb {
  width: 142px !important;
  height: 100% !important;
  min-width: 142px !important;
  min-height: 100% !important;
  grid-row: 1 / 3 !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 21px 0 0 21px !important;
  background: #eaded4 !important;
}

html body main.page-panel.page-panel-menu .menu-list > button.menu-row > .menu-thumb img {
  width: 100% !important;
  height: 100% !important;
  min-width: 100% !important;
  object-fit: cover !important;
  border-radius: 0 !important;
  transition: transform .35s ease !important;
}

html body main.page-panel.page-panel-menu .menu-list > button.menu-row:hover > .menu-thumb img { transform: scale(1.04) !important; }

html body main.page-panel.page-panel-menu .menu-list > button.menu-row > .menu-row-copy {
  min-width: 0 !important;
  width: auto !important;
  min-height: 0 !important;
  padding: 18px 17px 5px !important;
  display: block !important;
}

.menu-row-kicker {
  display: block !important;
  margin-bottom: 7px !important;
  overflow: hidden !important;
  color: #9b3150 !important;
  font-size: 7px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  letter-spacing: .11em !important;
  text-overflow: ellipsis !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

html body main.page-panel.page-panel-menu button.menu-row .menu-title {
  display: -webkit-box !important;
  overflow: hidden !important;
  color: #30231f !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 18px !important;
  font-weight: 600 !important;
  line-height: 1.06 !important;
  letter-spacing: -.025em !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 2 !important;
}

html body main.page-panel.page-panel-menu button.menu-row .menu-desc {
  min-height: 38px !important;
  margin-top: 8px !important;
  display: -webkit-box !important;
  overflow: hidden !important;
  color: #74635c !important;
  font-size: 9.5px !important;
  line-height: 1.4 !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 3 !important;
}

html body main.page-panel.page-panel-menu button.menu-row .menu-row-meta {
  min-height: 21px !important;
  margin-top: 9px !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 5px !important;
}

html body main.page-panel.page-panel-menu button.menu-row .menu-row-meta small {
  padding: 4px 7px !important;
  border: 0 !important;
  border-radius: 999px !important;
  color: #6d5b54 !important;
  background: #f5ece3 !important;
  font-size: 7px !important;
  font-weight: 750 !important;
}

html body main.page-panel.page-panel-menu .menu-list > button.menu-row > .menu-row-side {
  min-width: 0 !important;
  width: auto !important;
  padding: 6px 16px 15px !important;
  display: flex !important;
  align-items: flex-end !important;
  justify-content: space-between !important;
  gap: 8px !important;
}

html body main.page-panel.page-panel-menu button.menu-row .menu-row-side > .price {
  color: #a20f2b !important;
  font-size: 19px !important;
  line-height: 1 !important;
}

.menu-row-side > small {
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  color: #7c2842 !important;
  font-size: 8px !important;
  font-weight: 850 !important;
}

.menu-row-side > small i { font-size: 11px !important; font-style: normal !important; }

/* Rebuilt product detail information architecture. */
html body .app-stage > .route-shell .detail-shell.detail-shell-v2 {
  width: min(100%, 1500px) !important;
  max-width: 1500px !important;
  margin: 0 auto !important;
  padding: 52px clamp(24px, 5vw, 82px) 148px !important;
  display: grid !important;
  grid-template-columns: minmax(390px, .88fr) minmax(540px, 1.12fr) !important;
  align-items: start !important;
  gap: clamp(34px, 5vw, 82px) !important;
  background: var(--mm4-vanilla, #fff8ed) !important;
}

html body .detail-media.detail-media-v2 {
  position: sticky !important;
  top: 104px !important;
  width: 100% !important;
  height: min(720px, calc(100dvh - 134px)) !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 30px !important;
  background: #e9ddd2 !important;
  box-shadow: 0 24px 58px rgba(55, 32, 26, .13) !important;
}

html body .detail-media.detail-media-v2::after {
  content: "" !important;
  position: absolute !important;
  inset: 48% 0 0 !important;
  pointer-events: none !important;
  background: linear-gradient(transparent, rgba(39, 19, 24, .66)) !important;
}

html body .detail-media.detail-media-v2 > img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

html body .detail-media.detail-media-v2 .back-btn {
  position: absolute !important;
  top: 18px !important;
  left: 18px !important;
  z-index: 3 !important;
  width: 46px !important;
  height: 46px !important;
  border: 1px solid rgba(255, 255, 255, .45) !important;
  border-radius: 50% !important;
  color: #3e2722 !important;
  background: rgba(255, 253, 249, .9) !important;
  box-shadow: 0 8px 20px rgba(34, 21, 17, .13) !important;
  backdrop-filter: blur(10px) !important;
}

.detail-media-label {
  position: absolute !important;
  left: 24px !important;
  right: 24px !important;
  bottom: 24px !important;
  z-index: 2 !important;
  display: grid !important;
  gap: 4px !important;
  color: #fffaf5 !important;
}

.detail-media-label small { color: #f1c28a !important; font-size: 8px !important; font-weight: 900 !important; letter-spacing: .14em !important; text-transform: uppercase !important; }
.detail-media-label strong { font-family: Georgia, "Times New Roman", serif !important; font-size: 24px !important; font-weight: 500 !important; }

html body .detail-sheet.detail-sheet-v2 {
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.detail-intro {
  padding: 7px 0 28px !important;
  border-bottom: 1px solid rgba(111, 31, 58, .14) !important;
}

.detail-kicker { display: flex !important; align-items: center !important; gap: 8px !important; margin-bottom: 14px !important; color: #96304f !important; font-size: 8px !important; font-weight: 900 !important; letter-spacing: .13em !important; text-transform: uppercase !important; }
.detail-kicker i { width: 3px !important; height: 3px !important; border-radius: 50% !important; background: #d79a62 !important; }

html body .detail-sheet-v2 .detail-heading {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: end !important;
  gap: 22px !important;
}

html body .detail-sheet-v2 .detail-heading h1 {
  margin: 0 !important;
  color: #30231f !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(42px, 4.7vw, 70px) !important;
  font-weight: 500 !important;
  line-height: .94 !important;
  letter-spacing: -.055em !important;
}

html body .detail-sheet-v2 .detail-heading .price {
  color: #a20f2b !important;
  font-size: clamp(27px, 2.7vw, 38px) !important;
  line-height: 1 !important;
}

html body .detail-sheet-v2 .detail-desc {
  max-width: 710px !important;
  margin: 18px 0 0 !important;
  color: #6d5c55 !important;
  font-size: 13px !important;
  line-height: 1.6 !important;
}

html body .detail-sheet-v2 .detail-primary-actions {
  margin: 22px 0 0 !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 50px 50px !important;
  gap: 9px !important;
}

html body .detail-sheet-v2 .detail-barista-btn {
  min-height: 50px !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 16px !important;
  color: #fffaf5 !important;
  background: linear-gradient(135deg, #6f1f3a, #a43153) !important;
  box-shadow: 0 12px 25px rgba(111, 31, 58, .17) !important;
}

html body .detail-sheet-v2 .detail-icon-action {
  width: 50px !important;
  min-height: 50px !important;
  border: 1px solid rgba(111, 31, 58, .16) !important;
  border-radius: 16px !important;
  color: #7b1837 !important;
  background: rgba(255, 253, 249, .92) !important;
}

html body .detail-sheet-v2 .detail-icon-action.active { color: #fff !important; background: #8e2445 !important; }

.detail-quick-facts {
  margin: 20px 0 !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 9px !important;
}

.detail-fact {
  min-width: 0 !important;
  min-height: 94px !important;
  padding: 13px !important;
  display: grid !important;
  align-content: space-between !important;
  gap: 12px !important;
  border: 1px solid rgba(111, 31, 58, .1) !important;
  border-radius: 18px !important;
  background: rgba(255, 253, 249, .82) !important;
}

.detail-fact > span:first-child { width: 31px !important; height: 31px !important; display: grid !important; place-items: center !important; border-radius: 10px !important; color: #8e2445 !important; background: #f5e4e2 !important; }
.detail-fact > span:last-child { min-width: 0 !important; display: grid !important; gap: 3px !important; }
.detail-fact small { color: #8a7770 !important; font-size: 7px !important; font-weight: 850 !important; letter-spacing: .1em !important; text-transform: uppercase !important; }
.detail-fact strong { display: -webkit-box !important; overflow: hidden !important; color: #382923 !important; font-size: 10px !important; line-height: 1.25 !important; -webkit-box-orient: vertical !important; -webkit-line-clamp: 2 !important; }

.detail-info-section {
  margin-top: 14px !important;
  padding: 24px !important;
  border: 1px solid rgba(111, 31, 58, .11) !important;
  border-radius: 24px !important;
  background: rgba(255, 253, 249, .9) !important;
  box-shadow: 0 12px 30px rgba(68, 39, 31, .055) !important;
}

.detail-section-heading {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  margin-bottom: 18px !important;
}

.detail-section-heading > span:first-child {
  flex: 0 0 39px !important;
  width: 39px !important;
  height: 39px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 13px !important;
  color: #8e2445 !important;
  background: #f5e4e2 !important;
}

.detail-section-heading > span:last-child { display: grid !important; gap: 4px !important; }
.detail-section-heading small { color: #9b3150 !important; font-size: 7px !important; font-weight: 900 !important; letter-spacing: .15em !important; }
.detail-section-heading h2 { margin: 0 !important; color: #342621 !important; font-family: Georgia, "Times New Roman", serif !important; font-size: 24px !important; font-weight: 500 !important; line-height: 1 !important; letter-spacing: -.025em !important; }
.detail-info-section > p { margin: 0 !important; color: #6d5c55 !important; font-size: 11px !important; line-height: 1.58 !important; }

html body .detail-sheet-v2 .ingredient-row {
  width: 100% !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 9px !important;
  overflow: visible !important;
}

html body .detail-sheet-v2 .ingredient {
  width: auto !important;
  min-width: 0 !important;
  min-height: 92px !important;
  margin: 0 !important;
  padding: 12px 8px !important;
  display: grid !important;
  justify-items: center !important;
  align-content: center !important;
  gap: 9px !important;
  border: 1px solid rgba(111, 31, 58, .09) !important;
  border-radius: 17px !important;
  color: #40302a !important;
  background: #faf2e9 !important;
  text-align: center !important;
}

html body .detail-sheet-v2 .ingredient > svg { width: 27px !important; height: 27px !important; color: #8d2747 !important; }
html body .detail-sheet-v2 .ingredient > span:last-child { font-size: 9px !important; font-weight: 800 !important; line-height: 1.2 !important; }

.detail-taste-grid { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 15px 22px !important; }
.detail-taste-item { min-width: 0 !important; display: grid !important; gap: 8px !important; }
.detail-taste-item > span { display: flex !important; justify-content: space-between !important; gap: 10px !important; }
.detail-taste-item strong { color: #493832 !important; font-size: 10px !important; }
.detail-taste-item small { color: #9b3150 !important; font-size: 9px !important; font-weight: 900 !important; }
.detail-taste-item > i { height: 7px !important; overflow: hidden !important; border-radius: 999px !important; background: #ede0d7 !important; }
.detail-taste-item > i > b { width: calc(var(--taste) * 20%) !important; height: 100% !important; display: block !important; border-radius: inherit !important; background: linear-gradient(90deg, #b44a68, #e0a56a) !important; }

.detail-information-grid { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 14px !important; }
.detail-information-grid .detail-info-section { height: calc(100% - 14px) !important; }

.detail-nutrition-grid { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 8px !important; }
.detail-nutrition-grid > span { min-height: 61px !important; padding: 11px !important; display: grid !important; align-content: center !important; gap: 4px !important; border-radius: 14px !important; background: #f7ede5 !important; }
.detail-nutrition-grid small { color: #816e66 !important; font-size: 7px !important; font-weight: 850 !important; letter-spacing: .08em !important; text-transform: uppercase !important; }
.detail-nutrition-grid strong { color: #7d1938 !important; font-family: Georgia, "Times New Roman", serif !important; font-size: 19px !important; font-weight: 600 !important; }

.detail-disclaimer { margin-top: 13px !important; color: #8b7972 !important; font-size: 8px !important; line-height: 1.5 !important; }

.detail-allergen-section { background: linear-gradient(145deg, #fff7e9, #fae8dc) !important; }
.detail-allergen-section .detail-section-heading > span:first-child { color: #a45720 !important; background: #f8ddbd !important; }
.detail-allergen-copy { display: block !important; margin-bottom: 11px !important; color: #6e3216 !important; font-family: Georgia, "Times New Roman", serif !important; font-size: 19px !important; font-weight: 600 !important; line-height: 1.15 !important; }

.detail-customization-grid { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 9px !important; }
.detail-customization-grid > div { min-width: 0 !important; min-height: 88px !important; padding: 13px !important; border: 1px solid rgba(111, 31, 58, .08) !important; border-radius: 16px !important; background: #faf1e8 !important; }
.detail-customization-grid strong { display: block !important; margin-bottom: 7px !important; color: #7c203e !important; font-size: 10px !important; }
.detail-customization-grid p { margin: 0 !important; color: #6f5e57 !important; font-size: 9px !important; line-height: 1.45 !important; }

html body .detail-sheet-v2 .related-strip {
  width: 100% !important;
  padding: 2px 2px 10px !important;
  display: flex !important;
  gap: 10px !important;
  overflow-x: auto !important;
  scroll-snap-type: x proximity !important;
  scrollbar-width: none !important;
  touch-action: pan-x !important;
}

html body .detail-sheet-v2 .related-strip::-webkit-scrollbar { display: none !important; }

html body .detail-sheet-v2 .related-card {
  flex: 0 0 238px !important;
  min-width: 238px !important;
  min-height: 84px !important;
  padding: 8px !important;
  display: grid !important;
  grid-template-columns: 68px minmax(0, 1fr) 18px !important;
  align-items: center !important;
  gap: 10px !important;
  scroll-snap-align: start !important;
  border: 1px solid rgba(111, 31, 58, .1) !important;
  border-radius: 17px !important;
  color: #382923 !important;
  background: #faf2e9 !important;
  text-align: left !important;
}

html body .detail-sheet-v2 .related-card img { width: 68px !important; height: 68px !important; border-radius: 12px !important; object-fit: cover !important; }
html body .detail-sheet-v2 .related-card > span { min-width: 0 !important; display: grid !important; gap: 6px !important; }
html body .detail-sheet-v2 .related-card strong { display: -webkit-box !important; overflow: hidden !important; font-family: Georgia, "Times New Roman", serif !important; font-size: 13px !important; line-height: 1.1 !important; -webkit-box-orient: vertical !important; -webkit-line-clamp: 2 !important; }
html body .detail-sheet-v2 .related-card small { color: #a20f2b !important; font-size: 11px !important; font-weight: 900 !important; }

.detail-branch-card {
  min-height: 82px !important;
  margin-top: 14px !important;
  padding: 15px 17px !important;
  display: grid !important;
  grid-template-columns: 42px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 12px !important;
  border: 1px solid rgba(111, 31, 58, .11) !important;
  border-radius: 20px !important;
  background: rgba(255, 253, 249, .86) !important;
}

.detail-branch-card > span:first-child { width: 42px !important; height: 42px !important; display: grid !important; place-items: center !important; border-radius: 14px !important; color: #8e2445 !important; background: #f5e4e2 !important; }
.detail-branch-card > span:last-child { min-width: 0 !important; display: grid !important; gap: 3px !important; }
.detail-branch-card small { color: #9b3150 !important; font-size: 7px !important; font-weight: 900 !important; letter-spacing: .14em !important; }
.detail-branch-card strong { color: #3b2b25 !important; font-size: 11px !important; }
.detail-branch-card em { color: #806e67 !important; font-size: 9px !important; font-style: normal !important; }

@media (max-width: 1240px) {
  html body main.page-panel.page-panel-menu .menu-list { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  html body .app-stage > .route-shell .detail-shell.detail-shell-v2 { grid-template-columns: minmax(350px, .82fr) minmax(480px, 1.18fr) !important; gap: 34px !important; }
}

@media (max-width: 820px) {
  html body .database-alert {
    width: calc(100% - 24px) !important;
    min-height: 68px !important;
    margin: 10px 12px !important;
    padding: 9px 10px !important;
    grid-template-columns: 32px minmax(0, 1fr) 86px !important;
    gap: 8px !important;
    border-radius: 14px !important;
  }

  html body .database-alert-icon { width: 32px !important; height: 32px !important; }
  html body .database-alert strong { font-size: 10px !important; }
  html body .database-alert small { font-size: 8px !important; -webkit-line-clamp: 2 !important; display: -webkit-box !important; overflow: hidden !important; -webkit-box-orient: vertical !important; }
  html body .database-alert button { min-width: 86px !important; min-height: 34px !important; padding: 0 8px !important; font-size: 8px !important; }

  /* The menu hero brand must never float into the database message. */
  html body .hero-menu .hero-menu-brand { display: none !important; }
  html body .hero-menu .hero-menu-logo { display: none !important; width: 0 !important; height: 0 !important; max-width: 0 !important; max-height: 0 !important; }
  html body .hero-menu .hero-menu-divider { display: none !important; }
  html body .hero-menu .hero-menu-head { display: block !important; }

  html body .app-stage > .route-shell main.page-panel.page-panel-menu,
  html body .app-stage > .route-shell main.page-panel.page-panel-menu:not(.is-special-list) {
    padding: 32px 14px 112px !important;
  }

  html body .page-panel-menu .menu-category-explorer {
    width: calc(100% + 28px) !important;
    margin: 0 -14px 42px !important;
    padding: 24px 14px 20px !important;
    overflow: hidden !important;
    border-width: 1px 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }

  .menu-category-explorer-head {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 15px !important;
    margin-bottom: 12px !important;
    padding-bottom: 16px !important;
  }

  .menu-category-explorer-head h2 { font-size: 33px !important; }
  .menu-category-explorer-head p { max-width: 310px !important; font-size: 9.5px !important; }

  .menu-explorer-barista {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 56px !important;
    border-radius: 16px !important;
  }

  .menu-category-swipe-hint {
    margin: 0 2px 10px !important;
    display: flex !important;
    justify-content: space-between !important;
    color: #9a6a59 !important;
    font-size: 8px !important;
    font-weight: 850 !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
  }

  html body .page-panel-menu .menu-category-carousel {
    width: calc(100% + 28px) !important;
    margin-inline: -14px !important;
    padding: 4px 14px 12px !important;
    gap: 8px !important;
    scroll-padding-inline: 14px !important;
  }

  html body .page-panel-menu .menu-category-orb {
    flex: 0 0 102px !important;
    min-width: 102px !important;
    min-height: 137px !important;
    grid-template-rows: 76px auto !important;
    gap: 8px !important;
    border-radius: 18px !important;
  }

  .menu-category-visual { width: 74px !important; height: 74px !important; }
  .menu-category-copy strong { font-size: 11.5px !important; }
  .menu-category-order { top: 4px !important; left: 5px !important; }

  html body .page-panel-menu .menu-selection-head {
    min-height: 105px !important;
    margin: 0 0 13px !important;
    padding-bottom: 17px !important;
    grid-template-columns: minmax(0, 1fr) 68px !important;
    align-items: end !important;
    gap: 12px !important;
  }

  .menu-selection-head h2 { font-size: 34px !important; }
  .menu-selection-head p { margin-top: 8px !important; display: -webkit-box !important; overflow: hidden !important; font-size: 9px !important; -webkit-box-orient: vertical !important; -webkit-line-clamp: 2 !important; }
  .menu-selection-stats { min-width: 68px !important; }
  .menu-selection-stats > strong { font-size: 39px !important; }
  .menu-selection-stats > button { max-width: 68px !important; font-size: 7px !important; text-align: right !important; }

  html body main.page-panel.page-panel-menu .menu-list { grid-template-columns: 1fr !important; gap: 11px !important; }

  html body main.page-panel.page-panel-menu .menu-list > button.menu-row {
    min-height: 158px !important;
    grid-template-columns: 116px minmax(0, 1fr) !important;
    border-radius: 20px !important;
  }

  html body main.page-panel.page-panel-menu .menu-list > button.menu-row > .menu-thumb {
    width: 116px !important;
    min-width: 116px !important;
    border-radius: 19px 0 0 19px !important;
  }

  html body main.page-panel.page-panel-menu .menu-list > button.menu-row > .menu-row-copy { padding: 13px 12px 2px !important; }
  .menu-row-kicker { margin-bottom: 6px !important; font-size: 6.5px !important; }
  html body main.page-panel.page-panel-menu button.menu-row .menu-title { font-size: 16px !important; }
  html body main.page-panel.page-panel-menu button.menu-row .menu-desc { min-height: 31px !important; margin-top: 6px !important; font-size: 8.5px !important; line-height: 1.35 !important; -webkit-line-clamp: 2 !important; }
  html body main.page-panel.page-panel-menu button.menu-row .menu-row-meta { margin-top: 7px !important; }
  html body main.page-panel.page-panel-menu .menu-list > button.menu-row > .menu-row-side { padding: 3px 12px 11px !important; }
  html body main.page-panel.page-panel-menu button.menu-row .menu-row-side > .price { font-size: 17px !important; }
  .menu-row-side > small b { display: none !important; }

  html body .app-stage > .route-shell .detail-shell.detail-shell-v2 {
    width: 100% !important;
    padding: 0 0 112px !important;
    display: block !important;
    background: var(--mm4-vanilla, #fff8ed) !important;
  }

  html body .detail-media.detail-media-v2 {
    width: 100% !important;
    height: 44svh !important;
    min-height: 340px !important;
    position: relative !important;
    top: auto !important;
    border-radius: 0 0 30px 30px !important;
  }

  html body .detail-media.detail-media-v2 .back-btn { top: 14px !important; left: 14px !important; width: 44px !important; height: 44px !important; }
  .detail-media-label { left: 18px !important; right: 18px !important; bottom: 32px !important; }

  html body .detail-sheet.detail-sheet-v2 {
    position: relative !important;
    z-index: 3 !important;
    width: calc(100% - 24px) !important;
    margin: -18px 12px 0 !important;
    padding: 25px 14px 0 !important;
    border: 1px solid rgba(111, 31, 58, .1) !important;
    border-bottom: 0 !important;
    border-radius: 27px 27px 0 0 !important;
    background: var(--mm4-vanilla, #fff8ed) !important;
  }

  .detail-intro { padding: 0 1px 22px !important; }
  html body .detail-sheet-v2 .detail-heading { gap: 12px !important; }
  html body .detail-sheet-v2 .detail-heading h1 { font-size: 36px !important; }
  html body .detail-sheet-v2 .detail-heading .price { font-size: 25px !important; }
  html body .detail-sheet-v2 .detail-desc { margin-top: 14px !important; font-size: 11px !important; line-height: 1.55 !important; }
  html body .detail-sheet-v2 .detail-primary-actions { grid-template-columns: minmax(0, 1fr) 46px 46px !important; }
  html body .detail-sheet-v2 .detail-barista-btn { min-height: 48px !important; font-size: 9px !important; }
  html body .detail-sheet-v2 .detail-icon-action { width: 46px !important; min-height: 48px !important; }

  .detail-quick-facts { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 8px !important; }
  .detail-fact { min-height: 82px !important; padding: 11px !important; }
  .detail-fact > span:first-child { width: 29px !important; height: 29px !important; }

  .detail-info-section { margin-top: 11px !important; padding: 18px 15px !important; border-radius: 20px !important; }
  .detail-section-heading { margin-bottom: 15px !important; }
  .detail-section-heading h2 { font-size: 22px !important; }

  html body .detail-sheet-v2 .ingredient-row { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 7px !important; }
  html body .detail-sheet-v2 .ingredient { min-height: 84px !important; padding: 10px 6px !important; }
  .detail-taste-grid { grid-template-columns: 1fr !important; gap: 13px !important; }
  .detail-information-grid { grid-template-columns: 1fr !important; gap: 0 !important; }
  .detail-information-grid .detail-info-section { height: auto !important; }
  .detail-customization-grid { grid-template-columns: 1fr !important; }
  html body .detail-sheet-v2 .related-card { flex-basis: 232px !important; min-width: 232px !important; }
  .detail-branch-card { margin-bottom: 14px !important; }
}

@media (max-width: 380px) {
  html body .database-alert { grid-template-columns: 30px minmax(0, 1fr) 76px !important; }
  html body .database-alert button { min-width: 76px !important; padding-inline: 5px !important; font-size: 7.5px !important; }
  html body .page-panel-menu .menu-category-orb { flex-basis: 98px !important; min-width: 98px !important; }
  html body main.page-panel.page-panel-menu .menu-list > button.menu-row { grid-template-columns: 108px minmax(0, 1fr) !important; }
  html body main.page-panel.page-panel-menu .menu-list > button.menu-row > .menu-thumb { width: 108px !important; min-width: 108px !important; }
  html body .detail-sheet-v2 .detail-heading h1 { font-size: 33px !important; }
  html body .detail-sheet-v2 .ingredient-row { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}

@media (prefers-reduced-motion: reduce) {
  html body .page-panel-menu .menu-category-orb,
  html body main.page-panel.page-panel-menu .menu-list > button.menu-row,
  html body main.page-panel.page-panel-menu .menu-list > button.menu-row > .menu-thumb img {
    transition: none !important;
  }
}


/* assets/css/mm-coffee-compact-guide-v450.css */
/* M&M COFFEE v4.5 — compact product detail and useful coffee guide. */

:root {
  --mm45-ink: #30231f;
  --mm45-muted: #74645d;
  --mm45-wine: #861f40;
  --mm45-rose: #b63c61;
  --mm45-cream: #fff8ed;
  --mm45-paper: #fffdf9;
  --mm45-line: rgba(75, 45, 37, .14);
  --mm45-gold: #d89b63;
}

/* Product detail: one continuous editorial sheet instead of nested cards. */
html body .app-stage > .route-shell .detail-shell.detail-shell-v2 {
  width: min(100%, 1440px) !important;
  max-width: 1440px !important;
  padding: 38px clamp(22px, 4.8vw, 68px) 132px !important;
  grid-template-columns: minmax(390px, .84fr) minmax(520px, 1.16fr) !important;
  gap: clamp(36px, 4vw, 62px) !important;
}

html body .detail-media.detail-media-v2 {
  height: min(610px, calc(100dvh - 122px)) !important;
  border-radius: 26px !important;
  box-shadow: 0 22px 52px rgba(55, 32, 26, .12) !important;
}

html body .detail-sheet.detail-sheet-v2 { max-width: 760px !important; }

html body .detail-sheet-v2 .detail-intro {
  padding: 4px 0 22px !important;
  border-bottom: 0 !important;
}

html body .detail-sheet-v2 .detail-heading h1 {
  font-size: clamp(40px, 4.25vw, 64px) !important;
}

html body .detail-sheet-v2 .detail-heading .price {
  font-size: clamp(25px, 2.4vw, 34px) !important;
}

html body .detail-sheet-v2 .detail-desc {
  margin-top: 14px !important;
  font-size: 12px !important;
  line-height: 1.55 !important;
}

html body .detail-sheet-v2 .detail-primary-actions { margin-top: 18px !important; }

.detail-compact-signals {
  width: 100% !important;
  min-width: 0 !important;
  padding: 13px 0 !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  border-top: 1px solid var(--mm45-line) !important;
  border-bottom: 1px solid var(--mm45-line) !important;
}

.detail-compact-signals > span {
  min-width: 0 !important;
  padding: 0 12px !important;
  display: grid !important;
  grid-template-columns: 19px minmax(0, 1fr) !important;
  align-items: center !important;
  column-gap: 7px !important;
  border-right: 1px solid var(--mm45-line) !important;
}

.detail-compact-signals > span:first-child { padding-left: 0 !important; }
.detail-compact-signals > span:last-child { padding-right: 0 !important; border-right: 0 !important; }
.detail-compact-signals svg { grid-row: 1 / span 2 !important; color: var(--mm45-wine) !important; }
.detail-compact-signals small { overflow: hidden !important; color: #9b6a71 !important; font-size: 6.5px !important; font-weight: 900 !important; letter-spacing: .1em !important; text-overflow: ellipsis !important; text-transform: uppercase !important; white-space: nowrap !important; }
.detail-compact-signals strong { display: block !important; overflow: hidden !important; color: var(--mm45-ink) !important; font-size: 9px !important; line-height: 1.25 !important; text-overflow: ellipsis !important; white-space: nowrap !important; }

.detail-safety-line {
  min-width: 0 !important;
  padding: 12px 0 !important;
  display: grid !important;
  grid-template-columns: 28px minmax(0, auto) minmax(160px, 1fr) !important;
  align-items: center !important;
  gap: 9px !important;
  border-bottom: 1px solid var(--mm45-line) !important;
  color: #7a391d !important;
}

.detail-safety-line > span:first-child { width: 28px !important; height: 28px !important; display: grid !important; place-items: center !important; border-radius: 50% !important; color: #a55d28 !important; background: #fae7c9 !important; }
.detail-safety-line > span:nth-child(2) { min-width: 0 !important; display: grid !important; gap: 1px !important; }
.detail-safety-line small { color: #aa6f3d !important; font-size: 6px !important; font-weight: 900 !important; letter-spacing: .12em !important; }
.detail-safety-line strong { overflow: hidden !important; font-family: Georgia, "Times New Roman", serif !important; font-size: 13px !important; text-overflow: ellipsis !important; white-space: nowrap !important; }
.detail-safety-line em { color: #8a7165 !important; font-size: 8px !important; font-style: normal !important; line-height: 1.35 !important; text-align: right !important; }

.detail-essentials {
  display: grid !important;
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr) !important;
  border-bottom: 1px solid var(--mm45-line) !important;
}

.detail-compact-block {
  min-width: 0 !important;
  padding: 22px 0 !important;
}

.detail-compact-block + .detail-compact-block {
  margin-left: 26px !important;
  padding-left: 26px !important;
  border-left: 1px solid var(--mm45-line) !important;
}

.detail-compact-heading { margin-bottom: 14px !important; }
.detail-compact-heading small { display: block !important; margin-bottom: 4px !important; color: #9b3150 !important; font-size: 6.5px !important; font-weight: 900 !important; letter-spacing: .14em !important; }
.detail-compact-heading h2 { margin: 0 !important; color: var(--mm45-ink) !important; font-family: Georgia, "Times New Roman", serif !important; font-size: 23px !important; font-weight: 500 !important; line-height: 1 !important; }

.detail-ingredient-flow {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 7px 10px !important;
}

.detail-ingredient-flow > span {
  min-width: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  color: #584741 !important;
  font-size: 9px !important;
  font-weight: 750 !important;
  line-height: 1.25 !important;
}

.detail-ingredient-flow svg { flex: 0 0 auto !important; color: var(--mm45-wine) !important; }
.detail-taste-grid { grid-template-columns: 1fr !important; gap: 9px !important; }
.detail-taste-item { gap: 5px !important; }
.detail-taste-item strong { font-size: 8.5px !important; }
.detail-taste-item small { font-size: 8px !important; }
.detail-taste-item > i { height: 5px !important; }

.detail-disclosure-list { border-bottom: 1px solid var(--mm45-line) !important; }

.detail-disclosure {
  border: 0 !important;
  border-bottom: 1px solid var(--mm45-line) !important;
  background: transparent !important;
}

.detail-disclosure:last-child { border-bottom: 0 !important; }
.detail-disclosure > summary { list-style: none !important; }
.detail-disclosure > summary::-webkit-details-marker { display: none !important; }

.detail-disclosure > summary {
  min-height: 62px !important;
  padding: 10px 0 !important;
  display: grid !important;
  grid-template-columns: 28px minmax(120px, auto) minmax(120px, 1fr) 28px !important;
  align-items: center !important;
  gap: 10px !important;
  cursor: pointer !important;
}

.detail-disclosure > summary > span { color: #b24a68 !important; font-size: 8px !important; font-weight: 900 !important; }
.detail-disclosure > summary > strong { color: var(--mm45-ink) !important; font-family: Georgia, "Times New Roman", serif !important; font-size: 16px !important; font-weight: 500 !important; }
.detail-disclosure > summary > small { color: #8a7770 !important; font-size: 8px !important; }
.detail-disclosure > summary > i { width: 27px !important; height: 27px !important; display: grid !important; place-items: center !important; border: 1px solid rgba(111, 31, 58, .14) !important; border-radius: 50% !important; color: var(--mm45-wine) !important; font-size: 17px !important; font-style: normal !important; transition: transform .2s ease !important; }
.detail-disclosure[open] > summary > i { transform: rotate(45deg) !important; }

.detail-disclosure-body {
  padding: 0 38px 18px !important;
  color: #6d5c55 !important;
}

.detail-disclosure-body > p { margin: 0 !important; font-size: 9px !important; line-height: 1.58 !important; }
.detail-nutrition-table { margin: 0 !important; display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; column-gap: 26px !important; }
.detail-nutrition-table > div { min-height: 36px !important; display: flex !important; align-items: center !important; justify-content: space-between !important; gap: 12px !important; border-bottom: 1px dashed rgba(75, 45, 37, .15) !important; }
.detail-nutrition-table dt { color: #7d6b64 !important; font-size: 8px !important; }
.detail-nutrition-table dd { margin: 0 !important; color: #77213c !important; font-family: Georgia, "Times New Roman", serif !important; font-size: 14px !important; font-weight: 600 !important; }
.detail-disclosure-body .detail-disclaimer { margin-top: 12px !important; font-size: 7.5px !important; }

.detail-customization-flow { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 12px 24px !important; }
.detail-customization-flow > div { min-width: 0 !important; }
.detail-customization-flow strong { display: block !important; margin-bottom: 4px !important; color: #7c203e !important; font-size: 9px !important; }
.detail-customization-flow p { margin: 0 !important; color: #6f5e57 !important; font-size: 8.5px !important; line-height: 1.45 !important; }

.detail-pairing-compact { padding: 22px 0 12px !important; border-bottom: 1px solid var(--mm45-line) !important; }
html body .detail-sheet-v2 .detail-pairing-compact .related-strip { padding-bottom: 5px !important; }
html body .detail-sheet-v2 .detail-pairing-compact .related-card {
  flex-basis: 214px !important;
  min-width: 214px !important;
  min-height: 72px !important;
  grid-template-columns: 56px minmax(0, 1fr) 15px !important;
  padding: 6px !important;
  border-color: transparent !important;
  border-radius: 14px !important;
  background: #f8efe6 !important;
}

html body .detail-sheet-v2 .detail-pairing-compact .related-card img { width: 56px !important; height: 56px !important; border-radius: 10px !important; }
html body .detail-sheet-v2 .detail-pairing-compact .related-card strong { font-size: 12px !important; }

.detail-branch-line {
  min-height: 58px !important;
  padding: 12px 0 !important;
  display: grid !important;
  grid-template-columns: 24px minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 9px !important;
  color: var(--mm45-wine) !important;
}

.detail-branch-line > span { min-width: 0 !important; display: grid !important; gap: 2px !important; }
.detail-branch-line small { color: #9b6a71 !important; font-size: 6px !important; font-weight: 900 !important; letter-spacing: .12em !important; }
.detail-branch-line strong { overflow: hidden !important; color: var(--mm45-ink) !important; font-size: 9px !important; text-overflow: ellipsis !important; white-space: nowrap !important; }
.detail-branch-line em { color: #7c6a63 !important; font-size: 8px !important; font-style: normal !important; }

/* Coffee guide replaces the passive story page. */
.guide-page {
  width: min(100%, 1450px) !important;
  margin: 0 auto !important;
  padding: 40px clamp(24px, 4.8vw, 68px) 150px !important;
  color: var(--mm45-ink) !important;
  background: var(--mm45-cream) !important;
}

.guide-hero {
  height: min(560px, calc(100dvh - 142px)) !important;
  min-height: 470px !important;
  position: relative !important;
  overflow: hidden !important;
  border-radius: 32px !important;
  background: #32151d !important;
}

.guide-hero > img { width: 100% !important; height: 100% !important; object-fit: cover !important; }
.guide-hero-shade { position: absolute !important; inset: 0 !important; background: linear-gradient(90deg, rgba(43, 17, 24, .94) 0%, rgba(77, 20, 40, .76) 48%, rgba(54, 22, 25, .18) 100%) !important; }

.guide-back {
  position: absolute !important;
  top: 22px !important;
  left: 22px !important;
  z-index: 2 !important;
  width: 44px !important;
  height: 44px !important;
  display: grid !important;
  place-items: center !important;
  border: 1px solid rgba(255, 255, 255, .28) !important;
  border-radius: 50% !important;
  color: #fff !important;
  background: rgba(255, 255, 255, .1) !important;
  backdrop-filter: blur(10px) !important;
}

.guide-hero-copy {
  position: absolute !important;
  left: clamp(36px, 6vw, 88px) !important;
  bottom: clamp(42px, 7vw, 84px) !important;
  z-index: 2 !important;
  width: min(600px, 58%) !important;
  color: #fffaf3 !important;
}

.guide-hero-copy > b { color: #edb375 !important; font-size: 8px !important; letter-spacing: .2em !important; }
.guide-hero-copy h1 { margin: 12px 0 17px !important; font-family: Georgia, "Times New Roman", serif !important; font-size: clamp(48px, 6vw, 80px) !important; font-weight: 500 !important; line-height: .92 !important; letter-spacing: -.06em !important; }
.guide-hero-copy p { width: min(520px, 100%) !important; margin: 0 !important; color: rgba(255, 250, 243, .76) !important; font-size: 12px !important; line-height: 1.6 !important; }
.guide-hero-copy > div { margin-top: 24px !important; display: flex !important; flex-wrap: wrap !important; gap: 9px !important; }
.guide-hero-copy button { min-height: 48px !important; padding: 0 20px !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; gap: 8px !important; border: 1px solid rgba(255, 255, 255, .2) !important; border-radius: 15px !important; color: #fff !important; background: rgba(255, 255, 255, .1) !important; font-size: 9px !important; font-weight: 850 !important; backdrop-filter: blur(10px) !important; }
.guide-hero-copy button:first-child { color: #6c1e37 !important; background: #fff8ed !important; }

.guide-section { padding: 76px 0 70px !important; border-bottom: 1px solid var(--mm45-line) !important; }
.guide-section-head { margin-bottom: 34px !important; display: grid !important; grid-template-columns: minmax(0, 1fr) minmax(260px, .62fr) !important; align-items: end !important; gap: 36px !important; }
.guide-section-head b { color: #a62f51 !important; font-size: 7px !important; font-weight: 900 !important; letter-spacing: .16em !important; }
.guide-section-head h2 { margin: 8px 0 0 !important; font-family: Georgia, "Times New Roman", serif !important; font-size: clamp(36px, 4.1vw, 58px) !important; font-weight: 500 !important; line-height: .96 !important; letter-spacing: -.045em !important; }
.guide-section-head > p { max-width: 470px !important; margin: 0 !important; color: var(--mm45-muted) !important; font-size: 10px !important; line-height: 1.55 !important; }

.guide-taste-list { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; column-gap: 44px !important; }
.guide-taste-list button { min-height: 92px !important; padding: 17px 0 !important; display: grid !important; grid-template-columns: 34px minmax(130px, .52fr) minmax(150px, 1fr) 24px !important; align-items: center !important; gap: 12px !important; border: 0 !important; border-top: 1px solid var(--mm45-line) !important; color: var(--mm45-ink) !important; background: transparent !important; text-align: left !important; }
.guide-taste-list button:nth-last-child(-n+2) { border-bottom: 1px solid var(--mm45-line) !important; }
.guide-taste-list button > span { color: #b54968 !important; font-size: 8px !important; font-weight: 900 !important; }
.guide-taste-list button > strong { font-family: Georgia, "Times New Roman", serif !important; font-size: 18px !important; font-weight: 500 !important; }
.guide-taste-list button > small { color: var(--mm45-muted) !important; font-size: 9px !important; }
.guide-taste-list button > i { color: var(--mm45-wine) !important; font-size: 16px !important; font-style: normal !important; text-align: right !important; }

.guide-method-list { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 13px !important; }
.guide-method-list button { min-height: 222px !important; padding: 22px !important; display: grid !important; grid-template-columns: 1fr 24px !important; grid-template-rows: auto 1fr !important; border: 1px solid rgba(111, 31, 58, .1) !important; border-radius: 26px !important; color: var(--mm45-ink) !important; background: #f8e8e4 !important; text-align: left !important; }
.guide-method-list button:nth-child(2) { background: #f4e2ca !important; }
.guide-method-list button:nth-child(3) { background: #dce7d5 !important; }
.guide-method-no { color: #a22d50 !important; font-size: 8px !important; font-weight: 900 !important; }
.guide-method-copy { align-self: end !important; display: grid !important; gap: 7px !important; }
.guide-method-copy small { color: #9a6a59 !important; font-size: 7px !important; font-weight: 900 !important; letter-spacing: .1em !important; }
.guide-method-copy strong { font-family: Georgia, "Times New Roman", serif !important; font-size: 26px !important; font-weight: 500 !important; line-height: 1 !important; }
.guide-method-copy em { color: #77635c !important; font-size: 9px !important; font-style: normal !important; }
.guide-method-list button > i { grid-column: 2 !important; grid-row: 1 / span 2 !important; align-self: end !important; color: var(--mm45-wine) !important; }

.guide-barista-callout { min-height: 190px !important; margin: 70px 0 0 !important; padding: 34px 38px !important; display: grid !important; grid-template-columns: 58px minmax(0, 1fr) auto !important; align-items: center !important; gap: 24px !important; border-radius: 28px !important; color: #fff9f1 !important; background: linear-gradient(125deg, #401721, #84213f 66%, #a93658) !important; box-shadow: 0 24px 54px rgba(81, 24, 42, .15) !important; }
.guide-barista-callout > span { width: 56px !important; height: 56px !important; position: relative !important; display: grid !important; place-items: center !important; border: 1px solid rgba(255, 255, 255, .22) !important; border-radius: 50% !important; }
.guide-barista-callout > span i { position: absolute !important; top: -1px !important; right: 0 !important; color: #efb473 !important; }
.guide-barista-callout b { color: #edb375 !important; font-size: 7px !important; letter-spacing: .15em !important; }
.guide-barista-callout h2 { margin: 6px 0 7px !important; font-family: Georgia, "Times New Roman", serif !important; font-size: 31px !important; font-weight: 500 !important; line-height: 1 !important; }
.guide-barista-callout p { margin: 0 !important; color: rgba(255, 249, 241, .7) !important; font-size: 9px !important; }
.guide-barista-callout > button { min-height: 48px !important; padding: 0 20px !important; display: inline-flex !important; align-items: center !important; gap: 8px !important; border: 0 !important; border-radius: 15px !important; color: #6e203a !important; background: #fff8ed !important; font-size: 9px !important; font-weight: 850 !important; }

.guide-visit-layout { display: grid !important; grid-template-columns: minmax(300px, .72fr) minmax(500px, 1.28fr) !important; gap: 28px !important; }
.guide-visit-info { min-width: 0 !important; padding: 10px 28px 10px 0 !important; display: grid !important; align-content: center !important; border-right: 1px solid var(--mm45-line) !important; }
.guide-visit-info > span { min-height: 64px !important; padding: 12px 0 !important; display: grid !important; align-content: center !important; gap: 5px !important; border-bottom: 1px solid var(--mm45-line) !important; }
.guide-visit-info small { color: #a23858 !important; font-size: 6.5px !important; font-weight: 900 !important; letter-spacing: .14em !important; }
.guide-visit-info strong { color: var(--mm45-ink) !important; font-family: Georgia, "Times New Roman", serif !important; font-size: 17px !important; font-weight: 500 !important; }
.guide-visit-info a { min-height: 46px !important; margin-top: 16px !important; padding: 0 17px !important; display: flex !important; align-items: center !important; justify-content: space-between !important; border-radius: 14px !important; color: #fff !important; background: var(--mm45-wine) !important; font-size: 9px !important; font-weight: 850 !important; text-decoration: none !important; }
.guide-gallery { min-width: 0 !important; display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)) !important; grid-template-rows: repeat(2, 155px) !important; gap: 8px !important; }
.guide-gallery button { min-width: 0 !important; overflow: hidden !important; border: 0 !important; border-radius: 18px !important; background: #eaded3 !important; }
.guide-gallery button:first-child { grid-column: span 2 !important; grid-row: span 2 !important; }
.guide-gallery img { width: 100% !important; height: 100% !important; object-fit: cover !important; transition: transform .35s ease !important; }
.guide-gallery button:hover img { transform: scale(1.035) !important; }

.guide-story-note { min-height: 104px !important; padding: 22px 0 !important; display: grid !important; grid-template-columns: 54px minmax(0, 1fr) auto !important; align-items: center !important; gap: 18px !important; border-bottom: 1px solid var(--mm45-line) !important; }
.guide-story-note > img { width: 54px !important; height: 54px !important; object-fit: contain !important; }
.guide-story-note > span { min-width: 0 !important; display: grid !important; gap: 5px !important; }
.guide-story-note b { color: #a23858 !important; font-size: 6.5px !important; letter-spacing: .14em !important; }
.guide-story-note p { max-width: 720px !important; margin: 0 !important; color: var(--mm45-muted) !important; font-size: 9px !important; line-height: 1.5 !important; }
.guide-story-note a { display: inline-flex !important; align-items: center !important; gap: 7px !important; color: var(--mm45-wine) !important; font-size: 9px !important; font-weight: 850 !important; text-decoration: none !important; }

@media (max-width: 1100px) {
  html body .app-stage > .route-shell .detail-shell.detail-shell-v2 { grid-template-columns: minmax(340px, .78fr) minmax(480px, 1.22fr) !important; gap: 32px !important; }
  .guide-visit-layout { grid-template-columns: minmax(260px, .65fr) minmax(430px, 1.35fr) !important; }
}

@media (max-width: 820px) {
  html body .app-stage > .route-shell .detail-shell.detail-shell-v2 { padding: 0 0 108px !important; }
  html body .detail-media.detail-media-v2 { height: 34svh !important; min-height: 250px !important; max-height: 305px !important; border-radius: 0 0 25px 25px !important; }
  .detail-media-label { bottom: 25px !important; }
  .detail-media-label strong { font-size: 20px !important; }

  html body .detail-sheet.detail-sheet-v2 {
    width: calc(100% - 20px) !important;
    margin: -15px 10px 0 !important;
    padding: 21px 12px 0 !important;
    border-radius: 24px 24px 0 0 !important;
  }

  html body .detail-sheet-v2 .detail-intro { padding-bottom: 17px !important; }
  .detail-kicker { margin-bottom: 10px !important; }
  html body .detail-sheet-v2 .detail-heading h1 { font-size: 32px !important; }
  html body .detail-sheet-v2 .detail-heading .price { font-size: 23px !important; }
  html body .detail-sheet-v2 .detail-desc { margin-top: 10px !important; font-size: 9.5px !important; line-height: 1.45 !important; }
  html body .detail-sheet-v2 .detail-primary-actions { margin-top: 14px !important; grid-template-columns: minmax(0, 1fr) 44px 44px !important; gap: 7px !important; }
  html body .detail-sheet-v2 .detail-barista-btn { min-height: 44px !important; border-radius: 14px !important; }
  html body .detail-sheet-v2 .detail-icon-action { width: 44px !important; min-height: 44px !important; border-radius: 14px !important; }

  .detail-compact-signals { padding: 10px 0 !important; }
  .detail-compact-signals > span { padding: 0 7px !important; grid-template-columns: 15px minmax(0, 1fr) !important; column-gap: 4px !important; }
  .detail-compact-signals svg { width: 14px !important; height: 14px !important; }
  .detail-compact-signals small { font-size: 5.5px !important; }
  .detail-compact-signals strong { font-size: 7.2px !important; }

  .detail-safety-line { grid-template-columns: 27px minmax(0, 1fr) !important; padding: 10px 0 !important; gap: 8px !important; }
  .detail-safety-line > em { grid-column: 2 !important; font-size: 7px !important; text-align: left !important; }
  .detail-safety-line strong { font-size: 12px !important; white-space: normal !important; }

  .detail-essentials { grid-template-columns: 1fr !important; }
  .detail-compact-block { padding: 18px 0 !important; }
  .detail-compact-block + .detail-compact-block { margin: 0 !important; padding-left: 0 !important; border-top: 1px solid var(--mm45-line) !important; border-left: 0 !important; }
  .detail-compact-heading { margin-bottom: 12px !important; }
  .detail-compact-heading h2 { font-size: 21px !important; }
  .detail-ingredient-flow { gap: 7px 12px !important; }
  .detail-ingredient-flow > span { font-size: 8.5px !important; }
  .detail-taste-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 10px 16px !important; }

  .detail-disclosure > summary { min-height: 58px !important; grid-template-columns: 23px minmax(105px, 1fr) 28px !important; gap: 8px !important; }
  .detail-disclosure > summary > strong { font-size: 15px !important; }
  .detail-disclosure > summary > small { display: none !important; }
  .detail-disclosure-body { padding: 0 31px 16px !important; }
  .detail-nutrition-table { grid-template-columns: 1fr !important; }
  .detail-customization-flow { grid-template-columns: 1fr !important; gap: 11px !important; }
  .detail-pairing-compact { padding-top: 18px !important; }
  html body .detail-sheet-v2 .detail-pairing-compact .related-card { flex-basis: 194px !important; min-width: 194px !important; }
  .detail-branch-line { margin-bottom: 10px !important; }

  .guide-page { width: 100% !important; padding: 0 0 112px !important; }
  .guide-hero { width: 100% !important; height: 520px !important; min-height: 520px !important; border-radius: 0 0 28px 28px !important; }
  .guide-hero-shade { background: linear-gradient(0deg, rgba(43, 17, 24, .96) 0%, rgba(75, 20, 40, .69) 59%, rgba(40, 18, 22, .18) 100%) !important; }
  .guide-back { top: 14px !important; left: 14px !important; }
  .guide-hero-copy { left: 18px !important; right: 18px !important; bottom: 35px !important; width: auto !important; }
  .guide-hero-copy h1 { margin: 10px 0 15px !important; font-size: 47px !important; }
  .guide-hero-copy p { font-size: 10px !important; }
  .guide-hero-copy > div { margin-top: 19px !important; display: grid !important; grid-template-columns: 1fr !important; }
  .guide-hero-copy button { width: 100% !important; min-height: 45px !important; }

  .guide-section { padding: 48px 14px 44px !important; }
  .guide-section-head { margin-bottom: 24px !important; grid-template-columns: 1fr !important; gap: 12px !important; }
  .guide-section-head h2 { font-size: 36px !important; }
  .guide-section-head > p { max-width: 330px !important; font-size: 9px !important; }
  .guide-taste-list { grid-template-columns: 1fr !important; }
  .guide-taste-list button { min-height: 76px !important; grid-template-columns: 26px minmax(0, 1fr) 22px !important; gap: 9px !important; }
  .guide-taste-list button:nth-last-child(-n+2) { border-bottom: 0 !important; }
  .guide-taste-list button:last-child { border-bottom: 1px solid var(--mm45-line) !important; }
  .guide-taste-list button > strong { font-size: 16px !important; }
  .guide-taste-list button > small { grid-column: 2 !important; margin-top: -17px !important; font-size: 8px !important; }
  .guide-taste-list button > i { grid-column: 3 !important; grid-row: 1 / span 2 !important; }

  .guide-method-list { width: calc(100% + 28px) !important; margin-inline: -14px !important; padding: 2px 14px 10px !important; display: flex !important; gap: 9px !important; overflow-x: auto !important; scroll-snap-type: x proximity !important; scrollbar-width: none !important; }
  .guide-method-list::-webkit-scrollbar { display: none !important; }
  .guide-method-list button { flex: 0 0 72vw !important; min-height: 190px !important; scroll-snap-align: start !important; border-radius: 22px !important; }
  .guide-method-copy strong { font-size: 24px !important; }

  .guide-barista-callout { min-height: 0 !important; margin: 44px 14px 0 !important; padding: 26px 20px !important; grid-template-columns: 48px minmax(0, 1fr) !important; gap: 15px !important; border-radius: 24px !important; }
  .guide-barista-callout > span { width: 48px !important; height: 48px !important; }
  .guide-barista-callout h2 { font-size: 25px !important; }
  .guide-barista-callout p { font-size: 8px !important; line-height: 1.45 !important; }
  .guide-barista-callout > button { grid-column: 1 / -1 !important; width: 100% !important; justify-content: center !important; }

  .guide-visit-layout { grid-template-columns: 1fr !important; gap: 22px !important; }
  .guide-visit-info { padding: 0 !important; border-right: 0 !important; }
  .guide-visit-info > span { min-height: 57px !important; }
  .guide-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; grid-template-rows: repeat(2, 125px) !important; gap: 7px !important; }
  .guide-gallery button:first-child { grid-column: auto !important; grid-row: auto !important; }
  .guide-gallery button { border-radius: 15px !important; }

  .guide-story-note { margin: 0 14px !important; padding: 20px 0 !important; grid-template-columns: 42px minmax(0, 1fr) !important; gap: 13px !important; }
  .guide-story-note > img { width: 42px !important; height: 42px !important; }
  .guide-story-note p { display: -webkit-box !important; overflow: hidden !important; font-size: 8px !important; -webkit-box-orient: vertical !important; -webkit-line-clamp: 3 !important; }
  .guide-story-note > a { grid-column: 2 !important; }
}

@media (max-width: 380px) {
  html body .detail-sheet-v2 .detail-heading h1 { font-size: 29px !important; }
  .detail-compact-signals > span { padding-inline: 5px !important; }
  .detail-compact-signals strong { font-size: 6.7px !important; }
  .detail-taste-grid { grid-template-columns: 1fr !important; }
  .guide-hero-copy h1 { font-size: 43px !important; }
}

@media (prefers-reduced-motion: reduce) {
  .detail-disclosure > summary > i,
  .guide-gallery img { transition: none !important; }
}


/* assets/css/mm-coffee-admin-ux-v460.css */
/* M&M COFFEE v4.6 — tested admin login, navigation and compact catalogue workflow. */

html body .admin-stage:has(> .admin-login) {
  min-height: 100dvh !important;
  padding: clamp(18px, 4vw, 56px) !important;
  display: grid !important;
  place-items: center !important;
  background:
    radial-gradient(circle at 12% 10%, rgba(161, 42, 75, .14), transparent 27%),
    radial-gradient(circle at 88% 92%, rgba(222, 150, 87, .18), transparent 29%),
    #f7efe5 !important;
}

html body .admin-stage > .admin-login {
  width: min(100%, 510px) !important;
  margin: 0 !important;
  padding: clamp(26px, 4vw, 42px) !important;
  overflow: hidden !important;
  position: relative !important;
  border: 1px solid rgba(83, 45, 35, .12) !important;
  border-radius: 30px !important;
  color: #35231e !important;
  background:
    linear-gradient(145deg, rgba(255, 253, 248, .98), rgba(252, 242, 232, .98)) !important;
  box-shadow: 0 32px 78px rgba(61, 31, 25, .16) !important;
}

html body .admin-stage > .admin-login::after {
  content: "";
  width: 170px;
  height: 170px;
  position: absolute;
  top: -90px;
  right: -70px;
  z-index: 0;
  border-radius: 50%;
  background: rgba(157, 49, 82, .09);
  pointer-events: none;
}

html body .admin-login > * {
  position: relative;
  z-index: 1;
}

html body .admin-login-kicker {
  display: inline-flex;
  margin-bottom: 22px;
  color: #9d3152;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: .14em;
}

html body .admin-login .brand-mark {
  min-height: 58px !important;
  margin: 0 0 20px !important;
}

html body .admin-login .brand-logo-img {
  width: 62px !important;
  max-width: 62px !important;
  filter: none !important;
}

html body .admin-login h1 {
  margin: 0 0 12px !important;
  color: #2f201b !important;
  font-size: clamp(32px, 5vw, 43px) !important;
  line-height: .98 !important;
}

html body .admin-login p {
  max-width: 420px !important;
  margin: 0 0 24px !important;
  color: rgba(53, 35, 30, .68) !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
}

html body .admin-login .field,
html body .admin-login .login-field {
  color: #49342d !important;
  font-size: 12px !important;
}

html body .admin-login .login-field input,
html body .admin-login .field input[type="password"],
html body .admin-login .field input[name="name"] {
  min-height: 54px !important;
  border: 1px solid rgba(83, 45, 35, .15) !important;
  border-radius: 15px !important;
  color: #2f201b !important;
  background: #fffdf9 !important;
  box-shadow: 0 8px 22px rgba(60, 35, 28, .045) !important;
}

html body .admin-login .login-field input:focus,
html body .admin-login .field input[type="password"]:focus,
html body .admin-login .field input[name="name"]:focus {
  border-color: rgba(157, 49, 82, .6) !important;
  box-shadow: 0 0 0 4px rgba(157, 49, 82, .1) !important;
}

html body .admin-login-security {
  min-height: 34px;
  display: flex;
  align-items: center;
  gap: 7px;
  margin-top: -4px;
  color: rgba(53, 35, 30, .58);
  font-size: 10px;
  font-weight: 750;
}

html body .admin-login .form-error {
  min-height: 0 !important;
  color: #9b1529 !important;
}

html body .admin-login .primary-btn {
  min-height: 54px !important;
  margin-top: 2px !important;
  color: #fff !important;
  border-radius: 15px !important;
  box-shadow: 0 15px 30px rgba(126, 7, 35, .2) !important;
}

html body .admin-login .ghost-btn {
  min-height: 44px !important;
  margin-top: 0 !important;
  border: 1px solid rgba(83, 45, 35, .1) !important;
  border-radius: 14px !important;
  color: #684b41 !important;
  background: rgba(255, 255, 255, .5) !important;
}

html body .admin-stage .admin-topbar {
  min-height: 104px !important;
  margin-bottom: 16px !important;
  padding: 18px 22px !important;
}

html body .admin-stage .admin-topbar .admin-title p {
  margin-bottom: 0 !important;
}

html body .admin-stage .product-command-shell {
  gap: 12px !important;
}

html body .admin-stage .product-command-top {
  padding: 15px 18px !important;
}

html body .admin-stage .product-command-title {
  margin-bottom: 10px !important;
}

html body .admin-stage .product-kpi-strip {
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  gap: 8px !important;
}

html body .admin-stage .product-kpi-strip article {
  min-height: 60px !important;
  padding: 10px 12px !important;
  border-radius: 14px !important;
}

html body .admin-stage .product-kpi-strip strong {
  margin-bottom: 5px !important;
  font-size: 22px !important;
}

html body .admin-stage .product-kpi-strip span {
  font-size: 10px !important;
}

html body .admin-stage .product-quality-console {
  grid-template-columns: minmax(170px, .6fr) minmax(0, 2fr) !important;
  gap: 10px !important;
  padding: 12px !important;
}

html body .admin-stage .product-quality-score,
html body .admin-stage .product-quality-actions button {
  min-height: 84px !important;
  padding: 11px 12px !important;
  border-radius: 14px !important;
}

html body .admin-stage .product-quality-score strong,
html body .admin-stage .product-quality-actions strong {
  font-size: 21px !important;
}

@media (min-width: 821px) and (max-width: 1180px) {
  html body .admin-stage .product-kpi-strip {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 820px) {
  html body .admin-stage:has(> .admin-shell) > .admin-shell > .admin-sidebar {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 70 !important;
    height: 84px !important;
    padding: 11px 12px !important;
    box-shadow: 0 10px 25px rgba(42, 21, 18, .18) !important;
  }

  html body .admin-stage:has(> .admin-shell) > .admin-shell {
    padding-top: 84px !important;
  }

  html body .admin-stage .admin-nav {
    scroll-behavior: auto !important;
    overscroll-behavior-x: contain !important;
    touch-action: pan-x !important;
    scrollbar-width: none !important;
  }

  html body .admin-stage .admin-nav::-webkit-scrollbar {
    display: none !important;
  }

  html body .admin-stage .admin-nav-btn {
    min-height: 56px !important;
    padding-inline: 12px !important;
  }

  html body .admin-stage:has(> .admin-shell) > .admin-shell > .admin-main {
    padding: 10px 10px 70px !important;
  }

  html body .admin-stage .admin-topbar {
    min-height: 0 !important;
    margin-bottom: 10px !important;
    padding: 14px !important;
    border-radius: 18px !important;
  }

  html body .admin-stage .admin-breadcrumb {
    margin-bottom: 3px !important;
    font-size: 9px !important;
  }

  html body .admin-stage .admin-title h1 {
    margin-bottom: 4px !important;
    font-size: 29px !important;
  }

  html body .admin-stage .admin-title p {
    font-size: 11px !important;
    line-height: 1.4 !important;
  }

  html body .admin-stage .admin-top-actions {
    margin-top: 11px !important;
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 6px !important;
  }

  html body .admin-stage .admin-save-status {
    grid-column: 1 / -1 !important;
    min-height: 32px !important;
    padding: 7px 10px !important;
    font-size: 9px !important;
  }

  html body .admin-stage .admin-top-actions button {
    min-width: 0 !important;
    min-height: 42px !important;
    padding: 6px !important;
    justify-content: center !important;
    gap: 4px !important;
    white-space: normal !important;
    font-size: 9px !important;
    line-height: 1.1 !important;
  }

  html body .admin-stage .product-command-top {
    padding: 13px !important;
  }

  html body .admin-stage .product-command-title {
    align-items: flex-start !important;
  }

  html body .admin-stage .product-command-title h2 {
    font-size: 19px !important;
  }

  html body .admin-stage .product-command-title p {
    font-size: 10px !important;
    line-height: 1.35 !important;
  }

  html body .admin-stage .product-command-title .primary-btn {
    min-height: 44px !important;
    padding-inline: 13px !important;
  }

  html body .admin-stage .product-kpi-strip {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 6px !important;
  }

  html body .admin-stage .product-kpi-strip article {
    min-height: 68px !important;
    padding: 10px !important;
  }

  html body .admin-stage .product-kpi-strip strong {
    font-size: 20px !important;
  }

  html body .admin-stage .product-kpi-strip span {
    font-size: 9px !important;
  }

  html body .admin-stage .product-quality-console {
    grid-template-columns: 1fr !important;
    padding: 10px !important;
  }

  html body .admin-stage .product-quality-score {
    min-height: 76px !important;
  }

  html body .admin-stage .product-quality-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 6px !important;
  }

  html body .admin-stage .product-quality-actions button {
    min-height: 72px !important;
    padding: 9px !important;
  }

  html body .admin-stage .product-quality-actions small {
    display: none !important;
  }
}

@media (max-width: 520px) {
  html body .admin-stage:has(> .admin-login) {
    padding: 12px !important;
  }

  html body .admin-stage > .admin-login {
    padding: 25px 21px !important;
    border-radius: 24px !important;
  }

  html body .admin-login-kicker {
    margin-bottom: 17px !important;
    font-size: 9px !important;
  }

  html body .admin-login h1 {
    font-size: 32px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  html body .admin-stage .admin-nav,
  html body .admin-stage .admin-nav-btn,
  html body .admin-stage .product-quality-actions button {
    scroll-behavior: auto !important;
    transition: none !important;
  }
}


/* assets/css/mm-coffee-featured-carousel-v470.css */
/* M&M COFFEE v4.7 — compact, touch-scrollable featured collection. */

.home-featured-swipe-hint {
  display: none;
}

@media (max-width: 820px) {
  html body .home-modern-panel .home-featured-section {
    margin-bottom: 54px !important;
  }

  html body .home-featured-head {
    min-height: 54px !important;
  }

  html body .home-featured-swipe-hint {
    min-height: 28px;
    margin: -5px 0 7px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    color: rgba(66, 43, 35, .56);
    font-size: 9px;
    font-weight: 850;
    letter-spacing: .08em;
    text-transform: uppercase;
  }

  html body .home-featured-swipe-hint i {
    color: #9d3152;
    font-size: 16px;
    font-style: normal;
    letter-spacing: 0;
  }

  html body .home-modern-panel .featured-grid {
    width: calc(100% + 28px) !important;
    margin-inline: -14px !important;
    padding: 4px 14px 16px !important;
    display: flex !important;
    grid-template-columns: none !important;
    gap: 12px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x proximity !important;
    scroll-padding-inline: 14px !important;
    scrollbar-width: none !important;
    overscroll-behavior-x: contain !important;
    touch-action: pan-x !important;
    -webkit-overflow-scrolling: touch;
  }

  html body .home-modern-panel .featured-grid::-webkit-scrollbar {
    display: none !important;
  }

  html body .home-modern-panel .featured-card {
    flex: 0 0 min(78vw, 292px) !important;
    min-width: 0 !important;
    height: 342px !important;
    scroll-snap-align: start !important;
    border-radius: 20px !important;
    transform: none !important;
  }

  html body .home-modern-panel .featured-card > button {
    height: 100% !important;
    grid-template-rows: 178px minmax(0, 1fr) !important;
  }

  html body .home-modern-panel .featured-media {
    min-height: 0 !important;
    height: 178px !important;
  }

  html body .home-modern-panel .featured-media img {
    transform: none !important;
    object-position: center 48% !important;
  }

  html body .home-modern-panel .featured-ribbon {
    top: 10px !important;
    left: 10px !important;
    min-height: 28px !important;
    padding: 6px 10px !important;
    font-size: 10px !important;
  }

  html body .home-modern-panel .featured-body {
    min-height: 0 !important;
    padding: 13px 14px 12px !important;
    display: grid !important;
    grid-template-rows: auto minmax(0, 1fr) auto !important;
    align-content: stretch !important;
    gap: 6px !important;
  }

  html body .home-modern-panel .featured-body h3 {
    margin: 0 !important;
    overflow: hidden !important;
    font-size: 17px !important;
    line-height: 1.15 !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  html body .home-modern-panel .featured-body p {
    margin: 0 !important;
    display: -webkit-box !important;
    overflow: hidden !important;
    color: rgba(61, 42, 35, .67) !important;
    font-size: 10px !important;
    line-height: 1.45 !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
  }

  html body .home-modern-panel .featured-body > div {
    margin: 0 !important;
    align-self: end !important;
  }

  html body .home-modern-panel .featured-body .price {
    font-size: 20px !important;
  }

  html body .home-modern-panel .featured-body b {
    width: 38px !important;
    height: 38px !important;
  }
}

@media (max-width: 420px) {
  html body .home-modern-panel .featured-card {
    flex-basis: min(77vw, 286px) !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  html body .home-modern-panel .featured-grid {
    scroll-behavior: auto !important;
  }
}


/* assets/css/mm-coffee-admin-workspace-v490.css */
/* M&M COFFEE v4.9 — responsive operations workspace and accessible admin UX. */

html body .admin-stage {
  --admin-bg: #f4ede5;
  --admin-surface: #fffdf9;
  --admin-surface-soft: #fbf5ee;
  --admin-ink: #30211d;
  --admin-muted: #79685f;
  --admin-line: rgba(68, 39, 31, .13);
  --admin-brand: #981d3f;
  --admin-brand-deep: #6f102b;
  --admin-success: #247a59;
  --admin-warning: #b76423;
  --admin-danger: #a92838;
  min-height: 100dvh !important;
  padding: 16px !important;
  color: var(--admin-ink) !important;
  background:
    radial-gradient(circle at 88% 4%, rgba(188, 96, 67, .12), transparent 28%),
    linear-gradient(145deg, #f8f1e9 0%, var(--admin-bg) 52%, #eee2d7 100%) !important;
}

html body .admin-stage *,
html body .admin-stage *::before,
html body .admin-stage *::after {
  box-sizing: border-box !important;
}

html body .admin-stage .admin-shell {
  width: 100% !important;
  max-width: none !important;
  min-height: calc(100dvh - 32px) !important;
  display: grid !important;
  grid-template-columns: 254px minmax(0, 1fr) !important;
  gap: 16px !important;
  margin: 0 !important;
}

html body .admin-stage .admin-shell.is-sidebar-compact {
  grid-template-columns: 82px minmax(0, 1fr) !important;
}

html body .admin-stage .admin-sidebar {
  width: auto !important;
  height: calc(100dvh - 32px) !important;
  min-height: 0 !important;
  position: sticky !important;
  top: 16px !important;
  z-index: 45 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
  padding: 14px !important;
  overflow: hidden !important;
  border: 1px solid rgba(255, 255, 255, .12) !important;
  border-radius: 24px !important;
  color: #fff8f0 !important;
  background:
    radial-gradient(circle at 18% 0%, rgba(255, 214, 194, .16), transparent 30%),
    linear-gradient(165deg, #482b2a 0%, #2b1b19 58%, #201411 100%) !important;
  box-shadow: 0 20px 54px rgba(48, 27, 23, .18) !important;
}

html body .admin-stage .admin-sidebar::before,
html body .admin-stage .admin-sidebar::after {
  display: none !important;
}

html body .admin-stage .admin-sidebar-head {
  min-height: 86px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 1px solid rgba(255, 255, 255, .1) !important;
  border-radius: 18px !important;
  background: rgba(255, 255, 255, .055) !important;
}

html body .admin-stage .admin-sidebar-brand {
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

html body .admin-stage .admin-sidebar .brand-mark {
  min-height: 0 !important;
  margin: 0 !important;
  gap: 4px !important;
}

html body .admin-stage .admin-sidebar .brand-logo-img {
  width: 47px !important;
  max-width: 47px !important;
  filter: brightness(0) invert(1) !important;
}

html body .admin-stage .admin-sidebar .brand-word {
  display: block !important;
  color: #fff8f0 !important;
  font-size: 9px !important;
  letter-spacing: .18em !important;
}

html body .admin-stage .admin-mobile-nav-close,
html body .admin-stage .admin-mobile-menu-btn,
html body .admin-stage .admin-nav-backdrop {
  display: none !important;
}

html body .admin-stage .admin-nav {
  min-height: 0 !important;
  flex: 1 1 auto !important;
  display: block !important;
  padding: 2px 3px 8px !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  scrollbar-width: thin !important;
  scrollbar-color: rgba(255, 255, 255, .24) transparent !important;
}

html body .admin-stage .admin-nav::-webkit-scrollbar {
  display: block !important;
  width: 4px !important;
}

html body .admin-stage .admin-nav::-webkit-scrollbar-thumb {
  border-radius: 8px !important;
  background: rgba(255, 255, 255, .24) !important;
}

html body .admin-stage .admin-nav-group {
  display: grid !important;
  gap: 3px !important;
  margin: 0 0 13px !important;
}

html body .admin-stage .admin-nav-group-label {
  display: block !important;
  margin: 0 !important;
  padding: 5px 10px !important;
  color: rgba(255, 248, 240, .52) !important;
  font-size: 8px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
  letter-spacing: .16em !important;
  text-transform: uppercase !important;
}

html body .admin-stage .admin-nav-btn {
  width: 100% !important;
  min-width: 0 !important;
  min-height: 44px !important;
  display: grid !important;
  grid-template-columns: 32px minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 9px !important;
  padding: 6px 9px !important;
  border: 1px solid transparent !important;
  border-radius: 13px !important;
  color: rgba(255, 248, 240, .75) !important;
  background: transparent !important;
  box-shadow: none !important;
  text-align: left !important;
}

html body .admin-stage .admin-nav-btn:hover {
  color: #fff !important;
  background: rgba(255, 255, 255, .07) !important;
}

html body .admin-stage .admin-nav-btn.active,
html body .admin-stage .admin-nav-btn[aria-current="page"] {
  color: var(--admin-brand-deep) !important;
  border-color: rgba(255, 255, 255, .4) !important;
  background: #fff7ee !important;
  box-shadow: 0 8px 22px rgba(20, 10, 8, .18) !important;
}

html body .admin-stage .admin-nav-ico {
  width: 32px !important;
  height: 32px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 10px !important;
  color: currentColor !important;
  background: rgba(255, 255, 255, .07) !important;
}

html body .admin-stage .admin-nav-btn.active .admin-nav-ico,
html body .admin-stage .admin-nav-btn[aria-current="page"] .admin-nav-ico {
  color: #fff !important;
  background: var(--admin-brand) !important;
}

html body .admin-stage .admin-nav-label {
  display: block !important;
  overflow: hidden !important;
  font-size: 12px !important;
  font-weight: 850 !important;
  line-height: 1.15 !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

html body .admin-stage .admin-nav-dot {
  display: none !important;
}

html body .admin-stage .admin-nav-badge {
  min-width: 22px !important;
  height: 22px !important;
  display: grid !important;
  place-items: center !important;
  padding: 0 6px !important;
  border-radius: 999px !important;
  color: #fff !important;
  background: var(--admin-brand) !important;
  font-size: 9px !important;
  font-weight: 900 !important;
}

html body .admin-stage .admin-sidebar-utility {
  display: grid !important;
  gap: 7px !important;
  padding-top: 10px !important;
  border-top: 1px solid rgba(255, 255, 255, .1) !important;
}

html body .admin-stage .admin-sidebar-foot,
html body .admin-stage .admin-sidebar-collapse {
  width: 100% !important;
  min-height: 42px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 9px !important;
  margin: 0 !important;
  padding: 8px 11px !important;
  border: 1px solid rgba(255, 255, 255, .11) !important;
  border-radius: 12px !important;
  color: rgba(255, 248, 240, .86) !important;
  background: rgba(255, 255, 255, .055) !important;
  font-size: 10px !important;
  font-weight: 800 !important;
}

html body .admin-stage .admin-sidebar-account {
  min-width: 0 !important;
  display: grid !important;
  grid-template-columns: 34px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 9px !important;
  padding: 8px !important;
  border-radius: 12px !important;
  background: rgba(255, 255, 255, .045) !important;
}

html body .admin-stage .admin-sidebar-account > span {
  width: 34px !important;
  height: 34px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 50% !important;
  color: #4a1723 !important;
  background: #f5d9dc !important;
  font-size: 12px !important;
  font-weight: 950 !important;
}

html body .admin-stage .admin-sidebar-account div {
  min-width: 0 !important;
  display: grid !important;
  gap: 2px !important;
}

html body .admin-stage .admin-sidebar-account strong,
html body .admin-stage .admin-sidebar-account small {
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

html body .admin-stage .admin-sidebar-account strong {
  color: #fff8f0 !important;
  font-size: 10px !important;
}

html body .admin-stage .admin-sidebar-account small {
  color: rgba(255, 248, 240, .5) !important;
  font-size: 8px !important;
}

html body .admin-stage .admin-sidebar-collapse svg {
  transform: rotate(180deg) !important;
}

html body .admin-stage .is-sidebar-compact .admin-sidebar-head {
  min-height: 68px !important;
}

html body .admin-stage .is-sidebar-compact .admin-sidebar .brand-word,
html body .admin-stage .is-sidebar-compact .admin-nav-label,
html body .admin-stage .is-sidebar-compact .admin-nav-group-label,
html body .admin-stage .is-sidebar-compact .admin-sidebar-foot span,
html body .admin-stage .is-sidebar-compact .admin-sidebar-collapse span,
html body .admin-stage .is-sidebar-compact .admin-sidebar-account div,
html body .admin-stage .is-sidebar-compact .admin-nav-badge {
  display: none !important;
}

html body .admin-stage .is-sidebar-compact .admin-nav-btn {
  grid-template-columns: 1fr !important;
  justify-items: center !important;
  padding-inline: 4px !important;
}

html body .admin-stage .is-sidebar-compact .admin-sidebar-account {
  grid-template-columns: 1fr !important;
  justify-items: center !important;
}

html body .admin-stage .is-sidebar-compact .admin-sidebar-foot,
html body .admin-stage .is-sidebar-compact .admin-sidebar-collapse {
  justify-content: center !important;
  padding-inline: 0 !important;
}

html body .admin-stage .is-sidebar-compact .admin-sidebar-collapse svg {
  transform: none !important;
}

html body .admin-stage .admin-main {
  min-width: 0 !important;
  width: 100% !important;
  max-width: none !important;
  padding: 0 0 44px !important;
}

html body .admin-stage .admin-topbar {
  width: 100% !important;
  min-height: 82px !important;
  position: sticky !important;
  top: 16px !important;
  z-index: 40 !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 18px !important;
  margin: 0 0 14px !important;
  padding: 13px 16px 13px 19px !important;
  border: 1px solid rgba(80, 45, 35, .12) !important;
  border-radius: 20px !important;
  background: rgba(255, 252, 247, .91) !important;
  box-shadow: 0 14px 32px rgba(74, 43, 34, .09) !important;
  backdrop-filter: blur(18px) saturate(1.2) !important;
}

html body .admin-stage .admin-title {
  min-width: 0 !important;
}

html body .admin-stage .admin-breadcrumb {
  display: block !important;
  margin: 0 0 3px !important;
  color: var(--admin-brand) !important;
  font-size: 8px !important;
  font-weight: 950 !important;
  line-height: 1.2 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
}

html body .admin-stage .admin-title h1 {
  margin: 0 !important;
  color: var(--admin-ink) !important;
  font-size: clamp(24px, 2.2vw, 32px) !important;
  line-height: 1 !important;
  letter-spacing: -.035em !important;
}

html body .admin-stage .admin-title p {
  max-width: 620px !important;
  margin: 5px 0 0 !important;
  color: var(--admin-muted) !important;
  font-size: 11px !important;
  line-height: 1.35 !important;
}

html body .admin-stage .admin-top-actions {
  min-width: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 7px !important;
  margin: 0 !important;
}

html body .admin-stage .admin-save-status {
  width: auto !important;
  max-width: 210px !important;
  min-height: 36px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;
  padding: 7px 11px !important;
  overflow: hidden !important;
  border: 1px solid var(--admin-line) !important;
  border-radius: 999px !important;
  color: var(--admin-muted) !important;
  background: rgba(255, 255, 255, .7) !important;
  font-size: 9px !important;
  font-weight: 850 !important;
  line-height: 1.15 !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

html body .admin-stage .admin-save-status i {
  width: 7px !important;
  height: 7px !important;
  flex: 0 0 auto !important;
  border-radius: 50% !important;
  background: var(--admin-success) !important;
  box-shadow: 0 0 0 3px rgba(36, 122, 89, .12) !important;
}

html body .admin-stage .admin-save-status[data-tone="working"] i {
  background: var(--admin-warning) !important;
  box-shadow: 0 0 0 3px rgba(183, 100, 35, .12) !important;
  animation: admin-status-pulse 1.1s ease-in-out infinite !important;
}

html body .admin-stage .admin-save-status[data-tone="error"] {
  color: var(--admin-danger) !important;
  border-color: rgba(169, 40, 56, .22) !important;
  background: #fff1f1 !important;
}

html body .admin-stage .admin-save-status[data-tone="error"] i {
  background: var(--admin-danger) !important;
  box-shadow: 0 0 0 3px rgba(169, 40, 56, .12) !important;
}

@keyframes admin-status-pulse {
  50% { opacity: .35; }
}

html body .admin-stage .admin-save-button,
html body .admin-stage .admin-top-menu > summary {
  min-width: 42px !important;
  min-height: 42px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 7px !important;
  padding: 8px 12px !important;
  border: 1px solid transparent !important;
  border-radius: 12px !important;
  cursor: pointer !important;
  list-style: none !important;
  font-size: 10px !important;
  font-weight: 900 !important;
}

html body .admin-stage .admin-save-button {
  color: #fff !important;
  background: linear-gradient(135deg, var(--admin-brand), var(--admin-brand-deep)) !important;
  box-shadow: 0 9px 20px rgba(111, 16, 43, .19) !important;
}

html body .admin-stage .admin-top-menu {
  position: relative !important;
}

html body .admin-stage .admin-top-menu > summary {
  color: var(--admin-ink) !important;
  border-color: var(--admin-line) !important;
  background: #fff !important;
  letter-spacing: .14em !important;
}

html body .admin-stage .admin-top-menu > summary::-webkit-details-marker,
html body .admin-stage .admin-create-disclosure > summary::-webkit-details-marker,
html body .admin-stage .category-admin-row > summary::-webkit-details-marker {
  display: none !important;
}

html body .admin-stage .admin-top-menu > div {
  width: 205px !important;
  position: absolute !important;
  top: calc(100% + 7px) !important;
  right: 0 !important;
  z-index: 90 !important;
  display: grid !important;
  gap: 4px !important;
  padding: 7px !important;
  border: 1px solid var(--admin-line) !important;
  border-radius: 14px !important;
  background: #fffdf9 !important;
  box-shadow: 0 18px 45px rgba(53, 31, 25, .18) !important;
}

html body .admin-stage .admin-top-menu button {
  width: 100% !important;
  min-height: 42px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 9px !important;
  padding: 8px 10px !important;
  border: 0 !important;
  border-radius: 9px !important;
  color: var(--admin-ink) !important;
  background: transparent !important;
  font-size: 10px !important;
  font-weight: 800 !important;
}

html body .admin-stage .admin-top-menu button:hover {
  background: #f6ece6 !important;
}

html body .admin-stage button:focus-visible,
html body .admin-stage summary:focus-visible,
html body .admin-stage input:focus-visible,
html body .admin-stage select:focus-visible,
html body .admin-stage textarea:focus-visible {
  outline: 3px solid rgba(152, 29, 63, .34) !important;
  outline-offset: 2px !important;
}

html body .admin-stage .admin-card,
html body .admin-stage .admin-dashboard-card {
  width: 100% !important;
  max-width: 100% !important;
  border: 1px solid var(--admin-line) !important;
  border-radius: 20px !important;
  color: var(--admin-ink) !important;
  background: rgba(255, 253, 249, .94) !important;
  box-shadow: 0 11px 28px rgba(70, 40, 32, .065) !important;
}

html body .admin-stage .admin-card {
  padding: clamp(16px, 2vw, 22px) !important;
}

html body .admin-stage .admin-card-title-row {
  margin: 0 0 14px !important;
}

html body .admin-stage .admin-card-title-row h2,
html body .admin-stage .admin-card-title-row h3,
html body .admin-stage .admin-card > h2 {
  margin: 0 !important;
  color: var(--admin-ink) !important;
  font-size: clamp(19px, 1.8vw, 24px) !important;
  line-height: 1.05 !important;
  letter-spacing: -.025em !important;
}

html body .admin-stage .admin-card-title-row p {
  margin: 5px 0 0 !important;
  color: var(--admin-muted) !important;
  font-size: 10px !important;
  line-height: 1.4 !important;
}

html body .admin-stage .admin-section-kicker {
  display: block !important;
  margin-bottom: 5px !important;
  color: var(--admin-brand) !important;
  font-size: 8px !important;
  font-weight: 950 !important;
  letter-spacing: .15em !important;
}

/* Dashboard */
html body .admin-stage .admin-dashboard {
  display: grid !important;
  gap: 14px !important;
}

html body .admin-stage .admin-overview-hero {
  min-height: 158px !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: end !important;
  gap: 24px !important;
  padding: 24px 28px !important;
  overflow: hidden !important;
  border: 1px solid rgba(255, 255, 255, .13) !important;
  border-radius: 22px !important;
  background:
    linear-gradient(112deg, rgba(45, 24, 23, .98), rgba(114, 19, 46, .95)),
    #351d1d !important;
  box-shadow: 0 17px 38px rgba(77, 25, 36, .14) !important;
}

html body .admin-stage .admin-overview-hero::after {
  right: -70px !important;
  top: -115px !important;
  opacity: .07 !important;
}

html body .admin-stage .admin-overview-kicker {
  margin-bottom: 9px !important;
  color: #f4cbd4 !important;
  font-size: 8px !important;
  letter-spacing: .18em !important;
}

html body .admin-stage .admin-overview-hero h2 {
  max-width: 760px !important;
  margin: 0 !important;
  color: #fffaf4 !important;
  font-size: clamp(30px, 4vw, 50px) !important;
  line-height: .95 !important;
  letter-spacing: -.045em !important;
}

html body .admin-stage .admin-overview-hero p {
  max-width: 700px !important;
  margin: 10px 0 0 !important;
  color: rgba(255, 248, 240, .7) !important;
  font-size: 11px !important;
  line-height: 1.45 !important;
}

html body .admin-stage .admin-overview-status {
  align-items: flex-end !important;
  gap: 7px !important;
}

html body .admin-stage .admin-overview-status > span {
  min-height: 38px !important;
  padding: 8px 13px !important;
  border-radius: 999px !important;
}

html body .admin-stage .admin-dashboard-kpis {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 10px !important;
  padding: 0 !important;
  overflow: visible !important;
}

html body .admin-stage .admin-dashboard-kpis button {
  min-width: 0 !important;
  min-height: 104px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  align-items: flex-start !important;
  gap: 3px !important;
  padding: 14px !important;
  border: 1px solid var(--admin-line) !important;
  border-radius: 18px !important;
  color: var(--admin-ink) !important;
  background: rgba(255, 253, 249, .84) !important;
  box-shadow: 0 8px 20px rgba(70, 40, 32, .045) !important;
}

html body .admin-stage .admin-dashboard-kpis button:hover {
  transform: translateY(-2px) !important;
  border-color: rgba(152, 29, 63, .22) !important;
  box-shadow: 0 12px 25px rgba(70, 40, 32, .09) !important;
}

html body .admin-stage .admin-dashboard-kpis span {
  color: var(--admin-muted) !important;
  font-size: 8px !important;
  letter-spacing: .1em !important;
}

html body .admin-stage .admin-dashboard-kpis strong {
  color: var(--admin-brand-deep) !important;
  font-size: clamp(25px, 2.5vw, 34px) !important;
  line-height: 1 !important;
}

html body .admin-stage .admin-dashboard-kpis small {
  color: var(--admin-muted) !important;
  font-size: 9px !important;
  line-height: 1.2 !important;
}

html body .admin-stage .admin-dashboard-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1.35fr) minmax(300px, .65fr) !important;
  gap: 14px !important;
}

html body .admin-stage .admin-dashboard-card {
  min-width: 0 !important;
  padding: 18px !important;
}

html body .admin-stage .admin-readiness-list article,
html body .admin-stage .admin-category-bars article {
  min-height: 42px !important;
}

html body .admin-stage .admin-all-clear {
  min-height: 138px !important;
  padding: 18px !important;
}

/* Product command center */
html body .admin-stage .product-command-shell {
  display: grid !important;
  gap: 12px !important;
}

html body .admin-stage .product-command-top {
  padding: 17px 19px !important;
}

html body .admin-stage .product-command-title {
  align-items: center !important;
  gap: 16px !important;
  margin: 0 !important;
}

html body .admin-stage .product-command-title .primary-btn {
  min-height: 44px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;
  padding-inline: 15px !important;
  white-space: nowrap !important;
}

html body .admin-stage .product-brief-stats {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 6px !important;
  margin-top: 13px !important;
  padding-top: 12px !important;
  border-top: 1px solid var(--admin-line) !important;
}

html body .admin-stage .product-brief-stats > span,
html body .admin-stage .product-brief-stats > button {
  min-height: 34px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  padding: 6px 10px !important;
  border: 1px solid var(--admin-line) !important;
  border-radius: 999px !important;
  color: var(--admin-muted) !important;
  background: #fff !important;
  font-size: 9px !important;
  font-weight: 750 !important;
}

html body .admin-stage .product-brief-stats strong {
  color: var(--admin-ink) !important;
  font-size: 11px !important;
}

html body .admin-stage .product-brief-stats .is-live {
  width: 7px !important;
  height: 7px !important;
  border-radius: 50% !important;
  background: var(--admin-success) !important;
}

html body .admin-stage .product-quality-console {
  grid-template-columns: minmax(190px, .55fr) minmax(0, 1.6fr) !important;
  gap: 9px !important;
  padding: 10px !important;
}

html body .admin-stage .product-quality-score,
html body .admin-stage .product-quality-actions button {
  min-height: 72px !important;
  border-radius: 13px !important;
}

html body .admin-stage .product-table-card {
  padding: 17px 19px 19px !important;
  overflow: visible !important;
}

html body .admin-stage .product-toolbar {
  align-items: center !important;
  margin: 0 0 12px !important;
}

html body .admin-stage .product-toolbar h2 {
  font-size: 22px !important;
}

html body .admin-stage .product-filter-row {
  display: grid !important;
  grid-template-columns: minmax(240px, 1.5fr) minmax(170px, .75fr) minmax(170px, .75fr) !important;
  gap: 9px !important;
  margin-bottom: 12px !important;
}

html body .admin-stage .field,
html body .admin-stage .login-field {
  gap: 6px !important;
  color: #57443d !important;
  font-size: 10px !important;
  font-weight: 850 !important;
}

html body .admin-stage .field input,
html body .admin-stage .field select,
html body .admin-stage .field textarea,
html body .admin-stage .login-field input {
  min-height: 46px !important;
  border: 1px solid rgba(75, 44, 35, .15) !important;
  border-radius: 12px !important;
  color: var(--admin-ink) !important;
  background: #fffefa !important;
  box-shadow: none !important;
  font-size: 12px !important;
}

html body .admin-stage .field textarea {
  min-height: 108px !important;
}

html body .admin-stage .admin-check-row input[type="checkbox"],
html body .admin-stage .owner-product-choice input[type="checkbox"],
html body .admin-stage .product-table-main input[type="checkbox"],
html body .admin-stage .product-table-head input[type="checkbox"] {
  width: 24px !important;
  height: 24px !important;
  min-width: 24px !important;
  accent-color: var(--admin-brand) !important;
}

html body .admin-stage .product-table-head {
  min-height: 38px !important;
  padding: 0 10px !important;
  border-bottom: 1px solid var(--admin-line) !important;
}

html body .admin-stage .product-table-list {
  max-height: none !important;
  overflow: visible !important;
  scrollbar-width: auto !important;
}

html body .admin-stage .product-table-row {
  min-height: 68px !important;
  margin: 6px 0 0 !important;
  padding: 7px 9px !important;
  border: 1px solid rgba(75, 44, 35, .1) !important;
  border-radius: 14px !important;
  background: #fff !important;
  box-shadow: none !important;
}

html body .admin-stage .product-table-main img {
  width: 46px !important;
  height: 46px !important;
  border-radius: 11px !important;
}

html body .admin-stage .product-bulk-bar {
  position: sticky !important;
  top: 108px !important;
  z-index: 25 !important;
  border-radius: 13px !important;
}

html body .admin-stage .product-pagination {
  min-height: 52px !important;
  margin-top: 12px !important;
  padding-top: 11px !important;
  border-top: 1px solid var(--admin-line) !important;
}

/* Categories and progressive disclosure */
html body .admin-stage .admin-category-workspace {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 340px !important;
  align-items: start !important;
  gap: 14px !important;
}

html body .admin-stage .category-library-card {
  min-width: 0 !important;
}

html body .admin-stage .category-admin-list {
  display: grid !important;
  gap: 7px !important;
  max-height: none !important;
  overflow: visible !important;
}

html body .admin-stage .category-admin-row {
  display: block !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 1px solid var(--admin-line) !important;
  border-radius: 15px !important;
  background: #fff !important;
  box-shadow: none !important;
}

html body .admin-stage .category-admin-row > summary {
  min-height: 66px !important;
  display: grid !important;
  grid-template-columns: 28px 46px minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 8px 11px !important;
  cursor: pointer !important;
  list-style: none !important;
}

html body .admin-stage .category-admin-row[open] > summary {
  border-bottom: 1px solid var(--admin-line) !important;
  background: #fbf3ed !important;
}

html body .admin-stage .category-drag-handle {
  width: 28px !important;
  height: 36px !important;
  display: grid !important;
  place-items: center !important;
  border: 0 !important;
  color: #a38f86 !important;
  background: transparent !important;
  cursor: grab !important;
  font-size: 14px !important;
  position: static !important;
  inset: auto !important;
  transform: none !important;
  grid-column: 1 !important;
}

html body .admin-stage .category-admin-visual {
  width: 46px !important;
  height: 46px !important;
  display: grid !important;
  place-items: center !important;
  margin: 0 !important;
  overflow: hidden !important;
  border-radius: 13px !important;
  background: #f6e9e3 !important;
  grid-column: 2 !important;
}

html body .admin-stage .category-admin-summary-copy {
  min-width: 0 !important;
  display: grid !important;
  gap: 3px !important;
  grid-column: 3 !important;
}

html body .admin-stage .category-admin-summary-copy strong {
  overflow: hidden !important;
  color: var(--admin-ink) !important;
  font-size: 12px !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

html body .admin-stage .category-admin-summary-copy small {
  color: var(--admin-muted) !important;
  font-size: 9px !important;
}

html body .admin-stage .category-admin-summary-action {
  min-height: 32px !important;
  display: inline-flex !important;
  align-items: center !important;
  padding: 6px 10px !important;
  border: 1px solid var(--admin-line) !important;
  border-radius: 999px !important;
  color: var(--admin-brand) !important;
  font-size: 9px !important;
  font-weight: 850 !important;
  grid-column: 4 !important;
}

html body .admin-stage .category-admin-summary-action b {
  font: inherit !important;
}

html body .admin-stage .category-admin-summary-action i {
  display: none !important;
  font-style: normal !important;
}

html body .admin-stage .category-admin-edit {
  display: grid !important;
  gap: 14px !important;
  padding: 15px !important;
}

html body .admin-stage .category-admin-fields {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px !important;
}

html body .admin-stage .category-edit-preview {
  grid-column: 1 / -1 !important;
  display: grid !important;
  grid-template-columns: 54px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 9px !important;
  border-radius: 12px !important;
  background: var(--admin-surface-soft) !important;
}

html body .admin-stage .category-admin-actions {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto auto !important;
  align-items: center !important;
  gap: 8px !important;
}

html body .admin-stage .category-order-actions {
  display: flex !important;
  gap: 6px !important;
}

html body .admin-stage .category-admin-actions button {
  min-height: 42px !important;
}

html body .admin-stage .admin-create-disclosure {
  position: sticky !important;
  top: 112px !important;
  padding: 0 !important;
  overflow: hidden !important;
}

html body .admin-stage .admin-create-disclosure > summary {
  min-height: 70px !important;
  display: grid !important;
  grid-template-columns: 40px minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 13px 14px !important;
  cursor: pointer !important;
  list-style: none !important;
}

html body .admin-stage .admin-create-disclosure[open] > summary {
  border-bottom: 1px solid var(--admin-line) !important;
  background: #fbf3ed !important;
}

html body .admin-stage .admin-create-icon {
  width: 40px !important;
  height: 40px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 12px !important;
  color: #fff !important;
  background: var(--admin-brand) !important;
}

html body .admin-stage .admin-create-disclosure > summary > span:nth-child(2) {
  display: grid !important;
  gap: 3px !important;
}

html body .admin-stage .admin-create-disclosure > summary strong {
  color: var(--admin-ink) !important;
  font-size: 12px !important;
}

html body .admin-stage .admin-create-disclosure > summary small {
  color: var(--admin-muted) !important;
  font-size: 9px !important;
}

html body .admin-stage .admin-create-disclosure > summary > i {
  font-style: normal !important;
  transition: transform .2s ease !important;
}

html body .admin-stage .admin-create-disclosure[open] > summary > i {
  transform: rotate(180deg) !important;
}

html body .admin-stage .admin-create-disclosure > .form-grid {
  padding: 15px !important;
}

/* Owner, Barista, analytics, content and forms */
html body .admin-stage .admin-owner-page,
html body .admin-stage .admin-grid,
html body .admin-stage .admin-grid-wide {
  gap: 14px !important;
}

html body .admin-stage .owner-hero-card {
  min-height: 138px !important;
  padding: 20px !important;
}

html body .admin-stage .owner-summary-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 9px !important;
}

html body .admin-stage .owner-summary-card {
  min-height: 92px !important;
  padding: 14px !important;
}

html body .admin-stage .owner-summary-card strong {
  font-size: 25px !important;
}

html body .admin-stage .barista-insight-strip {
  min-height: 0 !important;
  padding: 13px 16px !important;
}

html body .admin-stage .form-grid {
  gap: 14px !important;
}

html body .admin-stage .inline-fields {
  gap: 10px !important;
}

html body .admin-stage .admin-note,
html body .admin-stage .admin-help-text {
  color: var(--admin-muted) !important;
  font-size: 10px !important;
  line-height: 1.45 !important;
}

html body .admin-stage .admin-safety-note {
  padding: 11px 12px !important;
  border-left: 3px solid var(--admin-warning) !important;
  border-radius: 0 11px 11px 0 !important;
  background: #fff6e9 !important;
}

html body .admin-stage .admin-preview {
  min-height: 82px !important;
  padding: 10px !important;
  border-radius: 14px !important;
}

html body .admin-stage .admin-preview img {
  width: 66px !important;
  height: 66px !important;
  border-radius: 12px !important;
}

html body .admin-stage .admin-footer-actions {
  position: sticky !important;
  bottom: 10px !important;
  z-index: 18 !important;
  padding: 9px !important;
  border: 1px solid var(--admin-line) !important;
  border-radius: 14px !important;
  background: rgba(255, 253, 249, .94) !important;
  box-shadow: 0 12px 32px rgba(59, 34, 28, .14) !important;
  backdrop-filter: blur(16px) !important;
}

html body .admin-stage .admin-list.small-list {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 7px !important;
  max-height: none !important;
  overflow: visible !important;
}

html body .admin-stage .admin-list-more {
  grid-column: 1 / -1 !important;
  padding: 10px !important;
  border-radius: 10px !important;
  color: var(--admin-muted) !important;
  background: var(--admin-surface-soft) !important;
  text-align: center !important;
  font-size: 10px !important;
  font-weight: 850 !important;
}

html body .admin-stage .bulk-preview-title {
  margin-top: 4px !important;
}

html body .admin-stage .ingredient-manager-grid {
  grid-template-columns: minmax(0, 1fr) 340px !important;
}

html body .admin-stage .ingredient-library-card {
  grid-column: 1 !important;
  grid-row: 1 !important;
}

html body .admin-stage .ingredient-add-card {
  grid-column: 2 !important;
  grid-row: 1 !important;
}

html body .admin-stage .ingredient-library-list {
  max-height: none !important;
  overflow: visible !important;
}

/* Login */
html body .admin-stage:has(> .admin-login) {
  padding: 22px !important;
}

html body .admin-stage > .admin-login {
  width: min(100%, 470px) !important;
  padding: 30px !important;
  border-radius: 26px !important;
  box-shadow: 0 28px 72px rgba(61, 31, 25, .15) !important;
}

html body .admin-stage .admin-login .brand-mark {
  min-height: 50px !important;
  margin-bottom: 14px !important;
}

html body .admin-stage .admin-login h1 {
  font-size: clamp(31px, 5vw, 42px) !important;
  line-height: .98 !important;
}

html body .admin-stage .admin-password-field {
  position: relative !important;
  display: block !important;
}

html body .admin-stage .admin-password-field input {
  width: 100% !important;
  padding-right: 76px !important;
}

html body .admin-stage .admin-password-field button {
  min-width: 58px !important;
  min-height: 36px !important;
  position: absolute !important;
  top: 50% !important;
  right: 5px !important;
  transform: translateY(-50%) !important;
  border: 0 !important;
  border-radius: 9px !important;
  color: var(--admin-brand) !important;
  background: #f8ecee !important;
  font-size: 9px !important;
  font-weight: 900 !important;
}

html body .admin-stage .form-error:not(:empty) {
  min-height: 44px !important;
  display: flex !important;
  align-items: center !important;
  padding: 9px 11px !important;
  border: 1px solid rgba(169, 40, 56, .2) !important;
  border-radius: 11px !important;
  color: var(--admin-danger) !important;
  background: #fff0f1 !important;
}

/* Product editor */
html body .admin-stage .product-editor-drawer {
  width: min(720px, 100vw) !important;
  border-left: 1px solid var(--admin-line) !important;
  background: #fbf6ef !important;
  box-shadow: -22px 0 60px rgba(48, 28, 23, .18) !important;
}

html body .admin-stage .product-drawer-head {
  position: sticky !important;
  top: 0 !important;
  z-index: 12 !important;
  padding: 16px 18px !important;
  border-bottom: 1px solid var(--admin-line) !important;
  background: rgba(255, 253, 249, .94) !important;
  backdrop-filter: blur(15px) !important;
}

html body .admin-stage .drawer-close-btn {
  width: 44px !important;
  height: 44px !important;
  border-radius: 12px !important;
}

html body .admin-stage .admin-editor-tabs {
  position: sticky !important;
  top: 77px !important;
  z-index: 11 !important;
  padding: 7px !important;
  border: 1px solid var(--admin-line) !important;
  border-radius: 13px !important;
  background: rgba(255, 253, 249, .95) !important;
  backdrop-filter: blur(12px) !important;
}

@media (max-width: 1180px) and (min-width: 821px) {
  html body .admin-stage .admin-shell {
    grid-template-columns: 218px minmax(0, 1fr) !important;
  }

  html body .admin-stage .admin-dashboard-kpis {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  html body .admin-stage .admin-dashboard-kpis button:nth-child(4),
  html body .admin-stage .admin-dashboard-kpis button:nth-child(5) {
    min-height: 88px !important;
  }

  html body .admin-stage .admin-category-workspace,
  html body .admin-stage .ingredient-manager-grid {
    grid-template-columns: minmax(0, 1fr) 300px !important;
  }
}

@media (min-width: 821px) {
  html body .admin-stage:has(> .admin-shell) {
    --admin-sidebar-w: 254px !important;
    --admin-gap: 16px !important;
    --admin-max: none !important;
    width: 100% !important;
    max-width: none !important;
    padding: 16px !important;
    overflow-x: clip !important;
  }

  html body .admin-stage:has(> .admin-shell) > .admin-shell {
    width: 100% !important;
    max-width: none !important;
    grid-template-columns: 254px minmax(0, 1fr) !important;
    gap: 16px !important;
  }

  html body .admin-stage:has(> .admin-shell) > .admin-shell.is-sidebar-compact {
    grid-template-columns: 82px minmax(0, 1fr) !important;
  }

  html body .admin-stage:has(> .admin-shell) > .admin-shell > .admin-sidebar {
    width: auto !important;
    min-width: 0 !important;
    height: calc(100dvh - 32px) !important;
    max-height: calc(100dvh - 32px) !important;
    top: 16px !important;
    overflow: hidden !important;
  }

  html body .admin-stage:has(> .admin-shell) > .admin-shell > .admin-main {
    width: 100% !important;
    min-width: 0 !important;
    min-height: calc(100dvh - 32px) !important;
    padding: 0 0 44px !important;
    overflow-x: clip !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  html body .admin-stage:has(> .admin-shell) > .admin-shell > .admin-main > .admin-topbar {
    min-height: 82px !important;
    top: 16px !important;
    margin: 0 0 14px !important;
    border-radius: 20px !important;
  }

  html body .admin-stage:has(> .admin-shell) .admin-main .product-command-shell {
    width: 100% !important;
    min-width: 0 !important;
  }

  html body .admin-stage:has(> .admin-shell) .admin-main .product-command-shell > .admin-card {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    contain: none !important;
  }
}

@media (max-width: 820px) {
  html body .admin-stage {
    padding: 0 !important;
    background: #f5eee6 !important;
  }

  html body .admin-stage .admin-shell,
  html body .admin-stage .admin-shell.is-sidebar-compact,
  html body .admin-stage:has(> .admin-shell) > .admin-shell,
  html body .admin-stage:has(> .admin-shell) > .admin-shell.is-sidebar-compact {
    min-height: 100dvh !important;
    display: block !important;
    padding: 0 !important;
  }

  html body .admin-stage .admin-sidebar,
  html body .admin-stage:has(> .admin-shell) > .admin-shell > .admin-sidebar {
    width: min(86vw, 318px) !important;
    height: 100dvh !important;
    position: fixed !important;
    inset: 0 auto 0 0 !important;
    top: 0 !important;
    right: auto !important;
    bottom: 0 !important;
    left: 0 !important;
    z-index: 100 !important;
    padding: 13px !important;
    border-radius: 0 22px 22px 0 !important;
    visibility: hidden !important;
    transform: translateX(-104%) !important;
    transition: transform .24s ease, visibility .24s !important;
  }

  html body .admin-stage .is-mobile-nav-open .admin-sidebar,
  html body .admin-stage:has(> .admin-shell) > .admin-shell.is-mobile-nav-open > .admin-sidebar {
    visibility: visible !important;
    transform: translateX(0) !important;
  }

  html body .admin-stage .admin-nav-backdrop {
    width: 100vw !important;
    height: 100dvh !important;
    position: fixed !important;
    inset: 0 !important;
    z-index: 90 !important;
    display: block !important;
    border: 0 !important;
    background: rgba(37, 21, 18, .56) !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transition: opacity .2s ease, visibility .2s !important;
    backdrop-filter: blur(3px) !important;
  }

  html body .admin-stage .is-mobile-nav-open .admin-nav-backdrop {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }

  html body .admin-stage .admin-sidebar-head {
    min-height: 72px !important;
    justify-content: space-between !important;
    padding: 8px 10px !important;
  }

  html body .admin-stage .admin-sidebar-brand {
    flex: 1 1 auto !important;
    display: block !important;
  }

  html body .admin-stage .admin-sidebar .brand-mark {
    align-items: center !important;
  }

  html body .admin-stage .admin-sidebar .brand-logo-img {
    width: 42px !important;
  }

  html body .admin-stage .admin-mobile-nav-close {
    width: 44px !important;
    height: 44px !important;
    flex: 0 0 auto !important;
    display: grid !important;
    place-items: center !important;
    border: 1px solid rgba(255, 255, 255, .12) !important;
    border-radius: 12px !important;
    color: #fff !important;
    background: rgba(255, 255, 255, .07) !important;
    font-size: 23px !important;
  }

  html body .admin-stage .admin-nav {
    display: block !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
  }

  html body .admin-stage .admin-nav-group {
    grid-template-columns: 1fr !important;
  }

  html body .admin-stage .admin-sidebar-collapse {
    display: none !important;
  }

  html body .admin-stage .admin-main,
  html body .admin-stage:has(> .admin-shell) > .admin-shell > .admin-main {
    padding: 8px 8px 42px !important;
  }

  html body .admin-stage .admin-topbar {
    min-height: 68px !important;
    top: 8px !important;
    grid-template-columns: 44px minmax(0, 1fr) auto !important;
    gap: 9px !important;
    margin-bottom: 9px !important;
    padding: 8px !important;
    border-radius: 17px !important;
  }

  html body .admin-stage .admin-mobile-menu-btn {
    width: 44px !important;
    height: 44px !important;
    display: grid !important;
    place-items: center !important;
    border: 1px solid var(--admin-line) !important;
    border-radius: 12px !important;
    color: var(--admin-brand) !important;
    background: #fff !important;
  }

  html body .admin-stage .admin-mobile-menu-btn > span {
    width: 17px !important;
    display: grid !important;
    gap: 3px !important;
  }

  html body .admin-stage .admin-mobile-menu-btn i {
    width: 100% !important;
    height: 2px !important;
    display: block !important;
    border-radius: 2px !important;
    background: currentColor !important;
  }

  html body .admin-stage .admin-breadcrumb,
  html body .admin-stage .admin-title p {
    display: none !important;
  }

  html body .admin-stage .admin-title h1 {
    overflow: hidden !important;
    font-size: 22px !important;
    line-height: 1.05 !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  html body .admin-stage .admin-top-actions {
    display: grid !important;
    grid-template-columns: 40px 40px !important;
    gap: 5px !important;
  }

  html body .admin-stage .admin-save-status {
    width: 9px !important;
    min-width: 9px !important;
    height: 9px !important;
    min-height: 9px !important;
    position: absolute !important;
    top: 8px !important;
    right: 91px !important;
    padding: 0 !important;
    overflow: hidden !important;
    border: 2px solid #fff !important;
    border-radius: 50% !important;
    color: transparent !important;
    background: var(--admin-success) !important;
    font-size: 0 !important;
  }

  html body .admin-stage .admin-save-status i {
    display: none !important;
  }

  html body .admin-stage .admin-save-status[data-tone="working"] {
    background: var(--admin-warning) !important;
  }

  html body .admin-stage .admin-save-status[data-tone="error"] {
    background: var(--admin-danger) !important;
  }

  html body .admin-stage .admin-save-button,
  html body .admin-stage .admin-top-menu > summary {
    width: 40px !important;
    min-width: 40px !important;
    height: 40px !important;
    min-height: 40px !important;
    padding: 0 !important;
    border-radius: 11px !important;
  }

  html body .admin-stage .admin-save-button span {
    display: none !important;
  }

  html body .admin-stage .admin-top-menu > div {
    width: min(220px, calc(100vw - 30px)) !important;
  }

  html body .admin-stage .admin-overview-hero {
    min-height: 0 !important;
    grid-template-columns: 1fr !important;
    align-items: start !important;
    gap: 14px !important;
    padding: 20px !important;
    border-radius: 19px !important;
  }

  html body .admin-stage .admin-overview-hero h2 {
    max-width: 310px !important;
    font-size: 32px !important;
    line-height: .96 !important;
  }

  html body .admin-stage .admin-overview-hero p {
    margin-top: 8px !important;
    font-size: 10px !important;
  }

  html body .admin-stage .admin-overview-status {
    align-items: flex-start !important;
  }

  html body .admin-stage .admin-dashboard-kpis {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 7px !important;
    overflow: visible !important;
    scrollbar-width: none !important;
  }

  html body .admin-stage .admin-dashboard-kpis button {
    min-height: 84px !important;
    padding: 12px !important;
    border-radius: 15px !important;
  }

  html body .admin-stage .admin-dashboard-kpis button:last-child {
    grid-column: 1 / -1 !important;
  }

  html body .admin-stage .admin-dashboard-kpis strong {
    font-size: 27px !important;
  }

  html body .admin-stage .admin-dashboard-grid {
    grid-template-columns: 1fr !important;
    gap: 9px !important;
  }

  html body .admin-stage .admin-dashboard-card {
    padding: 15px !important;
    border-radius: 17px !important;
  }

  html body .admin-stage .admin-readiness-list article {
    grid-template-columns: minmax(0, 1fr) 70px 35px !important;
  }

  html body .admin-stage .product-command-shell {
    gap: 8px !important;
  }

  html body .admin-stage .product-command-top,
  html body .admin-stage .product-table-card {
    padding: 14px !important;
    border-radius: 17px !important;
  }

  html body .admin-stage .product-command-title {
    align-items: flex-start !important;
  }

  html body .admin-stage .product-command-title h2 {
    font-size: 21px !important;
  }

  html body .admin-stage .product-command-title p {
    display: none !important;
  }

  html body .admin-stage .product-command-title .primary-btn {
    min-height: 42px !important;
    padding-inline: 12px !important;
    font-size: 9px !important;
  }

  html body .admin-stage .product-brief-stats {
    flex-wrap: nowrap !important;
    margin-top: 11px !important;
    padding: 10px 0 1px !important;
    overflow-x: auto !important;
    overscroll-behavior-x: contain !important;
    scrollbar-width: none !important;
  }

  html body .admin-stage .product-brief-stats::-webkit-scrollbar {
    display: none !important;
  }

  html body .admin-stage .product-brief-stats > * {
    flex: 0 0 auto !important;
  }

  html body .admin-stage .product-quality-console {
    grid-template-columns: 1fr !important;
    padding: 8px !important;
  }

  html body .admin-stage .product-quality-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  html body .admin-stage .product-quality-actions small {
    display: none !important;
  }

  html body .admin-stage .product-toolbar {
    align-items: flex-start !important;
  }

  html body .admin-stage .product-toolbar h2 {
    font-size: 20px !important;
  }

  html body .admin-stage .product-toolbar p {
    max-width: 250px !important;
    font-size: 9px !important;
  }

  html body .admin-stage .product-toolbar-count {
    min-height: 32px !important;
    padding: 6px 9px !important;
    font-size: 8px !important;
  }

  html body .admin-stage .product-filter-row {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 7px !important;
  }

  html body .admin-stage .product-filter-row > label:first-child {
    grid-column: 1 / -1 !important;
  }

  html body .admin-stage .product-table-head {
    display: none !important;
  }

  html body .admin-stage .product-table-row {
    min-height: 0 !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto auto !important;
    gap: 7px 9px !important;
    padding: 10px !important;
    border-radius: 15px !important;
  }

  html body .admin-stage .product-drag-handle {
    display: none !important;
  }

  html body .admin-stage .product-table-main {
    grid-column: 1 / 4 !important;
    grid-row: 1 !important;
    display: grid !important;
    grid-template-columns: 22px 52px minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 8px !important;
    min-width: 0 !important;
  }

  html body .admin-stage .product-table-main img {
    width: 52px !important;
    height: 52px !important;
    border-radius: 11px !important;
  }

  html body .admin-stage .product-table-main strong {
    font-size: 12px !important;
  }

  html body .admin-stage .product-table-main small {
    max-width: 190px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  html body .admin-stage .product-cell-muted {
    display: none !important;
  }

  html body .admin-stage .product-price-cell {
    grid-column: 1 !important;
    grid-row: 2 !important;
    width: 86px !important;
    min-height: 36px !important;
  }

  html body .admin-stage .product-availability-cell {
    grid-column: 2 !important;
    grid-row: 2 !important;
    align-items: flex-start !important;
  }

  html body .admin-stage .product-missing-cell {
    grid-column: 3 !important;
    grid-row: 2 !important;
    justify-self: end !important;
  }

  html body .admin-stage .product-actions-compact {
    grid-column: 1 / 4 !important;
    grid-row: 3 !important;
    display: flex !important;
    justify-content: flex-end !important;
    gap: 6px !important;
    padding-top: 3px !important;
    border-top: 1px solid var(--admin-line) !important;
  }

  html body .admin-stage .product-actions-compact > .secondary-btn {
    min-height: 38px !important;
  }

  html body .admin-stage .product-bulk-bar {
    top: 80px !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    scrollbar-width: none !important;
  }

  html body .admin-stage .product-pagination {
    display: grid !important;
    grid-template-columns: 1fr auto auto auto !important;
    gap: 5px !important;
  }

  html body .admin-stage .admin-category-workspace,
  html body .admin-stage .ingredient-manager-grid {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
  }

  html body .admin-stage .admin-create-disclosure {
    position: static !important;
    order: -1 !important;
    width: 100% !important;
  }

  html body .admin-stage .category-library-card {
    padding: 14px !important;
  }

  html body .admin-stage .category-admin-row > summary {
    grid-template-columns: 24px 44px minmax(0, 1fr) auto !important;
    gap: 8px !important;
    padding: 7px 8px !important;
  }

  html body .admin-stage .category-admin-summary-action {
    width: 32px !important;
    min-width: 32px !important;
    padding: 0 !important;
    overflow: hidden !important;
    color: var(--admin-brand) !important;
  }

  html body .admin-stage .category-admin-summary-action b {
    display: none !important;
  }

  html body .admin-stage .category-admin-summary-action i {
    width: 32px !important;
    height: 32px !important;
    display: grid !important;
    place-items: center !important;
    font-size: 18px !important;
  }

  html body .admin-stage .category-admin-fields {
    grid-template-columns: 1fr !important;
  }

  html body .admin-stage .category-admin-actions {
    grid-template-columns: 1fr 1fr !important;
  }

  html body .admin-stage .category-order-actions {
    grid-column: 1 / -1 !important;
  }

  html body .admin-stage .category-order-actions button {
    flex: 1 !important;
  }

  html body .admin-stage .category-admin-actions .primary-btn {
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
  }

  html body .admin-stage .category-admin-actions .danger-btn {
    grid-column: 2 !important;
    grid-row: 1 !important;
  }

  html body .admin-stage .ingredient-library-card,
  html body .admin-stage .ingredient-add-card {
    grid-column: auto !important;
    grid-row: auto !important;
  }

  html body .admin-stage .owner-summary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 7px !important;
  }

  html body .admin-stage .owner-summary-card {
    min-height: 84px !important;
    padding: 12px !important;
  }

  html body .admin-stage .owner-hero-card {
    min-height: 0 !important;
    padding: 16px !important;
  }

  html body .admin-stage .admin-list.small-list {
    grid-template-columns: 1fr !important;
  }

  html body .admin-stage .inline-fields,
  html body .admin-stage .admin-image-grid,
  html body .admin-stage .admin-image-grid.wide,
  html body .admin-stage .admin-choice-grid {
    grid-template-columns: 1fr !important;
  }

  html body .admin-stage .admin-footer-actions {
    bottom: 7px !important;
  }

  html body .admin-stage .product-editor-drawer {
    width: 100vw !important;
    max-width: 100vw !important;
    border-left: 0 !important;
  }

  html body .admin-stage .admin-editor-tabs {
    top: 73px !important;
    display: flex !important;
    overflow-x: auto !important;
    scrollbar-width: none !important;
  }

  html body .admin-stage .admin-editor-tabs > button {
    min-width: max-content !important;
    min-height: 42px !important;
  }
}

@media (max-width: 480px) {
  html body .admin-stage > .admin-login {
    padding: 24px 19px !important;
    border-radius: 22px !important;
  }

  html body .admin-stage .admin-login h1 {
    font-size: 32px !important;
  }

  html body .admin-stage .admin-login p {
    font-size: 12px !important;
  }

  html body .admin-stage .admin-readiness-list article {
    grid-template-columns: minmax(0, 1fr) 54px 34px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  html body .admin-stage *,
  html body .admin-stage *::before,
  html body .admin-stage *::after {
    scroll-behavior: auto !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}

