/*!***********************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[14].oneOf[5].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[14].oneOf[5].use[3]!./src/app/components/auth/auth.module.css ***!
  \***********************************************************************************************************************************************************************************************************************************************************************************/
/*
 * Shared styles for the entry/auth screens (WelcomeView, LoginView, SignupView).
 *
 * Responsive contract:
 *   - `.shell` always equals the viewport (`100dvh`) with `overflow: hidden`.
 *   - Every interior dimension scales via `clamp(min, vmin-based, max)` so the
 *     UI shrinks on small/short viewports without ever causing a scrollbar.
 *   - On short heights (`max-height: 540px`, e.g. landscape phones), the brand
 *     row collapses and fields flow into two columns when there's enough width,
 *     keeping signup's 4 fields visible without scrolling.
 *
 * All colors are read from the design tokens in `theme.css` — no literals.
 */

/* ── Shell: viewport-locked, ambient gradient glow ──────────────────────── */
.auth_shell__SnRGE {
  position: relative;
  /*
   * `min-height: 100dvh` (not `height`) so:
   *   - When idle, the card is exactly viewport-sized → no scrollbar.
   *   - When a mobile soft-keyboard pops, the browser can still scroll the
   *     focused input above the keyboard. Clamp()-based sizing below keeps
   *     content within 100dvh in normal usage.
   */
  min-height: 100dvh;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  -webkit-padding-before: max(clamp(12px, 3vmin, 28px), env(safe-area-inset-top, 0px));
          padding-block-start: max(clamp(12px, 3vmin, 28px), env(safe-area-inset-top, 0px));
  -webkit-padding-after: max(clamp(12px, 3vmin, 28px), env(safe-area-inset-bottom, 0px));
          padding-block-end: max(clamp(12px, 3vmin, 28px), env(safe-area-inset-bottom, 0px));
  -webkit-padding-start: max(clamp(12px, 3vmin, 28px), env(safe-area-inset-left, 0px));
          padding-inline-start: max(clamp(12px, 3vmin, 28px), env(safe-area-inset-left, 0px));
  -webkit-padding-end: max(clamp(12px, 3vmin, 28px), env(safe-area-inset-right, 0px));
          padding-inline-end: max(clamp(12px, 3vmin, 28px), env(safe-area-inset-right, 0px));
  background-color: var(--bg);
  background-image:
    radial-gradient(ellipse 80% 50% at 50% 0%, rgba(79, 172, 254, 0.16), transparent 60%),
    radial-gradient(ellipse 80% 50% at 50% 100%, rgba(142, 84, 233, 0.12), transparent 60%),
    radial-gradient(circle at 20% 20%, rgba(79, 172, 254, 0.08), transparent 35%),
    radial-gradient(circle at 80% 80%, rgba(142, 84, 233, 0.06), transparent 35%);
}

/* ── Card: holds the brand + content (never exceeds the shell) ──────────── */
.auth_card__e1P03 {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 420px;
  max-height: 100%;
  display: flex;
  flex-direction: column;
  gap: clamp(12px, 2.4vmin, 26px);
  min-height: 0;
  animation: auth_cardFadeIn__FwgT4 0.45s var(--ease-out) both;
}

@keyframes auth_cardFadeIn__FwgT4 {
  from { opacity: 0; transform: translateY(12px); }
  to { opacity: 1; transform: translateY(0); }
}

html[data-a11y-reduce-motion="1"] .auth_card__e1P03 {
  animation: none;
}

/* ── Brand block (welcome) ──────────────────────────────────────────────── */
.auth_brand__CXD02 {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: clamp(10px, 2.2vmin, 16px);
  text-align: center;
}

.auth_brandLogo__FqRR4 {
  width: clamp(64px, 18vmin, 88px);
  height: clamp(64px, 18vmin, 88px);
  object-fit: cover;
  border-radius: clamp(16px, 4vmin, 22px);
  filter: drop-shadow(0 12px 28px rgba(0, 0, 0, 0.35));
}

.auth_brandTitle__QcKsY {
  font-family: var(--font-h);
  font-size: clamp(28px, 7.5vmin, 38px);
  font-weight: 800;
  letter-spacing: -0.03em;
  background: var(--cta-grad);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  margin: 0;
  line-height: 1;
}

.auth_brandSub__uKrXR {
  color: var(--txt2);
  font-size: clamp(12px, 2.8vmin, 15px);
  line-height: 1.5;
  max-width: 320px;
  margin: 0;
}

/* Smaller brand variant used inside login/signup forms */
.auth_brandCompact__dqQAh {
  display: flex;
  align-items: center;
  gap: clamp(8px, 2vmin, 12px);
}

.auth_brandCompact__dqQAh .auth_brandLogo__FqRR4 {
  width: clamp(36px, 10vmin, 48px);
  height: clamp(36px, 10vmin, 48px);
  border-radius: clamp(10px, 2.8vmin, 14px);
}

.auth_brandCompact__dqQAh .auth_brandTitle__QcKsY {
  font-size: clamp(18px, 5vmin, 24px);
}

/* ── Buttons ────────────────────────────────────────────────────────────── */
.auth_btnGroup__8lxUm {
  display: flex;
  flex-direction: column;
  gap: clamp(8px, 1.8vmin, 12px);
}

.auth_btnPrimary__FytqE,
.auth_btnSecondary__6omQO,
.auth_btnGhost__Hc3H9 {
  width: 100%;
  padding: clamp(12px, 2.6vmin, 16px);
  font-family: var(--font-h);
  font-size: clamp(14px, 3vmin, 16px);
  font-weight: 700;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  transition: transform 0.12s ease, box-shadow 0.2s ease, background-color 0.15s ease, border-color 0.15s ease, opacity 0.15s ease;
}

.auth_btnPrimary__FytqE {
  border: 0;
  border-radius: var(--r);
  background: var(--cta-grad);
  color: #fff;
  box-shadow: var(--cta-glow);
  letter-spacing: -0.01em;
}

.auth_btnPrimary__FytqE:hover { box-shadow: 0 0 28px rgba(142, 84, 233, 0.55); }
.auth_btnPrimary__FytqE:active { transform: scale(var(--press-scale)); }
.auth_btnPrimary__FytqE:disabled {
  opacity: 0.5;
  cursor: not-allowed;
  box-shadow: none;
  transform: none;
}

.auth_btnSecondary__6omQO {
  border: 1px solid var(--border2);
  border-radius: var(--r);
  background: var(--surf);
  color: var(--txt);
}

.auth_btnSecondary__6omQO:hover { background: var(--surf2); border-color: var(--acc); }
.auth_btnSecondary__6omQO:active { transform: scale(var(--press-scale)); }

.auth_btnGhost__Hc3H9 {
  border: 0;
  background: transparent;
  color: var(--txt2);
  padding: clamp(10px, 2vmin, 14px);
  font-weight: 600;
}

.auth_btnGhost__Hc3H9:hover { color: var(--txt); }
.auth_btnGhost__Hc3H9:active { transform: scale(var(--press-scale)); }

