:root {
  --bg: #11100d;
  --bg-2: #171411;
  --panel: #1a1714;
  --panel-2: #221d18;
  --line: #2e2923;
  --accent: #d8b98a;
  --accent-2: #c7a573;
  --accent-text: #181410;
  --text: #f7f0e7;
  --muted: #b6a792;
  --soft: #ddd0bd;
  --danger: #c96a5d;
  --success: #88a26d;
  --shadow: 0 28px 70px rgba(0, 0, 0, .28);
  --radius-xl: 32px;
  --radius-lg: 26px;
  --radius-md: 20px;
  --font: "Helvetica Neue", Helvetica, Arial, sans-serif;
}

* { box-sizing: border-box; }
html, body { margin: 0; padding: 0; background: var(--bg); color: var(--text); font-family: var(--font); }
body {
  background:
    radial-gradient(circle at top left, color-mix(in srgb, var(--accent) 12%, transparent), transparent 22%),
    radial-gradient(circle at top right, color-mix(in srgb, var(--accent) 7%, transparent), transparent 18%),
    linear-gradient(180deg, color-mix(in srgb, var(--bg) 90%, #1e1812) 0%, var(--bg) 100%);
}
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
textarea { resize: vertical; min-height: 110px; }

.hidden { display: none !important; }
.muted { color: var(--muted); }
.soft { color: var(--soft); }
.helper { color: var(--muted); font-size: 13px; line-height: 1.45; }
.kicker { font-size: 12px; letter-spacing: .35em; text-transform: uppercase; color: var(--muted); }
.divider { height: 1px; background: var(--line); }

.app-shell { max-width: 1440px; margin: 0 auto; padding: 24px 20px 48px; }
.stack { display: grid; gap: 24px; }
.card {
  background: linear-gradient(180deg, color-mix(in srgb, var(--panel) 100%, transparent) 0%, color-mix(in srgb, var(--panel-2) 55%, var(--panel)) 100%);
  border: 1px solid var(--line);
  border-radius: var(--radius-xl);
  box-shadow: var(--shadow);
}
.card-pad { padding: 24px; }
.section-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; margin-bottom: 18px; }
.section-title { margin: 4px 0 0; font-size: var(--section-title-size, clamp(24px, 2.8vw, 34px)); line-height: 1.08; letter-spacing: -.03em; }
.section-copy { margin: 10px 0 0; color: var(--muted); font-size: 14px; line-height: 1.5; }
.icon-bubble {
  width: 48px; height: 48px; border-radius: 999px; background: var(--accent); color: var(--accent-text);
  display: inline-flex; align-items: center; justify-content: center;
  box-shadow: 0 12px 24px color-mix(in srgb, var(--accent) 25%, transparent);
}

.banner { padding: 18px 24px; display: flex; align-items: center; justify-content: space-between; gap: 18px; }
.brand { display: flex; align-items: center; gap: 16px; min-width: 0; }
.brand-logo { width: 58px; height: 58px; border-radius: 18px; background: var(--panel-2); border: 1px solid var(--line); overflow: hidden; flex: 0 0 auto; }
.brand-logo--fallback { display: flex; align-items: center; justify-content: center; background: var(--accent); color: var(--accent-text); font-weight: 700; }
.brand-copy { min-width: 0; }
.brand-title { font-size: clamp(28px, 4vw, 46px); line-height: 1; letter-spacing: -.04em; font-weight: 650; margin: 6px 0 2px; }
.brand-subtitle { color: var(--soft); font-size: 14px; }
.brand-actions, .inline-actions { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.header-tools{display:flex;align-items:flex-start;gap:14px;flex-wrap:wrap;justify-content:flex-end;}

.btn, .pill, .tab-btn, .subtab-btn, .settings-tab-btn {
  border: 1px solid var(--line);
  background: var(--panel-2);
  color: var(--soft);
  border-radius: 999px;
  padding: 12px 18px;
  line-height: 1;
  transition: .18s ease;
}
.btn:hover, .pill:hover, .tab-btn:hover, .subtab-btn:hover, .settings-tab-btn:hover {
  background: color-mix(in srgb, var(--panel-2) 85%, var(--accent) 15%);
}
.btn-primary, .pill.is-active, .tab-btn.is-active, .subtab-btn.is-active, .settings-tab-btn.is-active {
  background: var(--accent);
  border-color: var(--accent);
  color: var(--accent-text);
}
.btn-danger {
  border-color: var(--danger);
  color: #fff6f4;
  background: color-mix(in srgb, var(--danger) 82%, #2b1714);
  font-weight: 700;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08);
}
.btn-danger:hover {
  border-color: color-mix(in srgb, var(--danger) 78%, black);
  background: color-mix(in srgb, var(--danger) 90%, #23110f);
  color: #fff;
}
.btn-ghost { background: transparent; }
.btn-small { padding: 9px 14px; font-size: 13px; }

.tabs-bar { padding: 10px; }
.main-tabs, .subtabs, .category-tabs, .subcat-tabs, .filters, .featured-tags, .settings-tabs, .client-category-tabs { display: flex; gap: 10px; flex-wrap: wrap; }

.grid-2 { display: grid; gap: 24px; }
@media (min-width: 1100px) { .grid-2 { grid-template-columns: 1.05fr .95fr; } }
.grid-3 { display: grid; gap: 16px; }
@media (min-width: 720px) { .grid-3 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1200px) { .grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); } }

.form-grid { display: grid; gap: 16px; min-width:0; }
@media (min-width: 720px) { .form-grid.cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1100px) { .form-grid.cols-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); } .print-field-card .form-grid.cols-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 980px) { .form-grid.cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.form-row { display: grid; gap: 16px; }
@media (min-width: 960px) { .form-row { grid-template-columns: 1fr 360px; } }

.field { display: block; }
.field-label { display: block; margin-bottom: 8px; color: var(--muted); font-size: 14px; }
.input, .select, .textarea {
  width: 100%; border-radius: 20px; border: 1px solid var(--line); background: var(--bg-2); color: var(--text); padding: 14px 16px;
}
.input::placeholder, .textarea::placeholder { color: color-mix(in srgb, var(--muted) 85%, transparent); }
.search-wrap { position: relative; }
.search-wrap svg { position: absolute; left: 16px; top: 50%; transform: translateY(-50%); color: var(--muted); pointer-events: none; }
.search-wrap .input { padding-left: 44px; border-radius: 999px; }
.option-grid { display: flex; gap: 10px; flex-wrap: wrap; }
.option-pill {
  border: 1px solid var(--line); border-radius: 999px; background: var(--panel-2); color: var(--soft);
  padding: 10px 14px; display: inline-flex; align-items: center; gap: 8px;
}
.option-pill.active { background: var(--accent); border-color: var(--accent); color: var(--accent-text); }
.option-pill input { accent-color: var(--accent); }

.stats-badge, .tag {
  display: inline-flex; align-items: center; padding: 7px 12px; border-radius: 999px; border: 1px solid var(--line);
  background: var(--panel-2); color: var(--soft); font-size: 12px;
}
.tag-accent { background: var(--accent); color: var(--accent-text); border-color: var(--accent); }
.tag-danger {
  background: color-mix(in srgb, var(--danger) 14%, var(--panel-2));
  color: #f3d5cf;
  border-color: color-mix(in srgb, var(--danger) 50%, var(--line));
}
.tag-success {
  background: color-mix(in srgb, var(--success) 12%, var(--panel-2));
  color: #d8e6c8;
  border-color: color-mix(in srgb, var(--success) 45%, var(--line));
}

.product-card, .drink-card, .admin-item { border: 1px solid var(--line); background: var(--bg-2); border-radius: var(--radius-lg); padding: 18px; }
.product-title, .drink-title { font-size: clamp(22px, 3vw, 28px); line-height: 1.08; letter-spacing: -.03em; font-weight: 620; margin: 0; }
.product-meta, .drink-meta { margin-top: 6px; color: var(--muted); font-size: 14px; }
.product-note, .drink-note { margin-top: 12px; color: var(--soft); font-size: 14px; line-height: 1.55; }
.product-price, .drink-price { margin-top: 14px; font-size: 22px; font-weight: 620; }
.tags-row { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 10px; }
.card-actions { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-top: 16px; flex-wrap: wrap; }
.availability-note { margin-top: 12px; padding: 12px 14px; border-radius: 18px; background: color-mix(in srgb, var(--accent) 12%, var(--panel-2)); color: var(--soft); border: 1px solid var(--line); }

.footer { padding: 22px 24px; display: grid; gap: 18px; }
@media (min-width: 900px) { .footer { grid-template-columns: 1fr 1fr; align-items: start; } }
.footer-block { display: grid; gap: 6px; }
.footer-title { font-size: 18px; font-weight: 650; }
.footer-line { color: var(--soft); }
.footer-label { font-size: 12px; letter-spacing: .3em; text-transform: uppercase; color: var(--muted); }
.footer-warning { grid-column: 1 / -1; color: var(--muted); font-size: 12px; }

.empty-state { padding: 24px; border: 1px dashed var(--line); border-radius: 24px; color: var(--muted); }
.empty-state h3 { margin: 0 0 10px; color: var(--text); }
.product-layout-stack, .product-settings-stack, .client-toolbar, .client-stack, .settings-grid, .settings-stack { display: grid; gap: 24px; }
.list-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.scroll-anchor { scroll-margin-top: 24px; }

@media (max-width: 820px) {
  .app-shell { padding: 18px 14px 38px; }
  .banner { padding: 16px; }
  .card-pad { padding: 18px; }
  .brand-title { font-size: 34px; }
  .brand-actions { width: 100%; justify-content: flex-start; }
}


.client-layout-grid{display:grid;gap:18px;}
@media(min-width:1100px){.client-layout-grid{grid-template-columns:280px minmax(0,1fr);align-items:start;}}
.client-sidebar{position:sticky;top:20px}.sidebar-title{font-size:12px;letter-spacing:.32em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}.sidebar-card{border:1px solid var(--line);background:var(--bg-2);border-radius:var(--radius-lg);overflow:hidden}.sidebar-row{width:100%;display:flex;align-items:center;justify-content:space-between;padding:16px 18px;background:transparent;border:none;color:var(--text);text-align:left;cursor:pointer}.sidebar-main{font-weight:600;font-size:18px}.sidebar-sub{margin-top:4px;font-size:13px;color:var(--muted)}.sidebar-caret{font-size:18px;color:var(--soft)}.sidebar-subs{border-top:1px solid var(--line);padding:12px;display:flex;flex-wrap:wrap;gap:8px;background:var(--panel)}.sidebar-chip{border:1px solid var(--line);background:var(--bg-2);color:var(--soft);border-radius:999px;padding:8px 12px;cursor:pointer}.sidebar-chip.is-active{background:var(--accent);color:var(--accent-text)}
.product-card--media,.drink-card.product-card--media{padding:0;overflow:hidden}.card-media{height:220px;background:var(--panel-2)}.card-media img{width:100%;height:100%;display:block}.card-media img.img--photo{object-fit:contain;object-position:center center;background:linear-gradient(180deg,rgba(255,255,255,.72),rgba(245,240,232,.92));padding:10px}.card-media img.img--fallback{object-fit:cover;object-position:center}.product-body{padding:18px}.section-head--tight{align-items:end}.client-main-area>.section-title{margin-bottom:4px}


.brand-kicker{font-size:12px;letter-spacing:.3em;text-transform:uppercase;color:var(--muted)}
.banner--saas{align-items:flex-start}
.brand-stats{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.client-toolbar-row{display:flex;gap:12px;flex-wrap:wrap;align-items:center;justify-content:space-between}
.display-switch{display:flex;gap:8px;flex-wrap:wrap}
.client-list{display:grid;gap:14px}
.client-list-card{display:grid;grid-template-columns:minmax(0,1fr) 160px;gap:18px;padding:20px;border:1px solid var(--line);background:var(--bg-2);border-radius:var(--radius-lg)}
.client-list-card__aside{display:grid;gap:10px;justify-items:end;align-content:start;text-align:right}
.price-chip{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border-radius:999px;background:var(--accent);color:var(--accent-text);font-weight:650;min-width:108px}
.dashboard-grid{display:grid;gap:16px}
@media(min-width:900px){.dashboard-grid{grid-template-columns:repeat(4,minmax(0,1fr));}}
.metric-card{padding:20px;border:1px solid var(--line);background:var(--bg-2);border-radius:24px}
.metric-card__value{font-size:38px;line-height:1;font-weight:700;letter-spacing:-.04em;margin:8px 0}
.dashboard-categories{display:grid;gap:12px}
.category-stat{width:100%;text-align:left;padding:18px;border:1px solid var(--line);background:var(--bg-2);border-radius:22px;color:var(--text)}
.category-stat:hover{background:color-mix(in srgb,var(--bg-2) 88%,var(--accent) 12%)}
.category-stat__title{font-weight:650;font-size:18px}
.category-stat__meta{margin-top:6px;color:var(--muted);font-size:13px}
.admin-item.compact{display:flex;align-items:center;justify-content:space-between;gap:16px}
.print-admin-grid{align-items:start}
.print-admin-stack{max-width:980px}
.print-preview-head{padding:0 4px}
.print-only-cache{position:absolute;left:-99999px;top:auto;width:min(1120px,calc(100vw - 40px));opacity:0;pointer-events:none;max-height:0;overflow:hidden}
.input--static{display:flex;align-items:center;color:var(--muted);background:var(--panel-2);pointer-events:none}
.print-sheet{background:#fff;color:#1f1b18;border-radius:28px;border:1px solid #e6ddd2;box-shadow:0 16px 40px rgba(20,16,12,.08);overflow:hidden}
.print-sheet[data-paper="A5"]{max-width:760px;margin:0 auto}
.print-sheet__header,.print-sheet__footer{padding:28px 32px;background:linear-gradient(180deg,#fffdf9 0%,#f8f2ea 100%)}
.print-sheet__footer{border-top:1px solid #eadfce;font-size:12px;color:#6c6258}
.print-sheet__title{font-size:34px;line-height:1.05;font-weight:700;letter-spacing:-.04em}
.print-sheet__subtitle{margin-top:6px;font-size:14px;color:#7a6d5d}
.print-sheet__intro{margin-top:16px;max-width:740px;font-size:14px;line-height:1.65;color:#4e473f}
.print-sheet__content{padding:28px 32px;display:grid;gap:28px}
.print-section{display:grid;gap:16px}
.print-section__head{display:flex;align-items:center;gap:16px}
.print-section__head h3{margin:0;font-size:13px;letter-spacing:.28em;text-transform:uppercase;color:#8d6b44}
.print-section__line{height:1px;background:#e6ddd2;flex:1}
.print-section__grid{display:grid;gap:14px}
.print-sheet.columns-2 .print-section__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.print-sheet.columns-3 .print-section__grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.print-group{grid-column:1/-1;display:grid;gap:12px;break-inside:avoid}
.print-group__label{display:flex;align-items:center;gap:10px;padding:8px 12px;border:1px solid #eadfce;border-left:4px solid #b79061;border-radius:16px;background:linear-gradient(180deg,#fffdfa 0%,#f7efe4 100%);font-size:12px;font-weight:700;line-height:1.35;color:#5d4932;letter-spacing:.02em}
.print-group__items{display:grid;gap:14px}
.print-sheet.columns-2 .print-group__items{grid-template-columns:repeat(2,minmax(0,1fr))}
.print-sheet.columns-3 .print-group__items{grid-template-columns:repeat(3,minmax(0,1fr))}
.print-tree{display:grid;gap:10px}
.print-tree__group{display:grid;gap:8px;break-inside:avoid}
.print-tree__group--level1{margin-top:10px}
.print-tree__group--level2{margin-top:4px}
.print-tree__group--level3{margin-top:2px}
.print-tree__heading{margin:0;text-align:center;color:#243347;break-after:avoid-page}
.print-tree__heading--level1{display:grid;grid-template-columns:minmax(60px,1fr) auto minmax(60px,1fr);align-items:center;gap:18px;font-size:18px;letter-spacing:.24em;text-transform:uppercase;font-weight:600;color:#243347}
.print-tree__heading--level1::before,.print-tree__heading--level1::after{content:"";height:1px;background:#d7dde3}
.print-tree__heading--level2{font-size:32px;line-height:1.02;font-style:italic;font-family:Georgia,"Times New Roman",serif;font-weight:500;color:#243347}
.print-tree__heading--level3{font-size:26px;line-height:1.02;font-style:italic;font-family:Georgia,"Times New Roman",serif;font-weight:500;color:#243347}
.print-tree__content--level1{display:grid;gap:10px}
.print-tree__content--level2,.print-tree__content--level3{display:grid;gap:8px}
.print-tree__items{display:grid;gap:6px}
.print-sheet.columns-2 .print-tree__items{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px}
.print-sheet.columns-3 .print-tree__items{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:28px}
.print-sheet.gap-tight.columns-2 .print-tree__items,.print-sheet.gap-tight.columns-3 .print-tree__items{column-gap:14px}
.print-sheet.gap-normal.columns-2 .print-tree__items,.print-sheet.gap-normal.columns-3 .print-tree__items{column-gap:28px}
.print-sheet.gap-wide.columns-2 .print-tree__items,.print-sheet.gap-wide.columns-3 .print-tree__items{column-gap:42px}
.print-tree__group--level1,.print-tree__group--level2,.print-tree__group--level3{grid-column:1/-1}
.print-item{display:grid;gap:14px;padding:16px;border:1px solid #eadfce;border-radius:22px;background:#fffdfb;break-inside:avoid}
.print-item__media{overflow:hidden;border-radius:16px;background:#f2ede5;aspect-ratio:4/2.1}
.print-item__media img{width:100%;height:100%}.print-item__media img.img--photo{object-fit:contain;object-position:center center;background:#fff;padding:8px}.print-item__media img.img--fallback{object-fit:cover;object-position:center}
.print-item__body{display:grid;gap:8px}
.print-item__top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.print-item__top h4{margin:0;font-size:18px;line-height:1.15}
.print-item__price{font-weight:700;white-space:nowrap}
.print-item__meta{font-size:13px;color:#6c6258;line-height:1.5}
.print-item__note{font-size:13px;line-height:1.65;color:#3e3831}
.print-item__tags{display:flex;gap:8px;flex-wrap:wrap}
.print-pill{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:#f4ece1;border:1px solid #eadfce;font-size:11px;color:#5f5244}
.print-sheet.is-compact .print-item{padding:12px}
.print-sheet.is-compact .print-item__note{display:none}
.print-sheet.is-ultra-compact{border-radius:18px}
.print-sheet.is-ultra-compact .print-sheet__header,.print-sheet.is-ultra-compact .print-sheet__footer{padding:12px 16px;background:#fff}
.print-sheet.is-ultra-compact .print-sheet__title{font-size:20px;line-height:1.05;letter-spacing:-.02em}
.print-sheet.is-ultra-compact .print-sheet__subtitle{margin-top:2px;font-size:11px}
.print-sheet.is-ultra-compact .print-sheet__intro{margin-top:8px;font-size:11px;line-height:1.4;max-width:none}
.print-sheet.is-ultra-compact .print-sheet__content{padding:10px 14px;gap:12px}
.print-sheet.is-ultra-compact .print-section{gap:8px}
.print-sheet.is-ultra-compact .print-section__head{gap:10px}
.print-sheet.is-ultra-compact .print-section__head h3{font-size:10px;letter-spacing:.2em}
.print-sheet.is-ultra-compact .print-section__grid{gap:6px}
.print-sheet.is-ultra-compact .print-group{gap:4px}
.print-sheet.is-ultra-compact .print-group__label{padding:4px 6px;margin-top:2px;border-radius:10px;border-left-width:3px;font-size:9px;line-height:1.2;letter-spacing:.03em;background:#f8f1e8}
.print-sheet.is-ultra-compact .print-group__items{gap:3px}
.print-sheet.is-ultra-compact .print-tree{gap:8px}
.print-sheet.is-ultra-compact .print-tree__group--level1{margin-top:8px}
.print-sheet.is-ultra-compact .print-tree__heading--level1{font-size:11px;gap:14px;letter-spacing:.22em}
.print-sheet.is-ultra-compact .print-tree__heading--level2{font-size:19px}
.print-sheet.is-ultra-compact .print-tree__heading--level3{font-size:13px}
.print-sheet.is-ultra-compact .print-tree__content--level1{gap:6px}
.print-sheet.is-ultra-compact .print-tree__content--level2,.print-sheet.is-ultra-compact .print-tree__content--level3{gap:4px}
.print-sheet.is-ultra-compact .print-tree__items{gap:0}
.print-sheet.is-ultra-compact.columns-2 .print-tree__items{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:22px}
.print-sheet.is-ultra-compact.columns-3 .print-tree__items{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:18px}
.print-sheet.is-ultra-compact.gap-tight.columns-2 .print-tree__items{column-gap:12px}
.print-sheet.is-ultra-compact.gap-tight.columns-3 .print-tree__items{column-gap:10px}
.print-sheet.is-ultra-compact.gap-normal.columns-2 .print-tree__items{column-gap:22px}
.print-sheet.is-ultra-compact.gap-normal.columns-3 .print-tree__items{column-gap:18px}
.print-sheet.is-ultra-compact.gap-wide.columns-2 .print-tree__items{column-gap:28px}
.print-sheet.is-ultra-compact.gap-wide.columns-3 .print-tree__items{column-gap:24px}
.print-sheet.is-ultra-compact .print-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:start;padding:6px 0;margin:0;border:none;background:transparent;break-inside:avoid}
.print-sheet.is-ultra-compact.show-separators .print-row{border-bottom:1px solid #dfe3e6}
.print-sheet.is-ultra-compact.hide-separators .print-row{border-bottom:none}
.print-sheet.is-ultra-compact .print-row:last-child{border-bottom:none}
.print-sheet.is-ultra-compact .print-row__title{font-size:12px;line-height:1.1;font-weight:500;font-style:italic;font-family:Georgia,"Times New Roman",serif;color:#111826}
.print-sheet.is-ultra-compact .print-row__meta{margin-top:3px;font-size:8px;line-height:1.22;color:#5a6270}
.print-sheet.is-ultra-compact .print-row__price{font-size:9px;line-height:1.1;font-weight:500;white-space:nowrap;color:#111826}
.print-sheet.is-ultra-compact .print-item,.print-sheet.is-ultra-compact .print-item__body,.print-sheet.is-ultra-compact .print-item__top,.print-sheet.is-ultra-compact .print-item__meta,.print-sheet.is-ultra-compact .print-item__note,.print-sheet.is-ultra-compact .print-item__tags{all:unset}
@media(max-width:900px){.client-list-card{grid-template-columns:1fr}.client-list-card__aside{justify-items:start;text-align:left}.print-sheet.columns-2 .print-section__grid,.print-sheet.columns-3 .print-section__grid,.print-sheet.columns-2 .print-group__items,.print-sheet.columns-3 .print-group__items,.print-sheet.columns-2 .print-tree__items,.print-sheet.columns-3 .print-tree__items{grid-template-columns:1fr}}
@media print{
  body[data-print-scope="menu"]{background:#fff !important}
  body[data-print-scope="menu"] .app-shell > *:not(.print-scope-target){display:none !important}
  body[data-print-scope="menu"] .print-scope-target > *:not(.print-only-cache){display:none !important}
  body[data-print-scope="menu"] .print-scope-target .no-print{display:none !important}
  body[data-print-scope="menu"] .print-only-cache{position:static !important;left:auto !important;width:auto !important;opacity:1 !important;pointer-events:auto !important;max-height:none !important;overflow:visible !important}
  body[data-print-scope="menu"] .print-sheet{box-shadow:none !important;border:none !important;border-radius:0 !important}
  body[data-print-scope="menu"] .print-sheet__content{padding:0}
  body[data-print-scope="menu"] .print-sheet__header,body[data-print-scope="menu"] .print-sheet__footer{padding-left:0;padding-right:0}
  body[data-print-scope="menu"] .print-section__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  body[data-print-scope="menu"] .print-sheet.columns-1 .print-section__grid{grid-template-columns:1fr}
  body[data-print-scope="menu"] .print-sheet.columns-3 .print-section__grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  body[data-print-scope="menu"] .print-sheet.columns-2 .print-group__items{grid-template-columns:repeat(2,minmax(0,1fr))}
  body[data-print-scope="menu"] .print-sheet.columns-1 .print-group__items{grid-template-columns:1fr}
  body[data-print-scope="menu"] .print-sheet.columns-3 .print-group__items{grid-template-columns:repeat(3,minmax(0,1fr))}
  body[data-print-scope="menu"] .print-sheet.columns-2 .print-tree__items{grid-template-columns:repeat(2,minmax(0,1fr))}
  body[data-print-scope="menu"] .print-sheet.columns-1 .print-tree__items{grid-template-columns:1fr}
  body[data-print-scope="menu"] .print-sheet.columns-3 .print-tree__items{grid-template-columns:repeat(3,minmax(0,1fr))}
  body[data-print-scope="menu"] .print-sheet.gap-tight.columns-2 .print-tree__items,body[data-print-scope="menu"] .print-sheet.gap-tight.columns-3 .print-tree__items{column-gap:14px}
  body[data-print-scope="menu"] .print-sheet.gap-normal.columns-2 .print-tree__items,body[data-print-scope="menu"] .print-sheet.gap-normal.columns-3 .print-tree__items{column-gap:28px}
  body[data-print-scope="menu"] .print-sheet.gap-wide.columns-2 .print-tree__items,body[data-print-scope="menu"] .print-sheet.gap-wide.columns-3 .print-tree__items{column-gap:42px}
  body[data-print-scope="menu"] .print-sheet.is-ultra-compact .print-sheet__header,body[data-print-scope="menu"] .print-sheet.is-ultra-compact .print-sheet__footer{padding-top:0;padding-bottom:6px}
  body[data-print-scope="menu"] .print-sheet.is-ultra-compact .print-sheet__content{padding:0;gap:8px}
  body[data-print-scope="menu"] .print-sheet.is-ultra-compact .print-tree__group--level1{break-before:auto}
  body[data-print-scope="menu"] .print-sheet.is-ultra-compact .print-tree__heading{break-after:avoid-page}
  body[data-print-scope="menu"] .print-sheet.is-ultra-compact .print-row{padding-top:4px;padding-bottom:4px}
}



.print-preview-sample{border:1px solid var(--line);border-radius:24px;padding:14px;background:var(--panel-2);overflow:auto}
.print-field-card{padding:18px;border:1px solid var(--line);background:var(--bg-2);border-radius:24px}
.option-pill.is-disabled{opacity:.78;cursor:default}
.option-pill.is-disabled input{pointer-events:none}

.sort-field-grid{
  display:grid;
  grid-template-columns:minmax(0, 1fr) minmax(96px, 118px);
  gap:10px;
  min-width:0;
}
.print-field-card{overflow:hidden;}

.sort-field-grid .select:first-child{
  min-width:0;
  width:100%;
}
.sort-field-grid .select:last-child{
  min-width:0;
  width:100%;
}
.field--sort-group{
  min-width:0;
}
.field--sort-group .field-label{
  margin-bottom:10px;
}
@media (max-width: 920px){
  .sort-field-grid{
    grid-template-columns:minmax(0,1fr);
  }
}


.service-mode-bar{display:flex;gap:16px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:14px 16px;border:1px solid var(--line);border-radius:22px;background:var(--panel-2)}
.service-mode-bar__title{font-size:20px;font-weight:650}
.client-layout-grid--service{grid-template-columns:1fr!important}
.client-stack--service .client-main-area{gap:14px}
.service-list{display:grid;gap:8px}
.service-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:12px 14px;border:1px solid var(--line);border-radius:18px;background:var(--bg-2)}
.service-row__title{font-size:18px;font-weight:700;line-height:1.2}
.service-row__meta,.service-row__subprice{font-size:12px;color:var(--muted)}
.service-row__aside{text-align:right;display:grid;gap:4px;justify-items:end}
.service-row__price{font-size:20px;font-weight:700;color:var(--text)}
.service-row__stock{font-size:11px;padding:4px 8px;border-radius:999px;background:var(--panel);border:1px solid var(--line)}
.service-row__stock.is-low{background:color-mix(in srgb,var(--accent) 12%,var(--panel));}
.service-row__stock.is-out{background:color-mix(in srgb,var(--danger) 16%,var(--panel));color:var(--danger)}
.stock-quick-list{max-height:340px;overflow:auto}
.stock-quick-row{display:flex;gap:14px;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}
.stock-quick-row:last-child{border-bottom:none}
.stock-quick-row__actions{display:flex;align-items:center;gap:8px}
.btn-square{min-width:40px;padding:10px 0;text-align:center}
@media (max-width: 760px){.service-row{grid-template-columns:1fr}.service-row__aside{justify-items:start;text-align:left}.service-mode-bar{align-items:flex-start}}

/* ===== v21.1 product enhancements ===== */
.smart-filters-wrap { gap: 10px; }
.smart-filters-wrap--inline { display:block; }
.filters--smartline { align-items:center; gap:14px; flex-wrap:wrap; }
.pairing-compact { display:flex; align-items:center; gap:10px; margin-left:4px; }
.pairing-compact__label { font-size:11px; letter-spacing:.16em; text-transform:uppercase; color:var(--muted); white-space:nowrap; }
.select--pairing-compact { min-width:220px; width:auto; height:54px; padding-right:42px; }
.pill--compact { min-height:54px; padding:0 20px; }
.pill--ghost { background:var(--bg); color:var(--muted); border:1px solid var(--line); }
.pill--ghost:hover { color:var(--text); border-color:var(--soft); }

.filters--service-presets { margin-top: 10px; }
.field--compact { min-width: 220px; }
.sommelier-section { display: grid; gap: 14px; margin: 10px 0 20px; }
.service-highlights { display: grid; grid-template-columns: repeat(auto-fit,minmax(220px,1fr)); gap: 12px; }
.service-highlight-card { border: 1px solid var(--line); border-radius: 18px; padding: 14px 16px; display: flex; justify-content: space-between; gap: 12px; align-items: center; background: var(--panel-2); }
.mini-meta-grid { display:grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 10px; font-size: 13px; color: var(--muted); }
.qr-preview { display:grid; gap: 10px; justify-items: start; }
.qr-preview img { width: 180px; height: 180px; border-radius: 18px; border: 1px solid var(--line); background: white; padding: 10px; }
.stock-quick-list .helper, .admin-item .helper { line-height: 1.4; }
@media (max-width: 720px) {
  .service-highlights { grid-template-columns: 1fr; }
  .mini-meta-grid { grid-template-columns: 1fr; }
}


.service-row--interactive{cursor:pointer;transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;}
.service-row--interactive:hover{transform:translateY(-1px);border-color:var(--accent);box-shadow:0 10px 24px rgba(0,0,0,.08);}
.detail-overlay{position:fixed;inset:0;background:rgba(17,16,13,.42);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;padding:24px;z-index:50;}
.detail-modal{width:min(760px,100%);max-height:min(88vh,920px);overflow:auto;background:var(--bg-2);border:1px solid var(--line);border-radius:28px;padding:24px;box-shadow:var(--shadow);}
.detail-modal__head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;}
.detail-modal__price{font-size:28px;font-weight:700;margin-top:14px;color:var(--text);}
.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px;}
.detail-row{padding:14px 16px;border:1px solid var(--line);border-radius:18px;background:var(--pane);}
@media (max-width: 720px){.detail-grid{grid-template-columns:1fr}.detail-modal{padding:18px}}


.client-lang-control { display:flex; flex-direction:column; gap:6px; min-width:88px; align-items:center; }
.client-lang-control .helper { margin:0; font-size:11px; text-align:center; }
.lang-menu { position:relative; }
.lang-menu summary { list-style:none; }
.lang-menu summary::-webkit-details-marker { display:none; }
.lang-menu__trigger { width:96px; min-width:96px; height:68px; border:1px solid var(--line); border-radius:28px; background:var(--bg-2); display:flex; align-items:center; justify-content:center; gap:10px; cursor:pointer; box-shadow:0 4px 10px rgba(0,0,0,.03); overflow:visible; }
.lang-menu__flag { font-size:26px; line-height:1; display:inline-flex; align-items:center; justify-content:center; min-width:30px; }
.lang-menu__chevron { font-size:16px; color:var(--muted); }
.lang-menu__list { position:absolute; right:0; top:calc(100% + 8px); min-width:180px; background:var(--bg-2); border:1px solid var(--line); border-radius:20px; box-shadow:var(--shadow); padding:8px; display:grid; gap:6px; z-index:40; }
.lang-menu__item { border:1px solid transparent; background:transparent; border-radius:16px; padding:10px 12px; display:flex; align-items:center; gap:10px; cursor:pointer; text-align:left; }
.lang-menu__item:hover, .lang-menu__item.is-active { background:var(--pane); border-color:var(--line); }
.lang-menu__label { font-size:14px; color:var(--text); }

@media (max-width: 900px) {
  .banner--saas { gap:16px; }
  .client-toolbar-row { align-items:stretch; }
  .client-toolbar-row .search-wrap { width:100%; }
  .client-toolbar-row .display-switch { width:100%; justify-content:flex-start; }
  .client-layout-grid { gap:14px; }
}

@media (max-width: 720px) {
  .client-lang-control { min-width:82px; align-self:flex-end; }
  .lang-menu__trigger { width:88px; min-width:88px; height:62px; border-radius:24px; }
  .lang-menu__flag { font-size:22px; }
  .lang-menu__list { min-width:160px; right:0; }
  .filters, .client-category-tabs, .subcat-tabs { gap:8px; }
  .filters { overflow-x:auto; flex-wrap:nowrap; padding-bottom:4px; -webkit-overflow-scrolling:touch; }
  .filters::-webkit-scrollbar { height:6px; }
  .filters::-webkit-scrollbar-thumb { background:var(--line); border-radius:999px; }
  .pill { white-space:nowrap; }
  .stats-badge { width:100%; justify-content:flex-start; }
}


@media (min-width: 1460px) { .print-field-card .form-grid.cols-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

.banner{overflow:visible;}
.banner--hero{position:relative;padding:0;min-height:240px;display:block;}
.banner__content{position:relative;z-index:2;display:flex;gap:18px;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;padding:24px;}
.hero-banner{position:absolute;inset:0;background-size:cover;background-repeat:no-repeat;}
.hero-banner::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg, rgba(17,16,13,.15), rgba(17,16,13,.45));}
.hero-banner--overlay-none::after{background:linear-gradient(180deg, rgba(17,16,13,.02), rgba(17,16,13,.08));}
.hero-banner--overlay-light::after{background:linear-gradient(180deg, rgba(17,16,13,.08), rgba(17,16,13,.22));}
.hero-banner--overlay-medium::after{background:linear-gradient(180deg, rgba(17,16,13,.14), rgba(17,16,13,.36));}
.hero-banner--overlay-strong::after{background:linear-gradient(180deg, rgba(17,16,13,.2), rgba(17,16,13,.55));}
.hero-banner--compact{min-height:170px;}
.hero-banner--medium{min-height:230px;}
.hero-banner--large{min-height:300px;}
.banner--hero .brand-kicker,.banner--hero .brand-title,.banner--hero .brand-subtitle{color:#fff;text-shadow:0 8px 18px rgba(0,0,0,.28);}
.banner--hero .stats-badge{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.24);color:#fff;backdrop-filter:blur(6px);}
.banner--hero .client-lang-control .helper{color:#fff;opacity:.92;text-shadow:0 4px 10px rgba(0,0,0,.25);}
.banner--hero .lang-menu__trigger{background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.28);backdrop-filter:blur(6px);}
.banner--hero .lang-menu__chevron{color:#fff;}
.brand-title{font-weight:700;letter-spacing:-.04em;}
.product-card,.client-list-card,.sidebar-card,.metric-card{transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;}
.product-card:hover,.client-list-card:hover,.sidebar-card:hover,.metric-card:hover{transform:translateY(-1px);box-shadow:0 12px 24px rgba(0,0,0,.06);border-color:var(--accent);}
.client-toolbar{gap:14px;}
.client-toolbar-row{gap:14px;align-items:center;justify-content:space-between;}
.lang-menu__trigger{padding:0 12px;}
.lang-menu__flag{font-size:24px; min-width:28px;}
.search-wrap input{min-width:0;}
@media (max-width: 900px){
  .banner__content{padding:18px;}
  .brand-stats{flex-wrap:wrap;}
  .client-layout-grid{grid-template-columns:1fr;}
}
@media (max-width: 720px){
  .banner--hero{min-height:180px;}
  .banner__content{padding:16px;gap:12px;}
  .brand-title{font-size:clamp(28px,8vw,42px);}
  .client-toolbar-row{flex-wrap:wrap;}
  .client-category-tabs,.subtabs,.filters,.display-switch{overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch;padding-bottom:4px;}
  .client-category-tabs::-webkit-scrollbar,.subtabs::-webkit-scrollbar,.filters::-webkit-scrollbar,.display-switch::-webkit-scrollbar{height:6px;}
  .client-category-tabs::-webkit-scrollbar-thumb,.subtabs::-webkit-scrollbar-thumb,.filters::-webkit-scrollbar-thumb,.display-switch::-webkit-scrollbar-thumb{background:var(--line);border-radius:999px;}
  .display-switch .pill,.client-category-tabs .tab-btn,.subtabs .subtab-btn,.filters .pill{white-space:nowrap;}
  .client-lang-control{align-items:flex-end;}
}

@media (max-width: 980px){.header-tools{width:100%;justify-content:space-between;}.sort-field-grid{grid-template-columns:minmax(0,1fr);}}

.lang-menu__list{max-height:280px;overflow:auto;}
.banner,.banner__content{overflow:visible;}


/* v21.4.1a accord filter refinement */
.client-toolbar-row--smart{justify-content:flex-start;gap:16px;align-items:end;}
.pairing-inline{display:flex;flex-direction:column;gap:8px;min-width:min(420px,100%);}
.pairing-inline__label{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);padding-left:4px;}
.select--pill{border-radius:999px;background:var(--bg-2);}
.select--pairing{max-width:420px;min-width:260px;padding-right:44px;}
@media (max-width: 900px){
  .client-toolbar-row--smart{justify-content:space-between;align-items:center;}
}
@media (max-width: 720px){
  .pairing-inline{min-width:0;width:100%;}
  .select--pairing{max-width:none;min-width:0;width:100%;}
  .client-toolbar-row--smart .btn{width:auto;align-self:flex-end;}
}

@media (max-width: 900px) {
  .filters--smartline { gap:12px; }
  .pairing-compact { width:100%; margin-left:0; }
  .select--pairing-compact { min-width:0; width:100%; }
}
@media (max-width: 640px) {
  .pairing-compact { flex-direction:column; align-items:stretch; gap:6px; }
  .pairing-compact__label { padding-left:2px; }
  .pill--compact { width:auto; }
}


/* v12 mobile iphone optimization */
@media (max-width: 900px){
  .client-sidebar{position:static !important;top:auto !important;z-index:auto !important;}
}
@media (max-width: 720px){
  .app-shell{padding:12px 10px 92px;}
  .client-stack{gap:16px;}
  .banner{padding:14px;}
  .brand{align-items:flex-start;gap:14px;}
  .brand-logo{width:68px;height:68px;border-radius:20px;}
  .brand-title{font-size:clamp(24px,8.6vw,38px);line-height:1.02;}
  .brand-subtitle{font-size:15px;}
  .brand-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;gap:8px;}
  .brand-stats .stats-badge{width:100%;min-width:0;justify-content:flex-start;padding:10px 12px;font-size:13px;}
  .client-layout-grid{gap:12px;}
  .client-sidebar{margin-bottom:2px;}
  .sidebar-title{font-size:11px;letter-spacing:.24em;margin-bottom:2px;}
  .sidebar-card{border-radius:18px;}
  .sidebar-row{padding:12px 14px;}
  .sidebar-main{font-size:16px;}
  .sidebar-sub{font-size:12px;}
  .section-title{font-size:clamp(24px,7vw,32px);}
  .client-toolbar{gap:10px;}
  .client-toolbar-row{gap:10px;}
  .search-wrap{width:100%;}
  .search-wrap .input{height:46px;font-size:16px;}
  .display-switch{width:100%;overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px;-webkit-overflow-scrolling:touch;}
  .display-switch .pill{white-space:nowrap;}
  .filters{gap:8px;}
  .card-media{height:172px;}
  .product-body{padding:16px;}
  .product-title,.drink-title{font-size:clamp(18px,7vw,28px);}
  .product-meta,.drink-meta{font-size:14px;line-height:1.4;}
  .product-note,.drink-note{font-size:14px;line-height:1.5;}
  .product-price,.drink-price{font-size:18px;}
}
@media (max-width: 520px){
  .brand-stats{grid-template-columns:1fr;}
  .client-category-tabs .tab-btn,.subtabs .subtab-btn,.filters .pill,.display-switch .pill{padding:11px 14px;font-size:14px;}
}


/* v13 client mobile refinement */
body[data-app-mode='client'] .banner .brand-stats .stats-badge:nth-child(2){display:none;}
@media (max-width: 720px){
  body[data-app-mode='client'] .client-sidebar.stack{display:grid;gap:12px;overflow:visible;margin-bottom:8px;}
  body[data-app-mode='client'] .client-sidebar .sidebar-title{margin-bottom:2px;font-size:10px;letter-spacing:.2em;opacity:.82;}
  body[data-app-mode='client'] .client-sidebar .sidebar-card{border:1px solid var(--line);background:var(--bg-2);border-radius:22px;overflow:hidden;}
  body[data-app-mode='client'] .client-sidebar .sidebar-row{padding:16px 18px;background:transparent;border:none;box-shadow:none;min-height:auto;}
  body[data-app-mode='client'] .client-sidebar .sidebar-main{font-size:16px;font-weight:650;line-height:1.2;}
  body[data-app-mode='client'] .client-sidebar .sidebar-sub{margin-top:6px;font-size:12px;line-height:1.2;color:var(--muted);}
  body[data-app-mode='client'] .client-sidebar .sidebar-caret{display:block;font-size:18px;color:var(--soft);}
}
@media (max-width: 520px){
  body[data-app-mode='client'] .banner .brand-stats .stats-badge{font-size:12px;padding:9px 11px;}
  body[data-app-mode='client'] .client-sidebar .sidebar-row{padding:14px 16px;}
  body[data-app-mode='client'] .client-sidebar .sidebar-main{font-size:15px;}
  body[data-app-mode='client'] .client-sidebar .sidebar-sub{font-size:11px;}
}


/* v17 harmonisation mobile entre univers */
@media (max-width: 720px){
  .client-toolbar-row{display:grid;grid-template-columns:1fr;gap:10px;align-items:stretch;}
  .display-switch{justify-content:flex-start;width:100%;}
  .filters--smartline{overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch;padding-bottom:4px;gap:8px;}
  .filters--smartline .pill{white-space:nowrap;flex:0 0 auto;}
  .pairing-compact{flex:0 0 auto;width:auto;min-width:0;margin-left:0;align-items:center;gap:0;}
  .pairing-compact__label{display:none;}
  .select--pairing-compact{min-width:160px;width:auto;height:46px;padding-right:36px;}
  .filters{overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch;padding-bottom:4px;}
  .filters .pill{white-space:nowrap;flex:0 0 auto;}
  .service-highlights{gap:10px;}
  .service-highlight-card{padding:14px 16px;border-radius:20px;}
}


/* v56 stable fixes */
.tabs-bar{position:sticky;top:0;z-index:120;background:var(--bg)}
.settings-tabs{position:relative;z-index:130;isolation:isolate}
.settings-tab-btn{position:relative;z-index:140;pointer-events:auto;cursor:pointer}
.detail-modal{position:relative;z-index:2}
.card-media img.img--fallback,.print-item__media img.img--fallback{object-fit:cover;object-position:center}

.select--multi{min-height:180px;border-radius:18px;padding:10px 12px;background:var(--panel-2)}
.select--multi option{padding:8px 10px;border-radius:10px}
.select--multi option:checked{background:color-mix(in srgb, var(--accent) 30%, white);color:var(--text)}


.taxonomy-grid-compact { align-items: start; }
.taxonomy-card { height: auto; min-height: 0; }
.taxonomy-list { max-height: 240px; overflow: auto; padding-right: 4px; }
.compact-empty { min-height: 120px; }
.select--multi-compact { min-height: 112px; max-height: 112px; padding: 6px 8px; font-size: 14px; }
.select--multi-compact option { padding: 4px 8px; }
.btn-strong { border-width: 2px; box-shadow: 0 0 0 1px rgba(255,255,255,.08) inset; }
.product-form-actions { align-items: center; }
.product-form-actions .btn-danger { color: #fff !important; background: #9e2f21 !important; border-color: #7c1f14 !important; }
.product-form-actions .btn-danger:hover { background: #8a2418 !important; border-color: #69170e !important; }


.multi-dropdown{border:1px solid var(--line);border-radius:18px;background:var(--panel-2);overflow:hidden}
.multi-dropdown[open]{box-shadow:0 10px 24px rgba(0,0,0,.06)}
.multi-dropdown__summary{list-style:none;cursor:pointer;padding:12px 14px;display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.multi-dropdown__summary::-webkit-details-marker{display:none}
.multi-dropdown__title{font-weight:600}
.multi-dropdown__chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.multi-dropdown__menu{padding:6px 8px 10px;display:grid;gap:6px;max-height:220px;overflow:auto;border-top:1px solid var(--line)}
.multi-dropdown__caret{color:var(--muted);font-size:18px;line-height:1}
.check-row{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:12px;cursor:pointer}
.check-row:hover{background:color-mix(in srgb, var(--accent) 10%, var(--panel))}
.check-row input{width:16px;height:16px}
.field--span-2{grid-column:span 2}
.product-card,.admin-item{padding:16px}
.taxonomy-card{padding:14px}
.taxonomy-list .admin-item{padding:12px 14px}
.empty-state.compact-empty{padding:18px}
@media (max-width: 900px){.field--span-2{grid-column:span 1}}


.taxonomy-section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.taxonomy-grid-compact{align-items:start;gap:14px}
.taxonomy-card .list-header{align-items:flex-start;margin-bottom:6px}
.taxonomy-card .inline-actions{align-items:stretch;gap:8px;flex-wrap:nowrap}
.taxonomy-card .inline-actions .input{flex:1 1 auto}
.taxonomy-card .inline-actions .btn{flex:0 0 auto}
.taxonomy-card{height:auto;min-height:0}
.taxonomy-list{max-height:240px;overflow:auto;padding-right:4px}
.compact-empty{min-height:120px}
@media (max-width:760px){.taxonomy-card .inline-actions{flex-wrap:wrap}}

/* V66 premium refinements */
.field--multi-overlay{position:relative;overflow:visible}
.multi-dropdown{position:relative;border:1px solid rgba(168,139,95,.22);border-radius:22px;background:linear-gradient(180deg, rgba(255,255,255,.68), rgba(255,255,255,.44));backdrop-filter:blur(8px);overflow:visible;box-shadow:inset 0 1px 0 rgba(255,255,255,.55), 0 10px 24px rgba(37,28,19,.05)}
.multi-dropdown[open]{box-shadow:inset 0 1px 0 rgba(255,255,255,.6), 0 18px 42px rgba(37,28,19,.14);z-index:40;border-color:rgba(168,139,95,.34)}
.multi-dropdown__summary{list-style:none;cursor:pointer;padding:15px 18px;display:flex;align-items:flex-start;justify-content:space-between;gap:14px;min-height:92px}.multi-dropdown__summary::-webkit-details-marker{display:none}
.multi-dropdown__summary-main{min-width:0;flex:1 1 auto}.multi-dropdown__title-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.multi-dropdown__title{font-weight:700;font-size:15px;color:var(--text);letter-spacing:.01em}.multi-dropdown__count{display:inline-flex;align-items:center;justify-content:center;min-width:26px;height:26px;padding:0 9px;border-radius:999px;background:rgba(168,139,95,.12);font-size:12px;font-weight:700;color:#7c6241;border:1px solid rgba(168,139,95,.18)}
.multi-dropdown__chips{display:flex;flex-wrap:wrap;gap:7px;margin-top:11px;min-height:22px;max-width:calc(100% - 8px)}.multi-dropdown__placeholder{color:var(--muted);font-size:14px}.multi-dropdown__menu{position:absolute;left:0;right:0;top:calc(100% + 10px);padding:12px;display:grid;gap:8px;max-height:270px;overflow:auto;border:1px solid rgba(168,139,95,.24);border-radius:22px;background:linear-gradient(180deg, rgba(255,253,249,.98), rgba(246,239,227,.98));box-shadow:0 24px 48px rgba(37,28,19,.16);z-index:80}.multi-dropdown__caret{color:var(--muted);font-size:18px;line-height:1;transition:transform .18s ease,color .18s ease;margin-top:4px}.multi-dropdown[open] .multi-dropdown__caret{transform:rotate(180deg);color:#8a6a46}
.check-row{display:flex;align-items:center;gap:10px;padding:11px 13px;border:1px solid rgba(168,139,95,.16);border-radius:16px;background:rgba(255,255,255,.74);cursor:pointer;transition:background .16s ease,border-color .16s ease,transform .16s ease,box-shadow .16s ease}.check-row--overlay:hover{background:rgba(255,250,242,.96);border-color:rgba(168,139,95,.3);transform:translateY(-1px);box-shadow:0 8px 18px rgba(37,28,19,.08)}.tag--soft{background:rgba(168,139,95,.08);border-color:rgba(168,139,95,.18);color:#775b38}
.taxonomy-card--premium{border:1px solid rgba(168,139,95,.16);background:linear-gradient(180deg, rgba(255,255,255,.72), rgba(249,244,235,.72));box-shadow:0 12px 28px rgba(0,0,0,.04)}.taxonomy-card__header{align-items:flex-start;gap:14px}.taxonomy-item{justify-content:space-between;gap:16px;border:1px solid rgba(168,139,95,.12);border-radius:18px;background:rgba(255,255,255,.55)}.taxonomy-item strong{font-size:15px}.taxonomy-modal-overlay{z-index:70}.taxonomy-modal{width:min(620px,100%);padding:26px 26px 22px;background:linear-gradient(180deg, rgba(255,253,249,.98), rgba(246,239,227,.98));border:1px solid rgba(168,139,95,.22);box-shadow:0 26px 60px rgba(0,0,0,.18)}.taxonomy-modal__head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}.taxonomy-modal__title{font-size:30px;line-height:1.05}.taxonomy-modal__copy{max-width:44ch}.taxonomy-modal__grid{margin-top:4px}.taxonomy-modal__actions{justify-content:flex-end;margin-top:18px}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:999px;border:1px solid rgba(168,139,95,.18);background:rgba(255,255,255,.78);color:var(--text);cursor:pointer;box-shadow:0 6px 18px rgba(0,0,0,.06)}.icon-btn:hover{background:rgba(255,251,245,.96)}.supplier-search-wrap{margin:6px 0 2px}.supplier-card-item{justify-content:space-between;gap:18px;border:1px solid rgba(168,139,95,.12);border-radius:18px;background:rgba(255,255,255,.55)}
@media (max-width:760px){.taxonomy-modal{padding:20px}.taxonomy-modal__title{font-size:26px}.taxonomy-item,.supplier-card-item{flex-direction:column;align-items:flex-start}.multi-dropdown__summary{min-height:82px}.multi-dropdown__menu{max-height:220px}}

.supplier-modal-overlay{z-index:76}
.supplier-modal{width:min(760px,100%)}
.textarea{min-height:92px;resize:vertical}
.supplier-modal__pdf-block{margin-top:2px}
.supplier-modal__pdf-card{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:14px 16px;border:1px solid rgba(168,139,95,.16);border-radius:18px;background:rgba(255,255,255,.66)}
.supplier-modal__pdf-title{font-weight:700}
.supplier-modal__pdf-actions{justify-content:flex-end}
@media (max-width:760px){.supplier-modal__pdf-card{flex-direction:column;align-items:flex-start}}

.admin-item__layout{display:flex;align-items:flex-start;gap:14px}.admin-item__thumb{width:108px;min-width:108px;height:76px;border-radius:14px;overflow:hidden;border:1px solid var(--line);background:var(--panel-2)}.admin-item__thumb img{width:100%;height:100%;display:block}.admin-item__thumb img.img--photo{object-fit:contain;object-position:center center;background:#fff;padding:4px}.admin-item__thumb img.img--fallback{object-fit:cover;object-position:center}.form-image-preview__card{height:180px;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:var(--panel-2)}.form-image-preview__card img{width:100%;height:100%;display:block}.form-image-preview__card img.img--photo{object-fit:contain;object-position:center center;background:#fff;padding:10px}.form-image-preview__card img.img--fallback{object-fit:cover;object-position:center}@media (max-width:760px){.admin-item__thumb{width:88px;min-width:88px;height:66px}}


/* ===== v71 supplier reorder workflow ===== */
.supplier-orders-card{border:1px solid rgba(122,141,107,.18);background:linear-gradient(180deg, rgba(255,255,255,.74), rgba(248,245,238,.74));}
.supplier-order-group{border:1px solid rgba(122,141,107,.16);border-radius:20px;padding:14px 16px;background:rgba(255,255,255,.7);display:grid;gap:12px;}
.supplier-order-group__head{align-items:flex-start;gap:14px;}
.supplier-order-item{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:12px 0;border-top:1px dashed rgba(122,141,107,.18);}
.supplier-order-item:first-child{border-top:none;padding-top:0;}
.supplier-order-meta{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;}
.supplier-order-check{background:rgba(122,141,107,.08);border:1px solid rgba(122,141,107,.16);}
.supplier-order-check input{accent-color:#70815f;}
.supplier-alert-note{border:1px dashed rgba(162,108,68,.28);background:rgba(162,108,68,.05);}
.tag-highlight{background:rgba(122,141,107,.14);border-color:rgba(122,141,107,.22);color:#5f6f51;}
@media (max-width: 900px){
  .supplier-order-item{flex-direction:column;}
  .supplier-order-meta{justify-content:flex-start;}
}

.supplier-order-row-actions{justify-content:flex-end;margin-top:6px}
.supplier-order-group__actions{justify-content:flex-end;align-items:center}

.admin-path-list{gap:10px}
.admin-path-header{display:flex;align-items:center;min-height:34px;padding:0 6px;font-weight:700;letter-spacing:.01em;color:var(--soft)}
.admin-path-header span{display:inline-flex;align-items:center;gap:10px}
.admin-path-header--level-1{font-size:20px;margin-top:8px;padding-top:4px;border-top:1px solid color-mix(in srgb, var(--line) 88%, transparent)}
.admin-path-header--level-2{font-size:15px;padding-left:10px;color:var(--text)}
.admin-path-header--level-3{font-size:13px;padding-left:22px;color:var(--soft)}
.admin-path-header--level-4{font-size:12px;padding-left:36px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
.admin-path-header--wine-color{color:var(--text)}
.admin-path-header--wine-country{color:var(--soft)}
.admin-path-header--wine-region{color:var(--soft)}
.admin-path-header--wine-appellation{color:var(--muted)}
.admin-path-header--wine-format{color:var(--soft)}
.admin-path-header--supplier{color:var(--text);font-size:17px}


.card-media img.img--fallback,
.print-item__media img.img--fallback,
.admin-item__thumb img.img--fallback,
.form-image-preview__card img.img--fallback{
  transition: transform .25s ease, filter .25s ease, object-position .25s ease;
}
.fallback-variant-01{object-position:center center;transform:scale(1.00);filter:saturate(1.00) contrast(1.00)}
.fallback-variant-02{object-position:48% 46%;transform:scale(1.05);filter:saturate(1.04) contrast(1.01)}
.fallback-variant-03{object-position:52% 44%;transform:scale(1.08);filter:saturate(0.98) contrast(1.03)}
.fallback-variant-04{object-position:46% 52%;transform:scale(1.06);filter:saturate(1.02) brightness(1.02)}
.fallback-variant-05{object-position:54% 50%;transform:scale(1.10);filter:saturate(1.05) contrast(0.99)}
.fallback-variant-06{object-position:50% 42%;transform:scale(1.04);filter:saturate(0.97) brightness(0.99)}
.fallback-variant-07{object-position:44% 48%;transform:scale(1.09);filter:saturate(1.03) contrast(1.02)}
.fallback-variant-08{object-position:56% 47%;transform:scale(1.07);filter:saturate(1.01) brightness(1.01)}
.fallback-variant-09{object-position:47% 55%;transform:scale(1.03);filter:saturate(0.99) contrast(1.04)}
.fallback-variant-10{object-position:53% 43%;transform:scale(1.11);filter:saturate(1.06) brightness(0.98)}


.client-selection-description{border:1px solid var(--line);border-radius:24px;padding:22px 24px;background:linear-gradient(180deg,color-mix(in srgb, var(--panel) 92%, white),color-mix(in srgb, var(--panel2) 88%, white));box-shadow:0 10px 24px rgba(0,0,0,.04);margin-bottom:16px}.client-selection-description__kicker{font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}.client-selection-description__title{margin:0 0 10px;font-size:28px;line-height:1.05}.client-selection-description__text{margin:0;color:var(--soft);line-height:1.7}.taxonomy-textarea{min-height:140px}.admin-wine-filters-actions .btn{width:100%}


/* ===== v79 image fallback centering ===== */
.card-media img.img--fallback,
.admin-item__thumb img.img--fallback,
.form-image-preview__card img.img--fallback,
.client-list-card__media img.img--fallback,
img.img--fallback {
  object-fit: contain !important;
  object-position: center center !important;
  background: linear-gradient(180deg, rgba(255,253,249,.95), rgba(246,239,227,.95)) !important;
}
.card-media img[data-fallback-image],
.admin-item__thumb img[data-fallback-image],
.form-image-preview__card img[data-fallback-image],
.client-list-card__media img[data-fallback-image] {
  object-position: center center !important;
}


/* ===== v82 centered fallback images ===== */
.card-media img.img--fallback,
.admin-item__thumb img.img--fallback,
.form-image-preview__card img.img--fallback,
.client-list-card__media img.img--fallback,
img.img--fallback {
  object-fit: contain !important;
  object-position: center center !important;
  background: linear-gradient(180deg, rgba(255,253,249,.95), rgba(246,239,227,.95)) !important;
}

/* ===== v83 tool métier styles ===== */
.v83-tool-card{padding:14px;border:1px solid rgba(168,139,95,.16);border-radius:18px;background:linear-gradient(180deg, rgba(255,255,255,.72), rgba(249,244,235,.72));}
.product-note--pairing{padding:8px 10px;border-left:3px solid rgba(168,139,95,.55);background:rgba(255,251,245,.74);border-radius:10px;}
.service-row__stock{font-size:13px;color:var(--soft);margin-top:6px}
.service-row__last{font-size:12px;font-weight:700;color:#8b3d2e;margin-top:6px}
.detail-modal--service .detail-grid{margin-top:16px}

/* ===== v84 API-safe styles ===== */
.v84-api-safe-card,
.v84-api-safe-summary{
  border:1px solid rgba(122,141,107,.18);
  border-radius:18px;
  background:linear-gradient(180deg, rgba(255,255,255,.76), rgba(244,248,242,.76));
  padding:14px;
}

/* ===== v86 fiche vin ergonomique ===== */
.v86-form-stack{display:grid;gap:18px}
.v86-form-section{padding:18px;border:1px solid rgba(168,139,95,.16);border-radius:22px;background:linear-gradient(180deg, rgba(255,255,255,.74), rgba(248,244,236,.76))}
.v86-form-section__head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:14px;flex-wrap:wrap}
.v86-form-section--media .form-grid.cols-2{align-items:flex-start}
.v86-media-column{display:grid;gap:14px}
.v86-form-actions{margin-top:8px}
.v86-compact-field .multi-dropdown__summary{padding:12px 14px;border-radius:18px}
.v86-compact-field .multi-dropdown__title{font-size:16px}
.v86-compact-field .multi-dropdown__chips{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px;max-height:50px;overflow:auto}
.multi-dropdown--compact{position:relative}
.multi-dropdown__menu--compact{position:absolute;left:0;right:0;top:calc(100% + 8px);z-index:25;max-height:260px;overflow:auto;box-shadow:0 16px 38px rgba(0,0,0,.12)}
.check-row--compact{padding:9px 10px}
.v86-variant-picker{display:grid;gap:10px}
.v86-variant-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.v86-variant-card{border:1px solid var(--line);border-radius:16px;background:#fff;padding:8px;display:grid;gap:8px;cursor:pointer}
.v86-variant-card img{width:100%;aspect-ratio:1.35;object-fit:cover;object-position:center;border-radius:10px;display:block;background:var(--panel-2)}
.v86-variant-card span{font-size:12px;color:var(--soft)}
.v86-variant-card.is-active{border-color:rgba(122,141,107,.65);box-shadow:0 0 0 2px rgba(122,141,107,.16)}
.v86-preview-card{min-height:240px}
.v86-preview-card img.img--fallback{object-fit:contain!important}
.service-mode-bar--pro{border:1px solid rgba(122,141,107,.18);background:linear-gradient(180deg, rgba(255,255,255,.86), rgba(245,250,244,.86))}
@media (max-width:1100px){
  .v86-variant-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media (max-width:760px){
  .v86-form-section__head{align-items:flex-start}
  .v86-variant-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}


/* ===== v87 UI simplification ===== */
.section-copy,
.taxonomy-modal__copy,
.client-selection-description,
.sommelier-section,
.v84-api-safe-summary,
.field .helper,
.v83-tool-card .helper,
.v84-api-safe-card .helper,
.empty-state p {
  display: none !important;
}
.multi-dropdown__summary{
  padding: 10px 14px !important;
  min-height: 56px !important;
}
.multi-dropdown__title{
  font-size: 15px !important;
}
.multi-dropdown__chips{
  font-size: 13px !important;
  line-height: 1.3 !important;
}
.display-switch{
  justify-content: flex-end;
}
