:root {
  --accent: #0284c7;
  --accent-hover: #0369a1;
  --accent-rgb: 2, 132, 199;
  --font: "Poppins", Arial, sans-serif;
  --brand: "Plus Jakarta Sans", var(--font);
  --display: "Cormorant Garamond", Georgia, serif;
  --navy: #0b1f33;
  --navy-rgb: 11, 31, 51;
  --blue: #16324a;
  --blue-dark: #071523;
  --gold: #38bdf8;
  --gold-hover: #7dd3fc;
  --gold-rgb: 56, 189, 248;
  --gold-ink: #075985;
  --cream: #eef6fb;
  --ink: #0b1f33;
  --muted: #5b6b7c;
  --line: #d5e3ee;
  --white: #fff;
  --bg: #f3f8fb;
  --ok: #1f6b45;
  --err: #b42318;
  --warn: #9a6700;
  --star: #eab308;
  --star-off: #c5d4e0;
  --shadow: 0 10px 32px rgba(11, 31, 51, 0.08);
  --wrap: 1200px;
  --gutter: 32px;
  --radius: 8px;
  --control: 50px;
}

* { box-sizing: border-box; margin: 0; padding: 0; }
html {
  scrollbar-gutter: stable;
  overflow-y: scroll;
  overflow-x: clip;
  scroll-behavior: auto;
}
body {
  font-family: var(--font);
  color: var(--ink);
  background: var(--white);
  line-height: 1.65;
  font-weight: 400;
  overflow-x: clip;
  overflow-anchor: none;
}
html.is-scroll-locked {
  overflow: hidden !important;
}
html.is-scroll-locked body {
  overflow: hidden !important;
  padding-right: var(--lock-pad, 0px);
}
h1, h2, h3, h4, .brand, button, input, select, textarea {
  font-family: var(--font);
}
img { max-width: 100%; display: block; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }

.wrap {
  width: min(var(--wrap), calc(100% - 2 * var(--gutter)));
  margin-inline: auto;
}

.site-header {
  position: sticky;
  top: 0;
  z-index: 40;
  overflow: visible;
  background: rgba(255, 255, 255, 0.72);
  border-bottom: 1px solid rgba(11, 31, 51, 0.06);
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.7) inset, 0 10px 32px rgba(var(--navy-rgb), 0.04);
  transition: background 0.35s ease, border-color 0.35s ease, box-shadow 0.35s ease;
}
.site-header::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  backdrop-filter: blur(22px) saturate(1.45);
  -webkit-backdrop-filter: blur(22px) saturate(1.45);
}
.site-header::after {
  content: "";
  position: absolute;
  left: 8%;
  right: 8%;
  bottom: -1px;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(var(--gold-rgb), 0.55), transparent);
  pointer-events: none;
  opacity: 0.85;
}
.site-header.scrolled {
  background: rgba(255, 255, 255, 0.88);
  border-bottom-color: rgba(11, 31, 51, 0.08);
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.8) inset, 0 16px 40px rgba(var(--navy-rgb), 0.08);
}
.site-header.is-home {
  position: fixed;
  left: 0;
  right: 0;
  background: linear-gradient(180deg, rgba(var(--navy-rgb), 0.42) 0%, rgba(var(--navy-rgb), 0.12) 62%, transparent 100%);
  border-bottom-color: transparent;
  box-shadow: none;
}
.site-header.is-home::before {
  display: none;
}
.site-header.is-home::after {
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.28), transparent);
  opacity: 0.7;
}
.site-header.is-home.scrolled {
  background: rgba(255, 255, 255, 0.88);
  border-bottom-color: rgba(11, 31, 51, 0.08);
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.8) inset, 0 16px 40px rgba(var(--navy-rgb), 0.08);
}
.site-header.is-home.scrolled::before {
  display: block;
}
.site-header.is-home.scrolled::after {
  background: linear-gradient(90deg, transparent, rgba(var(--gold-rgb), 0.55), transparent);
  opacity: 0.85;
}
.site-header.is-home + .flash { padding-top: 88px; }
.nav {
  min-height: 78px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  position: relative;
  z-index: 1;
}
.brand { display: flex; align-items: center; gap: 10px; font-weight: 600; font-size: 17px; letter-spacing: 0.04em; }
.brand img { width: 32px; height: 32px; }
.site-header .brand {
  gap: 12px;
  flex-shrink: 0;
  position: relative;
  z-index: 2;
}
.site-header .brand img {
  width: 36px;
  height: 36px;
  border-radius: 6px;
  box-shadow: 0 8px 18px rgba(var(--navy-rgb), 0.16);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.site-header .brand span {
  font-family: var(--brand);
  font-size: 15px;
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 1;
  color: var(--navy);
  transition: color 0.3s ease;
}
.foot-brand .brand span {
  font-family: var(--brand);
  font-size: 15px;
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 1;
}
.site-header .brand:hover img {
  transform: translateY(-1px);
  box-shadow: 0 10px 22px rgba(var(--navy-rgb), 0.22);
}
.brand-light { color: #fff; margin-bottom: 28px; }
.nav-links {
  display: flex;
  align-items: center;
  gap: 22px;
  flex: 1;
  justify-content: flex-end;
  min-width: 0;
}
.nav-menu {
  display: flex;
  align-items: center;
  gap: 2px;
}
.nav-links a:not(.btn) {
  position: relative;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0.04em;
  color: var(--muted);
  padding: 8px 12px;
  border-radius: 999px;
  transition: color 0.22s ease, background 0.22s ease;
}
.nav-links a:not(.btn)::after {
  content: "";
  position: absolute;
  left: 12px;
  right: 12px;
  bottom: 5px;
  height: 1.5px;
  border-radius: 2px;
  background: var(--gold);
  transform: scaleX(0);
  transform-origin: center;
  transition: transform 0.28s ease;
}
.nav-links a:not(.btn):hover { color: var(--navy); background: rgba(var(--navy-rgb), 0.04); }
.nav-links a:not(.btn).active {
  color: var(--navy);
  background: rgba(var(--navy-rgb), 0.045);
}
.nav-links a:not(.btn):hover::after,
.nav-links a:not(.btn).active::after {
  transform: scaleX(1);
}
.nav-cta {
  display: flex;
  align-items: center;
  gap: 8px;
  padding-left: 18px;
  margin-left: 4px;
  border-left: 1px solid rgba(var(--navy-rgb), 0.1);
  flex-shrink: 0;
}
.ico { display: inline-block; vertical-align: -3px; flex-shrink: 0; overflow: visible; }
.social { display: flex; align-items: center; gap: 8px; }
.social a {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  border: 1px solid rgba(255,255,255,0.18);
  background: rgba(255,255,255,0.08);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  line-height: 0;
}
.social a .ico { display: block; vertical-align: 0; }
.social a:hover { background: #fff; color: var(--navy); }

/* superseded by homepage overlay hero */

.btn-nav { flex-shrink: 0; }
.menu-btn {
  display: none;
  width: 42px;
  height: 42px;
  border: 1px solid rgba(var(--navy-rgb), 0.1);
  border-radius: 6px;
  background: rgba(255, 255, 255, 0.72);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9);
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 5px;
  cursor: pointer;
  flex-shrink: 0;
  transition: background 0.2s ease, border-color 0.2s ease;
}
.menu-btn span {
  width: 16px;
  height: 1.5px;
  background: var(--ink);
  display: block;
  border-radius: 2px;
  transition: transform 0.25s ease, opacity 0.2s ease, background 0.25s ease;
}
.menu-btn.is-open span:nth-child(1) { transform: translateY(6.5px) rotate(45deg); }
.menu-btn.is-open span:nth-child(2) { opacity: 0; }
.menu-btn.is-open span:nth-child(3) { transform: translateY(-6.5px) rotate(-45deg); }

.site-header.is-home:not(.scrolled) .brand span { color: #fff; }
.site-header.is-home:not(.scrolled) .brand img {
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.28), 0 10px 24px rgba(0, 0, 0, 0.28);
}
.site-header.is-home:not(.scrolled) .nav-links a:not(.btn) { color: rgba(255, 255, 255, 0.78); }
.site-header.is-home:not(.scrolled) .nav-links a:not(.btn):hover,
.site-header.is-home:not(.scrolled) .nav-links a:not(.btn).active {
  color: #fff;
  background: rgba(255, 255, 255, 0.1);
}
.site-header.is-home:not(.scrolled) .nav-cta {
  border-left-color: rgba(255, 255, 255, 0.16);
}
.site-header.is-home:not(.scrolled) .nav-links a.btn-outline {
  color: #fff;
  -webkit-text-fill-color: #fff;
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(255, 255, 255, 0.28);
  box-shadow: none;
}
.site-header.is-home:not(.scrolled) .nav-links a.btn-outline:hover {
  background: rgba(255, 255, 255, 0.16);
  border-color: rgba(255, 255, 255, 0.5);
  color: #fff;
  -webkit-text-fill-color: #fff;
}
.site-header.is-home:not(.scrolled) .nav-links a.btn-primary {
  background: #fff;
  color: var(--navy) !important;
  -webkit-text-fill-color: var(--navy);
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.18);
}
.site-header.is-home:not(.scrolled) .nav-links a.btn-primary:hover {
  background: var(--gold);
  color: var(--gold-ink) !important;
  -webkit-text-fill-color: var(--gold-ink);
  box-shadow: 0 12px 30px rgba(var(--gold-rgb), 0.35);
}
.site-header.is-home:not(.scrolled) .menu-btn {
  border-color: rgba(255, 255, 255, 0.22);
  background: rgba(255, 255, 255, 0.1);
  box-shadow: none;
}
.site-header.is-home:not(.scrolled) .menu-btn span { background: #fff; }

.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: var(--control);
  padding: 0 22px;
  border-radius: 6px;
  border: 1px solid transparent;
  font-weight: 500;
  font-size: 14px;
  letter-spacing: 0.01em;
  cursor: pointer;
  color: var(--navy);
  -webkit-text-fill-color: var(--navy);
  transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
  white-space: nowrap;
}
.btn .ico { vertical-align: 0; flex-shrink: 0; color: inherit; }
.btn-primary,
a.btn.btn-primary,
button.btn-primary,
.site-footer a.btn-primary {
  background: var(--navy);
  color: #fff !important;
  -webkit-text-fill-color: #fff;
}
.btn-primary:hover,
a.btn.btn-primary:hover {
  background: var(--blue);
  color: #fff !important;
  -webkit-text-fill-color: #fff;
}
.btn-outline {
  background: transparent;
  color: var(--navy);
  -webkit-text-fill-color: var(--navy);
  border-color: var(--navy);
}
.btn-outline:hover { background: #fff; }
.btn-ghost {
  background: #fff;
  color: var(--navy);
  -webkit-text-fill-color: var(--navy);
}
.btn-accent,
a.btn.btn-accent {
  background: var(--accent);
  color: #fff !important;
  -webkit-text-fill-color: #fff;
  border-color: var(--accent);
}
.btn-accent:hover,
a.btn.btn-accent:hover {
  background: var(--accent-hover);
  border-color: var(--accent-hover);
  color: #fff !important;
  -webkit-text-fill-color: #fff;
  transform: translateY(-1px);
  box-shadow: 0 8px 20px rgba(var(--accent-rgb), 0.32);
}
.btn-danger { background: #fff; color: var(--err); -webkit-text-fill-color: var(--err); border-color: #f2c0bc; }
.btn-sm { min-height: 42px; padding: 0 16px; font-size: 13px; gap: 6px; }
.btn:disabled,
button.btn:disabled {
  opacity: 0.45;
  cursor: not-allowed;
  box-shadow: none;
  transform: none;
}
.btn-gold,
a.btn.btn-gold,
button.btn-gold {
  background: var(--gold);
  color: var(--gold-ink) !important;
  -webkit-text-fill-color: var(--gold-ink);
  border-color: var(--gold);
  letter-spacing: 0.03em;
  font-weight: 600;
  box-shadow: 0 10px 28px rgba(var(--gold-rgb), 0.38);
}
.btn-gold:hover,
a.btn.btn-gold:hover {
  background: var(--gold-hover);
  border-color: var(--gold-hover);
  color: var(--gold-ink) !important;
  -webkit-text-fill-color: var(--gold-ink);
  transform: translateY(-1px);
}

.site-header .btn-nav {
  min-height: 42px;
  padding: 0 18px;
  border-radius: 999px;
  font-size: 13px;
}
.site-header .nav-links a.btn-outline {
  color: var(--navy);
  -webkit-text-fill-color: var(--navy);
  background: rgba(255, 255, 255, 0.55);
  border-color: rgba(var(--navy-rgb), 0.14);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9);
}
.site-header .nav-links a.btn-outline:hover {
  background: #fff;
  border-color: rgba(var(--navy-rgb), 0.22);
  transform: translateY(-1px);
}
.site-header .nav-links a.btn-primary {
  background: linear-gradient(180deg, #16324a 0%, #0b1f33 100%);
  border-color: transparent;
  box-shadow: 0 10px 22px rgba(var(--navy-rgb), 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.16);
}
.site-header .nav-links a.btn-primary:hover {
  background: linear-gradient(180deg, #1d4060 0%, #0f2740 100%);
  color: #fff !important;
  -webkit-text-fill-color: #fff;
  transform: translateY(-1px);
  box-shadow: 0 14px 28px rgba(var(--navy-rgb), 0.28), 0 0 0 3px rgba(var(--gold-rgb), 0.16);
}

@media (max-width: 1100px) {
  .site-header .nav { gap: 12px; min-height: 68px; }
  .site-header .brand span { font-size: 16px; }
  .site-header { overflow: visible; }
  .menu-btn { display: flex; margin-left: auto; }
  .nav-menu,
  .nav-cta {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 4px;
    margin: 0;
    padding: 0;
    border: 0;
  }
  .nav-cta {
    padding-top: 8px;
    margin-top: 4px;
    border-top: 1px solid rgba(var(--navy-rgb), 0.08);
  }
  .nav-links a:not(.btn) {
    padding: 12px 14px;
  }
  .nav-links a:not(.btn)::after { display: none; }
  .nav-links .btn { width: 100%; }
  .site-header.is-home:not(.scrolled) .nav-links a:not(.btn) { color: var(--muted); }
  .site-header.is-home:not(.scrolled) .nav-links a:not(.btn):hover,
  .site-header.is-home:not(.scrolled) .nav-links a:not(.btn).active {
    color: var(--navy);
    background: rgba(var(--navy-rgb), 0.045);
  }
  .site-header.is-home:not(.scrolled) .nav-links a.btn-outline {
    color: var(--navy);
    -webkit-text-fill-color: var(--navy);
    background: rgba(255, 255, 255, 0.7);
    border-color: rgba(var(--navy-rgb), 0.14);
  }
  .site-header.is-home:not(.scrolled) .nav-links a.btn-primary {
    background: linear-gradient(180deg, #16324a 0%, #0b1f33 100%);
    color: #fff !important;
    -webkit-text-fill-color: #fff;
  }
  .site-header.is-home:not(.scrolled) .nav-links a.btn-primary:hover {
    background: linear-gradient(180deg, #1d4060 0%, #0f2740 100%);
    color: #fff !important;
    -webkit-text-fill-color: #fff;
  }
}

.eyebrow {
  color: var(--accent);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  margin-bottom: 14px;
}
h1 { font-size: clamp(32px, 4.4vw, 48px); line-height: 1.18; font-weight: 600; letter-spacing: -0.03em; }
h1 em { font-style: italic; font-weight: 500; color: var(--blue); }
h2 { font-size: clamp(24px, 2.8vw, 32px); line-height: 1.28; font-weight: 600; letter-spacing: -0.02em; }
h3 { font-size: 17px; font-weight: 600; }
.lead { color: var(--muted); max-width: 44ch; margin: 16px 0 28px; font-size: 16px; font-weight: 400; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.hero-actions .btn-ghost-light {
  transition: background 0.25s ease, border-color 0.25s ease, transform 0.25s ease;
}
.hero-actions .btn-ghost-light:hover {
  transform: translateY(-2px);
  background: rgba(255, 255, 255, 0.14);
  border-color: var(--gold);
}

.search-lift { margin-top: -36px; position: relative; z-index: 5; }
.search-card,
.filter-bar {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: var(--shadow);
  padding: 16px 18px;
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  align-items: flex-end;
}
.search-card .field,
.filter-bar .field { flex: 1 1 160px; }
.filter-bar .field:first-child { flex: 1.5 1 220px; }
.field-submit { flex: 0 0 auto !important; }
.field-submit span { display: none; }
.search-card .btn,
.filter-bar .btn { width: auto; min-width: 128px; }

label.field { display: grid; gap: 7px; font-size: 12px; color: var(--muted); font-weight: 500; }
.form label.field:not(.checkbox-field):not(:has(> input[type="file"])),
.paytr-ayar label.field:not(.checkbox-field) {
  gap: 2px;
  padding: 8px 12px 6px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #fff;
  font-size: 11px;
  font-weight: 600;
  color: var(--muted);
}
.form label.field:not(.checkbox-field):not(:has(> input[type="file"])):focus-within,
.paytr-ayar label.field:not(.checkbox-field):focus-within {
  border-color: var(--accent);
  box-shadow: 0 0 0 3px rgba(var(--accent-rgb), 0.16);
}
.dash-admin .form label.field:not(.checkbox-field):not(:has(> input[type="file"])):focus-within,
.dash-admin .paytr-ayar label.field:not(.checkbox-field):focus-within {
  border-color: var(--admin-accent, var(--accent));
  box-shadow: 0 0 0 3px rgba(var(--accent-rgb), 0.16);
}
.dash-shop .form label.field:not(.checkbox-field):not(:has(> input[type="file"])):focus-within {
  border-color: var(--shop-accent, var(--accent));
  box-shadow: 0 0 0 3px rgba(2, 132, 199, 0.16);
}
.form label.field:not(.checkbox-field):not(:has(> input[type="file"])) > input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="file"]),
.form label.field:not(.checkbox-field):not(:has(> input[type="file"])) > select,
.form label.field:not(.checkbox-field):not(:has(> input[type="file"])) > textarea,
.form label.field:not(.checkbox-field):not(:has(> input[type="file"])) > .ss-wrap > .ss-input,
.paytr-ayar label.field:not(.checkbox-field) > input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="file"]),
.paytr-ayar label.field:not(.checkbox-field) > select,
.paytr-ayar label.field:not(.checkbox-field) > textarea {
  border: 0;
  padding: 2px 0 4px;
  min-height: 28px;
  background: transparent;
  border-radius: 0;
  box-shadow: none;
  font-size: 14px;
  font-weight: 500;
  color: var(--ink);
}
.form label.field:not(.checkbox-field):not(:has(> input[type="file"])) > .ss-wrap.ss-box > .ss-trigger {
  padding: 2px 22px 4px 0;
  min-height: 28px;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  background-color: transparent;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%235a6573' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 2px center;
  background-size: 12px 8px;
  font-size: 14px;
  font-weight: 500;
  color: var(--ink);
}
.form label.field:not(.checkbox-field):not(:has(> input[type="file"])) > textarea,
.paytr-ayar label.field:not(.checkbox-field) > textarea {
  min-height: 88px;
  resize: vertical;
}
.form label.field:not(.checkbox-field):not(:has(> input[type="file"])) > input:focus,
.form label.field:not(.checkbox-field):not(:has(> input[type="file"])) > select:focus,
.form label.field:not(.checkbox-field):not(:has(> input[type="file"])) > textarea:focus,
.form label.field:not(.checkbox-field):not(:has(> input[type="file"])) > .ss-wrap > .ss-input:focus,
.form label.field:not(.checkbox-field):not(:has(> input[type="file"])) > .ss-wrap > .ss-trigger:focus,
.paytr-ayar label.field:not(.checkbox-field) > input:focus,
.paytr-ayar label.field:not(.checkbox-field) > select:focus,
.paytr-ayar label.field:not(.checkbox-field) > textarea:focus,
.dash-admin .form label.field:not(.checkbox-field):not(:has(> input[type="file"])) > input:focus,
.dash-admin .form label.field:not(.checkbox-field):not(:has(> input[type="file"])) > select:focus,
.dash-admin .form label.field:not(.checkbox-field):not(:has(> input[type="file"])) > textarea:focus,
.dash-shop .form label.field:not(.checkbox-field):not(:has(> input[type="file"])) > input:focus,
.dash-shop .form label.field:not(.checkbox-field):not(:has(> input[type="file"])) > select:focus,
.dash-shop .form label.field:not(.checkbox-field):not(:has(> input[type="file"])) > textarea:focus {
  border-color: transparent;
  box-shadow: none;
}
input, select, textarea {
  width: 100%;
  min-height: var(--control);
  border: 1px solid var(--line);
  border-radius: 6px;
  padding: 12px 14px;
  background: #fff;
  outline: none;
  color: var(--ink);
}
input[type="radio"],
input[type="checkbox"] {
  width: auto;
  min-width: 0;
  min-height: 0;
  height: auto;
  padding: 0;
}
textarea { min-height: 110px; resize: vertical; }
input:focus, select:focus, textarea:focus {
  border-color: var(--accent);
  box-shadow: 0 0 0 3px rgba(var(--accent-rgb), 0.16);
}
.password-field {
  position: relative;
  display: block;
  min-width: 0;
}
.form label.field > .password-field > input {
  width: 100%;
  border: 0;
  padding: 2px 78px 4px 0;
  min-height: 28px;
  background: transparent;
  border-radius: 0;
  box-shadow: none;
  font-size: 14px;
  font-weight: 500;
  color: var(--ink);
}
.form label.field > .password-field > input:focus {
  border-color: transparent;
  box-shadow: none;
}
.password-toggle {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  display: inline-flex;
  align-items: center;
  gap: 4px;
  margin: 0;
  padding: 4px 0 4px 6px;
  border: 0;
  background: transparent;
  color: var(--accent);
  font-size: 12px;
  font-weight: 600;
  line-height: 1;
  cursor: pointer;
}
.password-toggle:hover { color: var(--navy); }
.password-toggle .ico { flex-shrink: 0; }
input[type="radio"]:focus,
input[type="checkbox"]:focus {
  box-shadow: none;
}
.checkbox { display: flex; align-items: center; gap: 8px; min-height: auto; }
.checkbox input { width: auto; min-height: auto; }

.checks {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 14px;
}
.switch {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 32px;
  position: relative;
  cursor: pointer;
  font-size: 14px;
  color: var(--ink);
  user-select: none;
}
.switch input {
  position: absolute;
  opacity: 0;
  width: 1px !important;
  min-height: 0 !important;
  margin: 0;
  pointer-events: none;
}
.switch i {
  width: 44px;
  height: 24px;
  border-radius: 999px;
  background: #c5d4e0;
  position: relative;
  flex-shrink: 0;
  transition: background 0.2s ease;
}
.switch i::after {
  content: "";
  position: absolute;
  top: 3px;
  left: 3px;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 1px 4px rgba(var(--navy-rgb), 0.2);
  transition: transform 0.2s ease;
}
.switch input:checked + i { background: var(--navy); }
.switch input:checked + i::after { transform: translateX(20px); }
.switch input:focus-visible + i { box-shadow: 0 0 0 3px rgba(var(--accent-rgb), 0.18); }
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.hours-form { max-width: 1180px; }
.hours-head-row {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px 16px;
  margin-bottom: 14px;
}
.hours-head-row .field-label { margin-bottom: 4px; }
.hours-hint {
  margin: 0;
  font-size: 13px;
  max-width: 48ch;
}
.hours-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.hours-actions .btn { min-height: 36px; padding: 0 12px; font-size: 12px; }
.hours-interval {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 16px;
  margin: 0 0 16px;
  min-width: 0;
}
.hours-interval .field-label {
  margin: 0;
}
.hours-interval-picks {
  display: inline-flex;
  border: 1px solid var(--line);
  border-radius: 6px;
  overflow: hidden;
  background: #fff;
}
.hours-interval-picks label {
  position: relative;
  margin: 0;
  cursor: pointer;
}
.hours-interval-picks input {
  position: absolute;
  opacity: 0;
  width: 1px !important;
  min-height: 0 !important;
  pointer-events: none;
}
.hours-interval-picks span {
  display: block;
  padding: 8px 14px;
  font-size: 13px;
  font-weight: 600;
  color: var(--muted);
  background: #fff;
  transition: background 0.15s ease, color 0.15s ease;
}
.hours-interval-picks label + label span {
  border-left: 1px solid var(--line);
}
.hours-interval-picks input:checked + span {
  background: var(--navy);
  color: #fff;
}
.hours-interval-picks input:focus-visible + span {
  box-shadow: inset 0 0 0 2px rgba(var(--accent-rgb), 0.35);
}
.hours-interval-note {
  margin: 0;
  font-size: 12px;
  flex: 1 1 100%;
}
.profile-hours-interval {
  margin: 0 0 10px;
  font-size: 13px;
}
.hours-days {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin: 0 0 16px;
  border: 0;
  background: transparent;
  overflow: visible;
}
.hours-cols { display: none; }
.hours-day {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  gap: 10px 8px;
  align-items: center;
  padding: 14px;
  border: 1px solid var(--line, var(--line));
  border-radius: 6px;
  background: #fff;
}
.hours-day > .switch {
  grid-column: 1 / -1;
  margin: 0;
  min-width: 0;
}
.hours-day .switch span {
  font-weight: 600;
  color: var(--ink, var(--navy));
}
.hours-day input[type="time"],
.hours-day select {
  width: 100%;
  max-width: 100%;
  min-height: 40px;
  padding: 6px 8px;
  font-variant-numeric: tabular-nums;
}
.hours-sep {
  color: var(--muted);
  font-weight: 600;
  text-align: center;
}
.hours-day.is-closed input[type="time"],
.hours-day.is-closed select {
  opacity: 0.45;
  pointer-events: none;
}
.hours-day.is-flash {
  background: rgba(var(--accent-rgb), 0.08);
  transition: background 0.35s ease;
}
@media (max-width: 1100px) {
  .hours-days { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
  .hours-days { grid-template-columns: 1fr; }
}
.dash-avaro .form-card { width: 100%; max-width: none; }
.ui-modal.profil-hesap-modal { z-index: 200; }
.ui-modal.magaza-git-modal { z-index: 220; }
.ui-modal-panel.magaza-git-panel {
  width: min(480px, 100%);
  padding: 20px 20px 16px;
}
.magaza-git-search {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 12px;
  padding: 0 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--cream);
  color: var(--muted);
}
.magaza-git-search .ico {
  flex: 0 0 16px;
  width: 16px;
  height: 16px;
  display: block;
}
.magaza-git-search input {
  flex: 1;
  min-width: 0;
  height: 40px;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
  font: inherit;
  font-size: 14px;
  color: var(--ink);
  outline: none;
}
.magaza-git-search input::placeholder { color: var(--muted); }
.magaza-git-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 8px;
  max-height: min(52vh, 420px);
  overflow: auto;
}
.magaza-git-card {
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr) 20px;
  align-items: center;
  gap: 12px;
  padding: 12px 14px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fff;
  color: inherit;
  text-decoration: none;
  transition: border-color .12s ease, background .12s ease, box-shadow .12s ease;
}
.magaza-git-card:hover,
.magaza-git-card:focus-visible {
  border-color: #38bdf8;
  background: #f0f9ff;
  box-shadow: 0 8px 20px rgba(2, 132, 199, 0.12);
  outline: none;
}
.magaza-git-ico {
  width: 40px;
  height: 40px;
  display: grid;
  place-items: center;
  border-radius: 10px;
  background: #e0f2fe;
  color: #0284c7;
  flex-shrink: 0;
}
.magaza-git-ico .ico {
  display: block;
  width: 18px;
  height: 18px;
}
.magaza-git-body {
  display: grid;
  gap: 3px;
  min-width: 0;
}
.magaza-git-body strong {
  font-size: 15px;
  letter-spacing: -0.02em;
  color: var(--navy);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.magaza-git-meta {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  min-width: 0;
  font-size: 12px;
  color: var(--muted);
}
.magaza-git-meta .ico {
  width: 12px;
  height: 12px;
  flex-shrink: 0;
}
.magaza-git-tags {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  margin-top: 2px;
}
.magaza-git-tags .muted { font-size: 12px; }
.magaza-git-go {
  color: #0284c7;
  display: grid;
  place-items: center;
}
.magaza-git-go .ico {
  display: block;
  width: 16px;
  height: 16px;
}
.magaza-git-card:hover .magaza-git-go { color: #0369a1; }
.magaza-git-empty {
  margin: 8px 0 0;
  text-align: center;
  font-size: 13px;
  color: var(--muted);
}
.magaza-git-actions {
  display: flex;
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid var(--line);
}
.magaza-git-actions .btn {
  width: 100%;
}
.magaza-git-actions .btn:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}
@media (max-width: 640px) {
  .ui-modal-panel.magaza-git-panel {
    width: 100%;
    max-height: min(88vh, 720px);
    padding: 16px 14px 14px;
  }
}
.ui-modal-panel.profil-modal-panel {
  width: min(720px, 100%);
  padding: 18px 18px 20px;
  background: var(--bg);
}
.profil-modal-panel .ui-modal-head {
  margin-bottom: 14px;
  padding: 0 4px;
}
.profil-modal-panel .ui-modal-head h2 {
  font-size: 18px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.profil-page {
  display: grid;
  gap: 16px;
  max-width: 640px;
}
.profil-modal-panel .profil-page {
  max-width: none;
}
.profil-page-card {
  display: grid;
  gap: 20px;
  padding: 22px 24px 24px;
}
.profil-page-card > .flash-inline {
  margin: 0;
}
.profil-photo {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 16px;
  align-items: center;
}
.profil-photo-avatar {
  position: relative;
  width: 72px;
  height: 72px;
}
.profil-page .user-form-photo-pick,
.profil-page .avatar-edit-preview,
.profil-page .avatar-edit-preview .avaro-avatar {
  width: 72px;
  height: 72px;
}
.profil-photo-meta {
  display: grid;
  gap: 8px;
  min-width: 0;
}
.profil-photo-meta > strong {
  font-size: 16px;
  font-weight: 650;
  color: var(--ink);
  overflow-wrap: anywhere;
}
.profil-photo-acts {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.profil-photo-acts .btn {
  width: auto;
  min-height: 34px;
  margin: 0;
  padding: 0 12px;
}
.profil-info {
  padding-top: 20px;
  border-top: 1px solid var(--shop-line, var(--line));
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}
.profil-info > .flash-inline,
.profil-info > .profil-field-wide,
.profil-info > .btn {
  grid-column: 1 / -1;
}
.profil-pass {
  gap: 16px;
  scroll-margin-top: 24px;
}
.profil-page-card > h3,
.profil-pass > h3 {
  margin: 0;
}
.profil-pass-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}
.profil-page .btn-primary {
  width: auto;
  justify-self: start;
  min-width: 132px;
}
@media (max-width: 640px) {
  .profil-info,
  .profil-pass-grid {
    grid-template-columns: 1fr;
  }
}

.section { padding: 80px 0; }
.page-body { padding: 28px 0 80px; }
.section-head { max-width: 540px; margin-bottom: 36px; }
.section-head.center { text-align: center; margin-inline: auto; }
.section-head.split {
  max-width: none;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
}
.section-head.split > div { max-width: 540px; min-width: 0; }
.section-head.split .btn { flex-shrink: 0; margin-bottom: 2px; }
.section-head h2 {
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-size: clamp(22px, 2.4vw, 28px);
}
.section-head p { color: var(--muted); margin-top: 10px; }
.section.alt { background: var(--bg); }
.section-actions { margin-top: 28px; }

.stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1px;
  background: var(--line);
  border: 1px solid var(--line);
  border-radius: 8px;
  overflow: hidden;
}
.stats-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.stat {
  background: #fff;
  padding: 26px 18px;
  text-align: left;
}
.stat b { display: block; font-size: 22px; color: var(--navy); font-weight: 600; line-height: 1.3; }
.stat span { color: var(--muted); font-size: 13px; }

.cards,
.steps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
  align-items: stretch;
}
.card, .step {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 24px;
  display: flex;
  flex-direction: column;
  height: 100%;
  transition: box-shadow 0.2s ease;
}
.card:hover { box-shadow: var(--shadow); }
.icon-box {
  width: 44px;
  height: 44px;
  border-radius: 6px;
  background: var(--cream);
  color: var(--navy);
  display: grid;
  place-items: center;
  margin-bottom: 16px;
}
.firma-card {
  position: relative;
  z-index: 0;
  padding: 0;
  overflow: hidden;
}
.firma-card:hover,
.firma-card:focus-within {
  z-index: 3;
  overflow: visible;
}
.firma-card .thumb { aspect-ratio: 16 / 10; background: var(--cream); position: relative; overflow: hidden; }
.firma-card .thumb img { display: block; width: 100%; height: 100%; object-fit: cover; }
.firma-card .body {
  padding: 18px 20px 20px;
  display: flex;
  flex-direction: column;
  flex: 1;
}
.firma-card .place,
.firma-card .hours {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  color: var(--muted);
}
.firma-card .place { margin-bottom: 6px; }
.firma-card-tag {
  display: inline-flex;
  align-items: center;
  margin-left: 8px;
  padding: 2px 8px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--accent);
  background: rgba(var(--navy-rgb), 0.06);
  border: 1px solid var(--line);
  vertical-align: 1px;
}
.firma-card .hours { margin: 10px 0 0; }
.firma-card .body > p:not(.place):not(.hours) { flex: 1; }
.firma-card .body > p.card-rating {
  flex: 0 0 auto;
  min-height: auto;
}
.firma-card .btn { margin-top: auto; }
.auth-panel .form { max-width: none; }
.auth-panel h1 { font-size: clamp(24px, 3vw, 30px); }
.auth-panel .lead { margin-bottom: 18px; }
.step-num {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.14em;
  color: var(--accent);
  margin-bottom: 10px;
}

.page-banner {
  position: relative;
  overflow: hidden;
  background: var(--navy);
  color: #fff;
  padding: 64px 0 72px;
}
.page-banner-bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.38;
}
.page-banner .wrap { position: relative; z-index: 1; }
.page-banner h1 {
  color: #fff;
  font-size: clamp(28px, 4vw, 40px);
  max-width: min(28ch, 100%);
}
.page-banner-rating {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  margin: 10px 0 4px;
  font-size: 15px;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.9);
}
.page-banner-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 16px;
  margin: 10px 0 4px;
}
.page-banner-meta .page-banner-rating { margin: 0; }
.page-banner-follow,
.page-banner-uye-no {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin: 0;
  font-size: 14px;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.88);
}
.page-banner-follow .ico,
.page-banner-uye-no .ico { color: var(--gold); }
.page-banner-uye-no span { letter-spacing: 0.02em; }
.page-banner-rating .star { color: rgba(255, 255, 255, 0.28); }
.page-banner-rating .star.is-on { color: var(--gold); }
.page-banner-rating .star.is-half .star-fill { color: var(--gold); }
.page-banner-rating.is-empty {
  font-weight: 500;
  color: rgba(255, 255, 255, 0.72);
}
.page-banner .lead {
  color: rgba(255, 255, 255, 0.82);
  margin-bottom: 0;
  max-width: min(64ch, 100%);
  line-height: 1.72;
}
.page-banner .eyebrow { color: var(--gold); }
.crumb { font-size: 13px; color: rgba(255,255,255,0.62); margin-bottom: 10px; }
.page-banner .crumb a {
  color: rgba(255, 255, 255, 0.78);
  text-decoration: none;
}
.page-banner .crumb a:hover { color: #fff; }
.crumb-sep { margin: 0 4px; opacity: 0.7; }

.firma-card .place a {
  color: inherit;
  text-decoration: none;
}
.firma-card .place a:hover { text-decoration: underline; }

.lokasyon-hizmetler {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 18px;
}
.lokasyon-hizmetler .lokasyon-ilce.is-on {
  background: var(--ink, #1b2430);
  color: #fff;
  border-color: transparent;
}

.page-body > .seo-faq {
  margin-top: 40px;
}
.seo-faq h2 {
  margin: 0 0 8px;
  font-size: 20px;
  color: var(--navy);
}
.seo-faq-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0 40px;
  align-items: start;
}
.seo-faq-col {
  min-width: 0;
}
.seo-faq details {
  border-bottom: 1px solid var(--line);
  padding: 14px 0;
}
.seo-faq summary {
  cursor: pointer;
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  font-weight: 600;
  color: var(--navy);
  font-size: 15px;
  line-height: 1.4;
}
.seo-faq summary::-webkit-details-marker { display: none; }
.seo-faq summary::after {
  content: "+";
  font-size: 18px;
  font-weight: 400;
  line-height: 1;
  color: var(--muted);
  flex-shrink: 0;
}
.seo-faq details[open] summary::after { content: "–"; }
.seo-faq details p {
  margin: 10px 0 2px;
  color: var(--muted);
  font-size: 14.5px;
  line-height: 1.6;
}
@media (max-width: 720px) {
  .page-body > .seo-faq {
    margin-top: 28px;
  }
  .seo-faq-grid {
    grid-template-columns: 1fr;
    gap: 0;
  }
}

.auth-scene {
  background: var(--cream);
  padding: 48px 0 80px;
}
.auth-split {
  display: grid;
  grid-template-columns: minmax(260px, 0.88fr) minmax(0, 1.12fr);
  gap: 24px;
  align-items: stretch;
}
.auth-visual {
  position: relative;
  min-height: 420px;
  border-radius: var(--radius);
  overflow: hidden;
  color: #fff;
  background: var(--navy);
}
.auth-visual img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.auth-visual .overlay {
  position: relative;
  z-index: 1;
  min-height: 100%;
  padding: 28px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  background: linear-gradient(180deg, transparent 30%, rgba(var(--navy-rgb),0.84));
}
.auth-visual h2 { color: #fff; margin: 8px 0; font-size: clamp(22px, 2.4vw, 28px); line-height: 1.25; font-weight: 600; }
.auth-visual p { color: rgba(255,255,255,0.84); }
.auth-visual .eyebrow { color: var(--gold); }
.auth-panel {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 32px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.auth-panel textarea {
  min-height: 88px;
}
.auth-panel .form > .btn-primary {
  margin-top: 4px;
}
.auth-legal {
  margin: 2px 0 0;
  font-size: 12.5px;
  line-height: 1.55;
  color: var(--muted);
}
.auth-legal a {
  color: var(--accent);
  text-decoration: underline;
  text-underline-offset: 2px;
}
.auth-legal a:hover {
  color: var(--accent-hover);
}

.field-label {
  margin: 0;
  font-size: 13px;
  font-weight: 600;
  color: var(--ink);
  letter-spacing: 0.01em;
}

.service-choose {
  display: grid;
  gap: 10px;
  padding-top: 4px;
}
.service-choose-head {
  display: grid;
  gap: 3px;
}
.service-choose-hint {
  margin: 0;
  font-size: 13px;
  line-height: 1.4;
}
.service-choose-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.service-choose-item {
  display: block;
  cursor: pointer;
  user-select: none;
  position: relative;
}
.service-choose-item input {
  position: absolute;
  opacity: 0;
  width: 1px !important;
  min-height: 0 !important;
  margin: 0;
  pointer-events: none;
}
.service-choose-card {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  min-height: 54px;
  height: 100%;
  padding: 10px 12px;
  background: var(--cream);
  border: 1px solid var(--line);
  border-radius: 6px;
  transition: border-color 0.18s ease, background 0.18s ease, box-shadow 0.18s ease;
}
.service-choose-icon {
  width: 32px;
  height: 32px;
  border-radius: 6px;
  background: #fff;
  border: 1px solid var(--line);
  color: var(--accent);
  display: grid;
  place-items: center;
  flex-shrink: 0;
}
.service-choose-icon .ico {
  width: 16px;
  height: 16px;
  display: block;
  vertical-align: 0;
}
.service-choose-name {
  font-size: 13px;
  font-weight: 600;
  color: var(--ink);
  line-height: 1.3;
  min-width: 0;
}
.service-choose-toggle {
  width: 40px;
  height: 22px;
  border-radius: 999px;
  background: #c5ced6;
  position: relative;
  flex-shrink: 0;
  transition: background 0.2s ease;
}
.service-choose-toggle i {
  position: absolute;
  top: 3px;
  left: 3px;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 1px 4px rgba(var(--navy-rgb), 0.2);
  transition: transform 0.2s ease;
}
.service-choose-item:hover .service-choose-card {
  border-color: #b8c4ce;
  background: #fff;
}
.service-choose-item input:checked + .service-choose-card {
  background: #fff;
  border-color: var(--accent);
  box-shadow: 0 0 0 3px rgba(var(--accent-rgb), 0.14);
}
.service-choose-item input:checked + .service-choose-card .service-choose-icon {
  background: rgba(var(--accent-rgb), 0.12);
  border-color: transparent;
}
.service-choose-item input:checked + .service-choose-card .service-choose-toggle {
  background: var(--accent);
}
.service-choose-item input:checked + .service-choose-card .service-choose-toggle i {
  transform: translateX(18px);
}
.service-choose-item input:focus-visible + .service-choose-card {
  box-shadow: 0 0 0 3px rgba(var(--accent-rgb), 0.22);
}

.profile-hero-wrap {
  grid-area: hero;
  position: relative;
  margin: 0;
  min-height: 320px;
  height: 100%;
  border-radius: var(--radius);
  overflow: hidden;
  border: 1px solid var(--line);
  background: var(--cream);
}
.profile-hero-wrap .profile-hero-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  min-height: 0;
  margin: 0;
  border-radius: 0;
  object-fit: cover;
}
.profile-hero-wrap .firma-badges {
  top: 14px;
  left: 14px;
}
.profile-hero-rating {
  position: absolute;
  right: 14px;
  bottom: 14px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  padding: 8px 12px 8px 11px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 8px 24px rgba(var(--navy-rgb), 0.18);
  backdrop-filter: blur(8px);
  font-size: 13px;
  font-weight: 700;
  line-height: 1;
  color: var(--navy);
  z-index: 2;
}
.profile-hero-rating .stars { gap: 3px; }
.profile-hero-rating .rating-count {
  min-width: 1.7em;
  min-height: 1.7em;
  padding: 2px 7px;
}
.profile-hero-follow {
  position: absolute;
  left: 14px;
  bottom: 14px;
  z-index: 2;
  max-width: calc(100% - 28px);
}
.profile-hero-follow .profile-follow-form,
.profile-hero-follow .profile-chip {
  max-width: 100%;
}
.profile-hero-follow .profile-chip {
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 8px 24px rgba(var(--navy-rgb), 0.18);
  backdrop-filter: blur(8px);
}
.profile-hero-follow .profile-chip:hover {
  background: #fff;
}
.profile-hero-follow .profile-chip.is-on {
  background: color-mix(in srgb, var(--accent) 12%, #fff);
}

.profile-hero-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: var(--radius);
  margin-bottom: 0;
}
.profile-hero-video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  background: #0b1220;
}
.profile-hero-video-btn {
  position: absolute;
  right: 14px;
  bottom: 14px;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 40px;
  padding: 8px 14px 8px 12px;
  border: 0;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.96);
  color: var(--navy);
  font: inherit;
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.16);
}
.profile-hero-video-btn:hover {
  background: #fff;
}
.profile-hero-video-ico {
  display: grid;
  place-items: center;
  width: 22px;
  height: 22px;
  color: var(--navy);
}
.profile-hero-video-ico .ico {
  display: block;
}
.firma-card-play {
  position: absolute;
  right: 12px;
  bottom: 12px;
  z-index: 2;
  width: 34px;
  height: 34px;
  border-radius: 999px;
  display: grid;
  place-items: center;
  background: rgba(15, 23, 42, 0.72);
  color: #fff;
  backdrop-filter: blur(8px);
  pointer-events: none;
}
.firma-card-play .ico {
  display: block;
  margin-left: 1px;
}
.firma-gorsel-pending {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 100%;
  height: 100%;
  min-height: 160px;
  padding: 20px;
  background:
    radial-gradient(120% 90% at 50% 0%, rgba(255, 255, 255, 0.62), transparent 58%),
    linear-gradient(165deg, #e8f1f7 0%, #d5e3ee 100%);
  color: var(--muted);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.01em;
  text-align: center;
  line-height: 1.35;
}
.firma-gorsel-pending .ico {
  width: 32px;
  height: 32px;
  color: var(--navy);
  opacity: 0.38;
}
.profile-hero-wrap.is-pending {
  background: #d5e3ee;
}
.profile-hero-wrap .firma-gorsel-pending {
  position: absolute;
  inset: 0;
  min-height: 0;
  margin: 0;
  border-radius: 0;
  font-size: 16px;
  gap: 12px;
}
.profile-hero-wrap .firma-gorsel-pending .ico {
  width: 40px;
  height: 40px;
}
.firma-card .thumb .firma-gorsel-pending {
  position: absolute;
  inset: 0;
  min-height: 0;
  font-size: 13px;
}

.profile-gallery {
  margin: 0 0 16px;
  padding: 18px 18px 16px;
}
.profile-gallery .profile-info-title {
  margin-bottom: 14px;
}
.profile-gallery-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}
.profile-gallery-grid a {
  display: block;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  border-radius: 6px;
  background: var(--cream);
}
.profile-gallery-grid img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media (max-width: 640px) {
  .profile-gallery-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.paket-avantaj {
  margin: 0 0 10px;
}
.paket-avantaj ul {
  margin: 4px 0 0 1.1em;
  padding: 0;
}

.reklam-buy {
  margin-top: 8px;
}
.reklam-cols {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  align-items: stretch;
}
.reklam-cols.reklam-cols-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.reklam-cols.reklam-cols-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.reklam-cols.reklam-cols-1,
.reklam-cols.is-single {
  grid-template-columns: minmax(0, 1fr);
  max-width: 520px;
}
.reklam-cols.reklam-cols-1 {
  max-width: none;
}
.reklam-col {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 6px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  min-width: 0;
  min-height: 0;
  height: 100%;
  box-shadow: var(--shadow);
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.reklam-col.is-target {
  border-color: var(--shop-accent, var(--accent));
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--shop-accent, var(--accent)) 22%, transparent);
}
.reklam-col-ozet {
  background: var(--cream);
}
.reklam-ozet-list {
  list-style: none;
  margin: 0;
  padding: 0 16px 8px;
  display: grid;
  gap: 12px;
  flex: 1;
}
.reklam-ozet-list li {
  display: grid;
  gap: 4px;
  padding: 12px;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 6px;
}
.reklam-ozet-list strong {
  font-size: 14px;
  color: var(--shop-ink, var(--navy));
}
.reklam-ozet-list span {
  font-size: 13px;
  color: var(--muted);
}
.reklam-ozet-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  font-weight: 600;
  color: var(--shop-accent, var(--accent));
  text-decoration: none;
  margin-top: 2px;
}
.reklam-ozet-link:hover {
  color: var(--navy);
}
.reklam-ozet-list li.is-reserved {
  background: #f3f5f7;
  border-style: dashed;
  opacity: 0.92;
}
.reklam-ozet-list li.is-reserved strong {
  color: var(--muted);
}
.reklam-sira-pick {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 12px 16px 0;
}
.reklam-sira-option {
  position: relative;
  cursor: pointer;
}
.reklam-sira-option input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.reklam-sira-option span {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  padding: 0 14px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #fff;
  font-size: 13px;
  font-weight: 600;
  color: var(--shop-ink, var(--navy));
  transition: border-color 0.15s ease, background 0.15s ease, color 0.15s ease;
}
.reklam-sira-option:hover span {
  border-color: var(--shop-accent, var(--accent));
}
.reklam-sira-option input:checked + span {
  border-color: var(--shop-accent, var(--accent));
  background: color-mix(in srgb, var(--shop-accent, var(--accent)) 12%, #fff);
  color: var(--shop-accent, var(--accent));
}
.reklam-sira-option input:focus-visible + span {
  outline: 2px solid var(--shop-accent, var(--accent));
  outline-offset: 2px;
}
.checkbox-field {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 14px;
  cursor: pointer;
}
.checkbox-field input {
  width: 18px;
  height: 18px;
  margin: 0;
}
.reklam-col-head {
  display: flex;
  flex-direction: column;
  padding: 18px 18px 0;
  flex: 0 0 auto;
  min-width: 0;
}
.reklam-col-tag {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.02em;
  color: var(--shop-accent, var(--accent));
  margin-bottom: 6px;
}
.reklam-col-head h3 {
  margin: 0 0 6px;
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--shop-ink, var(--navy));
  line-height: 1.25;
  overflow-wrap: anywhere;
}
.reklam-col-head p {
  margin: 0;
  font-size: 13px;
  color: var(--shop-muted, var(--muted));
  line-height: 1.45;
  overflow-wrap: break-word;
}
.reklam-col-body {
  display: flex;
  flex-direction: column;
  gap: 14px;
  padding: 14px 18px 18px;
  flex: 1 1 auto;
  min-width: 0;
}
.reklam-col-features {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.reklam-col-features li {
  max-width: 100%;
  font-size: 11px;
  font-weight: 500;
  color: var(--shop-ink, var(--navy));
  background: var(--shop-accent-soft, var(--cream));
  border: 1px solid var(--shop-line, var(--line));
  border-radius: 999px;
  padding: 3px 8px;
  line-height: 1.3;
}
.reklam-prices {
  display: flex;
  flex-direction: column;
  margin-top: auto;
  border: 1px solid var(--line);
  border-radius: 6px;
  overflow: hidden;
  background: #fff;
}
.reklam-price-row {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  padding: 11px 14px;
  border-top: 1px solid var(--line);
}
.reklam-price-row:first-child {
  border-top: 0;
}
.reklam-price-row span {
  font-size: 13px;
  font-weight: 500;
  color: var(--shop-ink, var(--navy));
}
.reklam-price-row strong {
  font-size: 16px;
  font-weight: 700;
  color: var(--shop-accent, var(--accent));
  white-space: nowrap;
}
.reklam-col-cta {
  width: 100%;
  flex-shrink: 0;
}

.contact-item {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  margin-top: 16px;
}
.contact-item .icon-box { width: 40px; height: 40px; margin: 0; }
.contact-photo {
  width: 100%;
  height: 240px;
  object-fit: cover;
  border-radius: var(--radius);
  margin-top: 22px;
}

.contact-page {
  display: grid;
  gap: 40px;
  padding-top: 28px;
  padding-bottom: 64px;
}
.contact-channels h2,
.contact-stores h2 {
  margin: 0 0 8px;
  font-size: 22px;
  color: var(--navy);
}
.contact-lead {
  margin: 0 0 18px;
  font-size: 15px;
}
.contact-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.contact-card {
  display: flex;
  gap: 14px;
  align-items: flex-start;
  min-width: 0;
  padding: 16px 18px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f8fafc;
  color: inherit;
  text-decoration: none;
}
a.contact-card:hover {
  border-color: color-mix(in srgb, var(--accent) 35%, var(--line));
  background: #fff;
}
.contact-card .icon-box {
  width: 40px;
  height: 40px;
  margin: 0;
  flex-shrink: 0;
  background: #eef2f6;
}
.contact-card.is-wa .icon-box {
  background: #e8f8ee;
  color: #16a34a;
}
.contact-kicker {
  display: block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--muted);
}
.contact-card strong {
  display: block;
  margin-top: 3px;
  font-size: 15px;
  font-weight: 700;
  color: var(--navy);
  line-height: 1.35;
  overflow-wrap: anywhere;
}
a.contact-card-line {
  display: block;
  color: inherit;
  text-decoration: none;
}
a.contact-card-line:hover strong {
  color: var(--accent);
}
.contact-stores p {
  margin: 0;
  max-width: 72ch;
  font-size: 15px;
  line-height: 1.6;
}
.contact-stores a {
  color: var(--navy);
  font-weight: 700;
}
@media (max-width: 720px) {
  .contact-grid {
    grid-template-columns: 1fr;
  }
}

.card h3, .step h3 { margin-bottom: 8px; }
.step h3,
.page-body .card > h3 {
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-size: 15px;
}
.card p, .step p { color: var(--muted); font-size: 15px; }
.card .btn { margin-top: 18px; align-self: flex-start; }
.muted { color: var(--muted); }
.result-count { margin-bottom: 18px; }
.chip {
  font-size: 12px;
  padding: 5px 10px;
  border-radius: 999px;
  background: var(--cream);
  color: var(--navy);
  font-weight: 500;
}
.cta-band {
  background: var(--navy);
  color: #fff;
  border-radius: var(--radius);
  padding: 40px 44px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 24px;
}
.cta-band p { color: rgba(255,255,255,0.78); margin-top: 8px; max-width: 52ch; }
.cta-band h2 {
  color: #fff;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-size: clamp(22px, 2.4vw, 28px);
}

.faq { display: grid; grid-template-columns: 1fr 1fr; gap: 8px 48px; }
.faq details {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 6px;
  padding: 16px 18px;
}
.faq summary { cursor: pointer; font-weight: 500; }
.faq p { color: var(--muted); margin-top: 8px; }

.page-banner:has(+ .profile),
.page-banner:has(+ .contact-page) {
  padding: 52px 0 48px;
}
.profile.page-body {
  padding-top: 24px;
}
.profile {
  --profile-gap: 20px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(300px, 360px);
  grid-template-areas:
    "hero book"
    "main side";
  gap: var(--profile-gap);
  align-items: stretch;
}
.profile-main {
  grid-area: main;
  display: grid;
  gap: var(--profile-gap);
  align-content: start;
  min-width: 0;
}
.profile-side {
  grid-area: side;
  display: grid;
  gap: var(--profile-gap);
  align-content: start;
  min-width: 0;
}
.profile-side:not(:has(*)) {
  display: none;
}
.profile-book {
  grid-area: book;
  display: flex;
  flex-direction: column;
  gap: 16px;
  min-height: 320px;
  height: 100%;
  padding: 24px;
}
.profile-book-head {
  display: grid;
  gap: 8px;
}
.profile-book-head h3 { margin: 0; }
.profile-book-head .muted {
  margin: 0;
  line-height: 1.5;
}
.profile-book .btn { margin-top: 0; width: 100%; }
.profile-book .btn-primary { margin-top: 4px; }
.profile-book-foot {
  display: grid;
  gap: 12px;
  margin-top: auto;
  padding-top: 16px;
  border-top: 1px solid var(--line);
}
.side-box, .form-card {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 24px;
}
.side-box > h3,
.form-card > h3,
.reviews-head h2,
.review-form > h3 {
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-size: 13px;
  font-weight: 600;
}
.form-narrow { max-width: 420px; }
.form-mid { max-width: 720px; }
.form-meta { display: flex; flex-wrap: wrap; gap: 8px; margin: 8px 0 20px; }
.stack { display: grid; gap: 10px; }
.side-box .btn { margin-top: 16px; width: 100%; }
.side-box .btn + .btn { margin-top: 10px; }
.profile-book .btn { margin-top: 0; }
.profile-book .btn-primary { margin-top: 4px; }
.profile-book-foot .btn { margin-top: 0; }
.profile-book-foot .btn.is-copied {
  border-color: var(--ok);
  color: var(--ok);
}
.side-rating {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  font-size: 14px;
  font-weight: 600;
  color: var(--navy);
}
.side-rating.is-empty {
  color: var(--muted);
  font-weight: 500;
}

@media (max-width: 980px) {
  .profile {
    grid-template-columns: 1fr;
    grid-template-areas:
      "hero"
      "book"
      "main"
      "side";
    align-items: start;
    --profile-gap: 16px;
  }
  .profile-hero-wrap {
    min-height: 0;
    height: min(52vw, 260px);
  }
  .profile-book {
    min-height: 0;
    height: auto;
  }
}
@media (max-width: 640px) {
  .profile-hero-wrap {
    height: 200px;
  }
  .profile-info {
    padding: 4px 4px 8px;
  }
  .profile-info-block {
    padding: 16px 10px;
  }
  .profile-contact-actions .profile-chip {
    flex: 1 1 calc(50% - 8px);
  }
}
.side-rating .star.is-on,
.reviews-summary .star.is-on,
.review-item .star.is-on { color: var(--star); }
.side-rating .star,
.reviews-summary .star,
.review-item .star { color: var(--star-off); }

/* Firma profil bilgi kartı */
.profile-info {
  --profile-chip-gap: 8px;
  display: grid;
  gap: 0;
  padding: 8px 10px 12px;
  overflow: hidden;
}
.profile-info-block {
  padding: 18px 14px;
  border-bottom: 1px solid color-mix(in srgb, var(--line) 80%, transparent);
}
.profile-info-block:first-child {
  padding-top: 16px;
}
.profile-info-block:last-child {
  border-bottom: 0;
  padding-bottom: 16px;
}
.profile-info-title {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 12px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--muted);
}
.profile-info-title::before {
  content: "";
  width: 16px;
  height: 2px;
  border-radius: 2px;
  background: var(--gold);
  flex-shrink: 0;
}
.profile-info-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px 16px;
  flex-wrap: wrap;
  margin: 0 0 12px;
}
.profile-info-head .profile-info-title,
.profile-info-head .profile-hours-interval {
  margin: 0;
}
.profile-chips {
  display: flex;
  flex-wrap: wrap;
  gap: var(--profile-chip-gap);
}
.profile-chip {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  max-width: 100%;
  min-height: 44px;
  padding: 6px 14px 6px 6px;
  border: 0;
  border-radius: 999px;
  background: var(--cream);
  color: var(--navy);
  text-decoration: none;
  box-shadow: inset 0 0 0 1px rgba(var(--navy-rgb), 0.04);
}
a.profile-chip,
button.profile-chip {
  font: inherit;
  cursor: pointer;
  text-align: left;
  appearance: none;
  -webkit-appearance: none;
  transition: background 0.15s ease, transform 0.15s ease, box-shadow 0.15s ease, color 0.15s ease;
}
a.profile-chip:hover,
button.profile-chip:hover {
  background: #fff;
  box-shadow: 0 8px 18px rgba(var(--navy-rgb), 0.08);
  transform: translateY(-1px);
}
a.profile-chip:focus-visible,
button.profile-chip:focus-visible {
  outline: 3px solid color-mix(in srgb, var(--accent) 30%, transparent);
  outline-offset: 2px;
}
.profile-chip-ico {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: #fff;
  color: var(--accent);
  display: grid;
  place-items: center;
  flex-shrink: 0;
}
.profile-chip-ico .ico {
  width: 15px;
  height: 15px;
}
.profile-chip-label,
.profile-chip-copy strong {
  font-size: 13px;
  font-weight: 600;
  line-height: 1.25;
  color: var(--navy);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.profile-chip-copy {
  display: grid;
  gap: 1px;
  min-width: 0;
}
.profile-chip-copy span {
  font-size: 11px;
  font-weight: 500;
  color: var(--muted);
  line-height: 1.2;
}
.profile-chip.is-web .profile-chip-ico { color: var(--accent); background: color-mix(in srgb, var(--accent) 12%, #fff); }
.profile-chip.is-whatsapp .profile-chip-ico { color: #fff; background: #25d366; }
.profile-chip.is-instagram .profile-chip-ico {
  color: #fff;
  background: linear-gradient(135deg, #f58529, #dd2a7b 52%, #8134af);
}
.profile-chip.is-facebook .profile-chip-ico { color: #fff; background: #1877f2; }
.profile-chip.is-youtube .profile-chip-ico { color: #fff; background: #ff0000; }
.profile-chip.is-x .profile-chip-ico { color: #fff; background: #111; }
.profile-chip.is-tiktok .profile-chip-ico { color: #fff; background: #111; }
.profile-chip.is-phone .profile-chip-ico { color: var(--accent); background: color-mix(in srgb, var(--accent) 12%, #fff); }
.profile-follow-form {
  display: inline-flex;
  margin: 0;
}
.profile-chip.is-follow .profile-chip-ico { color: var(--accent); background: color-mix(in srgb, var(--accent) 12%, #fff); }
.profile-chip.is-follow.is-on {
  background: color-mix(in srgb, var(--accent) 10%, #fff);
}
.profile-chip.is-follow.is-on .profile-chip-ico { color: #fff; background: var(--accent); }
.profile-chip.is-follow.is-static { cursor: default; }
.profile-chip.is-follow.is-static:hover {
  background: var(--cream);
  box-shadow: inset 0 0 0 1px rgba(var(--navy-rgb), 0.04);
  transform: none;
}
.profile-follow-action {
  flex-shrink: 0;
  margin-left: 2px;
  padding: 6px 11px;
  border-radius: 999px;
  background: var(--navy);
  color: #fff;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.01em;
  line-height: 1.2;
  white-space: nowrap;
}
.profile-chip.is-follow.is-on .profile-follow-action {
  background: color-mix(in srgb, var(--accent) 14%, #fff);
  color: var(--navy);
}
.profile-hero-follow .profile-chip.is-follow.is-static:hover {
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 8px 24px rgba(var(--navy-rgb), 0.18);
}
.profile-chip.is-service .profile-chip-ico { color: var(--accent); }
.profile-contact-sheet {
  display: grid;
  gap: 12px;
  padding: 16px;
  border-radius: 8px;
  background: linear-gradient(180deg, var(--cream) 0%, #fff 100%);
  box-shadow: inset 0 0 0 1px rgba(var(--navy-rgb), 0.05);
}
.profile-contact-place {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  min-width: 0;
}
.profile-contact-place .profile-chip-ico {
  width: 40px;
  height: 40px;
  border-radius: 6px;
  color: var(--accent);
  background: #fff;
  box-shadow: 0 1px 2px rgba(var(--navy-rgb), 0.06);
}
.profile-contact-copy {
  display: grid;
  gap: 4px;
  min-width: 0;
  padding-top: 2px;
}
.profile-contact-copy strong {
  font-size: 15px;
  font-weight: 600;
  line-height: 1.4;
  color: var(--navy);
  overflow-wrap: anywhere;
}
.profile-contact-copy span {
  font-size: 13px;
  font-weight: 500;
  color: var(--muted);
}
.profile-contact-copy a {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.profile-contact-copy a:hover {
  color: var(--accent);
}
.profile-contact-actions {
  padding-top: 2px;
}
.profile-contact-actions .profile-chip {
  background: #fff;
  box-shadow: 0 1px 2px rgba(var(--navy-rgb), 0.05), inset 0 0 0 1px rgba(var(--navy-rgb), 0.06);
}
img.map-brand {
  display: block;
  width: var(--map-icon);
  height: var(--map-icon);
  aspect-ratio: 1 / 1;
  object-fit: contain;
  object-position: center;
  flex-shrink: 0;
}
.map-nav {
  margin-top: 0;
}
.map-nav-label {
  margin: 0 0 10px;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--muted);
}
.map-nav-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}
.map-nav-btn {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  min-width: 0;
  padding: 14px 8px 12px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #fff;
  text-decoration: none;
  color: inherit;
  text-align: center;
  transition: border-color 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease, background 0.15s ease;
}
.map-nav-btn:hover {
  transform: translateY(-2px);
  background: var(--cream);
  border-color: color-mix(in srgb, var(--navy) 18%, var(--line));
  box-shadow: 0 8px 18px rgba(var(--navy-rgb), 0.08);
}
.map-nav-btn:focus-visible {
  outline: 3px solid color-mix(in srgb, var(--accent) 30%, transparent);
  outline-offset: 2px;
}
.map-nav-logo {
  --map-icon: 44px;
  width: 44px;
  height: 44px;
  border-radius: 0;
  background: transparent;
  border: 0;
  box-shadow: none;
  display: grid;
  place-items: center;
  flex-shrink: 0;
  overflow: hidden;
}
.map-nav-btn:hover .map-nav-logo {
  box-shadow: none;
}
.map-nav-text {
  display: grid;
  gap: 2px;
  min-width: 0;
}
.map-nav-name {
  font-size: 13px;
  font-weight: 700;
  color: var(--navy);
  line-height: 1.2;
}
.map-nav-sub {
  font-size: 11px;
  color: var(--muted);
  font-weight: 500;
}
.side-box .map-nav {
  margin-top: 16px;
}
.side-box .map-nav-btn {
  width: auto;
}
.profile-info .map-nav-profile .map-nav-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}
.profile-info .map-nav-profile .map-nav-btn {
  flex: none;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  min-height: 0;
  padding: 14px 8px 12px;
  gap: 10px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #fff;
  box-shadow: none;
}
.profile-info .map-nav-profile .map-nav-btn:hover {
  transform: translateY(-2px);
  background: var(--cream);
  border-color: color-mix(in srgb, var(--navy) 18%, var(--line));
  box-shadow: 0 8px 18px rgba(var(--navy-rgb), 0.08);
  opacity: 1;
}
.profile-info .map-nav-profile .map-nav-logo {
  --map-icon: 44px;
  width: 44px;
  height: 44px;
  border-radius: 0;
  background: transparent;
  border: 0;
  box-shadow: none;
}
.profile-info .map-nav-profile .map-nav-sub {
  display: block;
}
.profile-info .map-nav-profile .map-nav-name {
  font-size: 13px;
  font-weight: 700;
}
@media (max-width: 520px) {
  .map-nav-list {
    grid-template-columns: 1fr;
  }
  .map-nav-btn {
    flex-direction: row;
    justify-content: flex-start;
    text-align: left;
    padding: 10px 14px;
    gap: 12px;
  }
  .profile-info .map-nav-profile .map-nav-list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .profile-info .map-nav-profile .map-nav-btn {
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    flex-basis: auto;
    padding: 12px 6px 10px;
    gap: 8px;
  }
}
.profile-hours-interval {
  margin: 0;
  padding: 5px 10px;
  border-radius: 999px;
  background: var(--cream);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.02em;
  color: var(--muted);
}
.profile-hours {
  list-style: none;
  margin: 0;
  padding: 6px;
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 4px;
  background: var(--cream);
  border: 0;
  border-radius: 8px;
  overflow: hidden;
}
.profile-hours-row {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-width: 0;
  min-height: 78px;
  padding: 10px 4px;
  font-size: 14px;
  border: 0;
  border-radius: 8px;
  background: transparent;
  text-align: center;
}
.profile-hours-day {
  font-weight: 700;
  font-size: 12px;
  line-height: 1.25;
  color: var(--navy);
}
.profile-hours-day-full {
  display: none;
}
.profile-hours-day-short {
  display: block;
}
.profile-hours-time {
  font-variant-numeric: tabular-nums;
  font-weight: 500;
  font-size: 11px;
  line-height: 1.25;
  color: var(--muted);
  letter-spacing: 0;
  text-align: center;
  white-space: nowrap;
}
.profile-hours-row.is-closed .profile-hours-day,
.profile-hours-row.is-closed .profile-hours-time {
  color: color-mix(in srgb, var(--muted) 80%, var(--navy));
  font-weight: 500;
}
.profile-hours-row.is-closed .profile-hours-time {
  font-style: italic;
}
.profile-hours-row.is-today {
  background: var(--navy);
  box-shadow: 0 8px 18px rgba(var(--navy-rgb), 0.18);
}
.profile-hours-row.is-today .profile-hours-day,
.profile-hours-row.is-today .profile-hours-time {
  color: #fff;
  font-weight: 600;
  font-style: normal;
}

.side-subeler {
  padding: 18px 16px 14px;
}
.side-subeler h3 {
  margin: 0 0 8px;
  padding: 0 4px;
}
.side-sube-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 0;
  width: 100%;
}
.side-sube-list > li {
  min-width: 0;
  width: 100%;
  border-top: 1px solid var(--line);
}
.side-sube-list > li:first-child {
  border-top: 0;
}
.side-sube-card {
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr) 14px;
  align-items: start;
  column-gap: 10px;
  width: auto;
  min-width: 0;
  margin: 0 -4px;
  padding: 10px 4px;
  border: 0;
  border-radius: 6px;
  background: transparent;
  text-decoration: none;
  color: inherit;
  transition: background 0.12s ease;
}
.side-sube-card:hover {
  background: var(--cream);
}
.side-sube-card:focus-visible {
  outline: 2px solid color-mix(in srgb, var(--accent) 35%, transparent);
  outline-offset: 1px;
}
.side-sube-ico,
.side-sube-go {
  width: auto;
  height: auto;
  margin: 0;
  padding: 2px 0 0;
  border: 0;
  border-radius: 0;
  background: none;
  display: grid;
  place-items: start center;
}
.side-sube-ico {
  color: var(--accent);
}
.side-sube-ico .ico,
.side-sube-go .ico,
.side-sube-meta .ico {
  display: block;
  vertical-align: 0;
}
.side-sube-ico .ico,
.side-sube-go .ico {
  width: 15px;
  height: 15px;
}
.side-sube-go .ico {
  width: 14px;
  height: 14px;
}
.side-sube-body {
  display: grid;
  gap: 3px;
  min-width: 0;
}
.side-sube-body strong {
  font-size: 14px;
  font-weight: 600;
  color: var(--navy);
  line-height: 1.35;
  overflow-wrap: break-word;
  min-width: 0;
}
.side-sube-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 2px 12px;
  min-width: 0;
}
.side-sube-meta > span {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 12px;
  color: var(--muted);
  line-height: 1.35;
  min-width: 0;
}
.side-sube-meta .ico {
  width: 12px;
  height: 12px;
  flex-shrink: 0;
  color: var(--muted);
}
.side-sube-go {
  color: var(--muted);
  align-self: center;
  padding: 0;
}
.side-sube-card:hover .side-sube-go {
  color: var(--accent);
}

.profile-links {
  margin: 0;
  display: grid;
  gap: 14px;
  padding: 20px 24px;
}
.profile-links .profile-info-title {
  margin-bottom: 2px;
}
.profile-web {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 14px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: var(--cream);
  color: var(--ink);
  text-decoration: none;
  transition: border-color 0.15s ease, background 0.15s ease;
}
.profile-web:hover {
  border-color: var(--accent);
  background: #fff;
}
.profile-web-ico {
  width: 40px;
  height: 40px;
  border-radius: 6px;
  background: #fff;
  border: 1px solid var(--line);
  color: var(--accent);
  display: grid;
  place-items: center;
  flex-shrink: 0;
}
.profile-web-text {
  display: grid;
  gap: 2px;
  min-width: 0;
  flex: 1;
}
.profile-web-text strong {
  font-size: 13px;
  font-weight: 600;
  color: var(--navy);
}
.profile-web-text span {
  font-size: 14px;
  color: var(--accent);
  font-weight: 500;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.profile-web-go {
  color: var(--muted);
  display: grid;
  place-items: center;
  flex-shrink: 0;
}
.profile-web:hover .profile-web-go {
  color: var(--accent);
}
.profile-social {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(132px, 1fr));
  gap: 8px;
}
.profile-social-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  min-height: 44px;
  padding: 8px 12px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #fff;
  color: var(--navy);
  font-size: 13px;
  font-weight: 600;
  text-decoration: none;
  transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}
.profile-social-btn .ico {
  color: var(--accent);
}
.profile-social-btn.is-whatsapp .ico {
  color: #25d366;
}
.profile-social-btn:hover {
  background: var(--navy);
  border-color: var(--navy);
  color: #fff;
}
.profile-social-btn:hover .ico {
  color: #fff;
}

.slots { display: flex; flex-wrap: wrap; gap: 8px; }
.slot {
  border: 1px solid var(--line);
  background: #fff;
  border-radius: 999px;
  min-height: 40px;
  padding: 8px 14px;
  cursor: pointer;
}
.slot:hover, .slot.active { background: var(--navy); color: #fff; border-color: var(--navy); }
.slot:disabled, .slot.dolu { opacity: 0.4; cursor: not-allowed; text-decoration: line-through; }

.form { display: grid; gap: 14px; }
.row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.form-cols {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  align-items: start;
}
.form-cols > .form-span,
.form-cols > .btn.form-span {
  grid-column: 1 / -1;
}
.form-cols > .switch {
  align-self: end;
  min-height: 44px;
}
.profil-baglanti-head {
  display: grid;
  gap: 4px;
  padding-top: 10px;
  margin-top: 4px;
  border-top: 1px solid var(--line);
}
.profil-baglanti-head .muted {
  margin: 0;
  font-size: 13px;
}
.profil-baglanti-label {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.profil-baglanti-label .ico {
  color: var(--accent);
}
.field-note {
  font-size: 12px;
  font-weight: 400;
  line-height: 1.45;
}
.map-url-block {
  display: grid;
  gap: 8px;
}
.map-url-block .field-label,
.map-url-block .field-note {
  margin: 0;
}
.map-url-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}
.map-url-field-label {
  --map-icon: 22px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--navy);
  font-weight: 650;
}
.map-url-fold {
  padding: 2px 14px 10px;
  border: 1px dashed var(--line);
  border-radius: 6px;
  background: #fff;
}
.map-url-fold > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  cursor: pointer;
  list-style: none;
  padding: 10px 0;
  font-size: 13px;
  font-weight: 650;
  color: #334155;
  user-select: none;
}
.map-url-fold > summary::-webkit-details-marker { display: none; }
.map-url-fold > summary::after {
  content: "";
  width: 7px;
  height: 7px;
  flex-shrink: 0;
  border-right: 2px solid #94a3b8;
  border-bottom: 2px solid #94a3b8;
  transform: rotate(45deg);
  transition: transform 0.15s ease;
}
.map-url-fold[open] > summary::after {
  transform: rotate(225deg);
  margin-top: 4px;
}
.map-url-fold .map-url-grid {
  grid-template-columns: 1fr;
  gap: 10px;
}
.map-icon-live {
  margin: 4px 16px 0;
  padding: 16px;
  border: 1px dashed var(--admin-line, var(--line));
  border-radius: 8px;
  background: var(--cream, #f4f7fb);
}
.map-icon-live-label {
  margin: 0 0 12px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--admin-muted, var(--muted));
}
.map-icon-live .map-nav {
  margin: 0;
}
.map-icon-live .map-nav-btn {
  pointer-events: none;
  cursor: default;
}
.map-icon-admin {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  padding: 16px 16px 20px;
}
.map-icon-card {
  display: grid;
  gap: 12px;
  align-content: start;
  padding: 16px;
  border: 1px solid var(--admin-line, var(--line));
  border-radius: 8px;
  background: #fff;
}
.map-icon-card.is-custom {
  border-color: color-mix(in srgb, var(--ok, #16a34a) 28%, var(--admin-line, var(--line)));
}
.map-icon-card-top {
  display: flex;
  align-items: center;
  gap: 12px;
}
.map-icon-stage {
  --map-icon: 64px;
  width: 72px;
  height: 72px;
  display: grid;
  place-items: center;
  flex-shrink: 0;
  border-radius: 8px;
  background-color: #fff;
  background-image:
    linear-gradient(45deg, #e8eef4 25%, transparent 25%),
    linear-gradient(-45deg, #e8eef4 25%, transparent 25%),
    linear-gradient(45deg, transparent 75%, #e8eef4 75%),
    linear-gradient(-45deg, transparent 75%, #e8eef4 75%);
  background-size: 12px 12px;
  background-position: 0 0, 0 6px, 6px -6px, -6px 0;
  box-shadow: inset 0 0 0 1px rgba(var(--navy-rgb, 15 23 42), 0.06);
}
.map-icon-card-meta {
  display: flex;
  flex: 1;
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
  min-width: 0;
}
.map-icon-card-meta strong {
  font-size: 14px;
  font-weight: 700;
  color: var(--admin-ink, var(--navy));
}
.map-icon-sizes {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 10px;
  border-radius: 6px;
  background: var(--cream, #f4f7fb);
}
.map-icon-size {
  display: grid;
  justify-items: center;
  gap: 4px;
  min-width: 36px;
}
.map-icon-size-box {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
}
.map-icon-size em {
  font-size: 10px;
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0.04em;
  color: var(--admin-muted, var(--muted));
}
.map-icon-upload {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.map-icon-upload .btn,
.map-icon-card > form .btn {
  width: auto;
}
.map-icon-file {
  position: relative;
  display: inline-flex;
  align-items: center;
  min-width: 0;
  flex: 1 1 140px;
  min-height: 42px;
  padding: 0 14px;
  border: 1px dashed var(--admin-line, var(--line));
  border-radius: 6px;
  background: #f8fafc;
  color: var(--admin-muted, var(--muted));
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
}
.map-icon-file span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.map-icon-file input {
  position: absolute;
  inset: 0;
  opacity: 0;
  cursor: pointer;
}
.map-icon-file:hover {
  border-color: var(--admin-accent, var(--accent));
  color: var(--admin-ink, var(--navy));
}
@media (max-width: 980px) {
  .map-icon-admin {
    grid-template-columns: 1fr;
  }
  .map-icon-live {
    margin-inline: 16px;
  }
}
.or-video-admin {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  align-items: stretch;
  flex: 1;
  min-height: 0;
  padding: 16px 16px 20px;
}
.or-video-admin-preview {
  display: grid;
  place-items: center;
  overflow: hidden;
  min-height: 100%;
  height: 100%;
  border-radius: 8px;
  background: #0b1220;
  box-shadow: inset 0 0 0 1px rgba(var(--navy-rgb, 15 23 42), 0.08);
}
.or-video-admin-preview video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  background: #0b1220;
}
.or-video-admin-preview.is-empty {
  display: grid;
  place-items: center;
  padding: 20px;
  min-height: 220px;
  background: var(--cream, #f4f7fb);
}
.or-video-admin-preview.is-empty span {
  max-width: 18em;
  text-align: center;
  font-size: 13px;
  font-weight: 600;
  color: var(--admin-muted, var(--muted));
}
.or-video-admin-meta {
  display: grid;
  gap: 12px;
  align-content: start;
  min-width: 0;
  height: 100%;
  padding: 4px 0 0;
}
.or-video-admin-title {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}
.or-video-admin-title strong {
  font-size: 14px;
  font-weight: 700;
  color: var(--admin-ink, var(--navy));
}
.or-video-admin-meta .muted {
  margin: 0;
  font-size: 13px;
}
.or-video-admin-meta .map-icon-upload .btn,
.or-video-admin-meta > form .btn {
  width: auto;
}
.or-video-admin-copy {
  display: grid;
  gap: 12px;
  padding-top: 12px;
  border-top: 1px dashed var(--admin-line, var(--line));
}
.or-video-admin-copy-title {
  font-size: 14px;
  font-weight: 700;
  color: var(--admin-ink, var(--navy));
}
.or-video-admin-fields {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}
.or-video-admin-copy .field {
  margin: 0;
}
.or-video-admin-copy .btn {
  justify-self: start;
}
.tasarim-grid {
  align-items: stretch;
}
.tasarim-grid > .dash-panel {
  display: flex;
  flex-direction: column;
  min-height: 0;
}
.tasarim-grid .dash-panel-lead {
  flex: 0 0 auto;
  min-height: 4.6em;
}
.tasarim-grid .or-video-admin,
.tasarim-grid .map-icon-admin {
  flex: 1 1 auto;
}
.tasarim-grid .or-video-admin {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  grid-template-rows: minmax(280px, 1fr);
}
.tasarim-grid .or-video-admin-preview {
  min-height: 280px;
}
.tasarim-grid .or-video-admin-fields {
  grid-template-columns: 1fr;
}
.tasarim-grid .map-icon-live {
  flex: 0 0 auto;
}
.tasarim-panel-body {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  min-height: 0;
}
.tasarim-panel-body .map-icon-admin {
  flex: 1 1 auto;
}
.tasarim-grid .map-icon-admin {
  grid-template-columns: 1fr;
  align-content: stretch;
}
.tasarim-grid .map-icon-card {
  height: 100%;
  align-content: start;
}
@media (max-width: 980px) {
  .or-video-admin,
  .tasarim-grid .or-video-admin {
    grid-template-columns: 1fr;
  }
  .or-video-admin-preview {
    min-height: 280px;
    height: auto;
    margin: 0 auto;
    width: min(100%, 240px);
    aspect-ratio: 9 / 16;
  }
  .or-video-admin-preview.is-empty {
    width: 100%;
    aspect-ratio: 16 / 10;
  }
  .or-video-admin-fields,
  .tasarim-grid .or-video-admin-fields {
    grid-template-columns: 1fr;
  }
  .tasarim-grid .dash-panel-lead {
    min-height: 0;
  }
}
.checks { display: flex; flex-wrap: wrap; gap: 10px 16px; }

.flash {
  width: 100%;
  margin: 0;
  padding: 12px var(--gutter);
  border-radius: 0;
  font-size: 14px;
}
.flash-ok { background: #e8f6ee; color: var(--ok); }
.flash-err { background: #fdecea; color: var(--err); }
.flash-inline { margin: 0; max-width: none; padding: 12px 16px; border-radius: 6px; }
.flash a {
  color: inherit;
  font-weight: 700;
  text-decoration: underline;
}
.flash-toast {
  position: fixed;
  top: 16px;
  right: 16px;
  z-index: 10050;
  width: min(calc(100vw - 32px), 380px);
  border-radius: 6px;
  background: #fff;
  box-shadow: 0 14px 40px rgba(15, 23, 42, 0.16);
  overflow: hidden;
  animation: flash-toast-in 0.22s ease forwards;
}
.flash-toast-ok {
  border: 1px solid #b7e4c7;
  color: var(--ok);
}
.flash-toast-err {
  border: 1px solid #f5c2c0;
  color: var(--err);
}
.flash-toast-body {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 12px 12px 10px 16px;
}
.flash-toast-msg {
  flex: 1;
  margin: 0;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.45;
  color: inherit;
}
.flash-toast-close {
  flex: 0 0 28px;
  width: 28px;
  height: 28px;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: inherit;
  font-size: 20px;
  line-height: 1;
  cursor: pointer;
  opacity: 0.72;
}
.flash-toast-close:hover {
  background: rgba(15, 23, 42, 0.06);
  opacity: 1;
}
.flash-toast-bar {
  height: 4px;
  background: rgba(15, 23, 42, 0.08);
}
.flash-toast-ok .flash-toast-bar { background: rgba(22, 163, 74, 0.16); }
.flash-toast-err .flash-toast-bar { background: rgba(220, 38, 38, 0.14); }
.flash-toast-bar-fill {
  display: block;
  height: 100%;
  width: 100%;
  background: currentColor;
  transform-origin: left center;
  animation: flash-toast-bar 4.2s linear forwards;
}
.flash-toast.is-paused .flash-toast-bar-fill {
  animation-play-state: paused;
}
.flash-toast.is-leaving {
  animation: none;
  opacity: 0;
  transform: translateX(12px);
  pointer-events: none;
  transition: opacity 0.22s ease, transform 0.22s ease;
}
.ui-modal.flash-notice-modal { z-index: 10060; }
.ui-modal-panel.flash-notice-panel {
  width: min(420px, 100%);
}
.flash-notice-panel .ui-modal-actions { margin-top: 8px; }

.ui-modal.or-dialog-modal { z-index: 10100; }
.ui-modal-panel.or-dialog-panel {
  width: min(420px, 100%);
  max-height: none;
  overflow: visible;
  padding: 22px 22px 20px;
}
.or-dialog-panel .ui-modal-head {
  align-items: flex-start;
  margin-bottom: 18px;
}
.or-dialog-panel .ui-modal-head h2 {
  font-size: 18px;
  line-height: 1.35;
}
.or-dialog-panel .ui-modal-sub {
  margin-top: 8px;
  font-size: 14px;
  line-height: 1.5;
}
.or-dialog-panel .ui-modal-actions {
  margin-top: 0;
  gap: 10px;
}
.or-dialog-panel .ui-modal-actions .btn {
  min-width: 96px;
}
.or-dialog-ok.is-danger,
.dash-shop .or-dialog-ok.is-danger,
.dash-admin .or-dialog-ok.is-danger {
  background: var(--err) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border-color: var(--err) !important;
}
.or-dialog-ok.is-danger:hover,
.dash-shop .or-dialog-ok.is-danger:hover,
.dash-admin .or-dialog-ok.is-danger:hover {
  background: #911c16 !important;
  border-color: #911c16 !important;
}

body:has(.dash-avaro) .flash-toast,
body:has(.dash-avaro) .egitim-tour-toast {
  top: 88px;
}
@keyframes flash-toast-in {
  from {
    opacity: 0;
    transform: translateX(12px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes flash-toast-bar {
  from { transform: scaleX(1); }
  to { transform: scaleX(0); }
}
.stats-block { margin-bottom: 20px; }

.ad-row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  align-items: stretch;
}
.ad-card {
  --ad-tone: var(--shop-accent, var(--accent));
  --ad-tone-soft: var(--shop-accent-soft, #eef6fb);
  display: flex;
  flex-direction: row;
  align-items: stretch;
  gap: 14px;
  min-height: 118px;
  padding: 12px;
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--shop-line, var(--line));
  border-radius: 8px;
  box-shadow: 0 1px 2px rgba(var(--navy-rgb), 0.04);
  text-decoration: none;
  color: inherit;
  transition: border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}
.ad-card:hover {
  transform: translateY(-3px);
  border-color: color-mix(in srgb, var(--ad-tone) 42%, var(--shop-line, var(--line)));
  box-shadow: 0 12px 28px rgba(var(--navy-rgb), 0.1);
}
.ad-card:focus-visible {
  outline: 3px solid color-mix(in srgb, var(--ad-tone) 28%, transparent);
  outline-offset: 2px;
}
.ad-tone-teal { --ad-tone: #0e7c86; --ad-tone-soft: #e6f6f7; }
.ad-tone-navy { --ad-tone: #243b53; --ad-tone-soft: #e8eef4; }
.ad-tone-gold { --ad-tone: #9a7348; --ad-tone-soft: #f6efe6; }
.ad-card-media {
  display: block;
  flex: 0 0 42%;
  width: 42%;
  max-width: 148px;
  min-width: 96px;
  min-height: 92px;
  overflow: hidden;
  position: relative;
  align-self: stretch;
  background: var(--ad-tone-soft);
  border-radius: 6px;
}
.ad-card-media img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  filter: saturate(0.92) contrast(1.04);
  transition: transform 0.45s ease, filter 0.45s ease;
}
.ad-card-media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(255,255,255,0.04) 0%, rgba(var(--navy-rgb), 0.18) 100%);
  pointer-events: none;
}
.ad-card-ico {
  position: absolute;
  left: 8px;
  bottom: 8px;
  z-index: 1;
  width: 30px;
  height: 30px;
  border-radius: 6px;
  display: grid;
  place-items: center;
  background: rgba(255, 255, 255, 0.94);
  color: var(--ad-tone);
  box-shadow: 0 4px 12px rgba(var(--navy-rgb), 0.14);
}
.ad-card-ico .ico { display: block; }
.ad-card:hover .ad-card-media img {
  transform: scale(1.05);
  filter: saturate(0.98) contrast(1.06);
}
.ad-card-copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
  flex: 1;
  padding: 4px 2px 4px 6px;
}
.ad-eyebrow {
  margin: 0 0 4px;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--ad-tone);
}
.ad-card-copy strong {
  display: block;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.3;
  margin: 0 0 4px;
  color: var(--shop-ink, var(--ink));
  letter-spacing: -0.02em;
}
.ad-card-copy em {
  display: block;
  font-style: normal;
  font-size: 13px;
  line-height: 1.45;
  color: var(--shop-muted, var(--muted));
  margin: 0;
}
.ad-card-cta {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: 8px;
  font-size: 13px;
  font-weight: 600;
  color: var(--ad-tone);
  transition: transform 0.18s ease;
}
.ad-card-cta .ico { display: block; }
.ad-card:hover .ad-card-cta {
  transform: translateX(3px);
}

.ad-card.is-feature {
  background: #fff;
  border-color: color-mix(in srgb, var(--ad-tone) 28%, var(--shop-line, var(--line)));
}
.ad-card.is-feature:hover {
  border-color: var(--ad-tone);
}

.ad-row-wrap {
  margin: 0 0 20px;
}
.ad-row-carousel > .ad-carousel-viewport {
  min-width: 0;
}
.ad-row-carousel > .ad-carousel-dots {
  display: none;
}
@media (min-width: 981px) {
  .ad-row-carousel.ad-row,
  .dash-avaro .ad-row-wrap .ad-row.ad-row-carousel {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
  }
  .ad-row-carousel > .ad-carousel-viewport {
    display: contents;
  }
  .ad-row-carousel .ad-card {
    flex: unset;
    width: auto;
    min-width: 0;
    max-width: none;
    scroll-snap-align: unset;
  }
  .ad-row-carousel > .ad-carousel-dots {
    display: none !important;
  }
}
.dash-shop .ad-row,
.dash-admin .ad-row {
  width: 100%;
  max-width: none;
}

.profil-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 8px auto 28px;
  padding: 0;
  background: transparent;
  border: none;
  width: fit-content;
  max-width: 100%;
  justify-content: center;
}
.profil-tabs a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 40px;
  padding: 8px 18px;
  border-radius: 6px;
  border: 1px solid var(--shop-line, var(--line));
  background: #fff;
  font-size: 14px;
  font-weight: 600;
  color: var(--shop-muted, var(--muted));
  text-decoration: none;
  transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}
.profil-tabs a:hover {
  color: var(--shop-ink, var(--navy));
  background: #f4f7fa;
  border-color: var(--shop-line, var(--line));
}
.profil-tabs a.is-on {
  color: #fff;
  background: var(--shop-accent, var(--navy));
  border-color: var(--shop-accent, var(--navy));
}
.dash-shop .profil-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 -1px;
  padding: 10px 12px;
  background: #f7fafc;
  border: 1px solid var(--shop-line);
  border-bottom: 0;
  border-radius: 8px 8px 0 0;
  width: auto;
  max-width: none;
  justify-content: center;
}
.dash-shop .profil-tabs + .form-card,
.dash-shop .profil-tabs + .flash + .form-card {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
.dash-shop .firma-video-panel {
  padding: 8px;
}
.dash-shop .firma-video-panel .or-video-admin {
  padding: 12px 16px 16px;
}
.dash-shop .map-icon-file {
  border-color: var(--shop-line, var(--line));
  background: #f7fafc;
  color: var(--shop-muted, var(--muted));
}
.dash-shop .map-icon-file:hover {
  border-color: var(--shop-accent, var(--accent));
  color: var(--shop-ink, var(--navy));
}

.service-picks {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(168px, 1fr));
  gap: 16px;
  margin: 4px 0 18px;
}
.service-pick {
  display: block;
  cursor: pointer;
  user-select: none;
  position: relative;
}
.service-pick input {
  position: absolute;
  opacity: 0;
  width: 1px !important;
  min-height: 0 !important;
  margin: 0;
  pointer-events: none;
}
.service-pick-card {
  display: flex;
  flex-direction: column;
  height: 100%;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 8px;
  overflow: hidden;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}
.service-pick-media {
  position: relative;
  display: block;
  aspect-ratio: 16 / 11;
  background: #e8edf2;
  overflow: hidden;
}
.service-pick-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  filter: saturate(0.82) contrast(1.04);
  transition: filter 0.2s ease, transform 0.25s ease;
}
.service-pick-icon {
  position: absolute;
  left: 10px;
  bottom: 10px;
  width: 34px;
  height: 34px;
  border-radius: 6px;
  background: rgba(255,255,255,0.95);
  color: var(--navy);
  display: grid;
  place-items: center;
  box-shadow: 0 4px 12px rgba(var(--navy-rgb), 0.12);
}
.service-pick-foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 12px 12px 14px;
  background: #fff;
  border-top: 1px solid var(--line);
}
.service-pick-name {
  font-size: 13px;
  font-weight: 600;
  color: var(--ink);
  line-height: 1.3;
  text-align: left;
}
.service-pick-toggle {
  width: 42px;
  height: 24px;
  border-radius: 999px;
  background: #c5ced6;
  position: relative;
  flex-shrink: 0;
  transition: background 0.2s ease;
}
.service-pick-toggle i {
  position: absolute;
  top: 3px;
  left: 3px;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 1px 4px rgba(var(--navy-rgb), 0.2);
  transition: transform 0.2s ease;
}
.service-pick:hover .service-pick-card {
  border-color: #b8c4ce;
  transform: translateY(-2px);
  box-shadow: 0 10px 24px rgba(var(--navy-rgb), 0.08);
}
.service-pick input:checked + .service-pick-card {
  border-color: var(--accent);
  box-shadow: 0 0 0 2px rgba(var(--accent-rgb), 0.18);
}
.service-pick input:checked + .service-pick-card .service-pick-media img {
  filter: none;
  transform: scale(1.03);
}
.service-pick input:checked + .service-pick-card .service-pick-toggle {
  background: var(--accent);
}
.service-pick input:checked + .service-pick-card .service-pick-toggle i {
  transform: translateX(18px);
}
.service-pick input:checked + .service-pick-card .service-pick-name {
  color: var(--accent);
}
.service-pick input:focus-visible + .service-pick-card {
  box-shadow: 0 0 0 3px rgba(var(--accent-rgb), 0.22);
}

/* Site promo: ana sayfa service-tile / firma-card dili */
.promo-strip {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
  align-items: stretch;
}
.promo-card {
  display: flex;
  flex-direction: column;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  overflow: hidden;
  height: 100%;
  transition: border-color 0.25s ease, box-shadow 0.25s ease, transform 0.25s ease;
}
.promo-card:hover {
  border-color: var(--line);
  box-shadow: 0 14px 32px rgba(var(--navy-rgb), 0.1);
  transform: translateY(-5px);
}
.promo-card-media {
  display: block;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  background: var(--cream);
  position: relative;
}
.promo-card-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  filter: saturate(0.9) contrast(1.04);
  transition: transform 0.45s ease, filter 0.45s ease;
}
.promo-card-media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(238, 246, 251, 0.08) 0%, rgba(var(--navy-rgb), 0.04) 45%, rgba(var(--navy-rgb), 0.22) 100%);
  pointer-events: none;
}
.promo-card:hover .promo-card-media img {
  transform: scale(1.05);
  filter: saturate(0.96) contrast(1.06);
}
.promo-card-body {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 18px 18px 20px;
  flex: 1;
}
.promo-card-body .eyebrow {
  margin: 0;
}
.promo-card-icon {
  width: 36px;
  height: 36px;
  border-radius: var(--radius);
  background: var(--cream);
  color: var(--accent);
  display: grid;
  place-items: center;
}
.promo-card-body strong {
  font-size: 17px;
  font-weight: 600;
  color: var(--ink);
  letter-spacing: -0.02em;
  line-height: 1.3;
}
.promo-card-body em {
  font-style: normal;
  font-size: 14px;
  line-height: 1.55;
  color: var(--muted);
  flex: 1;
}
.promo-card-cta {
  margin-top: 6px;
  font-size: 13px;
  font-weight: 600;
  color: var(--accent);
}
.promo-card:hover .promo-card-cta { color: var(--navy); }
.promo-card.is-feature {
  border-color: rgba(var(--accent-rgb), 0.28);
  box-shadow: 0 8px 24px rgba(var(--accent-rgb), 0.1);
}
.promo-card.is-feature .promo-card-icon {
  background: rgba(var(--accent-rgb), 0.1);
  color: var(--accent);
}

.promo-strip.promo-carousel > .ad-carousel-viewport,
.cards.cards-carousel > .ad-carousel-viewport,
.promise-grid.promise-carousel > .ad-carousel-viewport {
  min-width: 0;
}
.promo-strip.promo-carousel > .ad-carousel-dots,
.cards.cards-carousel > .ad-carousel-dots,
.promise-grid.promise-carousel > .ad-carousel-dots {
  display: none;
}
@media (min-width: 981px) {
  .promo-strip.promo-carousel > .ad-carousel-viewport,
  .cards.cards-carousel > .ad-carousel-viewport,
  .promise-grid.promise-carousel > .ad-carousel-viewport {
    display: contents;
  }
  .promo-strip.promo-carousel .promo-card,
  .cards.cards-carousel > .ad-carousel-viewport > .card,
  .promise-grid.promise-carousel > .ad-carousel-viewport > .promise {
    flex: unset;
    width: auto;
    min-width: 0;
    max-width: none;
    scroll-snap-align: unset;
    height: auto;
    min-height: 0;
  }
  .promo-strip.promo-carousel > .ad-carousel-dots,
  .cards.cards-carousel > .ad-carousel-dots,
  .promise-grid.promise-carousel > .ad-carousel-dots {
    display: none !important;
  }
}

.site-footer {
  background:
    radial-gradient(ellipse at 12% 8%, rgba(var(--accent-rgb), 0.32), transparent 44%),
    radial-gradient(ellipse at 88% 92%, rgba(var(--accent-rgb), 0.16), transparent 42%),
    linear-gradient(180deg, #0b1f3a 0%, var(--navy) 48%, #061426 100%);
  color: #fff;
  padding: 48px 0 24px;
  position: relative;
  overflow: hidden;
  isolation: isolate;
}
.site-footer::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(90deg, transparent, var(--accent), rgba(var(--accent-rgb), 0.5), var(--accent), transparent);
  background-size: 200% 100%;
  animation: foot-border-flow 6s ease-in-out infinite;
  z-index: 2;
}
.site-footer::after {
  content: "";
  position: absolute;
  right: -120px;
  bottom: -160px;
  width: 360px;
  height: 360px;
  border-radius: 50%;
  border: 48px solid rgba(255,255,255,0.03);
  pointer-events: none;
  animation: foot-ring-spin 48s linear infinite;
}
.foot-fx {
  position: absolute;
  inset: 0;
  pointer-events: none;
  overflow: hidden;
  z-index: 0;
}
.foot-orb {
  position: absolute;
  border-radius: 50%;
  filter: blur(60px);
  opacity: 0.55;
  will-change: transform;
}
.foot-orb-a {
  width: 320px;
  height: 320px;
  top: -80px;
  left: -60px;
  background: rgba(var(--accent-rgb), 0.35);
  animation: foot-orb-a 18s ease-in-out infinite alternate;
}
.foot-orb-b {
  width: 280px;
  height: 280px;
  right: 8%;
  bottom: 10%;
  background: rgba(var(--gold-rgb), 0.14);
  animation: foot-orb-b 22s ease-in-out infinite alternate;
}
.foot-mesh {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 20% 30%, rgba(var(--accent-rgb), 0.08), transparent 40%),
    radial-gradient(circle at 80% 70%, rgba(var(--accent-rgb), 0.06), transparent 35%);
  animation: foot-mesh-shift 14s ease-in-out infinite alternate;
}
.foot-grain {
  position: absolute;
  inset: 0;
  opacity: 0.04;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  animation: grain-shift 8s steps(6) infinite;
}
.foot-partner {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  padding: 28px 32px;
  margin-bottom: 28px;
  border-radius: 8px;
  border: 1px solid rgba(255,255,255,0.14);
  background:
    linear-gradient(135deg, rgba(var(--accent-rgb), 0.24), rgba(255,255,255,0.05) 55%),
    rgba(255,255,255,0.04);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  box-shadow:
    0 18px 40px rgba(0,0,0,0.22),
    inset 0 1px 0 rgba(255,255,255,0.12);
  overflow: hidden;
}
.foot-partner::before {
  content: "";
  position: absolute;
  inset: -1px;
  border-radius: inherit;
  padding: 1px;
  background: linear-gradient(120deg, rgba(var(--accent-rgb), 0.7), transparent 35%, rgba(var(--gold-rgb), 0.35), transparent 70%, rgba(var(--accent-rgb), 0.5));
  background-size: 220% 220%;
  animation: foot-border-glow 8s ease-in-out infinite;
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  pointer-events: none;
}
.foot-partner-glow {
  position: absolute;
  inset: auto -40px -60px auto;
  width: 220px;
  height: 220px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(var(--accent-rgb), 0.45), transparent 70%);
  pointer-events: none;
  animation: foot-glow-pulse 4s ease-in-out infinite;
}
.foot-partner-copy {
  position: relative;
  max-width: 52ch;
}
.foot-partner-badge {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin-bottom: 10px;
  padding: 5px 11px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,0.14);
  background: rgba(255,255,255,0.08);
  color: rgba(255,255,255,0.88);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.02em;
}
.foot-partner h2 {
  margin: 0;
  color: #fff;
  font-size: clamp(20px, 2.2vw, 26px);
  letter-spacing: -0.02em;
  line-height: 1.2;
}
.foot-partner h2 em {
  font-style: normal;
  background: linear-gradient(90deg, #fff 0%, var(--accent) 50%, #fff 100%);
  background-size: 200% auto;
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  animation: foot-text-shimmer 5s ease-in-out infinite;
}
.foot-partner p {
  margin: 8px 0 0 !important;
  color: rgba(255,255,255,0.72) !important;
  font-size: 14px;
  line-height: 1.6;
}
.foot-partner-actions {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  flex-shrink: 0;
}
.foot-partner-actions .btn-accent {
  width: auto;
  max-width: none;
  min-width: 150px;
}
.foot-partner-ghost {
  border-color: rgba(255,255,255,0.22) !important;
  color: #fff !important;
  background: transparent !important;
}
.foot-partner-ghost:hover {
  background: rgba(255,255,255,0.1) !important;
  border-color: rgba(255,255,255,0.4) !important;
}
.foot-flow {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 36px;
}
.foot-flow-track {
  position: absolute;
  top: 50%;
  left: 8%;
  right: 8%;
  height: 2px;
  transform: translateY(-50%);
  background: rgba(255,255,255,0.08);
  border-radius: 2px;
  overflow: hidden;
  pointer-events: none;
  z-index: 0;
}
.foot-flow-progress {
  display: block;
  height: 100%;
  width: 34%;
  border-radius: inherit;
  background: linear-gradient(90deg, transparent, var(--accent), rgba(var(--accent-rgb), 0.4));
  animation: foot-flow-progress 9s ease-in-out infinite;
}
.foot-flow-step {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 16px 18px;
  border-radius: 8px;
  border: 1px solid rgba(255,255,255,0.1);
  background: rgba(255,255,255,0.045);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  transition: border-color 0.25s ease, background 0.25s ease, transform 0.25s ease, box-shadow 0.25s ease;
}
.foot-flow-step:hover {
  border-color: rgba(var(--accent-rgb), 0.45);
  background: rgba(var(--accent-rgb), 0.1);
  transform: translateY(-3px);
  box-shadow: 0 12px 28px rgba(0,0,0,0.18);
}
.foot-flow-num {
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  border-radius: 6px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(var(--accent-rgb), 0.18);
  border: 1px solid rgba(var(--accent-rgb), 0.35);
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.04em;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}
.foot-flow-step:hover .foot-flow-num {
  transform: scale(1.06);
  box-shadow: 0 0 0 4px rgba(var(--accent-rgb), 0.15);
}
.foot-flow-step strong {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  margin-bottom: 2px;
}
.foot-flow-step strong .ico { color: var(--accent); }
.foot-flow-step span:not(.foot-flow-num) {
  display: block;
  color: rgba(255,255,255,0.58);
  font-size: 12.5px;
  line-height: 1.4;
}
.foot-top {
  display: grid;
  grid-template-columns: 1.45fr 0.75fr 0.9fr 1.05fr;
  gap: 36px 28px;
  align-items: start;
  position: relative;
  z-index: 1;
}
.foot-brand .brand-light { margin-bottom: 16px; }
.foot-lead {
  color: rgba(255,255,255,0.68) !important;
  max-width: 34ch;
  font-size: 14px;
  line-height: 1.7;
  margin-bottom: 18px !important;
  display: block;
}
.foot-trust {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 18px;
}
.foot-trust li {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 7px 12px;
  border-radius: 999px;
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.1);
  font-size: 12px;
  font-weight: 500;
  color: rgba(255,255,255,0.82);
  transition: border-color 0.2s ease, background 0.2s ease, transform 0.2s ease;
}
.foot-trust li:hover {
  border-color: rgba(var(--accent-rgb), 0.4);
  background: rgba(var(--accent-rgb), 0.12);
  transform: translateY(-2px);
}
.foot-top.reveal-on.is-visible .foot-trust li:nth-child(1) { animation: foot-pill-bob 3.6s ease-in-out infinite; }
.foot-top.reveal-on.is-visible .foot-trust li:nth-child(2) { animation: foot-pill-bob 3.6s ease-in-out 0.4s infinite; }
.foot-top.reveal-on.is-visible .foot-trust li:nth-child(3) { animation: foot-pill-bob 3.6s ease-in-out 0.8s infinite; }
.foot-mini-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  max-width: 340px;
}
.foot-mini-stat {
  position: relative;
  padding: 12px 10px;
  border-radius: 6px;
  border: 1px solid rgba(255,255,255,0.1);
  background: rgba(0,0,0,0.16);
  text-align: center;
  overflow: hidden;
  transition: border-color 0.25s ease, transform 0.25s ease, box-shadow 0.25s ease;
}
.foot-mini-stat::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(120deg, transparent 30%, rgba(255,255,255,0.08) 50%, transparent 70%);
  transform: translateX(-120%);
  transition: transform 0.6s ease;
}
.foot-mini-stat:hover {
  border-color: rgba(var(--accent-rgb), 0.35);
  transform: translateY(-3px);
  box-shadow: 0 10px 24px rgba(0,0,0,0.2);
}
.foot-mini-stat:hover::before { transform: translateX(120%); }
.foot-mini-stat b {
  display: block;
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: -0.02em;
  line-height: 1.1;
  margin-bottom: 4px;
  font-variant-numeric: tabular-nums;
}
.foot-mini-stat-live b.foot-stat-pulse {
  background: linear-gradient(90deg, #fff, var(--accent), #fff);
  background-size: 200% auto;
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  animation: foot-text-shimmer 3.5s ease-in-out infinite;
}
.foot-mini-stat span {
  display: block;
  color: rgba(255,255,255,0.55);
  font-size: 11px;
  line-height: 1.3;
}
.foot-col h3 {
  margin: 0 0 16px;
  padding-bottom: 10px;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #fff;
  line-height: 1.2;
  border-bottom: 1px solid rgba(255,255,255,0.1);
  position: relative;
}
.foot-col h3::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -1px;
  width: 28px;
  height: 2px;
  border-radius: 2px;
  background: var(--accent);
  animation: foot-title-grow 4s ease-in-out infinite;
}
.foot-col > a:not(.btn):not(.foot-contact-row) {
  color: rgba(255,255,255,0.68);
  display: block;
  margin-bottom: 10px;
  font-size: 14px;
  font-weight: 400;
  transition: color 0.2s ease, transform 0.2s ease, padding-left 0.2s ease;
}
.foot-col > a:not(.btn):not(.foot-contact-row):hover {
  color: #fff;
  transform: translateX(3px);
  padding-left: 4px;
}
.foot-contact .foot-contact-row {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 12px;
  color: rgba(255,255,255,0.78);
  font-size: 14px;
  line-height: 1.45;
}
.foot-contact a.foot-contact-row:hover { color: #fff; transform: none; }
.foot-ico {
  width: 32px;
  height: 32px;
  border-radius: 6px;
  background: rgba(255,255,255,0.08);
  border: 1px solid rgba(255,255,255,0.1);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--gold);
  flex-shrink: 0;
  transition: background 0.25s ease, border-color 0.25s ease, color 0.25s ease, transform 0.25s ease, box-shadow 0.25s ease;
}
.foot-contact-row:hover .foot-ico {
  background: rgba(var(--accent-rgb), 0.2);
  border-color: rgba(var(--accent-rgb), 0.45);
  color: #fff;
  transform: scale(1.08);
  box-shadow: 0 0 16px rgba(var(--accent-rgb), 0.35);
}
.foot-ico .ico {
  display: block;
  vertical-align: 0;
}
.foot-hours {
  display: flex !important;
  align-items: center;
  gap: 8px;
  margin: 0 0 14px !important;
  padding: 8px 12px;
  border-radius: 6px;
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.08);
  color: rgba(255,255,255,0.7) !important;
  font-size: 12.5px;
  line-height: 1.35;
}
.foot-hours .ico {
  color: var(--accent);
  animation: foot-clock-tick 2s ease-in-out infinite;
}
.foot-btn-shine {
  position: relative;
  overflow: hidden;
  isolation: isolate;
}
.foot-btn-shine::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(105deg, transparent 40%, rgba(255,255,255,0.35) 50%, transparent 60%);
  background-size: 220% 100%;
  animation: btn-shine 4.5s ease-in-out infinite;
  pointer-events: none;
}
.foot-contact-actions {
  margin-top: 22px;
  padding-top: 22px;
  border-top: 1px solid rgba(255,255,255,0.12);
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.foot-social-block {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.foot-actions-label {
  display: block;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.45);
}
.site-footer .social {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0;
}
.site-footer .social a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  width: 36px;
  height: 36px;
  flex-shrink: 0;
  line-height: 0;
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,0.16);
  border-radius: 50%;
  background: rgba(255,255,255,0.06);
  color: rgba(255,255,255,0.82);
  transition: background 0.2s ease, color 0.2s ease, transform 0.2s ease, border-color 0.2s ease;
}
.site-footer .social a::after {
  content: none;
}
.site-footer .social a:hover {
  background: rgba(255,255,255,0.14);
  border-color: rgba(255,255,255,0.32);
  color: #fff;
  transform: translateY(-2px);
  box-shadow: none;
}
.site-footer .social a .ico {
  display: block;
  vertical-align: 0;
  position: relative;
  z-index: 1;
}
.site-footer .foot-contact-actions .btn-accent {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: none;
  margin: 0;
  line-height: 1;
  box-sizing: border-box;
  box-shadow: 0 10px 28px rgba(var(--accent-rgb), 0.28);
}
.site-footer .btn-accent {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 200px;
  margin: 0;
  line-height: 1;
  box-sizing: border-box;
}
.site-footer a:not(.btn):not(.brand),
.site-footer p { color: rgba(255,255,255,0.7); }
.foot-cities {
  position: relative;
  z-index: 1;
  margin-top: 36px;
  padding: 22px 24px;
  border-radius: 8px;
  border: 1px solid rgba(255,255,255,0.1);
  background: rgba(255,255,255,0.035);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  overflow: hidden;
}
.foot-cities::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(var(--accent-rgb), 0.06), transparent 40%, rgba(var(--accent-rgb), 0.04));
  pointer-events: none;
}
.foot-city {
  display: inline-flex !important;
  align-items: center;
  gap: 6px;
  margin: 0 !important;
  padding: 8px 12px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,0.12);
  background: rgba(255,255,255,0.05);
  color: rgba(255,255,255,0.82) !important;
  font-size: 13px;
  line-height: 1.2;
  transition: background 0.25s ease, border-color 0.25s ease, color 0.25s ease, transform 0.25s ease, box-shadow 0.25s ease;
}
.foot-city:hover {
  background: rgba(var(--accent-rgb), 0.2);
  border-color: rgba(var(--accent-rgb), 0.45);
  color: #fff !important;
  transform: translateY(-2px) scale(1.02) !important;
  box-shadow: 0 8px 18px rgba(var(--accent-rgb), 0.25);
}
.foot-cities-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 14px;
  position: relative;
  z-index: 1;
}
.foot-cities-head h3 {
  margin: 0;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #fff;
}
.foot-cities-head a {
  display: inline-flex !important;
  align-items: center;
  gap: 6px;
  margin: 0 !important;
  color: rgba(255,255,255,0.7) !important;
  font-size: 13px;
  font-weight: 500;
  transition: color 0.2s ease;
}
.foot-cities-head a:hover {
  color: #fff !important;
  transform: none !important;
}
.foot-city-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  position: relative;
  z-index: 1;
}
.foot-grid {
  display: grid;
  grid-template-columns: 1.4fr 0.8fr 0.8fr;
  gap: 32px;
}
.copy {
  margin-top: 28px;
  padding-top: 18px;
  border-top: 1px solid rgba(255,255,255,0.1);
  font-size: 13px;
  color: rgba(255,255,255,0.48);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
  position: relative;
  z-index: 1;
}
.copy-links {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 16px;
}
.copy-links a {
  color: rgba(255,255,255,0.55) !important;
  margin: 0 !important;
  font-size: 13px;
  line-height: 1.2;
  display: inline-flex !important;
  align-items: center;
  transition: color 0.2s ease;
}
.copy-links a:hover { color: #fff !important; transform: none !important; }

.dash { min-height: 100vh; background: var(--bg); }
.dash-top { display: flex; flex-direction: column; }
.dash-top > .dash-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  min-height: 68px;
  padding: 0 28px;
  background: var(--navy);
  color: #fff;
}
.dash-top > .dash-bar .brand-light { margin: 0; color: #fff; }
.dash-top > .dash-bar .brand span {
  display: inline-flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 0 8px;
}
.dash-top > .dash-bar .brand em {
  font-style: normal;
  font-weight: 400;
  font-size: 12px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--gold);
  max-width: 28ch;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.dash-nav { display: flex; align-items: center; flex-wrap: wrap; gap: 4px; }
.dash-nav a {
  display: inline-flex;
  align-items: center;
  color: rgba(255,255,255,0.78);
  padding: 8px 12px;
  border-radius: 6px;
  font-size: 14px;
  font-weight: 500;
}
.dash-nav a.active,
.dash-nav a:hover { background: rgba(255,255,255,0.1); color: #fff; }
.dash-nav-exit { border: 1px solid rgba(255,255,255,0.18); }
.dash-main { padding: 28px 32px 48px; }
.dash-avaro .dash-main {
  max-width: none;
  width: 100%;
  margin: 0;
  padding: 28px 32px 48px;
}
.dash-avaro .stats {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.dash-stack {
  display: flex;
  flex-direction: column;
  gap: 14px;
  min-width: 0;
}
.dash-stack > .stats-block { margin-bottom: 0; }

.dash-avaro { display: flex; flex-direction: column; background: var(--bg); }
.avaro-topbar {
  position: sticky;
  top: 0;
  z-index: 30;
  background: var(--navy);
  border-bottom: 1px solid rgba(255,255,255,0.08);
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 0;
  padding: 0;
  min-height: 0;
  color: #fff;
}
.avaro-view-banner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px 16px;
  flex-wrap: wrap;
  padding: 8px 24px;
  background: #075985;
  color: #fff;
  border-bottom: 1px solid rgba(255,255,255,0.12);
}
.dash-admin .avaro-view-banner {
  background: #115e59;
}
.avaro-view-banner p {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  min-width: 0;
  font-size: 13px;
  line-height: 1.35;
}
.avaro-view-banner p svg {
  flex-shrink: 0;
}
.avaro-view-banner-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}
.avaro-view-banner .avaro-view-btn,
.dash-shop .avaro-view-banner .avaro-view-btn,
.dash-shop .avaro-view-banner button.avaro-view-btn {
  background: #38bdf8 !important;
  background-color: #38bdf8 !important;
  color: #075985 !important;
  -webkit-text-fill-color: #075985 !important;
  border-color: #38bdf8 !important;
}
.avaro-view-banner .avaro-view-btn:hover,
.dash-shop .avaro-view-banner .avaro-view-btn:hover,
.dash-shop .avaro-view-banner button.avaro-view-btn:hover {
  background: #7dd3fc !important;
  background-color: #7dd3fc !important;
  color: #075985 !important;
  -webkit-text-fill-color: #075985 !important;
  border-color: #7dd3fc !important;
}
.dash-admin .avaro-view-banner .avaro-view-btn,
.dash-admin .avaro-view-banner button.avaro-view-btn {
  background: #2dd4bf !important;
  background-color: #2dd4bf !important;
  color: #134e4a !important;
  -webkit-text-fill-color: #134e4a !important;
  border-color: #2dd4bf !important;
}
.dash-admin .avaro-view-banner .avaro-view-btn:hover,
.dash-admin .avaro-view-banner button.avaro-view-btn:hover {
  background: #5eead4 !important;
  background-color: #5eead4 !important;
  color: #134e4a !important;
  -webkit-text-fill-color: #134e4a !important;
  border-color: #5eead4 !important;
}
.avaro-identity {
  display: flex;
  align-items: center;
  gap: 14px;
  min-width: 0;
  max-width: 100%;
  flex: 0 1 auto;
  overflow: hidden;
}
.avaro-brand {
  color: #fff;
  display: flex;
  align-items: center;
  gap: 10px;
  flex-shrink: 1;
  min-width: 0;
  max-width: 100%;
  padding: 0;
  overflow: hidden;
}
.avaro-brand:hover {
  color: #fff;
  opacity: 0.92;
}
.avaro-mark {
  width: 36px;
  height: 36px;
  border-radius: 6px;
  background: rgba(255,255,255,0.1);
  color: var(--gold);
  display: grid;
  place-items: center;
  flex-shrink: 0;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.16);
}
.avaro-mark svg { width: 18px; height: 18px; }
.avaro-brand-text { display: grid; gap: 1px; min-width: 0; overflow: hidden; }
.avaro-brand-text strong {
  font-family: var(--brand);
  font-size: 14px;
  letter-spacing: 0.02em;
  font-weight: 800;
  line-height: 1.2;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.avaro-brand-text small {
  color: var(--gold);
  letter-spacing: 0.01em;
  font-size: 11px;
  font-weight: 500;
  line-height: 1.25;
  min-width: 0;
  max-width: 28ch;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.avaro-nav {
  display: flex;
  flex-wrap: nowrap;
  align-items: stretch;
  justify-content: center;
  flex: 1 1 auto;
  min-width: 0;
  overflow-x: auto;
  scrollbar-width: none;
  gap: 4px;
  padding: 8px 24px 10px;
}
.avaro-nav::-webkit-scrollbar { display: none; }
.avaro-nav a {
  color: rgba(255,255,255,0.88);
  flex: 0 0 auto;
  width: 104px;
  min-width: 92px;
  min-height: 64px;
  padding: 10px 8px 8px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  line-height: 1.2;
  white-space: normal;
  position: relative;
  border-radius: 6px;
}
.avaro-nav a span {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  max-width: 100%;
  text-align: center;
  word-break: break-word;
}
.avaro-nav a svg { width: 22px; height: 22px; color: var(--gold); flex-shrink: 0; }
.avaro-nav a.is-on,
.avaro-nav a:hover { background: rgba(255,255,255,0.12); color: #fff; }
.avaro-nav a.is-on::after {
  display: none;
}
.avaro-nav-badge {
  position: absolute;
  top: 6px;
  right: 10px;
  min-width: 16px;
  height: 16px;
  padding: 0 4px;
  border-radius: 999px;
  background: #f43f5e;
  color: #fff;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0;
  line-height: 16px;
  text-align: center;
  text-transform: none;
}
.avaro-foot {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  font-size: 13px;
  color: rgba(255,255,255,0.62);
  margin-left: auto;
  min-width: 0;
  flex-shrink: 0;
}
.avaro-live-cluster {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.avaro-tools {
  display: flex;
  align-items: center;
  gap: 6px;
}
.avaro-tool {
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-width: 0;
  min-height: 32px;
  padding: 5px 10px;
  color: #fff;
  border: 1px solid rgba(255,255,255,0.22);
  border-radius: 4px;
  background: transparent;
  font: inherit;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.02em;
  text-transform: none;
  cursor: pointer;
  line-height: 1.15;
  text-decoration: none;
  text-align: center;
  white-space: nowrap;
}
.avaro-tool svg,
.avaro-tool .ico {
  width: 16px;
  height: 16px;
  display: block;
}
.avaro-tool:hover {
  border-color: var(--gold);
  color: var(--gold);
  background: rgba(255,255,255,0.06);
}
.avaro-user {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 4px 12px 4px 4px;
  border: 0;
  border-radius: 999px;
  background: rgba(255,255,255,0.07);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.1);
  flex-shrink: 0;
  min-width: 0;
  position: relative;
}
.avaro-user::before {
  content: "";
  position: absolute;
  left: -8px;
  top: 50%;
  width: 1px;
  height: 22px;
  background: rgba(255,255,255,0.14);
  transform: translate(-100%, -50%);
}
.avaro-avatar {
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: rgba(255,255,255,0.12);
  color: #fff;
  display: grid;
  place-items: center;
  font-weight: 700;
  flex-shrink: 0;
  font-size: 12px;
  letter-spacing: 0;
  overflow: hidden;
}
.avaro-avatar.has-photo {
  background: #fff;
  padding: 0;
}
.avaro-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.avaro-avatar-lg {
  width: 88px;
  height: 88px;
  font-size: 28px;
}
.avaro-meta { display: grid; gap: 1px; line-height: 1.25; min-width: 0; }
.avaro-meta b { display: block; color: #fff; font-size: 12px; font-weight: 600; max-width: 28ch; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.avaro-meta small { color: var(--gold); font-size: 11px; letter-spacing: 0; font-weight: 500; }

.avaro-top-row {
  display: flex;
  align-items: center;
  gap: 16px;
  width: 100%;
  min-height: 56px;
  padding: 8px 24px;
  box-sizing: border-box;
}
.avaro-sub-row {
  display: none;
}
.avaro-page-title,
.avaro-top-actions {
  display: none;
}
.avaro-user-menu {
  position: relative;
}
.avaro-user-backdrop {
  display: none;
}
.avaro-user-trigger {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: transparent;
  cursor: pointer;
}
.avaro-user-trigger .avaro-avatar {
  width: 36px;
  height: 36px;
}
.avaro-user-dropdown {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  z-index: 60;
  min-width: 240px;
  max-width: min(280px, calc(100vw - 24px));
  padding: 8px;
  border-radius: 6px;
  background: #fff;
  border: 1px solid var(--line);
  box-shadow: 0 16px 40px rgba(var(--navy-rgb), 0.16);
}
.avaro-user-dropdown[hidden] {
  display: none;
}
.avaro-dropdown-meta {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 10px 10px;
  border-bottom: 1px solid var(--line);
  margin-bottom: 4px;
}
.avaro-dropdown-meta .avaro-avatar {
  width: 40px;
  height: 40px;
  font-size: 14px;
  background: var(--accent, #2563eb);
  color: #fff;
}
.avaro-dropdown-meta-text {
  display: grid;
  gap: 2px;
  min-width: 0;
  flex: 1;
}
.avaro-dropdown-meta b {
  font-size: 13px;
  font-weight: 600;
  color: var(--ink);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.avaro-dropdown-meta small {
  font-size: 11px;
  color: var(--muted);
}
.avaro-dropdown-item {
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  min-height: 44px;
  padding: 0 12px;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: var(--ink);
  font: inherit;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.3;
  text-align: left;
  cursor: pointer;
  text-decoration: none;
  box-sizing: border-box;
}
.avaro-dropdown-item:hover {
  background: var(--cream);
}
.avaro-dropdown-item--danger {
  color: #b42318;
}
.avaro-dropdown-item--danger:hover {
  background: #fef3f2;
}
.avaro-dropdown-item svg,
.avaro-dropdown-item .ico {
  flex: 0 0 16px;
  width: 16px;
  height: 16px;
  display: block;
}
.avaro-dropdown-label {
  flex: 1 1 auto;
  min-width: 0;
  white-space: nowrap;
}
.avatar-edit {
  display: grid;
  gap: 14px;
  justify-items: start;
}
.avatar-edit-preview,
.avatar-edit-preview .avaro-avatar {
  width: 88px;
  height: 88px;
  border-radius: 50%;
  overflow: hidden;
  display: grid;
  place-items: center;
  background: var(--cream);
  color: var(--ink);
  font-size: 28px;
  font-weight: 700;
}
.avatar-edit-preview.has-photo,
.avatar-edit-preview.has-photo .avaro-avatar {
  background: #fff;
}
.avatar-edit-preview img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.avatar-edit-remove {
  padding-top: 0;
  border-top: 1px solid var(--line);
}
.dash-egitim-slot--mobile {
  display: none;
}
.dash-egitim-slot .dash-egitim-btn,
.dash-egitim-slot .hs-egitim-btn {
  margin: 0;
}

.avaro-menu-btn {
  display: none;
}
.avaro-nav-shell {
  display: flex;
  flex: 0 0 auto;
  width: 100%;
  min-width: 0;
  align-items: stretch;
  justify-content: center;
  border-top: 1px solid rgba(255,255,255,0.1);
  background: transparent;
}
.avaro-drawer-backdrop,
.avaro-drawer-head,
.avaro-drawer-close {
  display: none;
}
.avaro-drawer-panel {
  display: flex;
  flex: 1 1 auto;
  min-width: 0;
  align-items: stretch;
}
body.avaro-menu-open {
  overflow: hidden;
}

@media (min-width: 769px) {
  .avaro-top-row {
    display: flex;
  }
  .avaro-sub-row {
    display: none !important;
  }
  .avaro-page-title,
  .avaro-top-actions,
  .avaro-menu-btn {
    display: none !important;
  }
  .avaro-nav-shell {
    display: flex;
    flex: 0 0 auto;
    width: 100%;
    min-width: 0;
    align-items: stretch;
  }
  .avaro-drawer-backdrop,
  .avaro-drawer-head,
  .avaro-drawer-close {
    display: none !important;
  }
  .avaro-drawer-panel {
    display: flex;
    flex: 1 1 auto;
    min-width: 0;
    align-items: stretch;
  }
  .avaro-nav {
    position: static;
    display: flex;
    flex-wrap: nowrap;
    flex-direction: row;
    align-items: stretch;
    justify-content: center;
    flex: 1 1 auto;
    width: auto;
    min-width: 0;
    overflow-x: auto;
    gap: 4px;
    padding: 8px 24px 10px;
    border: 0;
    box-shadow: none;
    transform: none;
  }
  .avaro-nav a {
    flex: 0 0 auto;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 6px;
    width: 104px;
    min-width: 92px;
    min-height: 64px;
    padding: 10px 8px 8px;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    white-space: normal;
    border-radius: 6px;
  }
  .avaro-nav a span {
    width: auto;
    max-width: 100%;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    text-overflow: ellipsis;
    white-space: normal;
    text-align: center;
  }
  .avaro-nav a svg {
    width: 22px;
    height: 22px;
  }
  .avaro-nav a.is-on::after {
    display: none;
  }
  .avaro-foot {
    display: flex;
  }
  .dash-page-head {
    display: flex;
  }
  .dash-egitim-slot--mobile {
    display: none !important;
  }
  .dash-egitim-slot--desktop {
    display: block;
  }
  .avaro-user-backdrop {
    display: none !important;
  }
  .dash-avaro .ad-row-wrap .ad-row:not(.ad-row-carousel) {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.dash-shop {
  --shop-header: #0b1f33;
  --shop-bar: #16324a;
  --shop-accent: #0284c7;
  --shop-accent-soft: #eef6fb;
  --shop-bg: #f3f8fb;
  --shop-ink: #0b1f33;
  --shop-muted: #5b6b7c;
  --shop-line: #d5e3ee;
  --navy: #0b1f33;
  --navy-rgb: 11, 31, 51;
  --ink: #0b1f33;
  --accent: #0284c7;
  --accent-hover: #0369a1;
  --accent-rgb: 2, 132, 199;
  --gold: #38bdf8;
  --gold-hover: #7dd3fc;
  --gold-rgb: 56, 189, 248;
  --gold-ink: #075985;
  --muted: #5b6b7c;
  --line: #d5e3ee;
  --bg: #f3f8fb;
  --cream: #eef6fb;
  background: var(--shop-bg);
}
.dash-shop .avaro-topbar {
  background: var(--shop-header);
  border-bottom-color: #16324a;
}
.dash-shop .avaro-nav-shell {
  background: transparent;
  border-top-color: rgba(255,255,255,0.1);
}
.dash-shop .avaro-mark {
  background: var(--shop-accent);
  color: #fff;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.22);
}
.dash-shop .avaro-brand-text small,
.dash-shop .avaro-meta small { color: #9fb3c8; }
.dash-shop .avaro-nav a svg { color: #38bdf8; }
.dash-shop .avaro-nav a.is-on,
.dash-shop .avaro-nav a:hover { background: rgba(255,255,255,0.12); }
.dash-shop .avaro-nav a.is-on::after { display: none; }
.dash-shop .avaro-avatar { background: var(--shop-accent); }
.dash-shop .avaro-tool {
  border-color: rgba(255,255,255,0.2);
}
.dash-shop .avaro-tool:hover {
  border-color: #38bdf8;
  color: #38bdf8;
}
.dash-shop .dash-main h1,
.dash-shop .dash-main h2,
.dash-shop .stat b { color: var(--shop-ink); }
.dash-shop .stat {
  background: #fff;
}
.dash-shop .stats {
  background: var(--shop-line);
  border-color: var(--shop-line);
}
.dash-shop .muted,
.dash-shop th { color: var(--shop-muted); }
.dash-shop .table-wrap,
.dash-shop .form-card,
.dash-shop .empty,
.dash-shop .filter-bar {
  border-color: var(--shop-line);
  background: #fff;
}
.dash-shop th { background: #f7fafc; }
.dash-shop th,
.dash-shop td { border-color: var(--shop-line); }
.dash-shop .btn-primary,
.dash-shop a.btn.btn-primary,
.dash-shop button.btn-primary {
  background: var(--shop-accent) !important;
}
.dash-shop .btn-primary:hover,
.dash-shop a.btn.btn-primary:hover {
  background: #0369a1 !important;
}
.dash-shop .btn:not(.btn-primary):not(.btn-danger):not(.btn-gold):not(.btn-accent):not(.avaro-view-btn) {
  background: #fff;
  color: var(--shop-ink);
  -webkit-text-fill-color: var(--shop-ink);
  border-color: var(--shop-line);
}
.dash-shop input:focus,
.dash-shop select:focus,
.dash-shop textarea:focus {
  border-color: var(--shop-accent);
  box-shadow: 0 0 0 3px rgba(2, 132, 199, 0.16);
}
.magaza-git-search:focus-within {
  border-color: var(--accent);
  background: #fff;
  box-shadow: 0 0 0 3px rgba(2, 132, 199, 0.16);
}
.dash-shop .magaza-git-search input,
.magaza-git-search input {
  width: auto;
  min-height: 40px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  -webkit-appearance: none;
  appearance: none;
}
.dash-shop .magaza-git-search input:focus,
.magaza-git-search input:focus {
  border: 0;
  box-shadow: none;
}
.dash-shop .badge-ok { background: #e6f6f0; color: #0f7b55; }
.dash-shop .badge-wait { background: #fff4df; color: #9a6700; }
.dash-shop .switch input:checked + i { background: var(--shop-accent); }
.dash-shop .hours-interval-picks input:checked + span { background: var(--shop-accent); }

.dash-admin {
  --admin-header: #101418;
  --admin-bar: #181d23;
  --admin-accent: #0f766e;
  --admin-accent-hover: #0d5f59;
  --admin-accent-soft: #f0fdfa;
  --admin-bg: #f4f6f7;
  --admin-ink: #111418;
  --admin-muted: #5c6570;
  --admin-line: #e4e7ea;
  --navy: #101418;
  --navy-rgb: 16, 20, 24;
  --blue: #181d23;
  --ink: #111418;
  --accent: #0f766e;
  --accent-hover: #0d5f59;
  --accent-rgb: 15, 118, 110;
  --gold: #2dd4bf;
  --gold-hover: #5eead4;
  --gold-rgb: 45, 212, 191;
  --gold-ink: #134e4a;
  --muted: #5c6570;
  --line: #e4e7ea;
  --bg: #f4f6f7;
  --cream: #f0fdfa;
  background: var(--admin-bg);
}
.dash-admin .avaro-topbar {
  background: var(--admin-header);
  border-bottom-color: rgba(45, 212, 191, 0.22);
  box-shadow: inset 0 2px 0 #2dd4bf;
}
.dash-admin .avaro-nav-shell {
  background: var(--admin-bar);
  border-top-color: rgba(255,255,255,0.08);
}
.dash-admin .avaro-mark {
  background: var(--admin-accent);
  color: #fff;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.22);
}
.dash-admin .avaro-brand-text small,
.dash-admin .avaro-meta small { color: #94a3b0; }
.dash-admin .avaro-nav a svg { color: #2dd4bf; }
.dash-admin .avaro-nav a.is-on,
.dash-admin .avaro-nav a:hover { background: rgba(45, 212, 191, 0.14); }
.dash-admin .avaro-nav a.is-on::after { display: none; }
.dash-admin .avaro-avatar { background: var(--admin-accent); }
.dash-admin .avaro-tool:hover { border-color: #2dd4bf; color: #2dd4bf; }
.dash-admin .avaro-live-sound:hover { border-color: #2dd4bf; color: #2dd4bf; }
.dash-admin .dash-stack {
  gap: 20px;
}
.dash-admin .dash-page-head {
  margin: 0 0 22px;
}
.dash-admin .dash-page-head h1,
.dash-admin .dash-main h1 {
  text-transform: none;
  letter-spacing: -0.03em;
  font-size: 22px;
  font-weight: 650;
}
.dash-admin .dash-panel-lead:has(+ .filter-bar-flush) {
  border-bottom: 0;
  padding-bottom: 8px;
}
.dash-admin .dash-panel-lead + .filter-bar-flush {
  background: var(--admin-accent-soft);
  border-bottom: 1px solid var(--admin-line);
  padding: 0 16px 16px;
}
.dash-admin .dash-panel > .filter-bar-flush:first-child {
  padding: 12px 16px;
  margin: 0;
  background: var(--admin-accent-soft);
  border-bottom: 1px solid var(--admin-line);
}
.dash-admin .dash-panel-head .actions {
  margin: 0;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 8px;
}

.dash-admin .dash-main h1,
.dash-admin .dash-main h2,
.dash-admin .stat b { color: var(--admin-ink); }
.dash-admin .stat { background: #fff; }
.dash-admin .stats { background: var(--admin-line); border-color: var(--admin-line); }
.dash-admin .muted { color: var(--admin-muted); }
.dash-admin .table-wrap,
.dash-admin .form-card,
.dash-admin .empty {
  border-color: var(--admin-line);
  background: #fff;
}
.dash-admin .dash-panel {
  border-color: var(--admin-line);
  background: #fff;
}
.dash-admin .dash-panel > h2 {
  display: flex;
  align-items: center;
  gap: 8px;
  color: var(--admin-ink);
  background: var(--admin-accent-soft);
  border-bottom-color: var(--admin-line);
}
.dash-admin .dash-panel-lead {
  background: var(--admin-accent-soft);
  border-bottom-color: var(--admin-line);
}
.dash-admin .dash-panel-lead + .dash-panel-actions {
  border-bottom-color: var(--admin-line);
}
.dash-admin .dash-panel .table-wrap + .pager,
.dash-admin .dash-panel > .pager {
  border-top-color: var(--admin-line);
}
.dash-panel-ico {
  display: inline-grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border-radius: 6px;
  background: #eff6ff;
  color: #2563eb;
  flex-shrink: 0;
}
.dash-panel-ico .ico { display: block; }
.dash-info {
  display: inline-flex;
  align-items: center;
  flex-shrink: 0;
  text-transform: none;
  letter-spacing: 0;
}
.dash-info-btn {
  display: inline-grid;
  place-items: center;
  width: 22px;
  height: 22px;
  margin: 0;
  padding: 0;
  border: 1px solid #cbd5e1;
  border-radius: 50%;
  background: #fff;
  color: #64748b;
  cursor: pointer;
  line-height: 0;
}
.dash-info-btn:hover,
.dash-info-btn:focus-visible,
.dash-info-btn.is-open {
  border-color: #2563eb;
  color: #2563eb;
  outline: none;
}
.dash-info-pop { display: none !important; }
.dash-info-float {
  position: fixed;
  z-index: 400;
  width: max-content;
  max-width: min(360px, calc(100vw - 24px));
  padding: 12px 14px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fff;
  color: var(--ink);
  box-shadow: 0 16px 40px rgba(15, 23, 42, 0.16);
  font-size: 13px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0;
  text-transform: none;
  text-align: left;
}
.dash-info-float[hidden] { display: none !important; }
.dash-info-float::before {
  content: "";
  position: absolute;
  left: var(--caret-x, 18px);
  top: -5px;
  width: 10px;
  height: 10px;
  background: #fff;
  border-top: 1px solid var(--line);
  border-left: 1px solid var(--line);
  transform: translateX(-50%) rotate(45deg);
}
.dash-info-float.is-above::before {
  top: auto;
  bottom: -5px;
  border: 0;
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}
.dash-admin .dash-panel-ico {
  background: var(--admin-accent-soft);
  color: var(--admin-accent);
}
.dash-shop .dash-panel-ico {
  background: #eef6fb;
  color: var(--shop-accent);
}
.dash-admin .dash-panel .stat {
  background: #fff;
  border-color: var(--admin-line);
  padding: 14px;
}
.dash-admin .dash-panel .stat b {
  font-size: 22px;
  line-height: 1.15;
}
.dash-admin .dash-panel .stat span {
  font-size: 12px;
  color: var(--admin-muted);
}
.dash-admin .dash-panel .table-wrap {
  border: 0;
}
.dash-admin .dash-panel > .stats {
  background: transparent;
  border: none;
}
.dash-admin .dash-panel-actions {
  border-top-color: var(--admin-line);
}
.dash-admin .dash-panel .empty {
  margin: 0;
  border-style: dashed;
  border-color: var(--admin-line);
  background: var(--admin-accent-soft);
  padding: 28px 20px;
}

.dash-kpi {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}
.dash-kpi:has(> :nth-child(5)) {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}
.dash-kpi:has(> :nth-child(6)) {
  grid-template-columns: repeat(6, minmax(0, 1fr));
}
@media (max-width: 1360px) {
  .dash-kpi:has(> :nth-child(5)) {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
.dash-kpi-card {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  background: #fff;
  border: 1px solid var(--admin-line, var(--line));
  border-radius: 6px;
  padding: 18px 16px;
  min-width: 0;
}
.dash-kpi-ico {
  width: 44px;
  height: 44px;
  border-radius: 6px;
  display: grid;
  place-items: center;
  flex-shrink: 0;
}
.dash-kpi-ico .ico { display: block; }
.dash-kpi-card > div {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}
.dash-kpi-card b {
  font-size: 28px;
  line-height: 1.1;
  color: var(--admin-ink);
  font-weight: 700;
}
.dash-kpi-card span {
  font-size: 13px;
  font-weight: 600;
  color: var(--admin-ink);
}
.dash-kpi-card small {
  font-size: 12px;
  color: var(--admin-muted);
  margin-top: 2px;
  line-height: 1.35;
}
a.dash-kpi-card {
  text-decoration: none;
  color: inherit;
  transition: border-color 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease;
}
a.dash-kpi-card:hover {
  border-color: #bae6fd;
  box-shadow: 0 8px 20px rgba(11, 31, 51, 0.06);
  transform: translateY(-1px);
  color: inherit;
}
.dash-kpi-card.is-alert {
  border-color: #fecdd3;
  box-shadow: inset 3px 0 0 #e11d48;
}
a.dash-kpi-card.is-alert:hover {
  border-color: #fda4af;
  box-shadow: inset 3px 0 0 #e11d48, 0 8px 20px rgba(15, 23, 42, 0.06);
}
.dash-attention {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.dash-attention a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 40px;
  padding: 8px 14px;
  background: #fff;
  border: 1px solid var(--admin-line, var(--line));
  border-radius: 6px;
  font-size: 13px;
  font-weight: 600;
  color: var(--admin-ink, var(--ink));
  text-decoration: none;
  transition: border-color 0.15s ease, background 0.15s ease;
}
.dash-attention a .ico { display: block; flex-shrink: 0; }
.dash-attention a.is-alert {
  border-color: #fecdd3;
  background: #fff7f8;
  color: #9f1239;
}
.dash-attention a:hover {
  border-color: #fda4af;
  background: #fff1f2;
  color: #9f1239;
}
.dash-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 20px;
  list-style: none;
  margin: 0;
  padding: 2px 2px 4px;
}
.dash-chips li {
  display: flex;
  align-items: baseline;
  gap: 6px;
  font-size: 13px;
  color: var(--admin-muted, var(--muted));
}
.dash-chips b {
  font-size: 15px;
  font-weight: 700;
  color: var(--admin-ink, var(--ink));
  font-variant-numeric: tabular-nums;
}
.dash-rank {
  list-style: none;
  margin: 0;
  padding: 6px 0;
}
.dash-rank li {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  padding: 11px 16px;
  border-bottom: 1px solid var(--admin-line, var(--line));
}
.dash-rank li:last-child { border-bottom: 0; }
.dash-rank-n {
  width: 24px;
  height: 24px;
  border-radius: 4px;
  background: #f1f5f9;
  color: #475569;
  display: grid;
  place-items: center;
  font-size: 11px;
  font-weight: 700;
}
.dash-rank-label {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 13px;
  font-weight: 550;
  color: var(--admin-ink, var(--ink));
}
.dash-rank b {
  font-variant-numeric: tabular-nums;
  font-size: 14px;
  color: var(--admin-ink, var(--ink));
}
.dash-grid > .dash-panel > .dash-panel-head + .table-wrap,
.dash-grid > .dash-panel > .dash-panel-head + .empty {
  flex: 1;
}
.dash-quick {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}
.dash-quick-link {
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  min-height: 52px;
  padding: 12px 14px;
  background: #fff;
  border: 1px solid var(--admin-line, var(--line));
  border-radius: 6px;
  color: var(--admin-ink, var(--ink));
  font-size: 13px;
  font-weight: 600;
  text-decoration: none;
  transition: border-color 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease;
}
.dash-quick-link:hover {
  border-color: #99f6e4;
  box-shadow: 0 6px 16px rgba(16, 20, 24, 0.06);
  transform: translateY(-1px);
  color: var(--admin-ink, var(--ink));
}
.dash-quick-text {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.dash-shop .dash-quick-link {
  border-color: var(--shop-line);
  color: var(--shop-ink);
}
.dash-shop .dash-quick-link:hover {
  border-color: #7dd3fc;
  color: var(--shop-ink);
}
.dash-quick-link.is-alert {
  border-color: #fecdd3;
  background: #fff1f2;
}
.dash-shop .dash-quick-link.is-alert {
  border-color: #fbd38d;
  background: #fffbeb;
}
.dash-quick-ico {
  width: 32px;
  height: 32px;
  border-radius: 6px;
  display: grid;
  place-items: center;
  flex-shrink: 0;
}
.dash-quick-ico .ico { display: block; }
.dash-admin .stat.has-ico,
.dash-shop .stat.has-ico,
.dash-panel .stat.has-ico {
  display: flex;
  align-items: center;
  gap: 12px;
}
.dash-admin .stat-ico,
.dash-shop .stat-ico,
.dash-panel .stat-ico {
  width: 34px;
  height: 34px;
  border-radius: 6px;
  display: grid;
  place-items: center;
  flex-shrink: 0;
}
.dash-admin .stat-ico .ico,
.dash-shop .stat-ico .ico,
.dash-panel .stat-ico .ico { display: block; }
.dash-admin .stat-copy,
.dash-shop .stat-copy,
.dash-panel .stat-copy {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}
.dash-admin .tone-blue .stat-ico,
.dash-shop .tone-blue .stat-ico,
.dash-admin .dash-quick-ico.tone-blue,
.dash-shop .dash-quick-ico.tone-blue,
.dash-kpi-card.tone-blue .dash-kpi-ico { background: #eef6fb; color: #0284c7; }
.dash-admin .tone-teal .stat-ico,
.dash-shop .tone-teal .stat-ico,
.dash-admin .dash-quick-ico.tone-teal,
.dash-shop .dash-quick-ico.tone-teal,
.dash-kpi-card.tone-teal .dash-kpi-ico { background: #ecfeff; color: #0e7490; }
.dash-admin .tone-amber .stat-ico,
.dash-shop .tone-amber .stat-ico,
.dash-admin .dash-quick-ico.tone-amber,
.dash-shop .dash-quick-ico.tone-amber,
.dash-kpi-card.tone-amber .dash-kpi-ico { background: #fffbeb; color: #b45309; }
.dash-admin .tone-rose .stat-ico,
.dash-shop .tone-rose .stat-ico,
.dash-admin .dash-quick-ico.tone-rose,
.dash-shop .dash-quick-ico.tone-rose,
.dash-kpi-card.tone-rose .dash-kpi-ico { background: #fff1f2; color: #e11d48; }
.dash-admin .tone-slate .stat-ico,
.dash-shop .tone-slate .stat-ico,
.dash-admin .dash-quick-ico.tone-slate,
.dash-shop .dash-quick-ico.tone-slate,
.dash-kpi-card.tone-slate .dash-kpi-ico { background: #f1f5f9; color: #475569; }
.dash-admin .tone-gold .stat-ico,
.dash-shop .tone-gold .stat-ico,
.dash-admin .dash-quick-ico.tone-gold,
.dash-shop .dash-quick-ico.tone-gold,
.dash-kpi-card.tone-gold .dash-kpi-ico { background: #fff8eb; color: #a16207; }
.dash-admin .filter-bar-flush {
  margin: 0;
  padding: 0;
  border: none;
  background: transparent;
  box-shadow: none;
}
.dash-admin .filter-bar-flush:focus-within {
  box-shadow: none;
  border: none;
}
.dash-admin .filter-bar-flush .field {
  border-right: none;
  padding-left: 0;
  padding-right: 12px;
}
.dash-admin .filter-bar-flush .field:last-child,
.dash-admin .filter-bar-flush .field-submit {
  padding-right: 0;
}
.dash-panel-lead {
  margin: 0;
  padding: 0 16px 12px;
  font-size: 13px;
  line-height: 1.45;
}
.actions-stack {
  flex-direction: column;
  align-items: stretch;
  gap: 8px;
  min-width: 160px;
}
.actions-stack form {
  display: grid;
  gap: 6px;
}
.actions-stack input[type="text"] {
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
}
.dash-admin th { background: var(--admin-accent-soft); color: var(--admin-muted); }
.dash-admin th,
.dash-admin td { border-color: var(--admin-line); }
.dash-admin input:focus,
.dash-admin select:focus,
.dash-admin textarea:focus {
  border-color: var(--admin-accent);
  box-shadow: 0 0 0 3px rgba(var(--accent-rgb), 0.16);
}
.dash-admin .btn:not(.btn-primary):not(.btn-danger):not(.btn-gold):not(.btn-accent):not(.avaro-view-btn) {
  background: #fff;
  color: var(--admin-ink);
  -webkit-text-fill-color: var(--admin-ink);
  border-color: var(--admin-line);
}
.dash-admin .btn-primary,
.dash-admin a.btn.btn-primary,
.dash-admin button.btn-primary {
  background: var(--admin-accent) !important;
}
.dash-admin .btn-primary:hover,
.dash-admin a.btn.btn-primary:hover {
  background: var(--accent-hover) !important;
}
.dash-page-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin: 0 0 18px;
  flex-wrap: wrap;
}
.hs-egitim-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 36px;
  padding: 0 14px;
  border-radius: 6px;
  border: 1px solid var(--line);
  background: #fff;
  color: var(--ink);
  font-size: 13px;
  font-weight: 500;
  cursor: pointer;
  transition: 0.2s ease;
  white-space: nowrap;
}
.hs-egitim-btn .ico { color: var(--accent); }
.hs-egitim-btn:hover {
  border-color: var(--accent);
  color: var(--accent);
  background: var(--cream);
}
.dash-shop .hs-egitim-btn {
  border-color: var(--shop-line);
  color: var(--shop-ink);
}
.dash-shop .hs-egitim-btn .ico { color: var(--shop-accent); }
.dash-shop .hs-egitim-btn:hover {
  border-color: var(--shop-accent);
  color: var(--shop-accent);
  background: var(--shop-accent-soft);
}
.egitim-tour-toast {
  position: fixed;
  top: 16px;
  right: 16px;
  left: auto;
  z-index: 9999;
  width: min(92vw, 380px);
  border-radius: 6px;
  background: #fff7ed;
  border: 1px solid #fdba74;
  color: #9a3412;
  box-shadow: 0 14px 40px rgba(15, 23, 42, 0.16);
  opacity: 0;
  transform: translateX(12px);
  transition: opacity 0.22s ease, transform 0.22s ease;
  pointer-events: none;
  overflow: hidden;
}
.egitim-tour-toast.is-on {
  opacity: 1;
  transform: translateX(0);
  pointer-events: auto;
}
.egitim-tour-toast.is-leaving {
  opacity: 0;
  transform: translateX(12px);
  pointer-events: none;
}
.egitim-tour-toast__body {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 12px 12px 10px 16px;
}
.egitim-tour-toast__msg {
  flex: 1;
  margin: 0;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.45;
  text-align: left;
  padding: 2px 0;
}
.egitim-tour-toast__close {
  flex: 0 0 28px;
  width: 28px;
  height: 28px;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: #c2410c;
  font-size: 20px;
  line-height: 1;
  cursor: pointer;
  transition: background 0.18s ease, color 0.18s ease;
}
.egitim-tour-toast__close:hover {
  background: rgba(194, 65, 12, 0.1);
  color: #9a3412;
}
.egitim-tour-toast__bar {
  height: 4px;
  background: rgba(253, 186, 116, 0.35);
}
.egitim-tour-toast__bar-fill {
  display: block;
  height: 100%;
  width: 100%;
  background: #f97316;
  transform-origin: left center;
  animation: egitim-tour-bar linear forwards;
}
.egitim-tour-toast.is-paused .egitim-tour-toast__bar-fill {
  animation-play-state: paused;
}
@keyframes egitim-tour-bar {
  from { transform: scaleX(1); }
  to { transform: scaleX(0); }
}
.dash-page-head h1,
.dash-main h1 {
  font-size: 18px;
  margin: 0;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  line-height: 1.3;
}
.dash-main > h1 {
  margin: 0 0 18px;
}
.dash-main h2 {
  font-size: 13px;
  margin: 8px 0 14px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.dash-panel,
.dash-section:has(> h2),
.dash-card {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 0;
  overflow: hidden;
  min-width: 0;
}
.dash-avaro .dash-main .dash-panel > h2,
.dash-avaro .dash-main .dash-section > h2,
.dash-avaro .dash-main .dash-card > h2,
.dash-avaro .dash-main .dash-grid > * > h2 {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  padding: 0 16px;
  min-height: 48px;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: inherit;
  background: #f8fafc;
  border-bottom: 1px solid var(--line);
  line-height: 1.3;
}
.dash-avaro .dash-main .dash-panel > h2:has(+ .dash-panel-lead),
.dash-avaro .dash-main .dash-card > h2:has(+ .dash-card-lead) {
  border-bottom: 0;
  padding-bottom: 0;
  min-height: 44px;
}
.dash-panel-lead {
  background: #f8fafc;
  border-bottom: 1px solid var(--line);
}
.dash-panel > .stats,
.dash-section:has(> h2) > .stats {
  background: transparent;
  border: none;
  border-radius: 0;
  gap: 10px;
  overflow: visible;
  padding: 12px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  align-items: stretch;
}
.dash-panel .stats-3,
.dash-section:has(> h2) .stats-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.dash-panel .stats-fluid,
.dash-section:has(> h2) .stats-fluid {
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
}
.dash-panel > .stats-fluid:has(> :nth-child(2):last-child) {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.dash-panel > .stats-fluid:has(> :nth-child(3):last-child) {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.dash-panel > .stats-fluid:has(> :nth-child(4):last-child) {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.dash-panel > .stats-fluid:has(> :nth-child(5):last-child) {
  grid-template-columns: repeat(6, minmax(0, 1fr));
}
.dash-panel > .stats-fluid:has(> :nth-child(5):last-child) > .stat {
  grid-column: span 2;
}
.dash-panel > .stats-fluid:has(> :nth-child(5):last-child) > .stat:nth-child(n+4) {
  grid-column: span 3;
}
.dash-panel .stat,
.dash-section:has(> h2) .stat {
  background: #f7fafc;
  border: 1px solid var(--line);
  border-radius: 6px;
  padding: 16px 14px;
  min-width: 0;
  min-height: 92px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.dash-panel .stat.has-ico,
.dash-section:has(> h2) .stat.has-ico {
  min-height: 92px;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
}
.dash-panel .stat b,
.dash-section:has(> h2) .stat b {
  min-width: 0;
  overflow-wrap: anywhere;
}
.dash-panel .table-wrap,
.dash-section:has(> h2) .table-wrap,
.dash-grid > * > h2 + .table-wrap {
  margin: 0;
  border: 0;
  border-radius: 0;
  overflow: auto;
}
.dash-panel > .muted,
.dash-section:has(> h2) > .muted:not(.dash-panel-lead) {
  margin: 0;
  padding: 12px 16px 16px;
}
.dash-panel > .form-card {
  margin: 0;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  padding: 16px;
}
.dash-panel > .filter-bar,
.dash-panel > .filter-bar-flush {
  margin: 0;
  padding: 12px 16px 16px;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.dash-panel > .empty {
  margin: 0;
  border: 0;
  border-radius: 0;
}
.dash-panel .table-wrap + .pager,
.dash-panel > .pager {
  margin: 0;
  border: 0;
  border-top: 1px solid var(--line);
  border-radius: 0;
}
.dash-panel .table-wrap:has(+ .pager) {
  border-radius: 0;
}
.dash-panel-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px 16px;
  flex-wrap: wrap;
  padding: 10px 16px;
  min-height: 56px;
  box-sizing: border-box;
  background: #f8fafc;
  border-bottom: 1px solid var(--line);
}
.dash-panel-head > h2 {
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  min-height: 0;
  line-height: 1.3;
  align-self: center;
}
.dash-avaro .dash-main .dash-panel-head > h2 {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  min-height: 0;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}
.dash-panel-head .btn {
  flex-shrink: 0;
  align-self: center;
}
.dash-panel-head .btn-sm {
  min-height: 36px;
  padding: 0 14px;
}
.table-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  justify-content: flex-end;
}
.dash-shop .dash-panel-head {
  background: #f7fafc;
  border-bottom-color: var(--shop-line);
}
.dash-admin .dash-panel-head {
  background: var(--admin-accent-soft);
  border-bottom-color: var(--admin-line);
}
.dash-panel-head:has(+ .dash-panel-lead) {
  border-bottom: 0;
  padding-bottom: 6px;
}
.dash-panel-head + .dash-panel-lead {
  padding: 4px 16px 14px;
}
.dash-panel-actions {
  margin: 0;
  padding: 14px 16px;
  border-top: 1px solid var(--line);
}
.dash-panel-lead + .dash-panel-actions {
  border-top: 0;
  background: #f8fafc;
  padding-top: 0;
  border-bottom: 1px solid var(--line);
}
.dash-shop .dash-panel,
.dash-shop .dash-section:has(> h2),
.dash-shop .dash-card {
  border-color: var(--shop-line);
}
.dash-shop .dash-main .dash-panel > h2,
.dash-shop .dash-main .dash-section > h2,
.dash-shop .dash-main .dash-card > h2,
.dash-shop .dash-main .dash-grid > * > h2 {
  background: #f7fafc;
  border-bottom-color: var(--shop-line);
  color: var(--shop-ink);
}
.dash-shop .dash-panel-lead {
  background: #f7fafc;
  border-bottom-color: var(--shop-line);
}
.dash-shop .dash-panel .stats,
.dash-shop .dash-section:has(> h2) .stats {
  background: transparent;
  border: none;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.dash-shop .dash-panel .stats-3,
.dash-shop .dash-section:has(> h2) .stats-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.dash-shop .dash-panel .stats-fluid,
.dash-shop .dash-section:has(> h2) .stats-fluid {
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
}
.dash-shop .dash-panel .stats-fluid:has(> :nth-child(2):last-child) {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.dash-shop .dash-panel .stats-fluid:has(> :nth-child(3):last-child) {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.dash-shop .dash-panel .stats-fluid:has(> :nth-child(4):last-child) {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.dash-shop .dash-panel .stats-fluid:has(> :nth-child(5):last-child) {
  grid-template-columns: repeat(6, minmax(0, 1fr));
}
.dash-shop .dash-panel .stats-fluid:has(> :nth-child(5):last-child) > .stat {
  grid-column: span 2;
}
.dash-shop .dash-panel .stats-fluid:has(> :nth-child(5):last-child) > .stat:nth-child(n+4) {
  grid-column: span 3;
}
.dash-shop .dash-panel .stat,
.dash-shop .dash-section:has(> h2) .stat {
  background: #f7fafc;
  border-color: var(--shop-line);
}
.dash-shop .dash-panel .table-wrap,
.dash-shop .dash-grid > * > h2 + .table-wrap {
  border: 0;
}
.dash-shop .dash-panel-actions {
  border-top-color: var(--shop-line);
}
.dash-shop .dash-panel-lead + .dash-panel-actions {
  border-bottom-color: var(--shop-line);
}
.dash-shop .dash-panel .table-wrap + .pager,
.dash-shop .dash-panel > .pager {
  border-top-color: var(--shop-line);
}

.dash-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  align-items: stretch;
  min-width: 0;
}
.dash-grid > *:has(> h2) {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 8px;
  overflow: hidden;
  min-width: 0;
  display: flex;
  flex-direction: column;
  height: 100%;
}
.dash-shop .dash-grid > *:has(> h2) { border-color: var(--shop-line); }
.dash-admin .dash-grid > *:has(> h2) { border-color: var(--admin-line); }
.dash-grid > .dash-panel {
  min-width: 0;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  height: 100%;
}
.dash-grid > * > h2 + .table-wrap {
  margin: 0;
  max-width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  border: 0;
  border-radius: 0;
  flex: 1;
}
.dash-grid table {
  table-layout: fixed;
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
}
.dash-grid .stats {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: stretch;
}
.dash-grid .stats-fluid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.dash-live-split {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  align-items: stretch;
}
@media (max-width: 1500px) {
  .dash-live-board-body {
    grid-template-columns: 1fr;
  }
  .dash-live-board-now {
    border-right: 0;
    border-bottom: 1px solid var(--admin-line, var(--line));
    min-height: 120px;
  }
}
@media (max-width: 1100px) {
  .dash-live-split {
    grid-template-columns: 1fr;
  }
}
.dash-admin .dash-panel.dash-live-board,
.dash-live-board {
  background: #fff;
  border-color: var(--admin-line, var(--line));
  overflow: hidden;
  height: 100%;
}
.dash-live-board .dash-panel-head {
  align-items: center;
}
.dash-live-board-count {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  flex-shrink: 0;
}
.dash-live-board-count b {
  min-width: 28px;
  height: 28px;
  padding: 0 8px;
  border-radius: 999px;
  background: #ecfdf5;
  color: #047857;
  font-size: 13px;
  font-weight: 750;
  display: grid;
  place-items: center;
  font-variant-numeric: tabular-nums;
}
.dash-live-board[data-canli-board="panel"] .dash-live-board-count b {
  background: var(--admin-accent-soft, #f0fdfa);
  color: var(--admin-accent, #0f766e);
}
.dash-live-board-flag {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #047857;
}
.dash-live-board-flag i {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #22c55e;
  box-shadow: 0 0 0 0 rgba(34, 197, 94, 0.7);
  animation: live-ping-green 1.8s ease-out infinite;
}
.dash-live-board-body {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(220px, 0.85fr);
  gap: 0;
  align-items: stretch;
  margin: 0;
  min-height: 220px;
}
.dash-live-board-now,
.dash-live-board-where {
  min-width: 0;
}
.dash-live-board-now {
  display: flex;
  flex-direction: column;
  border-right: 1px solid var(--admin-line, var(--line));
}
.dash-live-board-people {
  margin: 0;
  padding: 0;
  list-style: none;
}
.dash-live-board-people[hidden],
.dash-live-board-empty[hidden] {
  display: none;
}
.dash-live-board-people li {
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding: 12px 16px;
  border-bottom: 1px solid var(--admin-line, var(--line));
}
.dash-live-board-people li:last-child {
  border-bottom: 0;
}
.dash-live-board-people a,
.dash-live-board-people span {
  font-size: 13px;
  font-weight: 650;
  color: var(--admin-ink, #0f172a);
  text-decoration: none;
}
.dash-live-board-people a:hover {
  color: var(--admin-accent, #0f766e);
}
.dash-live-board-people small {
  color: var(--admin-muted, var(--muted));
  font-size: 12px;
}
.dash-live-board-empty {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 28px 16px;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--admin-muted, var(--muted));
  font-size: 13px;
  text-align: center;
}
.dash-live-board .table-wrap.dash-live-board-where {
  margin: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}
.dash-live-board-where th:last-child,
.dash-live-board-where td:last-child {
  text-align: right;
  width: 72px;
}
.dash-live-board-where b {
  font-size: 13px;
  font-weight: 750;
  font-variant-numeric: tabular-nums;
  color: var(--admin-ink, #0f172a);
}
.dash-live-board-daily {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin: 0;
  padding: 12px 16px;
  border: 0;
  border-top: 1px solid var(--admin-line, var(--line));
  border-radius: 0;
  background: #f8fafc;
  color: var(--admin-ink, #0f172a);
}
.dash-live-board-daily strong {
  display: block;
  font-size: 13px;
  font-weight: 650;
}
.dash-live-board-daily em {
  display: block;
  margin-top: 2px;
  font-style: normal;
  font-size: 11px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--admin-muted, var(--muted));
}
.dash-live-board-daily b {
  font-size: 22px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  color: var(--admin-ink, #0f172a);
}
.dash-live-meta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-left: auto;
  font-size: 12px;
  font-weight: 650;
  color: var(--admin-muted, var(--muted));
  white-space: nowrap;
}
.dash-live-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #22c55e;
  box-shadow: 0 0 0 0 rgba(34, 197, 94, 0.7);
  animation: live-ping-green 1.8s ease-out infinite;
  flex-shrink: 0;
}
.dash-live-sound {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  padding: 0;
  border: 1px solid var(--admin-line, var(--line));
  border-radius: 999px;
  background: #fff;
  color: var(--admin-muted, var(--muted));
  cursor: pointer;
}
.dash-live-sound .ico { display: block; }
.dash-live-sound-off { display: none; }
.dash-live-sound.is-on {
  border-color: #a7f3d0;
  background: #ecfdf5;
  color: #047857;
}
.dash-live-sound:not(.is-on) .dash-live-sound-on { display: none; }
.dash-live-sound:not(.is-on) .dash-live-sound-off { display: block; }
.dash-live-sound:hover { border-color: #6ee7b7; }

.avaro-live-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 9px;
  border-radius: 999px;
  background: rgba(34, 197, 94, 0.14);
  border: 1px solid rgba(34, 197, 94, 0.35);
  color: #bbf7d0;
  font-size: 11px;
  font-weight: 650;
  line-height: 1;
  white-space: nowrap;
}
.avaro-live-chip em {
  font-style: normal;
  font-size: 11px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
.avaro-live-chip b { font-variant-numeric: tabular-nums; }
.avaro-live-chip i {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #4ade80;
  box-shadow: 0 0 0 0 rgba(74, 222, 128, 0.7);
  animation: live-ping-green 1.8s ease-out infinite;
}
.avaro-live-chip.is-empty {
  background: rgba(255, 255, 255, 0.06);
  border-color: rgba(255, 255, 255, 0.12);
  color: rgba(255, 255, 255, 0.55);
}
.avaro-live-chip.is-empty i {
  background: #94a3b8;
  animation: none;
  box-shadow: none;
}
.dash-admin .avaro-live-chip {
  background: rgba(34, 197, 94, 0.16);
  border-color: rgba(74, 222, 128, 0.35);
}
.avaro-live-sound {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  padding: 0;
  border: 1px solid rgba(255, 255, 255, 0.22);
  border-radius: 999px;
  background: transparent;
  color: rgba(255, 255, 255, 0.78);
  cursor: pointer;
  flex-shrink: 0;
}
.avaro-live-sound .ico { display: block; }
.avaro-live-sound .dash-live-sound-off { display: none; }
.avaro-live-sound.is-on {
  border-color: rgba(74, 222, 128, 0.45);
  background: rgba(34, 197, 94, 0.16);
  color: #bbf7d0;
}
.avaro-live-sound:not(.is-on) .dash-live-sound-on { display: none; }
.avaro-live-sound:not(.is-on) .dash-live-sound-off { display: block; }
.avaro-live-sound:hover {
  border-color: var(--gold);
  color: var(--gold);
}
a.dash-kpi-card[href="#canli-ziyaretciler"] .dash-kpi-ico {
  position: relative;
}
a.dash-kpi-card[href="#canli-ziyaretciler"].is-live .dash-kpi-ico::after {
  content: "";
  position: absolute;
  top: 5px;
  right: 5px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #22c55e;
  box-shadow: 0 0 0 0 rgba(34, 197, 94, 0.7);
  animation: live-ping-green 1.8s ease-out infinite;
}
@media (prefers-reduced-motion: reduce) {
  .dash-live-dot,
  .dash-live-board-flag i,
  .avaro-live-chip i,
  a.dash-kpi-card[href="#canli-ziyaretciler"].is-live .dash-kpi-ico::after {
    animation: none;
  }
}

.dash-overview {
  overflow: hidden;
}
.dash-overview-grid {
  display: grid;
  grid-template-columns: 1fr 1.35fr;
  grid-template-rows: auto auto;
}
.dash-overview-group {
  min-width: 0;
  display: flex;
  flex-direction: column;
  border-right: 1px solid var(--admin-line, var(--line));
  border-bottom: 1px solid var(--admin-line, var(--line));
}
.dash-overview-group:nth-child(2n) {
  border-right: none;
}
.dash-overview-group:nth-last-child(-n+2) {
  border-bottom: none;
}
.dash-avaro .dash-main .dash-overview-group > h2 {
  min-height: 38px;
  margin: 0;
  padding: 0 12px;
  background: transparent;
  border-bottom: none;
  font-size: 11px;
}
.dash-admin .dash-overview .stats,
.dash-overview .stats {
  flex: 1;
  padding: 0 10px 10px;
  gap: 6px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.dash-admin .dash-overview .stats.stats-4,
.dash-overview .stats.stats-4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.dash-admin .dash-overview .stat,
.dash-admin .dash-overview .stat.has-ico,
.dash-overview .stat,
.dash-overview .stat.has-ico {
  min-height: 0;
  padding: 8px 10px;
  gap: 8px;
  background: var(--admin-accent-soft, #f0fdfa);
}
.dash-admin .dash-overview .stat-ico,
.dash-overview .stat-ico {
  width: 26px;
  height: 26px;
}
.dash-admin .dash-overview .stat b,
.dash-overview .stat b {
  font-size: 16px;
  line-height: 1.15;
}
.dash-admin .dash-overview .stat-copy span,
.dash-overview .stat-copy span {
  font-size: 11px;
  line-height: 1.25;
}
.dash-admin .dash-stack .stats-list,
.dash-stack .stats-list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0;
  padding: 4px 0;
  background: transparent;
  border: none;
}
.dash-admin .dash-stack .stats-list .stat,
.dash-admin .dash-stack .stats-list .stat.has-ico,
.dash-stack .stats-list .stat,
.dash-stack .stats-list .stat.has-ico {
  min-height: 0;
  padding: 8px 14px;
  gap: 10px;
  background: transparent;
  border: 0;
  border-radius: 0;
  border-bottom: 1px solid var(--admin-line, var(--line));
}
.dash-admin .dash-stack .stats-list .stat:last-child,
.dash-stack .stats-list .stat:last-child {
  border-bottom: 0;
}
.dash-admin .dash-stack .stats-list .stat-ico,
.dash-stack .stats-list .stat-ico {
  width: 26px;
  height: 26px;
}
.dash-admin .dash-stack .stats-list .stat b,
.dash-stack .stats-list .stat b {
  font-size: 15px;
}
.dash-admin .dash-stack .stats-list .stat-copy,
.dash-stack .stats-list .stat-copy {
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  width: 100%;
}
.dash-admin .dash-stack .stats-list .stat-copy span,
.dash-stack .stats-list .stat-copy span {
  order: -1;
  font-size: 13px;
  color: var(--admin-ink, var(--ink));
}
.dash-admin .dash-stack .stats-list .stat-copy b,
.dash-stack .stats-list .stat-copy b {
  font-variant-numeric: tabular-nums;
}

.dash-shell {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(440px, 580px);
  gap: 22px;
  align-items: start;
}
.dash-shell-main {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.dash-shell-main > .stats-block { margin-bottom: 0; }
.dash-shell-side {
  min-width: 0;
  position: sticky;
  top: 88px;
  align-self: start;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.dash-card > h2 {
  margin: 0;
}
.dash-card-lead {
  margin: 0;
  padding: 0 16px 12px;
  font-size: 13px;
  background: #f8fafc;
  border-bottom: 1px solid var(--line);
}
.dash-shop .dash-card-lead { border-bottom-color: var(--shop-line); background: #f7fafc; }
.dash-card > .dash-bars,
.dash-card > .dash-status-bars {
  padding: 16px 16px 8px;
}
.dash-card > .dash-mini-stats {
  margin: 0 16px 16px;
}

.dash-insight { display: block; }
.dash-insight-main {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  min-width: 0;
  align-items: stretch;
}
.dash-insight-main > .dash-card {
  display: flex;
  flex-direction: column;
  height: 100%;
  min-width: 0;
}
.dash-bars {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  align-items: end;
  gap: 8px;
  height: 168px;
  padding: 8px 4px 0;
}
.dash-bars.dash-bars-fluid {
  grid-template-columns: repeat(var(--dash-bars, 7), minmax(18px, 1fr));
  overflow-x: auto;
}
.dash-bars.dash-bars-fluid .dash-bar-label {
  font-size: 10px;
}
.dash-bars .dash-bar {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
  height: 100%;
  min-height: 0;
  padding: 0;
  background: transparent;
  color: inherit;
}
.dash-bar-val {
  font-size: 12px;
  font-weight: 600;
  color: var(--muted);
  line-height: 1;
  flex-shrink: 0;
}
.dash-bar-fill {
  display: block;
  width: 100%;
  max-width: 36px;
  height: 4px;
  flex-shrink: 0;
  border-radius: 4px 4px 2px 2px;
  background: linear-gradient(180deg, var(--gold, #38bdf8) 0%, var(--accent) 100%);
  transition: height 0.35s ease;
}
.dash-bars .dash-bar.is-today .dash-bar-fill {
  background: linear-gradient(180deg, var(--navy) 0%, var(--blue, #16324a) 100%);
}
.dash-bars .dash-bar.is-today .dash-bar-val,
.dash-bars .dash-bar.is-today .dash-bar-label {
  color: var(--ink);
  font-weight: 600;
}
.dash-bar-label {
  font-size: 11px;
  color: var(--muted);
  letter-spacing: 0.02em;
  flex-shrink: 0;
}
.dash-status-bars {
  display: grid;
  gap: 12px;
  margin-bottom: 16px;
}
.dash-status-row {
  display: grid;
  grid-template-columns: 72px 1fr 28px;
  align-items: center;
  gap: 10px;
  font-size: 13px;
}
.dash-status-row span { color: var(--muted); }
.dash-status-row b { text-align: right; font-weight: 600; }
.dash-status-track {
  height: 8px;
  border-radius: 999px;
  background: var(--bg);
  overflow: hidden;
}
.dash-status-track i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: var(--accent);
  min-width: 0;
}
.dash-status-track i.is-wait { background: #d97706; }
.dash-status-track i.is-ok { background: #0f7b55; }
.dash-status-track i.is-off { background: #b42318; }
.dash-mini-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  padding-top: 14px;
  border-top: 1px solid var(--line);
}
.dash-mini-stats > div { text-align: center; }
.dash-mini-stats b {
  display: block;
  font-size: 20px;
  font-weight: 600;
  color: var(--ink);
  line-height: 1.2;
}
.dash-mini-stats span {
  font-size: 12px;
  color: var(--muted);
}

.dash-ad-slider {
  display: flex;
  flex-direction: column;
  gap: 10px;
  min-width: 0;
}
.dash-ad-slider-side .dash-ad-viewport {
  min-height: 360px;
  height: 420px;
}
.dash-ad-viewport {
  position: relative;
  flex: 1;
  min-height: 280px;
  border-radius: 6px;
  overflow: hidden;
  background: #0b1f33;
}
.dash-ad-slide {
  display: none;
  position: absolute;
  inset: 0;
  color: #fff;
}
.dash-ad-slide.is-active {
  display: block;
  animation: dash-ad-in 0.4s ease;
}
.dash-ad-slide[hidden] { display: none !important; }
.dash-ad-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.dash-ad-overlay {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 28px 20px 56px;
  background: linear-gradient(180deg, transparent 0%, rgba(8, 18, 32, 0.55) 48%, rgba(8, 18, 32, 0.78) 100%);
}
.dash-ad-overlay h3 {
  margin: 0 0 8px;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.25;
  color: #fff;
}
.dash-ad-overlay p {
  margin: 0 0 14px;
  font-size: 13px;
  line-height: 1.5;
  color: rgba(255, 255, 255, 0.86);
}
.dash-ad-cta {
  min-height: 40px;
  padding: 0 14px;
  font-size: 13px;
}
.dash-ad-nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 2;
  width: 36px;
  height: 36px;
  border: 0;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.88);
  color: #0b1f33;
  line-height: 1;
  cursor: pointer;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.18);
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.dash-ad-nav .ico { display: block; vertical-align: 0; }
.dash-ad-nav:hover { background: #fff; }
.dash-ad-prev { left: 10px; }
.dash-ad-next { right: 10px; }
.dash-slider-dots {
  position: absolute;
  left: 50%;
  right: auto;
  bottom: 14px;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: max-content;
  padding: 7px 10px;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 999px;
  background: rgba(8, 18, 32, 0.38);
  backdrop-filter: blur(10px);
  transform: translateX(-50%);
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.18);
}
.dash-slider-dot {
  width: 8px;
  height: 8px;
  border: 0;
  border-radius: 999px;
  padding: 0;
  background: rgba(255, 255, 255, 0.42);
  cursor: pointer;
  flex-shrink: 0;
  appearance: none;
  position: relative;
  overflow: hidden;
  transition: width 0.28s ease, background 0.22s ease, transform 0.22s ease;
}
.dash-slider-dot:hover {
  background: rgba(255, 255, 255, 0.78);
}
.dash-slider-dot.is-on {
  width: 28px;
  background: rgba(255, 255, 255, 0.28);
}
.dash-slider-dot.is-on::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: #fff;
  transform: scaleX(1);
  transform-origin: left center;
}
.dash-ad-slider.is-autoplay .dash-slider-dot.is-on::after {
  transform: scaleX(0);
  animation: dash-dot-progress var(--dash-slider-ms, 4s) linear forwards;
}
@keyframes dash-dot-progress {
  from { transform: scaleX(0); }
  to { transform: scaleX(1); }
}
@keyframes dash-ad-in {
  from { opacity: 0; }
  to { opacity: 1; }
}

.dash-side-chart {
  min-height: 0;
  padding: 16px 16px 14px;
}
.dash-side-chart > h2 { font-size: 14px; }
.dash-side-chart .dash-card-lead {
  margin-bottom: 12px;
  font-size: 12px;
}
.dash-side-bars {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px 18px;
}
.dash-side-bar-meta {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 10px;
  margin-bottom: 5px;
  font-size: 12px;
}
.dash-side-bar-meta span {
  color: var(--ink);
  font-weight: 500;
  line-height: 1.3;
  min-width: 0;
  overflow-wrap: anywhere;
}
.dash-side-bar-meta b {
  flex-shrink: 0;
  font-weight: 600;
  color: var(--shop-accent, var(--accent));
}
.dash-side-bar-track {
  height: 7px;
  border-radius: 999px;
  background: var(--bg);
  overflow: hidden;
}
.dash-side-bar-track i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #38bdf8 0%, var(--shop-accent, var(--accent)) 100%);
  min-width: 4px;
}
.dash-side-chart-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin: 12px 16px 16px;
  font-size: 13px;
  font-weight: 600;
  color: var(--shop-accent, var(--accent));
  text-decoration: none;
}
.dash-side-chart-link:hover { text-decoration: underline; }
.dash-side-empty { margin: 0; padding: 14px 16px 0; font-size: 13px; }

.dash-shop .dash-card { border-color: var(--shop-line); }
.dash-shop .dash-bar-fill {
  background: linear-gradient(180deg, #38bdf8 0%, var(--shop-accent) 100%);
}
.dash-shop .dash-bars .dash-bar.is-today .dash-bar-fill {
  background: linear-gradient(180deg, #0b1f33 0%, #16324a 100%);
}
.dash-shop .dash-mini-stats b { color: var(--shop-ink); }

.table-wrap { overflow: auto; background: #fff; border-radius: 8px; border: 1px solid var(--line); }
table { width: 100%; border-collapse: collapse; font-size: 14px; }
th, td {
  text-align: left;
  padding: 12px 16px;
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  vertical-align: middle;
}
th:last-child,
td:last-child { border-right: 0; }
.table-wrap tr:last-child th,
.table-wrap tr:last-child td { border-bottom: 0; }
.table-wrap:has(+ .pager) {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}

.pager {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 10px 16px;
  margin-top: 12px;
  padding: 10px 14px;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 8px;
}
.table-wrap + .pager {
  margin-top: -1px;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
.pager-meta {
  margin: 0;
  font-size: 13px;
  font-weight: 500;
  color: var(--muted);
  line-height: 1.4;
}
.pager-links {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
}
.pager-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  min-width: 36px;
  height: 36px;
  padding: 0 10px;
  border-radius: 6px;
  border: 1px solid var(--line);
  background: #fff;
  color: var(--ink);
  font-size: 13px;
  font-weight: 600;
  line-height: 1;
  cursor: pointer;
  transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}
.pager-btn .ico { display: block; }
.pager-btn:hover {
  background: #f7fafc;
  border-color: #c5d0dc;
}
.pager-btn:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 2px;
}
.pager-btn.is-current {
  background: var(--accent);
  border-color: var(--accent);
  color: #fff;
  cursor: default;
}
.pager-btn.is-disabled {
  opacity: 0.4;
  cursor: default;
  pointer-events: none;
}
.pager-dir {
  padding: 0 12px;
  font-weight: 500;
}

.dash-shop .pager { border-color: var(--shop-line); }
.dash-shop .pager-meta { color: var(--shop-muted); }
.dash-shop .pager-btn {
  border-color: var(--shop-line);
  color: var(--shop-ink);
}
.dash-shop .pager-btn:hover {
  background: var(--shop-accent-soft);
  border-color: #7dd3fc;
  color: var(--shop-accent);
}
.dash-shop .pager-btn.is-current,
.dash-shop .pager-btn.is-current:hover {
  background: var(--shop-accent);
  border-color: var(--shop-accent);
  color: #fff;
}
.dash-shop .pager-btn:focus-visible { outline-color: var(--shop-accent); }

.dash-admin .pager { border-color: var(--admin-line); }
.dash-admin .pager-meta { color: var(--admin-muted); }
.dash-admin .pager-btn {
  border-color: var(--admin-line);
  color: var(--admin-ink);
}
.dash-admin .pager-btn:hover {
  background: var(--admin-accent-soft);
  border-color: #99f6e4;
  color: var(--admin-accent);
}
.dash-admin .pager-btn.is-current,
.dash-admin .pager-btn.is-current:hover {
  background: var(--admin-accent);
  border-color: var(--admin-accent);
  color: #fff;
}
.dash-admin .pager-btn:focus-visible { outline-color: var(--admin-accent); }

th { font-size: 11px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.08em; color: var(--muted); background: var(--bg); }

.dash-avaro .table-wrap table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
}
.dash-avaro .table-wrap th,
.dash-avaro .table-wrap td {
  padding: 12px 12px;
  vertical-align: middle;
  text-align: left;
  line-height: 1.35;
}
.dash-avaro .table-wrap th:first-child,
.dash-avaro .table-wrap td:first-child { padding-left: 16px; }
.dash-avaro .table-wrap th:last-child,
.dash-avaro .table-wrap td:last-child { padding-right: 16px; }
.dash-avaro .table-wrap th {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.04em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  word-break: normal;
  overflow-wrap: normal;
}
.dash-avaro .table-wrap td {
  font-size: 13px;
  overflow: hidden;
  word-break: normal;
  overflow-wrap: break-word;
}
.dash-avaro .table-wrap tbody tr:hover td {
  background: #f8fafc;
}
.dash-admin .table-wrap tbody tr:hover td {
  background: var(--admin-accent-soft);
}
.dash-shop .table-wrap tbody tr:hover td {
  background: #eef6fb;
}
.dash-avaro .table-wrap .badge {
  display: inline-flex;
  justify-content: flex-start;
  margin: 0;
  white-space: nowrap;
  text-align: left;
  width: fit-content;
  max-width: 100%;
}
.cell-gorsel-col {
  width: 1%;
  white-space: nowrap;
  vertical-align: middle;
}
.cell-gorsel {
  display: block;
  width: 80px;
  height: 50px;
  overflow: hidden;
  border-radius: 6px;
  border: 1px solid var(--line);
  background: #e8eef4;
}
.cell-gorsel img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.cell-gorsel-empty {
  display: grid;
  place-items: center;
  width: 100%;
  height: 100%;
  color: var(--muted);
  background:
    radial-gradient(120% 90% at 50% 0%, rgba(255, 255, 255, 0.62), transparent 58%),
    linear-gradient(165deg, #e8f1f7 0%, #d5e3ee 100%);
}
.cell-gorsel-empty .ico {
  width: 16px;
  height: 16px;
  opacity: 0.42;
}
.cell-stack {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 3px;
  min-width: 0;
  width: 100%;
}
.cell-stack > * {
  min-width: 0;
  max-width: 100%;
  white-space: nowrap;
}
.cell-stack > strong {
  font-size: 13px;
  font-weight: 700;
  line-height: 1.25;
  color: var(--navy);
}
.panel-etiket {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  max-width: 100%;
  min-width: 0;
  padding: 0;
  border: 0;
  background: none;
  color: var(--accent);
  font-size: 12px;
  font-weight: 600;
  line-height: 1.25;
  white-space: nowrap;
}
.panel-etiket .ico {
  flex: 0 0 auto;
  width: 12px;
  height: 12px;
}
.panel-etiket > span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}
.dash-shop .panel-etiket {
  color: var(--shop-accent);
}
.dash-admin .panel-etiket {
  color: var(--admin-accent);
}
.cell-stack .muted {
  overflow: hidden;
  text-overflow: ellipsis;
  font-size: 12px;
  line-height: 1.25;
}
.cell-rating {
  display: flex;
  align-items: center;
  gap: 6px;
  margin: 0;
  font-size: 12px;
  font-weight: 600;
  color: var(--navy);
  white-space: nowrap;
}
.cell-rating.is-empty {
  font-weight: 500;
  color: var(--muted);
}
.dash-admin .rating-count {
  background: #ccfbf1;
  color: #0f766e;
}
.dash-shop .rating-count {
  background: #eef6fb;
  color: #0284c7;
}
.cell-date {
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}

.appt-toolbar {
  display: grid;
  grid-template-columns: minmax(180px, 1.5fr) minmax(160px, 1fr) minmax(132px, 0.8fr) auto;
  gap: 10px 12px;
  align-items: end;
  margin: 0;
  padding: 14px 16px;
  background: #f8fafc;
  border-bottom: 1px solid var(--line);
}
.dash-admin .appt-toolbar {
  border-bottom-color: var(--admin-line);
  background: #f8fafc;
}
.dash-shop .appt-toolbar {
  border-bottom-color: var(--shop-line);
  background: #f7fafc;
}
.appt-toolbar .field {
  margin: 0;
  min-width: 0;
  display: grid;
  gap: 6px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--muted);
  line-height: 1.2;
}
.dash-admin .appt-toolbar .field { color: var(--admin-muted); }
.dash-shop .appt-toolbar .field { color: var(--shop-muted); }
.appt-toolbar input,
.appt-toolbar select,
.appt-toolbar .ss-input {
  width: 100%;
  min-height: 42px;
  border: 1px solid var(--line);
  border-radius: 6px;
  padding: 8px 12px;
  background: #fff;
  box-shadow: none;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0;
  text-transform: none;
  color: var(--ink);
}
.dash-admin .appt-toolbar input,
.dash-admin .appt-toolbar select,
.dash-admin .appt-toolbar .ss-input { border-color: var(--admin-line); }
.dash-shop .appt-toolbar input,
.dash-shop .appt-toolbar select,
.dash-shop .appt-toolbar .ss-input { border-color: var(--shop-line); }
.appt-toolbar input:focus,
.appt-toolbar select:focus,
.appt-toolbar .ss-input:focus {
  border-color: var(--accent);
  box-shadow: 0 0 0 3px rgba(var(--accent-rgb), 0.14);
}
.dash-admin .appt-toolbar input:focus,
.dash-admin .appt-toolbar select:focus,
.dash-admin .appt-toolbar .ss-input:focus {
  border-color: var(--admin-accent);
  box-shadow: 0 0 0 3px rgba(var(--accent-rgb), 0.16);
}
.appt-toolbar .btn {
  width: auto;
  min-width: 120px;
  min-height: 42px;
  padding: 0 16px;
}
.appt-toolbar .ss-wrap { position: relative; width: 100%; }
.appt-toolbar .ss-input {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%235a6573' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 12px center;
  background-size: 12px 8px;
  padding-right: 32px;
  cursor: text;
}
.dash-panel:has(> .appt-toolbar) { overflow: visible; }
.dash-panel > .appt-toolbar:first-child {
  border-radius: 8px 8px 0 0;
}
.dash-panel:has(> .appt-toolbar) > .appt-list,
.dash-panel:has(> .appt-toolbar) > .empty {
  border-radius: 0 0 8px 8px;
}
.appt-toolbar .ss-list {
  top: calc(100% + 4px);
  left: 0;
  right: auto;
  min-width: 100%;
  width: max(100%, 220px);
  max-width: min(360px, 86vw);
  max-height: 240px;
  padding: 6px;
  border-radius: 6px;
  box-shadow: 0 14px 36px rgba(var(--navy-rgb), 0.16);
}
.appt-toolbar .ss-option,
.appt-toolbar .ss-empty {
  padding: 8px 10px;
  border-radius: 4px;
}

.appt-list {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.appt-head,
.appt-row {
  display: grid;
  grid-template-columns: 7.4rem minmax(0, 1.25fr) minmax(0, 1.15fr) 9.4rem;
  grid-template-areas: "when store who flags";
  column-gap: 1px;
  align-items: stretch;
  min-width: 0;
  padding: 0;
  background: var(--line);
}
.dash-admin .appt-head,
.dash-admin .appt-row { background: var(--admin-line); }
.dash-shop .appt-head,
.dash-shop .appt-row { background: var(--shop-line); }
.appt-head > *,
.appt-row > * {
  min-width: 0;
  padding: 12px 16px;
  box-sizing: border-box;
  background: #fff;
}
.appt-head > *:first-child,
.appt-row > *:first-child { padding-left: 18px; }
.appt-head > *:last-child,
.appt-row > *:last-child { padding-right: 18px; }
.appt-head {
  min-height: 40px;
  border-bottom: 1px solid var(--line);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  color: var(--muted);
}
.appt-head > * { background: #f8fafc; }
.dash-admin .appt-head {
  border-bottom-color: var(--admin-line);
  color: var(--admin-muted);
}
.dash-shop .appt-head {
  border-bottom-color: var(--shop-line);
  color: var(--shop-muted);
}
.dash-shop .appt-head > * { background: #f7fafc; }
.appt-head span {
  display: flex;
  align-items: center;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.appt-head span:nth-child(1) { grid-area: when; }
.appt-head span:nth-child(2) { grid-area: store; }
.appt-head span:nth-child(3) { grid-area: who; }
.appt-head span:nth-child(4) { grid-area: flags; justify-content: flex-end; }
.appt-head-panel,
.appt-row-panel {
  grid-template-columns: 7.4rem minmax(0, 1.1fr) minmax(0, 1.15fr) 8.8rem 9.8rem;
  grid-template-areas: "when who store flags act";
}
.appt-head-panel span:nth-child(2) { grid-area: who; }
.appt-head-panel span:nth-child(3) { grid-area: store; }
.appt-head-panel span:nth-child(4) { grid-area: flags; justify-content: flex-end; }
.appt-head-panel span:nth-child(5) { grid-area: act; justify-content: flex-end; }
.appt-row {
  min-height: 72px;
  border-bottom: 1px solid var(--line);
}
.dash-admin .appt-row { border-bottom-color: var(--admin-line); }
.dash-shop .appt-row { border-bottom-color: var(--shop-line); }
.appt-row:last-child { border-bottom: 0; }
.appt-row:hover > * { background: #f8fafc; }
.dash-admin .appt-row:hover > * { background: var(--admin-accent-soft); }
.dash-shop .appt-row:hover > * { background: #eef6fb; }
.appt-when,
.appt-store,
.appt-who,
.appt-flags,
.appt-act {
  min-width: 0;
}
.appt-when { grid-area: when; display: grid; gap: 2px; align-content: center; }
.appt-when b {
  font-size: 13px;
  font-weight: 650;
  font-variant-numeric: tabular-nums;
  letter-spacing: 0;
  line-height: 1.3;
  color: var(--ink);
}
.dash-admin .appt-when b { color: var(--admin-ink); }
.dash-shop .appt-when b { color: var(--shop-ink); }
.appt-when span,
.appt-store span,
.appt-who > span {
  font-size: 12px;
  font-weight: 500;
  color: var(--muted);
  line-height: 1.35;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.dash-admin .appt-when span,
.dash-admin .appt-store span,
.dash-admin .appt-who > span { color: var(--admin-muted); }
.dash-shop .appt-when span,
.dash-shop .appt-store span,
.dash-shop .appt-who > span { color: var(--shop-muted); }
.appt-store { grid-area: store; display: grid; gap: 2px; align-content: center; }
.appt-store b,
.appt-who b {
  font-size: 13.5px;
  font-weight: 600;
  line-height: 1.3;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: var(--ink);
}
.dash-admin .appt-store b,
.dash-admin .appt-who b { color: var(--admin-ink); }
.dash-shop .appt-store b,
.dash-shop .appt-who b { color: var(--shop-ink); }
.appt-who { grid-area: who; display: grid; gap: 3px; align-content: center; }
.appt-name {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}
.appt-name b { min-width: 0; }
.appt-name .badge {
  flex-shrink: 0;
  padding: 2px 7px;
  font-size: 10px;
  line-height: 1.2;
}
.appt-flags {
  grid-area: flags;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 4px;
}
.appt-flags .badge {
  justify-content: center;
}
.appt-note {
  max-width: 100%;
  font-size: 11px;
  font-weight: 500;
  color: var(--muted);
  line-height: 1.3;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.appt-note-off { color: var(--err); }
.appt-act {
  grid-area: act;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
}
.appt-act .btn {
  min-height: 34px;
  padding: 0 10px;
  font-size: 12px;
}
.appt-act-empty {
  color: var(--muted);
  font-size: 13px;
}
.dash-panel .appt-list + .pager {
  margin: 0;
  border: 0;
  border-top: 1px solid var(--line);
  border-radius: 0;
}
.dash-admin .dash-panel .appt-list + .pager { border-top-color: var(--admin-line); }
.dash-shop .dash-panel .appt-list + .pager { border-top-color: var(--shop-line); }

.table-cols-4 {
  display: grid;
  grid-template-columns: 7rem minmax(0, 1.2fr) minmax(0, 1.05fr) 8.35rem;
  width: 100%;
  table-layout: auto;
  border-collapse: separate;
  border-spacing: 0;
}
.table-cols-4 thead,
.table-cols-4 tbody,
.table-cols-4 tr,
.table-cols-4 colgroup {
  display: contents;
}
.table-cols-4 th,
.table-cols-4 td {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  min-width: 0;
  width: auto;
  padding: 12px 10px;
  box-sizing: border-box;
}
.dash-avaro .table-wrap .table-cols-4 th {
  letter-spacing: 0.03em;
}
.table-cols-4 th:first-child,
.table-cols-4 td:first-child { padding-left: 16px; }
.table-cols-4 th:last-child,
.table-cols-4 td:last-child {
  padding-right: 16px;
  border-right: 0;
  overflow: visible;
}
.table-cols-4 td:nth-child(3) {
  white-space: normal;
  overflow-wrap: break-word;
  line-height: 1.3;
}
.table-cols-4 td[colspan] {
  grid-column: 1 / -1;
}
.table-cols-4 .badge {
  overflow: visible;
  text-overflow: unset;
  padding: 4px 8px;
  font-size: 11px;
}
.badge {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  max-width: 100%;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.25;
  white-space: nowrap;
}
.count-box {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 1.5em;
  margin-left: 6px;
  padding: 2px 7px;
  border-radius: 4px;
  background: rgba(var(--accent-rgb), 0.12);
  color: var(--accent);
  font-size: 12px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0;
}
.btn:hover .count-box {
  background: rgba(var(--accent-rgb), 0.18);
}
.dash-admin .count-box {
  background: #ccfbf1;
  color: #0f766e;
}
.dash-shop .count-box {
  background: #eef6fb;
  color: #0284c7;
}
.dash-quick-link .count-box,
.btn .count-box { margin-left: 0; }
.btn-primary .count-box,
.dash-admin .btn-primary .count-box,
.dash-shop .btn-primary .count-box {
  background: rgba(255, 255, 255, 0.24);
  color: #fff;
}
.badge-ok { background: #e8f6ee; color: var(--ok); }
.badge-wait { background: #fff6e5; color: var(--warn); }
.badge-off { background: #fdecea; color: var(--err); }
.badge-stack {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
  min-width: 0;
}
.badge-stack .badge-sub {
  font-size: 11px;
  font-weight: 600;
  padding: 3px 8px;
}
.cell-type {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  flex-wrap: nowrap;
  min-width: 0;
  max-width: 100%;
}
.cell-type .stars {
  flex-shrink: 0;
  gap: 1px;
}
.cell-type .star svg {
  display: block;
}
.cell-name {
  font-weight: 600;
  line-height: 1.3;
}
.cell-clip {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  line-height: 1.4;
  max-width: 100%;
}
.table-users {
  table-layout: fixed;
  width: 100%;
}
.table-users .col-name { width: 16%; }
.table-users .col-email { width: 20%; }
.table-users .col-magaza { width: 22%; }
.table-users .col-role { width: 8.8rem; }
.table-users .col-date { width: 7.2rem; }
.table-users .col-act { width: 16.75rem; }
.table-users td:nth-child(1),
.table-users td:nth-child(2),
.table-users td.cell-magaza {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.table-users th:last-child,
.table-users td.cell-act {
  text-align: right;
  white-space: nowrap;
  overflow: visible;
}
.table-users .cell-act .muted {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  min-height: 32px;
  padding-right: 2px;
}
.table-users .table-actions {
  justify-content: flex-end;
  flex-wrap: wrap;
}
.table-users .btn-sm {
  min-height: 32px;
  padding: 0 10px;
  font-size: 12px;
  gap: 6px;
}
.table-users-admin .col-name { width: 16%; }
.table-users-admin .col-email { width: 20%; }
.table-users-admin .col-role { width: 8.4rem; }
.table-users-admin .col-magaza { width: 16%; }
.table-users-admin .col-status { width: 6.4rem; }
.table-users-admin .col-act { width: 18.5rem; }
.table-users-admin td.cell-act {
  white-space: normal;
}
.table-users-admin .actions {
  justify-content: flex-end;
}
.table-users-yonetici {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 1.15fr) 8rem minmax(10.5rem, 0.85fr);
  width: 100%;
  min-width: 680px;
  table-layout: auto;
  border-collapse: separate;
  border-spacing: 0;
}
.table-users-yonetici thead,
.table-users-yonetici tbody,
.table-users-yonetici tr,
.table-users-yonetici colgroup {
  display: contents;
}
.table-users-yonetici .col-name,
.table-users-yonetici .col-email,
.table-users-yonetici .col-status,
.table-users-yonetici .col-act {
  width: auto;
}
.table-users-yonetici th,
.table-users-yonetici td {
  display: flex;
  align-items: center;
  min-width: 0;
  width: auto;
  box-sizing: border-box;
}
.table-users-yonetici th:nth-child(3),
.table-users-yonetici td:nth-child(3) {
  justify-content: flex-start;
}
.table-users-yonetici th:last-child,
.table-users-yonetici td.cell-act {
  justify-content: flex-end;
  text-align: right;
}
.table-users-yonetici .cell-user {
  width: 100%;
}
.table-users-yonetici td:nth-child(2) {
  white-space: nowrap;
}
.table-users-yonetici .actions {
  width: 100%;
  justify-content: flex-end;
}
.cell-user {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}
.cell-user .cell-stack {
  flex: 1 1 auto;
}
.cell-user .avaro-avatar {
  width: 34px;
  height: 34px;
  font-size: 13px;
  flex-shrink: 0;
}
.avatar-edit [data-foto-kaldir-wrap] {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  cursor: pointer;
}
.avatar-edit [data-foto-kaldir-wrap][hidden] {
  display: none;
}
.dash-panel > .dash-panel-head + .appt-toolbar {
  border-radius: 0;
}
.dash-list-tools {
  margin: 0;
}
.dash-panel:has(> .dash-list-tools) {
  overflow: visible;
}
.dash-list-tools > .dash-panel-head {
  flex-wrap: nowrap;
  gap: 12px;
}
.dash-list-tools > .dash-panel-head > h2 {
  flex: 0 0 auto;
  white-space: nowrap;
}
.dash-list-tools-bar {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  min-width: 0;
  flex: 1 1 auto;
}
.dash-list-search {
  position: relative;
  display: block;
  width: 260px;
  flex: 0 0 260px;
  margin: 0 0 0 auto;
}
.dash-list-search-ico {
  position: absolute;
  top: 50%;
  left: 10px;
  transform: translateY(-50%);
  display: grid;
  place-items: center;
  color: var(--muted);
  pointer-events: none;
}
.dash-admin .dash-list-search-ico { color: var(--admin-muted); }
.dash-shop .dash-list-search-ico { color: var(--shop-muted); }
.dash-list-search input {
  width: 100%;
  min-height: 36px;
  height: 36px;
  padding: 0 12px 0 34px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #fff;
  box-shadow: none;
  font-size: 13px;
  font-weight: 500;
  color: var(--ink);
  -webkit-appearance: none;
  appearance: none;
}
.dash-admin .dash-list-search input { border-color: var(--admin-line); }
.dash-shop .dash-list-search input { border-color: var(--shop-line); }
.dash-list-search input:focus {
  outline: none;
  border-color: var(--accent);
  box-shadow: 0 0 0 3px rgba(var(--accent-rgb), 0.14);
}
.dash-admin .dash-list-search input:focus {
  border-color: var(--admin-accent);
  box-shadow: 0 0 0 3px rgba(var(--accent-rgb), 0.16);
}
.dash-list-tools-bar .btn {
  flex-shrink: 0;
}
.dash-list-filter-btn {
  position: relative;
}
.dash-list-filter-btn.is-open,
.dash-list-filter-btn.has-active {
  border-color: var(--admin-accent, var(--accent));
  color: var(--admin-accent, var(--accent));
  background: #fff;
}
.dash-list-filter-count {
  display: inline-grid;
  place-items: center;
  min-width: 18px;
  height: 18px;
  margin-left: 4px;
  padding: 0 5px;
  border-radius: 999px;
  background: var(--admin-accent, var(--accent));
  color: #fff;
  font-size: 10px;
  font-weight: 700;
  line-height: 1;
}
body.dash-filter-open {
  overflow: hidden;
}
.dash-list-filter-backdrop {
  position: fixed;
  inset: 0;
  z-index: 94;
  background: rgba(var(--navy-rgb), 0.42);
  backdrop-filter: blur(3px);
  -webkit-backdrop-filter: blur(3px);
}
.dash-list-filter-backdrop[hidden] {
  display: none !important;
}
.dash-list-filters {
  position: fixed;
  left: 0;
  right: 0;
  bottom: max(24px, env(safe-area-inset-bottom, 0px));
  z-index: 95;
  display: grid;
  gap: 12px;
  width: min(440px, calc(100vw - 32px));
  margin: 0 auto;
  padding: 10px 18px 18px;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: 0 24px 64px rgba(var(--navy-rgb), 0.28);
  animation: dash-filter-in 0.28s ease;
}
.dash-admin .dash-list-filters {
  border-color: var(--admin-line);
}
.dash-shop .dash-list-filters {
  border-color: var(--shop-line);
}
.dash-list-filters[hidden] {
  display: none !important;
}
.dash-list-filters::before {
  content: "";
  display: block;
  width: 36px;
  height: 4px;
  margin: 2px auto 2px;
  border-radius: 999px;
  background: rgba(var(--navy-rgb), 0.16);
}
.dash-list-filters-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.dash-list-filters-head span {
  font-size: 13px;
  font-weight: 650;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--ink);
}
.dash-list-filters-close {
  width: 32px;
  height: 32px;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: var(--muted);
  font-size: 22px;
  line-height: 1;
  cursor: pointer;
}
.dash-list-filters-close:hover {
  background: var(--cream, #f1f5f9);
  color: var(--ink);
}
@keyframes dash-filter-in {
  from { opacity: 0; transform: translateY(28px); }
  to { opacity: 1; transform: none; }
}
@keyframes dash-filter-sheet-in {
  from { transform: translateY(100%); }
  to { transform: none; }
}
.dash-list-filters .field {
  margin: 0;
  min-width: 0;
  width: 100%;
  max-width: none;
  display: grid;
  gap: 6px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--muted);
  line-height: 1.2;
}
.dash-admin .dash-list-filters .field { color: var(--admin-muted); }
.dash-shop .dash-list-filters .field { color: var(--shop-muted); }
.dash-list-filters input,
.dash-list-filters select,
.dash-list-filters .ss-input {
  width: 100%;
  min-height: 42px;
  border: 1px solid var(--line);
  border-radius: 6px;
  padding: 8px 12px;
  background: #fff;
  box-shadow: none;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0;
  text-transform: none;
  color: var(--ink);
}
.dash-admin .dash-list-filters input,
.dash-admin .dash-list-filters select,
.dash-admin .dash-list-filters .ss-input { border-color: var(--admin-line); }
.dash-shop .dash-list-filters input,
.dash-shop .dash-list-filters select,
.dash-shop .dash-list-filters .ss-input { border-color: var(--shop-line); }
.dash-list-filters input:focus,
.dash-list-filters select:focus,
.dash-list-filters .ss-input:focus {
  border-color: var(--accent);
  box-shadow: 0 0 0 3px rgba(var(--accent-rgb), 0.14);
}
.dash-admin .dash-list-filters input:focus,
.dash-admin .dash-list-filters select:focus,
.dash-admin .dash-list-filters .ss-input:focus {
  border-color: var(--admin-accent);
  box-shadow: 0 0 0 3px rgba(var(--accent-rgb), 0.16);
}
.dash-list-filters .btn {
  width: 100%;
  min-width: 0;
  min-height: 42px;
  margin-left: 0;
  padding: 0 16px;
}
.dash-list-filters .ss-wrap { position: relative; width: 100%; }
.dash-list-filters .ss-wrap.is-open { z-index: 2; }
.dash-list-filters .ss-list {
  top: auto;
  bottom: calc(100% + 6px);
  z-index: 130;
}
.dash-list-filters .ss-input {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%235a6573' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 12px center;
  background-size: 12px 8px;
  padding-right: 32px;
  cursor: text;
}
.ui-modal-panel.user-form-panel {
  width: min(560px, 100%);
  overflow: visible;
}
.ui-modal:has(.user-form-panel) {
  align-items: flex-start;
  overflow: auto;
}
.ui-modal-panel.user-form-panel:has(.user-form) {
  width: min(560px, 100%);
  max-height: min(90vh, 720px);
  padding: 0;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
.ui-modal:has(.user-form-panel .user-form) {
  align-items: center;
  overflow: hidden;
}
.user-form-head {
  flex-shrink: 0;
  align-items: center;
  margin: 0;
  padding: 16px 20px 14px;
  border-bottom: 1px solid var(--line);
  background: linear-gradient(180deg, #f8fbff 0%, #fff 100%);
}
.user-form-ident { min-width: 0; }
.dash-main .user-form-panel .user-form-head h2,
.user-form-panel .user-form-head h2 {
  margin: 0;
  font-size: 20px;
  font-weight: 650;
  line-height: 1.25;
  letter-spacing: -0.03em;
  text-transform: none;
}
.user-form-panel .ui-modal-kicker {
  margin: 0 0 4px;
  color: var(--admin-accent, var(--accent));
}
.user-form-panel .ui-modal-x {
  width: 36px;
  height: 36px;
  border-radius: 999px;
  border-color: transparent;
  background: #f1f5f9;
  font-size: 20px;
}
.user-form-panel .ui-modal-x:hover { background: #e2e8f0; }
.user-form-panel .form.user-form {
  display: flex;
  flex-direction: column;
  flex: 1;
  min-height: 0;
  gap: 0;
  margin: 0;
}
.user-form-scroll {
  flex: 1 1 auto;
  min-height: 0;
  overflow: auto;
  overscroll-behavior: contain;
  display: grid;
  gap: 14px;
  padding: 16px 20px 18px;
  scrollbar-gutter: stable;
}
.user-form-scroll > .flash-inline { margin: 0; }
.user-form-photo {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 14px 16px;
  align-items: center;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f8fafc;
}
.user-form-photo-avatar {
  position: relative;
  width: 84px;
  height: 84px;
  flex-shrink: 0;
}
.user-form-photo-pick {
  appearance: none;
  -webkit-appearance: none;
  position: relative;
  display: block;
  width: 84px;
  height: 84px;
  padding: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
  font: inherit;
  color: inherit;
}
.user-form-panel .avatar-edit-preview {
  width: 84px;
  height: 84px;
  border: 2px solid #fff;
  box-shadow: 0 0 0 1px #dbe7f3, 0 8px 20px rgba(15, 23, 42, 0.08);
}
.user-form-photo-pick:hover .avatar-edit-preview,
.user-form-photo-pick:focus-visible .avatar-edit-preview {
  box-shadow: 0 0 0 1px var(--admin-accent, var(--accent)), 0 8px 20px rgba(var(--accent-rgb), 0.16);
}
.user-form-photo-cam {
  position: absolute;
  right: -2px;
  bottom: -2px;
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  background: var(--admin-accent, var(--accent));
  color: #fff;
  box-shadow: 0 0 0 2px #fff;
  pointer-events: none;
}
.user-form-photo-cam .ico {
  width: 14px;
  height: 14px;
}
.user-form-photo-meta {
  display: grid;
  gap: 6px;
  min-width: 0;
}
.user-form-photo-meta > strong {
  font-size: 14px;
  font-weight: 650;
  color: var(--ink);
}
.user-form-photo-meta > .muted {
  margin: 0;
  font-size: 12px;
  line-height: 1.4;
}
.user-form-photo-acts {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 4px;
}
.user-form-photo-acts .btn {
  width: auto;
  min-height: 36px;
  padding: 0 12px;
}
.user-form-photo-acts .btn.is-on {
  border-color: #fecaca;
  background: #fef2f2;
  color: var(--err);
}
.user-form-file-name {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.user-form-panel .row {
  gap: 12px;
}
.user-form-panel label.field,
.user-form-panel .field {
  font-size: 12px;
  font-weight: 600;
  color: #334155;
  gap: 6px;
}
.user-form-panel input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="file"]),
.user-form-panel select {
  min-height: 44px;
  padding: 10px 12px;
  border-radius: 6px;
}
.user-form-pills {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}
.user-form-pills label {
  position: relative;
  display: flex;
  min-width: 0;
  cursor: pointer;
}
.user-form-pills input {
  position: absolute;
  opacity: 0;
  width: 1px !important;
  min-width: 0 !important;
  height: 1px;
  margin: 0;
  pointer-events: none;
}
.user-form-pills span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 44px;
  padding: 0 12px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #fff;
  color: #475569;
  font-size: 14px;
  font-weight: 600;
  transition: border-color 0.15s ease, background 0.15s ease, color 0.15s ease, box-shadow 0.15s ease;
}
.user-form-pills label:hover span {
  border-color: #99f6e4;
  color: var(--ink);
}
.user-form-pills input:focus {
  outline: none;
  box-shadow: none;
}
.user-form-pills input:focus-visible + span {
  box-shadow: 0 0 0 3px rgba(var(--accent-rgb), 0.16);
}
.user-form-pills input:checked + span {
  border-color: var(--admin-accent, var(--accent));
  background: var(--admin-accent-soft, #f0fdfa);
  color: var(--admin-accent, #0f766e);
}
.user-form-hint {
  margin: -6px 0 0;
  font-size: 12px;
  line-height: 1.4;
}
.user-form-actions {
  flex-shrink: 0;
  margin: 0;
  padding: 12px 20px 16px;
  border-top: 1px solid var(--line);
  background: #fff;
}
.user-form-panel .user-form-actions .btn {
  width: auto;
  min-width: 112px;
  min-height: 44px;
}
.table-reviews {
  table-layout: fixed;
  width: 100%;
}
.table-reviews th,
.table-reviews td {
  overflow: hidden;
  vertical-align: middle;
  padding-top: 10px;
  padding-bottom: 10px;
}
.table-reviews .col-date { width: 7.4rem; }
.table-reviews .col-type { width: 11.2rem; }
.table-reviews .col-customer { width: 12.2rem; }
.table-reviews .col-body { width: auto; }
.table-reviews .col-status { width: 11.4rem; }
.table-reviews .col-act { width: 9.6rem; }
.table-reviews-admin .col-firma { width: 10.8rem; }
.table-reviews-admin .col-type { width: 11rem; }
.table-reviews-admin .col-customer { width: 11.4rem; }
.table-reviews-admin .col-status { width: 11.2rem; }
.table-reviews-admin .col-act { width: 8.6rem; }
.cell-status {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 6px;
  width: 100%;
  min-width: 0;
}
.cell-status .badge {
  justify-content: center;
  flex-shrink: 0;
  width: fit-content;
  max-width: 100%;
  box-sizing: border-box;
}
.cell-status .badge-sub {
  font-size: 11px;
  font-weight: 600;
  padding: 3px 8px;
}
.table-reviews td:has(.cell-status) {
  overflow: visible;
}
.table-reviews .cell-stack {
  gap: 3px;
}
.table-reviews .cell-stack > *,
.table-reviews .cell-name {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.table-reviews .cell-type .badge {
  flex-shrink: 0;
}
.table-reviews .btn-sm {
  min-height: 32px;
  padding: 0 10px;
  font-size: 12px;
}
.actions { display: flex; flex-wrap: wrap; gap: 8px; align-items: stretch; }
.dash-panel-actions.actions { align-items: center; }
.dash-panel-actions .btn[data-open-platform-modal] { margin-left: auto; }
.reklam-set {
  display: grid;
  gap: 16px;
  padding: 16px;
}
.reklam-set-lead {
  margin: 0;
  font-size: 13px;
}
.reklam-set-slots {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}
.reklam-set-slot {
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 14px;
  border: 1px solid var(--admin-line, var(--line));
  border-radius: 6px;
  background: var(--admin-accent-soft, #f0fdfa);
}
button.reklam-set-slot {
  appearance: none;
  font: inherit;
  color: inherit;
  text-align: left;
  width: 100%;
  cursor: pointer;
}
button.reklam-set-slot:hover,
button.reklam-set-slot:focus-visible {
  border-color: var(--admin-accent, #0d9488);
  box-shadow: 0 0 0 3px rgba(13, 148, 136, 0.14);
  outline: none;
}
.reklam-set-slot.is-filled {
  background: #fff;
  border-color: #99f6e4;
}
.reklam-set-slot.is-gift {
  background: #fff;
  border-style: dashed;
}
.reklam-set-slot.is-platform {
  border-style: dashed;
}
.reklam-set-kicker {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--admin-muted, var(--muted));
}
.reklam-set-slot strong {
  font-size: 15px;
  color: var(--admin-ink, var(--navy));
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.reklam-set-slot-alt {
  font-size: 12px;
  color: var(--admin-muted, var(--muted));
}
.reklam-set-slot .reklam-set-slot-act {
  margin-top: 4px;
  font-size: 12px;
  font-weight: 700;
  color: var(--admin-accent, #0d9488);
}
.reklam-set-prices .table-wrap {
  border: 1px solid var(--admin-line, var(--line));
  border-radius: 6px;
  overflow: hidden;
}
.reklam-set-price {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin: 0;
}
.reklam-set-price input {
  width: 108px;
  min-height: 38px;
  padding: 0 10px;
}
.reklam-set-price span {
  color: var(--admin-muted, var(--muted));
  font-weight: 600;
}
.reklam-set-actions {
  padding: 0;
  border: 0;
  background: transparent;
  justify-content: flex-end;
}
.paytr-ayar {
  display: grid;
  gap: 14px;
  padding: 16px 18px 18px;
}
.paytr-ayar-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px 16px;
}
.paytr-test-field {
  margin: 0;
  align-self: end;
  min-height: 44px;
}
.paytr-bildirim {
  display: grid;
  gap: 6px;
  padding: 12px 14px;
  border: 1px solid var(--admin-line, var(--line));
  border-radius: 6px;
  background: #f8fafc;
}
.paytr-bildirim > span {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--admin-muted, var(--muted));
}
.paytr-bildirim-line {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}
.paytr-bildirim-url {
  font-family: ui-monospace, "Cascadia Mono", Consolas, monospace;
  font-size: 12px;
  letter-spacing: 0.02em;
  overflow-wrap: anywhere;
  color: var(--admin-ink, var(--navy));
}
.paytr-bildirim p {
  margin: 4px 0 0;
  font-size: 12px;
  line-height: 1.45;
  color: var(--admin-muted, var(--muted));
}
.mail-ayar,
.mail-sablon {
  display: grid;
  gap: 14px;
  padding: 16px 18px 14px;
}
.mail-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(260px, 0.85fr);
  gap: 18px 24px;
  align-items: start;
}
.mail-layout-main {
  display: grid;
  gap: 12px;
  min-width: 0;
}
.mail-toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 16px;
}
.mail-switch {
  margin: 0;
  min-height: 42px;
  padding: 0 12px;
  border: 1px solid var(--admin-line, var(--line));
  border-radius: 6px;
  background: #fff;
}
.mail-ayar-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 12px;
}
.mail-ayar-mini {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.mail-smtp {
  display: grid;
  gap: 10px;
  padding: 10px;
  border: 1px dashed var(--admin-line, var(--line));
  border-radius: 6px;
  background: #f8fafc;
}
.mail-smtp-hint {
  margin: 0;
}
.mail-smtp[hidden] {
  display: none;
}
.mail-smtp-grid {
  grid-template-columns: minmax(0, 1.4fr) 88px minmax(0, 0.8fr);
}
.mail-smtp-parola {
  grid-column: 1 / -1;
}
.mail-gelismis {
  border: 0;
  background: transparent;
}
.mail-gelismis summary {
  cursor: pointer;
  list-style: none;
  width: fit-content;
  font-size: 13px;
  color: var(--admin-muted, var(--muted));
  user-select: none;
}
.mail-gelismis summary::-webkit-details-marker {
  display: none;
}
.mail-gelismis[open] summary {
  margin-bottom: 10px;
}
.mail-olay {
  display: grid;
  gap: 8px;
  min-width: 0;
}
.mail-olay-baslik {
  margin: 0;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--admin-muted, var(--muted));
}
.mail-olay-gruplar {
  display: grid;
  gap: 6px;
}
.mail-olay-grup {
  border: 1px solid var(--admin-line, var(--line));
  border-radius: 6px;
  background: #f8fafc;
}
.mail-olay-grup-head {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  padding: 8px 10px;
  cursor: pointer;
  list-style: none;
}
.mail-olay-grup-head::-webkit-details-marker {
  display: none;
}
.mail-olay-chev {
  display: inline-grid;
  place-items: center;
  flex: 0 0 auto;
  color: var(--admin-muted, var(--muted));
  transition: transform 0.15s ease;
}
.mail-olay-grup[open] > .mail-olay-grup-head .mail-olay-chev {
  transform: rotate(180deg);
}
.mail-olay-grup-all {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  flex: 1 1 auto;
  margin: 0;
  cursor: pointer;
  font-size: 12px;
  font-weight: 650;
  color: var(--admin-ink, var(--navy));
}
.mail-olay-grup-all input {
  width: 16px;
  height: 16px;
  margin: 0;
  flex: 0 0 auto;
  accent-color: var(--accent);
}
.mail-olay-grup-ico {
  display: inline-grid;
  place-items: center;
  width: 22px;
  height: 22px;
  border-radius: 4px;
  background: #fff;
  color: var(--accent);
  flex: 0 0 auto;
}
.mail-olay-grup-ico .ico {
  display: block;
}
.mail-olay-grup-all > span:last-of-type {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.mail-olay-grup-head em {
  font-style: normal;
  font-size: 11px;
  font-weight: 650;
  font-variant-numeric: tabular-nums;
  color: var(--admin-muted, var(--muted));
  flex: 0 0 auto;
}
.mail-olay-list {
  display: grid;
  gap: 2px;
  padding: 0 8px 8px;
}
.mail-olay-item {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  margin: 0;
  padding: 7px 8px;
  border-radius: 6px;
  cursor: pointer;
  color: var(--admin-ink, var(--navy));
  font-size: 13px;
  font-weight: 500;
  line-height: 1.3;
}
.mail-olay-item input {
  width: 15px;
  height: 15px;
  margin: 0;
  flex: 0 0 auto;
  accent-color: var(--accent);
}
.mail-olay-item span {
  min-width: 0;
  overflow-wrap: break-word;
}
.mail-olay-item:hover {
  background: #fff;
}
.mail-olay-item:has(input:checked) {
  color: var(--admin-accent, #0f766e);
}
.mail-olay-item:has(input:focus-visible),
.mail-olay-grup-all:has(input:focus-visible) {
  box-shadow: 0 0 0 3px rgba(var(--accent-rgb), 0.16);
}
.mail-foot {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 10px 16px;
  padding-top: 12px;
  border-top: 1px solid var(--admin-line, var(--line));
}
.mail-cron {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  min-width: 0;
  font-size: 12px;
  color: var(--admin-muted, var(--muted));
}
.mail-cron span {
  font-variant-numeric: tabular-nums;
  font-weight: 650;
}
.form.mail-test {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 8px 10px;
  margin: 0;
  padding: 12px 18px 16px;
  border-top: 1px solid var(--admin-line, var(--line));
  background: #f8fafc;
}
.form.mail-test .field {
  width: 240px;
  margin: 0;
}
.form.mail-test .btn {
  flex: 0 0 auto;
}
.mail-test-durum {
  flex: 1 1 200px;
  min-height: 20px;
  font-size: 12px;
  font-weight: 650;
  color: var(--admin-muted, var(--muted));
}
.mail-test-durum.is-ok {
  color: #15803d;
}
.mail-test-durum.is-err {
  color: #b91c1c;
}
.mail-test-hint {
  flex: 1 1 100%;
  margin: 0;
}
.mail-sablon-top {
  display: grid;
  grid-template-columns: minmax(180px, 0.8fr) minmax(0, 1.2fr);
  gap: 10px 12px;
}
.mail-vars {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.mail-vars code {
  padding: 3px 7px;
  border-radius: 4px;
  background: #f1f5f9;
  color: var(--admin-muted, var(--muted));
  font-size: 11px;
}
.mail-sablon-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  gap: 8px;
}
.mail-sablon-actions .mail-test-durum {
  flex: 1 1 180px;
  text-align: left;
}
.mail-empty {
  padding: 0 18px 18px;
}
.mail-log-table .muted {
  margin-top: 4px;
  font-size: 12px;
  max-width: 280px;
}
.paytr-ayar textarea,
.mail-sablon textarea {
  min-height: 180px;
  font-family: ui-monospace, "Cascadia Mono", Consolas, monospace;
  font-size: 13px;
  line-height: 1.5;
}
@media (max-width: 1100px) {
  .mail-layout,
  .mail-smtp-grid,
  .mail-sablon-top {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 720px) {
  .paytr-ayar-grid,
  .mail-ayar-grid,
  .mail-ayar-mini {
    grid-template-columns: 1fr;
  }
  .form.mail-test {
    margin-left: 0;
    width: 100%;
  }
  .form.mail-test .field {
    flex: 1 1 100%;
    width: auto;
  }
}
.dash-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.dash-tabs a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 38px;
  padding: 8px 14px;
  border-radius: 6px;
  border: 1px solid var(--admin-line);
  background: #fff;
  color: var(--admin-muted);
  font-size: 13px;
  font-weight: 650;
  text-decoration: none;
}
.dash-tabs a:hover {
  color: var(--admin-ink, #111418);
  border-color: #99f6e4;
}
.dash-tabs a.is-on {
  color: var(--admin-accent, #0f766e);
  background: var(--admin-accent-soft, #f0fdfa);
  border-color: #99f6e4;
}
.iletisim-admin-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(260px, 0.85fr);
  gap: 8px 24px;
  align-items: start;
  padding: 0 16px 8px;
}
.iletisim-admin-form {
  min-width: 0;
  padding: 0 16px 8px;
}
.iletisim-admin-fields {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}
.iletisim-admin-fields .field {
  margin: 0;
}
.iletisim-admin-fields .field-span {
  grid-column: 1 / -1;
}
.iletisim-admin-form .dash-panel-actions {
  padding: 16px 0 12px;
  border-top: 0;
}
.iletisim-admin-preview {
  min-width: 0;
  padding: 14px 16px 16px;
  border: 1px solid var(--admin-line, var(--line));
  border-radius: 8px;
  background: #fff;
}
.iletisim-admin-kicker {
  margin: 0 0 4px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--admin-muted, var(--muted));
}
.iletisim-admin-preview .contact-item {
  margin-top: 12px;
}
.iletisim-admin-preview .contact-photo {
  height: 150px;
  margin-top: 16px;
}
.iletisim-admin-foto {
  padding: 0 16px 16px;
}
.iletisim-admin-foto-onizleme {
  display: block;
  width: calc(100% - 32px);
  max-width: 420px;
  height: 140px;
  margin: 0 16px 16px;
  object-fit: cover;
  border-radius: 6px;
}
@media (max-width: 900px) {
  .iletisim-admin-grid,
  .iletisim-admin-fields {
    grid-template-columns: 1fr;
  }
}
.dash-head-count {
  font-size: 12px;
  font-weight: 600;
  color: var(--admin-muted, var(--muted));
  white-space: nowrap;
}
.dash-head-filter {
  display: flex;
  align-items: center;
  margin: 0;
  min-width: 0;
}
.dash-head-filter .field {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 8px;
  margin: 0;
  padding: 0;
  border: 0;
  min-width: 0;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--admin-muted, var(--muted));
  line-height: 1;
  white-space: nowrap;
}
.dash-head-filter .field span {
  flex-shrink: 0;
}
.dash-head-filter select {
  width: auto;
  min-width: 168px;
  max-width: 220px;
  min-height: 36px;
  padding: 0 34px 0 12px;
  border: 1px solid var(--admin-line, var(--line));
  border-radius: 6px;
  background-color: #fff;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%2364748b' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 12px center;
  background-size: 12px 8px;
  box-shadow: none;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0;
  text-transform: none;
  color: var(--admin-ink, var(--ink));
  -webkit-appearance: none;
  appearance: none;
  cursor: pointer;
}
.dash-head-filter select:hover {
  border-color: #cbd5e1;
}
.dash-head-filter select:focus {
  border-color: var(--admin-accent, var(--accent));
  box-shadow: 0 0 0 3px rgba(var(--accent-rgb), 0.16);
}
.table-purchases {
  table-layout: fixed;
  width: 100%;
}
.table-purchases .col-store { width: 28%; }
.table-purchases .col-pack { width: auto; }
.table-purchases .col-fee { width: 7.4rem; }
.table-purchases .col-status { width: 8.6rem; }
.table-purchases .col-end { width: 7.6rem; }
.table-purchases .col-act { width: 8.8rem; }
.table-purchases th,
.table-purchases td {
  vertical-align: middle;
  overflow: hidden;
}
.table-purchases td:first-child {
  vertical-align: top;
}
.table-purchases thead th {
  background: #f1f5f9;
  color: #475569;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.06em;
  padding-top: 11px;
  padding-bottom: 11px;
}
.table-purchases tbody td {
  padding-top: 14px;
  padding-bottom: 14px;
  border-bottom-color: #e2e8f0;
}
.table-purchases tbody tr:last-child td {
  border-bottom: 0;
}
.table-purchases .cell-name {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.table-purchases .cell-stack {
  gap: 4px;
}
.table-purchases .cell-stack .panel-etiket {
  max-width: 100%;
}
.table-purchases .cell-stack .panel-etiket span {
  overflow: hidden;
  text-overflow: ellipsis;
}
.table-purchases .cell-stack .muted {
  font-size: 11px;
  font-variant-numeric: tabular-nums;
}
.table-purchases .cell-kicker {
  font-size: 11px;
  font-weight: 600;
  color: var(--admin-muted, var(--muted));
  letter-spacing: 0.01em;
  overflow: hidden;
  text-overflow: ellipsis;
}
.table-purchases .cell-money {
  display: block;
  font-weight: 650;
  font-variant-numeric: tabular-nums;
  letter-spacing: 0.01em;
  white-space: nowrap;
}
.table-purchases .cell-date {
  color: #334155;
  font-weight: 500;
}
.table-purchases .cell-act,
.table-purchases th:last-child {
  text-align: right;
  overflow: visible;
}
.table-purchases .cell-act .actions {
  justify-content: flex-end;
  flex-wrap: nowrap;
}
.table-purchases .btn-sm {
  min-height: 34px;
  padding: 0 12px;
  font-size: 12px;
  font-weight: 600;
  gap: 6px;
}
@media (max-width: 860px) {
  .reklam-set-slots {
    grid-template-columns: 1fr;
  }
  .table-purchases .col-store,
  .table-purchases .col-pack,
  .table-purchases .col-fee,
  .table-purchases .col-status,
  .table-purchases .col-end,
  .table-purchases .col-act {
    width: auto;
  }
}
.dash-shell-main > .actions .btn { min-height: 44px; }
.dash-main .ui-modal-head h2,
.dash-main .odeme-modal-panel h2 {
  font-size: 20px;
  letter-spacing: 0.04em;
  margin: 0;
  text-transform: uppercase;
}
.empty {
  padding: 36px;
  text-align: center;
  color: var(--muted);
  background: #fff;
  border: 1px dashed var(--line);
  border-radius: 8px;
}

@media (max-width: 1280px) {
  .dash-shell {
    grid-template-columns: 1fr;
  }
  .dash-shell-side {
    position: static;
  }
  .dash-ad-slider-side .dash-ad-viewport {
    height: 320px;
  }
}

@media (max-width: 520px) {
  .service-choose-grid {
    grid-template-columns: 1fr;
  }
  .dash-side-bars {
    grid-template-columns: 1fr;
  }
  .dash-panel > .stats-fluid:has(> :nth-child(5):last-child),
  .dash-shop .dash-panel .stats-fluid,
  .dash-shop .dash-panel .stats-fluid:has(> :nth-child(5):last-child) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .dash-panel > .stats-fluid:has(> :nth-child(5):last-child) > .stat,
  .dash-panel > .stats-fluid:has(> :nth-child(5):last-child) > .stat:nth-child(n+4),
  .dash-shop .dash-panel .stats-fluid:has(> :nth-child(5):last-child) > .stat,
  .dash-shop .dash-panel .stats-fluid:has(> :nth-child(5):last-child) > .stat:nth-child(n+4) {
    grid-column: auto;
  }
  .form-cols {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 1100px) {
  .foot-partner {
    flex-direction: column;
    align-items: flex-start;
    padding: 24px;
  }
  .foot-top { grid-template-columns: 1fr 1fr; }
  .foot-brand { grid-column: 1 / -1; }
  .dash-insight-main { grid-template-columns: 1fr; }
  .dash-ad-slider-side .dash-ad-viewport {
    height: 280px;
  }
  .reklam-cols.reklam-cols-3 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .dash-admin .dash-panel .stats:not(.stats-fluid):not(.stats-list),
  .dash-admin .dash-panel .stats-4,
  .dash-admin > .dash-main > .dash-panel > .stats-4,
  .dash-overview .stats.stats-4 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .dash-overview-grid {
    grid-template-columns: 1fr 1fr;
  }
  .dash-kpi,
  .dash-kpi:has(> :nth-child(5)),
  .dash-quick {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .dash-avaro .dash-main .dash-panel > .stats:not(.stats-3):not(.stats-fluid):not(.stats-list),
  .dash-shop .dash-panel .stats:not(.stats-3):not(.stats-fluid):not(.stats-list),
  .dash-avaro .stats:not(.stats-3):not(.stats-fluid):not(.stats-list) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .avaro-top-row {
    padding: 4px 20px;
  }
  .avaro-nav-shell {
    width: 100%;
  }
  .avaro-nav {
    width: 100%;
    justify-content: center;
    flex-wrap: nowrap;
    padding: 6px 12px 8px;
    gap: 2px;
  }
  .avaro-nav a {
    width: 92px;
    min-width: 84px;
    min-height: 58px;
  }
  .avaro-foot { margin-left: auto; gap: 8px; }
  .avaro-tool {
    min-width: 0;
    min-height: 30px;
    padding: 4px 8px;
  }
}

@media (max-width: 980px) {
  :root { --gutter: 18px; }
  .foot-flow { grid-template-columns: 1fr; }
  .foot-flow-track { display: none; }
  .foot-top { grid-template-columns: 1fr 1fr; gap: 24px 16px; }
  .foot-brand,
  .foot-contact { grid-column: 1 / -1; }
  .foot-mini-stats { max-width: none; }
  .foot-cities { padding: 18px; }
  .foot-partner-actions { width: 100%; }
  .foot-partner-actions .btn { flex: 1 1 auto; justify-content: center; }
  .site-footer .btn-accent { max-width: none; }
  .hero-grid, .cards:not(.cards-carousel), .steps, .stats, .stats-3, .foot-grid, .cta-band, .row, .auth-split,
  .ad-row:not(.ad-row-carousel), .promo-strip:not(.promo-carousel), .reklam-cols, .reklam-cols.reklam-cols-3, .reklam-cols.reklam-cols-2 {
    grid-template-columns: 1fr;
  }
  .section-head.split {
    flex-direction: column;
    align-items: flex-start;
  }
  .dash-grid,
  .dash-overview-grid {
    grid-template-columns: 1fr;
  }
  .dash-overview-group {
    border-right: none;
  }
  .dash-overview-group:nth-last-child(-n+2) {
    border-bottom: 1px solid var(--admin-line, var(--line));
  }
  .dash-overview-group:last-child {
    border-bottom: none;
  }
  .dash-avaro .dash-main .dash-panel > .stats:not(.stats-fluid):not(.stats-list),
  .dash-avaro .dash-main .dash-section > .stats:not(.stats-fluid):not(.stats-list),
  .dash-shop .dash-panel .stats:not(.stats-fluid):not(.stats-list),
  .dash-avaro .stats:not(.stats-fluid):not(.stats-list) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .dash-avaro .dash-main .dash-panel > .stats.stats-3,
  .dash-shop .dash-panel .stats-3 {
    grid-template-columns: 1fr;
  }
  .ad-card {
    min-height: 128px;
  }
  .ad-card-media {
    flex: 0 0 148px;
    width: 148px;
    max-width: 42%;
  }
  .ad-row-carousel.ad-row,
  .dash-avaro .ad-row-wrap .ad-row.ad-row-carousel {
    display: block !important;
    grid-template-columns: unset !important;
    gap: 0;
  }
  .ad-row-carousel > .ad-carousel-viewport {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: stretch;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-x: contain;
    scrollbar-width: none;
    width: 100%;
    max-width: 100%;
  }
  .ad-row-carousel > .ad-carousel-viewport::-webkit-scrollbar {
    display: none;
  }
  .ad-row-carousel .ad-card {
    flex: 0 0 100% !important;
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    scroll-snap-align: center;
    scroll-snap-stop: always;
    box-sizing: border-box;
  }
  .ad-row-carousel > .ad-carousel-dots {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-top: 12px;
  }
  .ad-row-carousel > .ad-carousel-dots[hidden] {
    display: none !important;
  }
  .ad-carousel-dot {
    width: 8px;
    height: 8px;
    padding: 0;
    border: 0;
    border-radius: 999px;
    background: rgba(var(--navy-rgb), 0.16);
    cursor: pointer;
    transition: width 0.2s ease, background 0.2s ease;
  }
  .ad-carousel-dot.is-on {
    width: 22px;
    background: var(--shop-accent, var(--navy));
  }
  .ad-carousel-dot:focus-visible {
    outline: 2px solid var(--shop-accent, var(--gold));
    outline-offset: 2px;
  }
  .peek-carousel {
    display: block !important;
    grid-template-columns: unset !important;
    gap: 0;
    width: calc(100% + 2 * var(--gutter));
    max-width: calc(100% + 2 * var(--gutter));
    margin-inline: calc(-1 * var(--gutter));
    overflow: hidden;
  }
  .peek-carousel > .ad-carousel-viewport {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: stretch;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-x: contain;
    scrollbar-width: none;
    width: 100%;
    max-width: 100%;
    gap: var(--peek-carousel-gap, 14px);
    padding-inline: var(--peek-carousel-peek, 0px);
    scroll-padding-inline: var(--peek-carousel-peek, 0px);
  }
  .peek-carousel > .ad-carousel-viewport::-webkit-scrollbar {
    display: none;
  }
  .peek-carousel > .ad-carousel-dots {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-top: 14px;
    padding-inline: var(--gutter);
  }
  .peek-carousel > .ad-carousel-dots[hidden] {
    display: none !important;
  }
  .peek-carousel .promo-card,
  .peek-carousel > .ad-carousel-viewport > .card,
  .peek-carousel > .ad-carousel-viewport > .promise {
    flex: 0 0 var(--peek-carousel-slide, 50%) !important;
    width: var(--peek-carousel-slide, 50%) !important;
    min-width: var(--peek-carousel-slide, 50%) !important;
    max-width: var(--peek-carousel-slide, 50%) !important;
    height: var(--peek-carousel-height, auto);
    min-height: var(--peek-carousel-height, auto);
    scroll-snap-align: center;
    scroll-snap-stop: always;
    box-sizing: border-box;
    overflow: hidden;
  }
  .peek-carousel .promo-card.is-feature {
    box-shadow: none;
  }
  .peek-carousel .promo-card:hover {
    transform: none;
    box-shadow: none;
  }
  .peek-carousel .promo-card-media {
    flex-shrink: 0;
    width: 100%;
  }
  .peek-carousel .promo-card-body {
    flex: 1;
    min-height: 0;
    min-width: 0;
    overflow: hidden;
  }
  .peek-carousel .promo-card-body strong {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
  }
  .peek-carousel .promo-card-body em {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
    min-height: 0;
  }
  .peek-carousel .promo-card-cta {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  .peek-carousel > .ad-carousel-viewport > .card:hover {
    box-shadow: none;
  }
  .peek-carousel > .ad-carousel-viewport > .firma-card:hover,
  .peek-carousel > .ad-carousel-viewport > .firma-card:focus-within {
    z-index: 0;
  }
  .peek-carousel > .ad-carousel-viewport > .firma-card .thumb {
    flex-shrink: 0;
    width: 100%;
  }
  .peek-carousel > .ad-carousel-viewport > .firma-card .body {
    flex: 1;
    min-height: 0;
    min-width: 0;
    overflow: hidden;
  }
  .peek-carousel > .ad-carousel-viewport > .firma-card .body h3 {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
  }
  .peek-carousel > .ad-carousel-viewport > .firma-card .body > p:not(.place):not(.hours):not(.card-rating) {
    min-height: 0;
  }
  .peek-carousel > .ad-carousel-viewport > .firma-card .card-rating {
    flex: 0 0 auto;
    min-height: auto;
    overflow: visible;
  }
  .peek-carousel > .ad-carousel-viewport > .firma-card .btn {
    width: 100%;
    justify-content: center;
    flex-shrink: 0;
  }
  .peek-carousel > .ad-carousel-viewport > .promise {
    display: flex;
    flex-direction: column;
    padding: 20px 18px !important;
    background: rgba(255, 255, 255, 0.88);
    border: 1px solid rgba(var(--navy-rgb), 0.08);
    border-radius: var(--radius);
    box-shadow: 0 8px 24px rgba(var(--navy-rgb), 0.06);
  }
  .peek-carousel > .ad-carousel-viewport > .promise::before,
  .peek-carousel > .ad-carousel-viewport > .promise::after {
    display: none !important;
  }
  .peek-carousel > .ad-carousel-viewport > .promise:hover {
    transform: none;
  }
  .peek-carousel > .ad-carousel-viewport > .promise:hover .promise-icon {
    transform: none;
    box-shadow: 0 0 0 5px rgba(255, 255, 255, 0.65);
  }
  .peek-carousel > .ad-carousel-viewport > .promise .promise-top {
    flex-shrink: 0;
    margin-bottom: 16px;
  }
  .peek-carousel > .ad-carousel-viewport > .promise h3 {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    min-width: 0;
  }
  .peek-carousel > .ad-carousel-viewport > .promise > p {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    overflow: hidden;
    min-height: 0;
    max-width: none;
    flex: 1;
  }
  .wrap:has(.peek-carousel) {
    overflow-x: clip;
  }
  .faq-col + .faq-col { border-top: none; }
  .dash-top > .dash-bar {
    flex-direction: column;
    align-items: stretch;
    padding: 14px 16px 12px;
    min-height: 0;
  }
  .dash-nav { gap: 2px; }
  .avaro-top-row {
    padding: 4px 16px;
  }
  .avaro-view-banner {
    padding: 8px 16px;
  }
  .dash-avaro .dash-main {
    width: 100%;
    max-width: none;
    padding: 22px 16px 40px;
  }
  .avaro-nav-shell {
    width: 100%;
  }
  .avaro-nav {
    width: 100%;
    justify-content: center;
    flex-wrap: nowrap;
    padding: 6px 8px 8px;
  }
  .avaro-nav a {
    width: 84px;
    min-width: 76px;
    min-height: 54px;
    font-size: 9px;
  }
  .avaro-foot { margin-left: auto; gap: 8px; }
  .avaro-meta { display: none; }
  .avaro-user { padding: 3px; }
  .avaro-user::before { height: 18px; }
  .avaro-tool span { display: none; }
  .avaro-tool {
    min-width: 32px;
    min-height: 32px;
    padding: 6px;
  }
  .pager {
    justify-content: center;
    text-align: center;
  }
  .pager-meta { width: 100%; }
  .pager-links { width: 100%; justify-content: center; }
  .pager-dir span { display: none; }
  .pager-dir { min-width: 36px; padding: 0 8px; }
  .hero-photo { height: 340px; }
  .auth-visual { min-height: 260px; }
  .cta-band { padding: 24px; }
  .search-card .btn, .filter-bar .btn { width: 100%; }
  .field-submit { flex: 1 1 100% !important; }
  .dash-main { padding: 22px 16px; }
  .profile-hours {
    grid-template-columns: repeat(7, minmax(0, 1fr));
  }
  .form-cols {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .map-url-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px) {
  .profile-hours {
    grid-template-columns: 1fr;
    gap: 2px;
    padding: 6px;
  }
  .profile-hours-row {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    min-height: 0;
    padding: 11px 14px;
    border: 0;
    border-radius: 6px;
    text-align: left;
  }
  .profile-hours-row:last-child {
    border-bottom: 0;
  }
  .profile-hours-day-full {
    display: inline;
  }
  .profile-hours-day-short {
    display: none;
  }
  .profile-hours-time {
    font-size: 13px;
    text-align: right;
  }
}

/* ==== HOMEPAGE OVERLAY HERO + SEARCH + SELECT ==== */
.hero {
  --mx: 22%;
  --my: 48%;
  position: relative;
  min-height: min(92vh, 900px);
  display: flex;
  flex-direction: column;
  align-items: stretch;
  overflow: visible;
  background: var(--blue-dark);
  color: #fff;
  padding: 0;
  isolation: isolate;
  z-index: 1;
}
.hero-media {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
  pointer-events: none;
  border-radius: 0 0 8px 8px;
}

.hero-picture {
  position: absolute;
  inset: -14% -6%;
  display: block;
  will-change: transform;
}
.hero-bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 72% center;
  filter: saturate(1.05) contrast(1.12) brightness(0.92);
  transform: scale(1.08);
  animation: hero-focus 1.2s ease forwards, hero-drift 18s ease-in-out 1.2s infinite alternate;
  will-change: transform;
}
.hero-scrim {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background:
    linear-gradient(105deg, rgba(var(--navy-rgb),0.92) 0%, rgba(var(--navy-rgb),0.72) 24%, rgba(var(--navy-rgb),0.32) 46%, rgba(var(--navy-rgb),0.06) 68%, transparent 82%),
    linear-gradient(180deg, rgba(var(--navy-rgb),0.28) 0%, transparent 26%, rgba(var(--navy-rgb),0.55) 100%),
    radial-gradient(ellipse at 18% 52%, rgba(var(--gold-rgb),0.22), transparent 46%);
}
.hero-fx {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  overflow: hidden;
}
.hero-mesh {
  position: absolute;
  inset: -20%;
  background:
    radial-gradient(42% 36% at 12% 38%, rgba(56, 189, 248, 0.42), transparent 70%),
    radial-gradient(34% 40% at 8% 78%, rgba(14, 165, 233, 0.28), transparent 68%),
    radial-gradient(28% 28% at 38% 18%, rgba(186, 230, 253, 0.2), transparent 72%);
  mix-blend-mode: screen;
  animation: mesh-shift 14s ease-in-out infinite alternate;
  filter: blur(8px);
}
.hero-orb {
  position: absolute;
  border-radius: 50%;
  filter: blur(70px);
  mix-blend-mode: screen;
}
.hero-orb-a {
  width: 560px;
  height: 560px;
  left: -8%;
  top: 12%;
  background: radial-gradient(circle, rgba(var(--gold-rgb),0.55), transparent 68%);
  animation: orb-drift-a 11s ease-in-out infinite alternate;
}
.hero-orb-b {
  width: 380px;
  height: 380px;
  right: 8%;
  bottom: 6%;
  background: radial-gradient(circle, rgba(125, 211, 252, 0.38), transparent 70%);
  animation: orb-drift-b 13s ease-in-out infinite alternate;
}
.hero-beam {
  position: absolute;
  top: -30%;
  width: 2px;
  height: 160%;
  background: linear-gradient(180deg, transparent, rgba(186, 230, 253, 0.45), transparent);
  filter: blur(1.5px);
  mix-blend-mode: screen;
  transform-origin: top center;
}
.hero-beam-a {
  left: 58%;
  animation: beam-drift 9s ease-in-out infinite;
}
.hero-beam-b {
  left: 72%;
  opacity: 0.55;
  animation: beam-drift 11s ease-in-out 1.4s infinite reverse;
}
.hero-grain {
  position: absolute;
  inset: 0;
  opacity: 0.14;
  mix-blend-mode: overlay;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  background-size: 160px 160px;
  animation: grain-shift 1.2s steps(2) infinite;
}
.hero-dust {
  position: absolute;
  inset: 0;
}
.hero-dust i {
  position: absolute;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 0 10px rgba(186, 230, 253, 0.9);
  opacity: 0;
  animation: dust-float 7.5s ease-in-out infinite;
}
.hero-dust i:nth-child(1) { left: 14%; top: 28%; animation-delay: 0s; }
.hero-dust i:nth-child(2) { left: 22%; top: 62%; width: 3px; height: 3px; animation-delay: 1.1s; }
.hero-dust i:nth-child(3) { left: 38%; top: 18%; animation-delay: 2.2s; }
.hero-dust i:nth-child(4) { left: 48%; top: 72%; width: 4px; height: 4px; animation-delay: 0.6s; }
.hero-dust i:nth-child(5) { left: 63%; top: 24%; animation-delay: 1.8s; }
.hero-dust i:nth-child(6) { left: 71%; top: 54%; width: 3px; height: 3px; animation-delay: 3s; }
.hero-dust i:nth-child(7) { left: 82%; top: 36%; animation-delay: 0.4s; }
.hero-dust i:nth-child(8) { left: 88%; top: 68%; animation-delay: 2.6s; }
.hero-dust i:nth-child(9) { left: 8%; top: 78%; width: 3px; height: 3px; animation-delay: 1.4s; }
.hero-dust i:nth-child(10) { left: 56%; top: 42%; animation-delay: 3.4s; }
.hero-spot {
  position: absolute;
  inset: 0;
  background: radial-gradient(38vw circle at var(--mx) var(--my), rgba(186, 230, 253,0.26), transparent 58%);
  mix-blend-mode: screen;
}
.hero-inner {
  position: relative;
  z-index: 2;
  min-width: 0;
  width: min(var(--wrap), calc(100% - 2 * var(--gutter)));
  max-width: min(var(--wrap), calc(100% - 2 * var(--gutter)));
  margin-inline: auto;
  padding: 108px 0 56px;
  flex: 1 1 auto;
  align-self: center;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 0;
}
.hero-main {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 32px;
  flex: 1 1 auto;
  padding-bottom: 12px;
  min-width: 0;
}
.hero-search-block {
  position: relative;
  z-index: 8;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  margin: 0;
  overflow: visible;
}
.hero-search-band {
  position: relative;
  z-index: 8;
  margin-top: 0;
  padding: 0 0 28px;
  background: var(--blue-dark);
  color: #f0f9ff;
  overflow: visible;
}
.hero-search-band:has(.ss-wrap.is-open),
.hero-search-block:has(.ss-wrap.is-open) {
  z-index: 30;
}
.hero-search-band .optik-search {
  margin-top: -40px;
}
.hero-search-foot {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-top: 16px;
}
.hero-video-link {
  display: none;
  align-self: center;
  border: 0;
  background: transparent;
  color: var(--accent);
  font: inherit;
  font-size: 13px;
  font-weight: 600;
  padding: 4px 0;
  cursor: pointer;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.hero-video-link:hover {
  color: var(--accent-hover);
}
.hero-copy {
  position: relative;
  flex: 1 1 auto;
  max-width: 40rem;
  min-width: 0;
  will-change: transform;
  padding: 8px 0 0;
}
.hero-copy::before {
  content: "";
  position: absolute;
  inset: -8% auto -18% -8%;
  width: 118%;
  background: radial-gradient(ellipse at 18% 40%, rgba(var(--gold-rgb),0.2), transparent 64%);
  pointer-events: none;
  z-index: -1;
  filter: blur(10px);
}
.hero-kicker {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  width: fit-content;
  margin: 0 0 22px;
  padding: 8px 14px 8px 12px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.16);
  background: rgba(255, 255, 255, 0.08);
  backdrop-filter: blur(16px) saturate(1.3);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: #e0f2fe;
}
.hero-live {
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #7dd3fc;
  box-shadow: 0 0 0 0 rgba(var(--gold-rgb), 0.7);
  animation: live-ping 1.7s ease-out infinite;
  flex-shrink: 0;
}
.hero h1 {
  font-family: var(--display);
  font-size: clamp(48px, 7vw, 86px);
  font-weight: 500;
  letter-spacing: -0.035em;
  line-height: 1.08;
  color: #f8fbff;
  max-width: none;
  text-shadow: 0 18px 50px rgba(0, 0, 0, 0.4);
  animation: hero-rise 0.95s cubic-bezier(0.16, 1, 0.3, 1) 0.12s both;
}
.hero h1 em {
  font-style: italic;
  font-weight: 500;
  color: #7dd3fc;
  -webkit-text-fill-color: #7dd3fc;
  white-space: nowrap;
}
.hero .lead {
  color: rgba(240, 249, 255, 0.82);
  max-width: 38ch;
  margin: 22px 0 32px;
  font-size: 17px;
  line-height: 1.75;
  font-weight: 400;
}
.hero-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  margin-bottom: 8px;
}
.hero-actions .btn {
  border-radius: 999px;
  min-width: 168px;
  height: 52px !important;
  min-height: 52px !important;
  max-height: 52px !important;
  padding: 0 26px !important;
  font-size: 15px;
  line-height: 1;
  gap: 8px;
  box-sizing: border-box;
}
.hero-actions .btn-gold {
  min-width: 188px;
  box-shadow: 0 10px 28px rgba(var(--gold-rgb), 0.38) !important;
  animation: none !important;
}
.hero-actions .btn-gold::after {
  content: none;
}
.hero-actions .btn-ghost-light {
  background: rgba(255,255,255,0.08);
  border: 1px solid rgba(255,255,255,0.34) !important;
  backdrop-filter: blur(16px);
  min-width: 188px;
}
.btn-ghost-light {
  background: transparent;
  color: #fff !important;
  -webkit-text-fill-color: #fff;
  border-color: rgba(255,255,255,0.45);
}
.btn-ghost-light:hover {
  background: rgba(255,255,255,0.12);
  border-color: #fff;
}
.hero-trust-list {
  list-style: none;
  display: none;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 28px;
  padding: 0;
  border: 0;
}
.hero-trust-list li {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 14px;
  margin: 0;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.14);
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0.01em;
  color: rgba(240, 249, 255, 0.92);
  backdrop-filter: blur(12px);
}
.hero-trust-list li:last-child {
  border-right: 1px solid rgba(255, 255, 255, 0.14);
  margin-right: 0;
  padding-right: 14px;
}
.hero-trust-list .ico { color: var(--gold); }

.hero-stat-mobile {
  display: none;
}

.hero-float {
  flex: 0 0 auto;
  align-self: flex-end;
  z-index: 3;
  will-change: transform;
  margin-bottom: 12px;
}
.hero-float-card {
  width: min(260px, 100%);
  padding: 22px 22px 20px;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.14);
  border: 1px solid rgba(255, 255, 255, 0.28);
  backdrop-filter: blur(22px) saturate(1.4);
  box-shadow: 0 24px 60px rgba(7, 21, 35, 0.28), inset 0 1px 0 rgba(255,255,255,0.28);
}
.hero-float-live {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #e0f2fe;
}
.hero-float-live i {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #4ade80;
  box-shadow: 0 0 0 0 rgba(74, 222, 128, 0.7);
  animation: live-ping-green 1.8s ease-out infinite;
}
.hero-float-card strong {
  display: block;
  margin: 12px 0 6px;
  font-family: var(--display);
  font-size: 28px;
  font-weight: 500;
  letter-spacing: -0.03em;
  line-height: 1.15;
  color: #fff;
}
.hero-float-card p {
  margin: 0;
  font-size: 13px;
  color: rgba(240, 249, 255, 0.78);
}

.hero-search {
  position: relative;
  z-index: 10;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr)) auto;
  align-items: stretch;
  gap: 0;
  margin: 0 0 18px;
  padding: 0 !important;
  border-radius: 8px !important;
  background: #fff !important;
  backdrop-filter: blur(22px) saturate(1.35);
  border: 1px solid rgba(255, 255, 255, 0.82) !important;
  box-shadow: 0 28px 70px rgba(7, 21, 35, 0.28), 0 0 0 1px rgba(56, 189, 248, 0.14);
  overflow: hidden;
  animation: none;
  opacity: 1;
}
.hero-search::before {
  content: none;
}
.hero-search > .field:not(.field-submit) {
  min-width: 0;
  justify-content: center;
  padding: 14px 18px;
  border-radius: 0;
  border-right: 1px solid var(--line);
  transition: background 0.25s ease;
}
.hero-search .field:hover {
  background: rgba(56, 189, 248, 0.06);
}
.hero-search .field:first-child {
  border-radius: 0;
}
.hero-search .field:nth-last-child(2) {
  border-right: none;
}
.hero-search .field-submit {
  display: flex !important;
  flex-direction: row !important;
  align-items: stretch !important;
  justify-content: stretch !important;
  padding: 0 !important;
  background: transparent;
  border-right: none !important;
}
.hero-search .field-submit:hover {
  background: transparent;
}
.hero-search .btn-gold {
  min-width: 156px;
  min-height: 0;
  height: auto;
  align-self: stretch;
  width: auto !important;
  border-radius: 0;
  border: none;
  box-shadow: none;
  background-image: none;
  animation: none;
  flex: 1 1 auto;
}

@keyframes hero-rise {
  from { opacity: 0; transform: translateY(28px); }
  to { opacity: 1; transform: none; }
}
@keyframes hero-word {
  from { opacity: 0; filter: blur(10px); transform: translateY(110%); }
  to { opacity: 1; filter: blur(0); transform: none; }
}
@keyframes hero-rule-draw {
  from { opacity: 0; transform: scaleX(0); }
  to { opacity: 0.85; transform: scaleX(1); }
}
@keyframes gold-breathe {
  0%, 100% { box-shadow: 0 10px 28px rgba(var(--gold-rgb), 0.28); }
  50% { box-shadow: 0 18px 42px rgba(var(--gold-rgb), 0.62); }
}
@keyframes gold-sheen {
  0%, 50% { background-position: 100% 0; }
  75%, 100% { background-position: 0% 0; }
}
@keyframes search-rise {
  from { opacity: 0; transform: translateY(40px) scale(0.98); }
  to { opacity: 1; transform: none; }
}
@keyframes search-glow {
  0%, 100% { opacity: 0.25; }
  50% { opacity: 1; }
}
@keyframes live-ping {
  0% { box-shadow: 0 0 0 0 rgba(var(--gold-rgb), 0.7); }
  70% { box-shadow: 0 0 0 10px rgba(var(--gold-rgb), 0); }
  100% { box-shadow: 0 0 0 0 rgba(var(--gold-rgb), 0); }
}
@keyframes live-ping-green {
  0% { box-shadow: 0 0 0 0 rgba(74, 222, 128, 0.7); }
  70% { box-shadow: 0 0 0 10px rgba(74, 222, 128, 0); }
  100% { box-shadow: 0 0 0 0 rgba(74, 222, 128, 0); }
}
@keyframes trust-float {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-6px); }
}
@keyframes kicker-in {
  from { opacity: 0; letter-spacing: 0.46em; transform: translateY(12px); }
  to { opacity: 1; letter-spacing: 0.22em; transform: none; }
}
@keyframes orb-drift-a {
  from { transform: translate3d(0, 0, 0) scale(1); }
  to { transform: translate3d(18%, 22%, 0) scale(1.18); }
}
@keyframes orb-drift-b {
  from { transform: translate3d(0, 0, 0) scale(1); }
  to { transform: translate3d(-16%, 14%, 0) scale(1.12); }
}
@keyframes orb-drift-c {
  from { transform: translate3d(0, 0, 0); }
  to { transform: translate3d(12%, -20%, 0); }
}
@keyframes sheen-move {
  from { transform: translateX(-12%) rotate(0deg); opacity: 0.35; }
  to { transform: translateX(14%) rotate(8deg); opacity: 0.8; }
}
@keyframes mesh-shift {
  from { transform: translate3d(0, 0, 0) scale(1); }
  to { transform: translate3d(6%, -4%, 0) scale(1.08); }
}
@keyframes beam-drift {
  0%, 100% { transform: rotate(18deg) translateX(0); opacity: 0.25; }
  50% { transform: rotate(22deg) translateX(40px); opacity: 0.7; }
}
@keyframes grain-shift {
  0%, 100% { transform: translate(0, 0); }
  50% { transform: translate(-2%, 1%); }
}
@keyframes dust-float {
  0%, 100% { opacity: 0; transform: translate3d(0, 12px, 0) scale(0.6); }
  25% { opacity: 0.85; }
  50% { opacity: 0.4; transform: translate3d(18px, -28px, 0) scale(1); }
  75% { opacity: 0.7; }
}
@keyframes accent-shimmer {
  0%, 100% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
}
@keyframes scribble-draw {
  to { stroke-dashoffset: 0; }
}
@keyframes btn-shine {
  0%, 55% { background-position: 120% 0; }
  80%, 100% { background-position: -20% 0; }
}
@keyframes float-bob {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-10px); }
}
@keyframes foot-border-flow {
  0%, 100% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
}
@keyframes foot-ring-spin {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}
@keyframes foot-orb-a {
  from { transform: translate3d(0, 0, 0) scale(1); }
  to { transform: translate3d(12%, 18%, 0) scale(1.15); }
}
@keyframes foot-orb-b {
  from { transform: translate3d(0, 0, 0) scale(1); }
  to { transform: translate3d(-14%, -10%, 0) scale(1.1); }
}
@keyframes foot-mesh-shift {
  from { opacity: 0.7; transform: scale(1); }
  to { opacity: 1; transform: scale(1.06); }
}
@keyframes foot-border-glow {
  0%, 100% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
}
@keyframes foot-glow-pulse {
  0%, 100% { opacity: 0.55; transform: scale(1); }
  50% { opacity: 0.9; transform: scale(1.08); }
}
@keyframes foot-text-shimmer {
  0%, 100% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
}
@keyframes foot-flow-progress {
  0% { transform: translateX(-120%); opacity: 0; }
  12% { opacity: 1; }
  33% { transform: translateX(0%); opacity: 1; }
  45% { transform: translateX(0%); opacity: 1; }
  66% { transform: translateX(100%); opacity: 1; }
  78% { transform: translateX(100%); opacity: 1; }
  100% { transform: translateX(220%); opacity: 0; }
}
@keyframes foot-step-glow {
  0%, 8%, 100% {
    border-color: rgba(255,255,255,0.1);
    background: rgba(255,255,255,0.045);
    box-shadow: none;
  }
  12%, 28% {
    border-color: rgba(var(--accent-rgb), 0.55);
    background: rgba(var(--accent-rgb), 0.14);
    box-shadow: 0 0 24px rgba(var(--accent-rgb), 0.22);
  }
}
@keyframes foot-pill-bob {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-4px); }
}
@keyframes foot-title-grow {
  0%, 100% { width: 28px; opacity: 1; }
  50% { width: 44px; opacity: 0.85; }
}
@keyframes foot-clock-tick {
  0%, 100% { transform: rotate(0deg); }
  25% { transform: rotate(-8deg); }
  75% { transform: rotate(8deg); }
}

.hero-copy > .lead,
.hero-copy > .hero-actions,
.hero-trust-list li {
  opacity: 1;
  animation: hero-rise 0.9s cubic-bezier(0.16, 1, 0.3, 1) both;
}
.hero-copy > .hero-kicker {
  animation: kicker-in 1.05s cubic-bezier(0.16, 1, 0.3, 1) 0.06s both;
}
.hero-copy .lead { animation-delay: 0.82s; }
.hero-actions { animation-delay: 0.96s; }
.hero-float-card {
  animation:
    hero-rise 0.9s cubic-bezier(0.16, 1, 0.3, 1) 0.7s both,
    float-bob 5.2s ease-in-out 1.8s infinite;
}
.hero-trust-list li {
  animation:
    hero-rise 0.6s cubic-bezier(0.16, 1, 0.3, 1) both,
    trust-float 3.6s ease-in-out 1.8s infinite;
}
.hero-trust-list li:nth-child(1) { animation-delay: 1.12s, 1.8s; }
.hero-trust-list li:nth-child(2) { animation-delay: 1.24s, 2.1s; }
.hero-trust-list li:nth-child(3) { animation-delay: 1.36s, 2.4s; }
.hero-actions .btn {
  position: relative;
  z-index: 0;
  transition: transform 0.28s ease, box-shadow 0.28s ease, background 0.25s ease, border-color 0.25s ease;
}
.hero-actions .btn-gold {
  background-color: var(--gold);
  background-image: none;
  animation: none !important;
}
.hero-actions .btn-gold:hover {
  transform: translateY(-2px);
  box-shadow: 0 14px 32px rgba(var(--gold-rgb), 0.45) !important;
  animation: none !important;
}
.hero-actions .btn-ghost-light:hover {
  transform: translateY(-3px);
}


.reveal-on {
  opacity: 0;
  transform: translateY(28px);
  transition:
    opacity 0.75s cubic-bezier(0.22, 1, 0.36, 1),
    transform 0.75s cubic-bezier(0.22, 1, 0.36, 1);
}
.reveal-on.is-visible {
  opacity: 1;
  transform: none;
}
.steps.reveal-on,
.cards.reveal-on,
.service-grid-rich.reveal-on,
.stats.reveal-on,
.quick-cities.reveal-on,
.promise-grid.reveal-on,
.foot-flow.reveal-on,
.foot-cities.reveal-on {
  opacity: 1;
  transform: none;
}
.steps.reveal-on:not(.is-visible) .step,
.cards.reveal-on:not(.is-visible) .card,
.service-grid-rich.reveal-on:not(.is-visible) .service-tile,
.stats.reveal-on:not(.is-visible) .stat,
.quick-cities.reveal-on:not(.is-visible) .city-chip,
.promise-grid.reveal-on:not(.is-visible) .promise,
.foot-flow.reveal-on:not(.is-visible) .foot-flow-step,
.foot-cities.reveal-on:not(.is-visible) .foot-city,
.foot-top.reveal-on:not(.is-visible) .foot-mini-stat {
  opacity: 0;
  transform: translateY(22px);
}
.steps.reveal-on.is-visible .step,
.cards.reveal-on.is-visible .card,
.service-grid-rich.reveal-on.is-visible .service-tile,
.stats.reveal-on.is-visible .stat,
.quick-cities.reveal-on.is-visible .city-chip,
.promise-grid.reveal-on.is-visible .promise,
.foot-flow.reveal-on.is-visible .foot-flow-step,
.foot-cities.reveal-on.is-visible .foot-city,
.foot-top.reveal-on.is-visible .foot-mini-stat {
  animation: hero-rise 0.55s cubic-bezier(0.22, 1, 0.36, 1) both;
}
.foot-flow.reveal-on.is-visible .foot-flow-step-1 { animation-delay: 0.06s, 0s; }
.foot-flow.reveal-on.is-visible .foot-flow-step-2 { animation-delay: 0.16s, 3s; }
.foot-flow.reveal-on.is-visible .foot-flow-step-3 { animation-delay: 0.26s, 6s; }
.foot-flow.reveal-on.is-visible .foot-flow-step-1,
.foot-flow.reveal-on.is-visible .foot-flow-step-2,
.foot-flow.reveal-on.is-visible .foot-flow-step-3 {
  animation-name: hero-rise, foot-step-glow;
  animation-duration: 0.55s, 9s;
  animation-timing-function: cubic-bezier(0.22, 1, 0.36, 1), ease-in-out;
  animation-fill-mode: both, none;
  animation-iteration-count: 1, infinite;
}
.foot-top.reveal-on.is-visible .foot-mini-stat:nth-child(1) { animation-delay: 0.1s; }
.foot-top.reveal-on.is-visible .foot-mini-stat:nth-child(2) { animation-delay: 0.2s; }
.foot-top.reveal-on.is-visible .foot-mini-stat:nth-child(3) { animation-delay: 0.3s; }
.foot-cities.reveal-on.is-visible .foot-city:nth-child(1) { animation-delay: 0.04s; }
.foot-cities.reveal-on.is-visible .foot-city:nth-child(2) { animation-delay: 0.08s; }
.foot-cities.reveal-on.is-visible .foot-city:nth-child(3) { animation-delay: 0.12s; }
.foot-cities.reveal-on.is-visible .foot-city:nth-child(4) { animation-delay: 0.16s; }
.foot-cities.reveal-on.is-visible .foot-city:nth-child(5) { animation-delay: 0.2s; }
.foot-cities.reveal-on.is-visible .foot-city:nth-child(6) { animation-delay: 0.24s; }
.foot-cities.reveal-on.is-visible .foot-city:nth-child(7) { animation-delay: 0.28s; }
.foot-cities.reveal-on.is-visible .foot-city:nth-child(8) { animation-delay: 0.32s; }
.foot-cities.reveal-on.is-visible .foot-city:nth-child(9) { animation-delay: 0.36s; }
.foot-cities.reveal-on.is-visible .foot-city:nth-child(10) { animation-delay: 0.4s; }
.foot-cities.reveal-on.is-visible .foot-city:nth-child(11) { animation-delay: 0.44s; }
.foot-cities.reveal-on.is-visible .foot-city:nth-child(12) { animation-delay: 0.48s; }
.steps.reveal-on.is-visible .step:nth-child(1),
.cards.reveal-on.is-visible .card:nth-child(1),
.stats.reveal-on.is-visible .stat:nth-child(1),
.service-grid-rich.reveal-on.is-visible .service-tile:nth-child(1),
.quick-cities.reveal-on.is-visible .city-chip:nth-child(2),
.promise-grid.reveal-on.is-visible .promise:nth-child(1) { animation-delay: 0.04s; }
.steps.reveal-on.is-visible .step:nth-child(2),
.cards.reveal-on.is-visible .card:nth-child(2),
.stats.reveal-on.is-visible .stat:nth-child(2),
.service-grid-rich.reveal-on.is-visible .service-tile:nth-child(2),
.quick-cities.reveal-on.is-visible .city-chip:nth-child(3),
.promise-grid.reveal-on.is-visible .promise:nth-child(2) { animation-delay: 0.12s; }
.steps.reveal-on.is-visible .step:nth-child(3),
.cards.reveal-on.is-visible .card:nth-child(3),
.stats.reveal-on.is-visible .stat:nth-child(3),
.service-grid-rich.reveal-on.is-visible .service-tile:nth-child(3),
.quick-cities.reveal-on.is-visible .city-chip:nth-child(4),
.promise-grid.reveal-on.is-visible .promise:nth-child(3) { animation-delay: 0.2s; }
.stats.reveal-on.is-visible .stat:nth-child(4),
.cards.reveal-on.is-visible .card:nth-child(4),
.service-grid-rich.reveal-on.is-visible .service-tile:nth-child(4),
.quick-cities.reveal-on.is-visible .city-chip:nth-child(5),
.promise-grid.reveal-on.is-visible .promise:nth-child(4) { animation-delay: 0.28s; }
.service-grid-rich.reveal-on.is-visible .service-tile:nth-child(5),
.cards.reveal-on.is-visible .card:nth-child(5),
.quick-cities.reveal-on.is-visible .city-chip:nth-child(6) { animation-delay: 0.36s; }
.service-grid-rich.reveal-on.is-visible .service-tile:nth-child(6),
.cards.reveal-on.is-visible .card:nth-child(6),
.quick-cities.reveal-on.is-visible .city-chip:nth-child(7) { animation-delay: 0.44s; }
.service-grid-rich.reveal-on.is-visible .service-tile:nth-child(7) { animation-delay: 0.52s; }
.service-grid-rich.reveal-on.is-visible .service-tile:nth-child(8) { animation-delay: 0.6s; }
.service-grid-rich.reveal-on.is-visible .service-tile:nth-child(9) { animation-delay: 0.68s; }

@keyframes hero-focus {
  from { transform: scale(1.14); }
  to { transform: scale(1.08); }
}
@keyframes hero-drift {
  from { transform: scale(1.08) translate3d(0, 0, 0); }
  to { transform: scale(1.16) translate3d(-4%, 2.4%, 0); }
}
@media (prefers-reduced-motion: reduce) {
  .site-header,
  .site-header .brand img,
  .site-header .brand span,
  .nav-links a:not(.btn),
  .nav-links a:not(.btn)::after,
  .menu-btn span,
  .site-header .nav-links a.btn-outline,
  .site-header .nav-links a.btn-primary {
    transition: none !important;
    animation: none !important;
    transform: none !important;
  }
  .hero-bg,
  .hero-orb,
  .hero-mesh,
  .hero-beam,
  .hero-grain,
  .hero-dust i,
  .hero-sheen,
  .hero-live,
  .hero-float-live i,
  .hero h1,
  .hero h1 em,
  .hero-copy > .lead,
  .hero-copy > .hero-actions,
  .hero-copy > .hero-kicker,
  .hero-trust-list li,
  .hero-actions .btn-gold,
  .hero-actions .btn-gold::after,
  .hero-float-card,
  .hero-search,
  .hero-search::before,
  .find-band .search-card,
  .find-band .search-card::before,
  .steps.reveal-on.is-visible .step,
  .cards.reveal-on.is-visible .card,
  .service-grid-rich.reveal-on.is-visible .service-tile,
  .stats.reveal-on.is-visible .stat,
  .quick-cities.reveal-on.is-visible .city-chip,
  .promise-grid.reveal-on.is-visible .promise,
  .foot-flow.reveal-on.is-visible .foot-flow-step,
  .foot-cities.reveal-on.is-visible .foot-city,
  .foot-top.reveal-on.is-visible .foot-mini-stat,
  .foot-top.reveal-on.is-visible .foot-trust li,
  .site-footer::before,
  .site-footer::after,
  .foot-orb,
  .foot-mesh,
  .foot-grain,
  .foot-partner-glow,
  .foot-partner::before,
  .foot-partner h2 em,
  .foot-flow-progress,
  .foot-stat-pulse,
  .foot-hours .ico,
  .foot-btn-shine::after,
  .foot-col h3::after {
    animation: none;
    transform: none;
    opacity: 1;
    filter: none;
    letter-spacing: inherit;
  }
  .foot-fx { display: none; }
  .hero-fx,
  .hero-spot { display: none; }
  .hero-picture,
  .hero-copy,
  .hero-float,
  [data-magnetic] { transform: none !important; }
  .reveal-on,
  .steps.reveal-on:not(.is-visible) .step,
  .cards.reveal-on:not(.is-visible) .card,
  .service-grid-rich.reveal-on:not(.is-visible) .service-tile,
  .stats.reveal-on:not(.is-visible) .stat,
  .quick-cities.reveal-on:not(.is-visible) .city-chip,
  .promise-grid.reveal-on:not(.is-visible) .promise,
  .foot-flow.reveal-on:not(.is-visible) .foot-flow-step,
  .foot-cities.reveal-on:not(.is-visible) .foot-city,
  .foot-top.reveal-on:not(.is-visible) .foot-mini-stat {
    opacity: 1;
    transform: none;
    transition: none;
  }
}

.find-band {
  margin-top: 0;
  position: relative;
  z-index: 4;
  padding: 72px 0 36px;
  background: var(--bg);
}
.find-band .search-card {
  border-radius: 8px;
  box-shadow: 0 28px 70px rgba(var(--navy-rgb), 0.28);
  border: 1px solid var(--line);
  z-index: 8;
}
.find-band .search-card.hero-search {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) auto !important;
  align-items: stretch !important;
  gap: 0 !important;
  margin: 0 0 18px !important;
  padding: 0 !important;
  border-radius: 8px !important;
  background: #fff !important;
  border: 1px solid rgba(255, 255, 255, 0.82) !important;
  box-shadow: 0 28px 70px rgba(7, 21, 35, 0.28), 0 0 0 1px rgba(56, 189, 248, 0.14) !important;
  overflow: hidden !important;
  z-index: 10;
}
.find-band .search-card.hero-search:has(> .field:nth-child(5)) {
  grid-template-columns: 1.25fr repeat(3, minmax(0, 1fr)) auto !important;
}
.find-band .search-card.hero-search > .field:not(.field-submit) {
  min-width: 0 !important;
  padding: 14px 18px !important;
  border-right: 1px solid var(--line);
}
.find-band .search-card.hero-search > .field:nth-last-child(2) {
  border-right: none !important;
}
.find-band .search-card.hero-search .field-submit {
  display: flex !important;
  align-items: stretch !important;
  padding: 0 !important;
  border-right: none !important;
}
.find-band .search-card.hero-search .btn-gold,
.find-band .search-card.hero-search .btn {
  min-width: 156px !important;
  height: auto !important;
  min-height: 0 !important;
  align-self: stretch !important;
  padding: 0 28px !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background-image: none !important;
  animation: none !important;
}
.find-band .search-card .btn-gold {
  min-width: 152px;
}
.find-head { margin-bottom: 22px; max-width: 40rem; }
.quick-cities {
  position: relative;
  z-index: 1;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin-top: 14px;
  padding: 0 2px;
}
.hero-search-block .quick-cities {
  margin-top: 12px;
}
.hero-search-block .quick-label {
  color: rgba(240, 249, 255, 0.72);
}
.hero-search-block .city-chip {
  background: rgba(255, 255, 255, 0.12);
  border-color: rgba(255, 255, 255, 0.22);
  color: #f0f9ff;
  backdrop-filter: blur(10px);
}
.hero-search-block .city-chip:hover {
  background: rgba(255, 255, 255, 0.22);
  border-color: rgba(186, 230, 253, 0.55);
  color: #fff;
}
.hero-search-block .city-chip-locate {
  background: rgba(var(--gold-rgb), 0.22);
  border-color: rgba(var(--gold-rgb), 0.5);
  color: #fff8e8;
}
.hero-search-block .city-chip-locate:hover,
.hero-search-block .city-chip-locate.is-on {
  background: var(--gold);
  border-color: var(--gold);
  color: var(--gold-ink);
}
.quick-label {
  font-size: 12px;
  font-weight: 600;
  color: var(--muted);
  margin-right: 4px;
}
.city-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 34px;
  padding: 0 14px;
  border-radius: 999px;
  border: 1px solid var(--line);
  background: #fff;
  font-family: inherit;
  font-size: 13px;
  font-weight: 500;
  color: var(--ink);
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
  transition: border-color .2s ease, color .2s ease, background .2s ease, transform .2s ease;
}
.city-chip:hover {
  border-color: var(--accent);
  color: var(--accent);
  background: rgba(var(--accent-rgb),0.08);
  transform: translateY(-2px);
}

.search-card,
.filter-bar {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: var(--shadow);
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 0;
  align-items: stretch;
  overflow: visible;
  position: relative;
  z-index: 6;
}
.search-card .field,
.filter-bar .field {
  position: relative;
  flex: 1 1 160px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 4px;
  margin: 0;
  padding: 12px 16px;
  border-right: 1px solid var(--line);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--muted);
  line-height: 1.2;
  min-width: 0;
}
.search-card .field:has(.ss-wrap.is-open),
.filter-bar .field:has(.ss-wrap.is-open) {
  z-index: 80;
}
.field-submit {
  flex: 0 0 auto !important;
  flex-direction: row !important;
  border-right: none !important;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  padding: 12px 12px 12px 16px !important;
  text-transform: none;
  letter-spacing: 0;
}
.field-submit span { display: none; }
.search-card .btn,
.filter-bar .btn { width: auto; min-width: 128px; }
.search-card input,
.search-card select,
.filter-bar input,
.filter-bar select {
  border: none;
  padding-left: 0;
  padding-right: 0;
  min-height: 28px;
  background-color: transparent;
  box-shadow: none;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0;
  text-transform: none;
  color: var(--ink);
  line-height: 1.3;
}
.search-card input:focus,
.search-card select:focus,
.filter-bar input:focus,
.filter-bar select:focus {
  border: none;
  box-shadow: none;
}

.ss-wrap { position: relative; width: 100%; }
.ss-wrap.is-open { z-index: 70; }
.search-card .ss-wrap,
.filter-bar .ss-wrap { position: static; }
.ss-native {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0,0,0,0) !important;
  white-space: nowrap !important;
  border: 0 !important;
  min-height: 0 !important;
  pointer-events: none;
}
.ss-input {
  width: 100%;
  cursor: text;
  background-color: transparent;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%235a6573' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 2px center;
  background-size: 12px 8px;
  padding-right: 22px !important;
}
.ss-input::placeholder {
  color: var(--muted);
  opacity: 1;
}
.search-card .ss-input,
.filter-bar .ss-input {
  background-position: right 0 center;
  padding-right: 18px !important;
}
.ss-list {
  position: absolute;
  z-index: 60;
  left: 0;
  right: 0;
  top: calc(100% + 6px);
  margin: 0;
  padding: 6px;
  list-style: none;
  max-height: 260px;
  overflow: auto;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  box-shadow: 0 14px 36px rgba(var(--navy-rgb),0.14);
}
.search-card .ss-list,
.filter-bar .ss-list {
  left: 0;
  right: 0;
  top: 100%;
  margin-top: -1px;
  padding: 6px 0;
  min-width: 0;
  border-radius: 0 0 8px 8px;
}
.ss-option,
.ss-empty {
  padding: 10px 12px;
  border-radius: 4px;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0;
  text-transform: none;
  color: var(--ink);
  cursor: pointer;
}
.search-card .ss-option,
.filter-bar .ss-option,
.search-card .ss-empty,
.filter-bar .ss-empty {
  padding: 10px 16px;
  border-radius: 0;
}
.ss-empty { color: var(--muted); cursor: default; }
.ss-option:hover,
.ss-option.is-active {
  background: rgba(var(--accent-rgb),0.1);
  color: var(--accent);
}
.ss-option.is-selected { font-weight: 600; }
.ss-option,
.ss-input,
.filter-bar .btn,
.search-card .btn {
  touch-action: manipulation;
}

.form label.field:has(.ss-box.is-open) {
  padding-bottom: 8px;
}
.ss-box { display: grid; gap: 0; }
.ss-box .ss-trigger {
  display: flex;
  align-items: center;
  width: 100%;
  margin: 0;
  border: 0;
  padding: 2px 22px 4px 0;
  min-height: 28px;
  background-color: transparent;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%235a6573' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 2px center;
  background-size: 12px 8px;
  color: var(--ink);
  font: inherit;
  font-size: 14px;
  font-weight: 500;
  text-align: left;
  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;
}
.ss-box .ss-trigger:focus { outline: none; box-shadow: none; }
.ss-box .ss-trigger-text {
  display: grid;
  gap: 1px;
  min-width: 0;
  width: 100%;
}
.ss-box .ss-trigger-title,
.ss-box .ss-trigger.is-placeholder .ss-trigger-text {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.ss-box .ss-trigger.is-placeholder .ss-trigger-text {
  display: block;
  color: var(--muted);
  font-weight: 500;
}
.ss-box .ss-trigger-meta {
  font-size: 12px;
  font-weight: 500;
  color: var(--muted);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.ss-picker {
  position: fixed;
  inset: 0;
  z-index: 240;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px 16px;
}
.ss-picker[hidden] { display: none !important; }
body.ss-picker-open { overflow: hidden; }
.ss-picker-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(var(--navy-rgb), 0.48);
  backdrop-filter: blur(4px);
}
.ss-picker-panel {
  position: relative;
  z-index: 1;
  width: min(480px, 100%);
  max-height: min(92vh, 840px);
  overflow: auto;
  overscroll-behavior: contain;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  box-shadow: 0 24px 64px rgba(var(--navy-rgb), 0.22);
  padding: 20px 20px 16px;
}
.ss-picker-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 14px;
}
.ss-picker-title {
  margin: 0;
  font-size: 20px;
  letter-spacing: -0.02em;
  color: var(--navy);
}
.ss-picker-sub {
  margin: 6px 0 0;
  font-size: 13px;
  color: var(--muted);
}
.ss-picker-x {
  width: 40px;
  height: 40px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #fff;
  color: var(--ink);
  font-size: 22px;
  line-height: 1;
  cursor: pointer;
  flex-shrink: 0;
}
.ss-picker-x:hover { background: var(--cream); }
.ss-picker-search {
  position: relative;
  margin: 0 0 12px;
}
.ss-picker-search .ss-search-ico {
  position: absolute;
  left: 11px;
  top: 50%;
  width: 16px;
  height: 16px;
  transform: translateY(-50%);
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%235a6573' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='7' cy='7' r='5.2'/%3E%3Cpath d='M11 11.5L14.2 14.7'/%3E%3C/svg%3E") no-repeat center;
  pointer-events: none;
}
.ss-picker .ss-search-input {
  width: 100%;
  min-height: 40px;
  height: 40px;
  margin: 0;
  padding: 8px 12px 8px 34px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--cream, #f7f8fa);
  box-shadow: none;
  color: var(--ink);
  font: inherit;
  font-size: 14px;
  appearance: none;
  -webkit-appearance: none;
}
.ss-picker .ss-search-input::-webkit-search-decoration,
.ss-picker .ss-search-input::-webkit-search-cancel-button {
  -webkit-appearance: none;
  appearance: none;
}
.ss-picker .ss-search-input::placeholder {
  color: var(--muted);
  opacity: 1;
}
.ss-picker .ss-search-input:focus {
  outline: none;
  border-color: var(--accent);
  box-shadow: 0 0 0 3px rgba(var(--accent-rgb), 0.14);
  background-color: #fff;
}
.dash-admin .ss-picker .ss-search-input:focus {
  border-color: var(--admin-accent, var(--accent));
  box-shadow: 0 0 0 3px rgba(var(--accent-rgb), 0.16);
}
.dash-shop .ss-picker .ss-search-input:focus {
  border-color: var(--shop-accent, var(--accent));
  box-shadow: 0 0 0 3px rgba(2, 132, 199, 0.16);
}
.ss-picker .ss-list,
.ss-picker-list {
  position: static;
  left: auto;
  right: auto;
  top: auto;
  z-index: auto;
  display: grid;
  gap: 8px;
  max-height: min(52vh, 420px);
  margin: 0;
  padding: 0;
  list-style: none;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  background: transparent;
  overflow: auto;
  overscroll-behavior: contain;
}
.ss-picker .ss-list[hidden] { display: none !important; }
.ss-picker-option,
.ss-picker .ss-empty {
  display: grid;
  gap: 3px;
  padding: 12px 14px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fff;
  line-height: 1.35;
  cursor: pointer;
}
.ss-picker .ss-empty {
  color: var(--muted);
  cursor: default;
  text-align: center;
  font-size: 13px;
}
.ss-picker-body {
  display: grid;
  gap: 3px;
  min-width: 0;
}
.ss-picker .ss-option-title {
  font-size: 15px;
  font-weight: 700;
  letter-spacing: -0.02em;
  color: var(--navy);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.ss-picker .ss-option-meta,
.ss-picker .ss-option-sub,
.ss-picker .ss-option-tag {
  font-size: 12px;
  font-weight: 500;
  color: var(--muted);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.ss-picker .ss-option-sub {
  color: var(--ink);
  font-weight: 500;
}
.ss-picker-option:hover,
.ss-picker-option.is-active,
.ss-picker-option.is-selected {
  border-color: #38bdf8;
  background: #f0f9ff;
  box-shadow: 0 8px 20px rgba(2, 132, 199, 0.12);
  color: inherit;
}
.ss-picker-option.is-selected .ss-option-title,
.ss-picker-option:hover .ss-option-title,
.ss-picker-option.is-active .ss-option-title {
  color: var(--navy);
}
.dash-admin .ss-picker-option:hover,
.dash-admin .ss-picker-option.is-active,
.dash-admin .ss-picker-option.is-selected {
  border-color: var(--admin-accent, #0f766e);
  background: var(--admin-accent-soft, #f0fdfa);
  box-shadow: 0 8px 20px rgba(var(--accent-rgb), 0.12);
}
@media (max-width: 640px) {
  .ss-picker {
    padding: 12px;
    align-items: flex-end;
  }
  .ss-picker-panel {
    width: 100%;
    max-height: min(88vh, 720px);
    padding: 16px 14px 14px;
  }
}
.ss-guard {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
  min-height: 0 !important;
  opacity: 0;
  pointer-events: none;
}

.search-lift:has(.ss-wrap.is-open),
.filter-bar:has(.ss-wrap.is-open),
.search-card:has(.ss-wrap.is-open) {
  z-index: 50;
}

/* Dashboard filter dropdowns: panel overflow:hidden clips .ss-list.
   Anchor the menu to the wrap and let it paint above the next card. */
.dash-panel:has(> .filter-bar),
.dash-panel:has(> .filter-bar-flush),
.dash-grid > .dash-panel:has(> .filter-bar),
.dash-grid > .dash-panel:has(> .filter-bar-flush) {
  overflow: visible;
}
.dash-panel:has(> .filter-bar) > h2,
.dash-panel:has(> .filter-bar-flush) > h2 {
  border-radius: 8px 8px 0 0;
}
.dash-panel:has(.ss-wrap.is-open) {
  position: relative;
  z-index: 12;
}
.dash-panel .filter-bar .ss-wrap,
.filter-bar-flush .ss-wrap {
  position: relative;
}
.dash-panel .filter-bar .ss-list,
.filter-bar-flush .ss-list {
  top: calc(100% + 4px);
  left: 0;
  right: auto;
  margin-top: 0;
  min-width: 100%;
  width: max(100%, 220px);
  max-width: min(360px, 86vw);
  max-height: 240px;
  padding: 6px;
  border-radius: 6px;
  box-shadow: 0 14px 36px rgba(var(--navy-rgb), 0.16);
}
.dash-panel .filter-bar .ss-option,
.dash-panel .filter-bar .ss-empty,
.filter-bar-flush .ss-option,
.filter-bar-flush .ss-empty {
  padding: 8px 10px;
  border-radius: 4px;
}

.section-tight { padding-top: 48px; padding-bottom: 48px; }
.card-rating {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 8px 0 14px;
  font-size: 13px;
  color: var(--muted);
}
.card-rating.is-empty {
  font-size: 12px;
}
.rating-count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 1.55em;
  min-height: 1.55em;
  padding: 1px 6px;
  border-radius: 4px;
  background: rgba(var(--navy-rgb), 0.08);
  color: var(--navy);
  font-size: 11px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0;
}
.page-banner-rating .rating-count {
  background: rgba(255, 255, 255, 0.16);
  color: #fff;
}
.tr-map-rating .rating-count {
  background: rgba(var(--gold-rgb), 0.18);
  color: #f0f9ff;
}
.rating-score {
  font-variant-numeric: tabular-nums;
  font-weight: 700;
  letter-spacing: -0.02em;
  white-space: nowrap;
}
.stars { display: inline-flex; gap: 3px; align-items: center; line-height: 0; }
.star {
  position: relative;
  display: inline-flex;
  color: var(--star-off);
  line-height: 0;
}
.star .ico {
  display: block;
  vertical-align: 0;
}
.star.is-on { color: var(--star); }
.star.is-half .star-fill {
  position: absolute;
  left: 0;
  top: 0;
  width: 50%;
  height: 100%;
  overflow: hidden;
  color: var(--star);
  pointer-events: none;
}
.star.is-half .star-fill .ico {
  width: 200%;
  height: 100%;
  max-width: none;
}

/* Hero search: equal columns + flush submit button (beats later .search-card rules). */
.search-card.hero-search {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) auto;
  align-items: stretch;
  gap: 0;
  margin: 0 0 18px;
  padding: 0 !important;
  border-radius: 8px !important;
  background: #fff !important;
  border: 1px solid rgba(255, 255, 255, 0.82) !important;
  box-shadow: 0 28px 70px rgba(7, 21, 35, 0.28), 0 0 0 1px rgba(56, 189, 248, 0.14);
  overflow: hidden;
  z-index: 10;
  animation: none !important;
  opacity: 1 !important;
}
/* firmalar: Arama + İl + İlçe + Hizmet + buton */
.search-card.hero-search:has(> .field:nth-child(5)) {
  grid-template-columns: 1.25fr repeat(3, minmax(0, 1fr)) auto;
}
.search-card.hero-search > .field:not(.field-submit) {
  width: auto !important;
  min-width: 0 !important;
  max-width: none;
  margin: 0;
  padding: 14px 18px !important;
  justify-content: center;
  border-right: 1px solid var(--line);
}
.search-card.hero-search > .field:nth-last-child(2) {
  border-right: none;
}
.search-card.hero-search .ss-wrap,
.search-card.hero-search .ss-input,
.search-card.hero-search input,
.search-card.hero-search select {
  min-width: 0 !important;
  max-width: 100%;
}
.search-card.hero-search .field-submit {
  display: flex !important;
  flex-direction: row !important;
  align-items: stretch !important;
  justify-content: stretch !important;
  width: auto !important;
  min-width: 0;
  margin: 0;
  padding: 0 !important;
  border-right: none !important;
  background: transparent;
}
.search-card.hero-search .btn-gold,
.search-card.hero-search .btn {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: auto !important;
  min-width: 156px;
  height: auto !important;
  min-height: 0 !important;
  align-self: stretch;
  margin: 0;
  padding: 0 28px !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background-image: none !important;
  animation: none !important;
  flex: 1 1 auto;
}

@media (min-width: 769px) {
  .hero-actions .btn-gold {
    display: none;
  }
}

@media (max-width: 980px) {
  .hero { min-height: min(88vh, 820px); }
  .hero-media { border-radius: 0 0 8px 8px; }
  .hero-inner {
    padding: 80px 0 48px;
    gap: 18px;
  }
  .hero-main {
    flex-direction: column;
    align-items: flex-start;
    gap: 18px;
    padding-bottom: 8px;
  }
  .hero-copy { padding: 8px 0 0; max-width: none; }
  .hero-float { align-self: flex-start; margin-bottom: 0; }
  .hero-float-card { width: min(100%, 320px); padding: 16px 18px; }
  .hero-float-card strong { font-size: 22px; margin: 8px 0 4px; }
  .hero-search-band .optik-search {
    margin-top: -32px;
  }
  .hero-search-band {
    padding-bottom: 20px;
  }
  .hero-search-band + .map-band,
  .hero + .map-band {
    padding-top: 40px;
  }
  .hero h1 { font-size: clamp(40px, 11vw, 56px); }
  .hero-actions { width: 100%; }
  .hero-actions .btn { min-width: 0; flex: 1 1 calc(50% - 6px); }
  .hero-actions .btn-gold { min-width: 0; flex: 1 1 calc(50% - 6px); }
  .hero-trust-list li {
    margin: 0;
    padding: 8px 14px;
  }
  .search-card .field,
  .filter-bar .field {
    flex: 1 1 100%;
    border-right: none;
    border-bottom: 1px solid var(--line);
  }
  .field-submit { flex: 1 1 100% !important; }
  .search-card .btn,
  .filter-bar .btn { width: 100%; }
  .search-card input,
  .search-card select,
  .search-card .ss-input,
  .filter-bar input,
  .filter-bar select,
  .filter-bar .ss-input,
  .optik-search-field .ss-input,
  .optik-search-field input,
  .optik-search-field select {
    font-size: 16px !important;
  }
  .ss-option,
  .filter-bar .ss-option,
  .search-card .ss-option {
    min-height: 44px;
    display: flex;
    align-items: center;
  }
  .ss-list,
  .search-card .ss-list,
  .filter-bar .ss-list {
    max-height: min(280px, 50dvh);
    -webkit-overflow-scrolling: touch;
  }
  .service-grid-rich { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}

/* stats-line */
.stats-line {
  gap: 0;
  background: transparent;
  border: none;
  border-radius: 0;
  overflow: visible;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}
.stats-line .stat {
  background: transparent;
  padding: 32px 8px 32px 0;
  border-right: 1px solid var(--line);
}
.stats-line .stat:last-child { border-right: none; padding-right: 0; }
.stats-line .stat:not(:first-child) { padding-left: 24px; }
.stats-line .stat b {
  font-family: var(--display);
  font-size: 36px;
  font-weight: 500;
  line-height: 1.15;
  letter-spacing: -0.03em;
}
.stats-line .stat span { font-size: 14px; font-weight: 500; }

.stats-band {
  position: relative;
  background: var(--blue-dark);
  color: #f0f9ff;
  padding: 56px 0 60px;
  overflow: hidden;
}
.stats-band::before {
  content: "";
  position: absolute;
  left: 18%;
  top: -40%;
  width: 420px;
  height: 420px;
  background: radial-gradient(circle, rgba(var(--gold-rgb),0.16), transparent 68%);
  pointer-events: none;
}
.stats-stage {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
}
.stat-cell {
  position: relative;
  padding: 8px 28px 8px 0;
  min-height: 168px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}
.stat-cell:not(:last-child)::after {
  content: "";
  position: absolute;
  top: 12px;
  right: 18px;
  bottom: 12px;
  width: 1px;
  background: linear-gradient(180deg, transparent, rgba(var(--gold-rgb),0.45), transparent);
}
.stat-kicker {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--gold);
  margin-bottom: 12px;
}
.stat-cell b {
  font-family: var(--display);
  font-size: clamp(48px, 6.4vw, 76px);
  font-weight: 500;
  line-height: 0.92;
  letter-spacing: -0.04em;
  color: #7dd3fc;
  font-variant-numeric: tabular-nums;
}
.stat-cell-zero b {
  font-style: italic;
  font-size: clamp(40px, 5.4vw, 64px);
}
.stat-cell strong {
  display: block;
  margin-top: 14px;
  font-size: 16px;
  font-weight: 600;
  letter-spacing: -0.02em;
  color: #f0f9ff;
}
.stat-cell em {
  display: block;
  margin-top: 4px;
  font-style: normal;
  font-size: 13px;
  color: rgba(240, 249, 255, 0.55);
}
.stats-stage.reveal-on { opacity: 1; transform: none; }
.stats-stage.reveal-on:not(.is-visible) .stat-cell {
  opacity: 0;
  transform: translateY(22px);
}
.stats-stage.reveal-on.is-visible .stat-cell {
  animation: hero-rise 0.7s cubic-bezier(0.16, 1, 0.3, 1) both;
}
.stats-stage.reveal-on.is-visible .stat-cell:nth-child(1) { animation-delay: 0.04s; }
.stats-stage.reveal-on.is-visible .stat-cell:nth-child(2) { animation-delay: 0.14s; }
.stats-stage.reveal-on.is-visible .stat-cell:nth-child(3) { animation-delay: 0.24s; }
.stats-stage.reveal-on.is-visible .stat-cell:nth-child(4) { animation-delay: 0.34s; }

@media (max-width: 980px) {
  .stats-band { padding: 36px 0 40px; }
  .stats-stage { grid-template-columns: 1fr 1fr; gap: 28px 20px; }
  .stat-cell { min-height: 0; padding: 0; }
  .stat-cell:not(:last-child)::after { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  .stats-stage.reveal-on:not(.is-visible) .stat-cell,
  .stats-stage.reveal-on.is-visible .stat-cell {
    opacity: 1;
    transform: none;
    animation: none;
  }
}

/* steps/flow */
.step {
  background: transparent;
  border: none;
  border-radius: 0;
  padding: 0 8px 0 0;
  display: flex;
  flex-direction: column;
  height: 100%;
  position: relative;
  border-left: 2px solid var(--accent);
  padding-left: 20px;
}
.step-icon {
  width: 44px;
  height: 44px;
  border-radius: var(--radius);
  background: #fff;
  border: 1px solid var(--line);
  color: var(--accent);
  display: grid;
  place-items: center;
  margin-bottom: 14px;
  box-shadow: 0 4px 14px rgba(var(--navy-rgb), 0.05);
}
.flow-strip {
  margin-top: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 12px 8px;
  padding: 22px 24px;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: var(--radius);
}
.flow-item {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 14px;
  font-weight: 600;
  color: var(--ink);
}
.flow-item span {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: var(--accent);
  color: #fff;
  display: grid;
  place-items: center;
  font-size: 12px;
  font-weight: 700;
}
.flow-arrow {
  width: 36px;
  height: 1px;
  background: var(--line);
  position: relative;
}
.flow-arrow::after {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  width: 6px;
  height: 6px;
  border-right: 1.5px solid var(--muted);
  border-top: 1.5px solid var(--muted);
  transform: translateY(-50%) rotate(45deg);
}

.how-band {
  position: relative;
  overflow: hidden;
  padding: 88px 0;
  scroll-margin-top: 88px;
}
.how-fx {
  position: absolute;
  inset: 0;
  pointer-events: none;
  overflow: hidden;
}
.how-orb {
  position: absolute;
  border-radius: 50%;
  filter: blur(8px);
}
.how-orb-a {
  right: -6%;
  top: -18%;
  width: 460px;
  height: 460px;
  background: radial-gradient(circle, rgba(var(--gold-rgb), 0.22), transparent 68%);
  animation: orb-drift-a 14s ease-in-out infinite;
}
.how-orb-b {
  left: 6%;
  bottom: -22%;
  width: 280px;
  height: 280px;
  background: radial-gradient(circle, rgba(2, 132, 199, 0.16), transparent 70%);
  animation: orb-drift-b 16s ease-in-out infinite;
}
.how-layout {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 0.88fr) minmax(0, 1.12fr);
  gap: 48px 56px;
  align-items: center;
}
.how-live {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 16px;
  padding: 6px 12px 6px 10px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--accent);
  background: rgba(var(--gold-rgb), 0.1);
  border: 1px solid rgba(var(--gold-rgb), 0.28);
  max-width: none;
  line-height: 1.2;
}
.how-live-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #22c55e;
  box-shadow: 0 0 0 0 rgba(34, 197, 94, 0.7);
  animation: cta-live-ping 1.8s ease-out infinite;
}
.how-intro h2 {
  font-family: var(--display);
  font-size: clamp(40px, 5.2vw, 64px);
  font-weight: 500;
  letter-spacing: -0.035em;
  line-height: 1.08;
  text-transform: none;
}
.how-intro h2 em {
  font-style: italic;
  color: var(--accent);
  display: inline-block;
  animation: cta-word-pulse 3.2s ease-in-out infinite;
}
.how-rule {
  display: block;
  width: 56px;
  height: 2px;
  margin: 20px 0 18px;
  background: linear-gradient(90deg, var(--gold), rgba(var(--gold-rgb),0));
  transform-origin: left center;
}
.how-intro.reveal-on.is-visible .how-rule {
  animation: hero-rule-draw 0.8s cubic-bezier(0.16, 1, 0.3, 1) 0.12s both;
}
.how-intro > p:not(.how-live) {
  color: var(--muted);
  max-width: 36ch;
  line-height: 1.75;
}
.how-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 22px 0 0;
  padding: 0;
  list-style: none;
}
.how-pills li {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 7px 12px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 500;
  color: var(--navy);
  background: #fff;
  border: 1px solid var(--line);
}
.how-pills svg { color: var(--accent); }
.how-intro.reveal-on.is-visible .how-pills li:nth-child(1) { animation: how-pill-bob 3.4s ease-in-out infinite; }
.how-intro.reveal-on.is-visible .how-pills li:nth-child(2) { animation: how-pill-bob 3.4s ease-in-out 0.35s infinite; }
.how-intro.reveal-on.is-visible .how-pills li:nth-child(3) { animation: how-pill-bob 3.4s ease-in-out 0.7s infinite; }
a.btn.how-cta {
  margin-top: 28px;
  min-height: 52px;
  min-width: 200px;
  border-radius: 999px;
  animation: cta-btn-glow 2.6s ease-in-out infinite;
}
a.btn.how-cta:hover {
  transform: translateY(-2px) scale(1.02);
  box-shadow: 0 18px 40px rgba(var(--gold-rgb), 0.5);
}
.how-stage {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(220px, 250px);
  gap: 20px 24px;
  align-items: center;
  padding: 26px 22px 26px 24px;
  border-radius: 8px;
  background:
    radial-gradient(ellipse 80% 60% at 100% 0%, rgba(var(--gold-rgb), 0.14), transparent 55%),
    #fff;
  border: 1px solid var(--line);
  box-shadow: 0 24px 56px rgba(11, 31, 51, 0.08);
  overflow: hidden;
  isolation: isolate;
}
.how-stage::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background: linear-gradient(115deg, transparent 0%, rgba(186, 230, 253, 0.18) 42%, transparent 58%);
  background-size: 220% 100%;
  animation: cta-stage-sheen 7s ease-in-out infinite;
  pointer-events: none;
}
.how-stage > * { position: relative; z-index: 1; }
.how-track {
  list-style: none;
  margin: 0;
  padding: 4px 0 0;
  position: relative;
}
.how-track::before {
  content: "";
  position: absolute;
  left: calc(4.4rem + 1.2rem + 10px);
  top: 1.55rem;
  bottom: 1.55rem;
  width: 2px;
  background: rgba(var(--gold-rgb), 0.18);
}
.how-track::after {
  content: "";
  position: absolute;
  left: calc(4.4rem + 1.2rem + 10px);
  top: 1.55rem;
  width: 2px;
  height: 0;
  background: linear-gradient(180deg, var(--gold), #7dd3fc);
  box-shadow: 0 0 12px rgba(var(--gold-rgb), 0.55);
  transform-origin: top;
}
.how-stage.reveal-on.is-visible .how-track::after {
  animation: how-line-fill 9s ease-in-out infinite;
}
.how-step {
  display: grid;
  grid-template-columns: 4.4rem 2.4rem 1fr;
  gap: 6px 10px;
  align-items: start;
  padding: 16px 8px 18px 0;
  border-radius: 8px;
  position: relative;
}
.how-step:last-child { padding-bottom: 8px; }
.how-idx {
  font-family: var(--display);
  font-size: clamp(32px, 3.2vw, 42px);
  font-weight: 500;
  line-height: 1;
  color: rgba(var(--gold-rgb), 0.55);
  letter-spacing: -0.04em;
  transition: color 0.35s ease;
}
.how-node {
  display: grid;
  place-items: center;
  justify-self: center;
  width: 36px;
  height: 36px;
  margin-top: 2px;
  border-radius: 50%;
  color: var(--accent);
  background: #fff;
  border: 1.5px solid rgba(var(--gold-rgb), 0.35);
  box-shadow: 0 0 0 4px #fff;
  z-index: 1;
  line-height: 0;
}
.how-node svg { display: block; }
.how-track h3 {
  font-family: var(--display);
  font-size: 22px;
  font-weight: 600;
  letter-spacing: -0.02em;
  text-transform: none;
  margin: 2px 0 6px;
}
.how-track p {
  color: var(--muted);
  font-size: 14px;
  line-height: 1.6;
  max-width: 32ch;
}
.how-stage.reveal-on.is-visible .how-step-1 {
  animation: how-lit-1 9s ease-in-out infinite;
}
.how-stage.reveal-on.is-visible .how-step-2 {
  animation: how-lit-2 9s ease-in-out infinite;
}
.how-stage.reveal-on.is-visible .how-step-3 {
  animation: how-lit-3 9s ease-in-out infinite;
}
.how-stage.reveal-on.is-visible .how-step-1 .how-idx,
.how-stage.reveal-on.is-visible .how-step-2 .how-idx,
.how-stage.reveal-on.is-visible .how-step-3 .how-idx {
  animation: how-idx-1 9s ease-in-out infinite;
}
.how-stage.reveal-on.is-visible .how-step-2 .how-idx { animation-name: how-idx-2; }
.how-stage.reveal-on.is-visible .how-step-3 .how-idx { animation-name: how-idx-3; }
.how-stage.reveal-on.is-visible .how-step-1 .how-node { animation: how-node-1 9s ease-in-out infinite; }
.how-stage.reveal-on.is-visible .how-step-2 .how-node { animation: how-node-2 9s ease-in-out infinite; }
.how-stage.reveal-on.is-visible .how-step-3 .how-node { animation: how-node-3 9s ease-in-out infinite; }
.how-preview { min-width: 0; }
.how-phone {
  position: relative;
  padding: 14px;
  border-radius: 8px;
  background:
    radial-gradient(ellipse 80% 50% at 80% 0%, rgba(56, 189, 248, 0.22), transparent 55%),
    linear-gradient(165deg, #041018 0%, #0b2740 55%, #083344 100%);
  border: 1px solid rgba(186, 230, 253, 0.22);
  box-shadow: 0 18px 40px rgba(7, 21, 35, 0.28);
}
.how-phone-bar {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 40px;
  margin-bottom: 12px;
  padding: 0 12px;
  border-radius: 6px;
  color: #bae6fd;
  background: rgba(8, 47, 73, 0.72);
  border: 1px solid rgba(125, 211, 252, 0.2);
}
.how-typed {
  display: inline-block;
  overflow: hidden;
  white-space: nowrap;
  max-width: 0;
  font-size: 12px;
  font-weight: 500;
  color: #f0f9ff;
  border-right: 2px solid var(--gold);
}
.how-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 12px;
}
.how-chips span {
  padding: 5px 9px;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 600;
  color: #e0f2fe;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(186, 230, 253, 0.16);
  opacity: 0;
}
.how-store {
  display: flex;
  align-items: center;
  gap: 10px;
  max-height: 0;
  margin: 0;
  padding: 0 12px;
  overflow: hidden;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.05);
  border: 0 solid rgba(255, 255, 255, 0.06);
  opacity: 0;
}
.how-store-mark {
  flex-shrink: 0;
  width: 32px;
  height: 32px;
  display: grid;
  place-items: center;
  border-radius: 6px;
  color: var(--gold-ink);
  background: var(--gold);
}
.how-store b {
  display: block;
  font-size: 13px;
  font-weight: 600;
  color: #f8fbff;
}
.how-store span {
  display: block;
  font-size: 11px;
  color: rgba(186, 230, 253, 0.72);
}
.how-slots {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 6px;
  max-height: 0;
  margin-top: 0;
  overflow: hidden;
  opacity: 0;
}
.how-slots span {
  display: grid;
  place-items: center;
  min-height: 34px;
  border-radius: 6px;
  font-size: 11px;
  font-weight: 600;
  color: #bae6fd;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(186, 230, 253, 0.14);
}
.how-ok {
  display: flex;
  align-items: center;
  gap: 8px;
  max-height: 0;
  margin: 0;
  padding: 0 12px;
  overflow: hidden;
  border-radius: 6px;
  font-size: 12px;
  font-weight: 600;
  color: #052e16;
  background: #4ade80;
  opacity: 0;
}
.how-stage.reveal-on.is-visible .how-typed {
  animation: how-type 9s steps(18) infinite, cta-caret 0.7s step-end infinite;
}
.how-stage.reveal-on.is-visible .how-chips span:nth-child(1) { animation: how-fade-1 9s ease-in-out infinite; }
.how-stage.reveal-on.is-visible .how-chips span:nth-child(2) { animation: how-fade-2 9s ease-in-out infinite; }
.how-stage.reveal-on.is-visible .how-chips span:nth-child(3) { animation: how-fade-3 9s ease-in-out infinite; }
.how-stage.reveal-on.is-visible .how-store { animation: how-store-in 9s ease-in-out infinite; }
.how-stage.reveal-on.is-visible .how-slots { animation: how-slots-in 9s ease-in-out infinite; }
.how-stage.reveal-on.is-visible .how-slot-pick { animation: how-pick 9s ease-in-out infinite; }
.how-stage.reveal-on.is-visible .how-ok { animation: how-ok-in 9s ease-in-out infinite; }

@keyframes how-pill-bob {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-3px); }
}
@keyframes how-line-fill {
  0% { height: 0; }
  28% { height: 18%; }
  33% { height: 48%; }
  58% { height: 52%; }
  64% { height: 92%; }
  88%, 100% { height: 92%; }
}
@keyframes how-lit-1 {
  0%, 28% { background: rgba(var(--gold-rgb), 0.1); }
  34%, 100% { background: transparent; }
}
@keyframes how-lit-2 {
  0%, 30% { background: transparent; }
  34%, 58% { background: rgba(var(--gold-rgb), 0.1); }
  64%, 100% { background: transparent; }
}
@keyframes how-lit-3 {
  0%, 60% { background: transparent; }
  64%, 88% { background: rgba(var(--gold-rgb), 0.1); }
  94%, 100% { background: transparent; }
}
@keyframes how-idx-1 {
  0%, 28% { color: var(--gold); }
  34%, 100% { color: rgba(var(--gold-rgb), 0.45); }
}
@keyframes how-idx-2 {
  0%, 30% { color: rgba(var(--gold-rgb), 0.45); }
  34%, 58% { color: var(--gold); }
  64%, 100% { color: rgba(var(--gold-rgb), 0.45); }
}
@keyframes how-idx-3 {
  0%, 60% { color: rgba(var(--gold-rgb), 0.45); }
  64%, 88% { color: var(--gold); }
  94%, 100% { color: rgba(var(--gold-rgb), 0.45); }
}
@keyframes how-node-1 {
  0%, 28% {
    color: var(--gold-ink);
    background: var(--gold);
    border-color: var(--gold);
    box-shadow: 0 0 0 4px #fff, 0 0 0 8px rgba(var(--gold-rgb), 0.22);
  }
  34%, 100% {
    color: var(--accent);
    background: #fff;
    border-color: rgba(var(--gold-rgb), 0.35);
    box-shadow: 0 0 0 4px #fff;
  }
}
@keyframes how-node-2 {
  0%, 30% {
    color: var(--accent);
    background: #fff;
    border-color: rgba(var(--gold-rgb), 0.35);
    box-shadow: 0 0 0 4px #fff;
  }
  34%, 58% {
    color: var(--gold-ink);
    background: var(--gold);
    border-color: var(--gold);
    box-shadow: 0 0 0 4px #fff, 0 0 0 8px rgba(var(--gold-rgb), 0.22);
  }
  64%, 100% {
    color: var(--accent);
    background: #fff;
    border-color: rgba(var(--gold-rgb), 0.35);
    box-shadow: 0 0 0 4px #fff;
  }
}
@keyframes how-node-3 {
  0%, 60% {
    color: var(--accent);
    background: #fff;
    border-color: rgba(var(--gold-rgb), 0.35);
    box-shadow: 0 0 0 4px #fff;
  }
  64%, 88% {
    color: var(--gold-ink);
    background: var(--gold);
    border-color: var(--gold);
    box-shadow: 0 0 0 4px #fff, 0 0 0 8px rgba(var(--gold-rgb), 0.22);
  }
  94%, 100% {
    color: var(--accent);
    background: #fff;
    border-color: rgba(var(--gold-rgb), 0.35);
    box-shadow: 0 0 0 4px #fff;
  }
}
@keyframes how-type {
  0%, 4% { max-width: 0; }
  18%, 88% { max-width: 18ch; }
  96%, 100% { max-width: 0; }
}
@keyframes how-fade-1 {
  0%, 8% { opacity: 0; transform: translateY(6px); }
  14%, 88% { opacity: 1; transform: none; }
  94%, 100% { opacity: 0; transform: none; }
}
@keyframes how-fade-2 {
  0%, 12% { opacity: 0; transform: translateY(6px); }
  18%, 88% { opacity: 1; transform: none; }
  94%, 100% { opacity: 0; transform: none; }
}
@keyframes how-fade-3 {
  0%, 16% { opacity: 0; transform: translateY(6px); }
  22%, 88% { opacity: 1; transform: none; }
  94%, 100% { opacity: 0; transform: none; }
}
@keyframes how-store-in {
  0%, 30% {
    max-height: 0;
    opacity: 0;
    margin: 0;
    padding: 0 12px;
    border-width: 0;
  }
  38%, 88% {
    max-height: 72px;
    opacity: 1;
    margin: 0;
    padding: 11px 12px;
    border-width: 1px;
  }
  94%, 100% {
    max-height: 0;
    opacity: 0;
    padding: 0 12px;
    border-width: 0;
  }
}
@keyframes how-slots-in {
  0%, 58% { max-height: 0; opacity: 0; margin-top: 0; }
  66%, 88% { max-height: 48px; opacity: 1; margin-top: 10px; }
  94%, 100% { max-height: 0; opacity: 0; margin-top: 0; }
}
@keyframes how-pick {
  0%, 70% {
    background: rgba(255, 255, 255, 0.05);
    color: #bae6fd;
    border-color: rgba(186, 230, 253, 0.14);
  }
  76%, 88% {
    background: var(--gold);
    color: var(--gold-ink);
    border-color: var(--gold);
  }
  94%, 100% {
    background: rgba(255, 255, 255, 0.05);
    color: #bae6fd;
  }
}
@keyframes how-ok-in {
  0%, 76% { max-height: 0; opacity: 0; margin-top: 0; padding: 0 12px; }
  82%, 90% { max-height: 48px; opacity: 1; margin-top: 12px; padding: 9px 12px; }
  96%, 100% { max-height: 0; opacity: 0; margin-top: 0; padding: 0 12px; }
}

@media (max-width: 1100px) {
  .how-layout { grid-template-columns: 1fr; gap: 32px; }
  .how-stage { grid-template-columns: minmax(0, 1fr) minmax(200px, 230px); }
}
@media (max-width: 980px) {
  .how-band { padding: 56px 0; }
  .how-stage {
    grid-template-columns: 1fr;
    padding: 20px 16px 18px;
    border-radius: 8px;
  }
  .how-preview { order: -1; }
  .how-step { grid-template-columns: 3.6rem 2.2rem 1fr; padding-left: 0; }
  .how-track::before,
  .how-track::after { left: calc(3.6rem + 1.1rem + 10px); }
}

@media (prefers-reduced-motion: reduce) {
  .how-orb-a,
  .how-orb-b,
  .how-live-dot,
  .how-intro h2 em,
  .how-intro.reveal-on.is-visible .how-rule,
  .how-intro.reveal-on.is-visible .how-pills li,
  a.btn.how-cta,
  .how-stage::before,
  .how-stage.reveal-on.is-visible .how-track::after,
  .how-stage.reveal-on.is-visible .how-step-1,
  .how-stage.reveal-on.is-visible .how-step-2,
  .how-stage.reveal-on.is-visible .how-step-3,
  .how-stage.reveal-on.is-visible .how-idx,
  .how-stage.reveal-on.is-visible .how-node,
  .how-stage.reveal-on.is-visible .how-typed,
  .how-stage.reveal-on.is-visible .how-chips span,
  .how-stage.reveal-on.is-visible .how-store,
  .how-stage.reveal-on.is-visible .how-slots,
  .how-stage.reveal-on.is-visible .how-slot-pick,
  .how-stage.reveal-on.is-visible .how-ok {
    animation: none;
  }
  .how-stage.reveal-on:not(.is-visible) .how-step {
    opacity: 1;
    transform: none;
  }
  .how-typed { max-width: 18ch; border-right: 0; }
  .how-chips span { opacity: 1; transform: none; }
  .how-store {
    max-height: 72px;
    opacity: 1;
    padding: 11px 12px;
    border-width: 1px;
  }
  .how-slots {
    max-height: 48px;
    opacity: 1;
    margin-top: 10px;
  }
  .how-ok {
    max-height: 48px;
    opacity: 1;
    margin-top: 12px;
    padding: 9px 12px;
  }
  .how-slot-pick {
    background: var(--gold);
    color: var(--gold-ink);
  }
  .how-track::after { height: 92%; }
  a.btn.how-cta:hover { transform: none; }
}

/* services/promise/faq */
.service-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1px;
  background: var(--line);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  overflow: hidden;
}
.service-link {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 20px 22px;
  background: #fff;
  transition: background 0.2s ease;
}
.service-link:hover { background: var(--bg); }
.service-link-icon {
  width: 42px;
  height: 42px;
  border-radius: var(--radius);
  background: var(--cream);
  color: var(--accent);
  display: grid;
  place-items: center;
  flex-shrink: 0;
}
.service-link-text {
  display: flex;
  flex-direction: column;
  gap: 2px;
  flex: 1;
  min-width: 0;
}
.service-link-text strong {
  font-size: 16px;
  font-weight: 600;
  color: var(--ink);
}
.service-link-text span {
  font-size: 13px;
  color: var(--muted);
}
.service-link-arrow {
  color: var(--muted);
  display: grid;
  place-items: center;
  transition: transform 0.2s ease, color 0.2s ease;
}
.service-link:hover .service-link-arrow {
  color: var(--accent);
  transform: translateX(3px);
}
.section-services {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: 88px 0 96px;
  background:
    radial-gradient(ellipse 48% 60% at 92% 12%, rgba(var(--gold-rgb), 0.12), transparent 58%),
    radial-gradient(ellipse 42% 55% at 4% 88%, rgba(var(--accent-rgb), 0.08), transparent 52%),
    linear-gradient(180deg, #fafdff 0%, var(--bg) 42%, #f7fbfe 100%);
}
.services-fx {
  position: absolute;
  inset: 0;
  pointer-events: none;
  overflow: hidden;
}
.services-orb {
  position: absolute;
  border-radius: 50%;
  filter: blur(10px);
}
.services-orb-a {
  right: -4%;
  top: -12%;
  width: 380px;
  height: 380px;
  background: radial-gradient(circle, rgba(var(--gold-rgb), 0.18), transparent 68%);
  animation: orb-drift-a 16s ease-in-out infinite;
}
.services-orb-b {
  left: -2%;
  bottom: -18%;
  width: 260px;
  height: 260px;
  background: radial-gradient(circle, rgba(var(--accent-rgb), 0.14), transparent 70%);
  animation: orb-drift-b 18s ease-in-out infinite;
}
.section-services .wrap {
  position: relative;
  z-index: 1;
}
.services-head {
  max-width: 620px;
  margin-bottom: 44px;
}
.services-live {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 18px;
  padding: 6px 12px 6px 10px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--accent);
  background: rgba(var(--gold-rgb), 0.1);
  border: 1px solid rgba(var(--gold-rgb), 0.28);
  line-height: 1.2;
}
.services-live-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--accent);
  box-shadow: 0 0 0 0 rgba(var(--accent-rgb), 0.45);
  animation: cta-live-ping 1.8s ease-out infinite;
}
.services-head h2 {
  font-family: var(--display);
  font-size: clamp(34px, 4.4vw, 52px);
  font-weight: 500;
  letter-spacing: -0.035em;
  line-height: 1.1;
  text-transform: none;
  color: var(--ink);
}
.services-head h2 em {
  font-style: italic;
  color: var(--accent);
}
.services-rule {
  display: block;
  width: 56px;
  height: 2px;
  margin: 20px 0 18px;
  background: linear-gradient(90deg, var(--gold), rgba(var(--gold-rgb), 0));
  transform-origin: left center;
}
.services-head.reveal-on.is-visible .services-rule {
  animation: hero-rule-draw 0.8s cubic-bezier(0.16, 1, 0.3, 1) 0.12s both;
}
.services-head > p:last-child {
  color: var(--muted);
  max-width: 42ch;
  line-height: 1.75;
  margin-top: 0;
  font-size: 16px;
}
.service-grid-rich {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
  background: transparent;
  border: none;
  overflow: visible;
}
.service-tile {
  display: flex;
  flex-direction: column;
  background: #fff;
  border: 1px solid rgba(var(--navy-rgb), 0.08);
  border-radius: 8px;
  overflow: hidden;
  box-shadow:
    0 1px 0 rgba(255, 255, 255, 0.9) inset,
    0 12px 32px rgba(var(--navy-rgb), 0.06);
  transition:
    border-color 0.35s ease,
    box-shadow 0.35s ease,
    transform 0.35s cubic-bezier(0.22, 1, 0.36, 1);
}
.service-tile:hover {
  border-color: rgba(var(--gold-rgb), 0.42);
  box-shadow:
    0 1px 0 rgba(255, 255, 255, 0.95) inset,
    0 22px 48px rgba(var(--navy-rgb), 0.1),
    0 0 0 1px rgba(var(--gold-rgb), 0.14);
  transform: translateY(-5px);
}
.service-tile-media {
  display: block;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  background: var(--cream);
  position: relative;
}
.service-tile-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  filter: saturate(0.92) contrast(1.04);
  transition: transform 0.55s cubic-bezier(0.22, 1, 0.36, 1), filter 0.55s ease;
}
.service-tile-media::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.04) 0%, transparent 38%),
    linear-gradient(180deg, transparent 42%, rgba(var(--navy-rgb), 0.28) 100%);
  pointer-events: none;
  transition: opacity 0.35s ease;
}
.service-tile:hover .service-tile-media img {
  transform: scale(1.06);
  filter: saturate(1) contrast(1.06);
}
.service-tile:hover .service-tile-media::after {
  opacity: 0.88;
}
.service-tile-body {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 0 22px 22px;
  position: relative;
  flex: 1;
}
.service-tile-icon {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  color: var(--accent);
  background: #fff;
  border: 1.5px solid rgba(var(--gold-rgb), 0.38);
  box-shadow: 0 0 0 5px #fff, 0 8px 20px rgba(var(--navy-rgb), 0.08);
  display: grid;
  place-items: center;
  margin: -24px 0 10px;
  position: relative;
  z-index: 2;
  flex-shrink: 0;
  transition:
    background 0.35s ease,
    color 0.35s ease,
    border-color 0.35s ease,
    transform 0.35s cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow 0.35s ease;
}
.service-tile-icon svg { display: block; }
.service-tile-body strong {
  font-family: var(--display);
  font-size: clamp(21px, 2vw, 26px);
  font-weight: 600;
  letter-spacing: -0.02em;
  color: var(--ink);
  font-style: normal;
  line-height: 1.2;
}
.service-tile-cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: auto;
  padding-top: 6px;
  font-style: normal;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--accent);
  transition: color 0.25s ease, gap 0.25s ease;
}
.service-tile-cta svg {
  display: block;
  transition: transform 0.25s ease;
}
.service-tile:hover .service-tile-icon {
  background: var(--accent);
  color: #fff;
  border-color: var(--accent);
  transform: translateY(-2px);
  box-shadow: 0 0 0 5px #fff, 0 12px 28px rgba(var(--accent-rgb), 0.24);
}
.service-tile:hover .service-tile-cta {
  color: var(--accent-hover);
  gap: 12px;
}
.service-tile:hover .service-tile-cta svg {
  transform: translateX(3px);
}
@media (max-width: 980px) {
  .section-services { padding: 64px 0 72px; }
  .services-head { margin-bottom: 32px; }
  .service-grid-rich { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 18px; }
}
@media (prefers-reduced-motion: reduce) {
  .services-orb-a,
  .services-orb-b,
  .services-live-dot,
  .services-head.reveal-on.is-visible .services-rule {
    animation: none;
  }
  .service-tile,
  .service-tile-icon,
  .service-tile-media img,
  .service-tile-cta svg {
    transition: none;
  }
  .service-tile:hover,
  .service-tile:hover .service-tile-icon {
    transform: none;
  }
}
.promise-band {
  position: relative;
  isolation: isolate;
  padding-block: 88px;
  background:
    radial-gradient(ellipse 55% 70% at 8% 18%, rgba(var(--gold-rgb), 0.14), transparent 58%),
    radial-gradient(ellipse 50% 65% at 94% 88%, rgba(var(--accent-rgb), 0.09), transparent 52%),
    linear-gradient(180deg, #f8fcff 0%, var(--cream) 48%, #f5fafd 100%);
  overflow: hidden;
}
.promise-band::before,
.promise-band::after {
  content: "";
  position: absolute;
  left: 8%;
  right: 8%;
  height: 1px;
  pointer-events: none;
  z-index: 0;
  background: linear-gradient(90deg, transparent, rgba(var(--navy-rgb), 0.1), transparent);
}
.promise-band::before { top: 0; }
.promise-band::after { bottom: 0; }
.promise-band .wrap { position: relative; z-index: 1; }
.promise-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  align-items: start;
}
.promise {
  position: relative;
  padding: 4px 28px;
  transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1);
}
.promise:first-child { padding-left: 0; }
.promise:last-child { padding-right: 0; }
.promise:not(:last-child)::after {
  content: "";
  position: absolute;
  right: 0;
  top: 8%;
  bottom: 10%;
  width: 1px;
  background: linear-gradient(180deg, transparent, rgba(var(--navy-rgb), 0.12) 30%, rgba(var(--navy-rgb), 0.12) 70%, transparent);
  pointer-events: none;
}
.promise-top {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 22px;
}
.promise-num {
  font-family: var(--display);
  font-size: clamp(42px, 4.2vw, 58px);
  font-weight: 500;
  line-height: 1;
  letter-spacing: -0.045em;
  color: rgba(var(--gold-rgb), 0.48);
  transition: color 0.35s ease;
}
.promise-icon {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  color: var(--accent);
  background: #fff;
  border: 1.5px solid rgba(var(--gold-rgb), 0.38);
  box-shadow: 0 0 0 5px rgba(255, 255, 255, 0.65);
  display: grid;
  place-items: center;
  flex-shrink: 0;
  transition:
    background 0.35s ease,
    color 0.35s ease,
    border-color 0.35s ease,
    transform 0.35s cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow 0.35s ease;
}
.promise-icon svg { display: block; }
.promise h3 {
  font-family: var(--display);
  font-size: clamp(22px, 2.1vw, 28px);
  font-weight: 600;
  letter-spacing: -0.02em;
  text-transform: none;
  color: var(--ink);
  margin-bottom: 10px;
  line-height: 1.2;
}
.promise > p {
  color: var(--muted);
  font-size: 15px;
  line-height: 1.7;
  max-width: 34ch;
}
.promise:hover {
  transform: translateY(-3px);
}
.promise:hover .promise-num {
  color: rgba(var(--accent-rgb), 0.55);
}
.promise:hover .promise-icon {
  background: var(--accent);
  color: #fff;
  border-color: var(--accent);
  transform: translateY(-2px);
  box-shadow: 0 10px 24px rgba(var(--accent-rgb), 0.22);
}
@media (max-width: 980px) {
  .promise-band { padding-block: 64px; }
  .promise-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
  }
  .promise,
  .promise:first-child,
  .promise:last-child {
    padding: 20px 18px;
    background: rgba(255, 255, 255, 0.88);
    border: 1px solid rgba(var(--navy-rgb), 0.08);
    border-radius: var(--radius);
    box-shadow: 0 8px 24px rgba(var(--navy-rgb), 0.06);
  }
  .promise:not(:last-child)::after,
  .promise:nth-child(odd)::after,
  .promise:nth-child(-n+2)::before {
    display: none;
  }
  .promise:hover {
    transform: none;
  }
  .promise:hover .promise-icon {
    transform: none;
    box-shadow: 0 0 0 5px rgba(255, 255, 255, 0.65);
  }
  .promise > p { max-width: none; }
}
@media (prefers-reduced-motion: reduce) {
  .promise,
  .promise-icon,
  .promise-num {
    transition: none;
  }
  .promise:hover,
  .promise:hover .promise-icon {
    transform: none;
  }
}
.cta-band {
  background:
    radial-gradient(circle at 92% 20%, rgba(var(--accent-rgb), 0.42), transparent 42%),
    linear-gradient(135deg, var(--navy) 0%, #0e7490 100%);
  color: #fff;
  border-radius: var(--radius);
  padding: 48px 48px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 24px;
  position: relative;
  overflow: hidden;
}
.cta-band::before {
  content: "";
  position: absolute;
  inset: auto -10% -40% auto;
  width: 280px;
  height: 280px;
  border-radius: 50%;
  border: 40px solid rgba(var(--accent-rgb), 0.2);
  pointer-events: none;
}
.cta-band > * { position: relative; z-index: 1; }
.cta-band p { color: rgba(255,255,255,0.78); margin-top: 8px; max-width: 52ch; }
.cta-band h2 {
  color: #fff;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}
.eyebrow-light { color: var(--gold) !important; }

.section-cta {
  padding-top: 24px;
}
.cta-stage {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(280px, 0.95fr);
  gap: 32px 40px;
  align-items: center;
  overflow: hidden;
  padding: 40px 44px 36px;
  border-radius: 8px;
  color: #fff;
  background:
    radial-gradient(ellipse 70% 80% at 88% 18%, rgba(56, 189, 248, 0.28), transparent 52%),
    radial-gradient(ellipse 50% 60% at 8% 92%, rgba(14, 116, 144, 0.45), transparent 58%),
    linear-gradient(160deg, #041018 0%, #0b2740 48%, #083344 100%);
  box-shadow: 0 28px 64px rgba(7, 21, 35, 0.22);
  isolation: isolate;
}
.cta-stage::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background:
    linear-gradient(115deg, transparent 0%, rgba(186, 230, 253, 0.08) 42%, transparent 58%);
  background-size: 220% 100%;
  animation: cta-stage-sheen 7s ease-in-out infinite;
  pointer-events: none;
}
.cta-stage > * { position: relative; z-index: 1; }
.cta-live {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 14px;
  padding: 6px 12px 6px 10px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #bae6fd;
  background: rgba(8, 47, 73, 0.55);
  border: 1px solid rgba(125, 211, 252, 0.28);
  backdrop-filter: blur(10px);
}
.cta-live-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #4ade80;
  box-shadow: 0 0 0 0 rgba(74, 222, 128, 0.7);
  animation: cta-live-ping 1.8s ease-out infinite;
}
.cta-stage h2 {
  font-family: var(--display);
  font-size: clamp(34px, 4.4vw, 52px);
  font-weight: 500;
  letter-spacing: -0.03em;
  line-height: 1.08;
  color: #f0f9ff;
  text-transform: none;
  max-width: 14ch;
}
.cta-stage h2 em {
  font-style: italic;
  color: #7dd3fc;
  display: inline-block;
  animation: cta-word-pulse 3.2s ease-in-out infinite;
}
.cta-lead {
  margin-top: 14px;
  max-width: 42ch;
  color: rgba(240, 249, 255, 0.78);
  font-size: 15px;
}
.cta-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 20px 0 24px;
  list-style: none;
}
.cta-chips li {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 7px 12px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 500;
  color: #e0f2fe;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(186, 230, 253, 0.16);
}
.cta-chips svg { color: var(--gold); }
a.btn.cta-stage-btn {
  min-height: 54px;
  min-width: 220px;
  border-radius: 999px;
  font-size: 15px;
  box-shadow: 0 12px 32px rgba(var(--gold-rgb), 0.38);
  animation: cta-btn-glow 2.6s ease-in-out infinite;
}
a.btn.cta-stage-btn:hover {
  transform: translateY(-2px) scale(1.02);
  box-shadow: 0 18px 40px rgba(var(--gold-rgb), 0.5);
}
.cta-stage-visual {
  position: relative;
  min-height: 320px;
  display: grid;
  place-items: center;
}
.cta-radar {
  position: absolute;
  width: 280px;
  height: 280px;
  border-radius: 50%;
  pointer-events: none;
}
.cta-ring {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  border: 1px solid rgba(125, 211, 252, 0.22);
  animation: cta-ring-out 3.6s ease-out infinite;
}
.cta-ring:nth-child(2) { animation-delay: 1.2s; }
.cta-ring:nth-child(3) { animation-delay: 2.4s; }
.cta-sweep {
  position: absolute;
  inset: 18%;
  border-radius: 50%;
  background: conic-gradient(from 0deg, transparent 0 72%, rgba(56, 189, 248, 0.28) 88%, transparent 100%);
  animation: cta-sweep 4.8s linear infinite;
  mask-image: radial-gradient(circle, transparent 42%, #000 43%);
}
.cta-pin {
  position: absolute;
  inset: 50%;
  width: 42px;
  height: 42px;
  margin: -21px 0 0 -21px;
  display: grid;
  place-items: center;
  line-height: 0;
  border-radius: 50%;
  color: var(--gold-ink);
  background: var(--gold);
  box-shadow: 0 0 0 8px rgba(56, 189, 248, 0.18), 0 10px 24px rgba(8, 47, 73, 0.35);
  animation: cta-pin-bob 2.4s ease-in-out infinite;
}
.cta-phone {
  position: relative;
  z-index: 1;
  width: min(100%, 320px);
  padding: 16px;
  border-radius: 8px;
  background: rgba(7, 21, 35, 0.62);
  border: 1px solid rgba(186, 230, 253, 0.22);
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.28);
  backdrop-filter: blur(18px) saturate(1.2);
}
.cta-search-bar {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 42px;
  margin-bottom: 12px;
  padding: 0 12px;
  border-radius: 6px;
  color: #bae6fd;
  background: rgba(8, 47, 73, 0.72);
  border: 1px solid rgba(125, 211, 252, 0.2);
}
.cta-typed {
  display: inline-block;
  overflow: hidden;
  white-space: nowrap;
  max-width: 0;
  font-size: 13px;
  font-weight: 500;
  color: #f0f9ff;
  border-right: 2px solid var(--gold);
  animation: cta-type 7s steps(18) infinite, cta-caret 0.7s step-end infinite;
}
.cta-hit {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 8px;
  padding: 11px 12px;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.06);
  opacity: 0;
  transform: translateY(10px);
  animation: cta-hit-in 7s ease-in-out infinite;
}
.cta-hit-1 { animation-delay: 1.5s; }
.cta-hit-you { animation-delay: 2.05s; }
.cta-hit-3 { animation-delay: 2.6s; }
.cta-hit b {
  display: block;
  font-size: 13px;
  font-weight: 600;
  color: #f8fbff;
}
.cta-hit > div span {
  display: block;
  font-size: 11px;
  color: rgba(186, 230, 253, 0.72);
}
.cta-hit-dot {
  flex-shrink: 0;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #7dd3fc;
}
.cta-hit-you {
  position: relative;
  background: linear-gradient(135deg, rgba(56, 189, 248, 0.22), rgba(14, 116, 144, 0.18));
  border-color: rgba(125, 211, 252, 0.5);
  box-shadow: 0 0 0 0 rgba(56, 189, 248, 0.35);
  animation: cta-hit-in 7s ease-in-out infinite, cta-you-glow 7s ease-in-out infinite;
  animation-delay: 2.05s, 2.05s;
}
.cta-hit-you .cta-hit-dot { background: #4ade80; }
.cta-you-tag {
  position: absolute;
  top: -9px;
  right: 10px;
  display: inline-block;
  padding: 2px 8px;
  border-radius: 999px;
  font-size: 9px !important;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--gold-ink) !important;
  background: var(--gold);
}
.cta-ticker {
  overflow: hidden;
  margin-top: 18px;
  mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
}
.cta-ticker-track {
  display: flex;
  gap: 28px;
  width: max-content;
  animation: cta-marquee 28s linear infinite;
}
.cta-ticker-track span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--muted);
  white-space: nowrap;
}
.cta-ticker-track svg { color: var(--accent); }

@keyframes cta-stage-sheen {
  0%, 100% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
}
@keyframes cta-live-ping {
  0% { box-shadow: 0 0 0 0 rgba(74, 222, 128, 0.7); }
  70% { box-shadow: 0 0 0 10px rgba(74, 222, 128, 0); }
  100% { box-shadow: 0 0 0 0 rgba(74, 222, 128, 0); }
}
@keyframes cta-word-pulse {
  0%, 100% { opacity: 1; filter: drop-shadow(0 0 0 transparent); }
  50% { opacity: 0.88; filter: drop-shadow(0 0 12px rgba(125, 211, 252, 0.55)); }
}
@keyframes cta-btn-glow {
  0%, 100% { box-shadow: 0 12px 32px rgba(var(--gold-rgb), 0.32); }
  50% { box-shadow: 0 16px 40px rgba(var(--gold-rgb), 0.55); }
}
@keyframes cta-ring-out {
  0% { transform: scale(0.35); opacity: 0.7; }
  100% { transform: scale(1.15); opacity: 0; }
}
@keyframes cta-sweep {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}
@keyframes cta-pin-bob {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-5px); }
}
@keyframes cta-type {
  0%, 8% { max-width: 0; }
  28%, 78% { max-width: 18ch; }
  92%, 100% { max-width: 0; }
}
@keyframes cta-caret {
  50% { border-color: transparent; }
}
@keyframes cta-hit-in {
  0%, 18% { opacity: 0; transform: translateY(12px); }
  32%, 82% { opacity: 1; transform: translateY(0); }
  100% { opacity: 0; transform: translateY(-8px); }
}
@keyframes cta-you-glow {
  0%, 28% { box-shadow: 0 0 0 0 rgba(56, 189, 248, 0); }
  45%, 70% { box-shadow: 0 0 0 6px rgba(56, 189, 248, 0.18), 0 12px 28px rgba(56, 189, 248, 0.28); }
  100% { box-shadow: 0 0 0 0 rgba(56, 189, 248, 0); }
}
@keyframes cta-marquee {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}

@media (max-width: 980px) {
  .cta-stage {
    grid-template-columns: 1fr;
    padding: 28px 22px 24px;
    border-radius: 8px;
  }
  .cta-stage h2 { max-width: none; }
  a.btn.cta-stage-btn { width: 100%; }
  .cta-stage-visual { min-height: 280px; }
  .cta-radar { width: 220px; height: 220px; }
}
@media (prefers-reduced-motion: reduce) {
  .cta-stage::before,
  .cta-live-dot,
  .cta-stage h2 em,
  a.btn.cta-stage-btn,
  .cta-ring,
  .cta-sweep,
  .cta-pin,
  .cta-typed,
  .cta-hit,
  .cta-hit-you,
  .cta-ticker-track {
    animation: none;
  }
  .cta-typed { max-width: 18ch; border-right: 0; }
  .cta-hit {
    opacity: 1;
    transform: none;
  }
}

.faq {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0 48px;
  max-width: none;
  margin-inline: auto;
  align-items: start;
}
.faq-col { border-top: 1px solid var(--line); min-width: 0; }
.faq details {
  background: transparent;
  border: none;
  border-bottom: 1px solid var(--line);
  border-radius: 0;
  padding: 18px 0;
}
.faq summary {
  cursor: pointer;
  font-weight: 600;
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}
.faq summary::-webkit-details-marker { display: none; }
.faq summary::after {
  content: "+";
  font-size: 20px;
  font-weight: 400;
  color: var(--accent);
  line-height: 1;
}
.faq details[open] summary::after { content: "–"; }
.faq p { color: var(--muted); margin-top: 10px; font-size: 15px; }

@media (max-width: 980px) {
  .faq { gap: 0 24px; }
}

/* firma badges */
.firma-badges {
  position: absolute;
  top: 12px;
  left: 12px;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 8px;
  z-index: 2;
}
.firma-badge {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  padding: 0;
  border-radius: 999px;
  background: rgba(255,255,255,0.96);
  color: var(--accent);
  box-shadow: 0 2px 8px rgba(var(--navy-rgb), 0.14);
  cursor: default;
  outline: none;
}
.firma-badge .ico {
  display: block;
}
.firma-badge-sponsor {
  color: #8a5a00;
  background: rgba(255, 244, 214, 0.98);
  box-shadow: 0 2px 8px rgba(138, 90, 0, 0.16);
}
.firma-badges-inline {
  position: static;
  top: auto;
  left: auto;
  z-index: 1;
  gap: 6px;
}
.firma-badges-inline .firma-badge {
  width: 28px;
  height: 28px;
}
/* Ok’lu konuşma balonu tooltip */
.firma-badge-icon::after {
  content: attr(data-tip);
  position: absolute;
  left: 0;
  top: calc(100% + 12px);
  bottom: auto;
  transform: translateY(4px);
  width: max-content;
  max-width: min(220px, calc(100vw - 48px));
  padding: 8px 12px;
  border-radius: 6px;
  background: var(--navy);
  color: #fff;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0;
  text-transform: none;
  line-height: 1.35;
  white-space: normal;
  text-align: left;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.16s ease, transform 0.16s ease, visibility 0.16s ease;
  z-index: 5;
  filter: drop-shadow(0 8px 18px rgba(var(--navy-rgb), 0.28));
}
.firma-badge-icon::before {
  content: "";
  position: absolute;
  left: 9px;
  top: calc(100% + 5px);
  bottom: auto;
  width: 0;
  height: 0;
  transform: translateY(4px);
  border-style: solid;
  border-width: 0 7px 7px 7px;
  border-color: transparent transparent var(--navy) transparent;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.16s ease, transform 0.16s ease, visibility 0.16s ease;
  z-index: 6;
  filter: drop-shadow(0 2px 4px rgba(var(--navy-rgb), 0.18));
}
.firma-badge-icon:hover::after,
.firma-badge-icon:hover::before,
.firma-badge-icon:focus-visible::after,
.firma-badge-icon:focus-visible::before {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.firma-badge-icon:hover,
.firma-badge-icon:focus-visible {
  z-index: 7;
}

/* Tablo hücresi overflow:hidden balonu kesmesin (JS yoksa yedek) */
.dash-avaro .table-wrap td:has(.firma-badges-inline),
.dash-avaro .table-wrap td:has(.firma-badge-icon),
.table-wrap td:has(.firma-badges-inline),
.table-wrap td:has(.firma-badge-icon) {
  overflow: visible;
}
.dash-avaro .table-wrap tbody tr:has(.firma-badge-icon:hover),
.dash-avaro .table-wrap tbody tr:has(.firma-badge-icon:focus-visible),
.table-wrap tbody tr:has(.firma-badge-icon:hover),
.table-wrap tbody tr:has(.firma-badge-icon:focus-visible) {
  position: relative;
  z-index: 8;
}

/* JS: overflow’lu tablolarda da görünen sabit balon */
.ui-float-tip {
  position: fixed;
  z-index: 400;
  width: max-content;
  max-width: min(240px, calc(100vw - 24px));
  padding: 8px 12px;
  border-radius: 6px;
  background: var(--navy);
  color: #fff;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.35;
  letter-spacing: 0;
  text-align: left;
  pointer-events: none;
  filter: drop-shadow(0 8px 18px rgba(var(--navy-rgb), 0.28));
}
.ui-float-tip[hidden] {
  display: none !important;
}
.ui-float-tip::before {
  content: "";
  position: absolute;
  left: var(--caret-x, 50%);
  top: -6px;
  width: 0;
  height: 0;
  transform: translateX(-50%);
  border-style: solid;
  border-width: 0 7px 7px 7px;
  border-color: transparent transparent var(--navy) transparent;
}
.ui-float-tip.is-above::before {
  top: auto;
  bottom: -6px;
  border-width: 7px 7px 0 7px;
  border-color: var(--navy) transparent transparent transparent;
}
html.js-float-tips .firma-badge-icon::after,
html.js-float-tips .firma-badge-icon::before {
  content: none !important;
  display: none !important;
}

/* Reviews + comment modal */
.reviews-block { margin-top: 0; }
.reviews-head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px 16px;
  margin-bottom: 8px;
}
.reviews-head .btn { width: auto; }
.reviews-summary {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 6px;
}
.reviews-empty {
  margin: 12px 0 0;
  color: var(--muted);
  font-size: 14px;
}
.review-list {
  list-style: none;
  margin: 12px 0 0;
  padding: 0;
  display: grid;
  gap: 0;
}
.review-item {
  padding: 16px 0;
  border-top: 1px solid var(--line);
}
.review-item:first-child { padding-top: 8px; border-top: 0; }
.review-item-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 6px;
}
.review-item p { margin: 0; line-height: 1.55; }
.review-item time { display: block; margin-top: 8px; font-size: 12px; }

.review-tip,
.review-puan {
  border: 0;
  padding: 0;
  margin: 0;
  min-width: 0;
}
.review-tip legend,
.review-puan legend {
  font-size: 12px;
  color: var(--muted);
  font-weight: 500;
  margin-bottom: 8px;
  padding: 0;
}
.review-tip {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}
.review-tip legend { grid-column: 1 / -1; }
.review-tip label {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 44px;
  padding: 0 12px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #fff;
  cursor: pointer;
  font-size: 14px;
  font-weight: 500;
}
.review-tip input {
  width: auto;
  min-height: auto;
  accent-color: var(--navy);
}
.review-tip label:has(input:checked) {
  border-color: var(--navy);
  background: var(--cream);
}

.puan-stars {
  display: flex;
  flex-direction: row-reverse;
  justify-content: flex-end;
  gap: 4px;
}
.puan-stars input {
  position: absolute;
  opacity: 0;
  width: 1px;
  height: 1px;
  pointer-events: none;
}
.puan-stars label {
  color: var(--star-off);
  cursor: pointer;
  line-height: 0;
  padding: 2px;
  border-radius: 4px;
}
.puan-stars label:hover,
.puan-stars label:hover ~ label,
.puan-stars input:checked + label,
.puan-stars input:checked + label ~ label,
.puan-stars input:focus-visible + label {
  color: var(--star);
}

body.ui-modal-open { overflow: hidden; }
.ui-modal[hidden] { display: none !important; }
.ui-modal [hidden] { display: none !important; }
.ui-modal {
  position: fixed;
  inset: 0;
  z-index: 90;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px 16px;
}
.ui-modal-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(var(--navy-rgb), 0.48);
  backdrop-filter: blur(4px);
}
.ui-modal-panel {
  position: relative;
  z-index: 1;
  width: min(560px, 100%);
  max-height: min(92vh, 840px);
  overflow: auto;
  scrollbar-gutter: stable;
  overscroll-behavior: contain;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  box-shadow: 0 24px 64px rgba(var(--navy-rgb), 0.22);
  padding: 22px 24px 24px;
}
.ui-modal-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 16px;
}
.ui-modal-kicker {
  margin: 0 0 4px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--accent);
}
.ui-modal-head h2 {
  margin: 0;
  font-size: 20px;
  letter-spacing: -0.02em;
  text-transform: none;
}
.ui-modal-sub { margin: 6px 0 0; font-size: 13px; }
.ui-modal-x {
  width: 40px;
  height: 40px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #fff;
  color: var(--ink);
  font-size: 22px;
  line-height: 1;
  cursor: pointer;
  flex-shrink: 0;
}
.ui-modal-x:hover { background: var(--cream); }
.ui-modal-body { margin-top: 4px; }
.ui-modal-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
  margin-top: 4px;
}
.review-form .ui-modal-actions .btn { width: auto; }
.randevu-form .ui-modal-actions .btn { width: auto; }
.ui-modal-panel.randevu-panel {
  width: min(520px, 100%);
  max-height: min(92vh, 760px);
  min-height: 0;
  padding: 0;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
.randevu-panel .ui-modal-head {
  margin: 0;
  padding: 18px 20px 10px;
  flex-shrink: 0;
}
.randevu-panel .ui-modal-sub { margin-top: 4px; }
.randevu-tarih-input {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
  pointer-events: none;
}

.ui-modal-panel.firma-edit-panel {
  width: min(820px, 100%);
  max-height: min(90vh, 780px);
  min-height: min(68vh, 620px);
  padding: 0;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  border: 0;
  box-shadow: 0 28px 80px rgba(15, 23, 42, 0.28);
  animation: firma-edit-in 0.22s ease;
}
@keyframes firma-edit-in {
  from { opacity: 0; transform: translateY(10px) scale(0.985); }
  to { opacity: 1; transform: none; }
}
.ui-modal-panel.sube-panel {
  width: min(800px, 100%);
}
.ui-modal-panel.sube-panel .form.firma-edit-form {
  display: flex;
  flex-direction: column;
  gap: 0;
}
.ui-modal-panel.sube-panel .hours-form {
  max-width: none;
}
.ui-modal-panel.sube-panel .hours-days {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: 0;
}
.sube-panel .ui-modal-sub {
  margin: 4px 0 0;
  max-width: none;
}
.sube-panel .hours-interval {
  margin: 0;
}
.sube-panel .hours-day {
  padding: 12px;
}
.sube-panel .map-url-fold {
  background: #fff;
}
.sube-panel .or-media-row {
  display: grid;
  grid-template-columns: minmax(140px, 0.9fr) minmax(0, 1.2fr);
  gap: 14px;
  align-items: stretch;
}
.sube-panel .or-media-photos {
  display: grid;
  grid-template-columns: minmax(168px, 1.15fr) minmax(0, 1fr);
  gap: 12px;
  align-items: stretch;
}
.sube-panel .or-media-preview.is-cover {
  min-height: 196px;
  aspect-ratio: 16 / 10;
}
.sube-panel .or-media-preview.is-cover.is-add {
  gap: 8px;
  cursor: pointer;
  border: 1px dashed var(--line);
  background: #fff;
  color: var(--muted);
}
.sube-panel .or-media-preview.is-cover.is-add:hover {
  border-color: var(--accent);
  color: var(--navy);
}
.sube-panel .or-media-preview.is-cover.is-add .ico {
  width: 22px;
  height: 22px;
}
.sube-panel .or-media-badge {
  position: absolute;
  top: 8px;
  left: 8px;
  z-index: 2;
  padding: 4px 8px;
  border-radius: 999px;
  background: var(--shop-accent, var(--accent));
  color: #fff;
  font-size: 11px;
  font-weight: 750;
  letter-spacing: 0.02em;
  pointer-events: none;
}
.sube-panel .or-media-preview.is-cover .or-media-thumb-x {
  top: 8px;
  right: 8px;
  width: 28px;
  height: 28px;
}
.sube-panel .or-media-preview {
  position: relative;
  display: grid;
  place-items: center;
  overflow: hidden;
  min-height: 148px;
  border-radius: 6px;
  background: #e8eef4;
}
.sube-panel .or-media-preview img,
.sube-panel .or-media-preview video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  background: #0b1220;
}
.sube-panel .or-media-preview.is-empty {
  padding: 16px;
  background: #eef3f8;
}
.sube-panel .or-media-preview.is-empty span:not(.or-media-size) {
  max-width: 18em;
  text-align: center;
  font-size: 13px;
  font-weight: 600;
  color: var(--muted);
}
.sube-panel .or-media-size {
  position: absolute;
  left: 8px;
  bottom: 8px;
  z-index: 1;
  max-width: calc(100% - 16px);
  padding: 4px 8px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(15, 23, 42, 0.78);
  color: #fff;
  font-size: 11px;
  font-weight: 650;
  line-height: 1.2;
  letter-spacing: 0.01em;
  white-space: nowrap;
  text-overflow: ellipsis;
  pointer-events: none;
}
.sube-panel .or-media-size[hidden] {
  display: none;
}
.sube-panel .or-media-preview-video .or-media-size {
  top: 8px;
  bottom: auto;
}
.sube-panel .or-media-thumb .or-media-size {
  left: 4px;
  bottom: 4px;
  max-width: calc(100% - 8px);
  padding: 3px 6px;
  font-size: 10px;
}
.sube-panel .or-media-meta {
  display: grid;
  gap: 10px;
  align-content: start;
  min-width: 0;
}
.sube-panel .or-media-meta .muted {
  margin: 0;
  font-size: 13px;
}
.sube-panel .or-media-title {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}
.sube-panel .or-media-title strong {
  font-size: 14px;
  font-weight: 700;
}
.sube-panel .or-media-thumbs {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  align-content: start;
}
.sube-panel .or-media-galeri-info {
  margin: 8px 0 0;
}
.sube-panel .or-media-thumb {
  position: relative;
  aspect-ratio: 1;
  overflow: hidden;
  border-radius: 6px;
  background: #e8eef4;
}
.sube-panel .or-media-thumb img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.sube-panel .or-media-thumb-x {
  position: absolute;
  top: 4px;
  right: 4px;
  width: 24px;
  height: 24px;
  border: 0;
  border-radius: 999px;
  background: rgba(15, 23, 42, 0.72);
  color: #fff;
  font-size: 16px;
  line-height: 1;
  cursor: pointer;
}
.sube-panel .or-media-thumb-x:hover {
  background: #b91c1c;
}
.sube-panel .or-media-thumb-kapak {
  position: absolute;
  left: 4px;
  right: 4px;
  bottom: 4px;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  min-height: 24px;
  padding: 0 6px;
  border: 0;
  border-radius: 4px;
  background: rgba(15, 23, 42, 0.78);
  color: #fff;
  font-size: 10px;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
}
.sube-panel .or-media-thumb-kapak .ico {
  width: 12px;
  height: 12px;
}
.sube-panel .or-media-thumb-kapak:hover {
  background: var(--shop-accent, var(--accent));
}
.sube-panel .or-media-thumb.is-pending {
  outline: 2px dashed var(--accent);
  outline-offset: -2px;
}
.sube-panel .or-media-thumb.is-add {
  display: grid;
  place-items: center;
  gap: 4px;
  border: 1px dashed var(--line);
  background: #fff;
  color: var(--muted);
  font-size: 12px;
  font-weight: 650;
  cursor: pointer;
}
.sube-panel .or-media-thumb.is-add:hover {
  border-color: var(--accent);
  color: var(--navy);
}
.sube-panel .or-media-thumb.is-add input {
  position: absolute;
  inset: 0;
  opacity: 0;
  cursor: pointer;
  min-height: 0;
  padding: 0;
  border: 0;
  background: transparent;
}
.sube-panel [data-sube-pane="medya"] .firma-edit-section-head {
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
}
.sube-panel .firma-edit-head {
  padding: 14px 20px 10px;
}
.sube-panel .firma-edit-tabs {
  margin: 8px 20px 10px;
}
.sube-panel .flash-inline {
  margin-left: 20px;
  margin-right: 20px;
}
.sube-panel .firma-edit-scroll {
  gap: 12px;
  padding: 2px 20px 16px;
}
.sube-panel .firma-edit-section {
  gap: 10px;
  padding: 0;
  background: transparent;
  border: 0;
  border-radius: 0;
}
.sube-panel .firma-edit-section-head {
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 8px 14px;
}
.sube-panel .firma-edit-section-head > div:first-child {
  min-width: 0;
}
.sube-panel .row .field {
  align-content: start;
}
.sube-panel .sube-tab-n {
  display: grid;
  place-items: center;
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  border-radius: 999px;
  background: #e2e8f0;
  color: #475569;
  font-size: 11px;
  font-weight: 750;
  line-height: 1;
}
.sube-panel .ui-modal-tabs button .ico {
  display: none;
}
.sube-panel .ui-modal-tabs button.is-on .sube-tab-n {
  background: var(--shop-accent, var(--admin-accent, var(--accent)));
  color: #fff;
}
.sube-panel .firma-edit-tabs button {
  gap: 8px;
  min-height: 36px;
  padding: 6px 10px;
}
.sube-panel .map-url-fold {
  margin-top: 2px;
  padding: 0 12px 10px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
}
.sube-panel .map-url-fold > summary {
  padding: 10px 0;
  font-size: 12px;
}
.sube-more {
  padding: 0 12px 10px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
}
.sube-more > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  cursor: pointer;
  list-style: none;
  padding: 10px 0;
  font-size: 13px;
  font-weight: 650;
  color: #334155;
  user-select: none;
}
.sube-more > summary::-webkit-details-marker { display: none; }
.sube-more > summary::after {
  content: "";
  width: 7px;
  height: 7px;
  flex-shrink: 0;
  border-right: 2px solid #94a3b8;
  border-bottom: 2px solid #94a3b8;
  transform: rotate(45deg);
  transition: transform 0.15s ease;
}
.sube-more[open] > summary::after {
  transform: rotate(225deg);
  margin-top: 4px;
}
.sube-more > summary .muted {
  margin: 0;
  margin-right: auto;
  margin-left: 8px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0;
  text-transform: none;
}
.sube-more-body {
  display: grid;
  gap: 10px;
  padding-bottom: 6px;
}
.sube-social {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}
.sube-panel .hours-actions {
  flex-shrink: 0;
  margin-left: auto;
}
.sube-panel .hours-day {
  padding: 10px;
}
.sube-panel .firma-edit-actions {
  padding: 10px 20px 14px;
}
.sube-panel .firma-edit-actions .btn {
  min-height: 40px;
  min-width: 0;
  padding: 0 14px;
}
.sube-panel .firma-edit-actions .btn .ico {
  width: 14px;
  height: 14px;
}
.sube-panel [data-sube-pane="medya"] .firma-edit-section + .firma-edit-section {
  padding-top: 14px;
  border-top: 1px solid var(--line);
}
.ui-modal-tabs {
  display: flex;
  gap: 8px;
  margin: 0 0 16px;
  padding: 4px;
  background: #f7fafc;
  border: 1px solid var(--line);
  border-radius: 6px;
}
.ui-modal-tabs button {
  flex: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 40px;
  padding: 8px 12px;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: var(--muted);
  font: inherit;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
}
.ui-modal-tabs button:hover {
  color: var(--navy);
  background: #fff;
}
.ui-modal-tabs button.is-on {
  color: #fff;
  background: var(--admin-accent, var(--navy));
}
.dash-admin .ui-modal-tabs {
  border-color: var(--admin-line);
}
.firma-edit-head {
  align-items: center;
  gap: 12px;
  margin: 0;
  padding: 18px 22px 14px;
  border-bottom: 1px solid var(--line);
  background: linear-gradient(180deg, #f8fbff 0%, #fff 100%);
}
.dash-main .firma-edit-panel .firma-edit-head h2,
.firma-edit-panel .firma-edit-head h2 {
  margin: 0;
  font-size: 20px;
  font-weight: 650;
  line-height: 1.25;
  letter-spacing: -0.03em;
  text-transform: none;
  color: var(--ink);
}
.firma-edit-ident { min-width: 0; }
.firma-edit-panel .ui-modal-kicker {
  margin: 0 0 4px;
  color: var(--admin-accent, var(--accent));
}
.firma-edit-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin: 8px 0 0;
}
.firma-edit-chip {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 2px 10px;
  border-radius: 999px;
  background: #eff6ff;
  color: #1d4ed8;
  font-size: 12px;
  font-weight: 600;
}
.dash-admin .firma-edit-chip {
  background: var(--admin-accent-soft);
  color: var(--admin-accent);
}
.firma-edit-chip[hidden] { display: none !important; }
.firma-edit-panel .ui-modal-x {
  width: 36px;
  height: 36px;
  border-radius: 999px;
  border-color: transparent;
  background: #f1f5f9;
  font-size: 20px;
}
.firma-edit-panel .ui-modal-x:hover { background: #e2e8f0; }
.firma-edit-tabs {
  flex-shrink: 0;
  margin: 12px 22px 12px;
}
.firma-edit-panel .ui-modal-tabs {
  gap: 4px;
  padding: 4px;
  background: #f1f5f9;
  border: 0;
  border-radius: 6px;
}
.firma-edit-panel .ui-modal-tabs button {
  min-height: 38px;
  padding: 6px 12px;
  border-radius: 6px;
  font-size: 13px;
  font-weight: 650;
}
.firma-edit-panel .ui-modal-tabs button.is-on {
  background: #fff;
  color: var(--admin-ink, var(--navy));
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.06), 0 4px 12px rgba(15, 23, 42, 0.06);
}
.firma-edit-panel .flash-inline {
  flex-shrink: 0;
  margin: 0 22px 12px;
}
.firma-edit-panel .form.firma-edit-form {
  flex: 1 1 auto;
  min-height: 0;
  display: flex;
  flex-direction: column;
  gap: 0;
  margin: 0;
  overflow: hidden;
}
.firma-edit-scroll {
  flex: 1 1 auto;
  min-height: 0;
  overflow: auto;
  overscroll-behavior: contain;
  padding: 4px 22px 18px;
  display: grid;
  gap: 16px;
  scrollbar-gutter: stable;
}
.firma-edit-section {
  display: grid;
  gap: 12px;
  padding: 14px 16px 16px;
  background: #f8fafc;
  border: 1px solid var(--line);
  border-radius: 8px;
}
.firma-edit-section h3,
.firma-edit-section-head h3 {
  margin: 0;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #64748b;
}
.firma-edit-section-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
}
.firma-edit-section-head .muted {
  margin: 0;
  font-size: 12px;
}
.firma-edit-panel label.field {
  font-size: 12px;
  font-weight: 600;
  color: #334155;
  gap: 6px;
}
.firma-edit-panel input:not([type="checkbox"]):not([type="hidden"]),
.firma-edit-panel select,
.firma-edit-panel textarea {
  min-height: 44px;
  padding: 10px 12px;
  border-radius: 6px;
  background: #fff;
}
.firma-edit-panel textarea { min-height: 84px; }
.firma-edit-panel input[readonly] {
  background: #f1f5f9;
  color: #475569;
}
.firma-edit-panel .row { gap: 12px; }
.firma-edit-panel .map-url-grid {
  grid-template-columns: 1fr;
}
.firma-edit-checks {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.firma-edit-checks label {
  position: relative;
  overflow: hidden;
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: #fff;
  color: #334155;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  user-select: none;
  transition: border-color 0.15s ease, background 0.15s ease, color 0.15s ease, box-shadow 0.15s ease;
}
.firma-edit-checks label span { padding: 8px 14px; }
.firma-edit-checks input {
  position: absolute;
  opacity: 0;
  width: 1px !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0;
  pointer-events: none;
}
.firma-edit-checks label:hover {
  border-color: #93c5fd;
  background: #f8fbff;
}
.dash-admin .firma-edit-checks label:hover {
  border-color: #99f6e4;
  background: var(--admin-accent-soft);
}
.firma-edit-checks label:has(input:checked) {
  background: #eff6ff;
  border-color: #2563eb;
  color: #1d4ed8;
  box-shadow: 0 0 0 3px rgba(var(--accent-rgb), 0.12);
}
.dash-admin .firma-edit-checks label:has(input:checked) {
  background: var(--admin-accent-soft);
  border-color: var(--admin-accent);
  color: var(--admin-accent);
}
.firma-edit-checks label:has(input:focus-visible) {
  outline: 2px solid #2563eb;
  outline-offset: 2px;
}
.dash-admin .firma-edit-checks label:has(input:focus-visible) {
  outline-color: var(--admin-accent);
}
.sube-panel [data-sube-pane="hizmetler"] .firma-edit-section {
  align-content: start;
}
.sube-panel .firma-edit-checks {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  align-self: stretch;
  align-content: start;
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: transparent;
}
.sube-panel .firma-edit-checks label {
  width: 100%;
  min-height: 44px;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fff;
  color: #334155;
  font-size: 13px;
  font-weight: 600;
  box-shadow: none;
  transition: background 0.12s ease, border-color 0.12s ease;
}
.sube-panel .firma-edit-checks label span {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  padding: 8px 12px;
}
.sube-panel .firma-edit-checks label span::before {
  content: "";
  width: 16px;
  height: 16px;
  flex-shrink: 0;
  border: 1px solid #cbd5e1;
  border-radius: 4px;
  background: #fff;
  background-position: center;
  background-repeat: no-repeat;
  background-size: 10px;
}
.sube-panel .firma-edit-checks label:hover {
  border-color: #cbd5e1;
  background: #f8fafc;
}
.sube-panel .firma-edit-checks label:has(input:checked) {
  background: #fff;
  border-color: var(--line);
  color: #0f172a;
  box-shadow: none;
}
.sube-panel .firma-edit-checks label:has(input:checked):hover {
  border-color: #cbd5e1;
  background: #f8fafc;
}
.sube-panel .firma-edit-checks label:has(input:checked) span::before {
  border-color: var(--shop-accent, var(--accent));
  background-color: var(--shop-accent, var(--accent));
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><path d='M20 6 9 17l-5-5'/></svg>");
}
.sube-panel .firma-edit-checks label:has(input:focus-visible) {
  outline: none;
  box-shadow: none;
  border-color: var(--shop-accent, var(--accent));
}
.sube-panel .firma-edit-checks label:has(input:focus-visible) span {
  outline: 2px solid var(--shop-accent, var(--accent));
  outline-offset: -2px;
}
.firma-edit-seo {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(240px, 0.85fr);
  gap: 16px;
  align-items: start;
}
.firma-edit-seo-fields {
  display: grid;
  gap: 12px;
}
.firma-edit-panel .seo-serp {
  position: sticky;
  top: 0;
  padding: 16px 18px;
  background: #fff;
  border-color: #dbe7f3;
}
.firma-edit-actions {
  flex-shrink: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin: 0;
  padding: 12px 22px 16px;
  border-top: 1px solid var(--line);
  background: #fff;
}
.firma-edit-save-hint {
  margin: 0;
  font-size: 12px;
}
.firma-edit-maps-hint {
  margin: 0 0 14px;
  font-size: 13px;
  line-height: 1.45;
}
.firma-edit-maps-hint a {
  font-weight: 650;
  color: var(--admin-accent, var(--accent));
}
.firma-edit-actions-btns {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
  margin-left: auto;
}
.firma-edit-panel .firma-edit-actions .btn {
  width: auto;
  min-height: 44px;
  min-width: 112px;
}
.firma-edit-scroll:has(.ss-wrap.is-open) {
  overflow: visible;
}
.field-count {
  display: block;
  margin-top: 6px;
  font-size: 12px;
  color: var(--muted);
  text-align: right;
}
.field-count.is-over { color: var(--err); }
.field-hint {
  display: block;
  margin-top: 6px;
  font-size: 12px;
  line-height: 1.4;
}
.field-hint code {
  font-size: 12px;
  background: #f4f7fa;
  padding: 1px 6px;
  border-radius: 4px;
}
.seo-serp {
  padding: 14px 16px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #f8fafc;
}
.seo-serp-kicker {
  margin: 0 0 8px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--muted);
}
.seo-serp-title {
  margin: 0;
  font-size: 18px;
  line-height: 1.3;
  color: #1a0dab;
  font-weight: 500;
}
.seo-serp-url {
  margin: 4px 0 6px;
  font-size: 13px;
  color: #006621;
  word-break: break-all;
}
.seo-serp-desc {
  margin: 0;
  font-size: 13px;
  line-height: 1.45;
  color: #4d5156;
}

@media (max-width: 980px) {
  .reviews-head .btn,
  .ui-modal-actions .btn { width: 100%; }
  .ui-modal-actions { justify-content: stretch; }
  .ui-modal-panel { padding: 18px 16px 16px; }
  .ui-modal-panel.randevu-panel { padding: 0; }
  .ui-modal-panel.user-form-panel:has(.user-form) { padding: 0; }
  .ui-modal-panel.blog-edit-panel { padding: 0; }
  .blog-edit-panel .blog-edit-actions .btn { width: auto; }
  .user-form-panel .user-form-actions {
    justify-content: flex-end;
  }
  .user-form-panel .user-form-actions .btn { width: auto; }
  .ui-modal-tabs { flex-direction: column; }
  .firma-edit-panel {
    padding: 0;
    min-height: 0;
    max-height: min(94vh, 860px);
  }
  .firma-edit-panel .ui-modal-tabs { flex-direction: row; }
  .firma-edit-panel .firma-edit-actions .btn { width: auto; }
  .firma-edit-seo { grid-template-columns: 1fr; }
  .firma-edit-panel .seo-serp { position: static; }
}

@media (max-width: 640px) {
  .firma-edit-panel .row,
  .user-form-panel .row {
    grid-template-columns: 1fr;
  }
  .firma-edit-head,
  .firma-edit-actions {
    padding-left: 16px;
    padding-right: 16px;
  }
  .firma-edit-tabs,
  .firma-edit-panel .flash-inline {
    margin-left: 16px;
    margin-right: 16px;
  }
  .firma-edit-scroll { padding-left: 16px; padding-right: 16px; }
  .firma-edit-actions {
    flex-direction: column;
    align-items: stretch;
  }
  .firma-edit-actions-btns,
  .firma-edit-panel .firma-edit-actions .btn {
    width: 100%;
    margin-left: 0;
  }
  .sube-panel .or-media-row,
  .sube-panel .or-media-photos {
    grid-template-columns: 1fr;
  }
  .sube-panel .or-media-thumbs {
    grid-template-columns: repeat(auto-fill, minmax(96px, 1fr));
  }
  .sube-panel .firma-edit-tabs button {
    padding: 6px 6px;
    font-size: 12px;
    gap: 6px;
  }
  .sube-social,
  .sube-panel .firma-edit-checks {
    grid-template-columns: 1fr;
  }
  .sube-panel .hours-actions {
    width: 100%;
  }
  .sube-panel .hours-actions .btn {
    flex: 1 1 auto;
  }
  .sube-panel .firma-edit-actions-btns {
    display: grid;
    grid-template-columns: 1fr 1fr;
    width: 100%;
  }
  .sube-panel .firma-edit-actions-btns .btn-primary {
    grid-column: 1 / -1;
  }
}

body.odeme-modal-open { overflow: hidden; }
.odeme-modal[hidden] { display: none !important; }
.odeme-sr {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  min-width: 0 !important;
  min-height: 0 !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  clip-path: inset(50%) !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  opacity: 0 !important;
  pointer-events: none !important;
  white-space: nowrap !important;
}
.dash-shop .odeme-modal input.odeme-sr:focus,
.dash-shop .odeme-modal input[type="radio"]:focus {
  border-color: transparent;
  box-shadow: none;
}
.odeme-modal-panel {
  width: min(520px, 100%);
  max-height: min(90vh, 780px);
  display: flex;
  flex-direction: column;
  overflow: hidden;
  padding: 18px 18px 16px;
  container-type: inline-size;
  container-name: odeme;
}
.odeme-modal.is-paytr-open .odeme-modal-panel {
  width: min(640px, 100%);
}
.odeme-modal-head {
  margin-bottom: 14px;
  flex-shrink: 0;
}
.odeme-modal-paket {
  margin: 4px 0 0;
  font-size: 13px;
  color: var(--shop-muted, var(--muted));
}
.odeme-modal-body {
  display: grid;
  gap: 16px;
  min-height: 0;
  overflow: auto;
  padding-right: 2px;
}
.odeme-sure { margin: 0; }
.odeme-sure-label {
  margin: 0 0 8px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--shop-muted, var(--muted));
}
.odeme-sure-group {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}
.odeme-sure-group[hidden] { display: none !important; }
.odeme-sure-option {
  position: relative;
  display: block;
  margin: 0;
  cursor: pointer;
  min-width: 0;
}
.odeme-sure-card {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
  width: 100%;
  height: 100%;
  min-height: 86px;
  padding: 12px 12px 12px 14px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #f7fafc;
  position: relative;
  transition: border-color 0.15s ease, background 0.15s ease, box-shadow 0.15s ease;
}
.odeme-sure-dot {
  position: absolute;
  top: 12px;
  right: 12px;
  display: block;
  width: 16px;
  height: 16px;
  border: 2px solid #c5d0d4;
  border-radius: 50%;
  background: #fff;
  flex-shrink: 0;
}
.odeme-sure-option:hover .odeme-sure-card {
  border-color: var(--shop-accent, var(--accent));
  background: #fff;
}
.odeme-sure-option input:checked + .odeme-sure-card {
  border-color: var(--shop-accent, var(--accent));
  background: color-mix(in srgb, var(--shop-accent, var(--accent)) 8%, #fff);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--shop-accent, var(--accent)) 18%, transparent);
}
.odeme-sure-option input:checked + .odeme-sure-card .odeme-sure-dot {
  border-color: var(--shop-accent, var(--accent));
}
.odeme-sure-option input:checked + .odeme-sure-card .odeme-sure-dot::after {
  content: "";
  position: absolute;
  inset: 3px;
  border-radius: 50%;
  background: var(--shop-accent, var(--accent));
}
.odeme-sure-option input:focus-visible + .odeme-sure-card {
  outline: 2px solid var(--shop-accent, var(--accent));
  outline-offset: 2px;
}
.odeme-sure-text {
  display: grid;
  gap: 2px;
  padding-right: 22px;
  min-width: 0;
}
.odeme-sure-gun {
  font-size: 13px;
  font-weight: 600;
  color: var(--shop-ink, var(--navy));
}
.odeme-sure-price {
  font-size: 18px;
  font-weight: 700;
  letter-spacing: -0.02em;
  color: var(--shop-accent, var(--accent));
  line-height: 1.15;
}
.odeme-sure-text small {
  font-size: 11px;
  color: var(--shop-muted, var(--muted));
}
.odeme-yontemler {
  display: grid;
  gap: 10px;
}
.odeme-yontem {
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #fff;
  overflow: hidden;
}
.odeme-yontem.is-open:not(.is-only) {
  border-color: var(--shop-accent, var(--accent));
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--shop-accent, var(--accent)) 16%, transparent);
}
.odeme-yontem.is-only {
  border-color: var(--line);
  box-shadow: none;
  background: #fff;
}
.odeme-yontem-head {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 14px 16px 10px;
  margin: 0;
  cursor: pointer;
  position: relative;
}
.odeme-yontem.is-only .odeme-yontem-head {
  cursor: default;
  padding-bottom: 4px;
}
.odeme-yontem-radio {
  width: 18px;
  height: 18px;
  margin-top: 2px;
  border: 2px solid var(--line);
  border-radius: 50%;
  flex-shrink: 0;
  position: relative;
  background: #fff;
}
.odeme-yontem.is-open .odeme-yontem-radio {
  border-color: var(--shop-accent, var(--accent));
}
.odeme-yontem.is-open .odeme-yontem-radio::after {
  content: "";
  position: absolute;
  inset: 3px;
  border-radius: 50%;
  background: var(--shop-accent, var(--accent));
}
.odeme-yontem-copy {
  display: grid;
  gap: 2px;
  min-width: 0;
}
.odeme-yontem-copy strong {
  font-size: 14px;
  color: var(--shop-ink, var(--navy));
}
.odeme-yontem-copy small {
  font-size: 12px;
  color: var(--shop-muted, var(--muted));
  line-height: 1.4;
}
.odeme-yontem-body {
  display: grid;
  gap: 12px;
  padding: 0 16px 16px;
}
.odeme-yontem-body[hidden] { display: none !important; }
.odeme-modal .odeme-submit { width: 100%; }
.odeme-modal .field {
  color: var(--shop-ink, var(--navy));
}
.odeme-modal input[type="text"],
.odeme-modal textarea {
  min-height: 44px;
  padding: 10px 12px;
}
.odeme-modal textarea { min-height: 72px; }
.odeme-havale-box {
  display: grid;
  gap: 12px;
  padding: 12px 14px;
  border-radius: 6px;
  background: #f7fafc;
  border: 1px solid var(--line);
}
.odeme-havale-meta {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px 16px;
}
.odeme-havale-meta span,
.odeme-iban-block > span {
  display: block;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--shop-muted, var(--muted));
  margin-bottom: 2px;
}
.odeme-havale-meta strong,
.odeme-iban-value {
  display: block;
  font-size: 13px;
  color: var(--shop-ink, var(--navy));
  overflow-wrap: anywhere;
}
.odeme-iban-line {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}
.odeme-iban-value {
  font-family: ui-monospace, "Cascadia Mono", Consolas, monospace;
  font-size: 12px;
  letter-spacing: 0.04em;
  flex: 1 1 auto;
  min-width: 0;
}
.odeme-iban-copy {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 32px;
  padding: 0 10px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #fff;
  color: var(--shop-ink, var(--navy));
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
  flex-shrink: 0;
}
.odeme-iban-copy:hover { border-color: var(--shop-accent, var(--accent)); }
.odeme-iban-copy.is-copied {
  border-color: var(--ok);
  color: var(--ok);
}
.odeme-havale-hint {
  margin: 0;
  font-size: 12px;
  color: var(--shop-muted, var(--muted));
  line-height: 1.45;
}
.odeme-optional {
  font-weight: 400;
  color: var(--shop-muted, var(--muted));
}
.odeme-paytr-lead {
  margin: 0;
  font-size: 13px;
  color: var(--shop-muted, var(--muted));
}
.paytr-frame-wrap {
  border: 1px solid var(--line);
  border-radius: 6px;
  overflow: hidden;
  background: #fff;
}
.paytr-frame-wrap iframe {
  display: block;
  width: 100%;
  min-height: 720px;
  background: #fff;
}

@container odeme (max-width: 430px) {
  .odeme-sure-group {
    grid-template-columns: 1fr;
  }
  .odeme-sure-card {
    min-height: 0;
    flex-direction: row;
    align-items: center;
    gap: 10px;
    padding: 12px 14px;
  }
  .odeme-sure-dot {
    position: relative;
    top: auto;
    right: auto;
  }
  .odeme-sure-text {
    flex: 1 1 auto;
    padding-right: 0;
  }
  .odeme-sure-price {
    font-size: 16px;
    margin-left: auto;
  }
  .odeme-havale-meta {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 560px) {
  .odeme-sure-group {
    grid-template-columns: 1fr;
  }
  .odeme-sure-card {
    min-height: 0;
    flex-direction: row;
    align-items: center;
    gap: 10px;
    padding: 12px 14px;
  }
  .odeme-sure-dot { position: relative; top: auto; right: auto; }
  .odeme-sure-text { padding-right: 0; flex: 1 1 auto; }
  .odeme-sure-price { font-size: 16px; margin-left: auto; }
  .odeme-havale-meta { grid-template-columns: 1fr; }
}

.map-band {
  position: relative;
  background: var(--blue-dark);
  color: #f0f9ff;
  padding: 72px 0 80px;
  overflow: hidden;
  scroll-margin-top: 72px;
}
.map-band .wrap > .section-head {
  margin-bottom: 28px;
}
.tr-map-canvas-head {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 3;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 20px;
  padding: 22px 22px 0;
  pointer-events: none;
}
.tr-map-canvas-head > div {
  max-width: 34ch;
  min-width: 0;
  pointer-events: auto;
}
.tr-map-canvas-head .btn,
.tr-map-canvas-actions .tr-map-locate {
  flex-shrink: 0;
  margin-bottom: 2px;
  pointer-events: auto;
}
.tr-map-canvas-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
  pointer-events: auto;
  flex-shrink: 0;
}
.tr-map-canvas-head h2 {
  font-family: var(--display);
  text-transform: none;
  letter-spacing: -0.03em;
  font-size: clamp(26px, 3.2vw, 38px);
  font-weight: 500;
  color: #f0f9ff;
  line-height: 1.08;
  margin-top: 8px;
}
.tr-map-canvas-head p {
  color: rgba(240, 249, 255, 0.62);
  margin-top: 8px;
  font-size: 14px;
  line-height: 1.45;
}
.map-band-fx {
  position: absolute;
  inset: 0;
  pointer-events: none;
  overflow: hidden;
}
.map-orb {
  position: absolute;
  border-radius: 50%;
  filter: blur(70px);
}
.map-orb-a {
  width: 460px;
  height: 460px;
  left: -8%;
  top: -12%;
  background: radial-gradient(circle, rgba(var(--gold-rgb),0.28), transparent 68%);
  animation: orb-drift-a 14s ease-in-out infinite alternate;
}
.map-orb-b {
  width: 380px;
  height: 380px;
  right: -6%;
  bottom: -18%;
  background: radial-gradient(circle, rgba(var(--accent-rgb),0.22), transparent 70%);
  animation: orb-drift-b 16s ease-in-out infinite alternate;
}
.map-band .section-head h2 {
  font-family: var(--display);
  text-transform: none;
  letter-spacing: -0.03em;
  font-size: clamp(34px, 4.4vw, 52px);
  font-weight: 500;
  color: #f0f9ff;
  line-height: 1.08;
}
.map-band .section-head p {
  color: rgba(240, 249, 255, 0.62);
  max-width: 46ch;
}
.map-band .eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: var(--gold);
  margin-bottom: 12px;
}
.tr-map-live {
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--gold);
  box-shadow: 0 0 0 0 rgba(var(--gold-rgb), 0.7);
  animation: live-ping 1.7s ease-out infinite;
}
.tr-map {
  display: grid;
  grid-template-columns: minmax(0, 1.58fr) minmax(280px, 0.74fr);
  gap: 0;
  position: relative;
  z-index: 1;
  background:
    linear-gradient(180deg, rgba(255,248,240,0.04), transparent 28%),
    #1a1512;
  border: 1px solid rgba(var(--gold-rgb), 0.22);
  border-radius: 8px;
  box-shadow:
    0 40px 80px rgba(0, 0, 0, 0.38),
    inset 0 1px 0 rgba(255, 248, 240, 0.08);
  overflow: hidden;
}
.tr-map-canvas {
  position: relative;
  padding: 132px 18px 28px 16px;
  overflow: hidden;
  overscroll-behavior: contain;
  background:
    radial-gradient(ellipse at 18% 12%, rgba(var(--gold-rgb),0.18), transparent 42%),
    radial-gradient(ellipse at 82% 88%, rgba(var(--accent-rgb),0.1), transparent 46%),
    linear-gradient(165deg, #0b1f33 0%, #071523 100%);
}
.tr-map-glow {
  position: absolute;
  inset: 8% 12% auto;
  height: 46%;
  background: radial-gradient(ellipse at 50% 40%, rgba(var(--gold-rgb),0.2), transparent 68%);
  pointer-events: none;
  animation: gold-breathe 5.5s ease-in-out infinite;
}
.tr-map-hint {
  position: absolute;
  left: 18px;
  bottom: 14px;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin: 0;
  padding: 6px 10px;
  border-radius: 999px;
  background: rgba(var(--navy-rgb), 0.62);
  border: 1px solid rgba(var(--gold-rgb), 0.2);
  color: rgba(240, 249, 255, 0.72);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.04em;
  backdrop-filter: blur(10px);
}
.tr-map-hint .ico { color: var(--gold); }
.tr-map-svg {
  position: relative;
  z-index: 1;
  width: 100%;
  height: auto;
  display: block;
  overflow: hidden;
  touch-action: manipulation;
  -webkit-tap-highlight-color: transparent;
  filter: drop-shadow(0 18px 28px rgba(0, 0, 0, 0.28));
}
.tr-map-zoom {
  position: absolute;
  right: 16px;
  bottom: 16px;
  z-index: 4;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.tr-map-zoom-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  padding: 0;
  border-radius: 6px;
  border: 1px solid rgba(240, 249, 255, 0.22);
  background: #0b1f33;
  color: #f0f9ff;
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
  backdrop-filter: blur(10px);
}
.tr-map-zoom-btn:hover {
  border-color: rgba(var(--gold-rgb), 0.5);
  background: rgba(var(--gold-rgb), 0.16);
  color: #fff8e8;
}
.tr-map-zoom-btn .ico { color: currentColor; }
.tr-count-bg-rect {
  fill: #082033;
  stroke: #7dd3fc;
  stroke-width: 1.1;
}
.tr-count-region .tr-count-num {
  font-size: 6.6px;
}
.tr-map-svg path {
  fill: #1a3654;
  stroke: rgba(var(--gold-rgb), 0.16);
  stroke-width: 0.9;
  transition: fill 0.28s ease, stroke 0.28s ease;
}
.tr-map-svg g[data-iladi] { cursor: pointer; }
.tr-map-svg g[data-iladi]:hover path {
  fill: #245073;
  stroke: rgba(var(--gold-rgb), 0.42);
}
.tr-map-svg g.has-store > path,
.tr-map-svg g[data-iladi].has-store path {
  fill: #38bdf8;
  stroke: rgba(186, 230, 253, 0.28);
}
.tr-map-svg g[data-iladi].has-store:hover path {
  fill: #7dd3fc;
  stroke: #7dd3fc;
}
.tr-map-svg g[data-iladi].is-on path {
  fill: #bae6fd;
  stroke: #e0f2fe;
}
.tr-map-svg #kuzey-kibris path { fill: #0b1f33; stroke: transparent; }
.tr-map-pins { pointer-events: none; }
.tr-map-counts { pointer-events: none; }
.tr-count {
  pointer-events: auto;
  cursor: pointer;
  outline: none;
  filter: none;
}
.tr-count-bg {
  fill: #0284c7;
  stroke: #e0f2fe;
  stroke-width: 1.2;
  filter: none;
}
.tr-count:hover .tr-count-bg,
.tr-count:focus-visible .tr-count-bg {
  fill: #38bdf8;
  stroke: #f0f9ff;
}
.tr-count-num {
  fill: #f0f9ff;
  font-family: "Plus Jakarta Sans", "Poppins", sans-serif;
  font-size: 7.2px;
  font-weight: 800;
  pointer-events: none;
  filter: none;
}
.tr-count-label {
  fill: #e0f2fe;
  stroke: none;
  font-family: "Plus Jakarta Sans", "Poppins", sans-serif;
  font-size: 4.2px;
  font-weight: 700;
  pointer-events: none;
  filter: none;
}
.tr-pin {
  pointer-events: auto;
  cursor: pointer;
  outline: none;
  touch-action: manipulation;
}
.tr-pin-hit {
  fill: transparent;
  stroke: none;
  pointer-events: all;
}
.tr-pin-halo {
  fill: rgba(186, 230, 253, 0.22);
}
.tr-pin-dot {
  fill: #f0f9ff;
  stroke: #0369a1;
  stroke-width: 1.6;
}
.tr-pin-core {
  fill: var(--accent);
}
.tr-pin-ring {
  fill: rgba(186, 230, 253, 0.35);
  transform-origin: center;
  transform-box: fill-box;
  animation: tr-pin-pulse 2.4s ease-out infinite;
}
.tr-pin.is-onayli .tr-pin-core { fill: #7dd3fc; }
.tr-pin.is-sponsor .tr-pin-dot { stroke: var(--gold); }
.tr-pin.is-on .tr-pin-dot { fill: var(--gold-ink); stroke: #7dd3fc; }
.tr-pin.is-on .tr-pin-core { fill: #7dd3fc; }
.tr-pin.is-on .tr-pin-ring { fill: rgba(243, 224, 188, 0.45); }
.tr-pin:focus-visible .tr-pin-dot {
  stroke: #f0f9ff;
  stroke-width: 2.4;
}
@keyframes tr-pin-pulse {
  0% { transform: scale(0.7); opacity: 0.55; }
  100% { transform: scale(2.1); opacity: 0; }
}
.tr-map-tip {
  position: absolute;
  z-index: 4;
  padding: 8px 12px;
  background: rgba(var(--navy-rgb), 0.92);
  color: #f0f9ff;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.01em;
  border-radius: 6px;
  border: 1px solid rgba(var(--gold-rgb), 0.35);
  pointer-events: none;
  white-space: nowrap;
  transform: translate(-50%, calc(-100% - 14px));
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.32);
  backdrop-filter: blur(12px);
}
.tr-map-tip::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -5px;
  width: 8px;
  height: 8px;
  background: rgba(var(--navy-rgb), 0.92);
  border-right: 1px solid rgba(var(--gold-rgb), 0.35);
  border-bottom: 1px solid rgba(var(--gold-rgb), 0.35);
  transform: translateX(-50%) rotate(45deg);
}
.tr-map-panel {
  display: flex;
  flex-direction: column;
  min-height: 0;
  padding: 26px 22px 20px;
  border-left: 1px solid rgba(var(--gold-rgb), 0.16);
  background:
    linear-gradient(180deg, rgba(var(--gold-rgb),0.07), transparent 22%),
    #161210;
  backdrop-filter: blur(16px);
  color-scheme: dark;
}
.tr-map-kicker {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--gold);
}
.tr-map-panel h3 {
  font-family: var(--display);
  font-size: 30px;
  font-weight: 500;
  letter-spacing: -0.03em;
  line-height: 1.15;
  margin-top: 6px;
  color: #f0f9ff;
}
.tr-map-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 18px;
  margin: 14px 0 18px;
  padding-bottom: 16px;
  border-bottom: 1px solid rgba(var(--gold-rgb), 0.12);
  font-size: 12px;
  font-weight: 500;
  color: rgba(240, 249, 255, 0.58);
}
.tr-dot {
  display: inline-block;
  width: 9px;
  height: 9px;
  margin-right: 6px;
  border-radius: 50%;
  background: #1a3654;
  border: 1px solid rgba(var(--gold-rgb), 0.28);
  vertical-align: 0;
}
.tr-dot-on {
  background: #38bdf8;
  border-color: #bae6fd;
  box-shadow: 0 0 8px rgba(var(--gold-rgb), 0.45);
}
.tr-dot-mine {
  background: var(--gold);
  border-color: #fff4d6;
  box-shadow: 0 0 8px rgba(var(--gold-rgb), 0.55);
}
.tr-map-locate {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 42px;
  padding: 0 14px;
  border-radius: 999px;
  border: 1px solid rgba(240, 249, 255, 0.28);
  background: #0b1f33;
  background-color: #0b1f33;
  color: #f0f9ff;
  font: inherit;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
  backdrop-filter: blur(12px);
  transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}
.tr-map-locate .ico { color: var(--gold); }
.tr-map-locate:hover,
.tr-map-locate.is-on {
  background: rgba(var(--gold-rgb), 0.18);
  border-color: rgba(var(--gold-rgb), 0.55);
  color: #fff8e8;
}
.tr-map-locate.is-busy {
  opacity: 0.7;
  pointer-events: none;
}
.tr-map-crumbs {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  margin: 0 0 10px;
}
.tr-map-crumb {
  appearance: none;
  border: 0;
  background: none;
  padding: 0;
  font: inherit;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(240, 249, 255, 0.52);
}
button.tr-map-crumb {
  color: var(--gold);
  cursor: pointer;
}
button.tr-map-crumb:hover { color: #bae6fd; }
.tr-map-crumb + .tr-map-crumb::before {
  content: "/";
  margin-right: 6px;
  color: rgba(240, 249, 255, 0.28);
  font-weight: 500;
}
.tr-map-you {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin: -4px 0 14px;
  padding: 10px 12px;
  border-radius: 6px;
  background: rgba(var(--gold-rgb), 0.12);
  border: 1px solid rgba(var(--gold-rgb), 0.32);
  color: #fff4d6;
  font-size: 12px;
  font-weight: 600;
}
.tr-map-you > span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}
.tr-map-you.is-err {
  background: rgba(248, 113, 113, 0.12);
  border-color: rgba(248, 113, 113, 0.35);
  color: #fecaca;
}
.tr-map-you-close {
  -webkit-appearance: none;
  appearance: none;
  flex-shrink: 0;
  border: 1px solid rgba(240, 249, 255, 0.22);
  background: transparent;
  color: rgba(240, 249, 255, 0.72);
  border-radius: 999px;
  font: inherit;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  padding: 6px 10px;
  cursor: pointer;
}
.tr-map-you-close:hover {
  color: #f0f9ff;
  border-color: rgba(240, 249, 255, 0.4);
}
.tr-map-you-go {
  -webkit-appearance: none;
  appearance: none;
  flex-shrink: 0;
  border: 1px solid rgba(186, 230, 253, 0.35);
  background: #12263a;
  background-color: #12263a;
  color: #e0f2fe;
  border-radius: 999px;
  font: inherit;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  padding: 6px 10px;
  cursor: pointer;
}
.tr-map-districts {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin: 0 0 14px;
  max-height: 220px;
  overflow: auto;
  padding-right: 4px;
}
.tr-map-districts::-webkit-scrollbar { width: 6px; }
.tr-map-districts::-webkit-scrollbar-thumb {
  background: rgba(var(--gold-rgb), 0.32);
  border-radius: 99px;
}
.tr-map-districts-head {
  margin: 0;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(240, 249, 255, 0.5);
}
.tr-map-districts-side {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--gold);
  margin-top: 4px;
}
.tr-map-districts-row {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
button.tr-map-district {
  -webkit-appearance: none;
  appearance: none;
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  gap: 6px;
  min-height: 34px;
  padding: 5px 10px 5px 12px;
  border-radius: 999px;
  border: 1px solid rgba(186, 230, 253, 0.18);
  background: #12263a;
  background-color: #12263a;
  color: #e0f2fe;
  font-family: inherit;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.2;
  cursor: pointer;
  text-align: left;
  box-shadow: none;
}
button.tr-map-district .tr-map-district-name {
  color: #e0f2fe;
  font-weight: 700;
}
button.tr-map-district .tr-map-district-meta {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.04em;
  color: rgba(186, 230, 253, 0.55);
}
button.tr-map-district.has-store {
  border-color: rgba(56, 189, 248, 0.42);
  background: #16324a;
  background-color: #16324a;
}
button.tr-map-district.has-store .tr-map-district-meta { color: #7dd3fc; }
button.tr-map-district.is-on,
button.tr-map-district:hover {
  border-color: #7dd3fc;
  background: #1e4970;
  background-color: #1e4970;
}
button.tr-map-district.is-on .tr-map-district-name,
button.tr-map-district:hover .tr-map-district-name { color: #f0f9ff; }
button.tr-map-district.is-mine {
  border-color: rgba(232, 201, 138, 0.7);
  box-shadow: inset 0 0 0 1px rgba(232, 201, 138, 0.35);
}
button.tr-map-district.is-mine .tr-map-district-meta { color: #e8c98a; }
.tr-map-item.is-mine {
  border-color: rgba(var(--gold-rgb), 0.55);
  background: rgba(var(--gold-rgb), 0.12);
}
.tr-map-near-tag {
  display: inline-block;
  margin-left: 8px;
  padding: 1px 7px;
  border-radius: 999px;
  background: var(--gold);
  color: var(--gold-ink);
  font-style: normal;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  vertical-align: 1px;
}
.tr-map-near {
  -webkit-appearance: none;
  appearance: none;
  margin: 8px 6px 0 0;
  padding: 6px 10px;
  border-radius: 999px;
  border: 1px solid rgba(56, 189, 248, 0.4);
  background: #16324a;
  background-color: #16324a;
  color: #e0f2fe;
  font: inherit;
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
}
.tr-map-svg g[data-iladi].is-dim:not(.has-store) path {
  fill: #12263a;
  stroke: rgba(var(--gold-rgb), 0.08);
}
.tr-map-svg g[data-iladi].is-dim {
  opacity: 0.45;
}
.tr-map.is-zoomed .tr-map-svg #kuzey-kibris {
  opacity: 0.35;
}
.tr-map.is-zoomed .tr-pin-ring {
  animation: none;
  opacity: 0;
}
.tr-map.is-zoomed .tr-pin-halo {
  fill: rgba(186, 230, 253, 0.12);
}
.tr-map-svg g[data-iladi].is-mine path {
  stroke: var(--gold);
  stroke-width: 1.5;
}
.tr-map-svg g[data-iladi].is-mine.has-store path {
  fill: #38bdf8;
  stroke: var(--gold);
}
.tr-map-svg g[data-iladi].is-mine.is-on path,
.tr-map-svg g[data-iladi].is-mine.has-store.is-on path {
  fill: #bae6fd;
  stroke: var(--gold);
}
.tr-map.is-zoomed .tr-map-svg {
  transition: none;
  filter: none;
}
.tr-map.is-zoomed .tr-map-svg g[data-iladi] path {
  vector-effect: non-scaling-stroke;
}
.tr-map.has-districts .tr-map-svg g[data-iladi].is-on path {
  fill: #bae6fd;
  stroke: #e0f2fe;
}
.tr-map-ilceler { pointer-events: none; }
.tr-map.has-districts .tr-map-ilceler { pointer-events: auto; }
.tr-map.has-districts .tr-map-svg #istanbul-asya path,
.tr-map.has-districts .tr-map-svg #istanbul-avrupa path {
  fill: #16324a;
  stroke: rgba(186, 230, 253, 0.2);
}
.tr-ilce {
  pointer-events: auto;
  cursor: pointer;
  outline: none;
}
.tr-ilce path {
  fill: #1a3654;
  stroke: rgba(186, 230, 253, 0.55);
  stroke-width: 0.45;
  transition: fill 0.2s ease, stroke 0.2s ease;
}
.tr-ilce.has-store path {
  fill: #38bdf8;
  stroke: rgba(224, 242, 254, 0.55);
}
.tr-ilce.has-store:hover path,
.tr-ilce:hover path {
  fill: #7dd3fc;
  stroke: #e0f2fe;
}
.tr-ilce.is-on path,
.tr-ilce.is-on.has-store path {
  fill: #bae6fd;
  stroke: #f0f9ff;
}
.tr-ilce.is-mine path {
  stroke: #e8c98a;
  stroke-width: 0.7;
}
.tr-ilce.is-mine.has-store path { fill: #38bdf8; }
.tr-ilce.is-mine.is-on path,
.tr-ilce.is-mine.has-store.is-on path { fill: #bae6fd; }
.tr-pin.is-hidden,
.tr-count.is-hidden,
.tr-you-pin.is-hidden { display: none; }
.tr-you-pin { pointer-events: none; }
.tr-pin.is-mine .tr-pin-dot {
  fill: var(--gold-ink);
  stroke: var(--gold);
}
.city-chip-locate {
  appearance: none;
  font-family: inherit;
  cursor: pointer;
  border-color: rgba(var(--accent-rgb), 0.35);
  background: rgba(var(--accent-rgb), 0.08);
  color: var(--accent);
  gap: 6px;
}
.city-chip-locate:hover,
.city-chip-locate.is-on {
  background: var(--gold);
  border-color: var(--gold);
  color: var(--gold-ink);
}
.city-chip-locate.is-busy { opacity: 0.65; pointer-events: none; }
.tr-map-mobile-filters {
  display: none;
  flex-wrap: wrap;
  gap: 8px;
  margin: -4px 0 14px;
}
.tr-map-mobile-chip {
  appearance: none;
  border: 1px solid rgba(var(--gold-rgb), 0.24);
  border-radius: 999px;
  background: rgba(var(--navy-rgb), 0.42);
  color: rgba(240, 249, 255, 0.88);
  font: inherit;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.2;
  padding: 9px 12px;
  min-height: 40px;
  cursor: pointer;
  touch-action: manipulation;
  transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}
.tr-map-mobile-chip.is-on,
.tr-map-mobile-chip:hover {
  background: rgba(var(--gold-rgb), 0.18);
  border-color: rgba(var(--gold-rgb), 0.48);
  color: #f0f9ff;
}
.tr-map-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
  overflow: auto;
  max-height: 430px;
  padding-right: 6px;
}
.tr-map-list::-webkit-scrollbar { width: 6px; }
.tr-map-list::-webkit-scrollbar-thumb {
  background: rgba(var(--gold-rgb), 0.32);
  border-radius: 99px;
}
.tr-map-item {
  position: relative;
  z-index: 0;
  display: grid;
  gap: 3px;
  padding: 13px 14px 12px;
  border: 1px solid rgba(255, 248, 240, 0.08);
  border-radius: 6px;
  background: rgba(255, 248, 240, 0.035);
  color: #f0f9ff;
  overflow: visible;
  transition: border-color 0.22s ease, background 0.22s ease, transform 0.22s ease, box-shadow 0.22s ease;
}
.tr-map-item:hover,
.tr-map-item.is-on {
  z-index: 3;
  border-color: rgba(var(--gold-rgb), 0.48);
  background: rgba(var(--gold-rgb), 0.1);
  transform: translateY(-2px);
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.22);
}
.tr-map-item-place {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: rgba(240, 249, 255, 0.5);
}
.tr-map-item strong {
  font-size: 15px;
  font-weight: 600;
  letter-spacing: -0.02em;
  color: #f0f9ff;
}
.tr-map-rating {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-top: 2px;
  font-size: 12px;
  font-weight: 600;
  color: rgba(240, 249, 255, 0.78);
}
.tr-map-rating .star { color: rgba(240, 249, 255, 0.22); }
.tr-map-rating .star.is-on { color: var(--gold); }
.tr-map-rating .star.is-half .star-fill { color: var(--gold); }
.tr-map-rating.is-empty { font-weight: 500; color: rgba(240, 249, 255, 0.5); }
.tr-map-item-foot {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 6px;
}
.tr-map-badge.firma-badge {
  width: 24px;
  height: 24px;
  flex-shrink: 0;
  color: #7dd3fc;
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(125, 211, 252, 0.32);
  box-shadow: none;
}
.tr-map-badge.firma-badge-sponsor {
  color: var(--gold-ink);
  background: var(--gold);
  border-color: var(--gold);
}
.tr-map-badge.firma-badge-icon::after {
  top: 50%;
  bottom: auto;
  left: calc(100% + 10px);
  transform: translate(6px, -50%);
  width: max-content;
  max-width: min(200px, calc(100% + 160px));
  background: #0b1f33;
  border: 1px solid rgba(var(--gold-rgb), 0.35);
  z-index: 8;
}
.tr-map-badge.firma-badge-icon::before {
  top: 50%;
  bottom: auto;
  left: calc(100% + 4px);
  transform: translate(6px, -50%);
  border-width: 6px 6px 6px 0;
  border-color: transparent #0b1f33 transparent transparent;
  z-index: 9;
}
.tr-map-badge.firma-badge-icon:hover::after,
.tr-map-badge.firma-badge-icon:focus-visible::after {
  transform: translate(0, -50%);
}
.tr-map-badge.firma-badge-icon:hover::before,
.tr-map-badge.firma-badge-icon:focus-visible::before {
  transform: translate(0, -50%);
}
.tr-map-item-go {
  margin-left: auto;
  font-size: 12px;
  font-weight: 600;
  color: var(--gold);
}
.tr-map-item:hover .tr-map-item-go,
.tr-map-item.is-on .tr-map-item-go {
  color: #bae6fd;
}
.tr-map-empty {
  font-size: 14px;
  color: rgba(240, 249, 255, 0.58);
  margin-top: 8px;
}
.tr-map-empty a {
  color: var(--gold);
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.tr-map-you[hidden],
.tr-map-empty[hidden],
.tr-map-reset[hidden],
.tr-map-crumbs[hidden],
.tr-map-tip[hidden] {
  display: none !important;
}
.tr-map-reset {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 16px;
  padding: 8px 12px;
  border-radius: 999px;
  font-size: 13px;
  font-weight: 600;
  color: #f0f9ff;
  border: 1px solid rgba(var(--gold-rgb), 0.28);
  background: rgba(var(--gold-rgb), 0.08);
}
.tr-map-reset:hover {
  color: var(--gold-ink);
  background: var(--gold);
  border-color: var(--gold);
}

.tr-map-search { display: block; margin: 0 0 12px; }
.tr-map-search input {
  width: 100%;
  height: 42px;
  padding: 0 12px;
  border-radius: 6px;
  border: 1px solid rgba(var(--gold-rgb), 0.22);
  background: rgba(var(--navy-rgb), 0.42);
  color: #f0f9ff;
  font: inherit;
  font-size: 13px;
}
.tr-map-search input::placeholder { color: rgba(240, 249, 255, 0.42); }
.tr-map-search input:focus {
  outline: none;
  border-color: rgba(var(--gold-rgb), 0.55);
}
.tr-map-radius {
  margin: 0 0 14px;
}
.tr-map-radius-top {
  display: flex;
  justify-content: space-between;
  font-size: 12px;
  font-weight: 500;
  color: rgba(240, 249, 255, 0.58);
  margin-bottom: 8px;
}
.tr-map-radius-top strong { color: #f0f9ff; }
.tr-map-radius input[type="range"] {
  width: 100%;
  accent-color: var(--gold);
}
.tr-map-you[hidden],
.tr-map-radius[hidden] { display: none !important; }
@media (prefers-reduced-motion: reduce) {
  .tr-pin-ring { animation: none; opacity: 0.3; }
  .map-orb,
  .tr-map-glow,
  .tr-map-live { animation: none; }
}

@media (max-width: 980px) {
  .map-band { padding: 52px 0 56px; }
  .tr-map { grid-template-columns: 1fr; }
  .tr-map-canvas {
    border-radius: 8px 8px 0 0;
    display: flex;
    flex-direction: column;
    padding: 0 16px 42px;
  }
  .tr-map-canvas-head {
    position: relative;
    top: auto;
    left: auto;
    right: auto;
    z-index: 2;
    flex-direction: column;
    align-items: flex-start;
    padding: 18px 0 12px;
    pointer-events: auto;
  }
  .tr-map-canvas-head > div { max-width: none; }
  .tr-map-canvas-head .btn,
  .tr-map-canvas-actions .tr-map-locate {
    width: auto;
    flex: 1 1 auto;
    justify-content: center;
    margin-top: 10px;
    min-height: 44px;
  }
  .tr-map-canvas-actions {
    width: 100%;
    flex-direction: row;
    flex-wrap: wrap;
  }
  .tr-map-zoom {
    bottom: 14px;
    right: 12px;
  }
  .tr-map-panel {
    border-left: 0;
    border-top: 1px solid rgba(var(--gold-rgb), 0.16);
  }
  .tr-map-list { max-height: 280px; }
  .tr-map-mobile-filters { display: flex; }
}

/* ==== OPTIK SEARCH BAR (isolated — no .btn / .search-card conflicts) ==== */
.optik-search {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: stretch;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  min-height: 72px;
  margin: 0;
  padding: 0;
  border-radius: 8px;
  background: #fff;
  border: 1px solid rgba(255, 255, 255, 0.9);
  box-shadow:
    0 28px 70px rgba(7, 21, 35, 0.28),
    0 0 0 1px rgba(56, 189, 248, 0.12);
  overflow: visible;
  position: relative;
  z-index: 10;
  box-sizing: border-box;
}
.optik-search:has(.ss-wrap.is-open) {
  z-index: 40;
}
.optik-search-fields {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  min-width: 0;
  align-items: stretch;
}
.optik-search-field {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 4px;
  min-width: 0;
  min-height: 72px;
  margin: 0;
  padding: 14px 20px;
  border-right: 1px solid var(--line);
  border-radius: 0;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--muted);
  line-height: 1.2;
  cursor: pointer;
  box-sizing: border-box;
  transition: background 0.2s ease;
}
.optik-search-field:hover {
  background: rgba(56, 189, 248, 0.06);
}
.optik-search-field:first-child {
  border-radius: 8px 0 0 8px;
}
.optik-search-field:last-child {
  border-right: none;
}
.optik-search-field select,
.optik-search-field .ss-input {
  width: 100%;
  min-width: 0;
  max-width: 100%;
  border: none;
  padding: 0 18px 0 0;
  min-height: 26px;
  background-color: transparent;
  box-shadow: none;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0;
  text-transform: none;
  color: var(--ink);
  line-height: 1.3;
  outline: none;
}
.optik-search-field .ss-wrap {
  position: relative;
  width: 100%;
  min-width: 0;
}
.optik-search-field .ss-input {
  cursor: text;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%235a6573' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 0 center;
  background-size: 12px 8px;
}
.optik-search-field .ss-list {
  left: 0;
  right: 0;
  top: calc(100% + 8px);
  margin-top: 0;
  border-radius: 6px;
  max-height: min(280px, 50vh);
  box-shadow: 0 16px 40px rgba(7, 21, 35, 0.18);
}
.optik-search-field:has(.ss-wrap.is-open) {
  z-index: 80;
  position: relative;
  background: rgba(56, 189, 248, 0.08);
}
.optik-search-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  align-self: stretch;
  flex-shrink: 0;
  width: auto;
  min-width: 156px;
  max-width: 180px;
  height: auto;
  min-height: 72px;
  margin: 0;
  padding: 0 28px;
  border: 0;
  border-radius: 0 8px 8px 0;
  background: var(--gold);
  color: var(--gold-ink);
  font-family: var(--font);
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1;
  white-space: nowrap;
  cursor: pointer;
  box-shadow: none;
  box-sizing: border-box;
  transition: background 0.2s ease;
}
.optik-search-btn:hover {
  background: var(--gold-hover);
  transform: none;
  box-shadow: none;
}
.optik-search-btn .ico {
  flex-shrink: 0;
}

.hero-search-band + .map-band,
.hero + .map-band {
  padding-top: 48px;
}

@media (max-width: 980px) {
  .optik-search {
    grid-template-columns: 1fr;
    min-height: 0;
    padding: 0;
    gap: 0;
  }
  .optik-search-fields {
    grid-template-columns: 1fr;
  }
  .optik-search-field {
    min-height: 0;
    border-right: none;
    border-bottom: 1px solid var(--line);
    border-radius: 0;
  }
  .optik-search-field:first-child {
    border-radius: 8px 8px 0 0;
  }
  .optik-search-field:last-child {
    border-bottom: none;
    border-radius: 0;
  }
  .optik-search-btn {
    width: 100%;
    max-width: none;
    min-height: 52px;
    padding: 14px 28px;
    border-radius: 0 0 8px 8px;
  }
  .hero + .map-band {
    padding-top: 36px;
  }
}

/* ==== FLOATING INTRO VIDEO (bottom-right) ==== */
.or-video-bubble {
  position: fixed;
  right: max(16px, env(safe-area-inset-right, 0px));
  bottom: max(16px, env(safe-area-inset-bottom, 0px));
  z-index: 120;
  width: min(168px, calc(100vw - 32px));
  pointer-events: none;
  opacity: 0;
  visibility: hidden;
  transform: translate3d(0, 16px, 0) scale(0.96);
  transition:
    opacity 0.45s ease,
    transform 0.45s cubic-bezier(0.16, 1, 0.3, 1),
    visibility 0.45s ease;
  -webkit-transform: translate3d(0, 16px, 0) scale(0.96);
}
.or-video-bubble.is-visible {
  opacity: 1;
  visibility: visible;
  transform: translate3d(0, 0, 0) scale(1);
  -webkit-transform: translate3d(0, 0, 0) scale(1);
  pointer-events: auto;
}
.or-video-bubble.is-hidden {
  display: none !important;
}
.or-video-bubble__card {
  position: relative;
  border-radius: 8px;
  overflow: hidden;
  background: rgba(11, 31, 51, 0.92);
  border: 1px solid rgba(125, 211, 252, 0.32);
  box-shadow:
    0 20px 50px rgba(7, 21, 35, 0.42),
    0 0 28px rgba(56, 189, 248, 0.16);
  backdrop-filter: blur(18px) saturate(1.35);
  -webkit-backdrop-filter: blur(18px) saturate(1.35);
}
.or-video-bubble:not(.is-playing) .or-video-bubble__card {
  animation: or-video-card-glow 2.4s ease-in-out infinite;
}
.or-video-bubble__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 8px 10px 8px 12px;
  background: rgba(255, 255, 255, 0.06);
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}
.or-video-bubble__label {
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #e0f2fe;
  line-height: 1.2;
}
.or-video-bubble__close {
  flex: 0 0 auto;
  width: 24px;
  height: 24px;
  border: 0;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.1);
  color: #fff;
  font-size: 16px;
  line-height: 1;
  cursor: pointer;
  transition: background 0.2s ease;
}
.or-video-bubble__close:hover {
  background: rgba(255, 255, 255, 0.18);
}
.or-video-bubble__close:focus-visible {
  outline: 2px solid #7dd3fc;
  outline-offset: 2px;
}
.or-video-bubble__frame {
  position: relative;
  aspect-ratio: 784 / 1168;
  background: #0b1f33;
  overflow: hidden;
  flex: 0 0 auto;
}
.or-video-bubble__body {
  position: relative;
}
.or-video-bubble__aside {
  display: none;
}
.or-video-bubble__video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center center;
  background: #0b1f33;
}
.or-video-bubble__frame.is-playing .or-video-bubble__video {
  cursor: pointer;
}
.or-video-bubble__start {
  position: absolute;
  inset: 0;
  z-index: 4;
  display: block;
  padding: 0;
  border: 0;
  cursor: pointer;
  background: transparent;
  transition: opacity 0.35s ease, visibility 0.35s ease;
}
.or-video-bubble__body .or-video-bubble__start {
  inset: 0;
}
.or-video-bubble__body .or-video-bubble__frame.is-playing ~ .or-video-bubble__start,
.or-video-bubble__body.is-playing .or-video-bubble__start {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}
.or-video-bubble.is-playing .or-video-bubble__aside {
  display: none !important;
}
.or-video-bubble__start-shade {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(11, 31, 51, 0.35) 0%, rgba(11, 31, 51, 0.55) 42%, rgba(11, 31, 51, 0.78) 100%);
  backdrop-filter: blur(1px);
  -webkit-backdrop-filter: blur(1px);
}
.or-video-bubble__start-inner {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0;
  height: 100%;
  padding: 14px 12px 18px;
}
.or-video-bubble__tap-badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  margin-bottom: 6px;
  padding: 5px 10px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(125, 211, 252, 0.38);
  color: #e0f2fe;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  box-shadow: 0 6px 18px rgba(7, 21, 35, 0.22);
  animation: or-video-badge-float 2s ease-in-out infinite;
}
.or-video-bubble__tap-badge svg {
  flex-shrink: 0;
  animation: or-video-badge-arrow 1.2s ease-in-out infinite;
}
.or-video-bubble__arrow-guide {
  display: block;
  color: #7dd3fc;
  filter: drop-shadow(0 0 8px rgba(56, 189, 248, 0.65));
  margin: 0 0 2px;
  animation: or-video-guide-nudge 1.3s ease-in-out infinite;
}
.or-video-bubble__arrow-line {
  stroke-dasharray: 40;
  stroke-dashoffset: 40;
  animation: or-video-line-draw 1.8s ease-in-out infinite;
}
.or-video-bubble__arrow-head {
  animation: or-video-head-bounce 1.3s ease-in-out infinite;
}
.or-video-bubble__start-target {
  position: relative;
  display: grid;
  place-items: center;
  width: 58px;
  height: 58px;
  margin: 2px 0 8px;
}
.or-video-bubble__start-ring {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  border: 1px solid rgba(125, 211, 252, 0.5);
  box-shadow: 0 0 0 0 rgba(56, 189, 248, 0.4);
  animation: or-video-ring 2.2s ease-out infinite;
}
.or-video-bubble__start-icon {
  position: relative;
  z-index: 1;
  display: grid;
  place-items: center;
  width: 52px;
  height: 52px;
  border-radius: 50%;
  color: #f0f9ff;
  background: linear-gradient(145deg, #38bdf8, #0ea5e9);
  box-shadow:
    0 10px 26px rgba(56, 189, 248, 0.48),
    inset 0 1px 0 rgba(255, 255, 255, 0.35);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.or-video-bubble__start-text {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  text-align: center;
}
.or-video-bubble__start-text strong {
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.03em;
  color: #fff;
  text-shadow: 0 4px 14px rgba(0, 0, 0, 0.35);
}
.or-video-bubble__start-text em {
  font-style: normal;
  font-size: 10px;
  font-weight: 500;
  color: rgba(224, 242, 254, 0.86);
}
.or-video-bubble__start:hover .or-video-bubble__start-icon {
  transform: scale(1.05);
  box-shadow:
    0 14px 30px rgba(56, 189, 248, 0.58),
    inset 0 1px 0 rgba(255, 255, 255, 0.42);
}
.or-video-bubble__start:focus-visible {
  outline: 2px solid #7dd3fc;
  outline-offset: -4px;
}
.or-video-bubble__body.is-playing .or-video-bubble__aside {
  display: none;
}
.or-video-bubble__progress {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 3px;
  background: rgba(255, 255, 255, 0.14);
  z-index: 5;
}
.or-video-bubble__progress-fill {
  display: block;
  height: 100%;
  width: 0%;
  background: linear-gradient(90deg, #38bdf8, #7dd3fc);
  box-shadow: 0 0 10px rgba(56, 189, 248, 0.55);
  transition: width 0.12s linear;
}

body.or-video-modal-open { overflow: hidden; }

@media (max-width: 768px) {
  .or-video-bubble {
    left: max(12px, env(safe-area-inset-left, 0px));
    right: max(12px, env(safe-area-inset-right, 0px));
    width: auto;
    bottom: max(12px, env(safe-area-inset-bottom, 0px));
    z-index: 120;
  }
  .or-video-bubble.is-mobile-sheet {
    inset: 0;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    max-width: none;
    display: flex;
    align-items: center;
    justify-content: center;
    padding:
      max(16px, env(safe-area-inset-top, 0px))
      max(16px, env(safe-area-inset-right, 0px))
      max(16px, env(safe-area-inset-bottom, 0px))
      max(16px, env(safe-area-inset-left, 0px));
    z-index: 200;
    transform: none;
    -webkit-transform: none;
  }
  .or-video-bubble.is-mobile-sheet.is-visible {
    transform: none;
    -webkit-transform: none;
  }
  .or-video-bubble.is-mobile-sheet::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(7, 21, 35, 0.58);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    opacity: 0;
    transition: opacity 0.35s ease;
  }
  .or-video-bubble.is-mobile-sheet.is-visible::before {
    opacity: 1;
  }
  .or-video-bubble.is-mobile-sheet .or-video-bubble__card {
    position: relative;
    z-index: 1;
    width: min(268px, calc(100vw - 40px));
    max-height: min(68vh, 400px);
    border-radius: 8px;
    transform: scale(0.94);
    opacity: 0;
    transition:
      transform 0.35s cubic-bezier(0.16, 1, 0.3, 1),
      opacity 0.35s ease;
  }
  .or-video-bubble.is-mobile-sheet.is-visible .or-video-bubble__card {
    transform: scale(1);
    opacity: 1;
  }
  .or-video-bubble.is-mobile-sheet .or-video-bubble__body {
    display: block;
    min-height: 0;
  }
  .or-video-bubble.is-mobile-sheet .or-video-bubble__frame {
    aspect-ratio: 784 / 1168;
    width: 100%;
    max-height: none;
    min-height: 0;
    height: auto;
    margin-inline: 0;
    border-right: 0;
  }
  .or-video-bubble.is-mobile-sheet .or-video-bubble__aside {
    display: none !important;
  }
  .or-video-bubble.is-mobile-sheet .or-video-bubble__start {
    z-index: 4;
  }
  .or-video-bubble.is-mobile-sheet .or-video-bubble__start-shade {
    background:
      linear-gradient(180deg, rgba(11, 31, 51, 0.35) 0%, rgba(11, 31, 51, 0.55) 42%, rgba(11, 31, 51, 0.78) 100%);
    backdrop-filter: blur(1px);
    -webkit-backdrop-filter: blur(1px);
  }
  .or-video-bubble.is-mobile-sheet .or-video-bubble__start-inner {
    display: flex;
  }
  .or-video-bubble.is-mobile-sheet.is-playing .or-video-bubble__frame {
    width: 100%;
    max-height: none;
    margin-inline: 0;
  }
  .or-video-bubble:not(.is-visible) {
    pointer-events: none;
  }
}

@media (max-width: 720px) {
  .or-video-bubble:not(.is-mobile-sheet) {
    left: max(12px, env(safe-area-inset-left, 0px));
    right: max(12px, env(safe-area-inset-right, 0px));
    width: auto;
    bottom: max(12px, env(safe-area-inset-bottom, 0px));
    z-index: 120;
  }
  .or-video-bubble__card {
    border-radius: 8px;
  }
  .or-video-bubble__head {
    padding: 10px 12px;
  }
  .or-video-bubble__label {
    font-size: 10px;
    letter-spacing: 0.06em;
  }
  .or-video-bubble__close {
    width: 32px;
    height: 32px;
    font-size: 18px;
  }
  .or-video-bubble__body {
    display: grid;
    grid-template-columns: 108px minmax(0, 1fr);
    align-items: center;
    min-height: 0;
  }
  .or-video-bubble.is-mobile-sheet .or-video-bubble__body {
    display: block;
    min-height: 0;
  }
  .or-video-bubble__frame {
    aspect-ratio: 784 / 1168;
    width: 100%;
    height: auto;
    min-height: 0;
    align-self: center;
    border-right: 1px solid rgba(255, 255, 255, 0.08);
  }
  .or-video-bubble__aside {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 6px;
    padding: 12px 14px 12px 12px;
    pointer-events: auto;
    position: relative;
    z-index: 2;
  }
  .or-video-bubble__aside-badge {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    width: fit-content;
    padding: 4px 8px;
    border-radius: 999px;
    background: rgba(56, 189, 248, 0.16);
    border: 1px solid rgba(125, 211, 252, 0.32);
    color: #bae6fd;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    animation: or-video-badge-float 2s ease-in-out infinite;
  }
  .or-video-bubble__aside-badge svg {
    animation: or-video-badge-arrow 1.2s ease-in-out infinite;
  }
  .or-video-bubble__aside-title {
    font-size: 15px;
    font-weight: 700;
    line-height: 1.25;
    color: #fff;
    letter-spacing: -0.01em;
  }
  .or-video-bubble__aside-sub {
    font-size: 11px;
    line-height: 1.45;
    color: rgba(224, 242, 254, 0.78);
  }
  .or-video-bubble__aside-cta {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    width: fit-content;
    margin-top: 2px;
    padding: 8px 12px;
    border-radius: 999px;
    background: linear-gradient(145deg, #38bdf8, #0ea5e9);
    color: var(--gold-ink);
    font-size: 12px;
    font-weight: 700;
    box-shadow: 0 8px 20px rgba(56, 189, 248, 0.35);
    animation: or-video-badge-pulse 2s ease-in-out infinite;
  }
  .or-video-bubble__start {
    position: absolute;
    inset: 0;
    z-index: 1;
  }
  .or-video-bubble__start-shade {
    background: transparent;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    pointer-events: none;
  }
  .or-video-bubble__start-inner {
    display: none;
  }
  .or-video-bubble__aside-cta {
    pointer-events: auto;
    cursor: pointer;
  }
  .or-video-bubble.is-playing .or-video-bubble__body {
    grid-template-columns: 1fr;
  }
  .or-video-bubble.is-playing:not(.is-mobile-sheet) .or-video-bubble__frame {
    min-height: 0;
    aspect-ratio: 784 / 1168;
    width: min(100%, calc(75vh * 784 / 1168));
    max-height: 75vh;
    margin-inline: auto;
    border-right: 0;
  }
  .or-video-bubble.is-playing .or-video-bubble__aside {
    display: none !important;
  }
}

@media (max-width: 380px) {
  .or-video-bubble__body {
    grid-template-columns: 96px minmax(0, 1fr);
    min-height: 0;
  }
  .or-video-bubble__aside {
    padding: 10px 10px 10px 8px;
    gap: 4px;
  }
  .or-video-bubble__aside-title {
    font-size: 14px;
  }
  .or-video-bubble__aside-sub {
    font-size: 10px;
  }
  .or-video-bubble__aside-cta {
    padding: 7px 10px;
    font-size: 11px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .or-video-bubble {
    transition: none;
    transform: translate3d(0, 0, 0) scale(1);
    -webkit-transform: translate3d(0, 0, 0) scale(1);
  }
  .or-video-bubble.is-mobile-sheet .or-video-bubble__card,
  .or-video-bubble.is-mobile-sheet::before {
    transition: none;
    transform: none;
    opacity: 1;
  }
  .or-video-bubble:not(.is-playing) .or-video-bubble__card,
  .or-video-bubble__tap-badge,
  .or-video-bubble__tap-badge svg,
  .or-video-bubble__arrow-guide,
  .or-video-bubble__arrow-line,
  .or-video-bubble__arrow-head,
  .or-video-bubble__start-ring,
  .or-video-bubble__aside-badge,
  .or-video-bubble__aside-badge svg,
  .or-video-bubble__aside-cta {
    animation: none;
  }
  .or-video-bubble__arrow-line {
    stroke-dashoffset: 0;
  }
}

@keyframes or-video-badge-pulse {
  0%, 100% { transform: scale(1); box-shadow: 0 8px 20px rgba(56, 189, 248, 0.35); }
  50% { transform: scale(1.03); box-shadow: 0 10px 24px rgba(56, 189, 248, 0.48); }
}
@keyframes or-video-card-glow {
  0%, 100% {
    box-shadow:
      0 20px 50px rgba(7, 21, 35, 0.42),
      0 0 22px rgba(56, 189, 248, 0.14);
    border-color: rgba(125, 211, 252, 0.28);
  }
  50% {
    box-shadow:
      0 22px 54px rgba(7, 21, 35, 0.46),
      0 0 34px rgba(56, 189, 248, 0.28);
    border-color: rgba(125, 211, 252, 0.52);
  }
}
@keyframes or-video-badge-float {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-2px); }
}
@keyframes or-video-badge-arrow {
  0%, 100% { transform: translateY(0); opacity: 0.7; }
  50% { transform: translateY(2px); opacity: 1; }
}
@keyframes or-video-guide-nudge {
  0%, 100% { transform: translateY(0); opacity: 0.88; }
  50% { transform: translateY(4px); opacity: 1; }
}
@keyframes or-video-line-draw {
  0%, 100% { stroke-dashoffset: 40; opacity: 0.45; }
  45%, 55% { stroke-dashoffset: 0; opacity: 1; }
}
@keyframes or-video-head-bounce {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(3px); }
}
@keyframes or-video-ring {
  0% { transform: scale(0.94); opacity: 0.9; box-shadow: 0 0 0 0 rgba(56, 189, 248, 0.4); }
  70% { transform: scale(1.2); opacity: 0; box-shadow: 0 0 0 10px rgba(56, 189, 248, 0); }
  100% { transform: scale(1.2); opacity: 0; box-shadow: 0 0 0 0 rgba(56, 189, 248, 0); }
}

/* ==== Dashboard & panel — mobile (telefon / küçük tablet) ==== */
@media (max-width: 768px) {
  .dash-avaro .dash-main {
    padding: 16px 16px 32px;
  }
  .dash-avaro .ad-row-wrap .ad-row:not(.ad-row-carousel) {
    grid-template-columns: 1fr;
  }
  .avaro-topbar {
    flex-direction: column;
    align-items: stretch;
    min-height: 0;
    padding: 0;
    gap: 0;
  }
  .avaro-top-row {
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 64px;
    padding: 8px 14px;
    padding-top: calc(8px + env(safe-area-inset-top, 0px));
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    position: relative;
    z-index: 56;
  }
  .avaro-menu-btn {
    display: flex;
    flex-shrink: 0;
    width: 44px;
    height: 44px;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 6px;
    background: rgba(255, 255, 255, 0.06);
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 5px;
    cursor: pointer;
    padding: 0;
  }
  .avaro-menu-btn span {
    display: block;
    width: 16px;
    height: 1.5px;
    background: #fff;
    border-radius: 2px;
    transition: transform 0.25s ease, opacity 0.2s ease;
  }
  .avaro-menu-btn.is-open span:nth-child(1) {
    transform: translateY(6.5px) rotate(45deg);
  }
  .avaro-menu-btn.is-open span:nth-child(2) {
    opacity: 0;
  }
  .avaro-menu-btn.is-open span:nth-child(3) {
    transform: translateY(-6.5px) rotate(-45deg);
  }
  .avaro-top-actions {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
    margin-left: auto;
  }
  .avaro-identity {
    flex: 1 1 auto;
    min-width: 0;
    gap: 0;
  }
  .avaro-brand {
    flex: 1 1 auto;
    min-width: 0;
    padding: 0;
    gap: 10px;
  }
  .avaro-brand-text {
    display: grid;
    gap: 2px;
    min-width: 0;
  }
  .avaro-brand-text strong {
    font-size: 14px;
    letter-spacing: 0.02em;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .avaro-brand-text small {
    font-size: 11px;
    letter-spacing: 0.01em;
    min-width: 0;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .avaro-mark {
    width: 36px;
    height: 36px;
    flex-shrink: 0;
  }
  .avaro-mark svg {
    width: 22px;
    height: 22px;
  }
  .avaro-sub-row {
    display: block;
    padding: 10px 14px 12px;
  }
  .avaro-page-title {
    display: block;
    margin: 0;
    font-size: 17px;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    line-height: 1.2;
    color: #fff;
  }
  .avaro-foot {
    display: none;
  }
  .avaro-user {
    display: none;
  }
  .dash-page-head {
    display: none;
  }
  .dash-egitim-slot--desktop {
    display: none;
  }
  .dash-egitim-slot--mobile {
    display: block;
  }
  .dash-egitim-slot--mobile .hs-egitim-btn {
    min-height: 44px;
    min-width: 44px;
    padding: 0 12px;
    border-color: rgba(255, 255, 255, 0.22);
    background: rgba(255, 255, 255, 0.08);
    color: #fff;
  }
  .dash-egitim-slot--mobile .hs-egitim-btn .ico {
    color: #fff;
  }
  .dash-egitim-slot--mobile .hs-egitim-btn__text {
    display: none;
  }
  .avaro-user-trigger {
    width: 44px;
    height: 44px;
  }
  .avaro-user-trigger .avaro-avatar {
    width: 40px;
    height: 40px;
    font-size: 16px;
  }
  .avaro-user-menu {
    position: static;
  }
  .avaro-user-backdrop {
    display: block;
    position: fixed;
    inset: 0;
    z-index: 199;
    border: 0;
    padding: 0;
    margin: 0;
    background: rgba(11, 31, 51, 0.52);
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.25s ease;
  }
  .avaro-user-backdrop[hidden] {
    display: none !important;
  }
  .avaro-user-backdrop:not([hidden]) {
    opacity: 1;
    pointer-events: auto;
  }
  body.avaro-user-open {
    overflow: hidden;
  }
  .avaro-user-dropdown.is-mobile-sheet {
    position: fixed;
    top: auto;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    min-width: 0;
    max-width: none;
    margin: 0;
    border: 0;
    border-radius: 8px 8px 0 0;
    padding: 8px 12px calc(12px + env(safe-area-inset-bottom, 0px));
    box-shadow: 0 -20px 60px rgba(var(--navy-rgb), 0.28);
    z-index: 200;
    transform: translateY(0);
    animation: avaro-sheet-in 0.28s ease;
  }
  .avaro-user-dropdown.is-mobile-sheet::before {
    content: "";
    display: block;
    width: 36px;
    height: 4px;
    margin: 4px auto 12px;
    border-radius: 999px;
    background: rgba(var(--navy-rgb), 0.16);
  }
  @keyframes avaro-sheet-in {
    from { transform: translateY(100%); }
    to { transform: translateY(0); }
  }
  .avaro-dropdown-meta {
    padding: 4px 8px 14px;
    margin-bottom: 6px;
  }
  .avaro-dropdown-meta b {
    font-size: 15px;
    white-space: normal;
    word-break: break-word;
  }
  .avaro-dropdown-meta small {
    font-size: 12px;
  }
  .avaro-dropdown-item {
    min-height: 52px;
    padding: 0 14px;
    font-size: 16px;
    border-radius: 6px;
  }
  .avaro-dropdown-item + .avaro-dropdown-item {
    margin-top: 2px;
  }

  .avaro-nav-shell {
    display: none;
    background: transparent;
    border-top: 0;
  }
  .dash-admin .avaro-nav-shell,
  .dash-shop .avaro-nav-shell {
    background: transparent;
  }
  .avaro-nav-shell.is-open {
    display: block;
    position: fixed;
    inset: 0;
    z-index: 55;
    pointer-events: auto;
    visibility: visible;
  }
  .avaro-drawer-backdrop {
    display: block;
    position: absolute;
    inset: 0;
    border: 0;
    background: rgba(11, 31, 51, 0.52);
    opacity: 0;
    transition: opacity 0.25s ease;
  }
  .avaro-nav-shell.is-open .avaro-drawer-backdrop {
    opacity: 1;
  }
  .avaro-drawer-panel {
    display: flex;
    flex-direction: column;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: min(300px, 88vw);
    background: var(--navy);
    box-shadow: 8px 0 32px rgba(0, 0, 0, 0.24);
    transform: translateX(-104%);
    transition: transform 0.28s ease;
    padding-bottom: env(safe-area-inset-bottom, 0px);
  }
  .dash-shop .avaro-drawer-panel {
    background: var(--shop-header);
  }
  .dash-admin .avaro-drawer-panel {
    background: var(--admin-header);
  }
  .avaro-nav-shell.is-open .avaro-drawer-panel {
    transform: translateX(0);
  }
  .avaro-drawer-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    min-height: 56px;
    padding: 0 14px 0 18px;
    padding-top: env(safe-area-inset-top, 0px);
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    flex-shrink: 0;
  }
  .avaro-drawer-title {
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.72);
  }
  .avaro-drawer-close {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border: 0;
    border-radius: 6px;
    background: rgba(255, 255, 255, 0.08);
    color: #fff;
    font-size: 22px;
    line-height: 1;
    cursor: pointer;
  }
  .avaro-drawer-close:hover {
    background: rgba(255, 255, 255, 0.14);
  }
  .avaro-nav {
    position: static;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
    overflow-x: hidden;
    width: 100%;
    gap: 0;
    padding: 8px 0 16px;
    border: 0;
    box-shadow: none;
    order: 0;
  }
  .avaro-nav a {
    flex: 0 0 auto;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    gap: 14px;
    width: auto;
    min-width: 0;
    min-height: 0;
    max-width: none;
    padding: 16px 20px;
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 0;
    text-transform: none;
    white-space: normal;
    border-radius: 0;
  }
  .avaro-nav a span {
    display: block;
    width: auto;
    overflow: visible;
    text-overflow: unset;
    white-space: normal;
    text-align: left;
    line-height: 1.3;
    max-width: none;
  }
  .avaro-nav a svg {
    width: 22px;
    height: 22px;
    flex-shrink: 0;
  }
  .avaro-nav a.is-on::after {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    right: auto;
    top: 12px;
    bottom: 12px;
    width: 3px;
    height: auto;
    border-radius: 0 3px 3px 0;
    background: var(--gold);
  }
  .egitim-tour-toast {
    top: 88px;
    bottom: auto;
    left: auto;
    right: 16px;
  }
}

@media (max-width: 980px) {
  .appt-toolbar {
    grid-template-columns: 1fr 1fr;
  }
  .appt-toolbar .field:first-child,
  .appt-toolbar .btn {
    grid-column: 1 / -1;
  }
  .appt-toolbar .btn { width: 100%; }
  .appt-head { display: none; }
  .appt-row {
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-areas:
      "when flags"
      "store store"
      "who who";
    row-gap: 6px;
    align-items: start;
    min-height: 0;
    padding: 14px 16px;
    column-gap: 0;
    background: transparent;
  }
  .appt-row > * {
    padding: 0;
    background: transparent;
  }
  .appt-row-panel {
    grid-template-areas:
      "when flags"
      "who who"
      "store store"
      "act act";
  }
  .appt-flags { align-items: flex-end; }
  .appt-act { justify-content: stretch; }
  .appt-act .btn { flex: 1 1 0; }
  .dash-panel > .filter-bar,
  .dash-panel > .filter-bar-flush,
  .dash-avaro .filter-bar {
    flex-direction: column;
    align-items: stretch;
    gap: 12px;
  }
  .dash-panel > .filter-bar .field,
  .dash-panel > .filter-bar-flush .field,
  .dash-avaro .filter-bar .field,
  .dash-admin .filter-bar-flush .field {
    flex: 1 1 100% !important;
    width: 100%;
    padding-right: 0 !important;
    border-right: 0 !important;
  }
  .dash-panel > .filter-bar .btn,
  .dash-panel > .filter-bar-flush .btn,
  .dash-avaro .filter-bar .btn,
  .dash-avaro .filter-bar .field-submit {
    width: 100%;
  }
  .dash-panel-head {
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
  }
  .dash-list-tools > .dash-panel-head {
    flex-wrap: wrap;
  }
  .dash-list-tools-bar {
    width: 100%;
    flex-wrap: wrap;
    justify-content: stretch;
    margin-left: 0;
  }
  .dash-list-search,
  .dash-list-search input {
    width: 100%;
    flex: 1 1 100%;
  }
  .dash-list-tools-bar .btn {
    width: auto;
    flex: 1 1 auto;
  }
  .dash-list-filters {
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    transform: none;
    border-radius: 8px 8px 0 0;
    padding-bottom: calc(16px + env(safe-area-inset-bottom, 0px));
    animation-name: dash-filter-sheet-in;
  }
  .dash-list-filters .field,
  .dash-list-filters .btn {
    flex: 1 1 100%;
    max-width: none;
    width: 100%;
    margin-left: 0;
  }
  .dash-live-split {
    grid-template-columns: 1fr;
  }
  .dash-live-board-body {
    grid-template-columns: 1fr;
  }
  .dash-panel-head .btn,
  .dash-panel-head .actions {
    width: 100%;
    justify-content: center;
  }
  .dash-list-search {
    margin: 0;
  }
  .dash-list-tools-bar .btn {
    width: auto;
    flex: 1 1 calc(50% - 4px);
  }
  .table-actions {
    flex-direction: column;
    align-items: stretch;
  }
  .dash-head-filter,
  .dash-head-filter .field,
  .dash-head-filter select {
    width: 100%;
    max-width: none;
  }
  .table-actions .btn,
  .table-actions form {
    width: 100%;
  }
  .actions-stack {
    min-width: 0;
    width: 100%;
  }
  .dash-kpi,
  .dash-kpi:has(> :nth-child(5)),
  .dash-quick {
    grid-template-columns: 1fr;
  }
  .dash-panel > .form-card,
  .dash-avaro .form-card {
    padding: 16px;
  }
  .dash-avaro .table-wrap th,
  .dash-avaro .table-wrap td {
    padding: 10px 12px;
    font-size: 13px;
  }
  .ui-modal-panel {
    width: min(100vw - 24px, 480px);
    max-height: min(88vh, 720px);
    margin: 12px;
  }
  .ui-modal-panel.user-form-panel:has(.user-form) {
    width: min(100vw - 24px, 560px);
    max-height: min(92vh, 720px);
    margin: 8px;
  }
  .user-form-head,
  .user-form-scroll,
  .user-form-actions {
    padding-left: 16px;
    padding-right: 16px;
  }
  .user-form-panel .row {
    grid-template-columns: 1fr;
  }
  .ui-modal-panel.randevu-panel {
    width: min(100vw - 16px, 520px);
    max-height: min(94vh, 820px);
    margin: 8px;
  }
  .ui-modal-panel.firma-edit-panel {
    width: min(100vw - 24px, 820px);
    max-height: min(94vh, 860px);
    margin: 8px;
  }
  .ui-modal-panel.sube-panel {
    width: min(100vw - 24px, 800px);
  }
  .ui-modal-panel.seo-edit-panel {
    width: min(100vw - 24px, 920px);
    max-height: min(94vh, 860px);
    margin: 8px;
  }
  .ui-modal-panel.blog-edit-panel {
    width: min(100vw - 24px, 1100px);
    max-height: min(94vh, 900px);
    margin: 8px;
  }
  .ui-modal-panel.sube-panel .hours-days {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 520px) {
  .dash-avaro .dash-main {
    padding-left: 12px;
    padding-right: 12px;
  }
}

/* ==== Mobil menü (hamburger'ın göründüğü tüm genişlikler) ==== */
.nav-backdrop {
  display: none;
}
.nav-drawer-head {
  display: none;
}

@media (max-width: 1100px) {
  .site-header {
    z-index: 60;
    overflow: visible;
    transform: none;
    filter: none;
    contain: none;
  }

  .nav-backdrop {
    display: block;
    position: fixed;
    inset: 0;
    width: 100vw;
    height: 100%;
    height: 100dvh;
    z-index: 80;
    border: 0;
    padding: 0;
    margin: 0;
    background: rgba(var(--navy-rgb), 0.52);
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.25s ease;
    cursor: pointer;
  }
  .nav-backdrop[hidden] {
    display: none !important;
  }
  .nav-backdrop:not([hidden]) {
    opacity: 1;
    pointer-events: auto;
  }
  body.nav-open {
    overflow: hidden;
  }

  .menu-btn {
    position: relative;
    z-index: 90;
  }
  .nav-drawer-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-shrink: 0;
    padding: 14px 16px 12px;
    padding-top: calc(14px + env(safe-area-inset-top, 0px));
    border-bottom: 1px solid rgba(var(--navy-rgb), 0.08);
  }
  .nav-drawer-title {
    font-family: var(--display);
    font-size: 18px;
    font-weight: 600;
    color: var(--navy);
    letter-spacing: 0.02em;
  }
  .nav-drawer-close {
    width: 40px;
    height: 40px;
    border: 1px solid rgba(var(--navy-rgb), 0.1);
    border-radius: 6px;
    background: rgba(var(--navy-rgb), 0.04);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: var(--navy);
    flex-shrink: 0;
    transition: background 0.2s ease, border-color 0.2s ease;
  }
  .nav-drawer-close:hover {
    background: rgba(var(--navy-rgb), 0.08);
    border-color: rgba(var(--navy-rgb), 0.16);
  }
  .nav-links {
    display: flex;
    position: fixed;
    inset: 0 0 0 auto;
    z-index: 85;
    flex: none;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    gap: 0;
    width: min(340px, 100vw);
    height: 100dvh;
    max-height: none;
    margin: 0;
    padding: 0 0 calc(16px + env(safe-area-inset-bottom, 0px));
    background: #fff;
    border-radius: 0;
    border: 0;
    border-left: 1px solid rgba(var(--navy-rgb), 0.08);
    box-shadow: -8px 0 32px rgba(var(--navy-rgb), 0.12);
    visibility: hidden;
    pointer-events: none;
    transform: translate3d(100%, 0, 0);
    transition: transform 0.28s ease, visibility 0.28s ease;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
  }
  .nav-links.open {
    display: flex;
    visibility: visible;
    pointer-events: auto;
    transform: translate3d(0, 0, 0);
  }
  .nav-links .nav-menu {
    flex: 1 1 auto;
    padding: 8px 12px;
    gap: 2px;
  }
  .nav-links .nav-cta {
    flex-shrink: 0;
    margin-top: auto;
    padding: 12px 16px 0;
    gap: 8px;
  }
  .nav-links a:not(.btn) {
    min-height: 48px;
    font-size: 16px;
    padding: 12px 16px;
  }
  .nav-links .btn {
    min-height: 48px;
    font-size: 15px;
  }
}

@media (max-width: 768px) {
  :root { --gutter: 16px; }

  .site-header .nav {
    min-height: calc(64px + env(safe-area-inset-top, 0px));
    padding-top: env(safe-area-inset-top, 0px);
  }
  .site-header .brand span {
    font-size: 13px;
    letter-spacing: 0.08em;
  }
  .foot-brand .brand span {
    font-size: 13px;
    letter-spacing: 0.08em;
  }
  .site-header .brand img {
    width: 28px;
    height: 28px;
  }
  .menu-btn {
    width: 44px;
    height: 44px;
    border-radius: 6px;
  }

  .hero {
    min-height: auto;
    padding-bottom: 0;
  }
  .hero-media {
    border-radius: 0;
  }
  .hero-fx .hero-dust,
  .hero-fx .hero-beam,
  .hero-fx .hero-grain {
    display: none;
  }
  .hero-fx .hero-orb {
    opacity: 0.35;
  }
  .hero-bg {
    object-position: center 20%;
    transform: scale(1.02);
  }
  .hero-scrim {
    background:
      linear-gradient(180deg, rgba(var(--navy-rgb), 0.9) 0%, rgba(var(--navy-rgb), 0.78) 55%, rgba(var(--navy-rgb), 0.96) 100%);
  }
  .hero-inner {
    width: 100%;
    max-width: none;
    margin-inline: 0;
    padding: calc(76px + env(safe-area-inset-top, 0px)) var(--gutter) 28px;
    justify-content: flex-start;
    gap: 0;
  }
  .hero-main {
    gap: 0;
    padding: 0;
  }
  .hero-copy {
    padding-top: 0;
  }
  .hero-copy::before {
    display: none;
  }
  .hero-kicker {
    margin-bottom: 14px;
    padding: 6px 11px 6px 9px;
    font-size: 9px;
    letter-spacing: 0.14em;
  }
  .hero h1 {
    font-size: clamp(32px, 8.4vw, 44px);
    line-height: 1.08;
    text-shadow: 0 8px 28px rgba(0, 0, 0, 0.35);
  }
  .hero h1 em {
    white-space: normal;
  }
  .hero .lead {
    margin: 12px 0 0;
    font-size: 14px;
    line-height: 1.6;
    max-width: none;
    color: rgba(240, 249, 255, 0.78);
  }
  .hero-stat-mobile {
    display: block;
    margin: 10px 0 18px;
    font-size: 13px;
    font-weight: 500;
    color: rgba(186, 230, 253, 0.92);
    letter-spacing: 0.01em;
  }
  .hero-actions {
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    width: 100%;
    margin-bottom: 0;
  }
  .hero-actions .btn-gold {
    width: 100%;
    min-width: 0;
    min-height: 50px !important;
    height: 50px !important;
    max-height: 50px !important;
    padding: 0 20px !important;
    font-size: 15px;
    box-shadow: 0 8px 24px rgba(var(--gold-rgb), 0.32) !important;
  }
  .hero-actions .hero-partner-btn {
    width: auto;
    align-self: center;
    min-width: 0;
    min-height: 0 !important;
    height: auto !important;
    max-height: none !important;
    margin-top: 12px;
    padding: 4px 0 !important;
    border: 0 !important;
    background: transparent !important;
    backdrop-filter: none;
    box-shadow: none !important;
    font-size: 13px;
    font-weight: 500;
    color: rgba(240, 249, 255, 0.72) !important;
    -webkit-text-fill-color: rgba(240, 249, 255, 0.72);
    gap: 6px;
  }
  .hero-actions .hero-partner-btn .ico {
    width: 14px;
    height: 14px;
    opacity: 0.85;
  }
  .hero-trust-list,
  .hero-float {
    display: none !important;
  }
  .hero-search-band {
    margin-top: 0;
    background: var(--bg);
    padding: 20px 0 20px;
  }
  .hero-search-band .optik-search {
    margin-top: 0;
  }
  .hero-search-band .wrap {
    width: 100%;
    max-width: none;
    margin-inline: 0;
    padding-inline: var(--gutter);
  }
  .hero-search-block {
    margin: 0;
    padding: 0;
    background: transparent;
    border-radius: 0;
    box-shadow: none;
  }
  .hero-search-block::before {
    display: none;
  }
  .hero-search-foot {
    gap: 12px;
    margin-top: 12px;
  }
  .hero-search-block .quick-label {
    color: var(--muted);
  }
  .hero-search-block .city-chip {
    background: #fff;
    border-color: var(--line);
    color: var(--ink);
    backdrop-filter: none;
  }
  .hero-search-block .city-chip:hover {
    background: rgba(var(--accent-rgb), 0.08);
    border-color: var(--accent);
    color: var(--accent);
  }
  .hero-video-link {
    display: inline-flex;
    align-self: center;
  }
  .optik-search {
    border-radius: 8px;
    box-shadow: 0 8px 28px rgba(var(--navy-rgb), 0.08);
  }
  .optik-search-field {
    padding: 12px 16px;
    min-height: 56px;
  }
  .optik-search-btn {
    min-height: 50px;
    font-size: 15px;
  }
  .hero-search-block .quick-cities {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: 8px;
    margin-top: 0;
    margin-inline: 0;
    padding: 0;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-x: contain;
    scroll-snap-type: x proximity;
    scrollbar-width: none;
  }
  .hero-search-block .quick-cities::-webkit-scrollbar {
    display: none;
  }
  .hero-search-block .quick-label,
  .hero-search-block .city-chip {
    flex-shrink: 0;
    scroll-snap-align: start;
  }
  .hero-search-block .city-chip {
    min-height: 36px;
    padding: 0 12px;
    font-size: 12px;
  }
  .hero-search-band + .map-band,
  .hero + .map-band {
    padding-top: 32px;
  }

  .section {
    padding: 56px 0;
  }
  .section-tight {
    padding-top: 36px;
    padding-bottom: 36px;
  }
  .section-head {
    margin-bottom: 28px;
  }
  .section-head.split {
    gap: 16px;
  }
  .section-head.split .btn {
    width: 100%;
    justify-content: center;
  }

  .stats-band {
    padding: 40px 0 44px;
  }
  .stats-stage {
    grid-template-columns: 1fr 1fr;
    gap: 32px 18px;
    align-items: start;
  }
  .stat-cell {
    min-height: 0;
    min-width: 0;
    padding: 0;
    justify-content: flex-start;
  }
  .stat-cell:not(:last-child)::after {
    display: none;
  }
  .stat-kicker {
    font-size: 10px;
    letter-spacing: 0.2em;
    margin-bottom: 10px;
    color: #7dd3fc;
  }
  .stat-cell b {
    font-size: clamp(42px, 11vw, 58px);
    line-height: 0.95;
  }
  .stat-cell-zero b {
    font-size: clamp(38px, 10vw, 52px);
  }
  .stat-cell strong {
    margin-top: 12px;
    font-size: 14px;
    line-height: 1.25;
    color: #f0f9ff;
  }
  .stat-cell em {
    margin-top: 4px;
    font-size: 11px;
    line-height: 1.4;
    color: rgba(240, 249, 255, 0.55);
  }

  .how-band {
    padding: 48px 0;
  }
  .how-intro h2 {
    font-size: clamp(28px, 7vw, 36px);
  }
  .how-intro p {
    font-size: 15px;
  }
  .how-pills {
    flex-wrap: wrap;
  }
  a.btn.how-cta {
    width: 100%;
    justify-content: center;
  }
  .how-stage {
    padding: 16px 14px;
    border-radius: 8px;
  }
  .how-step {
    grid-template-columns: 2.8rem 2rem 1fr;
    gap: 10px;
    padding: 14px 0;
  }
  .how-step h3 {
    font-size: 15px;
  }
  .how-step p {
    font-size: 13px;
  }

  .section-services {
    padding: 52px 0 60px;
  }
  .services-head h2 {
    font-size: clamp(26px, 6.5vw, 34px);
  }
  .service-grid-rich {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }
  .service-tile {
    border-radius: 8px;
  }
  .service-tile-body {
    padding: 0 12px 14px;
    gap: 4px;
  }
  .service-tile-icon {
    width: 38px;
    height: 38px;
    margin: -18px 0 6px;
  }
  .service-tile-body strong {
    font-size: clamp(15px, 4.2vw, 18px);
  }
  .service-tile-cta {
    font-size: 10px;
    gap: 4px;
    letter-spacing: 0.02em;
  }

  .promise-band {
    padding-block: 52px;
  }
  .promise-grid .promise {
    padding: 18px 16px;
  }
  .promise-top {
    margin-bottom: 16px;
  }
  .promise-num {
    font-size: 36px;
  }

  .section-cta {
    overflow: hidden;
  }
  .cta-stage {
    padding: 24px 18px 20px;
    border-radius: 8px;
  }
  .cta-stage h2 {
    font-size: clamp(28px, 7vw, 38px);
    max-width: none;
  }
  .cta-lead {
    font-size: 14px;
  }
  .cta-chips {
    margin: 16px 0 20px;
  }
  .cta-chips li {
    font-size: 11px;
    padding: 6px 10px;
  }
  .cta-stage-visual {
    min-height: 240px;
  }
  .cta-radar {
    width: 180px;
    height: 180px;
  }
  .cta-phone {
    width: min(100%, 280px);
    padding: 14px;
  }
  .cta-ticker {
    margin-top: 14px;
  }

  .faq { gap: 0 16px; }
  .faq details { padding: 14px 0; }
  .faq summary {
    font-size: 15px;
    gap: 12px;
  }
  .faq p {
    font-size: 14px;
  }

  .map-band {
    padding: 44px 0 48px;
  }
  .tr-map-canvas {
    padding: 0 12px 36px;
  }
  .tr-map-canvas-head {
    padding: 14px 0 10px;
  }
  .tr-map-canvas-head h2 {
    font-size: clamp(22px, 6vw, 30px);
  }
  .tr-map-canvas-head .btn,
  .tr-map-canvas-actions .tr-map-locate {
    width: auto;
    flex: 1 1 auto;
    justify-content: center;
    margin-top: 8px;
  }
  .tr-map-districts { max-height: 180px; }
  .tr-map-list {
    max-height: 240px;
  }

  .site-footer {
    padding: 36px 0 calc(20px + env(safe-area-inset-bottom, 0px));
  }
  .foot-partner {
    padding: 20px 18px;
    margin-bottom: 20px;
  }
  .foot-partner h2 {
    font-size: clamp(22px, 5.5vw, 28px);
  }
  .foot-partner-actions {
    flex-direction: column;
    width: 100%;
  }
  .foot-partner-actions .btn {
    width: 100%;
    justify-content: center;
  }
  .foot-cities {
    padding: 14px;
  }
  .cards {
    gap: 14px;
  }
  .firma-card .body {
    padding: 16px;
  }
  .firma-card .btn {
    width: 100%;
    justify-content: center;
  }
}

@media (max-width: 480px) {
  :root { --gutter: 14px; }

  .hero h1 {
    font-size: clamp(28px, 8vw, 36px);
  }
  .hero-search-band + .map-band,
  .hero + .map-band {
    padding-top: 28px;
  }

  .stats-stage {
    grid-template-columns: 1fr 1fr;
    gap: 28px 12px;
  }
  .stat-kicker {
    font-size: 9px;
    letter-spacing: 0.16em;
    margin-bottom: 8px;
  }
  .stat-cell b {
    font-size: clamp(36px, 10.5vw, 48px);
  }
  .stat-cell-zero b {
    font-size: clamp(32px, 9.5vw, 44px);
  }
  .stat-cell strong {
    margin-top: 10px;
    font-size: 13px;
  }
  .stat-cell em {
    font-size: 10px;
  }

  .faq { gap: 0 10px; }
  .faq details { padding: 12px 0; }
  .faq summary { font-size: 13px; gap: 8px; }
  .faq summary::after { font-size: 16px; }
  .faq p { font-size: 12px; margin-top: 8px; }

  .how-preview {
    display: none;
  }
  .how-stage {
    padding: 14px 12px;
  }

  .cta-stage-visual {
    min-height: 200px;
  }
  .cta-hit {
    padding: 10px 12px;
  }

  .tr-map-canvas-head p {
    font-size: 13px;
  }
}

@media (max-width: 768px) and (hover: none) {
  .hero-actions .btn,
  .optik-search-btn,
  .city-chip,
  .menu-btn,
  .nav-links a,
  .tr-map-district,
  .tr-map-locate,
  .tr-map-you-go,
  .city-chip-locate,
  .tr-map-svg g[data-iladi],
  .tr-map-mobile-chip,
  .tr-pin {
    touch-action: manipulation;
  }
  .tr-map-svg g[data-iladi]:active path {
    fill: #7dd3fc;
    stroke: #7dd3fc;
  }
}

/* ==== Mobil yatay taşma önleme ==== */
@media (max-width: 980px) {
  .hero-picture {
    inset: -8% -2%;
  }
  .hero-bg {
    animation: hero-focus 1.2s ease forwards;
    transform: scale(1.04);
  }
  .hero-inner,
  .hero-main,
  .hero-search-block,
  .hero-copy {
    max-width: 100%;
    min-width: 0;
  }
  .hero-search-block {
    overflow: visible;
  }
  .hero-search-block .quick-cities {
    max-width: 100%;
    min-width: 0;
    margin-inline: 0;
    padding-inline: 0;
  }
  .site-header {
    max-width: 100%;
  }
  .section-cta,
  .cta-ticker,
  .map-band,
  .how-band,
  .section-services,
  .promise-band,
  .stats-band,
  .site-footer {
    overflow-x: clip;
    max-width: 100%;
  }
  .cta-ticker-track {
    will-change: transform;
  }
}

/* Müşteri üyeliği: e-posta / telefon / Google */
.auth-audience,
.auth-switch,
.randevu-mode {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0;
  padding: 3px;
  margin-bottom: 18px;
  background: var(--cream);
  border: 1px solid var(--line);
  border-radius: 999px;
}
.auth-audience-tab,
.auth-switch-tab,
.randevu-mode-tab {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  min-width: 0;
  min-height: 42px;
  padding: 0 10px;
  border: 0;
  border-radius: 999px;
  background: transparent;
  font: inherit;
  font-size: 13px;
  font-weight: 600;
  line-height: 1;
  color: var(--muted);
  text-align: center;
  cursor: pointer;
  box-shadow: none;
  transition: color 0.18s ease, background 0.18s ease, box-shadow 0.18s ease;
}
.auth-audience-tab .ico,
.auth-switch-tab .ico,
.randevu-mode-tab .ico {
  width: 15px;
  height: 15px;
  flex-shrink: 0;
}
.auth-audience-tab:hover:not(.active),
.auth-switch-tab:hover:not(.active),
.randevu-mode-tab:hover:not(.active) {
  color: var(--navy);
}
.auth-audience-tab.active,
.auth-switch-tab.active,
.randevu-mode-tab.active {
  background: #fff;
  color: var(--navy);
  border: 0;
  box-shadow: 0 1px 3px rgba(var(--navy-rgb), 0.12);
}
.auth-methods {
  display: grid;
  gap: 10px;
}
.btn-google,
a.btn.btn-google {
  background: #fff;
  color: var(--navy) !important;
  -webkit-text-fill-color: var(--navy);
  border-color: var(--line);
  box-shadow: 0 1px 0 rgba(11, 31, 51, 0.04);
}
.btn-google:hover,
a.btn.btn-google:hover {
  background: #f8fafc;
  border-color: #c5d4e0;
}
.auth-or {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 4px 0 2px;
  color: var(--muted);
  font-size: 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.auth-or::before,
.auth-or::after {
  content: "";
  flex: 1;
  height: 1px;
  background: var(--line);
}
.auth-or span { flex: none; }
.randevu-uye-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 16px 18px;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: var(--radius);
}
.randevu-uye-bar .eyebrow { margin-bottom: 2px; }
.randevu-uye-fields {
  display: grid;
  gap: 14px;
}
.randevu-auth-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}
.randevu-mode-modal { margin: 0 20px 14px; padding: 3px; }
.randevu-mode-modal .randevu-mode-tab { min-height: 40px; font-size: 13px; }
.randevu-uye-inline { margin: 0 20px 12px; }
.randevu-uye-inline a { color: var(--accent); text-decoration: underline; text-underline-offset: 2px; }
.randevu-panel .randevu-auth {
  flex: 1 1 auto;
  min-height: 0;
  overflow: auto;
  padding: 4px 20px 20px;
  display: grid;
  gap: 12px;
  align-content: start;
}
.randevu-panel .randevu-form {
  position: relative;
  flex: 1 1 auto;
  min-height: 0;
  display: flex;
  flex-direction: column;
  gap: 0;
  padding: 0;
}
.randevu-panel .flash-inline {
  margin: 0 20px 10px;
  flex-shrink: 0;
}
.randevu-progress {
  display: flex;
  gap: 16px;
  list-style: none;
  margin: 0 20px 12px;
  padding: 0;
  flex-shrink: 0;
}
.randevu-progress li {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  font-weight: 600;
  color: var(--muted);
}
.randevu-progress li span {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--cream);
  border: 1px solid var(--line);
  font-size: 11px;
}
.randevu-progress li.is-on { color: var(--navy); }
.randevu-progress li.is-on span {
  background: var(--navy);
  border-color: var(--navy);
  color: #fff;
}
.randevu-scroll {
  flex: 1 1 auto;
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  padding: 0 20px 16px;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.randevu-scroll::-webkit-scrollbar {
  display: none;
}
.randevu-step { display: grid; gap: 14px; }
.randevu-days-row {
  display: flex;
  gap: 8px;
  align-items: stretch;
}
.randevu-days {
  display: flex;
  gap: 6px;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-snap-type: x mandatory;
  padding: 1px;
  scrollbar-width: none;
  -ms-overflow-style: none;
  flex: 1 1 auto;
  min-width: 0;
}
.randevu-days::-webkit-scrollbar {
  display: none;
}
.randevu-day {
  appearance: none;
  flex: 0 0 56px;
  scroll-snap-align: start;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 2px;
  min-height: 58px;
  padding: 8px 4px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #fff;
  cursor: pointer;
  font: inherit;
  color: var(--navy);
}
.randevu-day-name {
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--muted);
}
.randevu-day-num {
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
}
.randevu-day.active {
  background: var(--navy);
  border-color: var(--navy);
  color: #fff;
}
.randevu-day.active .randevu-day-name { color: rgba(255, 255, 255, 0.72); }
.randevu-day:disabled {
  opacity: 0.38;
  cursor: not-allowed;
}
.randevu-cal {
  appearance: none;
  flex: 0 0 56px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #fff;
  color: var(--navy);
  cursor: pointer;
}
.randevu-cal.is-custom,
.randevu-cal:hover {
  border-color: var(--navy);
}
.randevu-cal.is-custom {
  background: var(--navy);
  color: #fff;
}
.randevu-slots { display: grid; gap: 14px; }
.randevu-slot-grup { display: grid; gap: 8px; }
.randevu-slot-grup-label {
  margin: 0;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--muted);
}
.randevu-slot-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.randevu-panel .slot {
  width: auto;
  min-width: 4.5rem;
  flex: 0 0 auto;
  min-height: 38px;
  padding: 8px 12px;
  border-radius: 6px;
  font-size: 13px;
  font-weight: 600;
}
.randevu-panel .slot:disabled,
.randevu-panel .slot.dolu {
  opacity: 1;
  background: #f1f5f9;
  color: #94a3b8;
  border-color: transparent;
  text-decoration: none;
}
.randevu-slots-empty { margin: 8px 0 0; }
.randevu-ozet,
.randevu-kisi {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 14px;
  background: var(--cream);
  border: 1px solid var(--line);
  border-radius: 6px;
}
.randevu-ozet-tarih,
.randevu-kisi strong {
  margin: 0;
  font-size: 14px;
  font-weight: 650;
  color: var(--navy);
}
.randevu-ozet-saat {
  margin: 2px 0 0;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.2;
  color: var(--navy);
}
.randevu-kisi .muted { margin: 2px 0 0; font-size: 13px; }
.randevu-ozet-edit,
.randevu-kisi a {
  flex-shrink: 0;
  margin: 0;
  padding: 0;
  border: 0;
  background: none;
  font: inherit;
  font-size: 13px;
  font-weight: 600;
  color: var(--accent);
  cursor: pointer;
  text-decoration: none;
}
.randevu-panel .randevu-step textarea { min-height: 72px; }
.randevu-panel .btn:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}
.randevu-actions {
  flex-shrink: 0;
  margin: 0;
  padding: 12px 20px 16px;
  border-top: 1px solid var(--line);
  background: #fff;
}
.randevu-action-step {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  width: 100%;
}
.randevu-secim {
  margin: 0;
  min-width: 0;
  font-size: 13px;
  font-weight: 600;
  color: var(--navy);
}
.randevu-secim.muted { font-weight: 500; }
.randevu-panel .randevu-actions .btn { width: auto; }
.randevu-action-step[data-randevu-step-action="2"] .btn { flex: 1 1 auto; }
.randevu-uye-hint { margin: 0; font-size: 13px; }
.randevu-uye-hint a { color: var(--accent); text-decoration: underline; text-underline-offset: 2px; }
.randevu-misafir-link {
  display: inline;
  margin: 0;
  padding: 0;
  border: 0;
  background: none;
  font: inherit;
  color: var(--accent);
  text-decoration: underline;
  text-underline-offset: 2px;
  cursor: pointer;
}
.hesabim-grid .form-card > .btn { margin-top: 12px; width: auto; }
.hesabim-list { display: grid; gap: 10px; margin-top: 12px; }
.hesabim-item {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 0;
  border-bottom: 1px solid var(--line);
}
.hesabim-item:last-child { border-bottom: 0; padding-bottom: 0; }
.hesabim-item strong { display: block; }
.hesabim-item-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  flex-shrink: 0;
}
.hesabim-item-actions form { margin: 0; }
.hesabim-item-actions .btn { margin: 0; width: auto; }
.auth-panel .lead a { color: var(--accent); text-decoration: underline; text-underline-offset: 2px; }

@media (max-width: 720px) {
  .randevu-uye-bar,
  .randevu-auth-actions {
    grid-template-columns: 1fr;
    display: grid;
  }
  .randevu-uye-bar .btn { width: 100%; }
  .randevu-day { flex-basis: 52px; }
  .randevu-panel .randevu-actions .btn { min-height: 46px; }
  .ui-modal:has(.randevu-panel) {
    align-items: flex-end;
    padding: 0;
  }
  .ui-modal-panel.randevu-panel {
    width: 100%;
    max-height: min(94vh, 900px);
    margin: 0;
    border-radius: 8px 8px 0 0;
  }
}

/* Hover lift / scale yok: geçişlerde layout sarsılmasın */
.site-header .brand:hover img,
.btn-accent:hover,
a.btn.btn-accent:hover,
.btn-gold:hover,
a.btn.btn-gold:hover,
.site-header .nav-links a.btn-outline:hover,
.site-header .nav-links a.btn-primary:hover,
.hero-actions .btn-ghost-light:hover,
.hero-actions .btn-gold:hover,
.map-nav-btn:hover,
.side-sube-card:hover,
.ad-card:hover,
.service-pick:hover .service-pick-card,
.promo-card:hover,
.foot-flow-step:hover,
.foot-trust li:hover,
.foot-mini-stat:hover,
.site-footer .social a:hover,
.foot-city:hover,
a.dash-kpi-card:hover,
.dash-quick-link:hover,
.city-chip:hover,
a.btn.how-cta:hover,
.service-tile:hover,
.service-tile:hover .service-tile-icon,
.promise:hover,
.promise:hover .promise-icon,
a.btn.cta-stage-btn:hover,
.tr-map-item:hover,
.tr-map-item.is-on,
.tr-map-district:hover,
.tr-map-district.is-on,
.locator-card:hover,
.locator-card.is-on {
  transform: none !important;
}

.locator-band { padding-bottom: 88px; }
.locator-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 22px;
  position: relative;
  z-index: 1;
}
.locator-head h2 {
  font-family: var(--display);
  text-transform: none;
  letter-spacing: -0.03em;
  font-size: clamp(30px, 4vw, 46px);
  font-weight: 500;
  color: #f0f9ff;
  line-height: 1.08;
  margin-top: 8px;
}
.locator-head p {
  color: rgba(240, 249, 255, 0.62);
  margin-top: 8px;
  max-width: 52ch;
  font-size: 15px;
  line-height: 1.5;
}
.locator-head-actions {
  display: flex;
  flex-wrap: nowrap;
  align-items: stretch;
  justify-content: flex-end;
  gap: 8px;
  flex-shrink: 0;
  min-width: 0;
}
.locator-head-actions .btn {
  min-height: 46px;
  white-space: nowrap;
}
.locator-head-geo-close {
  width: 46px;
  min-width: 46px;
  min-height: 46px;
  padding: 0;
  border-radius: 6px;
  border: 1px solid rgba(186, 230, 253, 0.35);
  background: #12263a;
  color: #e0f2fe;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  flex: 0 0 auto;
}
.locator-head-geo-close:hover {
  border-color: var(--gold);
  color: #fff;
}
.locator-head-geo.is-on,
.locator-head-geo.is-busy {
  background: rgba(var(--gold-rgb), 0.18);
  border-color: rgba(var(--gold-rgb), 0.55);
  color: #fff8e8 !important;
  -webkit-text-fill-color: #fff8e8;
}
.result-count-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px 16px;
  margin-bottom: 18px;
}
.result-count-row .result-count {
  margin-bottom: 0;
}
.result-geo-btn {
  flex-shrink: 0;
}
.locator {
  display: grid;
  grid-template-columns: minmax(300px, 380px) minmax(0, 1fr);
  min-height: 720px;
  height: min(78vh, 860px);
  position: relative;
  z-index: 1;
  background: #0f1720;
  border: 1px solid rgba(var(--gold-rgb), 0.22);
  border-radius: 8px;
  box-shadow: 0 40px 80px rgba(0, 0, 0, 0.38);
  overflow: hidden;
}
.locator-panel {
  display: flex;
  flex-direction: column;
  min-height: 0;
  padding: 22px 18px 16px;
  background:
    linear-gradient(180deg, rgba(var(--gold-rgb), 0.08), transparent 28%),
    #14110e;
  border-right: 1px solid rgba(var(--gold-rgb), 0.14);
  color-scheme: dark;
}
.locator-panel-head { margin-bottom: 14px; }
.locator-kicker {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--gold);
}
.locator-panel h3 {
  font-family: var(--display);
  font-size: 30px;
  font-weight: 500;
  letter-spacing: -0.03em;
  color: #f0f9ff;
  margin-top: 4px;
}
.locator-panel-meta {
  margin-top: 4px;
  font-size: 13px;
  color: rgba(240, 249, 255, 0.5);
}
.locator-search {
  position: relative;
  display: block;
  margin-bottom: 12px;
}
.locator-search .ico {
  position: absolute;
  left: 12px;
  top: 50%;
  transform: translateY(-50%);
  color: rgba(240, 249, 255, 0.45);
  pointer-events: none;
}
.locator-search input {
  width: 100%;
  height: 44px;
  padding: 0 12px 0 38px;
  border-radius: 6px;
  border: 1px solid rgba(240, 249, 255, 0.14);
  background: #1a1613;
  color: #f0f9ff;
  font: inherit;
  font-size: 14px;
}
.locator-search input:focus {
  outline: none;
  border-color: rgba(var(--gold-rgb), 0.5);
}
.locator-geo {
  margin-bottom: 12px;
  padding: 12px;
  border-radius: 8px;
  background: rgba(2, 132, 199, 0.12);
  border: 1px solid rgba(125, 211, 252, 0.22);
}
.locator-geo p {
  margin: 0 0 10px;
  font-size: 13px;
  color: #e0f2fe;
  line-height: 1.4;
}
.locator-geo-btn,
.locator-reset {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 40px;
  padding: 0 14px;
  border-radius: 999px;
  border: 1px solid rgba(186, 230, 253, 0.35);
  background: #0b1f33;
  color: #f0f9ff;
  font: inherit;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
}
.locator-geo-btn:hover,
.locator-reset:hover { border-color: var(--gold); }
.locator-geo-btn.is-busy { opacity: 0.65; pointer-events: none; }
.locator-geo-acts {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}
.locator-geo-close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 0 14px;
  border-radius: 999px;
  border: 1px solid rgba(240, 249, 255, 0.22);
  background: transparent;
  color: rgba(240, 249, 255, 0.78);
  font: inherit;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  cursor: pointer;
}
.locator-geo-close:hover {
  color: #f0f9ff;
  border-color: rgba(240, 249, 255, 0.45);
}
.locator-you-clear {
  position: absolute;
  top: 14px;
  right: 14px;
  z-index: 6;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 36px;
  padding: 0 12px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  background: rgba(8, 16, 28, 0.88);
  color: #f0f9ff;
  font: inherit;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.16);
  backdrop-filter: blur(10px);
}
.locator-you-clear:hover {
  border-color: #38bdf8;
  color: #7dd3fc;
}
.locator-geo-close[hidden],
.locator-head-geo-close[hidden],
.locator-you-clear[hidden] {
  display: none !important;
}
.locator-geo.is-on {
  background: rgba(14, 165, 233, 0.16);
  border-color: rgba(56, 189, 248, 0.4);
}
.locator-geo.is-on p { color: #e0f2fe; }
.locator-geo-err {
  margin: 8px 0 0;
  font-size: 12px;
  color: #fecaca;
}
.locator-radius { margin-bottom: 14px; }
.locator-radius-top {
  display: flex;
  justify-content: space-between;
  font-size: 12px;
  color: rgba(240, 249, 255, 0.62);
  margin-bottom: 6px;
}
.locator-radius-top strong { color: #f0f9ff; }
.locator-radius input[type="range"] { width: 100%; accent-color: #38bdf8; }
.locator-radius-hint {
  margin: 6px 0 0;
  font-size: 11px;
  color: rgba(240, 249, 255, 0.42);
}
.locator-list {
  flex: 1;
  min-height: 0;
  overflow: auto;
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding-right: 4px;
}
.locator-list::-webkit-scrollbar { width: 6px; }
.locator-list::-webkit-scrollbar-thumb {
  background: rgba(var(--gold-rgb), 0.32);
  border-radius: 99px;
}
.locator-card {
  border-radius: 8px;
  background: #1c1814;
  border: 1px solid rgba(255, 248, 240, 0.08);
}
.locator-card.is-on {
  border-color: rgba(var(--gold-rgb), 0.45);
  box-shadow: inset 0 0 0 1px rgba(var(--gold-rgb), 0.2);
}
.locator-card.is-ad {
  border-color: rgba(var(--gold-rgb), 0.28);
}
.locator-card-title {
  display: flex;
  align-items: center;
  gap: 8px;
}
.locator-card-title strong {
  flex: 1;
  min-width: 0;
  color: #fff8ee;
  font-size: 15px;
  font-weight: 700;
}
.locator-card-badges {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  flex-shrink: 0;
}
.locator-card-badges .firma-badge {
  width: 26px;
  height: 26px;
}
.locator-card-focus {
  display: block;
  width: 100%;
  padding: 12px 12px 8px;
  border: 0;
  background: none;
  color: inherit;
  font: inherit;
  text-align: left;
  cursor: pointer;
}
.locator-rating {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 7px;
}
.locator-rating .star { color: rgba(240, 249, 255, 0.22); }
.locator-rating .star.is-on,
.locator-rating .star.is-half .star-fill { color: #fbbf24; }
.locator-rating .rating-score {
  color: #fde68a;
  font-size: 13px;
}
.locator-rating .rating-count {
  background: rgba(251, 191, 36, 0.16);
  color: #fde68a;
  font-size: 11px;
}
.locator-rating.is-empty .rating-score {
  color: rgba(240, 249, 255, 0.5);
  font-size: 12px;
  font-weight: 600;
}
.locator-card-place,
.locator-card-addr,
.locator-card-dist {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-top: 5px;
  font-size: 12px;
  color: rgba(240, 249, 255, 0.58);
}
.locator-card-dist { color: #7dd3fc; font-weight: 700; }
.locator-card-links {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
  padding: 0 12px 12px;
}
.locator-card-links a {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  font-weight: 600;
  color: #bae6fd;
  text-decoration: none;
}
.locator-card-links a:hover { color: #fff; }
.locator-card-go { margin-left: auto; color: var(--gold) !important; }
.locator-empty {
  margin: 8px 0 0;
  font-size: 13px;
  color: rgba(240, 249, 255, 0.55);
}
.locator-reset { width: 100%; margin-top: 12px; }
.locator-reset[hidden],
.locator-empty[hidden] {
  display: none !important;
}
.locator-stage { position: relative; min-height: 420px; background: #d7e3ea; }
.locator-map {
  position: absolute;
  inset: 0;
  z-index: 1;
}
.locator-stage.is-popup-open .locator-map { z-index: 8; }
.locator-stage.is-popup-open .locator-map-search,
.locator-stage.is-popup-open .locator-basemap,
.locator-stage.is-popup-open .locator-quick,
.locator-stage.is-popup-open .locator-legend,
.locator.is-popup-open .locator-map-search,
.locator.is-popup-open .locator-basemap,
.locator.is-popup-open .locator-quick,
.locator.is-popup-open .locator-legend {
  z-index: 1;
  pointer-events: none;
}
.locator-map .leaflet-container {
  height: 100%;
  width: 100%;
  background: #d7e3ea;
  font-family: inherit;
}
.locator-map-search {
  position: absolute;
  top: 14px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 5;
  width: min(360px, calc(100% - 180px));
}
.locator-map-search .ico {
  position: absolute;
  left: 12px;
  top: 12px;
  color: #64748b;
  pointer-events: none;
}
.locator-map-search input {
  width: 100%;
  height: 42px;
  padding: 0 12px 0 36px;
  border: 0;
  border-radius: 6px;
  background: #fff;
  color: #0f172a;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.18);
  font: inherit;
  font-size: 14px;
}
.locator-map-search input::placeholder { color: #94a3b8; }
.locator-suggest {
  margin-top: 6px;
  background: #fff;
  border-radius: 6px;
  box-shadow: 0 14px 32px rgba(15, 23, 42, 0.18);
  overflow: hidden;
}
.locator-suggest button {
  display: block;
  width: 100%;
  padding: 10px 12px;
  border: 0;
  background: #fff;
  color: #0f172a;
  text-align: left;
  font: inherit;
  font-size: 13px;
  cursor: pointer;
}
.locator-suggest button:hover { background: #f1f5f9; }
.locator-basemap {
  position: absolute;
  top: 14px;
  left: 14px;
  z-index: 5;
  display: flex;
  padding: 3px;
  border-radius: 6px;
  background: #fff;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.16);
}
.locator-basemap button {
  border: 0;
  background: transparent;
  padding: 7px 12px;
  border-radius: 6px;
  font: inherit;
  font-size: 12px;
  font-weight: 700;
  color: #334155;
  cursor: pointer;
}
.locator-basemap button.is-on {
  background: #0f172a;
  color: #fff;
}
.locator-quick {
  position: absolute;
  left: 14px;
  bottom: 16px;
  z-index: 5;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  max-width: calc(100% - 80px);
}
.locator-quick button {
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 999px;
  padding: 7px 11px;
  background: rgba(8, 16, 28, 0.82);
  color: #f0f9ff;
  font: inherit;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  backdrop-filter: blur(10px);
}
.locator-quick button:hover { border-color: #38bdf8; color: #7dd3fc; }
.locator-legend {
  position: absolute;
  right: 14px;
  bottom: 88px;
  z-index: 5;
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 10px 12px;
  border-radius: 6px;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.14);
  font-size: 12px;
  color: #334155;
}
.locator-legend strong { font-size: 11px; letter-spacing: 0.06em; text-transform: uppercase; color: #0f172a; }
.locator-legend span { display: flex; align-items: center; gap: 8px; }
.locator-pin {
  display: inline-block;
  width: 14px;
  height: 14px;
  border-radius: 50% 50% 50% 0;
  transform: rotate(-45deg);
  border: 2px solid #fff;
  box-shadow: 0 2px 6px rgba(15, 23, 42, 0.25);
}
.locator-pin-dusuk { background: #f43f5e; }
.locator-pin-orta { background: #f59e0b; }
.locator-pin-yuksek { background: #22d3ee; }
.locator-legend .locator-pin { width: 12px; height: 12px; }
.locator-marker {
  background: none !important;
  border: 0 !important;
  overflow: visible !important;
}
.locator-marker .locator-pin {
  position: absolute;
  left: 50%;
  bottom: 2px;
  width: 22px;
  height: 22px;
  margin-left: -11px;
  display: block;
  filter: drop-shadow(0 5px 8px rgba(0, 0, 0, 0.4));
}
.locator-marker .locator-pin i {
  position: absolute;
  left: 50%;
  top: 5px;
  width: 6px;
  height: 6px;
  margin-left: -3px;
  border-radius: 50%;
  background: #fff;
  transform: rotate(45deg);
}
.locator-marker.is-on .locator-pin {
  transform: rotate(-45deg) scale(1.18);
  box-shadow: 0 0 0 3px #fff, 0 0 0 6px rgba(14, 165, 233, 0.55);
  filter: drop-shadow(0 6px 10px rgba(0, 0, 0, 0.45));
}
.locator .leaflet-marker-icon.locator-cluster,
.locator-cluster {
  background: none !important;
  border: 0 !important;
  display: block !important;
  overflow: visible !important;
}
.locator-cluster-box { display: none !important; }
.locator-cluster-num {
  position: absolute;
  inset: 0;
  display: flex !important;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 0;
  border-radius: 50%;
  box-sizing: border-box;
  color: #fff;
  font-family: "Plus Jakarta Sans", "Poppins", sans-serif;
  font-weight: 800;
  font-variant-numeric: tabular-nums;
  letter-spacing: 0;
  line-height: 1;
  text-align: center;
  border: 3px solid #fff;
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.28);
}
.locator-cluster-num::after { display: none !important; content: none !important; }
.locator-cluster-sm .locator-cluster-num { background: #0891b2; font-size: 13px; }
.locator-cluster-md .locator-cluster-num { background: #0284c7; font-size: 14px; }
.locator-cluster-lg .locator-cluster-num { background: #ea580c; font-size: 16px; }
.locator-cluster-xl .locator-cluster-num { background: #c2410c; font-size: 17px; }
@keyframes locator-ring {
  0% { transform: scale(0.85); opacity: 0.55; }
  100% { transform: scale(2.1); opacity: 0; }
}
.locator-you-wrap {
  background: none !important;
  border: 0 !important;
  overflow: visible !important;
}
.locator-you {
  position: relative;
  display: block;
  width: 52px;
  height: 58px;
  pointer-events: none;
}
.locator-you-ring {
  position: absolute;
  left: 50%;
  top: 8px;
  width: 16px;
  height: 16px;
  margin-left: -8px;
  border-radius: 50%;
  border: 2px solid rgba(14, 165, 233, 0.7);
  background: transparent;
  animation: locator-ring 1.8s ease-out infinite;
}
.locator-you-core {
  position: absolute;
  left: 50%;
  top: 8px;
  width: 16px;
  height: 16px;
  margin-left: -8px;
  border-radius: 50%;
  background: #0ea5e9;
  border: 3px solid #fff;
  box-shadow: 0 0 0 2px rgba(14, 165, 233, 0.28), 0 4px 10px rgba(0, 0, 0, 0.35);
}
.locator-you-label {
  position: absolute;
  left: 50%;
  top: 30px;
  transform: translateX(-50%);
  padding: 2px 7px;
  border-radius: 4px;
  background: #0b1f33;
  color: #fff;
  border: 1px solid rgba(56, 189, 248, 0.45);
  font-family: "Plus Jakarta Sans", "Poppins", sans-serif;
  font-size: 10px;
  font-weight: 800;
  font-style: normal;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  line-height: 1.3;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.32);
  white-space: nowrap;
}
@media (prefers-reduced-motion: reduce) {
  .locator-you-ring { animation: none; }
}
.locator-pop.leaflet-popup { margin-bottom: 12px; }
.locator-pop .leaflet-popup-content-wrapper {
  padding: 0;
  border-radius: 8px;
  overflow: hidden;
  background: #fff;
  color: var(--ink);
  box-shadow: 0 24px 48px rgba(11, 31, 51, 0.32), 0 0 0 1px rgba(11, 31, 51, 0.06);
  border: 0;
}
.locator-pop .leaflet-popup-content {
  margin: 0 !important;
  width: 328px !important;
  min-width: 328px;
  line-height: 1.45;
}
.locator-pop .leaflet-popup-content p { margin: 0; }
.locator-pop .leaflet-popup-tip-container { display: none; }
.locator .leaflet-container a.leaflet-popup-close-button {
  top: 16px;
  right: 12px;
  width: 28px;
  height: 28px;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font: 18px/1 "Plus Jakarta Sans", sans-serif;
  color: rgba(240, 249, 255, 0.78);
  background: rgba(255, 255, 255, 0.1);
  border-radius: 999px;
  text-indent: 0;
  z-index: 2;
}
.locator .leaflet-container a.leaflet-popup-close-button:hover {
  color: #fff;
  background: rgba(255, 255, 255, 0.2);
}
.locator-popup {
  display: flex;
  flex-direction: column;
}
.locator-popup-head {
  position: relative;
  display: grid;
  gap: 6px;
  padding: 14px 44px 14px 16px;
  background:
    linear-gradient(180deg, rgba(var(--gold-rgb), 0.14), transparent 48%),
    linear-gradient(135deg, #0b1f33 0%, #16324a 100%);
  color: #f0f9ff;
}
.locator-popup-head::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(var(--gold-rgb), 0.7), transparent);
}
.locator-popup-head-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  min-height: 0;
  width: 100%;
}
.locator-popup-kicker {
  margin: 0;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--gold);
}
.locator-popup-dist {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  margin: 0;
  padding: 3px 8px;
  border-radius: 999px;
  background: rgba(56, 189, 248, 0.16);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0;
  text-transform: none;
  color: #e0f2fe;
}
.locator-popup-title {
  display: block;
  margin: 0;
  padding: 0;
  font-family: var(--display);
  font-size: 20px;
  font-weight: 600;
  letter-spacing: -0.03em;
  line-height: 1.15;
  color: #fff;
  text-transform: none;
}
.locator-popup-rating {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
  margin: 0;
  font-size: 12px;
  font-weight: 600;
  color: rgba(240, 249, 255, 0.78);
}
.locator-popup-rating .stars {
  display: inline-flex;
  align-items: center;
  gap: 1px;
}
.locator-popup-rating .star { position: relative; color: rgba(240, 249, 255, 0.22); }
.locator-popup-rating .star.is-on,
.locator-popup-rating .star.is-half .star-fill { color: #fbbf24; }
.locator-popup-rating.is-empty { color: rgba(240, 249, 255, 0.5); font-weight: 500; }
.locator-popup-body {
  display: grid;
  gap: 10px;
  padding: 12px 14px 0;
}
.locator-popup-facts {
  display: grid;
  gap: 2px;
}
.locator-popup-row {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  margin: 0;
  padding: 7px 2px;
  min-height: 0;
  font-size: 13px;
  color: var(--ink);
  text-align: left;
}
.locator-popup-facts .locator-popup-row:only-child {
  grid-column: 1 / -1;
}
.locator-popup-row span {
  min-width: 0;
  line-height: 1.35;
  font-weight: 600;
  overflow-wrap: anywhere;
}
.locator-popup-row em {
  display: none;
}
.locator .locator-popup-row a {
  color: var(--navy);
  font-weight: 700;
  text-decoration: none;
}
.locator .locator-popup-row a:hover { color: var(--accent); }
.locator-popup-row .locator-ico {
  width: 28px;
  height: 28px;
  padding: 6px;
  border-radius: 6px;
  background: var(--cream);
  color: var(--navy);
  box-sizing: border-box;
}
.locator-popup-maps {
  display: grid;
  gap: 8px;
}
.locator-popup-facts + .locator-popup-maps {
  margin: 0;
  padding-top: 10px;
  border-top: 1px solid var(--line);
}
.locator-popup-label {
  margin: 0;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--muted);
}
.locator-popup-maps-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 6px;
}
.locator a.locator-map-btn {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 5px;
  min-width: 0;
  min-height: 58px;
  padding: 8px 4px 7px;
  border-radius: 6px;
  background: #f7fafc;
  color: var(--navy);
  text-decoration: none;
  box-shadow: inset 0 0 0 1px rgba(var(--navy-rgb), 0.06);
  transition: background 0.15s ease, transform 0.15s ease, box-shadow 0.15s ease;
}
.locator a.locator-map-btn:hover,
.locator a.locator-map-btn:focus-visible {
  background: #fff;
  color: var(--navy);
  transform: translateY(-1px);
  box-shadow: 0 8px 16px rgba(var(--navy-rgb), 0.1);
}
.locator a.locator-map-btn:focus-visible {
  outline: 3px solid color-mix(in srgb, var(--accent) 30%, transparent);
  outline-offset: 2px;
}
.locator-map-logo {
  --map-icon: 30px;
  width: 30px;
  height: 30px;
  border-radius: 0;
  background: transparent;
  display: grid;
  place-items: center;
  overflow: hidden;
  box-shadow: none;
}
.locator-map-name {
  font-size: 10px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.01em;
}
.locator-popup-acts {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
  padding: 12px 14px 14px;
}
.locator-popup-acts.has-split {
  grid-template-columns: 1fr 1fr;
}
.locator .locator-popup-acts a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 42px;
  padding: 0 12px;
  border-radius: 6px;
  font-size: 13px;
  font-weight: 700;
  text-decoration: none;
}
.locator-popup-acts .locator-ico {
  width: 16px;
  height: 16px;
}
.locator .locator-popup-acts .is-wa {
  background: #ecfdf5;
  color: #047857;
}
.locator .locator-popup-acts .is-go {
  background: var(--navy);
  color: #fff;
  box-shadow: 0 8px 18px rgba(11, 31, 51, 0.2);
}
.locator .locator-popup-acts .is-wa:hover { background: #d1fae5; }
.locator .locator-popup-acts .is-go:hover { background: var(--blue); }
.locator .leaflet-control-zoom {
  border: 0 !important;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.16) !important;
}
.locator .leaflet-control-zoom a {
  width: 34px !important;
  height: 34px !important;
  line-height: 34px !important;
  color: #0f172a !important;
  background: #fff !important;
}
.locator .leaflet-control-attribution {
  font-size: 10px;
  background: rgba(255, 255, 255, 0.75) !important;
}
.locator-sheet {
  position: absolute;
  left: 8px;
  right: 8px;
  bottom: max(8px, env(safe-area-inset-bottom, 0px));
  z-index: 24;
  display: flex;
  flex-direction: column;
  max-height: calc(100% - 56px);
  pointer-events: none;
}
.locator-sheet[hidden] { display: none !important; }
.locator-sheet-card {
  position: relative;
  pointer-events: auto;
  min-height: 0;
  overflow: hidden;
  border-radius: 8px;
  background: #fff;
  color: var(--ink);
  box-shadow: 0 18px 40px rgba(11, 31, 51, 0.28), 0 0 0 1px rgba(11, 31, 51, 0.06);
}
.locator-sheet a,
.locator-sheet button {
  touch-action: manipulation;
  pointer-events: auto;
  position: relative;
  z-index: 1;
}
.locator-sheet-close {
  position: absolute;
  top: 14px;
  right: 14px;
  z-index: 2;
  width: 28px;
  height: 28px;
  padding: 0;
  border: 0;
  border-radius: 999px;
  display: flex;
  align-items: center;
  justify-content: center;
  font: 18px/1 "Plus Jakarta Sans", sans-serif;
  color: rgba(240, 249, 255, 0.78);
  background: rgba(255, 255, 255, 0.1);
  cursor: pointer;
  touch-action: manipulation;
}
.locator-sheet-close:hover,
.locator-sheet-close:focus-visible {
  color: #fff;
  background: rgba(255, 255, 255, 0.2);
}
@media (max-width: 980px) {
  .locator {
    grid-template-columns: 1fr;
    height: auto;
    min-height: 0;
  }
  .locator-stage {
    height: min(56dvh, 460px);
    min-height: 340px;
    order: -1;
  }
  .locator-map .leaflet-container {
    width: 100%;
    height: 100%;
  }
  .locator-panel { max-height: none; }
  .locator-list { max-height: 420px; }
  .locator-map-search { width: calc(100% - 28px); left: 14px; transform: none; top: 58px; }
  .locator-legend { display: none; }
  .locator-head { flex-direction: column; align-items: flex-start; }
  .locator-head-actions {
    width: 100%;
    flex-wrap: nowrap;
    gap: 6px;
  }
  .locator-head-actions .btn {
    flex: 1 1 0;
    min-width: 0;
    justify-content: center;
    padding: 0 8px;
    font-size: 13px;
    gap: 6px;
  }
  .locator-head-actions .btn svg {
    width: 15px;
    height: 15px;
    flex-shrink: 0;
  }
  .locator-head-geo-close {
    flex: 0 0 42px;
    width: 42px;
    min-width: 42px;
    min-height: 46px;
  }
  .locator-stage.is-popup-open .leaflet-control-zoom { display: none; }
  .locator-sheet .locator-popup-title { font-size: 18px; }
  .locator-sheet .locator-popup-head { padding: 12px 40px 12px 14px; gap: 4px; }
  .locator-sheet .locator-popup-body { gap: 8px; padding: 10px 12px 0; }
  .locator-sheet .locator-popup-acts { padding: 10px 12px 12px; }
  .locator-sheet a.locator-map-btn {
    min-height: 46px;
    padding: 6px 2px;
    gap: 3px;
  }
  .locator-sheet .locator-map-logo {
    --map-icon: 28px;
    width: 28px;
    height: 28px;
    border-radius: 0;
  }
}
@media (max-width: 380px) {
  .locator-head-actions {
    gap: 5px;
  }
  .locator-head-actions .btn {
    font-size: 12px;
    padding: 0 6px;
    gap: 4px;
    min-height: 42px;
  }
  .locator-head-actions .btn svg {
    width: 14px;
    height: 14px;
  }
  .locator-head-geo-close {
    flex-basis: 40px;
    width: 40px;
    min-width: 40px;
    min-height: 42px;
  }
  .locator-pop .leaflet-popup-content {
    width: min(328px, calc(100vw - 36px)) !important;
    min-width: 0;
  }
}

.locator-geo-modal {
  z-index: 96;
}
.locator-geo-panel {
  width: min(440px, 100%);
  max-height: min(88vh, 640px);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  padding: 20px 20px 16px;
}
.locator-geo-panel .ui-modal-head {
  margin-bottom: 12px;
  align-items: center;
}
.locator-geo-panel .ui-modal-head h2 {
  font-size: 22px;
}
.locator-geo-panel .ui-modal-body {
  margin-top: 0;
  min-height: 0;
  flex: 1;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
.locator-geo-search {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
  padding: 8px 0 4px;
  width: 100%;
}
.locator-geo-radar {
  position: relative;
  width: 112px;
  height: 112px;
  display: grid;
  place-items: center;
}
.locator-geo-radar i {
  position: absolute;
  inset: 0;
  border: 1.5px solid rgba(var(--gold-rgb), 0.38);
  border-radius: 50%;
  animation: locator-geo-pulse 2.2s ease-out infinite;
}
.locator-geo-radar i:nth-child(2) { animation-delay: 0.7s; }
.locator-geo-radar i:nth-child(3) { animation-delay: 1.4s; }
.locator-geo-radar b {
  position: relative;
  z-index: 1;
  width: 52px;
  height: 52px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  color: #fff;
  background: #0369a1;
  box-shadow: 0 8px 20px rgba(2, 132, 199, 0.32);
}
.locator-geo-bar {
  width: 100%;
  height: 8px;
  border-radius: 999px;
  background: #e2eef6;
  overflow: hidden;
}
.locator-geo-bar span {
  display: block;
  height: 100%;
  width: 8%;
  border-radius: inherit;
  background: linear-gradient(90deg, #0284c7, #38bdf8);
  transition: width 0.22s ease;
}
.locator-geo-pct {
  margin: 0;
  font-size: 13px;
  color: var(--muted);
}
.locator-geo-pct strong {
  color: var(--navy);
  font-variant-numeric: tabular-nums;
}
.locator-geo-steps {
  width: 100%;
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 8px;
}
.locator-geo-steps li {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 13px;
  font-weight: 500;
  color: #7a8a99;
}
.locator-geo-steps li span {
  width: 18px;
  height: 18px;
  border-radius: 50%;
  border: 1.5px solid #c5d4e0;
  background: #fff;
  flex-shrink: 0;
  position: relative;
}
.locator-geo-steps li.is-on {
  color: var(--navy);
}
.locator-geo-steps li.is-on span {
  border-color: #38bdf8;
  box-shadow: 0 0 0 4px rgba(56, 189, 248, 0.16);
}
.locator-geo-steps li.is-on span::after {
  content: "";
  position: absolute;
  inset: 4px;
  border-radius: 50%;
  background: #0ea5e9;
}
.locator-geo-steps li.is-done {
  color: #0f766e;
}
.locator-geo-steps li.is-done span {
  border-color: #14b8a6;
  background: #14b8a6;
}
.locator-geo-steps li.is-done span::after {
  content: "";
  position: absolute;
  left: 5px;
  top: 2px;
  width: 5px;
  height: 9px;
  border: 1.8px solid #fff;
  border-top: 0;
  border-left: 0;
  transform: rotate(45deg);
}
.locator-geo-fail {
  min-height: 0;
  width: 100%;
  display: grid;
  gap: 14px;
  justify-items: start;
  padding: 8px 0 4px;
}
.locator-geo-fail p {
  margin: 0;
  color: var(--err);
  font-size: 14px;
  line-height: 1.5;
}
.locator-geo-modal-acts {
  margin-top: 16px;
  flex-shrink: 0;
}
@keyframes locator-geo-pulse {
  0% { transform: scale(0.55); opacity: 0.7; }
  100% { transform: scale(1); opacity: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .locator-geo-radar i { animation: none; opacity: 0.35; }
  .locator-geo-bar span { transition: none; }
}
@media (max-width: 640px) {
  .ui-modal.locator-geo-modal {
    align-items: flex-end;
    padding: 0;
  }
  .locator-geo-panel {
    width: 100%;
    max-height: min(86vh, 680px);
    margin: 0;
    padding: 16px 16px calc(12px + env(safe-area-inset-bottom, 0px));
    border-radius: 8px 8px 0 0;
    overflow: hidden;
  }
  .locator-geo-panel .ui-modal-head h2 { font-size: 20px; }
  .locator-geo-radar {
    width: 88px;
    height: 88px;
  }
  .locator-geo-radar b {
    width: 44px;
    height: 44px;
  }
  .locator-geo-modal-acts {
    justify-content: stretch;
  }
  .locator-geo-modal-acts .btn {
    flex: 1;
    width: auto;
  }
}

.lokasyon-hub {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
  gap: 10px;
}
.lokasyon-hub-item {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 14px 16px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  text-decoration: none;
  color: inherit;
  min-height: 76px;
}
.lokasyon-hub-item:hover {
  border-color: #93c5fd;
  box-shadow: 0 0 0 3px rgba(var(--accent-rgb), 0.08);
}
.lokasyon-hub-item strong {
  font-size: 15px;
  font-weight: 650;
}
.lokasyon-hub-item span {
  font-size: 12px;
  color: var(--muted);
}
.lokasyon-ilceler {
  margin: 0 0 22px;
}
.lokasyon-ilceler-label {
  margin: 0 0 10px;
  font-size: 12px;
  font-weight: 650;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--muted);
}
.lokasyon-ilce-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.lokasyon-ilce {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 7px 12px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: #fff;
  text-decoration: none;
  color: inherit;
  font-size: 13px;
  font-weight: 550;
}
.lokasyon-ilce:hover {
  border-color: #93c5fd;
  background: #f8fbff;
}
.lokasyon-ilce span {
  color: var(--muted);
  font-weight: 600;
}
.lokasyon-back {
  margin: 0 0 16px;
}
.lokasyon-back a {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-weight: 600;
  text-decoration: none;
}
.lokasyon-back .ico {
  flex-shrink: 0;
}

.dash-admin .seo-admin {
  padding: 0;
}
.dash-admin .seo-admin .dash-panel-lead {
  padding: 16px 20px;
  margin: 0;
}
.dash-admin .seo-admin .dash-panel-lead:has(+ .seo-tabs) {
  padding-bottom: 10px;
  border-bottom: 0;
}
.seo-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 14px 20px;
  background: var(--admin-accent-soft, #f0fdfa);
  border-bottom: 1px solid var(--admin-line);
}
.seo-tabs a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 38px;
  padding: 8px 14px;
  border-radius: 6px;
  border: 1px solid var(--admin-line);
  background: #fff;
  color: var(--admin-muted);
  font-size: 13px;
  font-weight: 650;
  text-decoration: none;
}
.seo-tabs a:hover {
  color: var(--admin-ink, #111418);
  border-color: #99f6e4;
}
.seo-tabs a.is-on {
  color: var(--admin-accent, #0f766e);
  background: var(--admin-accent-soft, #f0fdfa);
  border-color: #99f6e4;
}
.seo-inside {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px 16px;
  padding: 14px 20px;
  border-bottom: 1px solid var(--admin-line);
  background: var(--admin-accent-soft, #f0fdfa);
}
.seo-back {
  width: auto;
  min-height: 38px;
  text-decoration: none;
}
.seo-inside-ident {
  flex: 1 1 auto;
  min-width: 0;
}
.dash-main .seo-admin .seo-inside-ident h2 {
  margin: 0;
  font-size: 20px;
  font-weight: 650;
  letter-spacing: -0.03em;
  text-transform: none;
  color: var(--admin-ink, var(--ink));
}
.seo-inside-ident p {
  margin: 2px 0 0;
  font-size: 13px;
}
.seo-inside .badge {
  margin-left: auto;
}
.seo-inside .btn {
  width: auto;
  min-height: 38px;
  margin-left: 0;
}
.seo-toolbar {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 12px 20px;
  border-bottom: 1px solid var(--admin-line);
  background: #fff;
}
.seo-toolbar-search {
  position: relative;
  flex: 1 1 auto;
  margin: 0;
  min-width: 0;
}
.seo-toolbar-search input {
  width: 100%;
  padding-left: 40px;
  -webkit-appearance: none;
  appearance: none;
}
.seo-toolbar-ico {
  position: absolute;
  top: 50%;
  left: 12px;
  transform: translateY(-50%);
  color: var(--admin-muted);
  pointer-events: none;
  display: grid;
  place-items: center;
}
.seo-toolbar-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 14px;
  color: var(--admin-muted);
  font-size: 12px;
  font-weight: 650;
  white-space: nowrap;
}
.seo-hub {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 12px;
  padding: 16px 20px 20px;
}
.seo-group-label {
  grid-column: 1 / -1;
  margin: 8px 2px 0;
  padding: 0;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--admin-muted);
}
.seo-group-label:first-child {
  margin-top: 0;
}
.seo-hub-card-page.is-home {
  grid-column: span 2;
  border-color: #99f6e4;
  background: linear-gradient(180deg, #f0fdfa 0%, #fff 70%);
}
.seo-hub-split {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  min-width: 0;
}
.dash-admin .seo-hub-card,
.seo-hub-card {
  display: flex;
  flex-direction: column;
  min-height: 132px;
  padding: 0;
  border: 1px solid var(--admin-line);
  border-radius: 8px;
  background: #fff;
  overflow: hidden;
  min-width: 0;
}
.seo-hub-card:hover {
  border-color: #99f6e4;
  box-shadow: 0 0 0 3px rgba(var(--accent-rgb), 0.08);
}
.seo-hub-main {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;
  gap: 10px;
  width: 100%;
  min-height: 78px;
  padding: 16px 16px 12px;
  border: 0;
  background: transparent;
  color: inherit;
  text-align: left;
  text-decoration: none;
  cursor: pointer;
  font: inherit;
}
.seo-hub-main strong {
  font-size: 16px;
  font-weight: 650;
  line-height: 1.3;
}
.seo-hub-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  font-weight: 550;
  color: var(--admin-muted);
}
.seo-hub-chip {
  display: inline-flex;
  align-items: baseline;
  gap: 4px;
  padding: 4px 8px;
  border: 1px solid var(--admin-line, #e4e7ea);
  border-radius: 4px;
  background: var(--admin-accent-soft, #f0fdfa);
  color: var(--admin-muted, #5c6570);
  font-size: 11px;
  font-weight: 550;
  line-height: 1.2;
  white-space: nowrap;
}
.seo-hub-chip b {
  color: var(--admin-accent, #0f766e);
  font-size: 12px;
  font-weight: 700;
}
.seo-hub-foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 10px 12px;
  border-top: 1px solid var(--admin-line);
  background: var(--admin-accent-soft, #f0fdfa);
  position: relative;
  z-index: 1;
  flex-shrink: 0;
}
.seo-hub-foot .badge {
  min-width: 0;
  flex: 0 1 auto;
}
.seo-hub-actions {
  display: flex;
  align-items: center;
  gap: 6px;
  flex: 0 0 auto;
  margin-left: auto;
}
.dash-admin .seo-hub-foot .btn,
.seo-hub-foot .btn,
.seo-hub-actions .btn {
  width: auto;
  min-width: 0;
  min-height: 36px;
  padding: 0 12px;
  flex: 0 0 auto;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: 6px;
  font-size: 12px;
  font-weight: 650;
}
.seo-hub-foot .btn .ico,
.seo-hub-actions .btn .ico {
  width: 14px;
  height: 14px;
}
.seo-badge-sablon {
  background: #f1f5f9;
  color: #475569;
}
.seo-empty {
  grid-column: 1 / -1;
  margin: 0;
  padding: 28px 20px;
  text-align: center;
  color: var(--admin-muted);
  font-size: 14px;
}

.ui-modal-panel.seo-edit-panel {
  width: min(920px, calc(100vw - 32px));
  max-height: min(90vh, 820px);
  min-height: 0;
  padding: 0;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  border: 0;
  box-shadow: 0 28px 80px rgba(15, 23, 42, 0.28);
  animation: firma-edit-in 0.22s ease;
}
.seo-edit-head {
  align-items: flex-start;
  gap: 12px;
  margin: 0;
  padding: 18px 22px 14px;
  border-bottom: 1px solid var(--line);
  background: linear-gradient(180deg, #f8fbff 0%, #fff 100%);
  flex-shrink: 0;
}
.dash-main .seo-edit-panel .seo-edit-head h2,
.seo-edit-panel .seo-edit-head h2 {
  margin: 0;
  font-size: 22px;
  font-weight: 650;
  line-height: 1.25;
  letter-spacing: -0.03em;
  text-transform: none;
  color: var(--ink);
}
.seo-edit-ident { min-width: 0; }
.seo-edit-panel .ui-modal-kicker {
  margin: 0 0 4px;
  color: var(--admin-accent, var(--accent));
}
.seo-edit-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 12px;
  margin: 8px 0 0;
  font-size: 13px;
  color: var(--muted);
}
.seo-edit-meta a {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  color: var(--admin-accent, #0f766e);
  font-weight: 600;
}
.seo-edit-head-side {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
}
.seo-edit-panel .ui-modal-x {
  width: 36px;
  height: 36px;
}
.seo-edit-panel .flash-inline {
  flex-shrink: 0;
  margin: 12px 22px 0;
}
.seo-edit-panel .form.seo-form {
  flex: 1 1 auto;
  min-height: 0;
  display: flex;
  flex-direction: column;
  gap: 0;
  margin: 0;
  overflow: hidden;
}
.seo-edit-scroll {
  flex: 1 1 auto;
  min-height: 0;
  overflow: auto;
  overscroll-behavior: contain;
  padding: 16px 20px 18px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: stretch;
  gap: 16px;
}
.seo-edit-box {
  display: grid;
  align-content: start;
  gap: 12px;
  min-width: 0;
  padding: 16px;
  background: #f8fafc;
  border: 1px solid var(--line);
  border-radius: 8px;
}
.seo-edit-box h3 {
  margin: 0;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #64748b;
}
.seo-edit-box .field {
  margin: 0;
}
.seo-edit-panel .seo-serp {
  position: static;
  margin: 0;
  background: #fff;
  border-color: #dbe7f3;
}
.seo-edit-panel .field-count.is-sablon {
  color: #94a3b8;
}
.seo-edit-actions {
  flex-shrink: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin: 0;
  padding: 12px 22px 16px;
  border-top: 1px solid var(--line);
  background: #fff;
}
.seo-edit-hint {
  margin: 0;
  font-size: 12px;
}
.seo-edit-actions-btns {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
  margin-left: auto;
}
.seo-edit-panel .seo-edit-actions .btn {
  width: auto;
  min-height: 44px;
  min-width: 112px;
}

@media (max-width: 980px) {
  .seo-toolbar {
    flex-direction: column;
    align-items: stretch;
  }
  .seo-tabs {
    padding-left: 16px;
    padding-right: 16px;
  }
  .seo-inside .btn {
    margin-left: 0;
  }
  .seo-hub {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .seo-hub-card-page.is-home {
    grid-column: auto;
  }
  .ui-modal-panel.seo-edit-panel {
    width: min(100vw - 24px, 920px);
    max-height: min(94vh, 860px);
    min-height: 0;
    margin: 8px;
  }
  .seo-edit-scroll {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  .seo-hub {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .seo-hub-split {
    grid-template-columns: 1fr;
  }
  .seo-edit-head,
  .seo-edit-scroll,
  .seo-edit-actions {
    padding-left: 16px;
    padding-right: 16px;
  }
  .seo-edit-scroll {
    grid-template-columns: 1fr;
  }
  .seo-edit-actions {
    justify-content: stretch;
  }
  .seo-edit-actions-btns {
    width: 100%;
  }
  .seo-edit-actions .btn {
    flex: 1 1 auto;
  }
}

.dash-donem {
  margin: 0 0 18px;
  padding: 6px 6px 10px;
  background: #fff;
  border: 1px solid var(--line, #e2e8f0);
  border-radius: 6px;
}
.dash-donem-bar {
  display: flex;
  align-items: stretch;
  gap: 2px;
  padding: 0;
  overflow-x: auto;
  scrollbar-width: thin;
}
.dash-donem-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  flex: 0 0 auto;
  min-height: 36px;
  padding: 0 12px;
  border: 1px solid transparent;
  border-radius: 6px;
  background: transparent;
  color: #64748b;
  font-size: 13px;
  font-weight: 500;
  line-height: 1;
  white-space: nowrap;
  cursor: pointer;
  text-decoration: none;
  font-family: inherit;
}
.dash-donem-btn:hover {
  color: var(--accent, #2563eb);
  background: #f8fafc;
}
.dash-donem-btn.is-on {
  color: var(--accent, #2563eb);
  background: #eff6ff;
  border-color: var(--accent, #2563eb);
  font-weight: 600;
}
.dash-page-head:has(+ .dash-donem) {
  margin-bottom: 12px;
}
.dash-donem-pick {
  margin-left: auto;
  gap: 6px;
  color: #64748b;
  padding-left: 14px;
}
.dash-donem-pick .ico {
  flex-shrink: 0;
}
.dash-donem-pick.is-on {
  color: var(--accent, #2563eb);
}
.dash-donem-ozet {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 8px 6px 0;
  padding: 8px 8px 0;
  border-top: 1px solid #f1f5f9;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: -0.015em;
  color: #334155;
  line-height: 1.2;
}
.dash-donem-ozet .ico {
  flex-shrink: 0;
  color: var(--accent, #2563eb);
}
.dash-donem-ozet time,
.dash-donem-ozet span {
  min-width: 0;
}
.dash-donem-modal .ui-modal-backdrop {
  background: rgba(15, 23, 42, 0.45);
}
.ui-modal-panel.dash-donem-panel {
  width: min(420px, 100%);
  padding: 0;
  overflow: hidden;
  border: 0;
  border-radius: 6px;
  box-shadow: 0 18px 50px rgba(15, 23, 42, 0.28);
}
.ui-modal-panel.dash-donem-panel::before {
  content: "";
  display: block;
  height: 4px;
  background: var(--accent, #2563eb);
}
.dash-donem-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 16px 18px;
  background: #f8fafc;
  border-bottom: 1px solid #e2e8f0;
}
.dash-donem-head h2 {
  margin: 0;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: -0.02em;
  text-transform: none;
  color: #0f172a;
}
.dash-donem-kapat {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 36px;
  padding: 0 12px;
  border: 1px solid #e2e8f0;
  border-radius: 6px;
  background: #fff;
  color: #334155;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
}
.dash-donem-kapat:hover {
  border-color: #cbd5e1;
  background: #f8fafc;
}
.dash-donem-form {
  display: grid;
  gap: 14px;
  padding: 18px;
}
.dash-donem-field {
  display: grid;
  gap: 6px;
  font-size: 13px;
  font-weight: 600;
  color: #64748b;
}
.dash-donem-date {
  position: relative;
  display: block;
}
.dash-donem-date input {
  width: 100%;
  min-height: 44px;
  padding: 0 42px 0 12px;
  border: 1px solid #bfdbfe;
  border-radius: 4px;
  background: #fff;
  color: #0f172a;
  font-size: 14px;
  font-weight: 500;
}
.dash-admin .dash-donem-date input {
  border-color: #99f6e4;
  color: var(--admin-ink);
}
.dash-donem-date input:focus {
  outline: none;
  border-color: var(--accent, #2563eb);
  box-shadow: 0 0 0 3px rgba(var(--accent-rgb), 0.15);
}
.dash-donem-date .ico {
  position: absolute;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
  color: #94a3b8;
  pointer-events: none;
}
.dash-donem-date input::-webkit-calendar-picker-indicator {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  cursor: pointer;
}
.dash-donem-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 4px;
}
.dash-donem-actions .btn {
  width: auto;
  min-width: 88px;
}
.dash-shop .dash-donem {
  border-color: var(--shop-line, #d5e3ee);
}
.dash-shop .dash-donem-btn.is-on,
.dash-shop .dash-donem-pick.is-on {
  background: var(--shop-accent-soft, #eef6fb);
}
.dash-shop .dash-donem-ozet {
  border-top-color: var(--shop-line, #d5e3ee);
  color: var(--shop-ink, #0b1f33);
}
.dash-admin .dash-donem {
  border-color: var(--admin-line, #e4e7ea);
}
.dash-admin .dash-donem-btn.is-on,
.dash-admin .dash-donem-pick.is-on {
  background: var(--admin-accent-soft, #f0fdfa);
}
.dash-admin .dash-donem-btn:hover {
  background: var(--admin-accent-soft, #f0fdfa);
}
.dash-admin .dash-donem-ozet {
  border-top-color: var(--admin-line, #e4e7ea);
  color: var(--admin-ink, #111418);
}

@media (max-width: 900px) {
  .dash-donem-pick {
    margin-left: 4px;
  }
}

.blog-toolbar {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 28px;
}
.blog-chip {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  padding: 6px 14px;
  border-radius: 999px;
  border: 1px solid var(--line);
  background: #fff;
  color: var(--muted);
  font-size: 13px;
  font-weight: 600;
}
.blog-chip:hover,
.blog-chip.is-on {
  border-color: var(--navy);
  background: var(--navy);
  color: #fff;
}
.blog-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}
.blog-card {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  height: 100%;
  overflow: hidden;
  transition: box-shadow 0.2s ease, transform 0.2s ease;
}
.blog-card:hover {
  box-shadow: var(--shadow);
  transform: translateY(-2px);
}
.blog-card-link {
  display: flex;
  flex-direction: column;
  height: 100%;
  color: inherit;
  text-decoration: none;
}
.blog-card-media {
  display: block;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: #e8ecef;
}
.blog-card-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.45s ease;
}
.blog-card:hover .blog-card-media img {
  transform: scale(1.04);
}
.blog-card-body {
  display: flex;
  flex-direction: column;
  flex: 1;
  padding: 18px 20px 18px;
}
.blog-card-kat {
  display: inline-flex;
  align-self: flex-start;
  margin-bottom: 10px;
  padding: 3px 9px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--accent);
  background: rgba(var(--navy-rgb), 0.06);
}
.blog-card h2 {
  font-size: 20px;
  line-height: 1.35;
  margin: 0 0 10px;
  color: var(--navy);
  text-transform: none;
  letter-spacing: 0;
}
.blog-card p {
  color: var(--muted);
  font-size: 14px;
  line-height: 1.65;
  margin: 0 0 16px;
  flex: 1;
}
.blog-card-meta {
  display: flex;
  gap: 12px;
  font-size: 12px;
  color: var(--muted);
  margin-bottom: 14px;
}
.blog-card-more {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  font-weight: 700;
  color: var(--navy);
}
.blog-post-hero .crumb a {
  color: rgba(255, 255, 255, 0.78);
}
.blog-post-hero .crumb a:hover {
  color: #fff;
}
.blog-post-hero h1 {
  margin: 0 0 14px;
  text-transform: none;
}
.blog-post-hero .lead {
  margin: 0;
  max-width: min(64ch, 100%);
}
.blog-post-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin: 0 0 16px;
  color: rgba(255, 255, 255, 0.78);
  font-size: 13px;
}
.blog-post-meta span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.blog-draft-note {
  display: inline-flex;
  margin: 0 0 10px;
  padding: 4px 10px;
  border-radius: 999px;
  background: rgba(255, 196, 80, 0.18);
  color: #f5d48a;
  font-size: 12px;
  font-weight: 700;
}
.blog-post-body {
  padding-top: 40px;
}
.blog-post-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 300px);
  gap: 40px;
  align-items: start;
}
.blog-prose {
  min-width: 0;
}
.blog-prose > :first-child {
  margin-top: 0;
}
.blog-prose h2 {
  font-size: 22px;
  margin: 28px 0 10px;
  text-transform: none;
  letter-spacing: 0;
  color: var(--navy);
}
.blog-prose h3 {
  font-size: 18px;
  margin: 22px 0 10px;
  text-transform: none;
  letter-spacing: 0;
}
.blog-prose p,
.blog-prose li {
  color: var(--ink, #243044);
  line-height: 1.8;
  font-size: 16px;
}
.blog-prose p { margin: 0 0 16px; }
.blog-prose ul,
.blog-prose ol {
  margin: 0 0 18px;
  padding-left: 1.15em;
}
.blog-prose li { margin-bottom: 8px; }
.blog-prose blockquote {
  margin: 0 0 22px;
  padding: 16px 18px 16px 20px;
  border-left: 3px solid var(--gold, #c4a574);
  background: var(--cream);
  border-radius: 0 var(--radius) var(--radius) 0;
  color: var(--navy);
  font-size: 15.5px;
  line-height: 1.75;
}
.blog-figure {
  margin: 8px 0 28px;
  border-radius: var(--radius);
  overflow: hidden;
  background: #eef1f4;
  border: 1px solid var(--line);
}
.blog-figure img {
  width: 100%;
  height: auto;
  display: block;
}
.blog-figure figcaption {
  padding: 10px 14px 12px;
  font-size: 13px;
  line-height: 1.5;
  color: var(--muted);
  background: #fff;
  border-top: 1px solid var(--line);
}
.blog-toc {
  margin: 0 0 28px;
  padding: 18px 20px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: #fff;
}
.blog-toc-title {
  margin: 0 0 10px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--muted);
}
.blog-toc ol {
  margin: 0;
  padding-left: 1.2em;
}
.blog-toc li { margin-bottom: 6px; }
.blog-toc a {
  color: var(--navy);
  text-decoration: none;
  font-weight: 600;
  font-size: 14.5px;
}
.blog-toc a:hover { color: var(--accent); }
.blog-faq {
  margin: 0 0 8px;
}
.blog-faq details {
  border-bottom: 1px solid var(--line);
  padding: 14px 0;
}
.blog-faq summary {
  cursor: pointer;
  font-weight: 650;
  color: var(--navy);
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  font-size: 16px;
}
.blog-faq summary::-webkit-details-marker { display: none; }
.blog-faq summary::after {
  content: "+";
  font-size: 20px;
  line-height: 1;
  color: var(--muted);
  flex-shrink: 0;
}
.blog-faq details[open] summary::after { content: "–"; }
.blog-faq p {
  margin: 10px 0 0;
  color: var(--muted);
  font-size: 15px;
}
.blog-post-cta {
  margin-top: 36px;
  padding: 22px 24px;
  border-radius: var(--radius);
  background: var(--cream);
  border: 1px solid var(--line);
}
.blog-post-cta p {
  margin: 0 0 14px;
  color: var(--muted);
}
.blog-aside {
  display: grid;
  gap: 16px;
  position: sticky;
  top: 96px;
}
.blog-aside .side-box { margin: 0; }
.blog-aside-list {
  list-style: none;
  margin: 12px 0 0;
  padding: 0;
  display: grid;
  gap: 12px;
}
.blog-aside-list a {
  display: grid;
  grid-template-columns: 88px minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  color: inherit;
  text-decoration: none;
}
.blog-aside-thumb {
  display: block;
  width: 88px;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  border-radius: 6px;
  background: #e8ecef;
}
.blog-aside-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.blog-aside-list a:hover strong {
  color: var(--accent);
}
.blog-aside-kat {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--muted);
}
.blog-aside-list strong {
  font-size: 15px;
  line-height: 1.4;
  font-weight: 650;
  color: var(--navy);
}
@media (max-width: 980px) {
  .blog-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .blog-post-grid {
    grid-template-columns: 1fr;
  }
  .blog-aside {
    position: static;
  }
}
@media (max-width: 640px) {
  .blog-grid {
    grid-template-columns: 1fr;
  }
  .blog-card-link {
    padding: 0;
  }
  .blog-card-body {
    padding: 16px;
  }
}

.dash-kpi-card[aria-current="page"] {
  border-color: #93c5fd;
  box-shadow: inset 3px 0 0 #2563eb;
}
.dash-admin .dash-kpi-card[aria-current="page"] {
  border-color: #99f6e4;
  box-shadow: inset 3px 0 0 var(--admin-accent);
}
.dash-shop .dash-kpi-card[aria-current="page"] {
  border-color: #7dd3fc;
  box-shadow: inset 3px 0 0 var(--shop-accent);
}
.ui-modal-panel.blog-edit-panel {
  width: min(1100px, calc(100vw - 32px));
  max-height: min(92vh, 900px);
  min-height: 0;
  padding: 0;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  border: 0;
  box-shadow: 0 28px 80px rgba(15, 23, 42, 0.28);
  animation: firma-edit-in 0.22s ease;
}
.blog-edit-head {
  align-items: flex-start;
  gap: 12px;
  margin: 0;
  padding: 18px 22px 14px;
  border-bottom: 1px solid var(--line);
  background: linear-gradient(180deg, #f8fbff 0%, #fff 100%);
  flex-shrink: 0;
}
.dash-main .blog-edit-panel .blog-edit-head h2,
.blog-edit-panel .blog-edit-head h2 {
  margin: 0;
  font-size: 22px;
  font-weight: 650;
  line-height: 1.25;
  letter-spacing: -0.03em;
  text-transform: none;
  color: var(--ink);
}
.blog-edit-ident { min-width: 0; }
.blog-edit-panel .ui-modal-kicker {
  margin: 0 0 4px;
  color: var(--admin-accent, var(--accent));
}
.blog-edit-head-side {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
}
.blog-edit-panel .ui-modal-x {
  width: 36px;
  height: 36px;
}
.blog-edit-panel .form.blog-editor {
  flex: 1 1 auto;
  min-height: 0;
  display: flex;
  flex-direction: column;
  gap: 0;
  margin: 0;
  padding: 0;
  overflow: hidden;
}
.blog-edit-panel .blog-editor-alert {
  flex-shrink: 0;
  margin: 12px 22px 0;
}
.blog-edit-scroll {
  flex: 1 1 auto;
  min-height: 0;
  overflow: auto;
  overscroll-behavior: contain;
  padding: 16px 20px 18px;
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(280px, 0.7fr);
  align-items: start;
  gap: 16px;
}
.blog-editor-main,
.blog-editor-side {
  display: grid;
  gap: 14px;
  min-width: 0;
}
.blog-editor-side {
  position: static;
}
.blog-editor-box {
  display: grid;
  gap: 12px;
  padding: 14px;
  background: #f8fafc;
  border: 1px solid var(--admin-line, var(--line));
  border-radius: 6px;
}
.blog-editor-box h3 {
  margin: 0;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--admin-muted, var(--muted));
}
.blog-editor-title input {
  min-height: 52px;
  font-size: 20px;
  font-weight: 650;
  letter-spacing: -0.02em;
}
.blog-editor [name="icerik"] {
  min-height: 280px;
  line-height: 1.6;
  resize: vertical;
}
.blog-editor-url {
  display: block;
  margin-top: 6px;
  font-size: 12px;
  color: #006621;
  word-break: break-all;
}
.blog-edit-actions {
  flex-shrink: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin: 0;
  padding: 12px 22px 16px;
  border-top: 1px solid var(--line);
  background: #fff;
}
.blog-edit-actions-btns {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
  margin-left: auto;
}
.blog-edit-panel .blog-edit-actions .btn {
  width: auto;
  min-height: 44px;
  min-width: 112px;
}
.blog-admin-title-btn {
  display: inline;
  padding: 0;
  border: 0;
  background: none;
  font: inherit;
  font-weight: inherit;
  color: inherit;
  letter-spacing: inherit;
  text-align: left;
  cursor: pointer;
}
.blog-admin-title-btn:hover {
  color: var(--admin-accent, #0f766e);
}
.empty .linkish {
  display: inline;
  padding: 0;
  border: 0;
  background: none;
  font: inherit;
  color: var(--admin-accent, var(--accent));
  font-weight: 650;
  cursor: pointer;
}
.empty .linkish:hover {
  text-decoration: underline;
}
.dash-panel:has(> .blog-admin-chips) > .dash-list-tools > .dash-panel-head {
  border-bottom: 0;
}
.dash-panel:has(> .blog-admin-chips) > .dash-panel-lead {
  border-bottom: 0;
  padding: 4px 16px 12px;
}
.blog-admin-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 0 16px 14px;
  background: #f8fafc;
  border-bottom: 1px solid var(--admin-line, var(--line));
}
.blog-admin-chips a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 34px;
  padding: 4px 12px;
  border: 1px solid var(--admin-line, var(--line));
  border-radius: 999px;
  background: #fff;
  font-size: 13px;
  font-weight: 600;
  color: var(--admin-ink, var(--ink));
}
.blog-admin-chips a b {
  font-size: 12px;
  font-weight: 700;
  color: var(--admin-muted, var(--muted));
}
.blog-admin-chips a.is-on {
  color: var(--admin-accent, #0f766e);
  background: var(--admin-accent-soft, #f0fdfa);
  border-color: #99f6e4;
}
.blog-admin-chips a.is-on b {
  color: var(--admin-accent, #0f766e);
}
.blog-admin-list {
  display: grid;
  gap: 12px;
  padding: 16px;
}
.blog-admin-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px 20px;
  align-items: start;
  padding: 16px;
  border: 1px solid var(--admin-line, var(--line));
  border-radius: 6px;
  background: #fff;
}
.blog-admin-item.is-draft {
  background: #f8fafc;
}
.blog-admin-item-body {
  display: grid;
  gap: 8px;
  min-width: 0;
}
.blog-admin-item-tags {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
}
.blog-admin-kat {
  display: inline-flex;
  padding: 3px 9px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--admin-accent, #0f766e);
  background: var(--admin-accent-soft, #f0fdfa);
}
.blog-admin-item h3 {
  margin: 0;
  font-size: 18px;
  font-weight: 650;
  letter-spacing: -0.02em;
  text-transform: none;
  line-height: 1.35;
  color: var(--admin-ink, var(--navy));
}
.blog-admin-item h3 button {
  display: inline;
  padding: 0;
  border: 0;
  background: none;
  font: inherit;
  color: inherit;
  text-align: left;
  cursor: pointer;
}
.blog-admin-item h3 button:hover {
  color: var(--admin-accent, #0f766e);
}
.blog-admin-item-body > p {
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
  color: var(--admin-muted, var(--muted));
}
.blog-admin-item-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 14px;
  font-size: 13px;
  color: var(--admin-muted, var(--muted));
}
.blog-admin-item-meta span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.blog-admin-acts {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
  min-width: 0;
}
.blog-admin-acts .btn {
  width: auto;
}
@media (max-width: 1100px) {
  .blog-edit-scroll {
    grid-template-columns: 1fr;
  }
  .blog-admin-item {
    grid-template-columns: 1fr;
  }
  .blog-admin-acts {
    justify-content: flex-start;
  }
}
@media (max-width: 980px) {
  .ui-modal-panel.blog-edit-panel {
    width: min(100vw - 24px, 1100px);
    max-height: min(94vh, 900px);
    margin: 8px;
  }
  .blog-edit-head,
  .blog-edit-scroll,
  .blog-edit-actions {
    padding-left: 16px;
    padding-right: 16px;
  }
  .blog-edit-panel .blog-editor-alert {
    margin-left: 16px;
    margin-right: 16px;
  }
  .blog-edit-actions {
    justify-content: stretch;
  }
  .blog-edit-actions-btns {
    width: 100%;
  }
  .blog-edit-actions .btn {
    flex: 1 1 auto;
  }
}

.notice-board {
  overflow: hidden;
}
.notice-tabs {
  display: flex;
  flex-wrap: nowrap;
  align-items: stretch;
  gap: 0;
  margin: 0;
  padding: 0 8px;
  overflow-x: auto;
  border-bottom: 1px solid var(--line);
  background: #fff;
  scrollbar-width: none;
}
.notice-tabs::-webkit-scrollbar { display: none; }
.dash-admin .notice-tabs { border-bottom-color: var(--admin-line); }
.dash-shop .notice-tabs { border-bottom-color: var(--shop-line); }
.notice-tabs a {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  flex: 0 0 auto;
  min-height: 40px;
  padding: 8px 12px;
  border: 0;
  border-bottom: 2px solid transparent;
  border-radius: 0;
  background: transparent;
  color: var(--muted);
  font-size: 13px;
  font-weight: 650;
  letter-spacing: 0;
  text-decoration: none;
  white-space: nowrap;
}
.dash-admin .notice-tabs a { color: var(--admin-muted); }
.dash-shop .notice-tabs a { color: var(--shop-muted, #64748b); }
.notice-tabs a:hover {
  color: var(--ink);
  background: transparent;
}
.dash-admin .notice-tabs a:hover { color: var(--admin-ink); }
.dash-shop .notice-tabs a:hover { color: var(--shop-ink, #0f172a); }
.notice-tabs a.is-on {
  color: var(--admin-accent, #0f766e);
  background: transparent;
  border-bottom-color: var(--admin-accent, #0f766e);
}
.dash-shop .notice-tabs a.is-on {
  color: #0369a1;
  border-bottom-color: #0ea5e9;
}
.notice-count {
  display: inline-grid;
  place-items: center;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  border-radius: 999px;
  background: #eef2f6;
  color: inherit;
  font-size: 11px;
  font-weight: 800;
  font-style: normal;
  line-height: 1;
}
.notice-count.is-zero {
  background: transparent;
  color: inherit;
  opacity: 0.55;
}
.notice-tabs a.is-on .notice-count {
  background: var(--admin-accent-soft, #f0fdfa);
  color: var(--admin-accent, #0f766e);
  opacity: 1;
}
.dash-shop .notice-tabs a.is-on .notice-count {
  background: #e0f2fe;
  color: #0369a1;
}
.notice-list {
  display: flex;
  flex-direction: column;
}
.notice-row {
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr) auto;
  gap: 8px 12px;
  align-items: start;
  padding: 10px 16px;
  border-top: 1px solid var(--shop-line, #e6edf3);
}
.dash-admin .notice-row {
  border-top-color: var(--admin-line, #e6edf3);
}
.notice-row:first-child { border-top: 0; }
.notice-row.is-unread {
  background: #f8fafc;
  box-shadow: inset 3px 0 0 var(--admin-accent, #0f766e);
}
.dash-shop .notice-row.is-unread {
  box-shadow: inset 3px 0 0 #0ea5e9;
}
.notice-ico {
  width: 32px;
  height: 32px;
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #f1f5f9;
  color: #475569;
  flex-shrink: 0;
}
.notice-row.is-unread .notice-ico {
  background: #e0f2fe;
  color: #0369a1;
}
.dash-admin .notice-row.is-unread .notice-ico {
  background: #ccfbf1;
  color: #0f766e;
}
.notice-body {
  min-width: 0;
}
.notice-top {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}
.notice-top b {
  flex: 1 1 auto;
  min-width: 0;
  font-size: 14px;
  font-weight: 700;
  color: var(--navy, #0b1f33);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.notice-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #0ea5e9;
  flex-shrink: 0;
}
.dash-admin .notice-dot { background: var(--admin-accent, #0f766e); }
.notice-time {
  flex: 0 0 auto;
  font-size: 12px;
  font-weight: 600;
  color: var(--muted, #64748b);
  white-space: nowrap;
}
.notice-body p {
  margin: 2px 0 0;
  font-size: 13px;
  line-height: 1.45;
  color: var(--muted, #64748b);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.notice-meta {
  display: inline-block;
  margin-top: 2px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--muted, #64748b);
}
.notice-act {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  min-height: 32px;
}
.notice-empty {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
  padding: 20px 16px 24px;
  text-align: left;
  color: var(--muted);
}
.notice-empty-ico {
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  margin-bottom: 6px;
  border-radius: 10px;
  background: #f1f5f9;
  color: #64748b;
}
.notice-empty b {
  font-size: 14px;
  font-weight: 700;
  color: var(--navy, #0b1f33);
}
.notice-empty p {
  margin: 0;
  max-width: 46ch;
  font-size: 13px;
  line-height: 1.45;
}
@media (max-width: 720px) {
  .notice-row {
    grid-template-columns: 32px minmax(0, 1fr);
  }
  .notice-act {
    grid-column: 2;
    justify-content: flex-start;
  }
  .notice-tabs a {
    padding: 8px 10px;
  }
}

/* ==== Mağaza randevu çağrısı ==== */
body.or-cagri-open { overflow: hidden; }
html:has(body.or-cagri-open) { overflow: hidden; }
.or-cagri[hidden] { display: none !important; }
.or-cagri {
  position: fixed;
  inset: 0;
  z-index: 10240;
  display: grid;
  place-items: center;
  padding: 24px 18px;
  overflow: auto;
}
.or-cagri-shade {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 50% 18%, rgba(45, 212, 191, 0.18), transparent 42%),
    linear-gradient(180deg, #06111c 0%, #0b1f33 55%, #071018 100%);
}
.or-cagri-card {
  position: relative;
  z-index: 1;
  width: min(420px, 100%);
  display: grid;
  justify-items: center;
  text-align: center;
  color: #fff;
  animation: or-cagri-in 0.35s cubic-bezier(0.16, 1, 0.3, 1);
}
.or-cagri-kicker {
  margin: 0 0 28px;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #99f6e4;
}
.or-cagri-avatar {
  position: relative;
  width: 132px;
  height: 132px;
  margin: 0 0 28px;
  display: grid;
  place-items: center;
}
.or-cagri-avatar b {
  position: relative;
  z-index: 1;
  width: 96px;
  height: 96px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: linear-gradient(180deg, #14b8a6, #0f766e);
  color: #ecfeff;
  font-size: 38px;
  font-weight: 800;
  letter-spacing: -0.03em;
  box-shadow: 0 12px 32px rgba(13, 148, 136, 0.35);
}
.or-cagri-ring {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  border: 2px solid rgba(45, 212, 191, 0.45);
  animation: or-cagri-pulse 2.2s ease-out infinite;
}
.or-cagri-ring-b { animation-delay: 0.7s; }
.or-cagri-ring-c { animation-delay: 1.4s; }
.or-cagri-card h2 {
  margin: 0 0 8px;
  font-size: clamp(26px, 5vw, 34px);
  font-weight: 800;
  letter-spacing: -0.03em;
  color: #fff;
}
.or-cagri-sub,
.or-cagri-meta {
  margin: 0;
  max-width: 34ch;
  color: rgba(226, 232, 240, 0.78);
}
.or-cagri-sub {
  font-size: 16px;
  font-weight: 600;
}
.or-cagri-meta {
  margin-top: 8px;
  font-size: 14px;
  line-height: 1.45;
}
.or-cagri-unlock {
  margin-top: 18px;
  border: 0;
  border-radius: 999px;
  padding: 10px 16px;
  background: rgba(255,255,255,0.12);
  color: #fff;
  font: inherit;
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
}
.or-cagri-unlock:hover { background: rgba(255,255,255,0.2); }
.or-cagri-actions {
  display: flex;
  justify-content: center;
  gap: 48px;
  margin-top: 48px;
}
.or-cagri-btn {
  display: grid;
  justify-items: center;
  gap: 10px;
  border: 0;
  background: none;
  color: #fff;
  font: inherit;
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
}
.or-cagri-btn-ico {
  width: 68px;
  height: 68px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  color: #fff;
}
.or-cagri-btn-red .or-cagri-btn-ico {
  background: #ef4444;
  box-shadow: 0 10px 24px rgba(239, 68, 68, 0.35);
}
.or-cagri-btn-green .or-cagri-btn-ico {
  background: #22c55e;
  box-shadow: 0 10px 24px rgba(34, 197, 94, 0.38);
  animation: or-cagri-answer 1.4s ease-in-out infinite;
}
.or-cagri-btn:hover .or-cagri-btn-ico { filter: brightness(1.08); }
.or-cagri-btn:focus-visible .or-cagri-btn-ico {
  outline: 3px solid #99f6e4;
  outline-offset: 4px;
}
@keyframes or-cagri-in {
  from { opacity: 0; transform: translateY(18px) scale(0.98); }
  to { opacity: 1; transform: none; }
}
@keyframes or-cagri-pulse {
  0% { transform: scale(0.72); opacity: 0.7; }
  100% { transform: scale(1.35); opacity: 0; }
}
@keyframes or-cagri-answer {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.06); }
}

.cagri-ayar-toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: end;
  gap: 12px 16px;
  margin-bottom: 10px;
}
.cagri-ayar-lead { margin: 0 0 16px; }
.cagri-pencere-field {
  min-width: 160px;
  margin: 0;
}
.cagri-pencere-field input {
  width: 120px;
}
.cagri-olay-list {
  display: grid;
  gap: 6px;
  margin-bottom: 16px;
  padding: 12px;
  border: 1px solid var(--admin-line, var(--line));
  border-radius: 8px;
  background: #f8fafc;
}
.cagri-olay-list strong {
  font-size: 13px;
  font-weight: 700;
  color: var(--admin-ink, var(--navy));
}
.cagri-ses-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}
.cagri-ses-card {
  display: grid;
  gap: 12px;
  padding: 16px;
  border: 1px solid var(--admin-line, var(--line));
  border-radius: 10px;
  background: #fff;
}
.cagri-ses-card.is-custom {
  border-color: #99f6e4;
  background: #f0fdfa;
}
.cagri-ses-top {
  display: flex;
  align-items: center;
  gap: 12px;
}
.cagri-ses-top > div {
  display: grid;
  gap: 4px;
  min-width: 0;
}
.cagri-ses-top strong {
  font-size: 15px;
  color: var(--admin-ink, var(--navy));
}
.cagri-ses-ico {
  width: 44px;
  height: 44px;
  border-radius: 12px;
  display: grid;
  place-items: center;
  background: #ecfeff;
  color: #0f766e;
  flex: 0 0 auto;
}
.cagri-ses-card audio {
  width: 100%;
}
.cagri-ses-card .muted { margin: 0; }
@media (max-width: 720px) {
  .cagri-ses-grid { grid-template-columns: 1fr; }
  .or-cagri-actions { gap: 36px; margin-top: 36px; }
  .or-cagri-btn-ico { width: 62px; height: 62px; }
}
