/*! Jamboojet UI — generated from the design system (tokens.json + bundle.css). Do not edit by hand; edit the design system and rebuild. */
@font-face { font-family: "Vazirmatn JB"; src: url("../fonts/Vazirmatn-Variable.woff2") format("woff2"); font-weight: 100 900; font-style: normal; font-display: swap; }
:root {
  --jb-brand-50: #eff6ff;
  --jb-brand-100: #dbe9fc;
  --jb-brand-200: #b6d3f8;
  --jb-brand-500: #3e84dc;
  --jb-brand-600: #065fd5;
  --jb-brand-700: #0450b4;
  --jb-brand-800: #063f8c;
  --jb-ink-900: #142b4a;
  --jb-ink-700: #33445e;
  --jb-ink-500: #5b6880;
  --jb-ink-400: #7f8aa0;
  --jb-line: #e3e8f0;
  --jb-line-strong: #7a879e;
  --jb-surface: #ffffff;
  --jb-surface-subtle: #f5f7fb;
  --jb-surface-ink: #0e2140;
  --jb-on-brand: #ffffff;
  --jb-success-600: #0f7a4a;
  --jb-success-50: #e6f5ec;
  --jb-warning-700: #8a4b00;
  --jb-warning-50: #fff3df;
  --jb-danger-600: #c42b2b;
  --jb-danger-50: #fdecec;
  --jb-whatsapp: #15774a;
  --jb-eitaa: #b54f19;
  --jb-signal-400: #ffc83d;
  --jb-focus-ring: #065fd5;
  --jb-shadow-sm: 0 1px 2px rgba(20, 43, 74, 0.06), 0 1px 1px rgba(20, 43, 74, 0.04);
  --jb-shadow-md: 0 6px 20px rgba(20, 43, 74, 0.08);
  --jb-shadow-lg: 0 18px 48px rgba(20, 43, 74, 0.14);
  --jb-space-1: 4px;
  --jb-space-2: 8px;
  --jb-space-3: 12px;
  --jb-space-4: 16px;
  --jb-space-5: 20px;
  --jb-space-6: 24px;
  --jb-space-8: 32px;
  --jb-space-12: 48px;
  --jb-space-16: 64px;
  --jb-radius-sm: 8px;
  --jb-radius-md: 12px;
  --jb-radius-lg: 16px;
  --jb-radius-xl: 24px;
  --jb-radius-pill: 999px;
  --jb-container: 1240px;
  --jb-header-h: 72px;
  --jb-tabbar-h: 64px;
  --jb-touch-min: 44px;
  --jb-bp-sm: 640px;
  --jb-bp-md: 960px;
  --jb-bp-lg: 1200px;
  --jb-z-sticky: 50;
  --jb-z-tabbar: 60;
  --jb-z-drawer: 80;
  --jb-z-modal: 100;
  --jb-font-sans: "Vazirmatn JB", Tahoma, system-ui, sans-serif;
  --jb-font-latin: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}
/* Jamboojet UI — components.css
   One stylesheet for the WordPress theme. Requires tokens.css (CSS custom properties) loaded first.
   Prefix: jb-. Logical properties only (inline-start = right in RTL). Mobile-first; breakpoints 640 / 960 / 1200. */

/* ---------- Base ---------- */
.jb.jb-ui, .jb.jb-ui.jb-ui.jb-ui *, .jb.jb-ui.jb-ui.jb-ui *::before, .jb.jb-ui.jb-ui.jb-ui *::after { box-sizing: border-box; }
.jb.jb-ui {
  direction: rtl;
  text-align: start;
  font-family: "JmbjPersianDigits", var(--jb-font-sans);
  font-size: 15px;
  line-height: 1.85;
  color: var(--jb-ink-700);
  background: var(--jb-surface);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  font-feature-settings: "ss01" 0;
}
/* The native theme assigns its font to every element. Restore inheritance only
   inside our text/layout elements, leaving native icon fonts and code faces alone. */
.jb.jb-ui.jb-ui.jb-ui :where(div, section, article, header, footer, nav, aside, main, p, h1, h2, h3, h4, h5, h6, a, span, b, strong, em, small, label, summary, details, li, ul, ol, dl, dt, dd, figure, figcaption, blockquote, button, input, select, textarea):where(:not([class*="icofont"]):not([class*="eicon"])) { font-family: inherit; }
.jb.jb-ui.jb-ui :where(h1, h2, h3, h4) { color: var(--jb-ink-900); margin: 0; }
.jb.jb-ui.jb-ui h1 { font-size: 26px; line-height: 1.55; font-weight: 800; }
.jb.jb-ui.jb-ui h2 { font-size: 20px; line-height: 1.6; font-weight: 700; }
.jb.jb-ui.jb-ui h3 { font-size: 17px; line-height: 1.7; font-weight: 700; }
@media (min-width: 640px) { .jb.jb-ui.jb-ui h1 { font-size: 30px; } .jb.jb-ui.jb-ui h2 { font-size: 24px; } .jb.jb-ui.jb-ui h3 { font-size: 18px; } }
.jb.jb-ui.jb-ui p { margin: 0; }
.jb.jb-ui.jb-ui a { color: var(--jb-brand-600); text-decoration: none; }
.jb.jb-ui.jb-ui :where(p, .jb-help) > a { text-decoration: underline; text-underline-offset: 4px; }
.jb.jb-ui.jb-ui a:hover { color: var(--jb-brand-700); text-decoration: underline; text-underline-offset: 4px; }
.jb.jb-ui.jb-ui :where(ul, ol) { margin: 0; padding: 0; list-style: none; }
/* Hardening: neutralise theme / page-builder element styles inside .jb (Hello Elementor, kits, WooCommerce) */
.jb.jb-ui.jb-ui :where(button, input, select, textarea) { font-family: inherit; font-size: inherit; line-height: inherit; color: inherit; letter-spacing: normal; text-transform: none; text-shadow: none; box-shadow: none; margin: 0; border-radius: 0; background: none; border: 0; padding: 0; width: auto; height: auto; min-height: 0; max-width: 100%; }
.jb.jb-ui.jb-ui :where(h1, h2, h3, h4, h5, h6) { font-family: inherit; letter-spacing: normal; text-transform: none; padding: 0; }
.jb.jb-ui.jb-ui :where(table, thead, tbody, tr, th, td) { border: 0; background: transparent; }
.jb.jb-ui.jb-ui :where(th, td) { padding: 0; }
.jb.jb-ui.jb-ui :where(label) { line-height: inherit; vertical-align: baseline; margin: 0; }
.jb.jb-ui.jb-ui :where(dl, dd, dt, figure, blockquote, fieldset, legend) { margin: 0; padding: 0; border: 0; }
.jb.jb-ui.jb-ui :where(a) { box-shadow: none; background: transparent; }
.jb.jb-ui.jb-ui :where(img) { border: 0; box-shadow: none; border-radius: 0; }
.jb.jb-ui.jb-ui :where(svg) { max-width: none; }
.jb.jb-ui.jb-ui :where(li) { margin: 0; }
.jb.jb-ui.jb-ui img { max-width: 100%; height: auto; display: block; }
.jb.jb-ui.jb-ui button { font: inherit; color: inherit; }
.jb.jb-ui.jb-ui.jb-ui :focus-visible { outline: 2px solid var(--jb-focus-ring); outline-offset: 2px; border-radius: 6px; }
.jb.jb-ui.jb-ui.jb-ui [hidden] { display: none !important; }
.jb.jb-ui.jb-ui .jb-sr { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.jb.jb-ui.jb-ui .jb-container { width: 100%; max-width: var(--jb-container); margin-inline: auto; padding-inline: var(--jb-space-4); }
@media (min-width: 960px) { .jb.jb-ui.jb-ui .jb-container { padding-inline: var(--jb-space-8); } }
.jb.jb-ui.jb-ui .jb-ltr { direction: ltr; unicode-bidi: isolate; display: inline-block; }
.jb.jb-ui.jb-ui .jb-code { direction: ltr; unicode-bidi: isolate; font-family: var(--jb-font-latin); font-weight: 600; letter-spacing: .02em; }
.jb.jb-ui.jb-ui .jb-muted { color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui .jb-small { font-size: 13px; line-height: 1.8; }
.jb.jb-ui.jb-ui .jb-num { font-feature-settings: "tnum" 1; }
.jb.jb-ui.jb-ui .jb-i { width: 20px; height: 20px; flex: none; stroke: currentColor; fill: none; stroke-width: 1.75; stroke-linecap: round; stroke-linejoin: round; }
.jb.jb-ui.jb-ui .jb-i--sm { width: 16px; height: 16px; }
.jb.jb-ui.jb-ui .jb-i--lg { width: 24px; height: 24px; }
.jb.jb-ui.jb-ui .jb-flip { transform: scaleX(-1); } /* directional icons (arrows, chevrons) mirror in RTL */
@media (prefers-reduced-motion: reduce) { .jb.jb-ui.jb-ui.jb-ui * { transition: none !important; animation: none !important; } }

/* ---------- Buttons ---------- */
.jb.jb-ui.jb-ui .jb-btn {
  --jb-_bg: var(--jb-brand-600); --jb-_fg: var(--jb-on-brand); --jb-_bd: transparent;
  display: inline-flex; align-items: center; justify-content: center; gap: var(--jb-space-2);
  min-height: var(--jb-touch-min); padding: 0 var(--jb-space-5);
  border: 1.5px solid var(--jb-_bd); border-radius: var(--jb-radius-md);
  background: var(--jb-_bg); color: var(--jb-_fg);
  font-size: 14px; font-weight: 700; line-height: 1; white-space: nowrap;
  cursor: pointer; text-decoration: none !important;
  transition: background-color .15s, border-color .15s, color .15s, transform .05s;
}
.jb.jb-ui.jb-ui.jb-ui a.jb-btn:hover, .jb.jb-ui.jb-ui .jb-btn:hover { --jb-_bg: var(--jb-brand-700); color: var(--jb-_fg); }
.jb.jb-ui.jb-ui .jb-btn:active { --jb-_bg: var(--jb-brand-800); transform: translateY(1px); }
.jb.jb-ui.jb-ui .jb-btn--secondary { --jb-_bg: var(--jb-surface); --jb-_fg: var(--jb-brand-600); --jb-_bd: var(--jb-brand-600); }
.jb.jb-ui.jb-ui.jb-ui a.jb-btn--secondary:hover, .jb.jb-ui.jb-ui .jb-btn--secondary:hover { --jb-_bg: var(--jb-brand-50); --jb-_fg: var(--jb-brand-700); }
.jb.jb-ui.jb-ui .jb-btn--secondary:active { --jb-_bg: var(--jb-brand-100); }
.jb.jb-ui.jb-ui .jb-btn--tonal { --jb-_bg: var(--jb-brand-50); --jb-_fg: var(--jb-brand-600); }
.jb.jb-ui.jb-ui.jb-ui a.jb-btn--tonal:hover, .jb.jb-ui.jb-ui .jb-btn--tonal:hover { --jb-_bg: var(--jb-brand-100); --jb-_fg: var(--jb-brand-700); }
.jb.jb-ui.jb-ui .jb-btn--ghost { --jb-_bg: transparent; --jb-_fg: var(--jb-ink-700); }
.jb.jb-ui.jb-ui.jb-ui a.jb-btn--ghost:hover, .jb.jb-ui.jb-ui .jb-btn--ghost:hover { --jb-_bg: var(--jb-surface-subtle); --jb-_fg: var(--jb-ink-900); }
.jb.jb-ui.jb-ui .jb-btn--danger { --jb-_bg: var(--jb-danger-50); --jb-_fg: var(--jb-danger-600); }
.jb.jb-ui.jb-ui.jb-ui a.jb-btn--danger:hover, .jb.jb-ui.jb-ui .jb-btn--danger:hover { --jb-_bg: var(--jb-danger-600); --jb-_fg: var(--jb-on-brand); }
.jb.jb-ui.jb-ui .jb-btn--whatsapp { --jb-_bg: var(--jb-whatsapp); --jb-_fg: var(--jb-on-brand); }
.jb.jb-ui.jb-ui.jb-ui a.jb-btn--whatsapp:hover, .jb.jb-ui.jb-ui .jb-btn--whatsapp:hover { --jb-_bg: var(--jb-whatsapp); filter: brightness(.92); }
.jb.jb-ui.jb-ui .jb-btn--sm { min-height: 36px; padding: 0 var(--jb-space-3); font-size: 13px; border-radius: var(--jb-radius-sm); }
.jb.jb-ui.jb-ui .jb-btn--lg { min-height: 52px; padding: 0 var(--jb-space-6); font-size: 15px; }
.jb.jb-ui.jb-ui .jb-btn--block { width: 100%; }
.jb.jb-ui.jb-ui .jb-btn[disabled], .jb.jb-ui.jb-ui .jb-btn[aria-disabled="true"] { --jb-_bg: var(--jb-surface-subtle); --jb-_fg: var(--jb-ink-400); --jb-_bd: var(--jb-line); cursor: not-allowed; transform: none; }
.jb.jb-ui.jb-ui .jb-btn[aria-busy="true"] { pointer-events: none; }
.jb.jb-ui.jb-ui .jb-btn[aria-busy="true"]::before { content: ""; width: 16px; height: 16px; border-radius: 50%; border: 2px solid currentColor; border-inline-end-color: transparent; animation: jb-spin .7s linear infinite; }
@keyframes jb-spin { to { transform: rotate(360deg); } }
.jb.jb-ui.jb-ui .jb-iconbtn {
  position: relative; display: inline-grid; place-items: center;
  width: var(--jb-touch-min); height: var(--jb-touch-min); border-radius: var(--jb-radius-md);
  border: 0; background: transparent; color: var(--jb-ink-900); cursor: pointer;
}
.jb.jb-ui.jb-ui .jb-iconbtn:hover { background: var(--jb-surface-subtle); color: var(--jb-ink-900); }
.jb.jb-ui.jb-ui .jb-count {
  position: absolute; inset-block-start: 4px; inset-inline-end: 2px;
  min-width: 18px; height: 18px; padding: 0 5px; border-radius: var(--jb-radius-pill);
  background: var(--jb-danger-600); color: var(--jb-on-brand); font-size: 11px; font-weight: 800; line-height: 18px; text-align: center;
  box-shadow: 0 0 0 2px var(--jb-surface);
}
.jb.jb-ui.jb-ui .jb-link { display: inline-flex; align-items: center; gap: var(--jb-space-1); font-weight: 600; font-size: 14px; }

.jb.jb-ui.jb-ui .jb-user, .jb.jb-ui.jb-ui .jb-iconbtn, .jb.jb-ui.jb-ui .jb-drawer__link, .jb.jb-ui.jb-ui .jb-drawer__acc li a, .jb.jb-ui.jb-ui .jb-header__phone, .jb.jb-ui.jb-ui .jb-header__logo, .jb.jb-ui.jb-ui .jb-social a, .jb.jb-ui.jb-ui .jb-tabbar a, .jb.jb-ui.jb-ui .jb-crumbs a, .jb.jb-ui.jb-ui .jb-fcol li a, .jb.jb-ui.jb-ui .jb-contact a, .jb.jb-ui.jb-ui .jb-footer__legal a, .jb.jb-ui.jb-ui .jb-channel, .jb.jb-ui.jb-ui .jb-service, .jb.jb-ui.jb-ui .jb-cchan, .jb.jb-ui.jb-ui .jb-chip, .jb.jb-ui.jb-ui .jb-pager a { text-decoration: none !important; }

/* ---------- Form fields ---------- */
.jb.jb-ui.jb-ui .jb-field { display: grid; gap: var(--jb-space-2); }
.jb.jb-ui.jb-ui .jb-label { font-size: 14px; font-weight: 600; color: var(--jb-ink-900); line-height: 1.7; display: flex; align-items: baseline; flex-wrap: wrap; gap: var(--jb-space-2); }
.jb.jb-ui.jb-ui .jb-label .jb-opt { font-weight: 400; color: var(--jb-ink-500); font-size: 13px; }
.jb.jb-ui.jb-ui .jb-help { font-size: 13px; line-height: 1.8; color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui .jb-control {
  position: relative; display: flex; align-items: center;
  min-height: 48px; border: 1.5px solid var(--jb-line-strong); border-radius: var(--jb-radius-md);
  background: var(--jb-surface); transition: border-color .15s, box-shadow .15s;
}
.jb.jb-ui.jb-ui .jb-control:hover { border-color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui .jb-control:focus-within { border-color: var(--jb-brand-600); box-shadow: 0 0 0 3px var(--jb-brand-200); }
.jb.jb-ui.jb-ui .jb-control > .jb-i { margin-inline-start: var(--jb-space-3); color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui .jb-input, .jb.jb-ui.jb-ui .jb-select, .jb.jb-ui.jb-ui .jb-textarea {
  flex: 1; min-width: 0; width: 100%; border: 0; outline: 0; background: transparent; border-radius: 0; box-shadow: none; margin: 0; height: auto; max-width: none;
  padding: 0 var(--jb-space-4); min-height: 45px; font: inherit; font-size: 15px; color: var(--jb-ink-900);
}
.jb.jb-ui.jb-ui .jb-input::placeholder, .jb.jb-ui.jb-ui .jb-textarea::placeholder { color: var(--jb-ink-400); }
.jb.jb-ui.jb-ui .jb-input[dir="ltr"] { text-align: left; font-family: var(--jb-font-latin); font-size: 15px; }
.jb.jb-ui.jb-ui .jb-input[dir="ltr"]::placeholder { font-family: var(--jb-font-sans); text-align: right; direction: rtl; }
.jb.jb-ui.jb-ui .jb-input[dir="ltr"]:placeholder-shown { text-align: right; }
.jb.jb-ui.jb-ui .jb-textarea { padding-block: var(--jb-space-3); min-height: 104px; resize: vertical; line-height: 1.85; }
.jb.jb-ui.jb-ui .jb-select { appearance: none; padding-inline-end: 40px; cursor: pointer; }
.jb.jb-ui.jb-ui .jb-control--select::after {
  content: ""; position: absolute; inset-inline-end: 16px; width: 8px; height: 8px; pointer-events: none;
  border-inline-start: 1.75px solid var(--jb-ink-500); border-block-end: 1.75px solid var(--jb-ink-500); transform: translateY(-2px) rotate(-45deg);
}
.jb.jb-ui.jb-ui .jb-affix { padding-inline: var(--jb-space-3); color: var(--jb-ink-500); font-size: 13px; font-weight: 600; white-space: nowrap; border-inline-start: 1px solid var(--jb-line); align-self: stretch; display: flex; align-items: center; background: var(--jb-surface-subtle); border-start-end-radius: calc(var(--jb-radius-md) - 2px); border-end-end-radius: calc(var(--jb-radius-md) - 2px); }
.jb.jb-ui.jb-ui .jb-field--error .jb-control { border-color: var(--jb-danger-600); }
.jb.jb-ui.jb-ui .jb-field--error .jb-control:focus-within { box-shadow: 0 0 0 3px var(--jb-danger-50); }
.jb.jb-ui.jb-ui .jb-error { display: flex; gap: var(--jb-space-1); align-items: center; font-size: 13px; color: var(--jb-danger-600); font-weight: 600; }
.jb.jb-ui.jb-ui .jb-control[aria-disabled="true"] { background: var(--jb-surface-subtle); border-color: var(--jb-line); }
.jb.jb-ui.jb-ui .jb-check { display: flex; gap: var(--jb-space-3); align-items: flex-start; cursor: pointer; font-size: 14px; color: var(--jb-ink-700); line-height: 1.8; }
.jb.jb-ui.jb-ui .jb-check input { appearance: none; flex: none; width: 22px; height: 22px; min-height: 0; padding: 0; box-shadow: none; margin: 2px 0 0; border: 1.5px solid var(--jb-line-strong); border-radius: 6px; background: var(--jb-surface); display: grid; place-items: center; cursor: pointer; }
.jb.jb-ui.jb-ui .jb-check input[type="radio"] { border-radius: 50%; }
.jb.jb-ui.jb-ui .jb-check input:checked { background: var(--jb-brand-600); border-color: var(--jb-brand-600); }
.jb.jb-ui.jb-ui .jb-check input[type="checkbox"]:checked::after { content: ""; width: 6px; height: 11px; border: solid var(--jb-on-brand); border-width: 0 2px 2px 0; transform: translateY(-1px) rotate(45deg); }
.jb.jb-ui.jb-ui .jb-check input[type="radio"]:checked::after { content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--jb-on-brand); }
.jb.jb-ui.jb-ui .jb-choice { display: grid; gap: var(--jb-space-3); }
.jb.jb-ui.jb-ui .jb-choice--row { grid-template-columns: repeat(auto-fit, minmax(min(100%, 180px), 1fr)); }
.jb.jb-ui.jb-ui .jb-option {
  position: relative; display: flex; gap: var(--jb-space-3); align-items: flex-start; padding: var(--jb-space-4);
  border: 1.5px solid var(--jb-line-strong); border-radius: var(--jb-radius-md); background: var(--jb-surface); cursor: pointer;
  transition: border-color .15s, background-color .15s;
}
.jb.jb-ui.jb-ui .jb-option:hover { border-color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui .jb-option:has(input:checked) { border-color: var(--jb-brand-600); background: var(--jb-brand-50); box-shadow: inset 0 0 0 1px var(--jb-brand-600); }
.jb.jb-ui.jb-ui .jb-option input { position: absolute; opacity: 0; inset: 0; cursor: pointer; }
.jb.jb-ui.jb-ui .jb-option:has(input:focus-visible) { outline: 2px solid var(--jb-focus-ring); outline-offset: 2px; }
.jb.jb-ui.jb-ui .jb-option__icon { width: 40px; height: 40px; border-radius: var(--jb-radius-sm); display: grid; place-items: center; background: var(--jb-brand-50); color: var(--jb-brand-600); flex: none; }
.jb.jb-ui.jb-ui .jb-option:has(input:checked) .jb-option__icon { background: var(--jb-brand-600); color: var(--jb-on-brand); }
.jb.jb-ui.jb-ui .jb-option__title { display: block; font-weight: 700; color: var(--jb-ink-900); font-size: 14px; line-height: 1.7; }
.jb.jb-ui.jb-ui .jb-option__meta { display: block; font-size: 13px; color: var(--jb-ink-500); line-height: 1.7; }
.jb.jb-ui.jb-ui .jb-option__end { margin-inline-start: auto; font-weight: 700; color: var(--jb-ink-900); font-size: 14px; white-space: nowrap; }
.jb.jb-ui.jb-ui .jb-upload {
  display: grid; justify-items: center; gap: var(--jb-space-2); text-align: center; padding: var(--jb-space-6) var(--jb-space-4);
  border: 1.5px dashed var(--jb-line-strong); border-radius: var(--jb-radius-lg); background: var(--jb-surface-subtle); color: var(--jb-ink-500); cursor: pointer;
}
.jb.jb-ui.jb-ui .jb-upload:hover { border-color: var(--jb-brand-600); background: var(--jb-brand-50); }
.jb.jb-ui.jb-ui .jb-upload strong { color: var(--jb-ink-900); font-size: 14px; }
.jb.jb-ui.jb-ui .jb-upload .jb-i { width: 28px; height: 28px; color: var(--jb-brand-600); }
.jb.jb-ui.jb-ui .jb-grid { display: grid; gap: var(--jb-space-5) var(--jb-space-4); }
@media (min-width: 640px) { .jb.jb-ui.jb-ui .jb-grid--2 { grid-template-columns: 1fr 1fr; } .jb.jb-ui.jb-ui .jb-grid--3 { grid-template-columns: repeat(3, 1fr); } .jb.jb-ui.jb-ui .jb-span-2 { grid-column: span 2; } }
.jb.jb-ui.jb-ui .jb-segment { display: flex; padding: 4px; gap: 4px; background: var(--jb-surface-subtle); border: 1px solid var(--jb-line); border-radius: var(--jb-radius-md); overflow-x: auto; scrollbar-width: none; }
.jb.jb-ui.jb-ui .jb-segment button { flex: 1 1 0; display: inline-flex; align-items: center; justify-content: center; gap: var(--jb-space-2); min-height: 40px; padding: 0 var(--jb-space-4); border: 0; border-radius: var(--jb-radius-sm); background: transparent; color: var(--jb-ink-500); font-weight: 700; font-size: 14px; cursor: pointer; white-space: nowrap; }
.jb.jb-ui.jb-ui .jb-segment button:hover { color: var(--jb-ink-900); }
@media (max-width: 639px) { .jb.jb-ui.jb-ui .jb-segment button { padding: 0 var(--jb-space-2); font-size: 13px; gap: 6px; } }
.jb.jb-ui.jb-ui .jb-segment button[aria-selected="true"] { background: var(--jb-surface); color: var(--jb-brand-600); box-shadow: var(--jb-shadow-sm); }

/* ---------- Badges & alerts ---------- */
.jb.jb-ui.jb-ui .jb-badge { display: inline-flex; align-items: center; gap: 6px; min-height: 26px; padding: 0 10px; border-radius: var(--jb-radius-pill); font-size: 12px; font-weight: 700; line-height: 1; white-space: nowrap; background: var(--jb-surface-subtle); color: var(--jb-ink-700); }
.jb.jb-ui.jb-ui .jb-badge::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: currentColor; }
.jb.jb-ui.jb-ui .jb-badge--plain::before { display: none; }
.jb.jb-ui.jb-ui .jb-badge--info { background: var(--jb-brand-50); color: var(--jb-brand-600); }
.jb.jb-ui.jb-ui .jb-badge--success { background: var(--jb-success-50); color: var(--jb-success-600); }
.jb.jb-ui.jb-ui .jb-badge--warning { background: var(--jb-warning-50); color: var(--jb-warning-700); }
.jb.jb-ui.jb-ui .jb-badge--danger { background: var(--jb-danger-50); color: var(--jb-danger-600); }
.jb.jb-ui.jb-ui .jb-badge--solid { background: var(--jb-brand-600); color: var(--jb-on-brand); }
.jb.jb-ui.jb-ui .jb-alert { display: flex; gap: var(--jb-space-3); align-items: flex-start; padding: var(--jb-space-4); border-radius: var(--jb-radius-lg); background: var(--jb-brand-50); color: var(--jb-ink-700); font-size: 14px; line-height: 1.85; }
.jb.jb-ui.jb-ui .jb-alert > .jb-i { color: var(--jb-brand-600); margin-top: 2px; }
.jb.jb-ui.jb-ui .jb-alert__body { flex: 1; display: grid; gap: 2px; }
.jb.jb-ui.jb-ui .jb-alert__title { font-weight: 700; color: var(--jb-ink-900); }
.jb.jb-ui.jb-ui .jb-alert__actions { display: flex; gap: var(--jb-space-2); flex-wrap: wrap; margin-top: var(--jb-space-2); }
.jb.jb-ui.jb-ui .jb-alert--success { background: var(--jb-success-50); } .jb.jb-ui.jb-ui .jb-alert--success > .jb-i { color: var(--jb-success-600); }
.jb.jb-ui.jb-ui .jb-alert--warning { background: var(--jb-warning-50); } .jb.jb-ui.jb-ui .jb-alert--warning > .jb-i { color: var(--jb-warning-700); }
.jb.jb-ui.jb-ui .jb-alert--danger { background: var(--jb-danger-50); } .jb.jb-ui.jb-ui .jb-alert--danger > .jb-i { color: var(--jb-danger-600); }
@media (min-width: 640px) { .jb.jb-ui.jb-ui .jb-alert { align-items: center; } .jb.jb-ui.jb-ui .jb-alert__actions { margin-top: 0; } .jb.jb-ui.jb-ui .jb-alert--row .jb-alert__body { flex: 1; } }

/* ---------- Card & section ---------- */
.jb.jb-ui.jb-ui .jb-card { background: var(--jb-surface); border: 1px solid var(--jb-line); border-radius: var(--jb-radius-lg); padding: var(--jb-space-4); }
@media (min-width: 640px) { .jb.jb-ui.jb-ui .jb-card { padding: var(--jb-space-6); } }
.jb.jb-ui.jb-ui .jb-card__head { display: flex; align-items: center; justify-content: space-between; gap: var(--jb-space-3); margin-block-end: var(--jb-space-4); }
.jb.jb-ui.jb-ui .jb-section { padding-block: var(--jb-space-12); }
@media (min-width: 960px) { .jb.jb-ui.jb-ui .jb-section { padding-block: var(--jb-space-16); } }
.jb.jb-ui.jb-ui .jb-section--subtle { background: var(--jb-surface-subtle); }
.jb.jb-ui.jb-ui .jb-eyebrow { font-size: 13px; font-weight: 700; color: var(--jb-brand-600); }
.jb.jb-ui.jb-ui .jb-dl { display: grid; gap: 0; }
.jb.jb-ui.jb-ui .jb-dl > div { display: flex; justify-content: space-between; align-items: baseline; gap: var(--jb-space-4); padding-block: 10px; border-block-end: 1px dashed var(--jb-line); font-size: 14px; }
.jb.jb-ui.jb-ui .jb-dl > div:last-child { border-block-end: 0; }
.jb.jb-ui.jb-ui .jb-dl dt { color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui .jb-dl dd { margin: 0; color: var(--jb-ink-900); font-weight: 600; text-align: end; }
.jb.jb-ui.jb-ui .jb-price { font-size: 20px; font-weight: 800; color: var(--jb-ink-900); line-height: 1.5; font-feature-settings: "tnum" 1; }
.jb.jb-ui.jb-ui .jb-price small { font-size: 12px; font-weight: 500; color: var(--jb-ink-500); margin-inline-start: 4px; }
.jb.jb-ui.jb-ui .jb-price--old { font-size: 13px; font-weight: 500; color: var(--jb-ink-500); text-decoration: line-through; }

/* ---------- Header ---------- */
.jb.jb-ui.jb-ui .jb-header { position: sticky; top: 0; z-index: var(--jb-z-sticky); background: var(--jb-surface); border-block-end: 1px solid var(--jb-line); }
.jb.jb-ui.jb-ui .jb-header__bar { display: flex; align-items: center; gap: var(--jb-space-3); min-height: 60px; }
.jb.jb-ui.jb-ui .jb-header__logo { display: inline-flex; align-items: center; flex: none; }
.jb.jb-ui.jb-ui .jb-header__logo img { height: 30px; width: auto; }
.jb.jb-ui.jb-ui .jb-header__menu { margin-inline-start: -8px; }
.jb.jb-ui.jb-ui .jb-header__actions { display: flex; align-items: center; gap: var(--jb-space-1); margin-inline-start: auto; }
.jb.jb-ui.jb-ui .jb-header__cta, .jb.jb-ui.jb-ui .jb-header__phone, .jb.jb-ui.jb-ui .jb-header__nav, .jb.jb-ui.jb-ui .jb-header__user-name { display: none; }
.jb.jb-ui.jb-ui .jb-header__search { padding-block: 0 var(--jb-space-3); }
.jb.jb-ui.jb-ui .jb-omni { display: flex; align-items: center; gap: var(--jb-space-2); padding: 4px; padding-inline-start: var(--jb-space-3); background: var(--jb-brand-50); border: 1.5px solid transparent; border-radius: var(--jb-radius-md); }
.jb.jb-ui.jb-ui .jb-omni:focus-within { border-color: var(--jb-brand-600); background: var(--jb-surface); box-shadow: 0 0 0 3px var(--jb-brand-200); }
.jb.jb-ui.jb-ui .jb-omni > .jb-i { color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui .jb-omni input { flex: 1; min-width: 0; width: auto; border: 0; outline: 0; background: transparent; padding: 0; margin: 0; border-radius: 0; box-shadow: none; height: auto; font: inherit; font-size: 14px; color: var(--jb-ink-900); min-height: 40px; }
.jb.jb-ui.jb-ui .jb-omni input::placeholder { color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui .jb-omni .jb-btn { min-height: 40px; }
.jb.jb-ui.jb-ui .jb-omni__photo { color: var(--jb-brand-600); }
.jb.jb-ui.jb-ui .jb-omni__photo span { display: none; }
.jb.jb-ui.jb-ui .jb-entry-feedback { margin-block-start: var(--jb-space-2); padding: var(--jb-space-3); border: 1px solid var(--jb-line); border-radius: var(--jb-radius-md); background: var(--jb-surface); overflow-wrap: anywhere; }
.jb.jb-ui.jb-ui .jb-entry-feedback p { margin: 0; font-size: 13px; }
.jb.jb-ui.jb-ui .jb-entry-feedback progress { display: block; inline-size: 100%; block-size: 6px; margin-block: var(--jb-space-2); accent-color: var(--jb-brand-600); }
.jb.jb-ui.jb-ui .jb-entry-feedback [hidden] { display: none; }
.jb.jb-ui.jb-ui .jb-entry-feedback.is-error { border-color: var(--jb-ink-900); }
.jb.jb-ui.jb-ui .jb-user { display: inline-flex; align-items: center; gap: var(--jb-space-2); min-height: var(--jb-touch-min); padding-inline: 4px; border: 0; background: transparent; border-radius: var(--jb-radius-md); cursor: pointer; color: var(--jb-ink-900); font-weight: 600; font-size: 14px; }
.jb.jb-ui.jb-ui .jb-user:hover { background: var(--jb-surface-subtle); }
.jb.jb-ui.jb-ui .jb-account { position: relative; }
.jb.jb-ui.jb-ui .jb-account__panel { position: absolute; inset-inline-end: 0; inset-block-start: calc(100% + var(--jb-space-2)); width: min(280px, calc(100vw - 32px)); max-height: calc(100dvh - 100px); overflow-y: auto; padding: var(--jb-space-2); border: 1px solid var(--jb-line); border-radius: var(--jb-radius-md); background: var(--jb-surface); box-shadow: var(--jb-shadow-lg); z-index: var(--jb-z-drawer); }
.jb.jb-ui.jb-ui .jb-account__panel[hidden] { display: none; }
.jb.jb-ui.jb-ui .jb-account__panel a { display: flex; align-items: center; gap: var(--jb-space-3); min-height: var(--jb-touch-min); padding: var(--jb-space-2) var(--jb-space-3); color: var(--jb-ink-900); border-radius: var(--jb-radius-sm); text-decoration: none; font-size: 14px; overflow-wrap: anywhere; }
.jb.jb-ui.jb-ui .jb-account__panel a:hover, .jb.jb-ui.jb-ui .jb-account__panel a:focus-visible { background: var(--jb-brand-50); color: var(--jb-brand-600); }
.jb.jb-ui.jb-ui .jb-account__panel a.jb-account__logout { border-block-start: 1px solid var(--jb-line); color: var(--jb-danger-600); }
.jb.jb-ui.jb-ui .jb-avatar { width: 32px; height: 32px; border-radius: 50%; background: var(--jb-brand-100); color: var(--jb-brand-800); display: grid; place-items: center; font-weight: 800; font-size: 13px; flex: none; }
@media (min-width: 960px) {
  .jb.jb-ui.jb-ui .jb-header__bar { min-height: var(--jb-header-h); gap: var(--jb-space-6); }
  .jb.jb-ui.jb-ui .jb-header__menu, .jb.jb-ui.jb-ui .jb-header__search-btn { display: none; }
  .jb.jb-ui.jb-ui .jb-header__logo img { height: 34px; }
  .jb.jb-ui.jb-ui .jb-header__search { display: block; flex: 1; max-width: 620px; padding: 0; }
  .jb.jb-ui.jb-ui .jb-header__cta { display: inline-flex; }
  .jb.jb-ui.jb-ui .jb-header__user-name { display: inline; }
  .jb.jb-ui.jb-ui .jb-omni__photo span { display: inline; }
  .jb.jb-ui.jb-ui .jb-header__nav { display: block; border-block-start: 1px solid var(--jb-line); }
  .jb.jb-ui.jb-ui .jb-header__phone { display: inline-flex; }
}
.jb.jb-ui.jb-ui .jb-nav { display: flex; align-items: center; gap: var(--jb-space-1); min-height: 52px; }
/* Match the verified parent grid, only inside the header; other page widths stay untouched. */
@media (min-width: 960px) { .jb.jb-ui.jb-ui .jb-header .jb-container, .jb.jb-ui.jb-ui .jb-footer > .jb-container { max-width: 100%; padding-inline: 15px; } .jb.jb-ui.jb-ui .jb-header .jb-nav { flex-wrap: wrap; } }
@media (min-width: 1200px) { .jb.jb-ui.jb-ui .jb-header .jb-container, .jb.jb-ui.jb-ui .jb-footer > .jb-container { max-width: 1340px; } }
@media (min-width: 1600px) { .jb.jb-ui.jb-ui .jb-header .jb-container, .jb.jb-ui.jb-ui .jb-footer > .jb-container { max-width: 1740px; } }
.jb.jb-ui.jb-ui .jb-nav__item { position: static; }
.jb.jb-ui.jb-ui .jb-nav__link { display: inline-flex; align-items: center; gap: 6px; min-height: 44px; padding: 0 var(--jb-space-3); border-radius: var(--jb-radius-sm); color: var(--jb-ink-700); font-size: 14px; font-weight: 600; background: transparent; border: 0; cursor: pointer; }
.jb.jb-ui.jb-ui.jb-ui a.jb-nav__link:hover, .jb.jb-ui.jb-ui .jb-nav__link:hover { color: var(--jb-ink-900); background: var(--jb-surface-subtle); text-decoration: none; }
.jb.jb-ui.jb-ui .jb-nav__link[aria-current="page"] { color: var(--jb-brand-600); }
.jb.jb-ui.jb-ui .jb-nav__link[aria-expanded="true"] { color: var(--jb-brand-600); background: var(--jb-brand-50); }
.jb.jb-ui.jb-ui .jb-nav__link .jb-chev { width: 14px; height: 14px; transition: transform .15s; }
.jb.jb-ui.jb-ui .jb-nav__link[aria-expanded="true"] .jb-chev { transform: rotate(180deg); }
.jb.jb-ui.jb-ui .jb-nav__new { font-size: 10px; font-weight: 800; color: var(--jb-on-brand); background: var(--jb-danger-600); border-radius: var(--jb-radius-pill); padding: 2px 6px; line-height: 1.2; }
.jb.jb-ui.jb-ui .jb-header__phone { margin-inline-start: auto; align-items: center; gap: var(--jb-space-2); font-weight: 700; color: var(--jb-ink-900); font-size: 14px; }
.jb.jb-ui.jb-ui .jb-mega { position: absolute; inset-inline: 0; top: 100%; z-index: var(--jb-z-drawer); background: var(--jb-surface); border-block: 1px solid var(--jb-line); box-shadow: var(--jb-shadow-lg); }
.jb.jb-ui.jb-ui .jb-mega[hidden] { display: none; }
.jb.jb-ui.jb-ui .jb-mega__inner { display: grid; grid-template-columns: repeat(3, 1fr) 300px; gap: var(--jb-space-8); padding-block: var(--jb-space-8); }
.jb.jb-ui.jb-ui .jb-mega__col h4 { font-size: 13px; color: var(--jb-ink-500); font-weight: 700; margin-block-end: var(--jb-space-3); }
.jb.jb-ui.jb-ui .jb-mega__col li + li { margin-top: 2px; }
.jb.jb-ui.jb-ui .jb-mega__link { display: flex; gap: var(--jb-space-3); align-items: flex-start; padding: var(--jb-space-2) var(--jb-space-3); margin-inline: calc(var(--jb-space-3) * -1); border-radius: var(--jb-radius-sm); color: var(--jb-ink-900) !important; text-decoration: none !important; }
.jb.jb-ui.jb-ui .jb-mega__link:hover { background: var(--jb-surface-subtle); }
.jb.jb-ui.jb-ui .jb-mega__link .jb-i { color: var(--jb-brand-600); margin-top: 3px; }
.jb.jb-ui.jb-ui .jb-mega__link strong { display: block; font-size: 14px; font-weight: 700; line-height: 1.7; }
.jb.jb-ui.jb-ui .jb-mega__link span { display: block; font-size: 13px; color: var(--jb-ink-500); line-height: 1.7; }
.jb.jb-ui.jb-ui .jb-mega__promo { background: var(--jb-brand-50); border-radius: var(--jb-radius-lg); padding: var(--jb-space-6); display: grid; gap: var(--jb-space-3); align-content: start; }
.jb.jb-ui.jb-ui .jb-mega__promo h4 { color: var(--jb-brand-800); font-size: 17px; }

/* Mobile drawer */
.jb.jb-ui.jb-ui .jb-drawer { position: fixed; inset: 0; z-index: var(--jb-z-drawer); display: flex; }
.jb.jb-ui.jb-ui .jb-drawer[hidden] { display: none; }
.jb.jb-ui.jb-ui .jb-drawer__scrim { position: absolute; inset: 0; background: rgba(14, 33, 64, .48); }
.jb.jb-ui.jb-ui .jb-drawer__panel { position: relative; width: min(340px, 88vw); height: 100%; background: var(--jb-surface); overflow-y: auto; display: flex; flex-direction: column; box-shadow: var(--jb-shadow-lg); }
.jb.jb-ui.jb-ui .jb-drawer__head { display: flex; align-items: center; justify-content: space-between; padding: var(--jb-space-3) var(--jb-space-4); border-block-end: 1px solid var(--jb-line); }
.jb.jb-ui.jb-ui .jb-drawer__acc { border-block-end: 1px solid var(--jb-line); }
.jb.jb-ui.jb-ui .jb-drawer__acc summary { list-style: none; display: flex; align-items: center; justify-content: space-between; gap: var(--jb-space-3); min-height: 52px; padding-inline: var(--jb-space-4); font-weight: 700; color: var(--jb-ink-900); cursor: pointer; }
.jb.jb-ui.jb-ui .jb-drawer__acc summary::-webkit-details-marker { display: none; }
.jb.jb-ui.jb-ui .jb-drawer__acc summary .jb-chev { transition: transform .15s; }
.jb.jb-ui.jb-ui .jb-drawer__acc[open] summary .jb-chev { transform: rotate(180deg); }
.jb.jb-ui.jb-ui .jb-drawer__acc ul { padding: 0 var(--jb-space-4) var(--jb-space-3); }
.jb.jb-ui.jb-ui .jb-drawer__acc li a { display: flex; align-items: center; gap: var(--jb-space-3); min-height: 44px; color: var(--jb-ink-700); font-size: 14px; }
.jb.jb-ui.jb-ui .jb-drawer__link { display: flex; align-items: center; justify-content: space-between; min-height: 52px; padding-inline: var(--jb-space-4); border-block-end: 1px solid var(--jb-line); font-weight: 700; color: var(--jb-ink-900) !important; }
.jb.jb-ui.jb-ui .jb-drawer__foot { margin-top: auto; padding: var(--jb-space-4); display: grid; gap: var(--jb-space-3); background: var(--jb-surface-subtle); }

/* Bottom tab bar (mobile) */
.jb.jb-ui.jb-ui .jb-tabbar { position: fixed; inset-inline: 0; bottom: 0; z-index: var(--jb-z-tabbar); display: grid; grid-template-columns: repeat(5, 1fr); align-items: end; height: calc(var(--jb-tabbar-h) + env(safe-area-inset-bottom)); padding-bottom: env(safe-area-inset-bottom); background: var(--jb-surface); border-block-start: 1px solid var(--jb-line); box-shadow: 0 -4px 16px rgba(20, 43, 74, .06); }
.jb.jb-ui.jb-ui .jb-tabbar a { display: grid; justify-items: center; align-content: center; gap: 2px; height: var(--jb-tabbar-h); color: var(--jb-ink-500); font-size: 11px; font-weight: 600; text-decoration: none !important; }
.jb.jb-ui.jb-ui .jb-tabbar a[aria-current="page"] { color: var(--jb-brand-600); }
.jb.jb-ui.jb-ui .jb-tabbar a[aria-current="page"] .jb-i { stroke-width: 2.2; }
.jb.jb-ui.jb-ui .jb-tabbar__fab { position: relative; }
.jb.jb-ui.jb-ui .jb-tabbar__fab span.jb-tabbar__disc { display: grid; place-items: center; width: 52px; height: 52px; margin-top: -22px; border-radius: 50%; background: var(--jb-brand-600); color: var(--jb-on-brand); box-shadow: 0 6px 16px rgba(6, 95, 213, .35), 0 0 0 4px var(--jb-surface); }
.jb.jb-ui.jb-ui .jb-tabbar__fab { color: var(--jb-ink-900) !important; }
.jb.jb-ui.jb-ui .jb-tabbar .jb-count { inset-inline-end: calc(50% - 22px); top: 8px; }
@media (min-width: 960px) { .jb.jb-ui.jb-ui .jb-tabbar { display: none; } }

/* ---------- Footer ---------- */
.jb.jb-ui.jb-ui .jb-footer { background: var(--jb-surface-subtle); border-block-start: 1px solid var(--jb-line); color: var(--jb-ink-700); }
.jb.jb-ui.jb-ui .jb-route { display: flex; flex-wrap: wrap; align-items: center; gap: var(--jb-space-2) var(--jb-space-3); padding-block: var(--jb-space-6); border-block-end: 1px solid var(--jb-line); font-size: 13px; font-weight: 700; color: var(--jb-ink-900); white-space: nowrap; }
.jb.jb-ui.jb-ui .jb-route__line { flex: 1 0 16px; height: 0; border-block-start: 2px dotted var(--jb-line-strong); }
.jb.jb-ui.jb-ui .jb-route__dot { width: 8px; height: 8px; border-radius: 50%; background: var(--jb-brand-600); flex: none; }
.jb.jb-ui.jb-ui .jb-route__end { color: var(--jb-brand-600); }
.jb.jb-ui.jb-ui .jb-footer__main { display: grid; gap: var(--jb-space-8); padding-block: var(--jb-space-8); }
.jb.jb-ui.jb-ui .jb-footer__brand { display: grid; gap: var(--jb-space-4); align-content: start; max-width: 360px; }
.jb.jb-ui.jb-ui .jb-footer__brand img { height: 32px; width: auto; }
.jb.jb-ui.jb-ui .jb-footer__brand p { font-size: 14px; line-height: 1.9; }
.jb.jb-ui.jb-ui .jb-contact { display: grid; gap: var(--jb-space-2); }
.jb.jb-ui.jb-ui .jb-contact a, .jb.jb-ui.jb-ui .jb-contact div { display: flex; align-items: center; gap: var(--jb-space-3); min-height: 36px; color: var(--jb-ink-900); font-size: 14px; font-weight: 600; }
.jb.jb-ui.jb-ui .jb-contact .jb-i { color: var(--jb-brand-600); }
.jb.jb-ui.jb-ui .jb-contact small { display: block; font-size: 12px; font-weight: 500; color: var(--jb-ink-500); line-height: 1.6; }
.jb.jb-ui.jb-ui .jb-channels { display: flex; gap: var(--jb-space-2); flex-wrap: wrap; }
.jb.jb-ui.jb-ui .jb-channel { display: inline-flex; align-items: center; gap: var(--jb-space-2); min-height: 40px; padding: 0 var(--jb-space-3); border: 1px solid var(--jb-line); border-radius: var(--jb-radius-md); background: var(--jb-surface); font-size: 13px; font-weight: 700; color: var(--jb-ink-900) !important; text-decoration: none !important; }
.jb.jb-ui.jb-ui .jb-channel:hover { border-color: var(--jb-line-strong); }
.jb.jb-ui.jb-ui .jb-channel--wa .jb-i { color: var(--jb-whatsapp); }
.jb.jb-ui.jb-ui .jb-channel--eitaa .jb-i { color: var(--jb-eitaa); }
.jb.jb-ui.jb-ui .jb-fcol h3 { font-size: 14px; font-weight: 800; color: var(--jb-ink-900); margin-block-end: var(--jb-space-2); }
.jb.jb-ui.jb-ui .jb-fcol li a { display: inline-flex; min-height: 36px; align-items: center; font-size: 14px; color: var(--jb-ink-700); }
.jb.jb-ui.jb-ui .jb-fcol li a:hover { color: var(--jb-brand-600); }
.jb.jb-ui.jb-ui .jb-fcol details summary { list-style: none; display: flex; align-items: center; justify-content: space-between; min-height: 48px; font-size: 14px; font-weight: 800; color: var(--jb-ink-900); cursor: pointer; border-block-end: 1px solid var(--jb-line); }
.jb.jb-ui.jb-ui .jb-fcol details summary::-webkit-details-marker { display: none; }
.jb.jb-ui.jb-ui .jb-fcol details[open] summary .jb-chev { transform: rotate(180deg); }
.jb.jb-ui.jb-ui .jb-fcol details ul { padding-block: var(--jb-space-2); }
.jb.jb-ui.jb-ui .jb-trust { display: flex; gap: var(--jb-space-3); flex-wrap: wrap; align-items: center; }
.jb.jb-ui.jb-ui .jb-trust__badge { width: 76px; height: 76px; border-radius: var(--jb-radius-md); background: var(--jb-surface); border: 1px solid var(--jb-line); display: grid; place-items: center; text-align: center; font-size: 11px; color: var(--jb-ink-500); line-height: 1.5; padding: 6px; }
.jb.jb-ui.jb-ui .jb-licenses { font-size: 12px; line-height: 2; color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui .jb-licenses span + span::before { content: "·"; margin-inline: 8px; color: var(--jb-line-strong); }
.jb.jb-ui.jb-ui .jb-footer__bottom { display: flex; flex-wrap: wrap; gap: var(--jb-space-3) var(--jb-space-6); align-items: center; justify-content: space-between; padding-block: var(--jb-space-4); border-block-start: 1px solid var(--jb-line); font-size: 13px; color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui .jb-footer__legal { display: flex; gap: var(--jb-space-4); flex-wrap: wrap; }
.jb.jb-ui.jb-ui .jb-footer__legal a { color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui .jb-footer__main > *, .jb.jb-ui.jb-ui .jb-footer__credentials > * { min-width: 0; }
.jb.jb-ui.jb-ui .jb-footer__about { min-width: 0; padding: 0; border-block: 1px solid var(--jb-line); }
.jb.jb-ui.jb-ui .jb-footer__about p { max-width: none; }
.jb.jb-ui.jb-ui .jb-footer__about summary { display: flex; align-items: center; justify-content: space-between; min-height: 44px; cursor: pointer; list-style: none; font-size: 13px; font-weight: 700; }
.jb.jb-ui.jb-ui .jb-footer__about summary::-webkit-details-marker { display: none; }
.jb.jb-ui.jb-ui .jb-footer__about[open] summary { margin-block-end: var(--jb-space-4); }
.jb.jb-ui.jb-ui .jb-footer__about[open] .jb-chev { transform: rotate(180deg); }
.jb.jb-ui.jb-ui .jb-footer__about .jb-prose { padding-block-end: var(--jb-space-4); min-width: 0; overflow-wrap: anywhere; font-size: 13px; line-height: 2; text-align: start; color: var(--jb-ink-700); }
.jb.jb-ui.jb-ui .jb-footer__about .jb-prose p { font-size: inherit; line-height: inherit; margin-block: 0 var(--jb-space-3); }
.jb.jb-ui.jb-ui .jb-footer__about .jb-prose p:last-child { margin-block-end: 0; }
.jb.jb-ui.jb-ui .jb-footer__about .jb-prose strong { font-weight: 700; }
.jb.jb-ui.jb-ui .jb-footer__credentials { display: grid; gap: var(--jb-space-6); padding-block: var(--jb-space-6); border-block-start: 1px solid var(--jb-line); }
.jb.jb-ui.jb-ui .jb-footer__credentials h3 { margin-block-end: var(--jb-space-4); }
.jb.jb-ui.jb-ui .jb-footer__licenses.jb-prose ul { display: flex; flex-wrap: wrap; gap: var(--jb-space-1) var(--jb-space-3); list-style: none; padding: 0; margin: 0; }
.jb.jb-ui.jb-ui .jb-footer__licenses.jb-prose li { margin: 0; overflow-wrap: anywhere; font-size: 12px; line-height: 2; }
.jb.jb-ui.jb-ui .jb-footer__licenses.jb-prose a { display: inline-block; padding-block: var(--jb-space-1); color: var(--jb-ink-500); text-decoration: none; }
.jb.jb-ui.jb-ui .jb-footer__licenses a:hover { color: var(--jb-brand-600); text-decoration: underline; }
.jb.jb-ui.jb-ui .jb-footer__source-trust .wp-block-gallery { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: var(--jb-space-3); width: 100%; margin: 0; }
.jb.jb-ui.jb-ui .jb-footer__source-trust .wp-block-image { display: grid; place-items: center; padding: var(--jb-space-2); width: 100%; min-width: 0; min-height: 92px; margin: 0; border: 1px solid var(--jb-line); border-radius: var(--jb-radius-md); background: var(--jb-surface); }
/* Match WordPress's own gallery selector specificity, without touching issuer markup. */
.jb.jb-ui.jb-ui .jb-footer__source-trust .wp-block-gallery.has-nested-images figure.wp-block-image:not(#individual-image) { width: 100%; margin: 0; flex: none; }
.jb.jb-ui.jb-ui .jb-footer__source-trust .wp-block-image img { width: 76px; height: 76px; object-fit: contain; }
.jb.jb-ui.jb-ui .jb-footer__source-trust a { display: grid; justify-items: center; gap: var(--jb-space-2); }
@media (min-width: 960px) { .jb.jb-ui.jb-ui .jb-footer__credentials { grid-template-columns: minmax(0,1.3fr) minmax(0,1fr); gap: var(--jb-space-8); } }
.jb.jb-ui.jb-ui .jb-social { display: flex; gap: var(--jb-space-1); }
.jb.jb-ui.jb-ui .jb-social a { width: 40px; height: 40px; display: grid; place-items: center; border-radius: var(--jb-radius-md); color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui .jb-social a:hover { background: var(--jb-surface); color: var(--jb-brand-600); }
.jb.jb-ui.jb-ui .jb-footer--tabbar-pad { padding-bottom: calc(var(--jb-tabbar-h) + env(safe-area-inset-bottom)); }
@media (min-width: 960px) {
  .jb.jb-ui.jb-ui .jb-footer__main { grid-template-columns: 1.3fr repeat(3, 1fr); gap: var(--jb-space-8); padding-block: var(--jb-space-12); }
  .jb.jb-ui.jb-ui .jb-fcol details summary { pointer-events: none; border: 0; min-height: auto; margin-block-end: var(--jb-space-2); }
  .jb.jb-ui.jb-ui .jb-fcol details summary .jb-chev { display: none; }
  .jb.jb-ui.jb-ui .jb-footer--tabbar-pad { padding-bottom: 0; }
}

/* ---------- Hero ---------- */
.jb.jb-ui.jb-ui .jb-hero { padding-block: var(--jb-space-8) var(--jb-space-12); background: linear-gradient(180deg, var(--jb-brand-50) 0, var(--jb-surface) 100%); }
.jb.jb-ui.jb-ui .jb-hero__grid { display: grid; gap: var(--jb-space-8); align-items: center; }
.jb.jb-ui.jb-ui .jb-hero__copy { display: grid; gap: var(--jb-space-4); }
.jb.jb-ui.jb-ui .jb-hero h1 { font-size: 28px; line-height: 1.55; font-weight: 800; }
.jb.jb-ui.jb-ui .jb-hero h1 em { font-style: normal; color: var(--jb-brand-600); }
.jb.jb-ui.jb-ui .jb-hero__lead { font-size: 16px; line-height: 1.9; color: var(--jb-ink-700); max-width: 560px; }
.jb.jb-ui.jb-ui .jb-hero__panel { background: var(--jb-surface); border-radius: var(--jb-radius-xl); box-shadow: var(--jb-shadow-lg); padding: var(--jb-space-4); display: grid; gap: var(--jb-space-4); }
@media (min-width: 640px) { .jb.jb-ui.jb-ui .jb-hero__panel { padding: var(--jb-space-6); } }
.jb.jb-ui.jb-ui .jb-hero__proof { display: flex; flex-wrap: wrap; gap: var(--jb-space-2) var(--jb-space-5); font-size: 13px; color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui .jb-hero__proof li { display: inline-flex; align-items: center; gap: 6px; }
.jb.jb-ui.jb-ui .jb-hero__proof .jb-i { color: var(--jb-success-600); }
.jb.jb-ui.jb-ui .jb-stores { display: flex; flex-wrap: wrap; gap: var(--jb-space-2); }
.jb.jb-ui.jb-ui .jb-stores span { font-family: var(--jb-font-latin); font-size: 12px; font-weight: 600; color: var(--jb-ink-500); padding: 4px 10px; background: var(--jb-surface-subtle); border-radius: var(--jb-radius-pill); direction: ltr; }
.jb.jb-ui.jb-ui .jb-stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--jb-space-3); }
.jb.jb-ui.jb-ui .jb-stat { display: grid; gap: 0; }
.jb.jb-ui.jb-ui .jb-stat b { font-size: 22px; font-weight: 800; color: var(--jb-ink-900); line-height: 1.4; }
.jb.jb-ui.jb-ui .jb-stat span { font-size: 12px; color: var(--jb-ink-500); }
@media (min-width: 960px) {
  .jb.jb-ui.jb-ui .jb-hero { padding-block: var(--jb-space-16); }
  .jb.jb-ui.jb-ui .jb-hero__grid { grid-template-columns: 1fr 520px; gap: var(--jb-space-12); }
  .jb.jb-ui.jb-ui .jb-hero h1 { font-size: 40px; }
  .jb.jb-ui.jb-ui .jb-hero__lead { font-size: 17px; }
}

/* ---------- Service cards ---------- */
.jb.jb-ui.jb-ui .jb-services { display: grid; gap: var(--jb-space-3); grid-template-columns: 1fr 1fr; }
@media (min-width: 960px) { .jb.jb-ui.jb-ui .jb-services { grid-template-columns: repeat(3, 1fr); gap: var(--jb-space-4); } }
.jb.jb-ui.jb-ui .jb-service { position: relative; display: grid; gap: var(--jb-space-2); align-content: start; padding: var(--jb-space-4); border: 1px solid var(--jb-line); border-radius: var(--jb-radius-lg); background: var(--jb-surface); color: var(--jb-ink-700) !important; text-decoration: none !important; transition: border-color .15s, box-shadow .15s, transform .15s; }
@media (min-width: 640px) { .jb.jb-ui.jb-ui .jb-service { padding: var(--jb-space-6); } }
.jb.jb-ui.jb-ui .jb-service:hover { border-color: var(--jb-brand-200); box-shadow: var(--jb-shadow-md); transform: translateY(-2px); }
.jb.jb-ui.jb-ui .jb-service__icon { width: 44px; height: 44px; border-radius: var(--jb-radius-md); background: var(--jb-brand-50); color: var(--jb-brand-600); display: grid; place-items: center; }
.jb.jb-ui.jb-ui .jb-service__icon .jb-i { width: 24px; height: 24px; }
.jb.jb-ui.jb-ui .jb-service h3 { font-size: 15px; }
@media (min-width: 640px) { .jb.jb-ui.jb-ui .jb-service h3 { font-size: 17px; } }
.jb.jb-ui.jb-ui .jb-service p { font-size: 13px; line-height: 1.85; color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui .jb-service__more { display: inline-flex; align-items: center; gap: 4px; font-size: 13px; font-weight: 700; color: var(--jb-brand-600); margin-top: var(--jb-space-1); }
.jb.jb-ui.jb-ui .jb-service--feature { grid-column: 1 / -1; background: var(--jb-surface-ink); border-color: var(--jb-surface-ink); color: var(--jb-brand-200) !important; }
.jb.jb-ui.jb-ui .jb-service--feature h3 { color: var(--jb-on-brand); }
.jb.jb-ui.jb-ui .jb-service--feature p { color: var(--jb-brand-200); }
.jb.jb-ui.jb-ui .jb-service--feature .jb-service__icon { background: rgba(255,255,255,.1); color: var(--jb-on-brand); }
.jb.jb-ui.jb-ui .jb-service--feature .jb-service__more { color: var(--jb-on-brand); }
.jb.jb-ui.jb-ui .jb-service .jb-badge { position: absolute; inset-block-start: var(--jb-space-4); inset-inline-end: var(--jb-space-4); }

/* ---------- Tracking ---------- */
.jb.jb-ui.jb-ui .jb-track-search { display: grid; gap: var(--jb-space-4); padding: var(--jb-space-6) var(--jb-space-4); border-radius: var(--jb-radius-xl); background: var(--jb-surface-ink); color: var(--jb-brand-200); }
@media (min-width: 640px) { .jb.jb-ui.jb-ui .jb-track-search { padding: var(--jb-space-8); } }
.jb.jb-ui.jb-ui .jb-track-search h1, .jb.jb-ui.jb-ui .jb-track-search h2 { color: var(--jb-on-brand); }
.jb.jb-ui.jb-ui .jb-track-search p { font-size: 14px; color: var(--jb-brand-200); }
.jb.jb-ui.jb-ui .jb-track-search form { display: grid; gap: var(--jb-space-3); }
.jb.jb-ui.jb-ui .jb-track-search .jb-control { border-color: transparent; }
.jb.jb-ui.jb-ui .jb-track-search .jb-label { color: var(--jb-on-brand); }
.jb.jb-ui.jb-ui .jb-track-search .jb-help, .jb.jb-ui.jb-ui .jb-track-search .jb-help a { color: var(--jb-brand-200); }
.jb.jb-ui.jb-ui .jb-track-search .jb-help a { text-decoration: underline; text-underline-offset: 3px; }
.jb.jb-ui.jb-ui .jb-track-loading { display: flex; align-items: center; gap: var(--jb-space-3); color: var(--jb-on-brand); font-size: 13px; }
.jb.jb-ui.jb-ui .jb-track-loading[hidden] { display: none; }
.jb.jb-ui.jb-ui .jb-track-loading__flight { display: inline-flex; justify-content: center; inline-size: 48px; flex: 0 0 48px; overflow: hidden; }
.jb.jb-ui.jb-ui .jb-track-loading__flight .jb-i { animation: jb-track-flight 1.4s ease-in-out infinite alternate; }
@keyframes jb-track-flight { from { transform: translateX(10px); } to { transform: translateX(-10px); } }
@media (prefers-reduced-motion: reduce) { .jb.jb-ui.jb-ui .jb-track-loading__flight .jb-i { animation: none; } }
@media (min-width: 960px) { .jb.jb-ui.jb-ui .jb-track-search form { grid-template-columns: 1.4fr 1fr auto; align-items: end; } }
.jb.jb-ui.jb-ui .jb-recent { display: flex; gap: var(--jb-space-2); flex-wrap: wrap; align-items: center; font-size: 13px; }
.jb.jb-ui.jb-ui .jb-recent button { border: 1px solid rgba(255,255,255,.22); background: transparent; color: var(--jb-on-brand); border-radius: var(--jb-radius-pill); padding: 4px 12px; font-family: var(--jb-font-latin); font-size: 12px; cursor: pointer; min-height: 32px; }
.jb.jb-ui.jb-ui .jb-recent button:hover { background: rgba(255,255,255,.08); }

.jb.jb-ui.jb-ui .jb-status { display: grid; gap: var(--jb-space-5); }
.jb.jb-ui.jb-ui .jb-status__top { display: flex; flex-wrap: wrap; gap: var(--jb-space-3) var(--jb-space-6); align-items: flex-start; justify-content: space-between; }
.jb.jb-ui.jb-ui .jb-status__now { display: grid; gap: var(--jb-space-1); }
.jb.jb-ui.jb-ui .jb-status__now h2 { display: flex; align-items: center; gap: var(--jb-space-2); }
.jb.jb-ui.jb-ui .jb-status__eta { display: grid; gap: 0; padding: var(--jb-space-3) var(--jb-space-4); border-radius: var(--jb-radius-md); background: var(--jb-brand-50); min-width: 200px; }
.jb.jb-ui.jb-ui .jb-status__eta span { font-size: 12px; color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui .jb-status__eta b { font-size: 18px; color: var(--jb-brand-800); font-weight: 800; }
.jb.jb-ui.jb-ui .jb-status__eta small { font-size: 12px; color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui .jb-steps { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); counter-reset: s; position: relative; }
.jb.jb-ui.jb-ui .jb-step { position: relative; display: grid; justify-items: center; gap: var(--jb-space-2); text-align: center; font-size: 12px; font-weight: 600; color: var(--jb-ink-500); line-height: 1.6; padding-inline: 2px; }
.jb.jb-ui.jb-ui .jb-step::before { content: ""; position: absolute; top: 15px; inset-inline-start: 50%; width: 100%; height: 3px; background: var(--jb-brand-100); z-index: 0; }
.jb.jb-ui.jb-ui .jb-step:last-child::before { display: none; }
.jb.jb-ui.jb-ui .jb-step__dot { position: relative; z-index: 1; width: 32px; height: 32px; border-radius: 50%; display: grid; place-items: center; background: var(--jb-surface); border: 2px solid var(--jb-brand-100); color: var(--jb-ink-400); }
.jb.jb-ui.jb-ui .jb-step__dot .jb-i { width: 16px; height: 16px; }
.jb.jb-ui.jb-ui .jb-step--done { color: var(--jb-ink-700); }
.jb.jb-ui.jb-ui .jb-step--done::before { background: var(--jb-brand-600); }
.jb.jb-ui.jb-ui .jb-step--done .jb-step__dot { background: var(--jb-brand-600); border-color: var(--jb-brand-600); color: var(--jb-on-brand); }
.jb.jb-ui.jb-ui .jb-step--now { color: var(--jb-brand-600); font-weight: 800; }
.jb.jb-ui.jb-ui .jb-step--now .jb-step__dot { border-color: var(--jb-brand-600); color: var(--jb-brand-600); box-shadow: 0 0 0 5px var(--jb-brand-100); }
.jb.jb-ui.jb-ui .jb-step__label { display: none; }
@media (min-width: 640px) { .jb.jb-ui.jb-ui .jb-step__label { display: block; } }
.jb.jb-ui.jb-ui .jb-steps__mobile { font-size: 13px; color: var(--jb-ink-500); text-align: center; }
@media (min-width: 640px) { .jb.jb-ui.jb-ui .jb-steps__mobile { display: none; } }
.jb.jb-ui.jb-ui .jb-log { display: grid; position: relative; }
.jb.jb-ui.jb-ui .jb-log li { position: relative; display: grid; grid-template-columns: 24px 1fr; gap: var(--jb-space-3); padding-block-end: var(--jb-space-5); }
.jb.jb-ui.jb-ui .jb-log li::before { content: ""; position: absolute; inset-inline-start: 11px; top: 26px; bottom: 0; width: 2px; background: var(--jb-line); }
.jb.jb-ui.jb-ui .jb-log li:last-child::before { display: none; }
.jb.jb-ui.jb-ui .jb-log__dot { width: 24px; height: 24px; border-radius: 50%; background: var(--jb-surface-subtle); border: 2px solid var(--jb-line-strong); margin-top: 2px; }
.jb.jb-ui.jb-ui .jb-log li:first-child .jb-log__dot { background: var(--jb-brand-600); border-color: var(--jb-brand-600); box-shadow: 0 0 0 4px var(--jb-brand-100); }
.jb.jb-ui.jb-ui .jb-log__title { font-weight: 700; color: var(--jb-ink-900); font-size: 14px; line-height: 1.7; }
.jb.jb-ui.jb-ui .jb-log__meta { display: flex; flex-wrap: wrap; gap: 4px 12px; font-size: 12px; color: var(--jb-ink-500); line-height: 1.8; }
.jb.jb-ui.jb-ui .jb-log__meta span { display: inline-flex; align-items: center; gap: 4px; }
.jb.jb-ui.jb-ui .jb-log__note { margin-top: var(--jb-space-1); font-size: 13px; color: var(--jb-ink-700); background: var(--jb-surface-subtle); border-radius: var(--jb-radius-sm); padding: var(--jb-space-2) var(--jb-space-3); }

.jb.jb-ui.jb-ui .jb-copy { display: inline-flex; align-items: center; gap: var(--jb-space-2); }
.jb.jb-ui.jb-ui .jb-copy button { border: 0; background: var(--jb-brand-50); color: var(--jb-brand-600); width: 32px; height: 32px; border-radius: var(--jb-radius-sm); display: grid; place-items: center; cursor: pointer; }
.jb.jb-ui.jb-ui .jb-copy button:hover { background: var(--jb-brand-100); }
.jb.jb-ui.jb-ui .jb-copy button[data-copied="true"] { background: var(--jb-success-50); color: var(--jb-success-600); }
.jb.jb-ui.jb-ui .jb-items { display: grid; gap: var(--jb-space-3); }
.jb.jb-ui.jb-ui .jb-item { display: grid; grid-template-columns: 64px 1fr auto; gap: var(--jb-space-3); align-items: center; padding: var(--jb-space-3); border: 1px solid var(--jb-line); border-radius: var(--jb-radius-md); }
.jb.jb-ui.jb-ui .jb-thumb { width: 64px; height: 64px; border-radius: var(--jb-radius-sm); background: var(--jb-surface-subtle); border: 1px solid var(--jb-line); display: grid; place-items: center; color: var(--jb-ink-400); overflow: hidden; }
.jb.jb-ui.jb-ui .jb-thumb img { width: 100%; height: 100%; object-fit: cover; }
.jb.jb-ui.jb-ui .jb-item__title { font-weight: 700; color: var(--jb-ink-900); font-size: 14px; line-height: 1.7; }
.jb.jb-ui.jb-ui .jb-item__meta { font-size: 12px; color: var(--jb-ink-500); display: flex; flex-wrap: wrap; gap: 2px 10px; }
.jb.jb-ui.jb-ui .jb-item__end { text-align: end; display: grid; gap: 2px; font-size: 13px; }
.jb.jb-ui.jb-ui .jb-track-item { grid-template-columns: 48px minmax(0, 1fr) auto; align-items: start; }
.jb.jb-ui.jb-ui .jb-track-item .jb-thumb { width: 48px; height: 48px; }
.jb.jb-ui.jb-ui .jb-track-item__body { min-width: 0; overflow-wrap: anywhere; display: grid; gap: var(--jb-space-2); }
.jb.jb-ui.jb-ui .jb-track-item__body .jb-btn { justify-self: start; max-width: 100%; white-space: normal; }
.jb.jb-ui.jb-ui .jb-layout-2 { display: grid; gap: var(--jb-space-4); }
@media (min-width: 960px) { .jb.jb-ui.jb-ui .jb-layout-2 { grid-template-columns: 1fr 360px; gap: var(--jb-space-6); align-items: start; } .jb.jb-ui.jb-ui .jb-sticky { position: sticky; top: calc(var(--jb-header-h) + 64px); } }
.jb.jb-ui.jb-ui .jb-actions { display: flex; flex-wrap: wrap; gap: var(--jb-space-2); }

/* ---------- Shop ---------- */
.jb.jb-ui.jb-ui .jb-products { display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--jb-space-3); }
@media (min-width: 640px) { .jb.jb-ui.jb-ui .jb-products { grid-template-columns: repeat(3, 1fr); gap: var(--jb-space-4); } }
@media (min-width: 1200px) { .jb.jb-ui.jb-ui .jb-products { grid-template-columns: repeat(4, 1fr); } }
.jb.jb-ui.jb-ui .jb-product { position: relative; min-width: 0; display: grid; grid-template-rows: auto 1fr; border: 1px solid var(--jb-line); border-radius: var(--jb-radius-lg); background: var(--jb-surface); overflow: hidden; transition: box-shadow .15s, border-color .15s; }
.jb.jb-ui.jb-ui .jb-product:hover { box-shadow: var(--jb-shadow-md); border-color: var(--jb-brand-100); }
.jb.jb-ui.jb-ui .jb-product__media { position: relative; aspect-ratio: 1 / 1; background: var(--jb-surface-subtle); display: grid; place-items: center; color: var(--jb-ink-400); }
.jb.jb-ui.jb-ui .jb-product__media img { width: 100%; height: 100%; object-fit: cover; }
.jb.jb-ui.jb-ui .jb-product__tags { position: absolute; inset-block-start: var(--jb-space-2); inset-inline-start: var(--jb-space-2); display: flex; flex-direction: column; gap: 4px; align-items: flex-start; }
.jb.jb-ui.jb-ui .jb-product__fav { position: absolute; inset-block-start: var(--jb-space-1); inset-inline-end: var(--jb-space-1); background: rgba(255,255,255,.9); }
.jb.jb-ui.jb-ui .jb-product__body { display: grid; gap: var(--jb-space-2); padding: var(--jb-space-3); align-content: start; }
@media (min-width: 640px) { .jb.jb-ui.jb-ui .jb-product__body { padding: var(--jb-space-4); } }
.jb.jb-ui.jb-ui .jb-product__title { font-size: 14px; font-weight: 600; color: var(--jb-ink-900) !important; line-height: 1.75; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; min-height: calc(1.75em * 2); text-decoration: none !important; }
.jb.jb-ui.jb-ui .jb-product__title::after { content: ""; position: absolute; inset: 0; } /* whole card clickable */
.jb.jb-ui.jb-ui .jb-product__ship { display: flex; align-items: center; gap: 4px; font-size: 12px; color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui .jb-product__ship .jb-i { width: 14px; height: 14px; color: var(--jb-success-600); }
.jb.jb-ui.jb-ui .jb-product__foot { display: flex; align-items: flex-end; justify-content: space-between; gap: var(--jb-space-2); margin-top: auto; }
.jb.jb-ui.jb-ui .jb-product__foot > div { min-width: 0; }
.jb.jb-ui.jb-ui .jb-product__foot .jb-price { font-size: 15px; white-space: nowrap; }
.jb.jb-ui.jb-ui .jb-product__foot .jb-price small { margin-inline-start: 2px; }
@media (min-width: 640px) { .jb.jb-ui.jb-ui .jb-product__foot .jb-price { font-size: 16px; } }
.jb.jb-ui.jb-ui .jb-product__off { font-size: 12px; font-weight: 800; color: var(--jb-on-brand); background: var(--jb-danger-600); border-radius: var(--jb-radius-pill); padding: 1px 8px; }
.jb.jb-ui.jb-ui .jb-product .jb-iconbtn--add { position: relative; z-index: 1; flex: none; width: 40px; height: 40px; background: var(--jb-brand-50); color: var(--jb-brand-600); }
.jb.jb-ui.jb-ui .jb-product .jb-iconbtn--add:hover { background: var(--jb-brand-600); color: var(--jb-on-brand); }

.jb.jb-ui.jb-ui .jb-cart__line { display: grid; grid-template-columns: 80px 1fr; gap: var(--jb-space-3); padding-block: var(--jb-space-4); border-block-end: 1px solid var(--jb-line); }
.jb.jb-ui.jb-ui .jb-cart__line:last-child { border-block-end: 0; }
.jb.jb-ui.jb-ui .jb-cart__line .jb-thumb { width: 80px; height: 80px; }
.jb.jb-ui.jb-ui .jb-cart__info { display: grid; gap: var(--jb-space-1); }
.jb.jb-ui.jb-ui .jb-cart__row { display: flex; align-items: center; justify-content: space-between; gap: var(--jb-space-3); flex-wrap: wrap; margin-top: var(--jb-space-2); }
.jb.jb-ui.jb-ui .jb-qty { display: inline-flex; align-items: center; border: 1.5px solid var(--jb-line-strong); border-radius: var(--jb-radius-md); height: 40px; }
.jb.jb-ui.jb-ui .jb-qty button { width: 40px; height: 100%; border: 0; background: transparent; color: var(--jb-brand-600); display: grid; place-items: center; cursor: pointer; border-radius: var(--jb-radius-md); }
.jb.jb-ui.jb-ui .jb-qty button:hover { background: var(--jb-brand-50); }
.jb.jb-ui.jb-ui .jb-qty output, .jb.jb-ui.jb-ui .jb-qty input { width: 36px; text-align: center; font-weight: 800; color: var(--jb-ink-900); border: 0; padding: 0; margin: 0; box-shadow: none; border-radius: 0; min-height: 0; font: inherit; font-weight: 800; background: transparent; }
.jb.jb-ui.jb-ui .jb-remove { border: 0; background: transparent; color: var(--jb-ink-500); font-size: 13px; display: inline-flex; align-items: center; gap: 4px; cursor: pointer; min-height: 36px; padding-inline: 4px; border-radius: var(--jb-radius-sm); }
.jb.jb-ui.jb-ui .jb-remove:hover { color: var(--jb-danger-600); background: var(--jb-danger-50); }
.jb.jb-ui.jb-ui .jb-summary { display: grid; gap: var(--jb-space-4); }
.jb.jb-ui.jb-ui .jb-summary__total { display: flex; justify-content: space-between; align-items: baseline; padding-top: var(--jb-space-3); border-block-start: 1px solid var(--jb-line); font-weight: 700; color: var(--jb-ink-900); }
.jb.jb-ui.jb-ui .jb-summary__total .jb-price { font-size: 22px; }
.jb.jb-ui.jb-ui .jb-saving { color: var(--jb-success-600) !important; }
.jb.jb-ui.jb-ui .jb-progress { height: 6px; border-radius: var(--jb-radius-pill); background: var(--jb-brand-100); overflow: hidden; }
.jb.jb-ui.jb-ui .jb-progress > span { display: block; height: 100%; background: var(--jb-brand-600); border-radius: inherit; }
.jb.jb-ui.jb-ui .jb-coupon { display: flex; gap: var(--jb-space-2); }
.jb.jb-ui.jb-ui .jb-coupon .jb-control { flex: 1; min-height: 44px; }
.jb.jb-ui.jb-ui .jb-coupon .jb-input { min-height: 41px; }
.jb.jb-ui.jb-ui .jb-paybar { position: sticky; bottom: 0; display: flex; align-items: center; justify-content: space-between; gap: var(--jb-space-3); padding: var(--jb-space-3) var(--jb-space-4); background: var(--jb-surface); border-block-start: 1px solid var(--jb-line); box-shadow: 0 -4px 16px rgba(20, 43, 74, .06); }
.jb.jb-ui.jb-ui .jb-paybar .jb-price { font-size: 17px; }
@media (min-width: 960px) { .jb.jb-ui.jb-ui .jb-paybar { display: none; } }
.jb.jb-ui.jb-ui .jb-hide-mobile { display: none; }
@media (min-width: 960px) { .jb.jb-ui.jb-ui .jb-hide-mobile { display: initial; } .jb.jb-ui.jb-ui .jb-hide-desktop { display: none !important; } }

.jb.jb-ui.jb-ui .jb-stepper { display: flex; align-items: center; gap: var(--jb-space-2); overflow-x: auto; scrollbar-width: none; padding-block: var(--jb-space-2); }
.jb.jb-ui.jb-ui .jb-stepper li { display: flex; align-items: center; gap: var(--jb-space-2); font-size: 13px; font-weight: 700; color: var(--jb-ink-500); white-space: nowrap; }
.jb.jb-ui.jb-ui .jb-stepper li::after { content: ""; width: 32px; height: 2px; background: var(--jb-line-strong); margin-inline-start: var(--jb-space-2); }
.jb.jb-ui.jb-ui .jb-stepper li:last-child::after { display: none; }
.jb.jb-ui.jb-ui .jb-stepper__n { width: 28px; height: 28px; border-radius: 50%; display: grid; place-items: center; border: 2px solid var(--jb-line-strong); font-size: 12px; font-weight: 800; color: var(--jb-ink-500); background: var(--jb-surface); }
.jb.jb-ui.jb-ui .jb-stepper li[data-state="done"] { color: var(--jb-ink-700); }
.jb.jb-ui.jb-ui .jb-stepper li[data-state="done"]::after { background: var(--jb-brand-600); }
.jb.jb-ui.jb-ui .jb-stepper li[data-state="done"] .jb-stepper__n { background: var(--jb-brand-600); border-color: var(--jb-brand-600); color: var(--jb-on-brand); }
.jb.jb-ui.jb-ui .jb-stepper li[aria-current="step"] { color: var(--jb-brand-600); }
.jb.jb-ui.jb-ui .jb-stepper li[aria-current="step"] .jb-stepper__n { border-color: var(--jb-brand-600); color: var(--jb-brand-600); box-shadow: 0 0 0 4px var(--jb-brand-100); }
@media (max-width: 639px) { .jb.jb-ui.jb-ui .jb-stepper li:not([aria-current]) { font-size: 0; gap: 0; } .jb.jb-ui.jb-ui .jb-stepper li::after { width: 20px; } }
@media (min-width: 960px) { .jb.jb-ui.jb-ui .jb-stepper { gap: var(--jb-space-3); } .jb.jb-ui.jb-ui .jb-stepper li::after { width: 72px; } }

/* ---------- Account menu ---------- */
.jb.jb-ui.jb-ui .jb-acct { width: 100%; max-width: 320px; background: var(--jb-surface); border: 1px solid var(--jb-line); border-radius: var(--jb-radius-lg); box-shadow: var(--jb-shadow-md); overflow: hidden; }
.jb.jb-ui.jb-ui .jb-acct__head { display: flex; align-items: center; gap: var(--jb-space-3); padding: var(--jb-space-4); }
.jb.jb-ui.jb-ui .jb-acct__head .jb-avatar { width: 44px; height: 44px; font-size: 16px; }
.jb.jb-ui.jb-ui .jb-acct__name { font-weight: 800; color: var(--jb-ink-900); font-size: 15px; line-height: 1.6; }
.jb.jb-ui.jb-ui .jb-acct__phone { font-size: 12px; color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui .jb-wallet { display: flex; align-items: center; justify-content: space-between; gap: var(--jb-space-3); margin: 0 var(--jb-space-4) var(--jb-space-3); padding: var(--jb-space-3) var(--jb-space-4); border-radius: var(--jb-radius-md); background: var(--jb-brand-50); }
.jb.jb-ui.jb-ui .jb-wallet span { font-size: 12px; color: var(--jb-ink-500); display: block; }
.jb.jb-ui.jb-ui .jb-wallet b { font-size: 16px; color: var(--jb-ink-900); font-weight: 800; }
.jb.jb-ui.jb-ui .jb-acct nav { padding: var(--jb-space-2); border-block-start: 1px solid var(--jb-line); }
.jb.jb-ui.jb-ui .jb-acct nav a { display: flex; align-items: center; gap: var(--jb-space-3); min-height: 44px; padding-inline: var(--jb-space-3); border-radius: var(--jb-radius-sm); color: var(--jb-ink-700); font-size: 14px; font-weight: 600; text-decoration: none !important; }
.jb.jb-ui.jb-ui .jb-acct nav a:hover { background: var(--jb-surface-subtle); color: var(--jb-ink-900); }
.jb.jb-ui.jb-ui .jb-acct nav a[aria-current="page"] { background: var(--jb-brand-50); color: var(--jb-brand-600); }
.jb.jb-ui.jb-ui .jb-acct nav a .jb-i { color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui .jb-acct nav a[aria-current="page"] .jb-i { color: var(--jb-brand-600); }
.jb.jb-ui.jb-ui .jb-acct nav a .jb-badge { margin-inline-start: auto; }
.jb.jb-ui.jb-ui .jb-acct__sep { height: 1px; background: var(--jb-line); margin: var(--jb-space-2) var(--jb-space-3); }
.jb.jb-ui.jb-ui .jb-acct nav a.jb-acct__out { color: var(--jb-danger-600); }
.jb.jb-ui.jb-ui .jb-acct nav a.jb-acct__out .jb-i { color: var(--jb-danger-600); }
.jb.jb-ui.jb-ui .jb-acct nav a.jb-acct__out:hover { background: var(--jb-danger-50); }

/* ---------- Calculator receipt ---------- */
.jb.jb-ui.jb-ui .jb-receipt { background: var(--jb-surface); border: 1px solid var(--jb-line); border-radius: var(--jb-radius-lg); padding: var(--jb-space-5); display: grid; gap: var(--jb-space-3); position: relative; }
.jb.jb-ui.jb-ui .jb-receipt__sep { border-block-start: 2px dashed var(--jb-line); margin-inline: calc(var(--jb-space-5) * -1); position: relative; }
.jb.jb-ui.jb-ui .jb-receipt__sep::before, .jb.jb-ui.jb-ui .jb-receipt__sep::after { content: ""; position: absolute; top: -11px; width: 20px; height: 20px; border-radius: 50%; background: var(--jb-surface-subtle); border: 1px solid var(--jb-line); }
.jb.jb-ui.jb-ui .jb-receipt__sep::before { inset-inline-start: -10px; } .jb.jb-ui.jb-ui .jb-receipt__sep::after { inset-inline-end: -10px; }

/* =====================================================================
   Page sections — home, blog, article, contact, landing pages
   ===================================================================== */

/* Breadcrumb + inner page header */
.jb.jb-ui.jb-ui .jb-crumbs { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 6px; font-size: 13px; color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui .jb-crumbs a { color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui .jb-crumbs a:hover { color: var(--jb-brand-600); }
.jb.jb-ui.jb-ui .jb-crumbs .jb-i { width: 14px; height: 14px; }
.jb.jb-ui.jb-ui .jb-crumbs [aria-current] { color: var(--jb-ink-900); font-weight: 600; }
.jb.jb-ui.jb-ui .jb-pagehead { background: var(--jb-surface-subtle); border-block-end: 1px solid var(--jb-line); padding-block: var(--jb-space-6) var(--jb-space-8); }
.jb.jb-ui.jb-ui .jb-pagehead__inner { display: grid; gap: var(--jb-space-3); }
.jb.jb-ui.jb-ui .jb-pagehead p { font-size: 16px; color: var(--jb-ink-500); max-width: 640px; line-height: 1.9; }
@media (min-width: 960px) { .jb.jb-ui.jb-ui .jb-pagehead { padding-block: var(--jb-space-8) var(--jb-space-12); } }

/* Section heading */
.jb.jb-ui.jb-ui .jb-sechead { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: var(--jb-space-2) var(--jb-space-6); margin-block-end: var(--jb-space-6); }
.jb.jb-ui.jb-ui .jb-sechead > div { display: grid; gap: var(--jb-space-1); max-width: 640px; }
.jb.jb-ui.jb-ui .jb-sechead p { color: var(--jb-ink-500); font-size: 15px; }
@media (min-width: 960px) { .jb.jb-ui.jb-ui .jb-sechead { margin-block-end: var(--jb-space-8); } }

/* Proof strip: stats + client placeholders */
.jb.jb-ui.jb-ui .jb-proof { display: grid; gap: var(--jb-space-6); align-items: center; padding-block: var(--jb-space-8); border-block: 1px solid var(--jb-line); }
.jb.jb-ui.jb-ui .jb-proof__label { font-size: 13px; color: var(--jb-ink-500); font-weight: 600; }
.jb.jb-ui.jb-ui .jb-logos { display: flex; flex-wrap: wrap; gap: var(--jb-space-3); align-items: center; }
.jb.jb-ui.jb-ui .jb-logo-slot { display: grid; place-items: center; width: 104px; height: 48px; border-radius: var(--jb-radius-sm); background: var(--jb-surface-subtle); color: var(--jb-ink-500); font-size: 11px; text-align: center; line-height: 1.5; filter: grayscale(1); }
.jb.jb-ui.jb-ui .jb-logo-slot img { max-width: 88px; max-height: 36px; width: auto; }
@media (min-width: 960px) { .jb.jb-ui.jb-ui .jb-proof { grid-template-columns: 1fr auto; } }

/* How it works */
.jb.jb-ui.jb-ui .jb-how { display: grid; gap: var(--jb-space-4); counter-reset: how; }
@media (min-width: 960px) { .jb.jb-ui.jb-ui .jb-how { grid-template-columns: repeat(3, 1fr); gap: var(--jb-space-6); } }
.jb.jb-ui.jb-ui .jb-how > li { position: relative; display: grid; gap: var(--jb-space-2); align-content: start; padding: var(--jb-space-6); border-radius: var(--jb-radius-lg); background: var(--jb-surface); border: 1px solid var(--jb-line); counter-increment: how; }
.jb.jb-ui.jb-ui .jb-how > li::before { content: counter(how, persian); display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; background: var(--jb-brand-600); color: var(--jb-on-brand); font-weight: 800; font-size: 17px; margin-block-end: var(--jb-space-2); }
.jb.jb-ui.jb-ui .jb-how h3 { font-size: 17px; }
.jb.jb-ui.jb-ui .jb-how p { font-size: 14px; color: var(--jb-ink-500); line-height: 1.9; }

/* Dark promo band (freight, final CTA) */
.jb.jb-ui.jb-ui .jb-band { border-radius: var(--jb-radius-xl); background: var(--jb-surface-ink); color: var(--jb-brand-200); padding: var(--jb-space-8) var(--jb-space-4); display: grid; gap: var(--jb-space-6); align-items: center; }
.jb.jb-ui.jb-ui .jb-band h2 { color: var(--jb-on-brand); }
.jb.jb-ui.jb-ui .jb-band p { color: var(--jb-brand-200); font-size: 15px; line-height: 1.9; }
.jb.jb-ui.jb-ui .jb-band .jb-eyebrow { color: var(--jb-brand-200); }
.jb.jb-ui.jb-ui .jb-band__modes { display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--jb-space-3); }
.jb.jb-ui.jb-ui .jb-band__mode { display: flex; align-items: center; gap: var(--jb-space-3); padding: var(--jb-space-4); border-radius: var(--jb-radius-md); background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.12); color: var(--jb-on-brand) !important; font-weight: 700; font-size: 14px; text-decoration: none !important; }
.jb.jb-ui.jb-ui .jb-band__mode:hover { background: rgba(255,255,255,.12); }
.jb.jb-ui.jb-ui .jb-band__mode small { display: block; font-weight: 500; font-size: 12px; color: var(--jb-brand-200); }
.jb.jb-ui.jb-ui .jb-band .jb-btn--secondary { --jb-_bg: transparent; --jb-_fg: var(--jb-on-brand); --jb-_bd: rgba(255,255,255,.5); }
.jb.jb-ui.jb-ui .jb-band .jb-btn--secondary:hover { --jb-_bg: rgba(255,255,255,.1); --jb-_fg: var(--jb-on-brand); }
.jb.jb-ui.jb-ui .jb-band .jb-btn--light { --jb-_bg: var(--jb-surface); --jb-_fg: var(--jb-brand-600); }
.jb.jb-ui.jb-ui .jb-band .jb-btn--light:hover { --jb-_bg: var(--jb-brand-50); --jb-_fg: var(--jb-brand-700); }
@media (min-width: 640px) { .jb.jb-ui.jb-ui .jb-band { padding: var(--jb-space-12) var(--jb-space-8); } }
@media (min-width: 960px) { .jb.jb-ui.jb-ui .jb-band { grid-template-columns: 1fr 1fr; gap: var(--jb-space-12); padding: var(--jb-space-12); } .jb.jb-ui.jb-ui .jb-band--center { grid-template-columns: 1fr; text-align: center; justify-items: center; } }
.jb.jb-ui.jb-ui .jb-band--center .jb-actions { justify-content: center; }

/* Testimonials — CSS scroll-snap, no slider library */
.jb.jb-ui.jb-ui .jb-quotes { display: grid; grid-auto-flow: column; grid-auto-columns: 86%; gap: var(--jb-space-4); overflow-x: auto; scroll-snap-type: x mandatory; padding-block-end: var(--jb-space-2); scrollbar-width: thin; }
@media (min-width: 640px) { .jb.jb-ui.jb-ui .jb-quotes { grid-auto-columns: calc((100% - var(--jb-space-4)) / 2); } }
@media (min-width: 960px) { .jb.jb-ui.jb-ui .jb-quotes { grid-auto-columns: calc((100% - 2 * var(--jb-space-4)) / 3); } }
.jb.jb-ui.jb-ui .jb-quote { scroll-snap-align: start; display: grid; gap: var(--jb-space-4); align-content: space-between; padding: var(--jb-space-6); border-radius: var(--jb-radius-lg); background: var(--jb-surface); border: 1px solid var(--jb-line); margin: 0; }
.jb.jb-ui.jb-ui .jb-quote blockquote { margin: 0; font-size: 15px; line-height: 2; color: var(--jb-ink-700); }
.jb.jb-ui.jb-ui .jb-quote figcaption { display: flex; align-items: center; gap: var(--jb-space-3); }
.jb.jb-ui.jb-ui .jb-quote figcaption b { display: block; color: var(--jb-ink-900); font-size: 14px; }
.jb.jb-ui.jb-ui .jb-quote figcaption span { display: block; color: var(--jb-ink-500); font-size: 12px; }

/* Media placeholder (replace with real images) */
.jb.jb-ui.jb-ui .jb-media { position: relative; aspect-ratio: 16 / 10; border-radius: var(--jb-radius-md); overflow: hidden; background: var(--jb-brand-50); display: grid; place-items: center; color: var(--jb-brand-600); }
.jb.jb-ui.jb-ui .jb-media img { width: 100%; height: 100%; object-fit: cover; }
.jb.jb-ui.jb-ui .jb-media .jb-i { width: 36px; height: 36px; stroke-width: 1.4; }
.jb.jb-ui.jb-ui .jb-media--wide { aspect-ratio: 21 / 9; }

/* Blog cards */
.jb.jb-ui.jb-ui .jb-chips { display: flex; gap: var(--jb-space-2); overflow-x: auto; scrollbar-width: none; padding-block: 2px; }
.jb.jb-ui.jb-ui .jb-chip { flex: none; display: inline-flex; align-items: center; min-height: 40px; padding: 0 var(--jb-space-4); border-radius: var(--jb-radius-pill); border: 1px solid var(--jb-line-strong); background: var(--jb-surface); color: var(--jb-ink-700) !important; font-size: 13px; font-weight: 700; cursor: pointer; text-decoration: none !important; }
.jb.jb-ui.jb-ui .jb-chip:hover { border-color: var(--jb-brand-600); color: var(--jb-brand-600) !important; }
.jb.jb-ui.jb-ui .jb-chip[aria-current="page"], .jb.jb-ui.jb-ui .jb-chip[aria-pressed="true"] { background: var(--jb-brand-600); border-color: var(--jb-brand-600); color: var(--jb-on-brand) !important; }
.jb.jb-ui.jb-ui .jb-posts { display: grid; gap: var(--jb-space-4); }
.jb.jb-ui.jb-ui .jb-blog__bar { display: grid; gap: var(--jb-space-3); }
.jb.jb-ui.jb-ui .jb-blog__chips { flex-wrap: wrap; }
.jb.jb-ui.jb-ui .jb-blog__categories { min-width: 0; }
.jb.jb-ui.jb-ui .jb-blog__more { margin-block-start: var(--jb-space-2); }
.jb.jb-ui.jb-ui .jb-blog__more summary { display: flex; align-items: center; gap: var(--jb-space-2); min-height: 44px; width: fit-content; color: var(--jb-brand-600); cursor: pointer; }
.jb.jb-ui.jb-ui .jb-blog__more .jb-chips { flex-wrap: wrap; max-height: 280px; overflow-y: auto; padding: var(--jb-space-2); border: 1px solid var(--jb-line); border-radius: var(--jb-radius-md); }
.jb.jb-ui.jb-ui .jb-blog__search { max-width: 360px; width: 100%; min-width: 0; }
.jb.jb-ui.jb-ui .jb-blog__submit { display: grid; place-items: center; flex: 0 0 44px; min-height: 44px; border: 0; background: transparent; color: var(--jb-ink-500); cursor: pointer; }
.jb.jb-ui.jb-ui .jb-blog .jb-mag__lead .jb-mag__h { font-size: 19px; line-height: 1.7; }
.jb.jb-ui.jb-ui .jb-blog .jb-mag__item .jb-mag__h { font-size: 14px; line-height: 1.75; }
.jb.jb-ui.jb-ui .jb-blog .jb-mag__h a { color: inherit; text-decoration: none; }
.jb.jb-ui.jb-ui .jb-blog .jb-mag__h a::after { content: ""; position: absolute; inset: 0; }
@media (min-width: 960px) { .jb.jb-ui.jb-ui .jb-blog__bar { grid-template-columns: 1fr auto; align-items: center; } .jb.jb-ui.jb-ui .jb-blog .jb-mag__lead .jb-mag__h { font-size: 22px; } }
@media (min-width: 640px) { .jb.jb-ui.jb-ui .jb-posts { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 960px) { .jb.jb-ui.jb-ui .jb-posts { grid-template-columns: repeat(3, 1fr); gap: var(--jb-space-6); } .jb.jb-ui.jb-ui .jb-posts--4 { grid-template-columns: repeat(4, 1fr); } }
.jb.jb-ui.jb-ui .jb-post { position: relative; display: grid; gap: var(--jb-space-3); align-content: start; padding: var(--jb-space-3); border-radius: var(--jb-radius-lg); background: var(--jb-surface); border: 1px solid var(--jb-line); transition: box-shadow .15s, border-color .15s; }
.jb.jb-ui.jb-ui .jb-post:hover { box-shadow: var(--jb-shadow-md); border-color: var(--jb-brand-100); }
.jb.jb-ui.jb-ui .jb-post__body { display: grid; gap: var(--jb-space-2); padding: 0 var(--jb-space-2) var(--jb-space-2); }
.jb.jb-ui.jb-ui .jb-post__title { font-size: 16px; font-weight: 800; line-height: 1.75; color: var(--jb-ink-900) !important; text-decoration: none !important; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.jb.jb-ui.jb-ui .jb-post__title::after { content: ""; position: absolute; inset: 0; }
.jb.jb-ui.jb-ui .jb-post__excerpt { font-size: 13px; line-height: 1.9; color: var(--jb-ink-500); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.jb.jb-ui.jb-ui .jb-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 12px; font-size: 12px; color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui .jb-meta span { display: inline-flex; align-items: center; gap: 4px; }
.jb.jb-ui.jb-ui .jb-meta .jb-i { width: 14px; height: 14px; }
@media (min-width: 960px) {
  .jb.jb-ui.jb-ui .jb-post--lead { grid-column: 1 / -1; grid-template-columns: 1.25fr 1fr; align-items: center; gap: var(--jb-space-8); padding: var(--jb-space-4); }
  .jb.jb-ui.jb-ui .jb-post--lead .jb-post__title { font-size: 24px; line-height: 1.6; -webkit-line-clamp: 3; }
  .jb.jb-ui.jb-ui .jb-post--lead .jb-post__excerpt { font-size: 15px; -webkit-line-clamp: 3; }
}
.jb.jb-ui.jb-ui .jb-pager { display: flex; justify-content: center; align-items: center; gap: var(--jb-space-1); margin-top: var(--jb-space-8); }
.jb.jb-ui.jb-ui .jb-pager a, .jb.jb-ui.jb-ui .jb-pager span { min-width: 44px; height: 44px; display: grid; place-items: center; border-radius: var(--jb-radius-md); color: var(--jb-ink-700); font-weight: 700; font-size: 14px; text-decoration: none !important; }
.jb.jb-ui.jb-ui .jb-pager a:hover { background: var(--jb-surface-subtle); }
.jb.jb-ui.jb-ui .jb-pager [aria-current="page"] { background: var(--jb-brand-600); color: var(--jb-on-brand); }

/* Article */
.jb.jb-ui.jb-ui .jb-article { display: grid; gap: var(--jb-space-8); }
@media (min-width: 1100px) { .jb.jb-ui.jb-ui .jb-article { grid-template-columns: minmax(0, 1fr) 280px; gap: var(--jb-space-12); align-items: start; } .jb.jb-ui.jb-ui .jb-article__aside { position: sticky; top: calc(var(--jb-header-h) + 72px); } }
.jb.jb-ui.jb-ui .jb-article__head { display: grid; gap: var(--jb-space-3); max-width: 760px; }
.jb.jb-ui.jb-ui .jb-article-shell { display: grid; gap: var(--jb-space-6); padding-block: var(--jb-space-8) var(--jb-space-6); }
.jb.jb-ui.jb-ui .jb-article-shell .jb-crumbs { flex-wrap: wrap; overflow-wrap: anywhere; }
.jb.jb-ui.jb-ui .jb-article-cover { max-width: 900px; margin: 0; }
.jb.jb-ui.jb-ui .jb-article-cover img { display: block; max-width: 100%; height: auto; border-radius: var(--jb-radius-lg); }
.jb.jb-ui.jb-ui .jb-article-inner { display: grid; gap: var(--jb-space-6); padding-block-end: var(--jb-space-6); }
.jb.jb-ui.jb-ui .jb-article-inner > :is(.jb-prose,.jb-toc,.jb-author) { width: 100%; min-width: 0; max-width: 760px; }
.jb.jb-ui.jb-ui .jb-article-inner .jb-prose { overflow-wrap: anywhere; }
.jb.jb-ui.jb-ui .jb-article-inner .jb-prose :is(iframe,video,pre) { max-width: 100%; }
.jb.jb-ui.jb-ui .jb-article-inner .jb-prose pre { overflow-x: auto; }
.jb.jb-ui.jb-ui .jb-article-inner > section { min-width: 0; max-width: 1100px; }
.jb.jb-ui.jb-ui .jb-article-end { display: grid; gap: var(--jb-space-4); padding-block-end: var(--jb-space-8); }
.jb.jb-ui.jb-ui + .jb-article-comments { box-sizing: border-box; max-width: var(--jb-container); width: 100%; margin-inline: auto; padding: var(--jb-space-6) var(--jb-space-4) var(--jb-space-12); color: var(--jb-ink-900); font-family: var(--jb-font-sans); }
.jb.jb-ui.jb-ui + .jb-article-comments > :is(h2,.comments-area) { max-width: 900px; }
.jb.jb-ui.jb-ui + .jb-article-comments h2 { font-size: 22px; line-height: 1.7; margin-block: 0 var(--jb-space-6); }
.jb.jb-ui.jb-ui + .jb-article-comments :is(input[type=text],input[type=email],textarea) { box-sizing: border-box; width: 100%; max-width: 100%; min-height: 48px; padding: 12px; border: 1px solid var(--jb-line-strong); border-radius: var(--jb-radius-md); background: var(--jb-surface); color: var(--jb-ink-900); font: inherit; font-size: 16px; }
.jb.jb-ui.jb-ui + .jb-article-comments textarea { min-height: 140px; resize: vertical; }
.jb.jb-ui.jb-ui + .jb-article-comments :is(input,textarea,button):focus-visible { outline: 2px solid var(--jb-brand-600); outline-offset: 3px; }
.jb.jb-ui.jb-ui + .jb-article-comments button[type=submit] { min-height: 48px; border-radius: var(--jb-radius-md); background: var(--jb-brand-600); color: var(--jb-on-brand); font: inherit; padding-inline: var(--jb-space-6); }
.jb.jb-ui.jb-ui .jb-article__head h1 { font-size: 26px; line-height: 1.6; }
@media (min-width: 640px) { .jb.jb-ui.jb-ui .jb-article__head h1 { font-size: 34px; } }
.jb.jb-ui.jb-ui .jb-toc { border: 1px solid var(--jb-line); border-radius: var(--jb-radius-lg); background: var(--jb-surface); }
.jb.jb-ui.jb-ui .jb-toc summary { list-style: none; display: flex; align-items: center; justify-content: space-between; min-height: 52px; padding-inline: var(--jb-space-4); font-weight: 800; color: var(--jb-ink-900); cursor: pointer; }
.jb.jb-ui.jb-ui .jb-toc summary::-webkit-details-marker { display: none; }
.jb.jb-ui.jb-ui .jb-toc[open] summary .jb-chev { transform: rotate(180deg); }
.jb.jb-ui.jb-ui .jb-toc ol { padding: 0 var(--jb-space-4) var(--jb-space-4); display: grid; gap: 2px; counter-reset: toc; }
.jb.jb-ui.jb-ui .jb-toc li a { display: flex; gap: var(--jb-space-2); padding: 6px var(--jb-space-2); border-radius: var(--jb-radius-sm); font-size: 14px; color: var(--jb-ink-700); line-height: 1.7; }
.jb.jb-ui.jb-ui .jb-toc li a::before { counter-increment: toc; content: counter(toc, persian) "."; color: var(--jb-ink-400); }
.jb.jb-ui.jb-ui .jb-toc li a:hover, .jb.jb-ui.jb-ui .jb-toc li a[aria-current="true"] { background: var(--jb-brand-50); color: var(--jb-brand-600); }
.jb.jb-ui.jb-ui .jb-prose { max-width: 720px; font-size: 17px; line-height: 2.05; color: var(--jb-ink-700); }
.jb.jb-ui.jb-ui .jb-prose > * + * { margin-top: 1.15em; }
.jb.jb-ui.jb-ui .jb-prose h2 { font-size: 22px; line-height: 1.6; margin-top: 2em; scroll-margin-top: 140px; }
.jb.jb-ui.jb-ui .jb-prose h3 { font-size: 18px; line-height: 1.7; margin-top: 1.6em; }
.jb.jb-ui.jb-ui .jb-prose p { margin-block: 0; }
.jb.jb-ui.jb-ui .jb-prose ul, .jb.jb-ui.jb-ui .jb-prose ol { padding-inline-start: 1.4em; display: grid; gap: .4em; }
.jb.jb-ui.jb-ui .jb-prose ul { list-style: disc; } .jb.jb-ui.jb-ui .jb-prose ol { list-style: persian; }
.jb.jb-ui.jb-ui .jb-prose li::marker { color: var(--jb-brand-600); }
.jb.jb-ui.jb-ui .jb-prose a { text-decoration: underline; text-underline-offset: 4px; }
.jb.jb-ui.jb-ui .jb-prose strong { color: var(--jb-ink-900); }
.jb.jb-ui.jb-ui .jb-prose blockquote { margin: 0; padding: var(--jb-space-4) var(--jb-space-5); border-radius: var(--jb-radius-md); background: var(--jb-surface-subtle); font-size: 16px; color: var(--jb-ink-900); }
.jb.jb-ui.jb-ui .jb-prose figure { margin: 0; display: grid; gap: var(--jb-space-2); }
.jb.jb-ui.jb-ui .jb-prose figcaption { font-size: 13px; color: var(--jb-ink-500); text-align: center; }
.jb.jb-ui.jb-ui .jb-table-wrap { overflow-x: auto; border: 1px solid var(--jb-line); border-radius: var(--jb-radius-md); }
.jb.jb-ui.jb-ui .jb-table { width: 100%; border-collapse: collapse; font-size: 14px; line-height: 1.8; min-width: 520px; }
.jb.jb-ui.jb-ui .jb-table th, .jb.jb-ui.jb-ui .jb-table td { padding: 12px var(--jb-space-4); text-align: start; border-block-end: 1px solid var(--jb-line); vertical-align: top; }
.jb.jb-ui.jb-ui .jb-table thead th { background: var(--jb-surface-subtle); color: var(--jb-ink-900); font-weight: 800; font-size: 13px; }
.jb.jb-ui.jb-ui .jb-table tbody tr:last-child td { border-block-end: 0; }
.jb.jb-ui.jb-ui .jb-table td:first-child { color: var(--jb-ink-900); font-weight: 700; }
.jb.jb-ui.jb-ui .jb-table .jb-yes { color: var(--jb-success-600); font-weight: 700; }
.jb.jb-ui.jb-ui .jb-table .jb-no { color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui .jb-inline-cta { display: grid; gap: var(--jb-space-3); padding: var(--jb-space-5); border-radius: var(--jb-radius-lg); background: var(--jb-brand-50); }
.jb.jb-ui.jb-ui .jb-inline-cta b { color: var(--jb-brand-800); font-size: 16px; }
.jb.jb-ui.jb-ui .jb-author { display: flex; gap: var(--jb-space-4); align-items: flex-start; padding: var(--jb-space-5); border-radius: var(--jb-radius-lg); border: 1px solid var(--jb-line); max-width: 720px; }
.jb.jb-ui.jb-ui .jb-author .jb-avatar { width: 52px; height: 52px; font-size: 18px; }
.jb.jb-ui.jb-ui .jb-author b { color: var(--jb-ink-900); display: block; }
.jb.jb-ui.jb-ui .jb-author p { font-size: 14px; color: var(--jb-ink-500); line-height: 1.9; }
.jb.jb-ui.jb-ui .jb-share { display: flex; align-items: center; gap: var(--jb-space-2); flex-wrap: wrap; font-size: 13px; color: var(--jb-ink-500); }

/* Contact */
.jb.jb-ui.jb-ui .jb-contact-grid { display: grid; gap: var(--jb-space-3); grid-template-columns: 1fr; }
.jb.jb-ui.jb-ui .jb-contact-without-form { grid-template-columns: minmax(0, 1fr); }
.jb.jb-ui.jb-ui .jb-contact-without-form > aside { grid-template-columns: minmax(0, 1fr); }
@media (min-width: 768px) { .jb.jb-ui.jb-ui .jb-contact-without-form > aside { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1100px) { .jb.jb-ui.jb-ui .jb-contact-without-form > aside { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (min-width: 640px) { .jb.jb-ui.jb-ui .jb-contact-grid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1100px) { .jb.jb-ui.jb-ui .jb-contact-grid { grid-template-columns: repeat(4, 1fr); } }
.jb.jb-ui.jb-ui .jb-cchan { position: relative; display: grid; gap: var(--jb-space-2); align-content: start; padding: var(--jb-space-5); border-radius: var(--jb-radius-lg); border: 1px solid var(--jb-line); background: var(--jb-surface); text-decoration: none !important; color: var(--jb-ink-700) !important; transition: border-color .15s, box-shadow .15s; }
.jb.jb-ui.jb-ui .jb-cchan:hover { border-color: var(--jb-brand-200); box-shadow: var(--jb-shadow-md); }
.jb.jb-ui.jb-ui .jb-cchan__icon { width: 44px; height: 44px; border-radius: var(--jb-radius-md); display: grid; place-items: center; background: var(--jb-brand-50); color: var(--jb-brand-600); }
.jb.jb-ui.jb-ui .jb-cchan--wa .jb-cchan__icon { background: var(--jb-success-50); color: var(--jb-whatsapp); }
.jb.jb-ui.jb-ui .jb-cchan--eitaa .jb-cchan__icon { background: var(--jb-warning-50); color: var(--jb-eitaa); }
.jb.jb-ui.jb-ui .jb-cchan b { color: var(--jb-ink-900); font-size: 15px; }
.jb.jb-ui.jb-ui .jb-cchan strong { color: var(--jb-ink-900); font-size: 17px; font-weight: 800; }
.jb.jb-ui.jb-ui .jb-cchan span { font-size: 13px; color: var(--jb-ink-500); line-height: 1.8; }
.jb.jb-ui.jb-ui .jb-office { display: grid; gap: var(--jb-space-4); }
.jb.jb-ui.jb-ui .jb-offices { padding-block-start: var(--jb-space-6); }
.jb.jb-ui.jb-ui .jb-offices-nav { display: flex; flex-wrap: wrap; gap: var(--jb-space-2); margin-block-end: var(--jb-space-6); }
.jb.jb-ui.jb-ui .jb-offices-nav .jb-chip { min-height: 44px; }
.jb.jb-ui.jb-ui .jb-offices-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--jb-space-5); }
.jb.jb-ui.jb-ui .jb-office-card { min-width: 0; overflow: hidden; background: var(--jb-surface); border: 1px solid var(--jb-line); border-radius: var(--jb-radius-lg); scroll-margin-block-start: 160px; }
.jb.jb-ui.jb-ui .jb-office-card__image { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; }
.jb.jb-ui.jb-ui .jb-office-card__body { padding: var(--jb-space-5); }
.jb.jb-ui.jb-ui .jb-office-card__body h2 { font-size: 20px; line-height: 1.7; margin-block: 0 var(--jb-space-4); }
.jb.jb-ui.jb-ui .jb-office-card__body dl { margin: 0; }
.jb.jb-ui.jb-ui .jb-office-card__body dl > div { display: grid; grid-template-columns: 95px minmax(0, 1fr); gap: var(--jb-space-3); padding-block: var(--jb-space-3); border-block-start: 1px solid var(--jb-line); }
.jb.jb-ui.jb-ui .jb-office-card__body dt { color: var(--jb-ink-500); font-size: 13px; }
.jb.jb-ui.jb-ui .jb-office-card__body dd { display: flex; align-items: start; gap: var(--jb-space-2); margin: 0; min-width: 0; font-size: 14px; overflow-wrap: anywhere; }
.jb.jb-ui.jb-ui .jb-office-card__body bdi { min-width: 0; }
.jb.jb-ui.jb-ui .jb-office-card__icon { flex: 0 0 20px; margin-block-start: 3px; }
@media (min-width: 768px) { .jb.jb-ui.jb-ui .jb-offices-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1200px) { .jb.jb-ui.jb-ui .jb-offices-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.jb.jb-ui.jb-ui .jb-office__map { aspect-ratio: 16 / 9; border-radius: var(--jb-radius-md); background: var(--jb-surface-subtle); border: 1px dashed var(--jb-line-strong); display: grid; place-items: center; text-align: center; color: var(--jb-ink-500); font-size: 13px; padding: var(--jb-space-4); }
.jb.jb-ui.jb-ui .jb-placeholder { background: var(--jb-warning-50); color: var(--jb-warning-700); border-radius: 4px; padding: 0 4px; font-weight: 600; }

/* Landing */
.jb.jb-ui.jb-ui .jb-lhero { background: linear-gradient(180deg, var(--jb-brand-50) 0, var(--jb-surface) 100%); padding-block: var(--jb-space-6) var(--jb-space-12); }
.jb.jb-ui.jb-ui .jb-lhero__grid { display: grid; gap: var(--jb-space-8); align-items: start; margin-top: var(--jb-space-6); }
.jb.jb-ui.jb-ui .jb-lhero__copy { display: grid; gap: var(--jb-space-4); }
.jb.jb-ui.jb-ui .jb-lhero h1 { font-size: 28px; line-height: 1.55; }
.jb.jb-ui.jb-ui .jb-lhero h1 em { font-style: normal; color: var(--jb-brand-600); }
.jb.jb-ui.jb-ui .jb-lhero__lead { font-size: 16px; line-height: 1.95; color: var(--jb-ink-700); }
.jb.jb-ui.jb-ui .jb-ticks { display: grid; gap: var(--jb-space-2); }
.jb.jb-ui.jb-ui .jb-ticks li { display: flex; gap: var(--jb-space-2); align-items: flex-start; font-size: 15px; color: var(--jb-ink-700); line-height: 1.8; }
.jb.jb-ui.jb-ui .jb-ticks .jb-i { color: var(--jb-success-600); margin-top: 4px; }
@media (min-width: 960px) { .jb.jb-ui.jb-ui .jb-lhero { padding-block: var(--jb-space-8) var(--jb-space-16); } .jb.jb-ui.jb-ui .jb-lhero__grid { grid-template-columns: 1fr 460px; gap: var(--jb-space-12); } .jb.jb-ui.jb-ui .jb-lhero h1 { font-size: 38px; } }
.jb.jb-ui.jb-ui .jb-features { display: grid; gap: var(--jb-space-4); }
@media (min-width: 640px) { .jb.jb-ui.jb-ui .jb-features { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 960px) { .jb.jb-ui.jb-ui .jb-features { grid-template-columns: repeat(3, 1fr); gap: var(--jb-space-6); } }
.jb.jb-ui.jb-ui .jb-feature { display: grid; gap: var(--jb-space-2); align-content: start; padding: var(--jb-space-5); }
.jb.jb-ui.jb-ui .jb-feature .jb-service__icon { margin-block-end: var(--jb-space-1); }
.jb.jb-ui.jb-ui .jb-feature h3 { font-size: 16px; }
.jb.jb-ui.jb-ui .jb-feature p { font-size: 14px; color: var(--jb-ink-500); line-height: 1.9; }
.jb.jb-ui.jb-ui .jb-faq { display: grid; gap: var(--jb-space-3); max-width: 860px; }
.jb.jb-ui.jb-ui .jb-faq details { border: 1px solid var(--jb-line); border-radius: var(--jb-radius-md); background: var(--jb-surface); }
.jb.jb-ui.jb-ui .jb-faq details[open] { border-color: var(--jb-brand-200); }
.jb.jb-ui.jb-ui .jb-faq summary { list-style: none; display: flex; align-items: center; justify-content: space-between; gap: var(--jb-space-4); min-height: 56px; padding: var(--jb-space-3) var(--jb-space-5); font-weight: 700; color: var(--jb-ink-900); cursor: pointer; font-size: 15px; line-height: 1.8; }
.jb.jb-ui.jb-ui .jb-faq summary::-webkit-details-marker { display: none; }
.jb.jb-ui.jb-ui .jb-faq summary .jb-chev { flex: none; transition: transform .15s; color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui .jb-faq details[open] summary .jb-chev { transform: rotate(180deg); color: var(--jb-brand-600); }
.jb.jb-ui.jb-ui .jb-faq details > div { padding: 0 var(--jb-space-5) var(--jb-space-5); font-size: 15px; line-height: 2; color: var(--jb-ink-700); }
.jb.jb-ui.jb-ui .jb-flow { display: grid; gap: 0; counter-reset: flow; }
.jb.jb-ui.jb-ui .jb-flow li { position: relative; display: grid; grid-template-columns: 44px 1fr; gap: var(--jb-space-4); padding-block-end: var(--jb-space-6); }
.jb.jb-ui.jb-ui .jb-flow li::before { content: ""; position: absolute; inset-inline-start: 21px; top: 44px; bottom: 0; width: 2px; background: var(--jb-brand-100); }
.jb.jb-ui.jb-ui .jb-flow li:last-child::before { display: none; }
.jb.jb-ui.jb-ui .jb-flow__n { width: 44px; height: 44px; border-radius: 50%; display: grid; place-items: center; background: var(--jb-brand-50); color: var(--jb-brand-600); }
.jb.jb-ui.jb-ui .jb-flow h3 { font-size: 16px; }
.jb.jb-ui.jb-ui .jb-flow p { font-size: 14px; color: var(--jb-ink-500); line-height: 1.9; }
@media (min-width: 960px) {
  .jb.jb-ui.jb-ui .jb-flow { grid-template-columns: repeat(6, 1fr); gap: var(--jb-space-4); }
  .jb.jb-ui.jb-ui .jb-flow li { grid-template-columns: 1fr; justify-items: center; text-align: center; padding: 0; gap: var(--jb-space-2); }
  .jb.jb-ui.jb-ui .jb-flow li::before { top: 21px; bottom: auto; inset-inline-start: calc(50% + 30px); width: calc(100% - 44px); height: 2px; }
}
.jb.jb-ui.jb-ui .jb-docs { display: grid; gap: var(--jb-space-2); }
@media (min-width: 640px) { .jb.jb-ui.jb-ui .jb-docs { grid-template-columns: repeat(2, 1fr); } }
.jb.jb-ui.jb-ui .jb-docs li { display: flex; gap: var(--jb-space-3); align-items: flex-start; padding: var(--jb-space-4); border-radius: var(--jb-radius-md); background: var(--jb-surface); border: 1px solid var(--jb-line); font-size: 14px; line-height: 1.8; }
.jb.jb-ui.jb-ui .jb-docs li .jb-i { color: var(--jb-brand-600); margin-top: 3px; }
.jb.jb-ui.jb-ui .jb-docs li b { display: block; color: var(--jb-ink-900); }
.jb.jb-ui.jb-ui .jb-docs li span { color: var(--jb-ink-500); font-size: 13px; }
.jb.jb-ui.jb-ui .jb-links { display: flex; flex-wrap: wrap; gap: var(--jb-space-2); }

/* WooCommerce price HTML inside our product card */
.jb.jb-ui.jb-ui .jb-wc-price { font-size: 15px; }
.jb.jb-ui.jb-ui .jb-wc-price del { display: block; font-size: 12px; font-weight: 500; color: var(--jb-ink-500); line-height: 1.4; }
.jb.jb-ui.jb-ui .jb-wc-price ins { text-decoration: none; }
.jb.jb-ui.jb-ui .jb-wc-price .woocommerce-Price-currencySymbol { font-size: 11px; font-weight: 500; color: var(--jb-ink-500); margin-inline-start: 2px; }
.jb.jb-ui.jb-ui .jb-wc-price .screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }

/* Tables inside article text */
.jb.jb-ui.jb-ui .jb-prose table { width: 100%; border-collapse: separate; border-spacing: 0; border: 1px solid var(--jb-line); border-radius: var(--jb-radius-md); overflow: hidden; font-size: 15px; line-height: 1.8; display: block; overflow-x: auto; }
.jb.jb-ui.jb-ui .jb-prose :is(th, td) { padding: 12px 16px; text-align: start; border-block-end: 1px solid var(--jb-line); vertical-align: top; }
.jb.jb-ui.jb-ui .jb-prose thead th { background: var(--jb-surface-subtle); color: var(--jb-ink-900); font-weight: 800; font-size: 14px; }
.jb.jb-ui.jb-ui .jb-prose tbody tr:last-child td { border-block-end: 0; }
.jb.jb-ui.jb-ui .jb-prose img { border-radius: var(--jb-radius-md); }
.jb.jb-ui.jb-ui .jb-file:focus-within { border-color: var(--jb-brand-600); box-shadow: 0 0 0 3px var(--jb-brand-200); }
@media (max-width: 639px) { .jb.jb-ui.jb-ui .jb-hero .jb-stores { display: none; } }

/* Header on phones/tablets: omnibox drops to its own full-width row (same markup as desktop) */
@media (max-width: 959px) {
  .jb.jb-ui.jb-ui .jb-header__bar { flex-wrap: wrap; row-gap: 0; }
  .jb.jb-ui.jb-ui .jb-header__search { order: 10; flex: 1 0 100%; min-width: 0; }
  .jb.jb-ui.jb-ui .jb-omni button[type="submit"] span { display: none; }
  .jb.jb-ui.jb-ui .jb-omni button[type="submit"] { min-width: 44px; padding: 0 var(--jb-space-3); }
}

/* =====================================================================
   «Jumbo Jet» visual language — flight arcs, boarding passes, departure board, baggage tags.
   Used by the redesigned home page and the order ticket.
   ===================================================================== */

/* Route codes (IATA-style chips, always LTR) */
.jb.jb-ui.jb-ui .jb-iata { display: inline-flex; align-items: baseline; gap: 6px; direction: ltr; unicode-bidi: isolate; padding: 4px 10px; border-radius: var(--jb-radius-pill); background: var(--jb-surface); border: 1px solid var(--jb-line); color: var(--jb-ink-900); font-family: var(--jb-font-latin); font-weight: 700; font-size: 12px; letter-spacing: .08em; line-height: 1.4; white-space: nowrap; }
.jb.jb-ui.jb-ui .jb-iata small { font-family: var(--jb-font-sans); letter-spacing: 0; font-weight: 600; font-size: 11px; color: var(--jb-ink-500); direction: rtl; }
.jb.jb-ui.jb-ui .jb-iata--to { background: var(--jb-brand-600); border-color: var(--jb-brand-600); color: var(--jb-on-brand); }
.jb.jb-ui.jb-ui .jb-iata--to small { color: var(--jb-brand-100); }
.jb.jb-ui.jb-ui .jb-routechips { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }
.jb.jb-ui.jb-ui .jb-routechips__arrow { color: var(--jb-brand-600); display: inline-flex; }

/* Flight arc (decorative dots) */
.jb.jb-ui.jb-ui .jb-arc { position: absolute; inset: 0; pointer-events: none; overflow: hidden; }
.jb.jb-ui.jb-ui .jb-arc svg { position: absolute; inset-inline-start: -8%; top: 12px; width: 116%; height: auto; max-width: none; }
.jb.jb-ui.jb-ui .jb-arc .dot { fill: var(--jb-brand-200); }
.jb.jb-ui.jb-ui .jb-arc .dot--hot { fill: var(--jb-brand-600); }

/* Boarding pass base */
.jb.jb-ui.jb-ui .jb-pass { --jb-_notch: var(--jb-surface); position: relative; display: flex; flex-direction: column; overflow: hidden; background: var(--jb-surface); border: 1px solid var(--jb-line); border-radius: var(--jb-radius-xl); box-shadow: var(--jb-shadow-lg); }
.jb.jb-ui.jb-ui .jb-pass__bar { height: 6px; background: var(--jb-brand-600); }
.jb.jb-ui.jb-ui .jb-pass__head { display: flex; align-items: center; justify-content: space-between; gap: var(--jb-space-3); padding: 14px 20px; border-block-end: 1px solid var(--jb-line); }
.jb.jb-ui.jb-ui .jb-pass__title { display: grid; gap: 0; line-height: 1.4; }
.jb.jb-ui.jb-ui .jb-pass__title b { font-size: 14px; font-weight: 800; color: var(--jb-ink-900); }
.jb.jb-ui.jb-ui .jb-pass__title span { font-family: var(--jb-font-latin); font-size: 11px; letter-spacing: .14em; color: var(--jb-ink-500); direction: ltr; text-align: start; }
.jb.jb-ui.jb-ui .jb-pass__main { display: grid; gap: var(--jb-space-4); padding: 20px; }
.jb.jb-ui.jb-ui .jb-pass__perf { position: relative; flex: none; height: 0; margin-inline: 20px; border-block-start: 2px dashed var(--jb-line-strong); }
.jb.jb-ui.jb-ui .jb-pass__perf::before, .jb.jb-ui.jb-ui .jb-pass__perf::after { content: ""; position: absolute; top: -13px; width: 24px; height: 24px; border-radius: 50%; background: var(--jb-_notch); border: 1px solid var(--jb-line); }
.jb.jb-ui.jb-ui .jb-pass__perf::before { inset-inline-start: -33px; }
.jb.jb-ui.jb-ui .jb-pass__perf::after { inset-inline-end: -33px; }
.jb.jb-ui.jb-ui .jb-pass__stub { display: grid; gap: var(--jb-space-3); padding: 16px 20px 20px; align-content: start; }
@media (min-width: 768px) {
  .jb.jb-ui.jb-ui .jb-pass--h { flex-direction: row; flex-wrap: wrap; }
  .jb.jb-ui.jb-ui .jb-pass--h > .jb-pass__bar, .jb.jb-ui.jb-ui .jb-pass--h > .jb-pass__head { flex: 1 0 100%; }
  .jb.jb-ui.jb-ui .jb-pass--h > .jb-pass__main { flex: 1 1 0; min-width: 0; padding: 24px; }
  .jb.jb-ui.jb-ui .jb-pass--h > .jb-pass__perf { width: 0; height: auto; margin: 24px 0; border-block-start: 0; border-inline-start: 2px dashed var(--jb-line-strong); }
  .jb.jb-ui.jb-ui .jb-pass--h > .jb-pass__perf::before { top: -38px; inset-inline-start: -13px; }
  .jb.jb-ui.jb-ui .jb-pass--h > .jb-pass__perf::after { top: auto; bottom: -38px; inset-inline-end: auto; inset-inline-start: -13px; }
  .jb.jb-ui.jb-ui .jb-pass--h > .jb-pass__stub { flex: 0 0 280px; padding: 24px; }
}

/* Hero v2 */
.jb.jb-ui.jb-ui .jb-hero2 { position: relative; overflow: hidden; padding-block: var(--jb-space-6) var(--jb-space-12); background: linear-gradient(180deg, var(--jb-brand-50) 0, var(--jb-surface) 78%); }
.jb.jb-ui.jb-ui .jb-hero2__grid { position: relative; display: grid; gap: var(--jb-space-6); grid-template-areas: "copy" "pass" "info"; }
.jb.jb-ui.jb-ui .jb-hero2__copy { grid-area: copy; display: grid; gap: var(--jb-space-4); align-content: start; }
/* Existing-content home: compact RTL layout, no changes to native order/calculator CSS. */
.jb.jb-ui.jb-ui .jb-home-intro .jb-hero2 h1 { font-size: clamp(24px, 2.5vw, 34px); line-height: 1.8; }
.jb.jb-ui.jb-ui .jb-home-intro .jb-hero2__grid { grid-template-areas: "copy" "pass"; }
.jb.jb-ui.jb-ui .jb-home-intro .jb-hero2__pass .jb-omni__photo { display: inline-flex; }
.jb.jb-ui.jb-ui .jb-home-story { display: grid; gap: var(--jb-space-8); align-items: center; }
.jb.jb-ui.jb-ui .jb-home-story > *, .jb.jb-ui.jb-ui .jb-home-steps > *, .jb.jb-ui.jb-ui .jb-home-quotes > * { min-width: 0; }
.jb.jb-ui.jb-ui .jb-home-story h2 { margin-block-end: var(--jb-space-5); }
.jb.jb-ui.jb-ui .jb-home-story .jb-prose { margin-block: var(--jb-space-5); }
.jb.jb-ui.jb-ui .jb-home-image { width: 100%; height: auto; max-width: 560px; justify-self: center; object-fit: contain; }
.jb.jb-ui.jb-ui .jb-home-benefits .jb-logos { flex-wrap: wrap; margin-block-start: var(--jb-space-6); }
.jb.jb-ui.jb-ui .jb-home-benefits .jb-logos img { max-width: 120px; height: 44px; object-fit: contain; }
.jb.jb-ui.jb-ui .jb-home-steps, .jb.jb-ui.jb-ui .jb-home-quotes, .jb.jb-ui.jb-ui .jb-home-credentials { display: grid; gap: var(--jb-space-5); }
.jb.jb-ui.jb-ui .jb-home-step { padding: var(--jb-space-5); border: 1px solid var(--jb-line); border-radius: var(--jb-radius-lg); background: var(--jb-surface); }
.jb.jb-ui.jb-ui .jb-home-step__number { display: grid; place-items: center; width: 40px; height: 40px; border-radius: var(--jb-radius-md); background: var(--jb-brand-50); color: var(--jb-brand-700); font-weight: 800; margin-block-end: var(--jb-space-4); }
.jb.jb-ui.jb-ui .jb-home-step h3 { margin-block-end: var(--jb-space-4); }
.jb.jb-ui.jb-ui .jb-home-step summary { display: flex; align-items: center; gap: var(--jb-space-3); list-style: none; cursor: pointer; min-height: var(--jb-touch-min); }
.jb.jb-ui.jb-ui .jb-home-step summary::-webkit-details-marker { display: none; }
.jb.jb-ui.jb-ui .jb-home-step summary h3 { margin: 0; flex: 1; font-size: 16px; }
.jb.jb-ui.jb-ui .jb-home-step summary .jb-home-step__number { flex-shrink: 0; margin: 0; }
.jb.jb-ui.jb-ui .jb-home-step[open] summary { margin-block-end: var(--jb-space-5); }
.jb.jb-ui.jb-ui .jb-home-step[open] .jb-chev { transform: rotate(180deg); }
.jb.jb-ui.jb-ui .jb-home-steps { align-items: start; }
.jb.jb-ui.jb-ui .jb-home-step .jb-prose { font-size: 14px; }
.jb.jb-ui.jb-ui .jb-home-calc-title { padding-block: var(--jb-space-6); }
.jb.jb-ui.jb-ui .jb-home-credentials img { width: 100%; height: auto; object-fit: contain; }
.jb.jb-ui.jb-ui .jb-home-final { padding: var(--jb-space-8); border-radius: var(--jb-radius-xl); background: var(--jb-brand-50); display: grid; gap: var(--jb-space-5); }
.jb.jb-ui.jb-ui .jb-home-actions { display: flex; flex-wrap: wrap; gap: var(--jb-space-3); }
@media (min-width: 960px) {
 .jb.jb-ui.jb-ui .jb-home-intro .jb-hero2__grid { grid-template-areas: "copy pass"; }
 .jb.jb-ui.jb-ui .jb-home-story, .jb.jb-ui.jb-ui .jb-home-credentials { grid-template-columns: repeat(2, minmax(0,1fr)); }
 .jb.jb-ui.jb-ui .jb-home-steps, .jb.jb-ui.jb-ui .jb-home-quotes { grid-template-columns: repeat(3, minmax(0,1fr)); }
}
.jb.jb-ui.jb-ui .jb-hero2__pass { grid-area: pass; }
.jb.jb-ui.jb-ui .jb-hero2__info { grid-area: info; }
.jb.jb-ui.jb-ui .jb-hero2 h1 { font-size: 30px; line-height: 1.5; font-weight: 900; letter-spacing: -.01em; position: relative; isolation: isolate; }
.jb.jb-ui.jb-ui .jb-hero2 h1 em { font-style: normal; color: var(--jb-brand-600); position: relative; white-space: nowrap; }
.jb.jb-ui.jb-ui .jb-hero2 h1 em::after { content: ""; position: absolute; inset-inline: 0; bottom: .08em; height: .18em; border-radius: 4px; background: var(--jb-brand-100); z-index: -1; }
.jb.jb-ui.jb-ui .jb-hero2__lead { font-size: 16px; line-height: 1.95; color: var(--jb-ink-700); max-width: 540px; }
.jb.jb-ui.jb-ui .jb-hero2__pass .jb-pass__stub { background: var(--jb-surface-subtle); }
.jb.jb-ui.jb-ui .jb-hero2__note { display: flex; gap: var(--jb-space-2); align-items: center; font-size: 12px; color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui .jb-hero2__note .jb-i { color: var(--jb-brand-600); }
.jb.jb-ui.jb-ui .jb-proofrow { display: flex; flex-wrap: wrap; gap: 6px 14px; font-size: 12px; color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui .jb-proofrow li { display: inline-flex; align-items: center; gap: 5px; }
.jb.jb-ui.jb-ui .jb-proofrow .jb-i { color: var(--jb-success-600); width: 14px; height: 14px; }
.jb.jb-ui.jb-ui .jb-flightinfo { display: grid; grid-template-columns: repeat(3, 1fr); border-block: 1px solid var(--jb-line); margin: 0; }
.jb.jb-ui.jb-ui .jb-flightinfo > div { display: grid; gap: 2px; padding: 12px 0; padding-inline-start: 12px; border-inline-start: 1px solid var(--jb-line); }
.jb.jb-ui.jb-ui .jb-flightinfo > div:first-child { border-inline-start: 0; padding-inline-start: 0; }
.jb.jb-ui.jb-ui .jb-flightinfo dt { font-size: 11px; color: var(--jb-ink-500); font-weight: 600; }
.jb.jb-ui.jb-ui .jb-flightinfo dd { margin: 0; font-size: 20px; font-weight: 900; color: var(--jb-ink-900); line-height: 1.3; font-feature-settings: "tnum" 1; }
@media (min-width: 960px) {
  .jb.jb-ui.jb-ui .jb-hero2 { padding-block: var(--jb-space-12) var(--jb-space-16); }
  .jb.jb-ui.jb-ui .jb-hero2__grid { grid-template-columns: minmax(0, 1fr) 480px; grid-template-areas: "copy pass" "info pass"; column-gap: var(--jb-space-12); row-gap: var(--jb-space-8); align-items: start; }
  .jb.jb-ui.jb-ui .jb-hero2 h1 { font-size: 46px; line-height: 1.4; }
  .jb.jb-ui.jb-ui .jb-hero2__lead { font-size: 17px; }
  .jb.jb-ui.jb-ui .jb-flightinfo dd { font-size: 26px; }
}

/* Origins strip */
.jb.jb-ui.jb-ui .jb-origins { display: flex; align-items: center; gap: var(--jb-space-4); padding-block: var(--jb-space-5); border-block-end: 1px solid var(--jb-line); overflow-x: auto; scrollbar-width: none; }
.jb.jb-ui.jb-ui .jb-origins__label { flex: none; font-size: 13px; font-weight: 800; color: var(--jb-ink-900); }
.jb.jb-ui.jb-ui .jb-origins .jb-routechips { flex-wrap: nowrap; }

/* Services bento */
.jb.jb-ui.jb-ui .jb-bento { display: grid; gap: var(--jb-space-3); grid-template-columns: repeat(2, minmax(0, 1fr)); }
.jb.jb-ui.jb-ui .jb-tile { position: relative; display: flex; flex-direction: column; gap: 6px; min-height: 148px; padding: var(--jb-space-4); border-radius: var(--jb-radius-lg); background: var(--jb-surface); border: 1px solid var(--jb-line); color: var(--jb-ink-700) !important; text-decoration: none !important; transition: border-color .15s, box-shadow .15s, transform .15s; }
.jb.jb-ui.jb-ui .jb-tile:hover { border-color: var(--jb-brand-200); box-shadow: var(--jb-shadow-md); transform: translateY(-2px); }
.jb.jb-ui.jb-ui .jb-tile__gate { font-size: 11px; font-weight: 700; color: var(--jb-ink-500); letter-spacing: .02em; }
.jb.jb-ui.jb-ui .jb-tile__icon { width: 40px; height: 40px; border-radius: var(--jb-radius-md); display: grid; place-items: center; background: var(--jb-brand-50); color: var(--jb-brand-600); margin-block-end: 4px; }
.jb.jb-ui.jb-ui .jb-tile h3 { font-size: 15px; line-height: 1.6; }
.jb.jb-ui.jb-ui .jb-tile p { font-size: 13px; line-height: 1.8; color: var(--jb-ink-500); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.jb.jb-ui.jb-ui .jb-tile__go { position: absolute; inset-block-start: var(--jb-space-4); inset-inline-end: var(--jb-space-4); width: 32px; height: 32px; border-radius: 50%; display: grid; place-items: center; background: var(--jb-surface-subtle); color: var(--jb-ink-700); transition: background .15s, color .15s; }
.jb.jb-ui.jb-ui .jb-tile:hover .jb-tile__go { background: var(--jb-brand-600); color: var(--jb-on-brand); }
.jb.jb-ui.jb-ui .jb-tile .jb-badge { align-self: flex-start; }
.jb.jb-ui.jb-ui .jb-tile--feature { grid-column: 1 / -1; min-height: 240px; overflow: hidden; background: var(--jb-surface-ink); border-color: var(--jb-surface-ink); color: var(--jb-brand-200) !important; padding: var(--jb-space-6); justify-content: flex-end; }
.jb.jb-ui.jb-ui .jb-tile--feature h3 { color: var(--jb-on-brand); font-size: 20px; line-height: 1.6; max-width: 420px; }
.jb.jb-ui.jb-ui .jb-tile--feature p { color: var(--jb-brand-200); -webkit-line-clamp: 3; max-width: 440px; }
.jb.jb-ui.jb-ui .jb-tile--feature .jb-tile__gate { color: var(--jb-signal-400); }
.jb.jb-ui.jb-ui .jb-tile--feature .jb-tile__icon { background: rgba(255,255,255,.1); color: var(--jb-on-brand); }
.jb.jb-ui.jb-ui .jb-tile--feature .jb-tile__go { background: var(--jb-signal-400); color: var(--jb-surface-ink); }
.jb.jb-ui.jb-ui .jb-tile--feature .jb-arc svg { top: -10px; width: 120%; opacity: .55; }
.jb.jb-ui.jb-ui .jb-tile--feature .jb-arc .dot { fill: var(--jb-brand-500); }
.jb.jb-ui.jb-ui .jb-tile--feature .jb-arc .dot--hot { fill: var(--jb-signal-400); }
.jb.jb-ui.jb-ui .jb-tile--feature > *:not(.jb-arc) { position: relative; }
.jb.jb-ui.jb-ui .jb-tile__cta { display: inline-flex; align-items: center; gap: 6px; margin-top: var(--jb-space-2); font-weight: 800; font-size: 14px; color: var(--jb-on-brand); }
.jb.jb-ui.jb-ui .jb-tile--wide { grid-column: 1 / -1; min-height: 0; flex-direction: row; flex-wrap: wrap; align-items: center; gap: var(--jb-space-3) var(--jb-space-4); padding-inline-end: 64px; }
.jb.jb-ui.jb-ui .jb-tile--wide .jb-tile__icon { margin: 0; }
.jb.jb-ui.jb-ui .jb-tile--wide .jb-tile__text { flex: 1 1 220px; display: grid; gap: 2px; }
.jb.jb-ui.jb-ui .jb-tile--wide .jb-tile__go { inset-block-start: 50%; transform: translateY(-50%); }
@media (min-width: 960px) {
  .jb.jb-ui.jb-ui .jb-bento { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--jb-space-4); }
  .jb.jb-ui.jb-ui .jb-tile { min-height: 180px; padding: var(--jb-space-5); }
  .jb.jb-ui.jb-ui .jb-tile--feature { grid-column: span 2; grid-row: span 2; padding: var(--jb-space-8); }
  .jb.jb-ui.jb-ui .jb-tile--feature h3 { font-size: 26px; }
  .jb.jb-ui.jb-ui .jb-tile--wide { grid-column: 1 / -1; min-height: 0; }
}

/* Steps as a flight path */
.jb.jb-ui.jb-ui .jb-path { position: relative; display: grid; gap: var(--jb-space-6); counter-reset: none; }
.jb.jb-ui.jb-ui .jb-path::before { content: ""; position: absolute; inset-block: 22px; inset-inline-start: 21px; border-inline-start: 2px dashed var(--jb-brand-200); }
.jb.jb-ui.jb-ui .jb-path > li { position: relative; display: grid; grid-template-columns: 44px 1fr; gap: 4px var(--jb-space-4); align-items: start; }
.jb.jb-ui.jb-ui .jb-path__pin { grid-row: span 3; width: 44px; height: 44px; border-radius: 50%; display: grid; place-items: center; background: var(--jb-surface); border: 2px solid var(--jb-brand-600); color: var(--jb-brand-600); position: relative; z-index: 1; }
.jb.jb-ui.jb-ui .jb-path > li:last-child .jb-path__pin { background: var(--jb-brand-600); color: var(--jb-on-brand); }
.jb.jb-ui.jb-ui .jb-path__no { font-size: 13px; font-weight: 800; color: var(--jb-brand-600); font-feature-settings: "tnum" 1; }
.jb.jb-ui.jb-ui .jb-path h3 { font-size: 17px; }
.jb.jb-ui.jb-ui .jb-path p { font-size: 14px; line-height: 1.9; color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui .jb-path__plane { display: none; }
/* Purchase landing composition: keep every comparison column visible on phones. */
@media (max-width: 599px) {
  .jb.jb-ui.jb-ui [data-jb-purchase-compare] .jb-table { min-width: 0; table-layout: fixed; }
  .jb.jb-ui.jb-ui [data-jb-purchase-compare] .jb-table th,
  .jb.jb-ui.jb-ui [data-jb-purchase-compare] .jb-table td { padding: var(--jb-space-3) var(--jb-space-2); overflow-wrap: anywhere; font-size: 12px; }
  .jb.jb-ui.jb-ui [data-jb-purchase-compare] .jb-table th:first-child { width: 24%; }
}
@media (min-width: 960px) {
  .jb.jb-ui.jb-ui [data-jb-purchase-journey] .jb-path > .jb-path__plane { position: absolute; }
}
@media (min-width: 960px) {
  .jb.jb-ui.jb-ui .jb-path { grid-template-columns: repeat(3, 1fr); gap: var(--jb-space-8); padding-inline-end: 56px; }
  .jb.jb-ui.jb-ui .jb-path::before { inset-block: auto; top: 21px; inset-inline: 22px 28px; border-inline-start: 0; border-block-start: 2px dashed var(--jb-brand-200); }
  .jb.jb-ui.jb-ui .jb-path > li { grid-template-columns: 1fr; }
  .jb.jb-ui.jb-ui .jb-path__pin { grid-row: auto; margin-block-end: var(--jb-space-3); }
  .jb.jb-ui.jb-ui .jb-path__plane { display: grid; place-items: center; position: absolute; top: 4px; inset-inline-end: 0; width: 40px; height: 40px; color: var(--jb-brand-600); }
}

/* Departure board (freight) */
.jb.jb-ui.jb-ui .jb-board { border-radius: var(--jb-radius-xl); background: var(--jb-surface-ink); color: var(--jb-brand-200); padding: var(--jb-space-6) var(--jb-space-4); display: grid; gap: var(--jb-space-6); }
.jb.jb-ui.jb-ui .jb-board__head { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: var(--jb-space-4); }
.jb.jb-ui.jb-ui .jb-board__head > div { display: grid; gap: var(--jb-space-2); max-width: 560px; }
.jb.jb-ui.jb-ui .jb-board__head h2 { color: var(--jb-on-brand); }
.jb.jb-ui.jb-ui .jb-board__head p { color: var(--jb-brand-200); font-size: 15px; line-height: 1.9; }
.jb.jb-ui.jb-ui .jb-board__eyebrow { display: inline-flex; align-items: center; gap: 8px; font-size: 12px; font-weight: 800; color: var(--jb-signal-400); }
.jb.jb-ui.jb-ui .jb-board__eyebrow::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--jb-signal-400); box-shadow: 0 0 0 4px rgba(255, 200, 61, .18); }
.jb.jb-ui.jb-ui .jb-board__table { display: grid; gap: 6px; }
.jb.jb-ui.jb-ui .jb-board__row { display: grid; grid-template-columns: 1fr auto; gap: 8px var(--jb-space-3); align-items: center; padding: 14px; border-radius: var(--jb-radius-md); background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.08); color: var(--jb-brand-200) !important; text-decoration: none !important; transition: background .15s, border-color .15s; }
.jb.jb-ui.jb-ui a.jb-board__row:hover { background: rgba(255,255,255,.08); border-color: rgba(255,255,255,.18); }
.jb.jb-ui.jb-ui .jb-board__row--head { display: none; }
.jb.jb-ui.jb-ui .jb-board__mode { display: inline-flex; align-items: center; gap: 10px; font-weight: 800; color: var(--jb-on-brand); font-size: 15px; }
.jb.jb-ui.jb-ui .jb-board__mode .jb-i { color: var(--jb-signal-400); }
.jb.jb-ui.jb-ui .jb-board__route { grid-column: 1 / -1; display: inline-flex; align-items: center; gap: 6px; direction: ltr; justify-self: end; }
.jb.jb-ui.jb-ui .jb-board__time { grid-column: 1 / -1; font-size: 13px; color: var(--jb-brand-200); }
.jb.jb-ui.jb-ui .jb-flaps { display: inline-flex; gap: 2px; }
.jb.jb-ui.jb-ui .jb-flaps b { position: relative; display: grid; place-items: center; width: 22px; height: 28px; border-radius: 4px; background: #16305a; color: var(--jb-signal-400); font-family: var(--jb-font-latin); font-size: 14px; font-weight: 800; }
.jb.jb-ui.jb-ui .jb-flaps b::after { content: ""; position: absolute; inset-inline: 0; top: 50%; height: 1px; background: rgba(14, 33, 64, .9); }
.jb.jb-ui.jb-ui .jb-board__arrow { color: var(--jb-brand-200); display: inline-flex; }
.jb.jb-ui.jb-ui .jb-board__route-label { direction: rtl; font-family: var(--jb-font-sans); font-size: 13px; }
.jb.jb-ui.jb-ui .jb-reference-resources summary h2 { margin: 0; flex: 1; font-size: 16px; }
.jb.jb-ui.jb-ui .jb-reference-resources .jb-logos { flex-wrap: wrap; }
.jb.jb-ui.jb-ui .jb-reference-resources .jb-logos img { max-width: 120px; max-height: 48px; object-fit: contain; }
/* Native calculator: preserve all field IDs, options and handlers; replace only presentation. */
.jb.jb-ui.jb-ui .jb-reference-native { min-width: 0; }
.jb.jb-ui.jb-ui .jb-reference-native .elementor-section, .jb.jb-ui.jb-ui .jb-reference-native .elementor-widget-wrap { background: transparent; padding: 0; }
.jb.jb-ui.jb-ui .jb-reference-native .calculator { padding: 0; background: transparent; }
.jb.jb-ui.jb-ui .jb-reference-native .calculator > .row { display: grid; grid-template-columns: minmax(0,1fr); gap: var(--jb-space-5); margin: 0; }
.jb.jb-ui.jb-ui .jb-reference-native .calculator > .row > [class*="col-"] { width: 100%; max-width: none; padding: 0; min-width: 0; }
.jb.jb-ui.jb-ui .jb-reference-native .calculator_form_back, .jb.jb-ui.jb-ui .jb-reference-native .calculator_result_shadow_back, .jb.jb-ui.jb-ui .jb-reference-native .calculator_result_main_back { display: none; }
.jb.jb-ui.jb-ui .jb-reference-native .calculator-form-wrapper, .jb.jb-ui.jb-ui .jb-reference-native .calculator-result, .jb.jb-ui.jb-ui .jb-reference-native .calculator_result_main_wrapper { padding: 0; margin: 0; transform: none; }
.jb.jb-ui.jb-ui .jb-reference-native .calculator-form, .jb.jb-ui.jb-ui .jb-reference-native .calculator-result-main { padding: var(--jb-space-5); background: var(--jb-surface); color: var(--jb-ink-900); border: 1px solid var(--jb-line); border-radius: var(--jb-radius-xl); transform: none; box-shadow: none; }
.jb.jb-ui.jb-ui .jb-reference-native .calculator-result-main::before, .jb.jb-ui.jb-ui .jb-reference-native .calculator-result-main::after { display: none; }
.jb.jb-ui.jb-ui .jb-reference-native .calculator-form-row { display: grid; grid-template-columns: minmax(0,1fr); gap: var(--jb-space-4); margin: 0; }
.jb.jb-ui.jb-ui .jb-reference-native .calculator-form-row > [class*="col-"] { width: 100%; max-width: 100%; flex: none; padding: 0; min-width: 0; }
.jb.jb-ui.jb-ui .jb-reference-native .form-element { padding: 0; margin-block: 0 var(--jb-space-2); }
.jb.jb-ui.jb-ui .jb-reference-native label { display: block; font-size: 13px; font-weight: 700; margin-block-end: var(--jb-space-2); color: var(--jb-ink-900); }
.jb.jb-ui.jb-ui .jb-reference-native .form-element-input { position: relative; }
.jb.jb-ui.jb-ui .jb-reference-native input:not([type="checkbox"]), .jb.jb-ui.jb-ui .jb-reference-native select { width: 100%; min-height: 48px; border: 1px solid var(--jb-line-strong); border-radius: var(--jb-radius-md); background: var(--jb-surface); padding: 10px 12px; color: var(--jb-ink-900); font-family: var(--jb-font-sans); font-size: 14px; }
.jb.jb-ui.jb-ui .jb-reference-native .form-element-input > svg { display: none; }
.jb.jb-ui.jb-ui .jb-reference-native input[type="checkbox"] { appearance: auto; width: 20px; height: 20px; accent-color: var(--jb-brand-600); }
.jb.jb-ui.jb-ui .jb-reference-native .form-element-checkbox label { display: flex; align-items: center; gap: var(--jb-space-2); }
.jb.jb-ui.jb-ui .jb-reference-native .calculator-form-calculate-button { min-height: 48px; width: 100%; display: flex; align-items: center; justify-content: center; gap: var(--jb-space-2); border-radius: var(--jb-radius-md); background: var(--jb-brand-600); color: var(--jb-on-brand); padding: 10px 16px; font: inherit; font-weight: 700; }
.jb.jb-ui.jb-ui .jb-reference-native .calculator_result_main_result { margin-block-start: var(--jb-space-5); border-block-start: 2px dashed var(--jb-line); padding-block-start: var(--jb-space-4); }
.jb.jb-ui.jb-ui .jb-reference-native .calculator_result_main_result_value { color: var(--jb-brand-700); font-weight: 800; }
.jb.jb-ui.jb-ui .jb-reference-native .calculator_result_main_result_value[data-jb-awaiting-calculation] { color: var(--jb-ink-500); font-size: 15px; font-weight: 500; }
.jb.jb-ui.jb-ui .jb-reference-native .calculator_result_main_result::before, .jb.jb-ui.jb-ui .jb-reference-native .calculator_result_main_result::after { display: none; }
.jb.jb-ui.jb-ui .jb-reference-native .calculator-result { height: auto; display: block; }
.jb.jb-ui.jb-ui .jb-reference-native .calculator-result-main { height: auto; min-width: 0; }
.jb.jb-ui.jb-ui .jb-reference-native .calculator_result_main_wrapper > .row { margin: 0; row-gap: var(--jb-space-3); }
.jb.jb-ui.jb-ui .jb-reference-native .calculator_result_main_wrapper > .row > div { padding-inline: var(--jb-space-2); overflow-wrap: anywhere; }
.jb.jb-ui.jb-ui .jb-reference-native .form-element-input .select2-container { max-width: 100%; min-width: 0; }
.jb.jb-ui.jb-ui .jb-reference-native .select2-container .select2-selection--single { min-height: 48px; height: auto; border-color: var(--jb-line-strong); border-radius: var(--jb-radius-md); }
.jb.jb-ui.jb-ui .jb-reference-native .select2-selection__rendered { white-space: normal; overflow-wrap: anywhere; }
.jb.jb-ui.jb-ui .jb-reference-native .form-element-checkbox { margin-block: var(--jb-space-2) var(--jb-space-5); }
.jb.jb-ui.jb-ui .jb-reference-native .has_checkbox { padding: 0; font-weight: 500; line-height: 1.8; }
.jb.jb-ui.jb-ui .jb-reference-native .has_checkbox input { position: static; opacity: 1; flex: 0 0 20px; order: -1; }
.jb.jb-ui.jb-ui .jb-reference-native .has_checkbox .checkmark { display: none; }
.jb.jb-ui.jb-ui .jb-hero2__visual { height: 200px; min-width: 0; display: grid; place-items: center; }
.jb.jb-ui.jb-ui .jb-hero2__visual img { width: 100%; height: 100%; max-height: 200px; object-fit: contain; }
.jb.jb-ui.jb-ui .jb-hero2__visual img:not([src]) { display: none; }
.jb.jb-ui.jb-ui .jb-hero2--compact .jb-hero2__copy { gap: var(--jb-space-3); }
.jb.jb-ui.jb-ui .jb-hero2--compact[data-jb-hero-slides] h1 { font-size: clamp(26px,3.3vw,42px); line-height: 1.55; min-height: 3.1em; margin: 0; }
.jb.jb-ui.jb-ui .jb-hero2--compact[data-jb-hero-slides] .jb-hero2__lead { font-size: 14px; line-height: 1.9; min-height: 7.6em; margin: 0; }
.jb.jb-ui.jb-ui .jb-hero2--compact .jb-hero2__visual { block-size: clamp(210px,35vw,310px); margin-block: var(--jb-space-1); grid-template-rows: minmax(0,1fr); overflow: hidden; border-radius: var(--jb-radius-lg); }
.jb.jb-ui.jb-ui .jb-hero2--compact .jb-hero2__visual img { min-block-size: 0; block-size: 100%; max-block-size: 100%; border-radius: var(--jb-radius-lg); object-fit: contain; }
.jb.jb-ui.jb-ui .jb-hero2--compact .jb-hero2__controls { gap: var(--jb-space-1); }
.jb.jb-ui.jb-ui .jb-hero2--compact .jb-hero2__controls button { min-block-size: 44px; padding-inline: var(--jb-space-3); }
.jb.jb-ui.jb-ui .jb-transport-modes { display: flex; flex-wrap: wrap; gap: var(--jb-space-3); color: var(--jb-ink-700); font-size: 12px; }
.jb.jb-ui.jb-ui .jb-transport-modes > span { display: inline-flex; align-items: center; gap: var(--jb-space-1); }
.jb.jb-ui.jb-ui .jb-transport-modes .jb-i { color: var(--jb-brand-600); }
.jb.jb-ui.jb-ui .jb-digipay-mark { display: flex; align-items: center; gap: var(--jb-space-3); justify-content: center; color: var(--jb-ink-900); font-size: 13px; }
.jb.jb-ui.jb-ui .jb-digipay-mark img { flex: 0 0 40px; inline-size: 40px; block-size: 40px; object-fit: contain; border-radius: var(--jb-radius-sm); }
.jb.jb-ui.jb-ui .jb-digipay-mark > span { display: grid; gap: var(--jb-space-1); min-inline-size: 0; }
.jb.jb-ui.jb-ui .jb-digipay-mark small { color: var(--jb-ink-700); font-size: 11px; line-height: 1.7; }
.jb.jb-ui.jb-ui .jb-digipay-mark--footer { justify-content: start; padding: var(--jb-space-3); border: 1px solid var(--jb-line); border-radius: var(--jb-radius-md); background: var(--jb-surface); }
@media (max-width: 639px) { .jb.jb-ui.jb-ui .jb-hero2--compact .jb-hero2__grid { gap: var(--jb-space-4); } .jb.jb-ui.jb-ui .jb-hero2--compact .jb-hero2__controls button { font-size: 11px; padding-inline: var(--jb-space-2); } }
.jb.jb-ui.jb-ui .jb-hero2__controls { display: flex; flex-wrap: wrap; gap: var(--jb-space-2); align-items: center; justify-content: center; }
.jb.jb-ui.jb-ui .jb-hero2__controls [aria-pressed="true"] { background: var(--jb-brand-600); color: var(--jb-on-brand); border-color: var(--jb-brand-600); }
.jb.jb-ui.jb-ui .jb-hero2[data-jb-hero-slides] h1 { min-height: 4.5em; }
.jb.jb-ui.jb-ui .jb-hero2[data-jb-hero-slides] .jb-hero2__lead { min-height: 7.8em; }
@media(min-width:960px) { .jb.jb-ui.jb-ui .jb-hero2[data-jb-hero-slides] h1 { min-height: 2.8em; } .jb.jb-ui.jb-ui .jb-hero2[data-jb-hero-slides] .jb-hero2__lead { min-height: 5.85em; } }
@media(min-width:960px) { .jb.jb-ui.jb-ui .jb-hero2__visual { height: 350px; } .jb.jb-ui.jb-ui .jb-hero2__visual img { max-height: 350px; } }
.jb.jb-ui.jb-ui .jb-hero2--compact[data-jb-hero-slides] h1 { min-height: 4.65em; }
.jb.jb-ui.jb-ui .jb-hero2--compact[data-jb-hero-slides] .jb-hero2__lead { min-height: 7.6em; }
@media(min-width:960px) { .jb.jb-ui.jb-ui .jb-hero2--compact[data-jb-hero-slides] h1 { min-height: 3.1em; } .jb.jb-ui.jb-ui .jb-hero2--compact[data-jb-hero-slides] .jb-hero2__lead { min-height: 5.7em; } }
@media(min-width:640px) { .jb.jb-ui.jb-ui .jb-reference-native .calculator-form-row { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media(min-width:960px) { .jb.jb-ui.jb-ui .jb-reference-native .calculator > .row { grid-template-columns: minmax(0,1.5fr) minmax(0,1fr); } }
.jb.jb-ui.jb-ui .jb-board__status { display: inline-flex; align-items: center; gap: 6px; font-size: 12px; font-weight: 800; color: var(--jb-signal-400); font-style: normal; white-space: nowrap; }
.jb.jb-ui.jb-ui .jb-board__status::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: currentColor; }
.jb.jb-ui.jb-ui .jb-board__status--ask { color: var(--jb-brand-200); }
@media (min-width: 768px) {
  .jb.jb-ui.jb-ui .jb-board { padding: var(--jb-space-8); }
  .jb.jb-ui.jb-ui .jb-board__row, .jb.jb-ui.jb-ui .jb-board__row--head { display: grid; grid-template-columns: 1.3fr 1.1fr 1fr auto; gap: var(--jb-space-4); }
  .jb.jb-ui.jb-ui .jb-board__row--head { padding: 0 14px; background: none; border: 0; font-size: 12px; color: #7f8aa0 !important; font-weight: 700; }
  .jb.jb-ui.jb-ui .jb-board__route { grid-column: auto; justify-self: start; }
  .jb.jb-ui.jb-ui .jb-board__time { grid-column: auto; }
}
@media (min-width: 1200px) { .jb.jb-ui.jb-ui .jb-board { padding: var(--jb-space-12); } }

/* Baggage tag (product origin) */
.jb.jb-ui.jb-ui .jb-tag { position: relative; display: inline-flex; align-items: center; gap: 6px; min-height: 26px; padding-block: 2px; padding-inline: 20px 10px; background: var(--jb-surface); border: 1.5px solid currentColor; border-start-start-radius: 4px; border-end-start-radius: 4px; border-start-end-radius: 999px; border-end-end-radius: 999px; font-size: 12px; font-weight: 800; line-height: 1.4; white-space: nowrap; box-shadow: var(--jb-shadow-sm); }
.jb.jb-ui.jb-ui .jb-tag::before { content: ""; position: absolute; inset-inline-start: 6px; top: 50%; width: 7px; height: 7px; margin-top: -3.5px; border-radius: 50%; border: 1.5px solid currentColor; background: var(--jb-surface-subtle); }
.jb.jb-ui.jb-ui .jb-tag--iran { color: var(--jb-success-600); }
.jb.jb-ui.jb-ui .jb-tag--abroad { color: var(--jb-brand-600); }

/* Testimonials as ticket stubs */
.jb.jb-ui.jb-ui .jb-quote__route { display: flex; align-items: center; justify-content: space-between; gap: var(--jb-space-2); padding-block-end: var(--jb-space-3); border-block-end: 2px dashed var(--jb-line); }
.jb.jb-ui.jb-ui .jb-quote__ok { display: inline-flex; align-items: center; gap: 4px; font-size: 11px; font-weight: 800; color: var(--jb-success-600); }
.jb.jb-ui.jb-ui .jb-quote__ok .jb-i { width: 14px; height: 14px; }
.jb.jb-ui.jb-ui .jb-quote blockquote::before { content: "«"; } .jb.jb-ui.jb-ui .jb-quote blockquote::after { content: "»"; }

/* Magazine (latest posts on home) */
.jb.jb-ui.jb-ui .jb-mag { display: grid; gap: var(--jb-space-4); }
.jb.jb-ui.jb-ui .jb-mag__lead { position: relative; display: grid; gap: var(--jb-space-3); }
.jb.jb-ui.jb-ui .jb-mag__lead .jb-media { aspect-ratio: 16 / 9; }
.jb.jb-ui.jb-ui .jb-mag__lead h3 { font-size: 19px; line-height: 1.7; }
.jb.jb-ui.jb-ui .jb-mag__lead h3 a, .jb.jb-ui.jb-ui .jb-mag__item h3 a { color: var(--jb-ink-900) !important; text-decoration: none !important; }
.jb.jb-ui.jb-ui .jb-mag__lead h3 a::after, .jb.jb-ui.jb-ui .jb-mag__item h3 a::after { content: ""; position: absolute; inset: 0; }
.jb.jb-ui.jb-ui .jb-mag__lead p { font-size: 14px; color: var(--jb-ink-500); line-height: 1.9; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.jb.jb-ui.jb-ui .jb-mag__list { display: grid; gap: 0; }
.jb.jb-ui.jb-ui .jb-mag__item { position: relative; display: grid; grid-template-columns: 96px 1fr; gap: var(--jb-space-3); align-items: center; padding-block: var(--jb-space-3); border-block-end: 1px solid var(--jb-line); }
.jb.jb-ui.jb-ui .jb-mag__item:last-child { border-block-end: 0; }
.jb.jb-ui.jb-ui .jb-mag__item .jb-media { aspect-ratio: 1 / 1; border-radius: var(--jb-radius-md); }
.jb.jb-ui.jb-ui .jb-mag__item .jb-media .jb-i { width: 24px; height: 24px; }
.jb.jb-ui.jb-ui .jb-mag__item h3 { font-size: 14px; line-height: 1.75; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.jb.jb-ui.jb-ui .jb-mag__item:hover h3 a, .jb.jb-ui.jb-ui .jb-mag__lead:hover h3 a { color: var(--jb-brand-600) !important; }
@media (min-width: 960px) { .jb.jb-ui.jb-ui .jb-mag { grid-template-columns: 1.15fr 1fr; gap: var(--jb-space-8); align-items: start; } .jb.jb-ui.jb-ui .jb-mag__lead h3 { font-size: 22px; } }

/* CTA as boarding pass */
.jb.jb-ui.jb-ui .jb-ctapass { --jb-_notch: var(--jb-surface); }
.jb.jb-ui.jb-ui .jb-ctapass .jb-pass__main { gap: var(--jb-space-3); }
.jb.jb-ui.jb-ui .jb-ctapass h2 { font-size: 22px; }
.jb.jb-ui.jb-ui .jb-ctapass p { color: var(--jb-ink-500); font-size: 15px; line-height: 1.9; }
.jb.jb-ui.jb-ui .jb-ctapass .jb-pass__stub { background: var(--jb-brand-50); justify-items: start; }
.jb.jb-ui.jb-ui .jb-bigcode { font-family: var(--jb-font-latin); font-weight: 800; font-size: 40px; line-height: 1; letter-spacing: .04em; color: var(--jb-brand-800); direction: ltr; }
.jb.jb-ui.jb-ui .jb-stublabel { font-size: 12px; color: var(--jb-ink-500); font-weight: 600; }
@media (min-width: 960px) { .jb.jb-ui.jb-ui .jb-ctapass h2 { font-size: 28px; } .jb.jb-ui.jb-ui .jb-ctapass .jb-pass__main { padding: var(--jb-space-8); } }

/* Barcode */
.jb.jb-ui.jb-ui .jb-barcode { display: block; max-width: 100%; height: auto; background: #fff; }
.jb.jb-ui.jb-ui .jb-barcode-box { display: grid; gap: 6px; justify-items: center; padding: 10px 12px 8px; border-radius: var(--jb-radius-sm); background: #fff; border: 1px solid var(--jb-line); }
.jb.jb-ui.jb-ui .jb-barcode-box .jb-barcode { height: 56px; width: 100%; }
.jb.jb-ui.jb-ui .jb-barcode-box .jb-code { font-size: 13px; letter-spacing: .12em; color: var(--jb-ink-900); }

/* Order ticket */
.jb.jb-ui.jb-ui .jb-ticket { --jb-_notch: var(--jb-surface-subtle); }
.jb.jb-ui.jb-ui .jb-ticket .jb-pass__head img { height: 28px; width: auto; }
.jb.jb-ui.jb-ui .jb-ticket__route { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: var(--jb-space-3); }
.jb.jb-ui.jb-ui .jb-ticket__city { display: grid; gap: 2px; }
.jb.jb-ui.jb-ui .jb-ticket__city b { font-family: var(--jb-font-latin); font-weight: 900; font-size: 34px; line-height: 1; color: var(--jb-ink-900); letter-spacing: .02em; direction: ltr; text-align: start; }
.jb.jb-ui.jb-ui .jb-ticket__city span { font-size: 12px; color: var(--jb-ink-500); font-weight: 600; }
.jb.jb-ui.jb-ui .jb-ticket__city--to { text-align: end; justify-items: end; }
.jb.jb-ui.jb-ui .jb-ticket__city--to b { color: var(--jb-brand-600); }
.jb.jb-ui.jb-ui .jb-ticket__fly { position: relative; height: 24px; display: grid; place-items: center; color: var(--jb-brand-600); }
.jb.jb-ui.jb-ui .jb-ticket__fly::before { content: ""; position: absolute; inset-inline: 0; top: 50%; border-block-start: 2px dotted var(--jb-brand-200); }
.jb.jb-ui.jb-ui .jb-ticket__fly .jb-i { position: relative; background: var(--jb-surface); padding: 0 4px; width: 28px; height: 22px; }
.jb.jb-ui.jb-ui .jb-ticket__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--jb-space-3) var(--jb-space-4); margin: 0; }
.jb.jb-ui.jb-ui .jb-ticket__grid div { display: grid; gap: 0; min-width: 0; }
.jb.jb-ui.jb-ui .jb-ticket__grid dt { font-size: 11px; color: var(--jb-ink-500); font-weight: 600; }
.jb.jb-ui.jb-ui .jb-ticket__grid dd { margin: 0; font-size: 14px; font-weight: 800; color: var(--jb-ink-900); line-height: 1.7; overflow-wrap: anywhere; }
.jb.jb-ui.jb-ui .jb-ticket__class { display: inline-block; padding: 1px 8px; border-radius: 4px; background: var(--jb-surface-ink); color: var(--jb-signal-400); font-size: 12px; font-weight: 800; }
.jb.jb-ui.jb-ui .jb-ticket .jb-pass__stub { background: var(--jb-surface-subtle); }
.jb.jb-ui.jb-ui .jb-ticket__trk { display: grid; gap: 2px; }
.jb.jb-ui.jb-ui .jb-ticket__trk .jb-code { font-size: 22px; letter-spacing: .08em; color: var(--jb-ink-900); }
.jb.jb-ui.jb-ui .jb-ticket__actions { display: flex; flex-wrap: wrap; gap: var(--jb-space-2); }
@media (min-width: 640px) { .jb.jb-ui.jb-ui .jb-ticket__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } .jb.jb-ui.jb-ui .jb-ticket__city b { font-size: 44px; } }
.jb.jb-ui.jb-ui .jb-ticket-wrap { display: grid; gap: var(--jb-space-4); max-width: 920px; margin-inline: auto; }
.jb.jb-ui.jb-ui .jb-ticket-wrap__done { display: flex; align-items: center; gap: var(--jb-space-3); }
.jb.jb-ui.jb-ui .jb-ticket-wrap__done .jb-i { width: 40px; height: 40px; color: var(--jb-success-600); }

/* Hero arc: only on wide screens, kept in the top band above the copy */
.jb.jb-ui.jb-ui .jb-hero2 > .jb-arc { display: none; }
@media (min-width: 960px) { .jb.jb-ui.jb-ui .jb-hero2 > .jb-arc { display: block; } .jb.jb-ui.jb-ui .jb-hero2 > .jb-arc svg { top: -190px; opacity: .8; } }
@media (max-width: 639px) {
  .jb.jb-ui.jb-ui .jb-hero2 .jb-routechips .jb-iata:not(.jb-iata--to) small { display: none; }
  .jb.jb-ui.jb-ui .jb-board__row > [role="cell"]:last-child { grid-row: 1; grid-column: 2; }
  .jb.jb-ui.jb-ui .jb-board__route { justify-self: start; }
}
@media (max-width: 479px) { .jb.jb-ui.jb-ui .jb-segment button .jb-i { display: none; } }

/* Official trust badges pasted as-is (eNamad, Samandehi…): give each one the same tile */
.jb.jb-ui.jb-ui .jb-trust > a, .jb.jb-ui.jb-ui .jb-trust > img, .jb.jb-ui.jb-ui .jb-trust > span:not(.jb-trust__badge) { display: grid; place-items: center; width: 84px; height: 84px; padding: 6px; border-radius: var(--jb-radius-md); background: var(--jb-surface); border: 1px solid var(--jb-line); }
.jb.jb-ui.jb-ui .jb-trust img { max-width: 72px; max-height: 72px; width: auto; height: auto; cursor: pointer; }

/* Revision 2: FAQ page. Existing shell geometry and core form styles stay unchanged. */
.jb.jb-ui.jb-ui .jb-faq-native .jb-pagehead { padding-block: var(--jb-space-8) var(--jb-space-6); }
.jb.jb-ui.jb-ui .jb-faq-native__intro { max-width: 900px; margin-block-start: var(--jb-space-4); color: var(--jb-ink-500); line-height: 1.9; }
.jb.jb-ui.jb-ui .jb-faq-native__intro p + p { margin-block-start: var(--jb-space-2); }
.jb.jb-ui.jb-ui .jb-faqpage { padding-block-start: var(--jb-space-6); }
.jb.jb-ui.jb-ui .jb-faqpage__inner { display: grid; gap: var(--jb-space-6); }
.jb.jb-ui.jb-ui .jb-faqpage__search { display: grid; gap: var(--jb-space-2); max-width: 640px; }
.jb.jb-ui.jb-ui .jb-faqpage__search .jb-input { min-height: 52px; font-size: 16px; }
.jb.jb-ui.jb-ui .jb-faqpage .jb-chips { flex-wrap: wrap; }
.jb.jb-ui.jb-ui .jb-faqpage .jb-chip { min-height: 44px; white-space: normal; }
.jb.jb-ui.jb-ui .jb-faqpage .jb-chip small { margin-inline-start: 6px; font-size: 11px; font-weight: 800; color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui .jb-faqpage__groups { display: grid; gap: var(--jb-space-12); }
.jb.jb-ui.jb-ui .jb-faqgroup { display: grid; gap: var(--jb-space-4); scroll-margin-top: 140px; min-width: 0; }
.jb.jb-ui.jb-ui .jb-faqgroup h2 { display: flex; align-items: center; gap: var(--jb-space-3); font-size: 20px; }
.jb.jb-ui.jb-ui .jb-faqgroup__no { display: inline-grid; place-items: center; min-width: 40px; height: 32px; padding: 0 8px; border-radius: var(--jb-radius-md); background: var(--jb-surface-ink); color: var(--jb-signal-400); font-size: 14px; font-weight: 900; }
.jb.jb-ui.jb-ui .jb-faqpage [hidden] { display: none; }
.jb.jb-ui.jb-ui .jb-faqpage .jb-faq summary { min-height: 48px; overflow-wrap: anywhere; }
.jb.jb-ui.jb-ui .jb-faqpage .jb-faq details > div { overflow-wrap: anywhere; }
.jb.jb-ui.jb-ui .jb-faqpage__help { display: grid; gap: var(--jb-space-4); align-items: center; padding: var(--jb-space-6); border-radius: var(--jb-radius-lg); background: var(--jb-brand-50); border: 1px solid var(--jb-brand-100); }
.jb.jb-ui.jb-ui .jb-faqpage__help b { font-size: 17px; color: var(--jb-ink-900); }
@media (min-width: 960px) { .jb.jb-ui.jb-ui .jb-faqpage__help { grid-template-columns: 1fr auto; } }

/* Revision2 TrackingHistory; keep the approved shared shell and scoped tokens. */
.jb.jb-ui.jb-ui .jb-history { display: grid; gap: var(--jb-space-3); min-width: 0; }
.jb.jb-ui.jb-ui .jb-history__head { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--jb-space-3); padding-block: var(--jb-space-2); }
.jb.jb-ui.jb-ui .jb-history__head h3 { display: flex; flex-wrap: wrap; align-items: baseline; gap: var(--jb-space-2); font-size: 17px; }
.jb.jb-ui.jb-ui .jb-history__count { font-size: 12px; font-weight: 700; color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui .jb-history__group { border: 1px solid var(--jb-line); border-radius: var(--jb-radius-md); background: var(--jb-surface); min-width: 0; }
.jb.jb-ui.jb-ui .jb-history__group > summary { display: grid; grid-template-columns: 32px minmax(0, 1fr) auto 20px; align-items: center; gap: var(--jb-space-2) var(--jb-space-3); padding: var(--jb-space-3) var(--jb-space-4); cursor: pointer; list-style: none; min-height: 52px; }
.jb.jb-ui.jb-ui .jb-history__group > summary::-webkit-details-marker { display: none; }
.jb.jb-ui.jb-ui .jb-history__group > summary:focus-visible { outline: 2px solid var(--jb-brand-600); outline-offset: 3px; }
.jb.jb-ui.jb-ui .jb-history__icon { width: 32px; height: 32px; border-radius: 50%; display: grid; place-items: center; background: var(--jb-brand-50); color: var(--jb-brand-600); }
.jb.jb-ui.jb-ui .jb-history__icon .jb-i { width: 16px; height: 16px; }
.jb.jb-ui.jb-ui .jb-history__title { font-weight: 800; color: var(--jb-ink-900); font-size: 14px; overflow-wrap: anywhere; }
.jb.jb-ui.jb-ui .jb-history__meta { font-size: 12px; color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui .jb-history__group > summary .jb-chev { width: 18px; height: 18px; color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui .jb-history__group[open] > summary { border-block-end: 1px solid var(--jb-line); }
.jb.jb-ui.jb-ui .jb-history__group[open] > summary .jb-chev { transform: rotate(180deg); }
.jb.jb-ui.jb-ui .jb-history__group > .jb-log { padding: var(--jb-space-4) var(--jb-space-4) var(--jb-space-1); }
.jb.jb-ui.jb-ui .jb-history .jb-log li { grid-template-columns: 24px minmax(0, 1fr); }
.jb.jb-ui.jb-ui .jb-history .jb-log__title, .jb.jb-ui.jb-ui .jb-history .jb-log__note, .jb.jb-ui.jb-ui .jb-history .jb-log__meta { overflow-wrap: anywhere; }
.jb.jb-ui.jb-ui .jb-history .jb-log li.jb-log__day { display: block; padding: 0 0 var(--jb-space-3); }
.jb.jb-ui.jb-ui .jb-history .jb-log li.jb-log__day::before { display: none; }
.jb.jb-ui.jb-ui .jb-history .jb-log__day span { display: inline-block; padding: 2px 10px; border-radius: var(--jb-radius-pill); background: var(--jb-surface-subtle); color: var(--jb-ink-700); font-size: 12px; font-weight: 700; }
.jb.jb-ui.jb-ui .jb-history .jb-log li .jb-log__dot { background: var(--jb-surface-subtle); border-color: var(--jb-line-strong); box-shadow: none; }
.jb.jb-ui.jb-ui .jb-history .jb-log li.is-latest .jb-log__dot { background: var(--jb-brand-600); border-color: var(--jb-brand-600); box-shadow: 0 0 0 4px var(--jb-brand-100); }
.jb.jb-ui.jb-ui .jb-history .jb-log__item:not(.is-latest) .jb-log__dot { width: 14px; height: 14px; margin-block-start: 6px; margin-inline: 5px; }
.jb.jb-ui.jb-ui .jb-history [hidden] { display: none; }
.jb.jb-ui.jb-ui .jb-history [data-jb-history-toggle] { min-height: 44px; }
@media (max-width: 479px) { .jb.jb-ui.jb-ui .jb-history__group > summary { grid-template-columns: 28px minmax(0, 1fr) 18px; } .jb.jb-ui.jb-ui .jb-history__meta { grid-column: 2; grid-row: 2; } .jb.jb-ui.jb-ui .jb-history__group > summary .jb-chev { grid-column: 3; grid-row: 1; } }

/* Source-connected contact page: same tokens and shell, independent native POST. */
.jb.jb-ui.jb-ui .jb-contact-native .jb-layout-2 > *, .jb.jb-ui.jb-ui .jb-contact-native .jb-contact-grid > * { min-width: 0; }
.jb.jb-ui.jb-ui .jb-contact-native .jb-cchan { overflow-wrap: anywhere; }
.jb.jb-ui.jb-ui .jb-contact-native .jb-contact-phone { display: flex; align-items: center; min-height: 44px; width: fit-content; max-width: 100%; font-size: 17px; font-weight: 800; color: var(--jb-ink-900); }
.jb.jb-ui.jb-ui .jb-contact-native .jb-office h2 { font-size: 18px; }
.jb.jb-ui.jb-ui .jb-contact-native .jb-chip { min-height: 44px; }
.jb.jb-ui.jb-ui .jb-contact-native .jb-control--enhanced::after { display: none; }
.jb.jb-ui.jb-ui .jb-contact-native .jb-control > .select2-container { width: 100%; max-width: 100%; min-width: 0; flex: 1; }
.jb.jb-ui.jb-ui .jb-contact-native .jb-control .select2-selection--single { display: flex; align-items: center; min-height: 45px; height: auto; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.jb.jb-ui.jb-ui .jb-contact-native .jb-control .select2-selection__rendered { color: var(--jb-ink-900); font-family: var(--jb-font-sans); font-size: 15px; font-weight: 400; line-height: 1.8; white-space: normal; padding-inline: var(--jb-space-4) 40px; }
.jb.jb-ui.jb-ui .jb-contact-native .jb-control .select2-selection__arrow { inset-inline-end: 12px; inset-inline-start: auto; }
.jb.jb-ui.jb-ui .jb-contact-native .jb-contact-loading { display: flex; align-items: center; gap: var(--jb-space-3); padding: var(--jb-space-3); color: var(--jb-brand-700); background: var(--jb-brand-50); border-radius: var(--jb-radius-md); }
.jb.jb-ui.jb-ui .jb-contact-native .jb-contact-loading[hidden] { display: none; }
.jb.jb-ui.jb-ui .jb-contact-native .jb-contact-loading .jb-i { flex-shrink: 0; animation: jb-contact-flight 1.4s ease-in-out infinite alternate; }
@keyframes jb-contact-flight { from { transform: translateX(0); } to { transform: translateX(-6px); } }
@media (prefers-reduced-motion: reduce) { .jb.jb-ui.jb-ui .jb-contact-native .jb-contact-loading .jb-i { animation: none; } }

/* Order FormField bridge: token styles, original controls and native hidden states. */
.jb.jb-ui.jb-ui.jb-order-skin-anchor + main.main-page .main-page-order { font-family: var(--jb-font-sans); color: var(--jb-ink-900); }
.jb.jb-ui.jb-ui.jb-order-skin-anchor + main.main-page .order_page_section_form { max-inline-size: 1120px; margin-inline: auto; }
.jb.jb-ui.jb-ui.jb-order-skin-anchor + main.main-page .create-order-heading { margin-block: var(--jb-space-4); }
.jb.jb-ui.jb-ui.jb-order-skin-anchor + main.main-page .create-order-title { font-size: 22px; font-weight: 800; line-height: 1.7; text-align: start; }
.jb.jb-ui.jb-ui.jb-order-skin-anchor + main.main-page .create_order_item { margin-block: 0 var(--jb-space-5); padding: var(--jb-space-5); border: 1px solid var(--jb-line); border-radius: var(--jb-radius-xl); background: var(--jb-surface); }
.jb.jb-ui.jb-ui.jb-order-skin-anchor + main.main-page .jb-order-row-heading { margin-block-end: var(--jb-space-4); padding-block-end: var(--jb-space-3); border-block-end: 1px solid var(--jb-line); }
.jb.jb-ui.jb-ui.jb-order-skin-anchor + main.main-page .jb-order-row-heading h2 { margin: 0; font-family: var(--jb-font-sans); font-size: 17px; line-height: 1.7; font-weight: 800; color: var(--jb-ink-900); }
.jb.jb-ui.jb-ui.jb-order-skin-anchor + main.main-page .create-order-information { padding: var(--jb-space-5); margin-block: var(--jb-space-5); border: 1px solid var(--jb-line); border-radius: var(--jb-radius-xl); background: var(--jb-surface); }
.jb.jb-ui.jb-ui.jb-order-skin-anchor + main.main-page .create-order-information-heading { margin: 0; padding: 0; font-size: 18px; line-height: 1.8; font-weight: 800; text-align: start; }
.jb.jb-ui.jb-ui.jb-order-skin-anchor + main.main-page .create-order-information-main { margin: 0; padding: 0; }
.jb.jb-ui.jb-ui.jb-order-skin-anchor + main.main-page .create-order-information-tabs { display: flex; gap: var(--jb-space-2); padding: var(--jb-space-1); margin-block: var(--jb-space-4); background: var(--jb-surface-subtle); border: 1px solid var(--jb-line); border-radius: var(--jb-radius-md); }
.jb.jb-ui.jb-ui.jb-order-skin-anchor + main.main-page .create-order-information-tab { flex: 1; box-sizing: border-box; min-height: 44px; height: auto; margin: 0; padding: var(--jb-space-2) var(--jb-space-3); border: 0; border-radius: var(--jb-radius-sm); font-family: var(--jb-font-sans); font-size: 14px; line-height: 1.8; color: var(--jb-ink-700); }
.jb.jb-ui.jb-ui.jb-order-skin-anchor + main.main-page .create-order-information-tab-active { background: var(--jb-surface); color: var(--jb-brand-700); box-shadow: var(--jb-shadow-sm); font-weight: 800; }
.jb.jb-ui.jb-ui.jb-order-skin-anchor + main.main-page .create-order-information-sections { padding: 0; margin: 0; }
.jb.jb-ui.jb-ui.jb-order-skin-anchor + main.main-page .create-order-information-element { margin-block: 0 var(--jb-space-4); }
.jb.jb-ui.jb-ui.jb-order-skin-anchor + main.main-page .create-order-information-element > label { color: var(--jb-ink-900); font-family: var(--jb-font-sans); font-weight: 700; }
.jb.jb-ui.jb-ui.jb-order-skin-anchor + main.main-page .create-order-information-sections .form-row > :is(.col-md-6,.col-12) { margin: 0; min-width: 0; padding-block: 0; }
.jb.jb-ui.jb-ui.jb-order-skin-anchor + main.main-page .create-order-submit { margin-block: var(--jb-space-5); border: 1px solid var(--jb-line); border-radius: var(--jb-radius-xl); background: var(--jb-surface); }
.jb.jb-ui.jb-ui.jb-order-skin-anchor + main.main-page .create-order-submit-text a, .jb.jb-ui.jb-ui.jb-order-skin-anchor + main.main-page .create-order-submit-check a { text-decoration: underline; text-underline-offset: 3px; }
.jb.jb-ui.jb-ui.jb-order-skin-anchor + main.main-page .filepond--drop-label { min-height: 132px; }
.jb.jb-ui.jb-ui.jb-order-skin-anchor + main.main-page .filepond--drop-label .jb-order-upload-icon { display: block; width: 24px; height: 24px; margin: 0 auto var(--jb-space-2); color: var(--jb-brand-600); fill: none; stroke: currentColor; stroke-width: 1.8; }
.jb.jb-ui.jb-ui.jb-order-skin-anchor + main.main-page .jof-upload-hint { color: var(--jb-ink-500); line-height: 1.9; }
.jb.jb-ui.jb-ui.jb-order-skin-anchor + main.main-page :is(.create-order-information-input,.create-order-information-tab,.add_order_item_button,#create_order_button):focus-visible { outline: 2px solid var(--jb-brand-600); outline-offset: 3px; }
@media (max-width: 639px) {
  .jb.jb-ui.jb-ui.jb-order-skin-anchor + main.main-page :is(.create_order_item,.create-order-information,.create-order-submit) { padding: var(--jb-space-4); }
  .jb.jb-ui.jb-ui.jb-order-skin-anchor + main.main-page .create-order-information-element > label { font-size: 13px; }
}

/* Revision 2 information pages. No selectors reach native order/login widgets. */
/* Native panel bridge: sibling scope deliberately excludes native controls from .jb reset. */
.jb.jb-ui.jb-ui + .main-page-panel { padding-block: var(--jb-space-6); color: var(--jb-ink-900); }
.jb.jb-ui.jb-ui + .main-page-panel > .row { display: grid; grid-template-columns: minmax(0,1fr); gap: var(--jb-space-6); margin: 0; align-items: start; }
.jb.jb-ui.jb-ui + .main-page-panel > .row > :is(.col-lg-3,.col-lg-9) { width: 100%; max-width: none; padding: 0; min-width: 0; }
.jb.jb-ui.jb-ui + .main-page-panel .panel_content { min-width: 0; padding: 0; overflow-wrap: anywhere; }
.jb.jb-ui.jb-ui + .main-page-panel .panel-menu-section { border: 1px solid var(--jb-line); border-radius: var(--jb-radius-xl); background: var(--jb-surface); padding: var(--jb-space-5); box-shadow: none; }
.jb.jb-ui.jb-ui + .main-page-panel .panel-menu-avatar { margin-block-end: var(--jb-space-4); }
.jb.jb-ui.jb-ui + .main-page-panel .panel-menu-avatar-main { position: relative; width: 72px; height: 72px; padding: 0; margin-block: 0; margin-inline: auto; }
.jb.jb-ui.jb-ui + .main-page-panel .panel-menu-avatar-main img { width: 72px; height: 72px; border-radius: var(--jb-radius-pill); object-fit: cover; }
.jb.jb-ui.jb-ui + .main-page-panel .pane_change_avatar_button { position: absolute; inset: auto; inset-inline-end: -8px; inset-block-end: -8px; display: grid; place-items: center; width: 44px; height: 44px; min-height: 44px; padding: 10px; border: 2px solid var(--jb-surface); border-radius: var(--jb-radius-pill); background: var(--jb-brand-50); }
.jb.jb-ui.jb-ui + .main-page-panel .pane_change_avatar_button svg { width: 20px; height: 20px; }
.jb.jb-ui.jb-ui + .main-page-panel .panel-menu-navigation { margin: 0; padding: 0; border: 0; }
.jb.jb-ui.jb-ui + .main-page-panel .jb-panel-wallet { margin-block-end: var(--jb-space-3); border: 0; }
.jb.jb-ui.jb-ui + .main-page-panel .jb-panel-wallet > summary { display: flex; box-sizing: border-box; align-items: center; justify-content: space-between; gap: var(--jb-space-2); min-height: 44px; line-height: 1.7; padding: var(--jb-space-2) var(--jb-space-3); border-radius: var(--jb-radius-md); color: var(--jb-brand-700); background: var(--jb-brand-50); font-size: 12px; font-weight: 700; cursor: pointer; list-style: none; }
.jb.jb-ui.jb-ui + .main-page-panel .jb-panel-wallet > summary::-webkit-details-marker { display: none; }
.jb.jb-ui.jb-ui + .main-page-panel .jb-panel-wallet > summary::after { content: '+'; font-size: 20px; line-height: 1; }
.jb.jb-ui.jb-ui + .main-page-panel .jb-panel-wallet[open] > summary::after { content: '−'; }
.jb.jb-ui.jb-ui + .main-page-panel .jb-panel-wallet__amount { margin-inline-start: auto; font-size: 12px; }
.jb.jb-ui.jb-ui + .main-page-panel .jb-panel-wallet > summary:focus-visible { outline: 2px solid var(--jb-brand-600); outline-offset: 2px; }
.jb.jb-ui.jb-ui + .main-page-panel .panel-menu-avatar-name { margin-block: var(--jb-space-3) 0; padding: 0; font-size: 15px; line-height: 1.8; }
.jb.jb-ui.jb-ui + .main-page-panel .panel-menu-balance { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: var(--jb-space-2); padding: var(--jb-space-3); margin-block: var(--jb-space-4); border-radius: var(--jb-radius-md); background: var(--jb-brand-50); }
.jb.jb-ui.jb-ui + .main-page-panel .panel-menu-balance-title { font-size: 12px; }
.jb.jb-ui.jb-ui + .main-page-panel .panel-menu-balance-title svg { width: 24px; height: 24px; }
.jb.jb-ui.jb-ui + .main-page-panel .panel-menu-buttons { display: flex; flex-wrap: wrap; gap: var(--jb-space-2); padding: 0; margin-block: 0 var(--jb-space-4); }
.jb.jb-ui.jb-ui + .main-page-panel .panel-menu-buttons button:not(.device_show_panel_menu_off) { display: flex; align-items: center; justify-content: center; box-sizing: border-box; flex: 1 1 90px; width: auto; height: auto; min-height: 44px; line-height: 1.7; margin: 0; border-radius: var(--jb-radius-md); padding: var(--jb-space-2); font-size: 12px; background: var(--jb-brand-600); color: var(--jb-on-brand); box-shadow: none; }
.jb.jb-ui.jb-ui + .main-page-panel .panel-menu-navigation-items { display: grid; gap: var(--jb-space-2); border: 0; padding: 0; margin: 0; }
.jb.jb-ui.jb-ui + .main-page-panel .panel-menu-navigation-item { display: flex; align-items: center; gap: var(--jb-space-3); height: auto; min-height: 46px; box-sizing: border-box; line-height: 1.7; margin: 0; padding: var(--jb-space-3); border-radius: var(--jb-radius-md); color: var(--jb-ink-700); font-size: 13px; background: transparent; text-decoration: none; }
.jb.jb-ui.jb-ui + .main-page-panel .panel-menu-navigation-item-active { color: var(--jb-brand-700); background: var(--jb-brand-50); font-weight: 800; }
.jb.jb-ui.jb-ui + .main-page-panel .panel-menu-navigation-item:hover { background: var(--jb-brand-50); }
.jb.jb-ui.jb-ui + .main-page-panel .panel-menu-navigation-logout { color: var(--jb-danger-600); }
.jb.jb-ui.jb-ui + .main-page-panel .panel-menu-navigation-item svg { width: 20px; height: 20px; flex: 0 0 20px; }
.jb.jb-ui.jb-ui + .main-page-panel .panel_box { padding: var(--jb-space-5); margin-block: 0 var(--jb-space-5); border: 1px solid var(--jb-line); border-radius: var(--jb-radius-xl); background: var(--jb-surface); box-shadow: none; }
.jb.jb-ui.jb-ui + .main-page-panel .panel_box_title { margin: 0; padding-block: 0 var(--jb-space-4); font-size: 18px; line-height: 1.8; color: var(--jb-ink-900); }
.jb.jb-ui.jb-ui + .main-page-panel .panel_box_title::after { display: none; }
.jb.jb-ui.jb-ui + .main-page-panel .panel_box_content { padding: 0; }
.jb.jb-ui.jb-ui + .main-page-panel .dashboard_my_orders_items { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: var(--jb-space-3); }
.jb.jb-ui.jb-ui + .main-page-panel .dashboard_my_orders_item { width: 100%; max-width: none; min-width: 0; box-sizing: border-box; margin: 0; padding: var(--jb-space-4); display: flex; align-items: center; gap: var(--jb-space-3); border: 1px solid var(--jb-line); border-radius: var(--jb-radius-lg); }
.jb.jb-ui.jb-ui + .main-page-panel .dashboard_my_orders_item_details { min-width: 0; max-width: 100%; overflow-wrap: normal; word-break: normal; }
.jb.jb-ui.jb-ui + .main-page-panel .dashboard_my_orders_item_icon { flex: 0 0 auto; margin: 0; padding: 0; border: 0; }
.jb.jb-ui.jb-ui + .main-page-panel .my_orders_item_title_for_mobile { display: none; }
.jb.jb-ui.jb-ui + .main-page-panel .dashboard_my_orders_item_icon svg { width: 32px; height: 32px; }
.jb.jb-ui.jb-ui + .main-page-panel .dashboard_my_orders_item_title { font-size: 12px; line-height: 1.8; color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui + .main-page-panel .dashboard_my_orders_item_description { margin-block-start: var(--jb-space-2); font-size: 18px; font-weight: 800; }
.jb.jb-ui.jb-ui + .main-page-panel .dashboard_my_orders_item_success .dashboard_my_orders_item_description { color: var(--jb-success-600); }
.jb.jb-ui.jb-ui + .main-page-panel .dashboard_my_orders_item_cancel .dashboard_my_orders_item_description { color: var(--jb-danger-600); }
.jb.jb-ui.jb-ui + .main-page-panel .alert-box { border: 1px solid var(--jb-brand-100); border-radius: var(--jb-radius-lg); padding: var(--jb-space-4); margin-block-end: var(--jb-space-5); background: var(--jb-brand-50); }
.jb.jb-ui.jb-ui + .main-page-panel .panel_order_items { display: grid; gap: var(--jb-space-4); padding: 0; min-width: 0; }
.jb.jb-ui.jb-ui + .main-page-panel .panel_order_item { display: grid; grid-template-columns: 64px minmax(0,1fr); align-items: start; gap: var(--jb-space-4); margin: 0; padding: var(--jb-space-5); border: 1px solid var(--jb-line); border-radius: var(--jb-radius-lg); background: var(--jb-surface); box-shadow: none; min-width: 0; }
.jb.jb-ui.jb-ui + .main-page-panel .panel_order_item_image { position: static; inset: auto; margin: 0; padding: 0; width: 64px; min-width: 64px; max-width: 64px; height: auto; }
.jb.jb-ui.jb-ui + .main-page-panel .panel_order_item_image img { width: 64px; max-width: 100%; height: 64px; object-fit: contain; border-radius: var(--jb-radius-md); }
.jb.jb-ui.jb-ui + .main-page-panel .panel_order_item_details { flex: 1; width: auto; max-width: 100%; min-width: 0; padding: 0; }
.jb.jb-ui.jb-ui + .main-page-panel .panel_order_item_title { font-size: 15px; line-height: 1.9; overflow-wrap: anywhere; }
.jb.jb-ui.jb-ui + .main-page-panel .panel_order_item_main { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); width: 100%; max-width: 100%; min-width: 0; box-sizing: border-box; margin: var(--jb-space-3) 0 0; padding: var(--jb-space-3) 0 0; gap: var(--jb-space-3); border: 0; border-block-start: 1px solid var(--jb-line); border-radius: 0; }
.jb.jb-ui.jb-ui + .main-page-panel .panel_order_item_main_item { min-width: 0; align-self: start; }
.jb.jb-ui.jb-ui + .main-page-panel .panel_order_item_main_item_buttons > .panel_order_item_main_item { width: auto; flex: 1 1 100px; margin: 0; }
.jb.jb-ui.jb-ui + .main-page-panel .panel_order_item_main_item_title, .jb.jb-ui.jb-ui + .main-page-panel .panel_order_item_top_item_title { font-size: 12px; color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui + .main-page-panel .panel_order_item_main_item_value { font-size: 14px; color: var(--jb-ink-900); }
.jb.jb-ui.jb-ui + .main-page-panel .panel_order_item_main_item_buttons { display: flex; flex-direction: row; flex-wrap: wrap; grid-column: 1 / -1; gap: var(--jb-space-2); width: 100%; margin: 0; padding: var(--jb-space-3) 0 0; border: 0; }
.jb.jb-ui.jb-ui + .main-page-panel .panel_order_item_main_item_title { padding: 0; margin-block-end: var(--jb-space-2); }
.jb.jb-ui.jb-ui + .main-page-panel .panel_order_item_main_item_title::after { display: none; }
.jb.jb-ui.jb-ui + .main-page-panel :is(.panel_order_item_status,.panel_order_item_date) { gap: var(--jb-space-1); flex-wrap: wrap; margin-block: var(--jb-space-2); }
.jb.jb-ui.jb-ui + .main-page-panel :is(.panel_order_item_view,.panel_order_item_pay,.panel_order_item_cancel) { display: inline-flex; justify-content: center; align-items: center; gap: var(--jb-space-2); min-height: 44px; border-radius: var(--jb-radius-md); padding: var(--jb-space-2) var(--jb-space-4); font-size: 13px; line-height: 1.8; box-shadow: none; }
.jb.jb-ui.jb-ui + .main-page-panel .panel_order_item_pay { background: var(--jb-brand-600); color: var(--jb-on-brand); }
.jb.jb-ui.jb-ui + .main-page-panel .panel_order_item_cancel { background: var(--jb-surface); color: var(--jb-danger-600); border: 1px solid var(--jb-line); }
.jb.jb-ui.jb-ui + .main-page-panel .panel_order_item_status_value { display: inline-flex; align-items: center; min-height: 28px; padding: 2px 10px; border-radius: var(--jb-radius-pill); line-height: 1.8; font-size: 12px; max-width: 100%; }
.jb.jb-ui.jb-ui + .main-page-panel .status_pending { background: var(--jb-warning-50); color: var(--jb-warning-700); }
.jb.jb-ui.jb-ui + .main-page-panel .status_completed { background: var(--jb-success-50); color: var(--jb-success-600); }
.jb.jb-ui.jb-ui + .main-page-panel .status_cancelled { background: var(--jb-danger-50); color: var(--jb-danger-600); }
.jb.jb-ui.jb-ui + .main-page-panel .jmbj-orders { padding: var(--jb-space-5); border: 1px solid var(--jb-line); border-radius: var(--jb-radius-xl); background: var(--jb-surface); }
.jb.jb-ui.jb-ui + .main-page-panel .jmbj-orders-heading { gap: var(--jb-space-3); flex-wrap: wrap; }
.jb.jb-ui.jb-ui + .main-page-panel .jmbj-orders-heading h1 { font-size: 24px; line-height: 1.7; }
.jb.jb-ui.jb-ui + .main-page-panel .jmbj-orders-tabs { display: flex; gap: var(--jb-space-2); overflow-x: auto; padding-block: var(--jb-space-3); }
.jb.jb-ui.jb-ui + .main-page-panel .jmbj-orders-tabs a { flex: 0 0 auto; min-height: 44px; padding: 10px 16px; border-radius: var(--jb-radius-pill); border: 1px solid var(--jb-line); background: var(--jb-surface); color: var(--jb-ink-700); }
.jb.jb-ui.jb-ui + .main-page-panel .jmbj-orders-tabs a[aria-current] { background: var(--jb-brand-600); color: var(--jb-on-brand); border-color: var(--jb-brand-600); }
.jb.jb-ui.jb-ui + .main-page-panel .jmbj-order-card { border: 1px solid var(--jb-line); border-radius: var(--jb-radius-lg); padding: var(--jb-space-4); background: var(--jb-surface); min-width: 0; }
.jb.jb-ui.jb-ui + .main-page-panel .jmbj-order-card h2 { font-size: 16px; line-height: 1.9; overflow-wrap: anywhere; }
.jb.jb-ui.jb-ui + .main-page-panel .jmbj-order-card footer { display: flex; flex-wrap: wrap; gap: var(--jb-space-2); margin-block-start: var(--jb-space-4); }
.jb.jb-ui.jb-ui + .main-page-panel .jmbj-order-card footer a { min-height: 44px; display: inline-flex; align-items: center; border-radius: var(--jb-radius-md); padding: var(--jb-space-2) var(--jb-space-3); }
.jb.jb-ui.jb-ui + .main-page-panel .jmbj-order-meta { color: var(--jb-ink-500); line-height: 1.9; }
.jb.jb-ui.jb-ui + .main-page-panel .jmbj-orders-pagination { display: flex; justify-content: space-between; flex-wrap: wrap; gap: var(--jb-space-3); }
.jb.jb-ui.jb-ui + .main-page-panel .jmbj-orders-pagination a { min-height: 44px; padding: var(--jb-space-3); }
.jb.jb-ui.jb-ui + .main-page-panel .jmbj-orders-search input, .jb.jb-ui.jb-ui + .main-page-panel .panel_content input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=file]):not([type=submit]), .jb.jb-ui.jb-ui + .main-page-panel .panel_content select, .jb.jb-ui.jb-ui + .main-page-panel .panel_content textarea { border-radius: var(--jb-radius-md); border-color: var(--jb-line-strong); font-size: 16px; min-width: 0; max-width: 100%; }
.jb.jb-ui.jb-ui + .main-page-panel .list_addresses_item { border: 1px solid var(--jb-line); border-radius: var(--jb-radius-lg); padding: var(--jb-space-4); }
.jb.jb-ui.jb-ui + .main-page-panel .ticket_details_message { max-width: 92%; margin-inline-start: auto; border: 1px solid var(--jb-line); border-radius: var(--jb-radius-lg); padding: var(--jb-space-4); background: var(--jb-surface); }
.jb.jb-ui.jb-ui + .main-page-panel .ticket_details_message_customer { margin-inline: 0 auto; background: var(--jb-brand-50); border-color: var(--jb-brand-100); }
.jb.jb-ui.jb-ui + .main-page-panel .ticket_details_message_text { overflow-wrap: anywhere; line-height: 2; }
.jb.jb-ui.jb-ui + .main-page-panel .ticket_details_message_attachments { display: flex; gap: var(--jb-space-2); flex-wrap: wrap; }
.jb.jb-ui.jb-ui .jb-panel-intro { padding: 0; margin-block: 0 var(--jb-space-5); background: transparent; }
.jb.jb-ui.jb-ui .jb-panel-intro__head { display: flex; align-items: center; justify-content: space-between; gap: var(--jb-space-3); flex-wrap: wrap; margin-block-end: var(--jb-space-4); }
.jb.jb-ui.jb-ui .jb-panel-intro__head h1 { font-size: clamp(22px,2vw,28px); line-height: 1.7; }
.jb.jb-ui.jb-ui .jb-panel-intro__quick { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: var(--jb-space-3); }
.jb.jb-ui.jb-ui .jb-panel-intro__quick a { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: var(--jb-space-2); min-height: 60px; padding: var(--jb-space-3); border-radius: var(--jb-radius-md); background: var(--jb-brand-50); text-align: center; font-size: 13px; }
@media (min-width: 992px) {
  .jb.jb-ui.jb-ui + .main-page-panel .jb-panel-wallet > summary { display: none; }
  .jb.jb-ui.jb-ui + .main-page-panel > .row { grid-template-columns: 280px minmax(0,1fr); }
  .jb.jb-ui.jb-ui + .main-page-panel > .row > .col-lg-3 { position: sticky; inset-block-start: 140px; }
}
@media (max-width: 991px) {
  .jb.jb-ui.jb-ui + .main-page-panel .device_panel_current_section, .jb.jb-ui.jb-ui + .main-page-panel .device_show_panel_menu_off { display: none; }
  .jb.jb-ui.jb-ui + .main-page-panel .panel-menu-section { display: block; position: static; inset: auto; transform: none; visibility: visible; opacity: 1; height: auto; max-height: none; overflow: visible; padding: var(--jb-space-3); margin: 0; z-index: auto; }
  .jb.jb-ui.jb-ui + .main-page-panel .panel-menu-avatar { display: none; }
  .jb.jb-ui.jb-ui + .main-page-panel .panel-menu-balance { margin-block: 0 var(--jb-space-3); padding: var(--jb-space-2); }
  .jb.jb-ui.jb-ui + .main-page-panel .panel-menu-buttons { margin-block-end: var(--jb-space-3); }
  .jb.jb-ui.jb-ui + .main-page-panel .panel-menu-navigation-items { display: flex; gap: var(--jb-space-2); overflow-x: auto; padding-block: var(--jb-space-1); }
  .jb.jb-ui.jb-ui + .main-page-panel .panel-menu-navigation-item { flex: 0 0 auto; white-space: nowrap; min-height: 44px; padding: var(--jb-space-2) var(--jb-space-3); border: 1px solid var(--jb-line); border-radius: var(--jb-radius-pill); font-size: 12px; }
  .jb.jb-ui.jb-ui + .main-page-panel .panel-menu-navigation-item-active { background: var(--jb-brand-600); border-color: var(--jb-brand-600); color: var(--jb-on-brand); }
  .jb.jb-ui.jb-ui + .main-page-panel .panel-menu-navigation-item-active svg path { fill: var(--jb-on-brand); }
}
@media (max-width: 639px) {
  .jb.jb-ui.jb-ui + .main-page-panel { padding-block: var(--jb-space-4); }
  .jb.jb-ui.jb-ui + .main-page-panel > .row { gap: var(--jb-space-4); }
  .jb.jb-ui.jb-ui + .main-page-panel .panel_box, .jb.jb-ui.jb-ui + .main-page-panel .jmbj-orders { padding: var(--jb-space-4); }
  .jb.jb-ui.jb-ui + .main-page-panel .dashboard_my_orders_items { grid-template-columns: repeat(3,minmax(0,1fr)); gap: var(--jb-space-2); }
  .jb.jb-ui.jb-ui + .main-page-panel .dashboard_my_orders_item { flex-direction: column; text-align: center; padding: var(--jb-space-3) var(--jb-space-2); gap: var(--jb-space-2); }
  .jb.jb-ui.jb-ui + .main-page-panel .dashboard_my_orders_item_icon svg { width: 26px; height: 26px; }
  .jb.jb-ui.jb-ui + .main-page-panel .dashboard_my_orders_item_description { font-size: 16px; }
  .jb.jb-ui.jb-ui + .main-page-panel .panel_order_item { grid-template-columns: 48px minmax(0,1fr); gap: var(--jb-space-3); padding: var(--jb-space-3); }
  .jb.jb-ui.jb-ui + .main-page-panel .panel_order_item_image { width: 48px; min-width: 48px; max-width: 48px; }
  .jb.jb-ui.jb-ui + .main-page-panel .panel_order_item_image img { width: 48px; height: 48px; }
  .jb.jb-ui.jb-ui + .main-page-panel .panel_order_item_main { grid-template-columns: repeat(2,minmax(0,1fr)); gap: var(--jb-space-3); }
  .jb.jb-ui.jb-ui + .main-page-panel .panel_order_item_main_item_buttons { justify-content: flex-start; }
  .jb.jb-ui.jb-ui .jb-panel-intro__head { align-items: flex-start; }
  .jb.jb-ui.jb-ui .jb-panel-intro__quick { gap: var(--jb-space-2); }
  .jb.jb-ui.jb-ui .jb-panel-intro__quick a { font-size: 12px; flex-direction: column; padding: var(--jb-space-2); }
}

/* Panel subpages: retain native IDs, field values, filters and submit handlers. */
.jb.jb-ui.jb-ui + .main-page-panel :is(.new_ticket_form_element,.input_has_icon,.panel_tickets,.edit_account,.edit_password,.panel_club) { min-width: 0; }
.jb.jb-ui.jb-ui + .main-page-panel .new_ticket_form_element { margin-block-end: var(--jb-space-4); }
.jb.jb-ui.jb-ui + .main-page-panel .new_ticket_form_element > label { display: block; margin-block-end: var(--jb-space-2); font-size: 14px; font-weight: 700; line-height: 1.8; color: var(--jb-ink-900); }
.jb.jb-ui.jb-ui + .main-page-panel .new_ticket_form_element :is(input:not([type=hidden]):not([type=file]),select,textarea) { box-sizing: border-box; width: 100%; min-height: 48px; border: 1px solid var(--jb-line-strong); border-radius: var(--jb-radius-md); background: var(--jb-surface); color: var(--jb-ink-900); font-family: var(--jb-font-sans); font-size: 16px; line-height: 1.8; box-shadow: none; }
.jb.jb-ui.jb-ui + .main-page-panel .new_ticket_form_element :is(input,select,textarea):focus-visible { outline: 2px solid var(--jb-brand-600); outline-offset: 2px; }
.jb.jb-ui.jb-ui + .main-page-panel .new_ticket_form_element .input_has_icon input { padding-block: var(--jb-space-3); padding-inline: 44px var(--jb-space-3); }
.jb.jb-ui.jb-ui + .main-page-panel .new_ticket_form_element textarea:not(.list_addresses_item_values) { padding: var(--jb-space-3); }
.jb.jb-ui.jb-ui + .main-page-panel :is(#edit_phone,#edit_email,#address_phone,#address_email,#address_postcode) { direction: ltr; text-align: left; }
.jb.jb-ui.jb-ui + .main-page-panel .single-time .alert { padding: var(--jb-space-4); border: 1px solid var(--jb-brand-100); border-radius: var(--jb-radius-md); background: var(--jb-brand-50); box-shadow: none; }
.jb.jb-ui.jb-ui + .main-page-panel .single-time .alert-description { color: var(--jb-ink-700); line-height: 1.9; }
.jb.jb-ui.jb-ui + .main-page-panel :is(.edit_user_button,.new_ticket_button,.save_new_ticket,.save_address_button,.search_in_points) { display: inline-flex; align-items: center; justify-content: center; gap: var(--jb-space-2); min-height: 48px; padding: var(--jb-space-3) var(--jb-space-5); border: 1px solid var(--jb-brand-600); border-radius: var(--jb-radius-md); background: var(--jb-brand-600); color: var(--jb-on-brand); font: inherit; font-weight: 700; line-height: 1.7; box-shadow: none; }
.jb.jb-ui.jb-ui + .main-page-panel .edit_user_button_section { display: flex; justify-content: flex-start; margin-block: var(--jb-space-4); }
.jb.jb-ui.jb-ui + .main-page-panel .list_addresses_items { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: var(--jb-space-4); margin: 0; }
.jb.jb-ui.jb-ui + .main-page-panel .list_addresses_items > .col-md-6 { width: 100%; max-width: none; min-width: 0; padding: 0; }
.jb.jb-ui.jb-ui + .main-page-panel .list_addresses_item { height: 100%; box-sizing: border-box; margin: 0; }
.jb.jb-ui.jb-ui + .main-page-panel .list_addresses_item_heading { display: flex; align-items: center; justify-content: space-between; gap: var(--jb-space-2); font-size: 16px; line-height: 1.8; border-block-end: 1px solid var(--jb-line); padding-block-end: var(--jb-space-3); }
.jb.jb-ui.jb-ui + .main-page-panel :is(.list_addresses_item_edit,.pane_change_avatar_button) { min-width: 44px; min-height: 44px; border-radius: var(--jb-radius-md); }
.jb.jb-ui.jb-ui + .main-page-panel .list_addresses_item_main { padding-block-start: var(--jb-space-3); }
.jb.jb-ui.jb-ui + .main-page-panel .list_addresses_item_address { font-size: 14px; line-height: 2; margin-block-end: var(--jb-space-3); }
.jb.jb-ui.jb-ui + .main-page-panel .list_addresses_item_detail { display: flex; align-items: start; gap: var(--jb-space-2); margin-block: var(--jb-space-2); }
.jb.jb-ui.jb-ui + .main-page-panel .list_addresses_item_detail_value { min-width: 0; overflow-wrap: anywhere; font-size: 14px; line-height: 1.9; }
.jb.jb-ui.jb-ui + .main-page-panel .panel_tickets_top { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: var(--jb-space-4); margin-block-end: var(--jb-space-4); }
.jb.jb-ui.jb-ui + .main-page-panel .panel_tickets_top_sort { display: flex; align-items: center; flex-wrap: wrap; gap: var(--jb-space-2); }
.jb.jb-ui.jb-ui + .main-page-panel .panel_tickets_top_sort select { min-height: 44px; min-width: 160px; padding: var(--jb-space-2); border: 1px solid var(--jb-line); border-radius: var(--jb-radius-md); background: var(--jb-surface); color: var(--jb-ink-900); font: inherit; }
.jb.jb-ui.jb-ui + .main-page-panel .panel_ticket_items :is(.create-order-table-header,.create-order-table-item) { display: grid; grid-template-columns: 70px minmax(60px,1fr) 75px minmax(140px,2fr) minmax(110px,1fr) 100px; gap: var(--jb-space-3); align-items: center; padding: var(--jb-space-4); margin: 0; }
.jb.jb-ui.jb-ui + .main-page-panel .panel_ticket_items :is(.create-order-table-header,.create-order-table-item) > div { width: auto; min-width: 0; padding: 0; margin: 0; border: 0; text-align: start; font-size: 13px; overflow-wrap: anywhere; }
.jb.jb-ui.jb-ui + .main-page-panel .panel_ticket_items .create-order-table-header { border-radius: var(--jb-radius-md); background: var(--jb-surface-subtle); color: var(--jb-ink-700); }
.jb.jb-ui.jb-ui + .main-page-panel .panel_ticket_items .create-order-table-item { border-block-end: 1px solid var(--jb-line); }
.jb.jb-ui.jb-ui + .main-page-panel .panel_ticket_items .tickets-table-item-title a { font-size: 14px; font-weight: 700; line-height: 1.9; color: var(--jb-ink-900); }
.jb.jb-ui.jb-ui + .main-page-panel .panel_ticket_items .tickets-table-item-status { border-radius: var(--jb-radius-pill); padding: var(--jb-space-2) var(--jb-space-3); font-size: 12px; line-height: 1.8; background: var(--jb-brand-50); color: var(--jb-brand-700); }
.jb.jb-ui.jb-ui + .main-page-panel .panel_ticket_items .tickets-table-item-status-closed { background: var(--jb-surface-subtle); color: var(--jb-ink-700); }
.jb.jb-ui.jb-ui + .main-page-panel .panel_ticket_items :is(.tickets-table-item-status-answer,.tickets-table-item-status-answered) { background: var(--jb-warning-50); color: var(--jb-warning-700); }
.jb.jb-ui.jb-ui + .main-page-panel .jb-panel-ticket-label { display: none; }
.jb.jb-ui.jb-ui + .main-page-panel .jb-panel-no-order { color: var(--jb-ink-700); font-size: 12px; }
.jb.jb-ui.jb-ui + .main-page-panel .panel_club_top { border: 1px solid var(--jb-line); border-radius: var(--jb-radius-xl); padding: var(--jb-space-5); margin-block-end: var(--jb-space-5); background: var(--jb-brand-50); color: var(--jb-ink-900); }
.jb.jb-ui.jb-ui + .main-page-panel .panel_club_top_title { font-size: 22px; line-height: 1.8; color: var(--jb-ink-900); }
.jb.jb-ui.jb-ui + .main-page-panel .panel_club_top_description { font-size: 14px; line-height: 2; color: var(--jb-ink-700); }
.jb.jb-ui.jb-ui + .main-page-panel .panel_club_current_points { display: flex; align-items: center; justify-content: center; gap: var(--jb-space-3); padding: var(--jb-space-3); }
.jb.jb-ui.jb-ui + .main-page-panel .panel_club_curren_points_value { font-size: 28px; font-weight: 800; color: var(--jb-brand-700); }
.jb.jb-ui.jb-ui + .main-page-panel .list_prizes_item { border: 1px solid var(--jb-line); border-radius: var(--jb-radius-lg); background: var(--jb-surface); padding: var(--jb-space-3); margin-block-end: var(--jb-space-4); }
.jb.jb-ui.jb-ui + .main-page-panel .create-order-table-filter { display: flex; flex-wrap: wrap; gap: var(--jb-space-3); padding: var(--jb-space-3) 0; }
.jb.jb-ui.jb-ui + .main-page-panel .create-order-table-filter > :is(input,select) { flex: 1 1 150px; width: auto; min-width: 0; min-height: 44px; padding: var(--jb-space-2); border: 1px solid var(--jb-line); border-radius: var(--jb-radius-md); background: var(--jb-surface); }
.jb.jb-ui.jb-ui + .main-page-panel .fgiga_popup_main { width: min(640px,calc(100vw - 32px)); max-width: calc(100vw - 32px); border-radius: var(--jb-radius-xl); box-sizing: border-box; }
.jb.jb-ui.jb-ui + .main-page-panel .fgiga_popup:not(.fgiga_popup_show) { visibility: hidden; }
.jb.jb-ui.jb-ui + .main-page-panel .fgiga_popup.fgiga_popup_show { visibility: visible; }
.jb.jb-ui.jb-ui + .main-page-panel .fgiga_popup_main_section { max-height: calc(80vh - 100px); max-height: calc(80dvh - 100px); overflow-y: auto; overscroll-behavior: contain; padding: var(--jb-space-5); }
.jb.jb-ui.jb-ui + .main-page-panel .popup_bottom_buttons { display: flex; flex-wrap: wrap; gap: var(--jb-space-3); }
@media (max-width: 1199px) {
  .jb.jb-ui.jb-ui + .main-page-panel .panel_ticket_items .create-order-table-header { display: none; }
  .jb.jb-ui.jb-ui + .main-page-panel .panel_ticket_items .create-order-table-items { display: grid; gap: var(--jb-space-3); }
  .jb.jb-ui.jb-ui + .main-page-panel .panel_ticket_items .create-order-table-item { grid-template-columns: repeat(2,minmax(0,1fr)); border: 1px solid var(--jb-line); border-radius: var(--jb-radius-lg); }
  .jb.jb-ui.jb-ui + .main-page-panel .panel_ticket_items .tickets-table-item-title { grid-column: 1 / -1; grid-row: 1; }
  .jb.jb-ui.jb-ui + .main-page-panel .panel_ticket_items .tickets-table-item-date { grid-column: 1 / -1; display: flex; justify-content: space-between; gap: var(--jb-space-2); white-space: nowrap; border-radius: 0; }
  .jb.jb-ui.jb-ui + .main-page-panel .panel_ticket_items .tickets-table-item-status { width: fit-content; max-width: 100%; }
  .jb.jb-ui.jb-ui + .main-page-panel .panel_ticket_items :is(.tickets-table-item-id,.tickets-table-item-department,.tickets-table-item-order) { display: flex; flex-wrap: wrap; align-items: center; gap: var(--jb-space-2); }
  .jb.jb-ui.jb-ui + .main-page-panel .panel_ticket_items .jb-panel-ticket-label { display: block; color: var(--jb-ink-700); font-size: 11px; line-height: 1.8; }
  .jb.jb-ui.jb-ui + .main-page-panel .panel_ticket_items .tickets-table-item-title .only_in_mobile_title { display: none; }
  .jb.jb-ui.jb-ui + .main-page-panel .panel_ticket_items .tickets-table-item-title a { display: flex; align-items: center; min-height: 44px; overflow-wrap: anywhere; border: 0; }
  .jb.jb-ui.jb-ui + .main-page-panel .panel_ticket_items :is(.tickets-table-item-id,.tickets-table-item-order) a { display: inline-flex; align-items: center; min-height: 44px; direction: ltr; unicode-bidi: isolate; border: 0; }
  .jb.jb-ui.jb-ui + .main-page-panel .panel_ticket_items .only_in_device_title { display: block; font-size: 11px; color: var(--jb-ink-500); }
}
@media (max-width: 639px) {
  .jb.jb-ui.jb-ui + .main-page-panel .list_addresses_items { grid-template-columns: minmax(0,1fr); }
  .jb.jb-ui.jb-ui + .main-page-panel :is(.panel_tickets_top_sort,.new_ticket_button,.edit_user_button) { width: 100%; }
  .jb.jb-ui.jb-ui + .main-page-panel .panel_tickets_top_sort select { flex: 1; }
  .jb.jb-ui.jb-ui + .main-page-panel .panel_club_top { padding: var(--jb-space-4); }
  .jb.jb-ui.jb-ui + .main-page-panel .fgiga_popup_main_section { padding: var(--jb-space-4); }
}

/* Native order detail and ticket conversation: preserve content and every handler. */
.jb.jb-ui.jb-ui + .main-page-panel :is(.panel_order_details_items,.panel_order_details_items_main,.ticket_details_items) { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: var(--jb-space-3); width: 100%; padding: 0; margin: 0 0 var(--jb-space-4); border: 0; }
.jb.jb-ui.jb-ui + .main-page-panel :is(.panel_order_details_item,.panel_order_details_items_main_item) { box-sizing: border-box; width: auto; min-width: 0; max-width: 100%; margin: 0; padding: var(--jb-space-3); border: 1px solid var(--jb-line); border-radius: var(--jb-radius-md); background: var(--jb-surface); text-align: start; }
.jb.jb-ui.jb-ui + .main-page-panel :is(.panel_order_details_item_title,.panel_order_details_items_main_item_title) { padding: 0; margin: 0 0 var(--jb-space-2); border: 0; font-size: 12px; color: var(--jb-ink-500); line-height: 1.8; }
.jb.jb-ui.jb-ui + .main-page-panel :is(.panel_order_details_item_title,.panel_order_details_items_main_item_title)::after { display: none; }
.jb.jb-ui.jb-ui + .main-page-panel :is(.panel_order_details_item_value,.panel_order_details_items_main_item_value) { min-width: 0; padding: 0; margin: 0; color: var(--jb-ink-900); font-size: 14px; line-height: 1.9; overflow-wrap: anywhere; }
.jb.jb-ui.jb-ui + .main-page-panel :is(.panel_order_details_item_track,.panel_order_details_item_delivery) { background: var(--jb-brand-50); border-color: var(--jb-brand-100); }
.jb.jb-ui.jb-ui + .main-page-panel .panel_order_details_items_main_item_delivery { grid-column: 1 / -1; }
.jb.jb-ui.jb-ui + .main-page-panel :is(.repeat_order_button,.ticket_details_button) { display: flex; flex-wrap: wrap; gap: var(--jb-space-3); margin-block: var(--jb-space-4) 0; }
.jb.jb-ui.jb-ui + .main-page-panel :is(.create_new_order_from_order,.new_ticket_message_button,.save_new_ticket_message,.save_new_customer_note,.recommended_price_edit_button,.order_price_request_revision) { display: inline-flex; align-items: center; justify-content: center; gap: var(--jb-space-2); min-height: 48px; max-width: 100%; padding: var(--jb-space-3) var(--jb-space-4); border: 1px solid var(--jb-brand-600); border-radius: var(--jb-radius-md); background: var(--jb-brand-600); color: var(--jb-on-brand); font: inherit; font-weight: 700; line-height: 1.8; box-shadow: none; white-space: normal; }
.jb.jb-ui.jb-ui + .main-page-panel .close_this_ticket_button { min-height: 48px; padding: var(--jb-space-3) var(--jb-space-4); border: 1px solid var(--jb-danger-600); border-radius: var(--jb-radius-md); background: var(--jb-danger-600); color: var(--jb-surface); font: inherit; }
.jb.jb-ui.jb-ui + .main-page-panel .panel_ticket_details .ticket_details_button > button { display: inline-flex; align-items: center; justify-content: center; height: auto; width: auto; min-height: 48px; padding: var(--jb-space-3) var(--jb-space-4); margin: 0; gap: var(--jb-space-2); font-size: 14px; line-height: 1.8; }
.jb.jb-ui.jb-ui + .main-page-panel .panel_ticket_details .ticket_details_button { display: flex; flex-direction: row; flex-wrap: wrap; height: auto; min-height: 0; align-items: center; padding: 0; }
.jb.jb-ui.jb-ui + .main-page-panel .ticket_details_button > button svg { width: 24px; height: 24px; flex: 0 0 24px; }
.jb.jb-ui.jb-ui + .main-page-panel :is(.view_order_details,.view_order_history) .create-order-table-item:has(> .create-order-table-item-image) { display: grid; grid-template-columns: 56px minmax(0,1fr) 80px minmax(100px,1fr); gap: var(--jb-space-3); align-items: center; margin: 0 0 var(--jb-space-3); padding: var(--jb-space-3); border: 1px solid var(--jb-line); border-radius: var(--jb-radius-md); background: var(--jb-surface); box-shadow: none; }
.jb.jb-ui.jb-ui + .main-page-panel :is(.view_order_details,.view_order_history) .create-order-table-item:has(> .create-order-table-item-image) > div { position: static; width: auto; min-width: 0; max-width: 100%; margin: 0; padding: 0; border: 0; overflow-wrap: anywhere; font-size: 14px; line-height: 1.9; }
.jb.jb-ui.jb-ui + .main-page-panel :is(.view_order_details,.view_order_history) .create-order-table-item-image img { width: 56px; height: 56px; object-fit: contain; border-radius: var(--jb-radius-sm); }
.jb.jb-ui.jb-ui + .main-page-panel :is(.view_order_details,.view_order_history) .create-order-table-item-link { overflow-wrap: anywhere; color: var(--jb-brand-700); font-weight: 700; }
.jb.jb-ui.jb-ui + .main-page-panel .order_details_customer_note_new textarea { width: 100%; min-height: 120px; box-sizing: border-box; margin-block-end: var(--jb-space-3); padding: var(--jb-space-3); }
.jb.jb-ui.jb-ui + .main-page-panel :is(.order_images,.ticket_details_message_attachments) { display: flex; flex-wrap: wrap; gap: var(--jb-space-3); }
.jb.jb-ui.jb-ui + .main-page-panel .order_image { width: 140px; max-width: 100%; margin: 0; padding: var(--jb-space-2); border: 1px solid var(--jb-line); border-radius: var(--jb-radius-md); background: var(--jb-surface); }
.jb.jb-ui.jb-ui + .main-page-panel .order_image > img { width: 100%; height: 96px; object-fit: contain; }
.jb.jb-ui.jb-ui + .main-page-panel .order_image_button { display: flex; justify-content: center; align-items: center; gap: var(--jb-space-2); min-height: 44px; width: 100%; box-sizing: border-box; padding: var(--jb-space-2); border-radius: var(--jb-radius-sm); background: var(--jb-brand-600); color: var(--jb-on-brand); font-size: 13px; }
.jb.jb-ui.jb-ui + .main-page-panel .ticket_details_main { padding: var(--jb-space-4); border: 1px solid var(--jb-line); border-radius: var(--jb-radius-lg); background: var(--jb-surface); margin-block-end: var(--jb-space-5); }
.jb.jb-ui.jb-ui + .main-page-panel .ticket_details_items { margin: 0; }
.jb.jb-ui.jb-ui + .main-page-panel .tickets-item-status { display: inline-flex; align-items: center; width: auto; max-width: 100%; padding: var(--jb-space-1) var(--jb-space-3); border-radius: var(--jb-radius-pill); background: var(--jb-brand-50); color: var(--jb-brand-700); font-size: 12px; line-height: 1.9; }
.jb.jb-ui.jb-ui + .main-page-panel .tickets-table-item-status-closed { background: var(--jb-surface-subtle); color: var(--jb-ink-700); }
.jb.jb-ui.jb-ui + .main-page-panel .ticket_details_messages { display: flex; flex-direction: column; gap: var(--jb-space-4); }
.jb.jb-ui.jb-ui + .main-page-panel .ticket_details_message { display: flex; flex-direction: column; gap: var(--jb-space-3); width: 90%; max-width: 720px; min-width: 0; box-sizing: border-box; margin: 0 auto 0 0; padding: var(--jb-space-4); border: 1px solid var(--jb-line); border-radius: var(--jb-radius-lg); background: var(--jb-surface); box-shadow: none; }
.jb.jb-ui.jb-ui + .main-page-panel .ticket_details_message_customer { margin-inline: 0 auto; background: var(--jb-brand-50); border-color: var(--jb-brand-100); }
.jb.jb-ui.jb-ui + .main-page-panel .ticket_details_message:not(.ticket_details_message_customer) { margin-inline: auto 0; }
.jb.jb-ui.jb-ui + .main-page-panel .ticket_details_message_user { display: flex; flex-direction: row; align-items: center; flex-wrap: wrap; gap: var(--jb-space-2); width: 100%; min-width: 0; padding: 0; margin: 0; }
.jb.jb-ui.jb-ui + .main-page-panel .ticket_details_message_user_image { width: 36px; height: 36px; flex: 0 0 36px; margin: 0; }
.jb.jb-ui.jb-ui + .main-page-panel .ticket_details_message_user_image img { width: 36px; height: 36px; border-radius: var(--jb-radius-pill); object-fit: cover; }
.jb.jb-ui.jb-ui + .main-page-panel .ticket_details_message_user_name { width: auto; min-width: 0; font-size: 13px; font-weight: 700; line-height: 1.8; }
.jb.jb-ui.jb-ui + .main-page-panel :is(.ticket_details_message_user_position,.ticket_details_message_user_customer,.ticket_details_message_user_admin) { width: auto; min-width: 0; margin: 0; padding: 0; background: transparent; color: var(--jb-ink-500); font-size: 12px; line-height: 1.8; }
.jb.jb-ui.jb-ui + .main-page-panel .ticket_details_message_details { width: 100%; min-width: 0; margin: 0; padding: 0; }
.jb.jb-ui.jb-ui + .main-page-panel .ticket_details_message_text { padding: 0; margin: 0; background: transparent; color: var(--jb-ink-900); box-shadow: none; border-radius: 0; font-size: 14px; line-height: 2; text-align: start; }
.jb.jb-ui.jb-ui + .main-page-panel .ticket_details_message_text :is(img,video,iframe) { max-width: 100%; }
.jb.jb-ui.jb-ui + .main-page-panel .ticket_details_message_text table { display: block; max-width: 100%; overflow-x: auto; }
.jb.jb-ui.jb-ui + .main-page-panel .ticket_details_message_date { margin-block-start: var(--jb-space-3); padding: 0; font-size: 11px; line-height: 1.8; color: var(--jb-ink-500); text-align: end; }
@media (max-width: 639px) {
  .jb.jb-ui.jb-ui + .main-page-panel .panel_order_details_items { grid-template-columns: minmax(0,1fr); }
  .jb.jb-ui.jb-ui + .main-page-panel :is(.view_order_details,.view_order_history) .create-order-table:has(.create-order-table-item-image) > .create-order-table-header { display: none; }
  .jb.jb-ui.jb-ui + .main-page-panel :is(.view_order_details,.view_order_history) .create-order-table-item:has(> .create-order-table-item-image) { grid-template-columns: 56px minmax(0,1fr); }
  .jb.jb-ui.jb-ui + .main-page-panel :is(.view_order_details,.view_order_history) .create-order-table-item-count { font-weight: 800; color: var(--jb-brand-700); }
  .jb.jb-ui.jb-ui + .main-page-panel :is(.view_order_details,.view_order_history) :is(.only_in_mobile_title,.only_in_device_title) { display: block; font-size: 11px; color: var(--jb-ink-500); font-weight: 400; }
  .jb.jb-ui.jb-ui + .main-page-panel .ticket_details_message { width: 96%; padding: var(--jb-space-3); }
  .jb.jb-ui.jb-ui + .main-page-panel .ticket_details_button > button { flex: 1 1 140px; }
}

/* Revision2 dedicated service gate pages. */
.jb.jb-ui.jb-ui .jb-gatehero { background: linear-gradient(180deg,var(--jb-brand-50),var(--jb-surface)); padding-block: var(--jb-space-6) var(--jb-space-12); }
.jb.jb-ui.jb-ui .jb-gatehero__grid { display: grid; gap: var(--jb-space-8); align-items: start; margin-block-start: var(--jb-space-6); }
.jb.jb-ui.jb-ui .jb-gatehero__grid > * { min-width: 0; }
.jb.jb-ui.jb-ui .jb-gatehero__copy { display: grid; grid-template-columns: minmax(0,1fr); gap: var(--jb-space-4); align-content: start; }
.jb.jb-ui.jb-ui .jb-gatehero__gate { justify-self: start; display: inline-flex; flex-wrap: wrap; align-items: center; gap: 6px; padding: 4px 12px; max-width: 100%; border-radius: var(--jb-radius-pill); background: var(--jb-surface-ink); color: var(--jb-on-brand); font-size: 12px; font-weight: 800; }
.jb.jb-ui.jb-ui .jb-gatehero__gate span[dir="ltr"] { font-family: var(--jb-font-latin); letter-spacing: .12em; color: var(--jb-signal-400); }
.jb.jb-ui.jb-ui .jb-gatehero h1 { font-size: 28px; line-height: 1.55; text-wrap: balance; overflow-wrap: anywhere; }
.jb.jb-ui.jb-ui .jb-gatehero h1 em { font-style: normal; color: var(--jb-brand-600); }
.jb.jb-ui.jb-ui .jb-gatehero__lead { font-size: 16px; line-height: 1.95; color: var(--jb-ink-700); max-width: 560px; }
.jb.jb-ui.jb-ui .jb-gatehero__no { display: inline-flex; align-items: center; gap: 6px; padding: 6px 10px; border-radius: var(--jb-radius-md); background: var(--jb-brand-50); color: var(--jb-brand-600); font-family: var(--jb-font-latin); font-weight: 900; font-size: 18px; }
.jb.jb-ui.jb-ui .jb-gatehero__no .jb-i { width: 18px; height: 18px; }
.jb.jb-ui.jb-ui .jb-gatehero__pass .jb-pass__stub { background: var(--jb-surface-subtle); }
.jb.jb-ui.jb-ui .jb-gatehero__pass .jb-ticket__grid > div { min-width: 0; }
.jb.jb-ui.jb-ui .jb-gaterow__description { display: block; margin-block-start: var(--jb-space-2); font-size: 13px; line-height: 1.9; color: var(--jb-ink-500); }
@media (min-width: 960px) {
  .jb.jb-ui.jb-ui .jb-gatehero { padding-block: var(--jb-space-8) var(--jb-space-16); }
  .jb.jb-ui.jb-ui .jb-gatehero__grid { grid-template-columns: minmax(0,1fr) minmax(0,440px); gap: var(--jb-space-12); }
  .jb.jb-ui.jb-ui .jb-gatehero h1 { font-size: clamp(32px,3vw,40px); line-height: 1.45; }
}

.jb.jb-ui.jb-ui .jb-native-document { overflow-wrap: anywhere; }
.jb.jb-ui.jb-ui .jb-native-document .jb-pagehead { padding-block: var(--jb-space-6); }
.jb.jb-ui.jb-ui .jb-document-prose { max-width: 1050px; margin-inline: auto; min-width: 0; font-size: 16px; line-height: 2.2; }
.jb.jb-ui.jb-ui .jb-document-prose :is(h2,h3,h4) { scroll-margin-block-start: 150px; }
.jb.jb-ui.jb-ui .jb-document-prose a { text-decoration: underline; text-underline-offset: 3px; }
.jb.jb-ui.jb-ui .jb-document-prose table { display: block; max-width: 100%; overflow-x: auto; }
.jb.jb-ui.jb-ui .jb-document-notice { padding: var(--jb-space-5); border: 1px solid var(--jb-line); border-radius: var(--jb-radius-lg); margin-block-start: var(--jb-space-6); background: var(--jb-surface); }
.jb.jb-ui.jb-ui .jb-document-notice summary { min-height: 44px; display: flex; align-items: center; justify-content: space-between; gap: var(--jb-space-3); list-style: none; cursor: pointer; font-weight: 800; }
.jb.jb-ui.jb-ui .jb-document-notice summary::-webkit-details-marker { display: none; }
.jb.jb-ui.jb-ui .jb-document-notice[open] > .jb-prose { padding-block-start: var(--jb-space-4); }
.jb.jb-ui.jb-ui .jb-document-notice .jb-prose :is(h3,h4) { font-size: 16px; font-weight: 700; }
.jb.jb-ui.jb-ui .jb-document-actions { margin-block-start: var(--jb-space-6); }
.jb.jb-ui.jb-ui .jb-document-calculator input:not([type="checkbox"]), .jb.jb-ui.jb-ui .jb-document-calculator select { font-size: 16px; }
@media (max-width: 639px) {
  .jb.jb-ui.jb-ui .jb-native-document .jb-section { padding-block: var(--jb-space-6); }
  .jb.jb-ui.jb-ui .jb-document-notice { padding: var(--jb-space-4); }
  .jb.jb-ui.jb-ui .jb-document-actions .jb-btn { width: 100%; }
}

.jb.jb-ui.jb-ui .jb-native-landing { overflow-wrap: anywhere; }
.jb.jb-ui.jb-ui .jb-native-landing .jb-lhero { background: var(--jb-brand-50); padding-block: var(--jb-space-6) var(--jb-space-12); }
.jb.jb-ui.jb-ui .jb-native-landing .jb-lhero__grid { align-items: start; }
.jb.jb-ui.jb-ui .jb-native-landing .jb-lhero__copy { min-width: 0; padding-block: var(--jb-space-4); }
.jb.jb-ui.jb-ui .jb-native-landing .jb-lhero h1 { font-size: clamp(26px, 3.1vw, 44px); line-height: 1.65; }
.jb.jb-ui.jb-ui .jb-native-landing .jb-lhero__lead { margin-block-start: var(--jb-space-4); }
.jb.jb-ui.jb-ui .jb-native-landing .jb-landing-card { min-width: 0; padding: var(--jb-space-6); }
.jb.jb-ui.jb-ui .jb-native-landing .jb-landing-card h2 { font-size: 19px; line-height: 1.7; margin-block-end: var(--jb-space-4); }
.jb.jb-ui.jb-ui .jb-native-landing .jb-landing-card .jb-input { font-size: 16px; min-width: 0; }
.jb.jb-ui.jb-ui .jb-native-landing .jb-landing-section { scroll-margin-block-start: 150px; padding-block: var(--jb-space-12); }
.jb.jb-ui.jb-ui .jb-landing-section__grid { display: grid; gap: var(--jb-space-6); align-items: start; }
.jb.jb-ui.jb-ui .jb-landing-section__grid > *, .jb.jb-ui.jb-ui .jb-landing-section__body { min-width: 0; }
.jb.jb-ui.jb-ui .jb-landing-section__body { display: grid; gap: var(--jb-space-5); }
.jb.jb-ui.jb-ui .jb-landing-section__body > h2 { font-size: clamp(20px, 2vw, 28px); line-height: 1.8; }
.jb.jb-ui.jb-ui .jb-landing-section__body h2 a { color: inherit; text-decoration: underline; text-underline-offset: 4px; }
.jb.jb-ui.jb-ui .jb-landing-prose { min-width: 0; max-width: none; overflow-wrap: anywhere; }
.jb.jb-ui.jb-ui .jb-landing-prose a { text-decoration: underline; text-underline-offset: 3px; }
.jb.jb-ui.jb-ui .jb-landing-prose img, .jb.jb-ui.jb-ui .jb-landing-image { display: block; max-width: 100%; height: auto; object-fit: contain; border-radius: var(--jb-radius-lg); margin-inline: auto; }
.jb.jb-ui.jb-ui .jb-landing-prose table { display: block; max-width: 100%; overflow-x: auto; border-collapse: collapse; }
.jb.jb-ui.jb-ui .jb-landing-prose :is(th,td) { padding: var(--jb-space-3); border: 1px solid var(--jb-line); min-width: 100px; }
.jb.jb-ui.jb-ui .jb-landing-prose th { background: var(--jb-brand-50); color: var(--jb-ink-900); }
.jb.jb-ui.jb-ui .jb-landing-section__media { display: grid; gap: var(--jb-space-4); }
.jb.jb-ui.jb-ui .jb-landing-section__media figure { margin: 0; }
.jb.jb-ui.jb-ui .jb-landing-image { max-height: 440px; }
.jb.jb-ui.jb-ui .jb-native-landing .jb-faq { max-width: none; width: 100%; }
.jb.jb-ui.jb-ui .jb-native-landing .jb-faq__list { display: grid; gap: var(--jb-space-3); }
.jb.jb-ui.jb-ui .jb-native-landing .jb-faq summary { min-height: 48px; }
.jb.jb-ui.jb-ui .jb-landing-related { display: grid; gap: var(--jb-space-4); margin-block-end: var(--jb-space-8); }
.jb.jb-ui.jb-ui .jb-landing-related .jb-chips { flex-wrap: wrap; }
.jb.jb-ui.jb-ui .jb-landing-related .jb-chip { white-space: normal; min-height: 44px; }
.jb.jb-ui.jb-ui .jb-native-landing .jb-landing-cta { background: var(--jb-brand-50); }
.jb.jb-ui.jb-ui .jb-native-landing .jb-landing-cta .jb-actions { margin: 0; }
@media (min-width: 960px) {
  .jb.jb-ui.jb-ui .jb-landing-section__grid--media { grid-template-columns: minmax(0,1.6fr) minmax(0,1fr); gap: var(--jb-space-12); }
  .jb.jb-ui.jb-ui .jb-native-landing .jb-landing-card { max-width: 460px; width: 100%; justify-self: end; }
}
@media (max-width: 639px) {
  .jb.jb-ui.jb-ui .jb-native-landing .jb-lhero { padding-block: var(--jb-space-4) var(--jb-space-8); }
  .jb.jb-ui.jb-ui .jb-native-landing .jb-landing-card { padding: var(--jb-space-5); }
  .jb.jb-ui.jb-ui .jb-native-landing .jb-landing-section { padding-block: var(--jb-space-8); }
}

.jb.jb-ui.jb-ui .jb-info-native { overflow-wrap: anywhere; }
.jb.jb-ui.jb-ui .jb-info-native .jb-pagehead { padding-block: var(--jb-space-8) var(--jb-space-6); }
.jb.jb-ui.jb-ui .jb-info-native .jb-prose > h2 { font-size: clamp(20px, 2.1vw, 28px); line-height: 1.7; }
.jb.jb-ui.jb-ui .jb-info-native .jb-prose a:not(.jb-btn) { text-decoration: underline; text-underline-offset: 3px; }
.jb.jb-ui.jb-ui .jb-info-native .jb-prose blockquote { margin: 0; padding: 0; border: 0; }
.jb.jb-ui.jb-ui .jb-info-anchor { scroll-margin-block-start: 150px; }
.jb.jb-ui.jb-ui .jb-info-image { display: block; max-width: 100%; height: auto; object-fit: contain; margin-inline: auto; }
.jb.jb-ui.jb-ui .jb-info-media { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--jb-space-4); align-items: center; margin-block: var(--jb-space-6); }
.jb.jb-ui.jb-ui .jb-info-process, .jb.jb-ui.jb-ui .jb-info-service { display: grid; gap: var(--jb-space-8); align-items: start; }
.jb.jb-ui.jb-ui .jb-info-process > *, .jb.jb-ui.jb-ui .jb-info-service > *, .jb.jb-ui.jb-ui .jb-story > * { min-width: 0; }
.jb.jb-ui.jb-ui .jb-info-process .jb-info-image { max-height: 380px; }
.jb.jb-ui.jb-ui .jb-info-cta { display: grid; align-items: center; gap: var(--jb-space-6); padding: var(--jb-space-6); border: 1px solid var(--jb-line); border-radius: var(--jb-radius-xl); background: var(--jb-surface); }
.jb.jb-ui.jb-ui .jb-info-cta h2 { font-size: 22px; line-height: 1.8; margin-block-end: var(--jb-space-4); }
.jb.jb-ui.jb-ui .jb-info-cta .jb-info-image { max-height: 260px; }
.jb.jb-ui.jb-ui .jb-story { display: grid; gap: var(--jb-space-8); align-items: start; }
.jb.jb-ui.jb-ui .jb-story__text { font-size: 16px; line-height: 2.1; color: var(--jb-ink-700); }
.jb.jb-ui.jb-ui .jb-story__text p + p { margin-block-start: var(--jb-space-4); }
.jb.jb-ui.jb-ui .jb-story__text strong, .jb.jb-ui.jb-ui .jb-story__text b { color: var(--jb-ink-900); }
.jb.jb-ui.jb-ui .jb-story__pass .jb-pass__title { text-align: end; }
.jb.jb-ui.jb-ui .jb-story__facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--jb-space-4); margin: 0; }
.jb.jb-ui.jb-ui .jb-story__facts > div { display: grid; gap: 2px; }
.jb.jb-ui.jb-ui .jb-story__facts dt { font-size: 12px; color: var(--jb-ink-500); font-weight: 600; }
.jb.jb-ui.jb-ui .jb-story__facts dd { margin: 0; font-size: 22px; font-weight: 900; color: var(--jb-ink-900); line-height: 1.3; font-feature-settings: "tnum" 1; }
.jb.jb-ui.jb-ui .jb-timeline { position: relative; display: grid; gap: var(--jb-space-6); list-style: none; padding: 0; margin: 0; }
.jb.jb-ui.jb-ui .jb-timeline::before { content: ""; position: absolute; inset-block: 14px; inset-inline-start: 41px; border-inline-start: 2px dashed var(--jb-brand-200); }
.jb.jb-ui.jb-ui .jb-timeline > li { position: relative; display: grid; grid-template-columns: 84px minmax(0, 1fr); gap: var(--jb-space-4); align-items: start; }
.jb.jb-ui.jb-ui .jb-timeline__year { position: relative; z-index: 1; justify-self: center; padding: 4px 10px; border-radius: var(--jb-radius-pill); background: var(--jb-surface-ink); color: var(--jb-signal-400); font-size: 13px; font-weight: 900; font-feature-settings: "tnum" 1; white-space: nowrap; }
.jb.jb-ui.jb-ui .jb-timeline h3 { font-size: 17px; line-height: 1.6; }
.jb.jb-ui.jb-ui .jb-timeline p { font-size: 14px; line-height: 1.9; color: var(--jb-ink-500); margin-block-start: 4px; }
.jb.jb-ui.jb-ui .jb-factband { display: grid; gap: var(--jb-space-6); padding: var(--jb-space-8) var(--jb-space-6); border-radius: var(--jb-radius-xl); background: var(--jb-surface-ink); color: var(--jb-on-brand); }
.jb.jb-ui.jb-ui .jb-factband h2 { color: var(--jb-on-brand); font-size: 20px; }
.jb.jb-ui.jb-ui .jb-factband dl { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--jb-space-6) var(--jb-space-4); margin: 0; }
.jb.jb-ui.jb-ui .jb-factband dl > div { display: grid; gap: 4px; padding-inline-start: var(--jb-space-4); border-inline-start: 2px solid var(--jb-ink-500); }
.jb.jb-ui.jb-ui .jb-factband dt { font-size: 12px; font-weight: 600; color: var(--jb-brand-200); }
.jb.jb-ui.jb-ui .jb-factband dd { margin: 0; font-size: 26px; font-weight: 900; color: var(--jb-signal-400); line-height: 1.2; font-feature-settings: "tnum" 1; }
.jb.jb-ui.jb-ui .jb-gates { display: grid; gap: var(--jb-space-3); }
.jb.jb-ui.jb-ui .jb-gaterow { display: grid; grid-template-columns: 56px minmax(0, 1fr); align-items: center; gap: var(--jb-space-4); padding: var(--jb-space-4); border-radius: var(--jb-radius-lg); background: var(--jb-surface); border: 1px solid var(--jb-line); color: var(--jb-ink-700); text-decoration: none; transition: border-color .15s, box-shadow .15s; }
.jb.jb-ui.jb-ui .jb-gaterow:hover { border-color: var(--jb-brand-600); box-shadow: var(--jb-shadow-md); }
.jb.jb-ui.jb-ui .jb-gaterow:focus-visible { outline: 2px solid var(--jb-brand-600); outline-offset: 3px; }
.jb.jb-ui.jb-ui .jb-gaterow__no { display: grid; justify-items: center; align-content: center; width: 56px; height: 56px; border-radius: var(--jb-radius-md); background: var(--jb-surface-ink); color: var(--jb-signal-400); font-weight: 900; font-size: 22px; line-height: 1.1; }
.jb.jb-ui.jb-ui .jb-gaterow__no small { font-size: 11px; font-weight: 700; color: var(--jb-brand-200); }
.jb.jb-ui.jb-ui .jb-gaterow__main { min-width: 0; }
.jb.jb-ui.jb-ui .jb-gaterow__main strong { font-size: 16px; line-height: 1.9; color: var(--jb-ink-900); }
.jb.jb-ui.jb-ui .jb-gaterow__icon, .jb.jb-ui.jb-ui .jb-gaterow__go { display: none; }
@media (min-width: 960px) {
  .jb.jb-ui.jb-ui .jb-story { grid-template-columns: minmax(0, 1fr) 400px; gap: var(--jb-space-12); }
  .jb.jb-ui.jb-ui .jb-story__pass { position: sticky; inset-block-start: 140px; }
  .jb.jb-ui.jb-ui .jb-info-process, .jb.jb-ui.jb-ui .jb-info-service { grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); gap: var(--jb-space-12); }
  .jb.jb-ui.jb-ui .jb-info-service__media { position: sticky; inset-block-start: 150px; }
  .jb.jb-ui.jb-ui .jb-info-cta { grid-template-columns: minmax(0, 1fr) 320px; padding: var(--jb-space-8); }
  .jb.jb-ui.jb-ui .jb-factband { padding: var(--jb-space-12); }
  .jb.jb-ui.jb-ui .jb-factband dl { grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); }
  .jb.jb-ui.jb-ui .jb-factband dd { font-size: 32px; }
  .jb.jb-ui.jb-ui .jb-gaterow { grid-template-columns: 64px 44px minmax(0, 1fr) 40px; padding: var(--jb-space-4) var(--jb-space-5); }
  .jb.jb-ui.jb-ui .jb-gaterow__no { width: 64px; height: 64px; }
  .jb.jb-ui.jb-ui .jb-gaterow__icon, .jb.jb-ui.jb-ui .jb-gaterow__go { display: grid; place-items: center; width: 40px; height: 40px; border-radius: var(--jb-radius-md); background: var(--jb-brand-50); color: var(--jb-brand-600); }
}

/* Native authentication presentation; no replacement forms or request handlers. */
.jb.jb-ui.jb-ui .jb-auth-card, .jb.jb-ui.jb-ui .jb-auth-card * { transition: none; }
.jb.jb-ui.jb-ui .jb-auth-page-wrap { inline-size: 100%; padding-block: 24px; }
.jb.jb-ui.jb-ui .jb-auth-card.jb-auth-page { inline-size: min(440px, 100%); max-inline-size: 440px; margin: 0 auto; padding: 24px; border: 1px solid var(--jb-line); border-radius: 22px; background: var(--jb-surface); color: var(--jb-ink-900); box-shadow: var(--jb-shadow-lg); text-align: start; direction: rtl; }
.jb.jb-ui.jb-ui .jb-auth-card.jb-auth-page .fgiga_login_popup_section_show { display: flex; flex-direction: column; gap: 12px; }
.jb.jb-ui.jb-ui .jb-auth-card.jb-auth-page .new_ticket_form_element { margin: 0; }
.jb.jb-ui.jb-ui .jb-auth-page-brand { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding-block-end: 20px; margin-block-end: 20px; border-block-end: 1px solid var(--jb-line); }
.jb.jb-ui.jb-ui .jb-auth-page-brand img { display: block; inline-size: 128px; block-size: 32px; object-fit: contain; }
.jb.jb-ui.jb-ui .jb-auth-page-brand span { color: var(--jb-ink-700); font-size: 12px; line-height: 1.8; }
.jb.jb-ui.jb-ui .jb-auth-card .jb-auth-submit { display: flex; align-items: center; justify-content: center; gap: 8px; inline-size: 100%; min-block-size: 50px; margin: 4px 0 0; padding: 12px 16px; border: 1px solid var(--jb-brand-600); border-radius: 12px; background: var(--jb-brand-600); color: var(--jb-on-brand); font-size: 15px; font-weight: 700; cursor: pointer; }
.jb.jb-ui.jb-ui .jb-auth-card .jb-auth-submit svg { inline-size: 20px; block-size: 20px; }
.jb.jb-ui.jb-ui .fgiga_popup_overlay { backdrop-filter: none; -webkit-backdrop-filter: none; background: rgba(12, 31, 57, .62); }
.jb.jb-ui.jb-ui .jb-auth-card.fgiga_popup_main {
  position: fixed; inset-inline-start: 50%; inset-inline-end: auto;
  top: var(--jb-auth-center-y, 50%); bottom: auto; transform: translate(50%, -50%);
  inline-size: min(440px, calc(100% - 32px)); max-inline-size: min(440px, calc(100% - 32px));
  block-size: auto; max-block-size: calc(var(--jb-auth-viewport-height, 100dvh) - 32px);
  margin: 0; padding: 24px; border: 1px solid var(--jb-line); border-radius: 22px;
  background: var(--jb-surface); color: var(--jb-ink-900); box-shadow: var(--jb-shadow-lg);
  overflow: auto; overscroll-behavior: contain; scrollbar-width: thin; scroll-padding-block: 20px;
  text-align: start; direction: rtl;
}
.jb.jb-ui.jb-ui .jb-auth-card .fgiga_popup_header { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin: 0 0 20px; padding: 0 0 16px; border-block-end: 1px solid var(--jb-line); block-size: auto; }
.jb.jb-ui.jb-ui .jb-auth-card .fgiga_popup_header_logo { margin: 0; padding: 0; inline-size: auto; }
.jb.jb-ui.jb-ui .jb-auth-card .fgiga_popup_header_logo img { inline-size: 128px; block-size: auto; margin: 0; }
.jb.jb-ui.jb-ui .jb-auth-card .jb-auth-close { display: grid; place-items: center; inline-size: 44px; block-size: 44px; min-block-size: 44px; padding: 0; border: 1px solid var(--jb-line); border-radius: 12px; background: var(--jb-surface-subtle); color: var(--jb-ink-700); cursor: pointer; flex-shrink: 0; }
.jb.jb-ui.jb-ui .jb-auth-card .jb-auth-close:hover { background: var(--jb-brand-50); color: var(--jb-brand-700); }
.jb.jb-ui.jb-ui .jb-auth-card .fgiga_popup_main_section, .jb.jb-ui.jb-ui .jb-auth-card .fgiga_login_popup { margin: 0; padding: 0; block-size: auto; max-block-size: none; overflow: visible; }
.jb.jb-ui.jb-ui .jb-auth-card .fgiga_login_popup_section.fgiga_login_popup_section_show { gap: 12px; margin: 0; padding: 0; block-size: auto; max-block-size: none; overflow: visible; }
.jb.jb-ui.jb-ui .jb-auth-card .login_popup_title { color: var(--jb-ink-900); font-size: 24px; font-weight: 800; line-height: 1.5; margin: 0; padding: 0; }
.jb.jb-ui.jb-ui .jb-auth-card .login_popup_description { color: var(--jb-ink-700); font-size: 13px; line-height: 1.9; margin: 0 0 4px; padding: 0; }
.jb.jb-ui.jb-ui .jb-auth-card .new_ticket_form_element { display: grid; gap: 6px; margin: 0; padding: 0; block-size: auto; min-block-size: 0; inline-size: 100%; }
.jb.jb-ui.jb-ui .jb-auth-card #fgiga_popup_signup .new_ticket_form_element { margin: 0; }
.jb.jb-ui.jb-ui .jb-auth-card .jb-auth-names { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.jb.jb-ui.jb-ui .jb-auth-card .jb-auth-names .input_has_icon > svg { display: none; }
.jb.jb-ui.jb-ui .jb-auth-card .jb-auth-names .input_has_icon input { padding-inline: 12px; }
.jb.jb-ui.jb-ui .jb-auth-card .new_ticket_form_element label { display: block; color: var(--jb-ink-900); font-size: 13px; font-weight: 700; line-height: 1.8; margin: 0; padding: 0; }
.jb.jb-ui.jb-ui .jb-auth-card .input_has_icon { position: relative; display: block; inline-size: 100%; block-size: auto; min-block-size: 0; padding: 0; margin: 0; border: 0; }
.jb.jb-ui.jb-ui .jb-auth-card .input_has_icon > svg { position: absolute; inset-inline-start: 14px; inset-inline-end: auto; top: 50%; transform: translateY(-50%); inline-size: 20px; block-size: 20px; padding: 0; border: 0; pointer-events: none; }
.jb.jb-ui.jb-ui .jb-auth-card .input_has_icon input { display: block; inline-size: 100%; block-size: 52px; min-block-size: 52px; padding-block: 10px; padding-inline: 44px 14px; margin: 0; border: 1px solid var(--jb-line-strong); border-radius: 12px; background: var(--jb-surface); color: var(--jb-ink-900); font-size: 16px; font-weight: 500; line-height: 1.5; text-align: start; direction: rtl; }
.jb.jb-ui.jb-ui .jb-auth-card .input_has_icon input[autocomplete=tel-national], .jb.jb-ui.jb-ui .jb-auth-card .input_has_icon input[autocomplete=one-time-code] { direction: ltr; text-align: end; padding-inline: 14px 44px; }
.jb.jb-ui.jb-ui .jb-auth-card .input_has_icon input::placeholder { color: var(--jb-ink-500); font-size: 14px; opacity: 1; }
.jb.jb-ui.jb-ui .jb-auth-card .input_has_icon input:focus-visible { outline: 2px solid var(--jb-brand-600); outline-offset: 2px; border-color: var(--jb-brand-600); border-radius: 12px; }
.jb.jb-ui.jb-ui .jb-auth-card .login_send_code_button, .jb.jb-ui.jb-ui .jb-auth-card .login_accept_code_button { display: flex; align-items: center; justify-content: center; gap: 8px; inline-size: 100%; min-block-size: 48px; block-size: auto; margin: 4px 0 0; padding: 12px 16px; border: 1px solid var(--jb-brand-600); border-radius: 12px; background: var(--jb-brand-600); color: var(--jb-on-brand); font-size: 15px; font-weight: 700; line-height: 1.6; cursor: pointer; }
.jb.jb-ui.jb-ui .jb-auth-card .login_send_code_button:hover, .jb.jb-ui.jb-ui .jb-auth-card .login_accept_code_button:hover { background: var(--jb-brand-700); }
.jb.jb-ui.jb-ui .jb-auth-card .login_send_code_button svg, .jb.jb-ui.jb-ui .jb-auth-card .login_accept_code_button svg { inline-size: 20px; block-size: 20px; }
.jb.jb-ui.jb-ui .jb-auth-card button:disabled { cursor: wait; opacity: .65; }
.jb.jb-ui.jb-ui .jb-auth-card .login_popup_text { color: var(--jb-ink-700); font-size: 12px; line-height: 1.9; margin: 0; padding: 0; text-align: center; }
.jb.jb-ui.jb-ui .jb-auth-card .login_popup_text a { color: var(--jb-brand-700); text-decoration: underline; text-underline-offset: 3px; }
.jb.jb-ui.jb-ui .jb-auth-card .login_popup_change { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 4px; padding: 8px 0 0; margin: 0; border-block-start: 1px solid var(--jb-line); }
.jb.jb-ui.jb-ui .jb-auth-card .login_popup_change_title { color: var(--jb-ink-700); font-size: 13px; margin: 0; padding: 0; }
.jb.jb-ui.jb-ui .jb-auth-card .login_popup_change_button, .jb.jb-ui.jb-ui .jb-auth-card #resend_button { inline-size: auto; min-block-size: 44px; padding: 8px; border: 0; border-radius: 8px; background: transparent; color: var(--jb-brand-700); font-size: 13px; font-weight: 700; cursor: pointer; }
.jb.jb-ui.jb-ui .jb-auth-card .fgiga_login_resend { gap: 8px; margin: 0; padding: 0; color: var(--jb-ink-700); font-size: 14px; }
.jb.jb-ui.jb-ui .jb-auth-card .jmbj-auth-message { padding: 10px 12px; border: 1px solid var(--jb-danger-600); border-radius: 10px; background: var(--jb-danger-50); color: var(--jb-danger-600); font-size: 13px; line-height: 1.9; }
.jb.jb-ui.jb-ui .jb-auth-card .jmbj-auth-message[data-success=true] { color: var(--jb-success-600); border-color: var(--jb-success-600); background: var(--jb-success-50); }
.jb.jb-ui.jb-ui .jb-auth-progress-card { max-inline-size: 380px; padding: 24px; border-radius: 22px; background: var(--jb-surface); color: var(--jb-ink-900); }
.jb.jb-ui.jb-ui .jb-auth-progress-card h2 { font-size: 20px; line-height: 1.7; margin: 16px 0 8px; }
.jb.jb-ui.jb-ui .jb-auth-progress-card p { color: var(--jb-ink-700); font-size: 14px; line-height: 1.9; }
.jb.jb-ui.jb-ui .jb-auth-transport .jmbj-auth-plane { animation: jb-auth-phase 9s linear infinite; }
.jb.jb-ui.jb-ui .jb-auth-transport .jmbj-auth-plane svg { animation: jb-auth-float 2s ease-in-out infinite; }
.jb.jb-ui.jb-ui .jb-auth-transport .jmbj-auth-plane .jb-i { inline-size: 96px; block-size: 68px; color: var(--jb-brand-600); stroke-width: 1.4; }
.jb.jb-ui.jb-ui .jb-auth-transport .jmbj-auth-cloud { display: none; }
.jb.jb-ui.jb-ui .jb-auth-vehicle { position: absolute; inset: 20px 40px; display: grid; place-items: center; opacity: 0; color: var(--jb-brand-600); animation: jb-auth-phase 9s linear infinite; }
.jb.jb-ui.jb-ui .jb-auth-vehicle .jb-i { inline-size: 64px; block-size: 64px; stroke-width: 1.4; animation: jb-auth-float 2s ease-in-out infinite; }
.jb.jb-ui.jb-ui .jb-auth-vehicle--ship { animation-delay: 3s; }
.jb.jb-ui.jb-ui .jb-auth-vehicle--train { animation-delay: 6s; }
@keyframes jb-auth-phase { 0%, 28% { opacity: 1; } 32%, 100% { opacity: 0; } }
@keyframes jb-auth-float { 0%,100% { transform: translateY(2px); } 50% { transform: translateY(-4px); } }
@media (max-width: 480px) { .jb.jb-ui.jb-ui .jb-auth-card.fgiga_popup_main { padding: 20px; border-radius: 20px; } }
@media (prefers-reduced-motion: reduce) { .jb.jb-ui.jb-ui .jb-auth-transport .jb-auth-vehicle { display: none; } .jb.jb-ui.jb-ui .jb-auth-transport .jmbj-auth-plane { opacity: 1; } }

/* Revision2 PanelDashboard, real native owner-scoped data. */
.jb.jb-ui.jb-ui .jb-customer-dashboard { display: grid; gap: var(--jb-space-4); min-inline-size: 0; font-family: var(--jb-font-sans); }
.jb.jb-ui.jb-ui + .main-page-panel .panel_content > .jb { background: transparent; }
.jb.jb-ui.jb-ui .jb-kpis { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: var(--jb-space-3); }
.jb.jb-ui.jb-ui .jb-kpi { display: grid; gap: 2px; padding: var(--jb-space-4); border-radius: var(--jb-radius-lg); background: var(--jb-surface); border: 1px solid var(--jb-line); color: var(--jb-ink-700); text-decoration: none; }
.jb.jb-ui.jb-ui .jb-kpi span { font-size: 12px; color: var(--jb-ink-500); font-weight: 600; }
.jb.jb-ui.jb-ui .jb-kpi b { font-family: var(--jb-font-sans); font-size: 22px; font-weight: 900; color: var(--jb-ink-900); font-feature-settings: "tnum" 1; }
.jb.jb-ui.jb-ui .jb-kpi--action { background: var(--jb-warning-50); border-color: var(--jb-warning-700); }
.jb.jb-ui.jb-ui .jb-kpi--action b,.jb.jb-ui.jb-ui .jb-kpi--action span { color: var(--jb-warning-700); }
.jb.jb-ui.jb-ui .jb-dashboard-alert { display: flex; align-items: center; gap: var(--jb-space-3); padding: var(--jb-space-4); background: var(--jb-warning-50); color: var(--jb-warning-700); border-radius: var(--jb-radius-lg); }
.jb.jb-ui.jb-ui .jb-dashboard-alert > .jb-i { flex: none; align-self: start; }
.jb.jb-ui.jb-ui .jb-dashboard-alert > div { flex: 1; min-inline-size: 0; font-size: 14px; }
.jb.jb-ui.jb-ui .jb-dashboard-alert p { font-size: 13px; margin-block: 4px 0; }
.jb.jb-ui.jb-ui .jb-dashboard-alert .jb-btn { flex: none; }
.jb.jb-ui.jb-ui .jb-dashboard-card { display: grid; gap: var(--jb-space-3); padding: var(--jb-space-4); border: 1px solid var(--jb-line); border-radius: var(--jb-radius-lg); background: var(--jb-surface); min-inline-size: 0; }
.jb.jb-ui.jb-ui .jb-dashboard-card > header { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; justify-content: space-between; }
.jb.jb-ui.jb-ui .jb-dashboard-card h2 { font-size: 17px; margin: 0; line-height: 1.7; }
.jb.jb-ui.jb-ui .jb-dashboard-card > header a { display: inline-flex; align-items: center; min-block-size: 44px; font-size: 13px; }
.jb.jb-ui.jb-ui .jb-olist { display: grid; gap: var(--jb-space-2); }
.jb.jb-ui.jb-ui .jb-orow { display: grid; grid-template-columns: minmax(0,1fr) auto; grid-template-areas: "main st" "meta meta" "progress progress" "act act"; gap: var(--jb-space-2) var(--jb-space-3); padding: var(--jb-space-4); border-radius: var(--jb-radius-lg); background: var(--jb-surface); border: 1px solid var(--jb-line); min-inline-size: 0; }
.jb.jb-ui.jb-ui .jb-orow__main { grid-area: main; display: grid; gap: 2px; min-inline-size: 0; }
.jb.jb-ui.jb-ui .jb-orow__main b { font-size: 14px; color: var(--jb-ink-900); overflow-wrap: anywhere; }
.jb.jb-ui.jb-ui .jb-orow__code { font-family: var(--jb-font-latin); font-size: 12px; color: var(--jb-ink-500); direction: ltr; text-align: end; }
.jb.jb-ui.jb-ui .jb-dashboard-status { grid-area: st; display: inline-flex; align-items: center; gap: 4px; align-self: start; border-radius: var(--jb-radius-pill); background: var(--jb-brand-50); color: var(--jb-brand-800); padding: 4px 8px; font-size: 12px; max-inline-size: 170px; }
.jb.jb-ui.jb-ui .jb-dashboard-status .jb-i { flex: none; }
.jb.jb-ui.jb-ui .jb-dashboard-status--action { color: var(--jb-warning-700); background: var(--jb-warning-50); }
.jb.jb-ui.jb-ui .jb-dashboard-status--closed { color: var(--jb-ink-700); background: var(--jb-surface-subtle); }
.jb.jb-ui.jb-ui .jb-dashboard-status--success { color: var(--jb-success-600); background: var(--jb-success-50); }
.jb.jb-ui.jb-ui .jb-dashboard-status--review { color: var(--jb-ink-700); background: var(--jb-surface-subtle); }
.jb.jb-ui.jb-ui .jb-orow__progress { grid-area: progress; min-inline-size: 0; padding-block: var(--jb-space-2); }
.jb.jb-ui.jb-ui .jb-orow__progress p { margin: var(--jb-space-2) 0 0; color: var(--jb-ink-500); font-size: 12px; }
.jb.jb-ui.jb-ui .jb-mini-route { display: grid; grid-template-columns: repeat(8,minmax(0,1fr)); gap: 0; padding: 0; margin: 0; list-style: none; }
.jb.jb-ui.jb-ui .jb-mini-route__step { position: relative; display: grid; justify-items: center; min-inline-size: 0; }
.jb.jb-ui.jb-ui .jb-mini-route__step:not(:last-child)::after { content: ''; position: absolute; top: 15px; inset-inline-start: 50%; inline-size: 100%; border-block-start: 2px solid var(--jb-line); }
.jb.jb-ui.jb-ui .jb-mini-route__dot { display: grid; place-items: center; position: relative; z-index: 1; inline-size: 30px; block-size: 30px; border: 1px solid var(--jb-line-strong); border-radius: var(--jb-radius-pill); background: var(--jb-surface); color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui .jb-mini-route__step--current .jb-mini-route__dot { color: var(--jb-surface); background: var(--jb-brand-600); border-color: var(--jb-brand-600); box-shadow: 0 0 0 3px var(--jb-brand-100); }
.jb.jb-ui.jb-ui .jb-mini-route__step--recorded .jb-mini-route__dot { color: var(--jb-success-600); background: var(--jb-success-50); border-color: var(--jb-success-600); }
.jb.jb-ui.jb-ui .jb-orow--action { border-color: var(--jb-warning-700); }
.jb.jb-ui.jb-ui .jb-orow__meta { grid-area: meta; display: flex; flex-wrap: wrap; gap: 4px 16px; font-size: 12px; color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui .jb-orow__meta b { color: var(--jb-ink-900); font-feature-settings: "tnum" 1; }
.jb.jb-ui.jb-ui .jb-orow__act { grid-area: act; display: flex; flex-wrap: wrap; gap: var(--jb-space-2); }
.jb.jb-ui.jb-ui .jb-orow__act .jb-btn { min-block-size: 44px; white-space: normal; }
.jb.jb-ui.jb-ui .jb-dashboard-empty { padding: var(--jb-space-4); color: var(--jb-ink-500); text-align: center; }
.jb.jb-ui.jb-ui .jb-dashboard-ticket { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 8px; padding: var(--jb-space-3); border: 1px solid var(--jb-line); border-radius: var(--jb-radius-md); color: var(--jb-ink-700); }
.jb.jb-ui.jb-ui .jb-dashboard-ticket strong { overflow-wrap: anywhere; }
.jb.jb-ui.jb-ui .jb-dashboard-ticket span { font-size: 12px; }
.jb.jb-ui.jb-ui .jb-dashboard-ticket small { grid-column: 1/-1; color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui .jb-qa { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: var(--jb-space-2); }
.jb.jb-ui.jb-ui .jb-qa a { display: grid; justify-items: center; gap: 6px; padding: var(--jb-space-3) var(--jb-space-2); border-radius: var(--jb-radius-md); background: var(--jb-brand-50); color: var(--jb-brand-700); font-size: 12px; font-weight: 800; text-align: center; text-decoration: none; }
.jb.jb-ui.jb-ui .jb-qa a .jb-i { inline-size: 22px; block-size: 22px; }
@media (min-width: 640px) { .jb.jb-ui.jb-ui .jb-kpis { grid-template-columns: repeat(4,minmax(0,1fr)); } }
@media (min-width: 1280px) { .jb.jb-ui.jb-ui .jb-orow { grid-template-columns: minmax(0,1.4fr) minmax(0,1fr) auto; grid-template-areas: "main meta st" "progress act act"; align-items: center; } .jb.jb-ui.jb-ui .jb-orow__act { justify-self: end; } }
@media (max-width: 380px) { .jb.jb-ui.jb-ui .jb-orow { grid-template-columns: minmax(0,1fr); grid-template-areas: "main" "st" "meta" "progress" "act"; } .jb.jb-ui.jb-ui .jb-dashboard-status { justify-self: start; } .jb.jb-ui.jb-ui .jb-dashboard-alert { flex-wrap: wrap; } }

/* Mobile navigation v2: bounded drawer, neutral order chooser, native vertical gestures. */
.jb.jb-ui.jb-ui .jb-drawer--safe .jb-drawer__panel { height: 100dvh; max-height: 100dvh; overscroll-behavior: contain; padding-block-end: env(safe-area-inset-bottom); }
.jb.jb-ui.jb-ui .jb-drawer--safe .jb-drawer__panel > * { flex-shrink: 0; }
.jb.jb-ui.jb-ui .jb-drawer--safe .jb-drawer__foot { padding-block-end: calc(var(--jb-space-4) + var(--jb-tabbar-h) + env(safe-area-inset-bottom)); }
.jb.jb-ui.jb-ui .jb-hero2[data-jb-hero-gestures] .jb-hero2__visual { touch-action: pan-y pinch-zoom; }
.jb.jb-ui.jb-ui .jb-order-choices { position: fixed; inset-inline: 0; inset-block: auto calc(var(--jb-tabbar-h) + env(safe-area-inset-bottom) + var(--jb-space-3)); margin: 0 auto; width: min(430px, calc(100vw - 24px)); max-height: calc(100dvh - var(--jb-tabbar-h) - 60px); overflow-y: auto; padding: var(--jb-space-4); border: 1px solid var(--jb-line); border-radius: var(--jb-radius-lg); background: var(--jb-surface); color: var(--jb-ink-900); box-shadow: var(--jb-shadow-lg); }
.jb.jb-ui.jb-ui .jb-order-choices:not([open]) { display: none; }
.jb.jb-ui.jb-ui .jb-order-choices[open] { display: grid; gap: var(--jb-space-2); animation: jb-choices-enter .18s ease-out; }
.jb.jb-ui.jb-ui .jb-order-choices::backdrop { background: rgba(14,33,64,.28); }
.jb.jb-ui.jb-ui .jb-order-choices__head { display: flex; align-items: center; justify-content: space-between; gap: var(--jb-space-2); }
.jb.jb-ui.jb-ui .jb-order-choices__head h2 { font-size: 18px; margin: 0; }
.jb.jb-ui.jb-ui .jb-order-choices__item { display: grid; grid-template-columns: 24px minmax(0,1fr) 20px; align-items: center; gap: var(--jb-space-3); padding: var(--jb-space-3); border: 1px solid var(--jb-line); border-radius: var(--jb-radius-md); color: var(--jb-ink-900); background: transparent; text-decoration: none; }
.jb.jb-ui.jb-ui .jb-order-choices__item > span { display: grid; gap: 4px; }
.jb.jb-ui.jb-ui .jb-order-choices__item small { color: var(--jb-ink-500); font-size: 12px; line-height: 1.7; }
.jb.jb-ui.jb-ui .jb-order-choices__item:hover { border-color: var(--jb-brand-600); }
@keyframes jb-choices-enter { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }
@media (prefers-reduced-motion: reduce) { .jb.jb-ui.jb-ui .jb-order-choices[open] { animation: none; } }

/* ========== v1.3 — Native calculator skin =====================================================
   Put the classes  jb jb-ui jb-calc-native  on the Elementor widget «jamboojet-calculator-section»
   (Advanced › CSS Classes) on the home page and on /price-calculator/. Markup, IDs and the theme's
   calculation logic stay untouched; bundle.js only adds mirrors, shipping cards and the note/CTA. */
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native { background: transparent; color: var(--jb-ink-700); }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native :is(.calculator-result,.calculator-result-main,.calculator_result_main_wrapper) { transform: none; height: auto; min-width: 0; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native :is(.calculator-result-main,.calculator_result_main_result)::before,.jb.jb-ui.jb-ui.jb-ui.jb-calc-native :is(.calculator-result-main,.calculator_result_main_result)::after { display: none; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native :is(input,select,button,.jb-calc-m,.jb-calc-total,.jb-calc-total small) { font-family: var(--jb-font-sans); }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .calculator { padding: 0; margin: 0; background: none; box-shadow: none; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native :is(.calculator_form_back, .calculator_result_shadow_back, .calculator_result_main_back) { display: none; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .calculator > .row { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--jb-space-5); margin: 0; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .row > [class*="col-"] { width: auto; max-width: none; flex: none; padding: 0; margin: 0; min-width: 0; }
@media (min-width: 960px) {
  .jb.jb-ui.jb-ui.jb-ui.jb-calc-native .calculator > .row { grid-template-columns: minmax(0, 1fr) minmax(0, 384px); align-items: start; gap: var(--jb-space-6); }
}
/* form card */
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .calculator-form-wrapper { position: relative; margin: 0; padding: var(--jb-space-5); background: var(--jb-surface); border: 1px solid var(--jb-line); border-radius: var(--jb-radius-lg); box-shadow: var(--jb-shadow-sm); }
@media (min-width: 640px) { .jb.jb-ui.jb-ui.jb-ui.jb-calc-native .calculator-form-wrapper { padding: var(--jb-space-6); } }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .calculator-form { display: grid; gap: var(--jb-space-5); margin: 0; padding: 0; background: none; box-shadow: none; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .calculator-form-row { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--jb-space-4); margin: 0; }
@media (min-width: 640px) { .jb.jb-ui.jb-ui.jb-ui.jb-calc-native .calculator-form-row { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .calculator-form-row + .calculator-form-row,
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .form-element-checkbox + .calculator-form-row { padding-top: var(--jb-space-5); border-top: 1px solid var(--jb-line); }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .form-element { display: grid; gap: var(--jb-space-2); margin: 0; padding: 0; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .form-element > label { display: block; margin: 0; padding: 0; font-size: 14px; font-weight: 700; line-height: 1.7; color: var(--jb-ink-900); }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .form-element > label :is(span, strong, b, small) { font-weight: 500; color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .form-element-input { position: relative; display: flex; align-items: center; min-height: 48px; margin: 0; padding: 0; background: var(--jb-surface); border: 1px solid var(--jb-line-strong); border-radius: var(--jb-radius-md); box-shadow: none; transition: border-color .15s ease, box-shadow .15s ease; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .form-element-input:hover { border-color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .form-element-input:focus-within { border-color: var(--jb-brand-600); box-shadow: 0 0 0 3px var(--jb-brand-200); }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .form-element-input > svg { position: static; flex: none; width: 20px; height: 20px; margin: 0; margin-inline-start: var(--jb-space-3); color: var(--jb-ink-500); fill: currentColor; transform: none; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .form-element-input > input { flex: 1; min-width: 0; height: 46px; margin: 0; padding: 0 var(--jb-space-3); background: transparent; border: 0; border-radius: var(--jb-radius-md); box-shadow: none; outline: 0; font-size: 16px; font-weight: 600; color: var(--jb-ink-900); text-align: start; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .form-element-input > input::placeholder { color: var(--jb-ink-500); font-weight: 400; opacity: 1; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .form-element-input :focus-visible { outline: 0; }
/* plain <select> (before/without select2) */
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .form-element-input > select:not(.select2-hidden-accessible) { flex: 1; min-width: 0; height: 46px; margin: 0; padding: 0 var(--jb-space-3); background: transparent; border: 0; border-radius: var(--jb-radius-md); box-shadow: none; outline: 0; font-size: 15px; font-weight: 600; color: var(--jb-ink-900); }
/* select2 (closed state) */
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .form-element-input .select2-container { width: 100% !important; min-width: 0; margin: 0; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .form-element-input .select2-selection--single { position: relative; display: flex; align-items: center; height: 46px; margin: 0; padding: 0; background: transparent; border: 0; border-radius: var(--jb-radius-md); box-shadow: none; outline: 0; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .form-element-input .select2-selection__rendered { display: block; width: 100%; padding: 0; padding-inline: var(--jb-space-3) 40px; line-height: 46px; font-size: 15px; font-weight: 600; color: var(--jb-ink-900); text-align: start; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .form-element-input .select2-selection__arrow { position: absolute; top: 0; left: auto; right: auto; inset-inline-end: 0; width: 40px; height: 46px; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .form-element-input .select2-selection__arrow b { position: absolute; top: 50%; left: 50%; width: 8px; height: 8px; margin: 0; border: solid var(--jb-ink-500); border-width: 0 2px 2px 0; transform: translate(-50%, -70%) rotate(45deg); transition: transform .15s ease; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .form-element-input .select2-container--open .select2-selection__arrow b { transform: translate(-50%, -30%) rotate(-135deg); border-color: var(--jb-brand-600); }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .form-element-input .select2-container--disabled .select2-selection--single { background: var(--jb-surface-subtle); cursor: not-allowed; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .form-element-input:has(.select2-container--disabled) { background: var(--jb-surface-subtle); border-color: var(--jb-line); }
/* «under 20 USD» checkbox */
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .form-element-checkbox { margin: 0; padding: 0; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .form-element-checkbox label.has_checkbox { position: relative; display: block; margin: 0; padding: var(--jb-space-3) var(--jb-space-4); padding-inline-start: 48px; min-height: 48px; background: var(--jb-surface-subtle); border: 1px dashed var(--jb-line-strong); border-radius: var(--jb-radius-md); font-size: 14px; font-weight: 500; line-height: 1.8; color: var(--jb-ink-700); cursor: pointer; transition: border-color .15s ease, background-color .15s ease; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .form-element-checkbox label.has_checkbox:hover { border-color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .form-element-checkbox label.has_checkbox:has(input:checked) { background: var(--jb-brand-50); border-style: solid; border-color: var(--jb-brand-600); color: var(--jb-ink-900); }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .form-element-checkbox input[type="checkbox"] { position: absolute; top: 14px; left: auto; right: auto; inset-inline-start: var(--jb-space-4); width: 20px; height: 20px; margin: 0; opacity: 0; cursor: pointer; z-index: 1; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .form-element-checkbox .checkmark { display: block; position: absolute; top: 14px; left: auto; right: auto; inset-inline-start: var(--jb-space-4); width: 20px; height: 20px; margin: 0; background: var(--jb-surface); border: 2px solid var(--jb-ink-500); border-radius: 6px; transition: background-color .15s ease, border-color .15s ease; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .form-element-checkbox .checkmark::after { content: ""; display: none; position: absolute; top: 45%; left: 50%; width: 5px; height: 10px; margin: 0; background: none; border: solid var(--jb-on-brand); border-width: 0 2px 2px 0; border-radius: 0; transform: translate(-50%, -50%) rotate(45deg); }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .form-element-checkbox input:checked + .checkmark { background: var(--jb-brand-600); border-color: var(--jb-brand-600); }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .form-element-checkbox input:checked + .checkmark::after { display: block; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .form-element-checkbox input:focus-visible + .checkmark { outline: 2px solid var(--jb-focus-ring); outline-offset: 2px; }
/* submit */
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .calculator-form-button { margin: 0; padding: 0; text-align: start; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .calculator-form-calculate-button { display: inline-flex; align-items: center; justify-content: center; gap: var(--jb-space-2); width: 100%; min-height: 52px; margin: 0; padding: 0 var(--jb-space-8); background: var(--jb-brand-600); color: var(--jb-on-brand); border: 0; border-radius: var(--jb-radius-md); box-shadow: none; font-size: 16px; font-weight: 800; line-height: 1; cursor: pointer; transition: background-color .15s ease, transform .1s ease; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .calculator-form-calculate-button:hover { background: var(--jb-brand-700); color: var(--jb-on-brand); }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .calculator-form-calculate-button:active { transform: scale(.985); }
@media (min-width: 640px) { .jb.jb-ui.jb-ui.jb-ui.jb-calc-native .calculator-form-calculate-button { width: auto; min-width: 240px; } }
/* result = boarding-pass receipt */
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .calculator-result { position: relative; margin: 0; padding: 0; background: none; box-shadow: none; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .calculator_result_main_wrapper { position: relative; margin: 0; padding: var(--jb-space-5); background: var(--jb-surface-ink); color: #fff; border-radius: var(--jb-radius-lg); box-shadow: var(--jb-shadow-md); overflow: hidden; }
@media (min-width: 640px) { .jb.jb-ui.jb-ui.jb-ui.jb-calc-native .calculator_result_main_wrapper { padding: var(--jb-space-6); } }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .calculator-result-main { margin: 0; padding: 0; background: none; border: 0; border-radius: 0; box-shadow: none; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .calculator-result-main > .row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--jb-space-3) var(--jb-space-4); margin: 0; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .calculator-result-main > .row > :has(:is(.calculator_result_category, .calculator_result_shipping)) { grid-column: 1 / -1; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .calculator-result-item { display: grid; gap: 2px; margin: 0; padding: 0; background: none; border: 0; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .calculator-result-item-title { margin: 0; font-size: 12px; font-weight: 500; line-height: 1.7; color: rgba(255, 255, 255, .72); }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .calculator-result-item-value { margin: 0; min-height: 1.7em; font-size: 14px; font-weight: 700; line-height: 1.7; color: #fff; overflow-wrap: anywhere; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .calculator-result-item-value:empty::before { content: "—"; color: rgba(255, 255, 255, .45); font-weight: 400; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .calculator_result_main_result { margin: var(--jb-space-5) 0 0; padding: var(--jb-space-5) 0 0; background: none; border: 0; border-top: 2px dashed rgba(255, 255, 255, .24); }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .calculator_result_main_result_title { margin: 0; font-size: 12px; font-weight: 500; line-height: 1.8; color: rgba(255, 255, 255, .78); }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .calculator_result_main_result_value { margin: var(--jb-space-1) 0 0; font-size: 26px; font-weight: 800; line-height: 1.4; color: var(--jb-signal-400); font-feature-settings: "tnum" 1; overflow-wrap: anywhere; }
@media (min-width: 1200px) { .jb.jb-ui.jb-ui.jb-ui.jb-calc-native .calculator_result_main_result_value { font-size: 30px; } }
/* enhanced by bundle.js (.is-jb): mirrors with Persian digits, shipping cards, note + CTA */
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native.is-jb :is(.calculator-result-item-value, .calculator_result_main_result_title, .calculator_result_main_result_value) { display: none; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .jb-calc-m { margin: 0; min-height: 1.7em; font-size: 14px; font-weight: 700; line-height: 1.7; color: #fff; overflow-wrap: anywhere; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .jb-calc-m:empty::before { content: "—"; color: rgba(255, 255, 255, .45); font-weight: 400; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .jb-calc-head { display: flex; align-items: center; justify-content: space-between; gap: var(--jb-space-3); margin: 0 0 var(--jb-space-4); padding-bottom: var(--jb-space-4); border-bottom: 1px solid rgba(255, 255, 255, .14); }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .jb-calc-head b { font-size: 16px; font-weight: 800; color: #fff; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .jb-calc-head span { display: inline-flex; align-items: center; gap: 6px; padding: 2px 10px; border-radius: var(--jb-radius-pill); background: rgba(255, 255, 255, .1); font-size: 12px; font-weight: 600; color: rgba(255, 255, 255, .85); }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .jb-calc-totlabel { margin: 0; font-size: 13px; font-weight: 700; color: #fff; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .jb-calc-totnote { margin: 2px 0 0; font-size: 12px; line-height: 1.8; color: rgba(255, 255, 255, .72); }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .jb-calc-total { display: flex; align-items: baseline; flex-wrap: wrap; gap: 6px; margin: var(--jb-space-2) 0 0; font-size: 28px; font-weight: 800; line-height: 1.35; color: var(--jb-signal-400); font-feature-settings: "tnum" 1; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .jb-calc-total small { font-size: 14px; font-weight: 600; color: rgba(255, 255, 255, .85); }
@media (min-width: 1200px) { .jb.jb-ui.jb-ui.jb-ui.jb-calc-native .jb-calc-total { font-size: 32px; } }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .jb-calc-hint { margin: var(--jb-space-2) 0 0; font-size: 13px; line-height: 1.8; color: rgba(255, 255, 255, .78); }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native[data-jb-state="loading"] .jb-calc-total { position: relative; overflow: hidden; width: 70%; height: 40px; border-radius: var(--jb-radius-sm); background: rgba(255, 255, 255, .1); color: transparent; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native[data-jb-state="loading"] .jb-calc-total > * { visibility: hidden; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native[data-jb-state="loading"] .jb-calc-total::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .22), transparent); transform: translateX(100%); animation: jb-calc-sheen 1.1s linear infinite; }
@keyframes jb-calc-sheen { to { transform: translateX(-100%); } }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .jb-calc-foot { display: grid; gap: var(--jb-space-3); margin-top: var(--jb-space-5); }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .jb-calc-foot .jb-btn { width: 100%; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .jb-calc-foot p { margin: 0; font-size: 12px; line-height: 1.9; color: rgba(255, 255, 255, .72); }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .jb-calc-foot a.jb-calc-how { color: #fff; text-decoration: underline; text-underline-offset: 4px; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native:not([data-jb-state="done"]) .jb-calc-cta { display: none; }
/* shipping cards (replace the long shipping <select> visually; the select stays the source of truth) */
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native.is-jb .form-element:has(.jb-calc-ship) .form-element-input { position: absolute; width: 1px; height: 1px; min-height: 0; overflow: hidden; clip: rect(0 0 0 0); border: 0; padding: 0; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native.is-jb .form-element:has(.jb-calc-ship) .form-element-input { visibility: hidden; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native.is-jb .calculator-form-row > :has(.jb-calc-ship) { grid-column: 1 / -1; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .jb-calc-ship { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(220px, 100%), 1fr)); gap: var(--jb-space-2); margin: 0; padding: 0; border: 0; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .jb-calc-ship__opt { position: relative; display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: start; column-gap: var(--jb-space-3); margin: 0; padding: var(--jb-space-3); min-height: 64px; background: var(--jb-surface); border: 1px solid var(--jb-line-strong); border-radius: var(--jb-radius-md); cursor: pointer; transition: border-color .15s ease, background-color .15s ease, box-shadow .15s ease; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .jb-calc-ship__opt:hover { border-color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .jb-calc-ship__opt:has(input:checked) { background: var(--jb-brand-50); border-color: var(--jb-brand-600); box-shadow: inset 0 0 0 1px var(--jb-brand-600); }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .jb-calc-ship__opt:has(input:focus-visible) { outline: 2px solid var(--jb-focus-ring); outline-offset: 2px; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .jb-calc-ship__opt input { -webkit-appearance: none; appearance: none; grid-row: 1 / span 3; display: grid; place-content: center; width: 20px; height: 20px; min-width: 0; min-height: 0; margin: 3px 0 0; padding: 0; background: var(--jb-surface); border: 2px solid var(--jb-ink-500); border-radius: 50%; box-shadow: none; cursor: pointer; transition: border-color .15s ease; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .jb-calc-ship__opt input::before { content: ""; width: 10px; height: 10px; border-radius: 50%; background: var(--jb-brand-600); transform: scale(0); transition: transform .12s ease; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .jb-calc-ship__opt input:checked { border-color: var(--jb-brand-600); }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .jb-calc-ship__opt input:checked::before { transform: scale(1); }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .jb-calc-ship__opt input:focus-visible { outline: 0; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .jb-calc-ship__name { font-size: 14px; font-weight: 700; line-height: 1.7; color: var(--jb-ink-900); }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .jb-calc-ship__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 8px; font-size: 13px; line-height: 1.7; color: var(--jb-ink-700); }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .jb-calc-ship__tag { display: inline-block; padding: 0 8px; border-radius: var(--jb-radius-pill); background: var(--jb-warning-50); color: var(--jb-warning-700); font-size: 12px; font-weight: 700; line-height: 1.8; }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .jb-calc-ship__note { font-size: 12px; line-height: 1.7; color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .jb-calc-ship__empty { grid-column: 1 / -1; margin: 0; padding: var(--jb-space-3) var(--jb-space-4); border: 1px dashed var(--jb-line-strong); border-radius: var(--jb-radius-md); background: var(--jb-surface-subtle); font-size: 14px; color: var(--jb-ink-700); }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .jb-calc-cta { --jb-_bg: var(--jb-signal-400); --jb-_fg: var(--jb-ink-900); }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native a.jb-calc-cta:hover { --jb-_bg: #ffd666; --jb-_fg: var(--jb-ink-900); }
.jb.jb-ui.jb-ui.jb-ui.jb-calc-native .jb-calc-cta:active { --jb-_bg: #f5b800; }
@media(prefers-reduced-motion:reduce) { .jb.jb-ui.jb-ui.jb-ui.jb-calc-native[data-jb-state="loading"] .jb-calc-total::after { animation: none; } }



/* ========== v1.3.1 — Sign-in / sign-up skin for the theme's own OTP login (fgiga) ==========
   bundle.js adds  jb jb-ui jb-signin  to  #login.fgiga_popup  (popup) and  .panel_page_login  (page on /panel/, /order/).
   The theme keeps every handler (send code, verify, resend, register); we restyle and add: close button, Esc, focus trap,
   Enter to submit, Persian→Latin digits, «sent to» line, padded Persian timer, WebOTP, contextual title. */
.jb.jb-ui.jb-ui.jb-ui.jb-signin { --jb-_pad: var(--jb-space-6); background: transparent; color: var(--jb-ink-700); }
.jb.jb-ui.jb-ui.jb-ui.jb-signin [hidden] { display: none; }
.jb.jb-ui.jb-ui.jb-ui.jb-signin :is(input,button) { font-family: var(--jb-font-sans); }
.jb.jb-ui.jb-ui.jb-ui.jb-signin .jb-auth-page-brand { width: min(420px,100%); margin: 0; padding: 0; border: 0; }
.jb.jb-ui.jb-ui.jb-ui.jb-signin .jb-auth-page-brand span { display: none; }
.jb.jb-ui.jb-ui.jb-ui.jb-signin .jb-auth-page-brand img { margin-inline: auto; }
/* popup shell */
.jb.jb-ui.jb-ui.jb-ui.jb-signin.fgiga_popup { position: fixed; inset: 0; z-index: 99990; display: grid; place-items: center; margin: 0; padding: var(--jb-space-4); width: auto; height: auto; max-width: none; background: transparent; visibility: hidden; opacity: 0; pointer-events: none; transition: opacity .2s ease, visibility 0s linear .2s; transform: none; }
.jb.jb-ui.jb-ui.jb-ui.jb-signin.fgiga_popup.fgiga_popup_show { visibility: visible; opacity: 1; pointer-events: auto; transition: opacity .2s ease; }
.jb.jb-ui.jb-ui.jb-ui.jb-signin .fgiga_popup_overlay { position: fixed; inset: 0; margin: 0; background: rgba(14, 33, 64, .55); opacity: 1; visibility: visible; cursor: pointer; }
.jb.jb-ui.jb-ui.jb-ui.jb-signin .fgiga_popup_main { position: relative; inset: auto; z-index: 1; width: min(420px, 100%); max-width: none; max-height: calc(100dvh - 32px); margin: 0; padding: 0; overflow: auto; overscroll-behavior: contain; background: var(--jb-surface); border: 0; border-radius: var(--jb-radius-xl); box-shadow: 0 24px 64px rgba(14, 33, 64, .28); transform: translateY(12px) scale(.98); transition: transform .24s cubic-bezier(0.23, 1, 0.32, 1); }
.jb.jb-ui.jb-ui.jb-ui.jb-signin.fgiga_popup_show .fgiga_popup_main { transform: none; }
.jb.jb-ui.jb-ui.jb-ui.jb-signin .fgiga_popup_main { max-block-size: calc(var(--jb-auth-viewport-height, 100dvh) - 32px); inline-size: min(420px,100%); max-inline-size: min(420px,100%); }
@media (max-width: 639px) {
  .jb.jb-ui.jb-ui.jb-ui.jb-signin.fgiga_popup { place-items: end stretch; padding: 0; }
  .jb.jb-ui.jb-ui.jb-ui.jb-signin .fgiga_popup_main { width: 100%; max-height: 92dvh; border-radius: var(--jb-radius-xl) var(--jb-radius-xl) 0 0; padding-bottom: env(safe-area-inset-bottom); transform: translateY(100%); }
  .jb.jb-ui.jb-ui.jb-ui.jb-signin .fgiga_popup_main { inline-size:100%; min-inline-size:100%; max-inline-size:100%; max-block-size: calc(var(--jb-auth-viewport-height,100dvh) - 16px); }
  .jb.jb-ui.jb-ui.jb-ui.jb-signin .fgiga_popup_main::before { content: ""; display: block; width: 40px; height: 4px; margin: 10px auto 0; border-radius: 4px; background: var(--jb-line-strong); }
}
.jb.jb-ui.jb-ui.jb-ui.jb-signin .fgiga_popup_header { position: relative; display: flex; align-items: center; justify-content: center; margin: 0; padding: var(--jb-space-5) var(--jb-space-5) 0; background: none; border: 0; }
.jb.jb-ui.jb-ui.jb-ui.jb-signin .fgiga_popup_header_logo { margin: 0; padding: 0; border: 0; }
.jb.jb-ui.jb-ui.jb-ui.jb-signin .fgiga_popup_header_logo img { display: block; width: auto; height: 30px; }
.jb.jb-ui.jb-ui.jb-ui.jb-signin .jb-signin__close { position: absolute; top: var(--jb-space-3); inset-inline-end: var(--jb-space-3); display: grid; place-items: center; width: 40px; height: 40px; margin: 0; padding: 0; background: transparent; border: 0; border-radius: 50%; color: var(--jb-ink-500); cursor: pointer; transition: background-color .15s ease, color .15s ease; }
.jb.jb-ui.jb-ui.jb-ui.jb-signin .jb-signin__close:hover { background: var(--jb-surface-subtle); color: var(--jb-ink-900); }
.jb.jb-ui.jb-ui.jb-ui.jb-signin .fgiga_popup_main_section, .jb.jb-ui.jb-ui.jb-ui.jb-signin .fgiga_login_popup { margin: 0; padding: 0; background: none; border: 0; box-shadow: none; }
/* page shell (/panel/ and /order/ for guests) */
.jb.jb-ui.jb-ui.jb-ui.jb-signin.panel_page_login { display: grid; justify-items: center; gap: var(--jb-space-5); margin: 0 auto; padding: var(--jb-space-8) var(--jb-space-4) var(--jb-space-12); width: 100%; max-width: none; background: radial-gradient(120% 70% at 50% 0%, var(--jb-brand-50) 0%, transparent 70%); border: 0; box-shadow: none; }
.jb.jb-ui.jb-ui.jb-ui.jb-signin.panel_page_login > .fgiga_login_popup_section { width: min(420px, 100%); background: var(--jb-surface); border: 1px solid var(--jb-line); border-radius: var(--jb-radius-xl); box-shadow: var(--jb-shadow-lg); }
.jb.jb-ui.jb-ui .jb-signin__perks { display: flex; flex-wrap: wrap; justify-content: center; gap: var(--jb-space-2); margin: 0; padding: 0; max-width: 520px; }
.jb.jb-ui.jb-ui .jb-signin__perks li { display: inline-flex; align-items: center; gap: 6px; padding: 4px 12px; background: var(--jb-surface); border: 1px solid var(--jb-line); border-radius: var(--jb-radius-pill); font-size: 12px; font-weight: 600; color: var(--jb-ink-700); }
.jb.jb-ui.jb-ui .jb-signin__perks .jb-i { width: 16px; height: 16px; color: var(--jb-success-600); }
/* sections (shared by popup and page) */
.jb.jb-ui.jb-ui.jb-ui.jb-signin .fgiga_login_popup_section { display: none; gap: var(--jb-space-4); margin: 0; padding: var(--jb-space-5) var(--jb-_pad) var(--jb-_pad); text-align: start; }
.jb.jb-ui.jb-ui.jb-ui.jb-signin .fgiga_login_popup_section.fgiga_login_popup_section_show { display: grid; grid-template-columns: minmax(0, 1fr); }
@media (max-width: 639px) { .jb.jb-ui.jb-ui.jb-ui.jb-signin { --jb-_pad: var(--jb-space-5); } }
.jb.jb-ui.jb-ui.jb-ui.jb-signin .login_popup_title { margin: 0; font-size: 22px; font-weight: 800; line-height: 1.5; color: var(--jb-ink-900); text-align: center; }
.jb.jb-ui.jb-ui.jb-ui.jb-signin .login_popup_description { margin: calc(var(--jb-space-3) * -1) 0 0; font-size: 14px; line-height: 1.9; color: var(--jb-ink-500); text-align: center; text-wrap: balance; }
.jb.jb-ui.jb-ui.jb-ui.jb-signin .new_ticket_form_element { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--jb-space-2); min-width: 0; margin: 0; padding: 0; }
.jb.jb-ui.jb-ui.jb-ui.jb-signin .new_ticket_form_element > label { display: block; margin: 0; padding: 0; font-size: 13px; font-weight: 700; line-height: 1.7; color: var(--jb-ink-900); }
.jb.jb-ui.jb-ui.jb-ui.jb-signin .input_has_icon { position: relative; display: flex; align-items: center; gap: var(--jb-space-2); min-height: 56px; margin: 0; padding: 0 var(--jb-space-4); background: var(--jb-surface); border: 1.5px solid var(--jb-line-strong); border-radius: var(--jb-radius-md); box-shadow: none; transition: border-color .15s ease, box-shadow .15s ease; }
.jb.jb-ui.jb-ui.jb-ui.jb-signin .input_has_icon:hover { border-color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui.jb-ui.jb-signin .input_has_icon:focus-within { border-color: var(--jb-brand-600); box-shadow: 0 0 0 4px var(--jb-brand-100); }
.jb.jb-ui.jb-ui.jb-ui.jb-signin .input_has_icon.is-invalid { border-color: var(--jb-danger-600); box-shadow: 0 0 0 4px var(--jb-danger-50); }
.jb.jb-ui.jb-ui.jb-ui.jb-signin .input_has_icon > svg { position: static; flex: none; width: 22px; height: 22px; margin: 0; color: var(--jb-ink-500); transform: none; }
.jb.jb-ui.jb-ui.jb-ui.jb-signin .input_has_icon > input { flex: 1; width: 100%; min-width: 0; height: 52px; margin: 0; padding: 0; background: transparent; border: 0; border-radius: 0; box-shadow: none; outline: 0; font-size: 18px; font-weight: 600; color: var(--jb-ink-900); }
.jb.jb-ui.jb-ui.jb-ui.jb-signin .input_has_icon > input::placeholder { font-size: 15px; font-weight: 400; color: var(--jb-ink-500); opacity: 1; }
.jb.jb-ui.jb-ui.jb-ui.jb-signin .input_has_icon > input[dir="ltr"] { text-align: left; letter-spacing: .04em; }
.jb.jb-ui.jb-ui.jb-ui.jb-signin .input_has_icon > input[dir="ltr"]::placeholder { text-align: right; direction: rtl; letter-spacing: 0; }
.jb.jb-ui.jb-ui.jb-ui.jb-signin .input_has_icon > input:focus-visible { outline: 0; }
/* code step: one big code field */
.jb.jb-ui.jb-ui.jb-ui.jb-signin .input_has_icon:has(> input[autocomplete="one-time-code"]) > svg { display: none; }
.jb.jb-ui.jb-ui.jb-ui.jb-signin .input_has_icon > input[autocomplete="one-time-code"] { height: 60px; font-size: 26px; font-weight: 800; text-align: center; letter-spacing: .5em; font-feature-settings: "tnum" 1; }
.jb.jb-ui.jb-ui.jb-ui.jb-signin .input_has_icon > input[autocomplete="one-time-code"]::placeholder { text-align: center; letter-spacing: 0; font-size: 15px; }
.jb.jb-ui.jb-ui .jb-signin__sent { margin: 0; font-size: 14px; line-height: 1.9; color: var(--jb-ink-700); text-align: center; }
.jb.jb-ui.jb-ui .jb-signin__sent b { color: var(--jb-ink-900); font-weight: 800; direction: ltr; unicode-bidi: isolate; }
.jb.jb-ui.jb-ui.jb-ui.jb-signin .login_popup_title + .jb-signin__sent { margin-top: calc(var(--jb-space-3) * -1); }
/* signup: first + last name side by side */
.jb.jb-ui.jb-ui.jb-ui.jb-signin .jb-signin__names { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--jb-space-3); }
/* primary buttons (popup + page variants) */
.jb.jb-ui.jb-ui.jb-ui.jb-signin :is(.login_send_code_button, .login_accept_code_button, .page_login_send_code_button, .page_login_accept_code_button) { position: relative; display: inline-flex; align-items: center; justify-content: center; gap: var(--jb-space-2); width: 100%; min-height: 54px; margin: 0; padding: 0 var(--jb-space-5); background: var(--jb-brand-600); color: var(--jb-on-brand); border: 0; border-radius: var(--jb-radius-md); box-shadow: 0 6px 16px rgba(6, 95, 213, .24); font-size: 16px; font-weight: 800; line-height: 1; cursor: pointer; transition: background-color .15s ease, transform .1s ease, box-shadow .15s ease; }
.jb.jb-ui.jb-ui.jb-ui.jb-signin :is(.login_send_code_button, .login_accept_code_button, .page_login_send_code_button, .page_login_accept_code_button):hover { background: var(--jb-brand-700); }
.jb.jb-ui.jb-ui.jb-ui.jb-signin :is(.login_send_code_button, .login_accept_code_button, .page_login_send_code_button, .page_login_accept_code_button):active { transform: scale(.985); }
.jb.jb-ui.jb-ui.jb-ui.jb-signin :is(.login_send_code_button, .login_accept_code_button, .page_login_send_code_button, .page_login_accept_code_button) svg { width: 18px; height: 18px; flex: none; transform: scaleX(-1); }
.jb.jb-ui.jb-ui.jb-ui.jb-signin :is(.login_send_code_button, .login_accept_code_button, .page_login_send_code_button, .page_login_accept_code_button):disabled { color: transparent; box-shadow: none; cursor: progress; }
.jb.jb-ui.jb-ui.jb-ui.jb-signin :is(.login_send_code_button, .login_accept_code_button, .page_login_send_code_button, .page_login_accept_code_button):disabled::after { content: ""; position: absolute; inset: 0; margin: auto; width: 22px; height: 22px; border: 2.5px solid rgba(255, 255, 255, .4); border-top-color: #fff; border-radius: 50%; animation: jb-auth-spin .7s linear infinite; }
@keyframes jb-auth-spin { to { transform: rotate(360deg); } }
/* small print + switches */
.jb.jb-ui.jb-ui.jb-ui.jb-signin .login_popup_text { margin: 0; font-size: 12px; line-height: 1.9; color: var(--jb-ink-500); text-align: center; }
.jb.jb-ui.jb-ui.jb-ui.jb-signin .login_popup_text a { color: var(--jb-ink-700); text-decoration: underline; text-underline-offset: 3px; }
.jb.jb-ui.jb-ui.jb-ui.jb-signin .login_popup_change { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 6px; margin: 0; padding: var(--jb-space-4) 0 0; border-top: 1px solid var(--jb-line); font-size: 14px; color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui.jb-ui.jb-signin .login_popup_change_title { margin: 0; font-size: 14px; color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui.jb-ui.jb-signin .login_popup_change_button, .jb.jb-ui.jb-ui.jb-ui.jb-signin #resend_button, .jb.jb-ui.jb-ui.jb-ui.jb-signin #page_resend_button { display: inline-flex; align-items: center; min-height: 40px; margin: 0; padding: 0 var(--jb-space-2); background: transparent; border: 0; border-radius: var(--jb-radius-sm); box-shadow: none; font-size: 14px; font-weight: 700; color: var(--jb-brand-600); cursor: pointer; }
.jb.jb-ui.jb-ui.jb-ui.jb-signin .login_popup_change_button:hover, .jb.jb-ui.jb-ui.jb-ui.jb-signin #resend_button:not(:disabled):hover, .jb.jb-ui.jb-ui.jb-ui.jb-signin #page_resend_button:not(:disabled):hover { background: var(--jb-brand-50); }
.jb.jb-ui.jb-ui.jb-ui.jb-signin .fgiga_login_resend, .jb.jb-ui.jb-ui.jb-ui.jb-signin .fgiga_login_wrong_number { display: flex; align-items: center; justify-content: center; gap: var(--jb-space-2); margin: 0; padding: 0; font-size: 14px; }
.jb.jb-ui.jb-ui.jb-ui.jb-signin .fgiga_login_wrong_number { order: -1; }
.jb.jb-ui.jb-ui.jb-ui.jb-signin.is-jb :is(#resend_button, #page_resend_button):disabled { display: none; }
.jb.jb-ui.jb-ui.jb-ui.jb-signin.is-jb .fgiga_login_resend_timer { display: none; }
.jb.jb-ui.jb-ui .jb-signin__timer { font-size: 13px; color: var(--jb-ink-500); font-feature-settings: "tnum" 1; }
.jb.jb-ui.jb-ui .jb-signin__timer:empty { display: none; }
/* code section order: sent line, code, verify, resend, change number */
.jb.jb-ui.jb-ui.jb-ui.jb-signin #fgiga_popup_code, .jb.jb-ui.jb-ui.jb-ui.jb-signin #fgiga_page_code { grid-template-columns: minmax(0, 1fr); }
.jb.jb-ui.jb-ui.jb-ui.jb-signin :is(#fgiga_popup_code, #fgiga_page_code) > :is(.login_accept_code_button, .page_login_accept_code_button) { order: 2; }
.jb.jb-ui.jb-ui.jb-ui.jb-signin :is(#fgiga_popup_code, #fgiga_page_code) > .fgiga_login_resend { order: 3; }
.jb.jb-ui.jb-ui.jb-ui.jb-signin :is(#fgiga_popup_code, #fgiga_page_code) > .fgiga_login_wrong_number { order: 4; }
.jb.jb-ui.jb-ui.jb-ui.jb-signin :is(#fgiga_popup_code, #fgiga_page_code) > :is(.login_popup_title, .jb-signin__sent) { order: 0; }
.jb.jb-ui.jb-ui.jb-ui.jb-signin :is(#fgiga_popup_code, #fgiga_page_code) > .new_ticket_form_element { order: 1; }
.jb.jb-ui.jb-ui.jb-ui.jb-signin :is(#fgiga_popup_code, #fgiga_page_code) .new_ticket_form_element > label { text-align: center; }
@media(prefers-reduced-motion:reduce) { .jb.jb-ui.jb-ui.jb-ui.jb-signin, .jb.jb-ui.jb-ui.jb-ui.jb-signin .fgiga_popup_main { transition:none; } .jb.jb-ui.jb-ui.jb-ui.jb-signin button:disabled::after { animation:none; } }


/* ========== v1.3 — Product page (templates/woo/content-single-product.php, opt-in «woo_pdp») ========== */
.jb.jb-ui.jb-ui.jb-ui.jb-pdp { background: var(--jb-surface-subtle); padding-block: var(--jb-space-4) var(--jb-space-12); }
.jb.jb-ui.jb-ui .jb-pdp__crumbs { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 8px; margin: 0 0 var(--jb-space-4); font-size: 13px; color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui .jb-pdp__crumbs a { color: var(--jb-ink-700); }
.jb.jb-ui.jb-ui .jb-pdp__sep { color: var(--jb-line-strong); }
.jb.jb-ui.jb-ui .jb-pdp__top { display: grid; grid-template-columns: minmax(0, 1fr); grid-template-areas: "g" "i" "b"; gap: var(--jb-space-4); align-items: start; }
@media (min-width: 768px) { .jb.jb-ui.jb-ui .jb-pdp__top { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); grid-template-areas: "g i" "g b"; gap: var(--jb-space-5); } }
@media (min-width: 1200px) { .jb.jb-ui.jb-ui .jb-pdp__top { grid-template-columns: minmax(0, 4fr) minmax(0, 5fr) minmax(300px, 4fr); grid-template-areas: "g i b"; gap: var(--jb-space-6); } }
.jb.jb-ui.jb-ui .jb-pdp__gallery { grid-area: g; min-width: 0; }
.jb.jb-ui.jb-ui .jb-pdp__info { grid-area: i; min-width: 0; display: grid; gap: var(--jb-space-4); align-content: start; }
.jb.jb-ui.jb-ui .jb-pdp__buy { grid-area: b; min-width: 0; }
@media (min-width: 768px) { .jb.jb-ui.jb-ui .jb-pdp__gallery { position: sticky; top: 120px; } .jb.jb-ui.jb-ui .jb-pdp__buy { position: sticky; top: 120px; } }
/* gallery: neutralise WooCommerce floats/widths, keep its zoom/lightbox/slider scripts */
.jb.jb-ui.jb-ui .jb-pdp__gallery .woocommerce-product-gallery { position: relative; float: none !important; width: auto !important; margin: 0 !important; padding: var(--jb-space-3); background: var(--jb-surface); border: 1px solid var(--jb-line); border-radius: var(--jb-radius-lg); opacity: 1 !important; }
.jb.jb-ui.jb-ui .jb-pdp__gallery .woocommerce-product-gallery__wrapper { margin: 0; }
.jb.jb-ui.jb-ui .jb-pdp__gallery .woocommerce-product-gallery__image img, .jb.jb-ui.jb-ui .jb-pdp__gallery .woocommerce-product-gallery__wrapper img { width: 100%; aspect-ratio: 1; object-fit: contain; background: #fff; border-radius: var(--jb-radius-md); }
/* no slider (theme without wc-product-gallery-slider): main image + thumbnail row; bundle.js swaps on click */
.jb.jb-ui.jb-ui .jb-pdp__gallery .woocommerce-product-gallery > .woocommerce-product-gallery__wrapper { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--jb-space-2); }
.jb.jb-ui.jb-ui .jb-pdp__gallery .woocommerce-product-gallery > .woocommerce-product-gallery__wrapper > .woocommerce-product-gallery__image { width: auto !important; margin: 0; }
.jb.jb-ui.jb-ui .jb-pdp__gallery .woocommerce-product-gallery > .woocommerce-product-gallery__wrapper > .woocommerce-product-gallery__image:first-child { grid-column: 1 / -1; }
.jb.jb-ui.jb-ui .jb-pdp__gallery .woocommerce-product-gallery > .woocommerce-product-gallery__wrapper > .woocommerce-product-gallery__image:not(:first-child) img { border: 1px solid var(--jb-line); border-radius: var(--jb-radius-sm); cursor: pointer; opacity: .8; transition: opacity .15s ease, border-color .15s ease; }
.jb.jb-ui.jb-ui .jb-pdp__gallery .woocommerce-product-gallery > .woocommerce-product-gallery__wrapper > .woocommerce-product-gallery__image:not(:first-child) img:hover { opacity: 1; border-color: var(--jb-brand-600); }
.jb.jb-ui.jb-ui .jb-pdp__gallery .woocommerce-product-gallery__image a { display: block; border-radius: var(--jb-radius-md); }
.jb.jb-ui.jb-ui .jb-pdp__gallery .flex-viewport .woocommerce-product-gallery__image { display: block; }
.jb.jb-ui.jb-ui .jb-pdp__gallery .flex-control-thumbs { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: var(--jb-space-2); margin: var(--jb-space-3) 0 0; padding: 0; }
.jb.jb-ui.jb-ui .jb-pdp__gallery .flex-control-thumbs li { float: none; width: auto; margin: 0; }
.jb.jb-ui.jb-ui .jb-pdp__gallery .flex-control-thumbs img { width: 100%; aspect-ratio: 1; object-fit: cover; border: 1px solid var(--jb-line); border-radius: var(--jb-radius-sm); opacity: .7; cursor: pointer; transition: opacity .15s ease, border-color .15s ease; }
.jb.jb-ui.jb-ui .jb-pdp__gallery .flex-control-thumbs img.flex-active, .jb.jb-ui.jb-ui .jb-pdp__gallery .flex-control-thumbs img:hover { opacity: 1; border-color: var(--jb-brand-600); }
.jb.jb-ui.jb-ui .jb-pdp__gallery .woocommerce-product-gallery__trigger { position: absolute; top: var(--jb-space-4); left: var(--jb-space-4); right: auto; z-index: 2; display: grid; place-items: center; width: 40px; height: 40px; background: var(--jb-surface); border: 1px solid var(--jb-line); border-radius: 50%; box-shadow: var(--jb-shadow-sm); text-indent: 0; font-size: 0; }


/* info column */
.jb.jb-ui.jb-ui .jb-pdp__chips { display: flex; flex-wrap: wrap; gap: var(--jb-space-2); }
.jb.jb-ui.jb-ui .jb-pdp__chips:empty { display: none; }
.jb.jb-ui.jb-ui .jb-pdp__chip { display: inline-flex; align-items: center; gap: 6px; padding: 2px 10px; background: var(--jb-surface); border: 1px solid var(--jb-line); border-radius: var(--jb-radius-pill); font-size: 12px; font-weight: 700; line-height: 1.9; color: var(--jb-ink-700); }
.jb.jb-ui.jb-ui .jb-pdp__chip--store { color: var(--jb-brand-700); background: var(--jb-brand-50); border-color: var(--jb-brand-100); }
.jb.jb-ui.jb-ui .jb-pdp__chip--iran { color: var(--jb-success-600); background: var(--jb-success-50); border-color: transparent; }
.jb.jb-ui.jb-ui .jb-pdp__chip--sale { color: var(--jb-danger-600); background: var(--jb-danger-50); border-color: transparent; }
.jb.jb-ui.jb-ui .jb-pdp__title { margin: 0; font-size: 20px; font-weight: 800; line-height: 1.7; color: var(--jb-ink-900); text-wrap: pretty; }
@media (min-width: 960px) { .jb.jb-ui.jb-ui .jb-pdp__title { font-size: 24px; } }
.jb.jb-ui.jb-ui .jb-pdp__en { margin: calc(var(--jb-space-2) * -1) 0 0; font-size: 13px; line-height: 1.6; color: var(--jb-ink-500); text-align: left; overflow-wrap: anywhere; }
.jb.jb-ui.jb-ui .jb-pdp__meta { display: flex; flex-wrap: wrap; align-items: center; gap: var(--jb-space-2) var(--jb-space-4); padding-bottom: var(--jb-space-4); border-bottom: 1px solid var(--jb-line); font-size: 13px; }
.jb.jb-ui.jb-ui .jb-pdp__rating { display: inline-flex; align-items: center; gap: 6px; color: var(--jb-ink-700); }
.jb.jb-ui.jb-ui .jb-pdp__rating b { color: var(--jb-ink-900); }
.jb.jb-ui.jb-ui .jb-pdp__star { color: #e8a200; font-size: 16px; line-height: 1; }
.jb.jb-ui.jb-ui .jb-pdp__src { display: inline-flex; align-items: center; gap: 6px; font-weight: 600; }
.jb.jb-ui.jb-ui .jb-pdp__share { display: inline-flex; align-items: center; gap: 6px; min-height: 36px; margin-inline-start: auto; padding: 0 var(--jb-space-3); background: transparent; border: 1px solid var(--jb-line); border-radius: var(--jb-radius-pill); font-size: 13px; font-weight: 600; color: var(--jb-ink-700); cursor: pointer; }
.jb.jb-ui.jb-ui .jb-pdp__share:hover { border-color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui .jb-pdp__facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; margin: 0; overflow: hidden; background: var(--jb-line); border: 1px solid var(--jb-line); border-radius: var(--jb-radius-md); }
.jb.jb-ui.jb-ui .jb-pdp__facts > div { display: grid; gap: 2px; padding: var(--jb-space-3); background: var(--jb-surface); }
.jb.jb-ui.jb-ui .jb-pdp__facts dt { font-size: 12px; color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui .jb-pdp__facts dd { margin: 0; font-size: 14px; font-weight: 700; color: var(--jb-ink-900); text-align: start; overflow-wrap: anywhere; }
.jb.jb-ui.jb-ui .jb-pdp__facts dd[dir="ltr"] { text-align: right; unicode-bidi: isolate; }
.jb.jb-ui.jb-ui .jb-pdp__about { display: grid; gap: var(--jb-space-2); }
.jb.jb-ui.jb-ui .jb-pdp__about h2, .jb.jb-ui.jb-ui .jb-pdp__sec h2 { margin: 0; font-size: 17px; font-weight: 800; color: var(--jb-ink-900); }
.jb.jb-ui.jb-ui .jb-pdp__prose { font-size: 14px; line-height: 2; color: var(--jb-ink-700); overflow-wrap: anywhere; }
.jb.jb-ui.jb-ui .jb-pdp__prose :is(p, ul, ol) { margin: 0 0 var(--jb-space-3); }
.jb.jb-ui.jb-ui .jb-pdp__prose :is(ul, ol) { padding-inline-start: var(--jb-space-5); list-style: disc; }
.jb.jb-ui.jb-ui .jb-pdp__prose li { margin-bottom: var(--jb-space-1); }
.jb.jb-ui.jb-ui .jb-pdp__prose img { max-width: 100%; height: auto; border-radius: var(--jb-radius-md); }
.jb.jb-ui.jb-ui .jb-pdp__trust { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--jb-space-2); margin: 0; padding: 0; }
@media (min-width: 640px) { .jb.jb-ui.jb-ui .jb-pdp__trust { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (min-width: 1200px) { .jb.jb-ui.jb-ui .jb-pdp__trust { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.jb.jb-ui.jb-ui .jb-pdp__trust li { display: flex; align-items: center; gap: var(--jb-space-2); padding: var(--jb-space-3); background: var(--jb-surface); border: 1px solid var(--jb-line); border-radius: var(--jb-radius-md); }
.jb.jb-ui.jb-ui .jb-pdp__trust .jb-i { color: var(--jb-brand-600); }
.jb.jb-ui.jb-ui .jb-pdp__trust span { display: grid; font-size: 12px; line-height: 1.6; color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui .jb-pdp__trust b { font-size: 13px; color: var(--jb-ink-900); }
/* buy box */
.jb.jb-ui.jb-ui .jb-pdp__buy { display: grid; gap: var(--jb-space-4); padding: var(--jb-space-5); background: var(--jb-surface); border: 1px solid var(--jb-line); border-radius: var(--jb-radius-lg); box-shadow: var(--jb-shadow-md); }
.jb.jb-ui.jb-ui .jb-pdp__price { display: grid; gap: 2px; }
.jb.jb-ui.jb-ui .jb-pdp__plabel { font-size: 12px; font-weight: 600; color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui .jb-pdp__pval small { font-size: 14px; font-weight: 600; color: var(--jb-ink-500); margin-inline-end: 4px; }
.jb.jb-ui.jb-ui .jb-pdp__pval { font-size: 26px; font-weight: 800; line-height: 1.5; color: var(--jb-ink-900); font-feature-settings: "tnum" 1; }
.jb.jb-ui.jb-ui .jb-pdp__pval :is(.woocommerce-Price-currencySymbol) { font-size: 14px; font-weight: 600; color: var(--jb-ink-700); margin-inline-start: 4px; }
.jb.jb-ui.jb-ui .jb-pdp__pval del { display: block; font-size: 14px; font-weight: 500; color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui .jb-pdp__pval ins { text-decoration: none; }
.jb.jb-ui.jb-ui .jb-pdp__pnote { font-size: 12px; line-height: 1.8; color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui .jb-pdp__buy form.cart { display: grid; gap: var(--jb-space-3); margin: 0; padding: 0; border: 0; }
.jb.jb-ui.jb-ui .jb-pdp__buy form.cart::before, .jb.jb-ui.jb-ui .jb-pdp__buy form.cart::after { display: none; }
.jb.jb-ui.jb-ui .jb-pdp__buy table.variations { width: 100%; margin: 0; border: 0; border-collapse: collapse; }
.jb.jb-ui.jb-ui .jb-pdp__buy table.variations :is(tr, th, td) { display: block; padding: 0; border: 0; background: none; text-align: start; }
.jb.jb-ui.jb-ui .jb-pdp__buy table.variations tr + tr { margin-top: var(--jb-space-3); }
.jb.jb-ui.jb-ui .jb-pdp__buy table.variations th.label label { display: block; margin: 0 0 var(--jb-space-2); font-size: 14px; font-weight: 700; color: var(--jb-ink-900); }
.jb.jb-ui.jb-ui .jb-pdp__buy table.variations select { width: 100%; min-height: 46px; padding: 0 var(--jb-space-3); background: var(--jb-surface); border: 1px solid var(--jb-line-strong); border-radius: var(--jb-radius-md); font-size: 15px; color: var(--jb-ink-900); }
.jb.jb-ui.jb-ui .jb-pdp__buy .reset_variations { display: inline-block; margin-top: var(--jb-space-2); font-size: 13px; font-weight: 600; color: var(--jb-brand-700); }
.jb.jb-ui.jb-ui .jb-pdp__buy .woocommerce-variation-price { display: none; }
.jb.jb-ui.jb-ui .jb-pdp__buy .woocommerce-variation-description { font-size: 13px; color: var(--jb-ink-700); }
.jb.jb-ui.jb-ui .jb-pdp__buy .woocommerce-variation-description p { margin: 0; }
.jb.jb-ui.jb-ui .jb-pdp__buy :is(.woocommerce-variation-add-to-cart, form.cart:not(.variations_form)) { display: flex; flex-wrap: wrap; align-items: stretch; gap: var(--jb-space-2); }
.jb.jb-ui.jb-ui .jb-pdp__buy .quantity { display: flex; float: none; margin: 0; }
.jb.jb-ui.jb-ui .jb-pdp__buy .quantity input.qty { width: 72px; min-height: 52px; padding: 0; background: var(--jb-surface); border: 1px solid var(--jb-line-strong); border-radius: var(--jb-radius-md); font-size: 16px; font-weight: 700; text-align: center; color: var(--jb-ink-900); }
.jb.jb-ui.jb-ui .jb-pdp__buy .single_add_to_cart_button { flex: 1; min-height: 52px; margin: 0; padding: 0 var(--jb-space-5); background: var(--jb-brand-600); color: var(--jb-on-brand); border: 0; border-radius: var(--jb-radius-md); font-size: 16px; font-weight: 800; float: none; cursor: pointer; transition: background-color .15s ease, transform .1s ease; }
.jb.jb-ui.jb-ui .jb-pdp__buy .single_add_to_cart_button:hover { background: var(--jb-brand-700); }
.jb.jb-ui.jb-ui .jb-pdp__buy .single_add_to_cart_button:active { transform: scale(.985); }
.jb.jb-ui.jb-ui .jb-pdp__buy .single_add_to_cart_button:is(.disabled, :disabled) { background: var(--jb-ink-400); cursor: not-allowed; opacity: 1; }
.jb.jb-ui.jb-ui .jb-pdp__buy .stock { margin: 0; font-size: 13px; font-weight: 700; }
.jb.jb-ui.jb-ui .jb-pdp__buy .stock.in-stock { color: var(--jb-success-600); }
.jb.jb-ui.jb-ui .jb-pdp__buy .stock.out-of-stock { color: var(--jb-danger-600); }
.jb.jb-ui.jb-ui .jb-pdp__assure { display: grid; gap: var(--jb-space-2); margin: 0; padding: var(--jb-space-3) 0 0; border-top: 1px dashed var(--jb-line); }
.jb.jb-ui.jb-ui .jb-pdp__assure li { display: flex; align-items: flex-start; gap: var(--jb-space-2); font-size: 12px; line-height: 1.8; color: var(--jb-ink-700); }
.jb.jb-ui.jb-ui .jb-pdp__assure .jb-i { margin-top: 3px; color: var(--jb-success-600); }
.jb.jb-ui.jb-ui .jb-pdp__links { display: grid; gap: var(--jb-space-1); font-size: 13px; }
/* enhanced variation options (bundle.js) */
.jb.jb-ui.jb-ui .jb-pdp__buy.is-jb table.variations td.value > select { position: absolute; width: 1px; height: 1px; min-height: 0; padding: 0; overflow: hidden; clip: rect(0 0 0 0); border: 0; }
.jb.jb-ui.jb-ui .jb-pdp__opts { display: grid; gap: var(--jb-space-2); }
.jb.jb-ui.jb-ui .jb-pdp__opt { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; row-gap: 2px; column-gap: var(--jb-space-3); min-height: 52px; margin: 0; padding: var(--jb-space-2) var(--jb-space-3); background: var(--jb-surface); border: 1px solid var(--jb-line-strong); border-radius: var(--jb-radius-md); cursor: pointer; transition: border-color .15s ease, background-color .15s ease; }
.jb.jb-ui.jb-ui .jb-pdp__opt:hover { border-color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui .jb-pdp__opt:has(input:checked) { background: var(--jb-brand-50); border-color: var(--jb-brand-600); box-shadow: inset 0 0 0 1px var(--jb-brand-600); }
.jb.jb-ui.jb-ui .jb-pdp__opt:has(input:focus-visible) { outline: 2px solid var(--jb-focus-ring); outline-offset: 2px; }
.jb.jb-ui.jb-ui .jb-pdp__opt:has(input:disabled) { opacity: .55; cursor: not-allowed; }
.jb.jb-ui.jb-ui .jb-pdp__opt input { -webkit-appearance: none; appearance: none; display: grid; place-content: center; width: 20px; height: 20px; min-width: 0; min-height: 0; margin: 0; padding: 0; box-shadow: none; outline: 0; background: var(--jb-surface); border: 2px solid var(--jb-ink-500); border-radius: 50%; cursor: pointer; }
.jb.jb-ui.jb-ui .jb-pdp__opt input::before { content: ""; width: 10px; height: 10px; border-radius: 50%; background: var(--jb-brand-600); transform: scale(0); transition: transform .12s ease; }
.jb.jb-ui.jb-ui .jb-pdp__opt input:checked { border-color: var(--jb-brand-600); }
.jb.jb-ui.jb-ui .jb-pdp__opt input:checked::before { transform: scale(1); }
.jb.jb-ui.jb-ui .jb-pdp__opt input:focus-visible { outline: 0; }
.jb.jb-ui.jb-ui .jb-pdp__optname { display: grid; font-size: 14px; font-weight: 700; line-height: 1.6; color: var(--jb-ink-900); }
.jb.jb-ui.jb-ui .jb-pdp__optname small { font-size: 12px; font-weight: 500; color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui .jb-pdp__opt input { grid-row: 1 / span 2; }
.jb.jb-ui.jb-ui .jb-pdp__optprice { grid-column: 2; font-size: 14px; font-weight: 800; color: var(--jb-brand-700); }
.jb.jb-ui.jb-ui .jb-pdp__optprice :is(.price, .amount, bdi) { font-size: inherit; font-weight: inherit; color: inherit; }
.jb.jb-ui.jb-ui .jb-pdp__optprice del { display: none; }
.jb.jb-ui.jb-ui .jb-pdp__optprice ins { text-decoration: none; }
/* sections below */
.jb.jb-ui.jb-ui .jb-pdp__sec { display: grid; gap: var(--jb-space-4); margin-top: var(--jb-space-6); padding: var(--jb-space-5); background: var(--jb-surface); border: 1px solid var(--jb-line); border-radius: var(--jb-radius-lg); }
@media (min-width: 960px) { .jb.jb-ui.jb-ui .jb-pdp__sec { padding: var(--jb-space-6); } }
.jb.jb-ui.jb-ui .jb-pdp__sec > * { min-width: 0; }
.jb.jb-ui.jb-ui .jb-pdp__cmptable { width: 100%; border-collapse: collapse; font-size: 14px; }
.jb.jb-ui.jb-ui .jb-pdp__cmptable .jb-wc-price :is(.price, .amount, bdi) { font-size: 16px; font-weight: 800; color: var(--jb-ink-900); }
.jb.jb-ui.jb-ui .jb-pdp__cmptable .woocommerce-Price-currencySymbol { font-size: 12px; font-weight: 600; color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui .jb-pdp__cmptable :is(th, td) { padding: var(--jb-space-3); border-bottom: 1px solid var(--jb-line); text-align: start; vertical-align: middle; }
.jb.jb-ui.jb-ui .jb-pdp__cmptable thead th { font-size: 12px; font-weight: 600; color: var(--jb-ink-500); background: var(--jb-surface-subtle); }
.jb.jb-ui.jb-ui .jb-pdp__cmptable tbody th { font-weight: 700; color: var(--jb-ink-900); }
.jb.jb-ui.jb-ui .jb-pdp__cmptable tbody tr:last-child :is(th, td) { border-bottom: 0; }
.jb.jb-ui.jb-ui .jb-pdp__cmptable td:last-child { text-align: end; }
.jb.jb-ui.jb-ui .jb-pdp__cmptable tr.is-current { background: var(--jb-brand-50); }
@media (max-width: 639px) {
  .jb.jb-ui.jb-ui .jb-pdp__cmptable thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  .jb.jb-ui.jb-ui .jb-pdp__cmptable, .jb.jb-ui.jb-ui .jb-pdp__cmptable tbody { display: block; }
  .jb.jb-ui.jb-ui .jb-pdp__cmptable tbody { display: grid; gap: var(--jb-space-2); }
  .jb.jb-ui.jb-ui .jb-pdp__cmptable tr { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 2px var(--jb-space-3); align-items: center; padding: var(--jb-space-3); border: 1px solid var(--jb-line); border-radius: var(--jb-radius-md); }
  .jb.jb-ui.jb-ui .jb-pdp__cmptable :is(th, td) { display: block; padding: 0; border: 0; }
  .jb.jb-ui.jb-ui .jb-pdp__cmptable tbody th { grid-column: 1; }
  .jb.jb-ui.jb-ui .jb-pdp__cmptable td:nth-child(2) { grid-column: 1; font-size: 13px; color: var(--jb-ink-500); }
  .jb.jb-ui.jb-ui .jb-pdp__cmptable td.jb-wc-price { grid-column: 1; }
  .jb.jb-ui.jb-ui .jb-pdp__cmptable td:last-child { grid-column: 2; grid-row: 1 / span 3; }
}
.jb.jb-ui.jb-ui .jb-pdp__specs .shop_attributes { width: 100%; margin: 0; border: 1px solid var(--jb-line); border-collapse: separate; border-spacing: 0; border-radius: var(--jb-radius-md); overflow: hidden; font-size: 14px; }
.jb.jb-ui.jb-ui .jb-pdp__specs .shop_attributes :is(th, td) { padding: var(--jb-space-3) var(--jb-space-4); border: 0; border-bottom: 1px solid var(--jb-line); background: none; font-style: normal; text-align: start; vertical-align: top; }
.jb.jb-ui.jb-ui .jb-pdp__specs .shop_attributes th { width: 38%; background: var(--jb-surface-subtle); font-weight: 600; color: var(--jb-ink-700); }
.jb.jb-ui.jb-ui .jb-pdp__specs .shop_attributes td p { margin: 0; padding: 0; }
.jb.jb-ui.jb-ui .jb-pdp__specs .shop_attributes tr:last-child :is(th, td) { border-bottom: 0; }
.jb.jb-ui.jb-ui .jb-pdp__reviews :is(h2, .woocommerce-Reviews-title) { margin: 0 0 var(--jb-space-4); font-size: 17px; font-weight: 800; color: var(--jb-ink-900); }
.jb.jb-ui.jb-ui .jb-pdp__reviews ol.commentlist { display: grid; gap: var(--jb-space-3); margin: 0 0 var(--jb-space-5); padding: 0; }
.jb.jb-ui.jb-ui .jb-pdp__reviews ol.commentlist li { margin: 0; padding: var(--jb-space-4); background: var(--jb-surface-subtle); border-radius: var(--jb-radius-md); }
.jb.jb-ui.jb-ui .jb-pdp__reviews ol.commentlist li img.avatar { display: none; }
.jb.jb-ui.jb-ui .jb-pdp__reviews ol.commentlist li .comment-text { margin: 0; padding: 0; border: 0; }
.jb.jb-ui.jb-ui .jb-pdp__reviews .meta { font-size: 13px; color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui .jb-pdp__reviews .description p { margin: var(--jb-space-2) 0 0; font-size: 14px; line-height: 1.9; color: var(--jb-ink-700); }
.jb.jb-ui.jb-ui .jb-pdp__reviews :is(input[type="text"], input[type="email"], textarea) { width: 100%; padding: var(--jb-space-3); background: var(--jb-surface); border: 1px solid var(--jb-line-strong); border-radius: var(--jb-radius-md); font-size: 15px; }
.jb.jb-ui.jb-ui .jb-pdp__reviews .comment-form { display: grid; gap: var(--jb-space-3); }
.jb.jb-ui.jb-ui .jb-pdp__reviews .comment-form label { display: block; margin: 0 0 var(--jb-space-1); font-size: 14px; font-weight: 600; color: var(--jb-ink-900); }
.jb.jb-ui.jb-ui .jb-pdp__reviews .comment-form .required { color: var(--jb-danger-600); }
.jb.jb-ui.jb-ui .jb-pdp__reviews p.stars a { color: #b07700; }
.jb.jb-ui.jb-ui .jb-pdp__reviews .comment-form p { margin: 0; }
.jb.jb-ui.jb-ui .jb-pdp__reviews .form-submit input[type="submit"] { min-height: 46px; padding: 0 var(--jb-space-6); background: var(--jb-brand-600); color: var(--jb-on-brand); border: 0; border-radius: var(--jb-radius-md); font-weight: 700; cursor: pointer; }
.jb.jb-ui.jb-ui .jb-pdp :is(.related, .upsells).products { margin-top: var(--jb-space-8); }
.jb.jb-ui.jb-ui .jb-pdp :is(.related, .upsells).products > h2 { margin: 0 0 var(--jb-space-4); font-size: 18px; font-weight: 800; color: var(--jb-ink-900); }
/* mobile buy bar (above the tab bar) */
.jb.jb-ui.jb-ui .jb-pdp__bar { position: fixed; inset-inline: 0; bottom: 0; z-index: var(--jb-z-sticky); padding: var(--jb-space-2) var(--jb-space-4) calc(var(--jb-space-2) + env(safe-area-inset-bottom)); background: var(--jb-surface); border-top: 1px solid var(--jb-line); box-shadow: 0 -6px 20px rgba(20, 43, 74, .08); transform: translateY(0); transition: transform .2s cubic-bezier(0.23, 1, 0.32, 1); }
.jb.jb-ui.jb-ui .jb-pdp__bar[data-off] { transform: translateY(110%); }
.jb.jb-ui.jb-ui .jb-pdp__barin { display: flex; align-items: center; justify-content: space-between; gap: var(--jb-space-3); max-width: 640px; margin-inline: auto; }
.jb.jb-ui.jb-ui .jb-pdp__barprice { min-width: 0; font-size: 16px; font-weight: 800; color: var(--jb-ink-900); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.jb.jb-ui.jb-ui .jb-pdp__barprice del { display: none; }
.jb.jb-ui.jb-ui .jb-pdp__barprice ins { text-decoration: none; }
.jb.jb-ui.jb-ui .jb-pdp__bar .jb-btn { flex: none; min-height: 48px; padding-inline: var(--jb-space-6); }
@media (min-width: 960px) { .jb.jb-ui.jb-ui .jb-pdp__bar { display: none; } }
/* ========== v1.3 — Checkout steps + empty cart (opt-in «woo_steps») ========== */
.jb.jb-ui.jb-ui.jb-ui.jb-wsteps-wrap { background: transparent; margin: 0 0 var(--jb-space-5); }
.jb.jb-ui.jb-ui .jb-wsteps { display: flex; align-items: center; gap: var(--jb-space-2); margin: 0; padding: 0; counter-reset: none; }
.jb.jb-ui.jb-ui .jb-wsteps__item { display: flex; flex: 1; align-items: center; gap: var(--jb-space-2); min-width: 0; font-size: 13px; font-weight: 600; color: var(--jb-ink-500); }
.jb.jb-ui.jb-ui .jb-wsteps__item:not(:last-child)::after { content: ""; flex: 1; height: 2px; min-width: 12px; background: var(--jb-line); border-radius: 2px; }
.jb.jb-ui.jb-ui .jb-wsteps__item.is-done:not(:last-child)::after { background: var(--jb-brand-600); }
.jb.jb-ui.jb-ui .jb-wsteps__n { display: grid; place-items: center; flex: none; width: 28px; height: 28px; border-radius: 50%; background: var(--jb-surface-subtle); border: 1px solid var(--jb-line-strong); font-size: 13px; font-weight: 800; color: var(--jb-ink-700); }
.jb.jb-ui.jb-ui .jb-wsteps__item.is-current { color: var(--jb-ink-900); }
.jb.jb-ui.jb-ui .jb-wsteps__item.is-current .jb-wsteps__n { background: var(--jb-brand-600); border-color: var(--jb-brand-600); color: var(--jb-on-brand); }
.jb.jb-ui.jb-ui .jb-wsteps__item.is-done .jb-wsteps__n { background: var(--jb-brand-50); border-color: var(--jb-brand-600); color: var(--jb-brand-600); }
.jb.jb-ui.jb-ui .jb-wsteps__item > span:not(.jb-wsteps__n):not(.jb-sr) { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
@media (max-width: 479px) { .jb.jb-ui.jb-ui .jb-wsteps__item:not(.is-current) > span:not(.jb-wsteps__n):not(.jb-sr) { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); } }
.jb.jb-ui.jb-ui.jb-ui.jb-wempty { background: transparent; margin: var(--jb-space-4) 0; }
.jb.jb-ui.jb-ui .jb-wempty__box { display: grid; justify-items: center; gap: var(--jb-space-2); padding: var(--jb-space-8) var(--jb-space-5); background: var(--jb-surface); border: 1px dashed var(--jb-line-strong); border-radius: var(--jb-radius-lg); text-align: center; }
.jb.jb-ui.jb-ui .jb-wempty__box > .jb-i { width: 40px; height: 40px; color: var(--jb-brand-600); }
.jb.jb-ui.jb-ui .jb-wempty__t { margin: 0; font-size: 18px; font-weight: 800; color: var(--jb-ink-900); }
.jb.jb-ui.jb-ui .jb-wempty__d { max-width: 44ch; margin: 0; font-size: 14px; line-height: 1.9; color: var(--jb-ink-700); }
.jb.jb-ui.jb-ui .jb-wempty__a { display: flex; flex-wrap: wrap; justify-content: center; gap: var(--jb-space-2); margin-top: var(--jb-space-3); }
.jb.jb-ui.jb-ui .jb-pdp .screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
/* Integration boundaries: long source URLs, safe mobile action bar and reduced motion. */
.jb.jb-ui.jb-ui .jb-pdp__top, .jb.jb-ui.jb-ui .jb-pdp__buy, .jb.jb-ui.jb-ui .jb-pdp__info, .jb.jb-ui.jb-ui .jb-pdp__sec { min-inline-size: 0; }
.jb.jb-ui.jb-ui .jb-pdp__title, .jb.jb-ui.jb-ui .jb-pdp__src, .jb.jb-ui.jb-ui .jb-pdp__availability { overflow-wrap: anywhere; }
.jb.jb-ui.jb-ui .jb-pdp__buy select[hidden], .jb.jb-ui.jb-ui .jb-pdp__bar[hidden] { display: none; }
.jb.jb-ui.jb-ui .jb-pdp__bar { bottom: var(--jb-pdp-tab-offset, 0px); }
.jb.jb-ui.jb-ui .jb-pdp__availability { font-size: 14px; line-height: 1.9; }
.jb.jb-ui.jb-ui .jb-pdp__facts > div:last-child:nth-child(odd) { grid-column: 1 / -1; }
.jb.jb-ui.jb-ui .jb-pdp__specs .shop_attributes { display: table; table-layout: fixed; }
.jb.jb-ui.jb-ui .jb-pdp__specs .shop_attributes tbody { display: table-row-group; }
.jb.jb-ui.jb-ui .jb-pdp__specs .shop_attributes tr { display: table-row; }
.jb.jb-ui.jb-ui .jb-pdp__specs .shop_attributes :is(th, td) { display: table-cell; float: none; font-family: var(--jb-font-sans); overflow-wrap: anywhere; }
.jb.jb-ui.jb-ui .jb-pdp__facts .jb-code { font-family: var(--jb-font-latin); direction: ltr; unicode-bidi: isolate; }
@media (prefers-reduced-motion: reduce) {
 .jb.jb-ui.jb-ui .jb-pdp__bar, .jb.jb-ui.jb-ui .jb-pdp__opt, .jb.jb-ui.jb-ui .jb-pdp__opt input::before { transition: none; }
}


/* Revision-2 Destinations. Real published pages, country codes rather than invented airports. */
.jb.jb-ui.jb-ui .jb-dests { display:grid; gap:var(--jb-space-3); grid-template-columns:repeat(2,minmax(0,1fr)); }
@media(min-width:640px){.jb.jb-ui.jb-ui .jb-dests{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media(min-width:1200px){.jb.jb-ui.jb-ui .jb-dests{grid-template-columns:repeat(4,minmax(0,1fr));}}
.jb.jb-ui.jb-ui .jb-dest { position:relative; display:grid; gap:4px; align-content:start; min-inline-size:0; padding:var(--jb-space-4); border-radius:var(--jb-radius-lg); background:var(--jb-surface); border:1px solid var(--jb-line); color:var(--jb-ink-700); text-decoration:none; transition:border-color .15s,box-shadow .15s; }
.jb.jb-ui.jb-ui .jb-dest:hover { border-color:var(--jb-brand-600); box-shadow:var(--jb-shadow-md); }
.jb.jb-ui.jb-ui .jb-dest:focus-visible { outline:2px solid var(--jb-brand-600); outline-offset:3px; }
.jb.jb-ui.jb-ui .jb-dest__code { font-family:var(--jb-font-latin); font-weight:900; font-size:26px; line-height:1.1; letter-spacing:.04em; color:var(--jb-ink-900); text-align:start; padding-inline-start:30px; unicode-bidi:isolate; }
.jb.jb-ui.jb-ui .jb-dest__place { font-size:12px; font-weight:700; color:var(--jb-brand-600); }
.jb.jb-ui.jb-ui .jb-dest b { font-size:15px; color:var(--jb-ink-900); margin-top:var(--jb-space-2); overflow-wrap:anywhere; }
.jb.jb-ui.jb-ui .jb-dest__text { font-size:12px; line-height:1.8; color:var(--jb-ink-500); overflow-wrap:anywhere; }
.jb.jb-ui.jb-ui .jb-dest__go { position:absolute; inset-block-start:var(--jb-space-4); inset-inline-end:var(--jb-space-4); color:var(--jb-ink-400); }
.jb.jb-ui.jb-ui .jb-dest:hover .jb-dest__go { color:var(--jb-brand-600); }
@media(prefers-reduced-motion:reduce){.jb.jb-ui.jb-ui .jb-dest{transition:none;}}

/* The native theme enhances selects; keep its behavior, style only this form. */
.jb.jb-ui.jb-ui .jb-freight-form, .jb.jb-ui.jb-ui .jb-freight-details { font-family:var(--jb-font-sans); }
.jb.jb-ui.jb-ui .jb-freight-form :is(label,input,button,select,span,p,h2,legend),.jb.jb-ui.jb-ui .jb-freight-details :is(h3,dt,dd,span,a) { font-family:var(--jb-font-sans); }
.jb.jb-ui.jb-ui .jb-freight-form .jb-option__title { font-weight:700; }
.jb.jb-ui.jb-ui .jb-freight-form .jb-option__meta, .jb.jb-ui.jb-ui .jb-freight-form .jb-check { font-weight:400; }
.jb.jb-ui.jb-ui .jb-freight-form .jb-field { align-content:start; min-width:0; }
.jb.jb-ui.jb-ui .jb-freight-form fieldset { min-width:0; }
@media(min-width:600px){.jb.jb-ui.jb-ui .jb-freight-form .jb-choice--row{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(min-width:1200px){.jb.jb-ui.jb-ui .jb-freight-form .jb-choice--row{grid-template-columns:repeat(4,minmax(0,1fr));}}
.jb.jb-ui.jb-ui .jb-freight-form .jb-control--enhanced::after { display:none; }
.jb.jb-ui.jb-ui .jb-freight-form .jb-control > .select2-container { width:100%; max-width:100%; min-width:0; flex:1; }
.jb.jb-ui.jb-ui .jb-freight-form .jb-control .select2-selection--single { display:flex; align-items:center; min-height:45px; height:auto; border:0; border-radius:0; background:transparent; box-shadow:none; }
/* The parent .jb-control already provides the visible keyboard-focus ring. */
.jb.jb-ui.jb-ui .jb-freight-form .jb-control .select2-selection--single:focus { outline:0; }
.jb.jb-ui.jb-ui .jb-freight-form .jb-control .select2-selection__rendered { color:var(--jb-ink-900); font-family:var(--jb-font-sans); font-size:15px; font-weight:400; line-height:1.8; white-space:normal; padding-inline:var(--jb-space-4) 40px; }
.jb.jb-ui.jb-ui .jb-freight-form .jb-control .select2-selection__arrow { inset-inline-end:12px; inset-inline-start:auto; }
.jb.jb-ui.jb-ui .jb-freight-form [data-jb-file-name] { min-width:0; overflow-wrap:anywhere; }
.jb.jb-ui.jb-ui .jb-freight-form .jb-contact-loading { display:flex; align-items:center; gap:var(--jb-space-3); padding:var(--jb-space-3); color:var(--jb-brand-700); background:var(--jb-brand-50); border-radius:var(--jb-radius-md); }
.jb.jb-ui.jb-ui .jb-freight-form .jb-contact-loading[hidden] { display:none; }
.jb.jb-ui.jb-ui .jb-freight-form [data-jb-freight-result][hidden] { display:none; }
.jb.jb-ui.jb-ui .jb-freight-form [data-jb-freight-result] { scroll-margin-block:140px; }
.jb.jb-ui.jb-ui .jb-freight-form .jb-contact-loading .jb-i { flex-shrink:0; animation:jb-contact-flight 1.4s ease-in-out infinite alternate; }
@media(prefers-reduced-motion:reduce){.jb.jb-ui.jb-ui .jb-freight-form .jb-contact-loading .jb-i{animation:none;}}

/* Own markup; addon1.3.1 signin card dimensions without native/Digits selectors. */
.jb.jb-ui.jb-ui.jb-ui .jb-identity__card { position: relative; inline-size: min(420px,100%); box-sizing:border-box; background:var(--jb-surface); color:var(--jb-ink-700); border:1px solid var(--jb-line); border-radius:var(--jb-radius-xl); padding:24px; box-shadow:var(--jb-shadow-lg); }
.jb.jb-ui.jb-ui.jb-ui .jb-identity__brand { display:flex; justify-content:center; margin-block-end:24px; }
.jb.jb-ui.jb-ui.jb-ui .jb-identity__brand img { display:block; max-inline-size:160px; object-fit:contain; }
.jb.jb-ui.jb-ui.jb-ui .jb-identity__card [data-identity-title] { margin:0; font-size:22px; font-weight:800; line-height:1.5; color:var(--jb-ink-900); text-align:center; }
.jb.jb-ui.jb-ui.jb-ui .jb-identity__lead { text-align:center; color:var(--jb-ink-500); font-size:14px; line-height:1.9; margin:8px 0 24px; text-wrap:balance; }
.jb.jb-ui.jb-ui.jb-ui .jb-identity__card form { display:grid; grid-template-columns:minmax(0,1fr); gap:14px; margin:0; padding:0; }
.jb.jb-ui.jb-ui.jb-ui .jb-identity__card [hidden] { display:none; }
.jb.jb-ui.jb-ui.jb-ui .jb-identity__card label { display:block; margin:0; font-size:13px; font-weight:700; color:var(--jb-ink-900); }
.jb.jb-ui.jb-ui.jb-ui .jb-identity__field { display:flex; align-items:center; gap:8px; min-inline-size:0; min-block-size:56px; box-sizing:border-box; border:1.5px solid var(--jb-line-strong); border-radius:var(--jb-radius-md); padding-inline:16px; background:var(--jb-surface); }
.jb.jb-ui.jb-ui.jb-ui .jb-identity__field:focus-within { border-color:var(--jb-brand-600); box-shadow:0 0 0 4px var(--jb-brand-100); }
.jb.jb-ui.jb-ui.jb-ui .jb-identity__field:has([aria-invalid=true]) { border-color:var(--jb-danger-600); }
.jb.jb-ui.jb-ui.jb-ui .jb-identity__field > .jb-i { inline-size:22px; block-size:22px; flex:none; color:var(--jb-ink-500); }
.jb.jb-ui.jb-ui.jb-ui .jb-identity__field input { inline-size:100%; min-inline-size:0; block-size:52px; padding:0; border:0; border-radius:0; margin:0; outline:0; box-shadow:none; background:transparent; color:var(--jb-ink-900); font-family:var(--jb-font-sans); font-size:18px; font-weight:600; }
.jb.jb-ui.jb-ui.jb-ui .jb-identity__field input::placeholder { color:var(--jb-ink-500); opacity:1; font-size:15px; font-weight:400; direction:rtl; text-align:right; }
.jb.jb-ui.jb-ui.jb-ui .jb-identity__field [data-identity-code] { block-size:60px; font-size:26px; font-weight:800; text-align:center; letter-spacing:.5em; }
.jb.jb-ui.jb-ui.jb-ui .jb-identity__field [data-identity-code]::placeholder { text-align:center; letter-spacing:0; }
.jb.jb-ui.jb-ui.jb-ui .jb-identity__primary { display:flex; align-items:center; justify-content:center; gap:8px; inline-size:100%; min-block-size:54px; margin:0; padding:12px 20px; background:var(--jb-brand-600); color:var(--jb-on-brand); border:0; border-radius:var(--jb-radius-md); font-family:var(--jb-font-sans); font-size:16px; line-height:1.5; font-weight:800; cursor:pointer; box-shadow:var(--jb-shadow-md); }
.jb.jb-ui.jb-ui.jb-ui .jb-identity__primary:hover { background:var(--jb-brand-700); }
.jb.jb-ui.jb-ui.jb-ui .jb-identity__primary:disabled { cursor:wait; box-shadow:none; }
.jb.jb-ui.jb-ui.jb-ui .jb-identity__primary .jb-i { inline-size:18px; block-size:18px; }
.jb.jb-ui.jb-ui.jb-ui .jb-identity__link { display:block; min-block-size:44px; margin:0 auto; padding:8px; border:0; background:transparent; color:var(--jb-brand-600); font-family:var(--jb-font-sans); font-size:14px; font-weight:700; cursor:pointer; }
.jb.jb-ui.jb-ui.jb-ui .jb-identity__link:disabled { color:var(--jb-ink-500); cursor:wait; }
.jb.jb-ui.jb-ui.jb-ui .jb-identity__legal { text-align:center; color:var(--jb-ink-500); font-size:12px; line-height:1.9; margin:0; }
.jb.jb-ui.jb-ui.jb-ui .jb-identity__legal a { color:var(--jb-ink-700); text-decoration:underline; text-underline-offset:3px; }
.jb.jb-ui.jb-ui.jb-ui .jb-identity__timer { text-align:center; font-size:13px; color:var(--jb-ink-500); margin:0; }
.jb.jb-ui.jb-ui.jb-ui .jb-identity__names { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.jb.jb-ui.jb-ui.jb-ui .jb-identity__names label { margin-block-end:8px; }
.jb.jb-ui.jb-ui.jb-ui .jb-identity__message { color:var(--jb-danger-600); font-size:14px; text-align:center; line-height:1.9; margin:14px 0 0; }
.jb.jb-ui.jb-ui.jb-ui .jb-identity__message:empty { display:none; }
.jb.jb-ui.jb-ui.jb-ui .jb-identity__message.is-information { color:var(--jb-ink-700); }
.jb.jb-ui.jb-ui.jb-ui .jb-identity__close { position:absolute; inset-block-start:16px; inset-inline-end:12px; display:grid; place-items:center; inline-size:44px; block-size:44px; padding:10px; border:0; border-radius:50%; background:transparent; color:var(--jb-ink-500); cursor:pointer; }
.jb.jb-ui.jb-ui.jb-ui .jb-identity__progress { position:absolute; inset:0; z-index:2; display:flex; flex-direction:column; justify-content:center; align-items:center; gap:16px; padding:24px; border-radius:inherit; background:var(--jb-surface); text-align:center; font-size:16px; font-weight:700; }
.jb.jb-ui.jb-ui.jb-ui .jb-identity__vehicles { position:relative; inline-size:120px; block-size:80px; }
.jb.jb-ui.jb-ui.jb-ui .jb-identity__vehicle { position:absolute; inset:0; display:grid; place-items:center; color:var(--jb-brand-600); opacity:0; animation:jb-auth-phase 9s linear infinite; }
.jb.jb-ui.jb-ui.jb-ui .jb-identity__vehicle--ship { animation-delay:3s; }
.jb.jb-ui.jb-ui.jb-ui .jb-identity__vehicle--train { animation-delay:6s; }
.jb.jb-ui.jb-ui.jb-ui .jb-identity__vehicle .jb-i { inline-size:64px; block-size:64px; animation:jb-auth-float 2s ease-in-out infinite; }
.jb.jb-ui.jb-ui.jb-ui .jb-identity__perks { display:flex; flex-wrap:wrap; justify-content:center; gap:8px; margin:20px 0 0; padding:0; list-style:none; }
.jb.jb-ui.jb-ui.jb-ui .jb-identity__perks li { display:flex; align-items:center; gap:6px; padding:4px 12px; background:var(--jb-surface); border:1px solid var(--jb-line); border-radius:var(--jb-radius-pill); font-size:12px; font-weight:600; }
.jb.jb-ui.jb-ui.jb-ui .jb-identity__perks .jb-i { color:var(--jb-success-600); inline-size:16px; block-size:16px; }
.jb.jb-ui.jb-ui.jb-ui.jb-identity--page { display:grid; justify-items:center; padding:32px 16px 48px; background:var(--jb-surface-subtle); }
.jb.jb-ui.jb-ui.jb-ui.jb-identity--modal { padding:0; margin:auto; inline-size:min(420px,calc(100% - 32px)); max-inline-size:none; max-block-size:calc(100dvh - 32px); border:0; border-radius:var(--jb-radius-xl); background:var(--jb-surface); overflow:auto; overscroll-behavior:contain; }
.jb.jb-ui.jb-ui.jb-ui.jb-identity--modal::backdrop { background:rgba(14,33,64,.55); }
.jb.jb-ui.jb-ui.jb-ui.jb-identity--modal .jb-identity__card { border:0; inline-size:100%; border-radius:inherit; }
.jb.jb-ui.jb-ui.jb-ui.jb-identity--modal:not([open]) { display:none; }
@media(max-width:639px){
 .jb.jb-ui.jb-ui.jb-ui.jb-identity--modal { margin:0; inset:auto 0 0; inline-size:100%; max-block-size:calc(var(--jb-identity-viewport,100dvh) - 16px); border-radius:var(--jb-radius-xl) var(--jb-radius-xl) 0 0; }
 .jb.jb-ui.jb-ui.jb-ui.jb-identity--modal .jb-identity__card { padding:36px 20px calc(24px + env(safe-area-inset-bottom)); }
 .jb.jb-ui.jb-ui.jb-ui.jb-identity--modal .jb-identity__card::before { content:""; position:absolute; inset-block-start:10px; inset-inline-start:calc(50% - 20px); inline-size:40px; block-size:4px; border-radius:4px; background:var(--jb-line-strong); }
 .jb.jb-ui.jb-ui.jb-ui.jb-identity--modal .jb-identity__close { inset-block-start:24px; }
}
@media(prefers-reduced-motion:reduce){
 .jb.jb-ui.jb-ui.jb-ui .jb-identity__vehicle,.jb.jb-ui.jb-ui.jb-ui .jb-identity__vehicle .jb-i { animation:none; }
 .jb.jb-ui.jb-ui.jb-ui .jb-identity__vehicle--plane { opacity:1; }
}


/* ---------- WordPress integration (unscoped on purpose) ---------- */
.jb-header-wrap { position: sticky; top: 0; z-index: 9990; }
body.admin-bar .jb-header-wrap { top: 32px; }
@media (max-width: 782px) { body.admin-bar .jb-header-wrap { top: 46px; } }
@media (max-width: 600px) { body.admin-bar .jb-header-wrap { top: 0; } }
.jb.jb-ui.jb-ui.jb-ui .jb-header { position: relative; top: auto; }
.jb-drawer-wrap, .jb-tabbar-wrap { position: relative; z-index: 9995; background: transparent; }
.jb.jb-ui.jb-tabbar-wrap { background: transparent; }
.jb.jb-ui.jb-native-modal-open { z-index: 0; pointer-events: none; }
@media (max-width: 959px) { body.jb-has-tabbar { padding-bottom: calc(var(--jb-tabbar-h) + env(safe-area-inset-bottom)); } }
body.jb-hide-theme-header .jb-theme-header-hidden, body.jb-hide-theme-footer .jb-theme-footer-hidden { display: none !important; }
.elementor-widget-shortcode .jb.jb-ui { width: 100%; }
@media print {
  body.jb-printing *, body:has(.jb-ticket-print) * { visibility: hidden !important; }
  body.jb-printing .jb-ticket-print, body.jb-printing .jb-ticket-print *, body:has(.jb-ticket-print) .jb-ticket-print, body:has(.jb-ticket-print) .jb-ticket-print * { visibility: visible !important; }
  body.jb-printing .jb-ticket-print, body:has(.jb-ticket-print) .jb-ticket-print { position: absolute; inset: 0 0 auto 0; max-width: none; }
  body:has(.jb-ticket-print) :has(.jb-ticket-print) > :not(:has(.jb-ticket-print)):not(.jb-ticket-print), body:has(.jb-ticket-print) > :not(:has(.jb-ticket-print)) { display: none !important; }
  body:has(.jb-ticket-print), body:has(.jb-ticket-print) :has(.jb-ticket-print) { padding: 0 !important; margin: 0 !important; min-height: 0 !important; }
  body.jb-printing .jb-footer-wrap, body.jb-printing .jb-tabbar, body.jb-printing .jb-header-wrap { display: none !important; }
  body.jb-printing { padding: 0 !important; }
  .jb-ticket-print [data-jb-ticket-actions], .jb-ticket-print .jb-alert, .jb-ticket-print .jb-ticket__trk button, .jb-ticket-print .jb-pass__stub .jb-btn { display: none !important; }
  .jb-ticket-print .jb-pass { box-shadow: none !important; break-inside: avoid; }
  .jb-ticket-print, .jb-ticket-print * { -webkit-print-color-adjust: exact; print-color-adjust: exact; }
}