/* ── Divider with text ──────────────────────────────────────────────────── */
.auth_divider__AwMmO {
  display: flex;
  align-items: center;
  gap: 12px;
  color: var(--txt3);
  font-size: clamp(10px, 2vmin, 12px);
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.auth_divider__AwMmO::before,
.auth_divider__AwMmO::after {
  content: '';
  flex: 1 1;
  height: 1px;
  background: var(--border2);
}

/* ── Form (login/signup) ────────────────────────────────────────────────── */
.auth_formHeader__7FiWx {
  display: flex;
  flex-direction: column;
  gap: clamp(4px, 1vmin, 6px);
}

.auth_formTitle__v7lyO {
  font-family: var(--font-h);
  font-size: clamp(22px, 5.4vmin, 28px);
  font-weight: 800;
  letter-spacing: -0.02em;
  color: var(--txt);
  margin: 0;
  line-height: 1.15;
}

.auth_formSub___Bwd1 {
  color: var(--txt2);
  font-size: clamp(12px, 2.6vmin, 14px);
  margin: 0;
  line-height: 1.45;
}

.auth_form__o8MN3 {
  display: flex;
  flex-direction: column;
  gap: clamp(12px, 2.4vmin, 18px);
}

.auth_fields__FvwBr {
  display: flex;
  flex-direction: column;
  gap: clamp(10px, 1.8vmin, 14px);
}

.auth_field__gxXv0 {
  display: flex;
  flex-direction: column;
  gap: clamp(6px, 1.4vmin, 8px);
  min-width: 0;
}

.auth_label__3zcZ7 {
  font-size: clamp(11px, 2.4vmin, 13px);
  color: var(--txt2);
  font-weight: 600;
  letter-spacing: 0.01em;
}

.auth_input__pI5Ct {
  width: 100%;
  background: var(--surf);
  border: 1px solid var(--border);
  border-radius: var(--r-sm);
  padding-block: clamp(10px, 2vmin, 14px);
  padding-inline: clamp(12px, 2.4vmin, 16px);
  color: var(--txt);
  font-family: var(--font-h);
  /* Stay at 16px to prevent iOS Safari auto-zoom when focusing inputs. */
  font-size: 16px;
  transition: border-color 0.15s ease, box-shadow 0.15s ease, background-color 0.15s ease;
  min-width: 0;
}

.auth_input__pI5Ct::placeholder {
  color: var(--txt3);
}

.auth_input__pI5Ct:hover {
  border-color: var(--border2);
}

.auth_input__pI5Ct:focus {
  outline: none;
  border-color: var(--acc);
  background: var(--surf2);
  box-shadow: 0 0 0 3px var(--acc-dim);
}

.auth_inputLtr__DkOu6 {
  direction: ltr;
  text-align: start;
}

/* ── Back button (top-start of the form view) ───────────────────────────── */
.auth_backRow__2_nIe {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.auth_backBtn__Y0dAB {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: transparent;
  border: 0;
  padding: clamp(4px, 0.8vmin, 6px) 0;
  color: var(--txt2);
  font-family: var(--font-h);
  font-size: clamp(12px, 2.4vmin, 14px);
  font-weight: 600;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}

.auth_backBtn__Y0dAB:hover { color: var(--txt); }

.auth_backBtn__Y0dAB svg {
  width: clamp(14px, 3vmin, 18px);
  height: clamp(14px, 3vmin, 18px);
}

/* ── Form footer (switch link + legal note) ─────────────────────────────── */
.auth_formFooter__ttJWZ {
  display: flex;
  flex-direction: column;
  gap: clamp(8px, 1.6vmin, 14px);
  align-items: center;
  text-align: center;
}

.auth_switchRow__UFs0A {
  font-size: clamp(12px, 2.6vmin, 14px);
  color: var(--txt2);
}

.auth_switchLink__7p0O8 {
  background: transparent;
  border: 0;
  padding: 0;
  -webkit-margin-start: 6px;
          margin-inline-start: 6px;
  color: var(--acc);
  font-family: var(--font-h);
  font-size: inherit;
  font-weight: 700;
  cursor: pointer;
  text-decoration: none;
}

.auth_switchLink__7p0O8:hover { text-decoration: underline; }

.auth_note__6Qxeq {
  font-size: clamp(10px, 2.2vmin, 12px);
  color: var(--txt3);
  line-height: 1.55;
  max-width: 320px;
}

/* ── Inline status pill (temporary; replaced when backend wires in) ─────── */
.auth_statusPill__8hih6 {
  align-self: center;
  background: var(--acc-dim);
  color: var(--acc-text);
  font-size: clamp(11px, 2.4vmin, 13px);
  font-weight: 600;
  padding: clamp(6px, 1.6vmin, 8px) clamp(12px, 2.8vmin, 14px);
  border-radius: 999px;
  border: 1px solid rgba(79, 172, 254, 0.22);
  animation: auth_statusIn__1C4lt 0.25s var(--ease-out);
}

@keyframes auth_statusIn__1C4lt {
  from { opacity: 0; transform: translateY(-4px); }
  to { opacity: 1; transform: translateY(0); }
}

/* ─────────────────────────────────────────────────────────────────────────
 * Short-viewport adaptations
 *  - Phone landscape (and short desktop windows): hide the compact brand,
 *    drop the subtitle, tighten gaps.
 *  - When there is also enough width, reflow the fields into 2 columns so
 *    signup's 4 fields fit without scrolling.
 * ───────────────────────────────────────────────────────────────────────── */

@media (max-height: 540px) {
  .auth_brandCompact__dqQAh {
    display: none;
  }

  .auth_formSub___Bwd1 {
    display: none;
  }

  .auth_card__e1P03 {
    gap: clamp(10px, 1.8vmin, 18px);
  }

  .auth_brand__CXD02 {
    gap: clamp(6px, 1.6vmin, 12px);
  }

  /* Welcome brand stays but logo shrinks more aggressively */
  .auth_brand__CXD02 .auth_brandLogo__FqRR4 {
    width: clamp(48px, 12vmin, 72px);
    height: clamp(48px, 12vmin, 72px);
  }

  .auth_brand__CXD02 .auth_brandTitle__QcKsY {
    font-size: clamp(22px, 5.6vmin, 32px);
  }
}

@media (max-height: 540px) and (min-width: 480px) {
  .auth_card__e1P03 {
    max-width: 640px;
  }

  .auth_fields__FvwBr {
    flex-direction: row;
    flex-wrap: wrap;
    gap: clamp(8px, 1.6vmin, 12px);
  }

  .auth_field__gxXv0 {
    flex-grow: 1;
    flex-shrink: 1;
    flex-basis: calc(50% - clamp(4px, 0.8vmin, 6px));
  }
}

/*
 * Very narrow phones (≤ 360px): trim the same way as short viewports do, so
 * the signup form's 4 fields fit without scrolling even on legacy devices.
 */
@media (max-width: 360px) {
  .auth_brandCompact__dqQAh {
    display: none;
  }
  .auth_formSub___Bwd1 {
    display: none;
  }
  .auth_card__e1P03 {
    gap: clamp(10px, 1.8vmin, 18px);
  }
}

/* ── Phone row (country select + national number) ───────────────────────── */
.auth_phoneRow__xvn_8 {
  display: flex;
  gap: 8px;
  align-items: stretch;
}

.auth_countrySelect__8cKyN {
  flex-shrink: 0;
  background: var(--surf);
  border: 1px solid var(--border);
  border-radius: var(--r-sm);
  padding-block: clamp(10px, 2vmin, 14px);
  padding-inline: clamp(10px, 2.4vmin, 14px);
  color: var(--txt);
  font-family: var(--font-h);
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  max-width: 42%;
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
  background-image: linear-gradient(45deg, transparent 50%, var(--txt2) 50%),
    linear-gradient(135deg, var(--txt2) 50%, transparent 50%);
  background-position: calc(100% - 14px) 50%, calc(100% - 10px) 50%;
  background-size: 4px 4px, 4px 4px;
  background-repeat: no-repeat;
  -webkit-padding-end: 28px;
          padding-inline-end: 28px;
  transition: border-color 0.15s ease, box-shadow 0.15s ease, background-color 0.15s ease;
}

.auth_countrySelect__8cKyN:hover {
  border-color: var(--border2);
}

.auth_countrySelect__8cKyN:focus {
  outline: none;
  border-color: var(--acc);
  box-shadow: 0 0 0 3px var(--acc-dim);
}

.auth_phoneInput__XL53l {
  flex: 1 1 auto;
  min-width: 0;
}

/* ── Channel tabs (forgot password: email / phone) ──────────────────────── */
.auth_tabs___dxuQ {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 4px;
  gap: 4px;
  padding: 4px;
  background: var(--surf);
  border: 1px solid var(--border);
  border-radius: 999px;
}

.auth_tab__B6aWo {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: transparent;
  border: 0;
  padding: 10px 14px;
  border-radius: 999px;
  color: var(--txt2);
  font-family: var(--font-h);
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  transition: background-color 0.18s ease, color 0.18s ease;
  -webkit-tap-highlight-color: transparent;
}

.auth_tab__B6aWo[aria-selected='true'] {
  background: var(--bg);
  color: var(--txt);
  box-shadow: var(--shadow-sm);
}

.auth_tab__B6aWo:hover:not([aria-selected='true']) {
  color: var(--txt);
}

.auth_tab__B6aWo svg {
  width: 14px;
  height: 14px;
}

/* ── OTP input ──────────────────────────────────────────────────────────── */
.auth_otpRow__k5jui {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  grid-gap: clamp(6px, 1.4vmin, 10px);
  gap: clamp(6px, 1.4vmin, 10px);
}

.auth_otpCell__lf1YN {
  width: 100%;
  aspect-ratio: 1;
  text-align: center;
  font-family: var(--font-h);
  font-size: clamp(18px, 5vmin, 22px);
  font-weight: 700;
  color: var(--txt);
  background: var(--surf);
  border: 1px solid var(--border);
  border-radius: var(--r-sm);
  caret-color: var(--acc);
  transition: border-color 0.15s ease, box-shadow 0.15s ease, background-color 0.15s ease;
  min-width: 0;
}

.auth_otpCell__lf1YN:hover {
  border-color: var(--border2);
}

.auth_otpCell__lf1YN:focus {
  outline: none;
  border-color: var(--acc);
  background: var(--surf2);
  box-shadow: 0 0 0 3px var(--acc-dim);
}

/* ── Field-level error message ──────────────────────────────────────────── */
.auth_fieldError__x1_ER {
  color: var(--danger);
  font-size: clamp(11px, 2.2vmin, 12px);
  font-weight: 600;
  line-height: 1.35;
  margin: 0;
}

.auth_input__pI5Ct[aria-invalid='true'],
.auth_countrySelect__8cKyN[aria-invalid='true'] {
  border-color: var(--danger);
}

.auth_input__pI5Ct[aria-invalid='true']:focus,
.auth_countrySelect__8cKyN[aria-invalid='true']:focus {
  box-shadow: 0 0 0 3px rgba(232, 93, 93, 0.18);
}

/* ── Top-level error pill (server / network errors) ─────────────────────── */
.auth_errorPill__pK4mS {
  align-self: center;
  background: rgba(232, 93, 93, 0.12);
  color: var(--danger);
  font-size: clamp(11px, 2.4vmin, 13px);
  font-weight: 600;
  padding: clamp(6px, 1.6vmin, 8px) clamp(12px, 2.8vmin, 14px);
  border-radius: 999px;
  border: 1px solid rgba(232, 93, 93, 0.28);
  text-align: center;
  animation: auth_statusIn__1C4lt 0.25s var(--ease-out);
}

/* ── Subtle text link (e.g., "שכחתי סיסמה") ────────────────────────────── */
.auth_textLink__9QjIF {
  background: transparent;
  border: 0;
  padding: 0;
  color: var(--acc);
  font-family: var(--font-h);
  font-size: clamp(12px, 2.6vmin, 14px);
  font-weight: 600;
  cursor: pointer;
  text-decoration: none;
  align-self: flex-start;
  -webkit-tap-highlight-color: transparent;
}

.auth_textLink__9QjIF:hover {
  text-decoration: underline;
}

/* ── Mobile compression for phone row ───────────────────────────────────── */
@media (max-width: 360px) {
  .auth_countrySelect__8cKyN {
    font-size: 12px;
    -webkit-padding-end: 24px;
            padding-inline-end: 24px;
    -webkit-padding-start: 8px;
            padding-inline-start: 8px;
    max-width: 46%;
  }
}

/*!***************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[14].oneOf[5].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[14].oneOf[5].use[3]!./src/app/components/HomeDashboard.module.css ***!
  \***************************************************************************************************************************************************************************************************************************************************************************************/
.HomeDashboard_shell__S7crQ {
  width: 100%;
  max-width: 100vw;
  min-height: calc(100dvh - 64px - env(safe-area-inset-top, 0px));
  padding: clamp(16px, 4vw, 40px) clamp(16px, 4vw, 40px) calc(92px + env(safe-area-inset-bottom, 0px));
  overflow-x: hidden;
  background:
    radial-gradient(circle at 15% 10%, rgba(79, 172, 254, 0.14), transparent 28%),
    radial-gradient(circle at 85% 18%, rgba(142, 84, 233, 0.12), transparent 30%),
    var(--bg);
}

.HomeDashboard_categoryScroller___yYKP {
  display: flex;
  gap: 8px;
  overflow-x: auto;
  padding: 2px 2px 6px;
  scrollbar-width: none;
}

.HomeDashboard_categoryScroller___yYKP::-webkit-scrollbar {
  display: none;
}

.HomeDashboard_categoryChip__3KrRo,
.HomeDashboard_categoryActive__Ww0G0 {
  flex: 0 0 auto;
  border: 1px solid var(--border);
  border-radius: 999px;
  padding: 10px 14px;
  font-family: var(--font-h);
  font-weight: 900;
  font-size: 13px;
  cursor: pointer;
}

.HomeDashboard_categoryChip__3KrRo {
  color: var(--txt2);
  background: color-mix(in srgb, var(--surf) 78%, transparent);
}

.HomeDashboard_categoryActive__Ww0G0 {
  color: #fff;
  background: var(--cta-grad);
}

.HomeDashboard_hero__dqzrZ,
.HomeDashboard_discoveryGrid__NMaTf,
.HomeDashboard_mapFilterBlock__TvdXb,
.HomeDashboard_panel__QV5WC {
  width: 100%;
  max-width: var(--app-container-max);
  margin-inline: auto;
  min-width: 0;
}

.HomeDashboard_hero__dqzrZ {
  margin-bottom: clamp(18px, 4vw, 32px);
  overflow-wrap: anywhere;
}

.HomeDashboard_eyebrow__jhqAy {
  margin: 0 0 8px;
  color: var(--acc-text);
  font-size: 13px;
  font-weight: 800;
}

.HomeDashboard_title__M1DD8 {
  max-width: min(760px, 100%);
  margin: 0;
  color: var(--txt);
  font-size: clamp(30px, 5vw, 58px);
  line-height: 1.02;
  letter-spacing: -0.045em;
}

.HomeDashboard_subtitle__Wjt_K {
  max-width: min(620px, 100%);
  margin: 14px 0 0;
  color: var(--txt2);
  line-height: 1.6;
}

.HomeDashboard_discoveryGrid__NMaTf {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(280px, 0.65fr);
  grid-gap: clamp(14px, 2vw, 22px);
  gap: clamp(14px, 2vw, 22px);
  align-items: start;
  margin-bottom: clamp(14px, 3vw, 22px);
}

.HomeDashboard_mapFilterBlock__TvdXb {
  display: grid;
  grid-gap: 0;
  gap: 0;
  margin-bottom: clamp(14px, 3vw, 22px);
  border: 1px solid var(--glass-border);
  border-radius: var(--r-lg);
  background: color-mix(in srgb, var(--surf) 78%, var(--bg));
  box-shadow: var(--shadow-md);
  overflow: hidden;
}

.HomeDashboard_panel__QV5WC,
.HomeDashboard_mapPanel__1_EqI,
.HomeDashboard_businessModal__uI_6y {
  min-width: 0;
  max-width: 100%;
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding: clamp(16px, 3vw, 24px);
  border: 1px solid var(--glass-border);
  border-radius: var(--r-lg);
  background: var(--glass-bg);
  box-shadow: var(--shadow-md);
  -webkit-backdrop-filter: saturate(160%) blur(14px);
  backdrop-filter: saturate(160%) blur(14px);
}

.HomeDashboard_panel__QV5WC {
  max-width: var(--app-container-max);
}

.HomeDashboard_mapPanel__1_EqI {
  min-width: 0;
  overflow: hidden;
  padding: 0;
  gap: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.HomeDashboard_mapChrome__PyqtJ {
  padding: 0;
}

.HomeDashboard_attachedFilters__cHo7s {
  display: grid;
  grid-gap: 14px;
  gap: 14px;
  padding: 14px clamp(14px, 3vw, 22px) clamp(16px, 3vw, 24px);
  border-top: 1px solid var(--glass-border);
  background: color-mix(in srgb, var(--surf2) 72%, var(--bg));
}

.HomeDashboard_filterColumn__kvIHL {
  min-width: 0;
  display: grid;
  grid-gap: 14px;
  gap: 14px;
}

.HomeDashboard_storyPanel__sBmZq,
.HomeDashboard_filterPanel__mJiw6 {
  min-width: 0;
  border: 1px solid var(--glass-border);
  border-radius: var(--r-lg);
  background: var(--glass-bg);
  box-shadow: var(--shadow-md);
  padding: 16px;
  -webkit-backdrop-filter: saturate(160%) blur(14px);
  backdrop-filter: saturate(160%) blur(14px);
}

.HomeDashboard_filterHeader__u0jjz {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin-bottom: 12px;
}

.HomeDashboard_filterHeader__u0jjz h2 {
  margin: 0;
  color: var(--txt);
  font-size: 20px;
  letter-spacing: -0.02em;
}

.HomeDashboard_filterHeader__u0jjz {
  align-items: flex-start;
}

.HomeDashboard_filterHeader__u0jjz p {
  margin: 4px 0 0;
  color: var(--txt2);
  font-size: 13px;
}

.HomeDashboard_sectionHeader__89Z_X {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  min-width: 0;
}

.HomeDashboard_sectionHeader__89Z_X > div {
  min-width: 0;
}

.HomeDashboard_sectionHeader__89Z_X h2 {
  margin: 0;
  color: var(--txt);
  font-size: clamp(20px, 3vw, 28px);
  letter-spacing: -0.02em;
}

.HomeDashboard_sectionHeader__89Z_X p,
.HomeDashboard_statusText__e_Xaf {
  margin: 4px 0 0;
  color: var(--txt2);
  line-height: 1.55;
}

.HomeDashboard_filters__N_ERd,
.HomeDashboard_formGrid__TB8zM {
  display: grid;
  grid-gap: 12px;
  gap: 12px;
}

.HomeDashboard_filters__N_ERd {
  gap: 14px;
}

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

.HomeDashboard_field__38hdZ {
  display: flex;
  flex-direction: column;
  gap: 7px;
  color: var(--txt2);
  font-size: 13px;
  font-weight: 700;
}

.HomeDashboard_field__38hdZ input,
.HomeDashboard_field__38hdZ select,
.HomeDashboard_field__38hdZ textarea {
  min-width: 0;
  width: 100%;
  border: 1px solid var(--border);
  border-radius: var(--r-sm);
  background: var(--surf);
  color: var(--txt);
  font-family: var(--font-h);
  font-size: 16px;
  padding: 12px 14px;
  outline: none;
  transition: border-color 0.15s ease, box-shadow 0.15s ease, background-color 0.15s ease;
}

.HomeDashboard_field__38hdZ textarea {
  resize: vertical;
}

.HomeDashboard_field__38hdZ input:focus,
.HomeDashboard_field__38hdZ select:focus,
.HomeDashboard_field__38hdZ textarea:focus {
  border-color: var(--acc);
  background: var(--surf2);
  box-shadow: 0 0 0 3px var(--acc-dim);
}

.HomeDashboard_field__38hdZ input[type='range'] {
  padding: 0;
  accent-color: var(--acc);
}

.HomeDashboard_field__38hdZ strong {
  color: var(--txt3);
  font-size: 12px;
}

.HomeDashboard_checkRow__gCtWf {
  min-height: 42px;
  display: flex;
  align-items: center;
  gap: 10px;
  color: var(--txt);
  font-weight: 800;
}

.HomeDashboard_checkRow__gCtWf input {
  width: 18px;
  height: 18px;
  accent-color: var(--acc);
}

.HomeDashboard_primaryBtn__DbePp,
.HomeDashboard_secondaryBtn__cW4o_,
.HomeDashboard_iconBtn__C_y2N {
  border-radius: 999px;
  font-family: var(--font-h);
  font-weight: 900;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  transition: transform 0.12s ease, box-shadow 0.15s ease, background-color 0.15s ease;
}

.HomeDashboard_primaryBtn__DbePp,
.HomeDashboard_secondaryBtn__cW4o_ {
  padding: 11px 16px;
}

.HomeDashboard_primaryBtn__DbePp {
  border: 0;
  color: #fff;
  background: var(--cta-grad);
  box-shadow: var(--cta-glow);
}

.HomeDashboard_secondaryBtn__cW4o_,
.HomeDashboard_iconBtn__C_y2N {
  color: var(--txt);
  background: var(--surf);
  border: 1px solid var(--border2);
}

.HomeDashboard_iconBtn__C_y2N {
  width: 38px;
  height: 38px;
  font-size: 24px;
  line-height: 1;
}

.HomeDashboard_primaryBtn__DbePp:disabled {
  opacity: 0.5;
  cursor: not-allowed;
  box-shadow: none;
}

.HomeDashboard_primaryBtn__DbePp:active,
.HomeDashboard_secondaryBtn__cW4o_:active,
.HomeDashboard_iconBtn__C_y2N:active {
  transform: scale(var(--press-scale));
}

.HomeDashboard_map__fj81u,
.HomeDashboard_mapLoading__CPm8G {
  width: 100%;
  max-width: 100%;
  min-height: min(62dvh, 560px);
  overflow: hidden;
  border-radius: 0;
  border: 0;
  background: var(--surf);
}

.HomeDashboard_mapFrame__ix11x {
  position: relative;
  width: 100%;
  max-width: 100%;
}

.HomeDashboard_mapAddressOverlay__33tYw {
  position: absolute;
  z-index: 500;
  inset-inline: 14px;
  top: 14px;
  max-width: min(520px, calc(100% - 28px));
  margin-inline: auto;
  padding: 10px 14px;
  border: 1px solid var(--glass-border);
  border-radius: var(--r);
  background: color-mix(in srgb, var(--surf) 90%, transparent);
  color: var(--txt);
  -webkit-backdrop-filter: saturate(160%) blur(14px);
  backdrop-filter: saturate(160%) blur(14px);
  pointer-events: none;
  text-align: center;
}

.HomeDashboard_mapAddressOverlay__33tYw span {
  display: block;
  color: var(--txt3);
  font-size: 11px;
  font-weight: 900;
}

.HomeDashboard_mapAddressOverlay__33tYw strong {
  display: block;
  margin-top: 2px;
  font-size: 13px;
  line-height: 1.35;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.HomeDashboard_mapLoading__CPm8G {
  display: grid;
  place-items: center;
  align-content: center;
  grid-gap: 8px;
  gap: 8px;
  color: var(--txt2);
  font-weight: 800;
  text-align: center;
}

.HomeDashboard_mapLoading__CPm8G strong {
  color: var(--txt);
}

.HomeDashboard_mapLoading__CPm8G span {
  color: var(--txt3);
}

.HomeDashboard_userMapMarker__yAIRV,
.HomeDashboard_businessMapMarker__5LJFd {
  border-radius: 50%;
}

.HomeDashboard_userMapMarker__yAIRV {
  background: var(--acc);
  border: 4px solid #fff;
}

.HomeDashboard_userMapMarker__yAIRV span {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 50%;
}

.HomeDashboard_businessMapMarker__5LJFd {
  display: grid;
  place-items: center;
  overflow: hidden;
  background: var(--cta-grad);
  color: #fff;
  border: 3px solid var(--surf);
  font-family: var(--font-h);
  font-size: 20px;
  font-weight: 900;
}

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

.HomeDashboard_markerUnavailable__wiPPA {
  filter: grayscale(0.8);
  opacity: 0.72;
}

.HomeDashboard_markerAvailable__zFkcP {
  opacity: 1;
}

.HomeDashboard_mapPopup__DhO0u {
  display: flex;
  flex-direction: column;
  gap: 4px;
  direction: rtl;
  text-align: right;
  font-family: var(--font-h);
}

.HomeDashboard_mapPopup__DhO0u a {
  color: var(--acc-text);
  font-weight: 800;
  text-decoration: none;
}

.HomeDashboard_cards__DRhh4 {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.HomeDashboard_businessCard__0J_4m {
  display: flex;
  gap: 14px;
  padding: 14px;
  border: 1px solid var(--border);
  border-radius: var(--r);
  background: color-mix(in srgb, var(--surf) 82%, transparent);
  min-width: 0;
  max-width: 100%;
}

.HomeDashboard_businessAvatar__nM8IR {
  flex: 0 0 auto;
  width: 54px;
  height: 54px;
  border-radius: 16px;
  display: grid;
  place-items: center;
  object-fit: cover;
  background: var(--cta-grad);
  color: #fff;
  font-size: 22px;
  font-weight: 900;
  box-shadow: var(--shadow-sm);
}

.HomeDashboard_businessBody__AeLwq {
  min-width: 0;
  flex: 1 1;
  overflow: hidden;
}

.HomeDashboard_businessTop__y3SkG {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 10px;
}

.HomeDashboard_businessTop__y3SkG h3 {
  margin: 0;
  color: var(--txt);
  font-size: 17px;
  letter-spacing: -0.015em;
}

.HomeDashboard_businessTop__y3SkG p,
.HomeDashboard_description__A_JoX {
  margin: 4px 0 0;
  color: var(--txt2);
  line-height: 1.45;
}

.HomeDashboard_description__A_JoX {
  margin-top: 10px;
}

.HomeDashboard_availableBadge__7i2IH,
.HomeDashboard_unavailableBadge__gEZPs {
  flex-shrink: 0;
  border-radius: 999px;
  padding: 7px 10px;
  font-size: 12px;
  font-weight: 900;
}

.HomeDashboard_availableBadge__7i2IH {
  color: var(--ok);
  background: rgba(62, 207, 142, 0.12);
  border: 1px solid rgba(62, 207, 142, 0.22);
}

.HomeDashboard_unavailableBadge__gEZPs {
  color: var(--txt3);
  background: var(--surf2);
  border: 1px solid var(--border2);
}

.HomeDashboard_metaLine__yOQd9 {
  margin-top: 12px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
  color: var(--txt3);
  font-size: 13px;
  overflow-wrap: anywhere;
}

.HomeDashboard_metaLine__yOQd9 a {
  color: var(--acc-text);
  text-decoration: none;
}

.HomeDashboard_emptyState__WwODm {
  margin: 0;
  padding: 18px;
  border: 1px dashed var(--border2);
  border-radius: var(--r);
  color: var(--txt2);
  text-align: center;
  line-height: 1.55;
}

.HomeDashboard_featurePanel__4OtnM {
  width: min(720px, 100%);
  max-width: 100%;
  margin: 0 auto;
  min-height: 460px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 14px;
  text-align: center;
  padding: clamp(22px, 5vw, 44px);
  border: 1px solid var(--glass-border);
  border-radius: var(--r-lg);
  background: var(--glass-bg);
  box-shadow: var(--shadow-md);
}

.HomeDashboard_featurePanel__4OtnM h1 {
  margin: 0;
  font-size: clamp(28px, 5vw, 48px);
  letter-spacing: -0.04em;
}

.HomeDashboard_featurePanel__4OtnM p {
  max-width: 520px;
  margin: 0;
  color: var(--txt2);
  line-height: 1.6;
}

.HomeDashboard_orderTabs__pbqvj {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}

.HomeDashboard_orderTabs__pbqvj span {
  border-radius: 999px;
  padding: 8px 12px;
  background: var(--surf);
  color: var(--txt2);
  font-weight: 900;
}

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

.HomeDashboard_profileStats__ml8cP div {
  padding: 16px;
  border-radius: var(--r);
  background: var(--surf);
  border: 1px solid var(--border);
}

.HomeDashboard_profileStats__ml8cP strong,
.HomeDashboard_profileStats__ml8cP span {
  display: block;
}

.HomeDashboard_profileStats__ml8cP strong {
  font-size: 28px;
}

.HomeDashboard_profileStats__ml8cP span {
  color: var(--txt2);
}

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

.HomeDashboard_profileGrid__yvYUJ button {
  min-height: 76px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  padding: 14px;
  border: 1px solid var(--border);
  border-radius: var(--r);
  background: var(--surf);
  color: var(--txt);
  font-family: var(--font-h);
  text-align: start;
  cursor: pointer;
}

.HomeDashboard_profileGrid__yvYUJ span {
  color: var(--txt2);
  font-size: 13px;
}

.HomeDashboard_dangerBtn__H7g9m {
  align-self: flex-start;
  border: 1px solid rgba(232, 93, 93, 0.35);
  border-radius: 999px;
  padding: 10px 16px;
  background: rgba(232, 93, 93, 0.1);
  color: var(--danger);
  font-family: var(--font-h);
  font-weight: 900;
  cursor: pointer;
}

.HomeDashboard_bottomNav__LMU36 {
  position: fixed;
  z-index: 70;
  inset-inline: 0;
  bottom: 0;
  padding: 8px max(10px, env(safe-area-inset-left, 0px)) max(8px, env(safe-area-inset-bottom, 0px)) max(10px, env(safe-area-inset-right, 0px));
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  grid-gap: 6px;
  gap: 6px;
  background: var(--glass-bg);
  border-top: 1px solid var(--glass-border);
  -webkit-backdrop-filter: saturate(160%) blur(14px);
  backdrop-filter: saturate(160%) blur(14px);
}

.HomeDashboard_bottomNavItem__Iqjm_,
.HomeDashboard_bottomNavActive__aBqRi {
  min-height: 44px;
  min-width: 0;
  border: 0;
  border-radius: 999px;
  font-family: var(--font-h);
  font-size: 12px;
  font-weight: 900;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 0 8px;
}

.HomeDashboard_bottomNavItem__Iqjm_ {
  background: transparent;
  color: var(--txt2);
}

.HomeDashboard_bottomNavActive__aBqRi {
  background: var(--surf2);
  color: var(--txt);
}

.HomeDashboard_bottomNavIcon__QMBmt {
  width: 19px;
  height: 19px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.HomeDashboard_bottomNavIcon__QMBmt svg {
  width: 100%;
  height: 100%;
}

.HomeDashboard_bottomNavLabel__L4w1i {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.HomeDashboard_cookieBanner__s0Ag7 {
  position: fixed;
  z-index: 100;
  inset-inline: max(12px, env(safe-area-inset-left, 0px)) max(12px, env(safe-area-inset-right, 0px));
  bottom: calc(74px + env(safe-area-inset-bottom, 0px));
  width: min(680px, calc(100% - 24px));
  margin-inline: auto;
  display: flex;
  justify-content: space-between;
  gap: 14px;
  padding: 14px;
  border: 1px solid var(--glass-border);
  border-radius: var(--r);
  background: var(--surf);
  box-shadow: var(--shadow-md);
}

.HomeDashboard_cookieBanner__s0Ag7 strong {
  display: block;
  margin-bottom: 4px;
}

.HomeDashboard_cookieBanner__s0Ag7 p {
  margin: 0;
  color: var(--txt2);
  line-height: 1.45;
}

.HomeDashboard_cookieActions__VUWRf {
  display: flex;
  align-items: center;
  gap: 8px;
}

.HomeDashboard_modalBackdrop__IPYN7 {
  position: fixed;
  inset: 0;
  z-index: 80;
  display: grid;
  place-items: center;
  padding: 18px;
  background: rgba(0, 0, 0, 0.58);
}

.HomeDashboard_businessModal__uI_6y {
  width: min(880px, 100%);
  max-height: min(820px, calc(100dvh - 36px));
  overflow: auto;
}

.HomeDashboard_modalActions__WJfgd {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}

@media (max-width: 900px) {
  .HomeDashboard_discoveryGrid__NMaTf {
    grid-template-columns: 1fr;
  }

  .HomeDashboard_map__fj81u {
    min-height: 360px;
  }
}

@media (max-width: 760px) {
  .HomeDashboard_bottomNavLabel__L4w1i {
    display: none;
  }

  .HomeDashboard_bottomNavItem__Iqjm_,
  .HomeDashboard_bottomNavActive__aBqRi {
    padding: 0;
  }

  .HomeDashboard_bottomNavIcon__QMBmt {
    width: 22px;
    height: 22px;
  }
}

@media (max-width: 640px) {
  .HomeDashboard_shell__S7crQ {
    padding: 14px 14px calc(86px + env(safe-area-inset-bottom, 0px));
  }

  .HomeDashboard_sectionHeader__89Z_X,
  .HomeDashboard_businessTop__y3SkG {
    flex-direction: column;
  }

  .HomeDashboard_formGrid__TB8zM {
    grid-template-columns: 1fr;
  }

  .HomeDashboard_businessCard__0J_4m {
    padding: 12px;
    gap: 10px;
  }

  .HomeDashboard_map__fj81u {
    min-height: 320px;
  }

  .HomeDashboard_profileGrid__yvYUJ,
  .HomeDashboard_profileStats__ml8cP {
    grid-template-columns: 1fr;
  }

  .HomeDashboard_cookieBanner__s0Ag7 {
    flex-direction: column;
  }
}

/*!*************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[14].oneOf[5].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[14].oneOf[5].use[3]!./src/app/components/ThemeToggle.module.css ***!
  \*************************************************************************************************************************************************************************************************************************************************************************************/
/*
 * Dark/light toggle — supports two variants:
 *   .floating — fixed top-end corner (used on the auth screens).
 *   .inline   — flows inside its parent (used inside the NavBar).
 *
 * Both variants share the icon-stack cross-fade animation (sun in dark,
 * moon in light) driven off the parent `data-theme-state` attribute.
 */

.ThemeToggle_toggle__nzSr_ {
  display: grid;
  place-items: center;
  padding: 0;
  background: var(--glass-bg);
  border: 1px solid var(--glass-border);
  border-radius: 50%;
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  color: var(--txt);
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  box-shadow: var(--shadow-sm);
  transition:
    transform 0.2s var(--ease-out),
    background-color 0.2s ease,
    border-color 0.2s ease,
    box-shadow 0.2s ease,
    opacity 0.2s ease;
}

.ThemeToggle_toggle__nzSr_:hover {
  background: var(--surf2);
  border-color: var(--border2);
  box-shadow: var(--shadow-md);
}

.ThemeToggle_toggle__nzSr_:active {
  transform: scale(var(--press-scale));
}

.ThemeToggle_toggle__nzSr_:focus-visible {
  outline: none;
  border-color: var(--acc);
  box-shadow: 0 0 0 3px var(--acc-dim);
}

/* ── Floating variant ───────────────────────────────────────────────────── */
.ThemeToggle_floating__v8DdF {
  position: fixed;
  top: max(12px, env(safe-area-inset-top, 0px));
  inset-inline-end: max(12px, env(safe-area-inset-right, 0px));
  z-index: 80;
  width: clamp(38px, 8vmin, 44px);
  height: clamp(38px, 8vmin, 44px);
}

/* ── Inline (NavBar) variant ────────────────────────────────────────────── */
.ThemeToggle_inline__a3hIK {
  width: 38px;
  height: 38px;
}

/* ── Icon stack ─────────────────────────────────────────────────────────── */
.ThemeToggle_iconStack__MTFKj {
  position: relative;
  width: 56%;
  height: 56%;
  aspect-ratio: 1;
}

.ThemeToggle_icon__bOxOG {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  transition: opacity 0.32s var(--ease-out), transform 0.32s var(--ease-out);
}

.ThemeToggle_toggle__nzSr_[data-theme-state='dark'] .ThemeToggle_sun__p6_FR {
  opacity: 1;
  transform: rotate(0deg) scale(1);
}

.ThemeToggle_toggle__nzSr_[data-theme-state='dark'] .ThemeToggle_moon__YPuXH {
  opacity: 0;
  transform: rotate(-90deg) scale(0.55);
}

.ThemeToggle_toggle__nzSr_[data-theme-state='light'] .ThemeToggle_moon__YPuXH {
  opacity: 1;
  transform: rotate(0deg) scale(1);
}

.ThemeToggle_toggle__nzSr_[data-theme-state='light'] .ThemeToggle_sun__p6_FR {
  opacity: 0;
  transform: rotate(90deg) scale(0.55);
}

html[data-a11y-reduce-motion='1'] .ThemeToggle_icon__bOxOG {
  transition: none;
  transform: none !important;
}

/*!********************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[14].oneOf[5].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[14].oneOf[5].use[3]!./src/app/components/Navbar.module.css ***!
  \********************************************************************************************************************************************************************************************************************************************************************************/
/*
 * Modern glass NavBar. The brand is positioned independently from the side
 * controls so it stays visually centered on every viewport width.
 */

.Navbar_bar__RLdzy {
  position: fixed;
  top: 0;
  inset-inline-start: 0;
  inset-inline-end: 0;
  z-index: 60;
  height: calc(64px + env(safe-area-inset-top, 0px));
  padding-top: env(safe-area-inset-top, 0px);
  -webkit-padding-start: max(16px, env(safe-area-inset-left, 0px));
          padding-inline-start: max(16px, env(safe-area-inset-left, 0px));
  -webkit-padding-end: max(16px, env(safe-area-inset-right, 0px));
          padding-inline-end: max(16px, env(safe-area-inset-right, 0px));

  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: center;
  grid-gap: 12px;
  gap: 12px;

  background: var(--glass-bg);
  border-bottom: 1px solid var(--glass-border);
  -webkit-backdrop-filter: saturate(160%) blur(14px);
  backdrop-filter: saturate(160%) blur(14px);
}

/* ── Start zone (profile menu) ──────────────────────────────────────────── */
.Navbar_start__2V1zJ {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}

.Navbar_avatarBtn__Bupsa,
.Navbar_menuAvatar__8N91w {
  flex-shrink: 0;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: var(--cta-grad);
  color: #fff;
  font-family: var(--font-h);
  font-weight: 800;
  font-size: 14px;
  letter-spacing: -0.02em;
  box-shadow: var(--cta-glow);
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}

.Navbar_avatarBtn__Bupsa {
  border: 0;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  transition: box-shadow 0.15s ease, transform 0.12s ease, filter 0.15s ease;
}

.Navbar_avatarBtn__Bupsa:hover {
  filter: brightness(1.06);
}

.Navbar_avatarBtn__Bupsa:active {
  transform: scale(var(--press-scale));
}

.Navbar_avatarBtn__Bupsa:focus-visible,
.Navbar_menuItem__FR7ZJ:focus-visible,
.Navbar_brandBtn__YXV12:focus-visible {
  outline: 2px solid var(--acc);
  outline-offset: 3px;
}

.Navbar_avatarGuest__Xr0CH {
  background: var(--surf2);
  color: var(--txt2);
  box-shadow: none;
  border: 1px solid var(--border2);
}

.Navbar_userMenu__Ee840 {
  position: absolute;
  inset-block-start: calc(100% + 12px);
  inset-inline-start: 0;
  width: min(280px, calc(100vw - 24px));
  padding: 12px;
  border: 1px solid var(--glass-border);
  border-radius: var(--r-lg);
  background: var(--surf);
  background: color-mix(in srgb, var(--surf) 92%, transparent);
  box-shadow: var(--shadow-md);
  -webkit-backdrop-filter: saturate(160%) blur(18px);
  backdrop-filter: saturate(160%) blur(18px);
}

.Navbar_menuHeader__lh4T7 {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 4px 4px 10px;
}

.Navbar_menuAvatar__8N91w {
  width: 44px;
  height: 44px;
  font-size: 16px;
}

.Navbar_menuIdentity__qD44u {
  min-width: 0;
}

.Navbar_menuName__5dvYS {
  font-family: var(--font-h);
  font-size: 15px;
  font-weight: 700;
  color: var(--txt);
  line-height: 1.2;
  letter-spacing: -0.01em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.Navbar_menuMeta__omzNd {
  margin-top: 2px;
  font-family: var(--font-h);
  font-size: 12px;
  font-weight: 600;
  color: var(--txt3);
  line-height: 1.2;
}

.Navbar_menuDivider__BUDR4 {
  height: 1px;
  margin: 2px 0 8px;
  background: var(--border2);
}

.Navbar_menuItem__FR7ZJ {
  width: 100%;
  height: 42px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  padding: 0 12px;
  border: 0;
  border-radius: var(--r-sm);
  background: transparent;
  color: var(--txt);
  font-family: var(--font-h);
  font-size: 14px;
  font-weight: 700;
  text-align: start;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  transition: background-color 0.15s ease, color 0.15s ease, transform 0.12s ease;
}

.Navbar_menuSectionLabel__SIues {
  padding: 4px 12px 8px;
  color: var(--txt3);
  font-family: var(--font-h);
  font-size: 12px;
  font-weight: 800;
}

.Navbar_businessMenuItem__2r3rW {
  width: 100%;
  min-height: 48px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 8px 12px;
  border: 0;
  border-radius: var(--r-sm);
  background: transparent;
  color: var(--txt);
  font-family: var(--font-h);
  text-align: start;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}

.Navbar_businessMenuItem__2r3rW:hover {
  background: var(--surf2);
}

.Navbar_businessMenuItem__2r3rW span {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
  font-size: 14px;
  font-weight: 800;
}

.Navbar_businessMenuItem__2r3rW small {
  color: var(--txt3);
  font-size: 11px;
  font-weight: 700;
}

.Navbar_businessMenuItem__2r3rW strong {
  flex-shrink: 0;
  color: var(--acc-text);
  font-size: 11px;
}

.Navbar_menuItem__FR7ZJ:hover {
  background: var(--surf2);
}

.Navbar_menuItem__FR7ZJ:active {
  transform: scale(var(--press-scale));
}

.Navbar_menuItemDanger__VpkZS {
  color: var(--danger);
}

/* ── Center zone (brand) ────────────────────────────────────────────────── */
.Navbar_center__a_ZF_ {
  position: absolute;
  inset: env(safe-area-inset-top, 0px) 0 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
}

.Navbar_brandBtn__YXV12 {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: transparent;
  border: 0;
  padding: 6px 12px;
  cursor: pointer;
  border-radius: 999px;
  pointer-events: auto;
  transition: background-color 0.15s ease, transform 0.12s ease;
  -webkit-tap-highlight-color: transparent;
}

.Navbar_brandBtn__YXV12:hover {
  background: var(--surf2);
}

.Navbar_brandBtn__YXV12:active {
  transform: scale(var(--press-scale));
}

.Navbar_brandLogo__y_6MX {
  width: 32px;
  height: 32px;
  border-radius: 9px;
  display: grid;
  place-items: center;
  background: var(--cta-grad);
  color: #fff;
  font-family: var(--font-h);
  font-size: 17px;
  font-weight: 900;
  line-height: 1;
  filter: drop-shadow(0 4px 12px rgba(0, 0, 0, 0.3));
}

.Navbar_brandText___QXh7 {
  font-family: var(--font-h);
  font-size: 17px;
  font-weight: 800;
  letter-spacing: -0.025em;
  background: var(--cta-grad);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

/* ── End zone (controls) ────────────────────────────────────────────────── */
.Navbar_end__wb1o7 {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  gap: 8px;
  justify-content: flex-end;
}

.Navbar_hamburgerBtn___NDH_ {
  width: 38px;
  height: 38px;
  border: 1px solid var(--border2);
  border-radius: 50%;
  background: var(--surf);
  display: grid;
  place-content: center;
  grid-gap: 3px;
  gap: 3px;
  cursor: pointer;
}

.Navbar_hamburgerBtn___NDH_ span {
  width: 15px;
  height: 2px;
  border-radius: 999px;
  background: var(--txt);
}

.Navbar_drawerBackdrop__8grpZ {
  position: fixed;
  inset: 0;
  z-index: 90;
  background: rgba(0, 0, 0, 0.58);
  display: flex;
  justify-content: flex-end;
}

.Navbar_drawer__dlQkM {
  width: min(420px, 100%);
  height: 100%;
  overflow: auto;
  padding: max(18px, env(safe-area-inset-top, 0px)) 18px max(18px, env(safe-area-inset-bottom, 0px));
  background: var(--bg);
  -webkit-border-start: 1px solid var(--glass-border);
          border-inline-start: 1px solid var(--glass-border);
  color: var(--txt);
}

.Navbar_drawerHeader__RKzvn {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: flex-start;
  margin-bottom: 18px;
}

.Navbar_drawerHeader__RKzvn strong {
  display: block;
  font-size: 24px;
  letter-spacing: -0.03em;
}

.Navbar_drawerHeader__RKzvn p {
  margin: 4px 0 0;
  color: var(--txt2);
}

.Navbar_closeBtn__b6KLN {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  border: 1px solid var(--border2);
  background: var(--surf);
  color: var(--txt);
  font-size: 24px;
  cursor: pointer;
}

.Navbar_drawerSection__qXZzF {
  padding: 14px 0;
  border-top: 1px solid var(--border);
}

.Navbar_drawerSection__qXZzF h3 {
  margin: 0 0 10px;
  color: var(--txt3);
  font-size: 12px;
  font-weight: 900;
}

.Navbar_drawerRow__n_NGJ,
.Navbar_drawerToggle__t_BUB,
.Navbar_drawerAction__pTdKF {
  width: 100%;
  min-height: 48px;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  border-radius: var(--r-sm);
  background: var(--surf);
  border: 1px solid var(--border);
  color: var(--txt);
  font-family: var(--font-h);
  margin-bottom: 8px;
}

.Navbar_drawerRow__n_NGJ {
  justify-content: space-between;
}

.Navbar_drawerRow__n_NGJ span,
.Navbar_drawerToggle__t_BUB span,
.Navbar_drawerAction__pTdKF span {
  font-weight: 800;
}

.Navbar_drawerRow__n_NGJ strong,
.Navbar_drawerAction__pTdKF small {
  color: var(--txt2);
  font-size: 12px;
  font-weight: 700;
}

.Navbar_drawerRow__n_NGJ button {
  border: 0;
  border-radius: 999px;
  padding: 7px 10px;
  background: var(--cta-grad);
  color: #fff;
  font-family: var(--font-h);
  font-weight: 900;
  cursor: pointer;
}

.Navbar_drawerToggle__t_BUB {
  justify-content: space-between;
}

.Navbar_drawerToggle__t_BUB input {
  width: 18px;
  height: 18px;
  accent-color: var(--acc);
}

.Navbar_drawerAction__pTdKF {
  flex-direction: column;
  align-items: flex-start;
  text-align: start;
  cursor: pointer;
}

.Navbar_drawerActionDanger__z2mXv span {
  color: var(--danger);
}

/* ── Below the bar — push page content down by navbar height ─────────────── */
.Navbar_barSpacer__6XkMH {
  height: calc(64px + env(safe-area-inset-top, 0px));
  flex-shrink: 0;
}

/* ── Mobile compression ─────────────────────────────────────────────────── */
@media (max-width: 560px) {
  .Navbar_bar__RLdzy {
    gap: 8px;
    -webkit-padding-start: max(12px, env(safe-area-inset-left, 0px));
            padding-inline-start: max(12px, env(safe-area-inset-left, 0px));
    -webkit-padding-end: max(12px, env(safe-area-inset-right, 0px));
            padding-inline-end: max(12px, env(safe-area-inset-right, 0px));
  }

  .Navbar_brandText___QXh7 {
    font-size: 16px;
  }

  .Navbar_userMenu__Ee840 {
    inset-inline-start: 0;
  }
}

@media (max-width: 360px) {
  .Navbar_brandBtn__YXV12 {
    gap: 6px;
    padding-inline: 8px;
  }

  .Navbar_brandText___QXh7 {
    display: none;
  }
}

